[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#43769] [PATCH v2 2/2] guix-install.sh: Check the service 'nscd' and
From: |
zimoun |
Subject: |
[bug#43769] [PATCH v2 2/2] guix-install.sh: Check the service 'nscd' and suggest it. |
Date: |
Tue, 13 Oct 2020 18:45:16 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
>> In practice, you enable nscd by running ‘apt install nscd’ or similar,
>> and I think we cannot guess what the right command is. WDYT?
>
> I agree: I was under the assumption that nscd is commonly installed as part of
> the base OS, but disabled by default at the init system level. If that's not
> likely to be true, don't let's bother.
>> ask and then try to start the service depending on the init system if nscd
>> is not running
>
> If the distro equivalent of ‘service start nscd’ works in the *common* case, I
> like it. Otherwise a warning/suggestion to manually install & enable it is
> fine.
>
> My general point was that guix-install.sh should do as much as it can with the
> information it already has ($INIT_SYS) and be consistent in using it, not that
> we start sniffing $LEGACY_PKG_MANAGER too :-)
As said, I have tried somehting like this uglyness… but it’s wrong! It
is overcomplicated and if the package is installed, then it is highly
probable that is running. I mean 2 kind of users:
- the noob as me: “Please install nscd” and the I do “aptitude install
nscd” and my distro takes care of everything (start it etc.)
- the control-freak: they knows what to do with the message “Please
install nscd”.
And we can try to guess the distro… but again it is overcomplicated.
So it’s not useful. A message is enough. Please give a look at v3.
Thanks,
simon
--8<---------------cut here---------------start------------->8---
sys_enable_nscd()
{ # Check if nscd is up and suggest to start it or install it
flag=""
if [ "$(type -P pidof)" ]; then
if [ ! "$(pidof nscd)" ]; then
_msg "${INF}We recommend installing and/or starting your
distribution 'nscd' service"
while true; do
read -p "Permit to try starting your 'nscd' service? (yes/no) "
yn
case $yn in
[Yy]*) case "$INIT_SYS" in
upstart)
{ initctl reload-configuration;
/etc/init/ &&
start nscd; } &&
_msg "${PAS}enabled 'nscd' service via
upstart"
;;
systemd)
if [ ( systemctl daemon-reload &&
systemctl enable nscd &&
systemctl start nscd; ) ]; then
_msg "${PAS}enabled 'nscd' service via
systemd";
else
flag=failure
fi
;;
sysv-init)
{ update-rc.d nscd defaults &&
update-rc.d nscd enable &&
service nscd start; } &&
_msg "${PAS}enabled 'nscd' service via
sysv"
;;
openrc)
{ rc-update add nscd default &&
rc-service nscd start; } &&
_msg "${PAS}enabled 'nscd' service via
OpenRC"
;;
NA|*)
_msg "${ERR}unsupported init system; run the
'ncsd' service manually"
;;
esac;
break;;
[Nn]*) _msg "${INF}Skipped 'nscd' service"
flag=failure
break;;
*) _msg "Please answer yes or no.";
esac
done
fi
else
_msg "${WAR}We cannot determine1 if your distribution 'nscd' service is
running"
failure=failure
fi
if [[ $flag == failure ]]; then
_msg "${WAR}Please read 'info guix \"Application Setup\"' about \"Name
Service Switch\""
fi
}
--8<---------------cut here---------------end--------------->8---
[bug#43769] [PATCH v2 1/2] guix-install.sh: Add symbolic links for supported shell completions., Tobias Geerinckx-Rice, 2020/10/03
[bug#43769] [PATCH v3 2/2] guix-install.sh: Check the service 'nscd' and suggest it., zimoun, 2020/10/13