IRC channel logs

2023-12-31.log

back to list of logs

<meorly>does the container created by g h container use the parent shepherd? isn't it supposed to start an instance of shepherd inside the container?
<simpleton123>hi folks.Question regarding rust-packaging. i see there is a rust-package `rust-libssh2-sys`. My dependency ist `ssh2` (https://crates.io/crates/ssh2) ...is this the same? Asking because there is also a https://crates.io/crates/libssh-sys ? Asking because have ssh2 as dependency
<simpleton123>forget my question...
<Kabouik>I don't understand how to keep Go from fetching dependencies online. Here are the logs for my package: https://0x0.st/HEGH.txt And O (draft-)packaged the Go dependencies too in my private channel, so I don't know what is missing: https://git.sr.ht/~mlaparie/guix-private-channel/tree/master/item/mlaparie/packages
<peanuts>"~mlaparie/guix-private-channel (master): mlaparie/packages/ - sourcehut git" https://git.sr.ht/~mlaparie/guix-private-channel/tree/master/item/mlaparie/packages
<Kabouik>Or maybe I missed some deps?
<davidh38>what would be the best way to start a program via autostart in guix
<davidh38>?
<loopback___>not sure if I should just hack in a startup script to set the mtu or keep digging the scheme to figure out how to set it in /etc/config.scm
<loopback___>nvm searched the irc logs
<alexey`>Hello there! Could you please tell me if the GNU Guix supports booting from a separate boot partition (the one, which contains the `/boot' directory)? If I understand correctly, simple tweaking of the `config.scm' doesn't help much and one needs to do some extra work (e.g. copying files manually) to achieve this, as explained here https://issues.guix.gnu.org/48172 . Is this comment still valid?
<peanuts>"support split /boot partition" https://issues.guix.gnu.org/48172
<dajole>Where is the proper place to set the environment variables as suggested when I invoke `guix pull`. `.bashrc`?
<apteryx>.bash_profile, if that's needed (it isn't on Guix System)
<apteryx>alexey`: still valid
<dajole>I'm on Guix System. `guix pull` does say the `GUIX_PROFILE` variable is necessary.
<adanska>Hi Guix!
<tsmish>Is there a reason for guix-module-union to take priority over GUILE_LOAD_PATH? (I'm thinking of filing a bug report)
<sneek>tsmish, you have 2 messages!
<sneek>tsmish, tsmish says: test 1
<sneek>tsmish, tsmish says: test 2
<alexey`>apteryx: Thanks. So, if I use the `device' entry of the `menu-entry' field (Chapter 12. System Configuration. Section 12.14 Bootloader Configuration.), which specifies where the kernel and initrd are, and manually set everything up as required, it should work. Right?
<apteryx>the menu entries are regenerated on each reconfiguration so, that won't help much.
<apteryx>you'll want to run the script mentioned in bug#48172
<peanuts>"support split /boot partition" https://issues.guix.gnu.org/48172
<alexey`>apteryx: Ok. I see. Thank you.
<alexey`>to all: I wish you peace, love and happiness in the coming New Year! Happy Hacking!
<adanska>Thanks alexey`! Happy new year to you too :)
<dajole>I'm trying to get the Sway window manager to work. When I try to invoke `sway` I get "XDG_RUNTIME_DIR is not set in the environment. Aborting". I've searched around, but I haven't been able to figure out what exactly is wrong. Any ideas?
<dajole>Ah seems like I may have to look into desktop services.
<nathan__>i think you can likely get that variable from a display manager or desktop services, but you will also get that variable if you configure guix-home with the home-xdg-base-directories-service-type. that's the default, so even an empty guix home profile should work. iirc, you can also just set that variable manually to /tmp/ and it will work.
<dajole>I'll look into those potential solution. Thank you!
<tsmish>dajole: It should be set by elogind, which is part of desktop-services. I think home-xdg-base-directories-service-type doesn't set it due to https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/home/services/xdg.scm#n151
<peanuts>"xdg.scm\services\home\gnu - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/home/services/xdg.scm#n151
<dajole>Thanks! I'm just getting started with Guix and there is a lot to learn 😅
<dajole>After adding `%desktop-services` to my system config I get an error 'more than one target service of type 'udev''. I haven't added any services beyond those that were added during the installation. The error suggests there is somehow a duplicate. How do I find out what is causing the collision?
<tsmish_>dajole: If you want me to find it for you, you can post your config to paste.debian.net. I suggest looking over services entry more carefully. You can also remove services from %desktop-services by using modify-services.
<dajole>I really appreciate the offer! This is on a different computer though, and I'm still trying to get things running, so I'm unable to paste thus far. I'd also like to learn how to figure these things out. The only services listed are these: http://paste.debian.net/1302581/
<peanuts>"debian Pastezone" http://paste.debian.net/1302581
<tsmish_>dajole: %base-services is already included as part of %desktop-services (see https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/services/desktop.scm#n1948), so you including it again causes services in %base-services to appear twice.
<peanuts>"desktop.scm\services\gnu - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/services/desktop.scm#n1948
<tsmish_>dajole: docs for %desktop-services also say "This is a list of services that builds upon ‘%base-services’"
<dajole>Ah, I see. This is very helpful, thank you! For future reference, how did you figure this out? Did you go straight to look at the linked source?
<tsmish_>dajole: Had a hunch and went to source. Don't suggest you do the same, I think me looking at sources is a bad habit, since I already missed a few things included in docs.
<dajole>I see. Thanks again. And indeed, from what I have seen so far, the documentation is quite excellent, albeit a bit overwhelming.
<tsmish_>Does anyone know of issues.guix.gnu.org mirror that is not hosted at MDC?
<rekado>tsmish: https://debbugs.gnu.org/ is where issues get its data from.
<peanuts>"GNU Bug Tracker" https://debbugs.gnu.org
<rekado>but issues.* is not hosted at the MDC
<rekado>oh, sorry, it is
<rekado>efraim: the number of running builds on ci.guix.gnu.org is suspicious. There are never more than 7 x86_64 jobs.
<efraim>so you think there's something special about the number 7?
<tsmish>rekado: MDC just bans my country (Russia) and tor, so looking at issues becomes kinda annoying. Thanks for debbugs suggestion, I can probably figure out how to search for guix issues specifically.
<rekado>tsmish: I think it’s the DFN actually that bans Russian IPs.
<rekado>efraim: the servers that work on jobs differ; all of them seem to ask nicely for work, but there are only ever up to seven x86_64 slots to be filled.
<rekado>there is a connection pool of about 25 connections to the db
<efraim>sometimes it sends a ppc64le job, but I agree with it being about 7 jobs
<efraim>you just rebooted it so it shouldn't be that something is holding extra connections
<efraim>rekado: since the 24th or since earlier? I'm looking at commits on guix-maintenance.git and about to look at system generations
<tsmish>IIs there a reason for guix-module-union to take priority over GUILE_LOAD_PATH? (I'm thinking of filing a bug report)
<tsmish>damn, sent accidentally, I wanted to repeat the question though. I have a bug report written, but it may be notabug.
<dariqq>hi, is there a nice way to modify build phases of an inherited package that doesnt require me to copy and paste the changes to the build phases in the original package?
<efraim>rekado: 'ls -lacd /gnu/store/*machines-for-berlin.scm' shows some history for /etc/guix/machines.scm, I'd like to try rolling that back to the one on November 23rd, which effectively reverts commit d5913d4ecf9bb5ff7aa84bc6c03d6750ee051465 from guix-maintenance.git
<tsmish>dariqq: look into modify-phases
<efraim>also, IIRC 8 just so happens to be the number of simultaneous builds for i586-pc we allow
<rekado>efraim: hmm! Please do revert then. I’m out of options, so I’m willing to try anything.
<efraim>I'm just going to symlink it into place and hope nothing breaks :)
<tsmish>dariqq: eh, didn't see that the original package is modified. Should still work if you extract phases from the arguments, but it could be annoying.
<rekado>not sure if anything was wrong before the 24th already. I haven’t been following it, but the graph of queued up builds hasn’t been looking good for quite some time
<dariqq>tsmish: yes exactly. so far ive been duplicating the modification but this is not really nice and hides the changes im making. The easiest would be to replace the %standard-phases with the phases from the package im inheriting from but idk if this is poassible
<tsmish>dariqq: there is substitute-keyword-arguments from (guix utils) that could be helpful
<efraim>IIRC we suddenly queued up lots of aarch64 builds and the machines never quite caught up
<tsmish>dariqq: I've used it once like https://paste.debian.net/1302591/ (look at ffmpeg-vmaf)
<peanuts>"debian Pastezone" https://paste.debian.net/1302591
<tsmish>dariqq: also, here is phase modification from guix repo https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/games.scm#n5000
<peanuts>"games.scm\packages\gnu - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/games.scm#n5000
<tsmish>dariqq: or simpler one: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/cpp.scm#n1304
<peanuts>"cpp.scm\packages\gnu - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/cpp.scm#n1304
<dariqq>tsmish: thanks. that looks promising. Was greping the guix repository and found stuff from https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/racket.scm#n449 which looks like what i want
<peanuts>"racket.scm\packages\gnu - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/racket.scm#n449
<dariqq>thanks for your help
<simpleton123>can some explain me the %default-channels configuration? i can not get it to work and i do not find anyone using it anywhere in .dotfile i found. how is this supposed to work . Described here: https://guix.gnu.org/manual/en/html_node/Specifying-Additional-Channels.html#Specifying-Additional-Channels
<peanuts>"Specifying Additional Channels (GNU Guix Reference Manual)" https://guix.gnu.org/manual/en/html_node/Specifying-Additional-Channels.html#Specifying-Additional-Channels
<simpleton123>can someone show me a full example
<simpleton123>?
<tsmish>simpleton123: what do you want to do?
<next4th>simpleton123: %default-channels is a list, usually you would use it with: (cons* (channel ...) %default-channels) in ~/.config/guix/channels.scm
<simpleton123>i tried to follow instructions here: https://guix.gnu.org/cookbook/en/html_node/Channels.html , i can not get `guix describe` to ever show my local channel following the instructions there...
<peanuts>"Channels (GNU Guix Cookbook)" https://guix.gnu.org/cookbook/en/html_node/Channels.html
<simpleton123>next4th that is exactly where i tried to use it...a guix pull shows that my local channel is found but guix describe does not show it and my adapted packages are not listed when i do a `guix search` so i guess i am doing something wrong...
<next4th>simpleton123: okay.. what's the output of "which guix", it should be ~/.config/guix/current/bin/guix.
<simpleton123>next4th it is...full path instead of `~/`
<next4th>"guix pull" update the "current" one, and that bin directory should be prefered over something like /usr/local/bin/guix.
<next4th>simpleton123: does the full path belong to the current user? i have: /home/iyzsong/.config/guix/current/bin/guix
<simpleton123>next4th yes
<next4th>okay, did you run "guix pull" as that user?
<simpleton123>next4thyep
<simpleton123>next4th yep
<simpleton123>next4th `guix pull` showed output stating `Updating channel 'my-packagesl' from Git repository at 'file:///home ...`
<simpleton123>next4th shouldn`t `guix describe` show `my-packages` too?
<simpleton123>next4th tried also `guix describe -f channels` but also does not list `my-packages`
<tsmish>simpleton123: my dumb question is did "guix pull" finish without errors?
<simpleton123>next4th yes... it says `Building from these channels:` , then list the channels (guix and my-packages) ..., `Computing Guix derivation ...`  and `nothing to be done` as nothing changed and only my 2 adapted packages reside in there.
<simpleton123>next4th please tell me am i right to expect that `guix describe` would list it? If it would not list it then ok but i was under the impression it would
<next4th>um, does your packages work without channel? you can test them with 'guix build my-package -L my-module'.
<next4th>yes, it should be shown in `guix describe`
<formbi>hi
<formbi>is it possible to use the go importer directly on a go.mod file?
<formbi>I'd like to try packaging a project, but there's something wrong in the dependency tree, so I think the simplest way would be to just remove it from the go.mod and add it manually later
<simpleton123>next4th is it possible to provide a simple full example of a channels.scm using the append? i might simply need to see something in one piece, not snippet. I allready tried to find a dotfile online but did not find anyone using the `append` or `cons` in their channels.scm.
<tsmish>simpleton123: I've just made a channel for my packages. My channels.scm is https://paste.debian.net/1302596/. guix-files was created by putting all my .scm files with packages to ~/guix-files/tsmish/packages, then doing git init; git add -A; git commit -m "Initial commit". guix describe shows my channel and guix search my packages.
<peanuts>"debian Pastezone" https://paste.debian.net/1302596
<tsmish>oh, I've also made all my packages say (define-module (tsmish packages ...)) at the top.
<next4th>simpleton123: i add a 'rde' channel, and it working fine here... https://envs.sh/F2c.txt
<tsmish>formbi: I never packaged a Go package, but judging by the source code of go importer it doesn't support using it directly on the mod file. I think your best bet is importing every package that isn't broken separately (you can put them in the same file). Or you can make your own GOPROXY.
<simpleton123>next4th tsmish `guix describe` should be able to immediately show the the channels or after `guix pull` `
<simpleton123>?
<tsmish>simpleton123: after guix pull
<simpleton123>tsmish just checked in other terminal. `guix pull` not yet finished but my local repo is listed now...
<simpleton123>showing and building works: `guix show/build -L ~/MY_channels/my-packages zellij-binary` ...guix search does not show the package...
<simpleton123>this normal?
<tsmish>simpleton123: I'd check git status and define-module lines of packages.
<simpleton123>tsmish ...and immediately found a typo...corrected and another `guix pull`
<formbi>tsmish: how to make a GOPROXY?
<tsmish>formbi: oh, that was a joke. https://go.dev/ref/mod#goproxy-protocol describes a protocol, but you really should really just import packages separately.
<peanuts>"Go Modules Reference - The Go Programming Language" https://go.dev/ref/mod#goproxy-protocol
<formbi>I guess I should, but Go dependency trees are so huge that having an additional bit of automation would be nice
<tsmish>formbi: you can still recursively import, there can't be that many immediate dependencies.
<simpleton123>tsmish `(define-module (zellij-binary-musl)` and `(define-public zellij-binary-musl` ...are the define-lines... `guix search zellij-binary-musl` still does not show anyhitng
<tsmish>formbi: or you can take a look at https://git.savannah.gnu.org/cgit/guix.git/tree/guix/import/go.scm and make your own importer for go.mod files, but that's "advanced"
<peanuts>"go.scm\import\guix - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/guix/import/go.scm
<tsmish>simpleton123: is the file zellij-binary-musl.scm immediately at root directory of the channel? Also, did you git add and git commit your changes?
<simpleton123>tsmish yes and yes. Are the define lines ok? here the full package: https://paste.debian.net/1302599/
<peanuts>"debian Pastezone" https://paste.debian.net/1302599
<Guest84>Any recent-ish laptop recommendations that will run vanilla guix without trouble and have good battery performance?
<tsmish>simpleton123: Was `guix import crate zellij` not working? Also license seems to be MIT/expat, not gpl3.
<AwesomeAdam54321>Guest84: There's the Librem 14 for very recent, and there's also the ASUS VivoBook Max X541NC-DM114T
<AwesomeAdam54321>s/for/which is
<simpleton123>tsmish did not try the `import crate` . Newby to guix. Seemed like a good target to test simple package woth copy-build-system. You are correct. Is expat license...will correct it
<tsmish>simpleton123: `guix search -L ~/guix-files/ zellij` finds it, I'll tell you if it can be found in a channel after `guix pull` finishes.
<tsmish>simpleton123: works for me
<simpleton123>tsmish `guix search -L ~/MY_channels/my-packages zellij` or `gui search zellij` ?
<tsmish>simpleton123: https://paste.debian.net/1302603/
<peanuts>"debian Pastezone" https://paste.debian.net/1302603
<xd1le>happy new year guix
<simpleton123>tsmish `guix pull` takes its time on my side. tried `guix import crate` on crate `syntex-syntax2` which is marked as a backport which is now abandoned. Would i have to specify something with `guix import` or manually editing only option?
<simpleton123>tsmish https://paste.debian.net/plain/1302604
<tsmish>simpleton123: not sure why you want a dead crate, but it seems to be absent from crates.io and guix can't find it.
<tsmish>simpleton123: you can probably do it the manual way through the repository
<simpleton123>tsmish syntex-syntax2 is  dependency of ctest which is build-dependency of ssh-rs (https://paste.debian.net/plain/1302605).
<tsmish>simpleton123: which also seems dead. Sure you don't want ssh2-rs?
<simpleton123>tsmish sorry...typo from my side. the pastebin holds the correct info. buidl-dependency of ssh2-rs.
<tsmish>simpleton123: `guix import crate ssh2` seems to ignore systest, which is probably for the better, considering last commit in that folder was 4 years ago and in Rust land it might as well be in different millenium.
<tsmish>(haven't actually used rust, just salty about debian testing not being to compile packages released 3 months ago due to increased MSRV)
<tsmish>simpleton123: does it even compile with cargo?
<simpleton123>tsmish well...it fails with the scm i assembled for ssh2 https://paste.debian.net/plain/1302606
<tsmish>simpleton123: missed (input zlib) alongside probably many others.
<tsmish>*(inputs zlib)
<tsmish>simpleton123: and due to bug#68017 you'll have to add all inputs of your cargo-inputs recursively.
<peanuts>"cargo-build-system should propagate inputs and native-inputs of dependencies" https://issues.guix.gnu.org/68017
<simpleton123>tsmish btw. my `guix pull`finished. search(`guix search  zellij`) again does not show my package and also no channel via `guix describe`.. Now the funny thing. Triggered another `guix pull` and checked in other terminal window. There `guix describe` shows channel again and `guix search` finds package again....not sure what i'm doing wrong
<simpleton123>tsmish ...the `guix pull`is still running....
<simpleton123>tsmish Damn....logged out of the "problematic terminal" and re-established ssh-connection. Now `guix describe` shows channel also correctly there...argh....
<tsmish>simpleton123: honestly, I don't even know how you managed to create "problematic terminal" aside from logging in as different user or on different machine.
<simpleton123>tsmish I can't say either. Hey...thanks for all so far. I'll wrap it up for today and prepare for later this evening. Enjoy the turn of the year
<wehlutyk>Hey all!
<wehlutyk>jpoiret: thanks for all the config, ppm works grand :)
<wehlutyk>I'll wait for your MRs to be merged for the rest
<wehlutyk>now I have another surprise with home-syncthing-service-type
<wehlutyk>with "(service home-syncthing-service-type)" in the guix home config, it then runs under my username but its default config are folders under /root
<wehlutyk>and with "(service home-syncthing-service-type (syncthing-configuration (user "sl")))" the guix home process reports this error:
<wehlutyk>guix home: error: service 'syncthing-sl' requires 'loopback', which is not provided by any service
<wehlutyk>any hints?
<efraim> https://git.sr.ht/~efraim/guix-config/tree/master/item/efraim-home.scm#L996 here's the line I have in my config for the home-syncthing-service-type
<peanuts>"~efraim/guix-config (master): efraim-home.scm - sourcehut git" https://git.sr.ht/~efraim/guix-config/tree/master/item/efraim-home.scm#L996
<wehlutyk>efraim: I have that too, and new sync folders whose path is e.g. ~/Sync go into /root/Sync
<efraim>did you use sudo guix home reconfigure or something like that?
<wehlutyk>might be the case. Would there be a config to remove to have it reset?
<wehlutyk>.local/state/syncthing, trying that out
<wehlutyk>fixed indeed
<wehlutyk>efraim: thanks!
<wehlutyk>Dear Guix!
<wehlutyk>my next question for the framework 13 (AMD 7040) is if power-profiles-daemon (finally working properly) can help in setting the battery charging level or not
<wehlutyk>several ppd issues seem to say no, but then is there any battery charging control?
<wehlutyk>I'm still exploring https://community.frame.work/t/battery-charge-options/755/74
<peanuts>"Battery Charge Options - #74 by prepaidpyramid - Framework Laptop 13 - Framework Community" https://community.frame.work/t/battery-charge-options/755/74
<wehlutyk>and https://community.frame.work/t/does-the-framework-have-a-battery-charging-threshold/17428/8
<peanuts>"Does the Framework have a battery charging threshold? - #8 by NullVoxPopuli - Community Support - Framework Community" https://community.frame.work/t/does-the-framework-have-a-battery-charging-threshold/17428/8
<rekado>ACTION enters a shell with cuirass to figure out what’s going on on ci.guix.gnu.org
<rekado>node 101 is idle, it asks for work and gets ‘no available build’ all the time.
<rekado>poor thing
<Geekz>Hi there. I am new to guix. I installed clang17 using guix install, but even the simplest programs won't compiler, because it can't find header files or even a linker. What am I doing wrong?
<Geekz>won't compile*
<rekado>Geekz: you should use clang-toolchain instead of just the clang package.
<rekado>(we’ve got the same arrangement for GCC)
<Geekz>is there a way I could have learnt about that by myself? I am asking because there might be countless other examples where the same will happen
<Geekz>I have tried compiling again. It could compile a trivial example, but then I tried compiling with support for c++23's <print> and it can't find it. What could be wrong?
<Geekz>does anyone know?
<cbaines>rekado, are you aware of https://issues.guix.gnu.org/67250 ? While that issue is about the bordeaux build farm, I presume the same issue could impact ci
<peanuts>"builtin:git-download capability detection not working for the bordeaux build farm" https://issues.guix.gnu.org/67250
<cbaines>it might be useful to find out if there are any build machines that don't support builtin:git-download, and if there are any builds that Cuirass thinks have failed, just because the relevant guix-daemon didn't support builtin:git-download
<freakingpenguin>Hi Guix! Can I create an (operating-system) without bootloader or file-system entires? I have a base-system OS I use for inheritance with other systems that won't ever be deployed on its own, but it seems like those fields are unavoidably required.
<cbaines>freakingpenguin, maybe just set the value to #f or the empty list, providing you use a proper value when you come to actually use the record value, I think that should work
<freakingpenguin>cbaines: Ah, I didn't think of explicitly setting to #f instead of just omitting it. Thanks!
<Geekz>Hi there. I am new to guix. I installed clang17 toolchain using guix install, but even the simplest programs won't compiler, because it can't find header files or even a linker. What am I doing wrong?
<Geekz>sorry, mistyped
<Geekz>Hi there. I am new to guix. I installed clang17 using guix install, but it can't find <print> header file for c++23. What am I doing wrong?
<Geekz>I tried the same compiler on windows and it works
<Geekz>but on guix, it  can't find <print>
<mwette>Geekz: i'm no expert, but if you installed clang-17 maybe you should install clang-toolchain-17
<Geekz>I did
<Geekz>mwette: I installed clang 17, clang-toolchain 17, clang-runtime, libcxx
<Geekz>idk what else to do
<apteryx>cbaines: hydra-guix-129 is back online
<mwette>Is it possible to build a guix image for riscv64 on x06_64 guix system? I'm running into odd error messages: e.g., now "gpt needs efi bootloader", but I think I have one in my image.scm file.
<rekado>apteryx: thanks for fixing it!
<cbaines>apteryx, awesome, thanks!
<rekado>cbaines: I’ll look into that issue a little later. Thanks for the pointer.
<rekado>what I see in the REPL: cuirass gives me a list of workers, but claims they haven’t been seen in ages
<rekado>(db-get-pending-build "x86_64-linux") takes almost 10 seconds, and it returns rust things from the mesa-updates branch.
<Jaeme>I'm looking at patch #68149 and it seems like the author uses vendored go packages in the repository, that's not allowed in Guix right?
<peanuts>"[PATCH] gnu: Add lazygit." https://issues.guix.gnu.org/68149
<Jaeme>You would want to have all these vendored packages replaced with ones by guix.
<Franciman>any plan to add pmount?
<apoorv569>Happy new year everyone!
<lechner>Happy new year (although not yet for me)
<lechner>What's a good way to file a patch for the GNU Shepherd, please?
<apoorv569>What are the home-files-service-type, home-xdg-configuration-files-service-type, home-activation-service-type and home-symlink-manager-service-type for?
<lechner>apoorv569 / https://guix.gnu.org/manual/devel/en/html_node/Essential-Home-Services.html
<peanuts>"Essential Home Services (GNU Guix Reference Manual)" https://guix.gnu.org/manual/devel/en/html_node/Essential-Home-Services.html
<apoorv569>So home-files-service-type take 2 args first one the destination location and second is the file it self (FILE) and copies it to `~/.guix-home/files/FILE` and symlinked to `~/.config/FILE`?
<lrustand>It symlinks it to `~/FILE`
<apoorv569>Oh! and the home-xdg-configuration-files-service-type symlinks to ~/.config/FILE then I guess.
<apoorv569>I see home-activation-service-type is ran on every guix home reconfigure, what can this be used for?
<apoorv569>and `home-symlink-manager-service-type` is what runs behind the scenes of home-files-service-type and home-xdg-configuration-files-service-type
<PotentialUser-54>I'm trying to build a guile project that uses the guile autoconf macros. I can build it on debian by installing guile-3.0-dev, but I was wondering how I might accomplish the same effect in guix. When I try compiling with `guix shell -D guile make m4 autoconf -- ./boostrap && ./configure && make` I end up getting errors telling me GUILE_PROGS and
<PotentialUser-54>GUILE_PKG in the configure.ac file are missing or undefined. So my question is "What package do I need to install to get guile.m4?"
<sarg>happy new year guix
<davidh38>@sarg happy new year
<davidh38>best year, I started having guix on my pc.
<tschilp>happy new year, guix!
<xisop>is it normal to get 'guix: shell: command not found'?
<xisop>i'm trying to run `guix shell --container --preserve='TERM' screen vim gcc coreutils
<xisop>`
<xisop>guix --version gives: guix (GNU Guix) 1.2.0
<xisop>I think guix pull must've failed when i ran it. running that now
<ulfvonbelow>what's the Right Thing To Do when packaging a python package whose only known means of running tests is through something called pdm, which is apparently "A modern Python package and dependency manager supporting the latest PEP standards"?
<ulfvonbelow>I get the feeling that if I try using that it's going to do something like insist on handling dependencies itself
<ulfvonbelow>the specific command it runs is 'pdm run coverage run -m pytest --durations=10'
<ulfvonbelow>but just trying 'pytest -vv' runs into errors about unrecognized arguments from the pyproject.cfg file
<Guest57>I just downloaded the latest iso and successfully installed guix inside vmware's openvm. but when I guix pull, i consistently get an error like 'build of /gnu/store/(lots of stuff-giux-packages-base).drv failed to build', then a bunch of 'cannot build derivation: /gnu/store... : 1 dependencies couldn't be built. final line says 'guix pull: error:
<Guest57>build of 'gnu/store/...-profile.drv' failed
<ulfvonbelow>er, pyproject.toml, that is
<Guest57>the builder fails due to 'signal 9 (killed)'
<Guest57>i don't understand why it's killing itself
<tsmish>Guest57: maybe it's an oomkill, check dmesg
<Guest57>does guix come with a builtin pastebin utility?
<tsmish>Guest57: don't think so, but OOM killer running should be pretty obvious, it does put a lot of lines to dmesg.
<Guest57>i have no dmesg in /var/log/
<Guest57>trying to find it
<tsmish>Guest57: just run "dmesg" and look for a line like "Out of memory: Killed process"
<tsmish>Guest57: can even grep for it, I think I got the line correctly (see https://serverfault.com/questions/1118560/explain-of-oom-killer-logs).
<Guest57>tsmish: out of memory apparently,
<Guest57>i assume that's ram not disk space?
<tsmish>Guest57: guix pull does eat ram like candy
<tsmish>Guest57: yeah, that's ram
<Guest57>ok time to close my browser then and see if that frees up enough, thanks. can i run a command to use less ram or soemthing?
<tsmish>Guest57: you should probably increase amount of ram given to VM.
<Guest57>facepalm, thanks forgot about that
<tsmish>ulfvonbelow: pyproject-build-system has something called pdm build-backend that according to docs should be autodetected. There are even packages in guix using it (https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/python-check.scm#n1768).
<peanuts>"python-check.scm\packages\gnu - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/python-check.scm#n1768
<tsmish>ulfvonbelow: Maybe try running coverage run -m pytest --durations=10, since looking at the docs of pdm, "pdm run" just runs the provided command in environment.
<tsmish>ulfvonbelow: Also, if I were you I'll search the internet for the pytest error messages, maybe you are missing some package like python-pytest-cov or on a wrong version of pytest.
<qrpnxz>feeling a bit frustrated trying to push a change into debian to offer the user to disallow non-free firmware. In guix this is already not a problem because it's 100% free, but development wise I wonder if guix makes those kinds of changes easier. In debian I found it is this whole rabbit hole, and you need to talk to these wizard maintainers if you want to have any clue. Moments like this I believe strongly what RMS said that there must be free
<qrpnxz>documentation. You can have all the source, and still have little clue, because it's like a dozen interdependent packages using some special sysadmin scripts.
<Guest57>I'm reading the guix info manual and finally did a successful guix pull. I was given a 'hint' to set path, then run hash guix. does the manual include more info on what it means to set path and how to do so correctly?
<tsmish>Guest57: if "type guix" shows /home/.../.config/guix/current/bin/guix, you are good.
<tsmish>Guest57: I thing Guix System adds it to PATH automatically, don't know where though, but you might need to relogin.
<Guest57>any tips on using eshell with guix? i really like EXWM, but already had an issue. 'type guix' and 'hash guix' both returned command not found, but when ran as shell command behaved as expected.
<Guest57>thanks for the help
<tsmish>Guest57: They are probably shell builtins (hash is for sure). There is also 'which guix', but it might not be available. guix just wants to have ~/.guix-profile/bin and ~/.config/guix/current/bin in $PATH (envvar) in order to have guix be updated on guix pull and installed packages being visible.
<tsmish>Guest57: You can just 'echo $PATH' and check if they are there. Also, there is at least two etc/profile files (in ~/.guix/profile and ~/.config/guix/current) you might need to source (if it is not done automatically by something else already), which could be problematic on non-bash compatible shell.
<Guest57>Yeah echo path is what i did when type failed, but i had a feeling it was eshell weirdness. it'd be great if i could use eshell without worrying about that. its' not unique to guix of course, but since guix is so emacs friendly i thought maybe there was something to help
<Guest57>source them? and do what?
<tsmish>Guest57: I'm not really all that knowledgeable about eshell, there could be people on this channel using it. Sourcing is just basically reading the file as commands, it is done in bash with 'source <file>' or '. <file>
<tsmish>Guest57: it reads environmental variables in the file into current shell, but since you are on Guix System I think something does it for you.
<iK0u>I saw this on the mailing list: https://lists.gnu.org/archive/html/guix-devel/2023-12/msg00178.html
<peanuts>"Re: guix installation why internet connection required?" https://lists.gnu.org/archive/html/guix-devel/2023-12/msg00178.html
<iK0u>Unfortunately, this does not work, as the installation fails at the last step
<iK0u>Is there any serious barriers to creating an offline installer iso that includes packages based on a pre-configuration?
<iK0u>A good use case would be you configure your system and would like to be able to quickly boot up a live installer version of it on other computers and have all your same settings
<qrpnxz>peanuts, that's great. For debian you can download 100% all the distribution, just have it in discs or a harddrive somewhere and install all the packages you want offline or for multiple computers in a local network. I suppose guix doesn't much have releases comparable to debian, however.
<peanuts>qrpnxz: Hi, for comments please contact my maintainers at https://codeberg.org/lechner/irc-helper-bot
<qrpnxz>or ig it was iK0u that linked it ha
<noobly>has anyone here successfully install vmware-open-vm-tools here in a virtual guix?
<qrpnxz>noobly, is that free software
<iK0u>qrpnxz Yeah, but that is not exactly the same use case I am thinking about, in this case it would include the packages based on the config when you build the installer iso
<iK0u>This way it would include a completely configured system, and only the packages you need for it
<qrpnxz>that's nice. Reminds me of slax linux.
<iK0u>guix can already do this with vms and such, but im unsure how to translate this to an install iso
<noobly>qrpnxz: the package is in the official repo so i was assuming so, or at least that discussing it's installation was permitted
<qrpnxz>then it probably is. Cool
<noobly>My issue occurs when running the vmware-install.pl script, I get a complaint about the script not being able to find my "ldd" program, which I had never heard about before. Sounds like it's a fairly common shell utility like cd, mkdir, etc?
<iK0u>noobly, when you run ldd, is the command available?
<noobly>nope, not found. not found when running guix install either
<noobly>ik0u^
<noobly>iK0u: ^^
<iK0u>noobly, running guix locate ldd seems to show the ldd binary inside the glibc store path
<iK0u>the command was available for me, not sure what package provided it, i am assuming it comes with glibc
<noobly>iK0u: "guix locate: error: file 'ldd' not found in database '/home/daws/.cache/guix/locate/db.sqlite'", this is from a fresh install and right after a guix pull too
<iK0u>noobly, what happens when you do guix install glibc?
<noobly>"guix package --list-available | grep ldd" also only returns "rust-lddtree" for me
<noobly>iK0u: it works as expected :-)
<noobly>thansk
<iK0u>wow im glad that fixed it
<noobly>me too!
<noobly>The vmware-open-vm-tools installer is asking me where my rc0.d - rc6.d directories are. Running 'find' for them reveals they aren't in the locations I'd expect from a normal distro and none of the results. Are these directories handled differently in guix?
<qrpnxz>bit nerve wracking to do the recommended "put it on a USB with dd" install method :^)
<Guest57>I guess I'm not familiar with what I should be doing. I've got Guix on a VM, and installed the vmware-open-vm-tools package. In VMware I select install vmware tools and mount /dev/sr0 to /mnt, and I see a bunch of vmware tool stuff. copy and unpack contents, then the issues begin when trying to run the installer.
<Guest57>Does Guix have a guide for this? I just want copying and pasting to work from host to guest (guix is guest VM for me)
<apoorv569>I have `(define-public rust-serde-1` package in my channel and `(gnu packages crates-io)` also has the same var and using this in `guix.scm` `(#:cargo-inputs (("rust-serde" ,rust-serde-1)`
<apoorv569>and it picks the one from `gnu packages crates-io`
<apoorv569>which is older version
<apoorv569>anyway I can force this to pick from my channel?
<lilyp>apoorv569: you'd need something akin to package-input-rewriting, but I'm not sure whether it works with cargo-inputs. In addition, I think that antioxidant-build-system is way overdue :)
<efraim>oooh new rust version
<apoorv569>lilyp: Yes, but both the package scheme variable name from gnu packages crates-io and my channel is same..
<meorly>beside developing a dsl to map a service configuration to a package specific configuration file, are there alternatives? or is a full implementation of the entire configuration format strongly preferred?
<lilyp>meorly: if there's so many things to configure that you can hardly keep up, we usually recommend adding an escape hatch for plain text
<meorly>but at least the most important elements of the configuration should be a dsl?
<meorly>tl;dr im trying to create a headless wayvnc setup and this requires the formalization of underlying sway setup, which currently has only packages, no service definitions
<meorly>sway configuration is manageable per se, the problem is that it is often a conversion of an existing i3 configuration, and as such exists already as a config file
<lilyp>not sure whether we have an i3 config either; you could define the most important keys and it'd probably get accepted
<lilyp>just keep the escape hatch for those who need more
<meorly>we don't, I checked
<meorly>i have a feeling that in order to implement this properly there needs to be way more scaffolding than just sway
<metsomedog>Hello. Is there some obvious way to patch guix packages locally (using guix home)? I have a file with an updated package description (later version, some more dependencies) and would like to use the package defined in this file over the one provided by guix proper. PS I am able to build the package using guix build.
<singpolyma>Not sure about guix home but you can guix install -L. Or -f
<metsomedog>I did manage to use something like 'guix home -L some-dir reconfigure .../my-conf.scm' in the past for another package, but trying this now I get some strange errors like "guix home: warning: failed to load '(mcclim)': no code for module (mcclim)" (the updated package is in file mcclim.scm). Probably I'm passing some wrong argument.
<singpolyma>Does your mmclim.scm define a module?
<metsomedog> https://paste.debian.net/1302661/
<peanuts>"debian Pastezone" https://paste.debian.net/1302661
<metsomedog>PS when doing guix build I added "sbcl-mcclim" in a single line at the end of the file
<dariqq>metsomedog: your module is called (private packages mcclim) instead of (mcclim). Also make sure your file is in the right subdirectory of some-dir you add to your loadpath with -L according to the module name (i.e in this case some-dir/private/packages/mcclim.scm)
<metsomedog>dariqq: Thanks the command is successful now
<dariqq>metsomedog: nice :). This means you can now also just do guix build -L some-dir sbcl-mcclim without adding the package name at the end of the file
<mwette>I have non-desktop guix system and using wayvnc.
<metsomedog>dariqq: I wonder, is there some way to e.g. setup a "channel" with local packages/"package redefinitions" and avoid having to enter '-L dir' on every update?
<mwette>wayvnc.scm: https://paste.debian.net/1302665/
<peanuts>"debian Pastezone" https://paste.debian.net/1302665
<dariqq>metsomedog: yes, you can add a local git repository as a channel. There is a section in the cookbook/manifest on exactly this somewhere but i cant find it right now
<metsomedog> https://guix.gnu.org/cookbook/en/html_node/Basic-setup-with-manifests.html I'm guessing this
<peanuts>"Basic setup with manifests (GNU Guix Cookbook)" https://guix.gnu.org/cookbook/en/html_node/Basic-setup-with-manifests.html
<mwette>wayvnc startup script: https://paste.debian.net/1302667/
<peanuts>"debian Pastezone" https://paste.debian.net/1302667
<mwette>You also need to have config file set up for headless.
<dariqq>metsomedog: Found it. This sounds more like what you want: https://guix.gnu.org/cookbook/en/html_node/Channels.html
<peanuts>"Channels (GNU Guix Cookbook)" https://guix.gnu.org/cookbook/en/html_node/Channels.html
<metsomedog>Thanks I will try this approach
<Franciman>i'm using (local-file ..) to copy a file in the store, but i'd like to make it an executable
<Franciman>so i think i must use computed-file, but how can i copy a local file then?
<rekado>lilyp: do you have a manifest that I can use to manually build the gnome-team branch?
<rekado>maybe that would help to get it moving along while the build farm is not working right
<rekado>(I think we may want to drop the cuirass database)