* gnu/packages/perl-check.scm (perl-test-class-most): Use propagated inputs
for runtime dependencies.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Change-Id: I8794ac94f0b75f58d5a8c756b0b6b22a8fbeb102
* gnu/packages/perl.scm (perl-mixin-linewise): Use propagated inputs
for runtime dependencies.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Change-Id: Ib28f22c6095543b8eccbb68af942bde49879606b
* gnu/packages/perl.scm (perl-list-someutils): Use propagated inputs
for runtime dependencies.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Change-Id: I83367e67f38b2f358ef1498f7ee5b023426d3c4f
* gnu/packages/perl.scm (perl-config-ini): Use propagated inputs
for runtime dependencies.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Change-Id: If2ff58f06523c6cecfca2602caaed8d1e9c4ab45
* gnu/packages/algebra.scm (gap)[inputs]: Add libx11, libxaw, and libxt.
[arguments]<phases>{prepare-package-source}: Substitute paths and modify
configuration.
{remove-packages}: Do not remove xgap.
{install-packages}: Add a symlink from bin/ to xgap.sh.
Change-Id: I9466fdb3f469325f7229de210b88d371c2839504
* gnu/home/services/desktop.scm (home-unclutter-shepherd-service):
Remove ‘one-shot?’ field and set ‘stop’.
Change-Id: I82b915d4260a62e628b419a497c50ecf2cbc356c
Fixes <https://issues.guix.gnu.org/76315>.
This is more concise and more robust: these ‘waitpid’ calls would
compete with those made by shepherd’s event loop upon SIGCHLD, and they
could hang forever, as illustrated with ‘dhcp-client-service-type’
in <https://issues.guix.gnu.org/76315>.
* gnu/services/databases.scm (postgresql-role-shepherd-service): Use
‘spawn-command’ instead of ‘fork+exec-command’ followed by ‘waitpid’.
* gnu/services/networking.scm (dhcp-client-shepherd-service): Change
‘start’ to use ‘spawn-command’ instead of ‘fork+exec-command’ and
* gnu/services/web.scm (patchwork-django-admin-gexp): Use
‘spawn-command’ instead of ‘primitive-fork’ + ‘waitpid’.
Change-Id: I449290bfa46f8600e6ccdb5a6da990ad0cb7948c
Reported-by: Tomas Volf <~@wolfsden.cz>
This ‘stop’ methods had two problems:
1. It is incompatible with the Shepherd 1.0, where the running value
is a <process> record and not a PID.
2. It is unreliable because its ‘waitpid’ calls compete with those
made by shepherd’s main event loop upon SIGCHLD.
* gnu/services/file-sharing.scm (transmission-daemon-shepherd-service):
Change ‘stop’ to use ‘make-kill-destructor’.
Change-Id: I406eb619d4a72bb5afe6200ac5c8f68736a78d97
Previously, the check came after guix_get_bin. There’s no need to fetch
the rather large release archive if there’s an existing installation, so
check first. Refactor the check into a function similar to other
preflight checks.
* etc/guix-install.sh: Check for existing installation before
downloading.
Change-Id: I5506fb1cacdc88bd6355e8dfa1f690acf7886c1f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Add helpers to avoid repeated manual concatenation.
_err and _msg "$ERR are used interchangeably with their only difference
being output stream; convert all errors to use _err.
* etc/guix-install.sh: Add msg helpers and consolidate errors to stderr.
Change-Id: I06e97ccc50d108ed9e279ae80c6b2386d7b8c36b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Guix and Guix-provided software also have man pages. If the user
doesn’t install man-db via Guix, they should still be able to read
Guix-provided man pages.
* etc/guix-install.sh (sys_create_init_profile): Add to MANPATH.
Change-Id: Ibceb354012d23d24deeb39b1ec02790873396a6b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Make both profiles use GUIX_PROFILE and reorder some code so each
profile is handled in one contiguous block. The user’s profile now
takes precedence over the ‘guix pull’ profile on INFOPATH. If the user
already has an info reader in their Guix profile, don’t add a duplicate
entry to INFOPATH. If the user doesn’t have an imperative
~/.guix-profile (i.e. they manage software with Guix Home and ‘guix
shell’), don’t add an unnecessary entry to INFOPATH. Clean up after
ourselves by unsetting the temporary GUIX_PROFILE variable, which only
needs to be set when sourcing.
* etc/guix-install.sh (sys_create_init_profile): Improve Guix profile
sourcing.
Change-Id: Ibceb354012d23d24deeb39b1ec02790873396a6b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Guix Home handles its own profile initialization in ~/.profile and
documents shell setup accordingly. It does more than what is done here,
including running an on-first-login script to start a user Shepherd
instance. In general, changes and improvements to Guix Home
initialization are unlikely to propagate to the foreign distro install
script, since many Guix contributors only use Guix via Guix System and
Guix Home does not depend on system-level initialization anyway.
Avoid partially initializing Guix Home in /etc/profile.d to keep search
path variables free of redundant entries. Instead, leave a comment
directing users to the relevant manual section.
* etc/guix-install.sh (sys_create_init_profile): Remove system-level
Guix Home initialization.
Change-Id: Ib78aa0382268a789298d4980ee394d99a602a5ca
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Locales installed via Guix Home should be exposed to Guix packages by
default.
* gnu/home/services.scm (environment-variables->setup-environment-script):
Set GUIX_LOCPATH.
Change-Id: Ic61f0832312479ba36f471d92a12e7b4e296389f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
While they aren’t exported, these temporary variables show up in the
resulting shell, cluttering tab completion and declare -p.
* gnu/home/services.scm (environment-variables->setup-environment-script):
Unset shell variables.
* gnu/home/services/shells.scm (add-shell-profile-file): Likewise.
Change-Id: Ibb634849d9f38c1a9a44c0d493e92231364de958
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
setup-environment already defines this variable. Use it since it’s more
concise.
* gnu/home/services.scm (environment-variables->setup-environment-script):
Use GUIX_PROFILE.
Change-Id: Ib75d8df6294976f4e95cfa7d607dc0ba21ddd258
Signed-off-by: Ludovic Courtès <ludo@gnu.org>