feat(hyprlock): update
This commit is contained in:
@@ -13,6 +13,7 @@ exec-once = swww-daemon
|
|||||||
exec-once = swaync
|
exec-once = swaync
|
||||||
exec-once = sh -c "/home/stereov/.local/share/JetBrains/Toolbox/bin/jetbrains-toolbox %u & sleep 6 && hyprctl dispatch closewindow class:jetbrains-toolbox"
|
exec-once = sh -c "/home/stereov/.local/share/JetBrains/Toolbox/bin/jetbrains-toolbox %u & sleep 6 && hyprctl dispatch closewindow class:jetbrains-toolbox"
|
||||||
exec-once = "/home/stereov/Developer/antistereov/randrwall/randrwall.py reload"
|
exec-once = "/home/stereov/Developer/antistereov/randrwall/randrwall.py reload"
|
||||||
|
exec-once = ~/.config/hypr/scripts/cover-listener.sh
|
||||||
|
|
||||||
exec-once = gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3-dark'
|
exec-once = gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3-dark'
|
||||||
exec-once = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
|
exec-once = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ label {
|
|||||||
# BATTERY
|
# BATTERY
|
||||||
label {
|
label {
|
||||||
monitor =
|
monitor =
|
||||||
text = cmd[update:1000] echo "$(~/.config/waybar/scripts/battery.sh)"
|
text = cmd[update:1000] echo "$(~/.config/hypr/scripts/battery.sh)"
|
||||||
font_family = lexend
|
font_family = lexend
|
||||||
font_size = 14
|
font_size = 14
|
||||||
position = -100, 100
|
position = -100, 100
|
||||||
@@ -59,9 +59,10 @@ label {
|
|||||||
valign = bottom
|
valign = bottom
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# WEATHER
|
||||||
label {
|
label {
|
||||||
monitor =
|
monitor =
|
||||||
text = cmd[update:600000] echo "$(~/.config/waybar/scripts/weather.sh | jq -r .text)"
|
text = cmd[update:600000] echo "$(~/.config/hypr/scripts/weather.sh | jq -r .text)"
|
||||||
font_family = lexend
|
font_family = lexend
|
||||||
font_size = 14
|
font_size = 14
|
||||||
position = -200, 100
|
position = -200, 100
|
||||||
@@ -69,6 +70,41 @@ label {
|
|||||||
valign = bottom
|
valign = bottom
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# NOW PLAYING
|
||||||
|
image {
|
||||||
|
monitor =
|
||||||
|
path = ~/.cache/nowplaying-cover.jpg
|
||||||
|
size = 250
|
||||||
|
rounding = 20
|
||||||
|
position = 0, -120
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
border_size = 0
|
||||||
|
reload_time = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = cmd[update:1000] playerctl metadata artist
|
||||||
|
color = rgba(242, 243, 244, 0.8)
|
||||||
|
font_size = 14
|
||||||
|
font_family = Lexend Bold
|
||||||
|
position = 0, -300
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = cmd[update:1000] playerctl metadata title
|
||||||
|
color = rgba(242, 243, 244, 0.8)
|
||||||
|
font_size = 14
|
||||||
|
font_family = Lexend
|
||||||
|
position = 0, -270
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
||||||
input-field {
|
input-field {
|
||||||
monitor =
|
monitor =
|
||||||
size = 300, 50
|
size = 300, 50
|
||||||
@@ -88,7 +124,7 @@ input-field {
|
|||||||
check_color = $check_color
|
check_color = $check_color
|
||||||
fail_text = <i>$FAIL ($ATTEMPTS)</i>
|
fail_text = <i>$FAIL ($ATTEMPTS)</i>
|
||||||
|
|
||||||
rounding = 60
|
rounding = 15
|
||||||
shadow_passes = 0
|
shadow_passes = 0
|
||||||
fade_on_empty = false
|
fade_on_empty = false
|
||||||
}
|
}
|
||||||
|
|||||||
5
hypr/scripts/cover-listener.sh
Executable file
5
hypr/scripts/cover-listener.sh
Executable file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
playerctl metadata --follow --format "{{mpris:artUrl}}" | while read -r _; do
|
||||||
|
~/.config/hypr/scripts/cover.sh
|
||||||
|
done
|
||||||
15
hypr/scripts/cover.sh
Executable file
15
hypr/scripts/cover.sh
Executable file
@@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
CACHE="$HOME/.cache/nowplaying-cover.jpg"
|
||||||
|
|
||||||
|
url=$(playerctl metadata mpris:artUrl 2>/dev/null)
|
||||||
|
|
||||||
|
# Kein Player aktiv
|
||||||
|
[ -z "$url" ] && exit 0
|
||||||
|
|
||||||
|
# file:// prefix entfernen (Spotify lokal)
|
||||||
|
if [[ "$url" == file://* ]]; then
|
||||||
|
cp "${url#file://}" "$CACHE"
|
||||||
|
else
|
||||||
|
curl -sL "$url" -o "$CACHE"
|
||||||
|
fi
|
||||||
11
hypr/scripts/nowplaying.sh
Executable file
11
hypr/scripts/nowplaying.sh
Executable file
@@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
status=$(playerctl status 2>/dev/null)
|
||||||
|
|
||||||
|
if [ "$status" = "Playing" ]; then
|
||||||
|
artist=$(playerctl metadata artist)
|
||||||
|
title=$(playerctl metadata title)
|
||||||
|
echo "$artist - $title"
|
||||||
|
else
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
@@ -8,7 +8,6 @@
|
|||||||
"passthrough": false,
|
"passthrough": false,
|
||||||
"fixed-center": true,
|
"fixed-center": true,
|
||||||
"modules-left": ["hyprland/workspaces", "hyprland/window"],
|
"modules-left": ["hyprland/workspaces", "hyprland/window"],
|
||||||
"modules-center": ["mpris"],
|
|
||||||
"modules-right": [
|
"modules-right": [
|
||||||
"cpu",
|
"cpu",
|
||||||
"memory",
|
"memory",
|
||||||
@@ -21,27 +20,12 @@
|
|||||||
"battery",
|
"battery",
|
||||||
"tray",
|
"tray",
|
||||||
"custom/notification",
|
"custom/notification",
|
||||||
"custom/power"
|
"custom/power",
|
||||||
],
|
],
|
||||||
"custom/spotify": {
|
|
||||||
"format": " {}",
|
|
||||||
"return-type": "json",
|
|
||||||
"on-click": "playerctl -p spotify play-pause",
|
|
||||||
"on-click-right": "spotifatius toggle-liked",
|
|
||||||
"on-click-middle": "playerctl -p spotify next",
|
|
||||||
"exec": "spotifatius monitor",
|
|
||||||
},
|
|
||||||
"mpris": {
|
"mpris": {
|
||||||
"player": "spotify",
|
"format": "{cover_art} {artist} - {title}",
|
||||||
"dynamic-order": ["artist", "title"],
|
"icon-size": 20,
|
||||||
"format": "{player_icon} {dynamic}",
|
"max-length": 40
|
||||||
"format-paused": "{status_icon} <i>{dynamic}</i>",
|
|
||||||
"status-icons": {
|
|
||||||
"paused": "",
|
|
||||||
},
|
|
||||||
"player-icons": {
|
|
||||||
"default": "",
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
"hyprland/workspaces": {
|
"hyprland/workspaces": {
|
||||||
"on-click": "activate",
|
"on-click": "activate",
|
||||||
@@ -138,6 +122,12 @@
|
|||||||
"on-click": "wlogout -p layer-shell &",
|
"on-click": "wlogout -p layer-shell &",
|
||||||
"format": "⏻",
|
"format": "⏻",
|
||||||
},
|
},
|
||||||
|
"custom/nowplaying": {
|
||||||
|
"exec": "~/.config/waybar/scripts/nowplaying.sh",
|
||||||
|
"interval": 2,
|
||||||
|
"return-type": "json",
|
||||||
|
"on-click": "playerctl play-pause"
|
||||||
|
},
|
||||||
"custom/notification": {
|
"custom/notification": {
|
||||||
"escape": true,
|
"escape": true,
|
||||||
"exec": "swaync-client -swb",
|
"exec": "swaync-client -swb",
|
||||||
@@ -157,7 +147,7 @@
|
|||||||
"custom/weather": {
|
"custom/weather": {
|
||||||
"format": "{}",
|
"format": "{}",
|
||||||
"interval": 600,
|
"interval": 600,
|
||||||
"exec": "~/.config/waybar/scripts/weather.sh", // or your dotfiles folder if you use stow
|
"exec": "~/.config/hypr/scripts/weather.sh", // or your dotfiles folder if you use stow
|
||||||
"return-type": "json",
|
"return-type": "json",
|
||||||
"on-click": "gnome-weather"
|
"on-click": "gnome-weather"
|
||||||
},
|
},
|
||||||
|
|||||||
24
waybar/scripts/nowplaying.sh
Executable file
24
waybar/scripts/nowplaying.sh
Executable file
@@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
CACHE="$HOME/.cache/waybar-cover.jpg"
|
||||||
|
TMP="$HOME/.cache/waybar-cover.tmp.jpg"
|
||||||
|
|
||||||
|
status=$(playerctl status 2>/dev/null)
|
||||||
|
|
||||||
|
if [ "$status" = "Playing" ]; then
|
||||||
|
artist=$(playerctl metadata artist)
|
||||||
|
title=$(playerctl metadata title)
|
||||||
|
url=$(playerctl metadata mpris:artUrl)
|
||||||
|
|
||||||
|
if [[ "$url" == file://* ]]; then
|
||||||
|
cp "${url#file://}" "$TMP"
|
||||||
|
else
|
||||||
|
curl -sL "$url" -o "$TMP"
|
||||||
|
fi
|
||||||
|
|
||||||
|
mv -f "$TMP" "$CACHE"
|
||||||
|
|
||||||
|
echo "{\"text\": \"$artist - $title\", \"tooltip\": \"$artist - $title\", \"class\": \"playing\", \"alt\": \"$CACHE\"}"
|
||||||
|
else
|
||||||
|
echo "{\"text\": \" \", \"class\": \"stopped\"}"
|
||||||
|
fi
|
||||||
@@ -74,6 +74,7 @@ window#waybar {
|
|||||||
|
|
||||||
#clock,
|
#clock,
|
||||||
#pulseaudio,
|
#pulseaudio,
|
||||||
|
#custom-nowplaying,
|
||||||
#custom-logo,
|
#custom-logo,
|
||||||
#custom-power,
|
#custom-power,
|
||||||
#custom-spotify,
|
#custom-spotify,
|
||||||
@@ -95,6 +96,14 @@ window#waybar {
|
|||||||
margin-right: 3px;
|
margin-right: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#custom-nowplaying {
|
||||||
|
padding-left: 40px;
|
||||||
|
background-size: 30px 30px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: left center;
|
||||||
|
background-image: url('/home/stereov/.cache/nowplaying-cover.jpg')
|
||||||
|
}
|
||||||
|
|
||||||
#mpris.playing {
|
#mpris.playing {
|
||||||
color: #a6e3a1;
|
color: #a6e3a1;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user