Compare commits
30
Commits
49a51849e0
..
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e33af718dc | ||
|
|
6579dac3a4 | ||
|
|
8f0cb6cd3f | ||
|
|
1da6e2625f | ||
|
|
a7e95c3ed1 | ||
|
|
20edbe76e8 | ||
|
|
3a0ceadb20 | ||
|
|
0c4b7dbc85 | ||
|
|
8151d710d9 | ||
|
|
21cc16921b | ||
|
|
1620c01b16 | ||
|
|
c5c4eef54d | ||
|
|
cae1d9b8cc | ||
|
|
41ecb14d71 | ||
|
|
a97cb7b476 | ||
|
|
0df9852e3c | ||
|
|
12476c3a35 | ||
|
|
8b7bb62372 | ||
|
|
f3e2b5c264 | ||
|
|
cb08eb1194 | ||
|
|
4b1d0cd562 | ||
|
|
520fb7cd75 | ||
|
|
05d6556f31 | ||
|
|
030ec42b17 | ||
|
|
61d5019f9d | ||
|
|
60bb2ad303 | ||
|
|
d49c0bae99 | ||
|
|
828655dcac | ||
|
|
ab03f33212 | ||
|
|
3bfa324d00 |
@@ -1 +1,5 @@
|
||||
My Dotfiles
|
||||
# My Dotfiles
|
||||
|
||||
## matbook-sway
|
||||
|
||||

