Subject: doc install from *Guix Package Info: profile* fails

From: myglc2 <[email-masked]>
Date: Tue, 09 Feb 2016 11:49:00 -0500

Running: guixSD.

Scenario: Finding and installing doc for a package (ncurses) used by a
by a global package (emacs) I hit the following error.

FWIW, IMHO, this functionality, and the ease with which it is available,
is truly awesome!

This failed for both user and root.

Common steps
============
emacs 'M-x guix-system-generations'

In *Guix Generation List: system*  move to current & RET

In *Guix Package List: profile* move to emacs & RET

In *Guix Package Info: profile* for emacs-24.5 I move to 'ncurses-6.0' & RET

In *Guix Package Info: profile* for 'ncurses-6.0' move to doc Install & RET

user
====
Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> (process-package-actions "/var/guix/profiles/system-31-link/profile" #:install '((52640960 "doc")) #:upgrade '() #:remove '() #:use-substitutes? #t #:dry-run? #f)
The process begins ...
The following package will be installed:
   ncurses:doc	6.0	/gnu/store/wng6fsgiiqi0rcc4p9655ga4b2j5jk53-ncurses-6.0-doc

guix/utils.scm:607:4: In procedure switch-symlinks:
guix/utils.scm:607:4: In procedure symlink: Read-only file system: "/var/guix/profiles/system-31-link/profile-1-link.new"

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
scheme@(guile-user) [1]> ,bt
In guix/emacs/guix-main.scm:
   942:21  1 (process-package-actions "/var/guix/profiles/system-31-link/profile" #:install ((52640960 "doc")) #:upgrade () #:remove () # …)
In guix/utils.scm:
    607:4  0 (switch-symlinks "/var/guix/profiles/system-31-link/profile-1-link" "/gnu/store/i5hmasm569rz24vbi8kv970x4wg31wkk-profile")
scheme@(guile-user) [1]>

root
====
GNU Guile 2.0.11
Copyright (C) 1995-2014 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> (process-package-actions "/var/guix/profiles/system-32-link/profile" #:install '((32467968 "doc")) #:upgrade '() #:remove '() #:use-substitutes? #t #:dry-run? #f)
The process begins ...
The following package will be installed:
   ncurses:doc	6.0	/gnu/store/wng6fsgiiqi0rcc4p9655ga4b2j5jk53-ncurses-6.0-doc

substitute: updating list of substitutes from 'http://hydra.gnu.org'... 100.0%
The following derivations will be built:
   /gnu/store/kdpgj81d7fi6pxzv0c43kwr9swzimixa-profile.drv
   /gnu/store/s0f0f0y32kjk9km8ki5i5hy6rlhwlxcx-gtk-icon-themes.drv
   /gnu/store/himj3dxych8xw300c1dkmyn8kyczry57-ca-certificate-bundle.drv
   /gnu/store/bdzjjck73nz1xb8m5f0cj0zzb1cplxg7-info-dir.drv
guix/utils.scm:607:4: In procedure switch-symlinks:
guix/utils.scm:607:4: In procedure symlink: Read-only file system: "/var/guix/profiles/system-32-link/profile-1-link.new"

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
scheme@(guile-user) [1]> ,bt
In guix/emacs/guix-main.scm:
   942:21  1 (process-package-actions "/var/guix/profiles/system-32-link/profile" #:install ((32467968 "doc")) #:upgrade () #:remove () #:use-substitutes? #t #:dry-run? #f)
In guix/utils.scm:
    607:4  0 (switch-symlinks "/var/guix/profiles/system-32-link/profile-1-link" "/gnu/store/bhmslmq75a9vr57bkwricmcax9h6w93k-profile")
scheme@(guile-user) [1]>

config
====================
/var/guix/profiles/system-32-link/profile was installed by
'guix system reconfigure config.l.scm'

/var/guix/profiles/system-31-link/profile  was installed by 
'sudo ./pre-inst-env guix system reconfigure ../configs/config.k.scm'

config.l.scm and config.k.scm are identical.

gnug/packages/screen.scm contains a minor mod.