After dCore, Guix Core ?
In a moment of madness i started thinking about (nomad) BSDcore
Lol! Why not... Or this :
GNU
HURD Core
Rock'n ROLling Release
I got it run, but i'm face to a big problem. I can't install the first package.
First, instructions to make it "running"
I - MAKE GUIX "RUNNIG"
In a real file system (like /dev/sda mounted on /mnt/sda), extract the GUIX binary tar.
You got /mnt/sda1/gnu and /mnt/sda1/var/guix.
sudo mount /mnt/sda1/gnu /gnu
sudo mount /mnt/sda1/var/guix /var/guix
Then, with attached guix.tcz (just a few folders with some symlinks and a tce.installed script) , run :
tce-load -i guix.tcz
For information, my install script contains :
GUIX_PROFILE="`echo ~root`/.config/guix/current" ;
source $GUIX_PROFILE/etc/profile
addgroup guixbuild
chgrp guixbuild -R /gnu/store
chmod 1775 /gnu/store
builders=10 ;\
for i in `seq 1 $builders` ; do \
adduser -S guixbuild$i guixbuild ;\
adduser guixbuild$i guixbuild ;\
done
~root/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild &
guix archive --authorize < ~root/.config/guix/current/share/guix/ci.guix.info.pub
cd /usr/local/share/info
for i in /var/guix/profiles/per-user/root/current-guix/share/info/* ;
do ln -s $i ; done
This is okay.........BUT :
II - THE PROBLEM :
When i try "guix package -i hello", i got this error :
guix package: error: build failed: while setting up the build environment: cannot pivot old root directory
Guix use pivot_root, while TC mount rootfs on ram by the "/init" script.
pivot_root needs rootfs to be mounted on a real file system.
BUT, by "chance", TC does not use initramfs, but inird (core.gz),
witch IS a real FS.
Next, the /init script mount the RAM content as "/".
Theorically, if the init script
1 ) mount "/" on a real FS
2 ) mount RAM content in a real FS subfolder "/ram0" (for exemple)
3 ) Then first pivot_root to "/ram0"
This could work without breaking the bootstrap rcS. I hope
And make pivot_root available on TC...
If it's possible, it should be integrated optionnally as a custom boot code like this :
realrootfs="/dev/sda1".
If core developpers doesn't want to integrate this, that means Guix Core is finished, or need to fork TC
But before requests them for adding this great feature ("pivot_root compatibility"), we need to try by ourself, because we must overcome possible future problems.
(After all, maybe it will never work. Maybe.... Noooooo! It will!)
[EDIT] Removed attached extension due to forum policy violation. Rich