mirror of
https://https.git.savannah.gnu.org/git/guix.git/
synced 2025-07-09 23:50:47 +02:00
system: Migrate sourcing bash_completion.sh to etc-bashrc-d-service-type.
* gnu/system.scm (operating-system-etc-service): Remove block sourcing bash_completion.sh. (%base-packages-interactive): Delete bash-completion. * gnu/services.scm (%default-etc-bashrc-d-files): New variable, which includes the bash_completion.sh file. (etc-bashrc-d-service-type): Use it. * doc/guix.texi (Service Reference): Update documentation. Change-Id: I2223a5f96f5d761148badc6be29e1c5c80465a1d
This commit is contained in:
parent
4c017ccfe5
commit
45b883a9d3
3 changed files with 12 additions and 14 deletions
|
@ -47685,9 +47685,11 @@ create files under @file{/etc/bashrc.d}. It takes as value a list of
|
|||
file-like objects, as can be produced with @code{local-file},
|
||||
@code{plain-file}, etc. Note that provided files whose file names do
|
||||
not end with @file{.sh} are @emph{not} added to @file{/etc/profile.d/}
|
||||
and are silently dropped. Package objects can also be provided directly
|
||||
to have their @file{etc/bashrc.d/*.sh} prefixed files added. An example
|
||||
usage may look like:
|
||||
and are silently dropped. The default value is made available via the
|
||||
@var{%default-etc-bashrc-d-files} variable for users to extended.
|
||||
Package objects can also be provided directly to have their
|
||||
@file{etc/bashrc.d/*.sh} prefixed files added. An example usage may
|
||||
look like:
|
||||
|
||||
@example
|
||||
(use-package-modules gnome) ;for the `vte' package
|
||||
|
|
|
@ -124,6 +124,7 @@
|
|||
etc-service-type
|
||||
etc-profile-d-service-type
|
||||
etc-bashrc-d-service-type
|
||||
%default-etc-bashrc-d-files
|
||||
etc-directory
|
||||
privileged-program-service-type
|
||||
setuid-program-service-type ; deprecated
|
||||
|
@ -992,6 +993,10 @@ log in.")))
|
|||
(define files->bashrc-d-directory
|
||||
(make-files->etc-directory "bashrc.d"))
|
||||
|
||||
(define %default-etc-bashrc-d-files
|
||||
(list (file-append bash-completion
|
||||
"/etc/profile.d/bash_completion.sh")))
|
||||
|
||||
(define etc-bashrc-d-service-type
|
||||
(service-type
|
||||
(inherit etc-profile-d-service-type)
|
||||
|
@ -1000,7 +1005,8 @@ log in.")))
|
|||
files->bashrc-d-directory)))
|
||||
(description "A service for populating @file{/etc/bashrc.d/} with Bash
|
||||
scripts having the @file{.sh} file extension, to be sourced by interactive
|
||||
Bash shells.")))
|
||||
Bash shells.")
|
||||
(default-value %default-etc-bashrc-d-files)))
|
||||
|
||||
(define (privileged-program->activation-gexp programs)
|
||||
"Return an activation gexp for privileged-program from PROGRAMS."
|
||||
|
|
|
@ -969,7 +969,6 @@ of PROVENANCE-SERVICE-TYPE to its services."
|
|||
nvi
|
||||
man-db
|
||||
info-reader ;the standalone Info reader (no Perl)
|
||||
bash-completion
|
||||
kbd
|
||||
;; The 'sudo' command is already in %SETUID-PROGRAMS, but we also
|
||||
;; want the other commands and the man pages (notably because
|
||||
|
@ -1155,15 +1154,6 @@ fi
|
|||
# Provide a default prompt. The user's ~/.bashrc can override it.
|
||||
PS1='\\u@\\h \\w${GUIX_ENVIRONMENT:+ [env]}\\$ '
|
||||
|
||||
# The 'bash-completion' package.
|
||||
if [ -f /run/current-system/profile/etc/profile.d/bash_completion.sh ]
|
||||
then
|
||||
# Bash-completion sources ~/.bash_completion. It installs a dynamic
|
||||
# completion loader that searches its own completion files as well
|
||||
# as those in ~/.guix-profile and /run/current-system/profile.
|
||||
source /run/current-system/profile/etc/profile.d/bash_completion.sh
|
||||
fi
|
||||
|
||||
for i in /etc/bashrc.d/*.sh; do
|
||||
[[ -r $i ]] && source \"$i\"
|
||||
done
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue