IRC channel logs

2022-12-28.log

back to list of logs

<KarlJoad>rekado: Yeah. Just need to clone the manual. I should probably do that before I forget everything I learned today.
<KarlJoad>I never got an answer about this, can I build a system config without making an image for it? I do not need an installer, I just want the packages to be built to be substituted for my laptop. Similarly for a home config?
<PotentialUser-99>Hello, how do I check system definition for current generation in guix?
<KarlJoad>Holy cow rekado! The directory field is in the manual; "7.7 Package Modules in a Sub-directory"! That makes my job easier.
<ham5urg_>Can I run a container (with its own networking) with https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/build/linux-container.scm ? https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/build/linux-container.scm#n219 has made me curious
<PotentialUser-99>why don't guix have something like arch wiki or nixos wiki?
<lechner>PotentialUser-99 / maybe guix describe ?
<KarlJoad>PotentialUser-99: We have the Guix manual. I think that should serve as our Wiki.
<PotentialUser-99>That's not enough, what if I run into some wierd issues? arch wiki usually have troubleshooting section that tell people how to fix
<PotentialUser-99>BTW how do you check the sys-definition of current generation?
<KarlJoad>guix system describe returns the provenance for the current generation, including the system configuration file in the store.
<KarlJoad>From my understanding, the manual is intended to serve as documentation for Guix. You can still use other wikis to narrow down and diagnose issues.
<lechner>they left
<KarlJoad>Womp womp.
<not-a-potential->thanks
<not-a-potential->where I can find any wiki if any exists
<lechner>we are the live wiki
<not-a-potential->Okay then how can I check the system definition of current generation?
<not-a-potential->my reconf failed I don't know how to fix, so I want to roll back
<lechner>Please try guix system roll-back
<KarlJoad>The system definition of the current generation can be found with "guix system describe". https://guix.gnu.org/en/manual/devel/en/html_node/Invoking-guix-system.html
<lechner>you may also wish to check out guix system list-generations
<KarlJoad>If your reconfigure failed, nothing should have changed. If your reconfigure succeeded, but something broke, then "guix system roll-back" are what you want.
<lechner>++
<not-a-potential->...
<not-a-potential->I don't have the original config
<not-a-potential->I want to see the config so I can diff and fix
<not-a-potential->It's not about the state of the system
<KarlJoad>"guix system describe" tells you the location of the configuration file in the store.
<lechner>guix system describe provides a path.
<not-a-potential->ok I found that path
<not-a-potential->yeah that's it
<not-a-potential->thank you so much!
<lechner>thumbs up!
<lechner>thanks for using guix!
<lechner>or trying to
<not-a-potential->haha
<lechner>it was hard for all of us
<lechner>my first week was terrible
<not-a-potential->yeah that's why I hope there's a thing like arch wiki
<lechner>forget about it. it would be bad even with a wiki. i have used linux since 1993 and had to rewire my brain
<not-a-potential->XD
<lechner>we welcome you
<lechner>your woes are just beginning
<not-a-potential->thank you
<lechner> https://www.youtube.com/watch?v=rgc_LRjlbTU
<omlet[m]>#guixês:bolha.chat
<mirai>lilyp: it looks like pulseaudio doesn't ever attempt to read /etc/pulse/default.pa.d, rather it reads from the /gnu/store/...-pulseaudio-15.0/etc/pulse/default.pa.d (which btw doesn't exist)
<mirai>this can be checked with pulseaudio --dump-conf
<mirai>or via the "race method"
<nckx>KarlJoad: 'guix system build'.
<KarlJoad>nckx: Yes, but that works locally. I want a Cuirass server to build the operating-system configuration.
<KarlJoad>But I do not need an installation image to be built.
<nckx>If you mentioned Cuirass it didn't get sent. Can't you build arbitrary expressions? Why the focus on images?
<nckx>ACTION can't access Cuirass right now :-(
<KarlJoad>I don't know if the focus is warranted. Currently, I have modules (which have been defined using (define-module)) that contain operating-system configurations. I want them built like "guix system build", but by Cuirass.
<lfam>Is there a web-based version of the Cuirass manual?
<lfam>This is 404: https://guix.gnu.org/cuirass/manual/
<KarlJoad>lfam: I ran into the same thing. I found it easier to run "cd $(guix build cuirass)" then "info path/to/cuirass.info.gz".
<lfam>It's unfortunate
<KarlJoad>nckx: I am focused on images only because I do not need an installation image to be built, as I am not installing to these machines all that frequently. If images are the easiest way, then so be it.
<nckx>You'd use a custom cuirass-job. You can turn any derivation into a job. There's a drv->job helper *somewhere* in Guix. You can use it or adapt it.
<ConvolutedSquare>lfam: https://web.archive.org/web/20220518163636/https://guix.gnu.org/cuirass/manual/cuirass.html
<lfam>Thanks :)
<nckx>Correction: derivation->job.
<nckx>ACTION is trying to recover their root file system for the second time this year :)
<KarlJoad>So just make another module in the same channel that converts the operating-system module from a derivation to a job?
<ConvolutedSquare>Oh hey nckx, so after investigating some more I came up with 2 possible solutions: 1. getting nativedisks command to work in GRUB or 2. get the kernel on the boot partition, and then mount /. What do you think?
<lfam>At least it's nearly the end of the year
<lfam>I'd be more worried if it was January 27
<ConvolutedSquare>And what happened to your fs? :o
<nckx>New kernel tried to upgrade the on-disc format, it didn't go well.
<lfam>ACTION grimace
<nckx>Single-device bcachefs was stablefor years, but I couldn't just accept that & be happy & not shove a second root drive in my box.
<KarlJoad>nckx: Or does derivation->job get placed in the Cuirass configuration?
<lfam>Ah, so it's self-inflicted-ish ;)
<lfam>Go boldly!
<nckx>Ish, but it should be supported, but then it's all unsupported, so eh I guess.
<nckx>Which is just to say: I can't really say more than what I remember, KarlJoad, I'm sorry. It's possible, I did it once, so it can't be hard.
<nckx>ConvolutedSquare: Funny, nativedisk has *never* worked for me. Froze every box I ever tried it on. Does it work for you?
<oriansj>one shouldn't blame users unless the documentation is perfect and the program in question provides sanity checking and points the users to exact parts of the documentation.
<nckx>Re: ?
<oriansj>nckx: in response to lfam's self-inflicted-ish comment
<nckx>ConvolutedSquare: I'd go for the boot partition. All you need is the bzImage & initrd. I think I shared my overengineered script here recently but I don't remember to whom.
<lfam>It's a good point. I was trying to poke fun, but that doesn't always come across clearly
<lfam>When someone says "kernel update broke my system", then I get worried. But if they are using a filesystem that's not included in the kernel, then I can breathe easy
<nckx>Yes.
<KarlJoad>nckx: It doesn't look like cuirass ever uses derivation->job, so I guess it must go somewhere in module.
<KarlJoad>If you come across how you got this functionality, I would greatly appreciate seeing your example.
<oriansj>lfam: tone indicators can help
<nckx>You must absolutely blame idiot users for using an in-development fs on their main machine. It's the FOSS way.
<lfam>I had hoped that my winky-face emoji would do the trick
<oriansj>nckx: blame isn't required, just express that the filesystem isn't yet supported and point them to documentation which could help them make it become supported.
<ConvolutedSquare>nckx: Haven't tried nativedisks yet, Guix doesn't seem to include it in the GRUB and I can't figure out how to get it to. I tried the boot partition one, but FAT32 doesn't support symlinks, but that was a quick and rushed attempt so I probably screwed something up. Will try it again now.
<nckx>I do not expect lfam to do any of that if I volunteer the fact that I'm wearing clown shoes of my own volition, which I did.
<ConvolutedSquare>Also, never heard of bcachefs. Why'd you choose it?
<nckx>I don't think the docs exist. I, mostly, am the docs.
<nckx>(Where Guix is concerned, I mean.)
<oriansj>nckx: you are absolutely correct, we can't expect that of lfam but we can encourage that behavior when possible to make a more gnu community ^_^
<nckx>ConvolutedSquare: Would you believe me if I said fun.
<ConvolutedSquare>Absolutely, as long as you didn't risk actual data for fun hah
<nckx>Nah. Just time. The data's safe, if inaccessible.
<oriansj>ConvolutedSquare: well any data not properly backed up to atleast the 3-2-1 spec is at risk
<oriansj>the 5-4-3-2-1 spec however is for the paranoid
<nckx>oriansj: Self-deprecation seldom survives TCP.
<nckx>I'm not crying. Much.
<oriansj>nckx: too soon for fart jokes?
<nckx>If you can make them relevant I'll allow it, but only then.
<lfam>Trying to write a manifest that includes all packages named "linux-libre-*"
<lfam> https://paste.debian.net/1265482/
<lfam>This kernel-packages function does return something sensible, but I'm not sure how to turn that into a manifest
<jgart[m]>For the erlang fans who like their parens: https://issues.guix.gnu.org/60372
<led-lightbulb>~jgartemat: Open issue )cLg( <Huh? https://t.ly/OMb_> "[PATCH] gnu: lisp: Add lfe." from jgart https://issues.guix.gnu.org/60372
<nckx>oriansj: What do people use for the '2' in 3-2-1 nowadays anyway?
<oriansj>nckx: 3 different copies on 2 different types of media for the 1 purpose of preserving your data
<nckx>lfam: Does k-p return something weird that resists packages->manifest?
<KarlJoad>jgart[m]: Hooray!!
<lfam>nckx: It spits out a list of package specs and source locations: https://paste.debian.net/1265483/
<ConvolutedSquare>Isn't the 1 an offsite backup?
<lfam>And then I test it with `./pre-inst-env guix weather -m etc/kernels-manifest.scm`
<nckx>oriansj: My question was way more specific. I guess the answer used to be 'tape', and maybe now it's 'HDDs', but as someone who lived through HDDs I'd prefer the '2' in '2 SSDs', if from different vendors.
<nckx>ConvolutedSquare: Yes.
<oriansj>why did the bcachfs drop a dump? this joke was so bad it had a key-stroke
<ConvolutedSquare>:|
<lfam>Lol
<nckx>Which is great until *you* go offsite for the holidays and it turns into 2 off-site backups plus the equivalent of dial-up.
<nckx>oriansj: 🏆
<oriansj>If one is startled by a very loud fart of their own, would they be fartled?
<ConvolutedSquare>Oh I have 4 offsite backups, lol. Off-contintent backups I guess.
<ConvolutedSquare>Can't lose all those dotfiles ya know
<oriansj>What did the maxi-pad say to the fart? You are the wind beneath my wings.
<oriansj>ConvolutedSquare: my view is make them available for the world to make copies: https://git.sr.ht/~oriansj/config and even make cloning of my systems trivial: https://git.sr.ht/~oriansj/System_setup
<oriansj>ConvolutedSquare: the paranoid do: 5 copies on 4 different continents with 3 different media, with 2 different parity backups for the 1 purpose of protecting your data.
<KarlJoad>nckx: I'm heading out, but if you do stumble across your way of having Cuirass build systems, please let sneek let me know.
<lfam>I figured out my manifest creator :)
<lfam>Soon to be on display on guix-patches
<jgart[m]>KarlJoad: tests are disabled
<jgart[m]>They require rebar3 but homeless-shelter is not writeable
<jgart[m]>so I have to shave that yak later
<jgart[m]>unless someone wants to send a patch and commit together
<ConvolutedSquare>nckx: I managed to boot into a bournish shell!
<ConvolutedSquare>I took the factory boot config and replaced the kernel & initrd with the ones from Guix
<ConvolutedSquare>Now what? :D
<ConvolutedSquare>mount doesn't seem to be recognized as a command
<not-a-potential->Hey folks, I just come across a failing package build(tealdeer)
<not-a-potential->How is that possible? If guix is declarative and this definition used to work, how can it fail again?
<nckx>...ah well you see I made a brilliant debugging move called 'falling asleep'.
<ConvolutedSquare>Rapid tactical recharging.
<nckx>ConvolutedSquare: You'd use (mount ...) from the Guix syscalls module, in Scheme mode. There's no bournish mount.
<nckx>But really, you want to boot through the initrd. Can't you append kernel arcuments? That would really, really help.
<nckx> Bit mean, but I'm going to fall back asleep now. Bye.
<whereiseveryone> not-a-potential: It's possible if someone in the process of updating another package that has mutual or common dependencies with tealdeer ends up breaking tealdeer.
<whereiseveryone>maybe they where updating another rust app and in the process broke tealdeer and didn't check to see that tealdeer broke
<whereiseveryone>You would have to go back to the exact commit where tealdeer was working with guix time-machine
<whereiseveryone>or fix tealdeer in its current state
<daviid>sneek: seen akirakyle
<sneek>I last saw akirakyle in #guix one day and 21 hours ago, saying: Well I'm glad I could at least help you uncover some bugs with g-golf.
<lilyp>mirai yeah, then you have to add the code to read /etc/pulse/default.pa.d yourself
<daviid>sneek: later tell akirakyle i pushed a fix wrt GI dependency version in the configure.ac file tx for the catch, but the problems you were facing are not related to any bug in g-golf: (b) you need a clean environment to build g-golf, which means you can't build g-golf if it is installed, and (b) to run g-golf, guix needs a specific 'something', i hope those who know will help you and other g-golf users in guix
<sneek>Okay.
<Kolev>Anybody written a GNOME HIG app in G-Golf?
<abrenon>hi guix
<ham5urg>How do I write my own-service-type?
<ham5urg>This is not much https://guix.gnu.org/manual/en/html_node/Service-Types-and-Services.html to learn from.
<ham5urg>Any exmaples in git? In which directory?
<unwox>ham5urg: gnu/services directory
<apteryx>mirai: it only reads from /etc/pulse/default.pa.d if you use 'extra-script-files' as part of your pulseaudio-configuration
<apteryx>the rationale was to avoid reading scripts from foreign distributions
<mirai>apteryx: I am using that
<mirai>and it's not sourced
<apteryx>it is, I use it too.
<apteryx>or do you mean when invoking some pa command specifically?
<mirai>? strange
<mirai>let me get a paste
<apteryx>here's my pulseaudio config: https://paste.debian.net/1265533/
<mirai> https://paste.centos.org/view/5aa24b38
<apteryx>if your config is correct you should see ".include /etc/pulse/default.pa.d" as the last line when running 'tail /etc/pulse/default.pa'
<mirai>apteryx: looks okay to me https://paste.centos.org/view/d0ccfe87
<mirai>the file appears under /etc/pulse/default.pa.d
<apteryx>it looks ok to me to
<apteryx>have you checked the pulseaudio logs upon starting it?
<apteryx>perhaps an error in the script
<apteryx>or run the commands in the interactive pa prompt
<mirai>running each line individually with pacmd shows that they're fine
<apteryx>that's strange
<apteryx>and as it's included last they should override rather than be overriden
<apteryx>udisksctl stopped working out of the blue
<apteryx>Failed to activate service 'org.freedesktop.UDisks2': timed out
<mirai>apteryx: can you do a pulseaudio --dump-conf
<apteryx> https://paste.debian.net/1265538/
<mirai>apteryx: won't this mean that /gnu/store/wvdjn50mslpj9wsslkq3hbdij20fzbfw-pulseaudio-15.0/etc/pulse/default.pa is used instead of /etc/pulse/default.pa ?
<mirai>they're not the same file
<mirai>only /etc/pulse/default.pa contains the lines to load /etc/pulse/default.pa.d/
<bjc>i haven't been able to get ‘pulseaudio-configuration’ to work, fwiw
<bjc>it drops the file in …/default.pa.d, and has the requisite include line in default.pa, but it doesn't actually seem to load
<bjc>if i run ‘pactl $(cat /etc/pulseaudio/default.pa.d/enable-zeroconf.pa)’ it works, so i don't think it's a syntax error
<mirai>bjc: I think pulseaudio never reads /etc/default.pa in the first place (which contains the line to load the extra-scripts
<bjc>that would explain it
<edoput>hello all. I'm evaluating guix as a build system for embedded devices. Unfortunately the embedded world does things differently and does not receive much love from built systems. As an example I have a SPI filesystem library which is configured by including a header and each device I target has a different header. I would like to build the library first and then the firmware but this is problematic with
<edoput>other build systems, e.g. meson. Has anybody attempted to build firmware relying on guix or is this not a use case?
<mbakke>edoput: IIUC maybe you can find some inspiration from make-arm-trusted-firmware in gnu/packages/firmware.scm or make-u-boot-package in gnu/packages/bootloaders.scm
<bud>hello Guix folks!
<drakonis>ahoy
<bud>I was distro hopping a couple of months ago, and told myself i should try Guix, when the next stable version of Xfce (4.18) was released and packaged for Guix.
<bud>since 4.18 release i have been F5-ing https://packages.guix.gnu.org/search/?query=xfce and i see it is still on 4.16
<bud>is it complicated to create custom packages for the xfce 4.18 stuff i want (thunar, xfce4-panel, xfce4-settings + some panel plugins)
<bud> https://issues.guix.gnu.org/60271
<led-lightbulb>~bud: Open issue )wJg( <Huh? https://t.ly/OMb_> "[PATCH] gnu: Update xfce to 4.18." from Michael Rohleder https://issues.guix.gnu.org/60271
<drakonis>hmm
<drakonis>did someone set up a markov chain bot?
<bud>i am a human and a bud
<drakonis>i didnt mean you
<drakonis>oh
<bud>;)
<drakonis>i see what's going on
<drakonis>led-lightbulb posts a shorthand identifier for bugs
<drakonis>i think it shouldnt take much longer for the xfce 4.18 patchset to go in
<bud>sweet
<bud>i use a custom xfce4-panel plugin, how does that work on guix? on Ubunut i install it to: /usr/lib/x86_64-linux-gnu/xfce4/panel/plugins/libi3windowmenu.so
<bud>*ubuntu
<bud>i think /usr/lib/xfce4/panel/plugins/libi3windowmenu.so would work as well.
<bud>and i build and install it from source with GNUmakefile
<florhizome[m]>unmatched-paren : regarding https://issues.guix.gnu.org/60013
<florhizome[m]>how does using gut worktree fix recompilation
<led-lightbulb>~florhizom: Open issue )dFg( <Huh? https://t.ly/OMb_> "[PATCH] gnu: Add clight" from Florian https://issues.guix.gnu.org/60013
<florhizome[m]>new bot, what dis?
<drakonis>bud: its not as trivial as that
<drakonis>but it shouldnt be too hard to learn how
<drakonis>refer to this
<drakonis> https://codeberg.org/lechner/guile-naptcha/src/branch/history/README.md
<florhizome[m]><bud> "i use a custom xfce4-panel..." <- Just $PREFIX/lib/...
<florhizome[m]>drakonis uhm ok i guess
<drakonis>for the bot
<drakonis>its lechner's bot
<drakonis>clearly.
<florhizome[m]>yeah i don't really understand the benefits whatever
<mirai>apteryx: bjc lilyp : Opened https://issues.guix.gnu.org/60383
<led-lightbulb>~mirai: Open issue )nLg( <Huh? https://t.ly/OMb_> "Pulseaudio does not source 'extra-script'files' from pulseaudio-configuration" from mirai https://issues.guix.gnu.org/60383
<bjc>thanks
<florhizome[m]>bud you will need to write a guix package, not sure if that was clear
<apteryx>mirai: ack
<bud>florhizome[m]: drakonis: thanks, i figure it out, Guix documentation is 10/10
<apteryx>mirai: if what you found is true, that'd mean the default.pa file under /etc/pulse/default.pa was never used
<bjc>are the *-xyz modules just grab bags of miscellaneous packages?
<rekado>yes
<rekado>introduced originally to separate interpreters/compilers from packages using them
<bjc>ok
<mirai>apteryx: seems to be the case
<mirai>so it's interesting how your configuration seems to be working?
<mirai>unless pulseaudio is already defaulting your card-profile to what your snippet contains
<mirai>What's the proper way to handle packages that never had an upstream release?
<mirai>i.e. only git commits are available
<bjc>use (git-reference (url "…") (commit "sha"))
<bjc>for the (source (origin (uri …))) if that wasn't clear
<jgart[m]>ham5urg: here my dots: https://git.sr.ht/~whereiseveryone/conf
<apteryx>mirai: when I initially contributed the new extra-script-files field, I had adjusted the sysconfdir of pulseaudio to /etc, and probably was testing with such modified pulseaudio: https://issues.guix.gnu.org/53676#20-lineno83
<led-lightbulb>~maxim: Closed issue )BUe( <Huh? https://t.ly/OMb_> "[PATCH 0/5] *** PulseAudio service improvements ***" from Maxim Cournoyer https://issues.guix.gnu.org/53676
<led-lightbulb>~maxim: Closed issue )k( <Huh? https://t.ly/OMb_> "23.0.60; C-x v v in an ordinary file throws strange error" from David Kastrup https://issues.guix.gnu.org/20
<apteryx>I guess the changes from my script stuck and I didn't notice.
<apteryx>I should try to modify them and reboot to confirm
<lechner>sorry, that bot isn't perfect
<apteryx>mirai: OK, I think I've spot what caused /etc/pulse/default.pa to stop being considered: https://paste.debian.net/1265557/
<apteryx>(when the pulseaudio package sysconfdir is not modified)
<apteryx>notice the "default-script-file" entry unconditionally added to daemon.conf
<apteryx>in the old version
<mirai>nitpick, it can be changed to use match-record here
<apteryx>so if we were to re-introduce it, pointing to /etc/pulse/default.pa, that should do it
<apteryx>ah, "After:" should have been "Current:"
<apteryx>I'll send a patch soonish
<apteryx>I think the problem is triggered when we don't provide the 'daemon-conf' field.
<mirai>daemon-conf is never null? though
<mirai>it has a default value
<mirai>but it nonetheless inserts "default-script-file = " default-script-file "\n"
<mirai>which since default-script-file also provides a default value of (file-append pulseaudio "/etc/pulse/default.pa")
<mirai>results in the guix written default.pa file to be never used
<mirai>see pulseaudio-etc
<efraim>does anyone know offhand how to use 'git diff' to also grab uncommitted files?
<apteryx>perhaps git diff --staged ?
<apteryx>hmm, uncommitted files... what would 'git diff' diff against then?
<apteryx> I don't know but perhaps the folks in #git do :-)
<lechner>efraim / you mean staged files?
<efraim>apteryx, lechner: I was hoping to do it without it being staged, but 'git diff --staged' works for me
<efraim>thanks
<apteryx>great!
<efraim>i'm finally working on porting riscv64 support to node-10.24.1 and need to add an entire folder
<apteryx>mirai: I'm reconfiguring with a plausible fix
<lechner>thanks everyone for working so hard on Guix! i am in love with Guix and spend more learning about it than those dearest to me think is right---but it is right. Guix is an amazing invention. our common ideas really pull people together here
<apteryx>lechner: guix is strangely addictive :-)
<mirai>tailoring guix to your needs does feel like crafting a Fabergé egg
<apteryx>mirai: with the fix, default-script-file = /etc/pulse/default.pa from 'pulseaudio --dump-conf'
<apteryx>I'll send it to your ticket
<lilyp>For the record, https://issues.guix.gnu.org/53676 did have something like this – wonder why it was closed without a merge
<led-lightbulb>~lilyp: Closed issue )BUe( <Huh? https://t.ly/OMb_> "[PATCH 0/5] *** PulseAudio service improvements ***" from Maxim Cournoyer https://issues.guix.gnu.org/53676
<apteryx>lilyp: it was merged, but there was a subtle bug
<lilyp>Ahh, okay.
<shcv[m]>hello; I saw recent news about the configure-linux procedure for... configuring linux, but the only configuration docs seem to be the potentially outdated cookbook. Any references, or a short example, of how to add a few lines of kernel config?
<apteryx>it's called customize-linux
<apteryx>you can pass it a defconfig you crafted with 'make menuconfig', 'make savedefconfig', etc. with #:defconfig as a file-like object
<apteryx>alternatively, you can use #:configs, but that's tricky as you need to capture all the dependencies
<apteryx>the kconfig dependencies, that is
<apteryx>mirai: patch sent, please try and report!
<apteryx>lilyp: in case you'd like to follow: 60383@debbugs.gnu.org
<lilyp>apteryx: I think you should use default-script-file instead of the hardcoded value
<apteryx>that was the bug
<apteryx>default-script-file would by default to /gnu/store/...-pulseaudio.../etc/default.pa
<mirai>lilyp: using default-script-file defeats the purpose of having a /etc/pulse/default.pa though
<apteryx>while our configuration produced it with the correct #include line under /etc/pulse/default.pa
<mirai>or for that matter, defeats the purpose of guix crafting a new default.pa (where it ends up placed doesn't really matter)
<mirai>well, /etc/pulse/default.pa is a symlink to a /gnu/store item so it's already controlled by guix
<lilyp>ahh, right, if the script files are empty, guix just mirrors the default, forgot about that
<leg7[m]>Can someone help me debug my config.scm? I'm trying to get my system up and running but guix system init fails
<lechner>what's the error, please?
<leg7[m]> https://0x0.st/oRzm.scm
<leg7[m]>I can't really paste the error
<leg7[m]>Is it ok if I send a pic?
<lechner>sure
<leg7[m]>ACTION uploaded an image: (275KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/IyajnhCIFZvnyJyMEOVuqmRI/20221228_213532_1771394971319422762.jpg >
<leg7[m]>Looks like the problem is in file-systems
<nckx>leg7[m]: Your indentation is misleading. %base-file-systems is inside your list, not an argument to append.
<nckx>Move one ) before it.
<lechner>also, is the ESP label a uuid or a FAT label?
<lechner>or is tha what the 'fat does?
<nckx>Also, (mapped-devices -> (list mapped devices; else you're calling it as a procedure.
<nckx>lechner: A UUID.
<nckx>Well, ‘ID’ :-)
<nckx>leg7[m]: Are you perchance using emacs?
<apteryx>vagrantc: just sent the change I suggest for "gnu: u-boot-am335x-boneblack: Revert to old name" via send-email
<leg7[m]>nckx: Not right now no
<leg7[m]>Are you asking for the repl and lisp features?
<leg7[m]>Can you send me the fixed version? I tried your changes and the error persists
<lechner>nckx / btw, moving the ESP mount point was a cake. guix even created the mount point
<nckx>Nice!
<lechner>leg7[m] / why not start with a simpler config, and work from there?
<nckx>leg7[m]: I was asking only because C-M-q is handy to spot (well, by repairing it) misleading indentation.
<lechner>nckx / and the ESP ended up being mounted in both places (before reboot)
<leg7[m]>lechner: I just took the default desktop.scm config and modified it to work with my disk setup
<lechner>ACTION recommends paredit, with a cheat sheet
<nckx>leg7[m]: No, I can't easily edit it right now. Which error?
<nckx>Paredit is great until you type #; and blood starts spraying from your eyes.
<vagrantc>apteryx: thanks!
<lechner>all those semicolons!
<nckx>* in certain situations, results may vary, this is not medical advice.
<leg7[m]>For the mapped-devies section I don't see the problem (I'm a lisp noob)
<nckx>You're calling mapped-devices as a procedure: (foo) is like foo() in C.
<nckx>At least IIRC. I don't have the paste in front of me anymore.
<leg7[m]>Ugh ok I tought it was a function because it's like that in the default config I think
<nckx>But you had something like (mapped-devices file-systems), no?
<nckx>Shouldn't it just be (dependencies mapped-devices)?
<nckx>leg7[m]: Which default config?
<leg7[m]>desktop.scm
<nckx>Desktop.tmpl?
<nckx>*d
<nckx>That uses (dependencies mapped-devices).
<lechner>busted
<lechner>:)
<leg7[m]>Are you talking about the swap section?
<nckx>Wherever you wrote (mapped-devices …).
<lechner>Hi, what is the best way to invoke tests with a guile-build-system in view of #58365, please?
<led-lightbulb>~lechner: Open issue )Kcg( <Huh? https://t.ly/OMb_> "[PATCH 0/6] Support #:tests? in guile-build-system" from Maxime Devos https://issues.guix.gnu.org/58365
<nckx>leg7[m]: Yes.
<nckx>I think ‘append’ would work there, although I'm not in a position to test.
<leg7[m]><leg7[m]> "20221228_213532_1771394971319422..." <- I don't understand because it looks like the error isn't even about the config.scm
<nckx>It is.
<nckx>You were trying to pass a nested list as file-system field.
<nckx>(list A B C %base-file-systems) => (list A B C (list D E F …))
<nckx>Hence why turning it into (append (list A B C) %base-file-systems) by moving one ‘)’ fixes it.
<nckx>ACTION can't view images right now.
<nckx>ACTION is reinstalling Guix.
<leg7[m]>Just make a mental image from the binary 😎
<leg7[m]>nckx: Oh I see because %base-file-system is a list
<nckx>Yes!
<nckx>Aha, the fact that you didn't type the s implies that you didn't notice that.
<leg7[m]>XD
<nckx>ACTION can't even see emojos, so you can be as rude as you like.
<leg7[m]>I read it in the docs but didn't realize I was making a nested list
<bjc>what font do you use to get emoji anyway? the usual stuff i don't see in guix
<leg7[m]>nckx: How are you chatting on here? Irc?
<nckx>bjc: I use font-google-noto.
<leg7[m]>bjc: noto-emoji
<bjc>i didn't know noto had it built in. that's nice
<nckx>leg7[m]: weechat. I normally use hexchat.
<bjc>manjaro had a separate noto-emoji package, and i just assumed
<nckx>Yeah, I was just going to respond to that, but was first checking whether it wasn't some new Guix package :-)
<nckx>Noto is huge, so if it could feasibly be split into an :emojo output et al, that would be nice.
<nckx>* :emoji; habit.
<leg7[m]>I just assumed from gentoo and arch
<bjc>holy moly. noto is 736 megs
<nckx>Is there a way to get emojoes on the (vanilla) Linux framebuffer?
<nckx>Asking for an enemy.
<axet>substitute: updating substitutes from 'https://ci.guix.gnu.org'... 0.0%
<nckx>bjc: It's notoriously for being huge (pun legitimately unintended), but it does do what it promises. I don't think I've ever been unable to read something with it installed, barring bugs.
<bjc>yeah, it's worth the disk space to me to be able to render unicode
<leg7[m]>Ok now I get an unbound variable error in the swap-devices section
<nckx>Paste your file again.
<leg7[m]> https://bpa.st/VTN72
<leg7[m]>I guess the website is worse for you
<nckx>Oof, 0x0 curled so nicely, this one's an HTML mess. Sec.
<nckx>Yep, but I'll manage.
<leg7[m]>It's because I have to use wgetpaste on the iso
<leg7[m]>Curl segfaults
<leg7[m]> https://0x0.st/oRzV.scm
<leg7[m]>@nckx reposted on 0x0
<nckx>Thanks. The bpaste HTML messed up the indentation to boot.
<leg7[m]>* nckx: repostzd on 0x0
<nckx>So, it took a while, but I think I've got it figured out.
<nckx>1. You simply have an extra ‘)’ after ‘%base-file-systems’, there should be only 2. This probably makes the whole file invalid, so errors will be weird.
<lechner>Hi, what type of inputs are prerequisites that are only used in tests, please?
<nckx>2. You still have (mapped-devices file-systems). That should be (append mapped-devices file-systems) to *build* correctly. I don't know if it will *boot* correctly, though, because I don't use swap files.
<nckx>If you make those two changes, Guix will accept your file and should start building.
<leg7[m]>Ok thanks a lot I'll try
<nckx>lechner: There is no separate category for test inputs, if that's what you mean. In practice, they are usually native-inputs.
<nckx>(Tests are usually disabled when cross-building.)
<nckx>leg7[m]: Guix's curl segfaults? That might be worth a bug report.
<nckx>error: failed to get canonical path of `/dev/sda1:/dev/sdb1'. Hmm.
<lechner>nckx / do we run tests on the build artifacts or on the output?
<nckx>That face when you realise you have *no idea* how you've been installing your bootloader all these years.
<nckx>lechner: What's the difference?
<lechner>nckx / that colon is misplaced
<nckx>I've only ever heard one as a wannabe-erudite synonym for the other.
<nckx>lechner: This is a multi-device file system.
<lechner>in Guix, it may be very similar. in Debian it isn't https://dep-team.pages.debian.net/deps/dep8/
<lechner>i just meant you may need a list
<nckx>It might be ‘links’ speaking, but that page is asking me to look at the implementation of a tool I've never heard of.
<nckx>I like this standard already.
<nckx>Anyway, I'll give the Guix answer, although it will probably miss any subtlety you meant to convey: tests are run before the 'install phase *by default*, but some packages override that. But package tests are always run in the build environment, not separately, not after some undefined integration.
<nckx>Yes, some packages pass their tests and then fail to run when installed.
<nckx>That's rare.
<panosale1>hi guys, any idea why X doesn't start after installing guix? i can only access TTY
<nckx>lechner: And it usually implies some variable was set during the build, and the ‘fix’ is to wrap the executable(s) to keep that variable set at later run times.
<bjc>panosale1: are you using ‘%desktop-services’?
<nckx>panosale1: I won't be able to help, but we'll need more information on how you configured X to start, and what you're doing to make it (not) start, and how it fails.
<apteryx>nckx: one exception are the python packages (the test run after installation)
<nckx>Yep.
<nckx>But still in the cozy warm primordial soup of the build environment.
<panosale1>bjc, nckx: im using 1.4.0 (not latest). i used the terminal graphical installation and picked XFCE. then nomodeset in kernel parameters. does that help? i haven't touched anything else
<nckx>It certainly implies that it *should* work, and that it doesn't sound like user error :-( I can't say more than that.
<bjc>ah, sorry, i haven't used the installer for Quite Some Time™, so i can't really help
<bjc>but what nckx said. have you tried gnome? that tends to have the best support. it's possible that xfce has some issues with the installer
<nckx>I don't even know where X/the default DM logs, but I'd look for those logs to see why it fails to start X.
<panosale1>hmm maybe i should try gnome
<nckx>bjc: I really really hope we didn't ship a broken XFCE installer.
<bjc>me too. i'm just grasping at straws here, though
<nckx>I admit to not testing that, only GNOME.
<panosale1>could it be that my gpu is at fault somehow? though im using nomodeset
<nckx>It's certainly possible. ‘nomodeset’ works around a specific issue but isn't a magical ‘make everything work, ever’ switch.
<bjc>it could be, depending on drivers. i've only ever used the built-in graphics on intel with guix
<nckx>Luckily, I'm also clueless about GPUs, so can offer the same level of support here! Which GPU is this?
<panosale1>6600 XT
<panosale1>may have to ask nonguix for that :)
<nckx>I can't even guess at which brand that is.
<bjc>i don't think the amd drivers have blobs, or at least didn't use to
<panosale1>bjc: i don't think they are 100% free.
<panosale1>nckx: it's AMD
<bjc>that's a shame, and would definitely pose a problem with guix
<nckx>bjc: Isn't AMD notorious for their nonfree firmware blobs? Or am I confusing? Yes, all modern GPUs are, but I thought AMD was the dishonest (‘free drivers uwu’) one.
<bjc>i thought that was nvidia's thing when they "open sourced" their drivers a few months ago
<nckx>I think this just proves they all suck.
<panosale1>they do. but AMD sucks a bit less
<panosale1>example: you can't use wayland with nvidia's drivers
<nckx>GLX is the future.
<bjc>i think you can, finally, use wayland with nvidia, but that's a very recent development
<panosale1>bjc: correct, but that just proves my point :)
<bjc>we're all just proving nckx's point: they all suck ;)
<nckx>If you know of another free distribution that supports X on this card, please do let us know, and let's try to debug & fix it. But if it's not possible, I'm afraid supporting it's outside of the scope of Guix.
<apteryx>ACTION is happy with their 2006 8800 GTS nvidia card (except for a recent regression in the kernel)
<panosale1>nckx: im trying a GNOME installation now just to be sure. im 95% sure it's a driver thing. i will let you know :)
<nckx>Thanks!
<nckx>And I'm an idiot: I got so spooked by my GRUB error that I forgot I hadn't mounted /mnt/boot. It doesn't *need* to get the canonical path of /mnt, silly.
<apteryx>the new dark theme for mumi looks nice!
<lechner>nckx / not that you care, but this is the text i was looking for when i was called away https://people.debian.org/~eriberto/README.package-tests.html
<bjc>say i have a new package that requires definitions for 3 or 4 other packages. do i submit a single patch with all of them, or a patch per-package and somehow note the dependencies?