переписал polybar и sxhkd
This commit is contained in:
parent
9d0411bf4f
commit
b3e54574bc
3 changed files with 495 additions and 389 deletions
|
|
@ -11,8 +11,16 @@
|
||||||
xrandr --output HDMI-A-0 --mode 1920x1080 --rate 100 --right-of DisplayPort-2
|
xrandr --output HDMI-A-0 --mode 1920x1080 --rate 100 --right-of DisplayPort-2
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
# Эти команды выполняются в конце bspwmrc
|
||||||
|
extraConfig = ''
|
||||||
|
for m in $(polybar --list-monitors | cut -d":" -f1); do
|
||||||
|
MONITOR=$m polybar --reload bottom &
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
startupPrograms = [
|
startupPrograms = [
|
||||||
# "lxqt-policykit-agent" # Заменил на гномовский
|
# "lxqt-policykit-agent" # Заменил на гномовский
|
||||||
|
"sxhkd"
|
||||||
"nm-applet"
|
"nm-applet"
|
||||||
"ksnip"
|
"ksnip"
|
||||||
# "nekoray"
|
# "nekoray"
|
||||||
|
|
@ -57,8 +65,10 @@
|
||||||
# "Polybar" = { layer = "below"; };
|
# "Polybar" = { layer = "below"; };
|
||||||
"Screenkey" = { manage = false; };
|
"Screenkey" = { manage = false; };
|
||||||
"gcolor3" = floating;
|
"gcolor3" = floating;
|
||||||
|
"obs" = floating;
|
||||||
"steam" = floating;
|
"steam" = floating;
|
||||||
"steam:steamwebhelper:Steam" = { state = "tiled"; };
|
"steam:steamwebhelper:Steam" = { state = "tiled"; };
|
||||||
|
"librewolf:librewolf:Save Image" = floating;
|
||||||
"SshAskpass" = floating;
|
"SshAskpass" = floating;
|
||||||
"Nm-connection-editor" = floating;
|
"Nm-connection-editor" = floating;
|
||||||
"ksnip" = floating1600x900;
|
"ksnip" = floating1600x900;
|
||||||
|
|
|
||||||
|
|
@ -21,322 +21,309 @@
|
||||||
# double-click-middle
|
# double-click-middle
|
||||||
# double-click-right
|
# double-click-right
|
||||||
|
|
||||||
{ config, ... }: { # Статус бар внизу
|
{ pkgs, config, ... }: { # Статус бар внизу
|
||||||
services.polybar = {
|
home.package = [ sxhkd ];
|
||||||
enable = true;
|
|
||||||
script = ''
|
xdg.configFile."polybar/config.ini" = {
|
||||||
for m in $(polybar --list-monitors | cut -d":" -f1); do
|
# executable = true;
|
||||||
MONITOR=$m polybar --reload bottom &
|
text = ''
|
||||||
done
|
[bar/bottom]
|
||||||
|
monitor=$\{env:MONITOR:}
|
||||||
|
tray-position=right
|
||||||
|
|
||||||
|
bottom=true
|
||||||
|
fixed-center=true
|
||||||
|
enable-ipc=true
|
||||||
|
double-click-interval=400
|
||||||
|
offset-x=0
|
||||||
|
offset-y=0
|
||||||
|
|
||||||
|
width=100%
|
||||||
|
height=16pt
|
||||||
|
radius=0
|
||||||
|
dpi=0
|
||||||
|
background=${config.lib.stylix.colors.base00}
|
||||||
|
foreground=${config.lib.stylix.colors.base07}
|
||||||
|
border-color=${config.lib.stylix.colors.base00}
|
||||||
|
border-size=4pt
|
||||||
|
module-margin=4pt
|
||||||
|
separator=|
|
||||||
|
separator-foreground=${config.lib.stylix.colors.base0F}
|
||||||
|
|
||||||
|
modules-center=time
|
||||||
|
modules-left=bspwm title
|
||||||
|
modules-right=cpu memory alsa tray xkeyboard rofi
|
||||||
|
|
||||||
|
wm-restack=bspwm
|
||||||
|
|
||||||
|
font-0=NotoSans Nerd Font:style=Regular:size=12;3
|
||||||
|
|
||||||
|
; Выблядки не могут юзать все Noto Sans при указании одного шрифта
|
||||||
|
font-1=Noto Sans:size=12;3
|
||||||
|
font-2=Noto Sans CJK HK:size=12;3
|
||||||
|
font-3=Noto Sans CJK JP:size=12;3
|
||||||
|
font-4=Noto Sans CJK KR:size=12;3
|
||||||
|
font-5=Noto Sans CJK SC:size=12;3
|
||||||
|
font-6=Noto Sans CJK TC:size=12;3
|
||||||
|
font-7=Noto Color Emoji:style=Regular:size=12;3
|
||||||
|
font-8=Noto Sans Balinese:size=12;3
|
||||||
|
font-9=Noto Sans Bamum:size=12;3
|
||||||
|
font-10=Noto Sans Zanabazar Square:size=12;3
|
||||||
|
font-11=Noto Sans Bassa Vah:size=12;3
|
||||||
|
font-12=Noto Sans Batak:size=12;3
|
||||||
|
font-13=Noto Sans Bengali:size=12;3
|
||||||
|
font-14=Noto Sans Bhaiksuki:size=12;3
|
||||||
|
font-15=Noto Sans Brahmi:size=12;3
|
||||||
|
font-16=Noto Sans Buginese:size=12;3
|
||||||
|
font-17=Noto Sans Buhid:size=12;3
|
||||||
|
font-18=Noto Sans Canadian Aboriginal:size=12;3
|
||||||
|
font-19=Noto Sans Carian:size=12;3
|
||||||
|
font-20=Noto Sans Caucasian Albanian:size=12;3
|
||||||
|
font-21=Noto Sans Chakma:size=12;3
|
||||||
|
font-22=Noto Sans Cham:size=12;3
|
||||||
|
font-23=Noto Sans Cherokee:size=12;3
|
||||||
|
font-24=Noto Sans Chorasmian:size=12;3
|
||||||
|
font-25=Noto Sans Adlam:size=12;3
|
||||||
|
font-26=Noto Sans Anatolian Hieroglyphs:size=12;3
|
||||||
|
font-27=Noto Sans Arabic:size=12;3
|
||||||
|
font-28=Noto Sans Armenian:size=12;3
|
||||||
|
font-29=Noto Sans Avestan:size=12;3
|
||||||
|
font-30=Noto Sans Elymaic:size=12;3
|
||||||
|
font-31=Noto Sans Coptic:size=12;3
|
||||||
|
font-32=Noto Sans Cuneiform:size=12;3
|
||||||
|
font-33=Noto Sans Cypriot:size=12;3
|
||||||
|
font-34=Noto Sans Cypro Minoan:size=12;3
|
||||||
|
font-35=Noto Sans Deseret:size=12;3
|
||||||
|
font-36=Noto Sans Devanagari:size=12;3
|
||||||
|
font-37=Noto Sans Duployan:size=12;3
|
||||||
|
font-38=Noto Sans Egyptian Hieroglyphs:size=12;3
|
||||||
|
font-39=Noto Sans Elbasan:size=12;3
|
||||||
|
font-40=Noto Sans Hanunoo:size=12;3
|
||||||
|
font-41=Noto Sans Ethiopic:size=12;3
|
||||||
|
font-42=Noto Sans Georgian:size=12;3
|
||||||
|
font-43=Noto Sans Glagolitic:size=12;3
|
||||||
|
font-44=Noto Sans Gothic:size=12;3
|
||||||
|
font-45=Noto Sans Grantha:size=12;3
|
||||||
|
font-46=Noto Sans Gujarati:size=12;3
|
||||||
|
font-47=Noto Sans Gunjala Gondi:size=12;3
|
||||||
|
font-48=Noto Sans Gurmukhi:size=12;3
|
||||||
|
font-49=Noto Sans Hanifi Rohingya:size=12;3
|
||||||
|
font-50=Noto Sans Kawi:size=12;3
|
||||||
|
font-51=Noto Sans Hatran:size=12;3
|
||||||
|
font-52=Noto Sans Hebrew:size=12;3
|
||||||
|
font-53=Noto Sans Imperial Aramaic:size=12;3
|
||||||
|
font-54=Noto Sans Indic Siyaq Numbers:size=12;3
|
||||||
|
font-55=Noto Sans Inscriptional Pahlavi:size=12;3
|
||||||
|
font-56=Noto Sans Inscriptional Parthian:size=12;3
|
||||||
|
font-57=Noto Sans Javanese:size=12;3
|
||||||
|
font-58=Noto Sans Kaithi:size=12;3
|
||||||
|
font-59=Noto Sans Kannada:size=12;3
|
||||||
|
font-60=Noto Sans Linear B:size=12;3
|
||||||
|
font-61=Noto Sans Kayah Li:size=12;3
|
||||||
|
font-62=Noto Sans Kharoshthi:size=12;3
|
||||||
|
font-63=Noto Sans Khmer:size=12;3
|
||||||
|
font-64=Noto Sans Khojki:size=12;3
|
||||||
|
font-65=Noto Sans Khudawadi:size=12;3
|
||||||
|
font-66=Noto Sans Lao:size=12;3
|
||||||
|
font-67=Noto Sans Lepcha:size=12;3
|
||||||
|
font-68=Noto Sans Limbu:size=12;3
|
||||||
|
font-69=Noto Sans Linear A:size=12;3
|
||||||
|
font-70=Noto Sans Math:size=12;3
|
||||||
|
font-71=Noto Sans Lisu:size=12;3
|
||||||
|
font-72=Noto Sans Lycian:size=12;3
|
||||||
|
font-73=Noto Sans Lydian:size=12;3
|
||||||
|
font-74=Noto Sans Mahajani:size=12;3
|
||||||
|
font-75=Noto Sans Malayalam:size=12;3
|
||||||
|
font-76=Noto Sans Mandaic:size=12;3
|
||||||
|
font-77=Noto Sans Manichaean:size=12;3
|
||||||
|
font-78=Noto Sans Marchen:size=12;3
|
||||||
|
font-79=Noto Sans Masaram Gondi:size=12;3
|
||||||
|
font-80=Noto Sans Mono CJK HK:size=12;3
|
||||||
|
font-81=Noto Sans Mayan Numerals:size=12;3
|
||||||
|
font-82=Noto Sans Medefaidrin:size=12;3
|
||||||
|
font-83=Noto Sans Meetei Mayek:size=12;3
|
||||||
|
font-84=Noto Sans Mende Kikakui:size=12;3
|
||||||
|
font-85=Noto Sans Meroitic:size=12;3
|
||||||
|
font-86=Noto Sans Miao:size=12;3
|
||||||
|
font-87=Noto Sans Modi:size=12;3
|
||||||
|
font-88=Noto Sans Mongolian:size=12;3
|
||||||
|
font-89=Noto Sans Mono:size=12;3
|
||||||
|
font-90=Noto Sans Nandinagari:size=12;3
|
||||||
|
font-91=Noto Sans Mono CJK JP:size=12;3
|
||||||
|
font-92=Noto Sans Mono CJK KR:size=12;3
|
||||||
|
font-93=Noto Sans Mono CJK SC:size=12;3
|
||||||
|
font-94=Noto Sans Mono CJK TC:size=12;3
|
||||||
|
font-95=Noto Sans Mro:size=12;3
|
||||||
|
font-96=Noto Sans Multani:size=12;3
|
||||||
|
font-97=Noto Sans Myanmar:size=12;3
|
||||||
|
font-98=Noto Sans Nabataean:size=12;3
|
||||||
|
font-99=Noto Sans Nag Mundari:size=12;3
|
||||||
|
font-100=Noto Sans Old Permic:size=12;3
|
||||||
|
font-101=Noto Sans Newa:size=12;3
|
||||||
|
font-102=Noto Sans New Tai Lue:size=12;3
|
||||||
|
font-103=Noto Sans NKo:size=12;3
|
||||||
|
font-104=Noto Sans Nushu:size=12;3
|
||||||
|
font-105=Noto Sans Ogham:size=12;3
|
||||||
|
font-106=Noto Sans Ol Chiki:size=12;3
|
||||||
|
font-107=Noto Sans Old Hungarian:size=12;3
|
||||||
|
font-108=Noto Sans Old Italic:size=12;3
|
||||||
|
font-109=Noto Sans Old North Arabian:size=12;3
|
||||||
|
font-110=Noto Sans Pau Cin Hau:size=12;3
|
||||||
|
font-111=Noto Sans Old Persian:size=12;3
|
||||||
|
font-112=Noto Sans Old Sogdian:size=12;3
|
||||||
|
font-113=Noto Sans Old South Arabian:size=12;3
|
||||||
|
font-114=Noto Sans Old Turkic:size=12;3
|
||||||
|
font-115=Noto Sans Oriya:size=12;3
|
||||||
|
font-116=Noto Sans Osage:size=12;3
|
||||||
|
font-117=Noto Sans Osmanya:size=12;3
|
||||||
|
font-118=Noto Sans Pahawh Hmong:size=12;3
|
||||||
|
font-119=Noto Sans Palmyrene:size=12;3
|
||||||
|
font-120=Noto Sans Shavian:size=12;3
|
||||||
|
font-121=Noto Sans Phags-Pa:size=12;3
|
||||||
|
font-122=Noto Sans PhagsPa:size=12;3
|
||||||
|
font-123=Noto Sans Phoenician:size=12;3
|
||||||
|
font-124=Noto Sans Psalter Pahlavi:size=12;3
|
||||||
|
font-125=Noto Sans Rejang:size=12;3
|
||||||
|
font-126=Noto Sans Runic:size=12;3
|
||||||
|
font-127=Noto Sans Samaritan:size=12;3
|
||||||
|
font-128=Noto Sans Saurashtra:size=12;3
|
||||||
|
font-129=Noto Sans Sharada:size=12;3
|
||||||
|
font-130=Noto Sans Symbols 2:size=12;3
|
||||||
|
font-131=Noto Sans Siddham:size=12;3
|
||||||
|
font-132=Noto Sans SignWriting:size=12;3
|
||||||
|
font-133=Noto Sans Sinhala:size=12;3
|
||||||
|
font-134=Noto Sans Sogdian:size=12;3
|
||||||
|
font-135=Noto Sans Sora Sompeng:size=12;3
|
||||||
|
font-136=Noto Sans Soyombo:size=12;3
|
||||||
|
font-137=Noto Sans Sundanese:size=12;3
|
||||||
|
font-138=Noto Sans Syloti Nagri:size=12;3
|
||||||
|
font-139=Noto Sans Symbols:size=12;3
|
||||||
|
font-140=Noto Sans Telugu:size=12;3
|
||||||
|
font-141=Noto Sans Syriac:size=12;3
|
||||||
|
font-142=Noto Sans Tagalog:size=12;3
|
||||||
|
font-143=Noto Sans Tagbanwa:size=12;3
|
||||||
|
font-144=Noto Sans Tai Le:size=12;3
|
||||||
|
font-145=Noto Sans Tai Tham:size=12;3
|
||||||
|
font-146=Noto Sans Tai Viet:size=12;3
|
||||||
|
font-147=Noto Sans Takri:size=12;3
|
||||||
|
font-148=Noto Sans Tamil:size=12;3
|
||||||
|
font-149=Noto Sans Tangsa:size=12;3
|
||||||
|
font-150=Noto Sans Warang Citi:size=12;3
|
||||||
|
font-151=Noto Sans Test:size=12;3
|
||||||
|
font-152=Noto Sans Thaana:size=12;3
|
||||||
|
font-153=Noto Sans Thai:size=12;3
|
||||||
|
font-154=Noto Sans Tifinagh:size=12;3
|
||||||
|
font-155=Noto Sans Tirhuta:size=12;3
|
||||||
|
font-156=Noto Sans Ugaritic:size=12;3
|
||||||
|
font-157=Noto Sans Vai:size=12;3
|
||||||
|
font-158=Noto Sans Vithkuqi:size=12;3
|
||||||
|
font-159=Noto Sans Wancho:size=12;3
|
||||||
|
font-160=Noto Sans Yi:size=12;3
|
||||||
|
|
||||||
|
[module/alsa]
|
||||||
|
type=internal/alsa
|
||||||
|
master-soundcard=default
|
||||||
|
speaker-soundcard=default
|
||||||
|
headphone-soundcard=default
|
||||||
|
master-mixer=Master
|
||||||
|
interval=5
|
||||||
|
format-volume=<label-volume>
|
||||||
|
format-muted=<label-muted>
|
||||||
|
label-muted= %percentage%
|
||||||
|
label-volume= %percentage%
|
||||||
|
click-right=exec pavucontrol
|
||||||
|
|
||||||
|
[module/bspwm]
|
||||||
|
type=internal/bspwm
|
||||||
|
pin-workspaces=true
|
||||||
|
inline-mode=true
|
||||||
|
enable-click=true
|
||||||
|
enable-scroll=false
|
||||||
|
reverse-scroll=false
|
||||||
|
occupied-scroll=true
|
||||||
|
|
||||||
|
ws-icon-1=1;1
|
||||||
|
ws-icon-2=2;2
|
||||||
|
ws-icon-3=3;3
|
||||||
|
ws-icon-4=4;4
|
||||||
|
ws-icon-5=5;5
|
||||||
|
ws-icon-6=6;6
|
||||||
|
ws-icon-7=7;7
|
||||||
|
ws-icon-8=8;8
|
||||||
|
ws-icon-9=9;9
|
||||||
|
ws-icon-10=10;10
|
||||||
|
|
||||||
|
format=<label-state>
|
||||||
|
|
||||||
|
label-empty=%name%
|
||||||
|
label-empty-background=${config.lib.stylix.colors.base03}
|
||||||
|
label-empty-foreground=${config.lib.stylix.colors.base00}
|
||||||
|
label-empty-padding=5pt
|
||||||
|
|
||||||
|
label-focused=%name%
|
||||||
|
label-focused-background=${config.lib.stylix.colors.base09}
|
||||||
|
label-focused-foreground=${config.lib.stylix.colors.base00}
|
||||||
|
label-focused-padding=5pt
|
||||||
|
|
||||||
|
label-occupied=%name%
|
||||||
|
label-occupied-background=${config.lib.stylix.colors.base04}
|
||||||
|
label-occupied-foreground=${config.lib.stylix.colors.base00}
|
||||||
|
label-occupied-padding=5pt
|
||||||
|
|
||||||
|
label-urgent=%name%
|
||||||
|
label-urgent-background=${config.lib.stylix.colors.base08}
|
||||||
|
label-urgent-foreground=${config.lib.stylix.colors.base00}
|
||||||
|
label-urgent-padding=5pt
|
||||||
|
|
||||||
|
label-separator=" "
|
||||||
|
label-separator-foreground=${config.lib.stylix.colors.base00}
|
||||||
|
label-separator-padding=0
|
||||||
|
|
||||||
|
[module/cpu]
|
||||||
|
type=internal/cpu
|
||||||
|
interval=1
|
||||||
|
warn-percentage=95
|
||||||
|
label=CPU %percentage%%
|
||||||
|
label-warn=CPU %percentage%%
|
||||||
|
|
||||||
|
[module/memory]
|
||||||
|
interval=5
|
||||||
|
label=RAM: %gb_used% + %gb_swap_used%
|
||||||
|
type=internal/memory
|
||||||
|
|
||||||
|
[module/rofi]
|
||||||
|
type=custom/text
|
||||||
|
click-left=exec rofi -show drun -show-icons
|
||||||
|
click-right=exec rofi -show powermenu -modi powermenu:${pkgs.rofi-power-menu}/bin/rofi-power-menu
|
||||||
|
label=" "
|
||||||
|
|
||||||
|
[module/time]
|
||||||
|
type=internal/date
|
||||||
|
interval=1
|
||||||
|
date=%d %B %Y
|
||||||
|
date-alt=%d-%m-%Y
|
||||||
|
time=%H:%M:%S
|
||||||
|
time-alt=%H:%M
|
||||||
|
label=%date% %time%
|
||||||
|
|
||||||
|
[module/title]
|
||||||
|
type=internal/xwindow
|
||||||
|
label=%title%
|
||||||
|
label-maxlen=40
|
||||||
|
label-foreground=${config.lib.stylix.colors.base07}
|
||||||
|
|
||||||
|
[module/tray]
|
||||||
|
type=internal/tray
|
||||||
|
format=<tray>
|
||||||
|
tray-spacing=8px
|
||||||
|
tray-size=90%
|
||||||
|
|
||||||
|
[module/xkeyboard]
|
||||||
|
type=internal/xkeyboard
|
||||||
|
format=<label-layout>
|
||||||
|
label-layout=%icon%
|
||||||
|
layout-icon-0=ru;RU
|
||||||
|
layout-icon-1=us;EN
|
||||||
'';
|
'';
|
||||||
|
|
||||||
settings = { # Или переимоневать в "config"? Не понял в чём разница
|
|
||||||
"bar/bottom" = {
|
|
||||||
monitor = "\${env:MONITOR:}";
|
|
||||||
# monitor-strict = false;
|
|
||||||
# monitor-exact = true;
|
|
||||||
|
|
||||||
bottom = true;
|
|
||||||
fixed-center = true;
|
|
||||||
enable-ipc = true;
|
|
||||||
double-click-interval = 400;
|
|
||||||
offset-x = 0;
|
|
||||||
offset-y = 0;
|
|
||||||
|
|
||||||
width = "100%";
|
|
||||||
height = "16pt";
|
|
||||||
radius = 0;
|
|
||||||
dpi = 0;
|
|
||||||
background = config.lib.stylix.colors.base00;
|
|
||||||
foreground = config.lib.stylix.colors.base07;
|
|
||||||
border-color = config.lib.stylix.colors.base00;
|
|
||||||
border-size = "4pt";
|
|
||||||
module-margin = "4pt";
|
|
||||||
separator = "|";
|
|
||||||
separator-foreground = config.lib.stylix.colors.base0F;
|
|
||||||
|
|
||||||
modules-left = "bspwm title";
|
|
||||||
modules-center = "time";
|
|
||||||
modules-right = "cpu memory alsa tray xkeyboard rofi";
|
|
||||||
wm-restack = "bspwm";
|
|
||||||
|
|
||||||
font-0 = "NotoSans Nerd Font:style=Regular:size=12;3";
|
|
||||||
font-1 = "Noto Color Emoji:style=Regular:pixelsize=12;3";
|
|
||||||
|
|
||||||
# Я проклинал пидарасов, которые не могут юзать все Noto Sans при указании этого шрифта
|
|
||||||
font-2 = "Noto Sans:size=12;3";
|
|
||||||
font-3 = "Noto Sans CJK HK:size=12;3";
|
|
||||||
font-4 = "Noto Sans CJK JP:size=12;3";
|
|
||||||
font-5 = "Noto Sans CJK KR:size=12;3";
|
|
||||||
font-6 = "Noto Sans CJK SC:size=12;3";
|
|
||||||
font-7 = "Noto Sans CJK TC:size=12;3";
|
|
||||||
font-8 = "Noto Sans Balinese:size=12;3";
|
|
||||||
font-9 = "Noto Sans Bamum:size=12;3";
|
|
||||||
font-10 = "Noto Sans Zanabazar Square:size=12;3";
|
|
||||||
font-11 = "Noto Sans Bassa Vah:size=12;3";
|
|
||||||
font-12 = "Noto Sans Batak:size=12;3";
|
|
||||||
font-13 = "Noto Sans Bengali:size=12;3";
|
|
||||||
font-14 = "Noto Sans Bhaiksuki:size=12;3";
|
|
||||||
font-15 = "Noto Sans Brahmi:size=12;3";
|
|
||||||
font-16 = "Noto Sans Buginese:size=12;3";
|
|
||||||
font-17 = "Noto Sans Buhid:size=12;3";
|
|
||||||
font-18 = "Noto Sans Canadian Aboriginal:size=12;3";
|
|
||||||
font-19 = "Noto Sans Carian:size=12;3";
|
|
||||||
font-20 = "Noto Sans Caucasian Albanian:size=12;3";
|
|
||||||
font-21 = "Noto Sans Chakma:size=12;3";
|
|
||||||
font-22 = "Noto Sans Cham:size=12;3";
|
|
||||||
font-23 = "Noto Sans Cherokee:size=12;3";
|
|
||||||
font-24 = "Noto Sans Chorasmian:size=12;3";
|
|
||||||
font-25 = "Noto Sans Adlam:size=12;3";
|
|
||||||
font-26 = "Noto Sans Anatolian Hieroglyphs:size=12;3";
|
|
||||||
font-27 = "Noto Sans Arabic:size=12;3";
|
|
||||||
font-28 = "Noto Sans Armenian:size=12;3";
|
|
||||||
font-29 = "Noto Sans Avestan:size=12;3";
|
|
||||||
font-30 = "Noto Sans Elymaic:size=12;3";
|
|
||||||
font-31 = "Noto Sans Coptic:size=12;3";
|
|
||||||
font-32 = "Noto Sans Cuneiform:size=12;3";
|
|
||||||
font-33 = "Noto Sans Cypriot:size=12;3";
|
|
||||||
font-34 = "Noto Sans Cypro Minoan:size=12;3";
|
|
||||||
font-35 = "Noto Sans Deseret:size=12;3";
|
|
||||||
font-36 = "Noto Sans Devanagari:size=12;3";
|
|
||||||
font-37 = "Noto Sans Duployan:size=12;3";
|
|
||||||
font-38 = "Noto Sans Egyptian Hieroglyphs:size=12;3";
|
|
||||||
font-39 = "Noto Sans Elbasan:size=12;3";
|
|
||||||
font-40 = "Noto Sans Hanunoo:size=12;3";
|
|
||||||
font-41 = "Noto Sans Ethiopic:size=12;3";
|
|
||||||
font-42 = "Noto Sans Georgian:size=12;3";
|
|
||||||
font-43 = "Noto Sans Glagolitic:size=12;3";
|
|
||||||
font-44 = "Noto Sans Gothic:size=12;3";
|
|
||||||
font-45 = "Noto Sans Grantha:size=12;3";
|
|
||||||
font-46 = "Noto Sans Gujarati:size=12;3";
|
|
||||||
font-47 = "Noto Sans Gunjala Gondi:size=12;3";
|
|
||||||
font-48 = "Noto Sans Gurmukhi:size=12;3";
|
|
||||||
font-49 = "Noto Sans Hanifi Rohingya:size=12;3";
|
|
||||||
font-50 = "Noto Sans Kawi:size=12;3";
|
|
||||||
font-51 = "Noto Sans Hatran:size=12;3";
|
|
||||||
font-52 = "Noto Sans Hebrew:size=12;3";
|
|
||||||
font-53 = "Noto Sans Imperial Aramaic:size=12;3";
|
|
||||||
font-54 = "Noto Sans Indic Siyaq Numbers:size=12;3";
|
|
||||||
font-55 = "Noto Sans Inscriptional Pahlavi:size=12;3";
|
|
||||||
font-56 = "Noto Sans Inscriptional Parthian:size=12;3";
|
|
||||||
font-57 = "Noto Sans Javanese:size=12;3";
|
|
||||||
font-58 = "Noto Sans Kaithi:size=12;3";
|
|
||||||
font-59 = "Noto Sans Kannada:size=12;3";
|
|
||||||
font-60 = "Noto Sans Linear B:size=12;3";
|
|
||||||
font-61 = "Noto Sans Kayah Li:size=12;3";
|
|
||||||
font-62 = "Noto Sans Kharoshthi:size=12;3";
|
|
||||||
font-63 = "Noto Sans Khmer:size=12;3";
|
|
||||||
font-64 = "Noto Sans Khojki:size=12;3";
|
|
||||||
font-65 = "Noto Sans Khudawadi:size=12;3";
|
|
||||||
font-66 = "Noto Sans Lao:size=12;3";
|
|
||||||
font-67 = "Noto Sans Lepcha:size=12;3";
|
|
||||||
font-68 = "Noto Sans Limbu:size=12;3";
|
|
||||||
font-69 = "Noto Sans Linear A:size=12;3";
|
|
||||||
font-70 = "Noto Sans Math:size=12;3";
|
|
||||||
font-71 = "Noto Sans Lisu:size=12;3";
|
|
||||||
font-72 = "Noto Sans Lycian:size=12;3";
|
|
||||||
font-73 = "Noto Sans Lydian:size=12;3";
|
|
||||||
font-74 = "Noto Sans Mahajani:size=12;3";
|
|
||||||
font-75 = "Noto Sans Malayalam:size=12;3";
|
|
||||||
font-76 = "Noto Sans Mandaic:size=12;3";
|
|
||||||
font-77 = "Noto Sans Manichaean:size=12;3";
|
|
||||||
font-78 = "Noto Sans Marchen:size=12;3";
|
|
||||||
font-79 = "Noto Sans Masaram Gondi:size=12;3";
|
|
||||||
font-80 = "Noto Sans Mono CJK HK:size=12;3";
|
|
||||||
font-81 = "Noto Sans Mayan Numerals:size=12;3";
|
|
||||||
font-82 = "Noto Sans Medefaidrin:size=12;3";
|
|
||||||
font-83 = "Noto Sans Meetei Mayek:size=12;3";
|
|
||||||
font-84 = "Noto Sans Mende Kikakui:size=12;3";
|
|
||||||
font-85 = "Noto Sans Meroitic:size=12;3";
|
|
||||||
font-86 = "Noto Sans Miao:size=12;3";
|
|
||||||
font-87 = "Noto Sans Modi:size=12;3";
|
|
||||||
font-88 = "Noto Sans Mongolian:size=12;3";
|
|
||||||
font-89 = "Noto Sans Mono:size=12;3";
|
|
||||||
font-90 = "Noto Sans Nandinagari:size=12;3";
|
|
||||||
font-91 = "Noto Sans Mono CJK JP:size=12;3";
|
|
||||||
font-92 = "Noto Sans Mono CJK KR:size=12;3";
|
|
||||||
font-93 = "Noto Sans Mono CJK SC:size=12;3";
|
|
||||||
font-94 = "Noto Sans Mono CJK TC:size=12;3";
|
|
||||||
font-95 = "Noto Sans Mro:size=12;3";
|
|
||||||
font-96 = "Noto Sans Multani:size=12;3";
|
|
||||||
font-97 = "Noto Sans Myanmar:size=12;3";
|
|
||||||
font-98 = "Noto Sans Nabataean:size=12;3";
|
|
||||||
font-99 = "Noto Sans Nag Mundari:size=12;3";
|
|
||||||
font-100 = "Noto Sans Old Permic:size=12;3";
|
|
||||||
font-101 = "Noto Sans Newa:size=12;3";
|
|
||||||
font-102 = "Noto Sans New Tai Lue:size=12;3";
|
|
||||||
font-103 = "Noto Sans NKo:size=12;3";
|
|
||||||
font-104 = "Noto Sans Nushu:size=12;3";
|
|
||||||
font-105 = "Noto Sans Ogham:size=12;3";
|
|
||||||
font-106 = "Noto Sans Ol Chiki:size=12;3";
|
|
||||||
font-107 = "Noto Sans Old Hungarian:size=12;3";
|
|
||||||
font-108 = "Noto Sans Old Italic:size=12;3";
|
|
||||||
font-109 = "Noto Sans Old North Arabian:size=12;3";
|
|
||||||
font-110 = "Noto Sans Pau Cin Hau:size=12;3";
|
|
||||||
font-111 = "Noto Sans Old Persian:size=12;3";
|
|
||||||
font-112 = "Noto Sans Old Sogdian:size=12;3";
|
|
||||||
font-113 = "Noto Sans Old South Arabian:size=12;3";
|
|
||||||
font-114 = "Noto Sans Old Turkic:size=12;3";
|
|
||||||
font-115 = "Noto Sans Oriya:size=12;3";
|
|
||||||
font-116 = "Noto Sans Osage:size=12;3";
|
|
||||||
font-117 = "Noto Sans Osmanya:size=12;3";
|
|
||||||
font-118 = "Noto Sans Pahawh Hmong:size=12;3";
|
|
||||||
font-119 = "Noto Sans Palmyrene:size=12;3";
|
|
||||||
font-120 = "Noto Sans Shavian:size=12;3";
|
|
||||||
font-121 = "Noto Sans Phags\-Pa:size=12;3";
|
|
||||||
font-122 = "Noto Sans PhagsPa:size=12;3";
|
|
||||||
font-123 = "Noto Sans Phoenician:size=12;3";
|
|
||||||
font-124 = "Noto Sans Psalter Pahlavi:size=12;3";
|
|
||||||
font-125 = "Noto Sans Rejang:size=12;3";
|
|
||||||
font-126 = "Noto Sans Runic:size=12;3";
|
|
||||||
font-127 = "Noto Sans Samaritan:size=12;3";
|
|
||||||
font-128 = "Noto Sans Saurashtra:size=12;3";
|
|
||||||
font-129 = "Noto Sans Sharada:size=12;3";
|
|
||||||
font-130 = "Noto Sans Symbols 2:size=12;3";
|
|
||||||
font-131 = "Noto Sans Siddham:size=12;3";
|
|
||||||
font-132 = "Noto Sans SignWriting:size=12;3";
|
|
||||||
font-133 = "Noto Sans Sinhala:size=12;3";
|
|
||||||
font-134 = "Noto Sans Sogdian:size=12;3";
|
|
||||||
font-135 = "Noto Sans Sora Sompeng:size=12;3";
|
|
||||||
font-136 = "Noto Sans Soyombo:size=12;3";
|
|
||||||
font-137 = "Noto Sans Sundanese:size=12;3";
|
|
||||||
font-138 = "Noto Sans Syloti Nagri:size=12;3";
|
|
||||||
font-139 = "Noto Sans Symbols:size=12;3";
|
|
||||||
font-140 = "Noto Sans Telugu:size=12;3";
|
|
||||||
font-141 = "Noto Sans Syriac:size=12;3";
|
|
||||||
font-142 = "Noto Sans Tagalog:size=12;3";
|
|
||||||
font-143 = "Noto Sans Tagbanwa:size=12;3";
|
|
||||||
font-144 = "Noto Sans Tai Le:size=12;3";
|
|
||||||
font-145 = "Noto Sans Tai Tham:size=12;3";
|
|
||||||
font-146 = "Noto Sans Tai Viet:size=12;3";
|
|
||||||
font-147 = "Noto Sans Takri:size=12;3";
|
|
||||||
font-148 = "Noto Sans Tamil:size=12;3";
|
|
||||||
font-149 = "Noto Sans Tangsa:size=12;3";
|
|
||||||
font-150 = "Noto Sans Warang Citi:size=12;3";
|
|
||||||
font-151 = "Noto Sans Test:size=12;3";
|
|
||||||
font-152 = "Noto Sans Thaana:size=12;3";
|
|
||||||
font-153 = "Noto Sans Thai:size=12;3";
|
|
||||||
font-154 = "Noto Sans Tifinagh:size=12;3";
|
|
||||||
font-155 = "Noto Sans Tirhuta:size=12;3";
|
|
||||||
font-156 = "Noto Sans Ugaritic:size=12;3";
|
|
||||||
font-157 = "Noto Sans Vai:size=12;3";
|
|
||||||
font-158 = "Noto Sans Vithkuqi:size=12;3";
|
|
||||||
font-159 = "Noto Sans Wancho:size=12;3";
|
|
||||||
font-161 = "Noto Sans Yi:size=12;3";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/rofi" = {
|
|
||||||
type = "custom/text";
|
|
||||||
click-left = "exec rofi -show drun -show-icons";
|
|
||||||
label = " ";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/bspwm" = {
|
|
||||||
type = "internal/bspwm";
|
|
||||||
pin-workspaces = true;
|
|
||||||
inline-mode = true;
|
|
||||||
enable-click = true;
|
|
||||||
enable-scroll = false;
|
|
||||||
reverse-scroll = false;
|
|
||||||
occupied-scroll = true;
|
|
||||||
|
|
||||||
ws-icon-1 = "1;1";
|
|
||||||
ws-icon-2 = "2;2";
|
|
||||||
ws-icon-3 = "3;3";
|
|
||||||
ws-icon-4 = "4;4";
|
|
||||||
ws-icon-5 = "5;5";
|
|
||||||
ws-icon-6 = "6;6";
|
|
||||||
ws-icon-7 = "7;7";
|
|
||||||
ws-icon-8 = "8;8";
|
|
||||||
ws-icon-9 = "9;9";
|
|
||||||
ws-icon-10 = "10;10";
|
|
||||||
|
|
||||||
format = "<label-state>";
|
|
||||||
|
|
||||||
label-empty = "%name%";
|
|
||||||
label-empty-foreground = config.lib.stylix.colors.base00;
|
|
||||||
label-empty-background= config.lib.stylix.colors.base03;
|
|
||||||
label-empty-padding = "5pt";
|
|
||||||
|
|
||||||
label-focused = "%name%";
|
|
||||||
label-focused-foreground = config.lib.stylix.colors.base00;
|
|
||||||
label-focused-background= config.lib.stylix.colors.base09;
|
|
||||||
label-focused-padding = "5pt";
|
|
||||||
|
|
||||||
label-occupied = "%name%";
|
|
||||||
label-occupied-foreground = config.lib.stylix.colors.base00;
|
|
||||||
label-occupied-background= config.lib.stylix.colors.base04;
|
|
||||||
label-occupied-padding = "5pt";
|
|
||||||
|
|
||||||
label-urgent = "%name%";
|
|
||||||
label-urgent-foreground = config.lib.stylix.colors.base00;
|
|
||||||
label-urgent-background= config.lib.stylix.colors.base08;
|
|
||||||
label-urgent-padding = "5pt";
|
|
||||||
|
|
||||||
label-separator = " ";
|
|
||||||
label-separator-padding = 0;
|
|
||||||
label-separator-foreground = config.lib.stylix.colors.base00;
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/title" = {
|
|
||||||
type = "internal/xwindow";
|
|
||||||
label = "%title%";
|
|
||||||
label-maxlen = 40;
|
|
||||||
label-foreground = config.lib.stylix.colors.base07;
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/time" = {
|
|
||||||
type = "internal/date";
|
|
||||||
interval = 1;
|
|
||||||
date = "%d %B %Y";
|
|
||||||
time = "%H:%M:%S";
|
|
||||||
date-alt = "%d-%m-%Y";
|
|
||||||
time-alt = "%H:%M";
|
|
||||||
label = "%date% %time%";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/xkeyboard" = {
|
|
||||||
type = "internal/xkeyboard";
|
|
||||||
format = "<label-layout>";
|
|
||||||
label-layout = "%icon%";
|
|
||||||
layout-icon-0 = "ru;RU";
|
|
||||||
layout-icon-1 = "us;EN";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/tray" = {
|
|
||||||
type = "internal/tray";
|
|
||||||
format = "<tray>";
|
|
||||||
tray-spacing = "8px";
|
|
||||||
tray-size = "90%";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/alsa" = {
|
|
||||||
type = "internal/alsa";
|
|
||||||
master-soundcard = "default";
|
|
||||||
speaker-soundcard = "default";
|
|
||||||
headphone-soundcard = "default";
|
|
||||||
master-mixer = "Master";
|
|
||||||
interval = 5;
|
|
||||||
format-volume = "<label-volume>";
|
|
||||||
format-muted = "<label-muted>";
|
|
||||||
label-volume = " %percentage%";
|
|
||||||
label-muted = " %percentage%";
|
|
||||||
click-right = "exec pavucontrol";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/memory" = {
|
|
||||||
type = "internal/memory";
|
|
||||||
interval = 5;
|
|
||||||
label = "RAM: %gb_used% + %gb_swap_used%";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/cpu" = {
|
|
||||||
type = "internal/cpu";
|
|
||||||
interval = 1;
|
|
||||||
warn-percentage = 95;
|
|
||||||
label = "CPU %percentage%%";
|
|
||||||
label-warn = "CPU %percentage%%";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,144 +1,253 @@
|
||||||
|
# Бинды системы https://manpages.org/sxhkd
|
||||||
|
|
||||||
# Можно запускать софт через "${pkgs.betterlockscreen}/bin/betterlockscreen -l dimblur";
|
# Можно запускать софт через "${pkgs.betterlockscreen}/bin/betterlockscreen -l dimblur";
|
||||||
# Но мне лень столько текста делать. И так сойдёт
|
# Но мне лень столько текста делать. И так сойдёт
|
||||||
# Стандартный конфиг https://github.com/baskerville/bspwm/blob/master/examples/sxhkdrc
|
# Стандартный конфиг https://github.com/baskerville/bspwm/blob/master/examples/sxhkdrc
|
||||||
|
|
||||||
let
|
{ pkgs, ... }: let
|
||||||
notifyMute = ''dunstify -a "$(if [ "$(pamixer --get-mute)" = "true" ]; then echo " Muted"; else echo " Unmuted"; fi)" -r 91190 -t 8000'';
|
notifyMute = ''dunstify "$(if [ "$(pamixer --get-mute)" = "true" ]; then echo " Muted"; else echo " Unmuted"; fi)" -r 91190 -t 8000'';
|
||||||
notifyMicMute = ''dunstify -a "$(if [ "$(pamixer --default-source --get-mute)" = "true" ]; then echo " Muted"; else echo " Unmuted"; fi)" -r 91190 -t 8000'';
|
notifyMicMute = ''dunstify "$(if [ "$(pamixer --default-source --get-mute)" = "true" ]; then echo " Muted"; else echo " Unmuted"; fi)" -r 91190 -t 8000'';
|
||||||
notifyVolume = ''dunstify -a " Volume: $(pamixer --get-volume)" -r 91190 -t 800'';
|
notifyVolume = ''dunstify " Volume: $(pamixer --get-volume)" -r 91190 -t 800'';
|
||||||
# notifyMute = ''dunstify "t2" -a "$(if [ "$(pamixer --get-mute)" = "true" ]; then echo " Muted"; else echo " Unmuted"; fi)" -r 91190 -t 8000'';
|
|
||||||
# notifyMicMute = ''dunstify "t2" -a "$(if [ "$(pamixer --default-source --get-mute)" = "true" ]; then echo " Muted"; else echo " Unmuted"; fi)" -r 91190 -t 8000'';
|
|
||||||
# notifyVolume = ''dunstify "t2" -a " Volume: $(pamixer --get-volume)" -r 91190 -t 800'';
|
|
||||||
# Если указать "t2" перед "-a", то заголовок будет огромным.
|
|
||||||
# -r 91190: Это идентификатор уведомления (notification ID). Уведомления с одинаковым ID будут заменять друг друга.
|
# -r 91190: Это идентификатор уведомления (notification ID). Уведомления с одинаковым ID будут заменять друг друга.
|
||||||
# -t 800: Это время в миллисекундах, через которое уведомление будет автоматически закрыто.
|
# -t 800: Это время в миллисекундах, через которое уведомление будет автоматически закрыто.
|
||||||
|
|
||||||
terminalFirst = "alacritty";
|
terminalFirst = "alacritty";
|
||||||
terminalSecond = "kitty";
|
terminalSecond = "kitty";
|
||||||
in {
|
in {
|
||||||
services.sxhkd = { # Бинды системы https://manpages.org/sxhkd
|
home.package = [ sxhkd ];
|
||||||
enable = true;
|
|
||||||
|
|
||||||
keybindings = {
|
xdg.configFile."sxhkd/sxhkdrc" = {
|
||||||
|
# executable = true;
|
||||||
|
text = ''
|
||||||
#########################################################
|
#########################################################
|
||||||
## bspwm (описание параметров есть в файле "bspwm.md") ##
|
## bspwm (описание параметров есть в файле "bspwm.md") ##
|
||||||
#########################################################
|
#########################################################
|
||||||
|
|
||||||
"super + shift + ctrl + r" = "pkill -USR1 -x sxhkd; dunstify \"t2\" -a \" Sxhkd reloaded\""; # Make sxhkd reload its config files
|
# Make sxhkd reload its config files
|
||||||
"super + shift + ctrl + alt + {q,r}" = "bspc {quit,wm -r}"; # Quit/Restart bspwm
|
super + shift + ctrl + r
|
||||||
|
pkill -USR1 -x sxhkd; dunstify "t2" -a " Sxhkd reloaded"
|
||||||
|
|
||||||
# "super + return" = "bspc desktop -l next"; # Fullscreen toggle (немного не тот)
|
# Quit/Restart bspwm
|
||||||
# "super + ctrl + {m,x,y,z}" = "bspc node -g {marked,locked,sticky,private}"; # Set the node flags
|
super + shift + ctrl + alt + {q,r}
|
||||||
|
bspc {quit,wm -r}
|
||||||
|
|
||||||
"super + l" = "betterlockscreen -l dimblur"; # Lock screen
|
# Fullscreen toggle (немного не тот)
|
||||||
"super + q" = "bspc node -c"; # Quit. Закрыть приложение
|
# super + Return
|
||||||
"super + shift + q" = "bspc node -k"; # Kill. Убить приложение, если оно не отвечает
|
# bspc desktop -l next
|
||||||
"super + f" = "bspc node -t ~floating"; # Floating toggle
|
|
||||||
"super + shift + f" = "bspc node -t ~tiled"; # Tiled toggle
|
# Set the node flags
|
||||||
"super + Return" = "bspc node -t ~fullscreen"; # Fullscreen toggle
|
# super + ctrl + {m,x,y,z}
|
||||||
|
# bspc node -g {marked,locked,sticky,private}
|
||||||
|
|
||||||
|
# Lock screen
|
||||||
|
super + l
|
||||||
|
betterlockscreen -l dimblur
|
||||||
|
|
||||||
|
# Quit. Закрыть приложение
|
||||||
|
super + q
|
||||||
|
bspc node -c
|
||||||
|
|
||||||
|
# Kill. Убить приложение, если оно не отвечает
|
||||||
|
super + shift + q
|
||||||
|
bspc node -k
|
||||||
|
|
||||||
|
# Floating toggle
|
||||||
|
super + f
|
||||||
|
bspc node -t ~floating
|
||||||
|
|
||||||
|
# Tiled toggle
|
||||||
|
super + shift + f
|
||||||
|
bspc node -t ~tiled
|
||||||
|
|
||||||
|
# Fullscreen toggle
|
||||||
|
super + Return
|
||||||
|
bspc node -t ~fullscreen
|
||||||
|
|
||||||
# Перекидывает активное окно на предыдущий/следующий воркспейс и следует за ним
|
# Перекидывает активное окно на предыдущий/следующий воркспейс и следует за ним
|
||||||
"super + ctrl + alt + {Left,Right}" = "bspc node -d {prev,next}.local --follow";
|
super + ctrl + alt + {Left,Right}
|
||||||
|
bspc node -d {prev,next}.local --follow
|
||||||
|
|
||||||
# Менять фокус приложения в указанном направлении
|
# Менять фокус приложения в указанном направлении
|
||||||
"super + {Left,Down,Up,Right}" = "bspc node -f {west,south,north,east}";
|
super + {Left,Down,Up,Right}
|
||||||
|
bspc node -f {west,south,north,east}
|
||||||
|
|
||||||
# Move a floating window
|
# Move a floating window
|
||||||
"super + alt + {Left,Down,Up,Right}" = "bspc node -v {-30 0,0 30,0 -30,30 0}";
|
super + alt + {Left,Down,Up,Right}
|
||||||
|
bspc node -v {-30 0,0 30,0 -30,30 0}
|
||||||
|
|
||||||
# Свапает активное окно с самым большим на экране
|
# Свапает активное окно с самым большим на экране
|
||||||
"super + ctrl + alt + Down" = "bspc node -s biggest.window --follow";
|
super + ctrl + alt + Down
|
||||||
|
bspc node -s biggest.window --follow
|
||||||
|
|
||||||
# Перемещает активное окно в указанном направлении (либо -s, чтоб менять соседние окна местами)
|
# Перемещает активное окно в указанном направлении (либо -s, чтоб менять соседние окна местами)
|
||||||
"super + shift + ctrl + {Left,Down,Up,Right}" = "bspc node -n {west,south,north,east}.window --follow";
|
super + shift + ctrl + {Left,Down,Up,Right}
|
||||||
|
bspc node -n {west,south,north,east}.window --follow
|
||||||
|
|
||||||
# Expand a window by moving one of its side outward
|
# Expand a window by moving one of its side outward
|
||||||
"super + shift + {Left,Down,Up,Right}" = "bspc node -z {left -30 0,bottom 0 30,top 0 -30,right 30 0}";
|
super + shift + {Left,Down,Up,Right}
|
||||||
|
bspc node -z {left -30 0,bottom 0 30,top 0 -30,right 30 0}
|
||||||
|
|
||||||
# Contract a window by moving one of its side inward
|
# Contract a window by moving one of its side inward
|
||||||
"super + shift + alt + {Left,Down,Up,Right}" = "bspc node -z {right -30 0,top 0 30,bottom 0 -30,left 30 0}";
|
super + shift + alt + {Left,Down,Up,Right}
|
||||||
|
bspc node -z {right -30 0,top 0 30,bottom 0 -30,left 30 0}
|
||||||
|
|
||||||
# Переключает на предыдущий/следующий воркспейс внутри одного монитора.
|
# Переключает на предыдущий/следующий воркспейс внутри одного монитора.
|
||||||
"super + ctrl + {Left,Right}" = "bspc desktop -f {prev,next}.local";
|
super + ctrl + {Left,Right}
|
||||||
|
bspc desktop -f {prev,next}.local
|
||||||
|
|
||||||
# Прошлый воркспейс внутри одного монитора.
|
# Прошлый воркспейс внутри одного монитора.
|
||||||
"super + Escape" = "bspc desktop -f last.local";
|
super + Escape
|
||||||
|
bspc desktop -f last.local
|
||||||
|
|
||||||
# Focus or send to the given desktop
|
# Focus or send to the given desktop
|
||||||
"super + {_,shift + }{1-9,0}" = "bspc {desktop -f,node -d} {1-9,10}.local";
|
super + {_,shift + }{1-9,0}
|
||||||
|
bspc {desktop -f,node -d} {1-9,10}.local
|
||||||
|
|
||||||
# Переключает на первый пустой воркспейс
|
# Переключает на первый пустой воркспейс
|
||||||
"super + ctrl + Down" = "bspc desktop -f next.!occupied";
|
super + ctrl + Down
|
||||||
|
bspc desktop -f next.!occupied
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Меняет позиционирование с горизонтального на вертикальный и обратно. Мб надо -R
|
# Меняет позиционирование с горизонтального на вертикальный и обратно. Мб надо -R
|
||||||
# (хуй, и то и то требует аргументы, а не делает toggle, и даже с аргументами нихуя не работает)
|
# (хуй, и то и то требует аргументы, а не делает toggle, и даже с аргументами нихуя не работает)
|
||||||
# "super + s" = "bspc node -F";
|
# super + s
|
||||||
|
# bspc node -F
|
||||||
|
|
||||||
|
|
||||||
##########
|
##########
|
||||||
## rofi ##
|
## rofi ##
|
||||||
##########
|
##########
|
||||||
|
|
||||||
"super + a" = "rofi -show drun -show-icons"; # Applications. Запускатор софта
|
# Applications. Запускатор софта
|
||||||
"super + c" = "rofi -show calc -modi calc -no-show-match -no-sort"; # Calculator имбовый. Можно даже написать `5600 USD to BTC` или `500 + 25%`.
|
super + a
|
||||||
"super + p" = "rofi-pass"; # Passwords. Пароли из утилиты pass
|
rofi -show drun -show-icons
|
||||||
"super + v" = "clipmenu"; # История буфера обмена. Как ctrl+v, но через win.
|
|
||||||
#"super + tab" = ""; # Как alt+tab, переключение окон. На нужный воркспейс само перекинет
|
# Calculator имбовый. Можно даже написать `5600 USD to BTC` или `500 + 25%`.
|
||||||
#"super + alt + t" = ""; # Timer. Думаю сделать через утилиту timer
|
super + c
|
||||||
#"super + shift + n" = ""; # Notification history. История оповещений. Мб не делать
|
rofi -show calc -modi calc -no-show-match -no-sort
|
||||||
#"super + backspace" = ""; # PowerMenu. Выключение пк
|
|
||||||
|
# Passwords. Пароли из утилиты pass
|
||||||
|
super + p
|
||||||
|
rofi-pass
|
||||||
|
|
||||||
|
# История буфера обмена. Как ctrl+v, но через win.
|
||||||
|
super + v
|
||||||
|
clipmenu
|
||||||
|
|
||||||
|
# Как alt+tab, переключение окон. На нужный воркспейс само перекинет
|
||||||
|
super + tab
|
||||||
|
rofi -show window -show-icons
|
||||||
|
|
||||||
|
# PowerMenu. Выключение пк
|
||||||
|
super + BackSpace
|
||||||
|
rofi -show powermenu -modi powermenu:${pkgs.rofi-power-menu}/bin/rofi-power-menu
|
||||||
|
|
||||||
|
# Timer. Думаю сделать через утилиту timer
|
||||||
|
# super + alt + t
|
||||||
|
# команда
|
||||||
|
|
||||||
|
# Notification history. История оповещений. Мб не делать
|
||||||
|
# super + shift + n
|
||||||
|
# команда
|
||||||
|
|
||||||
##################
|
##################
|
||||||
## applications ##
|
## applications ##
|
||||||
##################
|
##################
|
||||||
|
|
||||||
"super + b" = "librewolf"; # Browser LibreWolf. Основа
|
# Browser LibreWolf. Основа
|
||||||
"super + shift + b" = "firefox"; # Browser Firefox. Паблик активность
|
super + b
|
||||||
"super + shift + ctrl + b" = "chromium"; # Browser Chromium. Пусть будет
|
librewolf
|
||||||
"super + n" = "obsidian"; # Note taking app (obsidian)
|
|
||||||
"super + e" = "thunar"; # Explorer. Thunar file manager
|
# Browser Firefox. Паблик активность
|
||||||
"super + i" = "code"; # IDE, text editor
|
super + shift + b
|
||||||
"super + m" = "${terminalFirst} -e btop"; # Monitor of resources (btop)
|
firefox
|
||||||
"super + g" = "io.github.alainm23.planify"; # Goals. Todo manager. Task tracker
|
|
||||||
"super + shift + c" = "xcolor -s"; # Color picker. Получить hex в буфер обмена
|
# Browser Chromium. Пусть будет
|
||||||
"super + ctrl + c" = "xcolor -s -f rgb"; # Color picker. Получить rgb в буфер обмена
|
super + shift + ctrl + b
|
||||||
|
chromium
|
||||||
|
|
||||||
|
# Note taking app (obsidian)
|
||||||
|
super + n
|
||||||
|
obsidian
|
||||||
|
|
||||||
|
# Explorer. Thunar file manager
|
||||||
|
super + e
|
||||||
|
thunar
|
||||||
|
|
||||||
|
# IDE, text editor
|
||||||
|
super + i
|
||||||
|
code
|
||||||
|
|
||||||
|
# Monitor of resources (btop)
|
||||||
|
super + m
|
||||||
|
${terminalFirst} -e btop
|
||||||
|
|
||||||
|
# Goals. Todo manager. Task tracker
|
||||||
|
super + g
|
||||||
|
io.github.alainm23.planify
|
||||||
|
|
||||||
|
# Color picker. Получить hex в буфер обмена
|
||||||
|
super + shift + c
|
||||||
|
xcolor -s
|
||||||
|
|
||||||
|
# Color picker. Получить rgb в буфер обмена
|
||||||
|
super + ctrl + c
|
||||||
|
xcolor -s -f rgb
|
||||||
|
|
||||||
|
|
||||||
##############
|
##############
|
||||||
## terminal ##
|
## terminal ##
|
||||||
##############
|
##############
|
||||||
|
|
||||||
"super + t" = terminalFirst; # Терминал alacritty
|
# Терминал alacritty
|
||||||
"super + shift + t" = "${terminalFirst} --class floating-terminal"; # Floating терминал alacritty в центре экрана 600x300px
|
super + t
|
||||||
"super + ctrl + t" = terminalSecond; # Tерминал kitty
|
${terminalFirst}
|
||||||
"super + ctrl + shift + t" = "${terminalSecond} --class floating-terminal"; # Floating терминал kitty в центре экрана 600x300px
|
|
||||||
|
# Floating терминал alacritty в центре экрана
|
||||||
|
super + shift + t
|
||||||
|
${terminalFirst} --class floating-terminal
|
||||||
|
|
||||||
|
# Терминал kitty
|
||||||
|
super + ctrl + t
|
||||||
|
${terminalSecond}
|
||||||
|
|
||||||
|
# Floating терминал kitty в центре экрана
|
||||||
|
super + ctrl + shift + t
|
||||||
|
${terminalSecond} --class floating-terminal
|
||||||
|
|
||||||
|
|
||||||
#######################
|
#######################
|
||||||
## Колдунские кнопки ##
|
## Колдунские кнопки ##
|
||||||
#######################
|
#######################
|
||||||
|
|
||||||
# В pamixer для настроек микро надо добавлять "--default-source"
|
# В pamixer для настроек микро надо добавлять "--default-source"
|
||||||
|
|
||||||
"XF86AudioMute" = "pamixer -t; ${notifyMute}"; # Toggle mute
|
# Toggle mute
|
||||||
"XF86AudioMicMute" = "pamixer --default-source -t; ${notifyMicMute}"; # Toggle microphone mute
|
XF86AudioMute
|
||||||
"XF86Audio{Lower,Raise}Volume" = "pamixer -{d,i} 5; ${notifyVolume}"; # Decrease/Increase volume
|
pamixer -t; ${notifyMute}
|
||||||
"XF86Audio{Play,Pause}" = "playerctl play-pause"; # Play/Pause
|
|
||||||
"XF86Audio{Next,Prev}" = "playerctl {next,previous}"; # Next/Previous track
|
# Toggle microphone mute
|
||||||
|
XF86AudioMicMute
|
||||||
|
pamixer --default-source -t; ${notifyMicMute}
|
||||||
|
|
||||||
|
# Decrease/Increase volume
|
||||||
|
XF86Audio{Lower,Raise}Volume
|
||||||
|
pamixer -{d,i} 5; ${notifyVolume}
|
||||||
|
|
||||||
|
# Play/Pause
|
||||||
|
XF86Audio{Play,Pause}
|
||||||
|
playerctl play-pause
|
||||||
|
|
||||||
|
# Next/Previous track
|
||||||
|
XF86Audio{Next,Prev}
|
||||||
|
playerctl {next,previous}
|
||||||
|
|
||||||
# Простое редактирование яркости будет менять на 1% (Символ _ означает ничего, просто бинд яркости)
|
# Простое редактирование яркости будет менять на 1% (Символ _ означает ничего, просто бинд яркости)
|
||||||
# С зажатым шифтом будет редактировать яркость на 10%
|
# С зажатым шифтом будет редактировать яркость на 10%
|
||||||
# С зажатой клавишей win будет менять между минимальным и максимальным значениями
|
# С зажатой клавишей win будет менять между минимальным и максимальным значениями
|
||||||
# Не знаю работает ли эта команда, у меня не ноут. Добавил как написано в "man sxhkd"
|
# Не знаю работает ли эта команда, у меня не ноут. Добавил как написано в "man sxhkd"
|
||||||
"{_,shift + ,super + }XF86MonBrightness{Down,Up}" = "bright {-1,-10,min,+1,+10,max}"; # Increase/Decrease brightness
|
# Increase/Decrease brightness
|
||||||
|
{_,shift + ,super + }XF86MonBrightness{Down,Up}
|
||||||
|
bright {-1,-10,min,+1,+10,max}
|
||||||
###########
|
'';
|
||||||
## other ##
|
|
||||||
###########
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue