Added Wayland environment with Sway

This commit is contained in:
Fabio Scotto di Santolo
2025-11-28 21:18:38 +01:00
parent ed2c9d2b6a
commit 42deab7c3e
31 changed files with 1227 additions and 0 deletions

View File

@@ -36,6 +36,11 @@ This repository contains my configuration files for the following tools:
- `polybar` (status bar) - `polybar` (status bar)
- `rofi` (launcher) - `rofi` (launcher)
- `dunst` (notification daemon) - `dunst` (notification daemon)
- **Wayland Environment**
- `sway` (Window Manager)
- `waybar` (status bar)
- `rofi` (launcher)
- `dunst` (notification daemon)
- **Utilities** - **Utilities**
- `fastfetch` - `fastfetch`
- `zoxide` - `zoxide`

View File

@@ -0,0 +1,69 @@
# === General settings ===
[main]
shell=/bin/zsh -c "exec ~/.profile.d/tmux.sh" # Default shell to launch in the terminal
font=0xProto Nerd Font:size=14 # Font family and size used in the terminal
initial-window-size-chars=160x45 # Initial size in character columns x rows
selection-target=clipboard # Copy selected text directly to system clipboard
term=foot # Terminal type identifier (useful for compatibility)
pad=8x8 # Adds 8-pixel padding around the content (horizontal x vertical)
# === Mouse settings ===
[mouse]
hide-when-typing=yes # Automatically hide the mouse cursor while typing
alternate-scroll-mode=no # Preserves scrollback history when applications exit (does not use alternate screen buffer)
# === Scrollback bar indicator settings ===
[scrollback]
lines=10000 # Number of scrollback lines to keep in history
indicator-format=percentage # Format of scroll indicator (e.g., "50%")
# === Key bindings ===
[key-bindings]
scrollback-up-page=Shift+Page_Up # Scroll up one page
scrollback-down-page=Shift+Page_Down # Scroll down one page
clipboard-copy=Control+Shift+c # Copy selected text to clipboard
clipboard-paste=Control+Shift+v # Paste from clipboard
show-urls-launch=Control+Shift+o # Detects and allows launching URLs found in the terminal output
# === Cursor appearance ===
[cursor]
style=beam # Beam-style (vertical bar) cursor
blink=true # Cursor should blink
beam-thickness=3 # Thickness of the beam cursor
# === Catppuccin Mocha color scheme ===
[colors]
alpha=0.9
cursor=11111b f5e0dc # Cursor color (background and foreground)
foreground=cdd6f4 # Default text color
background=1e1e2e # Main terminal background color
regular0=45475a # ANSI Black/Grey
regular1=f38ba8 # ANSI Red
regular2=a6e3a1 # ANSI Green
regular3=f9e2af # ANSI Yellow
regular4=89b4fa # ANSI Blue
regular5=f5c2e7 # ANSI Magenta
regular6=94e2d5 # ANSI Cyan
regular7=bac2de # ANSI White/Light Grey
bright0=585b70 # Bright ANSI Black/Grey
bright1=f38ba8 # Bright ANSI Red
bright2=a6e3a1 # Bright ANSI Green
bright3=f9e2af # Bright ANSI Yellow
bright4=89b4fa # Bright ANSI Blue
bright5=f5c2e7 # Bright ANSI Magenta
bright6=94e2d5 # Bright ANSI Cyan
bright7=a6adc8 # Bright ANSI White/Light Grey
16=fab387 # Extended color 16 (Orange-like)
17=f5e0dc # Extended color 17 (Pink/Cream-like)
selection-foreground=cdd6f4 # Color of selected text
selection-background=414356 # Background color of selected text
search-box-no-match=11111b f38ba8 # Colors for search box when no match is found
search-box-match=cdd6f0 313244 # Colors for search box when a match is found
jump-labels=11111b fab387 # Colors for jump labels (e.g., in URL launcher)
urls=89b4fa # Color for detected URLs

View File

@@ -0,0 +1,66 @@
#-----------------------#
# Windows configuration #
# ----------------------#
bindsym $mod+shift+g exec swaymsg gaps outer all set 0 && swaymsg gaps inner all set 5
bindsym $mod+g exec swaymsg gaps outer all set 0 && swaymsg gaps inner all set 0
# No gaps when there is a single window
#smart_gaps on
# Activate smart borders (always)
#smart_borders on
default_border pixel 3
default_floating_border pixel 3
gaps inner 5
gaps outer 5
#------------------------------#
# Always float certain windows #
#------------------------------#
for_window [app_id="pop-up"] floating enable
for_window [app_id="bubble"] floating enable
for_window [app_id="task_dialog"] floating enable
for_window [app_id="Preferences"] floating enable
for_window [app_id="dialog"] floating enable
for_window [app_id="menu"] floating enable
for_window [app_id="Organizer"] floating enable
for_window [app_id="About"] floating enable
for_window [app_id="toolbox"] floating enable
for_window [app_id="page-info"] floating enable
for_window [app_id="webconsole"] floating enable
for_window [app_id="Authy"] floating enable
for_window [app_id="termfloat"] floating enable
for_window [app_id="termfloat"] resize set height 540
for_window [app_id="termfloat"] resize set width 960
for_window [app_id="mpv"] floating enable
for_window [app_id="mpv"] resize set height 540
for_window [app_id="mpv"] resize set width 960
#-------------------------------------------------------#
# Sticky floating windows(sticky enable|disable|toggle) #
#-------------------------------------------------------#
for_window [app_id="nwg-clipman"] floating enable
for_window [app_id="nwg-clipman"] sticky enable
for_window [app_id="nwg-clipman"] resize set height 540
for_window [app_id="nwg-clipman"] resize set width 960
#-----------------#
# Program Opacity #
#-----------------#
for_window [app_id="telegram"] opacity 1.00
#------------------------------------------#
# Placing software in a specific workspace #
#------------------------------------------#
assign [app_id="emacs"]: workspace number 1
for_window [app_id="emacs"]: focus
assign [app_id="firefox"]: workspace number 2
for_window [app_id="firefox"] focus
assign [app_id="telegram"]: workspace number 3
for_window [app_id="telegram"] focus
#---------------------#
# Focus follows mouse #
#---------------------#
focus_follows_mouse no

