Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5a852998ea | ||
|
|
4ce511c902 | ||
|
|
9583419fd8 | ||
|
|
478cd154ab | ||
|
|
a25122508f | ||
|
|
78f4605e09 | ||
|
|
efe98deb44 | ||
|
|
0b05a4d13b | ||
|
|
f57dde1200 | ||
|
|
8f08f6c0b1 | ||
|
|
f5765d0845 | ||
|
|
080df5f2d7 | ||
|
|
0c4e5085c2 | ||
|
|
9eee45ed40 | ||
|
|
5881c1c810 | ||
|
|
fbf117f909 | ||
|
|
8af7114fc0 | ||
|
|
716b518845 | ||
|
|
105f69edf8 | ||
|
|
33841ea15f | ||
|
|
2777bd3e1f | ||
|
|
f10fb1220b | ||
|
|
ead2dd9d44 | ||
|
|
9907e8f6ff | ||
|
|
d583b524d6 | ||
|
|
a5d5d63f52 | ||
|
|
4191c0da79 | ||
|
|
4a664f26bc | ||
|
|
2996c5eb56 | ||
|
|
c40ccfaa70 |
@@ -2,7 +2,6 @@
|
||||
eval "$(starship init bash)"
|
||||
|
||||
alias Settings="cd ~/.config && nvim"
|
||||
alias Phone="scrcpy --max-fps=60 --no-audio --keyboard=uhid --mouse=uhid"
|
||||
alias Key="cat ~/.ssh/id_rsa.pub"
|
||||
alias Server="ssh adrien@192.168.178.26"
|
||||
|
||||
@@ -25,5 +24,6 @@ export SAL_USE_VCLPLUGIN=qt6
|
||||
|
||||
export TERM=xterm
|
||||
|
||||
# Created by `pipx` on 2025-06-15 21:36:45
|
||||
export PATH="$PATH:/home/adrien/.local/bin"
|
||||
|
||||
wal -i ~/Pictures/Wallpapers/pywallpaper.jpg -n --cols16 -e
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
window-decoration = none
|
||||
window-padding-x = 0
|
||||
window-padding-y = 0
|
||||
font-family = FiraCode Nerd Font Mono
|
||||
@@ -1,23 +0,0 @@
|
||||
source /home/$USER/.cache/wal/colors-hyprland
|
||||
|
||||
general {
|
||||
lock_cmd = pidof hyprlock || hyprlock
|
||||
ignore_dbus_inhibit = /opt/spotify/spotify
|
||||
}
|
||||
listener {
|
||||
timeout = 270
|
||||
on-timeout = source /home/eli/.cache/wal/colors.sh && notify-send "System" "You are about to be locked out!" -i $wallpaper
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 600
|
||||
on-timeout = loginctl lock-session
|
||||
on-resume = sleep 2 && source /home/eli/.cache/wal/colors.sh && notify-send "System" "Unlocked! Hey $USER" -i $wallpaper
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 1200
|
||||
on-timeout = hyprctl dispatch dpms off
|
||||
on-resume = hyprctl dispatch dpms on
|
||||
}
|
||||
|
||||
@@ -1,298 +0,0 @@
|
||||
|
||||
# #######################################################################################
|
||||
# AUTOGENERATED HYPRLAND CONFIG.
|
||||
# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hyprland.conf AND EDIT IT,
|
||||
# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
|
||||
# #######################################################################################
|
||||
|
||||
autogenerated = 1 # remove this line to remove the warning
|
||||
|
||||
# This is an example Hyprland config file.
|
||||
# Refer to the wiki for more information.
|
||||
# https://wiki.hyprland.org/Configuring/
|
||||
|
||||
# Please note not all available settings / options are set here.
|
||||
# For a full list, see the wiki
|
||||
|
||||
# You can split this configuration into multiple files
|
||||
# Create your files separately and then link them to this file like this:
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
|
||||
################
|
||||
### MONITORS ###
|
||||
################
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
monitor=,preferred,auto,auto
|
||||
|
||||
|
||||
###################
|
||||
### MY PROGRAMS ###
|
||||
###################
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||
|
||||
# Set programs that you use
|
||||
$terminal = kitty
|
||||
$fileManager = dolphin
|
||||
$menu = wofi --show drun
|
||||
|
||||
|
||||
#################
|
||||
### AUTOSTART ###
|
||||
#################
|
||||
|
||||
# Autostart necessary processes (like notifications daemons, status bars, etc.)
|
||||
# Or execute your favorite apps at launch like this:
|
||||
|
||||
# exec-once = $terminal
|
||||
# exec-once = nm-applet &
|
||||
# exec-once = waybar & hyprpaper & firefox
|
||||
|
||||
|
||||
#############################
|
||||
### ENVIRONMENT VARIABLES ###
|
||||
#############################
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Environment-variables/
|
||||
|
||||
env = XCURSOR_SIZE,24
|
||||
env = HYPRCURSOR_SIZE,24
|
||||
|
||||
|
||||
#####################
|
||||
### LOOK AND FEEL ###
|
||||
#####################
|
||||
|
||||
# Refer to https://wiki.hyprland.org/Configuring/Variables/
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#general
|
||||
general {
|
||||
gaps_in = 5
|
||||
gaps_out = 20
|
||||
|
||||
border_size = 2
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
||||
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||
col.inactive_border = rgba(595959aa)
|
||||
|
||||
# Set to true enable resizing windows by clicking and dragging on borders and gaps
|
||||
resize_on_border = false
|
||||
|
||||
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
||||
allow_tearing = false
|
||||
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
||||
decoration {
|
||||
rounding = 10
|
||||
rounding_power = 2
|
||||
|
||||
# Change transparency of focused and unfocused windows
|
||||
active_opacity = 1.0
|
||||
inactive_opacity = 1.0
|
||||
|
||||
shadow {
|
||||
enabled = true
|
||||
range = 4
|
||||
render_power = 3
|
||||
color = rgba(1a1a1aee)
|
||||
}
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#blur
|
||||
blur {
|
||||
enabled = true
|
||||
size = 3
|
||||
passes = 1
|
||||
|
||||
vibrancy = 0.1696
|
||||
}
|
||||
}
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#animations
|
||||
animations {
|
||||
enabled = yes, please :)
|
||||
|
||||
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
|
||||
bezier = easeOutQuint,0.23,1,0.32,1
|
||||
bezier = easeInOutCubic,0.65,0.05,0.36,1
|
||||
bezier = linear,0,0,1,1
|
||||
bezier = almostLinear,0.5,0.5,0.75,1.0
|
||||
bezier = quick,0.15,0,0.1,1
|
||||
|
||||
animation = global, 1, 10, default
|
||||
animation = border, 1, 5.39, easeOutQuint
|
||||
animation = windows, 1, 4.79, easeOutQuint
|
||||
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
|
||||
animation = windowsOut, 1, 1.49, linear, popin 87%
|
||||
animation = fadeIn, 1, 1.73, almostLinear
|
||||
animation = fadeOut, 1, 1.46, almostLinear
|
||||
animation = fade, 1, 3.03, quick
|
||||
animation = layers, 1, 3.81, easeOutQuint
|
||||
animation = layersIn, 1, 4, easeOutQuint, fade
|
||||
animation = layersOut, 1, 1.5, linear, fade
|
||||
animation = fadeLayersIn, 1, 1.79, almostLinear
|
||||
animation = fadeLayersOut, 1, 1.39, almostLinear
|
||||
animation = workspaces, 1, 1.94, almostLinear, fade
|
||||
animation = workspacesIn, 1, 1.21, almostLinear, fade
|
||||
animation = workspacesOut, 1, 1.94, almostLinear, fade
|
||||
}
|
||||
|
||||
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
||||
# "Smart gaps" / "No gaps when only"
|
||||
# uncomment all if you wish to use that.
|
||||
# workspace = w[tv1], gapsout:0, gapsin:0
|
||||
# workspace = f[1], gapsout:0, gapsin:0
|
||||
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1]
|
||||
# windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1]
|
||||
# windowrulev2 = bordersize 0, floating:0, onworkspace:f[1]
|
||||
# windowrulev2 = rounding 0, floating:0, onworkspace:f[1]
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||
dwindle {
|
||||
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = true # You probably want this
|
||||
}
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
master {
|
||||
new_status = master
|
||||
}
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#misc
|
||||
misc {
|
||||
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
||||
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
|
||||
}
|
||||
|
||||
|
||||
#############
|
||||
### INPUT ###
|
||||
#############
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options =
|
||||
kb_rules =
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
|
||||
touchpad {
|
||||
natural_scroll = false
|
||||
}
|
||||
}
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#gestures
|
||||
gestures {
|
||||
workspace_swipe = false
|
||||
}
|
||||
|
||||
# Example per-device config
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
||||
device {
|
||||
name = epic-mouse-v1
|
||||
sensitivity = -0.5
|
||||
}
|
||||
|
||||
|
||||
###################
|
||||
### KEYBINDINGS ###
|
||||
###################
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = $mainMod, Q, exec, $terminal
|
||||
bind = $mainMod, C, killactive,
|
||||
bind = $mainMod, M, exit,
|
||||
bind = $mainMod, E, exec, $fileManager
|
||||
bind = $mainMod, V, togglefloating,
|
||||
bind = $mainMod, R, exec, $menu
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod, J, togglesplit, # dwindle
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
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
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
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
|
||||
|
||||
# Example special workspace (scratchpad)
|
||||
bind = $mainMod, S, togglespecialworkspace, magic
|
||||
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
# Laptop multimedia keys for volume and LCD brightness
|
||||
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
|
||||
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
|
||||
|
||||
# Requires playerctl
|
||||
bindl = , XF86AudioNext, exec, playerctl next
|
||||
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||||
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bindl = , XF86AudioPrev, exec, playerctl previous
|
||||
|
||||
##############################
|
||||
### WINDOWS AND WORKSPACES ###
|
||||
##############################
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
|
||||
|
||||
# Example windowrule v1
|
||||
# windowrule = float, ^(kitty)$
|
||||
|
||||
# Example windowrule v2
|
||||
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||
|
||||
# Ignore maximize requests from apps. You'll probably like this.
|
||||
windowrulev2 = suppressevent maximize, class:.*
|
||||
|
||||
# Fix some dragging issues with XWayland
|
||||
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
|
||||
@@ -1,194 +0,0 @@
|
||||
source = /home/$USER/.cache/wal/colors-hyprland
|
||||
|
||||
$terminal = kitty
|
||||
$fileManager = kitty -d ~ yazi
|
||||
# $menu = wofi --show drun -n
|
||||
$menu = wofi -n
|
||||
exec-once = hypridle
|
||||
exec-once = waybar
|
||||
exec-once = swww-daemon
|
||||
exec-once = swaync
|
||||
exec-once = pypr
|
||||
exec-once = swaync-client -df
|
||||
exec-once = pactl set-sink-mute @DEFAULT_SINK@ 0
|
||||
exec-once = hyprctl plugin load $HOME/.local/share/hyprpm/dynamic-cursors/dynamic-cursors.so
|
||||
env = ELECTRON_OZONE_PLATFORM_HINT,wayland
|
||||
env = XCURSOR_THEME,Bibata-Modern-Classic
|
||||
env = XCURSOR_SIZE,12
|
||||
|
||||
plugin:dynamic-cursors {
|
||||
mode = stretch
|
||||
threshold = 2
|
||||
shaperule = grab, stretch, stretch:limit: 2000
|
||||
rotate {
|
||||
length = 12
|
||||
offset = 30
|
||||
}
|
||||
stretch {
|
||||
limit = 1000
|
||||
# linear - a linear function is used
|
||||
# quadratic - a quadratic function is used
|
||||
# negative_quadratic - negative version of the quadratic one, feels more aggressive
|
||||
function = negative_quadratic
|
||||
}
|
||||
shake {
|
||||
enabled = false
|
||||
}
|
||||
}
|
||||
general {
|
||||
|
||||
gaps_in = 3
|
||||
gaps_out = 10
|
||||
border_size = 0
|
||||
col.active_border = $color9
|
||||
col.inactive_border = $color5
|
||||
resize_on_border = true
|
||||
allow_tearing = false
|
||||
layout = dwindle
|
||||
}
|
||||
decoration {
|
||||
rounding = 10
|
||||
active_opacity = 0.78
|
||||
inactive_opacity = 0.7
|
||||
fullscreen_opacity = 1
|
||||
blur {
|
||||
enabled = true
|
||||
size = 3
|
||||
passes = 5
|
||||
new_optimizations = true
|
||||
ignore_opacity = true
|
||||
xray = false
|
||||
popups = true
|
||||
}
|
||||
shadow {
|
||||
enabled = true
|
||||
range = 15
|
||||
render_power = 5
|
||||
color = rgba(0,0,0,.5)
|
||||
}
|
||||
}
|
||||
animations {
|
||||
enabled = true
|
||||
bezier = fluid, 0.15, 0.85, 0.25, 1
|
||||
bezier = snappy, 0.3, 1, 0.4, 1
|
||||
animation = windows, 1, 3, fluid, popin 5%
|
||||
animation = windowsOut, 1, 2.5, snappy
|
||||
animation = fade, 1, 4, snappy
|
||||
animation = workspaces, 1, 1.7, snappy, slide
|
||||
animation = specialWorkspace, 1, 4, fluid, slidefadevert -35%
|
||||
animation = layers, 1, 2, snappy, popin 70%
|
||||
}
|
||||
dwindle {
|
||||
preserve_split = true
|
||||
}
|
||||
misc {
|
||||
force_default_wallpaper = -1
|
||||
disable_hyprland_logo = true
|
||||
focus_on_activate = true
|
||||
}
|
||||
input {
|
||||
kb_layout = us
|
||||
follow_mouse = 1
|
||||
sensitivity = 0
|
||||
touchpad {
|
||||
natural_scroll = true
|
||||
}
|
||||
}
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_distance = 300
|
||||
workspace_swipe_cancel_ratio = .05
|
||||
workspace_swipe_min_speed_to_force = 0
|
||||
}
|
||||
device {
|
||||
name = epic-mouse-v1
|
||||
sensitivity = 0
|
||||
}
|
||||
|
||||
$mainMod = SUPER
|
||||
|
||||
# App
|
||||
bind = $mainMod, Q, exec, $terminal
|
||||
bind = $mainMod, D, exec, firefox
|
||||
bind = $mainMod, E, exec, $fileManager
|
||||
|
||||
# Wofi menus
|
||||
bind = $mainMod, R, exec, $menu
|
||||
bind = $mainMod, P, exec, ~/.config/hypr/projects.sh
|
||||
bind = $mainMod, W, exec, ~/.config/hypr/wallpaper.sh
|
||||
|
||||
# Window management
|
||||
bind = $mainMod, B, killactive
|
||||
bind = $mainMod, V, exec, hyprctl --batch "dispatch togglefloating; dispatch resizeactive exact 800 800; dispatch centerwindow 1;"
|
||||
bind = $mainMod SHIFT, P, exec, pseudo
|
||||
bind = $mainMod, O, togglesplit
|
||||
bind = $mainMod, F, fullscreen
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
# Sessions
|
||||
bind = $mainMod, comma, exec, hyprlock
|
||||
bind = $mainMod SHIFT, M, exec, wlogout -b 2
|
||||
bind = $mainMod, M, exit
|
||||
|
||||
# Pypr
|
||||
bind = $mainMod, SPACE, exec, pypr toggle term
|
||||
bind = $mainMod, G, exec, pypr toggle music
|
||||
bind = $mainMod, T, exec, pypr toggle taskbarcpu
|
||||
bind = $mainMod, Y, exec, pypr toggle taskbargpu
|
||||
|
||||
# Vim type motion
|
||||
bind = $mainMod, H, movefocus, l
|
||||
bind = $mainMod, L, movefocus, r
|
||||
bind = $mainMod, J, movefocus, d
|
||||
bind = $mainMod, K, movefocus, u
|
||||
bind = $mainMod ALT, H, movewindow, l
|
||||
bind = $mainMod ALT, L, movewindow, r
|
||||
bind = $mainMod ALT, J, movewindow, d
|
||||
bind = $mainMod ALT, K, movewindow, u
|
||||
|
||||
# Workspace
|
||||
bind = $mainMod, S, togglespecialworkspace, magic
|
||||
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||
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
|
||||
|
||||
# Scripts divers
|
||||
bind = ALT, a, exec, ~/.config/waybar/scripts/refresh.sh
|
||||
bind = ALT, B, exec, ~/.config/waybar/scripts/select.sh
|
||||
bind = ALT, r, exec, ~/.config/swaync/refresh.sh
|
||||
|
||||
layerrule = blur, waybar
|
||||
layerrule = ignorezero, waybar
|
||||
layerrule = ignorealpha 0.5, waybar
|
||||
layerrule = blur, swaync-control-center
|
||||
layerrule = blur, swaync-notification-window
|
||||
layerrule = ignorezero, swaync-control-center
|
||||
layerrule = ignorezero, swaync-notification-window
|
||||
layerrule = ignorealpha 0.5, swaync-control-center
|
||||
layerrule = ignorealpha 0.5, swaync-notification-window
|
||||
layerrule = noanim, selection
|
||||
|
||||
env = LIBVA_DRIVER_NAME,nvidia
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
|
||||
|
||||
|
||||
@@ -1,86 +0,0 @@
|
||||
source = /home/$USER/.cache/wal/colors-hyprland
|
||||
|
||||
background {
|
||||
monitor =
|
||||
path = $wallpaper
|
||||
blur_size = 5
|
||||
blur_passes = 3
|
||||
brightness = .6
|
||||
}
|
||||
input-field {
|
||||
monitor =
|
||||
size = 6%, 4%
|
||||
outline_thickness = 0
|
||||
dots_rounding = 4
|
||||
dots_spacing = .5
|
||||
dots_fase_time = 300
|
||||
inner_color = $backgroundCol
|
||||
outer_color = $backgroundCol $backgroundCol
|
||||
check_color= $backgroundCol $backgroundCol
|
||||
fail_color= $backgroundCol $backgroundCol
|
||||
font_color = $color9
|
||||
font_family = CodeNewRoman Nerd Font Propo
|
||||
fade_on_empty = false
|
||||
shadow_color = rgba(0,0,0,0.5)
|
||||
shadow_passes = 2
|
||||
shadow_size = 2
|
||||
rounding = 20
|
||||
placeholder_text = <i></i>
|
||||
fail_text = <b>FAIL</b>
|
||||
fail_timeout = 300
|
||||
position = 0, -100
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] date +"<b>%I</b>"
|
||||
color = $color9
|
||||
font_size = 200
|
||||
font_family = CodeNewRoman Nerd Font Propo
|
||||
shadow_passes = 0
|
||||
shadow_size = 5
|
||||
position = -120, 410
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] date +"<b>%M</b>"
|
||||
color = rgba(150,150,150, .4)
|
||||
font_size = 200
|
||||
font_family = CodeNewRoman Nerd Font Propo
|
||||
shadow_passes = 0
|
||||
shadow_size = 5
|
||||
position = 120, 230
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] date +"<b>%A, %B %d, %Y</b>"
|
||||
color = $color4
|
||||
font_size = 40
|
||||
font_family = CodeNewRoman Nerd Font Propo
|
||||
shadow_passes = 0
|
||||
shadow_size = 4
|
||||
position = -40,-20
|
||||
halign = right
|
||||
valign = top
|
||||
}
|
||||
label {
|
||||
monitor =
|
||||
text = <i>Hello</i> <b>$USER</b>
|
||||
color = $color5
|
||||
font_size = 40
|
||||
font_family = CodeNewRoman Nerd Font Propo
|
||||
shadow_passes = 0
|
||||
shadow_size = 4
|
||||
position = 40,-20
|
||||
halign = left
|
||||
valign = top
|
||||
}
|
||||
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
[pyprland]
|
||||
plugins = [
|
||||
"scratchpads"
|
||||
]
|
||||
|
||||
[scratchpads.term]
|
||||
animation = "fromTop"
|
||||
command = "kitty --class kitty-dropterm"
|
||||
class = "kitty-dropterm"
|
||||
position = "17% 6%"
|
||||
size = "65% 60%"
|
||||
offset = "200%"
|
||||
|
||||
[scratchpads.music]
|
||||
animation = "fromBottom"
|
||||
command = "kitty --class kitty-pulsemixer -e pulsemixer"
|
||||
class = "kitty-pulsemixer"
|
||||
size = "50% 20%"
|
||||
offset = "200%"
|
||||
|
||||
[scratchpads.taskbarcpu]
|
||||
animation = "fromLeft"
|
||||
command = "kitty --class kitty-taskbar -e htop"
|
||||
class = "kitty-taskbar"
|
||||
size = "30% 80%"
|
||||
offset = "200%"
|
||||
|
||||
[scratchpads.taskbargpu]
|
||||
animation = "fromRight"
|
||||
command = "kitty --class kitty-taskbar -e nvtop"
|
||||
class = "kitty-taskbar"
|
||||
size = "30% 80%"
|
||||
offset = "200%"
|
||||
@@ -1,24 +0,0 @@
|
||||
#!/bin/bash
|
||||
WALLPAPER_DIR="$HOME/wallpapers/walls"
|
||||
#I dont know what the fuck I am doing
|
||||
menu() {
|
||||
find "${WALLPAPER_DIR}" -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.gif" \) | awk '{print "img:"$0}'
|
||||
}
|
||||
main() {
|
||||
choice=$(menu | wofi -c ~/.config/wofi/wallpaper -s ~/.config/wofi/style-wallpaper.css --show dmenu --prompt "Select Wallpaper:" -n)
|
||||
selected_wallpaper=$(echo "$choice" | sed 's/^img://')
|
||||
swww img "$selected_wallpaper" --transition-type any --transition-fps 60 --transition-duration .5
|
||||
wal -i "$selected_wallpaper" -n --cols16
|
||||
swaync-client --reload-css
|
||||
cat ~/.cache/wal/colors-kitty.conf > ~/.config/kitty/current-theme.conf
|
||||
pywalfox update
|
||||
color1=$(awk 'match($0, /color2=\47(.*)\47/,a) { print a[1] }' ~/.cache/wal/colors.sh)
|
||||
color2=$(awk 'match($0, /color3=\47(.*)\47/,a) { print a[1] }' ~/.cache/wal/colors.sh)
|
||||
cava_config="$HOME/.config/cava/config"
|
||||
sed -i "s/^gradient_color_1 = .*/gradient_color_1 = '$color1'/" $cava_config
|
||||
sed -i "s/^gradient_color_2 = .*/gradient_color_2 = '$color2'/" $cava_config
|
||||
pkill -USR2 cava 2>/dev/null
|
||||
source ~/.cache/wal/colors.sh && cp -r $wallpaper ~/wallpapers/pywallpaper.jpg
|
||||
}
|
||||
main
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
foreground #c2c2c2
|
||||
background #0c0b0c
|
||||
background_opacity 1.0
|
||||
cursor #c2c2c2
|
||||
|
||||
active_tab_foreground #0c0b0c
|
||||
active_tab_background #c2c2c2
|
||||
inactive_tab_foreground #c2c2c2
|
||||
inactive_tab_background #0c0b0c
|
||||
|
||||
active_border_color #c2c2c2
|
||||
inactive_border_color #0c0b0c
|
||||
bell_border_color #4b3f3c
|
||||
|
||||
color0 #0c0b0c
|
||||
color8 #6a566a
|
||||
color1 #4b3f3c
|
||||
color9 #655451
|
||||
color2 #772d25
|
||||
color10 #9F3D32
|
||||
color3 #774942
|
||||
color11 #9F6259
|
||||
color4 #9f4e41
|
||||
color12 #D46857
|
||||
color5 #876d54
|
||||
color13 #B49271
|
||||
color6 #a5744e
|
||||
color14 #DC9B69
|
||||
color7 #968b8b
|
||||
color15 #c2c2c2
|
||||
@@ -1,53 +0,0 @@
|
||||
## name: Rosé Pine
|
||||
## author: mvllow
|
||||
## license: MIT
|
||||
## upstream: https://github.com/rose-pine/kitty/blob/main/dist/rose-pine.conf
|
||||
## blurb: All natural pine, faux fur and a bit of soho vibes for the classy minimalist
|
||||
|
||||
foreground #e0def4
|
||||
background #191724
|
||||
selection_foreground #e0def4
|
||||
selection_background #403d52
|
||||
|
||||
cursor #524f67
|
||||
cursor_text_color #e0def4
|
||||
|
||||
url_color #c4a7e7
|
||||
|
||||
active_tab_foreground #e0def4
|
||||
active_tab_background #26233a
|
||||
inactive_tab_foreground #6e6a86
|
||||
inactive_tab_background #191724
|
||||
|
||||
# black
|
||||
color0 #26233a
|
||||
color8 #6e6a86
|
||||
|
||||
# red
|
||||
color1 #eb6f92
|
||||
color9 #eb6f92
|
||||
|
||||
# green
|
||||
color2 #31748f
|
||||
color10 #31748f
|
||||
|
||||
# yellow
|
||||
color3 #f6c177
|
||||
color11 #f6c177
|
||||
|
||||
# blue
|
||||
color4 #9ccfd8
|
||||
color12 #9ccfd8
|
||||
|
||||
# magenta
|
||||
color5 #c4a7e7
|
||||
color13 #c4a7e7
|
||||
|
||||
# cyan
|
||||
color6 #ebbcba
|
||||
color14 #ebbcba
|
||||
|
||||
# white
|
||||
color7 #e0def4
|
||||
color15 #e0def4
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
# BEGIN_KITTY_FONTS
|
||||
font_family family='Hurmit Nerd Font' postscript_name=HurmitNF-Regular
|
||||
bold_font auto
|
||||
italic_font auto
|
||||
bold_italic_font auto
|
||||
# END_KITTY_FONTS
|
||||
window_padding_width 5
|
||||
tab_bar_style slant
|
||||
enable_audio_bell no
|
||||
notify_on_cmd_finish unfocused
|
||||
|
||||
confirm_os_window_close 0
|
||||
@@ -1,53 +0,0 @@
|
||||
## name: Rosé Pine
|
||||
## author: mvllow
|
||||
## license: MIT
|
||||
## upstream: https://github.com/rose-pine/kitty/blob/main/dist/rose-pine.conf
|
||||
## blurb: All natural pine, faux fur and a bit of soho vibes for the classy minimalist
|
||||
|
||||
foreground #e0def4
|
||||
background #191724
|
||||
selection_foreground #e0def4
|
||||
selection_background #403d52
|
||||
|
||||
cursor #524f67
|
||||
cursor_text_color #e0def4
|
||||
|
||||
url_color #c4a7e7
|
||||
|
||||
active_tab_foreground #e0def4
|
||||
active_tab_background #26233a
|
||||
inactive_tab_foreground #6e6a86
|
||||
inactive_tab_background #191724
|
||||
|
||||
# black
|
||||
color0 #26233a
|
||||
color8 #6e6a86
|
||||
|
||||
# red
|
||||
color1 #eb6f92
|
||||
color9 #eb6f92
|
||||
|
||||
# green
|
||||
color2 #31748f
|
||||
color10 #31748f
|
||||
|
||||
# yellow
|
||||
color3 #f6c177
|
||||
color11 #f6c177
|
||||
|
||||
# blue
|
||||
color4 #9ccfd8
|
||||
color12 #9ccfd8
|
||||
|
||||
# magenta
|
||||
color5 #c4a7e7
|
||||
color13 #c4a7e7
|
||||
|
||||
# cyan
|
||||
color6 #ebbcba
|
||||
color14 #ebbcba
|
||||
|
||||
# white
|
||||
color7 #e0def4
|
||||
color15 #e0def4
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
spawn-at-startup "waybar"
|
||||
spawn-at-startup "swww-daemon"
|
||||
spawn-at-startup "wal -i ~/Pictures/Wallpapers/pywallpaper.jpg -n --cols16"
|
||||
|
||||
layout {
|
||||
gaps 16
|
||||
preset-column-widths {
|
||||
proportion 0.33333
|
||||
proportion 0.5
|
||||
proportion 0.66667
|
||||
}
|
||||
default-column-width { proportion 0.33333; }
|
||||
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match is-focused=false
|
||||
opacity 0.8
|
||||
}
|
||||
|
||||
window-rule {
|
||||
match is-focused=true
|
||||
draw-border-with-background false
|
||||
opacity 0.98
|
||||
|
||||
focus-ring {
|
||||
on
|
||||
width 4
|
||||
active-color "#7fc8ff"
|
||||
inactive-color "#505050"
|
||||
urgent-color "#9b0000"
|
||||
}
|
||||
}
|
||||
|
||||
binds {
|
||||
Mod+Shift+Slash { show-hotkey-overlay; }
|
||||
Mod+T hotkey-overlay-title="Open a Terminal: ghostty" { spawn "ghostty"; }
|
||||
Mod+D hotkey-overlay-title="Run an Application: wofi" { spawn "~/.config/wofi/application.sh"; }
|
||||
Mod+W hotkey-overlay-title="Change Wallpaper: wofi" { spawn "~/.config/wofi/wallpaper.sh"; }
|
||||
Mod+P hotkey-overlay-title="Open Project: wofi" { spawn "~/.config/wofi/projects.sh"; }
|
||||
Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
|
||||
|
||||
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+"; }
|
||||
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
||||
XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
|
||||
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
||||
|
||||
Mod+O repeat=false { toggle-overview; }
|
||||
Mod+Q repeat=false { close-window; }
|
||||
|
||||
Mod+Left { focus-column-left; }
|
||||
Mod+Down { focus-window-down; }
|
||||
Mod+Up { focus-window-up; }
|
||||
Mod+Right { focus-column-right; }
|
||||
Mod+H { focus-column-left; }
|
||||
Mod+J { focus-window-down; }
|
||||
Mod+K { focus-window-up; }
|
||||
Mod+L { focus-column-right; }
|
||||
|
||||
Mod+Ctrl+Left { move-column-left; }
|
||||
Mod+Ctrl+Down { move-window-down; }
|
||||
Mod+Ctrl+Up { move-window-up; }
|
||||
Mod+Ctrl+Right { move-column-right; }
|
||||
Mod+Ctrl+H { move-column-left; }
|
||||
Mod+Ctrl+J { move-window-down; }
|
||||
Mod+Ctrl+K { move-window-up; }
|
||||
Mod+Ctrl+L { move-column-right; }
|
||||
|
||||
Mod+Home { focus-column-first; }
|
||||
|
||||
Mod+Page_Down { focus-workspace-down; }
|
||||
Mod+Page_Up { focus-workspace-up; }
|
||||
Mod+U { focus-workspace-down; }
|
||||
Mod+I { focus-workspace-up; }
|
||||
Mod+Ctrl+Page_Down { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+Page_Up { move-column-to-workspace-up; }
|
||||
Mod+Ctrl+U { move-column-to-workspace-down; }
|
||||
Mod+Ctrl+I { move-column-to-workspace-up; }
|
||||
|
||||
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
|
||||
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
|
||||
|
||||
Mod+BracketLeft { consume-or-expel-window-left; }
|
||||
Mod+BracketRight { consume-or-expel-window-right; }
|
||||
|
||||
Mod+R { switch-preset-column-width; }
|
||||
Mod+Shift+R { switch-preset-window-height; }
|
||||
Mod+Ctrl+R { reset-window-height; }
|
||||
Mod+F { maximize-column; }
|
||||
Mod+Shift+F { fullscreen-window; }
|
||||
|
||||
Mod+C { center-column; }
|
||||
Mod+Ctrl+C { center-visible-columns; }
|
||||
|
||||
Mod+Minus { set-column-width "-10%"; }
|
||||
Mod+Equal { set-column-width "+10%"; }
|
||||
Mod+Shift+Minus { set-window-height "-10%"; }
|
||||
Mod+Shift+Equal { set-window-height "+10%"; }
|
||||
|
||||
Mod+S { toggle-column-tabbed-display; }
|
||||
Mod+Space { switch-layout "next"; }
|
||||
Mod+Shift+Space { switch-layout "prev"; }
|
||||
|
||||
Print { screenshot; }
|
||||
Ctrl+Print { screenshot-screen; }
|
||||
Alt+Print { screenshot-window; }
|
||||
|
||||
Mod+Shift+P { power-off-monitors; }
|
||||
}
|
||||
|
Before Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 9.4 KiB |
@@ -1,132 +1,44 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"reload_style_on_change": true,
|
||||
"modules-left": ["custom/notification","clock","custom/pacman","tray"],
|
||||
"modules-center": ["hyprland/workspaces"],
|
||||
"modules-right": ["group/expand","bluetooth","network","battery"],
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"height": 16,
|
||||
"spacing": 10,
|
||||
|
||||
"modules-left": ["clock"],
|
||||
"modules-center": ["niri/window"],
|
||||
"modules-right": ["cpu","memory","network"],
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"active": "",
|
||||
"default": "",
|
||||
"empty": ""
|
||||
},
|
||||
"persistent-workspaces": {
|
||||
"*": [ 1,2,3,4,5 ]
|
||||
}
|
||||
},
|
||||
"custom/notification": {
|
||||
"tooltip": false,
|
||||
"format": "",
|
||||
"on-click": "swaync-client -t -sw",
|
||||
"escape": true
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:%I:%M:%S %p} ",
|
||||
"interval": 1,
|
||||
"tooltip-format": "<tt>{calendar}</tt>",
|
||||
"calendar": {
|
||||
"format": {
|
||||
"today": "<span color='#fAfBfC'><b>{}</b></span>"
|
||||
}
|
||||
},
|
||||
"actions": {
|
||||
"on-click-right": "shift_down",
|
||||
"on-click": "shift_up"
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
"format-wifi": "",
|
||||
"format-ethernet":"",
|
||||
"format-disconnected": "",
|
||||
"tooltip-format-disconnected": "Error",
|
||||
"tooltip-format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"tooltip-format-ethernet": "{ifname} 🖧 ",
|
||||
"on-click": "kitty nmtui"
|
||||
},
|
||||
"bluetooth": {
|
||||
"format-on": "",
|
||||
"format-off": "BT-off",
|
||||
"format-disabled": "",
|
||||
"format-connected-battery": "{device_battery_percentage}% ",
|
||||
"format-alt": "{device_alias} ",
|
||||
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||
"tooltip-format-enumerate-connected": "{device_alias}\n{device_address}",
|
||||
"tooltip-format-enumerate-connected-battery": "{device_alias}\n{device_address}\n{device_battery_percentage}%",
|
||||
"on-click-right": "blueman-manager",
|
||||
},
|
||||
"battery": {
|
||||
"interval":30,
|
||||
"states": {
|
||||
"good": 95,
|
||||
"warning": 30,
|
||||
"critical": 20
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
"format-icons": [
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
""
|
||||
],
|
||||
},
|
||||
"custom/pacman": {
|
||||
"format": " {}",
|
||||
"interval": 30,
|
||||
"exec": "checkupdates | wc -l",
|
||||
"exec-if": "exit 0",
|
||||
"on-click": "kitty sh -c 'yay -Syu; echo Done - Press enter to exit; read'; pkill -SIGRTMIN+8 waybar",
|
||||
"signal": 8,
|
||||
"tooltip": false,
|
||||
},
|
||||
"custom/expand": {
|
||||
"format": "",
|
||||
"tooltip": false
|
||||
},
|
||||
"custom/endpoint":{
|
||||
"format": "|",
|
||||
"tooltip": false
|
||||
},
|
||||
"group/expand": {
|
||||
"orientation": "horizontal",
|
||||
"drawer": {
|
||||
"transition-duration": 600,
|
||||
"transition-to-left": true,
|
||||
"click-to-reveal": true
|
||||
},
|
||||
"modules": ["custom/expand", "custom/colorpicker","cpu","memory","temperature","custom/endpoint"],
|
||||
},
|
||||
"custom/colorpicker": {
|
||||
"format": "{}",
|
||||
"return-type": "json",
|
||||
"interval": "once",
|
||||
"exec": "~/.config/waybar/scripts/colorpicker.sh -j",
|
||||
"on-click": "~/.config/waybar/scripts/colorpicker.sh",
|
||||
"signal": 1
|
||||
},
|
||||
"cpu": {
|
||||
"format": "",
|
||||
"tooltip": true
|
||||
},
|
||||
"memory": {
|
||||
"format": ""
|
||||
},
|
||||
"temperature": {
|
||||
"critical-threshold": 80,
|
||||
"format": "",
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 14,
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:%d.%m.%Y | %H:%M}"
|
||||
},
|
||||
|
||||
"cpu": {
|
||||
"interval": 10,
|
||||
"format": "CPU: {}%",
|
||||
"max-length": 10
|
||||
},
|
||||
|
||||
"memory": {
|
||||
"interval": 30,
|
||||
"format": "\uf4bc {used:0.1f}G"
|
||||
},
|
||||
|
||||
"network": {
|
||||
"format": "",
|
||||
"format-ethernet": "\udb83\udc9d",
|
||||
"format-wifi": "{icon}",
|
||||
"format-disconnected": "\udb83\udc9c",
|
||||
"format-icons": ["\udb82\udd2f", "\udb82\udd1f", "\udb82\udd22", "\udb82\udd25", "\udb82\udd28"],
|
||||
"tooltip-format-wifi": "{essid} ({signalStrength}%)",
|
||||
"tooltip-format-ethernet": "{ifname}",
|
||||
"tooltip-format-disconnected": "Disconnected",
|
||||
},
|
||||
|
||||
"niri/window": {
|
||||
"format": "{}",
|
||||
"rewrite": {
|
||||
"(.*) - Mozilla Firefox": "🌎 $1",
|
||||
"(.*) - zsh": "> [$1]"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,54 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
check() {
|
||||
command -v "$1" 1>/dev/null
|
||||
}
|
||||
|
||||
|
||||
|
||||
loc="$HOME/.cache/colorpicker"
|
||||
[ -d "$loc" ] || mkdir -p "$loc"
|
||||
[ -f "$loc/colors" ] || touch "$loc/colors"
|
||||
|
||||
limit=10
|
||||
|
||||
[[ $# -eq 1 && $1 = "-l" ]] && {
|
||||
cat "$loc/colors"
|
||||
exit
|
||||
}
|
||||
|
||||
[[ $# -eq 1 && $1 = "-j" ]] && {
|
||||
text="$(head -n 1 "$loc/colors")"
|
||||
|
||||
mapfile -t allcolors < <(tail -n +2 "$loc/colors")
|
||||
# allcolors=($(tail -n +2 "$loc/colors"))
|
||||
tooltip="<b> COLORS</b>\n\n"
|
||||
|
||||
tooltip+="-> <b>$text</b> <span color='$text'></span> \n"
|
||||
for i in "${allcolors[@]}"; do
|
||||
tooltip+=" <b>$i</b> <span color='$i'></span> \n"
|
||||
done
|
||||
|
||||
cat <<EOF
|
||||
{ "text":"<span color='$text'></span>", "tooltip":"$tooltip"}
|
||||
EOF
|
||||
|
||||
exit
|
||||
}
|
||||
|
||||
check hyprpicker || {
|
||||
notify "hyprpicker is not installed"
|
||||
exit
|
||||
}
|
||||
killall -q hyprpicker
|
||||
color=$(hyprpicker)
|
||||
|
||||
check wl-copy && {
|
||||
echo "$color" | sed -z 's/\n//g' | wl-copy
|
||||
}
|
||||
|
||||
prevColors=$(head -n $((limit - 1)) "$loc/colors")
|
||||
echo "$color" >"$loc/colors"
|
||||
echo "$prevColors" >>"$loc/colors"
|
||||
sed -i '/^$/d' "$loc/colors"
|
||||
source ~/.cache/wal/colors.sh && notify-send "Color Picker" "This color has been selected: $color" -i $wallpaper
|
||||
pkill -RTMIN+1 waybar
|
||||
@@ -1,12 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Check if waybar is running
|
||||
if pgrep -x "waybar" > /dev/null; then
|
||||
# If running, kill the waybar process
|
||||
pkill -x "waybar"
|
||||
else
|
||||
# If not running, start waybar
|
||||
waybar &
|
||||
fi
|
||||
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
#!/bin/bash
|
||||
WAYBAR_DIR="$HOME/.config/waybar"
|
||||
STYLECSS="$WAYBAR_DIR/style.css"
|
||||
CONFIG="$WAYBAR_DIR/config"
|
||||
ASSETS="$WAYBAR_DIR/assets"
|
||||
THEMES="$WAYBAR_DIR/themes"
|
||||
menu() {
|
||||
find "${ASSETS}" -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.gif" \) | awk '{print "img:"$0}'
|
||||
}
|
||||
main() {
|
||||
choice=$(menu | wofi -c ~/.config/wofi/waybar -s ~/.config/wofi/style-waybar.css --show dmenu --prompt " Select Waybar (Scroll with Arrows)" -n)
|
||||
selected_wallpaper=$(echo "$choice" | sed 's/^img://')
|
||||
echo $selected_wallpaper
|
||||
if [[ "$selected_wallpaper" == "$ASSETS/experimental.png" ]]; then
|
||||
cat $THEMES/experimental/style-experimental.css > $STYLECSS
|
||||
cat $THEMES/experimental/config-experimental > $CONFIG
|
||||
pkill waybar && waybar
|
||||
elif [[ "$selected_wallpaper" == "$ASSETS/main.png" ]]; then
|
||||
cat $THEMES/default/style-default.css > $STYLECSS
|
||||
cat $THEMES/default/config-default > $CONFIG
|
||||
pkill waybar && waybar
|
||||
elif [[ "$selected_wallpaper" == "$ASSETS/line.png" ]]; then
|
||||
cat $THEMES/line/style-line.css > $STYLECSS
|
||||
cat $THEMES/line/config-line > $CONFIG
|
||||
pkill waybar && waybar
|
||||
elif [[ "$selected_wallpaper" == "$ASSETS/zen.png" ]]; then
|
||||
cat $THEMES/zen/style-zen.css > $STYLECSS
|
||||
cat $THEMES/zen/config-zen > $CONFIG
|
||||
pkill waybar && waybar
|
||||
fi
|
||||
|
||||
}
|
||||
main
|
||||
@@ -1,167 +1,26 @@
|
||||
@import url('../../.cache/wal/colors-waybar.css');
|
||||
@define-color foreground #eeeeee;
|
||||
@define-color foreground-inactive #aaaaaa;
|
||||
@define-color background #000000;
|
||||
|
||||
* {
|
||||
font-size:15px;
|
||||
font-family: "CodeNewRoman Nerd Font Propo";
|
||||
}
|
||||
window#waybar{
|
||||
all:unset;
|
||||
}
|
||||
.modules-left {
|
||||
padding:7px;
|
||||
margin:10 0 5 10;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
.modules-center {
|
||||
padding:7px;
|
||||
margin:10 0 5 0;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
.modules-right {
|
||||
padding:7px;
|
||||
margin: 10 10 5 0;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
tooltip {
|
||||
background:@background;
|
||||
color: @color7;
|
||||
}
|
||||
#clock:hover, #custom-pacman:hover, #custom-notification:hover,#bluetooth:hover,#network:hover,#battery:hover, #cpu:hover,#memory:hover,#temperature:hover{
|
||||
transition: all .3s ease;
|
||||
color:@color9;
|
||||
}
|
||||
#custom-notification {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
}
|
||||
#clock{
|
||||
padding: 0px 5px;
|
||||
color:@color7;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-pacman{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#workspaces {
|
||||
padding: 0px 5px;
|
||||
}
|
||||
#workspaces button {
|
||||
all:unset;
|
||||
padding: 0px 5px;
|
||||
color: alpha(@color9,.4);
|
||||
transition: all .2s ease;
|
||||
}
|
||||
#workspaces button:hover {
|
||||
color:rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
transition: all 1s ease;
|
||||
}
|
||||
#workspaces button.active {
|
||||
color: @color9;
|
||||
border: none;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
#workspaces button.empty {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .2);
|
||||
}
|
||||
#workspaces button.empty:hover {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
transition: all 1s ease;
|
||||
}
|
||||
#workspaces button.empty.active {
|
||||
color: @color9;
|
||||
border: none;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
#bluetooth{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#network{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#battery{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
|
||||
}
|
||||
#battery.charging {
|
||||
color: #26A65B;
|
||||
font-family: FiraCode Nerd Font Mono;
|
||||
font-size: 16px;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
color: #ffbe61;
|
||||
#waybar {
|
||||
color: @foreground;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: #f53c3c;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
#group-expand{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-expand{
|
||||
padding: 0px 5px;
|
||||
color:alpha(@foreground,.2);
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .7);
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-expand:hover{
|
||||
color:rgba(255,255,255,.2);
|
||||
text-shadow: 0px 0px 2px rgba(255, 255, 255, .5);
|
||||
}
|
||||
#custom-colorpicker{
|
||||
padding: 0px 5px;
|
||||
}
|
||||
#cpu,#memory,#temperature{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#custom-endpoint{
|
||||
color:transparent;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, 1);
|
||||
|
||||
}
|
||||
#tray{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
|
||||
}
|
||||
#tray menu * {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
|
||||
#tray menu separator {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
#network,
|
||||
#cpu,
|
||||
#clock,
|
||||
#memory,
|
||||
#window {
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
padding-top: 3px;
|
||||
padding-bottom: 3px;
|
||||
}
|
||||
|
||||
@@ -1,132 +0,0 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"reload_style_on_change": true,
|
||||
"modules-left": ["custom/notification","clock","custom/pacman","tray"],
|
||||
"modules-center": ["hyprland/workspaces"],
|
||||
"modules-right": ["group/expand","bluetooth","network","battery"],
|
||||
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"active": "",
|
||||
"default": "",
|
||||
"empty": ""
|
||||
},
|
||||
"persistent-workspaces": {
|
||||
"*": [ 1,2,3,4,5 ]
|
||||
}
|
||||
},
|
||||
"custom/notification": {
|
||||
"tooltip": false,
|
||||
"format": "",
|
||||
"on-click": "swaync-client -t -sw",
|
||||
"escape": true
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:%I:%M:%S %p} ",
|
||||
"interval": 1,
|
||||
"tooltip-format": "<tt>{calendar}</tt>",
|
||||
"calendar": {
|
||||
"format": {
|
||||
"today": "<span color='#fAfBfC'><b>{}</b></span>"
|
||||
}
|
||||
},
|
||||
"actions": {
|
||||
"on-click-right": "shift_down",
|
||||
"on-click": "shift_up"
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
"format-wifi": "",
|
||||
"format-ethernet":"",
|
||||
"format-disconnected": "",
|
||||
"tooltip-format-disconnected": "Error",
|
||||
"tooltip-format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"tooltip-format-ethernet": "{ifname} 🖧 ",
|
||||
"on-click": "kitty nmtui"
|
||||
},
|
||||
"bluetooth": {
|
||||
"format-on": "",
|
||||
"format-off": "BT-off",
|
||||
"format-disabled": "",
|
||||
"format-connected-battery": "{device_battery_percentage}% ",
|
||||
"format-alt": "{device_alias} ",
|
||||
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||
"tooltip-format-enumerate-connected": "{device_alias}\n{device_address}",
|
||||
"tooltip-format-enumerate-connected-battery": "{device_alias}\n{device_address}\n{device_battery_percentage}%",
|
||||
"on-click-right": "blueman-manager",
|
||||
},
|
||||
"battery": {
|
||||
"interval":30,
|
||||
"states": {
|
||||
"good": 95,
|
||||
"warning": 30,
|
||||
"critical": 20
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
"format-icons": [
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
""
|
||||
],
|
||||
},
|
||||
"custom/pacman": {
|
||||
"format": " {}",
|
||||
"interval": 30,
|
||||
"exec": "checkupdates | wc -l",
|
||||
"exec-if": "exit 0",
|
||||
"on-click": "kitty sh -c 'yay -Syu; echo Done - Press enter to exit; read'; pkill -SIGRTMIN+8 waybar",
|
||||
"signal": 8,
|
||||
"tooltip": false,
|
||||
},
|
||||
"custom/expand": {
|
||||
"format": "",
|
||||
"tooltip": false
|
||||
},
|
||||
"custom/endpoint":{
|
||||
"format": "|",
|
||||
"tooltip": false
|
||||
},
|
||||
"group/expand": {
|
||||
"orientation": "horizontal",
|
||||
"drawer": {
|
||||
"transition-duration": 600,
|
||||
"transition-to-left": true,
|
||||
"click-to-reveal": true
|
||||
},
|
||||
"modules": ["custom/expand", "custom/colorpicker","cpu","memory","temperature","custom/endpoint"],
|
||||
},
|
||||
"custom/colorpicker": {
|
||||
"format": "{}",
|
||||
"return-type": "json",
|
||||
"interval": "once",
|
||||
"exec": "~/.config/waybar/scripts/colorpicker.sh -j",
|
||||
"on-click": "~/.config/waybar/scripts/colorpicker.sh",
|
||||
"signal": 1
|
||||
},
|
||||
"cpu": {
|
||||
"format": "",
|
||||
"tooltip": true
|
||||
},
|
||||
"memory": {
|
||||
"format": ""
|
||||
},
|
||||
"temperature": {
|
||||
"critical-threshold": 80,
|
||||
"format": "",
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 14,
|
||||
"spacing": 10
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,167 +0,0 @@
|
||||
@import url('../../.cache/wal/colors-waybar.css');
|
||||
|
||||
* {
|
||||
font-size:15px;
|
||||
font-family: "CodeNewRoman Nerd Font Propo";
|
||||
}
|
||||
window#waybar{
|
||||
all:unset;
|
||||
}
|
||||
.modules-left {
|
||||
padding:7px;
|
||||
margin:10 0 5 10;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
.modules-center {
|
||||
padding:7px;
|
||||
margin:10 0 5 0;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
.modules-right {
|
||||
padding:7px;
|
||||
margin: 10 10 5 0;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
tooltip {
|
||||
background:@background;
|
||||
color: @color7;
|
||||
}
|
||||
#clock:hover, #custom-pacman:hover, #custom-notification:hover,#bluetooth:hover,#network:hover,#battery:hover, #cpu:hover,#memory:hover,#temperature:hover{
|
||||
transition: all .3s ease;
|
||||
color:@color9;
|
||||
}
|
||||
#custom-notification {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
}
|
||||
#clock{
|
||||
padding: 0px 5px;
|
||||
color:@color7;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-pacman{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#workspaces {
|
||||
padding: 0px 5px;
|
||||
}
|
||||
#workspaces button {
|
||||
all:unset;
|
||||
padding: 0px 5px;
|
||||
color: alpha(@color9,.4);
|
||||
transition: all .2s ease;
|
||||
}
|
||||
#workspaces button:hover {
|
||||
color:rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
transition: all 1s ease;
|
||||
}
|
||||
#workspaces button.active {
|
||||
color: @color9;
|
||||
border: none;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
#workspaces button.empty {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .2);
|
||||
}
|
||||
#workspaces button.empty:hover {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
transition: all 1s ease;
|
||||
}
|
||||
#workspaces button.empty.active {
|
||||
color: @color9;
|
||||
border: none;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
#bluetooth{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#network{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#battery{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
|
||||
}
|
||||
#battery.charging {
|
||||
color: #26A65B;
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
color: #ffbe61;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: #f53c3c;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
#group-expand{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-expand{
|
||||
padding: 0px 5px;
|
||||
color:alpha(@foreground,.2);
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .7);
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-expand:hover{
|
||||
color:rgba(255,255,255,.2);
|
||||
text-shadow: 0px 0px 2px rgba(255, 255, 255, .5);
|
||||
}
|
||||
#custom-colorpicker{
|
||||
padding: 0px 5px;
|
||||
}
|
||||
#cpu,#memory,#temperature{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#custom-endpoint{
|
||||
color:transparent;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, 1);
|
||||
|
||||
}
|
||||
#tray{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
|
||||
}
|
||||
#tray menu * {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
|
||||
#tray menu separator {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
@@ -1,132 +0,0 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"reload_style_on_change": true,
|
||||
"modules-left": ["custom/notification","clock","custom/pacman","tray"],
|
||||
"modules-center": ["hyprland/workspaces"],
|
||||
"modules-right": ["group/expand","bluetooth","network","battery"],
|
||||
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"active": "",
|
||||
"default": "",
|
||||
"empty": ""
|
||||
},
|
||||
"persistent-workspaces": {
|
||||
"*": [ 1,2,3,4,5 ]
|
||||
}
|
||||
},
|
||||
"custom/notification": {
|
||||
"tooltip": false,
|
||||
"format": "",
|
||||
"on-click": "swaync-client -t -sw",
|
||||
"escape": true
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:%I:%M:%S %p} ",
|
||||
"interval": 1,
|
||||
"tooltip-format": "<tt>{calendar}</tt>",
|
||||
"calendar": {
|
||||
"format": {
|
||||
"today": "<span color='#fAfBfC'><b>{}</b></span>"
|
||||
}
|
||||
},
|
||||
"actions": {
|
||||
"on-click-right": "shift_down",
|
||||
"on-click": "shift_up"
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
"format-wifi": "",
|
||||
"format-ethernet":"",
|
||||
"format-disconnected": "",
|
||||
"tooltip-format-disconnected": "Error",
|
||||
"tooltip-format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"tooltip-format-ethernet": "{ifname} 🖧 ",
|
||||
"on-click": "kitty nmtui"
|
||||
},
|
||||
"bluetooth": {
|
||||
"format-on": "",
|
||||
"format-off": "BT-off",
|
||||
"format-disabled": "",
|
||||
"format-connected-battery": "{device_battery_percentage}% ",
|
||||
"format-alt": "{device_alias} ",
|
||||
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||
"tooltip-format-enumerate-connected": "{device_alias}\n{device_address}",
|
||||
"tooltip-format-enumerate-connected-battery": "{device_alias}\n{device_address}\n{device_battery_percentage}%",
|
||||
"on-click-right": "blueman-manager",
|
||||
},
|
||||
"battery": {
|
||||
"interval":30,
|
||||
"states": {
|
||||
"good": 95,
|
||||
"warning": 30,
|
||||
"critical": 20
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
"format-icons": [
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
""
|
||||
],
|
||||
},
|
||||
"custom/pacman": {
|
||||
"format": " {}",
|
||||
"interval": 30,
|
||||
"exec": "checkupdates | wc -l",
|
||||
"exec-if": "exit 0",
|
||||
"on-click": "kitty sh -c 'yay -Syu; echo Done - Press enter to exit; read'; pkill -SIGRTMIN+8 waybar",
|
||||
"signal": 8,
|
||||
"tooltip": false,
|
||||
},
|
||||
"custom/expand": {
|
||||
"format": "",
|
||||
"tooltip": false
|
||||
},
|
||||
"custom/endpoint":{
|
||||
"format": "|",
|
||||
"tooltip": false
|
||||
},
|
||||
"group/expand": {
|
||||
"orientation": "horizontal",
|
||||
"drawer": {
|
||||
"transition-duration": 600,
|
||||
"transition-to-left": true,
|
||||
"click-to-reveal": true
|
||||
},
|
||||
"modules": ["custom/expand", "custom/colorpicker","cpu","memory","temperature","custom/endpoint"],
|
||||
},
|
||||
"custom/colorpicker": {
|
||||
"format": "{}",
|
||||
"return-type": "json",
|
||||
"interval": "once",
|
||||
"exec": "~/.config/waybar/scripts/colorpicker.sh -j",
|
||||
"on-click": "~/.config/waybar/scripts/colorpicker.sh",
|
||||
"signal": 1
|
||||
},
|
||||
"cpu": {
|
||||
"format": "",
|
||||
"tooltip": true
|
||||
},
|
||||
"memory": {
|
||||
"format": ""
|
||||
},
|
||||
"temperature": {
|
||||
"critical-threshold": 80,
|
||||
"format": "",
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 14,
|
||||
"spacing": 10
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,182 +0,0 @@
|
||||
@import url('../../.cache/wal/colors-waybar.css');
|
||||
* {
|
||||
font-size:15px;
|
||||
font-family: "CodeNewRoman Nerd Font Propo";
|
||||
}
|
||||
window#waybar{
|
||||
all:unset;
|
||||
}
|
||||
.modules-left {
|
||||
padding:7px;
|
||||
margin:10 0 5 10;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
.modules-center {
|
||||
padding:7px;
|
||||
margin:10 0 5 0;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
min-width: 150.5px;
|
||||
}
|
||||
.modules-right {
|
||||
padding:7px;
|
||||
margin: 10 10 5 0;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
tooltip {
|
||||
background:@background;
|
||||
color: @color7;
|
||||
}
|
||||
#clock:hover, #custom-pacman:hover, #custom-notification:hover,#bluetooth:hover,#network:hover,#battery:hover, #cpu:hover,#memory:hover,#temperature:hover{
|
||||
transition: all .3s ease;
|
||||
color:@color9;
|
||||
}
|
||||
#custom-notification {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
}
|
||||
#clock{
|
||||
padding: 0px 5px;
|
||||
color:@color7;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-pacman{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
padding: 0px 5px;
|
||||
text-shadow:none;
|
||||
}
|
||||
#workspaces button {
|
||||
all:unset;
|
||||
margin: 0px 3px;
|
||||
padding: 0px 2px;
|
||||
color:rgba(0,0,0,0);
|
||||
text-shadow:none;
|
||||
background: @color2;
|
||||
border-radius: 50%;
|
||||
transition: all .3s;
|
||||
min-width: 15px;
|
||||
}
|
||||
#workspaces button:hover {
|
||||
color:rgba(0,0,0,0);
|
||||
border: none;
|
||||
background: @color1;
|
||||
}
|
||||
#workspaces button.active {
|
||||
border: none;
|
||||
padding: 0px 2px;
|
||||
border-radius:10px;
|
||||
background: @color1;
|
||||
min-width: 30px;
|
||||
}
|
||||
#workspaces button.active:hover{
|
||||
background: @color2;
|
||||
}
|
||||
#workspaces button.empty {
|
||||
color: transparent;
|
||||
border: none;
|
||||
background: alpha(@background,.5) ;
|
||||
|
||||
}
|
||||
#workspaces button.empty:hover {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
}
|
||||
#workspaces button.empty.active {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: none;
|
||||
background: @color1;
|
||||
}
|
||||
#workspaces button.empty.active:hover{
|
||||
background: @color2;
|
||||
}
|
||||
#bluetooth{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#network{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#battery{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
|
||||
}
|
||||
#battery.charging {
|
||||
color: #26A65B;
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
color: #ffbe61;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: #f53c3c;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
#group-expand{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-expand{
|
||||
padding: 0px 5px;
|
||||
color:alpha(@foreground,.2);
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .7);
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-expand:hover{
|
||||
color:rgba(255,255,255,.2);
|
||||
text-shadow: 0px 0px 2px rgba(255, 255, 255, .5);
|
||||
}
|
||||
#custom-colorpicker{
|
||||
padding: 0px 5px;
|
||||
}
|
||||
#cpu,#memory,#temperature{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#custom-endpoint{
|
||||
color:transparent;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, 1);
|
||||
|
||||
}
|
||||
#tray{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
|
||||
}
|
||||
#tray menu * {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
|
||||
#tray menu separator {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
@@ -1,136 +0,0 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"margin-left": 10,
|
||||
"margin-right": 10,
|
||||
"margin-top": 7,
|
||||
"margin-bottom": 0,
|
||||
"reload_style_on_change": true,
|
||||
"modules-left": ["custom/notification","clock","custom/pacman","tray"],
|
||||
"modules-center": ["hyprland/workspaces"],
|
||||
"modules-right": ["group/expand","bluetooth","network","battery"],
|
||||
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"active": "",
|
||||
"default": "",
|
||||
"empty": ""
|
||||
},
|
||||
"persistent-workspaces": {
|
||||
"*": [ 1,2,3,4,5 ]
|
||||
}
|
||||
},
|
||||
"custom/notification": {
|
||||
"tooltip": false,
|
||||
"format": "",
|
||||
"on-click": "swaync-client -t -sw",
|
||||
"escape": true
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:%I:%M:%S %p} ",
|
||||
"interval": 1,
|
||||
"tooltip-format": "<tt>{calendar}</tt>",
|
||||
"calendar": {
|
||||
"format": {
|
||||
"today": "<span color='#fAfBfC'><b>{}</b></span>"
|
||||
}
|
||||
},
|
||||
"actions": {
|
||||
"on-click-right": "shift_down",
|
||||
"on-click": "shift_up"
|
||||
}
|
||||
},
|
||||
"network": {
|
||||
"format-wifi": "",
|
||||
"format-ethernet":"",
|
||||
"format-disconnected": "",
|
||||
"tooltip-format-disconnected": "Error",
|
||||
"tooltip-format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"tooltip-format-ethernet": "{ifname} 🖧 ",
|
||||
"on-click": "kitty nmtui"
|
||||
},
|
||||
"bluetooth": {
|
||||
"format-on": "",
|
||||
"format-off": "BT-off",
|
||||
"format-disabled": "",
|
||||
"format-connected-battery": "{device_battery_percentage}% ",
|
||||
"format-alt": "{device_alias} ",
|
||||
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||
"tooltip-format-enumerate-connected": "{device_alias}\n{device_address}",
|
||||
"tooltip-format-enumerate-connected-battery": "{device_alias}\n{device_address}\n{device_battery_percentage}%",
|
||||
"on-click-right": "blueman-manager",
|
||||
},
|
||||
"battery": {
|
||||
"interval":30,
|
||||
"states": {
|
||||
"good": 95,
|
||||
"warning": 30,
|
||||
"critical": 20
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
"format-icons": [
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
""
|
||||
],
|
||||
},
|
||||
"custom/pacman": {
|
||||
"format": " {}",
|
||||
"interval": 30,
|
||||
"exec": "checkupdates | wc -l",
|
||||
"exec-if": "exit 0",
|
||||
"on-click": "kitty sh -c 'yay -Syu; echo Done - Press enter to exit; read'; pkill -SIGRTMIN+8 waybar",
|
||||
"signal": 8,
|
||||
"tooltip": false,
|
||||
},
|
||||
"custom/expand": {
|
||||
"format": "",
|
||||
"tooltip": false
|
||||
},
|
||||
"custom/endpoint":{
|
||||
"format": "|",
|
||||
"tooltip": false
|
||||
},
|
||||
"group/expand": {
|
||||
"orientation": "horizontal",
|
||||
"drawer": {
|
||||
"transition-duration": 600,
|
||||
"transition-to-left": true,
|
||||
"click-to-reveal": true
|
||||
},
|
||||
"modules": ["custom/expand", "custom/colorpicker","cpu","memory","temperature","custom/endpoint"],
|
||||
},
|
||||
"custom/colorpicker": {
|
||||
"format": "{}",
|
||||
"return-type": "json",
|
||||
"interval": "once",
|
||||
"exec": "~/.config/waybar/scripts/colorpicker.sh -j",
|
||||
"on-click": "~/.config/waybar/scripts/colorpicker.sh",
|
||||
"signal": 1
|
||||
},
|
||||
"cpu": {
|
||||
"format": "",
|
||||
"tooltip": true
|
||||
},
|
||||
"memory": {
|
||||
"format": ""
|
||||
},
|
||||
"temperature": {
|
||||
"critical-threshold": 80,
|
||||
"format": "",
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 14,
|
||||
"spacing": 10
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,149 +0,0 @@
|
||||
|
||||
@import url('../../.cache/wal/colors-waybar.css');
|
||||
|
||||
* {
|
||||
font-size:15px;
|
||||
font-family: "CodeNewRoman Nerd Font Propo";
|
||||
}
|
||||
window#waybar{
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
tooltip {
|
||||
background:@background;
|
||||
color: @color7;
|
||||
}
|
||||
#clock:hover, #custom-pacman:hover, #custom-notification:hover,#bluetooth:hover,#network:hover,#battery:hover, #cpu:hover,#memory:hover,#temperature:hover{
|
||||
transition: all .3s ease;
|
||||
color:@color9;
|
||||
}
|
||||
#custom-notification {
|
||||
padding: 0px 5px 0 10;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
}
|
||||
#clock{
|
||||
padding: 0px 5px;
|
||||
color:@color7;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-pacman{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#workspaces {
|
||||
padding: 7px 5px;
|
||||
}
|
||||
#workspaces button {
|
||||
all:unset;
|
||||
padding: 0px 5px;
|
||||
color: alpha(@color9,.4);
|
||||
transition: all .2s ease;
|
||||
}
|
||||
#workspaces button:hover {
|
||||
color:rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
transition: all 1s ease;
|
||||
}
|
||||
#workspaces button.active {
|
||||
color: @color9;
|
||||
border: none;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
#workspaces button.empty {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .2);
|
||||
}
|
||||
#workspaces button.empty:hover {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
transition: all 1s ease;
|
||||
}
|
||||
#workspaces button.empty.active {
|
||||
color: @color9;
|
||||
border: none;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
#bluetooth{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#network{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#battery{
|
||||
padding: 0px 10px 0 5;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
|
||||
}
|
||||
#battery.charging {
|
||||
color: #26A65B;
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
color: #ffbe61;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: #f53c3c;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
#group-expand{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-expand{
|
||||
padding: 0px 5px;
|
||||
color:alpha(@foreground,.2);
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .7);
|
||||
transition: all .3s ease;
|
||||
}
|
||||
#custom-expand:hover{
|
||||
color:rgba(255,255,255,.2);
|
||||
text-shadow: 0px 0px 2px rgba(255, 255, 255, .5);
|
||||
}
|
||||
#custom-colorpicker{
|
||||
padding: 0px 5px;
|
||||
}
|
||||
#cpu,#memory,#temperature{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
color:@color7;
|
||||
|
||||
}
|
||||
#custom-endpoint{
|
||||
color:transparent;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, 1);
|
||||
|
||||
}
|
||||
#tray{
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
|
||||
}
|
||||
#tray menu * {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
|
||||
#tray menu separator {
|
||||
padding: 0px 5px;
|
||||
transition: all .3s ease;
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"reload_style_on_change": true,
|
||||
"modules-center": ["hyprland/workspaces"],
|
||||
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"active": "",
|
||||
"default": "",
|
||||
"empty": ""
|
||||
},
|
||||
"persistent-workspaces": {
|
||||
"*": [ 1,2,3,4,5 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,52 +0,0 @@
|
||||
@import url('../../.cache/wal/colors-waybar.css');
|
||||
|
||||
* {
|
||||
font-size:15px;
|
||||
font-family: "CodeNewRoman Nerd Font Propo";
|
||||
}
|
||||
window#waybar{
|
||||
all:unset;
|
||||
}
|
||||
.modules-center {
|
||||
padding:7px;
|
||||
margin:10 0 5 0;
|
||||
border-radius:10px;
|
||||
background: alpha(@background,.6);
|
||||
box-shadow: 0px 0px 2px rgba(0, 0, 0, .6);
|
||||
}
|
||||
#workspaces {
|
||||
padding: 0px 5px;
|
||||
}
|
||||
#workspaces button {
|
||||
all:unset;
|
||||
padding: 0px 5px;
|
||||
color: alpha(@color9,.4);
|
||||
transition: all .2s ease;
|
||||
}
|
||||
#workspaces button:hover {
|
||||
color:rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
transition: all 1s ease;
|
||||
}
|
||||
#workspaces button.active {
|
||||
color: @color9;
|
||||
border: none;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
#workspaces button.empty {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .2);
|
||||
}
|
||||
#workspaces button.empty:hover {
|
||||
color: rgba(0,0,0,0);
|
||||
border: none;
|
||||
text-shadow: 0px 0px 1.5px rgba(0, 0, 0, .5);
|
||||
transition: all 1s ease;
|
||||
}
|
||||
#workspaces button.empty.active {
|
||||
color: @color9;
|
||||
border: none;
|
||||
text-shadow: 0px 0px 2px rgba(0, 0, 0, .5);
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
wofi -n
|
||||
@@ -16,8 +16,8 @@
|
||||
window {
|
||||
all: unset;
|
||||
padding: 20px;
|
||||
border-radius: 0px;
|
||||
background-color: alpha(@background, 0.5);
|
||||
border-radius: 10px;
|
||||
background-color: rgba(50,50,50, 1);
|
||||
}
|
||||
#inner-box {
|
||||
margin: 2px;
|
||||
@@ -43,7 +43,6 @@ window {
|
||||
color: @text;
|
||||
box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5);
|
||||
border-radius: 10;
|
||||
background-color: alpha(@background, 0.2);
|
||||
}
|
||||
#input image {
|
||||
border: none;
|
||||
@@ -78,7 +77,7 @@ window {
|
||||
#entry:selected {
|
||||
border: none;
|
||||
border-radius: 20px;
|
||||
background-color: rgba(0, 0, 0, 0.15);
|
||||
background-color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
#entry:selected #text {
|
||||
color: @mauve;
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
window {
|
||||
all:unset;
|
||||
padding: 20px;
|
||||
border-radius: 0px;
|
||||
background-color: alpha(@background,.5);
|
||||
border-radius: 10px;
|
||||
background-color: rgba(50,50,50, 1);
|
||||
}
|
||||
#inner-box {
|
||||
margin: 2px;
|
||||
@@ -42,9 +42,8 @@ window {
|
||||
border: none;
|
||||
outline: none;
|
||||
color: @text;
|
||||
box-shadow: 1px 1px 5px rgba(0,0,0, .5);
|
||||
box-shadow: 1px 1px 5px rgba(0,0,0, 1);
|
||||
border-radius:10;
|
||||
background-color: alpha(@background,.2);
|
||||
}
|
||||
#input image {
|
||||
border: none;
|
||||
@@ -80,11 +79,11 @@ window {
|
||||
#entry:selected {
|
||||
border: none;
|
||||
border-radius: 20px;
|
||||
background-color: rgba(0, 0, 0, 0.15);
|
||||
background-color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
#entry:selected #text {
|
||||
color: @mauve;
|
||||
}
|
||||
#entry:drop(active) {
|
||||
background-color: @lavender !important;
|
||||
background-color: @lavender;
|
||||
}
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
window {
|
||||
all:unset;
|
||||
padding: 20px;
|
||||
border-radius: 0px;
|
||||
background-color: alpha(@background,.5);
|
||||
border-radius: 10px;
|
||||
background-color: rgba(50,50,50, 1);
|
||||
}
|
||||
#inner-box {
|
||||
margin: 2px;
|
||||
@@ -50,8 +50,7 @@ window {
|
||||
outline: none;
|
||||
color: @text;
|
||||
box-shadow: 1px 1px 5px rgba(0,0,0, .5);
|
||||
border-radius:10;
|
||||
background-color: alpha(@background,.2);
|
||||
border-radius:10px;
|
||||
}
|
||||
#input image {
|
||||
border: none;
|
||||
@@ -95,11 +94,11 @@ window {
|
||||
box-shadow: 1px 1px 5px rgba(255,255,255, .03);
|
||||
border: none;
|
||||
border-radius: 20px;
|
||||
background-color:transparent;
|
||||
background-color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
#entry:selected #text {
|
||||
color: @mauve;
|
||||
}
|
||||
#entry:drop(active) {
|
||||
background-color: @lavender !important;
|
||||
background-color: rgba(35, 35, 35, 1);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/bin/bash
|
||||
WALLPAPER_DIR="$HOME/Pictures/Wallpapers/walls"
|
||||
#I dont know what the fuck I am doing
|
||||
menu() {
|
||||
find "${WALLPAPER_DIR}" -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.gif" \) | awk '{print "img:"$0}'
|
||||
}
|
||||
main() {
|
||||
choice=$(menu | wofi -c ~/.config/wofi/wallpaper -s ~/.config/wofi/style-wallpaper.css --show dmenu --prompt "Select Wallpaper:" -n)
|
||||
selected_wallpaper=$(echo "$choice" | sed 's/^img://')
|
||||
swww img "$selected_wallpaper" --transition-type any --transition-fps 60 --transition-duration .5
|
||||
wal -i "$selected_wallpaper" -n --cols16 -e
|
||||
pywalfox update
|
||||
source ~/.cache/wal/colors.sh && cp -r $wallpaper ~/Pictures/Wallpapers/pywallpaper.jpg
|
||||
}
|
||||
main
|
||||
@@ -0,0 +1,201 @@
|
||||
Add swayidle to make the screen go dark
|
||||
And add adrien user to uinput
|
||||
|
||||
---
|
||||
|
||||
### Step 1: Install `swayidle`
|
||||
|
||||
Open your terminal and install `swayidle` from the official Arch repositories. It's good practice to also install a screen locker like `swaylock` at the same time, as you'll likely want to lock your screen before it turns off.
|
||||
|
||||
```bash
|
||||
sudo pacman -S swayidle swaylock
|
||||
```
|
||||
|
||||
### Step 2: Create the Idle Management Script
|
||||
|
||||
It's cleanest to manage this with a small shell script. Let's create one in niri's configuration directory.
|
||||
|
||||
1. Create the file:
|
||||
```bash
|
||||
mkdir -p ~/.config/niri
|
||||
nano ~/.config/niri/idle.sh
|
||||
```
|
||||
|
||||
2. Paste the following content into the file. This configuration will do two things:
|
||||
* **After 10 minutes (600s):** Lock the screen with `swaylock`.
|
||||
* **After 15 minutes (900s):** Turn the display off (DPMS off).
|
||||
* **On resume (mouse/keyboard activity):** Turn the display back on (DPMS on).
|
||||
|
||||
```sh
|
||||
#!/bin/sh
|
||||
|
||||
# This script is a simple wrapper for swayidle.
|
||||
# It locks the screen after 10 minutes of inactivity,
|
||||
# and turns off the display after 15 minutes.
|
||||
|
||||
swayidle -w \
|
||||
timeout 600 'swaylock -f' \
|
||||
timeout 900 'niri msg output "*" dpms off' \
|
||||
resume 'niri msg output "*" dpms on'
|
||||
```
|
||||
|
||||
* `swayidle -w`: Starts the daemon and waits (doesn't exit).
|
||||
* `timeout 600 'swaylock -f'`: After 600 seconds (10 minutes) of inactivity, run `swaylock -f` to lock the screen.
|
||||
* `timeout 900 'niri msg output "*" dpms off'`: After 900 seconds (15 minutes), run the command to turn off all outputs (`*`). The command `niri msg` is how you control niri from the command line.
|
||||
* `resume 'niri msg output "*" dpms on'`: When activity is detected again (mouse move, key press), run the command to turn all outputs back on.
|
||||
|
||||
3. Save the file and exit `nano` (Ctrl+O, Enter, Ctrl+X).
|
||||
|
||||
4. Make the script executable:
|
||||
```bash
|
||||
chmod +x ~/.config/niri/idle.sh
|
||||
```
|
||||
|
||||
### Step 3: Autostart the Script with Niri
|
||||
|
||||
Now, we need to tell niri to run this script every time it starts.
|
||||
|
||||
1. Open your niri configuration file. If it doesn't exist, niri uses its defaults, but you can create it.
|
||||
```bash
|
||||
nano ~/.config/niri/config.kdl
|
||||
```
|
||||
|
||||
2. Add the `startup-commands` block if it doesn't exist, and add an `exec-on-startup` command to run your script. Make sure to use the full path.
|
||||
|
||||
```kdl
|
||||
// Your other niri configurations might be here...
|
||||
|
||||
startup-commands {
|
||||
// Add this line to run your idle script
|
||||
exec-on-startup "~/.config/niri/idle.sh"
|
||||
|
||||
// You might have other startup commands here, for example:
|
||||
// exec-on-startup "waybar"
|
||||
// exec-on-startup "mako"
|
||||
}
|
||||
|
||||
// More of your niri config...
|
||||
```
|
||||
|
||||
**Note:** The `~` shortcut for your home directory works in the niri config.
|
||||
|
||||
3. Save and close the file.
|
||||
|
||||
### Step 4: Apply the Changes
|
||||
|
||||
Log out of your niri session and log back in. The `idle.sh` script will now be running in the background. Your screen will lock after 10 minutes and turn off after 15 minutes of inactivity. Moving your mouse or pressing a key will wake the screen up to the `swaylock` prompt.
|
||||
|
||||
---
|
||||
|
||||
### Customization
|
||||
|
||||
* **To only turn off the screen (no lock):**
|
||||
If you *only* want the screen to go black after 15 minutes and don't want to lock it, modify your `~/.config/niri/idle.sh` script to remove the `swaylock` timeout:
|
||||
|
||||
```sh
|
||||
#!/bin/sh
|
||||
|
||||
swayidle -w \
|
||||
timeout 900 'niri msg output "*" dpms off' \
|
||||
resume 'niri msg output "*" dpms on'
|
||||
```
|
||||
This directly addresses your original request.
|
||||
|
||||
* **Changing the time:**
|
||||
Simply change the number of seconds in the script. For example, for a 5-minute screen-off time, change `900` to `300`.
|
||||
|
||||
* **Customizing swaylock:**
|
||||
You can make `swaylock` look nicer. For example, to set a solid color:
|
||||
`swaylock -f -c 000000` (for black).
|
||||
You can edit this command directly in your `idle.sh` script. Check `man swaylock` for all options.
|
||||
|
||||
---
|
||||
|
||||
Of course! Let's break down what `uinput` is, why you're getting a "permission denied" error, and exactly how to fix it on your Arch Linux system.
|
||||
|
||||
### What is `uinput`? (The Simple Explanation)
|
||||
|
||||
Think of `uinput` (User Input) as a special module in the Linux kernel. Its job is to let a regular program **pretend to be a physical input device**.
|
||||
|
||||
When you move your real mouse, the hardware sends a signal to the kernel, and the kernel tells your desktop environment, "The mouse just moved to coordinates X, Y."
|
||||
|
||||
`uinput` allows a program, like Sunshine, to do the exact same thing, but in software. Sunshine can tell the `uinput` module, "Hey, pretend a mouse just moved to coordinates X, Y," and the kernel will treat it exactly as if a real mouse did it.
|
||||
|
||||
This is essential for applications like:
|
||||
* **Sunshine/Moonlight:** To inject mouse, keyboard, and gamepad inputs coming from your client device over the network.
|
||||
* **Steam:** For the Steam Input feature, which can make a controller look like a keyboard and mouse to a game.
|
||||
* **Input Remappers:** Tools that change what your keyboard keys or controller buttons do.
|
||||
|
||||
### The Permission Problem
|
||||
|
||||
For security reasons, you don't want just *any* application to be able to create fake keyboard presses or mouse movements. If any program could do this, it would be trivial to create a keylogger or malware that could take control of your computer.
|
||||
|
||||
Because this is a powerful and potentially dangerous feature, Linux protects it with file permissions. The `uinput` functionality is exposed through a special device file: `/dev/uinput`.
|
||||
|
||||
Let's look at the permissions on that file. If you run this command in your terminal:
|
||||
|
||||
```bash
|
||||
ls -l /dev/uinput
|
||||
```
|
||||
|
||||
You will likely see something like this:
|
||||
|
||||
```
|
||||
crw-rw---- 1 root uinput 10, 223 Dec 15 10:30 /dev/uinput
|
||||
```
|
||||
|
||||
Let's break that down:
|
||||
* `c`: It's a character device file.
|
||||
* `rw-`: The **owner** (`root`) has read and write permissions.
|
||||
* `rw-`: The **group** (`uinput`) has read and write permissions.
|
||||
* `---`: **Everyone else** has no permissions at all.
|
||||
|
||||
When you run Sunshine, it runs as *your* user account (e.g., `myuser`), not as `root`. By default, your user is not in the `uinput` group. Therefore, when Sunshine tries to access `/dev/uinput` to create a virtual mouse or keyboard, the kernel sees that your user is in the "everyone else" category and says **"Permission Denied"**.
|
||||
|
||||
### The Solution: The `uinput` Group
|
||||
|
||||
The forum's advice is exactly correct. The `uinput` group was created specifically for this purpose: to grant trusted users the ability to access the `uinput` device without giving them full `root` privileges.
|
||||
|
||||
By adding your user to the `uinput` group, you are telling the system, "I trust this user account to run programs (like Sunshine) that need to create virtual input devices."
|
||||
|
||||
---
|
||||
|
||||
### How to Fix It: Step-by-Step
|
||||
|
||||
Here are the commands to solve your problem on Arch Linux.
|
||||
|
||||
**1. Add Your User to the `uinput` Group**
|
||||
|
||||
Open a terminal and run the following command. Make sure to replace `your_username` with your actual username. If you're not sure, you can run the command `whoami` to see it.
|
||||
|
||||
```bash
|
||||
sudo gpasswd -a your_username uinput
|
||||
```
|
||||
* `sudo`: Run this command with administrator privileges.
|
||||
* `gpasswd`: A command to manage group memberships.
|
||||
* `-a your_username`: The action is to **a**dd the specified user.
|
||||
* `uinput`: The group you are adding the user to.
|
||||
|
||||
**2. Apply the Changes**
|
||||
|
||||
Group membership changes only take effect when you start a new login session. The current session you are in will not have the new permissions. You have two options:
|
||||
|
||||
* **Log Out and Log Back In:** This is the cleanest and most recommended way. Log out of your Niri session completely and then log back in.
|
||||
* **Reboot:** A full reboot will also work.
|
||||
|
||||
**3. Verify the Change (Optional)**
|
||||
|
||||
After you have logged back in, you can verify that you are now a member of the group by running:
|
||||
|
||||
```bash
|
||||
groups
|
||||
```
|
||||
|
||||
You should see `uinput` listed in the output, along with your other groups.
|
||||
|
||||
```
|
||||
# Example output
|
||||
wheel audio video input uinput myuser
|
||||
```
|
||||
|
||||
Once you've done this, Sunshine should have the necessary permissions to create virtual input devices, and your mouse, keyboard, and controller should start working correctly on your Niri desktop
|
||||
@@ -1,66 +1,53 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Install pacman packages
|
||||
for package in \
|
||||
scrcpy \
|
||||
base-devel \
|
||||
set -e
|
||||
|
||||
sudo pacman -S --noconfirm --needed \
|
||||
git \
|
||||
ghostty \
|
||||
lazygit \
|
||||
starship \
|
||||
; do
|
||||
sudo pacman -S --noconfirm $package
|
||||
clear
|
||||
done
|
||||
swww \
|
||||
wl-clipboard \
|
||||
ripgrep \
|
||||
wofi \
|
||||
go \
|
||||
swaybg \
|
||||
starship
|
||||
|
||||
git clone https://aur.archlinux.org/yay.git
|
||||
cd yay
|
||||
makepkg -si
|
||||
cd ~
|
||||
sudo pacman -R --noconfirm alacritty
|
||||
|
||||
# Install yay packages
|
||||
for package in \
|
||||
git clone https://aur.archlinux.org/yay.git /tmp/yay
|
||||
(cd /tmp/yay && makepkg -si --noconfirm)
|
||||
rm -rf /tmp/yay
|
||||
|
||||
yay -S --noconfirm --needed \
|
||||
python-pywal16 \
|
||||
python-pywalfox \
|
||||
swww waybar \
|
||||
myfetch \
|
||||
ttf-firacode-nerd \
|
||||
neovim \
|
||||
python-pywalfox \
|
||||
hypridle \
|
||||
hyprshot \
|
||||
hyprlock \
|
||||
pyprland \
|
||||
swaync \
|
||||
wlogout \
|
||||
nerd-fonts \
|
||||
htop \
|
||||
nvtop \
|
||||
yazi \
|
||||
discord \
|
||||
firefox \
|
||||
; do
|
||||
yay -S --noconfirm $package
|
||||
clear
|
||||
done
|
||||
zig \
|
||||
raylib \
|
||||
firefox
|
||||
|
||||
# Install Configs
|
||||
sudo cp -rf ~/Dotfiles/.config/* ~/.config/
|
||||
sudo cp ~/Dotfiles/.bashrc ~/.bashrc
|
||||
mkdir -p "$HOME/tmp"
|
||||
git clone https://git.bouvais.lu/adrien/Dotfiles "/tmp/dotfiles" --depth 1
|
||||
|
||||
cp -r "/tmp/dotfiles/.config/"* "$HOME/.config/"
|
||||
cp "/tmp/dotfiles/.bashrc" "$HOME/.bashrc"
|
||||
mkdir -p "$HOME/Pictures/Wallpapers"
|
||||
cp -r "/tmp/dotfiles/wallpapers/"* "$HOME/Pictures/Wallpapers/"
|
||||
|
||||
rm -rf /tmp/yay
|
||||
|
||||
git config --global user.email "adrien.bouvais.pro@gmail.com"
|
||||
git config --global user.name "adrien"
|
||||
ssh-keygen -t rsa -b 4096 -C "adrien.bouvais.pro@gmail.com" -f ~/.ssh/id_rsa -N ""
|
||||
git config --global user.email "git@bouvais.lu"
|
||||
ssh-keygen -t rsa -b 4096 -C "git@bouvais.com" -f "$HOME/.ssh/id_rsa" -N ""
|
||||
|
||||
# Wallpaper
|
||||
mkdir ~/wallpapers
|
||||
sudo cp -rf ~/Dotfiles/wallpapers/* ~/wallpapers/
|
||||
wal -i ~/wallpapers/pywallpaper.jpg
|
||||
pywalfox install
|
||||
|
||||
swww img ~/.config/pywallpaper.jpg --transition-type any --transition-fps 60 --transition-duration .5
|
||||
wal -i ~/.config/pywallpaper.jpg -n --cols16
|
||||
swaync-client --reload-css
|
||||
cat ~/.cache/wal/colors-kitty.conf > ~/.config/kitty/current-theme.conf
|
||||
wal -i "$HOME/Pictures/Wallpapers/pywallpaper.jpg" -n --cols16
|
||||
pywalfox update
|
||||
hyprctl reload
|
||||
|
||||
echo "Dont forget to add Pywalfox extension to Firefox https://addons.mozilla.org/en-US/firefox/addon/pywalfox/"
|
||||
echo "Then run 'pywalfox update'"
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 849 KiB |
|
After Width: | Height: | Size: 1.5 MiB |
|
After Width: | Height: | Size: 5.7 MiB |
|
After Width: | Height: | Size: 658 KiB |
|
After Width: | Height: | Size: 849 KiB |
|
After Width: | Height: | Size: 1.3 MiB |