3 srcdir
="$(dirname "$(realpath -Pe "${0}")")"
9 read -p "replace old configuration
${1} (Y
/n
)?
"
19 echo "Error
: invalid input
: ${REPLY}" >&2
27 local src="${srcdir}/${1}"
28 local dest="${XDG_CONFIG_HOME}/${1}"
32 if [[ -f "${dest}" ]] && ! diff -q "${src}" "${dest}" >/dev/null; then
34 read -p "${dest} exists
: (diff
/replace
/skip
): "
37 diff -u "${src}" "${dest}" | less
40 if [[ -f "${dest}.old
" ]] && ! old_dest "${dest}.old
"; then
43 if (( replace )); then
44 mv "${dest}" "${dest}.old
"
53 echo "Error
: invalid input
: ${REPLY}" >&2
58 if (( skip == 0 )); then
61 if [[ -f "${dest}.old
" ]]; then
62 echo "Found old configuration
in ${dest}.old
"
66 for f in "openbox
/rc.xml
" "qterminal.org
/qterminal.ini
"; do
70 openbox_maj="$(openbox --version | head -n 1 | cut -d\ -f 2 | cut -d. -f 1)"
71 if [[ ! -d "/usr
/share
/themes
/Artix
-dark/openbox
-${openbox_maj}/" ]]; then
72 echo "Warning
: Artix
-dark theme seems unavailable
" >&2
77 local src="/etc
/xdg
/autostart
/${f}"
78 local dest="${XDG_CONFIG_HOME}/autostart
/${f}"
79 if [[ ! -e "${dest}" ]]; then
80 if [[ -e "${src}" ]]; then
83 echo "Desktop
file missing or not installed
: ${f}" >&2
87 if ! grep -Fq "Hidden
=true
" "${dest}"; then
88 sed -r -i '/^Exec=/i Hidden=true' "${dest}"
92 hidden_desktop_files=(
93 geoclue-demo-agent.desktop
94 lxqt-globalkeyshortcuts.desktop
96 for f in "${hidden_desktop_files[@]}"; do