341
sway/.config/sway/config Normal file
View File

@@ -0,0 +1,341 @@
### Variables
#
# Logo key. Use Mod1 for Alt.
set $mod Mod4
# Home row direction keys, like vim
set $left h
set $down j
set $up k
set $right l
# Your preferred terminal emulator
set $term 'foot'
# Your preferred application launcher
set $menu 'fuzzel'
# Your preferred browser
set $browser 'firefox'
# Your preferred notification daemon
set $notification 'dunst'
# Your preferred clipboard manager
set $clipboard 'cliphist list | fuzzel --dmenu | cliphist decode | wl-copy'
# Your preferred file manager
set $filemanager 'foot yazi'
# Your prefered editor
set $editor 'emacs'
# Import Catppuccin theme defined colors
include themes/catppuccin-mocha
# target title bg text indicator border
client.focused $lavender $base $text $rosewater $lavender
client.focused_inactive $overlay0 $base $text $rosewater $overlay0
client.unfocused $overlay0 $base $text $rosewater $overlay0
client.urgent $peach $base $peach $overlay0 $peach
client.placeholder $overlay0 $base $text $overlay0 $overlay0
client.background $base
# Setting cursor
seat seat0 xcursor_theme catppuccin-mocha-lavender-cursors 25
### Output configuration
#
# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
# output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
output * bg ~/.config/sway/wallpaper.jpg fill
# Setting default font
font pango:Noto Sans Regular 10
#
# Example configuration:
#
# output HDMI-A-1 resolution 1920x1080 position 1920,0
#
# You can get the names of your outputs by running: swaymsg -t get_outputs
### Idle configuration
set $lockman exec bash ~/.config/sway/scripts/lockman.sh
exec swayidle -w \
timeout 300 'swaylock -f --font "Noto Sans Regular" --font-size 16' \
timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
before-sleep 'swaylock -f --font "Noto Sans Regular" --font-size 16'
# This will lock your screen after 300 seconds of inactivity, then turn off
# your displays after another 300 seconds, and turn your screens back on when
# resumed. It will also lock your screen before your computer goes to sleep.
### Run in background notification daemon
exec $notification
### Run in background Pipewire session
exec pipewire
### Run clipboard manager
exec wl-paste -t text --watch cliphist store
exec wl-paste -t image --watch cliphist store
### OSD server
exec swayosd-server
###
exec $editor
### Screenshot tool
exec flameshot
# Simulate master layout
exec autotiling --limit 2
exec dbus-update-activation-environment DISPLAY XAUTHORITY WAYLAND_DISPLAY
#----------------#
# set gtk+ theme #
#----------------#
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'Catppuccin'
gsettings set $gnome-schema icon-theme 'Papirus-Dark'
gsettings set $gnome-schema cursor-theme 'Catppuccin-cursor'
gsettings set $gnome-schema font-name 'Noto Sans Regular 10'
}
### Input configuration
#
# Example configuration:
#
# input type:touchpad {
# dwt enabled
# tap enabled
# natural_scroll enabled
# middle_emulation enabled
# }
#
# input type:keyboard {
# xkb_layout "eu"
# }
#
# You can also configure each device individually.
# Read `man 5 sway-input` for more information about this section.
input type:touchpad {
dwt enabled
tap enabled
natural_scroll enabled
middle_emulation enabled
}
input type:keyboard {
xkb_layout "us(intl)"
xkb_options "grp:win_space_toggle"
}
### Key bindings
#
# Basics:
#
# Start a terminal
bindsym $mod+Return exec $term
# Kill focused window
bindsym $mod+Shift+q kill
# Start your launcher
bindsym $mod+d exec $menu
# Start my browser
bindsym $mod+Shift+b exec $browser
# Start my clipboard manager
bindsym $mod+Shift+v exec $clipboard
# Start my file manager
bindsym $mod+Shift+f exec $filemanager
# Drag floating windows by holding down $mod and left mouse button.
# Resize them with right mouse button + $mod.
# Despite the name, also works for non-floating windows.
# Change normal to inverse to use left mouse button for resizing and right
# mouse button for dragging.
floating_modifier $mod normal
# Reload the configuration file
bindsym $mod+Shift+c reload
# Exit sway (logs you out of your Wayland session)
#bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
bindsym $mod+Shift+e exec wlogout
# Waybar toggle
bindsym $mod+o exec killall -SIGUSR1 waybar
#
# Moving around:
#
# Move your focus around
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# Or use $mod+[up|down|left|right]
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Move the focused window with the same, but add Shift
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# Ditto, with arrow keys
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
#
# Workspaces:
#
# Switch to workspace
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10
# Move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10
bindsym $mod+period workspace next
bindsym $mod+comma workspace prev
#
# Layout stuff:
#
# You can "split" the current object of your focus with
# $mod+b or $mod+v, for horizontal and vertical splits
# respectively.
bindsym $mod+b splith
bindsym $mod+v splitv
# Switch the current container between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# Make the current focus fullscreen
bindsym $mod+f fullscreen
# Toggle the current focus between tiling and floating mode
bindsym $mod+Shift+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+space focus mode_toggle
# Move focus to the parent container
bindsym $mod+a focus parent
#
# Scratchpad:
#
# Sway has a "scratchpad", which is a bag of holding for windows.
# You can send windows there and get them back later.
# Move the currently focused window to the scratchpad
bindsym $mod+Shift+minus move scratchpad
# Show the next scratchpad window or hide the focused scratchpad window.
# If there are multiple scratchpad windows, this command cycles through them.
bindsym $mod+minus scratchpad show
#
# Resizing containers:
#
mode "resize" {
# left will shrink the containers width
# right will grow the containers width
# up will shrink the containers height
# down will grow the containers height
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
# Ditto, with arrow keys
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
# Return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
#
# Utilities:
#
# Special keys to adjust volume via PulseAudio
# bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
# bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5%
# bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5%
# bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle
# Special keys to adjust brightness via brightnessctl
# bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
# bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+
# Client commands for SwayOSD
# For enable this service start systemd service swayosd-libinput-backend.service
# Sink volume toggle mute
bindsym XF86AudioMute exec swayosd-client --output-volume mute-toggle
# Source volume toggle mute
bindsym XF86AudioMicMute exec swayosd-client --input-volume mute-toggle
# Volume raise with custom value
bindsym XF86AudioRaiseVolume exec swayosd-client --output-volume 5
# Volume lower with custom value
bindsym XF86AudioLowerVolume exec swayosd-client --output-volume -5
# Capslock (If you don't want to use the backend)
bindsym --release Caps_Lock exec swayosd-client --caps-lock
# Brightness raise with custom value('+' sign needed)
bindsym XF86MonBrightnessUp exec swayosd-client --brightness +5
# Brightness lower with custom value('-' sign needed)
bindsym XF86MonBrightnessDown exec swayosd-client --brightness -5
# Special key to take a screenshot with grim
# bindsym Print exec ~/.config/sway/scripts/screenshot.sh
bindsym Print exec flameshot gui
# Lock the screen
bindsym $mod+Alt+l exec $lockman
#
# Status Bar:
#
# Read `man 5 sway-bar` for more information about this section.
bar {
swaybar_command waybar
}
include $HOME/.config/sway/conf.d/*.conf

View File

View File

@@ -0,0 +1,10 @@
#!/usr/bin/env bash
# Times the screen off and puts it to background
swayidle \
timeout 10 'swaymsg "output * dpms off"' \
resume 'swaymsg "output * dpms on"' &
# Locks the screen immediately
swaylock -f --font "Noto Sans Regular" --font-size 16
# Kills last background task so idle timer doesn't keep running
kill %%

View File

@@ -0,0 +1,43 @@
#!/bin/sh
CONFIG_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/wlr-layouts"
LAYOUT_TOOL="wlr-randr"
mkdir -p "$CONFIG_DIR"
# Verifica che fzf sia installato
if ! command -v fzf > /dev/null 2>&1; then
echo "Errore: fzf non è installato." >&2
exit 1
fi
# Verifica che fyi sia installato
if ! command -v fyi > /dev/null 2>&1; then
echo "Errore: fyi non è installato." >&2
exit 1
fi
# Funzione: applica layout selezionato
apply_layout() {
local layout_file="$1"
if [ -f "$layout_file" ]; then
while IFS= read -r line; do
[ -n "$line" ] && eval "$line"
done < "$layout_file"
fyi "Applied layout: $(basename "$layout_file")"
else
echo "File layout non trovato: $layout_file" >&2
exit 2
fi
}
# Seleziona layout via fzf con preview
SELECTED_FILE=$(find "$CONFIG_DIR" -type f -name '*.layout' \
| fzf --prompt="Select layout > " \
--preview="cat {}" \
--preview-window=down:50%:wrap)
# Applica se selezionato
if [ -n "$SELECTED_FILE" ]; then
apply_layout "$SELECTED_FILE"
fi

View File

@@ -0,0 +1,8 @@
#!/usr/bin/env bash
file="$HOME/Pictures/Screenshots/$(date +%Y-%m-%dT%H:%M:%S).png"
thumb="/tmp/screenshot-thumb.png"
grim "$file" \
&& wl-copy < "$file" \
&& magick "$file" -resize 640x480 "$thumb" \
&& fyi -i "$thumb" "📸 Catch screenshot"

View File

@@ -0,0 +1,26 @@
set $rosewater #f2d5cf
set $flamingo #eebebe
set $pink #f4b8e4
set $mauve #ca9ee6
set $red #e78284
set $maroon #ea999c
set $peach #ef9f76
set $yellow #e5c890
set $green #a6d189
set $teal #81c8be
set $sky #99d1db
set $sapphire #85c1dc
set $blue #8caaee
set $lavender #babbf1
set $text #c6d0f5
set $subtext1 #b5bfe2
set $subtext0 #a5adce
set $overlay2 #949cbb
set $overlay1 #838ba7
set $overlay0 #737994
set $surface2 #626880
set $surface1 #51576d
set $surface0 #414559
set $base #303446
set $mantle #292c3c
set $crust #232634

View File

@@ -0,0 +1,26 @@
set $rosewater #dc8a78
set $flamingo #dd7878
set $pink #ea76cb
set $mauve #8839ef
set $red #d20f39
set $maroon #e64553
set $peach #fe640b
set $yellow #df8e1d
set $green #40a02b
set $teal #179299
set $sky #04a5e5
set $sapphire #209fb5
set $blue #1e66f5
set $lavender #7287fd
set $text #4c4f69
set $subtext1 #5c5f77
set $subtext0 #6c6f85
set $overlay2 #7c7f93
set $overlay1 #8c8fa1
set $overlay0 #9ca0b0
set $surface2 #acb0be
set $surface1 #bcc0cc
set $surface0 #ccd0da
set $base #eff1f5
set $mantle #e6e9ef
set $crust #dce0e8

View File

@@ -0,0 +1,26 @@
set $rosewater #f4dbd6
set $flamingo #f0c6c6
set $pink #f5bde6
set $mauve #c6a0f6
set $red #ed8796
set $maroon #ee99a0
set $peach #f5a97f
set $yellow #eed49f
set $green #a6da95
set $teal #8bd5ca
set $sky #91d7e3
set $sapphire #7dc4e4
set $blue #8aadf4
set $lavender #b7bdf8
set $text #cad3f5
set $subtext1 #b8c0e0
set $subtext0 #a5adcb
set $overlay2 #939ab7
set $overlay1 #8087a2
set $overlay0 #6e738d
set $surface2 #5b6078
set $surface1 #494d64
set $surface0 #363a4f
set $base #24273a
set $mantle #1e2030
set $crust #181926

View File

@@ -0,0 +1,26 @@
set $rosewater #f5e0dc
set $flamingo #f2cdcd
set $pink #f5c2e7
set $mauve #cba6f7
set $red #f38ba8
set $maroon #eba0ac
set $peach #fab387
set $yellow #f9e2af
set $green #a6e3a1
set $teal #94e2d5
set $sky #89dceb
set $sapphire #74c7ec
set $blue #89b4fa
set $lavender #b4befe
set $text #cdd6f4
set $subtext1 #bac2de
set $subtext0 #a6adc8
set $overlay2 #9399b2
set $overlay1 #7f849c
set $overlay0 #6c7086
set $surface2 #585b70
set $surface1 #45475a
set $surface0 #313244
set $base #1e1e2e
set $mantle #181825
set $crust #11111b

Binary file not shown.

After

Width:  |  Height:  |  Size: 249 KiB

View File

View File

@@ -0,0 +1,30 @@
image=~/.config/swaylock/current_bg
color=1e1e2e
bs-hl-color=f5e0dc
caps-lock-bs-hl-color=f5e0dc
caps-lock-key-hl-color=a6e3a1
inside-color=00000000
inside-clear-color=00000000
inside-caps-lock-color=00000000
inside-ver-color=00000000
inside-wrong-color=00000000
key-hl-color=a6e3a1
layout-bg-color=00000000
layout-border-color=00000000
layout-text-color=cdd6f4
line-color=00000000
line-clear-color=00000000
line-caps-lock-color=00000000
line-ver-color=00000000
line-wrong-color=00000000
ring-color=b4befe
ring-clear-color=f5e0dc
ring-caps-lock-color=fab387
ring-ver-color=89b4fa
ring-wrong-color=eba0ac
separator-color=00000000
text-color=cdd6f4
text-clear-color=f5e0dc
text-caps-lock-color=fab387
text-ver-color=89b4fa
text-wrong-color=eba0ac

Binary file not shown.

After

Width:  |  Height:  |  Size: 276 KiB

View File

@@ -0,0 +1,43 @@
* {
font-family: "Noto Sans Regular";
font-size: 12pt;
}
window#osd {
border-radius: 999px;
border: none;
background: #{"alpha(@theme_bg_color, 0.8)"};
#container {
margin: 16px;
}
image,
label {
color: #{"@theme_fg_color"};
}
progressbar:disabled,
image:disabled {
opacity: 0.5;
}
progressbar {
min-height: 6px;
border-radius: 999px;
background: transparent;
border: none;
}
trough {
min-height: inherit;
border-radius: inherit;
border: none;
background: #{"alpha(@theme_fg_color, 0.5)"};
}
progress {
min-height: inherit;
border-radius: inherit;
border: none;
background: #{"@theme_fg_color"};
}
}

View File

@@ -0,0 +1,164 @@
{
"layer": "top", // Waybar at top layer
"position": "top", // Waybar position (top|bottom|left|right)
"modules-left": [
"sway/workspaces"
],
"modules-center": [
"custom/music"
],
"modules-right": [
"temperature",
"memory",
"cpu",
"pulseaudio",
"backlight",
"network",
"bluetooth",
"battery",
"clock",
"custom/powermenu",
"tray"
],
"custom/launcher": {
"format": " " ,
"on-click": "fuzzel &",
"tooltip": false
},
"sway/workspaces": {
"disable-scroll": true,
"disable-markup": false,
"all-outputs": true,
"sort-by-number": true,
"format": "{index}",
"on-click": "activate",
"format-icons": {
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"urgent": "",
"active": "",
"default": ""
},
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
},
"tooltip": false
},
"backlight": {
"device": "intel_backlight",
"on-scroll-up": "light -A 5",
"on-scroll-down": "light -U 5",
"format": "{percent}% {icon}",
"format-icons": [ "", "", "", "", "", "", "", "", "" ]
},
"pulseaudio": {
"scroll-step": 1,
"format": "{volume}% {icon}",
"format-muted": " {format_source}",
"format-icons": {
"headphone": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", " "]
},
"on-click": "pavucontrol &",
//"on-click": "pactl set-sink-mute @DEFAULT_SINK@ toggle",
},
"battery": {
"interval": 10,
"states": {
"warning": 20,
"critical": 10
},
"format": "{capacity}% {icon}",
"format-charging": "{capacity}% 󰂄",
"format-plugged": "{capacity}% ",
"format-alt": "{time} {icon}",
"format-icons": [ "󰁺", "󰁻", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂" ]
},
"clock": {
"interval": 1,
"timezone": "Europe/Rome",
"format": "{:%I:%M %p}",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format-alt": "{:%A %d/%m/%Y}",
},
"memory": {
"interval": 1,
"format": "{percentage}% ",
"states": {
"warning": 85,
},
},
"cpu": {
"interval": 1,
"format": "{usage}% ",
"tooltip": false
},
"mpd": {
"max-length": 25,
"format": "<span foreground='#bb9af7'></span> {title}",
"format-paused": " {title}",
"format-stopped":"<span foreground='#bb9af7'></span>",
"format-disconnected": "",
"on-click": "mpc --quiet toggle",
"on-click-right": "mpc ls | mpc add",
"on-click-middle": "kitty ncmpcpp",
"on-scroll-up": "mpc --quiet prev",
"on-scroll-down": "mpc --quiet next",
"smooth-scrolling-threshold":5,
"tooltip-format": "{title} - {artist} ({elapsedTime:%M:%S}/{totalTime:%H:%M:%S})"
},
"network": {
"interval": 1,
"tooltip": true,
"format-wifi": "{icon}",
"format-ethernet": "{icon}",
"format-linked": "󰈁",
"format-icons": ["󰤟", "󰤢", "󰤥", "󰤨"],
"format-disconnected": "󰈂",
"tooltip-format": "{ifname}",
"tooltip-format-wifi": "{essid} ({signalStrength}%)  ",
"tooltip-format-ethernet": "{ifname}  ",
"tooltip-format-disconnected": "Disconnected",
"on-click": "nm-connection-editor &",
},
"temperature": {
"hwmon-path": "/sys/class/hwmon/hwmon6/temp2_input",
"tooltip": false,
"format": "{temperatureC}°C "
},
"custom/powermenu": {
"format": "",
"on-click": "wlogout &",
"tooltip": false
},
"tray": {
"icon-size": 15,
"spacing": 5
},
"bluetooth": {
"format": "",
"format-connected": "{device_alias} ",
"format-connected-battery": "{device_alias} {device_battery_percentage}% ",
"format-off": "󰂲", // "format-device-preference": [ "device1", "device2" ], // preference list deciding the displayed device
"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}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%",
"on-click": "blueman-manager &"
},
"custom/music": {
"format": "{}",
"return-type": "json",
"exec": "waybar-module-music",
}
}

View File

@@ -0,0 +1,145 @@
@import "themes/mocha.css";
* {
font-family: "ComicShannsMono Nerd Font";
font-size: 12pt;
font-weight: bold;
border-radius: 0px;
transition-property: background-color;
transition-duration: 0.5s;
}
@keyframes blink_red {
to {
background-color: @flamingo;
color: @mantle;
}
}
.warning, .critical, .urgent {
animation-name: blink_red;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
window#waybar {
background-color: transparent;
}
window > box {
/* margin-left: 5px; */
/* margin-right: 5px; */
/* margin-top: 5px; */
background-color: @base;
}
#workspaces {
padding-left: 0px;
padding-right: 4px;
}
#workspaces button {
color: @teal;
padding-top: 5px;
padding-bottom: 5px;
padding-left: 6px;
padding-right: 6px;
}
#workspaces button.focused {
background-color: @teal;
color: @mantle;
}
#workspaces button.urgent {
color: @mantle;
}
#workspaces button:hover {
background-color: @peach;
color: @mantle;
}
tooltip {
background: @surface0;
}
tooltip label {
color: @text;
}
#custom-launcher {
padding-left: 8px;
padding-right: 6px;
color: @mauve;
}
#mode, #clock, #memory, #temperature, #cpu, #mpd, #idle_inhibitor, #temperature, #backlight, #pulseaudio, #network, #battery, #custom-powermenu, #bluetooth, #custom-music {
padding-left: 10px;
padding-right: 10px;
}
#memory {
color: @teal;
}
#cpu {
color: @pink;
}
#clock {
color: @text;
}
#idle_inhibitor {
color: @mauve;
}
#temperature {
color: @sapphire;
}
#backlight {
color: @peach;
}
#pulseaudio {
color: @rosewater;
}
#network {
color: @green;
}
#network.disconnected {
color: @text;
}
#battery {
color: @sky;
}
#battery.charging {
color: @green;
}
#battery.full, #battery.discharging {
color: @yellow;
}
#battery.critical:not(.charging) {
color: @red;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#custom-powermenu {
color: @red;
}
#tray {
padding-right: 8px;
padding-left: 10px;
}
#mpd.paused {
color: @blue;
font-style: italic;
}
#mpd.stopped {
background: transparent;
}
#mpd {
color: @sky;
}
#bluetooth {
color: @blue;
}
#custom-launcher {
color: @text;
}
#custom-music.playing {
color: @green;
}
#custom-music.paused {
color: @maroon;
}
#custom-music.stopped {
color: @peach;
}

