<jackhill>Why are things like "serialize-comma-separated-integer-list/unset" only defined in gnu/services/kerberos.scm ? It seems like they'd be generally useful for other services as well.
<nckx>No Big Reason, just that they currently are. And, I suspect, because writing an ad hoc helper for your pet service is a lot less intimidating than a big scary generic library procedure for the ages.
<jackhill>nckx: hehe, or course on the other side, using a generic library would be less itimidating than writing an ad-hoc helper :)
*nckx with cleaner teeth: well, Scheme also has less of an aggressive factorisation culture (fetish?) than most other languanges. Often, just doing the thing is fine, you don't have to (use-module the-thing) (do the-thing). And this is purely subjective opinion, but serialize-comma-separated-integer-list/unset falls squarely into that category for me. But ¯\_(ツ)_/¯ I'm a sleepy boy who's going to sleep.
<jackhill>nckx: thanks. I'm just trying to feel my way around. Dream sweet!
*vagrantc enjoyed the kernel, pit & stone discussion
<apteryx>hello! I'm trying to get a bit cozy with nix in order to be able to easily inspect their packages output and compare with their recipe, to aid with packaging in Guix; is anyone else using nix on top of Guix System? I reconfigured with the nix-service-type, and got it working, but searching for packages returns nothing
<ison1>apteryx: have you tried doing whatever the nix equivalent is of "guix pull"?
<apteryx>it seems I missed the last two commands suggested under the 'Nix service' doc in our manual
<lasnesne>Dovecot and postfix, duplicity are already on guix. Especially dovecot works out of box and i'm using it on my mail server without problem. Other softwares such as spamassassin and roundcube aren't on the list. But it won't be that hard to pack.
<BitPuffin><leoprikler "Yeah, there might be some work t"> A potential pointer on the freedom stuff is that fdroid mozc says it has nonfree assets
<awb99>@lasnesne: do you have a config that you could share?
<flomaysta[m]>I have a question on Channels and package Versions: essentially by running guix update it will get the latest version of all packages. So I will get Bugfixes / Security fixes that way. It seems to imply that a package really should always be backward compatible. So if say a new verision of a package would have non backward compatible code .. then it would need to have a different package name - example python2 and
<flomaysta[m]>My question now is if one package that I use is for whatever reason broken on a new version in the channel. What would I do to use a prior version of that package, but use the current version of all other packages?
<flomaysta[m]>If I understand it correctly then security updates / regular patches are being used by fuix update && guix pull. It guess if there is one bad package .. then all the channel could no longer be used... Until the bad package is fixed.
<Ikosit>flomaysta: you can use --do-not-upgrade with guix upgrade to exclude a package from being updated
<cage_>ook seems i need guile-3.0-dev package from ubuntu repository
<snybajl[m]>I'm working on a guix vm image, and although it's working really well so far I'm having a disk-space problem. I would just run `guix gc`, but then guix would have to re-download (and sometimes build) all the packages that my vm requires. I'm looking for a way to either A: Remove a specific /gnu/store/* build, or B: Set my system.scm definition as a gc root, or C: Make `guix system` and `guix vm` output to somewhere other
<snybajl[m]>than `/gnu/store`. Another solution is to just `guix install *` every package that the `system.scm` definition needs but I was hoping there was a better way to do this.
<g_bor[m]>cbaines_: I have seen an idea on the outreachy ideas page.
<g_bor[m]>Do you need any help in filling out the proposal on the outreachy site?
<PotentialUser-22>I need to make the latest gnupg the default gnupg on my non-guix host. This would mean hiding the one that is already installed there by ubuntu, and which I cannot uninstall because a few other packages depend on it. Can anyone recommend the best way to go about doing this? It's an ubuntu based system. The steps I have so far are: 1. sudo su; 2.
<PotentialUser-22>guix install gnupg@2; 3. ?? (a. do some magic with update-alternatives? b.override /user/bin/gpg? with what (the path of the guix gnupg changes all the time)?
<jeko>snybajl[m]: yep the vm seems to have just enough free space to boot haha. i was wondering if adding a big union-file in the configuration file could solve the issue (deleting the file when logged into the vm) ?
<snybajl[m]>@jeka Oh, yeah, that too. But I was referring to the disk-space on the host that builds the image.
<snybajl[m]>It doesn't take that many edit-build cycles on the `system.scm` file before I need to do `guix gc`, and then the next build is going to go much slower because it has to download/build dependencies that were removed by `guix gc`.
<GNUtoo>hi, is there a way to skip generating the hash or generate a hash automatically for a given package?
<roptat>it's not very nice to read, because I wanted to remove pregenerated .depend (they're part of the Makefile, generated by ocamldep or gcc) ; the recipes would be a lot nicer if we kept them, what do you think?
<cbaines_>g_bor[m], I think I've managed to create an initial proposal in the Outreachy system now
<joshuaBPMan>Hey guix! I am working on an endlessh service. It works! It's containerized. the only problem is it currently runs as the root user. This is probably NOT a huge issue, but I'd rather it run as the "endlessh" user. How do I give the endlessh user permission to open port ssh?
<thorwil>hi lfam! remember my case of corrupted store items? i was thrown into an initramfs shell and had to use fsck again today. just like last time, all corrupted files have been store items. different was that fsck offered repairing, not moving to lost+found.
<mdevos>thorwil: what are you doing leading to so many fsck? The only times that happens to me is if I force-shutdown the system (press power button N seconds, remove power cable, ...)
<thorwil>mdevos: i think being confronted with read-only system partition and initramfs shell appened twice, *maybe* thrice in my whole live. 2 times within the not quite 2 months this computer is old!
<thorwil>I think both cases happened after normal poweroff, though I found the system unresponsive a few times after a break, where I ad to use hold-power-button to shutdown (reset button doesn’t work)
<thorwil>now i would asume that fs-level corruption is too low-level for guix to have to do with it, but 2 times only store items affected doesn’t look like random chance, does it?
<mdevos>thorwil: if the system is unresponsive after a break, try jiggling the mouse around, selecting random windows etc.. At least on my system (hard drive & not the newest), Guix System is occassionally I/O bound, so it can take sometimes to swap memory back from disk
<mdevos>(I don't have a swap device, but the kernel can swap read-only mmapped files)
<thorwil>mdevos: heh, i always jiggle the mouse and then check if the Num LED still toggles ...
<mdevos>thorwil: perhaps guix-daemon doesn't perform fsync or syncfs in the right places?
<mdevos>maybe manually run "sync" after upgrades and see if this happens again?
<mdevos>this is untested terrain in Guix I think ... This isn't really helped with the absence of primitives to flush whole directory trees (correct me if I'm wrong)
<thorwil>makes sense. though it’s a nasty kind of test, as how long until one would consider that manual sync fixes it ... all the while having a high risk of forgetting it now and then
<mdevos>thorwil: guix has some tests (in gnu/tests/*.scm) that start a VM and test stuff in there,
<mdevos>maybe someone will write some tests in there. There's a CI somewhere that automatically performs these tests
<thorwil>meanwhile, i’m still trying to get rid of: WARNING: loading compiled file /gnu/store/8bsnz1fk330qbn1p8k18i0j11vld4jxd-guix-module-union/lib/guile/3.0/site-ccache/guix/build-system/gnu.go failed: In procedure load-thunk-from-memory: not an ELF file
<thorwil>`sudo guix build --repair /gnu/store/6l0h46s6b3948k6h3v532vzpccbx9vhc-guix-module-union` did not do the trick
<thorwil>search on the web just showed me that this kind of error message cam up with an earlier guile version transition
<mdevos>joshuaBPMan: this is ordinarily not possible. But perhaps you can figure something out with port forwarding?
<mdevos>Supporting this properly would require binding the socket in shepherd and passing it to the service I think, which is currently unsupported ...
<mdevos>Alternatively, patch the kernel to allow the "endlessh" user to open a socket for port 22.
<mdevos>Or, when on the Hurd, write a translator (with root persona) in between the ‘real’ IPv4/IPv6 translator and the endlessh server, that allows the "endlessh" user to bind to port 22.
<mdevos>(Implementing such a translator is something on my TODO list actually, if it hasn't been implemented already.)
<dongcarl>sneek: later tell zimoun Thanks for following up in the "Extending package transformation options" thread, I'm not familiar enough with Guix internals to comment but I'm reading every email and learning a lot! :-)
<cage_>because guix can be installed with apt, i believed i could compile guix on that system
<mdevos>cage_: should be possible, just make sure you have installed the right version of guile. I believe Debian has a tool for installing the build dependency of a package, but I do not recall the details.
<smartineng>Hello what is the best way to sandbox icecat/chromium in guix? Is it possible to run it in environment --pure ?
<dftxbs3e>smartineng, you can try something like: guix environment --no-cwd --container --network -E DISPLAY --pure --ad-hoc icecat font-gnu-freefot -- icecat
<dftxbs3e>it wont work because it can't connect to X but I'll let you figure the rest out\
<smartineng>@dftxbs3e guix environment: error: mount: mount "/gnu/store/mmhimfwmmidf09jw1plw3aw1g1zn2nkh-bash-static-5.0.16" on "/tmp/guix-directory.SieDz6//gnu/store/mmhimfwmmidf09jw1plw3aw1g1zn2nkh-bash-static-5.0.16": Operation not permitted
<dftxbs3e>smartineng, I don't get that on GNU Guix System but I can't help more, never done it before, so figure it out and share your findings, it's interesting, also you could try bwrap
<mdevos>cage_: it seems we have found the problem! Could you write a bug report?