IRC channel logs
back to list of logs
<nckx>There's no ‘one by one’ rule (that too would be excessive) but taking basic human nature into account when submitting patches can help you. Such as, huge series intimidate whilst bite-sized-looking chunks lure people in. <lfam>But, overall, think of packages as something that have an "ideal form". Without any complications or quirks. If your packages do have some quirks, you will be asked about them, and it will slow th eprocess down. So the right thing to do is to explain them <drakonis>ha, you know what we need? a update to news so it shows that packages have been modified <lfam>When I see a long patch series with a lot of quirks and no explanations, I will usually just archive the messages <lfam>That's not good but it's the truth <lfam>Sometimes I have the energy to review them anyways, especially if it's a new contributor <lfam>In that case, it's good to teach people and give constructive feedback <lfam>So, overall, take a couple minutes to try to anticipate what reviewers will ask about, and just answer those questions in advance <phf-1>lfam: nckx: ok, I've just read the thing. It's the end of a long day... will do this this wk I guess. Will try my hand on a << small >> package and then will do the rest. 15 steps is kind of intimidating to what's left of my human nature. <nckx>Most of us are humans too. <lfam>The process of code review takes effort from both sides. It's only human nature of course <phf-1>Yes. Guix has been good to me, so, I will give back. <jgart>phf-1, If you'd like me to walk you through it I can meet over jitsi or whatever sometime next week. Just let me know. <lfam>The reality is that most people don't follow all those steps and that's okay. It's an ideal <drakonis>it is always good to have an ideal to strive towards <phf-1>That's very nice of you jgart! I keep this option in mind, thx :) <lfam>I probably shouldn't have said what I said 😓 <lfam>I need to be more tactful <drakonis>hmm, shouldnt guix default to including installed guile packages into the load path? <jgart>drakonis, I think there is an open issue realted to your question that roptat linked once <vagrantc>cbaines: so, my arm64 server finally finished running "guix pull" and "guix system reconfigure" so it's more-or-less available to set up for plugging into the build coordinator <nckx>‘I need to be more tactful’ coming from lfam means there's no hope for the rest of us. <oriansj>VS4mwaLnRSM: yes it is quite simple to do a full luks volume for everything. Just cryptsetup -v --use-random -y --type luks1 luksFormat /dev/sda1 <oriansj>grub only supports luks version 1 so on newer cryptsetup versions you need to add: --type luks1 to the luksFormat command <vagrantc>i thought newer grub actually supports luks2 <oriansj>vagrantc: well then you can drop that detail <oriansj>the only other detail worth noting is ensuring cryptsetup is in your packages list <oriansj>yeah, looks like luks2 but only with PBKDF2
***jesopo is now known as jess
<oriansj>so yes, luks1 is still the default in guix (probably until grub gets luks2 fully stable and we do a glibc update) <ryanprior[m]>Anybody run shepherd as a service manager on a foreign distro using systemd? <ryanprior[m]>I've been writing systemd units that in turn run programs from the Guix store; this sometimes feels clunky/tedious, especially when there already exists a service definition in the Guix codebase, and I'd like to learn how to leverage Guix services better. <jgart>ryanprior[m], maybe ask efraim <jgart>I think he's maybe done stuff like that before... iirc <VS4mwaLnRSM>oriansj: I don't want to use luks, I want plain dm-crypt <VS4mwaLnRSM>the hdd would look as if it were filled with random garbage, hence the USB pendrive on which I would have the GRUB and the encryption key (gets put into the initramfs thanks to mkinitcpio's config)
***califax- is now known as califax
<ixmpp>I havent got `guix pull` to work for a while, hard to check <sam_>it's not even released yet <sam_>and it won't be for a few months <sam_>no distribution will be shipping gcc 12 unless it is in some sort of alpha channel given it's not out and not even in RC stage syet <sam_>.. that's not out either? <ryanprior[m]>joking - we don't have the technology to pull from future releases of guix yet. <ryanprior[m]>that capability will improve our velocity by a lot once it's ready though <ryanprior[m]>there is a "guix-past" channel, for package releases that are older than Guix itself <bdju>ugh this qt blank text issue really sucks. I've been launching an old qutebrowser with full store path to work around it, but now I ran into it with anki and I'm not sure if I still have a good anki around <bdju>I wanted to quick make a new deck before bed and I probably don't have time to troubleshoot this <bdju>okay found a workaround in the #52993 issue <porcupirate>Has anyone been able to get chromium-play-with-kodi to work over LAN? <bdju>ugh... anki keeps crashing in the export file picker
***aya is now known as gyara
<bdju>if anyone knows how I can launch a more stable anki temporarily to export this deck for use on another device, please ping me at some point. <bdju>I think guix's anki is very old so the instability is maybe more likely qt deps or something. not even sure how to approach this <xelxebar>bdju: One hack would be to download the lastest build from their website and try running locally. <xelxebar>That will almost certainly require resetting the ld interpreter in the elf file with patchelf. <bdju>anything newer than the guix version of anki requires systemd iirc and I think that's why guix is stuck on an old one <bdju>but I would question how the container would access my system's anki settings so I could export the deck I already made <bdju>I do wonder if there's a directory somewhere with the data I can just copy to another PC running another distro <sam_>i don't think that's right <sam_>i think you might mean rust <sam_>i'm sorry, i'd experienced issues with packaging newer Anki for another distro, and I didn't see any systemd search results in the code when I just looked, but then I saw an issue with exactly this <sam_>(packaging newer anki being problematic due to rust) <xelxebar>bdju: You'd just share the directory(ies) containing anki's data and settings as a volume inside the container. <bdju>I don't love the idea if docker, to be honest. I also don't know where anki stores its data <lilyp>If everything else fails --expose=$HOME <bdju>lilyp: ? as an argument to what? and what will that do <vagrantc>hrm. using "nikola init --demo path" doesn't work because it copies read-only files from the store <bdju>I think I'm out of time for tonight but I'll come back to this tomorrow probably <Charles[m]1>lilyp: What if it is not there or in ~/.guix-profile/var/log?
***janneke_ is now known as janneke
<podiki[m]>sneek: later tell bdju I see flatpak has anki, that's another option (can can share folders from host system to the flatpak with permissions) <jgart>does anyone more versed in emacs know why this package doesn't produce the autoloads? <jgart>package in question is emacs-nice-defaults <jgart>it is a fork of emacs-better-defaults <jgart>`guix edit emacs-better-defaults` <gnoo>Hello, when i do: (arguments `(#:phases (modify-phases %standard-phases (add-before 'build 'set-home (lambda _ (setenv "HOME" "/tmp")))))) <gnoo>i get: error: (setenv "HOME" "/tmp"): invalid field specifier <gnoo>while building a package <jgart>gnoo, maybe you have a paren unbalanced somewhere else in your code? <gnoo>jgart: thanks! lol, forgot to delete just (setenv "HOME" "/tmp") that i added before :P <jgart>gnoo, cool! I have to rubber ducky sanity check myself all the time, no worries <gnoo>there's a package that i can build using just 'make' in it's source directory but it fails with a package, any ideas? <gnoo>it builds with: guix shell --pure go make coreutils gcc binutils-gold glibc <xelxebar>gnoo: Would help if you shared your package definition and the error. <gnoo>%exception #<&invoke-error program: "make" arguments: ("check" "-j" "4") exit-status: 2 term-signal: #f stop-signal: #f> <gnoo>oh wait, it means i should disable tests, right? <gnoo>i think i've done this before <jgart>doesn't look like it has any tests <xelxebar>gnoo: If you run make check in that --pure environment of yours, what happens? <gnoo>make: *** No rule to make target 'check'. Stop. <jgart>gnoo, maybe try with go-build-system instead? <gnoo>i added #:tests? #f and it still fails <jgart>it's pretty much what the make file is doing <jgart>I think you have everything in the repo to use the go-build-system <jgart>and then if you need anything custom just make a phase for it <gnoo>%exception #<&invoke-error program: "go" arguments: ("install" "-v" "-x" "-ldflags=-s -w" "") exit-status: 1 term-signal: #f stop-signal: #f> <jgart>github.com/tomnomnom/linkheader <jgart>github.com/gorilla/mux v1.7.3 <jgart>and you might need to set the import-path <jgart>see other golang packages in Guix for that <xelxebar>gnoo: That error means that the program "go" (with arguments "install", "-v" ...) failed. Since you have a --pure environment, it should be easy try running the failing commands and play around. <gnoo>thank you! i'll try that <jgart>gnoo, You'll want a phase to do `cp -r templates/* $(DESTDIR)$(SHAREPATH)/templates` <jgart>and one for `cp -r static/* $(DESTDIR)$(SHAREPATH)/static` <gnoo>but, if i use gnu-build-system, then it executes the makefile that does that, right? <jgart>but maybe you can not worry about bloat.conf for now <jgart>You'll have to hack that Makefile a bit to do what you want with Guix <jgart>the standard with golang packages in Guix is to use the go-build-system <jgart>but not sure at the moment which one will give you more difficulty in finishing the package <jgart>I'd personally go with the go-build-system and write the custom build-phases that are in the Makefile <jgart>but maybe the Makefile can be hacked easily also <jgart>I'd have to hack around a bit to see what corners I run into and what I should do <jgart>Try both maybe and see the pros and cons <jgart>of one approach to the other <gnoo>ok, i'll try the makefile first <jgart>Guilers/Guixers what would be your approach for doing this in guile? <jgart>that function just clears the markdown file so that it is empty <jgart>I have an idea of how I would do it with Guile but was wondering if someone maybe implemented a utility function for something like that already? <jgart>Is there a way to regex match a whole file contents with substitute* and set it to the empty string? Or am I tripping because substitute* only operates on lines? <xelxebar>Design question: It outputs memtest.bin, memtest.efi, and (optionally) memtest.iso. Where in the output(s) does it make to stuff these files? For now, I've just put them under lib/pcmemtest-<version>/ <xelxebar>Broader question: How do we best want to even use those files? Personally, I just dd'ed the iso to a usb, but I think it would be cool to have a PCMemTest entry in Grub. <xelxebar>Is it worth re-architecting the grub.cfg generation stuff to make it extensible, with the goal of writing a service to add a pcmemtest entry? <PotentialUser-50>Hi, I have just installed guix system, and I am having issues when I do a guix system reconfigure. The mutter package fails to build, as one of the tests fails and then it just hangs. Is there a way to not install the whole of gnome, as I plan on using stumpwm as my wm, and don't want the whole gnome DE? Also, should I report the failing *vagrantc waves hello and goodbye <gnoo>PotentialUser-50: can you paste the config.scm on a pastebin? <gnoo>if you use %base-services instead of %desktop-services, you don't need gnome <gnoo>there's the included minimal-system-configuration.scm or something similar named, use that for tinkering <gnoo>i can "go" "install" "-v" "-x" "-ldflags=-s -w" "git.freesoftwareextremist.com/bloat" inside guix shell --pure go make coreutils gcc binutils-gold glibc but the same with --container does not work, gives network-related errors <efraim>gnoo: try adding --network after --pure <efraim>also replace gcc and glibc with gcc-toolchain <efraim>I think about the second part, not entirely sure <efraim>only because of the binutils-gold <gnoo>efraim: with --network, it might download the packages itself but you can't have internet while during building packages, right? <jgart>efraim, > ryanprior[m] I've been writing systemd units that in turn run programs from the Guix store; this sometimes feels clunky/tedious, especially when there already exists a service definition in the Guix codebase, and I'd like to learn how to leverage Guix services better. <jgart>efraim, ryanprior[m] Anybody run shepherd as a service manager on a foreign distro using systemd? <gnoo>if i make install in guix shell --container, will it affect host os? <gnoo>now onto the install step <gnoo>what PREFIX is used to build packges? <johnhamelink>nckx: yep, I tried removing the HTML part of my email, but accidentally removed all the parts :D Thank you! I will try that out this morning & report back <rekado>two of the 8TB SSDs just arrived <rekado>I wonder: will I have to do anything beyond plugging them in? Or will someone else take care of smearing butter on them? <mothacehe>rekado: great! once installed i'd like to help on everything that can be done remotely <rekado>I hope the remaining two deliveries won’t take too long <mothacehe>once all connected i can manage to configure the btrfs RAID with maybe some help from apteryx <mothacehe>then we probably need to copy substitutes and run a "guix system init" on those disks <rekado>copying from the SAN should be pretty fast, though <mothacehe>oh right, we should rsync from the SAN first. The /var/cache/guix/substitutes is not fully copied on the SAN, right? <mothacehe>ok, that will speed up the initial copy, we can then rsync the rest from the HDD, or not. <rekado>today I’m trying to make progress with that koma-script error (“Argument of \strip@prefix has an extra }.”). <rekado>the problem does not happen with the monolithic texlive, but the files we’re using are identical <rekado>we may need to revive the profile hook to build font maps again, but even with the font maps I haven’t been able to fix the problem <rekado>the font maps are there, but pdflatex doesn’t look for them <rekado>our texmf.cnf is slightly different in ways that shouldn’t matter, but I’m going to try to make it even more similar to the file from the monolithic texlive <rekado>if anyone would like to join in on this frustrating experience, feel free to chime in! <gnoo>since there is already a git clone of guix on guix systems, can i clone from it? <rekado>gnoo: do you mean something like “git clone ~/.cache/guix/checkouts/l76…2a/”? Yes, that should work. <efraim>hmm, actually I should update that file, it's an older version of the one I'm using now <fnstudio>hey :) how straightforward would it be to run a service, say nginx, using guix on a foreign distro? it's a bit of an exercise rather than a strong need (as i'm root on the machine anyway and i could apt install stuff) <phf-1>Hello Guix! So, I've relocatable binaries thanks to the ~guix pack -RR $package~ command. <phf-1>Essentially: `locale.Error: unsupported locale setting' <rekado>fnstudio: I don’t know how to do this, but if I wanted to do that I would attempt to set up Guix System in a container and run the services from there. <rekado>phf-1: you probably also need glibc-locales and set GUIX_LOCPATH <phf-1>Is it not possible to use the machine locale ? <fnstudio>rekado: oh interesting, that makes sense, got it <phf-1>Something like: GUIX_LOCPATH=$LOCPATH ? <phf-1>anyway, thanks rekado. I've added `glibc-utf8-locales' will see if that works <gnoo>what does tabulation on line 18, column 0 mean? if i don't break the line, guix lint complains that the line is too long, and if i do break it, it complains about tabulation <gnoo>yes, i've set emacs to use tabs <xelxebar>Hrm. My FS has an inode checksum error on a particular file in the store. Is there an easy way to say "please rebuild this particular item"? /gnu/store/6kaipdvj6i6g27hx6f8jw5dy2w2w84b9-guix-f91ae9425-modules/ <rekado>xelxebar: it’s a problem in the amsfonts package <rekado>xelxebar: looking at the output I see that eufm10.tfm doesn’t exist <rekado>the afm file does exist, but the tfm is missing <fnstudio>rekado: sorry, when you said setting up guix system in a container, i think i've put together a tentative web server definition, should i be looking at "guix container ..." to run it or is there any other command? <rekado>xelxebar: in the build script for amsfonts we run afm2tfm to generate the tfm files from the afm file <rekado>xelxebar: we also use pltotf to turn pl files into tfm files <rekado>we don’t have a rule there to process font size 10 <rekado>(fixing this is a world-rebuilding event) <xelxebar>rekado: Oh! Okay. Staring at definition, trying to catch up with you. I see the for-each running plotf. Input list contains eufm10. <rekado>on the left you see the targets, on the right the sources <rekado>the first line: (("eufm8" 8) ("eufm10" 10)) <rekado>this means we build font size 8 with target file eufm8(.tfm) from size 10, with the source file name eufm10(.pl) <rekado>we’ve got no such line for ("eufm10" 10) <xelxebar>Oh, right. The match-lambda. target-base and source-base. Okay with you. <rekado>fnstudio: I really don’t know. I’ve never used “guix container” and I don’t know how to just start a Guix System in a container. <rekado>but if you figure this out I’d love to see this in the cookbook <rekado>…and if it’s too complicated to set up, perhaps we can simplify this somewhat. <rekado>I think it would be a great feature to get more of Guix System on a foreign distro <fnstudio>hey rekado, thanks, no prob, yes, trying to figure this out now and yes, i'll keep you posted, thanks <xelxebar>rekado: So does this boil down to simply adding a (("eufm10" 10) ("eufm10" 10)) entry? Looks like there are no other "idenity" source-target pairs like that, though... <jgart>gnoo, `guix lint` doesn't like TAB <fnstudio>i've been giving it a try with `guix system container server.scm' but it fails quite early with `no code for module (sysadmin web)' - i'm not even sure guix system is meant to be used from a foreign distro at all... <gnoo>jgart: thanks, i've M-x untabify the buffer, and it does not complain anymore <jgart>didn't know about that one TIL <rekado>xelxebar: the fact that there are no other such mappings doesn’t matter. I wrote that code to build the fonts from source, and it turns out that I missed one conversion. It’s not an identity as its from pl to tfm. <rekado>but while we’re changing this we should look at all output files and compare them against the texlive.tlpdb file from texlive-bin. <rekado>make sure we haven’t missed anything else <phf-1>anyone knows how to pass the sanity-check ? <rekado>the cran importer broke again :( <rekado>fails with guix import: error: fport_read: Is a directory <civodul>rekado: great that you got the first two SSDs! <PurpleSym>phf-1: You need to add the package “english” (probably python-english in Guix) to your propagated-inputs. <rekado>phf-1: have you tried what the error message suggests? Adding the “english” Python package? <xelxebar>rekado: I see. That's a solid sanity check. Just out of curiosity, by what process did you choose the current set of conversions? <phf-1>distribution = package, ok, thanks <rekado>the problem is with file-hash*; it no longer works on directories <rekado>ah “recursive?” may now only be a boolean or 'auto <rekado>for convenience the importer would pass a trueish value (a string in this case) <civodul>rekado: oh damnit, i wasn't quite convinced by these file-hash* semantics <civodul>(does the cran importer break this often, and what could we do to avoid that?) <phf-1>rekado: sorry to ask you that much, but I really have to deliver that thing today... <rekado>civodul: no worries. It’s an easy fix. <phf-1>anyway, is there a way to disable console_scripts thing from python packages ? <rekado>civodul: I’ll just “cast” to boolean. It just feels a little dirty… :) <rekado>civodul: the importer breaks occasionally, and usually just when I ask users to try the guix.install thing for R. <rekado>phf-1: the sanity check phase will try to load everything that the Python package declares as a module. <rekado>phf-1: that’s not the whole output, though, is it? <rekado>usually a failure in the sanity check indicates a real problem. <phf-1>for seom reason, py2neo==2021.1.5 calls Docker <phf-1>but I really do not care of console_scripts <rekado>phf-1: okay, in this case please add (modify-phases %standard-phases (delete 'sanity-check)) and add a comment that explains that loading the console_scripts triggers network access via python-docker. <phf-1>ok, great, tought about the same. <PurpleSym>phf-1: This is a bug in py2neo, which runs code before calling the entry point. The only thing you can do is disable 'sanity-check. You could also patch setup.py, but you’d lose the py2neo executable. <phf-1>rekado, PurpleSym: thanks, it worked. <patched[m]>Is there a chance of this being reviewed soon? :^) The current nheko version has no support for matrix spaces <NoClu>Hi, i just updated my system with sudo guix system reconfigure. Now i can not connect to wifi anymore. nmtui asks for the password, then waits a while, just to tell me a key is necessary. Should/can i roll back the update? <gnoo>you can roll back, just restart and in the grub menu select the old configuration <gnoo>this won't destroy your current profile, you'll have to do that manually <gnoo>(although it's possible to go back without restarting, i just find that the simplest) <NoClu>This does not effect user data, right? <NoClu>thanks, this seemed to have worked. could you point me to the next steps? i guess i have to wait until the next kernel release, to try again? <ekaitz>hi! I just reconfigured my system and my i3status does not work <ekaitz>it shows "Error: status command process exited unexpectedly (exit 1) error" <jpoiret>have you tried connecting with nmcli? does it display the password? <ekaitz>also looks like since the reconfigure my locales are wrong <ekaitz>and I didn't touch anything related <ekaitz>confirmed, my locales are broken and i can't type accents in my terminal <ekaitz>is this another "meson" related error? <NoClu>ekaitz: can you run "loadkeys <your_lang>" to get your keyboard working properly? <ekaitz>Couldn't get a file descriptor referring to the console. <xelxebar>Every now and then, when updating my profile, for 30 seconds or so lines like this just repeatedly spam the screen: substitute: updating substitutes from <some substitue server>... 100.0% <ekaitz>NoClu: where are the map files so I can add it? <xelxebar>Where <some substitute server> is the same exact server in all lines. Afterward it proceeds to build profile just fine.
***aya is now known as gyara
<NoClu>@jpoiret nmcli just tells me "wird eingerichtet" (beeing initiated?) <NoClu>ekaitz: just type loadkeys de in the terminal (this is for the german layout, i don't know which one you are using) <ekaitz>i had to revert all the changes and come back, the system was unusable <ekaitz>nobody else experienced anything like that? <rekado>the next three disks should arrive tomorrow. Haven’t heard from the third shop yet. <AIM[m]>Heyya, anyone running Guix SD eith Gnome? Do the flatpak apps show in the menu? <allana>AIM[m]: yes, I do. What I did was add some paths to the XDG_DATA_DIRS environment variable. <AIM[m]>I tried that, idky the icons aren't appearing <allana>for example I added these paths: /var/lib/flatpak/exports/share and /home/allana/.local/share/flatpak/exports/share <AIM[m]>Yeah both are there in the variable <allana>I'm experimenting with guix home and set the variable in a home-environment-variables-service-type <allana>Anyway, not an expert but it has worked for me <abrenon>AIM[m]: if you do it without guix home, exporting the variables in .bash_profile sounds more useful for it to be available to your GUI apps than putting them in .bashrc (for non-login shell only)
***Andrew is now known as D_Andrew
<rekado>mothacehe: commit 6e618362f5ac87b4750ed02393c8348c922a1ee5 also needs a change to python-openid, because that package refers to the removed python2-openid. <mothacehe> rekado: thanks for the heads-up. Fixed with: 80c48a2a93968613621f37e21479538e43f3b3d9. <abrenon>python-scikit-learn fails to build here : / <mothacehe>the powerpc and aarch64 packages are not evaluated <abrenon>ahhh, that's not the failing test, that's the command spawning all the tests <abrenon>ok it's test_calibration apparently, whatever that is <apteryx>hmm, I've had ungoogled-chromium cause X11 freezes twice while in a Meet conference. <rekado>abrenon: I just installed python-scikit-learn 1.0.2 on the latest Guix on x86_64 <abrenon>(I find there aren't many substitutes available these days) <rekado>are you using an old version of Guix?
***D_Andrew is now known as Andrew
<abrenon>is it a known problem that's been fixed since ? <vivien>Hi guix, packaging some python gives me error: in phase 'build': uncaught exception: <vivien>misc-error #f "no setup.py found" () #f <vivien>Is it common? Is there a trick to pybass the errorQ <gnoo>the python-build-enviroment tries to ./setup.py so if it does not exist, i'll error out <abrenon>ok, af36848fb3, yesterday at 6 p.m. UTC <gnoo>vivien: how do you build it in the shell? is it available on pypi? <abrenon>so the 1.0.1 is known not to work ? we can't build it anymore even in a time-machine ? <apteryx>vivien: probably using some new school PEP517 build system <apteryx>sometimes the PyPI archives contain setup.py for backward compatibility with setuptools <vivien>There’s a pyproject.toml, is it relevantQ <apteryx>seems something needs patching in networkmanager: Failed to execute child process “/sbin/modprobe” (No such file or directory) <apteryx>there's also a patch series to bring PEP517 build system support to Guix python-build-system <apteryx>it'd probably solve the issue, and avoid to copy paste some boilerplate in your package <vivien>Is there a way to get the package working soon, while easing the transition to the new build system? <gnoo>vivien: (arguments '(#:use-setuptools? #f)) <gnoo>it started to build for me so i stopped it at that <apteryx>vivien: if the above suggestion doesn't work, you could use the build and install phase of the python-isort package <gnoo>hmm, nope, does not work <attila_lendvai>how can i disable auto suspend when no user is logged in? i tried to (idle-action 'ignore) to elogind, but it didn't work. <vivien>apteryx, oops, ValueError: ZIP does not support timestamps before 1980 <mhj[m]>Good day all, NixOS user here who plans to use guix again because I realized I mostly use a minimal selection of free software on my NixOS build anyhow. Right now I am using ZFS on NixOS, with auto snapshots of my Home directory, the zen kernel and pipewire and wayland. Is there a way to duplicate such a setup, other than no ZFS, on guix? <vivien>OK I fixed it by grepping for "1980" in python-xyz.scm <rekado>we also have pipewire (no service, though) and wayland (I’m using Gnome with wayland) <mhj[m]>The zen kernel is supposed to be better for gaming and multimedia and general desktop usage, but it’s not a deal breaker lol <fnstudio>hey, i think there was some guix packaging meetup that was planned for this weekend, anyone has any more detail around that? <fnstudio>right... i should start by checking the ML... <gnoo>vivien: i got it to build with this monstrosity: <gnoo>(arguments `(#:phases (modify-phases %standard-phases (replace 'build (lambda* (#:key outputs #:allow-other-keys) (system* "python" "-m" "build")))))) <gnoo>but even then it can't install, i'll leave it to you to figure out what program to call to install it properly <gnoo>(you'll need to change the install phase even for guix build) <vivien>gnoo, I got it to work by grepping for "PEP 517" in python-xyz.scm <vivien>But the package does not work for the provided examples <mhj[m]>jpoiret: yup. Been using plasma, but I’m fine with xfce or mate too <jpoiret>then the wayland experience should be smoother than without a DE <vivien>You might not have an EEG at hand, and I can’t provide you one, but it fails at "from edfreader import EDFreader" with "ModuleNotFoundError: No module named 'edfreader'" <phf-1`>Note: `getcifsacl' is the system's one, it's not in the archive. <gnoo>not going to install it tho <phf-1`>So, the profile is sourced and then: 1) using the system's Python, getcifsacl returns the names but 2) using the tarball's Python, getcifsacl does not work. How come? <apteryx>Is there a way to enable WebGL in IceCat? <AIM[m]><abrenon> "AIM: if you do it without guix..." <- Oh, so .bash_profile is good for gui and .bashrc is good for terminal? <dan>Hello, does anyone here use IBus-Rime for pinyin input? <phf-1>as if Python from the inside of a tarball does not behave as a Python installed using apt for example <phf-1>Hello lfam! Would you have a couple of minutes for this problem? <civodul>lfam: hi! i've just killed the GC, which had been running for a while <civodul>so hopefully things will get unstuck <lfam>I think the GC started at the normal time, last night <phf-1>lfam: Great, than you! So here is the pitch: <phf-1>But using the Python from a Guix tarball using guix pack -RR does not <civodul>lfam: i've started "rm -rf /gnu/store/trash" in parallel, with a 3h timeout <attila_lendvai>the manual has two sddm-configuration entries, with different bodies <phf-1>as if Python from the inside of a tarball does not behave as a Python <phf-1> installed using apt for example <lfam>phf-1: What is the "system python"? Is it from Guix System? <civodul>phf-1: hi! you can't necessarily strace a -RR binary <civodul>notice that there are three different "executing engines" <civodul>the PRoot engine already uses ptrace(2), so you can't strace it <phf-1><< system python >> is the python installed in the distribution /usr/bin/python <lfam>I see. So, we have a situation where there are two totally different Python installations, and also where the analysis needs to be reworked <phf-1>thanks civodul. I'm really puzzled by this behaviour. I really don't know what to do. <lfam>So, since the analysis didn't measure what was expected, can you simply say what the problem is? <phf-1>Ok, 2sec, I will add the two executions, thx. <lfam>Also, note that many of the messages in your strace logs are abbreviated. Overall, I still don't have any idea what problem you are trying to solve <lfam>You are trying to print ACLs for a directory? <phf-1>(sorry, 2 minutes for the traces...) <phf-1>essentially, yes. I've a Python distributed through guix pack -RR ... that is trying to read ACLs in an other machine using getcifsacl <phf-1>except that names associated to files like \\INFRA are not printed using the python from the tarball <phf-1>using the same command using the Python of the host, not the one in the tarball, it actually works <rekado>maybe something to do with nscd? <rekado>ugh, some TeX Live fonts cannot be generated from source because they have garbage values. It’s unclear where some of the converted fonts actually come from. <rekado>fonts/afm/public/amsfonts/euler/eusb10.afm for example has a Descender of -2147483648. <phf-1>the expected output comes from this command execution: ` /usr/bin/python3 -c "import subprocess;print(subprocess.run(['getcifsacl /mnt/test_1'], shell=True, capture_output=True))"' <phf-1>The unexpected output comes from this command execution: `python3 -c "import subprocess;print(subprocess.run(['getcifsacl /mnt/test_1'], shell=True, capture_output=True))"' <phf-1>where python3 comes from the tarball generated by guix pack -RR ... <lfam>Can you share an example of the expected output? <phf-1>rekado: nscd works with `/usr/bin/python3 ...' but not `python3 ...' <lfam>Hm, well I don't have experience with ACLs. However, I would start debugging this by learning how these names are resolved <lfam>Whether via nscd or nsswitch <lfam>Once you know that, it will be possible to make an informed hypothesis about what is wrong <phf-1>Well, the names come from `winbindd' <phf-1>The docs say: `winbindd is a daemon that provides a number of services to the Name Service Switch capability found in most modern C libraries, to arbitrary applications via PAM and ntlm_auth and to Samba itself.' <lfam>Python talks to the daemon? <phf-1>not directly, it uses a subprocess that calls getcifsacl <phf-1>getcifsacl then is supposed to give the names <phf-1>Guix uses nscd to get its names but winbind seems to go through nsswitch <lfam>If it were me, I'd proceed by using Guix's python without proot, to check if that works. I would try to determine if the problem was with our Python package, or related to the proot / pack <lfam>It's a heavy-handed approach but the only one I know to use <lfam>Ah, that's something to consider! <phf-1>How would you << Guix's python without proot >> <lfam>Like, I would use it directly <phf-1>haaaa ok PRoot because of guix pack -RR <lfam>Or at least, I'd use `guix pack` without proot <lfam>I'm sure that somebody else could give more specific advice <lfam>This is just what I would do <apteryx>is there an easy way to archive a the resulting profile of 'guix shell' ? I was thinking something like 'guix archive -m manifest.scm --export > archive.nar' <lfam>I would say, don't use that URL :) <lfam>Combine that URL with the one generated by pypi-uri <vivien>Does the prefix part /a4/21/ff29… change when we change the version number? <lfam>I didn't test that URL, but you should be able to find something similar that will work <vivien>Is it a bug in guix that - are not replaced with _ Q <lfam>I don't think so. Some packages use -, and some use _ <lfam>It might be a bug in your package definition <lfam>Like, did you give the correct argument to pypi-uri? <vivien>I don’t understand why the pypi importer succeeded to download the source to hash it then. <lfam>pypi-uri doesn't do anything special. It just makes a URL with the string you give to it <lfam>Check in guix/build-system/python.scm <apteryx>answering myself, I think guix archive --export -r $GUIX_ENVIRONMENT does it (from inside 'guix shell') <vivien>the importer must be smart enough to tell that - should be replaced with _ but forgot to replace them when writing the package definition <lfam>Yeah, that's a bug vivien <lfam>Or, a missing feature ;) <podiki[m]>grafts...there is only the blog posts nothing particular in the manual that I am seeing? <podiki[m]>I've run into a problem building a package union where it seems something is trying to point to the old (non-replacement) version of expat, after the recent replacement <podiki[m]>unfortunately I don't yet have a minimal working example (it is in building a container in that other channel) <podiki[m]>any ideas on how to debug what/how is trying to bring in the ungrafted expat? <podiki[m]>more definite question: how does guix size work with replacements, seems to show the original store (not replacement) in list? <civodul>podiki[m]: yes, "guix size" turns grafts off <civodul>(which shouldn't make any difference most of the time) <podiki[m]>it seems the package union I have when fontconfig is included it tries to have a link to the old expat library; I'm trying to make something as a working example but not there yet <lfam>It's not germane to your problem, but the manual section Security Updates explains grafting <podiki[m]>more precisely something with the lib/cmake/expat-<version> is going wrong <phf-1>lfam: It works when using `guix install python' <podiki[m]>lfam: thanks, the end has some tips on seeing what version a profile refers to, that might be helpful <lfam>Okay, that helps to narrow it down phf-1 <phf-1>so, for some reason, `guix pack -RR $package' breaks it <phf-1>So, the question becomes : how to share a package and its transitive closure between machines ? <lfam>Can you use `guix pack` without RR? <phf-1>guix pack -R does not work too <phf-1>`guix pack' alone gives strange results <phf-1>by the doc, I do: `guix pack -S /opt/gnu/bin=bin python' <phf-1>which gives /gnu/store/id15js5lvi6ig8a4qy6927xnyd8a1v6f-python-tarball-pack.tar.gz <phf-1>`./opt/gnu/bin/python3' does not exist on the other machine <phf-1>But if I do the exact same steps on the machine where I ran `guix pack -S /opt/gnu/bin=bin python' <phf-1>then `./opt/gnu/bin/python3 --version' gives Python 3.9.6 <lilyp>Charles[m]1: if it's not there it's not logged <apteryx>so, I think I know how to archive a profile (guix archive --export -r /gnu/store/...path-to-profile > the-profile.nar), but can I archive Guix itsefl the same? <apteryx>the experience would be to allow using 'guix time-machine -C channels.scm -- shell' without touching the network on a 2nd machine <apteryx>(after having reimported the profiles .nar) <phf-1>lfam: Well, ok. With Guix installed on the target machine, `guix archive --export -r $package' and `guix --import' seem to work !
***iyzsong- is now known as iyzsong
<phf-1>So, `guix pack -RR ...' should be used with care if the packaged program inside the tarall needs to communicate with other things outside (e.g. name resolution services which are used in Samba). <f1refly>it looks like i need the package nss-mdns for cups to be able to discover printers while executing printjobs, do i need to modify the nss service for this or will adding the package to my system suffice? <Guest36>after configuring my gpg-agent with guix home/rde I now cannot decrypt anything with `gpg --decrypt` due to apparently not having a pinentry program. I have tried using different pinentry-flavor's but get the same error. Here is the error and my configuration: https://dpaste.org/HNHu <Guest36>err I put the wrong service in! one moment while I make a new paste <civodul>Guest36: you should ask the rde folks... or help get this service merged in Guix Home :-) <apteryx>bash completion on 'guix archive --import' is wrong (completes with package names) <Guest36>ok civodul. I will have to reconfigure my gnupg so I can sign into github first :) *vagrantc was recently dumbfounded to find that git can sign commits with ssh keys <vagrantc>a feature meaningfully denied those of us who store ssh keys inside gpg keys <f1refly>i think the alacritty build is broken <vivien>Aaand I forgot to prefix the subject line with [PATCH] <SeerLite[m]>f1refly: Yes it is, Alacritty wants a rust-nix version that's not in Guix <SeerLite[m]>It can also be patched to use the nix version that is in Guix but I didn't test if that works <f1refly>what would be the easiest to pin the previous version so i can reconfigure? <SeerLite[m]>I put an inferior directly in my system conf but not sure if that's recommended. It just feels wrong to re-specify the channel there directly <lilyp>vivien: depends on how it's imported <SeerLite[m]>You could also install in your profile with time-machine instead <f1refly>I think I'll pin it in my system for now <lilyp>use the newly added sanity-check phase to test whether it's handled sanely <vivien>lilyp, I don’t know the sanity-check phase, I don’t understand what "handled sanely" means and I don’t know if I need to configure the phase. Sorry I’m just debuting in python packaging, and I don’t have much experience with python modules. <lilyp>vivien: It's really nothing you have to care about until it signals an error during build <vivien>That’s the best kind of feature! <lilyp>The sanity-check phase is enabled by default in python-build-system. It asserts that all modules can be imported <lilyp>(all top-level modules at least) <vivien>Bummer, python-enum34 fails to build <vivien>Maybe that’s another package I can get away without <apteryx>vivien: python-enum34 is useless for our python 3.9.9. <apteryx>sadly our importer doesn't disregard conditional deps for older pythons <attila_lendvai>i have 30+ rust-* patches accummulating here... will i have a headache? e.g. another patchset is pending, and will be applied, and i'll have to resolve conflicts? <civodul>i read that Debian has 30K source packages and we're (almost) at 20K <civodul>attila_lendvai: i'd recommend submitting them in small consistent, self-contained patches <apteryx>civodul: yes, we're approaching the big leagues in terms of sheer package numbers <apteryx>#9 on repology.org according to packaged projects count <apteryx>guix archive -t < guix-19959.nar -> guix archive: error: corrupt input while restoring archive from #<input: file 0> <civodul>it's about automation in Debian, but that reminds me of things we're doing, like the Data Service, "guix style", etc. <civodul>it mentions Lintian-Brush in particular, which is interesting <civodul>apteryx: yes, it's a confusing thing <civodul>well, it depends on how you got that ".nar" thing <civodul>is it an actual nar, or is it something created by "guix archive --export"? <apteryx>guix archive --export -r /gnu/store/...-some-profile > my.nar <civodul>right, that creates a "nar set", not a nar <apteryx>I'd expect 'guix archive -t' shouldn't care <civodul>well it has to expect something, right? :-) <apteryx>it should expect a nar or narish thing such as a nar set, in my opinion :-) <apteryx>especially since it is the very tool producing that <civodul>guessing file formats is usually risky <civodul>why are you using "guix archive" anyway? :-) <apteryx>alternatively we need to not mention examples such as "guix archive --export git:gui /gnu/store/...-emacs-24.3 > great.nar" in the manual <apteryx>civodul: I was experimenting with the available options to backup a profile frozen in a manifest.scm + channels.scm file to disk, to be able to redeploy it in 5 years if there's a need. <apteryx>best I've found so far is to get the profile directory in the store with 'guix time-machine -C channels.scm -- shell -- echo $GUIX_ENVIRONMENT' and run 'guix archive --export -r' on that. <apteryx>I also wanted to preserve the profile of that guix too (not sure how much value there is to that); I did it with something similar but had to use 'guix pull -C channels.scm' and then guix archive --export -r $(realpath $HOME/.config/guix/current) > guix-xxxxxx.narset <apteryx>I suppose this worked well because there's no grafts currently <ytc>is there anyone using sx to login instead of gdm? <vivien>How do I disable specific failing tests with pytest? <vivien>Do I need to edit the source code to remove the source block? That sounds horrible. <jgart>vivien, see python-verboselogs for one example <jgart>`guix edit python-verboselogs` <SeerLite[m]>Will git send-email automatically send the second patch to NNN@debbugs or do I have to do something else? <SeerLite[m]>Doesn't look like it lets me edit the destination address on-the-fly <singpolyma>SeerLite[m]: you have to send a cover letter email manually first to get a bug number <sneek>singpolyma, you have 1 message! <SeerLite[m]>So I'm guessing the first patch I sent didn't get recognized at all? <singpolyma>I'd love to fix debbugs to allow it to act more like a mailing list, but time and such... <jgart>SeerLite[m], there's a quirk were you have to send one message first to debbugs <singpolyma>If you use send email against the main email address it will make one bug number per patch <jgart>Then you can send your patch set together without it getting broken up <SeerLite[m]>It looks like I didn't get a number anywhere though? Should it reply to me telling me the number? <civodul>apteryx: re redeploying a profile, the aim is for manifest.scm + channels.scm to be enough <civodul>hence all the fuss with SWH, Disarchive, etc. <civodul>though indeed, you could also save it in its binary form as you write <podiki[m]>grafts question? since expat has a replacement, should guix gc -R still show the previous version at all? <civodul>podiki[m]: "guix gc -R $(guix build something-that-depends-on-expat)" should not show the ungrafted expat <podiki[m]>civodul: thanks, thats what I expect and saw in the manual <podiki[m]>hrm...somehow I think a union build is pulling in the ungrafted expat, still don't have a minimal example though <podiki[m]>I was seeing guix gc -R <path to shell profile> include both grafted and ungrafted expat <civodul>perhaps you can try and reduce the profile until you have a small enough reproducer <podiki[m]>fontconfig seems to be what trips it, but I don't think it is actually that package, something with the union-ization... <civodul>nothing against unionization here :-) <podiki[m]>I'm trying to get it to happen through just a guix shell but no luck so far; I'll try to get something small that reproduces it.... <podiki[m]>(it is in a guix container profile that this happens, in case that adds anything) <Guest70>What should I do about programs that expects to find header files in /usr/include? I am not sure what package to install and how to symlink it. <vagrantc>why does sneek only sometimes welcome me back ... and i don't see it welcome anyone else back either :) <rekado>I wrote a little procedure to check texlive package outputs against tlpdb <apteryx>civodul: it's nice to have all these things (SWH, Disarchive), but I wouldn't trust it more than a local backup :-), especially they only cater to preserve sources, not built artifacts (who knows which test suites won't pass in 5 years when I try to build from source?). I think like to see uses are valid and complementary. <apteryx>I see both uses as valid and complementary* *apteryx stops pretending they can write for the day <attila_lendvai>civodul, FYI, i have sent the rust patchset (it seems to be stuck at 41/49, though). i don't know how this works, but it would be nice if it got some priority to avoid any merging headaches. they are basically crates.io imports with occasional fixes for FFI-using code. https://issues.guix.gnu.org/53401 <civodul>apteryx: yeah, i see what you mean, but IMO the horizon is to get there: reproducible environments, end-to-end <civodul>saving binary bundles is something other tools already do very well (though without provenance tracking) <civodul>attila_lendvai: i don't usually review Rust packages, but yes, i agree <civodul>do ask here or in the bug tracker after a couple of days have passed <Guest16>how can I symlink the guix glibc package to /usr/include? <civodul>Guest16: you could run "guix install gcc-toolchain -p /usr", assuming /usr doesn't already exist <Guest16> /usr already exists for me but not /usr/include <SeerLite[m]>singpolyma: Sorry, I had to go do something. It worked now, I just had to wait for debbugs to see it. Thanks! <Guest16>The only thing I have in there is /usr/bin/env. I looked and saw that `-p` in this case would install gcc-toolchain to the /usr profile. I don't understand why I would want gcc-toolchain to be in its own profile, other than that it would install it to /usr <vivien>There must be something I don’t understand with pytest. I have 2 packages that each define a function with keyword arguments for one, and optional arguments for the other. I’m sure that the function is never called during the tests, but pytest seems to call it with no arguments (thus, the tests fail). <vivien>Does someone know what is happening? <rekado>Guest16: installing it into a profile at /usr makes the file tree of gcc-toolchain available there, so you get /usr/include containing the files you want <bsturmfels>hi folks - I'm not a regular Perl user, but I'm told that I should do `eval $(perl -Mlocal::lib)` in my .bashrc to install packages from CPAN per-user. I get an error missing local/lib.pm though and can't seem to see "local::lib" in Guix. How do others do per-user Perl packages? <Guest16>bstrumfels: I always ran into problems with local::lib even when I wasn't using guix. If you don't get a satisfying answer here try #perl or look at App::Plx which does everything local::lib does and better imo. <attila_lendvai>i have sent a patchset of 49 emails, and it's stuck at 41 on debbugs for about half an hour now. are those mails lost/dropped? when shall i try to resend them? <vivien>Rectification: it seems that one of the packages is not using pytest <podiki[m]>okay, on grafts...the CI isn't showing a fontconfig-minimal built after the expat replacement <podiki[m]>but somehow I think that older expat ref is ending up in the union container <podiki[m]>it may be a 64/32bit combo thing, but trying to build fontconfig --system=i686-linux...dies on guile-2.0.14 failing a test :( <nckx>attila_lendvai: Please wait a day or so. Resending such a huge patch set or a subset of it will only cause confusion as long as the rest is likely to arrive. <nckx>podiki[m]: What's all this about expat? Is the graft broken? <attila_lendvai>nckx, since then i have realized that the actual issue is that the emails are not in order in debbugs... (unfortunately only after resending 42/49) <podiki[m]>nckx: I don't think broken, I think I've run into some weird edge case <podiki[m]>I'm still trying to get some minimal code to share (it is from some outside channel code) <podiki[m]>my closest so far is a container with the inputs being fontconfig both x86-64 and i686; fails on profile creation due to a file/dir conflict; more importantly the noted files are from expat pre-replacement <nckx>attila_lendvai: That's fine, that's why they're numbered :) <nckx>I just popped in before bed but now I have a ghost story (and hopefully, a solved mystery) to read up on tomorrow ☺ <podiki[m]>now I'm stuck since I can't build fontconfig i686, yet obviously have it somewhere.... guix build fontconfig --system=i686-linux is a different hash somehow