Refactor directory structure

This commit is contained in:
Ivan Bushchik 2022-12-09 10:52:07 +03:00
parent a0f9d96f1f
commit 04d59aeed9
No known key found for this signature in database
GPG key ID: 3E4E9C7D66E44BF7
17 changed files with 2345 additions and 0 deletions

View file

@ -0,0 +1,109 @@
window:
dimensions:
columns: 80
lines: 25
padding:
x: 5
y: 5
scrolling:
history: 100000
multiplier: 3
font:
normal:
family: JetBrains Mono
style: SemiBold
bold:
family: JetBrains Mono
style: Bold
italic:
family: JetBrains Mono
style: SemiBold Italic
size: 8.0
cursor:
shape: Block
blinking: on
colors:
# Default colors
primary:
background: "#24273A" # base
foreground: "#CAD3F5" # text
# Bright and dim foreground colors
dim_foreground: "#CAD3F5" # text
bright_foreground: "#CAD3F5" # text
# Cursor colors
cursor:
text: "#24273A" # base
cursor: "#F4DBD6" # rosewater
vi_mode_cursor:
text: "#24273A" # base
cursor: "#B7BDF8" # lavender
# Search colors
search:
matches:
foreground: "#24273A" # base
background: "#A5ADCB" # subtext0
focused_match:
foreground: "#24273A" # base
background: "#A6DA95" # green
footer_bar:
foreground: "#24273A" # base
background: "#A5ADCB" # subtext0
# Keyboard regex hints
hints:
start:
foreground: "#24273A" # base
background: "#EED49F" # yellow
end:
foreground: "#24273A" # base
background: "#A5ADCB" # subtext0
# Selection colors
selection:
text: "#24273A" # base
background: "#F4DBD6" # rosewater
# Normal colors
normal:
black: "#494D64" # surface1
red: "#ED8796" # red
green: "#A6DA95" # green
yellow: "#EED49F" # yellow
blue: "#8AADF4" # blue
magenta: "#F5BDE6" # pink
cyan: "#8BD5CA" # teal
white: "#B8C0E0" # subtext1
# Bright colors
bright:
black: "#5B6078" # surface2
red: "#ED8796" # red
green: "#A6DA95" # green
yellow: "#EED49F" # yellow
blue: "#8AADF4" # blue
magenta: "#F5BDE6" # pink
cyan: "#8BD5CA" # teal
white: "#A5ADCB" # subtext0
# Dim colors
dim:
black: "#494D64" # surface1
red: "#ED8796" # red
green: "#A6DA95" # green
yellow: "#EED49F" # yellow
blue: "#8AADF4" # blue
magenta: "#F5BDE6" # pink
cyan: "#8BD5CA" # teal
white: "#B8C0E0" # subtext1
indexed_colors:
- { index: 16, color: "#F5A97F" }
- { index: 17, color: "#F4DBD6" }

View file

@ -0,0 +1,9 @@
anchor=top-right
default-timeout=10000
width=300
font=JetBrains Mono 8
background-color=#002b36FF
text-color=#839496FF
border-color=#073642FF
height=500
border-radius=10

View file

@ -0,0 +1,18 @@
filetype plugin indent on
set showmatch
set hlsearch
set incsearch
set autoindent
set expandtab
set tabstop=4
set shiftwidth=4
set number
set wildmode=longest, list
set cc=80
syntax on
set noswapfile
set backupdir=~/.cache/vim
set completeopt=noinsert,menuone,noselect
set cursorline
set relativenumber

View file

@ -0,0 +1,35 @@
[Appearance]
color_scheme_path=/home/ivabus/.config/qt5ct/colors/Catppuccin-Macchiato.conf
custom_palette=true
icon_theme=Mint-Y-Dark
standard_dialogs=default
style=Lightly
[Fonts]
fixed=@Variant(\0\0\0@\0\0\0\x12\0N\0o\0t\0o\0 \0S\0\x61\0n\0s@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
general=@Variant(\0\0\0@\0\0\0\x12\0N\0o\0t\0o\0 \0S\0\x61\0n\0s@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10)
[Interface]
activate_item_on_single_click=1
buttonbox_layout=0
cursor_flash_time=1000
dialog_buttons_have_icons=1
double_click_interval=400
gui_effects=@Invalid()
keyboard_scheme=2
menus_have_icons=true
show_shortcuts_in_context_menus=true
stylesheets=@Invalid()
toolbutton_style=4
underline_shortcut=1
wheel_scroll_lines=3
[PaletteEditor]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0N\0\0\0\xc8\0\0\x2\xe3\0\0\x2\xd8\0\0\0N\0\0\0\xc8\0\0\x2\xe3\0\0\x2\xd8\0\0\0\0\0\0\0\0\x6\xaa\0\0\0N\0\0\0\xc8\0\0\x2\xe3\0\0\x2\xd8)
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x3\x46\0\0\x3\xef\0\0\0\0\0\0\0\0\0\0\x2\xde\0\0\x3Y\0\0\0\0\x2\0\0\0\x6\xaa\0\0\0\0\0\0\0\0\0\0\x3\x46\0\0\x3\xef)
[Troubleshooting]
force_raster_widgets=1
ignored_applications=@Invalid()

View file

@ -0,0 +1,13 @@
. "$HOME/.cargo/env"
export QT_QPA_PLATFORMTHEME=qt5ct
export GPG_TTY=$(tty)
export XDG_CURRENT_DESKTOP=sway
export BROWSER=firefox
export QT_QPA_PLATFORMTHEME=qt5ct
export ECORE_EVAS_ENGINE="wayland_egl"
export ELM_ACCEL="gl"
export MOZ_ENABLE_WAYLAND=1
export MOZ_DBUS_REMOTE=1
export GTK_CSD=0

View file

