guix-install.sh should do more first-time setup

DoneSubmitted by Ludovic Courtès.
Details
2 participants
  • Ludovic Courtès
  • zimoun
Owner
unassigned
Severity
important
L
L
Ludovic Courtès wrote on 1 Oct 14:34 +0200
(address . bug-guix@gnu.org)
87362yt99e.fsf@gnu.org
Hello!
One of the things we can do to provide a better first-time experience ona foreign distro is to automatically do some of the things that makeGuix 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):
Toggle snippet (16 lines)# 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" fidone
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’.
L
L
Ludovic Courtès wrote on 2 Oct 09:33 +0200
control message for bug #43744
(address . control@debbugs.gnu.org)
87tuvdkrpm.fsf@gnu.org
severity 43744 importantquit
Z
Z
zimoun wrote on 2 Oct 19:41 +0200
Re: bug#43744: guix-install.sh should do more first-time setup
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 43744@debbugs.gnu.org)
CAJ3okZ1t0vXWKFXg0s3C6=vwRwVtUcn9-pku8+CwcDp+tiCmbQ@mail.gmail.com
Hi,
On Thu, 1 Oct 2020 at 14:35, Ludovic Courtès <ludo@gnu.org> wrote:
Toggle quote (7 lines)> 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.
Done in patch 1/2 #43769 [1].

Toggle quote (19 lines)> 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---
Hum? It looks like 'sys_create_init_profile'. I have not checked thecurrent order but maybe that's only that.

Toggle quote (3 lines)> The user should be explicitly asked whether they want this change> to be made.
Currently, 'sys_create_init_profile' is simply run without asking.

Toggle quote (3 lines)> 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.
Done in patch 2/2 #43769 [1].
[1] http://issues.guix.gnu.org/issue/43769

All the best,simon
Z
Z
zimoun wrote on 21 Oct 19:34 +0200
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 43744-done@debbugs.gnu.org)
871rhrfppg.fsf@gmail.com
Dear,
On Thu, 01 Oct 2020 at 14:34, Ludovic Courtès <ludo@gnu.org> wrote:
Toggle quote (12 lines)> 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.
Done in b3fba5ef043b161d05a9fdc371a32d89e9b22ea1.

Toggle quote (20 lines)> 2. Adding the following lines to /etc/profile (taken from Guix System):>> # 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>> The user should be explicitly asked whether they want this change> to be made.
Nothing to done.

Toggle quote (3 lines)> 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.
Done in b2683a2bed424f58722c9c17c9582e3e2e19d9a3.

So closing!
Closed
?