<terpri>https://askubuntu.com/a/1074499 hm, maybe i should just put guix on a terabyte ssd for now and see if i can pcie-passthrough a separate nvme ssd in the future. i don't need *that* much space now that i have a sata hdd for large archives and backups, just getting a bit cramped with guix + lots of giant monorepos under $HOME on a half-terabyte drive
<terpri>it's also a bit strange that the uefi system partition needs to be so large, when all it really needs to contain is grub (~10 MiB)
<nckx>I see. Apparently the minimum size on 4K-sector drives is ~260M(!), up from the previous 32M (which mine is). That's wasteful indeed. But it's a requirement of FAT32, not something we can change.
<terpri>at that point one might consider using efistub to boot linux directly from efi-space :p though i suppose you'd still need grub for menus etc.
<nckx>Apparently some (most?) machines can boot FAT16 and even FAT12, making the minimum size 32K 😛 Go nuts. (GRUB is 128K, not sure where you got ~10M).
<sneek>Welcome back peanutbutterandc, you have 2 messages!
<sneek>peanutbutterandc, nckx says: Look at the ‘'("FOO" ":" = ("BAR")))#t)))’ line. This returns #t and ends the procedure. Then, under that, you try to return #t again outside of the procedure body. It's basically gibberish at that point. If you fix that up it should run fine. Good luck!
<sneek>peanutbutterandc, nckx says: You don't have to use emacs but I recommend using an editor that at least highlights the matching ‘(’ when you hover over a ‘)’. Highly-paid professional Scheme programmers don't count parentheses; they ignore them.
<peanutbutterandc>nckx, I've got that package definition working and have figured out some more about the nature about the bug. BTW, emacs does not highlight matching parens for me when I am reading (not writing). guix installed emacs. `emacs -nw`... strange (vim does, BTW)
<peanutbutterandc>It turns out, (wrap-programs defined in the package definition do not over-write each other. However, wrap-program does over-write if there already was a 'wrap phase in the build system. And that is the problem.
<peanutbutterandc>I will be putting up the package definition to prove it in a few minutes. I'm trying to create a stand-alone version, too.
***rEnr3n1 is now known as rEnr3n
<peanutbutterandc>Okay, for some reason I can't have attachments on my email... so the bug report has not yet been filed. But here is a stand-alone definition of the package that can be used to see the bug like so: `guix build --verbosity=2 --file=this-definition.scm` https://termbin.com/on7c
<abralek>@andrew it depends, but you need to run it anyways. If you use gnome you can add it to aurostart, if you use xsession you can run setsid shepherd from the . xsession
<rndd>hi everyone! i'm trying to build emacs from tarball in guix env. during configure i got this error "The following required libraries were not found: gnutls". but i pul "gnutls" in manifest. am i missing something?
<nefix>hello! I've created a docker image with docker system docker-image. How can I login as a specific user: the manual says to login with 'docker exec -ti $container_id /run/current-system/profile/bin/bash --login' (it logins as root)
<nckx>zzappie: What does the package want to do with git? We almost always solve it by patching/otherwise disabling calls to git (many packages use something like VERSION="$(git describe)"; we just substitute ,version directly).
*nckx is an old and must accept that gits are the new tarballs. At least it discourages code drops.
<zzappie>nckx: I aree. New projects are wild in terms of building workflows.
<nckx>raghavgururajan: I can't completely deny that 🙂 I didn't change it just to change it (I'm not that daft), but didn't indent it back to the original after playing with some other flags, it's true...
<nckx>zzappie: Oh, your paste vanished already, I was going to modify it.
<zzappie>im new to autotools, but despite its precieved fragility projects using autotools are the easiest to build from my experience.
<nckx>raghavgururajan: The running ghc build does use 24 cores sometimes. Other times it's limited to ~5, due to dependencies between files. Nothing you can do about that. It's using as much as it can.
<nckx>DesperateKimapr: I thought you were way past this but did you create a ‘BIOS Boot’ partition? It can be small (~1 MiB, it fits in the alignment gap at the start of modern discs) but it has to exist.
<nckx>The blocklists error sounds like it's using the right drive but can't continue due to this missing partition. The succeeding one sounds like it might succeed because it's installing to an irrelevant drive. Although that's guesswork.
<nckx>Not to run away from a KimaprInNeed but I'd be very happy if you could continue that conversation 🙂 Seems like you already know their situation and I should really get to work.
<raghavgururajan>> DesperateKimapr: sdb because sda is guix installation image on flashdrive
<raghavgururajan>It is a problem. You cannot use sdb in boot-loader config, because, it next reboot (without any attached devices), you HDD/SDD will become sda. Then GRUB will grub will look for sdb which is not there.
<raghavgururajan>See, the internal HDD will always be detected first and will be assigned as sda. But sometimes, with other USB devices attached, it could be assigned sdb, but upon reboot, it should be fixed.
<raghavgururajan>If you are installing guix on external HDD and never gonna attach internal HDD, then reboot until external HDD is assigned sda and use sda in bootloader-configuration.
<raghavgururajan>But if you are going to attach and use internal HDD along with external HDD, then reboot until you get sda for internal hdd and sdb for external hdd; and use sdb in bootloader-configuration.
<DesperateKimapr>dima-guix (dima-files is captured into image file on the first partition and deleted) is my previous guix-system installation
<raghavgururajan>Delete non-critical partitions (including previous guix installation) with cfdisk and redo lsblk.
<DesperateKimapr>dima-guix-new and dima-files-new are partitions of the new installation, on btrfs for fault tolerance, the dima-files that is right now there is a dummy partition just to let the old installation boot
<apteryx>bah, my autossh service on the remote has stopped or something :-/
<peanutbutterandc>question: If I use #:modules in arguments, does it behave as if ONLY the explicitly declared modules are imported? I ask because a working package definition that I added #:modules ((modules here)) just started throwing 'Unbound variable: modify-phases' error
<nefix>nckx: I have no idea what are you suggesting xD
<nckx>‘strace -p PID’ will print a live log off all system calls performed by a process such as tar. It's a cheap & easy way to get a rough first impression of what's happening inside the programme without setting up a debugger.
*raghavgururajan wonder why we don't make ci.guix.gnu.org to point to both berlin and bayfront, via load-balancer or something.
<nckx>nefix: Is it producing new lines the entire time? At least it's not frozen (and it doesn't *seem* to be looping, not tighly at least). Use -s 1000 to show more string content.
<raghavgururajan>May be we can deploy berlin's CI at berlin.guix.gnu.org (like bayfront.guix.gnu.org) instead of ci.guix.gnu.org. And then use bayfront.guix.gnu.org and berlin.guix.gnu.org as mirrors of ci.guix.gnu.org
<nckx>nefix: A tool to generate disc images from a directory tree. The exact tool isn't important, but that it would run directly on the build host. Guix currently uses an ‘elegant’ but slow method: it actually boots the system you've built in a VM, then creates the images from inside of it.
<peanutbutterandc>or maybe I should just have procedure call on one line, and each argument separate
<nckx>peanutbutterandc: Are you asking whether to move or how to move? I agree with ngz. You simply move the entire package definition to groff.scm 🙂 You might need to add some module imports to groff.scm.
<apteryx>the code base can be used for inspiration
<peanutbutterandc>The more I spend time with guix, the more I realize it is way more resilient that I thought. The first thing that made me realize that was the different profiles for `guix` itself and guix installed packages... and now things like these
<nefix>and neither can't I specify that user's .bashrc and I have to use the skeleton field?
<pancak3>nckx: is this name less confusing? I'll compromise on butter, but not pancakes
<nckx>Don't drop your butter on my account. I just knew this would happen one day.
<pancak3>honestly, It would be cool to have a built in guix user dotfiles and package deployer. I wouldn't want to packages to be system packages because then I can't remove them without a reconfigure. I'm not sure how deploying the dotfiles would work (a lot of guix stuff is read only and I don't want that). But if we had those two things, I could run an installer from a usb, and instantly have a fully configured computer
<nckx>peanutbutterandc: That's what the log is for 🙂 Adding ‘public’ is pretty nckx, I don't think many people do that.
<pancak3>peanutbutterandc: installing make is a pain. I have slow internet. It's actually mostly the downloading that I hate. If I could download all the packages ahead of time and have them on the USB installer, that'd be ideal. And then it'd install those packages, but not under the system profile. So I could run guix install git, and it would be like "oh I already have it" but it wouldn't be in the system path
<pancak3>is there a way to install something but not under a profile?
<pancak3>apteryx: I was thinking of that but it would be nice to also have these tools accesible from the boot media. Having emacs in both the installer store and on an archive on the installer seems like a waste of space. Maybe later I'll look into guix copy to see if I can poke things until they do what I want
<janneke>building a system downloads hundreds of rust packages -- never seen that before, did i miss something/what could have happened?
<KimaprOnPhone>I think i'll remove the btrfs root partition and create an ext4 instead
<raghavgururajan>KimaprOnPhone, Okay. Please delete all partitions except sdb1, which contains your important. Ping me after doing that.
<nckx>pancak3: You wouldn't store an archive on the boot medium. You'd make sure the items you want are in the medium's store (using GC-ROOT-SERVICE-TYPE or whatever; if you want them to be available at installation time just add them to PACKAGES), then copy them from there to the target system.
<nckx>raghavgururajan: Could janneke's question be related to your changes?
<raghavgururajan>nckx: I was thinking about it, but my new rust packages are only referred in librsvg-next
<pancak3>nckx: but how should I do the copy to the target system?
<raghavgururajan>nckx, janneke: It could be that graphviz (used by guix) depends on librsvg, which in-turn depends on my new packages.
<nojr>Hi, I just noticed that python-django got updated to 1.11.29 but there's still no indication that django3 will be available... is there a reason for this? is there something about Django that's making it hard to package?
<bluekeys>Hi guix. How do i update a single program to another version?
<nckx>(I always forget if ‘guix upgrade’ takes packages or regexes so I cheated.)
<KimaprOnPhone>raghavgururajan: I deleted the previous root partition and created a ext4 partition
<nckx>pancak3: Er, that's out of the scope of my answer, I just wanted to point out there's no need for a redundant opaque archive on the live medium itself.
*janneke tries reverting to august 11 (short lived "favourite" commit 12bb72fb0f8b8c35d46e439ba79f0a3a9f7703db) and rebuilding -- possibly "only" a substitute is missing
<raghavgururajan>KimaprOnPhone, Okay. Please also delete previous boot partition and re-create it for 1MB with TYPE "BIOS Boot", in cfdisk.
<nefix>is there any reason to keep libvirt at 5.8 and not upgrading to 6.x?
<nckx>I'd use gc-root-service type in the *destination's* system.scm, although that will keep upgrading those packages at every reconfigure. But why would you not want that if your point is to ‘pre-seed’ users running ‘guix install’ later.
<nckx>If you want a one-time copy at installation time, that's probably a bit more complex.
<pancak3>nckx: ya, that's why I said I might look into guix copy later. Right now it looks like it only copies the store from one machine to another, but maybe I can extend it to accept paths for a one time copy
<NieDzejkob>nefix: it's probably just that no one updated it yet
<KimaprOnPhone>I checked and it was already of "BIOS boot" type, and it is 4 megs
<NieDzejkob>nefix: could you bump the version and hash, and check if it still works?
<nckx>I've never actually looked at how ‘guix system init’ does this. It has to keep the DB on the target system in sync, so it's not just a blind cp -R.
<KimaprOnPhone>Actually i did it twice, first right after the big data partition, then i deleted it, created bios boot partition on its start and after that i created it again next to new bios boot partition. at
<apteryx>I think we should make this message more obvious: To complete the upgrade, run 'herd restart SERVICE' to stop, upgrade, and restart each service that was not automatically restarted. => The following new services: x, x and x were started. Existing services must be restarted manually.
<KimaprOnGuixInst>Installing for i386-pc platform. /gnu/store/pc8whppnq03ab3naw21zjq5w9l6nx2r9-grub-2.04/sbin/grub-install: error: unable to identify a filesystem in hostdisk//dev/sdb; safety check can't be performed.
<ss2>oh, finally got it.. I cleaned my bash profile. So whenever I startx (with i3), and `eval "$(guix package --search-paths=prefix)"', the i3 session is broken such that themes and preferences are not found anymore.
<ss2>disabling it lets it work again, but only after moving ~/.guix-profile and ~/.config/guix to another name.
<KimaprOnPhone>The computer is sometimes used by people besides me, and they use Windows on the internal hdd
<NieDzejkob>I don't know what to put in the version field, though
<nckx>KimaprOnPhone: Basically, once there's a GRUB on your disc that actually loads, you can modify its grub.cfg to run ‘configfile /path/to/guixs/grub.cfg’ and never touch it again. You can configure Guix to leave it alone.
<KimaprOnPhone>On this machine - yes, the guix installer and my guix system on efi (with uefi duet)
<nckx>It doesn't matter how you install it. Use a different distro's live CD. Whatever.
<nckx>raghavgururajan: Good point, although the Guix installer is generated by grub-mkrescue which uses a lot of tricks (and some partition table magic that's hard to do on a ‘real’ system) to boot on as much as possible.
<bluekeys>I'm running guix pull and then guix upgrade mailutils but I keep getting a warning to consider running guix pull. How many times will guix ask me? Does it not just pull to the latest?
<nckx>Gah, I have to go again, sorry. But honestly I don't understand why you can't wipe all partitions you created for Guix, create a regular ext4 one for Guix (and a FAT32 EFI System partition if you don't have one yet), download a random GRUB2 EFI binary (or build one), boot that through DUET, and point it to Guix's grub.cfg. Configure Guix to never install its own grub through the (installer #~(const #t)) trick. Wouldn't that work?
<KimaprOnPhone>Some info: DUET boots on the flashdrive guix installer is on right now, but it didnt boot on the hdd with my systems. This could be because i installed DUET differently for each one (I installed DUET to flashdrive from Windows as it was the only thing i could boot, for external hdd with my systems i used guix installer instead, roughly following
<lfam>I noticed that `guix package --verbosity=9` doesn't print the URL of things it is downloading, which makes it difficult to deal with "guix substitute: error: host name lookup error: Name or service not known"
<lfam>Is that a recent change? I remember it showing this info