Compare commits
82 commits
Author | SHA1 | Date | |
---|---|---|---|
f87305b06d | |||
d8e0fa71c2 | |||
ee226de17d | |||
e72799525c | |||
66bdd5592c | |||
f59dabef60 | |||
![]() |
8dc7da2815 | ||
![]() |
54dc20e1da | ||
ddb15dba49 | |||
8f24ae2946 | |||
3e8279f479 | |||
![]() |
bca213279f | ||
![]() |
d59a58120b | ||
![]() |
1810959292 | ||
![]() |
ac0926cf32 | ||
307f026e9d | |||
![]() |
d36e203e98 | ||
![]() |
2be7224e32 | ||
f09dfbb6c6 | |||
![]() |
778dc6528b | ||
![]() |
271069c881 | ||
![]() |
cc095e898e | ||
862b9dcb1b | |||
c4a3c1dbc7 | |||
fc3b2472aa | |||
56e05fbcb2 | |||
![]() |
9c4aaa4207 | ||
![]() |
89a7a823ad | ||
![]() |
94b0219902 | ||
![]() |
418cc0a2fc | ||
![]() |
1fc0ce29c3 | ||
![]() |
d6ac253fb2 | ||
![]() |
34e6157757 | ||
b4cef4847a | |||
be42ae6fc1 | |||
cd1155de86 | |||
![]() |
a5592ab130 | ||
![]() |
ce28901167 | ||
![]() |
938d9d7eda | ||
![]() |
1b7c96ee50 | ||
![]() |
5baec8d64c | ||
![]() |
803ace98f7 | ||
afe557042c | |||
![]() |
2a9f64fbe9 | ||
70078da4ac | |||
ca95164088 | |||
![]() |
98d42bd113 | ||
836e378d5a | |||
4f10917b6f | |||
![]() |
6dd19b8f20 | ||
![]() |
84cced30d0 | ||
5af0a5be11 | |||
c5ac3155f5 | |||
6ffbd754be | |||
46224a32e6 | |||
60b0e8c8ec | |||
![]() |
178fe562cf | ||
![]() |
1a3b4d924b | ||
![]() |
76acec7bb7 | ||
![]() |
f3cc45993d | ||
![]() |
852abda7aa | ||
![]() |
178b7041eb | ||
88e5d60fbc | |||
9fed8eaf1c | |||
5a6c730298 | |||
5183a881ca | |||
479b1fb200 | |||
e8ed595a12 | |||
12183033bf | |||
f487ab78fb | |||
9971db1ee8 | |||
d09714a045 | |||
fb6e60d19e | |||
58f1bacc68 | |||
df0e7ddf4c | |||
157e75c293 | |||
9ad9a2b906 | |||
888e50e5aa | |||
d1e3b80100 | |||
7525d8fd43 | |||
a3a2b263d1 | |||
57db7a8c2e |
47 changed files with 777 additions and 215 deletions
41
README.md
Normal file
41
README.md
Normal file
|
@ -0,0 +1,41 @@
|
|||
### Default settings for TileOS Sway edition
|
||||
|
||||
Any issues with the default configuration of TileOS Sway should be reported to [this](https://gitlab.com/tile-os/tileos-settings-sway/-/issues) repository. Feel free to suggest your improvements and customizations!
|
||||
|
||||
<img src=sway.png>
|
||||
|
||||
Default theme: [Catppuccin Macchiato](https://github.com/catppuccin/catppuccin) (GTK, Kvantum, i3/Sway, Waybar and cursor). TileOS-specific artwork can be found [here](https://gitlab.com/tile-os/tileos-artwork).
|
||||
|
||||
Applications used:
|
||||
* [Alacritty](https://github.com/alacritty/alacritty) - Terminal emulator;
|
||||
* [Azote](https://github.com/nwg-piotr/azote) - Wallpaper manager;
|
||||
* [Btop++](https://github.com/aristocratos/btop) - System load monitor
|
||||
* [Calcurse](https://github.com/lfos/calcurse) - Calendar;
|
||||
* [Cliphist](https://github.com/sentriz/cliphist) - Clipboard manager;
|
||||
* [Dunst](https://github.com/dunst-project/dunst) - Notification system;
|
||||
* dconf - GTK/GNOME specific settings manager (used for GTK applications);
|
||||
* Grimshot - screenshot script;
|
||||
* [Kvantum](https://github.com/tsujan/Kvantum) - Theme manager and engine for Qt-based applications;
|
||||
* [Light](https://github.com/perkele1989/light) - Brightness control;
|
||||
* [nwg-bar](https://github.com/nwg-piotr/nwg-bar) - Session management (shutdown, reboot, suspend, etc);
|
||||
* [nwg-drawer](https://github.com/nwg-piotr/nwg-drawer) - Fullscreen application menu;
|
||||
* [nwg-look](https://github.com/nwg-piotr/nwg-look) - Look-n-Feel configurator for GTK;
|
||||
* [nwg-wrapper](https://github.com/nwg-piotr/nwg-wrapper) - Used for desktop overlay with a list of default keybindings;
|
||||
* [Pavucontrol](https://github.com/pulseaudio/pavucontrol) - Pulseaudio/Pipewire volume control;
|
||||
* [Playerctl](https://github.com/altdesktop/playerctl) - utility for control MPRIS-based players;
|
||||
* [PCmanFM-Qt](https://github.com/lxqt/pcmanfm-qt) - File manager
|
||||
* [Pulsemixer](https://github.com/GeorgeFilipkin/pulsemixer) - console-based volume control for Pulseaudio/Pipewire;
|
||||
* [Pluma](https://github.com/mate-desktop/pluma) - GTK-based text editor;
|
||||
* [Rofi](https://github.com/lbonn/rofi) - Application launcher with Wayland support (fork);
|
||||
* [qt5ct](https://sourceforge.net/projects/qt5ct/) - Styling for Qt5-based applications;
|
||||
* [qt6ct](https://github.com/trialuser02/qt6ct) - Styling for Qt6-based applications;
|
||||
* [swappy](https://github.com/jtheoof/swappy) - Screenshot manager;
|
||||
* [sway-systemd](https://github.com/alebastr/sway-systemd) - Systemd integration for Sway;
|
||||
* [swayr](https://sr.ht/~tsdh/swayr/) - Advanced window switcher for Sway;
|
||||
* [swaybg](https://github.com/swaywm/swaybg) - Wallpaper daemon;
|
||||
* [swayidle](https://github.com/swaywm/swayidle) - Idle daemon/watcher;
|
||||
* [swaylock](https://github.com/swaywm/swaylock) - Lockscreen daemon;
|
||||
* [Waybar](https://github.com/Alexays/Waybar) - Topbar (panel) with various widgets;
|
||||
* [wf-recorder](https://github.com/ammen99/wf-recorder) - Screen recorder;
|
||||
* [wl-clipboard](https://github.com/bugaevc/wl-clipboard) - Wayland clipboard daemon;
|
||||
* [wlsunset](https://sr.ht/~kennylevinsen/wlsunset/) - utility for control color temperature, also known as "Nigth Color Mode".
|
119
debian/changelog
vendored
119
debian/changelog
vendored
|
@ -1,3 +1,122 @@
|
|||
tileos-settings-sway (1.2.0~tileos) unstable; urgency=medium
|
||||
|
||||
* Change module order
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Sun, 20 Oct 2024 00:38:40 +0400
|
||||
|
||||
tileos-settings-sway (1.1.5~tileos) unstable; urgency=medium
|
||||
|
||||
* Update color theme
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Wed, 04 Sep 2024 21:38:06 +0400
|
||||
|
||||
tileos-settings-sway (1.1.4~tileos) unstable; urgency=medium
|
||||
|
||||
* Add swayidle inhibit service
|
||||
* Fixes for variables
|
||||
* Add keyboard shortcut inhibition
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Tue, 20 Aug 2024 18:52:41 +0400
|
||||
|
||||
tileos-settings-sway (1.1.3~tileos) unstable; urgency=medium
|
||||
|
||||
* Fix daemonize pcmanfm-qt
|
||||
* Fixes for some window rules
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Sun, 18 Aug 2024 12:54:54 +0400
|
||||
|
||||
tileos-settings-sway (1.1.2~tileos) unstable; urgency=medium
|
||||
|
||||
* Pass SSH_AUTH_SOCK to all processes
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Wed, 24 Jul 2024 23:56:46 +0400
|
||||
|
||||
tileos-settings-sway (1.1.1~tileos) unstable; urgency=medium
|
||||
|
||||
* Some fixes
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Sat, 20 Jul 2024 15:01:31 +0400
|
||||
|
||||
tileos-settings-sway (1.1~tileos) unstable; urgency=medium
|
||||
|
||||
* Set qt6 style to kvantum-dark
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Wed, 19 Jun 2024 16:57:49 +0400
|
||||
|
||||
tileos-settings-sway (1.0.14~tileos) unstable; urgency=medium
|
||||
|
||||
* Fix appending user keybindings to help overlay
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Sun, 25 Feb 2024 19:22:45 +0400
|
||||
|
||||
tileos-settings-sway (1.0.13~tileos) unstable; urgency=medium
|
||||
|
||||
* Change wallpaper
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Wed, 14 Feb 2024 23:01:19 +0400
|
||||
|
||||
tileos-settings-sway (1.0.12~tileos) unstable; urgency=medium
|
||||
|
||||
* waybar: disable bluetooth module if no controller is found
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Thu, 08 Feb 2024 19:24:56 +0400
|
||||
|
||||
tileos-settings-sway (1.0.11~tileos) unstable; urgency=medium
|
||||
|
||||
* Fix typo
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Fri, 02 Feb 2024 22:33:57 +0400
|
||||
|
||||
tileos-settings-sway (1.0.10~tileos) unstable; urgency=medium
|
||||
|
||||
* waybar: add help overlay module
|
||||
* run help overlay on demand
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Mon, 29 Jan 2024 10:17:04 +0400
|
||||
|
||||
tileos-settings-sway (1.0.9~tileos) unstable; urgency=medium
|
||||
|
||||
* Temporary remove Scratchpad module
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Mon, 22 Jan 2024 22:23:51 +0400
|
||||
|
||||
tileos-settings-sway (1.0.8~tileos) unstable; urgency=medium
|
||||
|
||||
* Fix cursor for GTK 2 apps
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Fri, 12 Jan 2024 00:00:22 +0400
|
||||
|
||||
tileos-settings-sway (1.0.7~tileos) unstable; urgency=medium
|
||||
|
||||
* Set Bibata cursor by default
|
||||
* Enable idle inhibitor by default
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Wed, 10 Jan 2024 21:54:42 +0400
|
||||
|
||||
tileos-settings-sway (1.0.6~tileos) unstable; urgency=medium
|
||||
|
||||
* Typo
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Sun, 10 Dec 2023 21:19:18 +0400
|
||||
|
||||
tileos-settings-sway (1.0.5~tileos) unstable; urgency=medium
|
||||
|
||||
* Remove bashism in start-tileos
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Fri, 08 Dec 2023 19:43:17 +0400
|
||||
|
||||
tileos-settings-sway (1.0.4~tileos) unstable; urgency=medium
|
||||
|
||||
* Small fixes
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Sat, 02 Dec 2023 13:23:12 +0400
|
||||
|
||||
tileos-settings-sway (1.0.3~tileos) unstable; urgency=medium
|
||||
|
||||
* Do not apply NVIDIA specific variables on PRIME setups
|
||||
|
||||
-- Aleksey Samoilov <samoilov.lex@gmail.com> Tue, 14 Nov 2023 15:22:30 +0400
|
||||
|
||||
tileos-settings-sway (1.0.2~tileos) unstable; urgency=medium
|
||||
|
||||
* Add portals config
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
#!/usr/bin/env bash
|
||||
pkill swaybg
|
||||
swaybg -o '*' -i "/usr/share/wallpapers/tileos-final.png" -m fill &
|
||||
swaybg -o '*' -i "/usr/share/wallpapers/tileos-final-sway.png" -m fill &
|
||||
|
|
|
@ -1,79 +1,97 @@
|
|||
color_set:
|
||||
text: &TEXT "#cad3f5"
|
||||
subtext0: &SUBTEXT0 "#e3e3f3"
|
||||
subtext1: &SUBTEXT1 "#ced4e0"
|
||||
surface2: &SURFACE2 "#5b6078"
|
||||
surface1: &SURFACE1 "#494d64"
|
||||
index16: &INDEX16 "#ed6c13"
|
||||
index17: &INDEX17 "#f4dbd6"
|
||||
base: &BASE "#24273a"
|
||||
red: &RED "#ed6070"
|
||||
green: &GREEN "#a6da95"
|
||||
blue: &BLUE "#8aadf4"
|
||||
yellow: &YELLOW "#eed49f"
|
||||
pink: &PINK "#f5bde6"
|
||||
teal: &TEAL "#8bd5ca"
|
||||
rosewater: &ROSEWATER "#f4dbd6"
|
||||
lavender: &LAVENDER "#b7bdf8"
|
||||
|
||||
colors:
|
||||
# Default colors
|
||||
primary:
|
||||
background: "#24273A" # base
|
||||
foreground: "#CAD3F5" # text
|
||||
background: *BASE
|
||||
foreground: *TEXT
|
||||
# Bright and dim foreground colors
|
||||
dim_foreground: "#CAD3F5" # text
|
||||
bright_foreground: "#CAD3F5" # text
|
||||
dim_foreground: *TEXT
|
||||
bright_foreground: *TEXT
|
||||
|
||||
# Cursor colors
|
||||
cursor:
|
||||
text: "#24273A" # base
|
||||
cursor: "#F4DBD6" # rosewater
|
||||
text: *BASE
|
||||
cursor: *ROSEWATER
|
||||
vi_mode_cursor:
|
||||
text: "#24273A" # base
|
||||
cursor: "#B7BDF8" # lavender
|
||||
text: *BASE
|
||||
cursor: *LAVENDER
|
||||
|
||||
# Search colors
|
||||
search:
|
||||
matches:
|
||||
foreground: "#24273A" # base
|
||||
background: "#A5ADCB" # subtext0
|
||||
foreground: *BASE
|
||||
background: *SUBTEXT0
|
||||
focused_match:
|
||||
foreground: "#24273A" # base
|
||||
background: "#A6DA95" # green
|
||||
foreground: *BASE
|
||||
background: *GREEN
|
||||
footer_bar:
|
||||
foreground: "#24273A" # base
|
||||
background: "#A5ADCB" # subtext0
|
||||
foreground: *BASE
|
||||
background: *SUBTEXT0
|
||||
|
||||
# Keyboard regex hints
|
||||
hints:
|
||||
start:
|
||||
foreground: "#24273A" # base
|
||||
background: "#EED49F" # yellow
|
||||
foreground: *BASE
|
||||
background: *YELLOW
|
||||
end:
|
||||
foreground: "#24273A" # base
|
||||
background: "#A5ADCB" # subtext0
|
||||
foreground: *BASE
|
||||
background: *SUBTEXT0
|
||||
|
||||
# Selection colors
|
||||
selection:
|
||||
text: "#24273A" # base
|
||||
background: "#F4DBD6" # rosewater
|
||||
text: *BASE
|
||||
background: *ROSEWATER
|
||||
|
||||
# Normal colors
|
||||
normal:
|
||||
black: "#494D64" # surface1
|
||||
red: "#ED8796" # red
|
||||
green: "#A6DA95" # green
|
||||
yellow: "#EED49F" # yellow
|
||||
blue: "#8AADF4" # blue
|
||||
magenta: "#F5BDE6" # pink
|
||||
cyan: "#8BD5CA" # teal
|
||||
white: "#B8C0E0" # subtext1
|
||||
black: *SURFACE1
|
||||
red: *RED
|
||||
green: *GREEN
|
||||
yellow: *YELLOW
|
||||
blue: *BLUE
|
||||
magenta: *PINK
|
||||
cyan: *TEAL
|
||||
white: *SUBTEXT1
|
||||
|
||||
# Bright colors
|
||||
bright:
|
||||
black: "#5B6078" # surface2
|
||||
red: "#ED8796" # red
|
||||
green: "#A6DA95" # green
|
||||
yellow: "#EED49F" # yellow
|
||||
blue: "#8AADF4" # blue
|
||||
magenta: "#F5BDE6" # pink
|
||||
cyan: "#8BD5CA" # teal
|
||||
white: "#A5ADCB" # subtext0
|
||||
black: *SURFACE2
|
||||
red: *RED
|
||||
green: *GREEN
|
||||
yellow: *YELLOW
|
||||
blue: *BLUE
|
||||
magenta: *PINK
|
||||
cyan: *TEAL
|
||||
white: *SUBTEXT0
|
||||
|
||||
# Dim colors
|
||||
dim:
|
||||
black: "#494D64" # surface1
|
||||
red: "#ED8796" # red
|
||||
green: "#A6DA95" # green
|
||||
yellow: "#EED49F" # yellow
|
||||
blue: "#8AADF4" # blue
|
||||
magenta: "#F5BDE6" # pink
|
||||
cyan: "#8BD5CA" # teal
|
||||
white: "#B8C0E0" # subtext1
|
||||
black: *SURFACE1
|
||||
red: *RED
|
||||
green: *GREEN
|
||||
yellow: *YELLOW
|
||||
blue: *BLUE
|
||||
magenta: *PINK
|
||||
cyan: *TEAL
|
||||
white: *SUBTEXT1
|
||||
|
||||
indexed_colors:
|
||||
- { index: 16, color: "#F5A97F" }
|
||||
- { index: 17, color: "#F4DBD6" }
|
||||
- { index: 16, color: *INDEX16 }
|
||||
- { index: 17, color: *INDEX17 }
|
||||
|
|
15
etc/skel/.config/bluetuith/bluetuith.conf
Normal file
15
etc/skel/.config/bluetuith/bluetuith.conf
Normal file
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
adapter: ""
|
||||
gsm-apn: ""
|
||||
gsm-number: ""
|
||||
keybindings: {}
|
||||
receive-dir: ""
|
||||
theme: {
|
||||
AdapterPowered: "powderblue",
|
||||
AdapterNotPowered: "lightcoral",
|
||||
AdapterPairable: "thistle",
|
||||
AdapterScanning: "mistyrose",
|
||||
DevicePropertyDiscovered: "mistyrose",
|
||||
DevicePropertyConnected: "powderblue"
|
||||
}
|
||||
}
|
|
@ -58,7 +58,7 @@ theme[cached_mid]="#8aadf4"
|
|||
theme[cached_end]="#b7bdf8"
|
||||
|
||||
# Mem/Disk available meter (Peach -> Red)
|
||||
theme[available_start]="#f5a97f"
|
||||
theme[available_start]="#ed6c13"
|
||||
theme[available_mid]="#ee99a0"
|
||||
theme[available_end]="#ed8796"
|
||||
|
||||
|
@ -68,7 +68,7 @@ theme[used_mid]="#8bd5ca"
|
|||
theme[used_end]="#91d7e3"
|
||||
|
||||
# Download graph colors (Peach -> Red)
|
||||
theme[download_start]="#f5a97f"
|
||||
theme[download_start]="#ed6c13"
|
||||
theme[download_mid]="#ee99a0"
|
||||
theme[download_end]="#ed8796"
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#
|
||||
# If this option is set to mouse or keyboard, the monitor option
|
||||
# will be ignored.
|
||||
follow = none
|
||||
follow = mouse
|
||||
|
||||
### Geometry ###
|
||||
|
||||
|
@ -329,7 +329,7 @@
|
|||
[urgency_critical]
|
||||
background = "#24273A"
|
||||
foreground = "#CAD3F5"
|
||||
frame_color = "#F5A97F"
|
||||
frame_color = "#ED6C13"
|
||||
timeout = 0
|
||||
# Icon for notifications with critical urgency, uncomment to enable
|
||||
#default_icon = /path/to/icon
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
gtk-theme-name=Catppuccin-Macchiato-Standard-Blue-Dark
|
||||
gtk-icon-theme-name=ePapirus-Dark
|
||||
gtk-font-name=Noto Sans 11
|
||||
gtk-cursor-theme-name=breeze_cursors
|
||||
gtk-cursor-theme-name=Bibata-Modern-Classic
|
||||
gtk-cursor-theme-size=24
|
||||
gtk-toolbar-style=GTK_TOOLBAR_ICONS
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
[
|
||||
{
|
||||
"label": "Lock",
|
||||
"exec": "swaymsg exec ~/.config/swaylock/lock.sh",
|
||||
"exec": "swaymsg exec /usr/share/sway/scripts/lock.sh",
|
||||
"icon": "system-lock-screen"
|
||||
},
|
||||
{
|
||||
|
|
|
@ -13,9 +13,9 @@ Catppuccin Gedit theme based on Oblivion theme and Cappuccin for Visual Studio C
|
|||
<color name="macchiato_flamingo" value="#f0c6c6"/>
|
||||
<color name="macchiato_pink" value="#f5bde6"/>
|
||||
<color name="macchiato_mauve" value="#c6a0f6"/>
|
||||
<color name="macchiato_red" value="#ed8796"/>
|
||||
<color name="macchiato_red" value="#ed6070"/>
|
||||
<color name="macchiato_maroon" value="#ee99a0"/>
|
||||
<color name="macchiato_peach" value="#f5a97f"/>
|
||||
<color name="macchiato_peach" value="#ed6c13"/>
|
||||
<color name="macchiato_yellow" value="#eed49f"/>
|
||||
<color name="macchiato_green" value="#a6da95"/>
|
||||
<color name="macchiato_teal" value="#8bd5ca"/>
|
||||
|
@ -24,8 +24,8 @@ Catppuccin Gedit theme based on Oblivion theme and Cappuccin for Visual Studio C
|
|||
<color name="macchiato_blue" value="#8aadf4"/>
|
||||
<color name="macchiato_lavender" value="#b7bdf8"/>
|
||||
<color name="macchiato_text" value="#cad3f5"/>
|
||||
<color name="macchiato_subtext1" value="#b8c0e0"/>
|
||||
<color name="macchiato_subtext0" value="#a5adcb"/>
|
||||
<color name="macchiato_subtext1" value="#ced4e0"/>
|
||||
<color name="macchiato_subtext0" value="#e3e3f3"/>
|
||||
<color name="macchiato_overlay2" value="#939ab7"/>
|
||||
<color name="macchiato_overlay1" value="#8087a2"/>
|
||||
<color name="macchiato_overlay0" value="#6e738d"/>
|
||||
|
|
|
@ -3,7 +3,7 @@ color_scheme_path=$HOME/.config/qt6ct/colors/Catppuccin-Macchiato.conf
|
|||
custom_palette=true
|
||||
icon_theme=ePapirus
|
||||
standard_dialogs=default
|
||||
style=Fusion
|
||||
style=kvantum-dark
|
||||
|
||||
[Fonts]
|
||||
fixed="Noto Sans,11,-1,5,400,0,0,0,0,0,0,0,0,0,0,1,Regular"
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
timeout 240 'light -G > /tmp/brightness && light -S 10' resume 'light -S $([ -f /tmp/brightness ] && cat /tmp/brightness || echo 100%)'
|
||||
timeout 300 ~/.config/swaylock/lock.sh
|
||||
timeout 300 '/usr/share/sway/scripts/lock.sh'
|
||||
timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"'
|
||||
timeout 900 'systemctl suspend'
|
||||
before-sleep 'playerctl pause'
|
||||
before-sleep ~/.config/swaylock/lock.sh
|
||||
lock ~/.config/swaylock/lock.sh
|
||||
before-sleep '/usr/share/sway/scripts/lock.sh'
|
||||
lock '/usr/share/sway/scripts/lock.sh'
|
||||
|
|
|
@ -15,4 +15,4 @@ ring-color=c6a0f6
|
|||
ring-ver-color=7dc4e4
|
||||
ring-wrong-color=ee99a0
|
||||
ring-clear-color=8aadf4
|
||||
ring-caps-lock-color=f5a97f
|
||||
ring-caps-lock-color=ed6c13
|
||||
|
|
37
etc/skel/.config/waybar/colors/frappe.css
Normal file
37
etc/skel/.config/waybar/colors/frappe.css
Normal file
|
@ -0,0 +1,37 @@
|
|||
/*
|
||||
*
|
||||
* Catppuccin Frappe palette
|
||||
* Maintainer: rubyowo
|
||||
*
|
||||
*/
|
||||
|
||||
@define-color base #303446;
|
||||
@define-color mantle #292c3c;
|
||||
@define-color crust #232634;
|
||||
|
||||
@define-color text #c6d0f5;
|
||||
@define-color subtext0 #a5adce;
|
||||
@define-color subtext1 #b5bfe2;
|
||||
|
||||
@define-color surface0 #414559;
|
||||
@define-color surface1 #51576d;
|
||||
@define-color surface2 #626880;
|
||||
|
||||
@define-color overlay0 #737994;
|
||||
@define-color overlay1 #838ba7;
|
||||
@define-color overlay2 #949cbb;
|
||||
|
||||
@define-color blue #8caaee;
|
||||
@define-color lavender #babbf1;
|
||||
@define-color sapphire #85c1dc;
|
||||
@define-color sky #99d1db;
|
||||
@define-color teal #81c8be;
|
||||
@define-color green #a6d189;
|
||||
@define-color yellow #e5c890;
|
||||
@define-color peach #ef9f76;
|
||||
@define-color maroon #ea999c;
|
||||
@define-color red #e78284;
|
||||
@define-color mauve #ca9ee6;
|
||||
@define-color pink #f4b8e4;
|
||||
@define-color flamingo #eebebe;
|
||||
@define-color rosewater #f2d5cf;
|
37
etc/skel/.config/waybar/colors/latte.css
Normal file
37
etc/skel/.config/waybar/colors/latte.css
Normal file
|
@ -0,0 +1,37 @@
|
|||
/*
|
||||
*
|
||||
* Catppuccin Latte palette
|
||||
* Maintainer: rubyowo
|
||||
*
|
||||
*/
|
||||
|
||||
@define-color base #eff1f5;
|
||||
@define-color mantle #e6e9ef;
|
||||
@define-color crust #dce0e8;
|
||||
|
||||
@define-color text #4c4f69;
|
||||
@define-color subtext0 #6c6f85;
|
||||
@define-color subtext1 #5c5f77;
|
||||
|
||||
@define-color surface0 #ccd0da;
|
||||
@define-color surface1 #bcc0cc;
|
||||
@define-color surface2 #acb0be;
|
||||
|
||||
@define-color overlay0 #9ca0b0;
|
||||
@define-color overlay1 #8c8fa1;
|
||||
@define-color overlay2 #7c7f93;
|
||||
|
||||
@define-color blue #1e66f5;
|
||||
@define-color lavender #7287fd;
|
||||
@define-color sapphire #209fb5;
|
||||
@define-color sky #04a5e5;
|
||||
@define-color teal #179299;
|
||||
@define-color green #40a02b;
|
||||
@define-color yellow #df8e1d;
|
||||
@define-color peach #fe640b;
|
||||
@define-color maroon #e64553;
|
||||
@define-color red #d20f39;
|
||||
@define-color mauve #8839ef;
|
||||
@define-color pink #ea76cb;
|
||||
@define-color flamingo #dd7878;
|
||||
@define-color rosewater #dc8a78;
|
37
etc/skel/.config/waybar/colors/macchiato.css
Normal file
37
etc/skel/.config/waybar/colors/macchiato.css
Normal file
|
@ -0,0 +1,37 @@
|
|||
/*
|
||||
*
|
||||
* Catppuccin Macchiato palette
|
||||
* Maintainer: rubyowo
|
||||
*
|
||||
*/
|
||||
|
||||
@define-color base #24273a;
|
||||
@define-color mantle #1e2030;
|
||||
@define-color crust #181926;
|
||||
|
||||
@define-color text #cad3f5;
|
||||
@define-color subtext0 #e3e3f3;
|
||||
@define-color subtext1 #ced4e0;
|
||||
|
||||
@define-color surface0 #363a4f;
|
||||
@define-color surface1 #494d64;
|
||||
@define-color surface2 #5b6078;
|
||||
|
||||
@define-color overlay0 #6e738d;
|
||||
@define-color overlay1 #8087a2;
|
||||
@define-color overlay2 #939ab7;
|
||||
|
||||
@define-color blue #8aadf4;
|
||||
@define-color lavender #b7bdf8;
|
||||
@define-color sapphire #7dc4e4;
|
||||
@define-color sky #91d7e3;
|
||||
@define-color teal #8bd5ca;
|
||||
@define-color green #a6da95;
|
||||
@define-color yellow #eed49f;
|
||||
@define-color peach #ed6c13;
|
||||
@define-color maroon #ee99a0;
|
||||
@define-color red #ed6070;
|
||||
@define-color mauve #c6a0f6;
|
||||
@define-color pink #f5bde6;
|
||||
@define-color flamingo #f0c6c6;
|
||||
@define-color rosewater #f4dbd6;
|
37
etc/skel/.config/waybar/colors/mocha.css
Normal file
37
etc/skel/.config/waybar/colors/mocha.css
Normal file
|
@ -0,0 +1,37 @@
|
|||
/*
|
||||
*
|
||||
* Catppuccin Mocha palette
|
||||
* Maintainer: rubyowo
|
||||
*
|
||||
*/
|
||||
|
||||
@define-color base #1e1e2e;
|
||||
@define-color mantle #181825;
|
||||
@define-color crust #11111b;
|
||||
|
||||
@define-color text #cdd6f4;
|
||||
@define-color subtext0 #a6adc8;
|
||||
@define-color subtext1 #bac2de;
|
||||
|
||||
@define-color surface0 #313244;
|
||||
@define-color surface1 #45475a;
|
||||
@define-color surface2 #585b70;
|
||||
|
||||
@define-color overlay0 #6c7086;
|
||||
@define-color overlay1 #7f849c;
|
||||
@define-color overlay2 #9399b2;
|
||||
|
||||
@define-color blue #89b4fa;
|
||||
@define-color lavender #b4befe;
|
||||
@define-color sapphire #74c7ec;
|
||||
@define-color sky #89dceb;
|
||||
@define-color teal #94e2d5;
|
||||
@define-color green #a6e3a1;
|
||||
@define-color yellow #f9e2af;
|
||||
@define-color peach #fab387;
|
||||
@define-color maroon #eba0ac;
|
||||
@define-color red #f38ba8;
|
||||
@define-color mauve #cba6f7;
|
||||
@define-color pink #f5c2e7;
|
||||
@define-color flamingo #f2cdcd;
|
||||
@define-color rosewater #f5e0dc;
|
|
@ -5,12 +5,13 @@
|
|||
"modules-left": ["custom/menu", "sway/workspaces", "sway/window"],
|
||||
"modules-center": ["custom/wf-recorder", "sway/mode"],
|
||||
"modules-right": [
|
||||
"custom/scratchpad",
|
||||
"tray",
|
||||
"custom/playerctl",
|
||||
"custom/help",
|
||||
"custom/wlsunset",
|
||||
"idle_inhibitor",
|
||||
"custom/dunst",
|
||||
"sway/language",
|
||||
"custom/dunst",
|
||||
"custom/clipboard",
|
||||
"cpu",
|
||||
"memory",
|
||||
|
@ -19,8 +20,7 @@
|
|||
"bluetooth",
|
||||
"pulseaudio",
|
||||
"clock",
|
||||
"custom/power",
|
||||
"tray"
|
||||
"custom/power"
|
||||
],
|
||||
|
||||
"custom/menu": {
|
||||
|
@ -47,7 +47,7 @@
|
|||
"tooltip-format": "{tooltip}",
|
||||
"exec": "echo '{\"class\": \"recording\",\"text\":\"\",\"tooltip\":\"press $mod+Esc to stop recording\"}'",
|
||||
"exec-if": "pgrep wf-recorder",
|
||||
"on-click": "killall -s SIGINT wf-recorder",
|
||||
"on-click": "/usr/share/sway/scripts/recorder.sh",
|
||||
"signal": 8
|
||||
},
|
||||
|
||||
|
@ -56,19 +56,6 @@
|
|||
"tooltip": false
|
||||
},
|
||||
|
||||
"custom/scratchpad": {
|
||||
"interval": "once",
|
||||
"return-type": "json",
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"one": "",
|
||||
"many": ""
|
||||
},
|
||||
"exec": "/bin/bash /usr/share/sway/scripts/scratchpad.sh; pkill -RTMIN+7 waybar",
|
||||
"on-click": "swaymsg 'scratchpad show'",
|
||||
"signal": 7
|
||||
},
|
||||
|
||||
"custom/playerctl": {
|
||||
"interval": "once",
|
||||
"tooltip": true,
|
||||
|
@ -86,6 +73,12 @@
|
|||
"signal": 5
|
||||
},
|
||||
|
||||
"custom/help": {
|
||||
"format": "",
|
||||
"on-click": "/usr/share/sway/scripts/help.sh --toggle",
|
||||
"tooltip": "false"
|
||||
},
|
||||
|
||||
"custom/wlsunset": {
|
||||
"interval": "once",
|
||||
"tooltip": true,
|
||||
|
@ -108,6 +101,7 @@
|
|||
"activated": "",
|
||||
"deactivated": ""
|
||||
},
|
||||
"start-activated": true,
|
||||
"tooltip": true,
|
||||
"tooltip-format-activated": "power-saving disabled",
|
||||
"tooltip-format-deactivated": "power-saving enabled"
|
||||
|
@ -180,6 +174,7 @@
|
|||
"bluetooth": {
|
||||
"format": "",
|
||||
"format-disabled": "",
|
||||
"format-no-controller": "",
|
||||
"on-click": "swaymsg exec \\$bluetooth",
|
||||
"on-click-right": "rfkill toggle bluetooth",
|
||||
"tooltip-format": "{}"
|
||||
|
@ -199,9 +194,7 @@
|
|||
"tooltip-format": "{icon} {volume}% {format_source}",
|
||||
"on-click": "swaymsg exec \\$flock \\$pulseaudio",
|
||||
"on-click-middle": "swaymsg exec \\$volume_mute",
|
||||
"on-click-right": "swaymsg exec pavucontrol",
|
||||
"on-scroll-up": "swaymsg exec \\$volume_up",
|
||||
"on-scroll-down": "swaymsg exec \\$volume_down"
|
||||
"on-click-right": "swaymsg exec pavucontrol"
|
||||
},
|
||||
|
||||
"clock": {
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
@import "colors/macchiato.css";
|
||||
|
||||
@keyframes blink-warning {
|
||||
70% {
|
||||
color: @wm_icon_bg;
|
||||
|
@ -5,7 +7,7 @@
|
|||
|
||||
to {
|
||||
color: @wm_icon_bg;
|
||||
background-color: @warning_color;
|
||||
background-color: @yellow;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -16,7 +18,7 @@
|
|||
|
||||
to {
|
||||
color: @wm_icon_bg;
|
||||
background-color: @error_color;
|
||||
background-color: @red;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -24,7 +26,7 @@
|
|||
* {
|
||||
border: 0px;
|
||||
border-radius: 0px;
|
||||
color: #cad3f5;
|
||||
color: @text;
|
||||
padding: 0 0;
|
||||
margin-right: 2px;
|
||||
margin-left: 2px;
|
||||
|
@ -38,7 +40,7 @@
|
|||
}
|
||||
|
||||
window#waybar {
|
||||
background: #24273a;
|
||||
background: @base;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
|
@ -47,30 +49,30 @@ window#waybar.hidden {
|
|||
|
||||
#workspaces button {
|
||||
border-bottom: 2px;
|
||||
border-color: #24273a;
|
||||
border-color: @base;
|
||||
border-style: solid;
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
color: #7dc4e4;
|
||||
border-color: #7dc4e4;
|
||||
color: @sapphire;
|
||||
border-color: @sapphire;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
border-color: #ed8796;
|
||||
color: #ed8796;
|
||||
border-color: @red;
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#mode {
|
||||
color: #ebcb8b;
|
||||
color: @yellow;
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
|
||||
#clock,
|
||||
#custom-help,
|
||||
#custom-playerctl,
|
||||
#custom-power,
|
||||
#custom-scratchpad,
|
||||
#custom-wlsunset,
|
||||
#custom-clipboard,
|
||||
#custom-menu,
|
||||
|
@ -91,51 +93,70 @@ window#waybar.hidden {
|
|||
margin-bottom: 3px;
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: #b7bdf8;
|
||||
#custom-menu {
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#custom-wlsunset {
|
||||
color: #f5bde6;
|
||||
#custom-wf-recorder {
|
||||
color: @error_color;
|
||||
padding-right: 10px;
|
||||
}
|
||||
|
||||
#tray {
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
color: @rosewater;
|
||||
}
|
||||
|
||||
#custom-playerctl {
|
||||
color: #f0c6c6;
|
||||
color: @pink;
|
||||
}
|
||||
|
||||
#custom-power {
|
||||
color: #cad3f5;
|
||||
#custom-help {
|
||||
color: @rosewater;
|
||||
}
|
||||
|
||||
#custom-scratchpad {
|
||||
color: #f4dbd6;
|
||||
#custom-wlsunset {
|
||||
color: @mauve;
|
||||
}
|
||||
|
||||
#custom-clipboard {
|
||||
color: #f5a97f;
|
||||
}
|
||||
|
||||
#custom-menu {
|
||||
color: #a6da95;
|
||||
#idle_inhibitor {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#custom-dunst {
|
||||
color: #ed8796;
|
||||
color: @maroon;
|
||||
}
|
||||
|
||||
#language {
|
||||
color: @peach;
|
||||
}
|
||||
|
||||
#custom-clipboard {
|
||||
color: @yellow;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#memory {
|
||||
color: @teal;
|
||||
}
|
||||
|
||||
#battery {
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
color: #8bd5ca;
|
||||
color: @sky;
|
||||
}
|
||||
|
||||
#battery.warning {
|
||||
color: @warning_color;
|
||||
color: @yellow;
|
||||
}
|
||||
|
||||
#battery.critical {
|
||||
color: @error_color;
|
||||
color: @red;
|
||||
}
|
||||
|
||||
#battery.warning.discharging {
|
||||
|
@ -152,52 +173,34 @@ label:focus {
|
|||
background-color: #000000;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
color: #eed49f;
|
||||
}
|
||||
|
||||
#language {
|
||||
color: #ee99a0;
|
||||
}
|
||||
|
||||
#memory {
|
||||
color: #a6da95;
|
||||
}
|
||||
|
||||
#network {
|
||||
color: #91d7e3;
|
||||
}
|
||||
|
||||
#bluetooth {
|
||||
color: #7dc4e4;
|
||||
}
|
||||
|
||||
#bluetooth.disabled {
|
||||
color: @wm_icon_bg;
|
||||
color: @sapphire;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
color: @wm_icon_bg
|
||||
}
|
||||
|
||||
#bluetooth {
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
#bluetooth.disabled {
|
||||
color: @wm_icon_bg;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #8aadf4;
|
||||
color: @lavender;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
color: @wm_icon_bg;
|
||||
}
|
||||
|
||||
#custom-wf-recorder {
|
||||
color: @error_color;
|
||||
padding-right: 10px;
|
||||
#clock {
|
||||
color: @text;
|
||||
}
|
||||
|
||||
#tray {
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
color: #c6a0f6;
|
||||
#custom-power {
|
||||
color: @subtext1;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Net/ThemeName "Catppuccin-Macchiato-Standard-Blue-Dark"
|
||||
Net/IconThemeName "ePapirus-Dark"
|
||||
Gtk/CursorThemeName "breeze_cursors"
|
||||
Gtk/CursorThemeName "Bibata-Modern-Classic"
|
||||
Net/EnableEventSounds 1
|
||||
EnableInputFeedbackSounds 0
|
||||
Xft/Antialias 1
|
||||
|
|
|
@ -5,7 +5,7 @@ include "/home/sunderland93/.gtkrc-2.0.mine"
|
|||
gtk-theme-name="Catppuccin-Macchiato-Standard-Blue-Dark"
|
||||
gtk-icon-theme-name="ePapirus-Dark"
|
||||
gtk-font-name="Noto Sans 11"
|
||||
gtk-cursor-theme-name="breeze_cursors"
|
||||
gtk-cursor-theme-name="Bibata-Modern-Classic"
|
||||
gtk-cursor-theme-size=24
|
||||
gtk-toolbar-style=GTK_TOOLBAR_ICONS
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
|
|
|
@ -2,4 +2,4 @@
|
|||
[Icon Theme]
|
||||
Name=Default
|
||||
Comment=Default Cursor Theme
|
||||
Inherits=Catppuccin-Macchiato-Blue-Cursors
|
||||
Inherits=Bibata-Modern-Classic
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# set floating mode for specific application
|
||||
for_window [app_id="firefox" title="^Library$"] floating enable, border pixel 1, sticky enable
|
||||
for_window [app_id="[Ff]irefox" title="^Library$"] floating enable, border pixel 1
|
||||
for_window [app_id="[Ll]ibrewolf" title="^Library$"] floating enable, border pixel 1
|
||||
for_window [app_id="thunderbird" title=".*Reminder"] floating enable
|
||||
for_window [app_id="floating_shell_portrait"] floating enable, border pixel 1, sticky enable, resize set width 30 ppt height 40 ppt
|
||||
for_window [app_id="floating_shell"] floating enable, border pixel 1, sticky enable, resize set width 50 ppt height 60 ppt
|
||||
|
@ -22,7 +23,7 @@ for_window [class="calamares"] floating enable
|
|||
for_window [app_id="calamares"] floating enable
|
||||
for_window [app_id="sway-input-config"] floating enable
|
||||
for_window [title="Save File"] floating enable
|
||||
for_window [title="Firefox .*— Sharing Indicator"] floating enable, sticky enable, move to scratchpad
|
||||
for_window [title="[Ff]irefox .*— Sharing Indicator"] floating enable, sticky enable, move to scratchpad
|
||||
for_window [app_id="" title=".* is sharing your screen."] floating enable
|
||||
|
||||
# set floating mode for generated windows
|
||||
|
@ -41,21 +42,19 @@ for_window [title="Copy Files"] floating enable;
|
|||
for_window [title="Copy Files"] resize set 600 400
|
||||
for_window [title="Confirm to replace files"] floating enable;
|
||||
for_window [title="Confirm to replace files"] move position center
|
||||
|
||||
# apply mark for Xwayland and wayland native browser windows
|
||||
for_window [class="Chromium-browser"] mark Browser
|
||||
for_window [class="Brave-browser"] mark Browser
|
||||
for_window [class="firefox"] mark Browser
|
||||
for_window [app_id="Chromium-browser"] mark Browser
|
||||
for_window [app_id="brave-browser"] mark Browser
|
||||
for_window [app_id="firefox"] mark Browser
|
||||
|
||||
# inhibit scrensaver for fullscreen browser windows
|
||||
for_window [con_mark="Browser"] {
|
||||
inhibit_idle fullscreen
|
||||
}
|
||||
for_window [title="Choose an Application"] floating enable
|
||||
for_window [title="Removable medium is inserted"] floating enable
|
||||
|
||||
# Don't allow applications to inhibit shortcuts, i.e. grab total control of the
|
||||
# keyboard. Chrome currently abuses this by enabling it for all "--app=..."
|
||||
# shortcuts.
|
||||
seat * shortcuts_inhibitor disable
|
||||
|
||||
# mark applications for which shortcuts inhibition is allowed
|
||||
for_window [class="[Vv]irt-"] mark Grabbing
|
||||
for_window [class="[Rr]eminna"] mark Grabbing
|
||||
for_window [app_id="[Vv]irt-"] mark Grabbing
|
||||
for_window [app_id="[Rr]emmina"] mark Grabbing
|
||||
|
||||
# inhibit keyboard shortcuts for marked applications
|
||||
for_window [con_mark="Grabbing"] shortcuts_inhibitor enable
|
||||
|
|
|
@ -32,6 +32,7 @@ $bindsym $mod+Shift+e exec nwg-bar -x
|
|||
$bindsym --locked XF86AudioRaiseVolume exec $volume_up
|
||||
$bindsym --locked XF86AudioLowerVolume exec $volume_down
|
||||
$bindsym --locked XF86AudioMute exec $volume_mute
|
||||
$bindsym --locked XF86AudioMicMute exec $mic_mute
|
||||
$bindsym --locked XF86AudioPlay exec playerctl play-pause
|
||||
$bindsym --locked XF86AudioNext exec playerctl next
|
||||
$bindsym --locked XF86AudioPrev exec playerctl previous
|
||||
|
@ -96,7 +97,6 @@ $bindsym $mod+6 workspace $ws6
|
|||
$bindsym $mod+7 workspace $ws7
|
||||
$bindsym $mod+8 workspace $ws8
|
||||
$bindsym $mod+9 workspace $ws9
|
||||
$bindsym $mod+0 workspace $ws10
|
||||
|
||||
set $focus_ws [ "$focus_after_move" == 'true' ] && swaymsg workspace
|
||||
|
||||
|
@ -124,6 +124,9 @@ $bindsym $mod+Shift+n exec /usr/share/sway/scripts/first-empty-workspace.py --mo
|
|||
## Action // Move focused window to a new workspace and switch there ##
|
||||
$bindsym $mod+Shift+m exec /usr/share/sway/scripts/first-empty-workspace.py --move --switch
|
||||
|
||||
## Action // Toogle shortcuts inhibition // $mod + Control_R ##
|
||||
$bindsym --inhibited $mod+Control_R exec $toggle_shorcuts_inhibitor
|
||||
|
||||
#
|
||||
# Layout stuff:
|
||||
#
|
||||
|
|
|
@ -16,4 +16,4 @@ mode --pango_markup $mode_recording {
|
|||
$bindsym $mod+Shift+r mode $mode_recording
|
||||
|
||||
## Launch // Stop Recording Mode ##
|
||||
$bindsym $mod+Escape exec killall -s SIGINT wf-recorder
|
||||
$bindsym $mod+Escape exec $recorder
|
||||
|
|
18
etc/sway/modes/screenmirror.conf
Normal file
18
etc/sway/modes/screenmirror.conf
Normal file
|
@ -0,0 +1,18 @@
|
|||
#
|
||||
# Screenmirror:
|
||||
#
|
||||
# The mode allows the user to mirror the headless output.
|
||||
# This is primarily used when screencasting to cast only the windows that
|
||||
# belong to the headless output instead of casting the entire screen.
|
||||
#
|
||||
# See the following link for more details:
|
||||
# https://github.com/emersion/xdg-desktop-portal-wlr/issues/107#issuecomment-1596107337
|
||||
|
||||
# set $screenmirror /usr/share/sway/scripts/screenmirror.sh
|
||||
# set $start_mirror systemd-cat $screenmirror $headless
|
||||
# set $stop_mirror systemd-cat $screenmirror -k
|
||||
|
||||
# ## Launch // Switch to the workspace for mirroring ##
|
||||
# $bindsym $mod+0 exec $start_mirror, workspace $ws10
|
||||
# ## Launch // Switch back from the workspace for mirroring ##
|
||||
# $bindsym $mod+Mod1+0 exec $stop_mirror, workspace back_and_forth
|
9
etc/sway/outputs/headless-output.conf
Normal file
9
etc/sway/outputs/headless-output.conf
Normal file
|
@ -0,0 +1,9 @@
|
|||
# This output configuration is required for the screenmirror mode to work.
|
||||
|
||||
#set $headless HEADLESS-1
|
||||
|
||||
#output $headless {
|
||||
# position 16000 16000
|
||||
#}
|
||||
#workspace $ws10 output $headless
|
||||
#exec swaymsg create_output
|
|
@ -15,13 +15,13 @@ set $flock /usr/share/sway/scripts/flock.sh
|
|||
# Your preferred terminal emulator
|
||||
set $term alacritty
|
||||
set $term_cwd $term --working-directory "$(/usr/share/sway/scripts/swaycwd.sh 2>/dev/null || echo $HOME)"
|
||||
set $term_float alacritty --class floating_shell -e
|
||||
set $term_float $term --class floating_shell -e
|
||||
|
||||
# Rofi theme
|
||||
set $rofi_theme "* {lightbg: $base; background: $base; lightfg: $blue; foreground: $text; border-color: $blue;} window {border: 2;}"
|
||||
|
||||
# Your preferred application launcher
|
||||
set $menu rofi -show combi -combi-modi "drun,run" -terminal $term -ssh-command "{terminal} {ssh-client} {host} [-p {port}]" -run-shell-command "{terminal} {cmd}" -show-icons -font "$gui-font"
|
||||
set $menu rofi -show combi -modes combi -combi-modes "drun,run" -terminal "$term" -show-icons -font "$gui-font"
|
||||
|
||||
# Add --to-code to bindsym, support for non-latin layouts
|
||||
set $bindsym bindsym --to-code
|
||||
|
@ -44,6 +44,7 @@ set $brightness_down light -r -U $($brightness_step) && $brightness_bar
|
|||
set $volume_down pulsemixer --change-volume -5 && $volume_bar
|
||||
set $volume_up pulsemixer --change-volume +5 && $volume_bar
|
||||
set $volume_mute pulsemixer --toggle-mute && $volume_bar
|
||||
set $mic_mute /usr/share/sway/scripts/mic-mute.sh
|
||||
|
||||
# Clipboard history
|
||||
set $clipboard cliphist list | rofi -dmenu -font "$gui-font" -p "Select item to copy:" -lines 10 -width 35 | cliphist decode | wl-copy
|
||||
|
@ -71,7 +72,7 @@ set $ws6 number 6
|
|||
set $ws7 number 7
|
||||
set $ws8 number 8
|
||||
set $ws9 number 9
|
||||
set $ws10 number 10
|
||||
set $ws10 "<span baseline_shift='-20pt' weight='bold'>🖵</span>"
|
||||
|
||||
# Screenshot
|
||||
set $grimshot /usr/bin/grimshot
|
||||
|
@ -104,14 +105,14 @@ set $switch_toplevel '[ -f /usr/share/sway/scripts/switch-top-level.py ] && /usr
|
|||
set $kanshi '[ -x "$(command -v kanshi)" ] && pkill kanshi; exec kanshi'
|
||||
|
||||
# Start PCmanFM-Qt as a daemon
|
||||
set $pcmanfm_daemon '[ -x "$(command -v pcmanfm)" ] && pcmanfm-qt -d'
|
||||
set $pcmanfm_daemon '[ -x "$(command -v pcmanfm-qt)" ] && pcmanfm-qt -d'
|
||||
|
||||
# Clipboard manager
|
||||
set $cliphist_store '[ -x "$(command -v wl-paste)" ] && [ -x "$(command -v cliphist)" ] && wl-paste --watch cliphist store'
|
||||
set $cliphist_watch '[ -x "$(command -v wl-paste)" ] && [ -x "$(command -v cliphist)" ] && wl-paste --watch pkill -RTMIN+9 waybar'
|
||||
|
||||
# Start nwg-drawer as a daemon
|
||||
set $nwg_drawer_daemon '[ -x "$(command -v nwg-drawer)" ] && nwg-drawer -r'
|
||||
set $nwg_drawer_daemon '[ -x "$(command -v nwg-drawer)" ] && nwg-drawer -r -term "$term"'
|
||||
|
||||
# Start playerctl as daemon
|
||||
set $watch_playerctl '[ -x "$(command -v playerctl)" ] && pkill playerctl; playerctl -a metadata --format \'{{status}} {{title}}\' --follow | while read line; do pkill -RTMIN+5 waybar; done'
|
||||
|
@ -124,3 +125,9 @@ set $calendar_daemon 'calcurse --daemon'
|
|||
|
||||
# Notifications from Swappy
|
||||
set $swappy_notify '[ -x "$(command -v swappy)" ] && /usr/share/sway/scripts/screenshot-notify.sh'
|
||||
|
||||
# Start a screensaver
|
||||
set $lock '/usr/share/sway/scripts/lock.sh'
|
||||
|
||||
# Toggle shortcuts inhibition mode for the current focused window
|
||||
set $toggle_shorcuts_inhibitor 'swaymsg "seat - shortcuts_inhibitor toggle"'
|
||||
|
|
3
etc/xdg/xdg-desktop-portal-wlr/config
Normal file
3
etc/xdg/xdg-desktop-portal-wlr/config
Normal file
|
@ -0,0 +1,3 @@
|
|||
[screencast]
|
||||
chooser_type=dmenu
|
||||
chooser_cmd=/usr/share/sway/scripts/select-output.sh
|
BIN
sway.png
Normal file
BIN
sway.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 642 KiB |
|
@ -47,9 +47,14 @@ if [ -d "${XDG_CONFIG_HOME:-$HOME/.config}/environment.d" ]; then
|
|||
set +o allexport
|
||||
fi
|
||||
|
||||
# Run Sway under ssh-agent
|
||||
run_sway() {
|
||||
exec systemd-cat -- /usr/bin/ssh-agent /usr/bin/sway $@
|
||||
}
|
||||
|
||||
# Check if Nvidia driver installed, start Sway and send output to the journal
|
||||
if [ -d /sys/module/nvidia ]; then
|
||||
exec systemd-cat -- /usr/bin/sway --unsupported-gpu $@
|
||||
if [ -d /sys/module/nvidia ] && [ ! -d /sys/module/amdgpu ] && [ ! -d /sys/module/i915 ]; then
|
||||
run_sway --unsupported-gpu $@
|
||||
else
|
||||
exec systemd-cat -- /usr/bin/sway $@
|
||||
run_sway
|
||||
fi
|
||||
|
|
12
usr/lib/systemd/user/swayidle-inhibitor.service
Normal file
12
usr/lib/systemd/user/swayidle-inhibitor.service
Normal file
|
@ -0,0 +1,12 @@
|
|||
[Unit]
|
||||
Description=Toggle idle inhibition depending on whether the audio is playing or not
|
||||
PartOf=swayidle.service
|
||||
After=swayidle.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/share/sway/scripts/idle-inhibitor.sh
|
||||
Restart=always
|
||||
RestartSec=30
|
||||
|
||||
[Install]
|
||||
WantedBy=sway-session.target
|
9
usr/lib/systemd/user/swayidle-restart.path
Normal file
9
usr/lib/systemd/user/swayidle-restart.path
Normal file
|
@ -0,0 +1,9 @@
|
|||
[Unit]
|
||||
Description=Automatically restart the swayidle when its configuration changes
|
||||
PartOf=swayidle.service
|
||||
|
||||
[Path]
|
||||
PathChanged=%h/.config/swayidle/config
|
||||
|
||||
[Install]
|
||||
WantedBy=paths.target
|
6
usr/lib/systemd/user/swayidle-restart.service
Normal file
6
usr/lib/systemd/user/swayidle-restart.service
Normal file
|
@ -0,0 +1,6 @@
|
|||
[Service]
|
||||
ExecStart=systemctl --user restart swayidle.service
|
||||
Type=oneshot
|
||||
|
||||
[Install]
|
||||
WantedBy=graphical-session.target
|
|
@ -6,7 +6,7 @@ ConditionPathExists=/usr/bin/swayidle
|
|||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStart=/usr/bin/swayidle
|
||||
ExecStart=/usr/bin/swayidle -w
|
||||
|
||||
[Install]
|
||||
WantedBy=sway-session.target
|
||||
|
|
11
usr/lib/systemd/user/waybar-restart.path
Normal file
11
usr/lib/systemd/user/waybar-restart.path
Normal file
|
@ -0,0 +1,11 @@
|
|||
[Unit]
|
||||
Description=Automatically restart the waybar when its configuration changes
|
||||
PartOf=waybar.service
|
||||
|
||||
[Path]
|
||||
PathChanged=%h/.config/waybar
|
||||
PathChanged=%h/.config/waybar/colors
|
||||
PathChanged=%h/waybar/config
|
||||
|
||||
[Install]
|
||||
WantedBy=paths.target
|
3
usr/lib/systemd/user/waybar-restart.service
Normal file
3
usr/lib/systemd/user/waybar-restart.service
Normal file
|
@ -0,0 +1,3 @@
|
|||
[Service]
|
||||
ExecStart=systemctl --user restart waybar.service
|
||||
Type=oneshot
|
|
@ -6,10 +6,10 @@ VISIBILITY_SIGNAL=30
|
|||
QUIT_SIGNAL=31
|
||||
|
||||
if [ "$1" = "--toggle" ]; then
|
||||
pkill -f -${VISIBILITY_SIGNAL} nwg-wrapper
|
||||
pkill -f -${VISIBILITY_SIGNAL} 'nwg-wrapper.*-s help.sh'
|
||||
else
|
||||
pkill -f -${QUIT_SIGNAL} nwg-wrapper
|
||||
pkill -f -${QUIT_SIGNAL} 'nwg-wrapper.*-s help.sh'
|
||||
for output in $(swaymsg -t get_outputs --raw | jq -r '.[].name'); do
|
||||
nwg-wrapper -o "$output" -sv ${VISIBILITY_SIGNAL} -sq ${QUIT_SIGNAL} -s help.sh -p left -a end &
|
||||
nwg-wrapper -o "$output" -i -sv ${VISIBILITY_SIGNAL} -sq ${QUIT_SIGNAL} -s help.sh -p left -a end &
|
||||
done
|
||||
fi
|
||||
|
|
32
usr/share/sway/scripts/idle-inhibitor.sh
Executable file
32
usr/share/sway/scripts/idle-inhibitor.sh
Executable file
|
@ -0,0 +1,32 @@
|
|||
#!/bin/bash
|
||||
|
||||
check_status() {
|
||||
grep -s -l -v "closed" \
|
||||
/proc/asound/card*/pcm*/sub*/status \
|
||||
&>/dev/null
|
||||
}
|
||||
|
||||
out() {
|
||||
printf "Idle inhibition is OFF.\n"
|
||||
exit 0
|
||||
}
|
||||
|
||||
watch_status() {
|
||||
printf "Idle inhibition is ON.\n"
|
||||
while check_status; do
|
||||
sleep 10
|
||||
done
|
||||
out
|
||||
}
|
||||
|
||||
main() {
|
||||
check_status || out
|
||||
test "$1" = "-w" && watch_status
|
||||
systemd-inhibit \
|
||||
--what=idle \
|
||||
--who="${0##*/}" \
|
||||
--why="Inhibit idle due to audio is now playing" \
|
||||
--mode=block \
|
||||
"$0" -w
|
||||
}
|
||||
main "$@"
|
10
usr/share/sway/scripts/lock.sh
Executable file
10
usr/share/sway/scripts/lock.sh
Executable file
|
@ -0,0 +1,10 @@
|
|||
#!/bin/bash
|
||||
|
||||
USER_SCRIPT="$HOME/.config/swaylock/lock.sh"
|
||||
GLOB_SCRIPT="/usr/share/sway/scripts/swaylock.sh"
|
||||
|
||||
if [[ -x "$USER_SCRIPT" ]]; then
|
||||
"$USER_SCRIPT"
|
||||
else
|
||||
"$GLOB_SCRIPT"
|
||||
fi
|
14
usr/share/sway/scripts/mic-mute.sh
Executable file
14
usr/share/sway/scripts/mic-mute.sh
Executable file
|
@ -0,0 +1,14 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
MIC="${1:-'Capture'}"
|
||||
|
||||
amixer sset "$MIC" toggle
|
||||
|
||||
STATE="$(amixer sget "$MIC",0 | sed -E -e '0,/^.*\[(on|off)\].*$/d' -e 's/^.*\[(\w+)\].*$/\1/')"
|
||||
|
||||
test -n "$STATE" && notify-send \
|
||||
--app-name sway \
|
||||
--expire-time 800 \
|
||||
"Microphone is $STATE"
|
|
@ -1,44 +1,69 @@
|
|||
#!/bin/bash
|
||||
set -x
|
||||
|
||||
pgrep wf-recorder
|
||||
status=$?
|
||||
|
||||
countdown() {
|
||||
notify "Recording in 3 seconds" -t 1000
|
||||
sleep 1
|
||||
notify "Recording in 2 seconds" -t 1000
|
||||
sleep 1
|
||||
notify "Recording in 1 seconds" -t 1000
|
||||
sleep 1
|
||||
for count in {3..1}; do
|
||||
notify "Recording in $count seconds" -t 1000
|
||||
sleep 1
|
||||
done
|
||||
}
|
||||
|
||||
notify() {
|
||||
line=$1
|
||||
shift
|
||||
notify-send "Recording" "${line}" -i /usr/share/icons/Yaru/scalable/devices/camera-video-symbolic.svg "$*"
|
||||
notify-send \
|
||||
"$1" \
|
||||
-i "/usr/share/icons/Yaru/scalable/devices/camera-video-symbolic.svg" \
|
||||
"${@:2}"
|
||||
}
|
||||
|
||||
if [ $status != 0 ]; then
|
||||
kill_waybar() {
|
||||
pkill -RTMIN+8 waybar
|
||||
}
|
||||
|
||||
kill_recursive() {
|
||||
ps -o sid= -p "$1" | xargs pkill --signal SIGINT -g
|
||||
}
|
||||
|
||||
cleanup() {
|
||||
pid=$(cat "$1")
|
||||
rm "$1"
|
||||
kill_waybar
|
||||
kill_recursive "$pid"
|
||||
exit
|
||||
}
|
||||
|
||||
main() {
|
||||
pid_file="/tmp/screenrecorder-$UID.pid"
|
||||
|
||||
test -e "$pid_file" && cleanup "$pid_file"
|
||||
echo "$$" > "$pid_file"
|
||||
|
||||
target_path=$(xdg-user-dir VIDEOS)
|
||||
timestamp=$(date +'recording_%Y%m%d-%H%M%S')
|
||||
|
||||
notify "Select a region to record" -t 1000
|
||||
area=$(swaymsg -t get_tree | jq -r '.. | select(.pid? and .visible?) | .rect | "\(.x),\(.y) \(.width)x\(.height)"' | slurp)
|
||||
area=$(swaymsg -t get_tree | \
|
||||
jq -r '.. | select(.pid? and .visible?) | .rect | "\(.x),\(.y) \(.width)x\(.height)"' | \
|
||||
slurp)
|
||||
|
||||
countdown
|
||||
(sleep 0.5 && pkill -RTMIN+8 waybar) &
|
||||
(sleep 0.5 && kill_waybar) &
|
||||
|
||||
if [ "$1" == "-a" ]; then
|
||||
if [[ "$1" == "-a" ]]; then
|
||||
file="$target_path/$timestamp.mp4"
|
||||
wf-recorder --audio -g "$area" --file="$file"
|
||||
else
|
||||
file="$target_path/$timestamp.webm"
|
||||
wf-recorder -g "$area" -c libvpx --codec-param="qmin=0" --codec-param="qmax=25" --codec-param="crf=4" --codec-param="b:v=1M" --file="$file"
|
||||
output="$(swaymsg -t get_outputs | jq -r '.[] | select(.focused) | .name')"
|
||||
wf-recorder \
|
||||
-g "$area" -c libvpx \
|
||||
--codec-param="qmin=0" \
|
||||
--codec-param="qmax=25" \
|
||||
--codec-param="crf=4" \
|
||||
--codec-param="b:v=1M" \
|
||||
-o "$output" \
|
||||
--file="$file"
|
||||
fi
|
||||
|
||||
pkill -RTMIN+8 waybar && notify "Finished recording ${file}"
|
||||
else
|
||||
pkill --signal SIGINT wf-recorder
|
||||
pkill -RTMIN+8 waybar
|
||||
fi
|
||||
kill_waybar && notify "Finished recording ${file}"
|
||||
rm $pid_file
|
||||
}
|
||||
main "$@"
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
import sys
|
||||
import glob
|
||||
import re
|
||||
import os
|
||||
from typing import Text
|
||||
import json
|
||||
|
||||
|
@ -26,6 +27,7 @@ def readFile(filePath):
|
|||
for line in allLines:
|
||||
if re.search(r'^include\s+(.+?)$', line):
|
||||
nextPath = re.findall(r'^include\s+(.+?)$', line)[0]
|
||||
nextPath = os.path.expandvars(nextPath)
|
||||
finalLines = finalLines + readFile(nextPath)
|
||||
else:
|
||||
finalLines = finalLines + [line]
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
#!/bin/bash
|
||||
tooltip=$(swaymsg -r -t get_tree | jq -r 'recurse(.nodes[]) | first(select(.name=="__i3_scratch")) | .floating_nodes | .[] | "\(.app_id) | \(.name)"')
|
||||
count=$(echo -n "$tooltip" | grep -c '^')
|
||||
|
||||
if [ "$count" -eq 0 ]; then
|
||||
exit 1
|
||||
elif [ "$count" -eq 1 ]; then
|
||||
class="one"
|
||||
elif [ "$count" -gt 1 ]; then
|
||||
class="many"
|
||||
else
|
||||
class="unknown"
|
||||
fi
|
||||
|
||||
printf '{"text":"%s", "class":"%s", "alt":"%s", "tooltip":"%s"}\n' "$count" "$class" "$class" "${tooltip//$'\n'/'\n'}"
|
38
usr/share/sway/scripts/screenmirror.sh
Executable file
38
usr/share/sway/scripts/screenmirror.sh
Executable file
|
@ -0,0 +1,38 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# This script implements the function of mirroring outputs.
|
||||
# It uses wl-mirror and Sway's ability to create headless outputs.
|
||||
#
|
||||
# The script is written as a singleton. It allows the user to run only one
|
||||
# instance of itself and kills all others. This is necessary so that wl-mirror
|
||||
# instances do not interfere with each other.
|
||||
|
||||
SELF_NAME="$(basename "$0")"
|
||||
SELF_PID="$$"
|
||||
|
||||
get_pgid() {
|
||||
ps -h -o "%r" -p "$1" | awk '{print $1}'
|
||||
}
|
||||
SELF_PGID="$(get_pgid "$SELF_PID")"
|
||||
|
||||
kill_by_pgid() {
|
||||
pkill -"$2" -g "$1"
|
||||
}
|
||||
|
||||
kill_copies() {
|
||||
mapfile -t pids < <(pgrep -u "$USER" -x "$SELF_NAME")
|
||||
for pid in "${pids[@]}" ; do
|
||||
pgid="$(get_pgid "$pid")"
|
||||
[[ $pgid -ne $SELF_PGID ]] && kill_by_pgid "$pgid" "INT"
|
||||
done
|
||||
}
|
||||
|
||||
main() {
|
||||
# Don't single quote the trap's command!
|
||||
# It must be expanded when the trap is defined.
|
||||
# shellcheck disable=SC2064
|
||||
trap "kill_by_pgid $SELF_PGID TERM" INT
|
||||
kill_copies
|
||||
[[ "$1" != "-k" ]] && wl-mirror -F "${1:-HEADLESS-1}"
|
||||
}
|
||||
main "$@"
|
33
usr/share/sway/scripts/select-output.sh
Executable file
33
usr/share/sway/scripts/select-output.sh
Executable file
|
@ -0,0 +1,33 @@
|
|||
#!/bin/bash
|
||||
|
||||
export LC_ALL=C
|
||||
|
||||
TITLE="Select the output for the screencast"
|
||||
OUT_NAME="HEADLESS-1"
|
||||
FONT_SIZE="12"
|
||||
ROSEWATER="#f4dbd6"
|
||||
|
||||
FONT="Noto Sans ${FONT_SIZE}"
|
||||
FONT_COLOR="${ROSEWATER}"
|
||||
|
||||
I_SIZE="$(awk "BEGIN {print (${FONT_SIZE}*1.08)}")"
|
||||
OUT_SIZE="$(awk "BEGIN {print (${FONT_SIZE}*0.94)}")"
|
||||
TIP_SHIFT="$(awk "BEGIN {print (1+(${I_SIZE}-${FONT_SIZE})/2)}")"
|
||||
TIP="\
|
||||
<span color='${FONT_COLOR}'>\
|
||||
<span size='${I_SIZE}pt'></span> \
|
||||
<span baseline_shift='${TIP_SHIFT}pt'>use \
|
||||
<span size='${OUT_SIZE}pt'>${OUT_NAME}</span> \
|
||||
to cast only chosen windows\
|
||||
</span>\
|
||||
</span>\
|
||||
"
|
||||
|
||||
swaymsg -t get_outputs \
|
||||
| jq -r '.[] | .name' \
|
||||
| rofi \
|
||||
-dmenu -i -l 4 \
|
||||
-p "${TITLE}" \
|
||||
-window-title "${TITLE}" \
|
||||
-mesg "${TIP}" \
|
||||
-font "${FONT}"
|
Loading…
Add table
Reference in a new issue