@ -0,0 +1,149 @@
set $mod Mod4
set $left h
set $down j
set $up k
set $right l
set $term alacritty
for_window [app_id="^launcher$"] floating enable, sticky enable, resize set 30 ppt 60 ppt
set $menu exec $term --class=launcher -e env zsh -c "source ~/.profile && /usr/bin/sway-launcher-desktop"
set $filemgr nemo
output * bg #181924 solid_color
input type:keyboard {
xkb_layout us,ru
xkb_options grp:win_space_toggle
xkb_variant "mac,mac"
}
input type:touchpad {
tap enabled
natural_scroll enabled
}
bar swaybar_command waybar
xwayland enable
default_border pixel 1
gaps inner 8
font "JetBrains Mono" 9
output * scale 1.5
include ~/.config/sway/themes/catppuccin-macchiato
# Start components
exec mako
exec poweralertd
exec swayidle -w timeout 60 '$HOME/.config/sway/lock.sh'
# Screenshots
set $screenshot_file \"$HOME/Pictures/screenshot-$(date '+%Y-%m-%d_%H-%M-%S').png\"
bindsym $mod+o exec grim -s1 $screenshot_file
bindsym $mod+p exec (slurp | grim -g- -s1 $screenshot_file)
# Recordings
set $rec_file \"$HOME/Videos/recording-$(date '+%Y-%m-%d_%H-%M-%S').mp4\"
bindsym $mod+Shift+o exec wf-recorder --file $rec_file
bindsym $mod+Shift+p exec (wf-recorder -g "$(slurp)" --file $rec_file)
bindsym $mod+Shift+BackSpace exec killall -s SIGINT wf-recorder
# Symbols bind
bindsym $mod+Return exec $term
bindsym $mod+Shift+f exec $filemgr
bindsym $mod+Shift+q kill
bindsym $mod+d exec $menu
floating_modifier $mod normal
bindsym $mod+Shift+c reload
bindsym $mod+Shift+e exec swaynag -f 'JetBrains Mono 9' -e bottom -t warning -m "What would you like to do?" -B 'Exit sway' 'swaymsg exit' -B 'Power off' 'systemctl poweroff' -B 'Reboot' 'systemctl reboot' -B 'Lock screen' '$HOME/.config/sway/lock.sh'
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
bindsym $mod+Next workspace next
bindsym $mod+Prior workspace prev
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10
bindsym $mod+b splith
bindsym $mod+v splitv
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+f fullscreen
bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
bindsym $mod+Shift+minus move scratchpad
bindsym $mod+minus scratchpad show
mode "resize" {
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
# Multimedia buttons
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
bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
bindsym XF86MonBrightnessDown exec brightnessctl set 2%-
bindsym XF86MonBrightnessUp exec brightnessctl set 2%+
bindsym $mod+XF86MonBrightnessDown exec brightnessctl -d kbd_backlight set 2%-
bindsym $mod+XF86MonBrightnessUp exec brightnessctl -d kbd_backlight set 2%+
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym XF86Search exec $menu
# Floating
for_window [app_id="pavucontrol"] floating enable, resize 600 300, move absolute position 25ppt 25ppt
for_window [app_id="iwgtk"] floating enable, resize 300 150, move absolute position 25ppt 25ppt
# Autostart
exec alacritty --class bottom -e btm
for_window [app_id="bottom"] move container to workspace number 10
for_window [app_id="bottom"] fullscreen
exec keepassxc
for_window [class="KeePassXC"] move container to workspace 9

File diff suppressed because it is too large Load diff

9
dotfiles/.config/sway/lock.sh Executable file
View file

@ -0,0 +1,9 @@
#!/bin/sh
# Times the screen off and puts it to background
swayidle \
timeout 10 'swaymsg "output * dpms off" && brightnessctl -d kbd_backlight set 0%' \
resume 'swaymsg "output * dpms on" && brightnessctl -d kbd_backlight set 30%' &
# Locks the screen immediately
swaylock -c 181924 -s stretch --font JetBrains\ Mono
# Kills last background task so idle timer doesn't keep running
kill %%

View file

@ -0,0 +1,41 @@
seat seat0 xcursor_theme "Breeze_Snow"
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'Breeze-Dark'
gsettings set $gnome-schema icon-theme 'breeze-dark'
gsettings set $gnome-schema cursor-theme 'Breeze_Snow'
gsettings set $gnome-schema font-name 'JetBrains Mono 9'
}
# Colors based on Breeze Dark theme and Base16 Seti UI
set $color0 #232629
set $color1 #31363b
set $color2 #3B758C
set $color3 #41535B
set $color4 #43a5d5
set $color5 #bdc3c7
set $color6 #eeeeee
set $color7 #eff0f1
set $color8 #da4453
set $color9 #db7b55
set $color10 #e6cd69
set $color11 #9fca56
set $color12 #3daee9
set $color13 #2980b9
set $color14 #a074c4
set $color15 #8a553f
# Colors with alpha
set $background-color #ff232629
set $accent-color #ff3daee9
# Basic color configuration using the Base16 variables for windows and borders.
# Property Name Border BG Text Indicator Child Border
client.focused $color5 $color12 $color0 $color12 $color12
client.focused_inactive $color1 $color1 $color5 $color3 $color1
client.unfocused $color1 $color0 $color5 $color1 $color1
client.urgent $color8 $color8 $color0 $color8 $color8
client.placeholder $color0 $color0 $color5 $color0 $color0
client.background $color7

View file

@ -0,0 +1,15 @@
seat seat0 xcursor_theme "Simp1e-Catppuccin-Macchiato"
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'Catppuccin-Macchiato'
gsettings set $gnome-schema icon-theme 'Mint-Y-Dark'
gsettings set $gnome-schema cursor-theme 'Simp1e-Catppuccin-Macchiato'
gsettings set $gnome-schema font-name 'Noto Sans 9'
}
# Property Name Border BG Text Indicator Child_border
client.focused #cad3f5 #24273a #cad3f5 #cad3f5 #cad3f5
client.focused_inactive #494d64 #24273a #cad3f5 #494d64 #494d64
client.unfocused #363a4f #1e2030 #cad3f5 #363a4f #363a4f
client.urgent #d30102 #ed8796 #cad3f5 #d30102 #d30102