View File

@@ -0,0 +1,26 @@
@define-color rosewater #f2d5cf;
@define-color flamingo #eebebe;
@define-color pink #f4b8e4;
@define-color mauve #ca9ee6;
@define-color red #e78284;
@define-color maroon #ea999c;
@define-color peach #ef9f76;
@define-color yellow #e5c890;
@define-color green #a6d189;
@define-color teal #81c8be;
@define-color sky #99d1db;
@define-color sapphire #85c1dc;
@define-color blue #8caaee;
@define-color lavender #babbf1;
@define-color text #c6d0f5;
@define-color subtext1 #b5bfe2;
@define-color subtext0 #a5adce;
@define-color overlay2 #949cbb;
@define-color overlay1 #838ba7;
@define-color overlay0 #737994;
@define-color surface2 #626880;
@define-color surface1 #51576d;
@define-color surface0 #414559;
@define-color base #303446;
@define-color mantle #292c3c;
@define-color crust #232634;

View File

@@ -0,0 +1,26 @@
@define-color rosewater #dc8a78;
@define-color flamingo #dd7878;
@define-color pink #ea76cb;
@define-color mauve #8839ef;
@define-color red #d20f39;
@define-color maroon #e64553;
@define-color peach #fe640b;
@define-color yellow #df8e1d;
@define-color green #40a02b;
@define-color teal #179299;
@define-color sky #04a5e5;
@define-color sapphire #209fb5;
@define-color blue #1e66f5;
@define-color lavender #7287fd;
@define-color text #4c4f69;
@define-color subtext1 #5c5f77;
@define-color subtext0 #6c6f85;
@define-color overlay2 #7c7f93;
@define-color overlay1 #8c8fa1;
@define-color overlay0 #9ca0b0;
@define-color surface2 #acb0be;
@define-color surface1 #bcc0cc;
@define-color surface0 #ccd0da;
@define-color base #eff1f5;
@define-color mantle #e6e9ef;
@define-color crust #dce0e8;

