summaryrefslogtreecommitdiff
path: root/src/usr/bin/use-package-fluxbox-files
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/bin/use-package-fluxbox-files')
-rwxr-xr-xsrc/usr/bin/use-package-fluxbox-files56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/usr/bin/use-package-fluxbox-files b/src/usr/bin/use-package-fluxbox-files
new file mode 100755
index 0000000..3d8e5f2
--- /dev/null
+++ b/src/usr/bin/use-package-fluxbox-files
@@ -0,0 +1,56 @@
+#!/bin/sh
+# File: /usr/bin/use-package-fluxbox-files
+# Location: stackrpms-acer-chromebook package
+# Author: bgstack15
+# SPDX-License-Identifier: GPL-3.0
+# Startdate: 2024-04-30-3 12:46
+# Title: Use Platform Package-Provided Fluxbox Files
+# Package: stackrpms-acer-chromebook
+# Purpose: Symlink available package-provided fluxbox files to user fluxbox path
+# History:
+# Usage:
+# use-package-fluxbox-files --all
+# Improve:
+# Dependencies:
+#
+# Documentation:
+# Notably, this will decline to mkdir ~/.fluxbox if not present.
+THIS_PACKAGE="stackrpms-acer-chromebook"
+
+# useful only for testing:
+DESTDIR=
+
+# FAIL OUT IF SUDO
+test -n "${SUDO_USER}" && { echo "Please run ${0} as a user, not with sudo. It makes sense only for a user. Aborted." ; exit 1 ; }
+
+# PARSE PARAMETERS or environment variables
+# _SOFT is an additional parameter passed to ln, which uses -f to force the operation.
+if test -n "${ALL}" || echo " ${*} " | grep -qE -e " --all " ;
+then
+ _SOFT="f"
+fi
+# SOFT takes precedence, so calculate it last.
+if test -n "${SOFT}" || echo " ${*} " | grep -qE -e " --soft " ;
+then
+ _SOFT=""
+fi
+for tf in $( find "${DESTDIR}/etc/${THIS_PACKAGE}" -name 'fluxbox.*' -printf '%f\n' ) ;
+do
+ df="$( echo "${tf}" | sed -r -e 's/^fluxbox\.//;' )" # destfile
+ ldf="${HOME}/.fluxbox/${df}" # long destfile
+ ltf="${DESTDIR}/etc/${THIS_PACKAGE}/${tf}" # long thisfile
+ _currentdest="$( readlink -f "${ldf}" 2>/dev/null )"
+ if test "${_currentdest}" = "${ltf}" ;
+ then
+ echo "${ldf} ALREADY -> ${ltf}"
+ else
+ # do not quote _SOFT:
+ output="$( ln -v -s${_SOFT} "${ltf}" "${ldf}" 2>&1 )"
+ if test $? -ne 0 ;
+ then
+ printf '%s %s\n' "${output}" "-> ${_currentdest}"
+ else
+ printf '%s%s\n' "${output}" ", WAS -> ${_currentdest}"
+ fi
+ fi
+done
bgstack15