Compare commits
94 Commits
Author | SHA1 | Date | |
---|---|---|---|
f176886688 | |||
0c738fdb67 | |||
526979a9f9 | |||
adab24d93f | |||
d5051c5c96 | |||
|
95ff240509 | ||
|
d6fce7ecd3 | ||
|
44b52eecb4 | ||
|
fc346fe68d | ||
|
0a6879e9ab | ||
|
e5fbdb7de0 | ||
|
26f42750d7 | ||
|
e6c2420ef4 | ||
|
338f34b28d | ||
6c3bef60c6 | |||
ce02d5357b | |||
113c023b3c | |||
f85d049cbd | |||
49fd73e67b | |||
16a504966c | |||
|
972d49978c | ||
a23f49bcaf | |||
|
41b6b496c1 | ||
|
7f945d3143 | ||
|
973e77cb30 | ||
|
d595873e47 | ||
|
13cc39cc68 | ||
|
b5ad437427 | ||
|
f31d3bec55 | ||
|
3d75bf0254 | ||
|
b7226e9e6b | ||
|
4336be911c | ||
|
afa4baf647 | ||
|
f2e76f6045 | ||
|
5221986db5 | ||
|
edd8af5c36 | ||
|
d4b0465130 | ||
|
1841fb7ba9 | ||
|
54473c0440 | ||
|
e0ec9425fb | ||
|
31f116a202 | ||
|
43169fa507 | ||
|
c2b5c2e1ad | ||
|
16078963fd | ||
|
900d4c0c29 | ||
|
488887a276 | ||
|
6e0bacd4f6 | ||
|
6304aea7d5 | ||
|
8f1a563bf0 | ||
|
5e1835d57a | ||
|
81f502a3b1 | ||
|
2802fc7999 | ||
|
17cad59b89 | ||
|
69e2e118b2 | ||
|
d56e32eb82 | ||
|
2f595ae7f6 | ||
|
f515d7b616 | ||
|
097cd4f43f | ||
|
2ec2da73b3 | ||
|
45bea3effa | ||
|
a5cff60489 | ||
|
93ca44f1ad | ||
|
3b4a5a5ff1 | ||
|
498fd92a12 | ||
|
c375c92d6f | ||
|
b84745d88a | ||
|
afdc595f1b | ||
|
e00c9635cd | ||
|
6fa297d705 | ||
|
363b349915 | ||
|
99e132b989 | ||
|
565d99a103 | ||
|
932ce5aa6e | ||
|
1748e42b4d | ||
|
150616996f | ||
|
004702f450 | ||
|
4fea3df1cd | ||
|
d1cdc5d648 | ||
|
478a02e483 | ||
|
477d486818 | ||
|
5c860b4c89 | ||
|
84e8646802 | ||
|
55bf15494a | ||
|
001a9b14e9 | ||
|
05f91083dc | ||
|
27646d04c5 | ||
|
e1e9431555 | ||
|
171bbc50df | ||
|
314c642857 | ||
|
c3ac8c64a8 | ||
|
16f0558315 | ||
|
350f0e2be0 | ||
|
efc6157a48 | ||
|
72fca9a386 |
24
.bashrc
24
.bashrc
@ -19,10 +19,10 @@ export EDITOR=nvim
|
||||
# -----------------------------------------------------
|
||||
# ALIASES
|
||||
# -----------------------------------------------------
|
||||
|
||||
alias c='clear'
|
||||
alias nf='neofetch'
|
||||
alias pf='pfetch'
|
||||
alias nf='fastfetch'
|
||||
alias pf='fastfetch'
|
||||
alias ff='fastfetch'
|
||||
alias ls='eza -a --icons'
|
||||
alias ll='eza -al --icons'
|
||||
alias lt='eza -a --tree --level=1 --icons'
|
||||
@ -45,7 +45,9 @@ alias ml4w='~/dotfiles/apps/ML4W_Welcome-x86_64.AppImage'
|
||||
alias ml4w-settings='~/dotfiles/apps/ML4W_Dotfiles_Settings-x86_64.AppImage'
|
||||
alias ml4w-sidebar='~/dotfiles/eww/ml4w-sidebar/launch.sh'
|
||||
alias ml4w-hyprland='~/dotfiles/apps/ML4W_Hyprland_Settings-x86_64.AppImage'
|
||||
alias ml4w-diagnosis='~/dotfiles/scripts/diagnosis.sh'
|
||||
alias ml4w-diagnosis='~/dotfiles/hypr/scripts/diagnosis.sh'
|
||||
alias ml4w-hyprland-diagnosis='~/dotfiles/hypr/scripts/diagnosis.sh'
|
||||
alias ml4w-qtile-diagnosis='~/dotfiles/qtile/scripts/diagnosis.sh'
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Window Managers
|
||||
@ -57,7 +59,6 @@ alias Qtile='startx'
|
||||
# -----------------------------------------------------
|
||||
# GIT
|
||||
# -----------------------------------------------------
|
||||
|
||||
alias gs="git status"
|
||||
alias ga="git add"
|
||||
alias gc="git commit -m"
|
||||
@ -71,7 +72,6 @@ alias gcredential="git config credential.helper store"
|
||||
# -----------------------------------------------------
|
||||
# SCRIPTS
|
||||
# -----------------------------------------------------
|
||||
|
||||
alias gr='python ~/dotfiles/scripts/growthrate.py'
|
||||
alias ChatGPT='python ~/mychatgpt/mychatgpt.py'
|
||||
alias chat='python ~/mychatgpt/mychatgpt.py'
|
||||
@ -80,14 +80,12 @@ alias ascii='~/dotfiles/scripts/figlet.sh'
|
||||
# -----------------------------------------------------
|
||||
# VIRTUAL MACHINE
|
||||
# -----------------------------------------------------
|
||||
|
||||
alias vm='~/private/launchvm.sh'
|
||||
alias lg='~/dotfiles/scripts/looking-glass.sh'
|
||||
|
||||
# -----------------------------------------------------
|
||||
# EDIT CONFIG FILES
|
||||
# -----------------------------------------------------
|
||||
|
||||
alias confq='$EDITOR ~/dotfiles/qtile/config.py'
|
||||
alias confp='$EDITOR ~/dotfiles/picom/picom.conf'
|
||||
alias confb='$EDITOR ~/dotfiles/.bashrc'
|
||||
@ -95,13 +93,11 @@ alias confb='$EDITOR ~/dotfiles/.bashrc'
|
||||
# -----------------------------------------------------
|
||||
# EDIT NOTES
|
||||
# -----------------------------------------------------
|
||||
|
||||
alias notes='$EDITOR ~/notes.txt'
|
||||
|
||||
# -----------------------------------------------------
|
||||
# SYSTEM
|
||||
# -----------------------------------------------------
|
||||
|
||||
alias update-grub='sudo grub-mkconfig -o /boot/grub/grub.cfg'
|
||||
alias setkb='setxkbmap de;echo "Keyboard set back to de."'
|
||||
|
||||
@ -113,7 +109,7 @@ alias setkb='setxkbmap de;echo "Keyboard set back to de."'
|
||||
alias res1='xrandr --output DisplayPort-0 --mode 2560x1440 --rate 120'
|
||||
alias res2='xrandr --output DisplayPort-0 --mode 1920x1080 --rate 120'
|
||||
|
||||
export PATH="$HOME/.local/bin/:/usr/lib/ccache/bin/:$PATH"
|
||||
export PATH="/usr/lib/ccache/bin/:$PATH"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# DEVELOPMENT
|
||||
@ -131,12 +127,12 @@ eval "$(starship init bash)"
|
||||
cat ~/.cache/wal/sequences
|
||||
|
||||
# -----------------------------------------------------
|
||||
# PFETCH if on wm
|
||||
# Fastfetch if on wm
|
||||
# -----------------------------------------------------
|
||||
echo ""
|
||||
if [[ $(tty) == *"pts"* ]]; then
|
||||
pfetch
|
||||
fastfetch --config examples/13
|
||||
else
|
||||
echo
|
||||
if [ -f /bin/qtile ]; then
|
||||
echo "Start Qtile X11 with command Qtile"
|
||||
fi
|
||||
|
@ -80,7 +80,7 @@ if [ -d ~/dotfiles ] || ! test -L ~/.bashrc || [ -d ~/.config/hypr ] || [ -d ~/.
|
||||
if ! test -L ~/.config/swappy && [ -d ~/.config/swappy ] ;then
|
||||
echo " - $HOME/.config/swappy/"
|
||||
fi
|
||||
|
||||
echo
|
||||
# Start Backup
|
||||
|
||||
if gum confirm "Do you want to create a backup?" ;then
|
||||
|
@ -11,8 +11,9 @@ fi
|
||||
if [ -f ~/dotfiles-versions/backups/$datets/.bashrc-old ]; then
|
||||
echo "Backup is already available here ~/dotfiles-versions/backups/$datets/.bashrc-old"
|
||||
fi
|
||||
echo
|
||||
if [ ! -L ~/.bashrc ] && [ -f ~/.bashrc ]; then
|
||||
bash_confirm="Do you want to replace your existing .bashrc file with the dotfiles .bashrc file?"
|
||||
bash_confirm="Do you want to replace your existing .bashrc file with the ML4W dotfiles .bashrc file?"
|
||||
if gum confirm "$bash_confirm" ;then
|
||||
rm ~/.bashrc
|
||||
_installSymLink .bashrc ~/.bashrc ~/dotfiles/.bashrc ~/.bashrc
|
||||
@ -22,7 +23,7 @@ if [ ! -L ~/.bashrc ] && [ -f ~/.bashrc ]; then
|
||||
echo "Installation of the .bashrc file skipped."
|
||||
fi
|
||||
else
|
||||
bash_confirm="Do you want to install the dotfiles .bashrc file now?"
|
||||
bash_confirm="Do you want to install the ML4W dotfiles .bashrc file now?"
|
||||
if gum confirm "$bash_confirm" ;then
|
||||
if [ -L ~/.bashrc ] || [ -f ~/.bashrc ]; then
|
||||
rm ~/.bashrc
|
||||
|
@ -43,6 +43,10 @@ if [ -f ~/dotfiles/.settings/eww-monitor.sh ] ;then
|
||||
fi
|
||||
fi
|
||||
|
||||
# Replace pfetch and neofetch with fastfetch
|
||||
sed -i "s/pfetch/fastfetch/g" ~/dotfiles/.bashrc
|
||||
sed -i "s/neofetch/fastfetch/g" ~/dotfiles/.bashrc
|
||||
|
||||
# Create default folder structure
|
||||
xdg-user-dirs-update
|
||||
echo
|
||||
|
@ -2,7 +2,6 @@
|
||||
# Confirm Start
|
||||
# ------------------------------------------------------
|
||||
|
||||
echo "You can cancel the installation at any time with CTRL + C"
|
||||
SCRIPT=$(realpath "$0")
|
||||
SCRIPTPATH=$(dirname "$SCRIPT")
|
||||
if [ $SCRIPTPATH = "/home/$USER/dotfiles" ]; then
|
||||
@ -18,6 +17,7 @@ if [ ! -d ~/dotfiles ];then
|
||||
if gum confirm "DO YOU WANT TO START THE INSTALLATION OF THE ML4W DOTFILES NOW?" ;then
|
||||
echo "Installation started."
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo ":: Installation canceled."
|
||||
exit 130
|
||||
else
|
||||
echo ":: Installation canceled."
|
||||
@ -27,6 +27,7 @@ else
|
||||
if gum confirm "DO YOU WANT TO START THE UPDATE OF YOUR ML4W DOTFILES NOW?" ;then
|
||||
echo ":: Update started."
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo ":: Update canceled."
|
||||
exit 130
|
||||
else
|
||||
echo ":: Update canceled."
|
||||
|
@ -13,22 +13,23 @@ fi
|
||||
if [ ! -d ~/dotfiles ]; then
|
||||
echo "The script will now remove existing directories and files from ~/.config/"
|
||||
echo "and copy your prepared configuration from ~/dotfiles-versions/$version to ~/dotfiles"
|
||||
echo ""
|
||||
echo
|
||||
echo "Symbolic links will then be created from ~/dotfiles into your ~/.config/ directory."
|
||||
echo ""
|
||||
echo
|
||||
fi
|
||||
if [[ ! $(tty) == *"pts"* ]] && [ -d ~/dotfiles ]; then
|
||||
echo "You're running the script in tty. You can delete the existing ~/dotfiles folder now for a clean installation."
|
||||
echo "If not, the script will overwrite existing files but will not remove additional files or folders of your custom configuration."
|
||||
echo ""
|
||||
echo
|
||||
else
|
||||
if [ -d ~/dotfiles ]; then
|
||||
echo "The script will overwrite existing files but will not remove additional files or folders from your custom configuration."
|
||||
echo
|
||||
fi
|
||||
fi
|
||||
if [ ! -d ~/dotfiles ]; then
|
||||
echo "PLEASE BACKUP YOUR EXISTING CONFIGURATIONS in .config IF NEEDED!"
|
||||
echo ""
|
||||
echo
|
||||
fi
|
||||
|
||||
if gum confirm "Do you want to install the prepared dotfiles now?" ;then
|
||||
@ -50,8 +51,10 @@ if gum confirm "Do you want to install the prepared dotfiles now?" ;then
|
||||
echo "Skipped: DEV MODE!"
|
||||
fi
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo ":: Installation canceled"
|
||||
exit 130
|
||||
else
|
||||
echo ":: Installation canceled"
|
||||
exit
|
||||
fi
|
||||
echo ""
|
||||
echo
|
||||
|
@ -4,7 +4,7 @@ echo -e "${NONE}"
|
||||
|
||||
echo "The system check will test that essential packages and "
|
||||
echo "execution commands are available now on your system."
|
||||
|
||||
echo
|
||||
if gum confirm "Do you want to run a short system check?" ;then
|
||||
|
||||
_folderExists "$HOME/dotfiles" "Please repeat the installation."
|
||||
|
@ -2,6 +2,7 @@
|
||||
# Disable display manager
|
||||
# ------------------------------------------------------
|
||||
disman=0
|
||||
profile="Hyprland"
|
||||
echo -e "${GREEN}"
|
||||
figlet "Display Manager"
|
||||
echo -e "${NONE}"
|
||||
@ -30,12 +31,14 @@ if [ ! -d ~/dotfiles ];then
|
||||
disman=0
|
||||
echo "You have already installed a display manager on your system."
|
||||
echo "How do you want to proceed?"
|
||||
echo
|
||||
dmsel=$(gum choose "Keep current setup" "Deactivate current display manager" "Install sddm and theme")
|
||||
else
|
||||
disman=1
|
||||
echo "There is no display manager installed on your system."
|
||||
echo "After the installation/update of the dotfiles, you can start Hyprland with command Hyprland and Qtile with commmand Qtile (or startx)."
|
||||
echo "How do you want to proceed?"
|
||||
echo
|
||||
dmsel=$(gum choose "Keep current setup" "Install sddm and theme")
|
||||
fi
|
||||
else
|
||||
@ -43,59 +46,79 @@ else
|
||||
disman=0
|
||||
echo "You have already installed a display manager. If your display manager is working fine, you can keep the current setup."
|
||||
echo "How do you want to proceed?"
|
||||
echo
|
||||
dmsel=$(gum choose "Keep current setup" "Deactivate current display manager" "Install sddm and theme")
|
||||
else
|
||||
disman=1
|
||||
echo "There is no display manager installed on your system. You're starting Hyprland/Qtile with commands on tty."
|
||||
echo "How do you want to proceed?"
|
||||
echo
|
||||
dmsel=$(gum choose "Keep current setup" "Install sddm and theme")
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "${dmsel}" ] ;then
|
||||
echo "Installation canceled."
|
||||
echo ":: Installation canceled."
|
||||
exit
|
||||
fi
|
||||
if [ "$dmsel" == "Install sddm and theme" ] ;then
|
||||
|
||||
disman=0
|
||||
# Try to force the installation of sddm
|
||||
echo "Install sddm"
|
||||
yay -S --noconfirm sddm sddm-sugar-candy-git --ask 4
|
||||
echo ":: Install sddm"
|
||||
yay -S --noconfirm sddm --ask 4
|
||||
|
||||
# Enable sddm
|
||||
if [ -f /etc/systemd/system/display-manager.service ]; then
|
||||
sudo rm /etc/systemd/system/display-manager.service
|
||||
fi
|
||||
sudo systemctl enable sddm.service
|
||||
|
||||
# Create sddm.conf.d folder
|
||||
if [ ! -d /etc/sddm.conf.d/ ]; then
|
||||
sudo mkdir /etc/sddm.conf.d
|
||||
echo "Folder /etc/sddm.conf.d created."
|
||||
echo ":: Folder /etc/sddm.conf.d created."
|
||||
fi
|
||||
|
||||
# Copy sddm.conf
|
||||
sudo cp sddm/sddm.conf /etc/sddm.conf.d/
|
||||
echo "File /etc/sddm.conf.d/sddm.conf updated."
|
||||
echo ":: File /etc/sddm.conf.d/sddm.conf updated."
|
||||
|
||||
# Download and install sugar candy theme if not exists
|
||||
if [ ! -d /usr/share/sddm/themes/sugar-candy ]; then
|
||||
if [ -f ~/Downloads/sddm-sugar-candy-master.zip ] ;then
|
||||
rm ~/Downloads/sddm-sugar-candy-master.zip
|
||||
fi
|
||||
wget -P ~/Downloads/ https://framagit.org/MarianArlt/sddm-sugar-candy/-/archive/master/sddm-sugar-candy-master.zip
|
||||
if [ -f ~/Downloads/sddm-sugar-candy-master.zip ] ;then
|
||||
unzip -o -q ~/Downloads/sddm-sugar-candy-master.zip -d ~/Downloads/
|
||||
if [ ! -d /usr/share/sddm/themes/sugar-candy ] ;then
|
||||
sudo mkdir -p /usr/share/sddm/themes/sugar-candy
|
||||
fi
|
||||
sudo cp -r ~/Downloads/sddm-sugar-candy-master/* /usr/share/sddm/themes/sugar-candy
|
||||
echo ":: SDDM Sugar Candy Theme installed"
|
||||
else
|
||||
echo "ERROR: Sugar Candy Download not found"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Install background wallpaper for sddm
|
||||
if [ -f /usr/share/sddm/themes/sugar-candy/theme.conf ]; then
|
||||
|
||||
# Cache file for holding the current wallpaper
|
||||
sudo cp wallpapers/default.jpg /usr/share/sddm/themes/sugar-candy/Backgrounds/current_wallpaper.jpg
|
||||
echo "Default wallpaper copied into /usr/share/sddm/themes/sugar-candy/Backgrounds/"
|
||||
|
||||
echo ":: Default wallpaper copied into /usr/share/sddm/themes/sugar-candy/Backgrounds/"
|
||||
sudo cp sddm/theme.conf /usr/share/sddm/themes/sugar-candy/
|
||||
sudo sed -i 's/CURRENTWALLPAPER/'"current_wallpaper.jpg"'/' /usr/share/sddm/themes/sugar-candy/theme.conf
|
||||
echo "File theme.conf updated in /usr/share/sddm/themes/sugar-candy/"
|
||||
|
||||
echo ":: File theme.conf updated in /usr/share/sddm/themes/sugar-candy/"
|
||||
fi
|
||||
|
||||
elif [ "$dmsel" == "Deactivate current display manager" ] ;then
|
||||
|
||||
sudo rm /etc/systemd/system/display-manager.service
|
||||
echo "Current display manager deactivated."
|
||||
echo ":: Current display manager deactivated."
|
||||
disman=1
|
||||
|
||||
elif [ "$dmsel" == "Keep current setup" ] ;then
|
||||
echo "Keep current setup."
|
||||
echo ":: sddm setup skipped."
|
||||
else
|
||||
echo "Keep current setup."
|
||||
echo ":: sddm setup skipped."
|
||||
fi
|
||||
|
@ -1,24 +0,0 @@
|
||||
# ------------------------------------------------------
|
||||
# Select fcitx5 or not
|
||||
# ------------------------------------------------------
|
||||
echo -e "${GREEN}"
|
||||
figlet "fcitx5"
|
||||
echo -e "${NONE}"
|
||||
|
||||
if gum confirm "Do you want to install fcitx5 and chinese input method?" ;then
|
||||
packagesPacman=(
|
||||
"fcitx5"
|
||||
"fcitx5-chinese-addons"
|
||||
"fcitx5-configtool"
|
||||
"fcitx5-gtk"
|
||||
"fcitx5-qt"
|
||||
);
|
||||
packagesYay=(
|
||||
"fcitx5-skin-seasons"
|
||||
);
|
||||
source .install/install-packages.sh
|
||||
echo -e "\n# -----------------------------------------------------" >> ~/dotfiles-versions/${version}/hypr/hyprland.conf
|
||||
echo "# fcitx5 support" >> ~/dotfiles-versions/${version}/hypr/hyprland.conf
|
||||
echo "# -----------------------------------------------------" >> ~/dotfiles-versions/${version}/hypr/hyprland.conf
|
||||
echo "source = ~/dotfiles/hypr/conf/fcitx5.conf" >> ~/dotfiles-versions/${version}/hypr/hyprland.conf
|
||||
fi
|
6
.install/fish.sh
Normal file
6
.install/fish.sh
Normal file
@ -0,0 +1,6 @@
|
||||
# ------------------------------------------------------
|
||||
# install fish
|
||||
# ------------------------------------------------------
|
||||
packagesPacman=("fish");
|
||||
packagesYay=();
|
||||
source .install/install-packages.sh
|
@ -1,17 +0,0 @@
|
||||
|
||||
# ------------------------------------------------------
|
||||
# hidpi support
|
||||
# ------------------------------------------------------
|
||||
|
||||
echo -e "${GREEN}"
|
||||
figlet "hidpi"
|
||||
echo -e "${NONE}"
|
||||
|
||||
hidpiconfirm="Do you want 2x hidpi scale?"
|
||||
if gum confirm "$hidpiconfirm"; then
|
||||
sed -i -E 's/size = [0-9]+(\.[0-9]+)?/size = 16/' ~/dotfiles-versions/$version/alacritty/alacritty.toml
|
||||
sed -i -E 's/[0-9]+(\.[0-9]+)?/16/' ~/dotfiles-versions/$version/.settings/rofi-font.rasi
|
||||
echo -e '\n\n# hidpi scale\nsource = ~/dotfiles/hypr/conf/hidpi.conf' >> ~/dotfiles-versions/$version/hypr/conf/custom.conf
|
||||
sed -i -E 's/1/2/' ~/dotfiles-versions/$version/hypr/conf/monitors/default.conf
|
||||
echo ":: finished hidpi patch."
|
||||
fi
|
@ -6,9 +6,13 @@ echo -e "${GREEN}"
|
||||
figlet "Hook"
|
||||
echo -e "${NONE}"
|
||||
echo ":: The script has detected a hook.sh script."
|
||||
echo
|
||||
if gum confirm "Do you want to run the script now?"; then
|
||||
source ~/dotfiles-versions/hook.sh
|
||||
echo ":: hook.sh executed!"
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo ":: Installation canceled."
|
||||
exit 130
|
||||
else
|
||||
echo ":: Execution of hook.sh skipped."
|
||||
fi
|
||||
|
@ -5,9 +5,6 @@
|
||||
if [ -d ~/dotfiles-versions/$version/alacritty ]; then
|
||||
_installSymLink alacritty ~/.config/alacritty ~/dotfiles/alacritty/ ~/.config
|
||||
fi
|
||||
if [ -d ~/dotfiles-versions/$version/kitty ]; then
|
||||
_installSymLink kitty ~/.config/kitty ~/dotfiles/kitty/ ~/.config
|
||||
fi
|
||||
if [ -d ~/dotfiles-versions/$version/vim ]; then
|
||||
_installSymLink vim ~/.config/vim ~/dotfiles/vim/ ~/.config
|
||||
fi
|
||||
@ -40,14 +37,11 @@ fi
|
||||
if [ -d ~/dotfiles-versions/$version/swappy ]; then
|
||||
_installSymLink swappy ~/.config/swappy ~/dotfiles/swappy/ ~/.config
|
||||
fi
|
||||
if [ -d ~/dotfiles-versions/$version/swappy ]; then
|
||||
if [ -d ~/dotfiles-versions/$version/eww ]; then
|
||||
_installSymLink eww ~/.config/eww ~/dotfiles/eww/ ~/.config
|
||||
fi
|
||||
if [ -d ~/dotfiles-versions/$version/fastfetch ]; then
|
||||
_installSymLink fastfetch ~/.config/fastfetch ~/dotfiles/fastfetch/ ~/.config
|
||||
fi
|
||||
if [ -f ~/dotfiles-versions/$version/chrome-flags.conf ]; then
|
||||
_installSymLink chrome-flags ~/.config/chrome-flags.conf ~/dotfiles/chrome-flags.conf ~/.config
|
||||
fi
|
||||
echo ":: Symbolic links created."
|
||||
echo
|
||||
|
@ -7,3 +7,4 @@ README.md
|
||||
CHANGELOG
|
||||
LICENSE
|
||||
install.sh
|
||||
setup.sh
|
@ -7,10 +7,11 @@ echo -e "${NONE}"
|
||||
if [ -d ~/dotfiles ] ;then
|
||||
echo "Do you want to check for new packages only (faster installation)"
|
||||
echo "or do you want to reinstall all packages again? (more robust and can help to fix issues)"
|
||||
echo
|
||||
if gum confirm "How do you want to proceed?" --affirmative "New packages only" --negative "Force reinstallation" ;then
|
||||
force_install=0
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo "Installation canceled."
|
||||
echo ":: Installation canceled."
|
||||
exit 130
|
||||
else
|
||||
force_install=1
|
||||
@ -18,10 +19,11 @@ if [ -d ~/dotfiles ] ;then
|
||||
else
|
||||
echo "Do you want to reinstall all already installed packages and install the required new packages? (recommended and more robust)"
|
||||
echo "or do you want to install the new required packages only? (could be faster installation)"
|
||||
echo
|
||||
if gum confirm "How do you want to proceed?" --affirmative "Reinstall all packages" --negative "Install new packages only" ;then
|
||||
force_install=1
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo "Installation canceled."
|
||||
echo ":: Installation canceled."
|
||||
exit 130
|
||||
else
|
||||
force_install=0
|
||||
|
@ -6,22 +6,48 @@ echo -e "${GREEN}"
|
||||
figlet "Keyboard"
|
||||
echo -e "${NONE}"
|
||||
|
||||
setkeyboard=0
|
||||
if [ "$restored" == "1" ]; then
|
||||
echo ":: You have already restored your settings into the new installation."
|
||||
echo "You can repeat the keyboard setup again to choose between a desktop and laptop optimized configuration."
|
||||
echo
|
||||
if gum confirm "Do you want to setup your keyboard again?" ;then
|
||||
setkeyboard=0
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo ":: Installation canceled."
|
||||
exit 130
|
||||
else
|
||||
echo ":: Keyboard setup skipped."
|
||||
setkeyboard=1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$setkeyboard" == "0" ] ;then
|
||||
|
||||
# Default layout and variants
|
||||
keyboard_layout="us"
|
||||
keyboard_variant=""
|
||||
|
||||
_setupKeyboardLayout() {
|
||||
echo ""
|
||||
echo "Start typing = Search, RETURN = Confirm, CTRL-C = Cancel"
|
||||
keyboard_layout=$(localectl list-x11-keymap-layouts | gum filter --height 15 --placeholder "Find your keyboard layout...")
|
||||
echo ""
|
||||
echo ":: Keyboard layout changed to $keyboard_layout"
|
||||
echo ""
|
||||
_setupKeyboardVariant
|
||||
}
|
||||
|
||||
_setupKeyboardVariant() {
|
||||
if gum confirm "Do you want to set a variant of the keyboard?" ; then
|
||||
keyboard_variant=$(localectl list-x11-keymap-variants | gum filter --height 15 --placeholder "Find your keyboard layout...")
|
||||
echo ":: Keyboard variant changed to $keyboard_variant"
|
||||
fi
|
||||
_confirmKeyboard
|
||||
}
|
||||
|
||||
_confirmKeyboard() {
|
||||
echo
|
||||
echo "Current selected keyboard setup:"
|
||||
echo "Keyboard layout: $keyboard_layout"
|
||||
echo "Keyboard variant: $keyboard_variant"
|
||||
echo
|
||||
if gum confirm "Do you want proceed with this keyboard setup?" --affirmative "Proceed" --negative "Change" ;then
|
||||
return 0
|
||||
elif [ $? -eq 130 ]; then
|
||||
@ -31,23 +57,34 @@ _confirmKeyboard() {
|
||||
fi
|
||||
}
|
||||
|
||||
if [ "$restored" == "1" ]; then
|
||||
echo ":: You have already restored your settings into the new installation."
|
||||
else
|
||||
_confirmKeyboard
|
||||
|
||||
cp .install/templates/keyboard.conf ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
|
||||
if gum confirm "Are you using a laptop and would you like to enable the laptop presets?"; then
|
||||
cp .install/templates/keyboard-laptop.conf ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
|
||||
echo "source = ~/dotfiles/hypr/conf/layouts/laptop.conf" > ~/dotfiles-versions/$version/hypr/conf/layout.conf
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo ":: Installation canceled."
|
||||
exit 130
|
||||
else
|
||||
cp .install/templates/keyboard-default.conf ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
|
||||
fi
|
||||
cp .install/templates/autostart.sh ~/dotfiles-versions/$version/qtile/autostart.sh
|
||||
|
||||
SEARCH="KEYBOARD_LAYOUT"
|
||||
REPLACE="$keyboard_layout"
|
||||
sed -i "s/$SEARCH/$REPLACE/g" ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
|
||||
|
||||
SEARCH="KEYBOARD_VARIANT"
|
||||
REPLACE="$keyboard_variant"
|
||||
sed -i "s/$SEARCH/$REPLACE/g" ~/dotfiles-versions/$version/hypr/conf/keyboard.conf
|
||||
|
||||
SEARCH="KEYBOARD_LAYOUT"
|
||||
REPLACE="$keyboard_layout"
|
||||
sed -i "s/$SEARCH/$REPLACE/g" ~/dotfiles-versions/$version/qtile/autostart.sh
|
||||
|
||||
echo ""
|
||||
echo ":: Keyboard setup updated successfully."
|
||||
echo
|
||||
echo ":: Keyboard setup complete."
|
||||
echo
|
||||
echo "PLEASE NOTE: You can update your keyboard layout later in ~/dotfiles/hypr/conf/keyboard.conf"
|
||||
|
||||
fi
|
||||
|
@ -7,9 +7,13 @@ echo -e "${GREEN}"
|
||||
figlet "Neovim"
|
||||
echo -e "${NONE}"
|
||||
echo ":: The script has detected a nvim folder."
|
||||
echo
|
||||
if gum confirm "Do you want to install the ML4W Neovim configuration?"; then
|
||||
echo ":: ML4W Neovim configuration will be installed"
|
||||
neovim=1
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo ":: Installation canceled."
|
||||
exit 130
|
||||
else
|
||||
rm -rf ~/dotfiles-versions/$version/nvim/
|
||||
echo ":: Installation of ML4W Neovim configuration skipped."
|
||||
|
@ -1,12 +1,6 @@
|
||||
packagesPacman=(
|
||||
"pacman-contrib"
|
||||
"vim"
|
||||
"bat"
|
||||
"fzf"
|
||||
"zsh"
|
||||
"fastfetch"
|
||||
"ranger"
|
||||
"btop"
|
||||
"bluez"
|
||||
"bluez-utils"
|
||||
"neovim"
|
||||
@ -18,13 +12,13 @@ packagesPacman=(
|
||||
"starship"
|
||||
"mpv"
|
||||
"thunar"
|
||||
"nautilus"
|
||||
"mousepad"
|
||||
"noto-fonts"
|
||||
"otf-font-awesome"
|
||||
"ttf-fira-sans"
|
||||
"ttf-fira-code"
|
||||
"ttf-firacode-nerd"
|
||||
"ttf-firacode-nerd"
|
||||
"figlet"
|
||||
"vlc"
|
||||
"eza"
|
||||
@ -36,7 +30,6 @@ packagesPacman=(
|
||||
"python-gobject"
|
||||
"pavucontrol"
|
||||
"tumbler"
|
||||
"blueman"
|
||||
"papirus-icon-theme"
|
||||
"breeze-icons"
|
||||
"polkit-gnome"
|
||||
@ -46,6 +39,7 @@ packagesPacman=(
|
||||
"nm-connection-editor"
|
||||
"gvfs"
|
||||
"xdg-user-dirs"
|
||||
"xdg-desktop-portal-gtk"
|
||||
"networkmanager"
|
||||
"network-manager-applet"
|
||||
"xarchiver"
|
||||
@ -60,10 +54,12 @@ packagesPacman=(
|
||||
"guvcview"
|
||||
"jq"
|
||||
"rofi-wayland"
|
||||
"fastfetch"
|
||||
"blueman"
|
||||
);
|
||||
|
||||
packagesYay=(
|
||||
"vimix-cursors"
|
||||
"bibata-cursor-theme"
|
||||
"trizen"
|
||||
"pacseek"
|
||||
);
|
||||
|
@ -1,22 +1,19 @@
|
||||
packagesPacman=(
|
||||
"hyprland"
|
||||
"hyprpaper"
|
||||
"hyprlock"
|
||||
"hypridle"
|
||||
"xdg-desktop-portal-hyprland"
|
||||
"waybar"
|
||||
"grim"
|
||||
"slurp"
|
||||
"swappy"
|
||||
"cliphist"
|
||||
"hyprlock"
|
||||
"hypridle"
|
||||
"kitty"
|
||||
);
|
||||
|
||||
packagesYay=(
|
||||
"pyprland"
|
||||
"swww"
|
||||
"wlogout"
|
||||
"nwg-look"
|
||||
"emote"
|
||||
"eww"
|
||||
"hyprshade"
|
||||
);
|
||||
|
55
.install/paralleldownloads.sh
Executable file
55
.install/paralleldownloads.sh
Executable file
@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
# ------------------------------------------------------
|
||||
# Activate parallel downloads
|
||||
# ------------------------------------------------------
|
||||
|
||||
# Search for the line containing "ParallelDownloads = 5"
|
||||
line=$(grep "ParallelDownloads = 5" /etc/pacman.conf)
|
||||
|
||||
# Check if the line starts with a '#' character
|
||||
if [[ $line == \#* ]]; then
|
||||
echo -e "${GREEN}"
|
||||
figlet "Downloads"
|
||||
echo -e "${NONE}"
|
||||
echo ":: You can activate parallel downloads in pacman.conf to speedup the download of packages?"
|
||||
if gum confirm "Do you want to activate parallel downloads?"; then
|
||||
|
||||
# Remove the '#' character from the beginning of the line
|
||||
echo ":: Modifying pacman.conf to enable parallel downloads."
|
||||
new_line=$(echo $line | sed 's/^#//')
|
||||
|
||||
# Replace the original line with the new line in the configuration file
|
||||
sudo sed -i "s/$line/$new_line/g" /etc/pacman.conf
|
||||
|
||||
# Display a message indicating that the line was modified
|
||||
echo ":: Modified line: $new_line"
|
||||
elif [ $? -eq 130 ]; then
|
||||
exit
|
||||
else
|
||||
echo ":: Activation of parallel downloads skipped."
|
||||
fi
|
||||
else
|
||||
# Check if the line is already uncommented
|
||||
if [[ $line == ParallelDownloads\ =\ 5 ]]; then
|
||||
# Display a message indicating that the line does not need to be modified
|
||||
echo ":: pacman.conf already optimized for parallel downloads."
|
||||
else
|
||||
# Display a message indicating that the line is missing or commented out
|
||||
echo ":: Parallel downloads could not be activated. Required configuration in /etc/pacman.conf could not found."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Activate Color in pacman.conf
|
||||
if grep -Fxq "#Color" /etc/pacman.conf
|
||||
then
|
||||
sudo sed -i 's/^#Color/Color/' /etc/pacman.conf
|
||||
echo ":: Color activated in pacman.conf"
|
||||
else
|
||||
echo ":: Color is already activated in pacman.conf"
|
||||
fi
|
||||
if grep -Fxq "# Color" /etc/pacman.conf
|
||||
then
|
||||
sudo sed -i 's/^# Color/Color/' /etc/pacman.conf
|
||||
echo ":: Color activated in pacman.conf"
|
||||
fi
|
||||
echo
|
@ -4,13 +4,13 @@
|
||||
echo -e "${GREEN}"
|
||||
figlet "Profile"
|
||||
echo -e "${NONE}"
|
||||
|
||||
echo "SPACE = select/unselect a profile. RETURN = confirm. No selection = CANCEL"
|
||||
echo "Please select your installation profile."
|
||||
echo
|
||||
profile=$(gum choose --no-limit --cursor-prefix "( ) " --selected-prefix "(x) " --unselected-prefix "( ) " "Hyprland" "Qtile")
|
||||
|
||||
if [ -z "${profile}" ] ;then
|
||||
echo "No profile selected. Installation canceled."
|
||||
echo ":: No profile selected. Installation canceled."
|
||||
exit
|
||||
else
|
||||
echo "Profile/s selected:" $profile
|
||||
echo ":: Profile/s selected:" $profile
|
||||
fi
|
||||
|
@ -35,7 +35,4 @@ fi
|
||||
if [ -d ~/dotfiles-versions/$version/swappy ]; then
|
||||
_installSymLink swappy ~/.config/swappy ~/dotfiles/swappy/ ~/.config
|
||||
fi
|
||||
if [ -d ~/dotfiles-versions/$version/fastfetch ]; then
|
||||
_installSymLink fastfetch ~/.config/fastfetch ~/dotfiles/fastfetch/ ~/.config
|
||||
fi
|
||||
echo ":: Symbolic links created."
|
||||
|
@ -6,9 +6,9 @@ echo -e "${GREEN}"
|
||||
figlet "Reboot"
|
||||
echo -e "${NONE}"
|
||||
echo "A reboot of your system is recommended."
|
||||
echo
|
||||
if gum confirm "Do you want to reboot your system now?" ;then
|
||||
echo ":: Rebooting now ..."
|
||||
sleep 3
|
||||
gum spin --spinner dot --title "Rebooting now..." -- sleep 3
|
||||
systemctl reboot
|
||||
elif [ $? -eq 130 ]; then
|
||||
exit 130
|
||||
|
@ -8,13 +8,20 @@ monitorrestored=0
|
||||
|
||||
_showRestoreOptions() {
|
||||
echo "The following configurations can be transferred into the new installation."
|
||||
echo "(SPACE = select/unselect a profile. RETURN = confirm. CTRL-C/No selection = Skip Restore)"
|
||||
echo ""
|
||||
echo
|
||||
restorelist=""
|
||||
if [ -f ~/dotfiles/.bashrc ]; then
|
||||
restorelist+="~/dotfiles/.bashrc "
|
||||
selectedlist+="~/dotfiles/.bashrc,"
|
||||
fi
|
||||
if [ -f ~/dotfiles/.zshrc ]; then
|
||||
restorelist+="~/dotfiles/.zshrc "
|
||||
selectedlist+="~/dotfiles/.zshrc,"
|
||||
fi
|
||||
if [ -f ~/dotfiles/.p10k.zsh ]; then
|
||||
restorelist+="~/dotfiles/.p10k.zsh "
|
||||
selectedlist+="~/dotfiles/.p10k.zsh,"
|
||||
fi
|
||||
if [ -d ~/dotfiles/.settings ]; then
|
||||
restorelist+="~/dotfiles/.settings "
|
||||
selectedlist+="~/dotfiles/.settings,"
|
||||
@ -43,6 +50,10 @@ _showRestoreOptions() {
|
||||
restorelist+="~/dotfiles/hypr/conf/environment.conf "
|
||||
selectedlist+="~/dotfiles/hypr/conf/environment.conf,"
|
||||
fi
|
||||
if [ -f ~/dotfiles/hypr/conf/layout.conf ] && [ -d ~/dotfiles/hypr/conf/layouts/ ]; then
|
||||
restorelist+="~/dotfiles/hypr/conf/layout.conf "
|
||||
selectedlist+="~/dotfiles/hypr/conf/layout.conf,"
|
||||
fi
|
||||
if [ -f ~/dotfiles/hypr/conf/windowrule.conf ] && [ -d ~/dotfiles/hypr/conf/windowrules/ ]; then
|
||||
restorelist+="~/dotfiles/hypr/conf/windowrule.conf "
|
||||
selectedlist+="~/dotfiles/hypr/conf/windowrule.conf,"
|
||||
@ -88,7 +99,7 @@ _showRestoreOptions() {
|
||||
echo "No files selected to restore."
|
||||
confirmrestore=$(gum choose "Change restore" "Skip restore")
|
||||
if [ -z "${confirmrestore}" ] ;then
|
||||
echo "Installation canceled."
|
||||
echo ":: Installation canceled."
|
||||
exit
|
||||
fi
|
||||
if [ "$confirmrestore" == "Change restore" ]; then
|
||||
@ -151,6 +162,12 @@ _startRestore() {
|
||||
echo ":: Hyprland environment.conf restored!"
|
||||
fi
|
||||
fi
|
||||
if [[ $restoreselect == *"~/dotfiles/hypr/conf/layout.conf"* ]] || [[ $restoreselect == *"All"* ]] ; then
|
||||
if [ -f ~/dotfiles/hypr/conf/layout.conf ]; then
|
||||
cp ~/dotfiles/hypr/conf/layout.conf ~/dotfiles-versions/$version/hypr/conf/
|
||||
echo ":: Hyprland layout.conf restored!"
|
||||
fi
|
||||
fi
|
||||
if [[ $restoreselect == *"~/dotfiles/hypr/conf/windowrule.conf"* ]] || [[ $restoreselect == *"All"* ]] ; then
|
||||
if [ -f ~/dotfiles/hypr/conf/windowrule.conf ]; then
|
||||
cp ~/dotfiles/hypr/conf/windowrule.conf ~/dotfiles-versions/$version/hypr/conf/
|
||||
|
@ -4,7 +4,7 @@
|
||||
# -----------------------------------------------------
|
||||
input {
|
||||
kb_layout = KEYBOARD_LAYOUT
|
||||
kb_variant =
|
||||
kb_variant = KEYBOARD_VARIANT
|
||||
kb_model =
|
||||
kb_options =
|
||||
numlock_by_default = true
|
||||
@ -18,7 +18,17 @@ input {
|
||||
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
# for desktop
|
||||
natural_scroll = false
|
||||
|
||||
# for laptop
|
||||
# natural_scroll = yes
|
||||
# middle_button_emulation = true
|
||||
# clickfinger_behavior = 1
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
}
|
35
.install/templates/keyboard-laptop.conf
Normal file
35
.install/templates/keyboard-laptop.conf
Normal file
@ -0,0 +1,35 @@
|
||||
# -----------------------------------------------------
|
||||
# Keyboard Layout
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||
# -----------------------------------------------------
|
||||
input {
|
||||
kb_layout = KEYBOARD_LAYOUT
|
||||
kb_variant = KEYBOARD_VARIANT
|
||||
kb_model =
|
||||
kb_options =
|
||||
numlock_by_default = true
|
||||
mouse_refocus = false
|
||||
|
||||
# For United States
|
||||
# kb_layout = us
|
||||
# kb_variant = intl
|
||||
# kb_model = pc105
|
||||
# kb_options =
|
||||
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
# for desktop
|
||||
# natural_scroll = false
|
||||
|
||||
# for laptop
|
||||
natural_scroll = true
|
||||
middle_button_emulation = true
|
||||
clickfinger_behavior = true
|
||||
disable_while_typing = true
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
}
|
@ -6,10 +6,12 @@ echo -e "${GREEN}"
|
||||
figlet "System Update"
|
||||
echo -e "${NONE}"
|
||||
echo "It's important that your system is up-to-date before you proceed."
|
||||
echo
|
||||
if gum confirm "Do you want to update your system with yay now?" ;then
|
||||
echo ":: Update started"
|
||||
yay
|
||||
elif [ $? -eq 130 ]; then
|
||||
echo ":: Installation canceled."
|
||||
exit 130
|
||||
else
|
||||
echo ":: System update skipped"
|
||||
|
@ -4,6 +4,7 @@ echo -e "${GREEN}"
|
||||
figlet "KVM VM"
|
||||
echo -e "${NONE}"
|
||||
echo "The script has detected that you run the installation in a KVM virtual machine."
|
||||
echo
|
||||
if grep -Fxq "kvm.conf" ~/dotfiles-versions/$version/hypr/conf/environment.conf
|
||||
then
|
||||
echo ":: KVM Environment already set."
|
||||
|
@ -5,17 +5,16 @@ echo -e "${GREEN}"
|
||||
figlet "Wallpapers"
|
||||
echo -e "${NONE}"
|
||||
if [ ! -d ~/wallpaper ]; then
|
||||
echo "Do you want to download the wallpapers from repository https://gitea.phywyj.dynv6.net/wyj/wallpaper.git ?"
|
||||
echo "Do you want to download the wallpapers from repository https://gitlab.com/stephan-raabe/wallpaper/ ?"
|
||||
echo "If not, the script will install 3 default wallpapers in ~/wallpaper/"
|
||||
echo ""
|
||||
if gum confirm "Do you want to download the repository?" ;then
|
||||
# wget -P ~/Downloads/ https://gitlab.com/stephan-raabe/wallpaper/-/archive/main/wallpaper-main.zip
|
||||
# unzip -o ~/Downloads/wallpaper-main.zip -d ~/Downloads/
|
||||
# if [ ! -d ~/wallpaper/ ]; then
|
||||
# mkdir ~/wallpaper
|
||||
# fi
|
||||
# cp ~/Downloads/wallpaper-main/* ~/wallpaper/
|
||||
git clone https://gitea.phywyj.dynv6.net/wyj/wallpaper.git ~/wallpaper
|
||||
wget -P ~/Downloads/ https://gitlab.com/stephan-raabe/wallpaper/-/archive/main/wallpaper-main.zip
|
||||
unzip -o ~/Downloads/wallpaper-main.zip -d ~/Downloads/
|
||||
if [ ! -d ~/wallpaper/ ]; then
|
||||
mkdir ~/wallpaper
|
||||
fi
|
||||
cp ~/Downloads/wallpaper-main/* ~/wallpaper/
|
||||
echo "Wallpapers from the repository installed successfully."
|
||||
elif [ $? -eq 130 ]; then
|
||||
exit 130
|
||||
|
@ -1,12 +1,12 @@
|
||||
# ------------------------------------------------------
|
||||
# Check if yay is installed
|
||||
# ------------------------------------------------------
|
||||
echo -e "${GREEN}"
|
||||
figlet "yay"
|
||||
echo -e "${NONE}"
|
||||
if sudo pacman -Qs yay > /dev/null ; then
|
||||
echo ":: yay is already installed!"
|
||||
else
|
||||
echo -e "${GREEN}"
|
||||
figlet "yay"
|
||||
echo -e "${NONE}"
|
||||
echo ":: yay is not installed. Starting the installation!"
|
||||
_installPackagesPacman "base-devel"
|
||||
SCRIPT=$(realpath "$0")
|
||||
@ -18,4 +18,4 @@ else
|
||||
cd $temp_path
|
||||
echo ":: yay has been installed successfully."
|
||||
fi
|
||||
echo ""
|
||||
echo
|
22
.install/zsh.sh
Normal file
22
.install/zsh.sh
Normal file
@ -0,0 +1,22 @@
|
||||
# ------------------------------------------------------
|
||||
# install zsh and zinit
|
||||
# ------------------------------------------------------
|
||||
packagesPacman=("zsh");
|
||||
|
||||
echo "Please select the zsh plugin manager:"
|
||||
zsh_manager=$(gum choose --limit=1 --cursor-prefix "( ) " --selected-prefix "(x) " --unselected-prefix "( ) " "oh my zsh" "zinit")
|
||||
if [[ "${zsh_manager}" == *"oh my zsh"* ]]; then
|
||||
source .install/install-packages.sh
|
||||
if [ ! -d ~/.oh-my-zsh ]; then
|
||||
RUNZSH=no CHSH=no sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
||||
fi
|
||||
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
|
||||
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
|
||||
git clone https://github.com/zdharma-continuum/fast-syntax-highlighting.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/fast-syntax-highlighting
|
||||
_installSymLink zshrc ~/.zshrc ~/dotfiles/.zshrc_ohmyzsh ~/.zshrc
|
||||
else
|
||||
packagesYay=("zinit");
|
||||
source .install/install-packages.sh
|
||||
_installSymLink zshrc ~/.zshrc ~/dotfiles/.zshrc_zinit ~/.zshrc
|
||||
fi
|
||||
_installSymLink p10k ~/.p10k.zsh ~/dotfiles/.p10k.zsh ~/
|
25
.install/zshfish.sh
Normal file
25
.install/zshfish.sh
Normal file
@ -0,0 +1,25 @@
|
||||
# ------------------------------------------------------
|
||||
# Select additional shell
|
||||
# ------------------------------------------------------
|
||||
echo -e "${GREEN}"
|
||||
figlet "Zsh Fish"
|
||||
echo -e "${NONE}"
|
||||
echo "Please select if you want to install zsh or fish."
|
||||
echo
|
||||
zshfish=$(gum choose --no-limit --cursor-prefix "( ) " --selected-prefix "(x) " --unselected-prefix "( ) " "zsh" "fish")
|
||||
|
||||
if [ -z "${zshfish}" ] ;then
|
||||
echo ":: No shell selected. Keep using bash."
|
||||
else
|
||||
echo "Please select your default shell."
|
||||
echo
|
||||
shell=$(echo -e "bash\n$zshfish" | gum choose --limit=1 --cursor-prefix "( ) " --selected-prefix "(x) " --unselected-prefix "( ) ")
|
||||
if [[ $zshfish == *"zsh"* ]]; then
|
||||
echo ":: zsh selected"
|
||||
source .install/zsh.sh
|
||||
fi
|
||||
if [[ $zshfish == *"fish"* ]]; then
|
||||
echo ":: fish selected"
|
||||
source .install/fish.sh
|
||||
fi
|
||||
fi
|
@ -1 +1 @@
|
||||
thunar
|
||||
nautilus
|
1
.settings/hyprshade.sh
Normal file
1
.settings/hyprshade.sh
Normal file
@ -0,0 +1 @@
|
||||
hyprshade_filter="blue-light-filter"
|
@ -1,3 +0,0 @@
|
||||
* {
|
||||
border-radius: 15px;
|
||||
}
|
@ -1,3 +1 @@
|
||||
* {
|
||||
border-width: 2px;
|
||||
}
|
||||
* { border-width: 3px; }
|
1
.settings/wallpaper-effect.sh
Normal file
1
.settings/wallpaper-effect.sh
Normal file
@ -0,0 +1 @@
|
||||
off
|
2
.settings/wallpaper-folder.sh
Normal file
2
.settings/wallpaper-folder.sh
Normal file
@ -0,0 +1,2 @@
|
||||
# Enter the path to the folder that includes your wallpapers
|
||||
wallpaper_folder=$HOME/wallpaper
|
@ -1 +1 @@
|
||||
2.9
|
||||
2.9.1.2
|
@ -1 +1 @@
|
||||
2900
|
||||
2912
|
128
.zshrc
128
.zshrc
@ -1,128 +0,0 @@
|
||||
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||
# Initialization code that may require console input (password prompts, [y/n]
|
||||
# confirmations, etc.) must go above this block; everything else may go below.
|
||||
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||
fi
|
||||
|
||||
# If you come from bash you might have to change your $PATH.
|
||||
export PATH=$HOME/bin:$HOME/.cargo/bin:$HOME/.local/bin:/usr/local/bin:$PATH
|
||||
|
||||
# Path to your oh-my-zsh installation.
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
# Set name of the theme to load --- if set to "random", it will
|
||||
# load a random theme each time oh-my-zsh is loaded, in which case,
|
||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||
# ZSH_THEME="robbyrussell"
|
||||
ZSH_THEME="powerlevel10k/powerlevel10k"
|
||||
|
||||
# Set list of themes to pick from when loading at random
|
||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||
# a theme from this variable instead of looking in $ZSH/themes/
|
||||
# If set to an empty array, this variable will have no effect.
|
||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||
|
||||
# Uncomment the following line to use case-sensitive completion.
|
||||
# CASE_SENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Uncomment one of the following lines to change the auto-update behavior
|
||||
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||
|
||||
# Uncomment the following line to change how often to auto-update (in days).
|
||||
# zstyle ':omz:update' frequency 13
|
||||
|
||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||
|
||||
# Uncomment the following line to disable colors in ls.
|
||||
# DISABLE_LS_COLORS="true"
|
||||
|
||||
# Uncomment the following line to disable auto-setting terminal title.
|
||||
# DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to enable command auto-correction.
|
||||
# ENABLE_CORRECTION="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# You can also set it to another string to have that shown instead of the default red dots.
|
||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||
# COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Uncomment the following line if you want to disable marking untracked files
|
||||
# under VCS as dirty. This makes repository status check for large repositories
|
||||
# much, much faster.
|
||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# Uncomment the following line if you want to change the command execution time
|
||||
# stamp shown in the history command output.
|
||||
# You can set one of the optional three formats:
|
||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||
# or set a custom format using the strftime function format specifications,
|
||||
# see 'man strftime' for details.
|
||||
# HIST_STAMPS="mm/dd/yyyy"
|
||||
|
||||
# Would you like to use another custom folder than $ZSH/custom?
|
||||
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||
|
||||
# Which plugins would you like to load?
|
||||
# Standard plugins can be found in $ZSH/plugins/
|
||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
# Add wisely, as too many plugins slow down shell startup.
|
||||
plugins=(git colored-man-pages eza z sudo zsh-autosuggestions fast-syntax-highlighting)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# User configuration
|
||||
|
||||
# export MANPATH="/usr/local/man:$MANPATH"
|
||||
|
||||
# You may need to manually set your language environment
|
||||
# export LANG=en_US.UTF-8
|
||||
|
||||
# Preferred editor for local and remote sessions
|
||||
# if [[ -n $SSH_CONNECTION ]]; then
|
||||
# export EDITOR='vim'
|
||||
# else
|
||||
# export EDITOR='mvim'
|
||||
# fi
|
||||
|
||||
# Compilation flags
|
||||
# export ARCHFLAGS="-arch x86_64"
|
||||
|
||||
# Set personal aliases, overriding those provided by oh-my-zsh libs,
|
||||
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
|
||||
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
|
||||
# For a full list of active aliases, run `alias`.
|
||||
#
|
||||
# Example aliases
|
||||
# alias zshconfig="mate ~/.zshrc"
|
||||
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||
|
||||
alias sshkoko="TERM=xterm-256color ssh ywang2020@koko-login.hpc.fau.edu"
|
||||
alias wakemac="wakeonlan 18:C0:4D:8D:56:0E"
|
||||
alias ls="eza --icons=auto"
|
||||
alias githashselector="git log --oneline | gum filter | cut -d' ' -f1"
|
||||
alias bat="bat --paging=never"
|
||||
|
||||
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||
|
||||
eval $(thefuck --alias)
|
||||
eval "$(fzf --zsh)"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# PYWAL
|
||||
# -----------------------------------------------------
|
||||
cat ~/.cache/wal/sequences
|
||||
|
||||
export EDITOR=nvim
|
88
.zshrc_ohmyzsh
Normal file
88
.zshrc_ohmyzsh
Normal file
@ -0,0 +1,88 @@
|
||||
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||
# Initialization code that may require console input (password prompts, [y/n]
|
||||
# confirmations, etc.) must go above this block; everything else may go below.
|
||||
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||
fi
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Oh my zsh settings
|
||||
# -----------------------------------------------------
|
||||
|
||||
# Path to your oh-my-zsh installation.
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
# ZSH_THEME="robbyrussell"
|
||||
ZSH_THEME="powerlevel10k/powerlevel10k"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
zstyle ':omz:update' mode auto
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# You can also set it to another string to have that shown instead of the default red dots.
|
||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||
COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Plugins
|
||||
# -----------------------------------------------------
|
||||
plugins=(git colored-man-pages eza z sudo zsh-autosuggestions fast-syntax-highlighting)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Variables
|
||||
# -----------------------------------------------------
|
||||
export PATH=$HOME/.cargo/bin:$HOME/.local/bin:/usr/local/bin:$PATH
|
||||
# export MANPATH="/usr/local/man:$MANPATH"
|
||||
|
||||
export LANG=en_US.UTF-8
|
||||
|
||||
export EDITOR='nvim'
|
||||
|
||||
export MAKEFLAGS='-j$(nproc)'
|
||||
export CFLAGS='-march=native -O2 -pipe'
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Alias
|
||||
# -----------------------------------------------------
|
||||
alias sshkoko="TERM=xterm-256color ssh ywang2020@koko-login.hpc.fau.edu"
|
||||
alias wakemac="wakeonlan 18:C0:4D:8D:56:0E"
|
||||
alias ls="eza --icons=auto"
|
||||
alias githashselector="git log --oneline | gum filter | cut -d' ' -f1"
|
||||
alias bat="bat --paging=never"
|
||||
alias code="code --ozone-platform=wayland --enable-wayland-ime"
|
||||
# fix ssh if in kitty
|
||||
if [[ "$TERM" == "xterm-kitty" && -z "$SSH_CONNECTION" ]]; then
|
||||
alias ssh="kitty +kitten ssh"
|
||||
fi
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Completion
|
||||
# -----------------------------------------------------
|
||||
[[ -f /home/wyj/.dart-cli-completion/zsh-config.zsh ]] && . /home/wyj/.dart-cli-completion/zsh-config.zsh || true
|
||||
|
||||
# -----------------------------------------------------
|
||||
# evals
|
||||
# -----------------------------------------------------
|
||||
eval $(thefuck --alias)
|
||||
eval "$(fzf --zsh)"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# PYWAL
|
||||
# -----------------------------------------------------
|
||||
cat ~/.cache/wal/sequences
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Custom
|
||||
# -----------------------------------------------------
|
||||
[[ ! -f ~/.custom.zsh ]] || source ~/.custom.zsh
|
||||
|
||||
# -----------------------------------------------------
|
||||
# miscs
|
||||
# -----------------------------------------------------
|
||||
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
64
.zshrc_zinit
Normal file
64
.zshrc_zinit
Normal file
@ -0,0 +1,64 @@
|
||||
# ---------------------------------------------------
|
||||
# Zinit and plugins
|
||||
# ---------------------------------------------------
|
||||
source /usr/share/zinit/zinit.zsh
|
||||
|
||||
# Load powerlevel10k theme
|
||||
zinit ice depth"1" # git clone depth
|
||||
zinit light romkatv/powerlevel10k
|
||||
|
||||
# Load plugins
|
||||
zinit light zsh-users/zsh-autosuggestions
|
||||
zinit light zdharma-continuum/fast-syntax-highlighting
|
||||
# oh-my-zsh plugins
|
||||
zi snippet OMZL::git.zsh
|
||||
zi snippet OMZP::git
|
||||
zi snippet OMZP::sudo
|
||||
zi snippet OMZP::colored-man-pages
|
||||
zi snippet OMZP::eza
|
||||
zi snippet OMZP::z
|
||||
# others
|
||||
zplugin ice as"program" pick"bin/git-dsf"
|
||||
zplugin light zdharma-continuum/zsh-diff-so-fancy
|
||||
|
||||
# ----------------------------------------------------
|
||||
# Variables
|
||||
# ----------------------------------------------------
|
||||
export PATH=$HOME/bin:$HOME/.cargo/bin:$HOME/.local/bin:/usr/local/bin:$PATH
|
||||
export EDITOR=vim
|
||||
|
||||
# ----------------------------------------------------
|
||||
# Alias
|
||||
# ----------------------------------------------------
|
||||
alias sshkoko="TERM=xterm-256color ssh ywang2020@koko-login.hpc.fau.edu"
|
||||
alias wakemac="wakeonlan 18:C0:4D:8D:56:0E"
|
||||
alias eza="eza --icons=auto"
|
||||
alias githashselector="git log --oneline | gum filter | cut -d' ' -f1"
|
||||
alias bat="bat --paging=never"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# evals
|
||||
# -----------------------------------------------------
|
||||
eval $(thefuck --alias)
|
||||
eval "$(fzf --zsh)"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Miscs
|
||||
# -----------------------------------------------------
|
||||
# fix ssh if in kitty
|
||||
if [[ "$TERM" == "xterm-kitty" && -z "$SSH_CONNECTION" ]]; then
|
||||
alias ssh="kitty +kitten ssh"
|
||||
fi
|
||||
|
||||
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||
|
||||
# -----------------------------------------------------
|
||||
# PYWAL
|
||||
# -----------------------------------------------------
|
||||
cat ~/.cache/wal/sequences
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Custom
|
||||
# -----------------------------------------------------
|
||||
[[ ! -f ~/.custom.zsh ]] || source ~/.custom.zsh
|
@ -1,3 +1,39 @@
|
||||
Version 2.9.1.2
|
||||
https://gitlab.com/stephan-raabe/dotfiles/-/releases/2.9.1.1
|
||||
--------------------------------------------------------
|
||||
- Workspaces module in waybar updated to enable scroll to change the workspace https://gitlab.com/stephan-raabe/dotfiles/-/merge_requests/114
|
||||
- More functions deactivated in Game Mode (SUPER+ALT+G)
|
||||
- Keybindings rofi menu updated with keybinding description. Open with right mouse click on Apps waybar module
|
||||
- Fixed bug of ML4W Hyprland Settings App with Hyprland 0.41.0
|
||||
|
||||
Version 2.9.1.1
|
||||
https://gitlab.com/stephan-raabe/dotfiles/-/releases/2.9.1.1
|
||||
--------------------------------------------------------
|
||||
- New installation method for sddm sugar candy theme. Instead of using yay, the installer will download the ZIP from the repository, extract it to the Downloads folder and copy the files to the destination folder.
|
||||
- A gamemode can be toggled with SUPER+ALT+G. The gaming mode will disable the animations and blur.
|
||||
- Added a black ML4W Icon for black waybar themes
|
||||
|
||||
Version 2.9.1
|
||||
https://gitlab.com/stephan-raabe/dotfiles/-/releases/2.9.1
|
||||
--------------------------------------------------------
|
||||
- Hyprpaper is the default wallpaper engine. swww will not be installed by the installer anymore. You can still switch to swww in the Dotfiles Settings App (System tab) but you need to install swww manually with yay -S swww
|
||||
- pfetch has been replaced with fastfetch (requires an update of the .bashrc) https://gitlab.com/stephan-raabe/dotfiles/-/issues/315
|
||||
- Directory for wallpapers can be customized with new .settings/wallpaper-folder.sh https://gitlab.com/stephan-raabe/dotfiles/-/issues/325
|
||||
- Screen shading possible with hyprshade. SUPER+SHIFT+S to toggle hyprshade. The shader can be defined with the shader module in waybar or in ~/dotfiles/.settings/hyprshade.sh
|
||||
For auto-activation at a dedicated time please set the filter to off and follow the instructions here https://github.com/loqusion/hyprshade. https://gitlab.com/stephan-raabe/dotfiles/-/issues/329
|
||||
- Nautilus defined as the new default file manager. Thunar is still available.
|
||||
- Waybar can be toggles with SUPER+CTRL+B https://gitlab.com/stephan-raabe/dotfiles/-/issues/299
|
||||
- Installation script optimized for new gum
|
||||
- During the installation of the keyboard, it can be selected between a desktop and laptop optimized configuration https://gitlab.com/stephan-raabe/dotfiles/-/issues/319.
|
||||
- RDP launch script updated https://gitlab.com/stephan-raabe/dotfiles/-/issues/336
|
||||
- Nvidia environment configuration updated https://gitlab.com/stephan-raabe/dotfiles/-/issues/327
|
||||
- Pacman can be configured for parallel downloads, colors and more during the installation and with the ML4W Settings app https://gitlab.com/stephan-raabe/dotfiles/-/issues/316
|
||||
- Image conversions with imagemagick can be enabled for wallpapers. Right click on wallpaper module in waybar. You can add more effects in ~/dotfiles/hypr/effects/wallpaper
|
||||
- ChatGPT Window opens on the left screen side in floating mode
|
||||
- New default wallpaper
|
||||
- Added hypridle inhibitor waybar module to toggle screen locking with hyprlock
|
||||
- Tooltips added to all waybar modules
|
||||
|
||||
Version 2.9
|
||||
https://gitlab.com/stephan-raabe/dotfiles/-/releases/2.9
|
||||
--------------------------------------------------------
|
532
README.md
532
README.md
@ -1,8 +1,8 @@
|
||||
# ML4W Dotfiles 2.9
|
||||
# ML4W Dotfiles 2.9.1.2
|
||||
|
||||
An advanced configuration of Hyprland and Qtile for Arch Linux based distributions. This package includes an installation script to install and setup the required components.
|
||||
An advanced configuration of Hyprland for Arch Linux based distributions. This package includes an installation script to install and setup the required components.
|
||||
|
||||
[![Screenshot](screenshots/v29/screenshot-29-1.png "Screenshot")](screenshots/v29/screenshot-29-1.png)
|
||||
[![Screenshot](screenshots/screenshot2.png "Screenshot")](screenshots/screenshot2.png)
|
||||
|
||||
The ML4W Dotfiles are available as
|
||||
|
||||
@ -11,528 +11,43 @@ The ML4W Dotfiles are available as
|
||||
|
||||
YouTube Video [https://youtu.be/HMxHUvN6VGo](https://youtu.be/HMxHUvN6VGo)
|
||||
|
||||
[TOC]
|
||||
|
||||
# Installation
|
||||
|
||||
The package includes an installation script that will guide you through all steps of the installation or update process.
|
||||
|
||||
> PLEASE NOTE: Every Linux distribution and setup can be different. Therefore, I cannot guarantee that the installation will work everywhere. Installation on your own risk.
|
||||
|
||||
## Supported platforms
|
||||
|
||||
The dotfiles are tested with the following Arch based distributions:
|
||||
|
||||
- Arch Linux (recommended)
|
||||
- EndeavourOS
|
||||
- Garuda Linux
|
||||
- Arco Linux
|
||||
|
||||
The installation should work on all Arch Linux based distributions as well.
|
||||
|
||||
> **For Manjaro users:** Hyprland and required packages are under ongoing development. That's why it could be possible that some packages are not immediatly available on Manjaro. But usually, the packages will be published later. Maybe you can install required packages manually.
|
||||
|
||||
> **For Arco Linux users:** Please reinstall/force the installation of all packages during the installation/update process of the install script. The script will also offer to remove ttf-ms-fonts if installed to avoid issues with icons on waybar.
|
||||
|
||||
## Before you start
|
||||
|
||||
**PLEASE BACKUP YOUR EXISTING .config FOLDER WITH YOUR DOTFILES BEFORE STARTING THE SCRIPTS FOR INITIAL INSTALLTION.**
|
||||
|
||||
The installation script will create a backups from configurations of your .config folder that will be overwritten from the installation procedure and previous ML4W Dotfiles installation.
|
||||
|
||||
If possible, please create a snapshot of your current system if snapper or Timeshift is installed and available.
|
||||
|
||||
## Installation
|
||||
|
||||
The easiest way to install the ML4W Dotfiles is to use the ML4W Dotfiles Installer App.
|
||||
The installation should work on all Arch Linux based distributions. [You can find more information here](https://gitlab.com/stephan-raabe/dotfiles/-/wikis/home).
|
||||
|
||||
[You can download the app here.](https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/apps/installer.AppImage) (Right click + Save link as... into your Downloads Folder)
|
||||
The easiest way is to use the setup.sh script. The script will download all files from GitLab and start the installation automatically.
|
||||
|
||||
Just copy/enter the following command into your terminal.
|
||||
|
||||
```
|
||||
# 1.) Change to the Downloads folder
|
||||
cd ~/Downloads
|
||||
|
||||
# 2.) Make the file executable
|
||||
chmod +x installer.AppImage
|
||||
|
||||
# 3.) Start the App from your terminal with
|
||||
./installer.AppImage
|
||||
bash <(curl -s https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/setup.sh)
|
||||
```
|
||||
|
||||
Or with download the Installer App with wget if your starting point is a minimal Arch Linux with without DE from tty:
|
||||
> PLEASE NOTE: Every Linux distribution, setup and personal configuration can be different. Therefore, I cannot guarantee that the ML4W Dotfiles will work everywhere. Installation at your own risk.
|
||||
|
||||
```
|
||||
# 0.) Install required packages
|
||||
sudo pacman -S wget fuse2 # Only required for Minimal Arch installations. If wget or libfuse.so.2 is not installed.
|
||||
## Wiki
|
||||
|
||||
# 1.) Create Downloads folder
|
||||
mkdir ~/Downloads # If Downloads folder doesn't exists
|
||||
You can find the complete documentation of the ML4W Dotfiles in the Wiki. <b>[Open the Wiki here](https://gitlab.com/stephan-raabe/dotfiles/-/wikis/home)</b>
|
||||
|
||||
# 2.) Download the installer
|
||||
wget -P ~/Downloads/ https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/apps/installer.AppImage
|
||||
## Contributing
|
||||
|
||||
# 3.) Change to the Downloads folder
|
||||
cd ~/Downloads
|
||||
Thanks for using the ML4W Dotfiles on your system. If you find a problem or a bug, please [report your issue on this page](https://gitlab.com/stephan-raabe/dotfiles/-/issues/?sort=created_date&state=opened).
|
||||
|
||||
# 4.) Make the file executable
|
||||
chmod +x installer.AppImage
|
||||
You can also visit the [ML4W Discord Server](https://discord.gg/c4fJK7Za3g) to start a discussion with other users.
|
||||
|
||||
# 5.) Start the App from your terminal with
|
||||
./installer.AppImage
|
||||
## Screenshots
|
||||
|
||||
```
|
||||
[![Screenshot](screenshots/screenshot1.png "Screenshot")](screenshots/screenshot1.png)
|
||||
|
||||
Alternatively you can install with GIT.
|
||||
[![Screenshot](screenshots/screenshot3.png "Screenshot")](screenshots/screenshot3.png)
|
||||
|
||||
## Update
|
||||
[![Screenshot](screenshots/screenshot4.png "Screenshot")](screenshots/screenshot5.png)
|
||||
|
||||
You can use the integrated update feature to update your dotfiles to the main or rolling release whenever you want.
|
||||
|
||||
![Update](screenshots/welcome-update-dotfiles.png "Updates")
|
||||
|
||||
Start the ML4W Welcome App. You will see a notification when an update is available. You can start the update or re-installation of the ML4W Dotfiles at any time.
|
||||
|
||||
You can force a clean re-installation of the dotfiles by removing the folder ~/dotfiles before starting the installation.
|
||||
|
||||
> Please note that you can create a backup of your existing configuration with the backup feature of the install script. It's recommended to remove the folder ~/dotfiles only after creating a backup.
|
||||
|
||||
## Uninstall
|
||||
|
||||
You can use the integrated uninstallation function (ML4W Dotfiles Uninstaller App) to remove the ML4W Dotfiles from your system.
|
||||
|
||||
Please select "Uninstall Dotfiles" from the ML4W Welcome App or execute ~/dotfiles/uninstall.sh
|
||||
|
||||
The ML4W Dotfiles Uninstaller App will remove the dotfiles folder, related symbolic links and the desktop files of the ML4W Apps.
|
||||
|
||||
The script will also try to restore old configurations back into .config if available and restored during the installation of the ML4W Dotfiles.
|
||||
|
||||
## Installation in a KVM virtual machine
|
||||
|
||||
Qtile X11 works fine in a KVM virtual machine. The Hyprland performance is low but it's enough for testing new features.
|
||||
|
||||
In virt-manager please make sure that 3D acceleration is enabled in Video Virtio and the Listen type is set to None in Display Spice.
|
||||
|
||||
To fix the mouse issue on Hyprland, open the Hyprland settings with <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>S</kbd> and select in Environments the variation kvm.conf
|
||||
|
||||
## Hyprland & NVIDIA
|
||||
|
||||
There is no official Hyprland support for Nvidia hardware. However, you might make it work properly following this page.
|
||||
https://wiki.hyprland.org/Nvidia/
|
||||
|
||||
Users have reported that Hyprland with dotfiles could be installed successfully on setups with NVDIA GPUs using the nouveau open source drivers.
|
||||
|
||||
Please select the following variation in the settings script (system/environment):
|
||||
|
||||
https://gitlab.com/stephan-raabe/dotfiles/-/blob/main/hypr/conf/environments/nvidia.conf
|
||||
|
||||
Or set the included environment variables in hyprland.conf
|
||||
|
||||
## Installation Hook
|
||||
|
||||
The installation script will prepare the configuration files in a folder ~/dotfiles-versions/[version] before copy the files into the final destination in ~/dotfiles
|
||||
|
||||
If you want to modify the installation files just before everytime the copy procedure starts, you can create a file hook.sh in the folder ~/dotfiles-versions
|
||||
|
||||
You can for example delete folders and files or update existing configurations.
|
||||
|
||||
```
|
||||
#!/bin/bash
|
||||
rm -rf ~/dotfiles-versions/$version/vim/
|
||||
rm -rf ~/dotfiles-versions/$version/nvim/
|
||||
```
|
||||
|
||||
This script will for example remove the vim and nvim folder before the installation. The symbolic link will not be created because the source folder doesn't exits.
|
||||
|
||||
You can find a template in .install/templates/hook.sh
|
||||
|
||||
## Launch Hyprland from tty
|
||||
|
||||
The suggested method to start Hyprland is from tty with the command Hyprland because login managers (display managers) are not officially supported (https://wiki.hyprland.org/Getting-Started/Master-Tutorial/#launching-hyprland)
|
||||
|
||||
```
|
||||
# Start Hyprland
|
||||
Hyprland
|
||||
```
|
||||
|
||||
You can install a custom tty login issue (layout) with the dotfiles installer.
|
||||
|
||||
## Launch Hyprland with a Display Manager
|
||||
|
||||
I made good experiences with the Display Manager SDDM (https://github.com/sddm/sddm). Also gdm could work.
|
||||
|
||||
```
|
||||
yay -S sddm
|
||||
```
|
||||
|
||||
The dotfiles installation script will offer to deactivate the installed display manager and to activate SDDM.
|
||||
|
||||
The dotfiles package also includes a configuration for the SDDM theme sdd-sugar-candy (https://github.com/Kangie/sddm-sugar-candy) and a configuration to run SDDM in X11 mode to get the best compatibility.
|
||||
|
||||
With the Hyprland settings script you can copy the current wallpaper into SDDM and use it as a background.
|
||||
|
||||
Please check the troubleshooting section in case of issues.
|
||||
|
||||
## Screenlock, suspend and DPMS
|
||||
|
||||
Hypridle will start Hyprlock after 10 minutes of inactivity and will try to suspend one minutes later.
|
||||
|
||||
In the ML4W Dotfiles Settings App you can define the timeouts for Hyprlock, suspend and DPSM.
|
||||
|
||||
The selected hypridle configuration can be restored from the ML4W installer during a dotfiles update.
|
||||
|
||||
The ML4W Dotfiles are using the recommended configuration from https://wiki.hyprland.org/Hypr-Ecosystem/hypridle/
|
||||
|
||||
# Some important key bindings
|
||||
|
||||
- <kbd>SUPER</kbd> + <kbd>RETURN</kbd>: Alacritty
|
||||
- <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>RETURN</kbd>: rofi application launcher
|
||||
- <kbd>SUPER</kbd> + <kbd>SHIFT</kbd> + <kbd>W</kbd>: Change wallpaper
|
||||
- <kbd>SUPER</kbd> + <kbd>PRINT</kbd>: Screenshot
|
||||
- <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>Q</kbd>: Logout screen
|
||||
- <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>S</kbd>: Settings script on Hyprland
|
||||
- <kbd>SUPER</kbd> + <kbd>SHIFT</kbd> + <kbd>B</kbd>: Reload waybar on Hyprland
|
||||
|
||||
All keybindings for Hyprland with right mouse click on Apps in waybar or here:
|
||||
|
||||
- [Hyprland keybindings overview](hypr/conf/keybindings/default.conf)
|
||||
- [Qtile keybindings overview](qtile/config.py)
|
||||
|
||||
# Hyprland
|
||||
|
||||
[![Screenshot](screenshots/v29/screenshot-29-2.png "Screenshot")](screenshots/v29/screenshot-29-2.png)
|
||||
|
||||
|
||||
[![Screenshot](screenshots/v29/screenshot-29-3.png "Screenshot")](screenshots/v29/screenshot-29-3.png)
|
||||
|
||||
|
||||
<a href="https://youtu.be/HMxHUvN6VGo" target="_blank">Watch on YouTube</a>
|
||||
|
||||
## ML4W Sidebar
|
||||
|
||||
With the ML4W Sidebar you have access to all included ML4W Applications and some system information. In addition, you start the main power features for your system.
|
||||
|
||||
You can also start the sidebar from the terminal with
|
||||
```
|
||||
ml4w-sidebar
|
||||
```
|
||||
|
||||
<img src="screenshots/screenshot-sidebar.png" />
|
||||
|
||||
## ML4W Welcome App
|
||||
|
||||
After starting the ML4W dotfiles for the first time, the ML4W Welcome App opens. This app is the starting point to discover the Hyprland setup.
|
||||
|
||||
You can also start the Welcome App from the terminal with
|
||||
```
|
||||
ml4w
|
||||
```
|
||||
|
||||
<img src="screenshots/screenshot-welcome.app.png" />
|
||||
|
||||
The welcome screen includes the most important keybindings to open a terminal or a browser.
|
||||
|
||||
You can start the ML4W Welcome App by clicking on the L icon on the right side in waybar, using the rofi application launcher or by typing ml4w in your terminal (if you're using the .bashrc from the dotfiles).
|
||||
|
||||
In the Settings Menu you can access the following functions:
|
||||
|
||||
- Update Wallpaper: Opens the wallpaper selector
|
||||
- Change Waybar Theme: Opens the waybar theme switcher and gives access to the available themes for the waybar status bar
|
||||
- Change GTK Theme: Opens nwg-look to select the theme for GTK 3 applications incl. widgets, icons and cursors
|
||||
- Refresh GTK Settings: Reloads the Hyprland GTK configuration (required when changing the mouse cursor)
|
||||
- Hyprland Settings: Opens the Hyprland Settings script to customize the look and feel, environment variables, monitor resolution, etc.
|
||||
- Network Settings: Select your network configuration incl. WiFi
|
||||
- Update your System: Starts the terminal application to update your Arch packages (pacman & yay)
|
||||
- Cleanup your System: Removes old orphans and cached files generated during previous installations
|
||||
- Reload Waybar: Reloads the waybar
|
||||
- Toggle Waybar: You can hide or show waybar when you want to try our other status bars.
|
||||
|
||||
You can find the sourcecode of the ML4W Welcome App in this repository:
|
||||
https://gitlab.com/stephan-raabe/ml4w-welcome
|
||||
|
||||
## ML4W Dotfiles Settings App
|
||||
|
||||
You can open the ML4W dotfiles settings app with <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>S</kbd> to change selected dotfiles configurations and choose from variations for your hyprland.conf to customize your desktop even more.
|
||||
|
||||
<img src="screenshots/screenshot-dotfiles-settings-app.png" />
|
||||
|
||||
You can create custom variations by copying a file from the ~/dotfiles/hypr/conf subfolders like monitor/default.conf, give the file a custom name (e.g., mymonitor.conf) and select the variation in the dotfiles settings app in the corresponding section.
|
||||
|
||||
> The ML4W Dotfiles Settings App replaces strings from several configuration files directly or based on replacement comments e.g., // START WORKSPACES That's why you shouldn't remove any of theses comments or markers to ensure full functionality of the app.
|
||||
|
||||
You can also edit the file custom.conf which is included at the bottom of the hyprland.conf and can hold you personal configurations.
|
||||
|
||||
You can find the sourcecode of the ML4W Dotfiles Settings App in this repository:
|
||||
https://gitlab.com/stephan-raabe/ml4w-dotfiles-settings
|
||||
|
||||
You can also start the Dotfiles App from the terminal with
|
||||
```
|
||||
ml4w-settings
|
||||
```
|
||||
|
||||
## ML4W Hyprland Settings App
|
||||
|
||||
This applications supports you to customize your Hyprland installation. You can overwrite the existing configuration with custom values without adding complex configuration files.
|
||||
|
||||
[![Screenshot](screenshots/screenshot-hyprland-settings.png "ML4W Hyprland Settings")](screenshots/screenshot.png)
|
||||
|
||||
YOu can start the application from the application launcher, the ML4W Sidebar by clicking the ML4W Logo or from the welcome app.
|
||||
|
||||
The app shows variables and current values of your running Hyprland.
|
||||
|
||||
You can change the values and overwrite the existing values. The change will be axecuted immediatly.
|
||||
|
||||
In the Set Variables tab you can see which values you have overwritten and can restore the old values be removing the entry.
|
||||
|
||||
You can also start the Hyprland App from the terminal with
|
||||
|
||||
```
|
||||
ml4w-hyprland
|
||||
```
|
||||
|
||||
You can find the sourcecode of the ML4W Hyprland Settings App in this repository:
|
||||
https://gitlab.com/stephan-raabe/ml4w-hyprland-settings
|
||||
|
||||
## Hyprland Configuration Variations
|
||||
|
||||
With configuration variations, you can customize settings and configurations for your Hyprland installation. You can manage, create and edit Hyprland Configuration Variations in the ML4W Dotfiles Settings App.
|
||||
|
||||
<img src="https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/screenshots/variations/variations1.png" />
|
||||
|
||||
[You can find more information here.](hypr/conf/README.md)
|
||||
|
||||
> Please don't edit the shipped configuration variations. These will be overwritten with every update of the ML4W dotfiles. <b>Create your own custom variation instead.</b>
|
||||
|
||||
## Wallpaper with swww or hyprpaper and Pywal
|
||||
|
||||
Included is a pywal configuration that changes the color scheme based on a randomly selected wallpaper. With the key binding <kbd>SUPER</kbd> + <kbd>SHIFT</kbd> + <kbd>W</kbd> you can change the wallpaper coming from the folder ~/wallpaper/.
|
||||
|
||||
<kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>W</kbd> opens rofi with a list of installed wallpapers in ~/wallpaper/ for your individual selection.
|
||||
|
||||
In case of issues with swww, you can switch between the Wallpaper application swww and hyprpaper. Open the ML4W Dotfiles Settings app and select the tab system. At the top you can find the Wallpaper Engine Selector.
|
||||
|
||||
> PLEASE NOTE: A logout and login is required to activate the new wallpaper application.
|
||||
|
||||
The hyprpaper engine uses a template stored in dotfiles/.settings/hyprpaper.tpl You can add additional configurations there. The WALLPAPER placeholder will be replaced with the current wallpaper.
|
||||
|
||||
## Waybar themes and themeswitcher
|
||||
|
||||
In addition, you can switch the Waybar Template with <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>T</kbd> or by pressing the "..." icon in Waybar with the themeswitcher.
|
||||
|
||||
The templates are available in ~/dotfiles/waybar/themes. You can add your own personal themes into this folder.
|
||||
|
||||
[You can find more information here.](waybar/README.md)
|
||||
|
||||
## Screensharing and recording
|
||||
|
||||
More information you can find here:
|
||||
https://gist.github.com/PowerBall253/2dea6ddf6974ba4e5d26c3139ffb7580
|
||||
|
||||
> Please note that every Arch Linux system is different and I cannot guarantee that everything works fine on your system.
|
||||
|
||||
## Main packages
|
||||
|
||||
- Terminal: alacritty
|
||||
- Editor: nvim
|
||||
- Prompt: starship
|
||||
- Wallpaper: hyprpaper (swww optional)
|
||||
- Icons: Font Awesome
|
||||
- Launch Menus: Rofi (Wayland)
|
||||
- Colorscheme: pywal
|
||||
- Browsers: Chromium
|
||||
- Filemanager: Thunar
|
||||
- Cursor: Bibata Modern Ice
|
||||
- Icons: Papirus-Icon-Theme
|
||||
- Status Bar: waybar
|
||||
- Screenshots: grim & slurp
|
||||
- Clipboard Manager: cliphist
|
||||
- Logout: wlogout
|
||||
- Idle Manager: hypridle
|
||||
- Screenlock: hyprlock
|
||||
|
||||
# Qtile X11
|
||||
|
||||
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v27/screenshot-27-3.png" alt="Click to watch on YouTube" /></a>
|
||||
|
||||
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v27/screenshot-27-4.png" alt="Click to watch on YouTube" /></a>
|
||||
|
||||
## Wallpaper and Pywal
|
||||
|
||||
Included is a pywal configuration that changes the color scheme based on a randomly selected wallpaper. With the key binding <kbd>SUPER</kbd> + <kbd>SHIFT</kbd> + <kbd>W</kbd> you can change the wallpaper coming from the folder ~/wallpaper/.
|
||||
|
||||
<kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>W</kbd> opens rofi with a list of installed wallpapers in ~/wallpaper/ for your individual selection.
|
||||
|
||||
## Main Packages
|
||||
|
||||
- Terminal: alacritty
|
||||
- Editor: nvim
|
||||
- Prompt: starship
|
||||
- Icons: Font Awesome
|
||||
- Launch Menus: Rofi
|
||||
- Colorscheme: pywal
|
||||
- Browsers: Chromium
|
||||
- Filemanager: Thunar
|
||||
- Cursor: Bibata Modern Ice
|
||||
- Icons: Papirus-Icon-Theme
|
||||
- Status Bar: Qtile status bar
|
||||
- Compositor: picom (optional)
|
||||
- Screenshots: scrot
|
||||
|
||||
# Installation/Update with GIT
|
||||
|
||||
## Installation with GIT
|
||||
|
||||
You can also install the dotfiles by cloning the latest main release:
|
||||
|
||||
```
|
||||
# 1.) Change into your Downloads folder (create the folder if not available)
|
||||
cd ~/Downloads
|
||||
|
||||
# 2.) Clone the dotfiles repository into the Downloads folder
|
||||
git clone --depth=1 https://gitlab.com/stephan-raabe/dotfiles.git
|
||||
|
||||
# 3.) Change into the dotfiles folder
|
||||
cd dotfiles
|
||||
|
||||
# 4.) Start the installation
|
||||
./install.sh
|
||||
|
||||
```
|
||||
|
||||
## Installation with GIT (Rolling release)
|
||||
|
||||
You can install the dotfiles by cloning the latest development version from the rolling release:
|
||||
|
||||
```
|
||||
# 1.) Change into your Downloads folder (create the folder if not available)
|
||||
cd ~/Downloads
|
||||
|
||||
# 2.) Clone the dotfiles repository into the Downloads folder
|
||||
git clone https://gitlab.com/stephan-raabe/dotfiles.git
|
||||
|
||||
# 3.) Change into the new dotfiles folder
|
||||
cd dotfiles
|
||||
|
||||
# 4.) Checkout the dev branch
|
||||
git checkout dev
|
||||
|
||||
# 4.) Start the installation
|
||||
./install.sh
|
||||
|
||||
```
|
||||
|
||||
## Update with GIT
|
||||
|
||||
Please follow the steps to update from earlier dotfiles versions to 2.8.3
|
||||
|
||||
```
|
||||
# 1.) Remove existing downloaded dotfiles
|
||||
rm -rf ~/Downloads/dotfiles
|
||||
|
||||
# 2.) Change into your Downloads folder
|
||||
cd ~/Downloads
|
||||
|
||||
# 3.) Clone the dotfiles repository into the Downloads folder
|
||||
git clone --depth=1 https://gitlab.com/stephan-raabe/dotfiles.git
|
||||
|
||||
# 4.) Change into the dotfiles folder
|
||||
cd dotfiles
|
||||
|
||||
# 5.) Start the installation
|
||||
./install.sh
|
||||
|
||||
```
|
||||
|
||||
# Base Hyprland installation with Hyperland Starter Package
|
||||
|
||||
If you want to install only the core packages of Hyprland as a starting point for your Hyprland experiments please also try my Hyprland Starter script: https://gitlab.com/stephan-raabe/hyprland-starter
|
||||
|
||||
# Troubleshooting
|
||||
|
||||
The ML4W Welcome App includes a system diagnosis feature available in the menu with the three dots.
|
||||
|
||||
Please run the diagnosis to see if all essential packages and related commands are available on your system.
|
||||
|
||||
If not, you need to install the missing packages manually.
|
||||
|
||||
## rofi (application launcher) is not working
|
||||
|
||||
If the installation of rofi-wayland fails in the installation/update procedure please try to install it manually:
|
||||
|
||||
```
|
||||
yay -S rofi-wayland
|
||||
```
|
||||
|
||||
If rofi-wayland isn't available please try rofi:
|
||||
|
||||
```
|
||||
yay -S rofi
|
||||
```
|
||||
|
||||
## hypridle and hyprlock is not starting after an update of the dotfiles
|
||||
|
||||
Please make sure that hypridle and hyprlock has been installed successfully with
|
||||
|
||||
```
|
||||
yay -S hypridle hyprlock
|
||||
```
|
||||
|
||||
If there is an file conflict the remove the files manually with:
|
||||
|
||||
```
|
||||
sudo rm /usr/lib/debug/usr/bin/hypridle.debug
|
||||
sudo rm /usr/lib/debug/usr/bin/hyprlock.debug
|
||||
```
|
||||
|
||||
and start the installation again with
|
||||
|
||||
```
|
||||
yay -S hypridle hyprlock
|
||||
```
|
||||
|
||||
## Missing icons in waybar
|
||||
|
||||
In case of missing icons on waybar, it's due to a conflict between several installed fonts (can happen especially on Arco Linux). Please make sure that ttf-ms-fonts is uninstalled and ttf-font-awesome and otf-font-awesome are installed with
|
||||
|
||||
```
|
||||
yay -R ttf-ms-fonts
|
||||
yay -S ttf-font-awesome otf-font-awesome
|
||||
```
|
||||
|
||||
## SDDM not showing (only black screen with cursor)
|
||||
|
||||
Switch to another tty with <kbd>CTRL</kbd> + <kbd>ALT</kbd> + <kbd>F3</kbd> Now you can login with your user.
|
||||
|
||||
Start Hyprland with Hyprland.
|
||||
|
||||
You can try to reinstall all sddm related packages.
|
||||
|
||||
```
|
||||
yay -S sddm-git sddm-sugar-candy-git
|
||||
```
|
||||
|
||||
Or you can install another display manager.
|
||||
|
||||
To stop, disable and remove sddm service.
|
||||
|
||||
```
|
||||
sudo systemctl stop sddm.service
|
||||
sudo systemctl disable sddm.service
|
||||
sudo rm /etc/systemd/system/display-manager.service
|
||||
```
|
||||
|
||||
## Waybar is not loading
|
||||
|
||||
There could be a conflict with xdg-desktop-portal-gtk or xdg-desktop-portal-gnome. Please try to remove the package if installed with:
|
||||
|
||||
```
|
||||
sudo pacman -R xdg-desktop-portal-gtk
|
||||
```
|
||||
|
||||
# Wallpaper repository
|
||||
## Wallpaper repository
|
||||
|
||||
You can find my wallpaper collection in the repository https://gitlab.com/stephan-raabe/wallpaper
|
||||
|
||||
# Special Thanks
|
||||
## Special Thanks
|
||||
|
||||
THANK YOU very much for all your support, contributions and ideas:
|
||||
|
||||
@ -540,17 +55,20 @@ THANK YOU very much for all your support, contributions and ideas:
|
||||
- Don Williams: https://github.com/dwilliam62
|
||||
- Teodor Orzechowski: https://gitlab.com/sq6gtt
|
||||
- Jamie Deppeler: https://gitlab.com/bknight2k
|
||||
- Yingjie Wang: https://gitlab.com/GaugeAndGravity
|
||||
- Daniel Gerber: https://gitlab.com/dan.john.gerber
|
||||
- https://gitlab.com/muee
|
||||
|
||||
and many more...
|
||||
|
||||
Thanks to all YouTube subscribers for all your great feedback.
|
||||
|
||||
# Inspirations
|
||||
## Inspirations
|
||||
|
||||
The following projects have inspired me:
|
||||
|
||||
- https://github.com/dianaw353/hyprland-configuration-rootfs
|
||||
- https://github.com/prasanthrangan/hyprdots
|
||||
- https://github.com/sudo-harun/dotfiles
|
||||
- https://github.com/dianaw353/hyprland-configuration-rootfs
|
||||
|
||||
and many more...
|
||||
|
@ -1,5 +1,5 @@
|
||||
[font]
|
||||
size = 16.0
|
||||
size = 12.0
|
||||
|
||||
[font.normal]
|
||||
family = "FiraCode Nerd Font"
|
||||
@ -11,6 +11,3 @@ opacity = 0.7
|
||||
[window.padding]
|
||||
x = 15
|
||||
y = 15
|
||||
|
||||
[selection]
|
||||
save_to_clipboard = true
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1 +0,0 @@
|
||||
--ozone-platform=wayland --enable-wayland-ime
|
@ -36,7 +36,7 @@
|
||||
(box :class "res_box" :orientation "v" :valign "center" :halign "center" :spacing 15 :space-evenly "false"
|
||||
(box :class "res_circle" :orientation "v" :valign "center" :halign "center"
|
||||
(circular-progress :class "res_cpu" :value CPU_USAGE :thickness 15
|
||||
(label :class "res_circle_small" :text "CPU")
|
||||
(label :class "res_circle_small" :text "CPU" :show-truncated false)
|
||||
)
|
||||
)
|
||||
(label :class "res_text" :valign "end" :halign "center" :text "${CPU_USAGE}%")
|
||||
@ -44,7 +44,7 @@
|
||||
(box :class "res_box" :orientation "v" :valign "center" :halign "center" :spacing 15 :space-evenly "false"
|
||||
(box :class "res_circle" :orientation "v" :valign "center" :halign "center"
|
||||
(circular-progress :class "res_mem" :value MEM_USAGE :thickness 15
|
||||
(label :class "res_circle_small" :text "MEMORY")
|
||||
(label :class "res_circle_small" :text "MEMORY" :show-truncated false)
|
||||
)
|
||||
)
|
||||
(label :class "res_text" :valign "end" :halign "center" :text "${MEM_USAGE}%")
|
||||
@ -52,7 +52,7 @@
|
||||
(box :class "res_box" :orientation "v" :valign "center" :halign "center" :spacing 15 :space-evenly "false"
|
||||
(box :class "res_circle" :orientation "v" :valign "center" :halign "center"
|
||||
(circular-progress :class "res_disk" :value DISK_USAGE :thickness 15
|
||||
(label :class "res_circle_small" :text "DISK")
|
||||
(label :class "res_circle_small" :text "DISK" :show-truncated false)
|
||||
)
|
||||
)
|
||||
(label :class "res_text" :valign "end" :halign "center" :text "${DISK_USAGE}%")
|
||||
@ -70,31 +70,31 @@
|
||||
;; powermenus
|
||||
(defwidget logout []
|
||||
(box :class "winbox"
|
||||
(button :tooltip "Logout" :style "background-image: url('../assets/application-exit-symbolic-rtl.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../scripts/system.sh logout &")
|
||||
(button :tooltip "Logout" :style "background-image: url('../assets/application-exit-symbolic-rtl.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../../hypr/scripts/power.sh exit &")
|
||||
)
|
||||
)
|
||||
|
||||
(defwidget suspend []
|
||||
(box :class "winbox"
|
||||
(button :tooltip "Suspend" :style "background-image: url('../assets/media-playback-pause-symbolic.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../scripts/system.sh suspend &")
|
||||
(button :tooltip "Suspend" :style "background-image: url('../assets/media-playback-pause-symbolic.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../../hypr/scripts/power.sh suspend &")
|
||||
)
|
||||
)
|
||||
|
||||
(defwidget lock []
|
||||
(box :class "winbox"
|
||||
(button :tooltip "Lock" :style "background-image: url('../assets/system-lock-screen-symbolic.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../scripts/system.sh lock &")
|
||||
(button :tooltip "Lock" :style "background-image: url('../assets/system-lock-screen-symbolic.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../../hypr/scripts/power.sh lock &")
|
||||
)
|
||||
)
|
||||
|
||||
(defwidget reboot []
|
||||
(box :class "winbox"
|
||||
(button :tooltip "Reboot" :style "background-image: url('../assets/system-reboot-symbolic.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../scripts/system.sh reboot &")
|
||||
(button :tooltip "Reboot" :style "background-image: url('../assets/system-reboot-symbolic.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../../hypr/scripts/power.sh reboot &")
|
||||
)
|
||||
)
|
||||
|
||||
(defwidget shutdown []
|
||||
(box :class "winbox"
|
||||
(button :tooltip "Shutdown" :style "background-image: url('../assets/system-shutdown-symbolic.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../scripts/system.sh shutdown &")
|
||||
(button :tooltip "Shutdown" :style "background-image: url('../assets/system-shutdown-symbolic.svg');" :class "powericons" :valign "center" :halign "center" :onclick "../../hypr/scripts/power.sh shutdown &")
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -1,11 +1,12 @@
|
||||
#!/bin/bash
|
||||
if [[ "$1" == "--welcome" ]]; then
|
||||
$HOME/dotfiles/apps/ML4W_Welcome-x86_64.AppImage
|
||||
$HOME/dotfiles/apps/ML4W_Welcome-x86_64.AppImage &
|
||||
elif [[ "$1" == "--dotfiles" ]]; then
|
||||
$HOME/dotfiles/apps/ML4W_Dotfiles_Settings-x86_64.AppImage
|
||||
$HOME/dotfiles/apps/ML4W_Dotfiles_Settings-x86_64.AppImage &
|
||||
elif [[ "$1" == "--hyprland" ]]; then
|
||||
$HOME/dotfiles/apps/ML4W_Hyprland_Settings-x86_64.AppImage
|
||||
$HOME/dotfiles/apps/ML4W_Hyprland_Settings-x86_64.AppImage &
|
||||
else
|
||||
echo "ERROR: $1 not found"
|
||||
fi
|
||||
|
||||
$HOME/dotfiles/eww/ml4w-sidebar/launch.sh &
|
@ -1,165 +1,110 @@
|
||||
// Note that you must replace the image path to an existing image to display it.
|
||||
|
||||
// Thanks to Bina
|
||||
{
|
||||
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||
// "logo": {
|
||||
// "type": "iterm",
|
||||
// "source": "/Users/carter/Desktop/apple1.png",
|
||||
// "width": 28,
|
||||
// "height": 12
|
||||
// },
|
||||
"logo": {
|
||||
"padding": {
|
||||
"top": 2
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
// "separator": " "
|
||||
"separator": " "
|
||||
"separator": " ➜ "
|
||||
},
|
||||
"modules": [
|
||||
{
|
||||
"type": "host",
|
||||
"key": "╭─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "cpu",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "gpu",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "disk",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "memory",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "swap",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "display",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "battery",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "poweradapter",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "gamepad",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "bluetooth",
|
||||
"key": "├─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
{
|
||||
"type": "sound",
|
||||
"key": "╰─",
|
||||
"keyColor": "green"
|
||||
},
|
||||
"break",
|
||||
|
||||
{
|
||||
"type": "shell",
|
||||
"key": "╭─",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "terminal",
|
||||
"key": "├─",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "terminalfont",
|
||||
"key": "├─",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "lm",
|
||||
"key": "├─",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "de",
|
||||
"key": "├─",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "wm",
|
||||
"key": "├─",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "theme",
|
||||
"key": "├─",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
{
|
||||
"type": "icons",
|
||||
"key": "╰─",
|
||||
"keyColor": "yellow"
|
||||
},
|
||||
|
||||
"break",
|
||||
{
|
||||
"type": "title",
|
||||
"key": "╭─",
|
||||
"format": "{1}@{2}",
|
||||
"keyColor": "blue"
|
||||
},
|
||||
"break",
|
||||
{
|
||||
"type": "os",
|
||||
"key": "├─", // Just get your distro's logo off nerdfonts.com
|
||||
"keyColor": "blue"
|
||||
"key": "OS ",
|
||||
"keyColor": "31", // = color1
|
||||
},
|
||||
{
|
||||
"type": "kernel",
|
||||
"key": "├─",
|
||||
"format": "{1} {2}",
|
||||
"keyColor": "blue"
|
||||
"key": " ├ ",
|
||||
"keyColor": "31",
|
||||
},
|
||||
{
|
||||
"type": "packages",
|
||||
"key": "├─",
|
||||
"keyColor": "blue"
|
||||
"format": "{} (pacman)",
|
||||
"key": " ├ ",
|
||||
"keyColor": "31",
|
||||
},
|
||||
{
|
||||
"type": "uptime",
|
||||
"key": "├─",
|
||||
"keyColor": "blue"
|
||||
},
|
||||
{
|
||||
"type": "media",
|
||||
"key": "├─",
|
||||
"keyColor": "blue"
|
||||
},
|
||||
{
|
||||
"type": "localip",
|
||||
"key": "╰─",
|
||||
"compact": true,
|
||||
"keyColor": "blue"
|
||||
"type": "shell",
|
||||
"key": " └ ",
|
||||
"keyColor": "31",
|
||||
},
|
||||
"break",
|
||||
{
|
||||
"type": "custom",
|
||||
"format": " \u001b[90m \u001b[31m \u001b[32m \u001b[33m \u001b[34m \u001b[35m \u001b[36m \u001b[37m \u001b[38m \u001b[39m"
|
||||
}
|
||||
"type": "wm",
|
||||
"key": "WM ",
|
||||
"keyColor": "32",
|
||||
},
|
||||
{
|
||||
"type": "wmtheme",
|
||||
"key": " ├ ",
|
||||
"keyColor": "32",
|
||||
},
|
||||
{
|
||||
"type": "icons",
|
||||
"key": " ├ ",
|
||||
"keyColor": "32",
|
||||
},
|
||||
{
|
||||
"type": "cursor",
|
||||
"key": " ├ ",
|
||||
"keyColor": "32",
|
||||
},
|
||||
{
|
||||
"type": "terminal",
|
||||
"key": " ├ ",
|
||||
"keyColor": "32",
|
||||
},
|
||||
{
|
||||
"type": "terminalfont",
|
||||
"key": " └ ",
|
||||
"keyColor": "32",
|
||||
},
|
||||
"break",
|
||||
{
|
||||
"type": "host",
|
||||
"format": "{5} {1} Type {2}",
|
||||
"key": "PC ",
|
||||
"keyColor": "33",
|
||||
},
|
||||
{
|
||||
"type": "cpu",
|
||||
"format": "{1} ({3}) @ {7} GHz",
|
||||
"key": " ├ ",
|
||||
"keyColor": "33",
|
||||
},
|
||||
{
|
||||
"type": "gpu",
|
||||
"format": "{1} {2} @ {12} GHz",
|
||||
"key": " ├ ",
|
||||
"keyColor": "33",
|
||||
},
|
||||
{
|
||||
"type": "memory",
|
||||
"key": " ├ ",
|
||||
"keyColor": "33",
|
||||
},
|
||||
{
|
||||
"type": "swap",
|
||||
"key": " ├ ",
|
||||
"keyColor": "33",
|
||||
},
|
||||
{
|
||||
"type": "disk",
|
||||
"key": " ├ ",
|
||||
"keyColor": "33",
|
||||
},
|
||||
{
|
||||
"type": "monitor",
|
||||
"key": " └ ",
|
||||
"keyColor": "33",
|
||||
},
|
||||
"break",
|
||||
"break",
|
||||
]
|
||||
}
|
||||
|
||||
|
@ -1,45 +0,0 @@
|
||||
# Configuration Variations
|
||||
|
||||
With configuration variations, you can prepare different settings and configurations for your Hyprland installation.
|
||||
|
||||
<img src="https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/screenshots/variations/variations1.png" />
|
||||
|
||||
## How to use configuration variations
|
||||
|
||||
Open the ML4W dotfiles settings app via the ML4W Welcome App, the application launcher or the wheel icon in Waybar.
|
||||
|
||||
You can find several variation within the three settings pages.
|
||||
|
||||
- Monitor (Screen Resolutions)
|
||||
- Animations
|
||||
- Keybindings
|
||||
- Windows
|
||||
- Window Rules
|
||||
- Decorations
|
||||
- Environments
|
||||
|
||||
Select the variation that you want to use from the corresponding drop down menu.
|
||||
|
||||
Please don't edit the shipped configuration variations. These will be overwritten with every update of the ML4W dotfiles. <b>Create your own custom variation instead.</b>
|
||||
|
||||
## Create your own variation
|
||||
|
||||
Open the ML4W dotfiles settings app via the ML4W Welcome App, the application launcher or the wheel icon in Waybar.
|
||||
|
||||
Select "Open Variation Folder" from the variation context menu.
|
||||
|
||||
<img src="https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/screenshots/variations/variations1.png" />
|
||||
|
||||
Copy an existing variation as a starting point and rename the new file accordingly.
|
||||
|
||||
<img src="https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/screenshots/variations/variations2.png" />
|
||||
|
||||
Edit the configuration of your new variation and save.
|
||||
|
||||
Go back to the ML4W dotfiles settings app and select "Reload Variations" from the variation context menu and select your new variation.
|
||||
|
||||
<img src="https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/screenshots/variations/variations3.png" />
|
||||
|
||||
You can also modify the variation from the settings app directly.
|
||||
|
||||
<img src="https://gitlab.com/stephan-raabe/dotfiles/-/raw/main/screenshots/variations/variations4.png" />
|
@ -1 +1 @@
|
||||
source = ~/dotfiles/hypr/conf/animations/animations-high.conf
|
||||
source = ~/dotfiles/hypr/conf/animations/default.conf
|
||||
|
@ -16,7 +16,6 @@ exec-once = ~/dotfiles/hypr/scripts/gtk.sh
|
||||
|
||||
# Using hypridle to start hyprlock
|
||||
exec-once = hypridle
|
||||
# exec-once = swayidle -w timeout 600 'swaylock -f' timeout 660 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' before-sleep 'swaylock -f'
|
||||
|
||||
# Load cliphist history
|
||||
exec-once = wl-paste --watch cliphist store
|
||||
@ -27,10 +26,11 @@ exec-once = ~/dotfiles/hypr/scripts/init-wallpaper-engine.sh
|
||||
# Autostart ML4W App
|
||||
exec-once = ~/dotfiles/hypr/scripts/ml4w-welcome-autostart.sh
|
||||
|
||||
# Load configuration from ML4W Hyprland Settings App
|
||||
exec-once = ~/.config/ml4w-hyprland-settings/hyprctl.sh
|
||||
|
||||
# Start ewww daemon
|
||||
exec-once = ~/dotfiles/hypr/scripts/eww.sh
|
||||
|
||||
exec-once = pypr
|
||||
# Start autostart cleanup
|
||||
exec-once = ~/dotfiles/hypr/scripts/cleanup.sh
|
||||
|
||||
# Load configuration from ML4W Hyprland Settings App
|
||||
exec = ~/.config/ml4w-hyprland-settings/hyprctl.sh
|
||||
|
@ -1 +1 @@
|
||||
exec-once = hyprctl setcursor Vimix 24
|
||||
exec-once = hyprctl setcursor Bibata-Modern-Ice 24
|
||||
|
@ -1 +1 @@
|
||||
source = ~/dotfiles/hypr/conf/decorations/custom.conf
|
||||
source = ~/dotfiles/hypr/conf/decorations/default.conf
|
@ -1,25 +0,0 @@
|
||||
# -----------------------------------------------------
|
||||
# General window decoration
|
||||
# name: "Default"
|
||||
# -----------------------------------------------------
|
||||
|
||||
decoration {
|
||||
rounding = 10
|
||||
blur {
|
||||
enabled = true
|
||||
size = 10
|
||||
passes = 3
|
||||
new_optimizations = on
|
||||
ignore_opacity = true
|
||||
xray = false
|
||||
blurls = waybar
|
||||
}
|
||||
active_opacity = 1.0
|
||||
inactive_opacity = 0.8
|
||||
fullscreen_opacity = 1.0
|
||||
|
||||
drop_shadow = true
|
||||
shadow_range = 30
|
||||
shadow_render_power = 3
|
||||
col.shadow = 0x66000000
|
||||
}
|
@ -3,8 +3,6 @@
|
||||
# name: "Default"
|
||||
# -----------------------------------------------------
|
||||
|
||||
env = XCURSOR_SIZE,24
|
||||
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = XDG_SESSION_DESKTOP,Hyprland
|
||||
env = QT_QPA_PLATFORM,wayland
|
||||
|
@ -3,8 +3,6 @@
|
||||
# name: "KVM"
|
||||
# -----------------------------------------------------
|
||||
|
||||
env = XCURSOR_SIZE,24
|
||||
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = XDG_SESSION_DESKTOP,Hyprland
|
||||
env = QT_QPA_PLATFORM,wayland
|
||||
@ -12,5 +10,5 @@ env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||
env = MOZ_ENABLE_WAYLAND,1
|
||||
env = GDK_SCALE,1
|
||||
env = WLR_NO_HARDWARE_CURSORS, 1
|
||||
env = WLR_RENDERER_ALLOW_SOFTWARE, 1
|
||||
env = WLR_NO_HARDWARE_CURSORS, 1
|
@ -2,14 +2,12 @@
|
||||
# Environment Variables
|
||||
# name: "Nvidia"
|
||||
# -----------------------------------------------------
|
||||
|
||||
# https://wiki.hyprland.org/Nvidia/
|
||||
env = XCURSOR_SIZE,24
|
||||
env = QT_QPA_PLATFORM,wayland
|
||||
env = WLR_NO_HARDWARE_CURSORS,1
|
||||
|
||||
env = LIBVA_DRIVER_NAME,nvidia
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = GBM_BACKEND,nvidia-drm
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
|
||||
# env = __GL_VRR_ALLOWED,1
|
||||
# env = WLR_DRM_NO_ATOMIC,1
|
@ -1,5 +0,0 @@
|
||||
exec-once = fcitx5-remote -r
|
||||
exec-once = fcitx5 -d --replace
|
||||
exec-once = fcitx5-remote -r
|
||||
|
||||
bind=$mainMod CTRL, E, exec, pkill fcitx5 -9;sleep 1;fcitx5 -d --replace; sleep 1;fcitx5-remote -r
|
@ -1,6 +0,0 @@
|
||||
xwayland {
|
||||
force_zero_scaling = true
|
||||
}
|
||||
|
||||
env = GDK_SCALE,2
|
||||
env = QT_SCALE_FACTOR=2
|
@ -1 +1 @@
|
||||
source = ~/dotfiles/hypr/conf/keybindings/custom.conf
|
||||
source = ~/dotfiles/hypr/conf/keybindings/default.conf
|
@ -1,97 +0,0 @@
|
||||
# -----------------------------------------------------
|
||||
# Key bindings
|
||||
# name: "Default"
|
||||
# -----------------------------------------------------
|
||||
|
||||
# SUPER KEY
|
||||
$mainMod = SUPER
|
||||
|
||||
# Applications
|
||||
bind = $mainMod, RETURN, exec, ~/dotfiles/.settings/terminal.sh
|
||||
bind = $mainMod, B, exec, ~/dotfiles/.settings/browser.sh
|
||||
bind = $mainMod, period, exec, emote
|
||||
|
||||
# Windows
|
||||
bind = $mainMod, Q, killactive
|
||||
bind = $mainMod, F, fullscreen
|
||||
bind = $mainMod, E, exec, ~/dotfiles/.settings/filemanager.sh
|
||||
bind = $mainMod, T, togglefloating
|
||||
bind = $mainMod SHIFT, T, exec, ~/dotfiles/hypr/scripts/toggleallfloat.sh
|
||||
bind = $mainMod, J, togglesplit
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
bind = $mainMod SHIFT, right, resizeactive, 100 0
|
||||
bind = $mainMod SHIFT, left, resizeactive, -100 0
|
||||
bind = $mainMod SHIFT, up, resizeactive, 0 -100
|
||||
bind = $mainMod SHIFT, down, resizeactive, 0 100
|
||||
bind = $mainMod, G, togglegroup
|
||||
|
||||
# Actions
|
||||
bind = $mainMod, PRINT, exec, ~/dotfiles/hypr/scripts/screenshot.sh
|
||||
bind = $mainMod CTRL, Q, exec, wlogout
|
||||
bind = $mainMod SHIFT, W, exec, ~/dotfiles/hypr/scripts/wallpaper.sh
|
||||
bind = $mainMod CTRL, W, exec, ~/dotfiles/hypr/scripts/wallpaper.sh select
|
||||
bind = $mainMod CTRL, RETURN, exec, rofi -show drun -replace -i
|
||||
bind = $mainMod CTRL, H, exec, ~/dotfiles/hypr/scripts/keybindings.sh
|
||||
bind = $mainMod SHIFT, B, exec, ~/dotfiles/waybar/launch.sh
|
||||
bind = $mainMod SHIFT, R, exec, ~/dotfiles/hypr/scripts/loadconfig.sh
|
||||
bind = $mainMod CTRL, F, exec, ~/dotfiles/scripts/filemanager.sh
|
||||
bind = $mainMod CTRL, C, exec, ~/dotfiles/scripts/cliphist.sh
|
||||
bind = $mainMod, V, exec, ~/dotfiles/scripts/cliphist.sh
|
||||
bind = $mainMod CTRL, T, exec, ~/dotfiles/waybar/themeswitcher.sh
|
||||
bind = $mainMod CTRL, S, exec, ~/dotfiles/apps/ML4W_Dotfiles_Settings-x86_64.AppImage
|
||||
|
||||
# Workspaces
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
bind = $mainMod CTRL, down, workspace, empty
|
||||
bind = $mainMod CTRL, left, workspace, e-1
|
||||
bind = $mainMod CTRL, right, workspace, e+1
|
||||
|
||||
# Fn keys
|
||||
bind = , XF86MonBrightnessUp, exec, brightnessctl -q s +10%
|
||||
bind = , XF86MonBrightnessDown, exec, brightnessctl -q s 10%-
|
||||
bind = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5% && notify-send -t 400 "Volume: $(pactl get-sink-volume @DEFAULT_SINK@ | awk '/front-left/ {print $5}')"
|
||||
bind = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5% && notify-send -t 400 "Volume: $(pactl get-sink-volume @DEFAULT_SINK@ | awk '/front-left/ {print $5}')"
|
||||
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioPause, exec, playerctl pause
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = , XF86AudioMicMute, exec, pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
||||
bind = , XF86Calculator, exec, qalculate-gtk
|
||||
bind = , XF86Lock, exec, hyprlock
|
||||
bind = , XF86Tools, exec, alacritty --class dotfiles-floating -e ~/dotfiles/hypr/settings/settings.sh
|
||||
|
||||
# Passthrough SUPER KEY to Virtual Machine
|
||||
bind = $mainMod, P, submap, passthru
|
||||
submap = passthru
|
||||
bind = SUPER, Escape, submap, reset
|
||||
submap = reset
|
||||
|
||||
# Pyprland
|
||||
bind = $mainMod SHIFT, RETURN, exec, pypr toggle term
|
@ -7,87 +7,88 @@
|
||||
$mainMod = SUPER
|
||||
|
||||
# Applications
|
||||
bind = $mainMod, RETURN, exec, ~/dotfiles/.settings/terminal.sh
|
||||
bind = $mainMod, B, exec, ~/dotfiles/.settings/browser.sh
|
||||
bind = $mainMod, period, exec, emote
|
||||
bind = $mainMod, RETURN, exec, ~/dotfiles/.settings/terminal.sh # Open the terminal
|
||||
bind = $mainMod, B, exec, ~/dotfiles/.settings/browser.sh # Open the browser
|
||||
bind = $mainMod, E, exec, ~/dotfiles/.settings/filemanager.sh # Open the filemanager
|
||||
|
||||
# Windows
|
||||
bind = $mainMod, Q, killactive
|
||||
bind = $mainMod, F, fullscreen
|
||||
bind = $mainMod, E, exec, ~/dotfiles/.settings/filemanager.sh
|
||||
bind = $mainMod, T, togglefloating
|
||||
bind = $mainMod SHIFT, T, exec, ~/dotfiles/hypr/scripts/toggleallfloat.sh
|
||||
bind = $mainMod, J, togglesplit
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
bind = $mainMod SHIFT, right, resizeactive, 100 0
|
||||
bind = $mainMod SHIFT, left, resizeactive, -100 0
|
||||
bind = $mainMod SHIFT, up, resizeactive, 0 -100
|
||||
bind = $mainMod SHIFT, down, resizeactive, 0 100
|
||||
bind = $mainMod, G, togglegroup
|
||||
bind = $mainMod, Q, killactive # Kill active window
|
||||
bind = $mainMod, F, fullscreen # Set active window to fullscreen
|
||||
bind = $mainMod, T, togglefloating # Toggle active windows into floating mode
|
||||
bind = $mainMod SHIFT, T, exec, ~/dotfiles/hypr/scripts/toggleallfloat.sh # Toggle all windows into floating mode
|
||||
bind = $mainMod, J, togglesplit # Toggle split
|
||||
bind = $mainMod, left, movefocus, l # Move focus left
|
||||
bind = $mainMod, right, movefocus, r # Move focus right
|
||||
bind = $mainMod, up, movefocus, u # Move focus up
|
||||
bind = $mainMod, down, movefocus, d # Move focus down
|
||||
bindm = $mainMod, mouse:272, movewindow # Move window with the mouse
|
||||
bindm = $mainMod, mouse:273, resizewindow # Resize window with the mouse
|
||||
bind = $mainMod SHIFT, right, resizeactive, 100 0 # Increase window width with keyboard
|
||||
bind = $mainMod SHIFT, left, resizeactive, -100 0 # Reduce window width with keyboard
|
||||
bind = $mainMod SHIFT, down, resizeactive, 0 100 # Increase window height with keyboard
|
||||
bind = $mainMod SHIFT, up, resizeactive, 0 -100 # Reduce window height with keyboard
|
||||
bind = $mainMod, G, togglegroup # Toggle window group
|
||||
|
||||
# Actions
|
||||
bind = $mainMod SHIFT, A, exec, ~/dotfiles/hypr/scripts/toggle-animations.sh
|
||||
bind = $mainMod, PRINT, exec, ~/dotfiles/hypr/scripts/screenshot.sh
|
||||
bind = $mainMod CTRL, Q, exec, wlogout
|
||||
bind = $mainMod SHIFT, W, exec, ~/dotfiles/hypr/scripts/wallpaper.sh
|
||||
bind = $mainMod CTRL, W, exec, ~/dotfiles/hypr/scripts/wallpaper.sh select
|
||||
bind = $mainMod CTRL, RETURN, exec, rofi -show drun -replace -i
|
||||
bind = $mainMod CTRL, H, exec, ~/dotfiles/hypr/scripts/keybindings.sh
|
||||
bind = $mainMod SHIFT, B, exec, ~/dotfiles/waybar/launch.sh
|
||||
bind = $mainMod SHIFT, R, exec, ~/dotfiles/hypr/scripts/loadconfig.sh
|
||||
bind = $mainMod CTRL, F, exec, ~/dotfiles/scripts/filemanager.sh
|
||||
bind = $mainMod CTRL, C, exec, ~/dotfiles/scripts/cliphist.sh
|
||||
bind = $mainMod, V, exec, ~/dotfiles/scripts/cliphist.sh
|
||||
bind = $mainMod CTRL, T, exec, ~/dotfiles/waybar/themeswitcher.sh
|
||||
bind = $mainMod CTRL, S, exec, ~/dotfiles/apps/ML4W_Dotfiles_Settings-x86_64.AppImage
|
||||
bind = $mainMod SHIFT, A, exec, ~/dotfiles/hypr/scripts/toggle-animations.sh # Toggle animations
|
||||
bind = $mainMod, PRINT, exec, ~/dotfiles/hypr/scripts/screenshot.sh # Take a screenshot
|
||||
bind = $mainMod CTRL, Q, exec, wlogout # Start wlogout
|
||||
bind = $mainMod SHIFT, W, exec, ~/dotfiles/hypr/scripts/wallpaper.sh # Change the wallpaper
|
||||
bind = $mainMod CTRL, W, exec, ~/dotfiles/hypr/scripts/wallpaper.sh select # Open wallpaper selector
|
||||
bind = $mainMod CTRL, RETURN, exec, rofi -show drun -replace -i # Open application launcher
|
||||
bind = $mainMod CTRL, H, exec, ~/dotfiles/hypr/scripts/keybindings.sh # Show keybindings
|
||||
bind = $mainMod SHIFT, B, exec, ~/dotfiles/waybar/launch.sh # Reload waybar
|
||||
bind = $mainMod CTRL, B, exec, ~/dotfiles/waybar/toggle.sh # Toggle waybar
|
||||
bind = $mainMod SHIFT, R, exec, ~/dotfiles/hypr/scripts/loadconfig.sh # Reload hyprland config
|
||||
bind = $mainMod, V, exec, ~/dotfiles/scripts/cliphist.sh # Open clipboard manager
|
||||
bind = $mainMod CTRL, T, exec, ~/dotfiles/waybar/themeswitcher.sh # Open waybar theme switcher
|
||||
bind = $mainMod CTRL, S, exec, ~/dotfiles/apps/ML4W_Dotfiles_Settings-x86_64.AppImage # Open ML4W Dotfiles Settings app
|
||||
bind = $mainMod SHIFT, S, exec, ~/dotfiles/hypr/scripts/hyprshade.sh # Toggle screenshader
|
||||
bind = $mainMod ALT, G, exec, ~/dotfiles/hypr/scripts/gamemode.sh # Toggle game mode
|
||||
|
||||
# Workspaces
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
bind = $mainMod CTRL, down, workspace, empty
|
||||
|
||||
# Fn keys
|
||||
bind = , XF86MonBrightnessUp, exec, brightnessctl -q s +10%
|
||||
bind = , XF86MonBrightnessDown, exec, brightnessctl -q s 10%-
|
||||
bind = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5%
|
||||
bind = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5%
|
||||
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioPause, exec, playerctl pause
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = , XF86AudioMicMute, exec, pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
||||
bind = , XF86Calculator, exec, qalculate-gtk
|
||||
bind = , XF86Lock, exec, hyprlock
|
||||
bind = , XF86Tools, exec, alacritty --class dotfiles-floating -e ~/dotfiles/hypr/settings/settings.sh
|
||||
bind = $mainMod, 1, workspace, 1 # Open workspace 1
|
||||
bind = $mainMod, 2, workspace, 2 # Open workspace 2
|
||||
bind = $mainMod, 3, workspace, 3 # Open workspace 3
|
||||
bind = $mainMod, 4, workspace, 4 # Open workspace 4
|
||||
bind = $mainMod, 5, workspace, 5 # Open workspace 5
|
||||
bind = $mainMod, 6, workspace, 6 # Open workspace 6
|
||||
bind = $mainMod, 7, workspace, 7 # Open workspace 7
|
||||
bind = $mainMod, 8, workspace, 8 # Open workspace 8
|
||||
bind = $mainMod, 9, workspace, 9 # Open workspace 9
|
||||
bind = $mainMod, 0, workspace, 10 # Open workspace 10
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1 # Move active window to workspace 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2 # Move active window to workspace 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3 # Move active window to workspace 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4 # Move active window to workspace 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5 # Move active window to workspace 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6 # Move active window to workspace 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7 # Move active window to workspace 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8 # Move active window to workspace 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9 # Move active window to workspace 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10 # Move active window to workspace 10
|
||||
bind = $mainMod, mouse_down, workspace, e+1 # Open next workspace
|
||||
bind = $mainMod, mouse_up, workspace, e-1 # Open previous workspace
|
||||
bind = $mainMod CTRL, down, workspace, empty # Open the next empty workspace
|
||||
|
||||
# Passthrough SUPER KEY to Virtual Machine
|
||||
bind = $mainMod, P, submap, passthru
|
||||
bind = $mainMod, P, submap, passthru # Passthrough SUPER key to virtual machine
|
||||
submap = passthru
|
||||
bind = SUPER, Escape, submap, reset
|
||||
bind = SUPER, Escape, submap, reset # Get SUPER key back from virtual machine
|
||||
submap = reset
|
||||
|
||||
# Fn keys
|
||||
bind = , XF86MonBrightnessUp, exec, brightnessctl -q s +10% # Increase brightness by 10%
|
||||
bind = , XF86MonBrightnessDown, exec, brightnessctl -q s 10%- # Reduce brightness by 10%
|
||||
bind = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5% # Increase volume by 5%
|
||||
bind = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5% # Reduce volume by 5%
|
||||
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle # Toggle mute
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause # Audio play pause
|
||||
bind = , XF86AudioPause, exec, playerctl pause # Audio pause
|
||||
bind = , XF86AudioNext, exec, playerctl next # Audio next
|
||||
bind = , XF86AudioPrev, exec, playerctl previous # Audio previous
|
||||
bind = , XF86AudioMicMute, exec, pactl set-source-mute @DEFAULT_SOURCE@ toggle # Toggle microphone
|
||||
bind = , XF86Calculator, exec, qalculate-gtk # Open calculator
|
||||
bind = , XF86Lock, exec, hyprlock # Open screenlock
|
||||
bind = , XF86Tools, exec, alacritty --class dotfiles-floating -e ~/dotfiles/apps/ML4W_Dotfiles_Settings-x86_64.AppImage # Open ML4W Dotfiles Settings app
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||
# -----------------------------------------------------
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_layout = de
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options =
|
||||
@ -11,9 +11,7 @@ input {
|
||||
follow_mouse = 1
|
||||
mouse_refocus=false
|
||||
touchpad {
|
||||
natural_scroll = ture
|
||||
disable_while_typing=true
|
||||
tap-to-click=true
|
||||
natural_scroll = false
|
||||
}
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
@ -1,24 +1 @@
|
||||
# -----------------------------------------------------
|
||||
# Layouts
|
||||
# -----------------------------------------------------
|
||||
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe=true
|
||||
workspace_swipe_fingers=3
|
||||
workspace_swipe_distance=400
|
||||
workspace_swipe_invert=true
|
||||
workspace_swipe_min_speed_to_force=30
|
||||
workspace_swipe_cancel_ratio=0.5
|
||||
workspace_swipe_create_new=true
|
||||
workspace_swipe_forever=true
|
||||
}
|
||||
|
||||
source = ~/dotfiles/hypr/conf/layouts/default.conf
|
16
hypr/conf/layouts/default.conf
Normal file
16
hypr/conf/layouts/default.conf
Normal file
@ -0,0 +1,16 @@
|
||||
# -----------------------------------------------------
|
||||
# Layouts
|
||||
# -----------------------------------------------------
|
||||
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = false
|
||||
}
|
16
hypr/conf/layouts/laptop.conf
Normal file
16
hypr/conf/layouts/laptop.conf
Normal file
@ -0,0 +1,16 @@
|
||||
# -----------------------------------------------------
|
||||
# Layouts
|
||||
# -----------------------------------------------------
|
||||
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
}
|
@ -2,6 +2,10 @@
|
||||
# ML4W configurations
|
||||
# -----------------------------------------------------
|
||||
|
||||
windowrulev2 = float,class:(.*chat.openai.com.*)
|
||||
windowrulev2 = size 500 50%,class:(.*chat.openai.com.*)
|
||||
windowrulev2 = move 20 70,class:(.*chat.openai.com.*)
|
||||
|
||||
windowrulev2 = float,class:(com.ml4w.welcome)
|
||||
windowrulev2 = size 700 600,class:(com.ml4w.welcome)
|
||||
windowrulev2 = center,class:(com.ml4w.welcome)
|
||||
@ -18,9 +22,9 @@ windowrulev2 = float,class:(ml4w-dotfiles-settings.py)
|
||||
windowrulev2 = size 400 500,class:(ml4w-dotfiles-settings.py)
|
||||
windowrulev2 = move 10% 20%,class:(ml4w-dotfiles-settings.py)
|
||||
|
||||
windowrulev2 = float,class:(com.ml4w.hyprlandsettings)
|
||||
windowrulev2 = size 700 600,class:(com.ml4w.hyprlandsettings)
|
||||
windowrulev2 = center,class:(com.ml4w.hyprlandsettings)
|
||||
windowrulev2 = float,class:(com.ml4w.hyprland.settings)
|
||||
windowrulev2 = size 700 600,class:(com.ml4w.hyprland.settings)
|
||||
windowrulev2 = center,class:(com.ml4w.hyprland.settings)
|
||||
|
||||
windowrulev2 = float,class:(ml4w-hyprland-settings.py)
|
||||
windowrulev2 = size 700 600,class:(ml4w-hyprland-settings.py)
|
||||
@ -31,4 +35,5 @@ windowrulev2 = size 1000 800,class:(dotfiles-floating)
|
||||
windowrulev2 = center,class:(dotfiles-floating)
|
||||
|
||||
env = APPIMAGELAUNCHER_DISABLE,1
|
||||
|
||||
env = XCURSOR_SIZE,24
|
||||
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||
|
@ -1,6 +0,0 @@
|
||||
# -----------------------------------------------------
|
||||
# Monitor Setup
|
||||
# name: "Default"
|
||||
# -----------------------------------------------------
|
||||
|
||||
monitor=,preferred,auto,2
|
@ -1,10 +0,0 @@
|
||||
# -----------------------------------------------------
|
||||
# Monitor Setup
|
||||
# name: "Default"
|
||||
# -----------------------------------------------------
|
||||
|
||||
monitor=DP-1,preferred,0x0,2
|
||||
monitor=HDMI-A-1,3840x2160,1920x-275,2,transform,1
|
||||
|
||||
workspace=1,monitor:DP-1
|
||||
exec-once=hyprctl dispatch workspace 1
|
@ -1 +1 @@
|
||||
source = ~/dotfiles/hypr/conf/windowrules/custom.conf
|
||||
source = ~/dotfiles/hypr/conf/windowrules/default.conf
|
@ -1,19 +0,0 @@
|
||||
# -----------------------------------------------------
|
||||
# Window rules
|
||||
# -----------------------------------------------------
|
||||
|
||||
windowrule = tile,^(Microsoft-edge)$
|
||||
windowrule = tile,^(Brave-browser)$
|
||||
windowrule = tile,^(Chromium)$
|
||||
windowrule = float,^(pavucontrol)$
|
||||
windowrule = float,^(blueman-manager)$
|
||||
windowrule = float,^(nm-connection-editor)$
|
||||
windowrule = float,^(qalculate-gtk)$
|
||||
windowrule = float,^(showmethekey-gtk)$
|
||||
windowrule = pin,^(showmethekey-gtk)$
|
||||
layerrule = blur, gtk-layer-shell
|
||||
layerrule = blur, logout_dialog
|
||||
|
||||
windowrule = float,title=^(Mathematica)$
|
||||
windowrule = opacity 0.75, ^(Code)$
|
||||
windowrule = float,^(QQ)$
|
@ -6,7 +6,7 @@
|
||||
general {
|
||||
gaps_in = 10
|
||||
gaps_out = 14
|
||||
border_size = 2
|
||||
border_size = 3
|
||||
col.active_border = $color11
|
||||
col.inactive_border = rgba(ffffffff)
|
||||
layout = dwindle
|
||||
|
1
hypr/effects/wallpaper/blackwhite
Normal file
1
hypr/effects/wallpaper/blackwhite
Normal file
@ -0,0 +1 @@
|
||||
magick $wallpaper -set colorspace Gray -separate -average $used_wallpaper
|
2
hypr/effects/wallpaper/blackwhite-blur
Normal file
2
hypr/effects/wallpaper/blackwhite-blur
Normal file
@ -0,0 +1,2 @@
|
||||
magick $wallpaper -set colorspace Gray -separate -average $used_wallpaper
|
||||
magick $used_wallpaper -blur "50x30" $used_wallpaper
|
2
hypr/effects/wallpaper/blackwhite-brightness80
Normal file
2
hypr/effects/wallpaper/blackwhite-brightness80
Normal file
@ -0,0 +1,2 @@
|
||||
magick $wallpaper -set colorspace Gray -separate -average $used_wallpaper
|
||||
magick $used_wallpaper -brightness-contrast -20% $used_wallpaper
|
1
hypr/effects/wallpaper/blur1
Normal file
1
hypr/effects/wallpaper/blur1
Normal file
@ -0,0 +1 @@
|
||||
magick $wallpaper -blur "50x30" $used_wallpaper
|
2
hypr/effects/wallpaper/blur1-brightness80
Normal file
2
hypr/effects/wallpaper/blur1-brightness80
Normal file
@ -0,0 +1,2 @@
|
||||
magick $wallpaper -blur "50x30" $used_wallpaper
|
||||
magick $used_wallpaper -brightness-contrast -20% $used_wallpaper
|
1
hypr/effects/wallpaper/blur2
Normal file
1
hypr/effects/wallpaper/blur2
Normal file
@ -0,0 +1 @@
|
||||
magick $wallpaper -blur "10x30" $used_wallpaper
|
1
hypr/effects/wallpaper/negate
Normal file
1
hypr/effects/wallpaper/negate
Normal file
@ -0,0 +1 @@
|
||||
magick $wallpaper -negate $used_wallpaper
|
2
hypr/effects/wallpaper/negate-brightness80
Normal file
2
hypr/effects/wallpaper/negate-brightness80
Normal file
@ -0,0 +1,2 @@
|
||||
magick $wallpaper -negate $used_wallpaper
|
||||
magick $used_wallpaper -brightness-contrast -20% $used_wallpaper
|
@ -1,12 +0,0 @@
|
||||
[pyprland]
|
||||
|
||||
plugins = [
|
||||
"scratchpads",
|
||||
"magnify",
|
||||
]
|
||||
|
||||
[scratchpads.term]
|
||||
animation = "fromTop"
|
||||
command = "kitty --class kitty-dropterm"
|
||||
class = "kitty-dropterm"
|
||||
size = "75% 60%"
|
7
hypr/scripts/cleanup.sh
Executable file
7
hypr/scripts/cleanup.sh
Executable file
@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Remove gamemode flag
|
||||
if [ -f ~/.cache/gamemode ] ;then
|
||||
rm ~/.cache/gamemode
|
||||
echo ":: ~/.cache/gamemode removed"
|
||||
fi
|
@ -1,4 +1,12 @@
|
||||
#!/bin/bash
|
||||
# ____ _ _
|
||||
# | _ \(_) __ _ __ _ _ __ ___ ___(_)___
|
||||
# | | | | |/ _` |/ _` | '_ \ / _ \/ __| / __|
|
||||
# | |_| | | (_| | (_| | | | | (_) \__ \ \__ \
|
||||
# |____/|_|\__,_|\__, |_| |_|\___/|___/_|___/
|
||||
# |___/
|
||||
#
|
||||
|
||||
clear
|
||||
sleep 0.5
|
||||
figlet "Diagnosis"
|
||||
@ -36,8 +44,8 @@ _commandExists "gum" "gum"
|
||||
_commandExists "wlogout" "wlogout"
|
||||
_commandExists "swww" "swww"
|
||||
_commandExists "eww" "eww"
|
||||
_commandExists "magick2" "imagemagick"
|
||||
_commandExists "figlet2" "figlet"
|
||||
_commandExists "magick" "imagemagick"
|
||||
_commandExists "figlet" "figlet"
|
||||
|
||||
echo
|
||||
echo "Press return to exit"
|
@ -1,6 +1,5 @@
|
||||
#!/bin/bash
|
||||
clear
|
||||
|
||||
cat <<"EOF"
|
||||
____ _ _ _ ____ __ __
|
||||
| _ \(_)___ __ _| |__ | | ___| _ \| \/ |
|
||||
|
@ -1,4 +1,9 @@
|
||||
#!/bin/bash
|
||||
# _____ ____ __
|
||||
# / _ \ \ /\ / /\ \ /\ / /
|
||||
# | __/\ V V / \ V V /
|
||||
# \___| \_/\_/ \_/\_/
|
||||
#
|
||||
EWW=`which eww`
|
||||
if [[ ! `pidof eww` ]]; then
|
||||
${EWW} daemon
|
||||
|
@ -1,3 +0,0 @@
|
||||
#!/bin/bash
|
||||
sleep 0.5
|
||||
killall -9 Hyprland sleep 2
|
24
hypr/scripts/gamemode.sh
Executable file
24
hypr/scripts/gamemode.sh
Executable file
@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
# ____ _
|
||||
# / ___| __ _ _ __ ___ ___ _ __ ___ ___ __| | ___
|
||||
# | | _ / _` | '_ ` _ \ / _ \ '_ ` _ \ / _ \ / _` |/ _ \
|
||||
# | |_| | (_| | | | | | | __/ | | | | | (_) | (_| | __/
|
||||
# \____|\__,_|_| |_| |_|\___|_| |_| |_|\___/ \__,_|\___|
|
||||
#
|
||||
|
||||
if [ -f ~/.cache/gamemode ] ;then
|
||||
hyprctl reload
|
||||
rm ~/.cache/gamemode
|
||||
notify-send "Gamemode deactivated" "Animations and blur enabled"
|
||||
else
|
||||
hyprctl --batch "\
|
||||
keyword animations:enabled 0;\
|
||||
keyword decoration:drop_shadow 0;\
|
||||
keyword decoration:blur:enabled 0;\
|
||||
keyword general:gaps_in 0;\
|
||||
keyword general:gaps_out 0;\
|
||||
keyword general:border_size 1;\
|
||||
keyword decoration:rounding 0"
|
||||
touch ~/.cache/gamemode
|
||||
notify-send "Gamemode activated" "Animations and blur disabled"
|
||||
fi
|
@ -1,4 +1,10 @@
|
||||
#!/bin/bash
|
||||
# ____ _____ _ __
|
||||
# / ___|_ _| |/ /
|
||||
# | | _ | | | ' /
|
||||
# | |_| | | | | . \
|
||||
# \____| |_| |_|\_\
|
||||
#
|
||||
# Source: https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland
|
||||
|
||||
config="$HOME/.config/gtk-3.0/settings.ini"
|
||||
|
25
hypr/scripts/hypridle.sh
Executable file
25
hypr/scripts/hypridle.sh
Executable file
@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
# _ _ _ _ _
|
||||
# | | | |_ _ _ __ _ __(_) __| | | ___
|
||||
# | |_| | | | | '_ \| '__| |/ _` | |/ _ \
|
||||
# | _ | |_| | |_) | | | | (_| | | __/
|
||||
# |_| |_|\__, | .__/|_| |_|\__,_|_|\___|
|
||||
# |___/|_|
|
||||
#
|
||||
|
||||
SERVICE="hypridle"
|
||||
if [[ "$1" == "status" ]]; then
|
||||
sleep 1
|
||||
if pgrep -x "$SERVICE" >/dev/null ;then
|
||||
echo '{"text": "RUNNING", "class": "active", "tooltip": "Screen locking active"}'
|
||||
else
|
||||
echo '{"text": "NOT RUNNING", "class": "notactive", "tooltip": "Screen locking deactivated"}'
|
||||
fi
|
||||
fi
|
||||
if [[ "$1" == "toggle" ]]; then
|
||||
if pgrep -x "$SERVICE" >/dev/null ;then
|
||||
killall hypridle
|
||||
else
|
||||
hypridle
|
||||
fi
|
||||
fi
|
52
hypr/scripts/hyprshade.sh
Executable file
52
hypr/scripts/hyprshade.sh
Executable file
@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
# _ _ _ _
|
||||
# | | | |_ _ _ __ _ __ ___| |__ __ _ __| | ___
|
||||
# | |_| | | | | '_ \| '__/ __| '_ \ / _` |/ _` |/ _ \
|
||||
# | _ | |_| | |_) | | \__ \ | | | (_| | (_| | __/
|
||||
# |_| |_|\__, | .__/|_| |___/_| |_|\__,_|\__,_|\___|
|
||||
# |___/|_|
|
||||
#
|
||||
|
||||
if [[ "$1" == "rofi" ]]; then
|
||||
|
||||
# Open rofi to select the Hyprshade filter for toggle
|
||||
options="$(hyprshade ls)\noff"
|
||||
|
||||
# Open rofi
|
||||
choice=$(echo -e "$options" | rofi -dmenu -replace -config ~/dotfiles/rofi/config-hyprshade.rasi -i -no-show-icons -l 4 -width 30 -p "Hyprshade")
|
||||
if [ ! -z $choice ] ;then
|
||||
echo "hyprshade_filter=\"$choice\"" > ~/dotfiles/.settings/hyprshade.sh
|
||||
dunstify "Changing Hyprshade to $choice" "Toggle shader with SUPER+SHIFT+S"
|
||||
fi
|
||||
|
||||
else
|
||||
|
||||
# Toggle Hyprshade based on the selected filter
|
||||
hyprshade_filter="blue-light-filter"
|
||||
|
||||
# Check if hyprshade.sh settings file exists and load
|
||||
if [ -f ~/dotfiles/.settings/hyprshade.sh ] ;then
|
||||
source ~/dotfiles/.settings/hyprshade.sh
|
||||
fi
|
||||
|
||||
# Toggle Hyprshade
|
||||
if [ "$hyprshade_filter" != "off" ] ;then
|
||||
if [ -z $(hyprshade current) ] ;then
|
||||
echo ":: hyprshade is not running"
|
||||
hyprshade on $hyprshade_filter
|
||||
notify-send "Hyprshade activated" "with $(hyprshade current)"
|
||||
echo ":: hyprshade started with $(hyprshade current)"
|
||||
else
|
||||
notify-send "Hyprshade deactivated"
|
||||
echo ":: Current hyprshade $(hyprshade current)"
|
||||
echo ":: Switching hyprshade off"
|
||||
hyprshade off
|
||||
fi
|
||||
else
|
||||
if [ -z $(hyprshade current) ] ;then
|
||||
hyprshade off
|
||||
fi
|
||||
echo ":: hyprshade turned off"
|
||||
fi
|
||||
|
||||
fi
|
@ -1,4 +1,12 @@
|
||||
#!/bin/bash
|
||||
# __ ______ _____ _
|
||||
# \ \ / / _ \ | ____|_ __ __ _(_)_ __ ___
|
||||
# \ \ /\ / /| |_) | | _| | '_ \ / _` | | '_ \ / _ \
|
||||
# \ V V / | __/ | |___| | | | (_| | | | | | __/
|
||||
# \_/\_/ |_| |_____|_| |_|\__, |_|_| |_|\___|
|
||||
# |___/
|
||||
#
|
||||
|
||||
wallpaper_engine=$(cat $HOME/dotfiles/.settings/wallpaper-engine.sh)
|
||||
if [ "$wallpaper_engine" == "swww" ] ;then
|
||||
# swww
|
||||
|
@ -21,14 +21,29 @@ config_file=${config_file/source=~/}
|
||||
config_file="/home/$USER$config_file"
|
||||
echo "Reading from: $config_file"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Parse keybindings
|
||||
# -----------------------------------------------------
|
||||
keybinds=$(grep -oP '(?<=bind = ).*' $config_file)
|
||||
keybinds=$(echo "$keybinds" | sed 's/$mainMod/SUPER/g'| sed 's/,\([^,]*\)$/ = \1/' | sed 's/, exec//g' | sed 's/^,//g')
|
||||
keybinds=""
|
||||
|
||||
# Detect Start String
|
||||
while read -r line
|
||||
do
|
||||
if [[ "$line" == "bind"* ]]; then
|
||||
|
||||
line="$(echo "$line" | sed 's/$mainMod/SUPER/g')"
|
||||
line="$(echo "$line" | sed 's/bind = //g')"
|
||||
line="$(echo "$line" | sed 's/bindm = //g')"
|
||||
|
||||
IFS='#'
|
||||
read -a strarr <<<"$line"
|
||||
kb_str=${strarr[0]}
|
||||
cm_str=${strarr[1]}
|
||||
|
||||
IFS=','
|
||||
read -a kbarr <<<"$kb_str"
|
||||
|
||||
item="${kbarr[0]} + ${kbarr[1]}"$'\r'"${cm_str:1}"
|
||||
keybinds=$keybinds$item$'\n'
|
||||
fi
|
||||
done < "$config_file"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Show keybindings in rofi
|
||||
# -----------------------------------------------------
|
||||
sleep 0.2
|
||||
rofi -dmenu -i -replace -p "Keybinds" -config ~/dotfiles/rofi/config-compact.rasi <<< "$keybinds"
|
||||
rofi -dmenu -i -markup -eh 2 -replace -p "Keybinds" -config ~/dotfiles/rofi/config-compact.rasi <<< "$keybinds"
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user