View file

@ -0,0 +1,14 @@
seat seat0 xcursor_theme "Simp1e-Gruvbox-Dark"
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'gruvbox-dark-gtk'
gsettings set $gnome-schema icon-theme 'gruvbox-dark-icons-gtk'
gsettings set $gnome-schema cursor-theme 'Simp1e-Gruvbox-Dark'
gsettings set $gnome-schema font-name 'JetBrains Mono 9'
}
# Property Name Border BG Text Indicator Child_border
client.focused #928374 #282828 #ebdbb2 #928374 #928374
client.focused_inactive #1d2021 #282828 #ebdbb2 #1d2021 #1d2021
client.unfocused #1d2021 #282828 #ebdbb2 #1d2021 #1d2021

View file

@ -0,0 +1,15 @@
seat seat0 xcursor_theme "Breeze_Snow"
set $gnome-schema org.gnome.desktop.interface
exec_always {
gsettings set $gnome-schema gtk-theme 'NumixSolarizedDarkCyan'
gsettings set $gnome-schema icon-theme 'Mint-Y-Aqua'
gsettings set $gnome-schema cursor-theme 'Breeze_Snow'
gsettings set $gnome-schema font-name 'Noto Sans 9'
}
# Property Name Border BG Text Indicator Child_border
client.focused #839496 #002b36 #839496 #839496 #fdf6e3
client.focused_inactive #002b36 #002b36 #839496 #839496 #839496
client.unfocused #002b36 #002b36 #839496 #839496 #839496
client.urgent #d30102 #073642 #839496 #839496 #d30102

View file

@ -0,0 +1,68 @@
{
"position": "top",
"modules-left": ["sway/workspaces", "sway/mode"],
"modules-center": [],
"modules-right": ["idle_inhibitor", "cpu", "temperature", "memory", "custom/loadavg", "custom/uptime", "network", "pulseaudio", "battery", "sway/language", "clock", "tray"],
"sway/mode": {
"format": "<span style=\"italic\">{}</span>"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "0",
"deactivated": "O"
}
},
"tray": {
"spacing": 10
},
"clock": {
"format": "{:%H:%M:%S %d.%m.%Y}",
"interval": 1
},
"pulseaudio": {
"scroll-step": 1,
"format": "Volume: {volume}%",
"format-bluetooth": "Volume: {volume}% (BT)",
"format-bluetooth-muted": "Volume: {icon} (BT)",
"format-muted": "Vol: {volume}%",
"on-click": "pavucontrol"
},
"cpu": {
"format": "CPU: {usage}%",
"interval": 1
},
"memory": {
"format": "RAM: {}%",
"interval": 1
},
"custom/loadavg": {
"exec": "cat /proc/loadavg | head -c 14",
"return-type": "{}",
"format": "Load average: {}",
"interval": 1
},
"custom/uptime": {
"exec": "uptime -p | sed 's/up //g' -",
"return-type": "{}",
"format": "Uptime: {}",
"interval": 60,
},
"temperature": {
"format": "Temperature: {temperatureC}°C",
"interval": 1
},
"battery": {
"format": "Battery: {capacity}%",
"format-charging": "Battery: {capacity}% (charging)",
"format-plugged": "Battery: {capacity}% (plugged)",
"interval": 10
},
"network": {
"format": "Network via {ifname}",
"tooltip-format": "{ipaddr}/{cidr}",
"format-linked": "Network (No IP) via {ifname}",
"format-disconnected": "No network",
"on-click": "iwgtk"
},
}

View file

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

View file

