91 lines
4.4 KiB
Bash
91 lines
4.4 KiB
Bash
#!/bin/bash
|
|
|
|
clear
|
|
wallpaper=$HOME/.config/hypr/wallpaper_effects/.wallpaper_current
|
|
waybar_style="$HOME/.config/waybar/style/[Extra] Modern-Combined - Transparent.css"
|
|
waybar_config="$HOME/.config/waybar/configs/[TOP] Default"
|
|
waybar_config_laptop="$HOME/.config/waybar/configs/[TOP] Default Laptop"
|
|
|
|
# set some colors for output messages
|
|
OK="$(tput setaf 2)[OK]$(tput sgr0)"
|
|
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
|
|
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
|
|
INFO="$(tput setaf 4)[INFO]$(tput sgr0)"
|
|
WARN="$(tput setaf 1)[WARN]$(tput sgr0)"
|
|
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
|
|
MAGENTA="$(tput setaf 5)"
|
|
ORANGE="$(tput setaf 214)"
|
|
WARNING="$(tput setaf 1)"
|
|
YELLOW="$(tput setaf 3)"
|
|
GREEN="$(tput setaf 2)"
|
|
BLUE="$(tput setaf 4)"
|
|
SKY_BLUE="$(tput setaf 6)"
|
|
RESET="$(tput sgr0)"
|
|
|
|
# check if running as root. if root, the script will exit
|
|
if [[ $EUID -eq 0 ]]; then
|
|
echo "${ERROR} this script should ${WARNING}NOT${RESET} be executed as root! exiting..."
|
|
printf "\n%.0s" {1..2}
|
|
exit 1
|
|
fi
|
|
|
|
# function to print colorful text
|
|
print_color() {
|
|
printf "%b%s%b\n" "$1" "$2" "$CLEAR"
|
|
}
|
|
|
|
# check /etc/os-release to see if this is an ubuntu or debian based distro
|
|
if grep -iq '^\(ID_LIKE\|ID\)=.*\(debian\|ubuntu\)' /etc/os-release >/dev/null 2>&1; then
|
|
printf "\n%.0s" {1..1}
|
|
print_color $WARNING "
|
|
█▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█
|
|
HYPRLAND-DOTFILES INCOMPATIBLE
|
|
█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█
|
|
|
|
debian / ubuntu detected. refer to hyprland-dotfiles
|
|
README for instruction on how to update your hyprland-
|
|
dotfiles
|
|
|
|
exiting...
|
|
"
|
|
printf "\n%.0s" {1..3}
|
|
exit 1
|
|
fi
|
|
|
|
printf "\n%.0s" {1..1}
|
|
echo -e "\e[35m
|
|
██░ ██▓██ ██▓ ██▓███ ██▀███ ▓█████▄ ▒█████ ▄▄▄█████▓ ██████
|
|
▓██░ ██▒▒██ ██▒▓██░ ██▒▓██ ▒ ██▒▒██▀ ██▌▒██▒ ██▒▓ ██▒ ▓▒▒██ ▒
|
|
▒██▀▀██░ ▒██ ██░▓██░ ██▓▒▓██ ░▄█ ▒░██ █▌▒██░ ██▒▒ ▓██░ ▒░░ ▓██▄
|
|
░▓█ ░██ ░ ▐██▓░▒██▄█▓▒ ▒▒██▀▀█▄ ░▓█▄ ▌▒██ ██░░ ▓██▓ ░ ▒ ██▒
|
|
░▓█▒░██▓ ░ ██▒▓░▒██▒ ░ ░░██▓ ▒██▒░▒████▓ ░ ████▓▒░ ▒██▒ ░ ▒██████▒▒
|
|
▒ ░░▒░▒ ██▒▒▒ ▒▓▒░ ░ ░░ ▒▓ ░▒▓░ ▒▒▓ ▒ ░ ▒░▒░▒░ ▒ ░░ ▒ ▒▓▒ ▒ ░
|
|
▒ ░▒░ ░▓██ ░▒░ ░▒ ░ ░▒ ░ ▒░ ░ ▒ ▒ ░ ▒ ▒░ ░ ░ ░▒ ░ ░
|
|
░ ░░ ░▒ ▒ ░░ ░░ ░░ ░ ░ ░ ░ ░ ░ ░ ▒ ░ ░ ░ ░
|
|
░ ░ ░░ ░ ░ ░ ░ ░ ░
|
|
░ ░ ░
|
|
\e[0m"
|
|
printf "\n%.0s" {1..1}
|
|
|
|
# create directory for copy logs
|
|
if [ ! -d copy-logs ]; then
|
|
mkdir copy-logs
|
|
fi
|
|
|
|
# set the name of the log file to include the current date and time
|
|
LOG="copy-logs/install-$(date +%d-%H%M%S)_dotfiles.log"
|
|
|
|
# update home folders
|
|
xdg-user-dirs-update 2>&1 | tee -a "$LOG" || true
|
|
|
|
# setting up for nvidia
|
|
if lspci -k | grep -A 2 -E "(VGA|3D)" | grep -iq nvidia; then
|
|
echo "${INFO} nvidia gpu detected, setting up proper env's and configs" 2>&1 | tee "$LOG" || true
|
|
sed -i '/env = LIBVA_DRIVER_NAME,nvidia/s/^#//' config/hypr/UserConfigs/ENVariables.conf
|
|
sed -i '/env = __GLX_VENDOR_LIBRARY_NAME,nvidia/s/^#//' config/hypr/UserConfigs/ENVariables.conf
|
|
sed -i '/env = NVD_BACKEND,direct/s/^#//' config/hypr/UserConfigs/ENVariables.conf
|
|
# enabling no hardware cursors if nvidia detected
|
|
sed -i 's/^\([[:space:]]*no_hardware_cursors[[:space:]]*=[[:space:]]*\)false/\1true/' config/hypr/UserConfigs/UserSettings.conf
|
|
# disabling explicit sync for nvidia for now (Hyprland 0.42.0)
|
|
#sed -i 's/ explicit_sync = 2/ explicit_sync = 0/' config/hypr/UserConfigs/UserSettings.conf
|
|
fi |