|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 648 KiB |
Executable
BIN
Binary file not shown.
|
After Width: | Height: | Size: 151 KiB |
@@ -0,0 +1,11 @@
|
||||
monitor-settings >/dev/null 2>&1 &
|
||||
wallpapers >/dev/null 2>&1 &
|
||||
waybar -c $HOME/.config/waybar/sirius.conf >/dev/null 2>&1 &
|
||||
swaync >/dev/null 2>&1 &
|
||||
mysd >/dev/null 2>&1 &
|
||||
discord --start-minimized >/dev/null 2>&1 &
|
||||
corectrl >/dev/null 2>&1 &
|
||||
flatpak run --command=telegram-desktop org.telegram.desktop -workdir /home/mat/.var/app/org.telegram.desktop/data/TelegramDesktop/ -autostart >/dev/null 2>&1 &
|
||||
#rygel >/dev/null 2>&1 &
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# Cosmic/Sirius
|
||||
XDG_CURRENT_DESKTOP=wlroots
|
||||
XDG_SESSION_DESKTOP=wlroots
|
||||
XDG_SESSION_TYPE=wlroots
|
||||
|
||||
# Cursor
|
||||
WLR_NO_HARDWARE_CURSORS=1
|
||||
XCURSOR_THEME=Future-cursors
|
||||
XCURSOR_SIZE=24
|
||||
|
||||
# Keyboards
|
||||
XKB_DEFAULT_LAYOUT=us
|
||||
XKB_DEFAULT_LAYOUT=us,ru
|
||||
XKB_DEFAULT_OPTIONS=grp:caps_toggle,grp_led:caps
|
||||
|
||||
# Browser
|
||||
MOZ_ENABLE_WAYLAND=1
|
||||
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<openbox_menu>
|
||||
|
||||
<menu id="root-menu" label="openbox">
|
||||
<item label="Терминал"> <action name="Execute"> <execute>flatpak run com.raggesilver.BlackBox</execute> </action> </item>
|
||||
<item label="Браузер"> <action name="Execute"> <execute>firefox</execute> </action> </item>
|
||||
<item label="Файловый менеджер"> <action name="Execute"> <execute>nautilus</execute> </action> </item>
|
||||
|
||||
<menu id="Settings" label="Настройки">
|
||||
<item label="Перенастоить"> <action name="Execute"> <execute>labwc --reconfigure</execute> </action> </item>
|
||||
<item label="Звук"> <action name="Execute"> <execute>pavucontrol</execute> </action> </item>
|
||||
</menu>
|
||||
|
||||
<separator/>
|
||||
<menu id="Exit" label="Выход">
|
||||
<item label="Перезагрузка"> <action name="Execute"> <execute>systemctl reboot</execute> </action> </item>
|
||||
<item label="Выключение"> <action name="Execute"> <execute>systemctl poweroff</execute> </action> </item>
|
||||
<item label="Exit"> <action name="Execute"> <execute>labwc --exit</execute> </action> </item>
|
||||
</menu>
|
||||
|
||||
</menu>
|
||||
</openbox_menu>
|
||||
@@ -0,0 +1,290 @@
|
||||
<?xml version="1.0"?>
|
||||
<!-- Openspace Sirius by En2zmax -->
|
||||
<labwc_config>
|
||||
<core>
|
||||
<decoration>client</decoration>
|
||||
<gap>12,5</gap>
|
||||
<adaptiveSync>no</adaptiveSync>
|
||||
<cycleViewPreview>no</cycleViewPreview>
|
||||
</core>
|
||||
<focus>
|
||||
<followMouse>yes</followMouse>
|
||||
<raiseOnFocus>no</raiseOnFocus>
|
||||
</focus>
|
||||
<theme>
|
||||
<name>Pop-dark</name>
|
||||
<cornerRadius>6</cornerRadius>
|
||||
<titleLayout>MC</titleLayout>
|
||||
<font place="ActiveWindow">
|
||||
<name>Fira Sans SemiBold</name>
|
||||
<size>10</size>
|
||||
<weight>bold</weight>
|
||||
</font>
|
||||
<font place="MenuItem">
|
||||
<name>Fira Sans Book</name>
|
||||
<size>10</size>
|
||||
<weight>bold</weight>
|
||||
</font>
|
||||
<font place="OnScreenDisplay">
|
||||
<name>Fira Sans Book</name>
|
||||
<size>10</size>
|
||||
<weight>normal</weight>
|
||||
</font>
|
||||
</theme>
|
||||
<desktops>
|
||||
<names>
|
||||
<name>one</name>
|
||||
<name>two</name>
|
||||
<name>three</name>
|
||||
<name>four</name>
|
||||
</names>
|
||||
</desktops>
|
||||
<keyboard>
|
||||
<keybind key="W-q">
|
||||
<action name="Close">
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-S-q">
|
||||
<action name="Kill">
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-f">
|
||||
<action name="ToggleFullscreen">
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-w">
|
||||
<action name="ToggleMaximize">
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-s">
|
||||
<action name="Iconify">
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-left">
|
||||
<action name="SnapToEdge">
|
||||
<direction>left</direction>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-right">
|
||||
<action name="SnapToEdge">
|
||||
<direction>right</direction>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-up">
|
||||
<action name="SnapToEdge">
|
||||
<direction>center</direction>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-Tab">
|
||||
<action name="NextWindow">
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-1">
|
||||
<action name="GoToDesktop">
|
||||
<to>one</to>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-2">
|
||||
<action name="GoToDesktop">
|
||||
<to>two</to>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-3">
|
||||
<action name="GoToDesktop">
|
||||
<to>three</to>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-4">
|
||||
<action name="GoToDesktop">
|
||||
<to>four</to>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-A-1">
|
||||
<action name="SendToDesktop">
|
||||
<to>one</to>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-A-2">
|
||||
<action name="SendToDesktop">
|
||||
<to>two</to>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-A-3">
|
||||
<action name="SendToDesktop">
|
||||
<to>three</to>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-A-4">
|
||||
<action name="SendToDesktop">
|
||||
<to>four</to>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-Return">
|
||||
<action name="Execute">
|
||||
<command>flatpak run com.raggesilver.BlackBox</command>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-b">
|
||||
<action name="Execute">
|
||||
<command>firefox</command>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-S-b">
|
||||
<action name="Execute">
|
||||
<command>firefox --private-window</command>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-d">
|
||||
<action name="Execute">
|
||||
<command>menudrun</command>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-r">
|
||||
<action name="Execute">
|
||||
<command>menurun</command>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-g">
|
||||
<action name="Execute">
|
||||
<command>menugames</command>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-p">
|
||||
<action name="Execute">
|
||||
<command>screenshot</command>
|
||||
</action>
|
||||
</keybind>
|
||||
<keybind key="W-n">
|
||||
<action name="Execute">
|
||||
<command>swaync-client -t -sw</command>
|
||||
</action>
|
||||
</keybind>
|
||||
</keyboard>
|
||||
<mouse>
|
||||
<doubleClickTime>500</doubleClickTime>
|
||||
<context name="Frame">
|
||||
<mousebind button="A-Left" action="Press">
|
||||
<action name="Focus"/>
|
||||
<action name="Raise"/>
|
||||
</mousebind>
|
||||
<mousebind button="A-Left" action="Drag">
|
||||
<action name="Move"/>
|
||||
</mousebind>
|
||||
<mousebind button="A-Right" action="Press">
|
||||
<action name="Focus"/>
|
||||
<action name="Raise"/>
|
||||
</mousebind>
|
||||
<mousebind button="A-Right" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Top">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Left">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Right">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Bottom">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="TRCorner">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="BRCorner">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="TLCorner">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="BLCorner">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Resize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="TitleBar">
|
||||
<mousebind button="Left" action="Press">
|
||||
<action name="Focus"/>
|
||||
<action name="Raise"/>
|
||||
</mousebind>
|
||||
<mousebind button="Right" action="Click">
|
||||
<action name="Focus"/>
|
||||
<action name="Raise"/>
|
||||
<action name="ShowMenu" menu="client-menu"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Title">
|
||||
<mousebind button="Left" action="Drag">
|
||||
<action name="Move"/>
|
||||
</mousebind>
|
||||
<mousebind button="Left" action="DoubleClick">
|
||||
<action name="ToggleMaximize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Maximize">
|
||||
<mousebind button="Left" action="Click">
|
||||
<action name="Focus"/>
|
||||
<action name="Raise"/>
|
||||
<action name="ToggleMaximize"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="WindowMenu">
|
||||
<mousebind button="Left" action="Click">
|
||||
<action name="ShowMenu" menu="client-menu"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Iconify">
|
||||
<mousebind button="left" action="Click">
|
||||
<action name="Iconify"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Close">
|
||||
<mousebind button="Left" action="Click">
|
||||
<action name="Close"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Client">
|
||||
<mousebind button="Left" action="Press">
|
||||
<action name="Focus"/>
|
||||
<action name="Raise"/>
|
||||
</mousebind>
|
||||
<mousebind button="Middle" action="Press">
|
||||
<action name="Focus"/>
|
||||
<action name="Raise"/>
|
||||
</mousebind>
|
||||
<mousebind button="Right" action="Press">
|
||||
<action name="Focus"/>
|
||||
<action name="Raise"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
<context name="Root">
|
||||
<mousebind button="Left" action="Press">
|
||||
<action name="Focus"/>
|
||||
</mousebind>
|
||||
<mousebind button="Right" action="Press">
|
||||
<action name="ShowMenu" menu="root-menu"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
</mouse>
|
||||
<libinput>
|
||||
<device>
|
||||
<naturalscroll>no</naturalscroll>
|
||||
</device>
|
||||
</libinput>
|
||||
</labwc_config>
|
||||
Executable
+47
@@ -0,0 +1,47 @@
|
||||
font_family iosevka Medium
|
||||
bold_font Iosevka Bold
|
||||
italic_font Iosevka Medium Italic
|
||||
|
||||
font_size 9.0
|
||||
|
||||
enable_audio_bell no
|
||||
window_border_width 0.0
|
||||
|
||||
tab_title_template {index}:{title}
|
||||
tab_bar_min_tabs 2
|
||||
tab_bar_edge top
|
||||
tab_bar_style powerline
|
||||
|
||||
|
||||
active_tab_background #5294E2
|
||||
active_tab_foreground #ffffff
|
||||
inactive_tab_background #272d3b
|
||||
inactive_tab_foreground #888888
|
||||
|
||||
clear_all_shortcuts yes
|
||||
kitty_mod ctrl
|
||||
map kitty_mod+insert copy_to_clipboard
|
||||
map shift+insert paste_from_clipboard
|
||||
map kitty_mod+t new_tab
|
||||
map kitty_mod+w close_tab
|
||||
map alt+l next_tab
|
||||
map kitty_mod+right next_tab
|
||||
map alt+h previous_tab
|
||||
map kitty_mod+left previous_tab
|
||||
map kitty_mod+alt+t set_tab_title
|
||||
map kitty_mod+g axis vertical
|
||||
|
||||
map alt+1 goto_tab 1
|
||||
map alt+2 goto_tab 2
|
||||
map alt+3 goto_tab 3
|
||||
map alt+4 goto_tab 4
|
||||
map alt+5 goto_tab 5
|
||||
map alt+6 goto_tab 6
|
||||
map alt+7 goto_tab 7
|
||||
map alt+8 goto_tab 8
|
||||
map alt+9 goto_tab 9
|
||||
|
||||
map kitty_mod+alt+r launch --type=tab ranger
|
||||
|
||||
include ./theme.conf
|
||||
|
||||
Executable
+31
@@ -0,0 +1,31 @@
|
||||
background #1f2227
|
||||
foreground #abb2bf
|
||||
selection_background #abb2bf
|
||||
selection_foreground #282c34
|
||||
url_color #565c64
|
||||
cursor #abb2bf
|
||||
active_border_color #545862
|
||||
inactive_border_color #353b45
|
||||
active_tab_background #1f2227
|
||||
active_tab_foreground #abb2bf
|
||||
inactive_tab_background #353b45
|
||||
inactive_tab_foreground #565c64
|
||||
tab_bar_background #353b45
|
||||
color0 #282c34
|
||||
color8 #282c34
|
||||
color1 #e06c75
|
||||
color9 #e06c75
|
||||
color2 #98c379
|
||||
color10 #98c379
|
||||
color3 #e5c07b
|
||||
color11 #e5c07b
|
||||
color4 #81A1C1
|
||||
color12 #81A1C1
|
||||
color5 #c678dd
|
||||
color13 #c678dd
|
||||
color6 #56b6c2
|
||||
color14 #56b6c2
|
||||
color7 #c8ccd4
|
||||
color15 #c8ccd4
|
||||
|
||||
# vim: ft=kitty
|
||||
Executable
+20
@@ -0,0 +1,20 @@
|
||||
#my simple mako
|
||||
sort=-time
|
||||
max-visible=5
|
||||
layer=top
|
||||
anchor=top-right
|
||||
|
||||
font=iosevka Nerd Font 9
|
||||
background-color=#1f2227
|
||||
text-color=#e5c07b
|
||||
|
||||
width=300
|
||||
height=180
|
||||
margin=12
|
||||
padding=15
|
||||
border-size=2
|
||||
border-color=#88c0d0
|
||||
|
||||
icons=1
|
||||
|
||||
default-timeout=5000
|
||||
Executable
+15
@@ -0,0 +1,15 @@
|
||||
/* colors */
|
||||
|
||||
* {
|
||||
al: #c8ccd4;
|
||||
bg: #1f2227;
|
||||
se: #413E4Aff;
|
||||
fg: #abb2bf;
|
||||
ac: #B38184ff;
|
||||
red: #e06c75;
|
||||
green: #98c379;
|
||||
yellow: #e5c07b;
|
||||
blue: #81a1c1;
|
||||
purple: #BA68C8ff;
|
||||
cyan: #56b6c2;
|
||||
}
|
||||
Executable
+28
@@ -0,0 +1,28 @@
|
||||
configuration {
|
||||
lines: 15;
|
||||
columns: 1;
|
||||
font: "Iosevka Nerd Font 9";
|
||||
bw: 0;
|
||||
location: 0;
|
||||
padding: 0;
|
||||
fixed-num-lines: true;
|
||||
show-icons: false;
|
||||
sidebar-mode: true;
|
||||
separator-style: "none";
|
||||
hide-scrollbar: true;
|
||||
fullscreen: false;
|
||||
fake-transparency: false;
|
||||
scroll-method: 0;
|
||||
click-to-exit: true;
|
||||
show-match: false;
|
||||
combi-hide-mode-prefix: false;
|
||||
display-window: " ";
|
||||
display-windowcd: " ";
|
||||
display-run: " ";
|
||||
display-ssh: " ";
|
||||
display-drun: " ";
|
||||
display-combi: " ";
|
||||
window-format: "{w} ··· [{c}] ··· {t}";
|
||||
}
|
||||
|
||||
@theme "matbook"
|
||||
Executable
+143
@@ -0,0 +1,143 @@
|
||||
@import "colors.rasi"
|
||||
|
||||
* {
|
||||
background-color: @bg;
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
window {
|
||||
border: 0px;
|
||||
border-color: @ac;
|
||||
border-radius: 4px;
|
||||
padding: 15;
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
prompt {
|
||||
spacing: 0;
|
||||
border: 0;
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
textbox-prompt-colon {
|
||||
expand: false;
|
||||
str: " ";
|
||||
margin: 0px 4px 0px 0px;
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
entry {
|
||||
spacing: 0;
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
case-indicator {
|
||||
spacing: 0;
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
spacing: 0px;
|
||||
text-color: @fg;
|
||||
padding: 1px;
|
||||
children: [ prompt,textbox-prompt-colon,entry,overlay,case-indicator ];
|
||||
}
|
||||
|
||||
mainbox {
|
||||
border: 0px;
|
||||
border-color: @ac;
|
||||
padding: 6;
|
||||
}
|
||||
|
||||
listview {
|
||||
fixed-height: 0;
|
||||
border: 0px;
|
||||
border-color: @ac;
|
||||
spacing: 4px;
|
||||
scrollbar: false;
|
||||
padding: 5px 5px 0px 5px;
|
||||
}
|
||||
|
||||
element {
|
||||
border: 0px;
|
||||
border-radius: 2px;
|
||||
padding: 1.8px;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: @bg;
|
||||
text-color: @fg;
|
||||
}
|
||||
element normal.urgent {
|
||||
background-color: @bg;
|
||||
text-color: @red;
|
||||
}
|
||||
element normal.active {
|
||||
background-color: @green;
|
||||
text-color: @bg;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: @fg;
|
||||
text-color: @bg;
|
||||
}
|
||||
element selected.urgent {
|
||||
background-color: @bg;
|
||||
text-color: @red;
|
||||
}
|
||||
element selected.active {
|
||||
background-color: @fg;
|
||||
text-color: @bg;
|
||||
}
|
||||
element alternate.normal {
|
||||
background-color: @bg;
|
||||
text-color: @fg;
|
||||
}
|
||||
element alternate.urgent {
|
||||
background-color: @bg;
|
||||
text-color: @fg;
|
||||
}
|
||||
element alternate.active {
|
||||
background-color: @bg;
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
sidebar {
|
||||
border: 0px;
|
||||
border-color: @ac;
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
button {
|
||||
background-color: @fg;
|
||||
margin: 5px;
|
||||
padding: 5px;
|
||||
text-color: @bg;
|
||||
border: 0px;
|
||||
border-radius: 4px;
|
||||
border-color: @fg;
|
||||
}
|
||||
|
||||
button selected {
|
||||
background-color: @red;
|
||||
text-color: @fg;
|
||||
border: 0px;
|
||||
border-radius: 4px;
|
||||
border-color: @fg;
|
||||
}
|
||||
|
||||
scrollbar {
|
||||
width: 4px;
|
||||
border: 0px;
|
||||
handle-color: @fg;
|
||||
handle-width: 8px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
message {
|
||||
border: 0px;
|
||||
border-color: @ac;
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
textbox {
|
||||
text-color: @red;
|
||||
}
|
||||
Executable
+185
@@ -0,0 +1,185 @@
|
||||
################################################################################
|
||||
### VARIABLES
|
||||
################################################################################
|
||||
|
||||
set $mod Mod4
|
||||
set $term kitty
|
||||
set $file_man kitty -e ranger
|
||||
set $menu rofi -show run
|
||||
set $browser firefox
|
||||
set $alt_browser waterfox
|
||||
set $audio_man pavucontrol
|
||||
set $email_client mutt
|
||||
|
||||
set $left h
|
||||
set $down j
|
||||
set $up k
|
||||
set $right l
|
||||
|
||||
################################################################################
|
||||
### STARTUP
|
||||
################################################################################
|
||||
|
||||
exec light -A 100
|
||||
workspace 1
|
||||
exec $term
|
||||
workspace 2
|
||||
exec $browser
|
||||
workspace 1
|
||||
exec mako
|
||||
|
||||
################################################################################
|
||||
### STYLING
|
||||
################################################################################
|
||||
|
||||
font pango:iosevka Medium 9
|
||||
default_border pixel 1
|
||||
client.focused #81a1c1 #81a1c1 #FFFFFF #81a1c1 #81a1c1
|
||||
client.focused_inactive #282c34 #282c34 #FFFFFF #282c34 #282c34
|
||||
client.urgent #e06c75 #e06c75 #FFFFFF #e06c75 #e06c75
|
||||
client.unfocused #282c34 #282c34 #FFFFFF #282c34 #282c34
|
||||
|
||||
gaps inner 3
|
||||
gaps outer 5
|
||||
|
||||
output "*" background "~/Documents/Wallpapers/w.jpg" fill
|
||||
|
||||
################################################################################
|
||||
### KEYBINDINGS
|
||||
################################################################################
|
||||
|
||||
## Applications:
|
||||
|
||||
bindsym --to-code $mod+Return exec $term
|
||||
bindsym --to-code $mod+Shift+Return exec $file_man
|
||||
bindsym --to-code $mod+d exec $menu
|
||||
bindsym $mod+Escape exec powermenu
|
||||
bindsym --to-code $mod+n exec notesmenu
|
||||
bindsym --to-code $mod+b exec $browser
|
||||
bindsym --to-code $mod+Shift+b exec $alt_browser
|
||||
|
||||
bindsym --to-code $mod+Alt+a exec $audio_man
|
||||
bindsym --to-code $mod+Alt+b exec blueman-manager
|
||||
|
||||
bindsym --to-code $mod+y exec playweb
|
||||
## Sway:
|
||||
|
||||
bindsym --to-code $mod+q kill
|
||||
bindsym --to-code $mod+Shift+q exec swaymsg exit
|
||||
bindsym --to-code $mod+Shift+c reload
|
||||
|
||||
floating_modifier $mod normal
|
||||
|
||||
## Window Navigation:
|
||||
|
||||
# Move your focus around
|
||||
bindsym $mod+$left focus left
|
||||
bindsym $mod+$down focus down
|
||||
bindsym $mod+$up focus up
|
||||
bindsym $mod+$right focus right
|
||||
|
||||
# Move the focused window with the same, but add Shift
|
||||
bindsym $mod+Shift+$left move left
|
||||
bindsym $mod+Shift+$down move down
|
||||
bindsym $mod+Shift+$up move up
|
||||
bindsym $mod+Shift+$right move right
|
||||
|
||||
## Workspaces:
|
||||
|
||||
# Switch to workspace
|
||||
bindsym $mod+1 workspace number 1
|
||||
bindsym $mod+2 workspace number 2
|
||||
bindsym $mod+3 workspace number 3
|
||||
bindsym $mod+4 workspace number 4
|
||||
bindsym $mod+5 workspace number 5
|
||||
bindsym $mod+6 workspace number 6
|
||||
|
||||
# Move focused container to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace number 1
|
||||
bindsym $mod+Shift+2 move container to workspace number 2
|
||||
bindsym $mod+Shift+3 move container to workspace number 3
|
||||
bindsym $mod+Shift+4 move container to workspace number 4
|
||||
bindsym $mod+Shift+5 move container to workspace number 5
|
||||
bindsym $mod+Shift+6 move container to workspace number 6
|
||||
|
||||
## Layout stuff:
|
||||
|
||||
# Switch layout style of current container
|
||||
bindsym --to-code $mod+w layout tabbed
|
||||
bindsym --to-code $mod+e layout toggle split
|
||||
|
||||
# bindsym $mod+space focus mode_toggle
|
||||
bindsym --to-code $mod+f fullscreen
|
||||
bindsym --to-code $mod+t floating toggle
|
||||
bindsym --to-code $mod+a focus parent
|
||||
|
||||
## Scratchpad:
|
||||
|
||||
bindsym $mod+Shift+minus move scratchpad
|
||||
bindsym $mod+minus scratchpad show
|
||||
|
||||
## Spotify:
|
||||
|
||||
bindsym $mod+s+p exec spotifycli --playpause
|
||||
bindsym $mod+s+l exec spotifycli --next
|
||||
bindsym $mod+s+h exec spotifycli --previous
|
||||
|
||||
# Random Stuff:
|
||||
|
||||
bindsym --to-code $mod+p exec screenshot
|
||||
|
||||
mode "resize" {
|
||||
bindsym $left resize grow width 10px
|
||||
bindsym $down resize grow height 10px
|
||||
bindsym $up resize shrink height 10px
|
||||
bindsym $right resize shrink width 10px
|
||||
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
}
|
||||
bindsym --to-code $mod+r mode "resize"
|
||||
|
||||
## Layout keyboard
|
||||
|
||||
input * {
|
||||
xkb_layout "us,ru"
|
||||
xkb_options "grp:caps_toggle"
|
||||
}
|
||||
|
||||
input <identifier> xkb_model "pc101"
|
||||
|
||||
## Display light
|
||||
bindsym XF86MonBrightnessUp exec light -A 1
|
||||
bindsym XF86MonBrightnessDown exec light -U 1
|
||||
|
||||
# Volumes
|
||||
|
||||
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +1%
|
||||
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -1%
|
||||
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
|
||||
|
||||
################################################################################
|
||||
### GET GTK WORKING IN SWAY
|
||||
################################################################################
|
||||
|
||||
set $gnome-schema org.gnome.desktop.interface
|
||||
exec_always {
|
||||
gsettings set org.gnome.desktop.interface gtk-theme "matbook"
|
||||
gsettings set org.gnome.desktop.interface icon-theme "Arc"
|
||||
gsettings set org.gnome.desktop.interface cursor-theme "DMZ-Black"
|
||||
gsettings set $gnome-schema cursor-theme 'Adwaita'
|
||||
gsettings set $gnome-schema font-name 'iosevka Medium 9'
|
||||
}
|
||||
|
||||
################################################################################
|
||||
### STATUS BAR
|
||||
################################################################################
|
||||
|
||||
bar {
|
||||
swaybar_command waybar
|
||||
}
|
||||
}
|
||||
|
||||
include /etc/sway/config.d/*
|
||||
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
set encoding=utf-8
|
||||
set mouse=a
|
||||
set hlsearch
|
||||
set t_Co=256
|
||||
set clipboard=unnamed
|
||||
set noswapfile
|
||||
|
||||
syntax on
|
||||
inoremap jk <esc>
|
||||
|
||||
set directory=~/.config/vim,.
|
||||
set viminfo+=n~/.config/vim/viminfo
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"arrowParens": "always",
|
||||
"bracketSpacing": true,
|
||||
"endOfLine": "lf",
|
||||
"htmlWhitespaceSensitivity": "css",
|
||||
"printWidth": 80,
|
||||
"proseWrap": "always",
|
||||
"requirePragma": false,
|
||||
"semi": true,
|
||||
"singleQuote": false,
|
||||
"tabWidth": 4,
|
||||
"trailingComma": "all",
|
||||
"useTabs": false,
|
||||
"vueIndentScriptAndStyle": true,
|
||||
"overrides": [
|
||||
{
|
||||
"files": "*.json"
|
||||
},
|
||||
{
|
||||
"files": "*.rasi",
|
||||
"options": { "parser": "css" }
|
||||
}
|
||||
]
|
||||
}
|
||||
Executable
+117
@@ -0,0 +1,117 @@
|
||||
{
|
||||
"position": "bottom",
|
||||
"modules-left": ["custom/launch", "sway/workspaces"],
|
||||
"modules-center": ["custom/spotify"],
|
||||
"modules-right": [
|
||||
"custom/xkblayout",
|
||||
"pulseaudio",
|
||||
"backlight",
|
||||
"custom/wgstatus",
|
||||
"network",
|
||||
"memory",
|
||||
"battery",
|
||||
"clock",
|
||||
"custom/off"
|
||||
],
|
||||
"custom/launch": {
|
||||
"format": " ",
|
||||
"on-click": "rofi -show run"
|
||||
},
|
||||
"sway/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"all-outputs": true,
|
||||
"format": " {icon} ",
|
||||
"persistent_workspaces": {
|
||||
"1": [],
|
||||
"2": [],
|
||||
"3": [],
|
||||
"4": [],
|
||||
"5": [],
|
||||
"6": []
|
||||
},
|
||||
"format-icons": {
|
||||
"1": " ",
|
||||
"2": " ",
|
||||
"3": " ",
|
||||
"4": " ",
|
||||
"5": " ",
|
||||
"6": " ",
|
||||
"urgent": " ",
|
||||
"focused": " ",
|
||||
"default": " "
|
||||
}
|
||||
},
|
||||
"custom/spotify": {
|
||||
"exec": "/usr/bin/python3 $XDG_CONFIG_HOME/waybar/scripts/mediaplayer.py --player spotify",
|
||||
"format": "{}",
|
||||
"return-type": "json",
|
||||
"on-click": "spotifycli --playpause",
|
||||
"on-scroll-up": "spotifycli --next",
|
||||
"on-scroll-down": "spotifycli --previous"
|
||||
},
|
||||
"custom/xkblayout": {
|
||||
"exec": "~/.config/waybar/scripts/xkblayout.py",
|
||||
"format": " {} ",
|
||||
"tooltip": false
|
||||
},
|
||||
"pulseaudio": {
|
||||
"scroll-step": 5,
|
||||
"format": "{icon} {volume}%", "format-bluetooth": "{volume}% {icon} {format_source}",
|
||||
"format-bluetooth-muted": "婢 {icon} muted",
|
||||
"format-muted": "婢 muted",
|
||||
"format-icons": {
|
||||
"speaker": " ",
|
||||
"hands-free": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"headphone": [" ", " ", " "]
|
||||
},
|
||||
"on-click": "pavucontrol"
|
||||
},
|
||||
"backlight": {
|
||||
"device": "intel_backlight",
|
||||
"format": " {percent}%",
|
||||
"on-scroll-up": "light -A 1",
|
||||
"on-scroll-down": "light -U 1"
|
||||
},
|
||||
"custom/wgstatus": {
|
||||
"interval": 1,
|
||||
"exec": "~/.config/waybar/scripts/wgstatus",
|
||||
"format": " {} ",
|
||||
"tooltip": false,
|
||||
"on-click": "~/.config/waybar/scripts/wgstatus -toggle"
|
||||
},
|
||||
"network": {
|
||||
"format-wifi": "直 {essid}",
|
||||
"format-ethernet": "直 {ifname}: {ipaddr}/{cidr}",
|
||||
"format-linked": "直 {ifname} (No IP)",
|
||||
"format-disconnected": "睊 Disconnected",
|
||||
"format-alt": "直 {ifname}: {ipaddr}/{cidr}",
|
||||
"on-click-middle": "~/.config/waybar/scripts/wgstatus -toggle"
|
||||
},
|
||||
"memory": {
|
||||
"interval": 3,
|
||||
"format": " {}%",
|
||||
"max-length": 10
|
||||
},
|
||||
"battery": {
|
||||
"interval": 60,
|
||||
"states": {
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
"format": "{icon} {capacity}%",
|
||||
"format-icons": [" ", " ", " ", " ", " "]
|
||||
},
|
||||
"clock": {
|
||||
"interval": 1,
|
||||
"format": " {:%I:%M %p}",
|
||||
"format-alt": " {:%b %d, %G}"
|
||||
},
|
||||
"custom/off": {
|
||||
"format": " ",
|
||||
"on-click": "powermenu"
|
||||
}
|
||||
}i
|
||||
+144
@@ -0,0 +1,144 @@
|
||||
#!/usr/bin/env python3
|
||||
import argparse
|
||||
import logging
|
||||
import sys
|
||||
import signal
|
||||
import gi
|
||||
import json
|
||||
|
||||
gi.require_version("Playerctl", "2.0")
|
||||
from gi.repository import Playerctl, GLib
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def write_output(text, player):
|
||||
logger.info("Writing output")
|
||||
|
||||
output = {
|
||||
"text": text,
|
||||
"class": "custom-" + player.props.player_name,
|
||||
"alt": player.props.player_name,
|
||||
}
|
||||
|
||||
sys.stdout.write(json.dumps(output) + "\n")
|
||||
sys.stdout.flush()
|
||||
|
||||
|
||||
def on_play(player, status, manager):
|
||||
logger.info("Received new playback status")
|
||||
on_metadata(player, player.props.metadata, manager)
|
||||
|
||||
|
||||
def on_metadata(player, metadata, manager):
|
||||
logger.info("Received new metadata")
|
||||
track_info = ""
|
||||
|
||||
if (
|
||||
player.props.player_name == "spotify"
|
||||
and "mpris:trackid" in metadata.keys()
|
||||
and ":ad:" in player.props.metadata["mpris:trackid"]
|
||||
):
|
||||
track_info = "AD PLAYING"
|
||||
elif player.get_artist() != "" and player.get_title() != "":
|
||||
track_info = "{artist} - {title}".format(
|
||||
artist=player.get_artist(), title=player.get_title()
|
||||
)
|
||||
else:
|
||||
track_info = player.get_title()
|
||||
|
||||
if player.props.status != "Playing" and track_info:
|
||||
track_info = "契 " + track_info
|
||||
elif player.props.status == "Playing" and track_info:
|
||||
track_info = " " + track_info
|
||||
write_output(track_info, player)
|
||||
|
||||
|
||||
def on_player_appeared(manager, player, selected_player=None):
|
||||
if player is not None and (
|
||||
selected_player is None or player.name == selected_player
|
||||
):
|
||||
init_player(manager, player)
|
||||
else:
|
||||
logger.debug("New player appeared, but it's not the selected player, skipping")
|
||||
|
||||
|
||||
def on_player_vanished(manager, player):
|
||||
logger.info("Player has vanished")
|
||||
sys.stdout.write("\n")
|
||||
sys.stdout.flush()
|
||||
|
||||
|
||||
def init_player(manager, name):
|
||||
logger.debug("Initialize player: {player}".format(player=name.name))
|
||||
player = Playerctl.Player.new_from_name(name)
|
||||
player.connect("playback-status", on_play, manager)
|
||||
player.connect("metadata", on_metadata, manager)
|
||||
manager.manage_player(player)
|
||||
on_metadata(player, player.props.metadata, manager)
|
||||
|
||||
|
||||
def signal_handler(sig, frame):
|
||||
logger.debug("Received signal to stop, exiting")
|
||||
sys.stdout.write("\n")
|
||||
sys.stdout.flush()
|
||||
# loop.quit()
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
def parse_arguments():
|
||||
parser = argparse.ArgumentParser()
|
||||
|
||||
# Increase verbosity with every occurence of -v
|
||||
parser.add_argument("-v", "--verbose", action="count", default=0)
|
||||
|
||||
# Define for which player we're listening
|
||||
parser.add_argument("--player")
|
||||
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
def main():
|
||||
arguments = parse_arguments()
|
||||
|
||||
# Initialize logging
|
||||
logging.basicConfig(
|
||||
stream=sys.stderr,
|
||||
level=logging.DEBUG,
|
||||
format="%(name)s %(levelname)s %(message)s",
|
||||
)
|
||||
|
||||
# Logging is set by default to WARN and higher.
|
||||
# With every occurrence of -v it's lowered by one
|
||||
logger.setLevel(max((3 - arguments.verbose) * 10, 0))
|
||||
|
||||
# Log the sent command line arguments
|
||||
logger.debug("Arguments received {}".format(vars(arguments)))
|
||||
|
||||
manager = Playerctl.PlayerManager()
|
||||
loop = GLib.MainLoop()
|
||||
|
||||
manager.connect(
|
||||
"name-appeared", lambda *args: on_player_appeared(*args, arguments.player)
|
||||
)
|
||||
manager.connect("player-vanished", on_player_vanished)
|
||||
|
||||
signal.signal(signal.SIGINT, signal_handler)
|
||||
signal.signal(signal.SIGTERM, signal_handler)
|
||||
|
||||
for player in manager.props.player_names:
|
||||
if arguments.player is not None and arguments.player != player.name:
|
||||
logger.debug(
|
||||
"{player} is not the filtered player, skipping it".format(
|
||||
player=player.name
|
||||
)
|
||||
)
|
||||
continue
|
||||
|
||||
init_player(manager, player)
|
||||
|
||||
loop.run()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
|
||||
WGON(){
|
||||
echo "VPN"
|
||||
WGS='true'
|
||||
}
|
||||
|
||||
WGOFF(){
|
||||
# echo "Off"
|
||||
WGS='false'
|
||||
}
|
||||
|
||||
ifconfig n2400 &>/dev/null && WGON ||WGOFF
|
||||
|
||||
if [ "$1" = '-toggle' ]; then
|
||||
if [ "$WGS" = 'true' ]; then
|
||||
sudo wg-quick down n2400 &>/dev/null
|
||||
else
|
||||
sudo wg-quick up n2400 &>/dev/null
|
||||
fi
|
||||
fi
|
||||
|
||||
exit 0
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
#!/usr/bin/env -S python3 -u
|
||||
# vi:syntax=python
|
||||
|
||||
|
||||
import os
|
||||
import signal
|
||||
|
||||
import i3ipc
|
||||
|
||||
pri_layout_code = "Eng"
|
||||
sec_layout_code = "Rus"
|
||||
sec_layout_name = "russian"
|
||||
input_event_change = "xkb_layout"
|
||||
|
||||
sway_sock_path = os.environ["SWAYSOCK"]
|
||||
sway = i3ipc.Connection(socket_path=sway_sock_path, auto_reconnect=False)
|
||||
|
||||
|
||||
def on_posix_signal(sig, frame):
|
||||
sway.main_quit()
|
||||
|
||||
|
||||
signal.signal(signal.SIGHUP, on_posix_signal)
|
||||
signal.signal(signal.SIGINT, on_posix_signal)
|
||||
signal.signal(signal.SIGQUIT, on_posix_signal)
|
||||
signal.signal(signal.SIGTERM, on_posix_signal)
|
||||
|
||||
# print the primary layout as it's the default
|
||||
print(pri_layout_code)
|
||||
|
||||
|
||||
def on_input_change(conn, event):
|
||||
if event.change != input_event_change:
|
||||
return
|
||||
if event.input.xkb_active_layout_name.lower() == sec_layout_name:
|
||||
print(sec_layout_code)
|
||||
else:
|
||||
print(pri_layout_code)
|
||||
|
||||
|
||||
def on_shutdown_or_reload(conn, event):
|
||||
conn.main_quit()
|
||||
|
||||
|
||||
sway.on(i3ipc.Event.INPUT, on_input_change)
|
||||
sway.on(i3ipc.Event.SHUTDOWN, on_shutdown_or_reload)
|
||||
sway.on(i3ipc.Event.SHUTDOWN_EXIT, on_shutdown_or_reload)
|
||||
sway.on(i3ipc.Event.SHUTDOWN_RESTART, on_shutdown_or_reload)
|
||||
sway.on(i3ipc.Event.BARCONFIG_UPDATE, on_shutdown_or_reload)
|
||||
sway.main()
|
||||
Executable
+184
@@ -0,0 +1,184 @@
|
||||
/*
|
||||
|
||||
Color Pallete
|
||||
|
||||
foreground: '#abb2bf'
|
||||
background: '#1f2227'
|
||||
alt-background: '#282c34'
|
||||
alt-foreground: '#1f2227'
|
||||
|
||||
black: '#282c34'
|
||||
red: '#e06c75'
|
||||
green: '#98c379'
|
||||
yellow: '#e5c07b'
|
||||
blue: '#81A1C1'
|
||||
magenta: '#c678dd'
|
||||
cyan: '#56b6c2'
|
||||
white: '#c8ccd4'
|
||||
|
||||
*/
|
||||
|
||||
* {
|
||||
border: 0px solid rgba(40, 44, 52, 0);
|
||||
border-radius: 2px;
|
||||
font-family: Iosevka Nerd Font, Font Awesome, Arial, sans-serif;
|
||||
font-weight: 700;
|
||||
font-size: 13px;
|
||||
min-height: 0;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: #1f2227;
|
||||
background: transparent;
|
||||
color: #c8ccd4;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
window > box {
|
||||
margin-left: 6.5px;
|
||||
margin-right: 6.5px;
|
||||
margin-bottom: 6.5px;
|
||||
background: #1f2227;
|
||||
color: #c8ccd4;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #282c34;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #c8ccd4;
|
||||
color: #282c34;
|
||||
}
|
||||
}
|
||||
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#disk,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#workspaces,
|
||||
#clock,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd {
|
||||
padding: 0 10px;
|
||||
margin: 4px 4px 4px 4px;
|
||||
color: #1f2227;
|
||||
}
|
||||
|
||||
#custom-launch {
|
||||
margin-right: 10px;
|
||||
margin-left: 4px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
margin-top: 4px;
|
||||
margin-bottom: 4px;
|
||||
font-size: 17px;
|
||||
background-color: #81a1c1;
|
||||
color: #1f2227;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 5px 5px;
|
||||
background-color: transparent;
|
||||
border-radius: 4px;
|
||||
margin-left: 1px;
|
||||
color: #c8ccd4;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background-color: #c8ccd4;
|
||||
color: #1f2227;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
background-color: #e06c75;
|
||||
color: #282c34;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: #e04753;
|
||||
}
|
||||
|
||||
#custom-spotify {
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
margin-top: 4px;
|
||||
margin-bottom: 4px;
|
||||
font-size: 17px;
|
||||
font-weight: 500;
|
||||
background-color: #98c379;
|
||||
color: #1f2227;
|
||||
}
|
||||
|
||||
#custom-xkblayout {
|
||||
color: #81a1c1;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #e06c75;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: #81a1c1;
|
||||
color: #282c34;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
color: #e5c07b;
|
||||
}
|
||||
|
||||
#network {
|
||||
color: #81a1c1;
|
||||
}
|
||||
|
||||
#memory {
|
||||
color: #e06c75;
|
||||
}
|
||||
|
||||
#battery {
|
||||
color: #e5c07b;
|
||||
}
|
||||
|
||||
#battery.charging,
|
||||
#battery.plugged {
|
||||
color: #e06c75;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: #e06c75;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: #98c379;
|
||||
}
|
||||
|
||||
#custom-off {
|
||||
margin-right: 4px;
|
||||
margin-left: 11px;
|
||||
padding-left: 10px;
|
||||
padding-right: 8px;
|
||||
margin-top: 4px;
|
||||
margin-bottom: 4px;
|
||||
font-size: 17px;
|
||||
background-color: #e06c75;
|
||||
color: #1f2227;
|
||||
}
|
||||
Executable
+10
@@ -0,0 +1,10 @@
|
||||
#!/bin/zsh
|
||||
|
||||
# ALIASES
|
||||
alias df='df -l -H'
|
||||
alias ls='ls_extended'
|
||||
alias sn='sncli -c ~/.config/sncli/snclirc'
|
||||
alias neofetch='neofetch --config ~/.config/neofetch/matbook.conf'
|
||||
alias sirot='pacman -Qdt && sudo pacman -Rs $(pacman -Qtdq)'
|
||||
alias swayconf='vim ~/.config/sway/config'
|
||||
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/zsh
|
||||
|
||||
# АРХИВЫ
|
||||
unpack() {
|
||||
if [ -f $1 ] ; then
|
||||
case $1 in
|
||||
*.tar.bz2) tar xjf $1 ;;
|
||||
*.tar.gz) tar xzf $1 ;;
|
||||
*.tar.xz) tar xf $1 ;;
|
||||
*.bz2) bunzip2 $1 ;;
|
||||
*.rar) unrar x $1 ;;
|
||||
*.gz) gunzip $1 ;;
|
||||
*.tar) tar xf $1 ;;
|
||||
*.tbz2) tar xjf $1 ;;
|
||||
*.tgz) tar xzf $1 ;;
|
||||
*.zip) unzip $1 ;;
|
||||
*.Z) uncompress $1 ;;
|
||||
*.7z) 7z x $1 ;;
|
||||
*) echo "$fg_bold[red]Ошибка:$reset_color Невозможно распаковать '$1'..." ;;
|
||||
esac
|
||||
else
|
||||
echo "$fg_bold[red]Ошибка:$reset_color '$1' - неподдерживаемый тип файла"
|
||||
fi
|
||||
}
|
||||
|
||||
pack() {
|
||||
if [ $1 ] ; then
|
||||
case $1 in
|
||||
tbz) tar cjvf $2.tar.bz2 $2 ;;
|
||||
tgz) tar czvf $2.tar.gz $2 ;;
|
||||
tar) tar cpvf $2.tar $2 ;;
|
||||
bz2) bzip $2 ;;
|
||||
gz) gzip -c -9 -n $2 > $2.gz ;;
|
||||
zip) zip -r $2.zip $2 ;;
|
||||
7z) 7z a $2.7z $2 ;;
|
||||
*) echo "$fg_bold[red]Ошибка:$reset_color '$1' не может быть упакован через pack()" ;;
|
||||
esac
|
||||
else
|
||||
echo "$fg_bold[red]Ошибка:$reset_color '$1' - неподдерживаемый тип файла"
|
||||
fi
|
||||
}
|
||||
|
||||
Executable
+16
@@ -0,0 +1,16 @@
|
||||
#!/bin/zsh
|
||||
# coding: utf-8
|
||||
# Author: Maksim Totmin, @iMaciaveller
|
||||
|
||||
#BINDS
|
||||
|
||||
bindkey '^[[24~' clear-screen
|
||||
bindkey "^[OH" beginning-of-line
|
||||
bindkey "^[OF" end-of-line
|
||||
bindkey '^[[1;5D' backward-word
|
||||
bindkey '^[[1;5C' forward-word
|
||||
|
||||
bindkey "^A" vi-beginning-of-line
|
||||
bindkey "^E" vi-end-of-line
|
||||
|
||||
bindkey '^R' history-incremental-search-backward
|
||||
Executable
+9
@@ -0,0 +1,9 @@
|
||||
#!/bin/zsh
|
||||
|
||||
#git
|
||||
|
||||
autoload -Uz vcs_info
|
||||
precmd_vcs_info() { vcs_info }
|
||||
precmd_functions+=( precmd_vcs_info )
|
||||
setopt prompt_subst
|
||||
zstyle ':vcs_info:git:*' formats '[ %b]'
|
||||
Executable
+19
@@ -0,0 +1,19 @@
|
||||
#!/bin/zsh
|
||||
|
||||
#HISTORY
|
||||
##Где хранить историю
|
||||
HISTFILE=~/.config/zsh-history
|
||||
##Число команд, сохраняемых в HISTFILE
|
||||
SAVEHIST=5000
|
||||
##Чucлo кoмaнд, coxpaняeмыx в сеансе
|
||||
HISTSIZE=5000
|
||||
##Игнорировать повторяющиеся команды
|
||||
setopt HIST_IGNORE_ALL_DUPS
|
||||
##Игнopupoвать лишние пpoбeлы
|
||||
setopt HIST_IGNORE_SPACE
|
||||
##Удалять из файл истории пустые строки
|
||||
setopt HIST_REDUCE_BLANKS
|
||||
##время выполнения команд
|
||||
setopt extended_history
|
||||
##История становится общей между всеми сессиями
|
||||
setopt share_history
|
||||
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/zsh
|
||||
|
||||
autoload -Uz compinit
|
||||
compinit
|
||||
|
||||
# Completion for kitty
|
||||
kitty + complete setup zsh | source /dev/stdin
|
||||
|
||||
# Kitty aliases
|
||||
alias icat='kitty +kitten icat'
|
||||
alias clear='icat --clear && clear'
|
||||
Executable
+36
@@ -0,0 +1,36 @@
|
||||
#!/bin/zsh
|
||||
|
||||
autoload -U colors && colors
|
||||
|
||||
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/mat/.local/bin:/usr/bin/core_perl"
|
||||
export EDITOR="vim"
|
||||
export MUTT_EDITOR="vim"
|
||||
export VISUAL="vim"
|
||||
export VIMINIT="source ~/.config/vim/vimrc"
|
||||
export SSH_KEY_PATH="~/.ssh/"
|
||||
export TERM="xterm-kitty"
|
||||
export TERMINAL="kitty"
|
||||
export MOZ_ENABLE_WAYLAND=1
|
||||
|
||||
#НАВИГАЦИЯ
|
||||
##авто cd
|
||||
setopt autocd
|
||||
setopt extended_glob
|
||||
|
||||
##автодополнение TAB
|
||||
autoload -Uz compinit && compinit
|
||||
_comp_options+=(globdots)
|
||||
|
||||
# Установка-снятие опций шелла
|
||||
setopt notify globdots correct pushdtohome cdablevars autolist
|
||||
setopt correctall autocd recexact longlistjobs
|
||||
setopt autoresume histignoredups pushdsilent noclobber
|
||||
setopt autopushd pushdminus extendedglob rcquotes mailwarning
|
||||
unsetopt bgnice autoparamslash
|
||||
unsetopt nomatch
|
||||
|
||||
autoload -Uz bracketed-paste-magic
|
||||
zle -N bracketed-paste bracketed-paste-magic
|
||||
autoload -Uz url-quote-magic
|
||||
zle -N self-insert url-quote-magic
|
||||
unsetopt nomatch
|
||||
Executable
+5
@@ -0,0 +1,5 @@
|
||||
#!/bin/zsh
|
||||
|
||||
# PROMPTS
|
||||
PROMPT=%{$fg_bold[blue]%}'[%n][%~]» '%{$reset_color%}
|
||||
RPROMPT=%{$fg_bold[green]%}\$vcs_info_msg_0_%{$reset_color%}%{$fg_bold[red]%}'[%T]'%{$reset_color%}
|
||||
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/zsh
|
||||
|
||||
for conf in ~/.config/zsh/*.zsh; do
|
||||
source $conf
|
||||
done
|
||||
|
||||
#start sway
|
||||
if [ "$(tty)" = "/dev/tty1" ]; then
|
||||
exec sway
|
||||
fi
|
||||
|
||||
Executable
+15
@@ -0,0 +1,15 @@
|
||||
#!/bin/sh
|
||||
|
||||
# usage: import-gsettings
|
||||
config="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini"
|
||||
if [ ! -f "$config" ]; then exit 1; fi
|
||||
|
||||
gnome_schema="org.gnome.desktop.interface"
|
||||
gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||
icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||
cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||
font_name="$(grep 'gtk-font-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||
gsettings set "$gnome_schema" gtk-theme "$gtk_theme"
|
||||
gsettings set "$gnome_schema" icon-theme "$icon_theme"
|
||||
gsettings set "$gnome_schema" cursor-theme "$cursor_theme"
|
||||
gsettings set "$gnome_schema" font-name "$font_name"
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
option0=" Lock"
|
||||
option1=" Poweroff"
|
||||
option2=" Reboot"
|
||||
option3=" Exit"
|
||||
|
||||
option4="Enable Display"
|
||||
option5="Disable Display"
|
||||
|
||||
options="$option0\n$option1\n$option2\n$option3\n$option4\n$option5"
|
||||
|
||||
selected="$(echo -e "$options" | rofi -lines 4 -dmenu -P " Powermenu:")"
|
||||
|
||||
case $selected in
|
||||
$option0)
|
||||
swaylock \
|
||||
--screenshots \
|
||||
--clock \
|
||||
--indicator \
|
||||
--indicator-radius 100 \
|
||||
--indicator-thickness 7 \
|
||||
--effect-blur 6x5 \
|
||||
--effect-vignette 0.5:0.5 \
|
||||
--ring-color 1f2227 \
|
||||
--key-hl-color e06c75 \
|
||||
--line-color 00000000 \
|
||||
--inside-color 00000088 \
|
||||
--separator-color 00000000 \
|
||||
--grace 2 \
|
||||
--fade-in 0.2;;
|
||||
$option1)
|
||||
systemctl poweroff;;
|
||||
$option2)
|
||||
systemctl reboot;;
|
||||
$option3)
|
||||
swaymsg exit;;
|
||||
$option4)
|
||||
swaymsg output eDP-1 enable;;
|
||||
$option5)
|
||||
swaymsg output eDP-1 disable;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
Executable
+5
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
slurp | grim -g - $HOME/$(date +'screenshot_%Y-%m-%d-%H%M%S.png')
|
||||
|
||||
exit 0
|
||||
@@ -0,0 +1,11 @@
|
||||
gpu_stats
|
||||
gpu_temp
|
||||
gpu_power
|
||||
cpu_stats
|
||||
cpu_temp
|
||||
cpu_power
|
||||
io_read
|
||||
fps
|
||||
frametime
|
||||
frame_timing
|
||||
vkbasalt
|
||||
@@ -0,0 +1,8 @@
|
||||
[General]
|
||||
startOnSysTray=true
|
||||
|
||||
[Window]
|
||||
main-height=1356
|
||||
main-width=3412
|
||||
main-x-pos=2560
|
||||
main-y-pos=0
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,190 @@
|
||||
# My cozy Hyprland conf
|
||||
|
||||
autogenerated = 0
|
||||
|
||||
# Monitor setting
|
||||
# 2 normal mode
|
||||
misc:disable_hyprland_logo=true
|
||||
monitor=DP-1,3440x1440@144,2560x0,1
|
||||
monitor=DP-2,2560x1440@165,0x0,1
|
||||
# slave vertical
|
||||
#monitor=DP-1,3440x1440@144,1440x0,1
|
||||
#monitor=DP-2,2560x1440@165,0x0,1,transform,1
|
||||
|
||||
# Fix slow startup
|
||||
exec-once=systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once=systemctl --user import-environment QT_QPA_PLATFORMTHEME
|
||||
exec-once=dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once=dbus-update-activation-environment --systemd --all
|
||||
exec-once=gio mime inode/directory thunar.desktop
|
||||
exec-once=xdg-mime default thunar.desktop inode/directory
|
||||
|
||||
# Keyboard
|
||||
input {
|
||||
kb_layout = us,ru
|
||||
kb_options = grp:caps_toggle,grp_led:caps
|
||||
follow_mouse = 1
|
||||
touchpad {
|
||||
natural_scroll = no
|
||||
}
|
||||
|
||||
sensitivity = 0
|
||||
}
|
||||
|
||||
# Window Rules
|
||||
windowrule = workspace 2 silent,firefox
|
||||
windowrule = workspace 4 silent,discord
|
||||
windowrulev2 = tile, noblur, class:^(Pulse Browser)(.*)$
|
||||
windowrulev2 = tile, class:^(steam_app)(.*)$
|
||||
windowrulev2 = tile, class:^(thunar)(.*)$
|
||||
windowrulev2 = tile, class:^(lutris)(.*)$
|
||||
windowrulev2 = workspace 2, class:^(Pulse Browser)$
|
||||
windowrulev2 = workspace 3, class:^(Steam)$
|
||||
windowrulev2 = workspace 3, class:^(lutris)$
|
||||
windowrulev2 = workspace 6, class:^(Spotify)$
|
||||
windowrulev2 = workspace 8, class:^(Corectrl)$
|
||||
windowrulev2 = workspace 3, class:^(gamescope)$
|
||||
windowrulev2 = float, class:^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
|
||||
# Autostart
|
||||
exec-once=import-gsettings
|
||||
exec-once=desktop-portal
|
||||
exec-once=/usr/lib/polkit-kde-authentication-agent-1
|
||||
exec-once=night-mode
|
||||
exec-once=wallpapers
|
||||
exec-once=swayosd
|
||||
exec-once=waybar
|
||||
exec-once=swaync
|
||||
exec-once=[workspace 4 silent;noanim] discord
|
||||
exec-once=transmission-daemon
|
||||
exec-once=thunar --daemon
|
||||
exec-once=steam-native -silent
|
||||
exec-once=polychromatic-cli -n "Razer DeathAdder V2 Pro (Wireless)" --dpi 600
|
||||
|
||||
# Styling
|
||||
general {
|
||||
gaps_in = 5
|
||||
gaps_out = 12
|
||||
border_size = 2
|
||||
col.active_border = rgba(313455ee) rgba(00ff99ee) 45deg
|
||||
col.inactive_border = rgba(595959aa)
|
||||
|
||||
layout = dwindle
|
||||
|
||||
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 4
|
||||
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
bezier = overshot, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = smoothOut, 0.36, 0, 0.66, -0.56
|
||||
bezier = smoothIn, 0.25, 1, 0.5, 1
|
||||
|
||||
animation = windows, 1, 5, overshot, slide
|
||||
animation = windowsOut, 1, 4, smoothOut, slide
|
||||
animation = windowsMove, 1, 4, default
|
||||
animation = border, 1, 10, default
|
||||
animation = fade, 1, 10, smoothIn
|
||||
animation = fadeDim, 1, 10, smoothIn
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
|
||||
dwindle {
|
||||
pseudotile = yes
|
||||
preserve_split = yes
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = off
|
||||
}
|
||||
|
||||
$mainMod = SUPER
|
||||
|
||||
# KeyBinding
|
||||
bind = $mainMod, RETURN, exec, kitty
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod, M, exit,
|
||||
bind = $mainMod, E, exec, dolphin
|
||||
bind = $mainMod, V, togglefloating,
|
||||
bind = $mainMod, R, exec, menurun
|
||||
bind = $mainMod, D, exec, menudrun
|
||||
bind = $mainMod, Y, exec, menupass
|
||||
bind = $mainMod, A, exec, menuaudio
|
||||
bind = $mainMod, W, pseudo,
|
||||
bind = $mainMod, S, togglesplit,
|
||||
bind = $mainMod, P, exec, screenshot
|
||||
bind = $mainMod, B, exec, pulse-browser
|
||||
bind = $mainMod, X, exec, wl-paste
|
||||
bind = $mainMod, G, exec, menugames
|
||||
bind = $mainMod, Z, exec, killall -SIGUSR1 waybar
|
||||
bind = $mainMod, ESCAPE, exec, menupower
|
||||
bind = $mainMod SHIFT, Q, exec, hyprctl kill
|
||||
bind = $mainMod SHIFT, N, exec, swaync-client -t -sw
|
||||
bind = $mainMod SHIFT, B, exec, pulse-browser --private-window
|
||||
bind = $mainMod SHIFT, W, exec, menuwallpapers
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
|
||||
# Switch workspaces with mainMod + [1-8]
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
|
||||
# Binding workspaces
|
||||
workspace = DP-1, 1, default:true
|
||||
workspace = DP-1, 2, default:true
|
||||
workspace = DP-1, 3, default:true
|
||||
workspace = DP-1, 4, default:true
|
||||
workspace = DP-2, 5, default:true
|
||||
workspace = DP-2, 6, default:true
|
||||
workspace = DP-2, 7, default:true
|
||||
workspace = DP-2, 8, default:true
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
# Binding volume and caps osd
|
||||
binde = $mainMod, F11, exec, swayosd --output-volume lower
|
||||
binde = $mainMod, F12, exec, swayosd --output-volume raise
|
||||
|
||||
# Apps a really long time to open
|
||||
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
font_family JetBrains Mono
|
||||
bold_font JetBrains Mono Bold
|
||||
italic_font JetBrains Mono Italic
|
||||
|
||||
font_size 11.0
|
||||
|
||||
enable_audio_bell no
|
||||
window_border_width 0.0
|
||||
window_margin_width 2
|
||||
window_padding_width 3
|
||||
confirm_os_window_close 0
|
||||
|
||||
tab_title_template {index}:{title}
|
||||
tab_bar_min_tabs 2
|
||||
tab_bar_edge top
|
||||
tab_bar_style powerline
|
||||
|
||||
clear_all_shortcuts yes
|
||||
kitty_mod ctrl
|
||||
map kitty_mod+insert copy_to_clipboard
|
||||
map shift+insert paste_from_clipboard
|
||||
map kitty_mod+t new_tab
|
||||
map kitty_mod+w close_tab
|
||||
map alt+l next_tab
|
||||
map kitty_mod+right next_tab
|
||||
map alt+h previous_tab
|
||||
map kitty_mod+left previous_tab
|
||||
map kitty_mod+alt+t set_tab_title
|
||||
map kitty_mod+g axis vertical
|
||||
|
||||
map alt+1 goto_tab 1
|
||||
map alt+2 goto_tab 2
|
||||
map alt+3 goto_tab 3
|
||||
map alt+4 goto_tab 4
|
||||
map alt+5 goto_tab 5
|
||||
map alt+6 goto_tab 6
|
||||
map alt+7 goto_tab 7
|
||||
map alt+8 goto_tab 8
|
||||
map alt+9 goto_tab 9
|
||||
|
||||
map kitty_mod+alt+r launch --type=tab ranger
|
||||
|
||||
include ./theme.conf
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
background #303030
|
||||
foreground #abb2bf
|
||||
selection_background #abb2bf
|
||||
selection_foreground #282c34
|
||||
url_color #565c64
|
||||
cursor #abb2bf
|
||||
active_border_color #545862
|
||||
inactive_border_color #353b45
|
||||
active_tab_background #e06c75
|
||||
active_tab_foreground #abb2bf
|
||||
inactive_tab_background #323232
|
||||
inactive_tab_foreground #565c64
|
||||
tab_bar_background #303030
|
||||
color0 #282c34
|
||||
color8 #282c34
|
||||
color1 #e06c75
|
||||
color9 #e06c75
|
||||
color2 #98c379
|
||||
color10 #98c379
|
||||
color3 #e5c07b
|
||||
color11 #e5c07b
|
||||
color4 #81A1C1
|
||||
color12 #81A1C1
|
||||
color5 #c678dd
|
||||
color13 #c678dd
|
||||
color6 #56b6c2
|
||||
color14 #56b6c2
|
||||
color7 #c8ccd4
|
||||
color15 #c8ccd4
|
||||
@@ -0,0 +1,23 @@
|
||||
set shell zsh
|
||||
set shellopts '-eu'
|
||||
set ifs "\n"
|
||||
set cursorpreviewfmt "\033[7;2m"
|
||||
cmd open &xdg-open $f
|
||||
|
||||
#Binding
|
||||
map U !du -csh *
|
||||
map a rename
|
||||
map o open
|
||||
map <f-6> :push a
|
||||
map <f-7> :push %mkdir<space>
|
||||
map <f-8> delete
|
||||
|
||||
map gh cd ~
|
||||
map gg cd ..
|
||||
map gr cd ~/Desktop
|
||||
map gd cd ~/Documents
|
||||
map gl cd ~/Games/Lutris
|
||||
map gs cd ~/Games/Steam
|
||||
|
||||
map xc !gpg -c $f
|
||||
map xd !gpg $f
|
||||
@@ -0,0 +1,51 @@
|
||||
# Config
|
||||
set my_name = 'Ivanov Ivan'
|
||||
set my_user = 'ivan@ivanov.ru'
|
||||
set my_ms = 'mail.ivanov.ru'
|
||||
source 'gpg -d ~/.config/mutt/password.gpg |'
|
||||
|
||||
# General
|
||||
set header_cache = '~/.config/mutt/totmin.ru/cache/headers'
|
||||
set message_cachedir = '~/.config/mutt/totmin.ru/cache/bodies'
|
||||
|
||||
# Receive options
|
||||
set imap_check_subscribed
|
||||
unset imap_passive
|
||||
set imap_keepalive = 900
|
||||
set mail_check = 1800
|
||||
|
||||
# Remote folder
|
||||
set imap_user = $my_user
|
||||
set imap_pass = $my_pass
|
||||
set folder = 'imaps://'$my_ms':993'
|
||||
set spoolfile = '+INBOX'
|
||||
set postponed = '+Drafts'
|
||||
set record = '+Sent'
|
||||
set sort_aux = last-date-received
|
||||
set sort = reverse-threads
|
||||
set fast_reply = yes
|
||||
set include = yes
|
||||
set forward_quote = yes
|
||||
|
||||
# Send options
|
||||
set ssl_starttls = yes
|
||||
set ssl_force_tls = yes
|
||||
set realname = $my_name
|
||||
set from = $my_user
|
||||
set smtp_url = 'smtps://'$my_user'@'$my_ms':587/'
|
||||
set smtp_pass = $my_pass
|
||||
|
||||
# colors
|
||||
color normal white default
|
||||
color attachment brightyellow default
|
||||
color hdrdefault red default
|
||||
color indicator black red
|
||||
color markers brightred default
|
||||
color quoted green default
|
||||
color signature cyan default
|
||||
color status black blue
|
||||
color tilde blue default
|
||||
color tree blue default
|
||||
|
||||
color index red black ~D
|
||||
color index magenta black ~T
|
||||
@@ -0,0 +1,113 @@
|
||||
[sncli]
|
||||
cfg_sn_username = myusername
|
||||
cfg_sn_password = mysecretpass
|
||||
cfg_db_path = /home/mat/.config/sncli/base
|
||||
cfg_search_tags = yes
|
||||
cfg_sort_mode = date
|
||||
cfg_pinned_ontop = yes
|
||||
cfg_tabstop = 4
|
||||
cfg_status_bar = yes
|
||||
cfg_default_markdown = yes
|
||||
cfg_format_stftime = %d %B %Y
|
||||
cfg_format_note_title = [%D] %F %-N %T
|
||||
cfg_editor = vim +{line}
|
||||
cfg_pager = less -c +{line} -N {fname}
|
||||
cfg_diff = colordiff -bl
|
||||
cfg_max_logs = 5
|
||||
cfg_log_timeout = 5
|
||||
cfg_log_reversed = yes
|
||||
|
||||
### KEYBINDING
|
||||
kb_sort_date = d
|
||||
kb_sort_alpha = a
|
||||
kb_sort_tags = ctrl t
|
||||
kb_help = h
|
||||
kb_quit = q
|
||||
kb_sync = S
|
||||
kb_down = j
|
||||
kb_up = k
|
||||
kb_page_down = space
|
||||
kb_page_up = b
|
||||
kb_half_page_down = ctrl d
|
||||
kb_half_page_up = ctrl u
|
||||
kb_bottom = G
|
||||
kb_top = g
|
||||
kb_status = s
|
||||
kb_create_note = C
|
||||
kb_edit_note = e
|
||||
kb_view_note = enter
|
||||
kb_view_note_ext = meta enter
|
||||
kb_view_note_json = O
|
||||
kb_pipe_note = |
|
||||
kb_view_log = l
|
||||
kb_note_trash = T
|
||||
kb_note_pin = p
|
||||
kb_note_markdown = m
|
||||
kb_note_tags = t
|
||||
kb_search_gstyle = /
|
||||
kb_search_regex = meta /
|
||||
kb_search_prev_gstyle = ?
|
||||
kb_search_prev_regex = meta ?
|
||||
kb_search_next = n
|
||||
kb_search_prev = N
|
||||
kb_clear_search = A
|
||||
kb_view_next_note = J
|
||||
kb_view_prev_note = K
|
||||
kb_tabstop2 = 2
|
||||
kb_tabstop4 = 4
|
||||
kb_tabstop8 = 8
|
||||
kb_prev_version = <
|
||||
kb_next_version = >
|
||||
kb_diff_version = D
|
||||
kb_restore_version = R
|
||||
kb_latest_version = L
|
||||
kb_select_version = #
|
||||
kb_copy_note_text = y
|
||||
|
||||
### COLORS
|
||||
clr_status_bar_fg = dark gray
|
||||
clr_status_bar_bg = light gray
|
||||
clr_user_input_bar_fg = white
|
||||
clr_user_input_bar_bg = light red
|
||||
clr_default_fg = default
|
||||
clr_default_bg = default
|
||||
clr_note_focus_fg = white
|
||||
clr_note_focus_bg = light red
|
||||
clr_note_title_day_fg = light red
|
||||
clr_note_title_day_bg = default
|
||||
clr_note_title_week_fg = light green
|
||||
clr_note_title_week_bg = default
|
||||
clr_note_title_month_fg = brown
|
||||
clr_note_title_month_bg = default
|
||||
clr_note_title_year_fg = light blue
|
||||
clr_note_title_year_bg = default
|
||||
clr_note_title_ancient_fg = light blue
|
||||
clr_note_title_ancient_bg = default
|
||||
clr_note_date_fg = dark blue
|
||||
clr_note_date_bg = default
|
||||
clr_note_flags_fg = dark magenta
|
||||
clr_note_flags_bg = default
|
||||
clr_note_tags_fg = dark red
|
||||
clr_note_tags_bg = default
|
||||
|
||||
## PAGER
|
||||
clr_note_content_fg = default
|
||||
clr_note_content_bg = default
|
||||
clr_note_content_focus_fg = white
|
||||
clr_note_content_focus_bg = light red
|
||||
clr_note_content_old_fg = yellow
|
||||
clr_note_content_old_bg = dark gray
|
||||
clr_note_content_old_focus_fg = white
|
||||
clr_note_content_old_focus_bg = light red
|
||||
clr_log_fg = dark gray
|
||||
clr_log_bg = light gray
|
||||
clr_help_focus_fg = white
|
||||
clr_help_focus_bg = light red
|
||||
clr_help_header_fg = dark blue
|
||||
clr_help_header_bg = default
|
||||
clr_help_config_fg = dark green
|
||||
clr_help_config_bg = default
|
||||
clr_help_value_fg = dark red
|
||||
clr_help_value_bg = default
|
||||
clr_help_descr_fg = default
|
||||
clr_help_descr_bg = default
|
||||
@@ -0,0 +1,73 @@
|
||||
# Sample config file
|
||||
|
||||
# The theme colours can be an rgb string of the form "255, 255, 255" or a string that references the colours from your terminal theme: Reset, Black, Red, Green, Yellow, Blue, Magenta, Cyan, Gray, DarkGray, LightRed, LightGreen, LightYellow, LightBlue, LightMagenta, LightCyan, White.
|
||||
theme:
|
||||
active: LightRed # current playing song in list
|
||||
banner: LightRed # the "spotify-tui" banner on launch
|
||||
error_border: Red # error dialog border
|
||||
error_text: LightRed # error message text (e.g. "Spotify API reported error 404")
|
||||
hint: Yellow # hint text in errors
|
||||
hovered: Red # hovered pane border
|
||||
inactive: Gray # borders of inactive panes
|
||||
playbar_background: Black # background of progress bar
|
||||
playbar_progress: LightRed # filled-in part of the progress bar
|
||||
playbar_progress_text: Red # song length and time played/left indicator in the progress bar
|
||||
playbar_text: White # artist name in player pane
|
||||
selected: LightRed # a) selected pane border, b) hovered item in list, & c) track title in player
|
||||
text: "255, 255, 255" # text in panes
|
||||
header: White # header text in panes (e.g. 'Title', 'Artist', etc.)
|
||||
|
||||
behavior:
|
||||
seek_milliseconds: 5000
|
||||
volume_increment: 10
|
||||
# The lower the number the higher the "frames per second". You can decrease this number so that the audio visualisation is smoother but this can be expensive!
|
||||
tick_rate_milliseconds: 7
|
||||
# Enable text emphasis (typically italic/bold text styling). Disabling this might be important if the terminal config is otherwise restricted and rendering text escapes interferes with the UI.
|
||||
enable_text_emphasis: false
|
||||
# Controls whether to show a loading indicator in the top right of the UI whenever communicating with Spotify API
|
||||
show_loading_indicator: true
|
||||
# Disables the responsive layout that makes the search bar smaller on bigger
|
||||
# screens and enforces a wide search bar
|
||||
enforce_wide_search_bar: false
|
||||
# Determines the text icon to display next to "liked" Spotify items, such as
|
||||
# liked songs and albums, or followed artists. Can be any length string.
|
||||
# These icons require a patched nerd font.
|
||||
liked_icon: ♥
|
||||
shuffle_icon: 🔀
|
||||
repeat_track_icon: 🔂
|
||||
repeat_context_icon: 🔁
|
||||
playing_icon: ▶
|
||||
paused_icon: ⏸
|
||||
# Sets the window title to "spt - Spotify TUI" via ANSI escape code.
|
||||
set_window_title: true
|
||||
|
||||
keybindings:
|
||||
# Key stroke can be used if it only uses two keys:
|
||||
# ctrl-q works,
|
||||
# ctrl-alt-q doesn't.
|
||||
back: "ctrl-q"
|
||||
|
||||
jump_to_album: "a"
|
||||
|
||||
# Shift modifiers use a capital letter (also applies with other modifier keys
|
||||
# like ctrl-A)
|
||||
jump_to_artist_album: "A"
|
||||
|
||||
manage_devices: "d"
|
||||
decrease_volume: "-"
|
||||
increase_volume: "="
|
||||
toggle_playback: " "
|
||||
seek_backwards: "<"
|
||||
seek_forwards: ">"
|
||||
next_track: "n"
|
||||
previous_track: "p"
|
||||
copy_song_url: "c"
|
||||
copy_album_url: "C"
|
||||
help: "?"
|
||||
shuffle: "ctrl-s"
|
||||
repeat: "r"
|
||||
search: "/"
|
||||
audio_analysis: "v"
|
||||
jump_to_context: "o"
|
||||
basic_view: "B"
|
||||
add_item_to_queue: "z"
|
||||
@@ -0,0 +1,9 @@
|
||||
[global]
|
||||
username = "myusername"
|
||||
password = "mysecretpass"
|
||||
backend = "pulseaudio"
|
||||
device_name = "Rockethype"
|
||||
bitrate = 320
|
||||
cache_path = "/home/mat/.cache/spotifyd"
|
||||
volume-normalisation = true
|
||||
normalisation-pregain = 0
|
||||
@@ -0,0 +1,67 @@
|
||||
{
|
||||
"$schema": "/etc/xdg/swaync/configSchema.json",
|
||||
"positionX": "right",
|
||||
"positionY": "top",
|
||||
"layer": "top",
|
||||
"cssPriority": "application",
|
||||
"control-center-margin-top": 0,
|
||||
"control-center-margin-bottom": 0,
|
||||
"control-center-margin-right": 0,
|
||||
"control-center-margin-left": 0,
|
||||
"notification-icon-size": 48,
|
||||
"notification-body-image-height": 100,
|
||||
"notification-body-image-width": 200,
|
||||
"timeout": 10,
|
||||
"timeout-low": 5,
|
||||
"timeout-critical": 0,
|
||||
"fit-to-screen": true,
|
||||
"control-center-width": 512,
|
||||
"control-center-height": 600,
|
||||
"notification-window-width": 500,
|
||||
"keyboard-shortcuts": true,
|
||||
"image-visibility": "when-available",
|
||||
"transition-time": 200,
|
||||
"hide-on-clear": true,
|
||||
"hide-on-action": true,
|
||||
"script-fail-notify": true,
|
||||
"scripts": {
|
||||
"example-script": {
|
||||
"exec": "echo 'Do something...'",
|
||||
"urgency": "Normal"
|
||||
},
|
||||
"example-action-script": {
|
||||
"exec": "echo 'Do something actionable!'",
|
||||
"urgency": "Normal",
|
||||
"run-on": "action"
|
||||
}
|
||||
},
|
||||
"notification-visibility": {
|
||||
"example-name": {
|
||||
"state": "muted",
|
||||
"urgency": "Low",
|
||||
"app-name": "Spotify"
|
||||
}
|
||||
},
|
||||
"widgets": [
|
||||
"title",
|
||||
"notifications"
|
||||
],
|
||||
"widget-config": {
|
||||
"title": {
|
||||
"text": "Control Center",
|
||||
"clear-all-button": true,
|
||||
"button-text": ""
|
||||
},
|
||||
"dnd": {
|
||||
"text": "DND"
|
||||
},
|
||||
"label": {
|
||||
"max-lines": 5,
|
||||
"text": "Label Text"
|
||||
},
|
||||
"mpris": {
|
||||
"image-size": 96,
|
||||
"image-radius": 6
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,247 @@
|
||||
/*
|
||||
* vim: ft=less
|
||||
*/
|
||||
|
||||
@define-color cc-bg rgba(50, 50, 50, 1);
|
||||
|
||||
@define-color noti-border-color rgba(255, 255, 255, 0.15);
|
||||
@define-color noti-bg rgb(48, 48, 48);
|
||||
@define-color noti-bg-hover rgb(56, 56, 56);
|
||||
@define-color noti-bg-focus rgba(224, 108, 117, 0.9);
|
||||
@define-color noti-close-bg rgba(255, 255, 255, 0.1);
|
||||
@define-color noti-close-bg-hover rgba(255, 255, 255, 0.15);
|
||||
|
||||
@define-color bg-selected rgb(0, 128, 255);
|
||||
|
||||
.notification-row {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.notification-row:focus,
|
||||
.notification-row:hover {
|
||||
background: @noti-bg-focus;
|
||||
}
|
||||
|
||||
.notification {
|
||||
border-radius: 6px;
|
||||
margin: 16px 16px;
|
||||
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3), 0 1px 3px 1px rgba(0, 0, 0, 0.7),
|
||||
0 2px 6px 2px rgba(0, 0, 0, 0.3);
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/* Uncomment to enable specific urgency colors
|
||||
.low {
|
||||
background: yellow;
|
||||
padding: 6px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.normal {
|
||||
background: green;
|
||||
padding: 6px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.critical {
|
||||
background: red;
|
||||
padding: 6px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
*/
|
||||
|
||||
.notification-content {
|
||||
background: transparent;
|
||||
padding: 6px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.close-button {
|
||||
background: @noti-close-bg;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
padding: 0;
|
||||
border-radius: 100%;
|
||||
margin-top: 10px;
|
||||
margin-right: 16px;
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
min-width: 24px;
|
||||
min-height: 24px;
|
||||
}
|
||||
|
||||
.close-button:hover {
|
||||
box-shadow: none;
|
||||
background: @noti-close-bg-hover;
|
||||
transition: all 0.15s ease-in-out;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.notification-default-action,
|
||||
.notification-action {
|
||||
padding: 4px;
|
||||
margin: 0;
|
||||
box-shadow: none;
|
||||
background: @noti-bg;
|
||||
border: 1px solid @noti-border-color;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.notification-default-action:hover,
|
||||
.notification-action:hover {
|
||||
-gtk-icon-effect: none;
|
||||
background: @noti-bg-hover;
|
||||
}
|
||||
|
||||
.notification-default-action {
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
/* When alternative actions are visible */
|
||||
.notification-default-action:not(:only-child) {
|
||||
border-bottom-left-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
}
|
||||
|
||||
.notification-action {
|
||||
border-radius: 0px;
|
||||
border-top: none;
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
/* add bottom border radius to eliminate clipping */
|
||||
.notification-action:first-child {
|
||||
border-bottom-left-radius: 6px;
|
||||
}
|
||||
|
||||
.notification-action:last-child {
|
||||
border-bottom-right-radius: 6px;
|
||||
border-right: 1px solid @noti-border-color;
|
||||
}
|
||||
|
||||
.image {
|
||||
}
|
||||
|
||||
.body-image {
|
||||
margin-top: 6px;
|
||||
background-color: white;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.summary {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
background: transparent;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
background: transparent;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
margin-right: 18px;
|
||||
}
|
||||
|
||||
.body {
|
||||
font-size: 15px;
|
||||
font-weight: normal;
|
||||
background: transparent;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
/* The "Notifications" and "Do Not Disturb" text widget */
|
||||
.top-action-title {
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.control-center {
|
||||
background: @cc-bg;
|
||||
margin-right: 12.5px;
|
||||
margin-top: 12.5px;
|
||||
margin-bottom: 12.5px;
|
||||
border-radius: 6px;
|
||||
border: 3px solid rgb(40, 44, 52);
|
||||
border-color: #282c34;
|
||||
}
|
||||
|
||||
.control-center-list {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.floating-notifications {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/* Window behind control center and on all other monitors */
|
||||
.blank-window {
|
||||
background: alpha(black, 0.25);
|
||||
}
|
||||
|
||||
/*** Widgets ***/
|
||||
|
||||
/* Title widget */
|
||||
.widget-title {
|
||||
margin: 8px;
|
||||
font-size: 1.5rem;
|
||||
}
|
||||
.widget-title > button {
|
||||
font-size: initial;
|
||||
color: white;
|
||||
text-shadow: none;
|
||||
background: @noti-bg;
|
||||
border: 1px solid @noti-border-color;
|
||||
box-shadow: none;
|
||||
border-radius: 6px;
|
||||
}
|
||||
.widget-title > button:hover {
|
||||
background: @noti-bg-hover;
|
||||
}
|
||||
|
||||
/* DND widget */
|
||||
.widget-dnd {
|
||||
margin: 8px;
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
.widget-dnd > switch {
|
||||
font-size: initial;
|
||||
border-radius: 12px;
|
||||
background: @noti-bg;
|
||||
border: 1px solid @noti-border-color;
|
||||
box-shadow: none;
|
||||
}
|
||||
.widget-dnd > switch:checked {
|
||||
background: @bg-selected;
|
||||
}
|
||||
.widget-dnd > switch slider {
|
||||
background: @noti-bg-hover;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
/* Label widget */
|
||||
.widget-label {
|
||||
margin: 8px;
|
||||
}
|
||||
.widget-label > label {
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
|
||||
/* Mpris widget */
|
||||
.widget-mpris {
|
||||
/* The parent to all players */
|
||||
}
|
||||
.widget-mpris-player {
|
||||
padding: 8px;
|
||||
margin: 8px;
|
||||
}
|
||||
.widget-mpris-title {
|
||||
font-weight: bold;
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
.widget-mpris-subtitle {
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
@@ -0,0 +1,596 @@
|
||||
music_dir = ["/home/mat/Music", "/home/mat/Downloads/Vinyl-Rip"]
|
||||
player_port = 50101
|
||||
player_loop_mode = "Playlist"
|
||||
player_volume = 90
|
||||
player_speed = 10
|
||||
player_gapless = true
|
||||
podcast_simultanious_download = 3
|
||||
podcast_max_retries = 3
|
||||
podcast_dir = "/home/mat/Music/podcast"
|
||||
player_seek_step = "Auto"
|
||||
player_remember_last_played_position = "Auto"
|
||||
enable_exit_confirmation = true
|
||||
playlist_display_symbol = true
|
||||
playlist_select_random_track_quantity = 20
|
||||
playlist_select_random_album_quantity = 5
|
||||
theme_selected = "Rockethype"
|
||||
kill_daemon_when_quit = true
|
||||
player_use_mpris = true
|
||||
player_use_discord = true
|
||||
|
||||
[album_photo_xywh]
|
||||
x_between_1_100 = 99
|
||||
y_between_1_100 = 77
|
||||
width_between_1_100 = 20
|
||||
align = "BottomLeft"
|
||||
|
||||
[style_color_symbol]
|
||||
library_foreground = "Foreground"
|
||||
library_background = "Reset"
|
||||
library_border = "Blue"
|
||||
library_highlight = "Red"
|
||||
library_highlight_symbol = "🦄"
|
||||
playlist_foreground = "Foreground"
|
||||
playlist_background = "Reset"
|
||||
playlist_border = "Blue"
|
||||
playlist_highlight = "Red"
|
||||
playlist_highlight_symbol = "🚀"
|
||||
progress_foreground = "Red"
|
||||
progress_background = "Reset"
|
||||
progress_border = "Blue"
|
||||
lyric_foreground = "Foreground"
|
||||
lyric_background = "Reset"
|
||||
lyric_border = "Blue"
|
||||
|
||||
[style_color_symbol.alacritty_theme]
|
||||
path = "/home/mat/.config/termusic/themes/Rockethype.yml"
|
||||
name = "empty name"
|
||||
author = "empty author"
|
||||
background = "#303030"
|
||||
foreground = "#abb2bf"
|
||||
cursor = "#FFFFFF"
|
||||
text = "#FFFFFF"
|
||||
black = "#282c34"
|
||||
red = "#e06c75"
|
||||
green = "#98c379"
|
||||
yellow = "#e5c07b"
|
||||
blue = "#81A1C1"
|
||||
magenta = "#c678dd"
|
||||
cyan = "#56b6c2"
|
||||
white = "#c8ccd4"
|
||||
light_black = "#7f7f7f"
|
||||
light_red = "#ff0000"
|
||||
light_green = "#00ff00"
|
||||
light_yellow = "#ffff00"
|
||||
light_blue = "#5c5cff"
|
||||
light_magenta = "#ff00ff"
|
||||
light_cyan = "#00ffff"
|
||||
light_white = "#ffffff"
|
||||
|
||||
[keys.global_esc.code]
|
||||
type = "Esc"
|
||||
|
||||
[keys.global_esc.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_quit.code]
|
||||
type = "Char"
|
||||
args = "q"
|
||||
|
||||
[keys.global_quit.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_left.code]
|
||||
type = "Char"
|
||||
args = "h"
|
||||
|
||||
[keys.global_left.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_down.code]
|
||||
type = "Char"
|
||||
args = "j"
|
||||
|
||||
[keys.global_down.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_up.code]
|
||||
type = "Char"
|
||||
args = "k"
|
||||
|
||||
[keys.global_up.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_right.code]
|
||||
type = "Char"
|
||||
args = "l"
|
||||
|
||||
[keys.global_right.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_goto_top.code]
|
||||
type = "Char"
|
||||
args = "g"
|
||||
|
||||
[keys.global_goto_top.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_goto_bottom.code]
|
||||
type = "Char"
|
||||
args = "G"
|
||||
|
||||
[keys.global_goto_bottom.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.global_player_toggle_pause.code]
|
||||
type = "Char"
|
||||
args = " "
|
||||
|
||||
[keys.global_player_toggle_pause.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_player_next.code]
|
||||
type = "Char"
|
||||
args = "n"
|
||||
|
||||
[keys.global_player_next.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_player_previous.code]
|
||||
type = "Char"
|
||||
args = "N"
|
||||
|
||||
[keys.global_player_previous.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.global_player_volume_plus_1.code]
|
||||
type = "Char"
|
||||
args = "+"
|
||||
|
||||
[keys.global_player_volume_plus_1.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.global_player_volume_plus_2.code]
|
||||
type = "Char"
|
||||
args = "="
|
||||
|
||||
[keys.global_player_volume_plus_2.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_player_volume_minus_1.code]
|
||||
type = "Char"
|
||||
args = "_"
|
||||
|
||||
[keys.global_player_volume_minus_1.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.global_player_volume_minus_2.code]
|
||||
type = "Char"
|
||||
args = "-"
|
||||
|
||||
[keys.global_player_volume_minus_2.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_help.code]
|
||||
type = "Char"
|
||||
args = "h"
|
||||
|
||||
[keys.global_help.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 2
|
||||
|
||||
[keys.global_player_seek_forward.code]
|
||||
type = "Char"
|
||||
args = "f"
|
||||
|
||||
[keys.global_player_seek_forward.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_player_seek_backward.code]
|
||||
type = "Char"
|
||||
args = "b"
|
||||
|
||||
[keys.global_player_seek_backward.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_lyric_adjust_forward.code]
|
||||
type = "Char"
|
||||
args = "F"
|
||||
|
||||
[keys.global_lyric_adjust_forward.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.global_lyric_adjust_backward.code]
|
||||
type = "Char"
|
||||
args = "B"
|
||||
|
||||
[keys.global_lyric_adjust_backward.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.global_player_speed_up.code]
|
||||
type = "Char"
|
||||
args = "f"
|
||||
|
||||
[keys.global_player_speed_up.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 2
|
||||
|
||||
[keys.global_player_speed_down.code]
|
||||
type = "Char"
|
||||
args = "b"
|
||||
|
||||
[keys.global_player_speed_down.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 2
|
||||
|
||||
[keys.global_lyric_cycle.code]
|
||||
type = "Char"
|
||||
args = "T"
|
||||
|
||||
[keys.global_lyric_cycle.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.global_layout_treeview.code]
|
||||
type = "Char"
|
||||
args = "1"
|
||||
|
||||
[keys.global_layout_treeview.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_layout_database.code]
|
||||
type = "Char"
|
||||
args = "2"
|
||||
|
||||
[keys.global_layout_database.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_player_toggle_gapless.code]
|
||||
type = "Char"
|
||||
args = "g"
|
||||
|
||||
[keys.global_player_toggle_gapless.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 2
|
||||
|
||||
[keys.global_config_open.code]
|
||||
type = "Char"
|
||||
args = "C"
|
||||
|
||||
[keys.global_config_open.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.global_save_playlist.code]
|
||||
type = "Char"
|
||||
args = "s"
|
||||
|
||||
[keys.global_save_playlist.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 2
|
||||
|
||||
[keys.global_layout_podcast.code]
|
||||
type = "Char"
|
||||
args = "3"
|
||||
|
||||
[keys.global_layout_podcast.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.global_xywh_move_left.code]
|
||||
type = "Left"
|
||||
|
||||
[keys.global_xywh_move_left.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 3
|
||||
|
||||
[keys.global_xywh_move_right.code]
|
||||
type = "Right"
|
||||
|
||||
[keys.global_xywh_move_right.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 3
|
||||
|
||||
[keys.global_xywh_move_up.code]
|
||||
type = "Up"
|
||||
|
||||
[keys.global_xywh_move_up.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 3
|
||||
|
||||
[keys.global_xywh_move_down.code]
|
||||
type = "Down"
|
||||
|
||||
[keys.global_xywh_move_down.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 3
|
||||
|
||||
[keys.global_xywh_zoom_in.code]
|
||||
type = "PageUp"
|
||||
|
||||
[keys.global_xywh_zoom_in.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 3
|
||||
|
||||
[keys.global_xywh_zoom_out.code]
|
||||
type = "PageDown"
|
||||
|
||||
[keys.global_xywh_zoom_out.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 3
|
||||
|
||||
[keys.global_xywh_hide.code]
|
||||
type = "End"
|
||||
|
||||
[keys.global_xywh_hide.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 3
|
||||
|
||||
[keys.library_load_dir.code]
|
||||
type = "Char"
|
||||
args = "L"
|
||||
|
||||
[keys.library_load_dir.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.library_delete.code]
|
||||
type = "Char"
|
||||
args = "d"
|
||||
|
||||
[keys.library_delete.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.library_yank.code]
|
||||
type = "Char"
|
||||
args = "y"
|
||||
|
||||
[keys.library_yank.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.library_paste.code]
|
||||
type = "Char"
|
||||
args = "p"
|
||||
|
||||
[keys.library_paste.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.library_search.code]
|
||||
type = "Char"
|
||||
args = "/"
|
||||
|
||||
[keys.library_search.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.library_search_youtube.code]
|
||||
type = "Char"
|
||||
args = "s"
|
||||
|
||||
[keys.library_search_youtube.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.library_tag_editor_open.code]
|
||||
type = "Char"
|
||||
args = "t"
|
||||
|
||||
[keys.library_tag_editor_open.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.library_switch_root.code]
|
||||
type = "Char"
|
||||
args = "o"
|
||||
|
||||
[keys.library_switch_root.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.library_add_root.code]
|
||||
type = "Char"
|
||||
args = "a"
|
||||
|
||||
[keys.library_add_root.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.library_remove_root.code]
|
||||
type = "Char"
|
||||
args = "A"
|
||||
|
||||
[keys.library_remove_root.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.playlist_delete.code]
|
||||
type = "Char"
|
||||
args = "d"
|
||||
|
||||
[keys.playlist_delete.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.playlist_delete_all.code]
|
||||
type = "Char"
|
||||
args = "D"
|
||||
|
||||
[keys.playlist_delete_all.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.playlist_shuffle.code]
|
||||
type = "Char"
|
||||
args = "r"
|
||||
|
||||
[keys.playlist_shuffle.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.playlist_mode_cycle.code]
|
||||
type = "Char"
|
||||
args = "m"
|
||||
|
||||
[keys.playlist_mode_cycle.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.playlist_play_selected.code]
|
||||
type = "Char"
|
||||
args = "l"
|
||||
|
||||
[keys.playlist_play_selected.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.playlist_search.code]
|
||||
type = "Char"
|
||||
args = "/"
|
||||
|
||||
[keys.playlist_search.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.playlist_swap_down.code]
|
||||
type = "Char"
|
||||
args = "J"
|
||||
|
||||
[keys.playlist_swap_down.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.playlist_swap_up.code]
|
||||
type = "Char"
|
||||
args = "K"
|
||||
|
||||
[keys.playlist_swap_up.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.playlist_cmus_lqueue.code]
|
||||
type = "Char"
|
||||
args = "S"
|
||||
|
||||
[keys.playlist_cmus_lqueue.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.playlist_cmus_tqueue.code]
|
||||
type = "Char"
|
||||
args = "s"
|
||||
|
||||
[keys.playlist_cmus_tqueue.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.database_add_all.code]
|
||||
type = "Char"
|
||||
args = "L"
|
||||
|
||||
[keys.database_add_all.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.config_save.code]
|
||||
type = "Char"
|
||||
args = "s"
|
||||
|
||||
[keys.config_save.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 2
|
||||
|
||||
[keys.podcast_mark_played.code]
|
||||
type = "Char"
|
||||
args = "m"
|
||||
|
||||
[keys.podcast_mark_played.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.podcast_mark_all_played.code]
|
||||
type = "Char"
|
||||
args = "M"
|
||||
|
||||
[keys.podcast_mark_all_played.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.podcast_episode_download.code]
|
||||
type = "Char"
|
||||
args = "d"
|
||||
|
||||
[keys.podcast_episode_download.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.podcast_episode_delete_file.code]
|
||||
type = "Char"
|
||||
args = "x"
|
||||
|
||||
[keys.podcast_episode_delete_file.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.podcast_delete_feed.code]
|
||||
type = "Char"
|
||||
args = "d"
|
||||
|
||||
[keys.podcast_delete_feed.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.podcast_delete_all_feeds.code]
|
||||
type = "Char"
|
||||
args = "D"
|
||||
|
||||
[keys.podcast_delete_all_feeds.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
|
||||
[keys.podcast_search_add_feed.code]
|
||||
type = "Char"
|
||||
args = "s"
|
||||
|
||||
[keys.podcast_search_add_feed.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.podcast_refresh_feed.code]
|
||||
type = "Char"
|
||||
args = "r"
|
||||
|
||||
[keys.podcast_refresh_feed.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 0
|
||||
|
||||
[keys.podcast_refresh_all_feeds.code]
|
||||
type = "Char"
|
||||
args = "R"
|
||||
|
||||
[keys.podcast_refresh_all_feeds.modifier]
|
||||
type = "KeyModifiers"
|
||||
bits = 1
|
||||
@@ -0,0 +1,27 @@
|
||||
# XTerm's default colors
|
||||
colors:
|
||||
# Default colors
|
||||
primary:
|
||||
background: '#303030'
|
||||
foreground: '#abb2bf'
|
||||
# Normal colors
|
||||
normal:
|
||||
black: '#282c34'
|
||||
red: '#e06c75'
|
||||
green: '#98c379'
|
||||
yellow: '#e5c07b'
|
||||
blue: '#81A1C1'
|
||||
magenta: '#c678dd'
|
||||
cyan: '#56b6c2'
|
||||
white: '#c8ccd4'
|
||||
|
||||
# Bright colors
|
||||
bright:
|
||||
black: '#7f7f7f'
|
||||
red: '#ff0000'
|
||||
green: '#00ff00'
|
||||
yellow: '#ffff00'
|
||||
blue: '#5c5cff'
|
||||
magenta: '#ff00ff'
|
||||
cyan: '#00ffff'
|
||||
white: '#ffffff'
|
||||
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
##CPU loading
|
||||
CPULOAD=$(top -bn1 | sed -n '/Cpu/p' | awk '{print $2}' | sed 's/..,//')
|
||||
|
||||
##RAM usege
|
||||
RAMLOAD=$(free | grep Mem | awk '{print $3/$2 * 100.0}' | cut -d. -f1)
|
||||
|
||||
echo \
|
||||
"| $CPULOAD% |" \
|
||||
" $RAMLOAD% "
|
||||
@@ -0,0 +1,38 @@
|
||||
# tmux cozy config
|
||||
set -g mouse on
|
||||
|
||||
# Set the default terminal mode to 256color mode
|
||||
set -g default-terminal "screen-256color"
|
||||
set -g status-style fg=black,bg=blue
|
||||
|
||||
# Start windows and panes at 1, not 0
|
||||
set -g base-index 1
|
||||
set -g pane-base-index 1
|
||||
set-window-option -g pane-base-index 1
|
||||
set-option -g renumber-windows on
|
||||
|
||||
set -g @plugin 'tmux-plugins/tpm'
|
||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||
set -g @plugin 'christoomey/vim-tmux-navigator'
|
||||
set -g @plugin 'tmux-plugins/tmux-yank'
|
||||
set -g @plugin 'thewtex/tmux-mem-cpu-load'
|
||||
|
||||
run '~/.tmux/plugins/tpm/tpm'
|
||||
|
||||
# set vi-mode
|
||||
set-window-option -g mode-keys vi
|
||||
# keybindings
|
||||
bind-key -T copy-mode-vi v send-keys -X begin-selection
|
||||
bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle
|
||||
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
|
||||
|
||||
unbind C-b
|
||||
set -g prefix C-Space
|
||||
bind C-Space send-prefix
|
||||
bind '"' split-window -v -c "#{pane_current_path}"
|
||||
bind % split-window -h -c "#{pane_current_path}"
|
||||
|
||||
set -g status-interval 1
|
||||
set-option -g status-left "[ #S]"
|
||||
set-option -g status-right "#(~/.config/tmux/statusbar)"
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
background="#303030"
|
||||
text="#abb2bf"
|
||||
subtle="#abb2bf"
|
||||
warning-text="#d7005f"
|
||||
text-special-one="#81A1C1"
|
||||
text-special-two="#c678dd"
|
||||
top-bar-background="#81A1C1"
|
||||
top-bar-text="#ffffff"
|
||||
status-bar-background="#81A1C1"
|
||||
status-bar-text="#abb2bf"
|
||||
status-bar-view-background="#e06c75"
|
||||
status-bar-view-text="#abb2bf"
|
||||
list-selected-background="#e06c75"
|
||||
list-selected-text="#ffffff"
|
||||
command-text="#abb2bf"
|
||||
list-selected-inactive-background="#6d6d6d"
|
||||
list-selected-inactive-text="#ffffff"
|
||||
controls-text="#abb2bf"
|
||||
controls-highlight="#98c379"
|
||||
autocomplete-background="#e06c75"
|
||||
autocomplete-text="#abb2bf"
|
||||
autocomplete-selected-background="#4271ae"
|
||||
autocomplete-selected-text="#ffffff"
|
||||
button-color-one="#e06c75"
|
||||
button-color-two="#fafafa"
|
||||
timeline-name-background="#e5c07b"
|
||||
timeline-name-text="#000000"
|
||||
@@ -0,0 +1,13 @@
|
||||
set encoding=utf-8
|
||||
syntax on
|
||||
set t_Co=256
|
||||
set clipboard=unnamed
|
||||
set noswapfile
|
||||
|
||||
inoremap jk <esc>
|
||||
|
||||
noremap <Up> <Nop>
|
||||
noremap <Down> <Nop>
|
||||
noremap <Left> <Nop>
|
||||
noremap <Right> <Nop>
|
||||
|
||||
Executable
+150
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"position": "top",
|
||||
"layer": "top",
|
||||
"modules-left": [
|
||||
"custom/launch",
|
||||
"cpu",
|
||||
"memory",
|
||||
"custom/tempcpu",
|
||||
"custom/tempgpu"
|
||||
],
|
||||
"modules-center": ["hyprland/workspaces"],
|
||||
"modules-right": [
|
||||
"tray",
|
||||
"custom/wgstatus",
|
||||
"hyprland/language",
|
||||
"pulseaudio",
|
||||
"clock",
|
||||
"custom/notify",
|
||||
"custom/off"
|
||||
],
|
||||
"custom/launch": {
|
||||
"format": " ",
|
||||
"on-click": "sleep 0.1 && menurun",
|
||||
"tooltip": false,
|
||||
"escape": true
|
||||
},
|
||||
|
||||
"custom/tempcpu": {
|
||||
"interval": 3,
|
||||
"exec": "~/.config/waybar/scripts/lstempcpu",
|
||||
"format": " {}°C",
|
||||
"tooltip": true,
|
||||
"return-type": "json"
|
||||
},
|
||||
|
||||
"custom/tempgpu": {
|
||||
"interval": 3,
|
||||
"exec": "~/.config/waybar/scripts/lstempgpu",
|
||||
"format": "<span size='large'></span> {}°C",
|
||||
"tooltip": false,
|
||||
"return-type": "json"
|
||||
},
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"format": " {icon} ",
|
||||
"on-click": "activate",
|
||||
"all-outputs": false,
|
||||
"sort-by-number": true,
|
||||
"persistent_workspaces": {
|
||||
"1": [],
|
||||
"2": [],
|
||||
"3": [],
|
||||
"4": [],
|
||||
"5": [],
|
||||
"6": [],
|
||||
"7": [],
|
||||
"8": []
|
||||
},
|
||||
"format-icons": {
|
||||
"1": " ",
|
||||
"2": " ",
|
||||
"3": "<span size='large'> </span>",
|
||||
"4": " ",
|
||||
"5": "<span size='large'> </span>",
|
||||
"6": "<span size='large'> </span>",
|
||||
"7": " ",
|
||||
"8": "<span size='large'> </span>",
|
||||
"urgent": " ",
|
||||
"focused": " ",
|
||||
"default": " "
|
||||
}
|
||||
},
|
||||
|
||||
"tray": {
|
||||
"icon-size": 16,
|
||||
"spacing": 10,
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"custom/wgstatus": {
|
||||
"interval": 1,
|
||||
"exec": "~/.config/waybar/scripts/wgstatus",
|
||||
"format": " {} ",
|
||||
"tooltip": false,
|
||||
"on-click": "sleep 0.1 && ~/.config/waybar/scripts/wgstatus -toggle"
|
||||
},
|
||||
|
||||
"hyprland/language": {
|
||||
"format": " {} ",
|
||||
"format-en": "Eng",
|
||||
"format-ru": "Rus",
|
||||
"on-click": "sleep 0.1 && hyprctl switchxkblayout compx-2.4g-wireless-receiver next",
|
||||
},
|
||||
|
||||
"pulseaudio": {
|
||||
"scroll-step": 5,
|
||||
"format": "{icon} {volume}",
|
||||
"format-bluetooth": "{icon} {volume}",
|
||||
"format-bluetooth-muted": " ",
|
||||
"format-muted": " ",
|
||||
"format-icons": {
|
||||
"default": ["", "", " "]
|
||||
},
|
||||
"on-click": "sleep 0.1 && pavucontrol &",
|
||||
"on-click-middle": "sleep 0.1 && loopback_toggle",
|
||||
"on-scroll-up": "swayosd --output-volume raise",
|
||||
"on-scroll-down": "swayosd --output-volume lower",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"cpu": {
|
||||
"format": "<span font_family='Material Icons' size='large'></span> {usage}%",
|
||||
"tooltip": true,
|
||||
"tooltip-format": "{tooltip}"
|
||||
},
|
||||
|
||||
"memory": {
|
||||
"interval": 3,
|
||||
"format": "<span font_family='Material Icons' size='large'></span> {}%",
|
||||
"max-length": 6,
|
||||
"tooltip": true,
|
||||
"tooltip-format": "{tooltip}"
|
||||
},
|
||||
|
||||
"clock": {
|
||||
"interval": 1,
|
||||
"format": "<span font_family='Material Icons' size='large'></span> {:%I:%M %p}",
|
||||
"format-alt": " {:%b %d, %G}",
|
||||
"tooltip-format": "<tt><small>{calendar}</small></tt>",
|
||||
"calendar": {
|
||||
"mode" : "month",
|
||||
"mode-mon-col" : 3,
|
||||
"format": {
|
||||
"months": "<span color='#e5c07b'><b>{}</b></span>",
|
||||
"days": "<span color='#e5c07b'><b>{}</b></span>",
|
||||
"weekdays": "<span color='#56b6c2'><b>{}</b></span>",
|
||||
"today": "<span color='#e06c75'><b><u>{}</u></b></span>"
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
"custom/off": {
|
||||
"format": " ",
|
||||
"on-click": "sleep 0.1 && menupower",
|
||||
"tooltip": false,
|
||||
"escape": true
|
||||
}
|
||||
|
||||
}
|
||||
Executable
+13
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
CPUTEMP=$(cat /sys/class/hwmon/hwmon3/temp1_input)
|
||||
CRITEMP=70
|
||||
let "REZ=$CPUTEMP / 1000"
|
||||
if [ $REZ -ge $CRITEMP ]; then
|
||||
JSON_FMT='{"text":"%s","class":"%s","tooltip": "cpu"}\n'
|
||||
printf "$JSON_FMT" "$REZ" "crit"
|
||||
else
|
||||
JSON_FMT='{"text":"%s","tooltip": "cpu"}\n'
|
||||
printf "$JSON_FMT" "$REZ"
|
||||
fi
|
||||
|
||||
Executable
+13
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
GPUTEMP=$(cat /sys/class/hwmon/hwmon2/temp2_input)
|
||||
CRITEMP=80
|
||||
let "REZ=$GPUTEMP / 1000"
|
||||
if [ $REZ -ge $CRITEMP ]; then
|
||||
JSON_FMT='{"text":"%s","class":"%s","tooltip":"gpu"}\n'
|
||||
printf "$JSON_FMT" "$REZ" "crit"
|
||||
else
|
||||
JSON_FMT='{"text":"%s","tooltip":"gpu"}\n'
|
||||
printf "$JSON_FMT" "$REZ"
|
||||
fi
|
||||
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
WGIFACE=kz.totmin.ru
|
||||
|
||||
WGON(){
|
||||
echo "VPN"
|
||||
WGS='true'
|
||||
}
|
||||
|
||||
WGOFF(){
|
||||
# echo "Off"
|
||||
WGS='false'
|
||||
}
|
||||
|
||||
ifconfig $WGIFACE &>/dev/null && WGON ||WGOFF
|
||||
|
||||
if [ "$1" = '-toggle' ]; then
|
||||
if [ "$WGS" = 'true' ]; then
|
||||
sudo wg-quick down $WGIFACE &>/dev/null
|
||||
else
|
||||
sudo wg-quick up $WGIFACE &>/dev/null
|
||||
fi
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Executable
+228
@@ -0,0 +1,228 @@
|
||||
/*
|
||||
|
||||
Color Pallete
|
||||
|
||||
foreground: '#abb2bf'
|
||||
background: '#303030'
|
||||
alt-background: '#282c34'
|
||||
alt-foreground: '#1f2227'
|
||||
|
||||
black: '#282c34'
|
||||
red: '#e06c75'
|
||||
green: '#98c379'
|
||||
yellow: '#e5c07b'
|
||||
blue: '#81A1C1'
|
||||
magenta: '#c678dd'
|
||||
cyan: '#56b6c2'
|
||||
white: '#c8ccd4'
|
||||
|
||||
*/
|
||||
|
||||
* {
|
||||
border: 0px solid rgba(40, 44, 52, 0);
|
||||
border-radius: 6px;
|
||||
font-family: Iosevka Nerd Font, Font Awesome,Material Icons, Arial, sans-serif;
|
||||
font-weight: 700;
|
||||
font-size: 13px;
|
||||
min-height: 18px;
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
tooltip {
|
||||
background: #303030;
|
||||
font-family: Iosevka Nerd Font;
|
||||
border: 1px solid rgba(100, 114, 125, 0.5);
|
||||
}
|
||||
|
||||
tooltip label {
|
||||
color: #c8ccd4;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: #303030;
|
||||
background: transparent;
|
||||
color: #303030;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
border-radius: 6px;
|
||||
|
||||
}
|
||||
|
||||
window > box {
|
||||
margin-left: 12.5px;
|
||||
margin-right: 12.5px;
|
||||
margin-top: 12.5px;
|
||||
background: #303030;
|
||||
color: #c8ccd4;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #282c34;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #c8ccd4;
|
||||
color: #282c34;
|
||||
}
|
||||
}
|
||||
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#disk,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#workspaces,
|
||||
#clock,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd {
|
||||
padding: 0 10px;
|
||||
margin: 4px 4px 4px 4px;
|
||||
color: #1f2227;
|
||||
}
|
||||
|
||||
#custom-launch {
|
||||
margin-right: 10px;
|
||||
margin-left: 4px;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
margin-top: 4px;
|
||||
margin-bottom: 4px;
|
||||
font-size: 17px;
|
||||
background-color: #81a1c1;
|
||||
color: #1f2227;
|
||||
}
|
||||
|
||||
#custom-tempcpu {
|
||||
color: #81A1C1;
|
||||
margin-left: 8px;
|
||||
}
|
||||
|
||||
#custom-tempcpu.crit {
|
||||
color: #e06c75;
|
||||
margin-left: 8px;
|
||||
}
|
||||
|
||||
#custom-tempgpu {
|
||||
color: #81A1C1;
|
||||
margin-left: 18px;
|
||||
}
|
||||
|
||||
#custom-tempgpu.crit {
|
||||
color: #e06c75;
|
||||
margin-left: 18px;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 5px 5px;
|
||||
background-color: transparent;
|
||||
border-radius: 6px;
|
||||
margin-left: 1px;
|
||||
color: #abb2bf;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background-color: transparent;
|
||||
color: #c678dd;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
background-color: transparent;
|
||||
color: #e06c75;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background-color: transparent;
|
||||
color: #e06c75;
|
||||
}
|
||||
|
||||
#custom-spotify {
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
margin-top: 4px;
|
||||
margin-bottom: 4px;
|
||||
font-size: 17px;
|
||||
font-weight: 500;
|
||||
background-color: #98c379;
|
||||
color: #1f2227;
|
||||
}
|
||||
|
||||
#custom-wgstatus {
|
||||
color: #e06c75;
|
||||
margin-right: 18px;
|
||||
}
|
||||
|
||||
#language {
|
||||
color: #c678dd;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #e5c07b;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: #81a1c1;
|
||||
color: #282c34;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
color: #e5c07b;
|
||||
}
|
||||
|
||||
#network {
|
||||
color: #81a1c1;
|
||||
}
|
||||
|
||||
#memory {
|
||||
color: #81A1C1;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
color: #81A1C1;
|
||||
}
|
||||
|
||||
#battery {
|
||||
color: #e5c07b;
|
||||
}
|
||||
|
||||
#battery.charging,
|
||||
#battery.plugged {
|
||||
color: #e06c75;
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
color: #e06c75;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: #98c379;
|
||||
}
|
||||
|
||||
#custom-notify {
|
||||
color: #56b6c2;
|
||||
}
|
||||
|
||||
#custom-off {
|
||||
margin-right: 4px;
|
||||
margin-left: 11px;
|
||||
padding-left: 10px;
|
||||
padding-right: 8px;
|
||||
margin-top: 4px;
|
||||
margin-bottom: 4px;
|
||||
font-size: 17px;
|
||||
background-color: #e06c75;
|
||||
color: #272727;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
width=700
|
||||
height=250
|
||||
location=center
|
||||
show=run
|
||||
prompt=Search...
|
||||
filter_rate=165
|
||||
allow_markup=true
|
||||
no_actions=true
|
||||
halign=fill
|
||||
orientation=vertical
|
||||
content_halign=fill
|
||||
insensitive=true
|
||||
allow_images=true
|
||||
image_size=32
|
||||
gtk_dark=true
|
||||
term=kitty
|
||||
@@ -0,0 +1,5 @@
|
||||
@import ".config/wofi/style.css";
|
||||
window {
|
||||
font-family: "JetBrains Mono";
|
||||
font-size: 13px;
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
window {
|
||||
margin: 0px;
|
||||
border: 5px solid #202020;
|
||||
background-color: #323232;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
#input {
|
||||
all: unset;
|
||||
min-height: 36px;
|
||||
padding: 4px 10px;
|
||||
margin: 4px;
|
||||
border: none;
|
||||
color: #e2e0ec;
|
||||
font-weight: bold;
|
||||
background-color: #272727;
|
||||
outline: none;
|
||||
border-radius: 6px;
|
||||
margin: 10px;
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
#inner-box {
|
||||
margin: 4px;
|
||||
padding: 10px;
|
||||
font-weight: bold;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
#outer-box {
|
||||
margin: 0px;
|
||||
padding: 3px;
|
||||
border: none;
|
||||
border-radius: 6px;
|
||||
border: 5px solid #202020;
|
||||
}
|
||||
|
||||
#scroll {
|
||||
margin-top: 5px;
|
||||
border: none;
|
||||
border-radius: 6px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
#text:selected {
|
||||
color: #f1f0f5;
|
||||
margin: 0px 0px;
|
||||
border: none;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
#entry {
|
||||
margin: 0px 0px;
|
||||
border: none;
|
||||
border-radius: 6px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#entry:selected {
|
||||
margin: 0px 0px;
|
||||
border: none;
|
||||
border-radius: 6px;
|
||||
background: linear-gradient(90deg, #E97193 0%, #e06c75 100%);
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
[mgr]
|
||||
|
||||
prepend_keymap = [
|
||||
{ on = [ "!" ], run = 'shell "$SHELL" --block', desc = "Open $$SHELL here" },
|
||||
{ on = [ "a" ], run = "rename", desc = "Rename" },
|
||||
{ on = [ "z", "z" ], run = "shell fzf --block", desc = "FZF" },
|
||||
{ on = [ "z", "h" ], run = "hidden toggle", desc = "Toggle hidden files" },
|
||||
{ on = [ "z", "e" ], run = 'shell --block -- unpack "$@"', desc = "Extract Archive" },
|
||||
{ on = [ "z", "s" ], run = 'shell --block -- scpsend "$@"', desc = "Send to Server" },
|
||||
|
||||
|
||||
{ on = [ "d", "d" ], run = "remove", desc = "Delete" },
|
||||
{ on = [ "d", "D" ], run = "remove --permanently", desc = "Delete Permanently" },
|
||||
{ on = [ "d", "u" ], run = 'shell --block "du --max-depth=1 -ah --apparent-size | less"', desc = "Show Size" },
|
||||
{ on = [ "d", "U" ], run = 'shell --block "du --max-depth=1 -ah --apparent-size | sort -rh | less"', desc = "Show Size" },
|
||||
]
|
||||
|
||||
append_keymap = [
|
||||
{ on = "c", run = [ "cmd1", "cmd2" ], desc = "Multiple commands with `c`" }
|
||||
]
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
[mgr]
|
||||
|
||||
cwd = { fg = "green" }
|
||||
|
||||
# Border
|
||||
border_symbol = "│"
|
||||
border_style = { fg = "blue" }
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
[mgr]
|
||||
linemode = "size"
|
||||
"h" = "cd .."
|
||||
"l" = "shell $EDITOR {file}"
|
||||
|
||||
[opener]
|
||||
edit = [
|
||||
{ run = 'vim "$@"', desc = "$EDITOR", block = true, for = "linux" },
|
||||
]
|
||||
open = [
|
||||
{ run = 'xdg-open "$@"', desc = "Open", for = "linux" },
|
||||
]
|
||||
openimg = [
|
||||
{ run = 'swayimg "$@"', desc = "Open", for = "linux" },
|
||||
]
|
||||
reveal = [
|
||||
{ run = 'xdg-open "$(dirname "$0")"', desc = "Reveal", for = "linux" },
|
||||
]
|
||||
extract = [
|
||||
{ run = 'unpack "$1"', desc = "Extract here", for = "unix" },
|
||||
]
|
||||
play = [
|
||||
{ run = 'mpv "$@"', orphan = true, for = "unix" },
|
||||
]
|
||||
|
||||
[open]
|
||||
rules = [
|
||||
{ mime = "text/*", use = "edit" },
|
||||
{ mime = "video/*", use = "play" },
|
||||
{ mime = "audio/*", use = "play" },
|
||||
{ mime = "image/*", use = "openimg" },
|
||||
|
||||
{ name = "*.json", use = "edit" },
|
||||
{ name = "*.toml", use = "edit" },
|
||||
{ name = "*.html", use = [ "open", "edit" ] },
|
||||
|
||||
]
|
||||
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
LB=$(pidof pw-loopback)
|
||||
|
||||
if [[ $LB > 0 ]]; then
|
||||
killall pw-loopback
|
||||
else
|
||||
pw-loopback --capture "alsa_input.usb-AVerMedia_Technologies__Inc._Live_Gamer_MINI_5203206100308-03.pro-input-0" &
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Executable
+22
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
|
||||
option0="Disable DM"
|
||||
option1="Enable DM"
|
||||
|
||||
option2="Toggle DM Capture Card"
|
||||
|
||||
options="$option0\n$option1\n$option2"
|
||||
|
||||
selected="$(echo -e "$options" | wofi -n -d -p "Direct Monitor:" || exit 0)"
|
||||
|
||||
case $selected in
|
||||
$option0)
|
||||
amixer --card=3 set 'Direct Monitor' Off;;
|
||||
$option1)
|
||||
amixer --card=3 set 'Direct Monitor' Stereo;;
|
||||
$option2)
|
||||
loopback_toggle;;
|
||||
|
||||
esac
|
||||
|
||||
exit 0
|
||||
Executable
+5
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
wofi || exit 0
|
||||
|
||||
exit 0
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import json
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
try:
|
||||
# Получаем список игр
|
||||
result = subprocess.run(["lutris", "-ojl"], capture_output=True, text=True)
|
||||
games = json.loads(result.stdout)
|
||||
|
||||
# Формируем список названий
|
||||
game_names = [game["name"] for game in games]
|
||||
games_list = "\n".join(game_names)
|
||||
|
||||
# Выбор игры через wofi
|
||||
wofi_process = subprocess.Popen(
|
||||
["wofi", "-n", "-d", "-p", "Select Game:"],
|
||||
stdin=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE,
|
||||
text=True
|
||||
)
|
||||
selected_game, _ = wofi_process.communicate(input=games_list)
|
||||
selected_game = selected_game.strip()
|
||||
|
||||
if not selected_game:
|
||||
sys.exit(0)
|
||||
|
||||
# Запускаем выбранную игру
|
||||
for game in games:
|
||||
if game["name"] == selected_game:
|
||||
subprocess.Popen(["lutris", f"lutris:rungameid/{game['id']}"])
|
||||
break
|
||||
except Exception as e:
|
||||
print(f"Error: {e}", file=sys.stderr)
|
||||
sys.exit(1)
|
||||
Executable
+176
@@ -0,0 +1,176 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -eu
|
||||
|
||||
autotype=0
|
||||
copyisset=0
|
||||
fileisuser=0
|
||||
help=0
|
||||
onlypassword=0
|
||||
squash=0
|
||||
typeisset=0
|
||||
|
||||
COPY_CMD="wl-copy"
|
||||
TYPE_CMD="wtype -"
|
||||
|
||||
_trim() {
|
||||
var="$*"
|
||||
# remove leading whitespace characters
|
||||
var="${var#"${var%%[![:space:]]*}"}"
|
||||
# remove trailing whitespace characters
|
||||
var="${var%"${var##*[![:space:]]}"}"
|
||||
printf '%s' "$var"
|
||||
}
|
||||
|
||||
# the explicit newlines here are funky, but needed due to command substitution
|
||||
# stripping trailing newlines so `printf '%s\n' "$line"` cannot be used
|
||||
_parse_fields() {
|
||||
has_username=0
|
||||
fields="$(pass show "$password" | tail -n +2 | cut -d: -f1 -s)"
|
||||
field_list="password
|
||||
"
|
||||
if [ "$fileisuser" -eq 1 ]; then
|
||||
has_username=1
|
||||
line="username"
|
||||
field_list="$field_list$line
|
||||
"
|
||||
fi
|
||||
for line in $fields; do
|
||||
if [ "$line" = "username" ]; then
|
||||
has_username=1
|
||||
field_list="$field_list$line
|
||||
"
|
||||
elif [ "$line" = "otpauth" ]; then
|
||||
field_list="${field_list}OTP
|
||||
"
|
||||
elif [ "$line" = autotype_always ]; then
|
||||
autotype=1
|
||||
else
|
||||
field_list="$field_list$line
|
||||
"
|
||||
fi
|
||||
done
|
||||
if [ "$typeisset" -eq 1 ] && [ "$has_username" -eq 1 ]; then
|
||||
printf "autotype
|
||||
"
|
||||
fi
|
||||
printf '%s' "$field_list"
|
||||
}
|
||||
|
||||
_pass_field() {
|
||||
_trim "$(pass show "$password" | tail -n+2 | grep "^${*}:.*$" | cut -d: -f1 -s --complement)"
|
||||
}
|
||||
|
||||
_pass_get() {
|
||||
if [ "$1" = "password" ]; then
|
||||
pass show "$password" | { IFS= read -r pass; printf %s "$pass"; }
|
||||
elif [ "$1" = "OTP" ]; then
|
||||
pass otp "$password" | tail -n1 | { IFS= read -r pass; printf %s "$pass"; }
|
||||
elif [ "$fileisuser" -eq 1 ] && [ "$1" = "username" ]; then
|
||||
printf %s "$passname"
|
||||
else
|
||||
_pass_field "$@"
|
||||
fi
|
||||
}
|
||||
|
||||
_usage() {
|
||||
printf "Usage: wofi-pass [options]\n"
|
||||
printf " -a, --autotype autotype whatever entry is chosen\n"
|
||||
printf " -c, --copy=[cmd] copy to clipboard. Defaults to wl-copy if no cmd is given.\n"
|
||||
printf " -f, --fileisuser use the name of the password file as username\n"
|
||||
printf " -h, --help show this help message\n"
|
||||
printf " -s, --squash don't show field choice if password file only contains password\n"
|
||||
printf " -t, --type=[cmd] type the selection instead of copying to clipboard.\n"
|
||||
printf " Defaults to wtype if no cmd is given.\n"
|
||||
}
|
||||
|
||||
OPTS="$(getopt --options ac::fhst:: --longoptions autotype,copy::,fileisuser,help,squash,type:: -n 'wofi-pass' -- "$@")"
|
||||
eval set -- "$OPTS"
|
||||
while true; do
|
||||
case "$1" in
|
||||
-a | --autotype ) autotype=1; shift ;;
|
||||
-c ) copyisset=1; copy_cmd="$COPY_CMD"; shift ;;
|
||||
--copy )
|
||||
copyisset=1
|
||||
if [ -n "$2" ]; then
|
||||
copy_cmd="$2"
|
||||
shift 2
|
||||
else
|
||||
copy_cmd="$COPY_CMD"
|
||||
shift
|
||||
fi ;;
|
||||
-f | --fileisuser ) fileisuser=1; shift;;
|
||||
-h | --help ) help=1; shift ;;
|
||||
-s | --squash ) squash=1; shift ;;
|
||||
-t ) typeisset=1; type_cmd="$TYPE_CMD"; shift ;;
|
||||
--type )
|
||||
typeisset=1
|
||||
if [ -n "$2" ]; then
|
||||
type_cmd="$2"
|
||||
shift 2
|
||||
else
|
||||
type_cmd="$TYPE_CMD"
|
||||
shift
|
||||
fi ;;
|
||||
-- ) shift; break;;
|
||||
* ) break;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ "$help" -eq 1 ]; then
|
||||
_usage >&2
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "$typeisset" -eq 1 ] && [ "$copyisset" -eq 1 ]; then
|
||||
printf "copy and type cannot be used at same time. Please pass only one.\n"
|
||||
exit 1
|
||||
elif [ "$typeisset" -eq 0 ] && [ "$copyisset" -eq 0 ]; then
|
||||
printf "neither -c/--copy or -t/--type passed. Defaulting to copying with wl-copy."
|
||||
copy_cmd="$COPY_CMD"
|
||||
fi
|
||||
|
||||
cd "${PASSWORD_STORE_DIR:-$HOME/.password-store}"
|
||||
password_files="$(find . -name "*.gpg" | sed "s/^\.\/\(.*\)\.gpg$/\1/")"
|
||||
|
||||
password=$(printf '%s\n' "$password_files" | wofi --dmenu)
|
||||
[ -n "$password" ] || exit
|
||||
|
||||
if [ "$fileisuser" -eq 1 ]; then
|
||||
passname=$(printf '%s' "$password" | sed "s,.*/\(\),\1,")
|
||||
fi
|
||||
|
||||
field_list="$(_parse_fields)"
|
||||
field_count="$(printf '%s' "$field_list" | wc -l)"
|
||||
if [ "$squash" -eq 1 ] && [ "$field_count" -eq 0 ]; then
|
||||
field="password"
|
||||
onlypassword=1
|
||||
elif [ "$autotype" -ne 1 ]; then
|
||||
field=$(printf '%s\n' "$field_list" | wofi --dmenu)
|
||||
fi
|
||||
|
||||
# get the command to output to
|
||||
if [ "$typeisset" -eq 1 ]; then
|
||||
output_cmd=$type_cmd
|
||||
else
|
||||
output_cmd=$copy_cmd
|
||||
fi
|
||||
|
||||
if [ "$autotype" -eq 1 ] || [ "$field" = "autotype" ]; then
|
||||
if [ "$fileisuser" -eq 1 ]; then
|
||||
username="$passname"
|
||||
else
|
||||
username=$(_pass_get "username")
|
||||
fi
|
||||
password=$(_pass_get "password")
|
||||
|
||||
# check if we are autotyping a password-only file
|
||||
if [ "$onlypassword" -eq 1 ]; then
|
||||
printf '%s\n' "$password" | $output_cmd
|
||||
else
|
||||
printf '%s\t%s\n' "$username" "$password" | $output_cmd
|
||||
fi
|
||||
|
||||
else
|
||||
_pass_get "$field" | $output_cmd
|
||||
fi
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
option0=" Lock"
|
||||
option1=" Poweroff"
|
||||
option2=" Reboot"
|
||||
option3=" Exit"
|
||||
|
||||
option4=" Monitor toggle"
|
||||
option5=" VPN Toggle"
|
||||
|
||||
options="$option0\n$option1\n$option2\n$option3\n$option4\n$option5"
|
||||
|
||||
selected="$(echo -e "$options" | wofi --show dmenu --location top_right --xoffset -32 --yoffset 14 --width 256 --height 228 -p "Powermenu:" || exit 0)"
|
||||
|
||||
case $selected in
|
||||
$option0)
|
||||
swaylock \
|
||||
--screenshots \
|
||||
--clock \
|
||||
--indicator \
|
||||
--indicator-radius 100 \
|
||||
--indicator-thickness 7 \
|
||||
--effect-blur 6x5 \
|
||||
--effect-vignette 0.5:0.5 \
|
||||
--ring-color 1f2227 \
|
||||
--key-hl-color e06c75 \
|
||||
--line-color 00000000 \
|
||||
--inside-color 00000088 \
|
||||
--separator-color 00000000 \
|
||||
--grace 2 \
|
||||
--fade-in 0.2;;
|
||||
$option1)
|
||||
systemctl poweroff;;
|
||||
$option2)
|
||||
systemctl reboot;;
|
||||
$option3)
|
||||
exec exit;;
|
||||
$option4)
|
||||
monitor-toggle;;
|
||||
$option5)
|
||||
exec $HOME/.config/waybar/scripts/wgstatus -toggle;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
Executable
+9
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
exec wofi \
|
||||
--show drun \
|
||||
--location top_left \
|
||||
--xoffset 14 \
|
||||
--yoffset 14 \
|
||||
--width 384 \
|
||||
--height 512 \
|
||||
-p Application:
|
||||
Executable
+8
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
WALLPATH="$HOME/.local/share/backgrounds/"
|
||||
WALLFILE="$(ls $WALLPATH | wofi --show dmenu -p Wallpapers:)"
|
||||
|
||||
swww img $WALLPATH$WALLFILE --transition-type wipe --transition-step 30 --transition-fps 165 > /dev/null
|
||||
|
||||
exit 0
|
||||
Executable
+19
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
MONON(){
|
||||
hyprctl keyword monitor DP-2,2560x1440@165,0x0,1
|
||||
}
|
||||
|
||||
MONOFF(){
|
||||
hyprctl keyword monitor DP-2,disable
|
||||
}
|
||||
|
||||
MONTEMP=$(hyprctl monitors | grep "(ID 1)")
|
||||
|
||||
if [[ $MONTEMP = "Monitor DP-2 (ID 1):" ]]; then
|
||||
MONOFF
|
||||
else
|
||||
MONON
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Executable
+11
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
NM=$(pidof gammastep)
|
||||
|
||||
if [[ $NM > 0 ]]; then
|
||||
killall gammastep
|
||||
else
|
||||
gammastep -b 1:0.9 -l 56.01:92.86 -t 5600:4500 &
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
SPACEPORT(){
|
||||
notify-send -e -i "$ICONPATH/space-base.png" "$HNOTIFY" "Низкая производительность"
|
||||
corectrl -m Spaceport
|
||||
}
|
||||
|
||||
COSMIC(){
|
||||
notify-send -e -i "$ICONPATH/spaceship.png" "$HNOTIFY" "Средняя производительность"
|
||||
corectrl -m Cosmic
|
||||
}
|
||||
|
||||
ROCKET(){
|
||||
notify-send -e -i "$ICONPATH/rocket.png" "$HNOTIFY" "Высокая производительность"
|
||||
corectrl -m Rocket
|
||||
}
|
||||
|
||||
ICONPATH="/home/mat/.config/streamdeck/sources/Keys/applications"
|
||||
HNOTIFY="Центр Управления Полетами"
|
||||
|
||||
if [[ $1 = 'spaceport' ]]; then
|
||||
SPACEPORT
|
||||
elif [[ $1 = 'cosmic' ]]; then
|
||||
COSMIC
|
||||
elif [[ $1 = 'rocket' ]]; then
|
||||
ROCKET
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Executable
+22
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Проверяем, переданы ли аргументы
|
||||
if [ $# -eq 0 ]; then
|
||||
echo "Ошибка: не указаны файлы для копирования"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Запрашиваем удалённый путь
|
||||
REM=$(gum input --placeholder "user@host:/path/to/destination")
|
||||
|
||||
# Копируем каждый файл по очереди
|
||||
for file in "$@"; do
|
||||
if [ ! -e "$file" ]; then
|
||||
echo "Ошибка: файл '$file' не существует, пропускаем"
|
||||
continue
|
||||
fi
|
||||
echo "Копируем $file..."
|
||||
scp -r "$file" "$REM"
|
||||
done
|
||||
|
||||
echo "Готово!"
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCREENFILE=$HOME/Documents/Images/Screenshots/$(date +'screenshot_%Y-%m-%d-%H%M%S.png')
|
||||
ICONPATH="/home/mat/.config/streamdeck/sources/Keys/applications"
|
||||
HNOTIFY="Центр Управления Полетами"
|
||||
|
||||
SCREENZONE(){
|
||||
grim -g "$(slurp -d)" - | wl-copy && wl-paste > $SCREENFILE
|
||||
notify-send -e -i "$ICONPATH/screenshots.png" "$HNOTIFY" "Скриншот скопирован и сохранен"
|
||||
}
|
||||
|
||||
SCREENFULL(){
|
||||
grim - | wl-copy && wl-paste > $SCREENFILE
|
||||
notify-send -e -i "$ICONPATH/screenshots.png" "$HNOTIFY" "Скриншот скопирован и сохранен"
|
||||
}
|
||||
|
||||
if [[ $1 = 'full' ]]; then
|
||||
SCREENFULL
|
||||
else
|
||||
SCREENZONE
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Executable
+9
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
if [[ $1 == --daemon ]]; then
|
||||
until pgrep gvfs >/dev/null; do
|
||||
sleep 1
|
||||
done
|
||||
exec /usr/bin/Thunar "$@"
|
||||
else
|
||||
exec /usr/bin/Thunar "$@"
|
||||
fi
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Функция для распаковки архивов
|
||||
unpack() {
|
||||
if [ $# -eq 0 ]; then
|
||||
echo -e "\033[1;31mОшибка:\033[0m Укажите имя архива"
|
||||
echo "Использование: unpack <архив>"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [ ! -f "$1" ]; then
|
||||
echo -e "\033[1;31mОшибка:\033[0m Файл '$1' не существует"
|
||||
return 1
|
||||
fi
|
||||
|
||||
case "$1" in
|
||||
*.tar.bz2|*.tbz2) tar xjf "$1" ;;
|
||||
*.tar.gz|*.tgz) tar xzf "$1" ;;
|
||||
*.tar.xz) tar xf "$1" ;;
|
||||
*.tar) tar xf "$1" ;;
|
||||
*.bz2) bunzip2 "$1" ;;
|
||||
*.rar) unrar x "$1" ;;
|
||||
*.gz) gunzip "$1" ;;
|
||||
*.zip) unzip "$1" ;;
|
||||
*.Z) uncompress "$1" ;;
|
||||
*.7z) 7z x "$1" ;;
|
||||
*)
|
||||
echo -e "\033[1;31mОшибка:\033[0m Неподдерживаемый формат архива: '$1'"
|
||||
echo -e "Поддерживаемые форматы: .tar.bz2, .tar.gz, .tar.xz, .tar, .bz2, .rar, .gz, .zip, .Z, .7z"
|
||||
return 1
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -e "\033[1;32mУспех:\033[0m Архив '$1' распакован"
|
||||
fi
|
||||
}
|
||||
|
||||
# Если скрипт вызван напрямую (а не через source), выполняем unpack
|
||||
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
||||
unpack "$@"
|
||||
fi
|
||||
@@ -0,0 +1,91 @@
|
||||
:root {
|
||||
--rh-bg: #303030;
|
||||
--rh-fg: #abb2bf;
|
||||
--rh-current-line: #44475a;
|
||||
--rh-comment: #6272a4;
|
||||
--rh-abyss: rgb(39,39,39);
|
||||
--rh-cyan: #56b6c2;
|
||||
--rh-green: #98c379;
|
||||
--rh-orange: #ffb86c;
|
||||
--rh-pink: #ff79c6;
|
||||
--rh-purple: #c678dd;
|
||||
--rh-red: #e06c75;
|
||||
--rh-yellow: #e5c07b;
|
||||
}
|
||||
.theme-dark,
|
||||
.theme-light {
|
||||
--main-background: var(--rh-bg);
|
||||
--text-color: var(--rh-fg);
|
||||
--link-color: var(--rh-purple);
|
||||
--link-hover-color: var(--rh-purple);
|
||||
--input-background: var(--rh-abyss);
|
||||
--segment-background: var(--rh-abyss);
|
||||
--card-background: var(--rh-abyss);
|
||||
--success-color: var(--rh-green);
|
||||
--success-hover-color: var(--rh-current-line);
|
||||
--discrete-text-color: var(--rh-fg);
|
||||
--really-discrete-text-color: var(--rh-comment);
|
||||
--button-basic-hover-color: var(--rh-fg);
|
||||
--button-basic-color: var(--rh-comment);
|
||||
--card-box-shadow: 0 1px 3px 0 black, 0 0 0 1px black;
|
||||
--sidebar-background: var(--rh-abyss);
|
||||
--vibrant-color: var(--rh-green);
|
||||
--vibrant-hover-color: var(--rh-green);
|
||||
--player-color: var(--rh-fg);
|
||||
--player-background: var(--rh-abyss);
|
||||
--site-background: var(--rh-bg);
|
||||
--danger-color: var(--rh-red);
|
||||
--danger-hover-color: var(--rh-red);
|
||||
--primary-color: var(--rh-cyan);
|
||||
--primary-hover-color: var(--rh-cyan);
|
||||
--secondary-menu-active-item-color: var(--rh-comment);
|
||||
}
|
||||
button,
|
||||
.ui.success.button,
|
||||
.ui.success.buttons .button,
|
||||
.ui.vibrant.button,
|
||||
.ui.vibrant.button:hover,
|
||||
.ui.vibrant.buttons .button,
|
||||
.ui.vibrant.buttons .button:hover,
|
||||
.ui.primary.button,
|
||||
.ui.primary.buttons .button {
|
||||
color: var(--rh-bg);
|
||||
}
|
||||
button:hover,
|
||||
.ui.success.button:hover,
|
||||
.ui.success.buttons .button:hover {
|
||||
color: var(--rh-fg);
|
||||
}
|
||||
.sidebar .logo path {
|
||||
fill: var(--rh-bg);
|
||||
}
|
||||
.ui.table td.active,
|
||||
.ui.table tr.active {
|
||||
color: var(--rh-fg);
|
||||
background: var(--rh-abyss);
|
||||
}
|
||||
.ui.info.message {
|
||||
color: var(--rh-fg);
|
||||
background: var(--rh-current-line);
|
||||
}
|
||||
.ui.selectable.table > tbody > tr:hover,
|
||||
.ui.table tbody tr td.selectable:hover,
|
||||
.ui.selectable.table tr.active:hover,
|
||||
.ui.selectable.table tr:hover td.active,
|
||||
.ui.table tr td.selectable.active:hover,
|
||||
button:hover,
|
||||
.ui.success.button:hover,
|
||||
.ui.success.buttons .button:hover {
|
||||
color: var(--rh-fg);
|
||||
background: var(--rh-current-line);
|
||||
}
|
||||
i.pink.icon {
|
||||
color: var(--rh-pink);
|
||||
}
|
||||
.ui.info.message .header {
|
||||
color: var(--rh-fg);
|
||||
}
|
||||
i.inverted.bordered.vibrant.icon,
|
||||
i.inverted.circular.vibrant.icon {
|
||||
background: var(--rh-red);
|
||||
}
|
||||
Reference in New Issue
Block a user