From bbb731035012181cd5b5c753530a6b6ce1854d7d Mon Sep 17 00:00:00 2001 From: Plom Heller Date: Sun, 13 Sep 2026 04:25:53 +0200 Subject: [PATCH] Split up aliases dotfiles by purpose, ownership. --- home/any/.aliases_etc.ls | 2 ++ .../{.aliases => .aliases_etc.hibernation} | 4 +-- .../{.aliases => .aliases_etc.hibernation} | 2 -- setup_scripts/lib/link_home.sh | 28 +++++++++++-------- 4 files changed, 20 insertions(+), 16 deletions(-) create mode 100644 home/any/.aliases_etc.ls rename home/root/{.aliases => .aliases_etc.hibernation} (58%) rename home/user/{.aliases => .aliases_etc.hibernation} (87%) diff --git a/home/any/.aliases_etc.ls b/home/any/.aliases_etc.ls new file mode 100644 index 0000000..f0ff635 --- /dev/null +++ b/home/any/.aliases_etc.ls @@ -0,0 +1,2 @@ +alias ls="ls --color=auto" + diff --git a/home/root/.aliases b/home/root/.aliases_etc.hibernation similarity index 58% rename from home/root/.aliases rename to home/root/.aliases_etc.hibernation index fb46ad5..8f1a3c5 100644 --- a/home/root/.aliases +++ b/home/root/.aliases_etc.hibernation @@ -1,5 +1,5 @@ -alias ls="ls --color=auto" - +# /etc/systemd/system/sytemd-hibernate.service.d/60-poweroff-on-failure.conf +# is bypassed by pure "systemctl hibernate", so only allow wrap with poweroff alias hibernate_safe="command systemctl hibernate || systemctl poweroff" systemctl () { local MSG="Use 'hibernate_safe' instead." diff --git a/home/user/.aliases b/home/user/.aliases_etc.hibernation similarity index 87% rename from home/user/.aliases rename to home/user/.aliases_etc.hibernation index 197ef9a..da7ef8f 100644 --- a/home/user/.aliases +++ b/home/user/.aliases_etc.hibernation @@ -1,5 +1,3 @@ -alias ls="ls --color=auto" - alias hibernate_safe="sudo /bin/sh -lc hibernate_safe" sudo() { local MSG="Use 'hibernate_safe' instead." diff --git a/setup_scripts/lib/link_home.sh b/setup_scripts/lib/link_home.sh index a3ad4ad..c6f0ae0 100644 --- a/setup_scripts/lib/link_home.sh +++ b/setup_scripts/lib/link_home.sh @@ -3,20 +3,24 @@ include PATH_REPO include msg link_home() { - local PATH_SKEL="${PATH_REPO}/home/$1" - local DOT_ALIASFILE='. ${HOME}/.aliases' + local LOOP_ALIASFILES=\ +'for FILE in ${HOME}/.aliases_etc.*; do . "${FILE}"; done' local PATH_PROFILE="${HOME}/${FNAME_PROFILE}" - msg 'Linking %s files into home directory …' "${PATH_SKEL}" - find "${PATH_SKEL}" -mindepth 1 -maxdepth 1 | while IFS= read -r SRC; do - DEST="${HOME}/$(basename "${SRC}")" - if [ -e "${DEST}" ] || [ -L "${DEST}" ]; then - msg 'Skipping already-found %s …' "${DEST}" - else - ln -v -s "${SRC}" "${DEST}" - fi + for DIRNAME in any "$1"; do + local PATH_SKEL="${PATH_REPO}/home/${DIRNAME}" + msg 'Linking %s files into home directory …' "${PATH_SKEL}" + find "${PATH_SKEL}" -mindepth 1 -maxdepth 1 \ + | while IFS= read -r SRC; do + DEST="${HOME}/$(basename "${SRC}")" + if [ -e "${DEST}" ] || [ -L "${DEST}" ]; then + msg 'Skipping already-found %s …' "${DEST}" + else + ln -v -s "${SRC}" "${DEST}" + fi + done done msg 'Augmenting user %s …' "${FNAME_PROFILE}" # test ensures idempotency - grep -qxF "${DOT_ALIASFILE}" "${PATH_PROFILE}" 2>/dev/null\ - || printf '\n%s\n' "${DOT_ALIASFILE}" >> "${PATH_PROFILE}" + grep -qxF "${LOOP_ALIASFILES}" "${PATH_PROFILE}" 2>/dev/null\ + || printf '\n%s\n' "${LOOP_ALIASFILES}" >> "${PATH_PROFILE}" } -- 2.30.2