IRC channel logs

2022-10-13.log

back to list of logs

<florhizome[m]>nckhexen:... (full message at <https://libera.ems.host/_matrix/media/r0/download/libera.chat/128084aeb585632f7495589bc426374ffcd03de4>)
<florhizome[m]>but well, ok.
<unmatched-paren>florhizome[m]: Also we really need to split up crates-io.scm...
<nckhexen>Sounds good (Wayland doesn't have WMs, but that aside). Agreed.
<florhizome[m]>wayland–compositors
<florhizome[m]>i have some spare
<florhizome[m]>idk if wayland/x desktop stuff should be split.
<florhizome[m]>i can post it to guix–devel tmrw
<unmatched-paren>Crates-io is literally tens of thousands of lines long. It makes emacs pretty slow :)
<florhizome[m]>unmatched-paren: well I think that’s a whole another issue :D
<florhizome[m]>there are tons of crates that are in there for windows and Mac compatibility which we should be able to scrap with antioxidant right?
<florhizome[m]>How is that going, btw?
<unmatched-paren>florhizome[m]: Yeah, as an example of this insanity, look at ``rust-windows''; there's one crate for every arch/toolchain combination it supports.
<unmatched-paren>rust-windows-{x86-64,i686,aarch64}-{msvc,gnu}
<nckhexen>I didn't know Windows (still) supported aarch64.
<podiki[m]>I believe some of those are for cbindgen, needed for icecat/firefox
<rekado_>I wrote a little container tutorial for the cookbook: https://issues.guix.gnu.org/58477
<rekado_>comments are very welcome!
<jab>rekado_: I'll read it now. I have no idea how to use containers on guix. It would be cool to learn!
<nckhexen>rekado_: Riveting.
<nckhexen>It is downright depressing that this is your second language.
<jab>rekado_: yeah I'm not super far into, and I must say...you are a great communicator.
<nckhexen>Few random thoughts, not all necessarily requiring action: ‘a role ``test''’ → ‘a``test'' role’ IMO, but then I never liked ‘the user "foo"’ either. — Can you use @var{} inside @option{}? Should you? I don't know. — ‘or with sudo’: I get what you mean, but it still made me pause; to me ‘for example with’ or ‘here we use sudo’ make more sense. — Is ‘a PostgreSQL’ the term? — It ends a bit abruptly, not that I know what shou
<nckhexen>ld follow.
<jab>does 'guix shell --container --share=~/' create a container with my home directory readable & writeable?
<nckhexen>(Unless the first is a subtle form of protest at the ‘kernel Linux’ newspeak, but I doubt it. :)
*nckhexen enjoyed that muchly. Thank you.
<nckhexen>‘the new net namespace "guix-test"’ — OK, I guess it was deliberate.
<podiki[m]>rekado_: look forward to reading it! Maybe I'll make some suggestions on tips for the fhs option, to be ready once that is merged (some tips on what to share or use as packages for things to work well)
<nckhexen>Hi there stranger.
<nckhexen>That was quick.
<jab>does anyone here use their pinephone as a convergent device? I've heard that SXMO works with it.
<jab>works with making it convergent.
<jab>I'
<jab>have tried via the regular pinephone on phosh, and it is not the best experience.
<Kabouik>I admit my Pinephne rarely sees the light out of my drawer (yet I like it, I just prefer my Pro1). I don't think sxmo supported convergence the last time I used turned it on. I've been busy with another weird device since a few weeks and have not done much with any of my phones lately though, the 8" laptop onto which I installed Guix (daily driving it since early September).
<jab>Kabouik: The Pinephone is actually my daily driver. :) I use it as a really dumb phone, but it works!
<jackhill>jab: do you have Guix on your pinephone?
<Kabouik>I could daily drive mine as well to be honest, I'm quite tolerant to alpha things, but nothing could really replace my qwerty-slider Pro1 with i3-gaps in a container! Well, Guix on that tiny laptop drew my attention lately and I spend less time playing with the Linux phone, but I'll get back to it
<Kabouik>(I have Guix package manager in a Debian container in Sailfish on mine)
<jab>jackhill: I currently do not.
<jab>I suppose that I should install guix on it, and see what happens...
<jackhill>jab: ah, me neither. I really should work on that. I think I'd be much more likely to hack on it with Guix.
<Kabouik>The small RAM of the Pinephone could be an issue, but it's worth a try
<Kabouik>jackhill: do you mean Guix system, or Guix package manager? Guix system would be really nice but that sounds like a lot of work (?).
<jackhill>an offload or substitute server would definitely make it more practical
<jab>Kabouik: I personally would only install guix on top of postmarket OS on my pinephone.
<jab>I don't think guix has phosh packaged.
<Kabouik>Mine runs pmOS too
<jackhill>Kabouik: I'd like Guix system as then it would match my other devices, and I could `guix deploy to it, etc. I do have guix package manager with postmarket currently.
<jab>jackhill: how does guix fair as a package manager on postmarketOS?
<jab>what packages does guix have installed?
<jab>on your phone?
<jackhill>I don't have it in front of me, and I don't remember what I had installed with it. I'd like to get Dino working, but when I first installed Guix Dino didn't build on aarch64. I think it does now, but I'm not daily driving it really. I mostly use it as a hotspot.
<Kabouik>I don't really like Phosh (though it has many merits). I have a spare Pro1 with Droidian/Phosh on it, and while Droidian is great, I find the Phosh UI frustrating. I vastly prefer Silica (Sailfish), or sxmo or any other tiling WM (since the Pro1 has a keyboard, that'd work great, I use i3 already in the Debian container). But sadly there's no usable pmOS port for that phone (it boots and starts the WM, but then is unusable). On the Pinephone I have
<Kabouik>pmOS/sxmo, but I don't like its keyboard, which makes sxmo a bit less enjoyable.
<jackhill>interesting. I bounce back between GNOME and sway on the desktop
<jab>I want to give sxmo a try...but I would prefer to be able to choose at boot (or runtime of the OS) start sxmo
<jab>now switch to phosh
<jab>jackhill: sway is just less resource intensive. I could probably run it... I've got an 8GB laptop, but sway is just sooo stable!
<jab>rekado: I liked your cookbook article.
<jab>I didn't even realize that you could define an <operating-system> and run it in a container.
<Kabouik>I had some kind of hack to do that in the Droidian device: boots with Phosh, but I could start Sway on it on another Wayland display, which would show as a new window in Phosh actually. That worked kind of okay, except the Sway window would inherit the global GDK scaling set in Phosh. That would be okay if the scaling was 1, but it can't be 1 or Phosh is unusable; and as a result the Sway window/desktop could not use the native screen resolution.
<jab>but why wouldn't you just run the the datebase in a container
<jab>via make-forkexec-constructor/container
<jab>as described here: https://guix.gnu.org/en/blog/2017/running-system-services-in-containers/
*jackhill noticed that `guix weather` grew the ability to print a little sun or cloud. very cute!
<jab>Kabouik: the only problem with that is that you are running phosh and sxmo at the same time right?
<jab>resource intensive.
<jab>jackhill: I have not yet figured out how to use guix weather...
<jackhill>jab: I guess it depends on what you're trying to do. I usually pass it one package name I'm interested in, or my manifest with the --display-missing option.
<Kabouik>Phosh and Sway jab, yes. To me that's not the main problem, the scaling/resolution in the Sway window is. Of course this draws more power, but the Pro1 can handle that easily without hiccups (battery life would probably suffer from it, but Droidian isn't optimized for battery life yet anyway). The benefit is you can multitask from a touch to a keyboard UI on the go, no need to reboot. And you can close the Sway window if need be too.
<jab>jackhill: thanks for the tip
<Kabouik>s/UI/WM
<jab>Kabouik: My only problem that I bet I would bump into at some point would be memory issues...
<Kabouik>On the Pinephone, I am afraid so yes
<Kabouik>I am not sure if this would easily work under pmOS anyway, I only did that in Droidian and don't remember which packages I needed
<jab>kk
<Kabouik>That device has not been started in months
<jab>I actually used my pinephine to dial into a free software talk the other night, then played the audio into headphones at work.
<jab>that was a great way to spend 2 hours!
<xd1le>jab, how's the battery life on it?
<jab>cdegroot: let's see. I had it on full charge at 2 yesterday.
<jab>2pm.
<jab>I got on the call at 6pm and got off at 8pm.
<jab>went to bed at 10pm and the phone had a 50% charge.
<jab>so battery life is not really that great...?
<xd1le>yeah I guess lol
<xd1le>thanks
<helaoban>is the guile repl spawned by the `guix repl` command supposed to give access to the guile modules provide by a guix channel (e.g a custom channel specified in /etc/guix/channels.scm)?
<dgcampea>can NFS mounts be used in 'file-system'
<dgcampea>?
<dgcampea>I get guix system: warning: exception caught while executing 'start' on service 'file-system-/media/NAS-media/M2':
<dgcampea>In procedure mount: mount "[fd52:fed5:a394::1]:/mnt/atlas/media-store/M2" on "///media/NAS-media/M2": Invalid argument
*jackhill wonders how the postgres service handles postgres version upgrades
<helaoban>so let's say I have a channel "foo" which provides module "bar", is "bar" supposed to be added to the load path when I run `guix repl`?
<dgcampea>and no more clues to what went wrong
<helaoban>and then be able to import the module with (use-modules (bar))?
<helaoban>if not where are the channel modules compiled to so I can add them to the load path?
***jonsger1 is now known as jonsger
*f3n1x got guix working on a Netcup.eu server (vps) after .ISO image uploading
<podiki[m]><nckhexen> "Hi there stranger." <- (a long delayed) hi back! yes, was just my last class of the day
***jacobk_ is now known as jacobk
<roptat>helaoban, it's supposed to be available in guix repl
<roptat>hi guix :)
<xd1le>o/
***money is now known as polo
***newluhux[m] is now known as mabaoguo[m]
*brendyn believes the opposite of install is uninstall... :c
<brendyn>meanwhile in rustland... warning: variable `A` should have a snake case name
***Dynom_ is now known as Guest933
<unmatched-paren>Oh, nice, fhs-shell just got merged.
<Lumine>Good morning #guix !
<unmatched-paren>Morning Lumine!
<Lumine>15 hours of sleep sets up a great day :)
<xd1le>o/
<unmatched-paren>xd1le: Hi!
<brendyn>wow if fhs is what i think it is thats amazing
<unmatched-paren>brendyn: Try this: ``guix shell --emulate-fhs --container coreutils -- ls /bin''
<unmatched-paren>After pulling, of course.
<unmatched-paren>It's really cool ;)
<brendyn>that doesnt test much
<brendyn>does it run typical binaries one can download for linux?
<unmatched-paren>I think that was a motivation, yes.
<brendyn>that would have helped HP-UX yesterday
<unmatched-paren>I'm not sure HP-UX could be helped, but okay.
<brendyn>im refering to a person in irc called that
<unmatched-paren>I know.
<civodul>"HP-UX" makes an interesting nickname :-)
<unmatched-paren>civodul: Yes, then they changed their nick to "Linux" before starting a rant about how software freedom is only freedom if you have programming skills and therefore it is pointless. Did you not see that? :)
<civodul>unmatched-paren: i didn't, and i'm glad i didn't :-)
<unmatched-paren>civodul: And then they mentioned "the IQ of the average person" and we all groaned...
<civodul>heh
<Lumine>Now i regret sleeping in
<unmatched-paren>The fun started here: https://logs.guix.gnu.org/guix/2022-10-12.log#203037 :)
<Lumine>Oh my
<Lumine>I agree his premise was faulty, the whole thing is just a lot of hot air
<unmatched-paren>Lumine: Then the guy starts pulling out the "omg teh cenzorshipz" card.
<Lumine>Yeah
<Lumine>The IQ resort is always a sign that they've moved away from the argument
<nckx`>Congrats on getting --emulate-fhs merged.
<Lumine>I mean, if the argument was actually that having freedom means having the necessary skills
<Lumine>But it started to move to ad hominems quickly, so, tough noogies for them. :)
<brendyn>who is litharge
<brendyn>irc op but not a commiter?
<unmatched-paren>brendyn: litharge is a bot
<brendyn>ok
<kenran>Ah, I regret opening that link
<iska>hmm. I bumped btrfs-progs locally to 6.0, but it still doesn't have --compressed-data
<iska>is the guix version full? (besides the python stuff)
<unmatched-paren>iska: Which program in there is supposed to provide it?
<iska>unmatched-paren btrfs send
<florhizome[m]>Currently trying to build guix from git and failing because qt–build–system is an unbound variable
<iska>ohhh, apparently it does have it
<iska>just something weird with su in eshell
<florhizome[m]>the checkout is from yesterday evening
<unmatched-paren>florhizome[m]: It works for me after pulling just now
<iska>ERROR: send ioctl failed with -22: Invalid argument
***wielaard is now known as mjw
<mroh>florhizome: perhaps, recompile everything with "make clean-go".
<florhizome[m]>I have already
<nckhexen>I support commit rights for litharge.
<nckhexen>iska: Anything in dmesg?
<iska>nckhexen my kernel just doesn't support it
<nckhexen>s/g/g useful/
<nckhexen>Ah.
<iska>bummer but it only means that I'll have to recompress files
<nashdidan[m]>I'm running into couple of issues while adding a package against the source tree, which I was able to compile and install on my working system. It's a standalone rust mail client which I'm trying to add to mail.scm. First error I see it "error: spdx-string->license: unbound variable" I'm not sure If I'm suppose to update the module declerations in mail.scm, or my package definition (created using guix import).... one of the libaries this app
<nashdidan[m]>needs is "rust-ammonia" which I added to creates-io.scm. It has this declared: "(license (spdx-string->license "MIT OR Apache-2.0"))" ....
<nckhexen>Is that something Guix needs to add to .config iska? I'm a bit out of the btrfs loop.
<iska>nckhexen I think guix needs to add certain features to linux
<nckhexen>But they are in mainline?
<iska>yep
<iska>just not enabled
<nckhexen>Oki.
<iska>(at least on my 5.19.11)
<nckhexen>I'll take lookings.
<nashdidan[m]>Similiar issues with "(beautify-description "Rust macro to automatically generate conversions for newtype enums.")" where it's used in many dependent libaraies... do I need to update the modules declaring this libs, or modify the declerations generated by guix import?
<nckhexen>nashdidan[m]: I'm not sure I follow. ‘guix import’ created a package that calls spdx-string->license?
<nckhexen>If so, which import command was that?
<nckhexen>The same goes for beautify-description. Or I don't understand what you're saying; also possible.
<unmatched-paren>nashdidan[m]: I'd think spdx-string->license would be called by the importer itself, not the resultant package.
<nckhexen>Yes.
<nckhexen>And it seems to work fine (‘guix import crate abomination’ is fun to type).
<unmatched-paren>Either way, replace that with (license (list license:expat license:asl2.0))
<nckhexen>So I think I don't understand the question.
<nckhexen>If the importer does emit (license (spdx-string->license "MIT OR Apache-2.0")), that's a bug.
<xd1le>yeah linux was an entertaining read xD. I bet the concepts of peer reviewed scientific literature and reproducible science would blow their mind. I guess in their mind science is only useful to the experts.
<xd1le>I wish I was there for that conversation lol, but vagrantc basically said what I'm saying.
<nckhexen>It turned out to be an old known troll, using a new nick.
<nckhexen>I checked with Linus and it was not actually Linux.
<xd1le>#gnu occasionally gets these people who have these weird justifications that attempt to flip it so that free software community are actually "the baddies", over the years I've come to the conclusion that any newcomers that come with these aggressive tone are probably just financially motivated
<xd1le>yeah sorry I meant that person who named themselves Linux xD
<nckhexen>I attempted a jokes.
<xd1le>haha I know, just clarifying anyway
<nckhexen>#gnu is, sorry, an absolute cesspool. It's a case study in why you need moderation.
<xd1le>Yeah I've learnt to not let the inaccuracies people say in there get to me I guess.
<unmatched-paren>xd1le: I wonder why they think they'll be able to convert people in *#gnu* of all places.
<Lumine>A combination of arrogance and booze, my guess
<xd1le>yeah I know right
<nckhexen>#gnu seems to attract folks with this particular opinion (that is fine; not what I meant needed moderation).
<nckhexen>Lumine: droogs.
<flatwhatson>maybe just looking for an argument, not to actually convince anyone
<Lumine>Lots of droogs
<unmatched-paren>Alcohol is technically a droog though.
<nckhexen>Their old nick was literally <name of drug>, and it wain't alcohol.
<nckhexen>Anyway.
<unmatched-paren>I suppose in a metaphorical way, so is arrogance.
<nckhexen>Whee.
<nckhexen>Hello Matrix my old friend.
<Lumine>Oh man
<nckhexen>unmatched-paren: Nice.
<flatwhatson>jacked out
<xd1le>yeah it's not the opinion, the attitude I mean. There are those that ask questions for clarification and disagree, but that's it, which is fine.
<xd1le>oh we had a split?
<Lumine>A massive splat
<nckhexen>Well, the Matrix bridge crashed, which is different, but just as hard to clean off the pavement.
<xd1le>ah I see
<nckhexen>Well, maybe that was their idea of a graceful shutdown, not a crash. I dunno.
<Sariboo>nckhexen: ime, not much difference between a landing and a crash with the matrix bridge
<nckhexen>iska: Maybe I'm confused (it's been documented to happen), but are you sure this should work on 5.19? Surely we need 353767e4aaeb7bc818273dfacbb01dd36a9db47a, which is from ‘for-5.20’ (which of course never happened).
<nckhexen>That's not just a config change; it needs to be updated to 6.0.
<nckhexen>Sariboo: Tru.
<nckhexen>iska: If you've seen it work on a 5.x, either I misread the git merge history or it was a patched/backported distro kernel.
<iska>nckhexen I was going from the manpage https://btrfs.readthedocs.io/en/latest/btrfs-send.html
<iska>it says 5.18 is needed
<nckhexen>Oh. Yes, that is in 5.19.
<nckhexen>iska: Still, having 353767e4aaeb7bc818273dfacbb01dd36a9db47a looks very much like a hard requirement, or it's the worst commit message ever.
<iska>nckhexen probably the latter
<nckhexen>So ‘send protocol updated to 2: new commands: send raw compressed extents (uses the encoded data ioctls), ie. no decompression on send side, no compression needed on receive side if supported’ is wrong? OK. 🤷
<unmatched-paren>can someone look at 58454? it's a fix for a fatal bug that passed under the radar in my home-dbus-service-type
<unmatched-paren>Fatal, as in it stops the service working.
<iska>btrfs 5.19 came out in august
<nckhexen>Well, it came out whenever Linux 5.19 came out, so sure 😛
<iska>maybe I needed to use 5.19 progs for the 5.19 kernel but I'm just guessing lol
<nckhexen>Updating to Linux 6.0: ‘The option […] should not be enabled just for fun.’
*nckhexen feels seen 👀
<nckhexen>iska: I really don't think so. Unless you have counterevidence (like a working 5.x kernel), this is a 6.0 feature. The man page does not say otherwise—although it shouldn't mention 5.18 at all, that's a pointless factoid bound to confuse people into thinking 5.18 supports this feature, which it doesn't.
<nckhexen>The ioctl was added then. Not the v2 protocol. What you want is the latter.
<iska>nckhexen v2 protocol ioctl, why does the manpage say something is supported when it's not?
<nckhexen>It doesn't. But as I said, I can understand the confusion.
<iska>(that option was there since before 6.0 came out)
<linj>Is there a plan to support secure boot with users' own key?
<nckhexen>The v2 protocol, from 6.0, uses the blah ioctl, which was added in 5.18.
<nckhexen>iska: Which option?
<nckhexen>--compressed-data?
<iska>nckhexen compressed data relies on v2 protocol
<nckhexen>Yes.
<nckhexen>linj: No plan. But it would be a welcome feature.
<iska>nckhexen and they both came out in btrfs 5.19
<iska>why would the manpage update to use features that don't even exist yet
<jeandudey>Hello! Kind of a dumb question, but is it possible to use the staging branch on my guix system somehow?
<nckhexen>iska: <they both came out in btrfs 5.19> is not true: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/fs/btrfs/send.h?h=v5.19#n13
<nckhexen>I don't see how the man page is relevant.
<iska>nckhexen the changelog said it did
<iska>>I don't see how the man page is relevant.
<nckhexen>Which changelog?
<iska>imagine telling someone to use a nonexistent feature
<nckhexen>You're saying that like it's unthinkable :)
<iska> https://btrfs.readthedocs.io/en/latest/CHANGES.html#btrfs-progs-5-19-2022-08-16
<unmatched-paren>jeandudey: Yes.
<nckhexen>jeandudey: You can ‘guix pull --branch=staging’.
<jeandudey>thanks!
<nckhexen>iska: You are confusing btrfs-progs and btrfs (Linux).
<nckhexen>I am talking about Linux.
<nckhexen>Guix is on 5.19 so it doesn't matter which btrfs-progs you have, it won't work (yet).
<iska>btrfs-progs documentation says that v2 needs linux 5.18
<nckhexen>It clearly does not. I've hinted at that twice now.
<iska>then why does it say so in the manual
<nckhexen>This is going in circles. TL;DR: you need Linux 6.0 to do what you want. The functionality was not merged until after 5.19. This is clear from the git history and not contradicted in the man page.
<nckhexen>nckhexen> The v2 protocol, from 6.0, uses the blah ioctl, which was added in 5.18.
<nckhexen>So this is settled, and we can move on.
<iska>nckhexen it uses ioc_encoded_write, not blah
<nckhexen>Not funny.
<iska>I didn't try to joke
<nckhexen>I put quite a bit of work into researching this. It's not pleasant to see it dismissed just because the unclear man page confused you.
<nckhexen>Complain about that in #btrfs if you will.
<iska>nckhexen ioc_encoded_write was added in march
<nckhexen>It doesn't matter.
<iska>it does
<nckhexen>No. I give up. Have fun trying to enable a feature that is literally missing from 5.19 on 5.19. I'm sure it will go well.
<nckhexen>(Kernel versions, I only care about kernels, kernels are the best.)
<iska> https://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git/commit/?id=d6815592806f481244d0e3435ca1f5383d90a14c
<iska>that's before 5.19...
<iska>whatever
<nckhexen>They are going to waste so much time on this…
<nckhexen>sneek: later tell iska: Before you waste time on this, please do me one favour: run ‘guix build --source linux-libre@5.19’, extract the tarball, then look at fs/btrfs/send.h. Then compare it to the commit you posted (d68155).
<sneek>Got it.
<efraim>sneek: botsnack
<sneek>:)
***MysteriousSilver is now known as vetrivln
<nckhexen>Speaking of btrs
<nckhexen>*fs: does anyone still chattr +C on their (Guix) db or is that old-fashioned advice?
<linj>interesting, is there any benchmark on this
<nckhexen>sneek: later ask lfam: Any opinion on Documentation/trace/rv/runtime-verification.rst? I'm a bit… overwhelmed.
<sneek>Okay.
<nckhexen>sneek: botsnack before efraim bribes you again.
<sneek>:)
<nckhexen>linj: Specifically for Guix, I don't know. For sqlite: probably, but I'd assume it depends more on actual usage patterns. I just noticed my (rotational HDD, btrfs) build server's slow on I/O, but I didn't investigate yet.
<iska>--emulate-fhs seems unstable
<sneek>Welcome back iska, you have 1 message!
<sneek>iska, nckhexen says: Before you waste time on this, please do me one favour: run ‘guix build --source linux-libre@5.19’, extract the tarball, then look at fs/btrfs/send.h. Then compare it to the commit you posted (d68155).
<iska>after a few runs it always returns this error
<iska>guix shell: error: '--profile' cannot be used with package options
<iska>seems to get progressively more broken each run
<unmatched-paren>sneek: later tell iska: Hmm, yes, I can reproduce this...
<sneek>Will do.
<unmatched-paren>sneek: botsnack :)
<sneek>:)
<Sariboo>sneek: help
<nckhexen>Try that in PM.
<Sariboo>nckhexen: the bot replied in PM
<nckhexen>Oh, I didn't know that.
<unmatched-paren>k
<unmatched-paren>oops
*civodul found a but in --emulate-fhs interaction with caches
<civodul>iska: maybe that's what you noticed?
***Server sets mode: +Ccntz
<podiki[m]>civodul: thanks for the push and the fix! admittedly I did not try with profiles directly (glibc-for-fhs as a package is inserted into the package arguments to get it in the container)
<civodul>podiki[m]: hey, thank *you*!
<civodul>i'm glad we pushed it past the finish line :-)
<podiki[m]>me too! no more pre-inst-env guix shell for me :)
<podiki[m]>changes look good to me btw (didn't know about the @file{} in texi), simpler setup-hook looks good (can worry about extending more generally if the need arises)
<moggikorken[m]>Hi.... (full message at <https://libera.ems.host/_matrix/media/r0/download/libera.chat/098d62cd81f20c952407bfc161a57729ff4c00f1>)
<moggikorken[m]>I forgot to mention also that the make file here calls a build script tool, that might also have something to do with it.
*nckhexen building.
<nckhexen>moggikorken[m]: https://paste.debian.net/plainh/3d823a9d I stopped at adding ncurses.
<nckhexen>Some packages don't use autotools (= don't have a configure script), just a plain Makefile. So we delete the 'configure phase.
<nckhexen>I also added CC so it doesn't try (and fail) to run ‘cc’ and nudged you towards using gexps ☺
<jonsger[m]>podiki those "formaters" in texi are nice, especially they get transformed on the website to HTML/CSS, e.g. @dfn{} becomes cursive...
<podiki[m]>yeah, good to know for when I prepare the peroxide service docs
<podiki[m]>for anyone else learning like me, see https://www.gnu.org/software/texinfo/manual/texinfo/html_node/Indicating.html
<Andronikos>Is it possible to buy a printed manual like Emacs?
<podiki[m]>of guix? I know someone did some print on demand service: https://old.reddit.com/r/GUIX/comments/wgg0gd/i_thought_itd_be_cool_to_have_a_printed_copy_of/
<jonsger[m]>oh thats a beauty :)
<Andronikos>Ah nothing official okay.
<podiki[m]>yeah looks really nice. a 1.4.0 release would be a nice cause to celebrate with a printed manual
<davidl>is there any way to skip building the directory of info manuals when reconfiguring?
<Andronikos>If I turn off some features in the Linux kernel and install a packge that would require those, will Guix tell me?
<podiki[m]>I suppose we could ask FSF if they would add a printed guix manual to their offerings? would bring in a little $$ too; though I wonder if they wouldn't due to guix's rolling nature vs things like emacs
***A_Dragon is now known as Awoobis
<civodul>podiki[m]: i agree that a printed manual would be nice
<civodul>i think https://www.lulu.com/ does printed manual for free software packages
<civodul>but there are probably other options
<podiki[m]>civodul: would FSF have to do a fixed version or is it essentially print on demand and could also be a recent commit?
<podiki[m]>yeah, I think lulu is what the reddit poster used, looks nice
<nckhexen>An ‘ISBN’ bar code with the commit id would be a nice easter egg. Or is it just me :)
<nckhexen>podiki[m]: It does.
<podiki[m]>that would be clever
<nckhexen>I'm annoyed at myself for not thinking of this swag idea. (I'm not sure if it would be profitable enough to sell, but I didn't check pricing.)
<podiki[m]>I would be happy to pay a bit extra to have it as a donation to FSF/Guix
<nckhexen>s/sell/ship/
<podiki[m]>(as a gift to myself or telling someone to get it for me :-))
<podiki[m]>in fact, would be a nice celebration for my year+ of Guix and soon 1.4.0
<Andronikos>Why do some people have custom IRC hostname like @user?
<civodul>podiki[m]: we had an editor in the UK (also free software hacker then) take care of printing the Guile 2.0 manual years ago (i actually have one!)
<podiki[m]>Andronikos: I'm connected via matrix, and registered through a personal server
<civodul>that required a bit of extra proofreading work etc.
<civodul>to make sure it's actually suitable
<civodul>so i guess we'd have to start from, say the v1.4.0 manual, and review it and fix issues
<moggikorken[m]>nckhexen: wow thank you. I had no idea you could delete phases also. I was thinking I might have to use the trivial build :) do you have any tips as for how to discover these things? I mean can I use the repl for discovery or something? or is it just reading the docs that helps here?
<Sariboo>Andronikos: that's known as a vhost or cloak
<Sariboo>Andronikos: see https://libera.chat/guides/cloaks
<podiki[m]>civodul: got it. we could gauge interest but I think it would get some takers. that and the (now fixed) "error: success" t shirt idea
<Andronikos>Sariboo: Thanks
<Andronikos>podiki[m]: Oh, I didn't knew this is an option as well.
<nckhexen>moggikorken[m]: I'm afraid I can only recommend reading the package sources in gnu/packages to learn most of this. It's not *very* documented, a lot of stuff you just need to know through experience. Although: be sure to check out the cookbook if you haven't yet.
<podiki[m]>Andronikos: yes, libera chat is bridged for matrix, so you'll see some [m] nicks (default for matrix users seen on irc side)
<podiki[m]>moggikorken: and, as you saw, asking here for the wealth of information with some kind folks happy to disseminate!
<nckhexen>You can also set an rDNS if your ISP allows it, for something other than foo/bar/username.
<helaoban>i'm unable to access channel modules in in `guix repl`.
<helaoban>e.g. a "(use-modules (bar))" for a module "bar" provided by channel "foo" results in 'no code for module (bar)'
<civodul>helaoban: there's a weird bug: you have to do (use-modules (gnu packages)) first
<moggikorken[m]>ok thank you. I was reading the cookbook but it didnt cover this configure phase. I am afraid I am not working with C on the daily either so probably there is some ecosystem knowledge that would have helped me... I think
<civodul>podiki[m]: yup, and we're in time to have those by FOSDEM!
<nckhexen>I shall take this opportunity to point out that fine Guix cloaks are available to those who want one. At very reasonable prices.
<jonsger[m]>:)
<podiki[m]>nckhexen has wares if you have coin
<helaoban>civodul: wow! that worked... I was banging my head trying to figure out if something weird was messing with my load-path
<nckhexen>Currently only a single person owns one, but I'm sure they can attest it has brought them admiration and success in business, love.
<jonsger[m]>nckhexen how many commits or even better reviewed commits need to be thrown in?
<civodul>nckhexen: i heard it brought them exactly that!
<Sariboo>I'm itching to have another project cloak, but I think it really should be from a project that I actually use
<podiki[m]>guix coin: the only crypto that runs on git hashes?
<civodul>helaoban: yeah we should still fix it though :-)
<helaoban>civodul: it looks like (use-modules (gnu packages)) update guile's %load-path to add the channel paths
<helaoban>should just do that as part of guix repl invocation i'm guessing
<nckhexen>Sariboo: I'd prefer that too. 😛
<nckhexen>jonsger[m]: I dunno. Like… 3? I was worried about everybody & their dog wanting a guix/contributor/ cloak once, but I'm now apparently hawking them on the street corner, so see little value in elitist ‘>X commits over >X months’ rules I guess.
<nckhexen>OK so the official Guix cloak policy is hit me up & I'll do some extremely subjective git log reading & unless your track record is fixing 1 typo in a comment your chances are pretty good. There.
<nckhexen>For guix/user/, honour system.
<Sariboo>Yay, new policy!
<rekado>nckhexen: thanks for your comments about the Containers chapter. I fixed a few of the things you mentioned.
<rekado>it’s live now: https://guix.gnu.org/cookbook/en/html_node/Containers.html
<nckhexen>\o/
<rekado>I wonder if we should use an adapted version of this text for a blog post.
<gnucode>afternoon guix!
<podiki[m]>rekado: I have some tips and examples for the fhs container I could add
<podiki[m]>(mostly in my original emails about the container)
<civodul>rekado: that section looks great! certainly worth a blog post
<civodul>i wonder if we could turn the veth tricks into static-networking-service config
<jonsger[m]>+1 for blog post :)
<jonsger[m]>it was a rather silent year on the blog, especially after spring...
<civodul>jonsger[m]: agreed!
<civodul>we could also have a blog post on --emulate-fhs
*civodul looks at podiki[m]
<podiki[m]>:)
<podiki[m]>I'd be happy to add it in with that cookbook/blog entry on containers, or a separate shorter one with some demos
<vagrantc>so exciting to have a regressive feature :)
<podiki[m]>for instance, using it for rustup and some big rust build (not that I know rust, but lets you follow the standard instructions), or whatever someone wants to suggest
<podiki[m]>a tool of last resort :)
***mark_ is now known as mjw
*apteryx would prefer --fhs for brevity
<unmatched-paren>apteryx may use -F
<unmatched-paren>:)
<apteryx>hehe
<podiki[m]>-F FTW
<podiki[m]>apteryx: you wanted to try it out for something, I forget what (kernel builds for certain devices? or something?)....did you get a chance to try it?
<unmatched-paren>florhizome[m]: awesome, three new home services! :)
<podiki[m]>hi guix: getting an record-type <package> abi mismatch when trying to load another channel (locally); but nothing is compiled so no sure why it is saying to recompile
<podiki[m]>I'm guessing a cache needs to be deleted, any way to tell which one or should I just blast away ~/.cache/guix
<unmatched-paren>podiki[m]: something like ``rm -rf ~/.config/guile/3.0-LE-8-4.6/home/paren/code/guixrus''
***Dynom_ is now known as Guest7344
<podiki[m]>unmatched-paren: perfect thanks! it was what you said (but ~/.cache) and found that it holds directory structure of places you've loaded before, cleared out the one I'm using and that did it
<unmatched-paren>podiki[m]: Oh, yes, sorry, that was a stupid mistake :P
<podiki[m]>forgiven a million times because you had the right answer instantly
<podiki[m]>much obliged kind person
<unmatched-paren>No problem :)
<tautvydas>Hey all, I have installed Guix not so long ago and I <3 it. I've noticed in the manual at the bottom of 4 Getting started, Resources: link for Cookbook leads to 404 page. Have no idea if it is know or where should I reported :D
<nckhexen>tautvydas: Which manual?
<tautvydas>1.3.0
<nckhexen>The Web copy?
<tautvydas>Yeah, I can paste a link https://guix.gnu.org/en/manual/en/html_node/Getting-Started.html#Getting-Started
<nckhexen>Thanks!
<unmatched-paren>tautvydas: Don't use the 1.3.0 manual, anyway.
<unmatched-paren>Use devel: https://guix.gnu.org/manual/devel/en/html_node/
<nckhexen>Oh, I still need to submit that s|/devel|| patch. That should be done before the release. Thanks for the reminder.
<nckhexen>The last time I tried to fix a Texinfo reference URL it failed horribly.
<podiki[m]>yes please
<tautvydas>Oh. Okay. Thanks :D I have installed 1.3.0 so was reading the manual accordingly.
<unmatched-paren>tautvydas: nobody should be using 1.3.0
<nckhexen>As soon as you guix pull, you won't be.
<nckhexen>It's not *that* bad… 1.3.0 was pretty cool for its time (late 90s, IIRC? It's been so long).
<singpolyma>😂
<tautvydas>O.O
<vivien>Last time I heard about releases, there was a discussion about how many releases should be made, and how the version should look like
<vivien>I didn’t follow the discussion though
<florhizome[m]>the good thing about releases is, you get some publicity
<florhizome[m]>well totally different thing, what could be the reason a search path is not invoked
<florhizome[m]>meaning it is not exported
<podiki[m]>there needs to be a package that specifies the search-path in the package def and some (other) package that populates the directory, I think
<unmatched-paren>florhizome[m]: e.g. if you just install ``guile-avahi'' it won't work, but if you install it along with ``guile'' it will
<podiki[m]>perhaps thinking of the package that consumes (uses) the search-path, like guile, and then the one that gives it something to load (guild-avahi); it only makes sense with both in the profile
<helaoban>is there a way to access my own guile module in the package build environment? passing the module path to 'guix build' with the -L flag doesn't work.
<unmatched-paren>helaoban: If you're talking about accessing something outside the build env within the build env: impossible by design.
<vagrantc>in other words, you have to create a package for whatever your build needs
<podiki[m]>though you can also include modules in a build phase (like in snippets)
***robin__ is now known as robin
<ngz>Hello. Is there any moral issue with me fixing an issue in macro emacs-substitute-variables (like a world rebuild), or should I just proceed?
<ngz>(I don't think there is any problem, but I might as well ask)
<gnucode>ngz I think you normaly want to avoid a world rebuild.
<ngz>gnucode: Of course. I'm asking if fixing a macro may trigger unwanted issues like this one.
<ngz>Sorry for not being clear.
<gnucode>hmmm. I guess you can always make the patch. And then ask if said patch causes a world rebuild.
<ngz>The patch itself is pretty trivial. I was hoping to take shortcut…
<gnucode>gotcha. It's not really my area of expertise. Now if you were to ask me about the color of Weird Al's mustace...well there I'm something of a world renowned (self-proclaimed) expert.
<podiki[m]>do the patch locally and try to see if libreoffice or such wants to build and not substitute?
<ngz>All seems fine.
<podiki[m]>not like we don't see a commit pushed and then reverted later when the CI shows a million rebuilds
<rekado>civodul: the veth stuff is tricky to do statically
<rekado>the veth/ceth pair exists on the host, and then the ceth device is moved into the container’s net namespace
<florhizome[m]>unmatched–paren podiki i think i discovered the mistake, basically that path was empty
<rekado>so from the perspective of the container a network device is attached
<rekado>I’d like to have some sort of delayed configuration of that device, to have it configured when it is attached
<podiki[m]>unmatched-paren: in what? (forgot what we were talking about)
<rekado>and I’d also like to be able to make some shepherd services start only once the network device has been configured
<rekado>e.g. to have the rstudio server service listen on the IP that would be assigned to that virtual network device
<rekado>we can’t seem do this with the configuration tools we have
<helaoban>podiki: yes I mean I'm assuming that I can import some functions from a module inside a build phase using (e.g. with 'with-imported-modules').
<helaoban>the question is how to get my own guile module added to the guile load path in the build environment.
<podiki[m]>whoops my question was to florhizome
<podiki[m]>but sorry don't have more than that helaoban
<helaoban>podiki: oh! no worries :)
<helaoban>looks like there is a module-path keyword used in gexp->derivation and others that controls the build env load path.
<florhizome[m]>snippets are run after patches right?
<podiki[m]>not sure
<indigo-oce>does guix work well with the nix package manager?  I'm trying it out because there's some packages I need and it's getting some permission issues and other stuff
<unmatched-paren>indigo-oce: installing guix with nix, or vice versa?
<indigo-oce>on GuixOS, using `guix install nix` and then I tried having it in the system.scm
<unmatched-paren>There's a nix-service-type
<unmatched-paren>Try removing the nix package and adding that to your system service config.
<indigo-oce>ahh, ok
<unmatched-paren>And look it up in the manual to figure out how to configure it :)
<indigo-oce>ok, didn't think it'd be in the manual
<unmatched-paren>Every service is in the manual
<unmatched-paren> https://guix.gnu.org/manual/devel/en/html_node/Services.html#Services
<indigo-oce>i didn't know it was a service until just then... but I'll remember to check
<unmatched-paren> https://guix.gnu.org/manual/devel/en/html_node/Miscellaneous-Services.html#Nix-service
<unmatched-paren>her
<unmatched-paren>here
<ric342[m]>How well integrated is that? Will nix duplicate the dependencies already installed by guix?
<unmatched-paren>ric342[m]: No.
<unmatched-paren>Sorry, yes.
<unmatched-paren>It'll have a separate store.
<ric342[m]>Can shepherd manage services installed by nix at least?
<ric342[m]>s/services/daemons/
<unmatched-paren>The Nix and Guix daemons have diverged significantly since the former was forked into the latter.
<unmatched-paren>ric342[m]: No.
<indigo-oce>it uses /nix/store/
<unmatched-paren>I don't think you can install Nix services outside of NixOS?
<ric342[m]>I don't mean nix services, I mean just like, say you install a program on nix, can shepherd start it for you?
<ric342[m]>I guess it makes sense that they can't share dependencies, that sounds like it would break a lot
<unmatched-paren>ric342[m]: Technically you could do that.
<ric342[m]>Sounds good enough, last time I had guix I didn't expect the nix service to be in the manual either
<unmatched-paren>If the Nix "frob" program is the one that's in the environment, you can just invoke "frob" without a path.
<unmatched-paren>s/one/only one/
<unmatched-paren>Sorry, I'm tired, and am finding it difficult to string together a coherent sentence :)
<ric342[m]>I guess if you have two with the same name, giving the absolute path right?
<unmatched-paren>It's definitely not idiomatic and probably isn't a good idea.
<unmatched-paren>Hence why I said "technically".
<ric342[m]>It sounds quite convenient, I'll try it out when I have guix again soon. I'm surprised that nix is officially supported when they provide nonfree packages
<unmatched-paren>Usually, we use (file-append PKG "/bin/FOO"), which produces a gexp that eventually builds into /gnu/store/.../bin/FOO.
<ric342[m]>I would have assumed it would have been not able to be included
<unmatched-paren>ric342[m]: We also have flatpak.
<unmatched-paren>And the Internet.
<unmatched-paren>And cpan and cargo and pip and cran and...
<ric342[m]>But not librewolf ):
<rekado>(CRAN is free software only :) )
<unmatched-paren>ric342[m]: I believe librewolf has DRM stuff.
<unmatched-paren>Which is nonfree for fairly obvious reasons.
<ric342[m]>Oh that must be it, I saw it has it disabled by default though
<ric342[m]>But yeah it must be included
<unmatched-paren>Mhm, I believe firefox and icecat download the .so and load it in dynamically.
<unmatched-paren>Which is... not good.
<unmatched-paren>Freedom-wise, I mean. Not technically.
<ric342[m]>I thought regular firefox wasn't included either
<unmatched-paren>rekado: Oh, nice! So is Hackage :)
<unmatched-paren>Sorry, s/icecat/librewolf/
<ric342[m]>Icecat is cool but it's too outdated for me to consider it safe
<unmatched-paren>See what I meant about "stringing together a coherent sentence"? :)
<ric342[m]>That's why I prefer librewolf
<unmatched-paren>ric342[m]: Fair. I use qutebrowser.
<ric342[m]>When I was reading some nix package definitions, I noticed some packages did not actually build from source, but included the binary, even if the program was itself open source. For example with android (waydroid) as well as a few other programs that are maybe easier to compile than android
<ric342[m]>Is this prohibited in guix or do some guix packages sneak binaries in?
<rekado>it’s not okay to use pre-built binaries in Guix
<ric342[m]>Great
<rekado>there are very few exceptions, largely historic
<rekado>e.g. ghc
<unmatched-paren>we recently removed mono because it had unacceptably many binaries in the source code, for example
<rekado>(I’ve been trying many different ways to try to bootstrap GHC but all have failed so far)
<ric342[m]>I quite prefer everything to be source based, because I don't think a binary android counts as reproducible
<ric342[m]>Do a lot of things depend on GHC?
<rekado>in nixpkg there are *many* pre-built jars; we build all Java stuff from source
<unmatched-paren>Pandoc.
<rekado>yeah, pandoc is the most popular
<ric342[m]>I wonder if there could be an option to block any binary based packages from installing
<ric342[m]>In the config
<ric342[m]>Or maybe it is so few it would be easier to block the packages themselves
<unmatched-paren>JVM-language-land (Indonesia? :P) has a serious problem with Gradle.
<unmatched-paren>Gradle requires Kotlin requires Gradle.
<unmatched-paren>ric342[m]: Well, then we'd ultimately be blocking everything
<ric342[m]>Yeah I watched the guix conference video about building android... That's a pretty bad situation
<unmatched-paren>Because we build everything from a small set of bootstrap binaries, by necessity.
***robin_ is now known as robin
<ric342[m]>Is the bootstrap itself not reproducible from scratch?
<unmatched-paren>Reproducible, yes, but not bootstrappable itself.
<unmatched-paren>Which means it might, in some paranoid fantasy, be "reproducibly compromised".
<ric342[m]>I guess then I meant, other than the binary bootstrap, if any further binary based packages could be restricted
<ric342[m]>Or would it block too many packages
<unmatched-paren>Well, GHC is only a binary because it's absolutely necessary.
<unmatched-paren>There is no way to not build it from binaries.
<unmatched-paren>So far.
<unmatched-paren>rekado has tried patiently to find a hacky solution to build it from source, to no avail.
<Noisytoot>Why is GHC packaged at all if it's not bootstrappable?
<rekado>history
<pkill9>ric342[m]: can you provide a link to that video? sound sinteresting
<rekado>had we started out with a hard requirement for bootstrapping from source we wouldn’t have had a project in which to develop the source bootstrap.
<unmatched-paren>I think it's better to package the non-bootstrappable things with a big conspicuous XXX notice above it.
<unmatched-paren>Instead of just refusing to package things like Pandoc.
<rekado>and it’s not like we just shrug and ignore it
<ric342[m]>pkill9: https://10years.guix.gnu.org/video/towards-building-modern-android-as-a-guix-package
<pkill9>what is preventing bootstrapping it?
<unmatched-paren>pkill9: GHC?
<pkill9>yeh
<ric342[m]>It is very cool that the guix community even cares to put effort into this stuff, though :)
<unmatched-paren>Oh, god. It's awful. Rekado has a blog post and a paste .org file.
*unmatched-paren goes to find them again...
<unmatched-paren> https://elephly.net/posts/2017-01-09-bootstrapping-haskell-part-1.html
<unmatched-paren>rekado: Sorry, I can't find part 2 :/ Could you post the link here?
<rekado>GHC is the pure function that converted a youthful person full of hope into the jaded, gaunt husk that carries the name rekado today.
<dthompson>wow lol
<rekado>I actually have some updates for GHC 4
<dthompson>that's an all-timer rekado quote
<unmatched-paren>ghc person = person - willToLive