Subject: bug#43744: guix-install.sh should do more first-time setup

From: Ludovic Courtès <[email-masked]>
Date: Thu, 01 Oct 2020 14:34:37 +0200

Hello!

One of the things we can do to provide a better first-time experience on
a foreign distro is to automatically do some of the things that make
Guix readily usable and convenient, even for someone who skips the
“Application Setup” section of the manual.  Things that come to mind:

  1. Installing Bash and Zsh completion files globally (actually making
     them a symlink to
     /var/guix/profiles/per-user/root/current-guix/etc/…).
     There seems to be +/- a cross-distro conventional directory to
     collect those, for example /etc/bash_completion.d, no?  The script
     could create that symlink, perhaps asking the user to confirm.

  2. Adding the following lines to /etc/profile (taken from Guix System):

--8<---------------cut here---------------start------------->8---
# Arrange so that ~/.config/guix/current comes first.
for profile in "$HOME/.guix-profile" "$HOME/.config/guix/current"
do
  if [ -f "$profile/etc/profile" ]
  then
    # Load the user profile's settings.
    GUIX_PROFILE="$profile" ; \
    . "$profile/etc/profile"
  else
    # At least define this one so that basic things just work
    # when the user installs their first package.
    export PATH="$profile/bin:$PATH"
  fi
done
--8<---------------cut here---------------end--------------->8---

     The user should be explicitly asked whether they want this change
     to be made.

  3. It could check “ps aux | grep nscd” and install nscd using the host
     distro package manager if needed, or at least suggest doing it.

Any takers?  :-)

Thanks,
Ludo’.