social.dark-alexandr.net

sss friendica
i decided to try guix on my old netbook as host system.
i downloaded i686 release, dropped it to usb and booted from it on my netbook.
next i tried to follow text ui installer, but at the begining during network configuration it failed (i have no dhcp server in my netwrok, and i do not want to create one just for guix installation). unfortunately guix does not allow to manually configure network via installer text ui, but it does allow to exit into root shell, so i decided to configure network by hand and retry installation via text ui. guix have some dhcp client, or maybe even more than this, "connmand" or something like this, which is looks like same shit as nwetwork manager, constantly trying to broke my network settings, i killed it. finally i am have working network. returned to text ui installer and restarted installation process. on network configuration step this network autoconfiguration shit launched again and broke settings again. so text ui installer is not an option without running dhcp server.
i started to read documentation. guix does have possibility to install it manualy. process is relatively simple. i need to do partitioning, configure network, next i need to mount root partition in /mnt root (which is unusual and not recommended as i know, as some utilities may incorrectly handle such mounts).
next step is turn on cow store on mounted partition to write /gnu/store changes, done. next i need to copy system configuration sample and edit it, also done. fortunately it is human readable and easy to understand, next step is "guix system init /mnt/etc/config.scm /mnt", which should deploy system, install and configure bootloader and kernel, good, i launched it. it started. lot's of things downloaded (i choosed minimal desktop template, as it is old netbook and i need lightweight base system), also i thought what 20gb partitioon is more than enough for this (preveously i had gentoo on 10 gb partition on this netbook), so, it took something like 6-8 hours (even for base system some programs building from source, for powerful pc it's ok, but on low end outdated netbook this is a problem), and when i next time looked at this netbook, it is finished. but, surprisingly i saw not "finished" and not "success" message, but "no space left on device" instead, cool, 20gb is not enough for basic minimal desktop.., ok guix, i decided it worth another try, i unmounted this partition, created larger one, and prepared to restart ( guix system init /mnt/etc/config.scm /mnt ), but not that quick, remember at the begining it was necessary to start cow storage on rw mounted filesystem ?, on filesystem which i had unmounted and destroyed, of course it does not worked with i/o errors, here i not sure if it is guix problem, or maybe kernel bug, but i have unmounted partition without any problem, guix cow storage is built on top of overlayfs and i think it should not allow me to unmount fs with mounted overlayfs on top of it, but this is tale for another time, for now, i have new clean partition, and guix store in broken state, now i decided to unmount all overlays attached to store, of course it is failing because it is mounted on filesystem which is not exists anymore, but wa have -l option for umount here, which often helps in such situations, so, umount -t overlayfs -l /gnu/store until none left, next starting guix cow storage again, commend return success, restarting ( guix system init /mnt/etc/config.scm /mnt ), i/o error, so i learned what i should try nixos next time on this netbook.

# # # #
Daniel friendica (via ActivityPub)
Do not discourage yourself if the firsts attempts haven't been good so far.
Since the first time I heard about GUIX seems everything but a simple distro to use. You should also considering that it uses only free software and your hardware might be a little be indigestible!

In the future GUIX will take an important role in the opensource ecosystem, I really look forward for when it will shine!
sss friendica
@Daniel i am not discouraged, i am already using guix as additional package manager on foreign host os and pretty happy with it, but installation process need to be improved a lot, especially for old hardware, but i think this is not a goal, also i am probably missed something...
sss friendica
@Daniel i think both main problems caused by building certain packages from source
1. lack of free space
2. too long install time

i have noticed what package are built with test suites and test suites launched, many packages may waste a lot of free space during self-testing, and it's perfectly fine, but it is undesired when you trying to deploy system on old low and machine.
Daniel friendica (via ActivityPub)
I see! So far I've tested Guix only as VM....
sss friendica
had another try, this time with large partition, so lack of space is not problem anymore.
failed again.
but now not because of failure during installation process, but because of guix limitations.
documentation say clearly what lvm for booting is not supported yet, ok, not a big problem for netbook with small storage and trivial enough storage layout, i am thought, but i was to naive about this, and to optimistic...
so, this time i am noted all problem encountered at previous attempt, and does workaround all of them.
but, as netbook is portable device which have possibility to be easy enough accessed from unauthorized unwanted users, storage must be properly encrypted, i am prefering for this task luks2, as it is the only encryption available which does support strong pbkdf - argon2id, why this is important is out of scope of this topic. fortunately luks is a linux subsystem which have good support across linux distributions, but with some exceptions. luks2 format is relatively new, also new pbkdf hashes, and some ciphers is not available in grub luks support, for now grub completely lack support of luks2 format.
so, not big dealm for this exact reason i using /boot on separate unencrypted fs in my init system (which is just simple bash script, but unfortunately here is none flexible enough initramfs generator to do all things i need, let's return to topic) i have done everything mostly same as on first attempt, described mount points in /etc/system.scm (including separate boot filesystem and luks encryption mappings, guix have good documentation for this, so this is trivial task), started installation process, this time fs had enough space, so installation process finished without any errors., fine, reboot attempt, failure.
i noticed what grub configured to load kernel from /gnu/store/..... which is obviously not in /boot filesystem, so, another limitation of guix is what it does not support separate /boot fs, and as grub does not support liks2 (yet?) this is blocker for me, but just to be sure, i have another attempt with single encrypted (luks2+argon2id) partition, of course it's failed to boot, but i wanted to be sure of it anyway.

conclusion: for now guix as host os is not viable option, but in future guix may be one of best linux based os (they also trying to adopt hurd kernel as well)