Merge branch 'upstream-main' into fcitx5
This commit is contained in:
@@ -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" />
|
||||
@@ -0,0 +1,7 @@
|
||||
# -----------------------------------------------------
|
||||
# Animations
|
||||
# name "Default"
|
||||
# -----------------------------------------------------
|
||||
animations {
|
||||
enabled = false
|
||||
}
|
||||
@@ -16,12 +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 network manager applet
|
||||
# START NM APPLET
|
||||
# exec-once = nm-applet --indicator
|
||||
# END NM APPLET
|
||||
|
||||
# Load cliphist history
|
||||
exec-once = wl-paste --watch cliphist store
|
||||
@@ -29,5 +23,14 @@ exec-once = wl-paste --watch cliphist store
|
||||
# Initialize Wallpaper Engine
|
||||
exec-once = ~/dotfiles/hypr/scripts/init-wallpaper-engine.sh
|
||||
|
||||
# Start ML4W Welcome App
|
||||
# Autostart ML4W App
|
||||
exec-once = ~/dotfiles/hypr/scripts/ml4w-welcome-autostart.sh
|
||||
|
||||
# Start ewww daemon
|
||||
exec-once = ~/dotfiles/hypr/scripts/eww.sh
|
||||
|
||||
# Start autostart cleanup
|
||||
exec-once = ~/dotfiles/hypr/scripts/cleanup.sh
|
||||
|
||||
# Load configuration from ML4W Hyprland Settings App
|
||||
exec = ~/.config/ml4w-hyprland-settings/hyprctl.sh
|
||||
|
||||
@@ -3,6 +3,10 @@
|
||||
# name: "Default"
|
||||
# -----------------------------------------------------
|
||||
|
||||
env = XCURSOR_SIZE,24
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = XDG_SESSION_DESKTOP,Hyprland
|
||||
env = QT_QPA_PLATFORM,wayland
|
||||
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||
env = MOZ_ENABLE_WAYLAND,1
|
||||
env = GDK_SCALE,1
|
||||
|
||||
@@ -3,7 +3,12 @@
|
||||
# name: "KVM"
|
||||
# -----------------------------------------------------
|
||||
|
||||
env = XCURSOR_SIZE,24
|
||||
env = XDG_SESSION_TYPE,wayland
|
||||
env = XDG_SESSION_DESKTOP,Hyprland
|
||||
env = QT_QPA_PLATFORM,wayland
|
||||
env = WLR_NO_HARDWARE_CURSORS, 1
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||
env = MOZ_ENABLE_WAYLAND,1
|
||||
env = GDK_SCALE,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
|
||||
@@ -9,7 +9,6 @@ $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
|
||||
@@ -31,6 +30,7 @@ bind = $mainMod SHIFT, down, resizeactive, 0 100
|
||||
bind = $mainMod, G, togglegroup
|
||||
|
||||
# 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
|
||||
@@ -38,12 +38,16 @@ 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 CTRL, B, exec, ~/dotfiles/waybar/toggle.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 CTRL, P, exec, hyprpicker -a
|
||||
bind = $mainMod SHIFT, S, exec, ~/dotfiles/hypr/scripts/hyprshade.sh
|
||||
bind = $mainMod ALT, G, exec, ~/dotfiles/hypr/scripts/gamemode.sh
|
||||
|
||||
# Workspaces
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
|
||||
+1
-16
@@ -1,16 +1 @@
|
||||
# -----------------------------------------------------
|
||||
# Layouts
|
||||
# -----------------------------------------------------
|
||||
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = false
|
||||
}
|
||||
source = ~/dotfiles/hypr/conf/layouts/default.conf
|
||||
@@ -0,0 +1,16 @@
|
||||
# -----------------------------------------------------
|
||||
# Layouts
|
||||
# -----------------------------------------------------
|
||||
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = false
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
# -----------------------------------------------------
|
||||
# Layouts
|
||||
# -----------------------------------------------------
|
||||
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
}
|
||||
+16
-1
@@ -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,8 +22,19 @@ 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:(ml4w-hyprland-settings.py)
|
||||
windowrulev2 = size 700 600,class:(ml4w-hyprland-settings.py)
|
||||
windowrulev2 = center,class:(ml4w-hyprland-settings.py)
|
||||
|
||||
windowrulev2 = float,class:(dotfiles-floating)
|
||||
windowrulev2 = size 1000 800,class:(dotfiles-floating)
|
||||
windowrulev2 = center,class:(dotfiles-floating)
|
||||
|
||||
env = APPIMAGELAUNCHER_DISABLE,1
|
||||
env = APPIMAGELAUNCHER_DISABLE,1
|
||||
env = XCURSOR_SIZE,24
|
||||
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
magick $wallpaper -set colorspace Gray -separate -average $used_wallpaper
|
||||
@@ -0,0 +1,2 @@
|
||||
magick $wallpaper -set colorspace Gray -separate -average $used_wallpaper
|
||||
magick $used_wallpaper -blur "50x30" $used_wallpaper
|
||||
@@ -0,0 +1,2 @@
|
||||
magick $wallpaper -set colorspace Gray -separate -average $used_wallpaper
|
||||
magick $used_wallpaper -brightness-contrast -20% $used_wallpaper
|
||||
@@ -0,0 +1 @@
|
||||
magick $wallpaper -blur "50x30" $used_wallpaper
|
||||
@@ -0,0 +1,2 @@
|
||||
magick $wallpaper -blur "50x30" $used_wallpaper
|
||||
magick $used_wallpaper -brightness-contrast -20% $used_wallpaper
|
||||
@@ -0,0 +1 @@
|
||||
magick $wallpaper -blur "10x30" $used_wallpaper
|
||||
@@ -0,0 +1 @@
|
||||
magick $wallpaper -negate $used_wallpaper
|
||||
@@ -0,0 +1,2 @@
|
||||
magick $wallpaper -negate $used_wallpaper
|
||||
magick $used_wallpaper -brightness-contrast -20% $used_wallpaper
|
||||
+4
-1
@@ -6,6 +6,9 @@
|
||||
# |___/|_|
|
||||
#
|
||||
# -----------------------------------------------------
|
||||
# IMPORTANT: Don't overwrite ML4W configuration.
|
||||
# Create your own custom configuration variation instead.
|
||||
# https://gitlab.com/stephan-raabe/dotfiles#hyprland-configuration-variations
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Monitor
|
||||
@@ -58,7 +61,7 @@ source = ~/dotfiles/hypr/conf/animation.conf
|
||||
source = ~/dotfiles/hypr/conf/custom.conf
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Custom
|
||||
# ML4W Configuration
|
||||
# -----------------------------------------------------
|
||||
source = ~/dotfiles/hypr/conf/ml4w.conf
|
||||
|
||||
|
||||
+17
-2
@@ -20,7 +20,7 @@ input-field {
|
||||
dots_center = true
|
||||
dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
|
||||
outer_color = rgb(151515)
|
||||
inner_color = rgb(200, 200, 200)
|
||||
inner_color = rgb(FFFFFF)
|
||||
font_color = rgb(10, 10, 10)
|
||||
fade_on_empty = true
|
||||
fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered.
|
||||
@@ -47,7 +47,7 @@ label {
|
||||
color = rgba(200, 200, 200, 1.0)
|
||||
font_size = 55
|
||||
font_family = Fira Semibold
|
||||
position = -100, -200
|
||||
position = -100, -40
|
||||
halign = right
|
||||
valign = bottom
|
||||
shadow_passes = 5
|
||||
@@ -65,4 +65,19 @@ label {
|
||||
valign = bottom
|
||||
shadow_passes = 5
|
||||
shadow_size = 10
|
||||
}
|
||||
|
||||
image {
|
||||
monitor =
|
||||
path = $HOME/.cache/square_wallpaper.png
|
||||
size = 280 # lesser side if not 1:1 ratio
|
||||
rounding = -1 # negative values mean circle
|
||||
border_size = 4
|
||||
border_color = rgb(221, 221, 221)
|
||||
rotate = 0 # degrees, counter-clockwise
|
||||
reload_time = -1 # seconds between reloading, 0 to reload with SIGUSR2
|
||||
# reload_cmd = # command to get new path. if empty, old path will be used. don't run "follow" commands like tail -F
|
||||
position = 0, 200
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
import sys
|
||||
import subprocess
|
||||
import os
|
||||
import json
|
||||
import pathlib
|
||||
import shutil
|
||||
|
||||
# Get script path
|
||||
pathname = os.path.dirname(sys.argv[0])
|
||||
homeFolder = os.path.expanduser('~') # Path to home folder
|
||||
dotfiles = homeFolder + "/dotfiles/"
|
||||
|
||||
result = subprocess.run(["bash", dotfiles + "hypr/scripts/monitors.sh"], capture_output=True, text=True)
|
||||
monitors_json = result.stdout.strip()
|
||||
monitors_arr = json.loads(monitors_json)
|
||||
for row in monitors_arr:
|
||||
if row["focused"]:
|
||||
print(row["id"])
|
||||
Executable
+7
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Remove gamemode flag
|
||||
if [ -f ~/.cache/gamemode ] ;then
|
||||
rm ~/.cache/gamemode
|
||||
echo ":: ~/.cache/gamemode removed"
|
||||
fi
|
||||
Executable
+52
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
# ____ _ _
|
||||
# | _ \(_) __ _ __ _ _ __ ___ ___(_)___
|
||||
# | | | | |/ _` |/ _` | '_ \ / _ \/ __| / __|
|
||||
# | |_| | | (_| | (_| | | | | (_) \__ \ \__ \
|
||||
# |____/|_|\__,_|\__, |_| |_|\___/|___/_|___/
|
||||
# |___/
|
||||
#
|
||||
|
||||
clear
|
||||
sleep 0.5
|
||||
figlet "Diagnosis"
|
||||
echo
|
||||
echo "This script will check that essential packages and "
|
||||
echo "execution commands are available on your system."
|
||||
echo
|
||||
|
||||
_commandExists() {
|
||||
package="$1";
|
||||
if ! type $package > /dev/null 2>&1; then
|
||||
echo ":: ERROR: $package doesn't exists. Please install it with yay -S $2"
|
||||
else
|
||||
echo ":: OK: $package found."
|
||||
fi
|
||||
}
|
||||
|
||||
_folderExists() {
|
||||
folder="$1";
|
||||
if [ ! -d $folder ]; then
|
||||
echo ":: ERROR: $folder doesn't exists."
|
||||
else
|
||||
echo ":: OK: $folder found."
|
||||
fi
|
||||
}
|
||||
|
||||
_commandExists "rofi" "rofi-wayland"
|
||||
_commandExists "dunst" "dunst"
|
||||
_commandExists "waybar" "waybar"
|
||||
_commandExists "hyprpaper" "hyprpaper"
|
||||
_commandExists "hyprlock" "hyprpaper"
|
||||
_commandExists "hypridle" "hyprpaper"
|
||||
_commandExists "wal" "python-pywal"
|
||||
_commandExists "gum" "gum"
|
||||
_commandExists "wlogout" "wlogout"
|
||||
_commandExists "swww" "swww"
|
||||
_commandExists "eww" "eww"
|
||||
_commandExists "magick" "imagemagick"
|
||||
_commandExists "figlet" "figlet"
|
||||
|
||||
echo
|
||||
echo "Press return to exit"
|
||||
read
|
||||
@@ -1,6 +1,5 @@
|
||||
#!/bin/bash
|
||||
clear
|
||||
|
||||
cat <<"EOF"
|
||||
____ _ _ _ ____ __ __
|
||||
| _ \(_)___ __ _| |__ | | ___| _ \| \/ |
|
||||
|
||||
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
# _____ ____ __
|
||||
# / _ \ \ /\ / /\ \ /\ / /
|
||||
# | __/\ V V / \ V V /
|
||||
# \___| \_/\_/ \_/\_/
|
||||
#
|
||||
EWW=`which eww`
|
||||
if [[ ! `pidof eww` ]]; then
|
||||
${EWW} daemon
|
||||
sleep 0.5
|
||||
fi
|
||||
@@ -1,3 +0,0 @@
|
||||
#!/bin/bash
|
||||
sleep 1
|
||||
killall -9 Hyprland sleep 2
|
||||
Executable
+19
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
# ____ _
|
||||
# / ___| __ _ _ __ ___ ___ _ __ ___ ___ __| | ___
|
||||
# | | _ / _` | '_ ` _ \ / _ \ '_ ` _ \ / _ \ / _` |/ _ \
|
||||
# | |_| | (_| | | | | | | __/ | | | | | (_) | (_| | __/
|
||||
# \____|\__,_|_| |_| |_|\___|_| |_| |_|\___/ \__,_|\___|
|
||||
#
|
||||
|
||||
if [ -f ~/.cache/gamemode ] ;then
|
||||
hyprctl keyword animations:enabled true
|
||||
hyprctl keyword decoration:blur:enabled true
|
||||
rm ~/.cache/gamemode
|
||||
notify-send "Gamemode deactivated" "Animations and blur enabled"
|
||||
else
|
||||
hyprctl keyword animations:enabled false
|
||||
hyprctl keyword decoration:blur:enabled false
|
||||
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"
|
||||
|
||||
Executable
+25
@@ -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
|
||||
Executable
+52
@@ -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
|
||||
|
||||
@@ -25,8 +25,7 @@ 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=$(echo "$keybinds" | sed 's/$mainMod/SUPER/g'| sed 's/,\([^,]*\)$/ = \1/' | sed 's/, exec//g' | sed 's/^,//g')
|
||||
# -----------------------------------------------------
|
||||
# Show keybindings in rofi
|
||||
# -----------------------------------------------------
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
#!/bin/bash
|
||||
if [ ! -f $HOME/.cache/ml4w-welcome-autostart ] ;then
|
||||
echo "Autostart of ML4W Welcome App enabled."
|
||||
echo ":: Autostart of ML4W Welcome App enabled."
|
||||
if [ -f $HOME/dotfiles/apps/ML4W_Welcome-x86_64.AppImage ] ;then
|
||||
echo "Starting ML4W Welcome App ..."
|
||||
echo ":: Starting ML4W Welcome App ..."
|
||||
sleep 2
|
||||
$HOME/dotfiles/apps/ML4W_Welcome-x86_64.AppImage
|
||||
else
|
||||
echo "ML4W Welcome App not found."
|
||||
echo ":: ML4W Welcome App not found."
|
||||
fi
|
||||
|
||||
else
|
||||
echo "Autostart of ML4W Welcome App disabled."
|
||||
echo ":: Autostart of ML4W Welcome App disabled."
|
||||
fi
|
||||
Executable
+2
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
hyprctl -j monitors
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
# ____
|
||||
# | _ \ _____ _____ _ __
|
||||
# | |_) / _ \ \ /\ / / _ \ '__|
|
||||
# | __/ (_) \ V V / __/ |
|
||||
# |_| \___/ \_/\_/ \___|_|
|
||||
#
|
||||
|
||||
if [[ "$1" == "exit" ]]; then
|
||||
echo ":: Exit"
|
||||
sleep 0.5
|
||||
killall -9 Hyprland sleep 2
|
||||
fi
|
||||
|
||||
if [[ "$1" == "lock" ]]; then
|
||||
echo ":: Lock"
|
||||
sleep 0.5
|
||||
hyprlock
|
||||
fi
|
||||
|
||||
if [[ "$1" == "reboot" ]]; then
|
||||
echo ":: Reboot"
|
||||
sleep 0.5
|
||||
systemctl reboot
|
||||
fi
|
||||
|
||||
if [[ "$1" == "shutdown" ]]; then
|
||||
echo ":: Shutdown"
|
||||
sleep 0.5
|
||||
systemctl poweroff
|
||||
fi
|
||||
|
||||
if [[ "$1" == "suspend" ]]; then
|
||||
echo ":: Suspend"
|
||||
sleep 0.5
|
||||
systemctl suspend
|
||||
fi
|
||||
|
||||
if [[ "$1" == "hibernate" ]]; then
|
||||
echo ":: Hibernate"
|
||||
sleep 1;
|
||||
systemctl hibernate
|
||||
fi
|
||||
Executable
+13
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
cache_file="$HOME/.cache/toggle_animation"
|
||||
if [[ $(cat $HOME/dotfiles/hypr/conf/animation.conf) == *"disabled"* ]]; then
|
||||
echo ":: Toggle blocked by disabled.conf variation."
|
||||
else
|
||||
if [ -f $cache_file ] ;then
|
||||
hyprctl keyword animations:enabled true
|
||||
rm $cache_file
|
||||
else
|
||||
hyprctl keyword animations:enabled false
|
||||
touch $cache_file
|
||||
fi
|
||||
fi
|
||||
Executable
+12
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Open rofi to select the Hyprshade filter for toggle
|
||||
options="$(ls ~/dotfiles/hypr/effects/wallpaper/)\noff"
|
||||
|
||||
# Open rofi
|
||||
choice=$(echo -e "$options" | rofi -dmenu -replace -config ~/dotfiles/rofi/config-themes.rasi -i -no-show-icons -l 5 -width 30 -p "Hyprshade")
|
||||
if [ ! -z $choice ] ;then
|
||||
echo "$choice" > ~/dotfiles/.settings/wallpaper-effect.sh
|
||||
dunstify "Changing Wallpaper Effect to " "$choice"
|
||||
~/dotfiles/hypr/scripts/wallpaper.sh init
|
||||
fi
|
||||
+52
-16
@@ -6,12 +6,18 @@
|
||||
# \_/\_/ \__,_|_|_| .__/ \__,_| .__/ \___|_|
|
||||
# |_| |_|
|
||||
#
|
||||
# by Stephan Raabe (2023)
|
||||
# by Stephan Raabe (2024)
|
||||
# -----------------------------------------------------
|
||||
|
||||
# Cache file for holding the current wallpaper
|
||||
wallpaper_folder="$HOME/wallpaper"
|
||||
if [ -f ~/dotfiles/.settings/wallpaper-folder.sh ] ;then
|
||||
source ~/dotfiles/.settings/wallpaper-folder.sh
|
||||
fi
|
||||
used_wallpaper="$HOME/.cache/used_wallpaper"
|
||||
cache_file="$HOME/.cache/current_wallpaper"
|
||||
blurred="$HOME/.cache/blurred_wallpaper.png"
|
||||
square="$HOME/.cache/square_wallpaper.png"
|
||||
rasi_file="$HOME/.cache/current_wallpaper.rasi"
|
||||
blur_file="$HOME/dotfiles/.settings/blur.sh"
|
||||
|
||||
@@ -21,13 +27,13 @@ blur=$(cat $blur_file)
|
||||
# Create cache file if not exists
|
||||
if [ ! -f $cache_file ] ;then
|
||||
touch $cache_file
|
||||
echo "$HOME/wallpaper/default.jpg" > "$cache_file"
|
||||
echo "$wallpaper_folder/default.jpg" > "$cache_file"
|
||||
fi
|
||||
|
||||
# Create rasi file if not exists
|
||||
if [ ! -f $rasi_file ] ;then
|
||||
touch $rasi_file
|
||||
echo "* { current-image: url(\"$HOME/wallpaper/default.jpg\", height); }" > "$rasi_file"
|
||||
echo "* { current-image: url(\"$wallpaper_folder/default.jpg\", height); }" > "$rasi_file"
|
||||
fi
|
||||
|
||||
current_wallpaper=$(cat "$cache_file")
|
||||
@@ -40,27 +46,27 @@ case $1 in
|
||||
if [ -f $cache_file ]; then
|
||||
wal -q -i $current_wallpaper
|
||||
else
|
||||
wal -q -i ~/wallpaper/
|
||||
wal -q -i $wallpaper_folder/
|
||||
fi
|
||||
;;
|
||||
|
||||
# Select wallpaper with rofi
|
||||
"select")
|
||||
sleep 0.2
|
||||
selected=$( find "$HOME/wallpaper" -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) -exec basename {} \; | sort -R | while read rfile
|
||||
selected=$( find "$wallpaper_folder" -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) -exec basename {} \; | sort -R | while read rfile
|
||||
do
|
||||
echo -en "$rfile\x00icon\x1f$HOME/wallpaper/${rfile}\n"
|
||||
echo -en "$rfile\x00icon\x1f$wallpaper_folder/${rfile}\n"
|
||||
done | rofi -dmenu -i -replace -config ~/dotfiles/rofi/config-wallpaper.rasi)
|
||||
if [ ! "$selected" ]; then
|
||||
echo "No wallpaper selected"
|
||||
exit
|
||||
fi
|
||||
wal -q -i ~/wallpaper/$selected
|
||||
wal -q -i $wallpaper_folder/$selected
|
||||
;;
|
||||
|
||||
# Randomly select wallpaper
|
||||
*)
|
||||
wal -q -i ~/wallpaper/
|
||||
wal -q -i $wallpaper_folder/
|
||||
;;
|
||||
|
||||
esac
|
||||
@@ -69,12 +75,11 @@ esac
|
||||
# Load current pywal color scheme
|
||||
# -----------------------------------------------------
|
||||
source "$HOME/.cache/wal/colors.sh"
|
||||
echo ":: Wallpaper: $wallpaper"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# get wallpaper image name
|
||||
# -----------------------------------------------------
|
||||
newwall=$(echo $wallpaper | sed "s|$HOME/wallpaper/||g")
|
||||
newwall=$(echo $wallpaper | sed "s|$wallpaper_folder/||g")
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Reload waybar with new colors
|
||||
@@ -88,11 +93,27 @@ transition_type="wipe"
|
||||
# transition_type="outer"
|
||||
# transition_type="random"
|
||||
|
||||
cp $wallpaper $HOME/.cache/
|
||||
mv $HOME/.cache/$newwall $used_wallpaper
|
||||
|
||||
# Load Wallpaper Effect
|
||||
if [ -f $HOME/dotfiles/.settings/wallpaper-effect.sh ] ;then
|
||||
effect=$(cat $HOME/dotfiles/.settings/wallpaper-effect.sh)
|
||||
if [ ! "$effect" == "off" ] ;then
|
||||
if [ "$1" == "init" ] ;then
|
||||
echo ":: Init"
|
||||
else
|
||||
dunstify "Using wallpaper effect $effect..." "with image $newwall" -h int:value:10 -h string:x-dunst-stack-tag:wallpaper
|
||||
fi
|
||||
source $HOME/dotfiles/hypr/effects/wallpaper/$effect
|
||||
fi
|
||||
fi
|
||||
|
||||
wallpaper_engine=$(cat $HOME/dotfiles/.settings/wallpaper-engine.sh)
|
||||
if [ "$wallpaper_engine" == "swww" ] ;then
|
||||
# swww
|
||||
echo ":: Using swww"
|
||||
swww img $wallpaper \
|
||||
swww img $used_wallpaper \
|
||||
--transition-bezier .43,1.19,1,.4 \
|
||||
--transition-fps=60 \
|
||||
--transition-type=$transition_type \
|
||||
@@ -103,7 +124,7 @@ elif [ "$wallpaper_engine" == "hyprpaper" ] ;then
|
||||
echo ":: Using hyprpaper"
|
||||
killall hyprpaper
|
||||
wal_tpl=$(cat $HOME/dotfiles/.settings/hyprpaper.tpl)
|
||||
output=${wal_tpl//WALLPAPER/$wallpaper}
|
||||
output=${wal_tpl//WALLPAPER/$used_wallpaper}
|
||||
echo "$output" > $HOME/dotfiles/hypr/hyprpaper.conf
|
||||
hyprpaper &
|
||||
else
|
||||
@@ -114,8 +135,12 @@ if [ "$1" == "init" ] ;then
|
||||
echo ":: Init"
|
||||
else
|
||||
sleep 1
|
||||
dunstify "Changing wallpaper ..." "with image $newwall" -h int:value:33 -h string:x-dunst-stack-tag:wallpaper
|
||||
sleep 2
|
||||
dunstify "Changing wallpaper ..." "with image $newwall" -h int:value:25 -h string:x-dunst-stack-tag:wallpaper
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Reload Hyprctl.sh
|
||||
# -----------------------------------------------------
|
||||
$HOME/.config/ml4w-hyprland-settings/hyprctl.sh &
|
||||
fi
|
||||
|
||||
# -----------------------------------------------------
|
||||
@@ -124,16 +149,27 @@ fi
|
||||
if [ "$1" == "init" ] ;then
|
||||
echo ":: Init"
|
||||
else
|
||||
dunstify "Creating blurred version ..." "with image $newwall" -h int:value:66 -h string:x-dunst-stack-tag:wallpaper
|
||||
dunstify "Creating blurred version ..." "with image $newwall" -h int:value:50 -h string:x-dunst-stack-tag:wallpaper
|
||||
fi
|
||||
|
||||
magick $wallpaper -resize 75% $blurred
|
||||
magick $used_wallpaper -resize 75% $blurred
|
||||
echo ":: Resized to 75%"
|
||||
if [ ! "$blur" == "0x0" ] ;then
|
||||
magick $blurred -blur $blur $blurred
|
||||
echo ":: Blurred"
|
||||
fi
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Created quare wallpaper
|
||||
# -----------------------------------------------------
|
||||
if [ "$1" == "init" ] ;then
|
||||
echo ":: Init"
|
||||
else
|
||||
dunstify "Creating square version ..." "with image $newwall" -h int:value:75 -h string:x-dunst-stack-tag:wallpaper
|
||||
fi
|
||||
magick $wallpaper -gravity Center -extent 1:1 $square
|
||||
echo ":: Square version created"
|
||||
|
||||
# -----------------------------------------------------
|
||||
# Write selected wallpaper into .cache files
|
||||
# -----------------------------------------------------
|
||||
|
||||
+6
-6
@@ -9,12 +9,12 @@
|
||||
sleep 1
|
||||
|
||||
# kill all possible running xdg-desktop-portals
|
||||
killall xdg-desktop-portal-hyprland
|
||||
killall xdg-desktop-portal-gnome
|
||||
killall xdg-desktop-portal-kde
|
||||
killall xdg-desktop-portal-lxqt
|
||||
killall xdg-desktop-portal-wlr
|
||||
killall xdg-desktop-portal-gtk
|
||||
killall -e xdg-desktop-portal-hyprland
|
||||
killall -e xdg-desktop-portal-gnome
|
||||
killall -e xdg-desktop-portal-kde
|
||||
killall -e xdg-desktop-portal-lxqt
|
||||
killall -e xdg-desktop-portal-wlr
|
||||
killall -e xdg-desktop-portal-gtk
|
||||
killall xdg-desktop-portal
|
||||
sleep 1
|
||||
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
precision highp float;
|
||||
varying vec2 v_texcoord;
|
||||
uniform sampler2D tex;
|
||||
|
||||
void main() {
|
||||
vec4 pixColor = texture2D(tex, v_texcoord);
|
||||
gl_FragColor = vec4(1.0 - pixColor.r, 1.0 - pixColor.g, 1.0 - pixColor.b, pixColor.a);
|
||||
}
|
||||
Reference in New Issue
Block a user