mirror of
https://github.com/olexsmir/dotfiles.git
synced 2026-01-15 08:41:34 +02:00
Delete qtile config, add readme, screen for openbox
This commit is contained in:
parent
8511aa4130
commit
fdf04c61bc
16 changed files with 467 additions and 925 deletions
|
|
@ -5,8 +5,8 @@
|
||||||
|
|
||||||
#### System configuration
|
#### System configuration
|
||||||
- `OS` Arch
|
- `OS` Arch
|
||||||
- `WM` bspwm
|
- `WM` bspwm, openbox
|
||||||
- `Terminal` alacritty
|
- `Terminal` alacritty, kitty
|
||||||
- `Shell` zsh
|
- `Shell` zsh
|
||||||
- `Editor` nvim, vscode
|
- `Editor` nvim, vscode
|
||||||
- `File manager` ranger
|
- `File manager` ranger
|
||||||
|
|
@ -23,7 +23,7 @@ yay -S rcm
|
||||||
|
|
||||||
Install dependency:
|
Install dependency:
|
||||||
```bash
|
```bash
|
||||||
sudo pacman -S neovim tmux git bspwm sxhkd alacritty picom dunst zsh rofi ranger firefox ttf-font-awesome ttf-jetbrains
|
sudo pacman -S neovim tmux git openbox tint2 bspwm sxhkd kitty picom dunst zsh rofi ranger firefox ttf-font-awesome ttf-jetbrains
|
||||||
yay -S polybar xkblayout
|
yay -S polybar xkblayout
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,68 +0,0 @@
|
||||||
set -U fish_user_paths $HOME/bin $HOME/.yarn/bin $HOME/.applications $fish_user_paths
|
|
||||||
set fish_greeting
|
|
||||||
|
|
||||||
## Variables
|
|
||||||
set EDITOR "nvim"
|
|
||||||
set VISUAL "nvim"
|
|
||||||
|
|
||||||
|
|
||||||
## Key bindings
|
|
||||||
function fish_user_key_bindings
|
|
||||||
fish_default_key_bindings
|
|
||||||
# fish_vi_key_bindings
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
## Colors
|
|
||||||
set fish_color_normal brwhite
|
|
||||||
set fish_color_autosuggestion '#DDDDDD'
|
|
||||||
set fish_color_command brcyan
|
|
||||||
set fish_color_error '#ff6c6b'
|
|
||||||
set fish_color_param brwhite
|
|
||||||
|
|
||||||
|
|
||||||
## Functions
|
|
||||||
function backup --argument filename
|
|
||||||
cp $filename $filename.bak
|
|
||||||
end
|
|
||||||
|
|
||||||
function targz-this-folder --argument filename
|
|
||||||
tar -czf $filename.tar.gz .
|
|
||||||
end
|
|
||||||
|
|
||||||
function zip-this-folder --argument filename
|
|
||||||
zip -r $filename.zip .
|
|
||||||
end
|
|
||||||
|
|
||||||
function set-wallpaper --argument filename
|
|
||||||
feh --bg-scale $filename
|
|
||||||
end
|
|
||||||
|
|
||||||
function set-random-wallpaper
|
|
||||||
feh --randomize --bg-scale ~/Pictures/wallp
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
## Plugins
|
|
||||||
fundle plugin 'matchai/spacefish' # Prompt theme
|
|
||||||
fundle plugin 'justinmayer/virtualfish' # Python venv support
|
|
||||||
fundle plugin 'FabioAntunes/fish-nvm' # NVM status
|
|
||||||
fundle plugin 'edc/bass' # Required for fish-nvm
|
|
||||||
fundle plugin 'jorgebucaran/autopair.fish' # Brackets closer
|
|
||||||
fundle init
|
|
||||||
|
|
||||||
|
|
||||||
## Aliases
|
|
||||||
alias cls="clear"
|
|
||||||
alias mkdir="mkdir -p"
|
|
||||||
alias cp="cp -r"
|
|
||||||
alias du="du -sh"
|
|
||||||
alias df="df -h"
|
|
||||||
alias neovim='nvim'
|
|
||||||
alias vim="nvim"
|
|
||||||
alias vi="vim"
|
|
||||||
alias tmux="tmux -2"
|
|
||||||
alias :q="exit"
|
|
||||||
alias q="exit"
|
|
||||||
alias ..="cd .."
|
|
||||||
alias ...="cd ../.."
|
|
||||||
|
|
@ -19,7 +19,6 @@ hide_edge_borders smart
|
||||||
exec_always --no-startup-id exec setxkbmap "us,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps"
|
exec_always --no-startup-id exec setxkbmap "us,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps"
|
||||||
exec_always --no-startup-id exec feh --randomize --bg-scale ~/Pictures/wallp
|
exec_always --no-startup-id exec feh --randomize --bg-scale ~/Pictures/wallp
|
||||||
exec --no-startup-id exec picom -b
|
exec --no-startup-id exec picom -b
|
||||||
exec --no-startup-id exec lxsession
|
|
||||||
|
|
||||||
############ Variables ###########
|
############ Variables ###########
|
||||||
set $terminal kitty
|
set $terminal kitty
|
||||||
|
|
@ -37,18 +36,14 @@ bindsym --release $mod+Shift+q exec xkill
|
||||||
# Restart i3wm
|
# Restart i3wm
|
||||||
bindsym $mod+Control+r restart
|
bindsym $mod+Control+r restart
|
||||||
|
|
||||||
# Floating layout
|
# Layout
|
||||||
|
bindsym $mod+Control+w layout tabbed
|
||||||
|
bindsym $mod+Control+e layout toggle split
|
||||||
bindsym $mod+Shift+Tab floating toggle
|
bindsym $mod+Shift+Tab floating toggle
|
||||||
|
|
||||||
# Tab layout
|
# Split mode
|
||||||
bindsym $mod+Control+w layout tabbed
|
bindsym $mod+$alt+h split h
|
||||||
|
bindsym $mod+$alt+v split v
|
||||||
# Split layout
|
|
||||||
bindsym $mod+Control+e layout toggle split
|
|
||||||
|
|
||||||
# Splits
|
|
||||||
bindsym $mod+b split h
|
|
||||||
bindsym $mod+v split v
|
|
||||||
|
|
||||||
# Scratchpad
|
# Scratchpad
|
||||||
bindsym $mod+Shift+grave move scratchpad
|
bindsym $mod+Shift+grave move scratchpad
|
||||||
|
|
@ -56,12 +51,7 @@ bindsym $mod+grave scratchpad show, floating disable
|
||||||
|
|
||||||
############## User key ###########
|
############## User key ###########
|
||||||
|
|
||||||
# Menus
|
# Applications
|
||||||
bindsym $mod+Shift+Return exec rofi -show drun -theme ntenV2
|
|
||||||
bindsym $mod+Escape exec ~/.script/dmenu/dmenu-power.sh
|
|
||||||
bindsym $mod+Control+i exec ~/.script/dmenu/dmenu-pass.sh
|
|
||||||
|
|
||||||
# Apps
|
|
||||||
bindsym $mod+Return exec $terminal
|
bindsym $mod+Return exec $terminal
|
||||||
bindsym $mod+Shift+w exec $browser
|
bindsym $mod+Shift+w exec $browser
|
||||||
bindsym $mod+Shift+f exec $filemanager
|
bindsym $mod+Shift+f exec $filemanager
|
||||||
|
|
@ -70,18 +60,25 @@ bindsym $mod+Shift+c exec $guicode
|
||||||
bindsym $mod+Shift+v exec veracrypt
|
bindsym $mod+Shift+v exec veracrypt
|
||||||
bindsym $mod+Shift+s exec ~/.applications/simplenote.appimage
|
bindsym $mod+Shift+s exec ~/.applications/simplenote.appimage
|
||||||
|
|
||||||
# Sceenshot
|
# Menu
|
||||||
|
bindsym $mod+Shift+Return exec rofi -show drun -theme ntenV2
|
||||||
|
bindsym $mod+Escape exec ~/.script/dmenu/dmenu-power.sh
|
||||||
|
bindsym $mod+Control+i exec ~/.script/dmenu/dmenu-pass.sh
|
||||||
|
|
||||||
|
# Screenhot
|
||||||
bindsym --release Print exec scrot -s /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png
|
bindsym --release Print exec scrot -s /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png
|
||||||
bindsym Shift+Print exec scrot /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png
|
bindsym Shift+Print exec scrot /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png
|
||||||
|
|
||||||
# Lockscreen
|
|
||||||
bindsym $mod+Shift+z exec betterlockscreen --off 180 -t "Computer is lockerd" -l
|
|
||||||
|
|
||||||
# Volume
|
# Volume
|
||||||
bindsym $mod+plus exec amixer sset Master 2%+
|
bindsym $mod+plus exec amixer sset Master 2%+
|
||||||
bindsym $mod+minus exec amixer sset Master 2%-
|
bindsym $mod+minus exec amixer sset Master 2%-
|
||||||
bindsym $mod+Shift+minus exec amixer sset Master toggle
|
bindsym $mod+Shift+minus exec amixer sset Master toggle
|
||||||
|
|
||||||
|
############## GAPS ###############
|
||||||
|
smart_gaps on
|
||||||
|
gaps inner 3
|
||||||
|
gaps outer 4
|
||||||
|
|
||||||
######### Window preferens ########
|
######### Window preferens ########
|
||||||
assign [class="(?i)alacritty|kitty"] $ws1
|
assign [class="(?i)alacritty|kitty"] $ws1
|
||||||
assign [class="(?i)google-chrome-stable|firefox"] $ws2
|
assign [class="(?i)google-chrome-stable|firefox"] $ws2
|
||||||
|
|
@ -90,7 +87,7 @@ assign [class="Thunar|ranger"] $ws4
|
||||||
assign [class="Joplin|Simplenote"] $ws5
|
assign [class="Joplin|Simplenote"] $ws5
|
||||||
assign [class="TelegramDesktop|discord"] $ws6
|
assign [class="TelegramDesktop|discord"] $ws6
|
||||||
for_window [class="TelegramDesktop|discord"] layout tabbed
|
for_window [class="TelegramDesktop|discord"] layout tabbed
|
||||||
assign [class="KeePassXC"] $ws7
|
assign [class="KeePassX"] $ws7
|
||||||
assign [class="Spotify"] $ws9
|
assign [class="Spotify"] $ws9
|
||||||
for_window [title="Google Tasks"] floating enable
|
for_window [title="Google Tasks"] floating enable
|
||||||
focus_on_window_activation focus
|
focus_on_window_activation focus
|
||||||
|
|
@ -163,17 +160,16 @@ bar {
|
||||||
position top
|
position top
|
||||||
colors {
|
colors {
|
||||||
background #262A2B
|
background #262A2B
|
||||||
statusline #FFFFFF
|
statusline #DFDFDF
|
||||||
separator #58676C
|
separator #CED4DA
|
||||||
focused_workspace #008DCD #008DCD #FFFFFF
|
focused_workspace #008DCD #008DCD #DFDFDF
|
||||||
active_workspace #262A2B #262A2B #FFFFFF
|
active_workspace #262A2B #262A2B #DFDFDF
|
||||||
inactive_workspace #262A2B #262A2B #DFDFDF
|
inactive_workspace #262A2B #262A2B #DFDFDF
|
||||||
urgent_workspace #FF6C6B #FF6C6B #FFFFFF
|
urgent_workspace #FF6C6B #FF6C6B #DFDFDF
|
||||||
binding_mode #2F343A #900000 #FFFFFF
|
binding_mode #2F343A #900000 #DFDFDF
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
############## Colors #############
|
############## Colors #############
|
||||||
# Class Border Backgr Text Indicator Child_border
|
|
||||||
client.focused #008DCD #008DCD #FFFFFF #008DCD #008DCD
|
client.focused #008DCD #008DCD #FFFFFF #008DCD #008DCD
|
||||||
client.focused_inactive #008DCD #002b36 #DFDFDF #002b36 #002b36
|
client.focused_inactive #008DCD #002b36 #DFDFDF #002b36 #002b36
|
||||||
client.unfocused #262A2B #262A2B #DFDFDF #262A2B #262A2B
|
client.unfocused #262A2B #262A2B #DFDFDF #262A2B #262A2B
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
theme = "native"
|
theme = "native"
|
||||||
icons = "none"
|
icons = "awesome5"
|
||||||
|
|
||||||
[[block]]
|
[[block]]
|
||||||
block = "custom"
|
block = "custom"
|
||||||
|
|
|
||||||
|
|
@ -9,23 +9,6 @@
|
||||||
<item label="Neovim">
|
<item label="Neovim">
|
||||||
<action name="Execute">
|
<action name="Execute">
|
||||||
<command>kitty -e nvim</command>
|
<command>kitty -e nvim</command>
|
||||||
<startupnotify>
|
|
||||||
<enabled>yes</enabled>
|
|
||||||
<wmclass>nvim</wmclass>
|
|
||||||
</startupnotify>
|
|
||||||
</action>
|
|
||||||
</item>
|
|
||||||
</menu>
|
|
||||||
|
|
||||||
<menu id="apps-term-menu" label="Terminals">
|
|
||||||
<item label="Alacritty">
|
|
||||||
<action name="Execute">
|
|
||||||
<command>alacritty</command>
|
|
||||||
</action>
|
|
||||||
</item>
|
|
||||||
<item label="Kitty">
|
|
||||||
<action name="Execute">
|
|
||||||
<command>kitty</command>
|
|
||||||
</action>
|
</action>
|
||||||
</item>
|
</item>
|
||||||
</menu>
|
</menu>
|
||||||
|
|
@ -118,10 +101,13 @@
|
||||||
|
|
||||||
<menu id="power-menu" label="Power">
|
<menu id="power-menu" label="Power">
|
||||||
<item label="Power Off">
|
<item label="Power Off">
|
||||||
<action name="poweroff"><prompt>yes</prompt></action>
|
<action name="PowerOff"></action>
|
||||||
</item>
|
</item>
|
||||||
<item label="Reboot">
|
<item label="Reboot">
|
||||||
<action name="reboot"><prompt>yes</prompt></action>
|
<action name="reboot"></action>
|
||||||
|
</item>
|
||||||
|
<item label="Suspend">
|
||||||
|
<action name="systemctl suspend" />
|
||||||
</item>
|
</item>
|
||||||
<item label="Log Out">
|
<item label="Log Out">
|
||||||
<action name="Exit"><prompt>yes</prompt></action>
|
<action name="Exit"><prompt>yes</prompt></action>
|
||||||
|
|
@ -129,28 +115,24 @@
|
||||||
</menu>
|
</menu>
|
||||||
|
|
||||||
<menu id="root-menu" label="Openbox">
|
<menu id="root-menu" label="Openbox">
|
||||||
<item label="Terminal">
|
<item label="Kitty"><action name="Execute">
|
||||||
<action name="Execute">
|
|
||||||
<command>kitty</command>
|
<command>kitty</command>
|
||||||
</action>
|
</action></item>
|
||||||
</item>
|
<item label="Chrome"><action name="Execute">
|
||||||
<item label="Browser">
|
|
||||||
<action name="Execute">
|
|
||||||
<command>google-chrome-stable</command>
|
<command>google-chrome-stable</command>
|
||||||
</action>
|
</action></item>
|
||||||
</item>
|
<item label="VScode"><action name="Execute">
|
||||||
<item label="Rofi">
|
<command>code</command>
|
||||||
<action name="Execute">
|
</action></item>
|
||||||
|
<item label="Rofi"> <action name="Execute">
|
||||||
<command>rofi -show drun -theme ntenV2</command>
|
<command>rofi -show drun -theme ntenV2</command>
|
||||||
</action>
|
</action></item>
|
||||||
</item>
|
<separator />
|
||||||
<separator label="Categories" />
|
|
||||||
<menu id="apps-net-menu"/>
|
<menu id="apps-net-menu"/>
|
||||||
<menu id="apps-editors-menu"/>
|
<menu id="apps-editors-menu"/>
|
||||||
<menu id="apps-term-menu"/>
|
|
||||||
<menu id="apps-office-menu"/>
|
<menu id="apps-office-menu"/>
|
||||||
<menu id="apps-fileman-menu"/>
|
<menu id="apps-fileman-menu"/>
|
||||||
<separator label="System" />
|
<separator />
|
||||||
<menu id="system-menu" />
|
<menu id="system-menu" />
|
||||||
<menu id="power-menu" />
|
<menu id="power-menu" />
|
||||||
</menu>
|
</menu>
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -9,6 +9,7 @@ shadow-offset-y = -7;
|
||||||
shadow-exclude = [
|
shadow-exclude = [
|
||||||
"override_redirect",
|
"override_redirect",
|
||||||
"class_g = 'Firefox' && argb",
|
"class_g = 'Firefox' && argb",
|
||||||
|
"class_g = 'Tint2'"
|
||||||
];
|
];
|
||||||
|
|
||||||
############ Fading ###########
|
############ Fading ###########
|
||||||
|
|
|
||||||
|
|
@ -1,21 +0,0 @@
|
||||||
# Qtile config
|
|
||||||
|
|
||||||

|
|
||||||
------------------------------
|
|
||||||
|
|
||||||
### Install
|
|
||||||
-----------
|
|
||||||
~~~shell
|
|
||||||
sudo pacman -S qtile alacritty
|
|
||||||
yay -S xkblayout
|
|
||||||
~~~
|
|
||||||
|
|
||||||
### Autostart
|
|
||||||
-------------
|
|
||||||
~~~bash
|
|
||||||
xautolock -time 5 -locker "betterlockscreen --off 300 -t \"Computer is lockerd\" -l" &
|
|
||||||
setxkbmap "us,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" &
|
|
||||||
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
|
|
||||||
nitrogen --restore &
|
|
||||||
picom --experimental-backends -b &
|
|
||||||
~~~~
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
xautolock -time 5 -locker "betterlockscreen --off 300 -t \"Computer is lockerd\" -l" &
|
|
||||||
setxkbmap "us,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" &
|
|
||||||
nitrogen --restore &
|
|
||||||
lxsession &
|
|
||||||
picom -b &
|
|
||||||
|
|
@ -1,313 +0,0 @@
|
||||||
from libqtile import bar, layout, widget, hook
|
|
||||||
from libqtile.config import Click, Drag, Group, Key, Screen
|
|
||||||
from libqtile.lazy import lazy
|
|
||||||
from os import system as cmd
|
|
||||||
import kblayout
|
|
||||||
|
|
||||||
|
|
||||||
# Set mod key
|
|
||||||
mod = "mod4"
|
|
||||||
alt = "mod1"
|
|
||||||
|
|
||||||
# Set program
|
|
||||||
terminal = "alacritty"
|
|
||||||
browser = "firefox"
|
|
||||||
filemanager = f"{terminal} --title=ranger -e ranger"
|
|
||||||
editor = f"{terminal} --title=NVim -e nvim"
|
|
||||||
guicodeeitor = "code --disable-gpu"
|
|
||||||
|
|
||||||
# Set qtile colors
|
|
||||||
color = [
|
|
||||||
"#FFFFFF", # 0. Text color
|
|
||||||
"#CED4DA", # 1. Unfocus color
|
|
||||||
"#008DCD", # 2. Focus color
|
|
||||||
"#262A2B", # 3. Panel color
|
|
||||||
"#51AFEF", # 4. Text color
|
|
||||||
"#C678DD", # 5. Text color
|
|
||||||
"#FF6C6B", # 6. Text color
|
|
||||||
"#ECBE7B", # 7. Text color
|
|
||||||
"#98BE65", # 8. Text color
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
# Auto start
|
|
||||||
@hook.subscribe.startup_once
|
|
||||||
def autostart():
|
|
||||||
cmd("~/.config/qtile/autostart.sh")
|
|
||||||
|
|
||||||
|
|
||||||
keys = [
|
|
||||||
# Applications
|
|
||||||
Key([mod], "Return",
|
|
||||||
lazy.spawn(terminal),
|
|
||||||
desc="Launch terminal"),
|
|
||||||
Key([mod, "shift"], "w",
|
|
||||||
lazy.spawn(browser),
|
|
||||||
desc="Launch browser"),
|
|
||||||
Key([mod, "shift"], "f",
|
|
||||||
lazy.spawn(filemanager),
|
|
||||||
desc="Launch filemanager"),
|
|
||||||
Key([mod, "shift"], "e",
|
|
||||||
lazy.spawn(editor),
|
|
||||||
desc="Launch code editor"),
|
|
||||||
Key([mod, "shift"], "c",
|
|
||||||
lazy.spawn(guicodeeitor),
|
|
||||||
desc="Run GUI code editor"),
|
|
||||||
|
|
||||||
# Window control
|
|
||||||
Key([mod], "q",
|
|
||||||
lazy.window.kill(),
|
|
||||||
desc="Kill focused window"),
|
|
||||||
Key([mod, "shift"], "Tab",
|
|
||||||
lazy.window.toggle_floating(),
|
|
||||||
desc="Toggle floating mode"),
|
|
||||||
Key([mod], "h",
|
|
||||||
lazy.layout.left(),
|
|
||||||
desc="Change focus window(left)"),
|
|
||||||
Key([mod], "j",
|
|
||||||
lazy.layout.down(),
|
|
||||||
desc="Change focus window(down)"),
|
|
||||||
Key([mod], "k",
|
|
||||||
lazy.layout.up(),
|
|
||||||
desc="Change focus window(up)"),
|
|
||||||
Key([mod], "l",
|
|
||||||
lazy.layout.right(),
|
|
||||||
desc="Change focus window(right)"),
|
|
||||||
Key([mod, "shift"], "h",
|
|
||||||
lazy.layout.shuffle_left(),
|
|
||||||
desc="Move focus window(left)"),
|
|
||||||
Key([mod, "shift"], "j",
|
|
||||||
lazy.layout.shuffle_down(),
|
|
||||||
desc="Move focus window(down)"),
|
|
||||||
Key([mod, "shift"], "k",
|
|
||||||
lazy.layout.shuffle_up(),
|
|
||||||
desc="Move focus window(up)"),
|
|
||||||
Key([mod, "shift"], "l",
|
|
||||||
lazy.layout.shuffle_right(),
|
|
||||||
desc="Move focus window(right)"),
|
|
||||||
Key([mod, "control"], "h",
|
|
||||||
lazy.layout.grow_left(),
|
|
||||||
desc="Resize focus window(left)"),
|
|
||||||
Key([mod, "control"], "j",
|
|
||||||
lazy.layout.grow_down(),
|
|
||||||
desc="Resize focus window(down)"),
|
|
||||||
Key([mod, "control"], "k",
|
|
||||||
lazy.layout.grow_up(),
|
|
||||||
desc="Resize focus window(up)"),
|
|
||||||
Key([mod, "control"], "l",
|
|
||||||
lazy.layout.grow_right(),
|
|
||||||
desc="Resize focus window(right)"),
|
|
||||||
|
|
||||||
# Layout
|
|
||||||
Key([mod], "Tab",
|
|
||||||
lazy.next_layout(),
|
|
||||||
desc="Toggle between layouts"),
|
|
||||||
Key([mod], "space",
|
|
||||||
lazy.layout.next(),
|
|
||||||
desc="Switch window focus to other pane(s) of stack"),
|
|
||||||
Key([mod, "shift"], "space",
|
|
||||||
lazy.layout.rotate(),
|
|
||||||
desc="Swap panes of split stack"),
|
|
||||||
|
|
||||||
# Volume
|
|
||||||
Key([mod], "equal",
|
|
||||||
lazy.spawn("amixer sset Master 2%+"),
|
|
||||||
desc="Plus 2% volume"),
|
|
||||||
Key([mod], "minus",
|
|
||||||
lazy.spawn("amixer sset Master 2%-"),
|
|
||||||
desc="Minus 2% volume"),
|
|
||||||
Key([mod, "shift"], "minus",
|
|
||||||
lazy.spawn("amixer sset Master toggle"),
|
|
||||||
desc="Mute volume"),
|
|
||||||
|
|
||||||
# Menus(dmenu or/and rofi)
|
|
||||||
Key([mod, "shift"], "Return",
|
|
||||||
lazy.spawn("rofi -show drun"),
|
|
||||||
desc="(Rofi) Program launcher"),
|
|
||||||
Key([mod], "Escape",
|
|
||||||
lazy.spawn("./.script/dmenu/dmenu-power.sh"),
|
|
||||||
desc="Power menu"),
|
|
||||||
Key([mod, "control"], "i",
|
|
||||||
lazy.spawn("./.script/dmenu/dmenu-pass.sh"),
|
|
||||||
desc="Dmenu(rofi) password menu"),
|
|
||||||
Key([mod, "control"], "u",
|
|
||||||
lazy.spawn("./.script/dmenu/dmenu-config-edit.sh"),
|
|
||||||
desc="Config editor"),
|
|
||||||
|
|
||||||
# Screenhot
|
|
||||||
Key([], "Print",
|
|
||||||
lazy.spawn("scrot -s ./$(date +%Y-%m-%d-%H-%M-%S).png"),
|
|
||||||
desc="Create screenhot(scrot -s)"),
|
|
||||||
Key(["shift"], "Print",
|
|
||||||
lazy.spawn("scrot ./$(date +%Y-%m-%d-%H-%M-%S).png"),
|
|
||||||
desc="Create screenhot full screen(scrot)"),
|
|
||||||
|
|
||||||
# Qtile
|
|
||||||
Key([mod, "control"], "r",
|
|
||||||
lazy.restart(),
|
|
||||||
desc="Restart qtile"),
|
|
||||||
Key([mod], "r",
|
|
||||||
lazy.spawncmd(),
|
|
||||||
desc="Spawn a command using a prompt widget"),
|
|
||||||
Key([mod, "shift"], "q",
|
|
||||||
lazy.spawn("xkill"),
|
|
||||||
desc="Xkill"),
|
|
||||||
Key([mod, "shift"], "z",
|
|
||||||
lazy.spawn("betterlockscreen --off 300 -t \"Computer is locked\" -l"),
|
|
||||||
desc="Lock screen")
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
# Auto send window on specific WP
|
|
||||||
@hook.subscribe.client_new
|
|
||||||
def client_new(client):
|
|
||||||
if client.name == "Alacritty" or client.name == "Kitty":
|
|
||||||
client.togroup("term")
|
|
||||||
elif client.name == "Mozilla Firefox" or \
|
|
||||||
client.name == "Firefox Developer Edition":
|
|
||||||
client.togroup("www")
|
|
||||||
elif client.name == "NVim" or client.name == \
|
|
||||||
"Visual Studio Code":
|
|
||||||
client.togroup("dev")
|
|
||||||
elif client.name == "Thunar" or client.name == "ranger":
|
|
||||||
client.togroup("sys")
|
|
||||||
elif client.name == "Joplin":
|
|
||||||
client.togroup("doc")
|
|
||||||
elif client.name == "Telegram" or client.name == "Discord":
|
|
||||||
client.togroup("chat")
|
|
||||||
elif client.name == "KeePassXC":
|
|
||||||
client.togroup("pass")
|
|
||||||
elif client.name == "Spotify":
|
|
||||||
client.togroup("mus")
|
|
||||||
|
|
||||||
|
|
||||||
# Workspaces name, keys
|
|
||||||
group_names = [("term", {"layout": "columns"}),
|
|
||||||
("www", {"layout": "max"}),
|
|
||||||
("dev", {"layout": "columns"}),
|
|
||||||
("sys", {"layout": "columns"}),
|
|
||||||
("doc", {"layout": "columns"}),
|
|
||||||
("chat", {"layout": "columns"}),
|
|
||||||
("pass", {"layout": "columns"}),
|
|
||||||
("mus", {"layout": "max"}),
|
|
||||||
("flo", {"layout": "columns"})]
|
|
||||||
groups = [Group(name, **kwargs) for name, kwargs in group_names]
|
|
||||||
for i, (name, kwargs) in enumerate(group_names, 1):
|
|
||||||
keys.append(Key([mod], str(i), lazy.group[name].toscreen()))
|
|
||||||
keys.append(Key([mod, "shift"], str(i), lazy.window.togroup(name)))
|
|
||||||
|
|
||||||
|
|
||||||
# Window layout(s)
|
|
||||||
layout_theme = {
|
|
||||||
"border_width": 2,
|
|
||||||
"margin": 2,
|
|
||||||
"border_focus": color[2],
|
|
||||||
"border_normal": color[3],
|
|
||||||
"font": "Jatbrains Mono"
|
|
||||||
}
|
|
||||||
layouts = [
|
|
||||||
layout.Max(),
|
|
||||||
# layout.Stack(num_stacks=2, **layout_theme),
|
|
||||||
# layout.Bsp(**layout_theme),
|
|
||||||
layout.Columns(**layout_theme),
|
|
||||||
# layout.Matrix(),
|
|
||||||
# layout.MonadTall(**layout_theme),
|
|
||||||
# layout.Floating(**layout_theme),
|
|
||||||
# layout.MonadWide(),
|
|
||||||
# layout.RatioTile(),
|
|
||||||
# layout.Tile(**layout_theme),
|
|
||||||
# layout.TreeTab(),
|
|
||||||
# layout.VerticalTile(),
|
|
||||||
# layout.Zoomy(),
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
# Panel
|
|
||||||
widget_defaults = dict(
|
|
||||||
font="Jatbrains Mono",
|
|
||||||
fontsize=12,
|
|
||||||
padding=4,
|
|
||||||
foreground=color[0],
|
|
||||||
background=color[3],
|
|
||||||
)
|
|
||||||
extension_defaults = widget_defaults.copy()
|
|
||||||
screens = [Screen(top=bar.Bar([
|
|
||||||
widget.GroupBox(
|
|
||||||
active=color[0],
|
|
||||||
inactive=color[1],
|
|
||||||
rounded=False,
|
|
||||||
disable_drag=True,
|
|
||||||
highlight_color=color[2],
|
|
||||||
highlight_method="block",
|
|
||||||
this_current_screen_border=color[2],
|
|
||||||
this_screen_border=color[3]
|
|
||||||
),
|
|
||||||
widget.Prompt(),
|
|
||||||
widget.WindowName(),
|
|
||||||
kblayout.KBLayout(
|
|
||||||
foreground=color[5],
|
|
||||||
update_interval=0,
|
|
||||||
fmt=" {}"
|
|
||||||
),
|
|
||||||
widget.CurrentLayout(
|
|
||||||
foreground=color[8]
|
|
||||||
),
|
|
||||||
widget.Volume(
|
|
||||||
foreground=color[6],
|
|
||||||
fmt=" {}"
|
|
||||||
),
|
|
||||||
widget.Net(
|
|
||||||
interface="wlp3s0",
|
|
||||||
format="{down} ↓↑{up}",
|
|
||||||
foreground=color[7]
|
|
||||||
),
|
|
||||||
widget.Systray(),
|
|
||||||
widget.Clock(
|
|
||||||
format=" %H:%M",
|
|
||||||
foreground=color[4]
|
|
||||||
),
|
|
||||||
widget.Clock(
|
|
||||||
format=" %d.%m.%Y",
|
|
||||||
foreground=color[4]
|
|
||||||
)], 24 # Panel size
|
|
||||||
))]
|
|
||||||
|
|
||||||
|
|
||||||
# Drag floating layouts
|
|
||||||
mouse = [
|
|
||||||
Drag([mod], "Button1",
|
|
||||||
lazy.window.set_position(),
|
|
||||||
start=lazy.window.get_position()),
|
|
||||||
Drag([mod], "Button3",
|
|
||||||
lazy.window.set_size_floating(),
|
|
||||||
start=lazy.window.get_size()),
|
|
||||||
Click([mod], "Button2",
|
|
||||||
lazy.window.bring_to_front())
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
dgroups_key_binder = None
|
|
||||||
dgroups_app_rules = []
|
|
||||||
main = None
|
|
||||||
follow_mouse_focus = True
|
|
||||||
bring_front_click = False
|
|
||||||
cursor_warp = False
|
|
||||||
floating_layout = layout.Floating(
|
|
||||||
**layout_theme, float_rules=[
|
|
||||||
{"wmclass": "confirm"},
|
|
||||||
{"wmclass": "dialog"},
|
|
||||||
{"wmclass": "download"},
|
|
||||||
{"wmclass": "error"},
|
|
||||||
{"wmclass": "file_progress"},
|
|
||||||
{"wmclass": "notification"},
|
|
||||||
{"wmclass": "splash"},
|
|
||||||
{"wmclass": "toolbar"},
|
|
||||||
{"wmclass": "confirmreset"},
|
|
||||||
{"wmclass": "makebranch"},
|
|
||||||
{"wmclass": "maketag"},
|
|
||||||
{"wname": "branchdialog"},
|
|
||||||
{"wname": "pinentry"},
|
|
||||||
{"wmclass": "ssh-askpass"}])
|
|
||||||
auto_fullscreen = True
|
|
||||||
focus_on_window_activation = "smart"
|
|
||||||
wmname = "LG3D"
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 508 B |
Binary file not shown.
|
Before Width: | Height: | Size: 232 B |
Binary file not shown.
|
Before Width: | Height: | Size: 1.1 KiB |
|
|
@ -1,29 +0,0 @@
|
||||||
"""
|
|
||||||
For working widget install `xkblayout`
|
|
||||||
$ yay -S xkblayout
|
|
||||||
"""
|
|
||||||
from libqtile.widget import base
|
|
||||||
from os import popen
|
|
||||||
|
|
||||||
|
|
||||||
KBCMD = """
|
|
||||||
case "$(xkblayout)" in
|
|
||||||
"Eng") echo "us" ;;
|
|
||||||
"Ukr") echo "ua" ;;
|
|
||||||
esac
|
|
||||||
"""
|
|
||||||
|
|
||||||
|
|
||||||
class KBLayout(base.InLoopPollText):
|
|
||||||
"""Widget for displaying the current keyboard layout"""
|
|
||||||
orientations = base.ORIENTATION_HORIZONTAL
|
|
||||||
|
|
||||||
def __init__(self, **config):
|
|
||||||
base.InLoopPollText.__init__(self, **config)
|
|
||||||
|
|
||||||
def poll(self):
|
|
||||||
kb = popen(KBCMD).read() \
|
|
||||||
.rstrip('\n') \
|
|
||||||
.encode('utf-8') \
|
|
||||||
.decode('utf-8')
|
|
||||||
return kb
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.2 MiB |
Loading…
Add table
Add a link
Reference in a new issue