View File

@@ -0,0 +1,26 @@
@define-color rosewater #f4dbd6;
@define-color flamingo #f0c6c6;
@define-color pink #f5bde6;
@define-color mauve #c6a0f6;
@define-color red #ed8796;
@define-color maroon #ee99a0;
@define-color peach #f5a97f;
@define-color yellow #eed49f;
@define-color green #a6da95;
@define-color teal #8bd5ca;
@define-color sky #91d7e3;
@define-color sapphire #7dc4e4;
@define-color blue #8aadf4;
@define-color lavender #b7bdf8;
@define-color text #cad3f5;
@define-color subtext1 #b8c0e0;
@define-color subtext0 #a5adcb;
@define-color overlay2 #939ab7;
@define-color overlay1 #8087a2;
@define-color overlay0 #6e738d;
@define-color surface2 #5b6078;
@define-color surface1 #494d64;
@define-color surface0 #363a4f;
@define-color base #24273a;
@define-color mantle #1e2030;
@define-color crust #181926;

View File

@@ -0,0 +1,26 @@
@define-color rosewater #f5e0dc;
@define-color flamingo #f2cdcd;
@define-color pink #f5c2e7;
@define-color mauve #cba6f7;
@define-color red #f38ba8;
@define-color maroon #eba0ac;
@define-color peach #fab387;
@define-color yellow #f9e2af;
@define-color green #a6e3a1;
@define-color teal #94e2d5;
@define-color sky #89dceb;
@define-color sapphire #74c7ec;
@define-color blue #89b4fa;
@define-color lavender #b4befe;
@define-color text #cdd6f4;
@define-color subtext1 #bac2de;
@define-color subtext0 #a6adc8;
@define-color overlay2 #9399b2;
@define-color overlay1 #7f849c;
@define-color overlay0 #6c7086;
@define-color surface2 #585b70;
@define-color surface1 #45475a;
@define-color surface0 #313244;
@define-color base #1e1e2e;
@define-color mantle #181825;
@define-color crust #11111b;

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg fill="#f9e2af" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve">
<metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>
<g><g><path d="M500,10C229.4,10,10,229.4,10,500s219.4,490,490,490s490-219.4,490-490S770.6,10,500,10z M500,885.1c-212.7,0-385.1-172.4-385.1-385.1S287.3,114.9,500,114.9S885.1,287.3,885.1,500S712.7,885.1,500,885.1z M576.5,308.7v382.4c0,42.2-34.2,76.5-76.5,76.5c-42.3,0-76.5-34.2-76.5-76.5V308.7c0-42.2,34.2-76.5,76.5-76.5C542.2,232.3,576.5,266.5,576.5,308.7z"/></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g></g>
</svg>

