summaryrefslogtreecommitdiff
path: root/dotfiles/common/.zsh/modules/Config/installfns.sh
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-01-26 17:36:38 -0600
committerCraig Jennings <c@cjennings.net>2026-01-26 17:36:38 -0600
commitdada2f255daaa2fb493ec8c7d47e2a8123aea494 (patch)
tree0c0eeb84bb7b6e66a2d7f41cdfd061b25f80cc14 /dotfiles/common/.zsh/modules/Config/installfns.sh
parentd50e5955837788fc69b4d5bc74cb574b859ed31a (diff)
refactor(dotfiles): rename system/ to common/ and remove unused configs
Rename dotfiles/system to dotfiles/common for clarity - indicates shared dotfiles used across all desktop environments (DWM, Hyprland). Removed config directories for uninstalled applications: - ghostty (using different terminal) - lf (using ranger instead) - mopidy (using mpd instead) - nitrogen (X11-only, obsolete for Wayland) - pychess (not installed) - JetBrains (not installed via archsetup) - youtube-dl (using yt-dlp with different config location) Kept audacious config for potential future use. Updated all references in archsetup, CLAUDE.md, todo.org, and validation.sh. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Diffstat (limited to 'dotfiles/common/.zsh/modules/Config/installfns.sh')
-rwxr-xr-xdotfiles/common/.zsh/modules/Config/installfns.sh74
1 files changed, 74 insertions, 0 deletions
diff --git a/dotfiles/common/.zsh/modules/Config/installfns.sh b/dotfiles/common/.zsh/modules/Config/installfns.sh
new file mode 100755
index 0000000..149f359
--- /dev/null
+++ b/dotfiles/common/.zsh/modules/Config/installfns.sh
@@ -0,0 +1,74 @@
+#!/bin/sh
+
+fndir=$DESTDIR$fndir
+scriptdir=$DESTDIR$scriptdir
+
+/bin/sh $sdir_top/mkinstalldirs $fndir || exit 1;
+
+allfuncs="`grep ' functions=.' ${dir_top}/config.modules |
+ sed -e '/^#/d' -e '/ link=no/d' -e 's/^.* functions=//'`"
+
+allfuncs="`cd $sdir_top; echo ${allfuncs}`"
+
+test -d installfnsdir || mkdir installfnsdir
+
+# We now have a list of files, but we need to use `test -f' to check
+# (1) the glob got expanded (2) we are not looking at directories.
+for file in $allfuncs; do
+ if test -f $sdir_top/$file; then
+ case "$file" in
+ */CVS/*) continue;;
+ esac
+ if test x$FUNCTIONS_SUBDIRS != x && test x$FUNCTIONS_SUBDIRS != xno; then
+ case "$file" in
+ Completion/*/*)
+ subdir="`echo $file | sed -e 's%/[^/]*/[^/]*$%%'`"
+ instdir="$fndir/$subdir"
+ ;;
+ Completion/*)
+ instdir="$fndir/Completion"
+ ;;
+ Scripts/*)
+ instdir="$scriptdir"
+ ;;
+ *)
+ subdir="`echo $file | sed -e 's%/[^/]*$%%' -e 's%^Functions/%%'`"
+ instdir="$fndir/$subdir"
+ ;;
+ esac
+ else
+ case "$file" in
+ Scripts/*)
+ instdir="$scriptdir"
+ ;;
+ *)
+ instdir="$fndir"
+ ;;
+ esac
+ fi
+ basename=`basename $file`
+ ok=0
+ if test -d $instdir || /bin/sh $sdir_top/mkinstalldirs $instdir; then
+ if sed "s|@runhelpdir@|$runhelpdir|" <$sdir_top/$file \
+ >installfnsdir/$basename; then
+ if $INSTALL_DATA installfnsdir/$basename $instdir; then
+ ok=1
+ fi
+ fi
+ fi
+ case $ok in
+ 0)
+ rm -rf installfnsdir
+ exit 1
+ ;;
+ esac
+ read line < $sdir_top/$file
+ case "$line" in
+ '#!'*)
+ chmod +x $instdir/`echo $file | sed -e 's%^.*/%%'`
+ ;;
+ esac
+ fi
+done
+
+rm -rf installfnsdir