1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-12-22 15:58:50 -05:00

makepkg: Respect XDG_CONFIG_HOME

Add support for following the XDG Base Directory Specification when
reading the user-specific configuration file.

If no $XDG_CONFIG_HOME/pacman/makepkg.conf file exists we fall back to
sourcing $HOME/.makepkg.conf

Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>

[Allan] Note XDG_CONFIG_HOME takes priority.

Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
Johannes Löthberg 2014-07-02 17:04:13 +02:00 committed by Allan McRae
parent 0e18cefe38
commit 80eca94c8e
2 changed files with 10 additions and 4 deletions

View File

@ -11,7 +11,7 @@ makepkg.conf - makepkg configuration file
Synopsis Synopsis
-------- --------
{sysconfdir}/makepkg.conf, ~/.makepkg.conf {sysconfdir}/makepkg.conf, $XDG_CONFIG_HOME/pacman/makepkg.conf, ~/.makepkg.conf
Description Description
@ -27,7 +27,8 @@ variables. Some of them are non-standard.
The system-wide configuration file is found in {sysconfdir}/makepkg.conf. The system-wide configuration file is found in {sysconfdir}/makepkg.conf.
Individual options can be overridden (or added to) on a per-user basis in Individual options can be overridden (or added to) on a per-user basis in
~/.makepkg.conf. $XDG_CONFIG_HOME/pacman/makepkg.conf or ~/.makepkg.conf, with the former
taking priority.
The default file is fairly well commented, so it may be easiest to simply The default file is fairly well commented, so it may be easiest to simply
follow directions given there for customization. follow directions given there for customization.

View File

@ -2789,8 +2789,13 @@ fi
# Source user-specific makepkg.conf overrides, but only if no override config # Source user-specific makepkg.conf overrides, but only if no override config
# file was specified # file was specified
if [[ $MAKEPKG_CONF = "$confdir/makepkg.conf" && -r ~/.makepkg.conf ]]; then XDG_PACMAN_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/pacman"
source_safe ~/.makepkg.conf if [[ "$MAKEPKG_CONF" = "$confdir/makepkg.conf" ]]; then
if [[ -r "$XDG_PACMAN_DIR/makepkg.conf" ]]; then
source_safe "$XDG_PACMAN_DIR/makepkg.conf"
elif [[ -r "$HOME/.makepkg.conf" ]]; then
source_safe "$HOME/.makepkg.conf"
fi
fi fi
# set pacman command if not already defined # set pacman command if not already defined