After

Width:  |  Height:  |  Size: 969 B

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg fill="#89b4fa" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve">
<metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>
<g><g><path d="M321.8,455.5h356.4V321.8c0-49.2-17.4-91.2-52.2-126c-34.8-34.8-76.8-52.2-126-52.2c-49.2,0-91.2,17.4-126,52.2c-34.8,34.8-52.2,76.8-52.2,126L321.8,455.5L321.8,455.5z M900.9,522.3v400.9c0,18.6-6.5,34.3-19.5,47.3c-13,13-28.8,19.5-47.3,19.5H165.9c-18.6,0-34.3-6.5-47.3-19.5s-19.5-28.8-19.5-47.3V522.3c0-18.6,6.5-34.3,19.5-47.3c13-13,28.8-19.5,47.3-19.5h22.3V321.8c0-85.4,30.6-158.7,91.9-219.9C341.3,40.6,414.6,10,500,10c85.4,0,158.7,30.6,219.9,91.9c61.3,61.3,91.9,134.6,91.9,219.9v133.6h22.3c18.6,0,34.3,6.5,47.3,19.5C894.4,487.9,900.9,503.7,900.9,522.3L900.9,522.3z"/></g></g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg fill="#f5c2e7" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve">
<metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>
<g><path d="M622.5,990H50.8C26.3,990,10,973.7,10,949.2V50.8C10,26.3,26.3,10,50.8,10h571.7c24.5,0,40.8,16.3,40.8,40.8v285.8c0,24.5-16.3,40.8-40.8,40.8s-40.8-16.3-40.8-40.8v-245h-490v816.7h490v-245c0-24.5,16.3-40.8,40.8-40.8s40.8,16.3,40.8,40.8v285.8C663.3,973.7,647,990,622.5,990z"/><path d="M949.2,540.8H336.7c-24.5,0-40.8-16.3-40.8-40.8c0-24.5,16.3-40.8,40.8-40.8h612.5c24.5,0,40.8,16.3,40.8,40.8C990,524.5,973.7,540.8,949.2,540.8z"/><path d="M949.2,540.8c-12.3,0-20.4-4.1-28.6-12.3L757.3,365.3c-16.3-16.3-16.3-40.8,0-57.2c16.3-16.3,40.8-16.3,57.2,0l163.3,163.3c16.3,16.3,16.3,40.8,0,57.2C969.6,536.8,961.4,540.8,949.2,540.8z"/><path d="M785.8,704.2c-12.3,0-20.4-4.1-28.6-12.3c-16.3-16.3-16.3-40.8,0-57.2l163.3-163.3c16.3-16.3,40.8-16.3,57.2,0c16.3,16.3,16.3,40.8,0,57.2L814.4,691.9C806.3,700.1,798.1,704.2,785.8,704.2z"/></g>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg fill="#a6e3a1" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve">
<metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>
<g><path d="M134.6,285.6C64.9,420.7,60.1,590,137.1,723.4L42,668.5l-32,55.4c93.1,52.1,133.6,75.9,184,106.2c28.5-51.5,52.8-94.4,107.4-186.1L246,612l-53.4,92.5C65.4,502.7,167.2,200.3,398.8,126.2C638,29.3,929,223.5,931.5,481.5c19.6,236.7-208.9,443.6-439.3,416.2l-29.5,51c277.7,54.4,556.5-201.7,524.7-483.1C976.1,170.8,637.1-41.2,367.1,77.5C262.8,114.2,183.1,191.5,134.6,285.6z"/></g>
</svg>

