diff --git a/bootstrap.sh b/bootstrap.sh index edcc023..8560549 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -23,6 +23,7 @@ waybarDir="$HOME/.config/waybar" rofiDir="$HOME/.config/rofi" dunstDir="$HOME/.config/dunst" fontsDir="$HOME/.config/fontconfig" +wlogoutDir="$HOME/.config/wlogout" picomFile="$HOME/.config/picom.conf" gitconfigFile="$HOME/.gitconfig" nvimPluggedDir="$HOME/dotfiles/nvim/plugged" @@ -43,6 +44,7 @@ ln -s $PWD/waybar $waybarDir ln -s $PWD/rofi $rofiDir ln -s $PWD/dunst $dunstDir ln -s $PWD/fontconfig $fontsDir +ln -s $PWD/wlogout $wlogoutDir ln -s $PWD/picom.conf $picomFile ln -s $PWD/.gitconfig $gitconfigFile diff --git a/sway/config b/sway/config index dcc6bcf..8a82116 100644 --- a/sway/config +++ b/sway/config @@ -118,6 +118,9 @@ bindsym $mod+Return exec $term # Kill focused window bindsym $mod+Shift+q kill +# Run wlogout to quit +bindsym $mod+Shift+e exec --no-startup-id wlogout -b 4 -m 450 -c 30 + # Start your launcher bindsym $mod+d exec $menu diff --git a/waybar/config b/waybar/config index 8fdd325..4f99acf 100644 --- a/waybar/config +++ b/waybar/config @@ -8,7 +8,8 @@ "sway/language", "network", "clock", - "tray" + "tray", + "custom/power-menu" ], "sway/workspaces": { @@ -61,5 +62,10 @@ "tray": { "icon-size": 16, "spacing": 10 + }, + "custom/power-menu": { + "format": "{icon}", + "format-icons": [""], + "on-click": "wlogout -b 4 -m 450 -c 30" } } diff --git a/waybar/style.css b/waybar/style.css index cbb9702..b946a5f 100644 --- a/waybar/style.css +++ b/waybar/style.css @@ -41,7 +41,8 @@ window#waybar { #network, #language, #pulseaudio, -#tray { +#tray, +#custom-power-menu { background: #202734; margin: 10px; padding: 10px; diff --git a/wlogout/layout b/wlogout/layout new file mode 100644 index 0000000..0c142a1 --- /dev/null +++ b/wlogout/layout @@ -0,0 +1,24 @@ +{ + "label" : "lock", + "action" : "swaylock", + "text" : "Lock", + "keybind" : "l" +} +{ + "label" : "logout", + "action" : "loginctl terminate-user $USER", + "text" : "Logout", + "keybind" : "e" +} +{ + "label" : "shutdown", + "action" : "systemctl poweroff", + "text" : "Shutdown", + "keybind" : "s" +} +{ + "label" : "reboot", + "action" : "systemctl reboot", + "text" : "Reboot", + "keybind" : "r" +} diff --git a/wlogout/style.css b/wlogout/style.css new file mode 100644 index 0000000..bc4c4bb --- /dev/null +++ b/wlogout/style.css @@ -0,0 +1,66 @@ +* { + background-image: none; +} +window { + background-color: #191e2a; +} +button { + color: #cbccc6; + border: none; + background-color: #202734; + background-repeat: no-repeat; + background-position: center; + background-size: 20%; + font-size: 15px; + box-shadow: 0 5px 4px 4px rgba(0, 0, 0, 0.1); + text-shadow: none; +} + +button:focus, +button:active, +button:hover { + background-color: #ffa759; + outline-style: none; +} + +#lock { + background-image: image( + url("/usr/share/wlogout/icons/lock.png"), + url("/usr/local/share/wlogout/icons/lock.png") + ); +} + +#logout { + background-image: image( + url("/usr/share/wlogout/icons/logout.png"), + url("/usr/local/share/wlogout/icons/logout.png") + ); +} + +#suspend { + background-image: image( + url("/usr/share/wlogout/icons/suspend.png"), + url("/usr/local/share/wlogout/icons/suspend.png") + ); +} + +#hibernate { + background-image: image( + url("/usr/share/wlogout/icons/hibernate.png"), + url("/usr/local/share/wlogout/icons/hibernate.png") + ); +} + +#shutdown { + background-image: image( + url("/usr/share/wlogout/icons/shutdown.png"), + url("/usr/local/share/wlogout/icons/shutdown.png") + ); +} + +#reboot { + background-image: image( + url("/usr/share/wlogout/icons/reboot.png"), + url("/usr/local/share/wlogout/icons/reboot.png") + ); +}