<jmd>ok. So at this stage I'm open to suggestions. How does one cross build guix? <tadni`>davexunit: I'm assuming said hobby project you mentioned earlier, was Sly? <sneek>davexunit, you have 1 message. <sneek>davexunit, rekado says: thanks for mentioning SRFI-64; will take a look. <davexunit>ugh, tried to package pidgin, ran into issues. <davexunit>libpurple is bundled with pidgin, and I'd rather it be separate. <davexunit>person on #pidgin tells me to build everything, and then make subpackages that pick out the right files for each <davexunit>why bundle everything together if your damn configure script can't be told which parts to build? <tadni`>davexunit: In any case, as long as it builds up the general software stack of Guile, it's a great asset. :^) <tadni`>Too, Sly is a VERY cool project. Probably my favorite Guile project, not tied directly to GNU Distro. <davexunit>tadni`: thanks. I'm just struggling a lot with rendering logic at the moment. been stuck in this rut for months. I need to come up with *something* that works well enough to release. <tadni`>In any case, I'm excited for the eventual 1.0 release. <tadni`>davexunit: First stablish/solidish release, in whatever case. <tadni`>Hopefully in a year or-so, I might be in a state where I'm able to start helping a bit. <jxself>Marking something as 1.0 makes it stable and solid? <tadni`>Say thing, with Guix, to a more substantial degree. <tadni`>jxself: Not always, but there typically is some convention in-place there. <davexunit>it has a connotation that it is feature complete to some degree. <jxself>Quick someone - Push a new tag into the git repo for 1.0 so Guix can automatically become stable and solid. :) <tadni`>davexunit: Connotation, is the word I was looking for. *davexunit goes afk for a bit <tadni`>davexunit: Ah, okay their music man. <tadni`>Too bad Linux wasn't named Freax or whatever it was going to be. We could had "freax and guixs". <tadni`>If the Hurd ever gets rewritten in any major way, it should be named "Nurd". :^) <jxself>nhurd but the h would be silent? <tadni`>jxself: Oh, that's pretty good actually. <tadni`>Doesn't read as nicely has nurd, but would the recursive acronym work still? <jxself>That's why I thought keeping the h would be good. <tadni`>jxself: Yeah, I figured that was your reasoning -- but does it actually. <tadni`>Because it's recursive on the H, which would have to be the first letter? <nkar>after running 'guix init' and rebooting, I'm getting "waiting for partition 'foo' to appear". any idea why guix fails to recognize the name of the partition? ***jxself_ is now known as jxself
<Sleep_Walker>guix system: error: failed to load operating system file '/guix/etc/config.scm': (keyword-argument-error #<procedure lsh-service (#:key lsh host-key interfaces port-number allow-empty-passwords? root-login? syslog-output? x11-forwarding? tcp/ip-forwarding? password-authentication? public-key-authentication? initialize?)> "Unrecognized keyword" () #f) <civodul>so how's this attempt to use LVM & co.? <nkar>civodul: I encrypted /home instead of / and tried to boot, but guix fails to find the root partition. In parted, I assigned the "rootfs" name to the mentioned partition and added the 'label line to the guix config. what's wrong? that happens after I 'set root = (hd0,gpt3)' in grub. otherwise, grub complains that it cannot find the store and refuses to boot entirely. <Sleep_Walker>civodul: I prepared initrd with lvm2 and attempted to prepare it from scheme script, but didn't success <Sleep_Walker>so I shrinked LVM2 partition and prepared separate one for now *civodul tries to reproduce the encrypted root bug in a VM <Sleep_Walker>default kernel, separate boot (still I had to copy manually), it seems to work :) <civodul>root file system not found, i presume? <Sleep_Walker>I'll try to have a look on backtrace, but I need to adjust my qemu <civodul>normally, if the initrd script goes wrong, you get a Guile debugger prompt <civodul>jmd: trying to use the bootstrap Guile on ARM to build Guix? <jmd>That was one thing I tried. <civodul>for the second half, you need a working ARM machine with Guile + Guix installed <civodul>a "real" dynamically-linked Guile, not the bootstrap one <jmd>I was hoping I could use Guix to achieve that. <civodul>yeah, but there's a chicken-and-egg problem <civodul>it's better to to "apt-get install guile" on that machine, or whatever <nkar>civodul: what do you mean by that exactly? <jmd>My "whatever" was "guix package -i guile" <civodul>jmd: yes but Guix is not yet available on ARM, which is precisely what you're trying to address :-) <civodul>you could in theory cross-compile a dynamic-linked Guile, and then transfer its closure to the ARM machine <civodul>but i'd personally rather build it natively on the ARM machine <jmd>There were several. I think the first was that it was missing a threading library. <jmd>I solved that one somehow. <jmd>Then guild simply crashed when passed -L . <jmd>The real issue is that Guile has so many dependencies and so many build time options. <jmd>I'm still rather puzzled why, to use the bootstrap compiler, I have to put a symlink from /gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-cross-armel-linux-gnueabihf-2.20 to the compiler prefix. Is this intentional? <civodul>again, the bootstrap compiler is not meant to be used this way <civodul>it only makes sense as part of the Guix bootstrap process <civodul>you need to use the distro's compiler <jmd>The distro doesn't have one. <jmd>Most ARM deployments don't have native compilers. Everything is cross compiled. <civodul>then honestly, i think you'll have to install a distro with a compiler or something <civodul>machines like the RPi or the GuruPlug have no problem building things natively <jmd>I have no idea where I would get a native compiler. <civodul>Raspbian/Debian, for instance, have all that <jmd>But for the record, the bootstrap compiler seemed to work without problem. Guile is the major stumbling block. <civodul>then perhaps you could try to use the bootstrap compiler to build Guile natively? <civodul>that means: libgc, libunistring, and Guile <civodul>there's no guarantee that the compiler will manage, but... <jmd>The compiler seemed to manage. <jmd>The resulting guile runs ok for simple stuff, but again guild -L . guix/pki.scm segfaults. <civodul>guile -c '(dynamic-link "libgcrypt")' segfaults i suppose? <civodul>could you compare "ldd /.../libgcrypt.so | grep libc" and "ldd $(which guile) | grep libc"? <civodul>well, ok, try with readelf or something <civodul>needless to say, that's more tricky :-) <civodul>did you build libgcrypt by yourself? <nkar>civodul: i was referring to <civodul> root file system not found, i presume? <jmd>nitrogen6x:~/guile-2.0.11.94-d1447$ readelf -a /usr/local/lib/libgcrypt.so.20 | grep RUNPATH <jmd> 0x0000001d (RUNPATH) Library runpath: [/usr/local/lib] <jmd>nitrogen6x:~/guile-2.0.11.94-d1447$ readelf -a libguile/.libs/guile | grep RUNPATH <jmd> 0x0000001d (RUNPATH) Library runpath: [/usr/local/lib] <jmd>They seem to be the same. <civodul>nkar: i mean that early kernel panic is likely because the root file system was not found <civodul>jmd: make sure to run "make install" in Guile, and to use the installed Guile <civodul>then there may also be /etc/ld.so.conf, etc. <civodul>oh, so can you get a backtrace when it segfaults? <jmd>I will try building Guile again. <jmd>Ah yes. I get checking whether libunistring was built with iconv support... no <jmd>configure: error: No iconv support. Please recompile libunistring with iconv enabled. <jmd>Even though, I most certainly DID build libunistring with iconv enabled. <jmd>I can't remember how I solved this yesterday. <Sleep_Walker>I collected log from serial console but there is nothing interesting, just that init ended <Sleep_Walker>can I tell the guile init script that it should redirect output to /dev/kmsg? <Sleep_Walker>1] guix root filesystem lacks /sbin/init, which is default value for init= kernel parameter <iyzsong>Sleep_Walker: I suppose you are looking for /run/booted-system/boot <alezost>Sleep_Walker: a kernel should be run like this: linux /gnu/store/…-system/kernel/bzImage --root=<device> --system=/gnu/store/…-system --load=/gnu/store/…-system/boot <Sleep_Walker>aha, boot-system may be the function which will take care of rest <nkar>do I need to re-initialize if I want to change /etc/config.scm on a standalone system? <nkar>or is there a better way? <DusXMT>nkar: # guix system recofigure /path/to/config.scm <nkar>DusXMT: and then just reboot, right? <nkar>DusXMT: I got "/boot/grub is not readable by GRUB on boot. Installation is impossible." what can I do about it? <nkar>then, "failed to install GRUB on device '/dev/sda'" <DusXMT>nkar: Are you running that from the GNU system (the one you're trying to reconfigure), or from a different one? <nkar>I'm using a usb image. the system was init'd, so I just mounted all the partitions again to /mnt/something and ran the command as you suggested <nkar>I have a separate partition for /boot maybe that's the issue... <nkar>one for /home, rootfs, and a grub partition (2mb). <nkar>I also switched from labels (didn't work) to /dev/partition <DusXMT>nkar: The command I suggested was to be ran from the running system, not the USB image <nkar>so, re-init'ing is the only choice, right? <nkar>I wonder why 'labels fail to work... <DusXMT>nkar: Is the system not bootable? <DusXMT>Oh, sorry, I read what you said earlier now <DusXMT>Yes, I think it is, unless you can chroot into the system somehow (you'll need to create the links in /run manually) <nkar>okay, I'll just re-init, I guess <nkar>also, I'm always getting this error after 'init': in procedure system=async-mark: thread has already existed (with substitutes) <nkar>DusXMT: so, after switching from labels to devices and reinit'ing, I was able to boot. though, I needed to add set root=(hd0,gpt3) in the grub config (the 'e' key) and boot with 'f10'. is it expected? <DusXMT>nkar: sorry, you'll have to ask someone else, I haven't actually touched a running guix system in a while... but I don't think it is, it should look for a key file and determine which partition to boot from automatically... <nkar>okay, thanks for your help! <civodul>nkar: since you tried with a separate /boot, would be nice to email bug-guix for that <nkar>which issue should I report? the 'label one? <civodul>i suspect GRUB assumes that the root is where grub.cfg is, but that doesn't hold when /boot is separate from / <nkar>okay, I'll open a ticket <nkar>ext3 everywhere, which gets mounted using ext4 <civodul>you should try the (gnu build file-systems) code in the booted system <civodul>specifically, find-partition-by-label <civodul>just do: sudo ./pre-inst-env guile -c '(use-modules (gnu build file-systems)) (pk (find-partition-by-label "rootfs"))' <nkar>./pre-inst-env? so, do I need to clone guix for that? <civodul>no, but make sure its modules are in the search path <civodul>"guile -L /run/current-system/profile/share/guile/site/2.0 -C -L /run/current-system/profile/share/guile/site/2.0" should work as well <nkar>sneek: later tell civodul you mean "guile -L /run/current-system/profile/share/guile/site/2.0 -C /run/current-system/profile/share/guile/site/2.0/gnu/build/file-systems.scm"? (pk (find-partition-by-label "rootfs")) returns #f. <nkar>where's the shutdown command? <DusXMT>I think shutdown is sysvinit specific <ijp>☑ solve halting problem