After

Width:  |  Height:  |  Size: 877 B

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg fill="#f38ba8" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve">
<metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>
<g><path d="M764,152.1c30.9,22,58.3,46.8,82.4,74.6c24,27.8,44.6,57.8,61.8,90.1c17.2,32.3,30.2,66.4,39.1,102.4c8.9,36,13.4,72.6,13.4,109.6c0,63.8-12.2,123.7-36.5,179.6c-24.4,55.9-57.3,104.7-98.8,146.2c-41.5,41.5-90.2,74.5-146.2,98.8C623.2,977.8,563.3,990,499.5,990c-63.1,0-122.7-12.2-178.6-36.5c-55.9-24.4-104.8-57.3-146.7-98.8c-41.9-41.5-74.8-90.2-98.8-146.2c-24-55.9-36-115.8-36-179.6c0-36.4,4.3-72.1,12.9-107.1c8.6-35,20.8-68.3,36.5-99.9c15.8-31.6,35.3-61.1,58.7-88.5c23.3-27.5,49.4-52.2,78.2-74.1c15.1-11,31.4-15.1,48.9-12.4c17.5,2.7,31.7,11.3,42.7,25.7c11,14.4,15.1,30.5,12.4,48.4c-2.7,17.8-11.3,32.3-25.7,43.2c-43.2,31.6-76.4,70.3-99.3,116.3c-23,46-34.5,95.4-34.5,148.2c0,45.3,8.6,88,25.7,128.2c17.2,40.1,40.7,75.1,70.5,105c29.9,29.9,64.9,53.5,105,71c40.1,17.5,82.9,26.3,128.2,26.3c45.3,0,88-8.7,128.2-26.3c40.1-17.5,75.1-41.2,105-71s53.5-64.9,71-105c17.5-40.1,26.3-82.9,26.3-128.2c0-53.5-12.4-104.1-37.1-151.8c-24.7-47.7-59.4-87-104-117.9c-15.1-10.3-24.2-24.4-27.3-42.2c-3.1-17.8,0.5-34.3,10.8-49.4c10.3-14.4,24.4-23.2,42.2-26.2C732.5,138.2,748.9,141.8,764,152.1L764,152.1z M499.5,531.9c-17.8,0-33.1-6.3-45.8-19c-12.7-12.7-19-28-19-45.8V75.9c0-17.8,6.3-33.3,19-46.3c12.7-13,28-19.6,45.8-19.6c18.5,0,34.1,6.5,46.8,19.6c12.7,13,19,28.5,19,46.3v391.2c0,17.8-6.3,33.1-19,45.8C533.6,525.6,518,531.9,499.5,531.9L499.5,531.9z"/></g>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg fill="#fab387" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve">
<metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>
<g><path d="M500,990c-66.1,0-130.3-13-190.7-38.5c-58.4-24.7-110.8-60-155.7-105s-80.3-97.4-105-155.7C23,630.3,10,566.1,10,500c0-66.1,13-130.3,38.5-190.7c24.7-58.4,60-110.8,105-155.7c45-45,97.4-80.3,155.7-105C369.7,23,433.9,10,500,10c66.1,0,130.3,13,190.7,38.5c58.4,24.7,110.8,60,155.7,105c45,45,80.3,97.4,105,155.7C977,369.7,990,433.9,990,500c0,66.1-13,130.3-38.5,190.7c-24.7,58.4-60,110.8-105,155.7s-97.4,80.3-155.7,105C630.3,977,566.1,990,500,990z M500,79.6c-112.3,0-217.9,43.7-297.3,123.1C123.3,282.1,79.6,387.7,79.6,500s43.7,217.9,123.1,297.3c79.4,79.4,185,123.1,297.3,123.1c112.3,0,217.9-43.7,297.3-123.1c79.4-79.4,123.1-185,123.1-297.3s-43.7-217.9-123.1-297.3C717.9,123.3,612.3,79.6,500,79.6z"/><path d="M322.5,290.6h108v412h-108V290.6z"/><path d="M561.6,290.6h107.9v412H561.6V290.6z"/></g>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,53 @@
* {
font-family: "Noto Sans Regular";
font-size: 12pt;
background-image: none;
box-shadow: none;
}
window {
background-color: rgba(30, 30, 46, 0.90);
}
button {
border-radius: 0;
border-color: #89b4fa;
text-decoration-color: #cdd6f4;
color: #cdd6f4;
background-color: #181825;
border-style: solid;
border-width: 1px;
background-repeat: no-repeat;
background-position: center;
background-size: 25%;
}
button:focus, button:active, button:hover {
/* 20% Overlay 2, 80% mantle */
background-color: rgb(48, 50, 66);
outline-style: none;
}
#lock {
background-image: url("/home/fscotto/.config/wlogout/icons/lock.svg");
}
#logout {
background-image: url("/home/fscotto/.config/wlogout/icons/logout.svg");
}
#suspend {
background-image: url("/home/fscotto/.config/wlogout/icons/suspend.svg");
}
#hibernate {
background-image: url("/home/fscotto/.config/wlogout/icons/hibernate.svg");
}
#shutdown {
background-image: url("/home/fscotto/.config/wlogout/icons/shutdown.svg");
}
#reboot {
background-image: url("/home/fscotto/.config/wlogout/icons/reboot.svg");
}