IRC channel logs

2022-03-01.log

back to list of logs

<phodina[m]>Oki, founs the issue. The inherit option was missing parenthesis around the base-os and the args.
<phodina[m]>Is there a way to not retype them?
<phodina[m]>e.g. #:arg1 arg1 #:arg2 arg2 ...
<fnstudio>hi! i'm on a (as thin as possible) foreign distro and i seem to be having issues with a python environment
<fnstudio>there's a couple of python libraries that don't seem to be packaged under guix, so i thought of creating a python virtual environment and install the libraries from within that env
<fnstudio>the environment gets created and can be normally "activated"
<fnstudio>i can start a python shell, but if i try to import numpy (one of the installed dependencies), i run into this issue https://numpy.org/devdocs/user/troubleshooting-importerror.html
<fnstudio>*dependencies installed in the virtual env
<fnstudio>i'm wondering if that could have anything to do to my PATHs
<viivien>It has everything to do with PATHs
<fnstudio>viivien: oh right, so i'm on the right... path :)
<viivien>I was trying to write an explanation, only to realize how little I know about that so I think you need a true expert for this.
<fnstudio>hey, thanks for taking the time for getting back to me already
<viivien>I’m not sure you can mix and match guix and virtual envs (much less conda)
<fnstudio>and trying to put together an explanation
<fnstudio>ah... yeah, i think i see what you mean
<viivien>Obviously guix would very much appreciate if you could package the python libraries :)
<fnstudio>viivien: that's definitely the right solution (i.e. packaging the missing libraries), anything else is a workaround
<fnstudio>although the system kind of blew up in my hands only a few mins ago, it was working before that - so i think there should be a way for it to work (in my specific scenario)
<ajarara>is there a reason to prefer tarball downloads instead of vc source? It means people can't easily do "--with-latest"
<ajarara>people read as I :]
<mange>For some projects the tarball doesn't require running autotools, or similar, which can save needing those inputs to the build. You should still be able to use --with-source pointing to a new tarball, but that requires an upstream release.
<mange>I think in the past the git fetcher hasn't done a shallow fetch, but I don't know what it does at the moment.
<ajarara>actually I think --with-git-url does what I need
<ajarara>Yep! It even composes with --with-commit. Great.
<ajarara>use case here is allowing guix deploy to use hardware based ssh keys.. libssh hasn't released a version containing the changes needed to support them, but they are merged into main. Later versions don't pass tests.
<ajarara>But `guix build guix --with-git-url=libssh=https://git.libssh.org/projects/libssh.git --with-commit=libssh=04ae110c` tests and works!
<Bumblehorse>I want to disable pulseaudio so as the Sound Services page in the manual says, I add (gnu services sound) to my config and the an (alsa-service-type) but when I reconfigure I get "guix system: error: duplicate 'asound.conf' entry for /etc"
<Bumblehorse>Does anyone know why this is the case? I'm doing exactly what the manual says
<mange>Are you using %desktop-services? If so, that already includes alsa-service-type and pulseaudio-service-type. Presumably, then, you'd want to remove the pulseaudio service with (modify-services %desktop-services (delete pulseaudio-service-type)).
<Bumblehorse>am I not supposed to use (pulseaudio? #f) in the alsa-configuration?
<Bumblehorse>thanks though
<resu>ok so I have a package that is basicly a bash script and a man page and thats it. I literly is one cmd to install "make $INSTALL_dir=<someguilevar>" so how do I use trivial-build-system so literly execute a single command.... dumb I read the infodoc and im a little confused.....
<resu>or I could use the gnu-build-system But I would need to skip the "make && ./configure" steps
<mange>I would still use the gnu-build-system and delete the steps you don't need, otherwise you need to deal with unpacking the source and some other things that are just annoying. You should be able to delete the phases that you don't need (configure and build, it sounds like) and just let it run the phases itself.
<the_tubular>Should debugging be enabled in guix package ?
<ajarara>(actually, you _do_ need to make source changes to libssh unfortunately)
<sleepydog>i want to use guix to build user-mode-linux kernels that i will use for kernel development. has anyone done this?
<elais[m]>There’s an article on the guix blog about building custom kernels
<elais[m]>Seems pretty much what you want
<sleepydog>i'll check it out, thanks!
***jonsger1 is now known as jonsger
<resu>ok so that got me alot further now I just need to figure out how to add and agument (prefix var) to the install phase
<ajarara>resu: do you mean an environment variable? You can set that before the install phase with setenv, see `info "(guile) Runtime Environment"`
<mange>resu: There are lots of packages that do that. The general thing is to use #:make-flags. Take a look at the bashtop definition for an example (just the first one I saw).
<ajarara>oh neat!
<resu>ah set env I was using a make flag
<resu>so close!
<resu>is that literly just the guile function setenv?
<ajarara>yeah, but make flags (just like they're done in bashtop as mange suggests) didn't work?
<resu>no becuase it runs it as "make install PREFIX=%output"
<resu>it needs to beset before install not as an arg
<mange>Right, then you can set it manually in a phase with setenv. An example package which does this is sideload which adds a new set-environment-variables phase before the installation phase.
<resu> http://zer0byte.com/zeropastebin/?8de3aa9654bba58b#61F1eRbGTZ9EAXkJJv9n/DdqH9N9Cf9Ix8Pg3FiDWx0=
<resu>that is what I have so far but its saying I have somekinda syntax error
<resu>im like 99% there lmao
<resu>its probily a paren or something so Im double checking it
<the_tubular>Should I enable debug flags on a guix-package ?
***alMalsamo is now known as lumberjack
<AwesomeAdam54321>the_tubular: No, but the debugging information should be in guix-package:debug
<the_tubular>Umm, I'm unfamiliar with guix-package debug
<the_tubular>Umm, that looks cool anymore of those types of "arguments" there's docs, debug
<AwesomeAdam54321>the_tubular: What I mean is that the debugging information should be in a separate package output from the default
<the_tubular>And also does that means that the docs aren't installed by default on every package ?
<AwesomeAdam54321>the_tubular: I don't think so, there are very few packages that have a separate doc package output in comparison to those that don't
<the_tubular>Gotcha
<the_tubular>So it's loosely enforced ?
<mange>resu: Your problem was in the parentheses in your lambda* call. I fixed that up, and deleted the bootstrap phase that was causing problems. I also needed to add a file-name so the gnu-build-system knew how to unpack the tarball. Try this: http://zer0byte.com/zeropastebin/?85549f3f19769ace#qyTqgk5C9J9NGNfoFv+8w7cG7urSIOX2IZ9B3nbK9Bg=
<AwesomeAdam54321>the_tubular: I guess, a separate doc package output is made when the package isn't used by itself
<resu>mange: FUCK YEA, sorry this has taken longer that I had hoped. thank you
<the_tubular>"When a package isn't used by itself" ?
<the_tubular>Like a library ?
<AwesomeAdam54321>For example, gtk isn't the sole dependency of a package since it's used as part of a larger thing
<the_tubular>Haa gotcha
<the_tubular>Thanks :)
<resu>mange: thanks for your help this has a been a learning experience
<mange>resu: No worries. I'm glad we got there in the end! One thing to be wary of with this package definition is that github's tarballs aren't stable. If they regenerate that tarball the hash might change and you could get a hash mismatch in future. In this case you might be better off using a git-fetch with a stable reference.
<mange>That won't prevent you from using the package now, but it might cause you problems if you try to rebuild this package at some point in the future.
<resu>mange: good to know, I was at first trying to use git-fetch however my limited understanding of git/github got in the way. I will be updating this in the future but for now I just needed to setup yadm for my configs
***lukedashjr is now known as luke-jr
<AIM[m]><acrow> "AIM: Are you trying to install a..." <- Yep
<AIM[m]>Dwm is a tiling window manager
<AIM[m]>And it's compiled everytime I change the config file
<elais[m]>I have a pine h64 version b, which one of the bootloaders works with that particular model? Anyone know?
<acrow>AIM: hmm, so you've conquered packaging and build. Is the question now how to run it as part of a service for other apps?
<\f>Given the official qemu image sans modification, where is the default system configuration located? (so I can reconfigure after a first guix pull) I'm trying to find it in the docs for half an hour, tried greping, finding, cant find it. So it's probably right under my nose and I can't see it.
<AIM[m]>acrow: I'm like manually trying to add dependencies one by one... I tried yo make it install to ~/.local but some dependencies like freetype2 and all is breaking idky
<AIM[m]>Like manually install the dependencies using guix install....
<gnoo>AIM[m]: make a package for it
<AIM[m]>There is an already existing package. Should I redefine it in config?
<gnoo>something like: (define-public my-dwm (package (inherit dwm) (name "my-dwm) (source (git-checkout (url "/home/aim/src/dwm/"))))
<AIM[m]>But I'll have to make a tar file right?
<gnoo>no, you can use git-checkout like above. just remember to commit changes
<AIM[m]>gnoo: Ohhh
<AIM[m]>Do I need to like add the sha config
<gnoo>no, look at the (source), it's already complete
<AIM[m]>Okay
<AIM[m]>Thanks
<AIM[m]>I'll try it out and letya know
<gnoo>ok, ping me if you need help, i might only be able to respond after about 5-6 hours from now, tho
<AIM[m]>Thank you
<gnoo>this is an example of package using that method, although i don't use it anymore, it should work fine: http://ix.io/3R3C
<gnoo>and to build it, use guix build -L ~/path/to/src-folder/ my-dwm
<gnoo>and install with guix package -L ~/path/to/src-folder/ -i my-dwm -r dwm ( -r to remove dwm that you've probably installed)
<\f>Given the third paragraph of https://guix.gnu.org/en/manual/devel/en/guix.html#Proceeding-with-the-Installation, isn't it a bit weird that the qemu image doesn't include any base config for someone to build upon (doesn't store the /etc/configuration/desktop.scm anywhere)?
<AIM[m]>Is there nerdfont official package?
<AIM[m]>Is there nerdfont official package?
<AIM[m]>Nvm made a definition for it manually
<AIM[m]>gnoo: it works! Dwm works! Thank you so much!
***EndOfAnEra is now known as Dimitji
***Dimitji is now known as Dimitrji
<abrenon>hi guix
***trip is now known as Guest430
<manimacro>hi
<civodul>Hello Guix!
<abrenon>hi civodul
<roptat>hi guix!
<roptat>I managed to fix my cross-clang :D
<abrenon>: )
<abrenon>o/
<roptat>hi abrenon :)
<roptat>I can use it to cross-compile libcxx, but it fails in libcxxabi, because I still need to clean some include files
<civodul>looks like you're doing pretty wild stuff :-)
<roptat>it's something I wanted to do, so I can enable cross-compilation in my soong-build-system
<abrenon>how about the videos subtitles ? I asked you about it last week (or the week before ?) but I think my message got lost and I was buried in too much work to ensure an answer
<roptat>oh I haven't seen your message
<roptat>of course we need to add subtitles!
<roptat>did you send that message to irc, or the list?
<roptat>civodul, once I confirm it works, that'll be the first contribution I'll send from that channel, a cross-clang with cross-compilable libcxx and libcxxabi
<abrenon>I think it was on IRC, I just remember you asking for volunteers, then I asked about the format you expected and to see if there was something to plan ahead
<abrenon>and then time flew by and I was afraid a crack team of enthusiast volunteers had already finished all the work
<attila_lendvai>it'd be helpful to me if someone could apply this, assuming it makes sense (shepherd built from git instead of a release file): https://issues.guix.gnu.org/54207
<attila_lendvai>err, hrm. i forgot to check how much recompilation this triggers...
<roptat>abrenon, no I had a lot of things happen the week after the guix days, it was very difficult for me to stay connected, so nothing happened
<roptat>I don't think we need anything crazy, any subtitle format is good I think
<abrenon>like .srt ?
<roptat>aegisub is a good tool to create subtitles, if the package is not broken. We just need to coordinate so we don't create subtitles for the same video twice :)
<abrenon>exactly
*attila_lendvai updates the issue with the fact that it's 1349 dependant packages... :/
<abrenon>I'll take a look at aegisub today
<roptat>yeah, srt would work, but I think aegisub uses a different format by default?
<abrenon>ok, as long as it's free and convenient, I don't see why not to use it
<roptat>.ass, it allows for more control of the subtitles, like positioning, styling, ...
<roptat>not super useful for a presentation :)
<abrenon>but on the other hand the name of the extension is fun so…
<roptat>it's the default format, and maybe we'll need one of its features for a video, even if I doubt it
<attila_lendvai>this patch has been in the queue since forever, and i had to rebase it once again just now (c2ffi): http://issues.guix.gnu.org/50217
<abrenon>roptat: WDYT ? https://mensuel.framapad.org/p/guixdays2022-videosubtitles-9stl
<roptat>sounds good, thanks!
<civodul>subtitles would be sweet
<roptat>abrenon, aegisub works well :)
<roptat>only issue is my ears :p
<Dimitrji>hi, how do you develop guix config files with emacs-guix
<Dimitrji>1. I open system.scm
<Dimitrji>2. (run-geiser) interactive command and a REPL shows up
<Dimitrji>I type in that ",m (emacs-guix)"
<Dimitrji>and then I evaluate the system.scm by issuing "(geiser-eval-buffer)"
<Dimitrji>5: error: make-channel-introduction: unbound variable
<Dimitrji>how would anyone figure out where this (make-channel-introduction) is defined, and do you need to (use-modules ...) in the channels.scm file
<civodul>Dimitrji: hi! i don't remember experiencing that
<civodul>for the OS config file, i don't rely a lot on Geiser though
<civodul>(and Emacs-Guix)
<Dimitrji>civodul: but how do you navigate the code, like go to definition
<Dimitrji>don't tell me there's absolutely nothing in terms of development, no code navigation, no autocomplete, no nothing like you're in notepad
<civodul>i don't :-), but i guess that's because i don't touch my OS config all that much, or one bit at a time
<civodul>there is code navigation and all, of course
<Dimitrji>well perhaps someone experienced can teach us both how to develop then
<Dimitrji>civodul: really? so how does opening system.scm know where to find the definitions
<civodul>in general, when in the buffer of a Guix module, you can do C-c . u (a binding from Emacs-Guix)
<civodul>from there you get M-. and all that for navigation
<fnstudio>hi, anyone has familiarity with using python virtual environments under guix? i seem to be having issues with this https://numpy.org/devdocs/user/troubleshooting-importerror.html
<civodul>fnstudio: hi! i'm no python expert, but could you share a Guix command that triggers the problem?
<fnstudio>civodul: hey thanks, sure, just a minute
<the_tubular>civodul, do you know what bug caused that :  (dependencies or package changed) ?
<the_tubular>And it never got updated
<civodul>the_tubular: "dependencies or package changed" is routine, nothing wrong with that
<the_tubular>I know, but when I ran guix upgrade it was outputting : The following package will be upgraded: NAME OF THE PACKAGE (dependencies or package changed)
<the_tubular>And it never did upgrade
<the_tubular>Until yesterday, but I don't see any commit that hseems to have addressed that
<the_tubular>Ohh nevermind. Found it
<fnstudio>these are the steps to reproduce my Python dependency error: https://paste.debian.net/1232625/
<fnstudio>wait... i think i might be able to mix things here... i.e. to install numpy from guix and to only use the virtual environment for the libraries that are not in guix...
<fnstudio>let me try that (it's not clean, but no solution that falls short of packaging things for guix would be clean anyway)
<abrenon>fnstudio: you can also try to quickly package the missing libs for guix with the import command
<abrenon>(even without their making it to the official repos, the local declaration would be sufficient for you to build a guix equivalent of virtual env with everything you need)
<fnstudio>abrenon: that sounds interesting, i hadn't considered that because i thought it was too difficult, but you're right, it might make sense to try
<fnstudio>and certainly the cleanest solution
<abrenon>I have been doing it several times, and this is a good start to actually package things : )
<abrenon>it really isn't that difficult when the packages are simple enough and don't have a build that's too messy
<civodul>fnstudio: i tried these steps in "guix shell -CN --no-cwd python python-virtualenv", and the pip-installed numpy fails with "ImportError: libz.so.1"
<civodul>i think that stems from the fact that wheels (pre-built Python binaries) cannot reliably be used, especially on Guix
<fnstudio>ok, as a quick and dirty fix, i can confirm that =guix shell python python-wrapper python-numpy ...= and then creating a Python =virtualenv= on top of that with any non-Guix Python libraries... seems to work fine
<civodul>because they make assumptions about available binaries, such as libz.so in this case
<civodul>so yes, using the "python-numpy" package sounds safer
<fnstudio>civodul: oh, glad that you managed to recreate the issue, and thank you so so much for taking the time to try!
<civodul>yw!
<fnstudio>thanks for the explanation and yes, i'll go for a hybrid (i.e. guix shell + venv) approach for now, and then will try abrenon's suggestion
<civodul>and that's a great suggestion that was bound to be made :-)
<fnstudio>+1 :)
<abrenon>let us know how it goes !
<attila_lendvai>i hate it when something somewhere silently swallows an error, and it's not rare in the Guix codebase
<attila_lendvai>this time i'm staring at a `guix system vm ...` invocation that returns nothing.
<fnstudio>so, i couldn't resist the temptation of trying packaging that python library
<fnstudio>i suppose an approach to that could be:
<abrenon>^^
<fnstudio>to guix edit a "similar" package and copy and rename the relevant section
<fnstudio>i seem to get stuck relatively soon... on guix hash to calculate the hash of the new package...
<fnstudio>working on it
<fnstudio>i should be able to find info on the web
<abrenon>sorry if I wasn't clear above, the "import command" pretty much does it automatically if the package you're dealing with is packaged for pip
<abrenon>it goes like this: guix import pypi <name-of-the-package-on-pypi>
<fnstudio>abrenon: oh my... is it that easy?
<abrenon>it should produce a stub declaration with the correct hash
<abrenon>…I know, right ?
<abrenon>which is why I suggested it
<abrenon>: )
<fnstudio>vvv exciting, let me try
<abrenon>exemple: guix import pypi pytest-tomato
<abrenon>of course metadata are only as good as they are on pypi, and the output is not usually production ready, but if it's well packaged and easy to integrate into guix, you may have your clean package within minutes
<abrenon>going AFK for lunch, see ya later
<fnstudio>it even gives you hints... did you forget using (use-modules (guix build-system python))
<fnstudio>if i have a local packages.scm file and would like to install packages from it directly (as opposed to uploading it to a git repo that i use as a channel), should i use --install-from-file=packages.scm ?
<gnoo>better to use -L ~/path/to/dir/
<gnoo>guix build -L ~/path/to/dir and then install with guix package -L ~/path/to/dir -i <pkgname>
<gnoo>although yes, you can use --install-from-file but then it becomes weird quick
<roptat>construction de /gnu/store/fdrcgq98h4rqjmixvhi6im49qfbsvqgs-libcxxabi-9.0.1.drv réussie \o/
<roptat>that's my cross-compiled libcxxabi :D
<roptat>mh, the backtrace is useless, and I et Unrecognized keyword: #:build-inputs
<roptat>I have greped my channel for #:build-inputs, but found nothing
***alMalsamo is now known as lumberjack123
<roptat>ah found it
<Guest28>how to ensure that perl modules are found by perl's MakeMaker? Putting them in propagated-inputs sets PERL5LIB variable, etc, but a bunch of optional modules like Mail::SPF are still not found when running perl Makefile.PL. Any clues or suggestions on how to fix? Im trying to package SpamAssassin currently but Im unable to do so with recommended
<Guest28>modules.
<the_tubular>civodul, I've been exploring recent changes, and I'm wondering if there was any reason why the summary after each guix pull has been killed, I found it pretty useful
<fnstudio>thanks gnoo, i'll go for the -L option then (incidentally, may i ask what are the benefits and why that's recommended over --install-from-file?)
<civodul>the_tubular: hi! see https://issues.guix.gnu.org/54000
<civodul>in summary, many found it verbose and rather useless
<the_tubular>Ohh, I see... Thanks!
<civodul>but it's not gone: you can view the details with "guix pull -N --details"
<the_tubular>I'll just follow new commits I suppose
<the_tubular>-N --details ... Ummm
<civodul>you're interested in the list of upgraded/added packages, right?
<the_tubular>Yes
<civodul>ok, so that's the thing
<the_tubular>Thanks :)
<the_tubular>("guix pull" . "guix pull --news --details")
<the_tubular>Oops
<gnoo>fnstudio: to use -f, the file must evaluate to a package so you can't define multiple related packages in a single file and test them easily
<fnstudio>gnoo: ah! i see, very useful, thanks
<gnoo>with -L, you can have a file(module) depending on another file in the same directory as well which you can't do with -f
<fnstudio>yes, it's exactly my case, as a matter of fact, i have other packages defined in packages.scm, so good to know re --load-path, ty!
***cat[m]1 is now known as catt[m]
<fnstudio>pretty impressive... it... builds!!
<fnstudio>and... it installs and works correctly! (context: a small python library that i managed to package)
<fnstudio>thanks everyone here! i'm so grateful, the process of creating a (very simple) package definition is very straightforward, thanks for making the process so easy
<fnstudio>i was helped by the feedback i was receiving as i progressed, e.g. "maybe you forgot (use-module ...)"; (in addition to the help received here on irc ofc)
<fnstudio>the next step is to try and have the package (checked and) accepted upstream i suppose
<civodul>fnstudio: that'd be welcome! check out https://guix.gnu.org/manual/devel/en/html_node/Submitting-Patches.html on how to do that
<Cassio>Hi.
<Cassio>I'm trying to create my own modules, and I have to decide where to save them. So, what are the best practices concearning this, or even the common practices?
<Cassio>And then, how do I tell Guix how to find them?
<singpolyma>Cassio: if you're making a lot you could make a channel. If you just want a file or two locally you can put them anywhere and use -L
<Cassio>OK, thanks singpolyma.  I'll read about channels in the manual...
<abrenon>well done fnstudio !! I'm glad you had a great time learning all this
<fnstudio>abrenon: i did, and it was all thanks to your guix import advice
<fnstudio>i'm now trying with a second simple package - while documenting things in a little writeup
<abrenon>great plan ! Have fun : )
<the_tubular>Anyone tried eaf-framework on guix ?
<qzdlns[m]>hi guix, bit of an obscure question -- can I cleanbuild guix with time-machine? the bytecode spec changes some time after 2018, so it's not possible to run something like `guix time-machine --commit=5c798ca71dcd009896654da7d6a1f8942c6f3c50 -- build python`
<civodul>qzdlns[m]: hi! this commit predates changes that support reliable time machine, and which were introduced in 0.15.0: https://guix.gnu.org/en/blog/2018/gnu-guix-and-guixsd-0.15.0-released/
<civodul>there's no guarantee that you can travel back before 0.15.0
<qzdlns[m]>civodul: yo! thanks for the reference, will take a read
<roptat>abrenon, I just sent an email to guix-devel
<roptat>I managed to create the subtitles for ~50% of the first video :)
<abrenon>wow that's great ! I'm still struggling a bit with aegisub's interface
<abrenon>but at least it seems to do the job more easily than with a simple text editor
<attila_lendvai>after a `guix shell gcc --development shepherd`, running ./configure fails with some GUILE related error. shouldn't that work?
<abrenon>roptat: cool message, we already have someone new on the pad !
<acrow>I'm curious what video editing tools people are using with guix?
<acrow>A couple of years ago I was able to attend a presentation on a video editing DSL that the racket folks had put together.
<apteryx>efraim: message sent!
***Dimitrji is now known as EndOfAnEra
<fnstudio>hi, when trying to define a package that apparently depends on python-sphinx i get this error: no code for module (gnu packages python-sphinx)
<fnstudio>is there any other module that i may have forgotten to import?
<abrenon>that doesn't look like an existing module, indeed
<fnstudio>oh
<abrenon>I suppose the build told you it didn't know about python-sphinx and you added that to your header ?
<fnstudio>ah! it's sphinx
<fnstudio>not python-sphinx
<fnstudio>doh, facepalm
<abrenon>yep, guix search had the answer : )
<fnstudio>thanks abrenon!!
<abrenon>actually, my "it doesn't look like" was a bit too quick
<abrenon>actually, there are several <language>-<subsomething> modules
<abrenon>like python-xyz, python-web, haskell-apps, etc.
<mitchell1234>Hello guix. After a recent `guix pull` every command i attempt to run is met with a sea of "incompatible bytecode version" often followed by a crash. I found this https://issues.guix.gnu.org/43960 and followed the advice of tobias of removing ~/.config/guix/current and doing a pull using /usr/local/bin/guix but this didn't fix anything. Any ideas?
<abrenon>I don't know about sphinx and didn't expect it to be so big that it had its own module
<florhizome[m]><abrenon> "I don't know about sphinx and..." <- Maybe it’s not Sphinx itself but also plugins etc
<florhizome[m]>It‘s fairly popular, I think it’s behind „readthedocs“
<florhizome[m]>Also actually standalone programs (not pure librarys) could, imo be named with their real names more often.
<mitchell1234>I solved my problem but unfortunately it involved deleting all the profiles in /var/guix :( I'm not sure why this worked
<abrenon>florhizome[m]: yeah, when I said I didn't know about "sphinx", I meant the whole ecosystem whose existence I inferred from learning about the file itself
<abrenon>so you would be in favour of smaller, more numerous and independent modules ?
<fnstudio>hey, i'm trying to package a python library called altair, i think i've made some good progress with it but i've not hit this error: https://paste.debian.net/1232658/
<fnstudio>it seems to be related to a "homeless-shelter" location
<fnstudio>which can't be found
<fnstudio>i see something similar gets mentioned here https://github.com/ecbrown/guix/blob/master/gnu/packages/python-xyz.scm#L1218
<podiki[m]>sneek: later tell AIM would be great to have some (all?) of the nerdfonts; it is huge all together, maybe some easy way to split them automatically rather than individual defs
<sneek>Will do.
<fnstudio>anyone knows whether i should use that as a reference and add something similar to my package definition
<podiki[m]>sneek: bot snack
<podiki[m]>sneek: botsnack
<sneek>:)
<podiki[m]>(every time, 50% chance to get it right -> 100% chance to guess wrong every time)
<abrenon>ahah, good ol' homeless-shelter
<fnstudio>ah, this might be relevant as well https://issues.guix.gnu.org/38241
<abrenon>yeah, it probably means one of the tests is trying to write to your HOME because the lib is stateful and needs to write ugly stuff to your HOME to be initialize and since tests need the library, it gets initialized and all
<abrenon>tough luck, guix sets HOME to homeless-shelter to catch this kind of sneaky behaviour
<abrenon>you can probably get away with using /tmp as HOME for the test or by disabling it if it's not important
<fnstudio>abrenon: oh wow, writing to my home dir? what an impolite thing to do
<abrenon>I know, right ?
<fnstudio>cool, let me try setting that to tmp
<fnstudio>tx!
<abrenon>there are some very rude python packages out there, especially in machine learning, some spawning sudos
<abrenon>also, please note that, in order to be reproducible, package builds happen in an environment without network access
<mitchell1234>its the wild-wild west over there in ai
<abrenon>"ohh look at my shiny package, it's so convenient, look you only have to do pip install, see, it's *open source*, so it's good, wow, science is so great"
<mitchell1234>still not as bad as npm
<mitchell1234>I tried to package one java script app and gave up after seeing the hundreds of dependencies that would also need to be packaged
<abrenon>I'm not surprised, python is still worth being criticized, at least
<fnstudio>abrenon: yeah, totally see that
<fnstudio>sudos and network access are just wow
<fnstudio>there's being non reproducible, but that's another level
<abrenon>yeah : (
<fnstudio>ok, it seems it's no longer complaining re my home but i'm now getting this https://paste.debian.net/1232663/
<fnstudio>does that ring a bell?
<abrenon>never had it, but I'm afraid it's as bad as it sounds
<abrenon>"urlopen": yeah, well I'm trying to perform a web query, duh
<gnoo>error: <urlopen error [Errno -2] Name or service not known>
<gnoo>this probably means it wants network access
<gnoo>also i like using (getcwd) as home instead of /tmp
<abrenon>"Name or service not known": did you forget to grant me access to the DNS, you monster ?
<abrenon>gnoo: to get to "see" immediately those byproducts ?
<fnstudio>abrenon gnoo: oh, great, thanks - let me start switching to getcwd
<gnoo>(add-before 'build 'set-home (lambda _ (setenv "HOME" (getcwd))))
<mitchell1234>Perhaps you can pre-download whatever files it's looking for and place them in a cache or something
<fnstudio>brill thanks
<gnoo>abrenon: i'm afraid i don't understand
<abrenon>ah, sorry : / I was trying to interpret your piece of advice
<fnstudio>gnoo: (the add-before bit is to be added as a modify-phases thing, am i right?)
<abrenon>and made an assumption on a good reason to use the current directory instead of /tmp
<gnoo>fnstudio: yes
<fnstudio>cool, tx
<gnoo>abrenon: ahh, i understand the confusing :)
<gnoo>confusion*
*gnoo is sleepy
<abrenon>and I thought that maybe it was so that those files and directories created during the build would appear directly where you are and would be more visible this way
<abrenon>my bad, I'm pretty tired too so I may not always make sense
<gnoo>it was more so that it would be cleaned by guix instead of leaving it in /tmp
<fnstudio>i suppose i need to look at the particular test that's failing then
<mitchell1234>isn't the /tmp inside a container anyway?
<fnstudio>and why it's asking for net access
<gnoo>i don't think /tmp is in a container
<mitchell1234>the build is though
<gnoo>it's not really containerized at all, as i understand it
<abrenon>cleaned ? does guix clean the current dir after a build ?
<mitchell1234>how is it isolated then?
<gnoo>i mean i think some env vars are changed and that's about it? not really sure
<gnoo>abrenon: not the current dir but the build dir
<gnoo>unless you pass the -K (or was it -k) option
<abrenon>ohh, I see, I had entirely misunderstood your tip
<mitchell1234>I thought it was built in the same environment as `guix environment -C target-package`
<gnoo>i think the PATH is changed so that only the stuff defined is visible, HOME is changed and so are all the XDG_ stuffs
<abrenon>you wrote it in scheme, so it's going to resolve to wherever the build is taking place, not to where you as a user are when you run it
<abrenon>sorry ^^
<abrenon>I knew I was tired, I hadn't realized how much
<gnoo>mostly just changing the env vars but it doesn't run as another user, it runs as the same user, i think
<gnoo>(which is why you can do (git-checkout (url "/home/user/src/thing")), or so i understand it)
<fnstudio>is there any recommended way to debug the failing test?
<gnoo>pass the -k (or -K) option, the failed build will be in /tmp
<gnoo>then inspect the check phase manually, maybe see what patch it needs and prepare it to be included next time, sometimes just removing some lines might do
<fnstudio>super
<gnoo>for example, this is what i use to fix a package called bloat:
<gnoo>(add-before 'build 'fix-makefile (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (substitute* "Makefile" (("/var/bloat") "/tmp/bloat") (("/etc/bloat.conf") "${DESTDIR}${PREFIX}/etc/bloat.conf")) (mkdir-p (string-append out "/etc")))))
<fnstudio>vvv useful! will keep you posted
<AIM[m]>Flatpak says no gsettings schemas are installed what do I do?
<AIM[m]>I'm on dwm on guix
<fnstudio>gnoo: sorry, i see the folder in /tmp and i've inspected it, e.g. i see a tests folder etc; but when you refer to the check phase, does that correspond to files left in any particular folder?
<gnoo>fnstudio: no, see setup.py file and what it does when given the test argument
<AIM[m]>Is there anything I missed to install for flatpak?
<gnoo>can't you somehow package that, AIM[m] ? given how flatpak kinda go against the design of guix i doubt many here have experience with it
<AIM[m]>I see, I'll check other ways
<fnstudio>gnoo: thanks, well setup.py doesn't seem to mention tests at all
<fnstudio>i'm inspecting the file as left in my /tmp folder but i think it's this one https://github.com/altair-viz/altair/blob/master/setup.py
<mitchell1234> https://github.com/altair-viz/altair/blob/master/altair/tests/test_magics.py looks like its this file
<mitchell1234>it looks like its trying to download json schemas
<fnstudio>mitchell1234: i tend to like the idea of fixing the tests, if possible, as opposed to skipping them; do you think i should be saving the schemas locally as part of the package?
<fnstudio>the honest truth is that i did try to skip the tests, but that is also failing lol
<fnstudio>phase `disable-failing-tests' failed after 0.0 seconds
<fnstudio>ahahah
<mitchell1234>I do not know much about python. My hunch is there is a way to declare a local file as a schema and if that's so you should be able to download them into the store and patch the tests to use that instead
<fnstudio>what a failure of a guixer that i am
<roptat>alright, I managed to finish the subtitles for the first video :D
<roptat> https://xana.lepiller.eu/guix-days-2022/guix-days-2022-guix-aws-lambda.ass
<roptat>and the video: https://xana.lepiller.eu/guix-days-2022/guix-days-2022-guix-aws-lambda.mkv
<jonsger>whait what, Guix is used by a fintech company :P
<abrenon>well done roptat ! I'm still struggling with the controls
<abrenon>I'm still uneasy with the various play mode and their respective shortcuts
<roptat>jonsger, did you miss that during the gux days? :)
<roptat>abrenon, I completely ignored the video
<abrenon>all I know so far is that when I press space it plays, but never what I want to hear
<abrenon>so what do you suggest? selecting the portions where there's sound, and listening to them in a loop until you get it transcribed ?
<abrenon>there are so many time cursors… I just wished I knew how to rewind that mysterious "main" one
<cbaines>roptat, are the BigBlueButton recordings from the guix days available somewhere?
<roptat>my workflow is: press T to read from the beginning of the current selection and look at the sound chart (spectrograph or something?). Stop it at the end of a sentence or before a comma, hesitation, etc. That allows me to time when to stop a line
<roptat>cbaines, not yet
<roptat>then, once you have the section, just listen in a loop (using R, or clicking the button for that) until everything is transcribed
<abrenon>thanks for the tips !
<roptat>for the timing, you can change the beginning and the end of the line in the sound chart, it makes it easy to see when the sentence ends or when there's a pause
<abrenon>ok… shortcuts don't seem to work here (except space…)
<jonsger>roptat: kind of, I didn't followed the guix days as closly as in the past :(
<roptat>you can clip the beginning to the end of the previous one by holding shift
<abrenon>when the text field is selected, of course it types a 'R', but I can click whereever I want outside of it, pressing 'R' doesn't play my loop : (
<roptat>ok, T is "Lit du début de la sélection à la fin du fichier" and R is "Play the audio for the current line"
<the_tubular>That's some real Franglais
<roptat>I think you need to click the line at the bottom in order to really deselect the text… I don't really us ethe shortcuts
<roptat>the_tubular, that's what happens when a software is not fully translated :)
<the_tubular>Yeah, I always install everything in english
<the_tubular>That triggers my OCD lol
<roptat>would be useful if that triggered an urgent need to complete the translation :p
<fnstudio>i added a bunch of delete-file-recursively to (tentatively) get rid of all tests but the package seems to resist my attempts
<abrenon>^^
<abrenon>actually, except this unslick thing where after committing a sentence I have to click outside
<abrenon>otherwise the process is pretty lean
<abrenon>it selects itself the next sample to transcribe, a little manual annotation with the mouse is enough, then type, enter, and that's great
<abrenon>I have 25 s. \o/
<roptat>:)
<roptat>I'm sure there's a way to change the shortcut so it can be taken into account, like Ctrl+R instead of R
<fnstudio>will this cost me permanent ban from the community (replace 'check (lambda _ #t)) :)
<the_tubular>  /ban fnstudio
<fnstudio>just kidding, try as hard as i can to complete this packaging as a personal thing :D
<fnstudio>well, it succeeds if i drop the check phase
<roptat>use #:test? #f instead ;)
<roptat>tests*
<roptat>cause replacing the check phase or removing it is worth a permanent ban :p
<fnstudio>/noice/
<fnstudio>:)
<fnstudio>thanks roptat, great, it still builds
<fnstudio>i don't like the idea of skipping the tests, but i need a quick fix now, i'll get back to that when i've got some more time
<fnstudio>(last words...)
<roptat>oh and #:tests? #f with no comment will get you 50 package reviews as punishment ;)
<mitchell1234>lol
<fnstudio>lol :)
<djeis>Has anyone tried to use the ovmf package with libvirt as configured by the libvirt-service-type?
<fnstudio>is it possible to install a combination of packages, some from upstream and others from a local package definition? e.g. guix shell --load-path=./my-packages/ my-package python python-wrapper
<abrenon>'later
<fnstudio>yay, it's possible
<fnstudio>with the above syntax
<fnstudio>i suppose it defaults back to the main repo if python and python-wrapper are not found in my-packages
<fnstudio>one more, sorry, what's the best practice for naming a local package definition: (define-module (my-packages packages) ...)?
<fnstudio>if i do that and try to build, i'm given this tip: File `my-packages/packages.scm' should probably start with: (define-module (packages))
<fnstudio>oh, maybe because i need to specify the correct path when building?
<fnstudio>i.e. `guix build --load-path=. my-package' instead of `guix build --load-path=./my-packages my-package'?
<podiki[m]>the module is named based on the path, so in the guix repo from the top level of the repo it is gnu/packages/python.scm for instance, which is (gnu packages python)
<podiki[m]>so I think the module should be named from the path relative to the top level (e.g. if you load from ./my-packages then it would just be (packages) as it said)
<fnstudio>thanks podiki[m]!
<podiki[m]>and to be honest, all my local channel packges are just in top-level files with names corresponding to some other package I started with :)
<mitchell1234>Does anyone have any insights on how to package a golang project?
<mitchell1234> https://github.com/apache/mynewt-mcumgr-cli Specifically this one?
<acrow>'guix import go' is where I would start.
<mitchell1234>oh wow i didn't realize there was a go importer
<mitchell1234>alas it seems the go importer only imports from golang.org
<Guest28>Anyone who haev any tips about ensuring all dependent modules are found when packaging perl programs? I am struggling with for example Mail::SPF when packaging SpamAssassin despite it existing in PERL5LIB env variable.
<acrow>guest28: Have you tried the cpan importer? The importer is not perfect but I have used it on go and cpan and it provided a great deal of useful boilerplate to work with.
<acrow>Much better than starting from scratch.
***dave[m] is now known as dave[m]123456789
<Guest28>acrow: Yes I started with it, and then modified as needed. I build it with guix build -K -f spamassassin.scm and when looking at the environment-variables file in /tmp/guix-build.../environment-variables there is the PERL5LIB specified which include paths to both Digest::SHA1 and Mail::SPF - but weirdly Mail::SPF is not found while Digest::SHA1 is
<Guest28>when running perl Makefile.PL
<apteryx>mbakke: hmm, the latest ungoogled-chromium seems to have failed (28 h ago) https://ci.guix.gnu.org/build/502936/log/raw
<cbaines>it looks like it can be built though http://data.guix.gnu.org/gnu/store/zki8cbkhrhbpk25bysi3lc8ifljambdw-ungoogled-chromium-98.0.4758.102-1.drv
<cbaines>(and a substitute should be available)
<nckx>G'day Guix.
<nckx>apteryx/efraim: Wow, that was fast! Thanks!
<djeis>I'm getting a grafting error trying to build python right now, just says "ERROR: In procedure fport_fill_input: Input/output error".
<djeis>Anyone have a clue what might cause that?
<roptat>how about disk space?
<roptat>(just guessing, I really have no idea)
<djeis>Drive's live, no issues with disk space.
<djeis>I can build other packages just fine.
<djeis>Was trying to build autofs, it started a bunch of grafting and got stuck on the python grafts. I then repro'd the error just doing a build python. Just sat through a guix pull to see if it was something fixed on master already.
<djeis>(and it isn't, to be clear)
<nckx>Anything scary in dmesg?
<djeis>A segfault in libc and a warning about an interrupt taking too long.
<djeis>It's possible there's some drive weirdness, these are old drives. They aren't reporting any errors tho.
<djeis>I also only see one message about a segfault, so unless that was a permanent corruption of something that's probably not the issue.
<apteryx>nckx: :-)
<nckx>(I think you undersell your writing but whatevs.)
<apteryx>ah, thank you
***lukedashjr is now known as luke-jr
***dongcarl2 is now known as dongcarl