IRC channel logs

2022-03-03.log

back to list of logs

<nckx>No, but see guix refresh -l texlive-latex-listings
<nckx>You don't need to know about texlive to get that warning, merely have any one of those packages installed or otherwise pulled in.
<the_tubular>Yeah, that's my case :P
<verkty[m]>I'm getting an error when trying to build flightgear
<verkty[m]> https://dpaste.org/k25t
<verkty[m]>Can anyone reproduce?
<jab>weird question...I used to upload videos of me coding to peertube. Well lately I am trying out console only computing. Does anyone know of a way to record my Emacs seeion in the console and output a video? Or is that not really possible?
<nckx>From a very cursory goducking, asciinema *seems* to not break when using emacs.
<nckx>I've not used it myself.
<nckx>It's also not ‘video’ in the traditional sense, but there's probably some converter out there.
<nckx>verkty[m]: That looks legit, taking lookings now.
<jab>nckx thanks. I'll have to take a look. Sure is an odd use case.
<jab>nckx: apparently howard abraham has already done this kind of thing before: https://github.com/howardabrams/demo-it
<jab>though that is not quite what I want...
<blake2b>jab: have you considered asciinema?
<sneek>blake2b, you have 1 message!
<sneek>blake2b, roptat says: I have the logs from the guix days: https://xana.lepiller.eu/guix-days-2022/day1-pad.txt
<blake2b>oh wow i haven't been on here in a while
<blake2b>sneek: tell roptat I said thanks!
<sneek>roptat, blake2b says: I said thanks!
<blake2b>sneek: later tell roptat thanks!
<sneek>Okay.
<blake2b>jab: if you haven't tried asciinema, its a really nice litle program that records your terminal activity, and the results can even be played back in the terminal, or can easily be embedded in a website. not sure if it does audio, but i think i've seen asciinema casts with audio somwhere
<acrow>asciinema +1, but the old-school, script, might also be just what you need..
<blake2b>a bash script? how would that work?
<blake2b>that sounds legit interesting
<acrow>No, it's a unix utility to record tty output. It's installed by default.
<acrow>man script
<blake2b>ahh ok. nice, i had never heard of it
<acrow>Don't get old, it isn't worth it.
<blake2b>haha
<blake2b>and it can convert the typescript to video?
<acrow>I think you just echo the file you create to whatever output; but, it's a simple stream of text to a terminal. No fancy video, except what terminal escapes may provide.
<nckx>jab: I should mention that the *reason* I don't use asciinema myself is that it seems to require wasm, or at least the main site seemed to.
<nckx>Again, probably ways around that.
<acrow>nckx: I think asciinema predates wasm. Maybe they use it now but just a few years back that wasn't involved. Don't get me wrong I had a positive experience with asciinema. I just wanted to mention script because, I believe, at one time it served the use case I thought was being discussed.
<acrow>s/predates/pre-dates/g
<blake2b>nckx: i don't think asciinema requires wasm, just the embedded player. i believe (but not sure) that you can export your recordings to various video codecs
<nckx>You're right, I should be more specific: I tried to view an asciinema recently, have wasm disabled in my browser, and couldn't play it nor was I given an error message or fall-back option.
<nckx>Yes.
<nckx>I mentioned that above.
<blake2b>i've recorded emacs sessions with it, I was quite impressed with the results
<nckx>asciinema or script?
<blake2b>asciinema
<nckx>Does the latter support rich metaverse applications like emacs? It's so old school I didn't expect it to.
<blake2b> i just gave it a try, it seems like if your emacs is pretty minimal its capture it decently... but, it would be a decent amount of somewhat tedious work to get it to into video format in a way that faithfully represents your session
<blake2b>*ultra minimalist declarative computing intensifies*
<nckx>Pitteh.
<nckx>Oh, right: verkty[m]: fixed ☺
<acrow>For emacs you might use open-dribble-file. And - you 'cat typescript' to see the default script output. It is, admittedly, best when doing line oriented work.
<verkty[m]>nckx: That was quick! Thanks!
<nckx>urw :3
***jonsger1 is now known as jonsger
<jab>blake2b: thanks!
<jab>and acrow thanks! I
<jab>have never heard of script.
<acrow>jab: did anything discussed meet your needs?
<jab>acrow: Well I suppose I will just have to give those a try at some point and see what works. I feel like now it may be possible to achieve my goal of screencasting via a console. The reason I am going console computing is I am giving up images and video for lent.
<jab>I just spend too much time benge watching tv shows lately. Time to try something different. And this force me to learn Emacs more. And maybe get me ready to try running the Hurd full time.
<acrow>Cool.
<dave[m]123456789>I am getting the following error upon running `guix system reconfigure`
<dave[m]123456789>`guix system: error: symlink: Permission denied: "/var/guix/profiles/system-2-link.new"`
<dave[m]123456789>`/var/guix/profiles/system-2-link.new` does not exist on my system. Does this error mean it is trying to access `/var/guix/profiles/system-2-link.new` or create a symlink there?
<jab>dave[m]123456789: I think you need to run "sudo guix system reconfigure".
<dave[m]123456789>jab: Well that is embarrassing. For some reason I thought I was root. Thanks!
<jab>dave[m]123456789: that's ok. I've done more em-bare-ass-ing things myself. :)
<catt[m]><phf-1> "bricewge, I did that: `cat /etc..." <- Yea?
<nckx>dave[m]123456789: Oh well. It's better to run too few guix commands with sudo than too many (e.g., don't ‘sudo guix pull’).
<nckx>Good night, Guix o/
***\f is now known as buffer
***buffer is now known as \f
***aya is now known as gyara
<roptat>hi guix!
<sneek>roptat, you have 1 message!
<sneek>roptat, blake2b says: thanks!
<AIM[m]1>roptat: It's pronounced geeks, btw
<roptat>AIM[m]1, thanks, I'm aware
<AIM[m]1>AIM[m]1: No, I just used it like a tag line
<AIM[m]1>Like how Arch users have "I use Arch, btw"
<AIM[m]1>We have, "It's pronounced geeks, btw"
<civodul>Hello Guix!
<roptat>is there a way to programmatically get a cross-package?
<roptat>like in my cross-clang, I have (inputs (list llvm)), but I need a cross-llvm, which I don't get because cross-clang is native.
<roptat>nevermind, it's just that libcxx is not well defined
<civodul>roptat: hi! check out "bags", which have the three build/host/target categories for inputs
<roptat>but at that stage, it's too late
<civodul>ah ok
<civodul>you can also check how targets such as i586-pc-gnu and mingw-* are defined in cross-base.scm & co.
<roptat>I figured out what I wanted :)
<roptat>I'm preparing a small patch series now
<roptat>just need to rebuild complex packages...
<abrenon>hello guix
<civodul>howdy abrenon!
<allana>Hi guix! Does anyone know of any how-to/cookbook-ish guides on writing services for guix? Perhaps something with a little more than what's presented in the manual in "10.17.2 Service Types and Services".
<civodul>hi allana! not sure we have howtos for that, we should do something about it
<civodul>i gave the "composing system services" talk a few years back at FOSDEM: https://guix.gnu.org/en/blog/2017/back-from-fosdem-2017/
<civodul>but it's more about the design than on how to use it
<allana>civodul: Thanks! I'll give that talk a look and continue looking at other services in the guix source for inspiration.
<civodul>allana: yes, https://notabug.org/civodul/guix-explorer is another way to get a better understanding of how "services" work and are glued together
<allana>Very cool! Love the animated demo.
<raghavgururajan>Hello Guix!
<leinad>Hello!
<civodul>o/
<roptat>how should I configure a guix build coordinator to build packages from a channel?
<roptat>how does it know when it needs to build something?
<raghavgururajan>roptat: When you are working with Android, did you use any special udev rules?
<roptat>there's the android-udev-rules
<roptat>I don't use anything else
<roptat>oh and I added myself to the adbusers group
<roptat>which you have to define: (user-group (system? #t) (name "adbusers"))
<attila_lendvai>i didn't need to define the group. i have this: (udev-rules-service 'android android-udev-rules #:groups '("adbusers"))
<roptat>oh, I didn't know you could define the group directly in the udev rule
<cbaines>roptat, the build coordinator just handles building derivations, so maybe write a script that computes all the derivations for things on your channel, then submit builds for them
<roptat>can I make it run the build on the same server? Do I need an agent on the server?
<cbaines>the builds are performed by an agent process, so yes. Although if you're just building things on one machine, maybe you could just build things without the coordinator?
<roptat>maybe, I wanted to have something take care of that automatically
<roptat>basically, rebuild all my packages when I push something to my channel, or if it needs to be rebuilt because guix was updated
<roptat>I mean dependencies in Guix
<cbaines>while the build coordinator is great at building things, it doesn't really tackle those problems
<roptat>I see
<roptat>what would you suggest?
<cbaines>this isn't really a problem I've had personally yet, so I don't really have any solutions to suggest
<roptat>ok, thanks :)
<alethkit>Are there any additional steps required to get LVM-on-LUKS working, apart from copying the configuration template? GRUB ends up failing to locate the LVM volume and boots into rescue mode.
<silicius>I'm trying to run the benchmark at github.com/yaclib/bench but I can't even compile it. For gcc portion there are linker errors, and clang can't even find its standard libraries.
<silicius>I'm focusing on the gcc first. I'm trying to compile the gcc part in a shell made with guix shell gcc-toolchain git bash sed nss-certs coreutils cmake ninja glog folly fmt -CN
<silicius>no matter what I do it always ends in an error that ld could not find -lgflags_shared, adding gflags to the environment does not do anything
<silicius>I don't have much experience with cmake or
<silicius>I don't have much experience with cmake or ld so I don't how could I investigate this further
<attila_lendvai>alethkit, i sthink grub still doesn't support LUKS v2 headers, pay attention to that. IIRC, you can convert a v2 into a v1 inplace.
<alethkit>The docs imply otherwise, but I guess it's worth a shot
<attila_lendvai>alethkit, even if it's fixed already, it's a relatively recent fix, and it may not be picked up by Guix.
<gnoo>silicius: why not make a package and use cmake-build-system ?
<gnoo>oh my, cmake will try to download dependencies lol
<gnoo>CMake Error at /gnu/store/zga679c4nldah9l8dhd5a4hdy820hcyf-cmake-minimal-3.21.4/share/cmake-3.21/Modules/ExternalProject.cmake:2650 (message):
<gnoo> error: could not find git for clone of benchmark-populate
<gnoo>how would you make cmake find some deps? i added benchmark as input and it's still trying to git clone
<alethkit>attila_lendvai: Oh, I didn't realise fixes would take a while to get picked up by Guix. I was under the impression Guix normally follows upstream directly
<attila_lendvai>alethkit, nah, the integration part can be quite some work. sometimes one upstream introduces some changes that break several other packages when used together. and grub is part of booting and installation, and as such it requires extra care/testing.
<apteryx>hi Guix! We install licenses in a versioned share/doc/$package-$version directory; but it seems that the gnu-build-system docdir is share/doc/$package; it seems we should either drop the version, or have docdir versioned (if possible). Toughts?
<abrenon>anyone knows about python's tox tools ?
<abrenon>I get deprecation warning about the auto-imported definition for python-stanza for trying to run python setup.py test, suggesting to use tox instead
<abrenon>but nothing points (even in the source itself) to the expected way to do so
<ngz>apteryx: having docdir versioned sounds better, as license may change between releases, but I don't know if that's possible either.
<civodul>public service announcement: my messages from gnu.org no longer reach gmail.com
<civodul>so if you don't get replies from me, that's not because i ignore you, but rather because you have a gmail.com address :-)
<abrenon>wow, amazing
<abrenon>and I suppose there's a very good reason for gmail to be doing this ?
<ngz>Let's create a gnu-guix@gmail.com address. It's free as in gratis. ;)
<alethkit>Well, grub now complains about not being able to find the lvm volume
<xelxebar>Interesting. My company runs its own mail server and just today started suspecting delivery problems to gmail.
<xelxebar>Something similar happened a few years back with my personal email when they started checking DNS PTR records.
<xelxebar>Wonder if something similar is going on.
<djeis>Does guix repl not get modules from extra channels?
<civodul>djeis: hi! it does get them
<djeis>Weird, I can't use-modules them.
<civodul>can you check %load-path?
<djeis>I can see the packages in guix search, but I can't use-modules the corresponding files.
<civodul>ngz: so it might have been a mistake on my side (sending via an SMTP server other than gnu.org), let's see
<djeis>civodul: The only guix-specific thing on there is a guix-modules-union, and looking in there I don't see anything from the channels.
<djeis>Thanks for responding, by the way :)
<djeis>I guess really my question is, how can I get geiser and flycheck etc. to use the load-path that my custom packages/systems/etc will be eval'd in?
<djeis>I was doing it by scraping guix repl, but if that doesn't give me channels I'm kinda lost.
<civodul>djeis: for Geiser you could set geiser-guile-load-path so that it points to a checkout of the channels of interest (Geiser runs "guile", not "guix repl")
<civodul>oh it's unfortunate that "guix pull" prints those texlive-latex deprecation warnings
<civodul>djeis: re "guix repl", i know: you have to first do ,use(gnu packages) there
<civodul>that runs code that adjusts %load-path so it contains modules from extra channels
<civodul>kinda weird, i admit
<podiki[m]>civodul: thanks for the new latex section in the manual, hit that stumbling block before and that looks very helpful
<podiki[m]>(every distro probably needs such a page, it is always slightly/completely different)
<raghavgururajan>alethkit: Is the LVM volume inside a LUKS partition?
<jlicht>djeis: are you on guix system? or guix-on-foreign distro?
<raghavgururajan>roptat and attila_lendavi: Thanks!
<jlicht>I'm asking because I recall an extremely obscure issue on guix-on-foreign-distro, where my channels only became available after importing a different guix module
<jlicht>(in a guix repl)
<jlicht>not quite sure which module that was, I just remember thing "huh" and moving on XD
<jlicht>s/thing/thinking
<apteryx>ngz: yeah, I guess that's the reason it was versioned in the first place; but docdir is otherwise unversioned for the build systems
<apteryx>and the version can be traced back to the store file name (which has the version information) unambiguously in case of doubt
<ngz>apteryx: But wouldn't that cause conflict when mixing two packages with different LICENSE files?
<apteryx>unless they have the same name it wouldn't
<apteryx>the docdir is share/doc/name/
<ngz>They very often have the same name
<apteryx>I mean package names, not license names
<ngz>I was thinking of the same package with 2 different versions.
<apteryx>yes, then docdir would conflict, the same as bindir and the others
<ngz>Not sure about bindir: the executable may not be the same, e.g., emacs and emacs28 or some such.
<apteryx>true, some packages that are meant to be installed side to side would have this to accomodate for it
<apteryx>s/meant to/for which there is support/
<apteryx>but in general it'd just conflict
<ngz>I assume this would be rare enough?
<apteryx>and it seems quite edge case in guix to have two versions of a single package in the *same* profile
<apteryx>when you can easily have them in distinct, non-conflicting profiles instead
<ngz>True.
<ngz>OK, then. I change my vote: thy shall not use #$name "-" #$version anymore for documentation.
<ngz>err thou shan't :)
<apteryx>I've created #54234 so that it can be more easily discussed
<GNUtoo>hi, when using Wireshark from Guix, it says that 'chacha20-poly1305@openssh.com' isn't supported when using sshdump, though in Guix sources, 'libssh' is compiled with '-DWITH_GCRYPT=ON', am I missing somehting?
<GNUtoo>I've also an error when trying to connect to a host that uses chacha20-poly1305@openssh.com with guile-ssh
<alethkit>raghavgururajan: Yup, although looking at https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/bootloader/grub.scm, the issue seems to be that the lvm module is never loaded?
<djeis>jlicht: I see the behavior both on an arch vm of mine and on a guix system, after both pulled the same set of channels at approx the same time.
<civodul>GNUtoo: guile-ssh uses libssh and it's possible that it doesn't implement all the ciphers that OpenSSH supports (haven't checked)
<GNUtoo>What is strange is that it has code for chacha20-poly1305@openssh.com
<GNUtoo>If I read the libssh-0.9.6 tarball source code it seems like it's supported
<civodul>could it be that it excludes it by default?
<GNUtoo>Ah that's possible
<djeis>civodul: Loading (gnu packages) does the trick, thanks!
<GNUtoo>I understood that using '-DWITH_GCRYPT=ON' would enable it but I probably need to dig deeper
<civodul>i guess clients and servers can also specify which ciphers they accept during the handshake
<civodul>and it might be that the default set of ciphers in libssh doesn't include it, even if it's supported
<GNUtoo>If I understood well it's the server that sets the available ciphers, so here the server supports only that cipher
<GNUtoo>and when trying to connect, the client (wireshark through libssh) also lists its chiphers and it doesn't appear in them for some reasons
<GNUtoo>though the source code mention it
<GNUtoo>I've also tried that without Guix (by recompiling libssh in Parabola with -DWITH_GCRYPT=ON) and I've also the same behavior there
<raghavgururajan>Thanks Guix, for including caste discrimination in the code of conduct. :-)
<GNUtoo>Maybe it needs support for this cipher in multiple parts and it only supports in one part?
<GNUtoo>like it can handle a session with it but not authenticate
<GNUtoo>or maybe it doesn't support the combinaiton of the key exchange and the cipher
<raghavgururajan>alethkit: In case of LVM volume inside LUKS partition, make sure to include both `luks-device-mapping` and `lvm-device-mapping` in "mapped-devices" (*in that order*); and also include ` (dependencies mapped-devices)` in "file-systems".
<alethkit>raghavgururajan: Already done. Could it be related to https://issues.guix.gnu.org/44877 ?
<raghavgururajan>alethkit: Intresting. lvm module should be loaded, as I am currently using lvm inside luks setup. https://git.sr.ht/~raghavgururajan/guix-config/tree/master/item/system/config.scm
<raghavgururajan>Ah. I am not using grub installed by guix. never mind.
<raghavgururajan>Could you go into grub's command line and see if the module is loaded?
<raghavgururajan>Not sure of the command name.
<raghavgururajan>`lsmod` it is.
<alethkit>raghavgururajan: I can only boot into rescue mode, not grub proper.
<alethkit>Out of curiosity, did you follow https://osboot.org/docs/gnulinux/guix.html ?
<raghavgururajan>I wrote that. xD
<alethkit>Ah!
<raghavgururajan>Wait you are using osboot?
<alethkit>No: I just followed it since it seemed the closest to what I wanted
<raghavgururajan>Ah I see,
<alethkit>I assume you're using BIOS boot, and not UEFI?
<raghavgururajan>You didn't do the `(installer #~(const #t))` part right?
<alethkit>I didn't, no
<raghavgururajan>Ah okay.
<raghavgururajan>Few minutes. be right back.
<alethkit>What does that snippet do?
<raghavgururajan>Doesn't install Grub binaries on disk, but still generate Grub configuration.
<raghavgururajan>Because osboot and libreboot comes with grub as a payload.
<roptat>finally submitted my patches for cross-clang :) https://issues.guix.gnu.org/54239
<GNUtoo>alethkit: it tells Guix to generate a grub configuration but not to install grub
<roptat>that's a first step for upstreaming my android channel :)
<GNUtoo>Nice
*GNUtoo has finally managed to update matterbridge https://issues.guix.gnu.org/54239
<GNUtoo>oops wrong URL
<GNUtoo> https://issues.guix.gnu.org/54148
<GNUtoo>Interesting, something like that could probably be used for the Android.mk build system
<GNUtoo>Basically you use and ship build stuff in their own cross path
<GNUtoo>ok, using libssh from git makes it work apparently
<GNUtoo>so I just need to wait for the next release
<civodul>GNUtoo: ah, good to know
<raghavgururajan>roptat: Nice!
<raghavgururajan>alethkit: Were you able to see grub menus?
<raghavgururajan>GNUtoo o/
<alethkit>Only the rescue menu
<ngz>sneek: later ask rekado why doesn't texlive importer use catalogue-version field, when available, to set the version of a package?
<sneek>Will do.
<raghavgururajan>alethkit: Ah I see. I think in that case the grub didn't load properly. If it was a lvm module issue, things would be failed after attempting to boot guix, which would be inside lvm.
<alethkit>My /boot is located inside the LVM volume
<raghavgururajan>Grub should have at least attempted to unlock LUKS.
<raghavgururajan>Unlock LUKS and then look for LVM. But things failed even before unlocking LUKS right?
<alethkit>Yup, no prompt
<raghavgururajan>Hmm. May be BIOS vs UEFI thing?
<alethkit>I can try to use the installer's grub loader
<raghavgururajan>Which one is yours?
<alethkit>I'm on UEFI
<raghavgururajan>I see. In that case boot files should have been in separate EFS partition.
<raghavgururajan>Did you LUKS encrypt the whole disk or just one partition?
<AIM[m]1>Ohh
<AIM[m]1>I LUKS encrypted with the default stuff
<AIM[m]1>Just changed it to btrfs
<raghavgururajan>alethkit: Could you share the bootloader, mapped-devices and file-systems sections of your config.scm?
<raghavgururajan>GNUtoo: I was planning on porting libreboot's build system (mklb) to guix. Do you have any similar ideas?
<alethkit>The whole disk
<alethkit>Let me try booting manually via the insaller's grub bootloader to see if that works
<GNUtoo>raghavgururajan: why not package Libreboot stuff inside Guix instead?
<GNUtoo>You could even add a new target for that
<GNUtoo>I've checked during guix days, we can refer to package of another target architecture
<GNUtoo>we have things like powerpc-linux-gnu or x86_64-w64-mingw32 so why not having libreboot-i686
<GNUtoo>and we build the deblobbed version of coreboot and the payload for that architecture
<raghavgururajan>alethkit: I think Full-Disk Encryption is not possible with UEFI setup, as you always need an unencrypted EFI File System (EFS) partition. Not 100% sure though.
<GNUtoo>this way we can potentially add linux-libre and many things as payload
<alethkit>raghavgururajan: My ESP is unencrypted, but everything else is not
<raghavgururajan>GNUtoo: For packaging libreboot stuff, I'd their build system right? Like their make stuff?
<GNUtoo>Though in case of linux-libre we might not need the coreboot toolchain
<raghavgururajan>Ah ESP.
<raghavgururajan>alethkit: Ah cool then.
<GNUtoo>raghavgururajan: it's basically some shell scripts that builds stuff, so I don't see why we can't package what they build directly, it'd be way better integrated in guix
<GNUtoo>There is even already some stuff being packaged from heads in guix
<raghavgururajan>alethkit: Just to double-check, you used `grub-bootloader-efi` instead of `grub-bootloader` right?
<alethkit>Yup
<GNUtoo>so we could do something like that at first if we have some issues with libraries or libc equivalent
<raghavgururajan>Cool!
<raghavgururajan>GNUtoo: Gotcha!
<vagrantc>"basically some shell scripts" comes down to a complicated one-off build system
<vagrantc>if you're talking about libreboot
<raghavgururajan>I was what vagrantc said. xD
<vagrantc>last i looked at packaging it, there was no way to build without network access
<raghavgururajan>*was thinking
<vagrantc>so you would have to patch or reimplement almost every one of those shell scripts
*raghavgururajan is drowsy
<raghavgururajan>"no way to build without network access" <-- Oh no!
<vagrantc>it's been some years since i looked, though it was pretty dormant lately (unless there's some very recent activity)
<raghavgururajan>vagrantc: Rebooted few months ago.
<raghavgururajan>*Project rebooted
*raghavgururajan --> zzZ
<vagrantc>oh, hope it gets the momentum to carry on :)
<GNUtoo>What can be done instead is reuse some of the scripts if they clean up source code
<GNUtoo>And Libreboot accept patches so we can get things modified there too if needed
<alethkit>raghavgururajan: Just checked, it boots when I use another grub bootloader to unlock the drive and then load the original config file
*GNUtoo has been working with Libreboot to produce a deblobbed version of u-boot (it contains nonfree software nowadays)
<GNUtoo>So I've tried to make sure that this work could be reused, but I'm still waiting for the libreboot maintainer(s) to run the scripts that got merged to get a release
<GNUtoo>(the documentation is not merged yet though)
<GNUtoo>In any case having the ability to reuse important work like deblobbing scripts looks like the way to go
<GNUtoo>but for actually building coreboot for instance, it makes more sense to integrate that directly in guix
<GNUtoo>for the configuration if you want to stick to libreboot configuration here you could try to reuse them or make them reusable if they are not
<nckx>What ho, Guix.
<nckx>Hi raghavgururajan! Longish time no see.
<apteryx>it seems the existing on drives on Berlin have regained a rather zippy state, perhaps after getting rid of 16 TiB of stuff and rebooting
<apteryx>do we still have issues with 'guix gc' at the moment?
<GNUtoo>raghavgururajan: for instance you could use the Libreboot grub config from ./resources/grub/config/grub.cfg in lbmk for instance, that could even be packaged separately for instance
<GNUtoo>and you could pass that one ./resources/grub/config/grub_memdisk.cfg to grub when building grub for Libreboot
<vagrantc>GNUtoo: interested in deblobbed u-boot ... in both guix and debian we remove some files which do not break any known targets
<GNUtoo>We probably need to collaborate together in some way then
<GNUtoo>Basically I've a list of blobs + problematic documentation here: https://notabug.org/libreboot/lbmk/src/master/resources/u-boot/default/blobs.list
<GNUtoo>And from that if/when a relase is done, a script will be generated from that
<GNUtoo>and a cleaned-up tarball that is reproducible
<vagrantc>nice!
<GNUtoo>And even anybody should be able to the tarball since the checksums are in libreboot
<GNUtoo> https://notabug.org/libreboot/lbmk/src/master/tests/u-boot-libre.sha512
<GNUtoo>These are used by tests to test if it's reproduci ble
<GNUtoo>*reproducible
<GNUtoo>so they also act as official checksums at the same time
<vagrantc>GNUtoo: libreboot apparently makes exceptions for ddr training stuff ...
<GNUtoo>The release is a bit old (2021.07-r1) but I'll try to use it in Parabola and then update it later on
<GNUtoo>the -r1 is from libreboot btw
<vagrantc>GNUtoo: looks like mostly documentation removes?
<GNUtoo>vagrantc: what is this DDR training stuff?
<GNUtoo>vagrantc: + nonfree microcode
<GNUtoo>and an usb3 firmware
<GNUtoo>And indeed all the rest is documentation that steer users toward installing nonfree software
<GNUtoo>In some cases there is clear instructions to do so
<vagrantc>sure, but not likely to break any builds that currently work :)
<GNUtoo>like download this nonfree binary and add it in the tree (as part of build instructions)
<vagrantc>by removing the documentation...
<GNUtoo>But the idea in that work was to maximize reuse so I tried to differenciate all the cases
<GNUtoo>There is also a lot of TODO
<vagrantc>GNUtoo: in the debian packaging, drivers/dma/MCD_tasks.c is removed ... most of the others appear to have disappeared
<GNUtoo>ok, is it code or data?
<GNUtoo>To me it seems to be data but I might be wrong
<GNUtoo>It's for the SDMA?
<vagrantc>GNUtoo: not always easy to tell ... since it wasn't needed by anything actually used, i err on the side of removing it :)
<GNUtoo> /* Contains task code and structures for Multi-channel DMA */
<GNUtoo>hmmm
<GNUtoo>looks like code at second reading
<GNUtoo>("task code")
<GNUtoo>linux-libre has lot of code to detect that btw
<GNUtoo>like with the ARM alignment with ARM assembly
<GNUtoo>It's really impressive, though that also makes the code hard to read and work with
*GNUtoo need to go soon
<GNUtoo>I will need to look in the debian commit for it and import it
<minikN>Hello. Currently having trouble installing GuixSD on my laptop. After booting the iso and setting up partitions like described in the manual, the init command fails: https://i.imgur.com/vRQF5gb.jpeg (sorry for bad quality). Any ideas?
<roptat>you might have made a mistake in the configuration file
<roptat>but with that error message, it's clear where
<minikN>roptat: Config used: https://paste.debian.net/1232893/ channel file: https://github.com/minikN/guix/blob/main/channels/channels-lock.scm
<roptat>sorry, I can't find what's wrong
<roptat>the locale should be en_US.UTF-8 (not utf8), but I don't think that's the issue
<nckx>Why do people keep saying that?
<nckx>.utf8 is fine, possibly preferred.
<SeerLite[m]><roptat> "but with that error message, it..." <- Unclear? ;)
<minikN>roptat: No it wasn't.
<roptat>right, unclear, sorry ^^'
<nckx>roptat: Are there things that don't handle the .utf8 notation?
<roptat>yeah, but nothing important
<minikN>For installation command, I copy my config file to `/mnt/etc/config.scm' then do `guix time-machine -C channels.scm --disable-authentication -- system init /mnt/etc/config.scm /mnt'. This should be ok?
<roptat>sounds fine
<nckx>roptat: Ooh. Like?
<minikN>Hmm..
<roptat>I don't remember, it might just have been because .utf8 didn't exist on my system at the time...
<roptat>I was slightly suspecting something to do with locale because the error is in string->utf8, but it gets a derivation instead of a string from what I understand, so probably unrelated
<roptat>what do you need to pass to git send-email to make it send messages with [PATCH v2]?
<nckx>-v2 😉
<minikN>--annotate, isn't it?
<lilyp>--reroll-count
<roptat>not documented :p
<lilyp>it should be as part of format-patch
<nckx>I mean, if you love typing, those 2 others are fine too.
<lilyp>[(--reroll-count|-v) <n>]
*nckx doesn't love typing.
<roptat>oh, I was looking at send-email
<roptat>thanks
<SeerLite[m]>Oh, is that the way to send an updated patch series?
<nckx>Yes.
<nckx>--to=the-same-number@debbugs.gnu.org
<SeerLite[m]>Nice, thanks!
<attila_lendvai>am i the only one getting errors building a Guix checkout: error: failed to compile 'guix/build/clojure-build-system.scm'
<attila_lendvai>"In procedure cdr: Wrong type argument in position 1 (expecting pair): #f"
<SeerLite[m]>I built mine just fine a few minutes ago
*attila_lendvai rebases his branches and retries with HEAD
<ngz>Using `git-reference', how can I specify a non-default branch in a git repository? Or is pointing to the right commit sufficient?
<roptat>pointing to the right commit is sufficient
<attila_lendvai>i'd really appreciate if this could get in (or i could get a rejection). this patch is approaching a year now: https://issues.guix.gnu.org/50217
<the_tubular>Can you achieve SDN with guix ?
<the_tubular>Like could I make my own router and set it up using scheme? Is there a template somewhere?
<the_tubular>I know that stuff like PPP is available on the packages, but I don,t know how to use it on guix
<the_tubular>Umm, not a lot of network admins here ._.
<minikN>roptat: fyi, found the culprit. It was the installation image I used for the usb stick..
<roptat>how do I find the target of a symlink in guile?
<roptat>ah readlink
<nckx>roptat: readlink
<attila_lendvai>i'm still getting a compile error in guix/build/clojure-build-system.scm. and the backtrace is yet again pretty useless.
<nckx>It returns whatever text the link contains, you have to perform your own canonicalisation if needed.
<SeerLite[m]>attila_lendvai: On master? I fetched but there's nothing new so my build from a while ago was on master
*attila_lendvai made a mistake with the rebase, compiled again the old code, and tries again with master
<roptat>"make clean-go" could help if you have stale .go files
<SeerLite[m]>Is there any difference between clean-go and clean?
<apteryx>clear-go is more focused (just the .go byte compiled files)
<apteryx>clean-go*
*attila_lendvai is going through a make distclean
<SeerLite[m]>Oh alright, I'll start using that then
<attila_lendvai>it's the same again, and i have no idea what changes i have made could result in this. i never used/touched anything clojure. https://paste.debian.net/1232896/
*attila_lendvai gives it up for today
<attila_lendvai>i finally got a success build. it's not clear, but i think it was stale .go file. and that was after a make distclean. but i really give up for today now... :)
<attila_lendvai>thanks for the feedback!
<jgibbons[m]>Hi everyone! I'm considering writing a book about practical Guix. Other than how to write a package definition, what topics do you think need a deeper look?
<roptat>I guess how build systems and services work
<roptat>especially, how to write them
<ekaitz>jgibbons[m]: that's a great thing to do, you have all my support
<jgibbons[m]>roptat I can do that. I think those topics will also require a chapter on how to test those things.
<jgibbons[m]>So far, I have plans for packages, build systems, system configurations, the home, services, scripts, and the test system.
<jgibbons[m]>I think I can also write about setting up a server to deploy a system and offload builds.
<ngz>roptat: Thanks.
<jackhill>jgibbons[m]: for what audience are you writing? I definitely care about the features for software preservation and reproducable computation, but not sure everyone would (of course those things could benefit everyone).
<jackhill>jgibbons[m]: otherwise, I think I'd not just show how to do things with Guix, but what makes it special/how Guix enables software freedeom (e.g. by making it easy to change code no matter in what part of the system it is, or how playing around is safe, since your environment doesn't get cluttered up with past attempts.
<jgibbons[m]>jackhill: I'm not entirely sure yet. I know that guix specifically appeals to free software enthusiasts, so I think my audience mostly consists of some subset of moderately experienced gnu/linux users who are familiar with the software development lifecycle.
<jackhill>jgibbons[m]: fair enought!
<jgibbons[m]>I think how guix facilitates the four freedoms of free software would be valuable knowledge to those people. I'm not sure if it would appeal more to professionals or hobbyists.
<jgibbons[m]>channel, what backgrounds do you think guix appeals to?
<ams-hash[m]>Hello, what are some reaosons to use guix?
<jgibbons[m]>ams-hashGuix is more than a package manager. It's a tools that facilitates the four freedoms of free software by letting the user get the original source code. You can point it to source you modified and it can build the modified software for you. You can can instruct it to build a tarball of the software so you can share it, modified or not.
<unmatched-paren>hm, maybe i shouldn't be trying to replace the ldc bootstrap chain with gdc:
<unmatched-paren>Currently work is under way in upstream DMD to convert all these methods into Visitor classes as part of the 2.065, 2.066 releases to allow work to begin on porting the D Front-end to D. So expect the convention and names of these files to change in the near future.
<unmatched-paren>nobody cares about bootstrapping :(
<unmatched-paren>to allow work on **porting the D Front-end to D**
<apteryx>ams-hash[m]: the ease of managing heterogenous software, transactional rollbacks, distribution-agnostic are some
<apteryx>its growing collection of high quality packages is another one
<singpolyma>unmatched-paren: I mean, I remember the days where no one considered your language a real thing until you had a primary self hosting implementation
<jgibbons[m]>ams-hash: You can also use guix design a distro with exactly the packages you want.
<unmatched-paren>singpolyma: so according to that definition python has never been a real thing :)
<unmatched-paren>obviously there are so many benefits to self-hosting a compiler, but really we need at least one non-self-hosting compiler
<unmatched-paren>D has THREE compilers (plus one experimental toy compiler); that's the most viable compilers i've seen for any semi-modern language
<unmatched-paren>i wonder why we don't have DMD? it was nonfree for ages, but isn't anymore
<unmatched-paren>(by DMD, i mean the Digital Mars D compiler and reference implementation of D, not the previous name of the shepherd :))
<singpolyma>unmatched-paren: I think python/ruby/js taking off is when talking about self hosting stopped being so essential to many people
<unmatched-paren>also perl, which has existed for longer than python...
<singpolyma>Every self hosting compiler has to be built by a non self hosting compiler though, the first time
<singpolyma>Sure, but I don't think it's popular to consider Perl a language for serious work ;)
<unmatched-paren>sadly some compilers have lost their really old sources, for example FPC
<unmatched-paren>(FPC's old sources only work on m68k and incredibly old x32 processors, so i doubt they'd be actually useful...)
<unmatched-paren>so that's why i'm writing a pascal compiler
<unmatched-paren>-.o.-
<singpolyma>Pascal-on-Guile?
<unmatched-paren>not on guile, on D
<unmatched-paren>i don't like dynamic typing :)
<singpolyma>Just wait until I get typescript-on-guile going then ;)
<ams-hash[m]>so its kinda like nix but without systemd?
<singpolyma>ams-hash[m]: guix is nix using scheme instead of a DSL. And divergent evolution and philosophy
<jgibbons[m]>ams-hash: I think it was forked from nix.
<ams-hash[m]>singpolyma: Im not sure what either of this means? nix scheme and dsl
<unmatched-paren>ams-hash[m]: ftr, i'm pretty sure that systemd not being used is not a protest against systemd itself, just that shepherd is superior :)
<ams-hash[m]>unmatched-paren: Yea, i dont hate systemd. Just prefer others
<unmatched-paren>it's badly designed, but some people have this idea that it's pure evil :)
<singpolyma>ams-hash[m]: scheme is a programming language. Nix invented its own language for packages and configuration, guix uses scheme instead
<ams-hash[m]>Oh ok
<unmatched-paren>(scheme "looks" (like-this) "many people" (are "frightened") "by the unorthodox" `(syntax but ,(it is a pretty simple language)))
<unmatched-paren>singpolyma: the pascal compiler will be a means to get the nim compiler done, since it was originally written in pascal
<ams-hash[m]>Thanks for hte help everyone
<unmatched-paren>nim has really good macros; they're as powerful as lisp ones from what i've seen
<singpolyma>unmatched-paren: isn't him dynamically typed?
<unmatched-paren>no
<unmatched-paren>nim looks like python, but has a strong type system, powerful macro support, and compiles down to c
<jackhill>unmatched-paren: thanks for working on this bootstrapping work! Quite important!
<singpolyma>Ah, ok. I never looked hard because I don't need another lang at that power level, but cool
<singpolyma>Another reason to do C-on-Guile then. Hehe. Someday maybe
<unmatched-paren> https://nim-lang.org has a demonstration of both a simple macro and typing
<singpolyma>C-on-Guile doesn't really help my goals much, so it's more like a "do this as a capstone" I guess
<unmatched-paren>MesCC is effectively C-on-a-subset-of-Guile, isn't it?
<morenonatural>hey, y'all
<unmatched-paren>o/
<singpolyma>unmatched-paren: I mean adding languages to the compiler tower
<unmatched-paren>we could reimplement the entire GCC suite in Guile! :P
<ams-hash[m]>I have an error when booting thr usb
*ams-hash[m] uploaded an image: (115KiB) < https://libera.ems.host/_matrix/media/r0/download/matrix.org/vGtFzSxLtBkVhUYZARMODLJb/20220303_204321.jpg >
<ams-hash[m]>I've had it open for a few minutes and it still hasn't loaded
<singpolyma>unmatched-paren: I think higher level languages are more worth adding, to be honest, because the point is to get a richer polyglot calling convention
<unmatched-paren>you mean to GCC? or to the list of compilers in Guile?
<morenonatural>so I have some CentOS boxes with limited internet connectivity (can use laptop as proxy ok) with lots of space under specific mount pointn… can I use guix to get running sw (say neovim or clangd) under a prefix (say /mnt/lotsaspace/usr/local) that will work on these boxes? should I
<singpolyma>unmatched-paren: to guile. GCC mostly has really low level stuff
<unmatched-paren>GCC used to have a pascal compiler, but it's been dead for... ages
<unmatched-paren>ams-hash[m]: sorry, i won't be able to help you with that (just so you don't think you're being ignored)
<unmatched-paren>rekado could never get GPC to compile
<singpolyma>unmatched-paren: so in this case your goal is to get a pascal compiler just good enough to bootstrap FPC, yeah?
<unmatched-paren>yes
<unmatched-paren>FPC uses some quite advanced features tho...
<unmatched-paren>GPC wouldn't have worked anyway, since the pascal ecosystem is... uh... somewhat messy
<singpolyma>Pascal... Advanced features ... Does not compute ;)
<singpolyma>I only ever used turbopascal, haha
<ams-hash[m]>unmatched-paren: Alright
<ams-hash[m]>It's ok
<singpolyma>Does FPC have like post Delphi crazy OOP stuff or whatever?
<unmatched-paren>so there's this proprietary compiler called Delphi for Windows, by the same people as Turbo
<unmatched-paren>yes
<singpolyma>Rignt
<unmatched-paren>that is... the problem :)
<unmatched-paren>delphi is laced with a gazillion proprietary extensions that eclipse the actual featureset of standard pascal
<singpolyma>For sure. Standard pascal was not really designed for industry
<unmatched-paren>fpc has a 100% delphi compatibility goal :)
<unmatched-paren>which is a Bad Problem
<unmatched-paren>'you will not get to nim today' :)
<unmatched-paren> https://xkcd.com/1133/
<unmatched-paren>So basically delphi/fp is like a separate language
<unmatched-paren>GPC support(s|ed) Extended Pascal, which is nothing like Delphi
<unmatched-paren>so that wouldn't have worked even if it compiled
<unmatched-paren>I was going to try doing an interpreter, but there are some things that are quite hard to interpret
<unmatched-paren>for example inline asm
<unmatched-paren>because fpc uses some inline asm, we cannot, for example, bootstrap it for one arch and then use its JVM backend to boot it for everything that Java supports
<unmatched-paren>The JVM does not apparently support native asm
<unmatched-paren>presumably because of its misguided goal to 'compile once, run anywhere
<unmatched-paren>'
<alethkit>raghavgururajan: Turns out the issue was that grub didn't have the lvm and luks modules preloaded
<alethkit>Works great now!
<Michal_Atlas[m]>Hello, I'm writing something with sockets and was trying to not have guile crash when one is closed and I write or read from it. Found with-exception/throw-handler, but can't seem to get how they work, and can't seem to find answers in the manual. i get the thunk and handler part, but have no idea, when or where evaluation continues, if it even does so, or what part the handler really has to play in that. cause right now it seems to just
<Michal_Atlas[m]>exit with no backtrace no matter what the handler does. any help is much appreciated
<unmatched-paren>Michal_Atlas[m]: #guile is probably a better place to ask general guile-related questions
<ams-hash[m]>can anyone help with the error i am having?
<unmatched-paren>ams-hash[m]: did you set it up with encryption or anything like that?
<Michal_Atlas[m]>oh, alright, sorry
<ams-hash[m]> https://ftp.gnu.org/gnu/guix/guix-system-install-1.3.0.x86_64-linux.iso.sig
<ams-hash[m]>No i just downloaded this iso and flashed it to my usb
<unmatched-paren>hm, right
<unmatched-paren>maybe try this one? https://ci.guix.gnu.org/search/latest/ISO-9660?query=spec:images+status:success+system:x86_64-linux+image.iso
<unmatched-paren>this is probably less likely to work tbh
<unmatched-paren>because it's an unstable image
<unmatched-paren>but we could try
<ams-hash[m]>is this the "latest" not "standard" image?
<ams-hash[m]>because i tried first with the latest, with no success. then i tried with standard
<unmatched-paren>oh, sorry, i have no idea what to do then
<unmatched-paren>i suspect that BIOS Error up at the top
<unmatched-paren>no idea what it's trying to tell us though :)
***ChanServ changes topic to '!! Website, CI, MUMI down for maintenance !! GNU Guix | https://guix.gnu.org | videos: https://guix.gnu.org/blog/tags/talks/ | bugs & patches: https://issues.guix.gnu.org | paste: https://paste.debian.net/ | Guix in high-performance computing: https://hpc.guix.info | This channel's logged: https://logs.guix.gnu.org'
<apteryx>berlin is going to be down while we attempt to hop from root file systems
<vagrantc>oh, it is down
<Guest21>Hi, anyone knows what "error: unattended-upgrade-service-type: unbound variable" means? https://paste.debian.net/hidden/31466f10/
<nckx>Guest21: Just that there's no such variable defined. You need to add the ‘admin’ service module to the list of imports at the top.
<nckx>ams-hash[m]: ‘this iso’ — but you mention the .sig file name. You didn't write that to the device, right? (Just checking…)
<nckx>I've done sillier things.
<ams-hash[m]>nope, it was just hte iso. it just downloads as a sig i guess. (idk anything about sig files)
<ams-hash[m]>I've had errors like missing my wifi drivers or bluetooth on other distros but it always lets me continue
<Guest21>nckx thanks!!
<Noisytoot>Does bordeaux.guix.gnu.org still work?
<nckx>Yes. It's fully independent of berlin.
<nckx>ams-hash[m]: Right, missing wifi/bluetooth drivers are indeed very unlikely to be the problem here.
<nckx>If nobody's suggested it yet, try booting with ‘nomodeset’ on the kernel command line (what follows ‘linux’ when pressing ‘e’ on the Guix boot entry in GRUB).
<nckx>KMS (the ‘modeset’ to which it refers) has trouble with some (particularly AMD) GPUs.