2018-03-12 18:39 GMT+01:00 Thorsten Wilms <[email protected]>:

> Hi!
>
> Thanks to mbakke in #guix, I managed to chroot from my comfortable Ubuntu
> into the rather naked Guix SD installation, with a few things working,
> though it ended with a "cannot pivot old root directory".
>
> Maybe someone here can improve on it; otherwise see it as a rough note
> about the possibilities and limitations.
>
> Given a Guix SD on /dev/sdb2:
>
> ````
> sudo mkdir /mnt/guixsd
> sudo mount /dev/sdb2 /mnt/guixsd
> cd /mnt/guixsd
> sudo mount --bind /dev dev
> sudo mount --bind /proc proc
> sudo mount --bind /sys sys
> sudo chroot /mnt/guixsd /run/current-system/profile/bin/bash
> => logged in as root, no commands available
> source /etc/profile
> => at least basic shell commands work, as does `guix package -s banana`
> (yes, that does find something!)
> ````
>
> ````
> # su thorwil
> $ guix package -i emacs-bash-completion
> bash: guix: command not found
> $ source /etc/profile
> $ guix package -i emacs-bash-completion
> guile: warning: failed to install locale
> warning: failed to install locale: Invalid argument
> guix package: error: failed to connect to `/var/guix/daemon-socket/socket':
> Connection refused
> $ exit
> ````
>
> Oops, starting guix-daemon:
> ````
> # guix-daemon --build-users-group=guixbuild &
> [1] 4347
> # su thorwil
> $ source /etc/profile
> $ guix package -i emacs-bash-completion
> guile: warning: failed to install locale
> warning: failed to install locale: Invalid argument
> accepted connection from pid 4350, user thorwil
> substitute: guile: warning: failed to install locale
> substitute: warning: failed to install locale: Invalid argument
> substitute: updating list of substitutes from '
> https://mirror.hydra.gnu.org'... 100.0%
> The following package will be installed:
>    emacs-bash-completion        2.0.0 /gnu/store/7irxjifw4m8sj0if2nj
> 0r26vf0n0imsj-emacs-bash-completion-2.0.0
>
> substitute: updating list of substitutes from '
> https://mirror.hydra.gnu.org'... 100.0%
> The following derivations will be built:
>    /gnu/store/z55j7zi1hgzyikbmv5gpnbv6sw49j6kw-profile.drv
>    /gnu/store/yli3x8jscrcy4vicjvqlcd7z2cnyzc9q-gtk-im-modules.drv
>    /gnu/store/sk4l43zrsjjgrnvbwcayf2lm484pnqxd-fonts-dir.drv
>    /gnu/store/kk4yd0k0g30fmqwnmrmqv3ygnvl8s2fw-info-dir.drv
>    /gnu/store/hffz6p320akp7sbqskxrdlxjslld5qpg-gtk-icon-themes.drv
>    /gnu/store/ac501lz2zg8dc51acdcz457fr32r6r0c-xdg-desktop-database.drv
>    /gnu/store/2gjkjjrbv8x3xx6xgma2wcaq3xga8wha-xdg-mime-database.drv
>    /gnu/store/0mxc3m4l8n7l2h5p95s4cmfzhwhqpjbc-ca-certificate-bundle.drv
>
> /gnu/store/4vgn265kihmk1aayy3rg5h4z00dvlfmy-emacs-bash-
> completion-2.0.0.drv
>    /gnu/store/d3pp0bl6f8ml06yzgm08pnyg3624rlc2-manual-database.drv
> 0.0 MB will be downloaded:
>    /gnu/store/hfc5j4dq387s2iyvz392dja8zc75cvss-emacs-bash-completion-2.0.0
> guile: warning: failed to install locale
> warning: failed to install locale: Invalid argument
> Downloading https://mirror.hydra.gnu.org/guix/nar/gzip/hfc5j4dq387s2iyvz
> 392dja8zc75cvss-emacs-bash-completion-2.0.0...
>  emacs-bash-completion-2.0.0  31KiB
>                      5.3MiB/s 00:00 [##################] 100.0%
>
> guix package: error: build failed: while setting up the build environment:
> cannot pivot old root directory onto '/gnu/store/4vgn265kihmk1aayy3
> rg5h4z00dvlfmy-emacs-bash-completion-2.0.0.drv.chroot/real-root':$
> ````
>
>
Hello! It would be nice to know the error code returned by the pivot_root
syscall. It might point to the reason of the failure.
Most probably you can get that using strace. Stracing the daemon is
possible using strace -fp pid_of_daemon.


> --
> Thorsten Wilms
>
> thorwil's design for free software:
> http://thorwil.wordpress.com/
>
>

Reply via email to