2023-12-08 17:33:11 +01:00
|
|
|
#!/bin/bash
|
|
|
|
# jeremystartm's dotfiles "installer"
|
2023-12-08 17:38:01 +01:00
|
|
|
|
2023-12-09 15:46:02 +01:00
|
|
|
if [ ! -f "$HOME/.config/.jstm_dotfiles" ]; then
|
2023-12-09 15:45:17 +01:00
|
|
|
echo ":: Removing files"
|
|
|
|
./uninstall.sh &> /dev/null
|
|
|
|
fi
|
|
|
|
|
2023-12-08 17:38:01 +01:00
|
|
|
# useful function
|
2023-12-08 17:33:11 +01:00
|
|
|
function link() {
|
|
|
|
if [ -a "${HOME}/${2}" ]; then
|
|
|
|
[[ -n "$VERBOSE_WARNING" ]] && echo ":: Warning: ${2} already exists."
|
|
|
|
else
|
|
|
|
echo ":: Linking ${2}"
|
|
|
|
ln -s "$(pwd)/${1}" "${HOME}/${2}"
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
2023-12-08 18:47:34 +01:00
|
|
|
# update/clone repositories
|
|
|
|
if [ ! -d "dracula-mc" ]; then
|
|
|
|
git clone "https://github.com/dracula/midnight-commander.git" dracula-mc
|
|
|
|
else
|
|
|
|
cd dracula-mc
|
|
|
|
git pull
|
|
|
|
cd ..
|
|
|
|
fi
|
|
|
|
if [ ! -d "jstmbash" ]; then
|
|
|
|
git clone "https://git.staropensource.de/JeremyStarTM/jstmbash.git" jstmbash
|
|
|
|
else
|
|
|
|
cd jstmbash
|
|
|
|
git pull
|
|
|
|
cd ..
|
|
|
|
fi
|
2023-12-08 17:33:11 +01:00
|
|
|
|
2023-12-08 17:38:01 +01:00
|
|
|
# create directories
|
2023-12-08 17:39:35 +01:00
|
|
|
mkdir -p "${HOME}/.config" "${HOME}/.local/share/mc/skins" "${HOME}/.local/bin"
|
2023-12-08 17:38:01 +01:00
|
|
|
|
2023-12-08 17:33:11 +01:00
|
|
|
# jobrunner
|
|
|
|
link "jobrunner/daemon.sh" ".local/bin/jobrunner"
|
|
|
|
link "jobrunner/runjob.sh" ".local/bin/jobrunner-runjob"
|
|
|
|
|
|
|
|
# bash configuration
|
|
|
|
link "jstmbash" ".jstmbash"
|
2023-12-09 16:34:37 +01:00
|
|
|
link "lone-files/jstmbash.config.env" ".config/jstmbash.env"
|
|
|
|
link "lone-files/starship.toml" ".config/starship.toml"
|
|
|
|
link "lone-files/bashrc" ".bashrc"
|
2023-12-08 17:33:11 +01:00
|
|
|
|
|
|
|
# wm/compositor
|
|
|
|
link "hypr" ".config/hypr"
|
|
|
|
link "waybar" ".config/waybar"
|
|
|
|
link "fnott" ".config/fnott"
|
|
|
|
link "eww" ".config/eww"
|
|
|
|
link "copyq" ".config/copyq"
|
|
|
|
|
|
|
|
# programs
|
|
|
|
link "neofetch" ".config/neofetch"
|
|
|
|
link "btop" ".config/btop"
|
|
|
|
link "mc-share" ".local/share/mc"
|
|
|
|
link "mc-config" ".config/mc"
|
|
|
|
link "mpv" ".config/mpv"
|
|
|
|
|
|
|
|
# theming
|
|
|
|
link "dracula-mc/skins/dracula.ini" ".local/share/mc/skins/dracula.ini"
|
|
|
|
link "dracula-mc/skins/dracula256.ini" ".local/share/mc/skins/dracula256.ini"
|
|
|
|
link "nwg-look" ".config/nwg-look"
|
|
|
|
link "qt5ct" ".config/qt5ct"
|
|
|
|
link "qt6ct" ".config/qt6ct"
|
2023-12-09 19:02:21 +01:00
|
|
|
link "kvantum" ".config/Kvantum"
|
2023-12-08 17:33:11 +01:00
|
|
|
link "cursors" ".icons"
|
2023-12-09 14:33:13 +01:00
|
|
|
link "icons" ".local/share/icons"
|
2023-12-08 17:33:11 +01:00
|
|
|
link "fonts" ".fonts"
|
|
|
|
link "fontconfig" ".config/fontconfig"
|
2023-12-09 14:20:24 +01:00
|
|
|
|
2023-12-09 14:33:13 +01:00
|
|
|
# programs
|
2023-12-09 16:34:37 +01:00
|
|
|
link "lone-files/konsolerc" ".config/konsolerc"
|
2023-12-09 14:20:24 +01:00
|
|
|
link "konsole" ".local/share/konsole"
|
2023-12-09 16:34:37 +01:00
|
|
|
link "lone-files/dolphinrc" ".config/dolphinrc"
|
2023-12-09 14:23:07 +01:00
|
|
|
|
2023-12-13 19:32:24 +01:00
|
|
|
# punktdateien scripts
|
|
|
|
link "bin/updatechecker" ".local/bin/dotfiles-updatechecker"
|
2023-12-13 20:03:46 +01:00
|
|
|
link "bin/updater" ".local/bin/dotfiles-updater"
|
2023-12-13 19:32:24 +01:00
|
|
|
|
2023-12-09 15:45:17 +01:00
|
|
|
# write install file
|
|
|
|
echo "pls don't remove" > "$HOME/.config/.jstm_dotfiles"
|
|
|
|
|
2023-12-09 14:23:07 +01:00
|
|
|
# check for executables
|
|
|
|
if ! which qt5ct &> /dev/null; then
|
|
|
|
echo ":: Warning: qt5ct is not in your PATH."
|
|
|
|
fi
|
|
|
|
if ! which qt6ct &> /dev/null; then
|
|
|
|
echo ":: Warning: qt6ct is not in your PATH."
|
|
|
|
fi
|
|
|
|
if ! which nwg-look &> /dev/null; then
|
|
|
|
echo ":: Warning: nwg-look is not in your PATH."
|
|
|
|
fi
|