@ -0,0 +1,84 @@
@import "macchiato.css";
* {
font-family: "JetBrains Mono", "Noto Sans";
font-size: 9pt;
border: none;
border-radius: 0;
font-weight: 400;
padding: 1px 1px;
}
window#waybar {
/*background-color: @base;*/
color: transparent;
background: transparent;
padding-left: 16px;
padding-right: 16px;
margin-top: 8px;
border-radius: 32px;
}
#workspaces {
background: @base;
transition: none;
border-radius: 32px;
color: @subtext0;
margin: 8px 8px 0;
}
#workspaces button {
border-radius: 32px;
}
button:hover {
color: @red;
background-color: @surface1;
}
#workspaces button.focused {
color: @yellow;
background-color: @mantle;
}
#workspaces button.urgent {
background-color: @pink;
}
#mode {
background-color: @mantle;
}
.modules-right {
transition: none;
background: @base;
color: @text;
margin: 8px 8px 0;
padding-left: 4px;
padding-right: 4px;
border-radius: 32px;
}
#language, #clock, #battery, #cpu, #memory, #disk, #temperature, #backlight, #network, #pulseaudio, #custom-media, #tray, #mode, #idle_inhibitor, #mpd, #custom-loadavg, #custom-uptime {
padding: 0 8px;
}
#window {
color: transparent;
background-color: transparent;
}
#battery.critical:not(.charging) {
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
label:focus {
background-color: #000000;
}
#language {
padding: 0 4px;
min-width: 16px;
}

8
dotfiles/.profile Normal file
View file

@ -0,0 +1,8 @@
export GPG_TTY=$(tty)
export BROWSER=firefox
export ECORE_EVAS_ENGINE="wayland_egl"
export ELM_ACCEL="gl"
export MOZ_ENABLE_WAYLAND=1
export MOZ_DBUS_REMOTE=1
export QT_QPA_PLATFORMTHEME=qt5ct
export XDG_CURRENT_DESKTOP=Unity

36
dotfiles/.zshrc Normal file
View file

@ -0,0 +1,36 @@
export ZSH="$HOME/.dotfiles/oh-my-zsh"
ZSH_THEME="ivabus"
ENABLE_CORRECTION="true"
plugins=(git zsh-syntax-highlighting)
# Function to quickly show stats on systemload, usage of filesystems, usage of ram/swap and uptime
stats () {
AVLD=$(cut -d " " -f1-3 /proc/loadavg)
USEDMEM=$(free -h | grep Mem | awk '{print $3 " / " $2}')
USEDSWAP=$(free -h | grep Swap | awk '{ print $3 " / " $2}')
USEDSTRG=$(df / -h | tail -n 1 | awk '{print $3}')
USEDSTRGPERC=$(df / -h | tail -n 1 | awk '{print $5}')
STRG=$(df / -h | tail -n 1 | awk '{print $2}')
USEDSTRGHOME=$(df /home -h | tail -n 1 | awk '{print $3}')
USEDSTRGPERCHOME=$(df /home -h | tail -n 1 | awk '{print $5}')
STRGHOME=$(df /home -h | tail -n 1 | awk '{print $2}')
UPTIME=$(uptime -p)
printf "\e[0;34msystem load:\e[m\t${AVLD}\n"
printf "\e[0;34musage of /:\e[m\t${USEDSTRGPERC}% (${USEDSTRG}/${STRG})\n"
printf "\e[0;34musage of /home:\e[m\t${USEDSTRGPERCHOME}% (${USEDSTRGHOME}/${STRGHOME})\n"
printf "\e[0;34mmemory usage:\e[m\t${USEDMEM}\n"
printf "\e[0;34mswap usage:\e[m\t${USEDSWAP}\n"
printf "\e[0;34muptime:\e[m\t\t${UPTIME}\n"
}
stats
source $ZSH/oh-my-zsh.sh
source $HOME/.profile
export REPORTTIME=10
alias vi="nvim"
alias vim="nvim"
alias upgrade_dotfiles="sh $HOME/.dotfiles/tools/upgrade.sh"
alias timestamp='date -u +%FT%TZ'