🎨 Update config

This commit is contained in:
Smirnov Olexandr 2020-11-11 22:48:06 +02:00
parent 394d56fa69
commit 07805d44aa
28 changed files with 845 additions and 415 deletions

View file

@ -4,11 +4,12 @@ __walpappers: [Dropbox](https://www.dropbox.com/s/yx7tsplowtyih7f/walpapper.zip?
**Preparing for installation**
~~~bash
curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh) && chsh -s $(which zsh)
curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh
git clone https://github.com/Smirnov-O/zsh-simple-colors ~/.oh-my-zsh/custom/themes
curl -L https://get.oh-my.fish | fish
sudo pacman -S i3-wm bspwm polybar dunst rofi picom feh nitrogen redshift task \
kitty ranger htop bash zsh git vim neofetch scrot clipboard yay bash zsh \
kitty ranger htop bash zsh git vim neofetch scrot clipboard yay bash zsh python-tldextract \
ttf-font-awesome ttf-jetbrains-mono ttf-hack
yay -S ttf-weather-icons
~~~
@ -16,7 +17,7 @@ yay -S ttf-weather-icons
### Packages
| Name | Description |
| ------------------------------------------------------------------------ | ----------------- |
| `i3-wm`, `bspwm` | Window Manager |
| `i3-wm`, `qtile` | Window Manager |
| `polybar` | Panel |
| `dunst` | Notify manager |
| `rofi` | Program loncher |
@ -34,4 +35,3 @@ yay -S ttf-weather-icons
| `arc-gtk-theme` | GTK theme |
| `papirus-icon-theme` | Icon theme |
| `scrot` | Screenshot tool |
| `clipmenu` | Clipboard manager |

18
bashrc
View file

@ -1,9 +1,21 @@
[[ $- != *i* ]] && return
PS1='\e[36m\w\e[39m '
source ~/.profile
export EDITOR='nvim'
export VISUAL='emacsclient -c -a emacs'
export TERM='kitty'
alias ls='ls --color=auto'
alias cls='clear'
alias ls='ls --color=auto'
alias :q="exit"
alias ..='cd ..'
alias py='python3'
alias ...='cd ../..'
alias .3='cd ../../..'
alias .4='cd ../../../..'
alias .5='cd ../../../../..'
alias .6='cd ../../../../../..'
alias tofish="chsh -s /bin/fish && echo 'Now log out.'"
alias tozsh="chsh -s /bin/zsh && echo 'Now log out.'"
alias tobash="chsh -s /bin/bash && echo 'Now log out.'"

View file

@ -1,40 +0,0 @@
#! /bin/sh
###### Auto start #####
setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" &
sxhkd &
nmcli radio wifi on; nmcli device wifi connect Pechenka password 24032006 name net &
picom -b &
polybar test &
feh --randomize --bg-scale ~/Изображения/Walpapper/* &
# redshift-gtk &
###### BSPWM #####
bspc monitor -d I II III IV V VI VII VIII IX X
#bspc config border_radius 8
bspc config border_width 2
bspc config window_gap 10
bspc config top_padding 20
bspc config bottom_padding 0
bspc config left_padding 0
bspc config right_padding 0
bspc config single_monocle false
bspc config click_to_focus true
bspc config split_ratio 0.50
bspc config borderless_monocle true
bspc config gapless_monocle true
bspc config focus_by_distance true
bspc config focus_follows_pointer true
bspc config history_aware_focus true
bspc config remove_disabled_monitors true
bspc config merge_overlapping_monitors true
bspc config pointer_modifier mod4
bspc config pointer_action1 move
bspc config pointer_action2 resize_side
bspc config pointer_action3 resize_corner
####### Rules ######
bspc rule -a Thunar desktop='^4'
bspc rule -a Qutebrowser desktop='^2'

22
config/fish/config.fish Normal file
View file

@ -0,0 +1,22 @@
#source ~/.env
set PATH $PATH ~/.local/bin
set fish_greeting
### VARIABLES ###
export EDITOR="nvim"
export VISUAL="emacsclient -c -a emacs"
export TERM="kitty"
### ALIASES ###
alias cls='clear'
alias :q='exit'
alias ..='cd ..'
alias ...='cd ../..'
alias .3='cd ../../..'
alias .4='cd ../../../..'
alias .5='cd ../../../../..'
alias tobash="chsh -s /bin/bash && echo 'Now log out.'"
alias tozsh="chsh -s /bin/zsh && echo 'Now log out.'"
alias tofish="chsh -s /bin/fish && echo 'Now log out.'"

View file

@ -0,0 +1 @@
/home/sasha/.config//omf/themes/scyanm/fish_prompt.fish

View file

@ -17,9 +17,9 @@ hide_edge_borders smart
############ Autostart ############
exec --no-startup-id exec picom -b
exec --no-startup-id exec nmcli radio wifi on; nmcli device wifi connect <wifi-name> password <wifi-password> name net
exec --no-startup-id exec nmcli radio wifi on; nmcli device wifi connect Pechenka password 24032006 name net
exec --no-startup-id exec redshift-gtk
exec --no-startup-id exec nitrogen
exec --no-startup-id exec nitrogen --restore
exec --no-startup-id exec setxkbmap "us,ru,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps"
exec --no-startup-id exec org.telegram.desktop
#exec --no-startup-id exec discord
@ -27,60 +27,51 @@ exec_always --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-ag
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
############ Key bindings #########
# Open terminal
# Kill focus window
bindsym $mod+q kill
# Restart i3wm
bindsym $mod+Shift+r restart
# Terminal
bindsym $mod+Return exec kitty
bindsym $mod+ctrl+Return exec kitty -T=Terminal-floating
# Focus the parent container
bindsym $mod+a focus parent
# Floating window
bindsym $mod+Shift+space floating toggle
# Fullscreen mode
bindsym $mod+F11 fullscreen toggle
# Load program
bindsym $mod+F2 exec qutebrowser
# Program/Exit/Window switch/Clipboard
bindsym $mod+r exec "i3-dmenu-desktop --dmenu='dmenu -h 24 -p Run'"
bindsym $mod+space exec "rofi -show drun -show cobi -show-icons"
bindsym $mod+Shift+Return exec "dmenu_run -h 24 -p Run"
bindsym $mod+Escape exec "~/.script/dmenu/dmenu-power.sh"
bindsym $mod+Control+u exec ~/.script/dmenu/dmenu-config-edit.sh
bindsym $mod+Control+i exec passmenu -h 24 -p Passwords
# Window switcher
bindsym $mod+Tab exec "rofi -show window -show-icons"
bindsym $alt+Tab exec "rofi -show window -show-icons"
# Kill focus window
bindsym $mod+q kill
# Program/Exit louncher
bindsym $mod+space exec "rofi -show drun -show cobi -show-icons"
bindsym $mod+Escape exec "rofi -show power-menu -width 30 -lines 6 -modi power-menu:~/.config/rofi/rofi-power-menu"
bindsym $mod+$alt+u exec ~/.script/dmenu/dmenu-config-edit.sh
bindsym $mod+$alt+i exec "rofi-keepassxc -d ~/Документы/text.kdbx"
# Restart i3wm
bindsym $mod+Shift+r restart
bindsym $mod+c exec "CM_LAUNCHER=rofi clipmenu"
# Sceenshot
bindsym --release Print exec "scrot -s /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png"
bindsym --release Shift+Print exec "scrot /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png"
# Clipboard menu
bindsym $mod+c exec "CM_LAUNCHER=rofi clipmenu"
# Volume
bindsym $mod+plus exec "pactl set-sink-volume alsa_output.pci-0000_00_1b.0.analog-stereo +5%"
bindsym $mod+minus exec "pactl set-sink-volume alsa_output.pci-0000_00_1b.0.analog-stereo -5%"
bindsym $mod+Shift+minus exec "pactl set-sink-mute alsa_output.pci-0000_00_1b.0.analog-stereo toggle"
# Load program
bindsym $mod+F1 exec kitty -T=Ranger_FM ranger
bindsym $mod+F2 exec qutebrowser
bindsym $mod+F3 exec subl
bindsym $mod+F4 exec notable
# Floating window
bindsym $mod+Shift+space floating toggle
# Fullscreen mode
bindsym $mod+f fullscreen toggle
bindsym $mod+F11 fullscreen toggle
# Splits
bindsym $mod+h split h
bindsym $mod+b split h
bindsym $mod+v split v
# Focus the parent container
bindsym $mod+a focus parent
# Change container layout(stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
@ -91,7 +82,7 @@ bindsym $mod+Shift+grave move scratchpad
bindsym $mod+grave scratchpad show, floating disable
######### Window preferens ########
#assign [class="(?i)kitty"] $ws1
assign [class="Kitty"] $ws1
#assign [class="(?i)chromium|firefox|qutebrowser"] $ws2
#assign [class="(?i)subl|code|emacs"] $ws3
#assign [class="(?i)thunar"] $ws4
@ -99,7 +90,7 @@ bindsym $mod+grave scratchpad show, floating disable
assign [class="(?i)telegram|discord|viber"] $ws6
assign [title="KeePassXC"] $ws7
#for_window [title="Ranger_FM"] move to workspace $ws4
#for_window [class="Spotify"] move to workspace $ws10
#for_window [class="Spotify"] move to workspace $ws9
for_window [class="(?i)mousepad"] floating enable
for_window [title="Terminal-floating"] floating enable
for_window [class="(?i)lxappearance|qt5ct"] floating enable
@ -109,27 +100,27 @@ for_window [urgent="lastet"] focus
#focus_on_window_activation focus
############## Gaps ###############
gaps inner 4
#gaps inner 4
#smart_gaps on
##### Change containet focus ######
bindsym $mod+j focus left
bindsym $mod+h focus left
bindsym $mod+Left focus left
bindsym $mod+k focus down
bindsym $mod+j focus down
bindsym $mod+Down focus down
bindsym $mod+l focus up
bindsym $mod+k focus up
bindsym $mod+Up focus up
bindsym $mod+semicolon focus right
bindsym $mod+l focus right
bindsym $mod+Right focus right
##### Move focused container ######
bindsym $mod+Shift+j move left
bindsym $mod+Shift+h move left
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+j move down
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+k move up
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+colon move right
bindsym $mod+Shift+l move right
bindsym $mod+Shift+Right move right
############ Workspaces ###########
@ -142,7 +133,6 @@ set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
@ -153,7 +143,6 @@ bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
@ -164,11 +153,10 @@ bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
########### Resize mode ###########
bindsym $mod+$alt+r mode "resize"
bindsym $mod+$alt+g mode "gaps"
bindsym $mod+Control+r mode "resize"
bindsym $mod+Control+g mode "gaps"
mode "resize" {
bindsym j resize shrink width 10 px or 10 ppt

View file

@ -2,6 +2,8 @@ call plug#begin('~/.vim/plugged')
Plug 'overcache/NeoSolarized'
Plug 'ryanoasis/vim-devicons'
Plug 'itchyny/lightline.vim'
Plug 'iamcco/markdown-preview.nvim'
Plug 'dhruvasagar/vim-table-mode'
" File manger & seacher
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
@ -10,12 +12,15 @@ call plug#begin('~/.vim/plugged')
" Completion
Plug 'jiangmiao/auto-pairs'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'easymotion/vim-easymotion'
" Language support
Plug 'pangloss/vim-javascript', { 'for': 'javascript' }
Plug 'PotatoesMaster/i3-vim-syntax'
Plug 'vim-python/python-syntax', { 'for': 'python' }
Plug 'mattn/emmet-vim', { 'for': 'html' }
Plug 'mattn/emmet-vim', { 'on': 'Emmet' }
Plug 'cakebaker/scss-syntax.vim', { 'for': 'scss' }
Plug 'dag/vim-fish', { 'for': 'fish' }
Plug 'ap/vim-css-color'
call plug#end()
@ -64,7 +69,12 @@ set termguicolors
set background=dark
colorscheme NeoSolarized
"""" Plugins """"
" =======================
" == Plugins configure ==
" =======================
"""""""" Lightline """"""""
let g:lightline = {
\ 'colorscheme': 'selenized_dark',
\ 'active': {
@ -74,26 +84,48 @@ let g:lightline = {
\ [ 'percent' ],
\ [ 'filename', 'fileencoding', 'filetype' ] ]
\ }, }
"""""""""""""""""""""""""""
""""""""" Nerdtree """"""""
map <C-b> :NERDTreeToggle<CR>
let g:NERDTreeWinPos="right"
let NERDTreeIgnore = ['__pycache__', '\.pyc$', '\.o$', '\.so$', '\.a$', '\.swp', '*\.swp', '\.swo', '\.swn', '\.swh', '\.swm', '\.swl', '\.swk', '\.sw*$', '[a-zA-Z]*egg[a-zA-Z]*', '.DS_Store']
let NERDTreeMinimalUI = 1
let NERDTreeShowLineNumbers=0
"""""""""""""""""""""""""""
"""""""""""" Coc """"""""""
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
"""""""""""""""""""""""""""
"""" Maping """"
"""""""" Easymotion """""""
let g:EasyMotion_do_mapping = 0
let g:EasyMotion_smartcase = 1
nmap f <Plug>(easymotion-s)
map <Leader>w <Plug>(easymotion-bd-w)
nmap F <Plug>(easymotion-overwin-line)
nmap s <Plug>(easymotion-overwin-f2)
"""""""""""""""""""""""""""
"""" MarkDown Previw """"""
let g:mkdp_path_to_chrome = "/usr/bin/qutebrowser"
"""""""""""""""""""""""""""
" ============
" == Maping ==
" ============
let mapleader=","
" Change window
map <C-j> <C-W>j
map <C-k> <C-W>k
map <C-h> <C-W>h
map <C-l> <C-W>l
map <C-b> :NERDTreeToggle<CR>
" Tab's
noremap <C-Tab> :tabnext<CR>
noremap <C-S-Tab> :tabprev<CR>
noremap <C-n> :tabnew<CR>
noremap <C-t> :tabnew<CR>
noremap <C-w> :tabclose<CR>
@ -106,6 +138,5 @@ noremap <leader>6 :tabn 6<CR>
noremap <leader>7 :tabn 7<CR>
noremap <leader>8 :tabn 8<CR>
noremap <leader>9 :tabn 9<CR>
noremap <leader>n :bnext<CR>
noremap <leader>p :bprev<CR>

View file

@ -6,7 +6,11 @@ shadow = true;
shadow-radius = 11;
shadow-offset-x = -7;
shadow-offset-y = -7;
shadow-exclude = [];
shadow-exclude = [
"class_g = 'Firefox' && argb",
"name = 'Notification'",
"class_g = 'Polybar'"
];
############ Fading ###########
@ -22,7 +26,7 @@ frame-opacity = 0.7;
inactive-opacity-override = false;
#inactive-opacity-override = true;
focus-exclude = [];
#no-fading-openclose = true
##### Background-Blurring #####
blur-kern = "3x3box";

View file

@ -3,38 +3,39 @@ pseudo-transparency = true
[colors]
; Solarized ========
;background = #002B36
;foreground = #dfdfdf
;secondary = #073642
;alert = #268bd2
background = #002B36
foreground = #dfdfdf
secondary = #073642
alert = #268bd2
; Nord ============
background = #2E3440
foreground = #ECEFF4
secondary = #434C5E
alert = #88C0D0
; Nord =============
;background = #2E3440
;foreground = #ECEFF4
;secondary = #434C5E
;alert = #88C0D0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[bar/i3bar]
width = 100%
height = 20
height = 24
fixed-center = true
wm-restack = i3
;override-redirect = true
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 2
line-size = 3
line-color = #000000
padding-left = 2
padding-right = 2
#padding-left = 2
#padding-right = 2
radius = 6.0
border-left-size = 0.2%
border-top-size = 0.2%
border-right-size = 0.2%
#radius = 6.0
#border-left-size = 0.2%
#border-top-size = 0.2%
#border-right-size = 0.2%
module-margin-left = 1
module-margin-right = 1
@ -43,25 +44,22 @@ font-0 = Iosevka Nerd Font:style=Medium:size=8;3
font-1 = FontAwesome5Free:style=Solid:size=7.5;2.5
font-2 = Weather Icons:size=7;2
modules-left = i3 weather title
modules-left = i3 weather
modules-right = keyboard pulseaudio backlight wifi-signal time
tray-position = center
tray-position = right
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[settings]
screenchange-reload = true
[global/wm]
wm-restack = i3
[module/i3]
type = internal/i3
format = <label-state><label-mode>
index-sort = true
index-sort = false
wrapping-scroll = false
label-mode-padding = 1
label-mode-foreground = #000
label-mode-background = ${colors.secondary}
label-mode-background = ${colors.alert}
label-focused = %icon%
label-focused-background = ${colors.secondary}
@ -92,10 +90,8 @@ ws-icon-3 = "4;4 "
ws-icon-4 = "5;5 "
ws-icon-5 = "6;6 "
ws-icon-6 = "7;7 "
ws-icon-7 = 8;8
ws-icon-8 = 9;9
ws-icon-9 = "10;10 "
;label-separator = |
ws-icon-7 = "8;8 "
ws-icon-8 = "9;9 "
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; INCLUDE MODULES
@ -112,7 +108,7 @@ type = internal/network
interface = wlp3s0
format-connected = <ramp-signal> <label-connected>
label-connected = %essid%
format-disconnected =  No sing
format-disconnected =  No sig
ramp-signal-0 = 
interval = 3.0
@ -176,7 +172,6 @@ interval = 1
format = <label>
exec = python ~/.config/polybar/scripts/spotify_status.py -f '{artist} - {song}'
format-underline = ${colors.alert}
2
[module/updates-pacman]
type = custom/script
@ -225,8 +220,7 @@ label =  %time%
[module/title]
type = internal/xwindow
label = %title:0:50:...%
label-empty = Empty
label-empty-foreground = #707880
label-empty =
label-maxlen = 50

5
config/qtile/autostart.sh Executable file
View file

@ -0,0 +1,5 @@
#!/bin/sh
setxkbmap "us,ru" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps"
picom -b &
nitrogen --restore &
kitty &

167
config/qtile/config.py Normal file
View file

@ -0,0 +1,167 @@
from typing import List
from libqtile import bar, layout, widget, hook
from libqtile.config import Click, Drag, Group, Key, Screen
from libqtile.lazy import lazy
import os
auto_fullscreen = True
focus_on_window_activation = "smart"
mod = "mod4" # Set mod key(Super/Win)
terminal = "kitty" # Set terminal
colors = [["#292d3e", "#292d3e"], # panel background
["#434758", "#434758"], # background for current screen tab
["#ffffff", "#ffffff"], # font color for group names
["#ff5555", "#ff5555"], # border line color for current tab
["#ff1151", "#ff1151"], # border line color for current tab
["#8d62a9", "#8d62a9"], # border line color for other tab and odd widgets
["#668bd7", "#668bd7"], # color for the even widgets
["#e1acff", "#e1acff"]] # window name
@hook.subscribe.startup_once
def autostart(): os.system("~/.config/qtile/autostart.sh")
keys = [
## Window control
Key([mod, "shift"], "c", lazy.window.kill(), desc="Kill focused window"),
Key([mod], "k", lazy.layout.down(), desc="Move focus down in stack pane"),
Key([mod], "j", lazy.layout.up(), desc="Move focus up in stack pane"),
Key([mod, "control"], "k", lazy.layout.shuffle_down(), desc="Move window down in current stack"),
Key([mod, "control"], "j", lazy.layout.shuffle_up(), desc="Move window up in current stack"),
## Layout changer
Key([mod], "space", lazy.next_layout(), desc="Toggle between layouts"),
Key([mod, "shift"], "space", lazy.prev_layout(), desc="Toggle between layouts"),
## Launch program
Key([mod], "Return", lazy.spawn(terminal), desc="Launch terminal"),
Key([mod], "F1", lazy.spawn(terminal + " -e ranger"), desc="Launch ranger"),
Key([mod], "F2", lazy.spawn("qutebrowser"), desc="Launch qutebrowser"),
## Program launcher(Dmenu or default)
Key([mod], "r", lazy.spawncmd(), desc="Spawn a command using a prompt widget" ),
Key([mod, "shift"], "Return", lazy.spawn("dmenu_run -h 24 -p Run:"), desc="Demnu program launcher" ),
Key([mod, "control"], "u", lazy.spawn("sh ~/.script/dmenu/dmenu-config-edit.sh"), desc="Dmenu config menu"),
Key([mod, "control"], "i", lazy.spawn("passmenu -h 24"), desc="Dmenu password menu"),
## Qtile
Key([mod, "control"], "r", lazy.restart(), desc="Restart qtile"),
Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown qtile"),
## Keyboard
Key(["mod1"], "Shift_L", lazy.widget['keyboardlayout'].next_keyboard(), desc="Switch keyboard layout"),
]
group_names = [("term", {'layout': 'monadtall'}),
("www", {'layout': 'monadtall'}),
("dev", {'layout': 'monadtall'}),
("sys", {'layout': 'monadtall'}),
("note", {'layout': 'monadtall'}),
("chat", {'layout': 'monadtall'}),
("pass", {'layout': 'monadtall'}),
("gft", {'layout': 'max'}),
("flo", {'layout': 'floating'})
]
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)))
layout_theme = {
"border_width": 2,
"margin": 0,
"border_focus": "e1acff",
"border_normal": "1D2330"
}
layouts = [
layout.Max(**layout_theme),
#layout.Stack(num_stacks=2, **layout_theme),
#layout.Bsp(**layout_theme),
layout.MonadTall(**layout_theme),
layout.Floating(**layout_theme)
]
widget_defaults = dict(
font='sans',
fontsize=12,
padding=5,
)
extension_defaults = widget_defaults.copy()
screens = [
Screen(
top=bar.Bar([
widget.GroupBox(
borderwidth = 0,
active = colors[2],
inactive = colors[2],
rounded = False,
highlight_color = colors[1],
highlight_method = "line",
this_current_screen_border = colors[3],
this_screen_border = colors [4],
other_current_screen_border = colors[0],
other_screen_border = colors[0],
foreground = colors[2],
background = colors[0]
),
widget.Prompt( padding = 10, foreground = colors[3], background = colors[0] ),
widget.WindowName( foreground = colors[6], background = colors[0], padding = 7 ),
widget.Systray( background = colors[0], padding = 3 ),
widget.CurrentLayout(foreground = colors[2], background = colors[0]),
widget.Net( interface = "wlp3s0", format = '{down}↓↑{up}', foreground = colors[2], background = colors[0], padding = 0 ),
widget.TextBox(padding=3, background=colors[0]),
widget.TextBox( text="", foreground = colors[2], background = colors[0], padding=3 ),
widget.Volume( update_interval = 0.2, foreground = colors[2], background = colors[0], padding=0 ),
widget.TextBox(padding=3, background=colors[0]),
widget.TextBox( text="", foreground=colors[2], background=colors[0], padding=0 ),
widget.KeyboardLayout( configured_keyboards=['us','ru', 'ua'], display_map={ 'us': ' us', 'ru': ' ru', 'ua': ' ua' }, update_interval=0.2, foreground=colors[2], background=colors[0], padding=2 ),
widget.TextBox(padding=3, background=colors[0]),
widget.TextBox( text = "", background = colors[0], foreground = colors[2], padding = 0 ),
widget.Clock( format='%H:%M:%S', foreground=colors[2], background=colors[0], padding=2 )
],
22,
),
),
]
# Drag floating layouts.
mouse = [
Drag([mod], "Button1", lazy.window.set_position_floating(),
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 = [] # type: List
main = None # WARNING: this is deprecated and will be removed soon
follow_mouse_focus = True
bring_front_click = False
cursor_warp = False
floating_layout = layout.Floating(float_rules=[
{'wmclass': 'confirm'},
{'wmclass': 'dialog'},
{'wmclass': 'download'},
{'wmclass': 'error'},
{'wmclass': 'file_progress'},
{'wmclass': 'notification'},
{'wmclass': 'splash'},
{'wmclass': 'toolbar'},
{'wmclass': 'confirmreset'}, # gitk
{'wmclass': 'makebranch'}, # gitk
{'wmclass': 'maketag'}, # gitk
{'wname': 'branchdialog'}, # gitk
{'wname': 'pinentry'}, # GPG key password entry
{'wmclass': 'ssh-askpass'}, # ssh-askpass
])
auto_fullscreen = True
focus_on_window_activation = "smart"
wmname = "LG3D"

View file

@ -1,88 +0,0 @@
config_version: 2
settings:
colors.completion.category.bg:
global: '#002b36'
colors.completion.category.border.bottom:
global: '#073642'
colors.completion.category.border.top:
global: '#073642'
colors.completion.even.bg:
global: '#073642'
colors.completion.fg:
global: '#ffffff'
colors.completion.item.selected.bg:
global: '#002b36'
colors.completion.item.selected.border.bottom:
global: '#002b36'
colors.completion.item.selected.border.top:
global: '#002b36'
colors.completion.item.selected.fg:
global: '#93a1a1'
colors.completion.odd.bg:
global: '#073642'
colors.completion.scrollbar.bg:
global: '#073642'
colors.completion.scrollbar.fg:
global: '#002b36'
colors.downloads.bar.bg:
global: '#002b36'
colors.downloads.error.bg:
global: '#dc322f'
colors.downloads.start.bg:
global: '#268bd2'
colors.downloads.stop.bg:
global: '#619100'
colors.messages.info.bg:
global: '#002b36'
colors.messages.info.border:
global: '#002b36'
colors.messages.warning.border:
global: '#002b36'
colors.statusbar.caret.bg:
global: '#002b36'
colors.statusbar.command.bg:
global: '#002b36'
colors.statusbar.insert.bg:
global: '#002b36'
colors.statusbar.normal.bg:
global: '#002b36'
colors.statusbar.passthrough.bg:
global: '#002b36'
colors.statusbar.private.bg:
global: '#6c71c4'
colors.statusbar.url.error.fg:
global: '#dc322f'
colors.statusbar.url.fg:
global: '#2aa198'
colors.statusbar.url.success.http.fg:
global: '#2aa198'
colors.statusbar.url.success.https.fg:
global: '#2aa198'
colors.tabs.bar.bg:
global: '#073642'
colors.tabs.even.bg:
global: '#073642'
colors.tabs.indicator.error:
global: '#dc322f'
colors.tabs.indicator.start:
global: '#002b36'
colors.tabs.indicator.stop:
global: '#002b36'
colors.tabs.odd.bg:
global: '#073642'
colors.tabs.selected.even.bg:
global: '#002b36'
colors.tabs.selected.even.fg:
global: '#073642'
colors.tabs.selected.odd.bg:
global: '#002b36'
colors.tabs.selected.odd.fg:
global: '#073642'
colors.webpage.bg:
global: white
colors.webpage.darkmode.enabled:
global: false
downloads.position:
global: bottom
tabs.position:
global: top

View file

@ -1,34 +1,85 @@
## Generall
c.url.start_pages = ["https://start.duckduckgo.com"] # Start page
config.load_autoconfig()
# general
c.url.start_pages = ["https://start.duckduckgo.com"]
config.set("colors.webpage.darkmode.enabled", True)
c.downloads.location.directory = '/home/sasha/Загрузки'
c.completion.shrink = True
config.load_autoconfig()
c.downloads.location.directory = '/home/sasha/Downloads' # Download folder
c.tabs.show = 'multiple' # When to show the tab bar. [always, never, multiple ,switching]
# tabs, download
c.tabs.show = 'multiple' #always, never, multiple ,switching
c.tabs.position = "top"
c.downloads.position = "bottom"
config.set('content.cookies.accept', 'all', 'chrome-devtools://*') # Accept to cookie
config.set('content.cookies.accept', 'all', 'devtools://*') # Accept to cookie
config.set('content.images', True, 'chrome-devtools://*') # Auto load images
config.set('content.images', True, 'devtools://*') # Auto load images
config.set('content.javascript.enabled', True, 'chrome-devtools://*') # Enable JavaScript
config.set('content.javascript.enabled', True, 'devtools://*') # Enable JavaScript
config.set('content.javascript.enabled', True, 'chrome://*/*') # Enable JavaScript
config.set('content.javascript.enabled', True, 'qute://*/*') # Enable JavaScript
## User agent
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}) AppleWebKit/{webkit_version} (KHTML, like Gecko) {upstream_browser_key}/{upstream_browser_version} Safari/{webkit_version}', 'https://web.whatsapp.com/')
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}; rv:71.0) Gecko/20100101 Firefox/71.0', 'https://accounts.google.com/*')
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99 Safari/537.36', 'https://*.slack.com/*')
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}; rv:71.0) Gecko/20100101 Firefox/71.0', 'https://docs.google.com/*')
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}; rv:71.0) Gecko/20100101 Firefox/71.0', 'https://drive.google.com/*')
## Search engines which can be used via the address bar.
# alias, binds, search
c.aliases = {'q':'quit', 'w':'session-save', 'wq':'quit --save', 'e':'open'}
config.bind('<l><p', 'spawn --userscript qute-pass')
c.url.searchengines = {
'DEFAULT': 'https://www.google.com/search?q={}',
'ddg': 'https://duckduckgo.com/?q={}',
'arw': 'https://wiki.archlinux.org/?search={}',
'rdd': 'https://www.reddit.com/r/{}'
}
# Enable cookie, image, js & user agents
config.set('content.cookies.accept', 'all', 'chrome-devtools://*')
config.set('content.cookies.accept', 'all', 'devtools://*')
config.set('content.images', True, 'chrome-devtools://*')
config.set('content.images', True, 'devtools://*')
config.set('content.javascript.enabled', True, 'chrome-devtools://*')
config.set('content.javascript.enabled', True, 'devtools://*')
config.set('content.javascript.enabled', True, 'chrome://*/*')
config.set('content.javascript.enabled', True, 'qute://*/*')
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}; rv:71.0) Gecko/20100101 Firefox/71.0', 'https://accounts.google.com/*')
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99 Safari/537.36', 'https://*.slack.com/*')
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}; rv:71.0) Gecko/20100101 Firefox/71.0', 'https://docs.google.com/*')
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}; rv:71.0) Gecko/20100101 Firefox/71.0', 'https://drive.google.com/*')
# theme
## Solarised #########
color01 = "#002B36"
color02 = "#073642"
color03 = "#619100"
color04 = "#268BD2"
color05 = "#6C71C4"
color06 = "#dc322f"
color07 = "#FFFFFF"
color08 = "#93A1A1"
color09 = "#2AA198"
######################
c.colors.completion.category.bg = color01
c.colors.completion.category.border.bottom = color02
c.colors.completion.category.border.top = color02
c.colors.completion.even.bg = color02
c.colors.completion.fg = color07
c.colors.completion.item.selected.bg = color01
c.colors.completion.item.selected.border.bottom = color01
c.colors.completion.item.selected.border.top = color01
c.colors.completion.item.selected.fg = color08
c.colors.completion.odd.bg = color02
c.colors.downloads.bar.bg = color01
c.colors.downloads.error.bg = color06
c.colors.downloads.start.bg = color03
c.colors.downloads.stop.bg = color04
#c.colors.messages.info.bg = color01
#c.colors.messages.info.border = color01
#c.colors.messages.warning.border = color01
c.colors.statusbar.caret.bg = color01
c.colors.statusbar.command.bg = color01
c.colors.statusbar.insert.bg = color01
c.colors.statusbar.normal.bg = color01
c.colors.statusbar.passthrough.bg = color01
c.colors.statusbar.private.bg = color04
c.colors.statusbar.url.error.fg = color06
c.colors.statusbar.url.fg = color07
c.colors.statusbar.url.success.http.fg = color07
c.colors.statusbar.url.success.https.fg = color07
c.colors.tabs.bar.bg = color02
c.colors.tabs.even.bg = color02
c.colors.tabs.indicator.error = color06
c.colors.tabs.indicator.start = color01
c.colors.tabs.indicator.stop = color01
c.colors.tabs.odd.bg = color02
c.colors.tabs.selected.even.bg = color01
c.colors.tabs.selected.even.fg = color02
c.colors.tabs.selected.odd.bg = color01
c.colors.tabs.selected.odd.fg = color02

View file

@ -0,0 +1,323 @@
#!/usr/bin/python
import ranger.api
from ranger.core.linemode import LinemodeBase
from .devicons import *
import re
import os
@ranger.api.register_linemode
class DevIconsLinemode(LinemodeBase):
name = "devicons"
uses_metadata = False
def filetitle(self, file, metadata):
return devicon(file) + ' ' + file.relative_path
@ranger.api.register_linemode
class DevIconsLinemodeFile(LinemodeBase):
name = "filename"
def filetitle(self, file, metadata):
return devicon(file) + ' ' + file.relative_path
file_node_extensions = {
'7z' : '',
'a' : '',
'ai' : '',
'apk' : '',
'asm' : '',
'asp' : '',
'aup' : '',
'avi' : '',
'awk' : '',
'bash' : '',
'bat' : '',
'bmp' : '',
'bz2' : '',
'c' : '',
'c++' : '',
'cab' : '',
'cbr' : '',
'cbz' : '',
'cc' : '',
'class' : '',
'clj' : '',
'cljc' : '',
'cljs' : '',
'cmake' : '',
'coffee' : '',
'conf' : '',
'cp' : '',
'cpio' : '',
'cpp' : '',
'cs' : '',
'csh' : '',
'css' : '',
'cue' : '',
'cvs' : '',
'cxx' : '',
'd' : '',
'dart' : '',
'db' : '',
'deb' : '',
'diff' : '',
'dll' : '',
'doc' : '',
'docx' : '',
'dump' : '',
'edn' : '',
'eex' : '',
'efi' : '',
'ejs' : '',
'elf' : '',
'elm' : '',
'epub' : '',
'erl' : '',
'ex' : '',
'exe' : '',
'exs' : '',
'f#' : '',
'fifo' : '|',
'fish' : '',
'flac' : '',
'flv' : '',
'fs' : '',
'fsi' : '',
'fsscript' : '',
'fsx' : '',
'gem' : '',
'gemspec' : '',
'gif' : '',
'go' : '',
'gz' : '',
'gzip' : '',
'h' : '',
'haml' : '',
'hbs' : '',
'hh' : '',
'hpp' : '',
'hrl' : '',
'hs' : '',
'htaccess' : '',
'htm' : '',
'html' : '',
'htpasswd' : '',
'hxx' : '',
'ico' : '',
'img' : '',
'ini' : '',
'iso' : '',
'jar' : '',
'java' : '',
'jl' : '',
'jpeg' : '',
'jpg' : '',
'js' : '',
'json' : '',
'jsx' : '',
'key' : '',
'ksh' : '',
'leex' : '',
'less' : '',
'lha' : '',
'lhs' : '',
'log' : '',
'lua' : '',
'lzh' : '',
'lzma' : '',
'm4a' : '',
'm4v' : '',
'markdown' : '',
'md' : '',
'mdx' : '',
'mjs' : '',
'mkv' : '',
'ml' : 'λ',
'mli' : 'λ',
'mov' : '',
'mp3' : '',
'mp4' : '',
'mpeg' : '',
'mpg' : '',
'msi' : '',
'mustache' : '',
'nix' : '',
'o' : '',
'ogg' : '',
'pdf' : '',
'php' : '',
'pl' : '',
'pm' : '',
'png' : '',
'pp' : '',
'ppt' : '',
'pptx' : '',
'ps1' : '',
'psb' : '',
'psd' : '',
'pub' : '',
'py' : '',
'pyc' : '',
'pyd' : '',
'pyo' : '',
'r' : '',
'rake' : '',
'rar' : '',
'rb' : '',
'rc' : '',
'rlib' : '',
'rmd' : '',
'rom' : '',
'rpm' : '',
'rproj' : '',
'rs' : '',
'rss' : '',
'rtf' : '',
's' : '',
'sass' : '',
'scala' : '',
'scss' : '',
'sh' : '',
'slim' : '',
'sln' : '',
'so' : '',
'sql' : '',
'styl' : '',
'suo' : '',
'swift' : '',
't' : '',
'tar' : '',
'tex' : '',
'tgz' : '',
'toml' : '',
'ts' : '',
'tsx' : '',
'twig' : '',
'vim' : '',
'vimrc' : '',
'vue' : '',
'wav' : '',
'webm' : '',
'webmanifest' : '',
'webp' : '',
'xbps' : '',
'xcplayground' : '',
'xhtml' : '',
'xls' : '',
'xlsx' : '',
'xml' : '',
'xul' : '',
'xz' : '',
'yaml' : '',
'yml' : '',
'zip' : '',
'zsh' : '',
}
dir_node_exact_matches = {
'.git' : '',
'Desktop' : '',
'Documents' : '',
'Downloads' : '',
'Dotfiles' : '',
'Dropbox' : '',
'Music' : '',
'Pictures' : '',
'Public' : '',
'Templates' : '',
'Videos' : '',
}
file_node_exact_matches = {
'.bash_aliases' : '',
'.bash_history' : '',
'.bash_logout' : '',
'.bash_profile' : '',
'.bashprofile' : '',
'.bashrc' : '',
'.dmrc' : '',
'.DS_Store' : '',
'.fasd' : '',
'.fehbg' : '',
'.gitattributes' : '',
'.gitconfig' : '',
'.gitignore' : '',
'.gitlab-ci.yml' : '',
'.gvimrc' : '',
'.inputrc' : '',
'.jack-settings' : '',
'.mime.types' : '',
'.ncmpcpp' : '',
'.nvidia-settings-rc' : '',
'.pam_environment' : '',
'.profile' : '',
'.recently-used' : '',
'.selected_editor' : '',
'.vim' : '',
'.viminfo' : '',
'.vimrc' : '',
'.Xauthority' : '',
'.Xdefaults' : '',
'.xinitrc' : '',
'.xinputrc' : '',
'.Xresources' : '',
'.zshrc' : '',
'_gvimrc' : '',
'_vimrc' : '',
'a.out' : '',
'authorized_keys' : '',
'bspwmrc' : '',
'cmakelists.txt' : '',
'config' : '',
'config.ac' : '',
'config.m4' : '',
'config.mk' : '',
'config.ru' : '',
'configure' : '',
'docker-compose.yml' : '',
'dockerfile' : '',
'Dockerfile' : '',
'dropbox' : '',
'exact-match-case-sensitive-1.txt' : 'X1',
'exact-match-case-sensitive-2' : 'X2',
'favicon.ico' : '',
'gemfile' : '',
'gruntfile.coffee' : '',
'gruntfile.js' : '',
'gruntfile.ls' : '',
'gulpfile.coffee' : '',
'gulpfile.js' : '',
'gulpfile.ls' : '',
'ini' : '',
'known_hosts' : '',
'ledger' : '',
'license' : '',
'LICENSE' : '',
'LICENSE.md' : '',
'LICENSE.txt' : '',
'Makefile' : '',
'makefile' : '',
'Makefile.ac' : '',
'Makefile.in' : '',
'mimeapps.list' : '',
'mix.lock' : '',
'node_modules' : '',
'package-lock.json' : '',
'package.json' : '',
'playlists' : '',
'procfile' : '',
'Rakefile' : '',
'rakefile' : '',
'react.jsx' : '',
'README' : '',
'README.markdown' : '',
'README.md' : '',
'README.rst' : '',
'README.txt' : '',
'sxhkdrc' : '',
'user-dirs.dirs' : '',
'webpack.config.js' : '',
}
def devicon(file):
if file.is_directory: return dir_node_exact_matches.get(file.relative_path, '')
return file_node_exact_matches.get(os.path.basename(file.relative_path), file_node_extensions.get(file.extension, ''))

View file

@ -1,53 +0,0 @@
super + Return # Open terminal
kitty
super + @space # Program launcher
rofi -show drun -show cobi -show-icons
super + Escape # Exit manu
rofi -show power-menu -width 30 -lines 6 -modi power-menu:~/.config/rofi/rofi-power-menu
super + ctrl + u # Config editor
~/.script/dmenu/dmenu-config-edit.sh
super + q # Kill window
bspc node -k
super + shift + r # Restart bspwm
bspc wm -r
super + g # swap the current node and the biggest window
bspc node -s biggest.window
# Sceenshot
Print
scrot -s /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png
shift + Print
scrot /home/${USER}/$(date +%Y-%m-%d-%H-%M-%S).png
super + {t,shift + t,s,f}
bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
super + {_,shift + }{h,j,k,l} # focus the node in the given direction
bspc node -{f,s} {west,south,north,east}
super + {_,shift + }{1-9,0} # focus or send to the given desktop
bspc {desktop -f,node -d} '^{1-9,10}'
super + ctrl + {h,j,k,l} # preselect the direction
bspc node -p {west,south,north,east}
super + ctrl + {1-9} # preselect the ratio
bspc node -o 0.{1-9}
super + ctrl + space # cancel the preselection for the focused node
bspc node -p cancel
super + alt + {h,j,k,l} # expand a window by moving one of its side outward
bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
super + alt + shift + {h,j,k,l} # contract a window by moving one of its side inward
bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
super + {Left,Down,Up,Right} # move a floating window
bspc node -v {-20 0,0 20,0 -20,20 0}

12
scripts/change-shell.sh Normal file → Executable file
View file

@ -6,13 +6,7 @@ case "$1" in
echo "zsh Change default shell to zsh"
echo "fish Change default shell to fish"
;;
bash)
chsh -s $(whitch bash)
;;
zsh)
chsh -s $(whitch zsh)
;;
fish)
chsh -s $(whitch fish)
;;
bash) chsh -s $(whitch bash) ;;
zsh) chsh -s $(whitch zsh) ;;
fish) chsh -s $(whitch fish) ;;
esac

View file

@ -1,2 +0,0 @@
#/bin/sh
ffmpeg -i $1 -b:a 192K -vn ~/$directory/$2.mp3

View file

@ -1,43 +1,39 @@
#!/bin/sh
declare options=("i3
qtile
bspwm
polybar
picom
dunst
qutebrowser
quickmarks
vim
nvim
xresources
dunst
neovim
kitty
taskwarior
fish
zsh
quit")
choice=$(echo -e "${options[@]}" | dmenu -i -p 'Edit config file: ')
choice=$(echo -e "${options[@]}" | dmenu -h 24 -p 'Edit config file: ')
case "$choice" in
quit)
echo "Program terminated." && exit 1 ;;
dunst)
choice="$HOME/.config/dunst/dunstrc" ;;
i3)
choice="$HOME/.config/i3/config" ;;
bspwm)
choice="$HOME/.config/bspwm/bspwmrc" ;;
picom)
choice="$HOME/.config/picom.conf" ;;
polybar)
choice="$HOME/.config/polybar/config" ;;
quickmarks)
choice="$HOME/.config/qutebrowser/quickmarks" ;;
vim)
choice="$HOME/.vimrc" ;;
nvim)
choice="$HOME/.config/nvim/init.vim" ;;
xresources)
choice="$HOME/.Xresources" ;;
zsh)
choice="$HOME/.zshrc" ;;
*)
exit 1 ;;
i3) choice="$HOME/.config/i3/config" ;;
qtile) choice="$HOME/.config/qtile/config.py" ;;
bspwm) choice="$HOME/.config/bspwm/bspwmrc" ;;
picom) choice="$HOME/.config/picom.conf" ;;
polybar) choice="$HOME/.config/polybar/config" ;;
quickmarks) choice="$HOME/.config/qutebrowser/quickmarks" ;;
qutebrowser) choice="$HOME/.config/qutebrowser/config.py" ;;
vim) choice="$HOME/.vimrc" ;;
nvim) choice="$HOME/.config/nvim/init.vim" ;;
dunst) choice="$HOME/.config/dunst/dunstrc" ;;
zsh) choice="$HOME/.zshrc" ;;
taskwarior) choice="$HOME/.taskrc" ;;
fish) choice="$HOME/.config/fish/config.fish" ;;
kitty) choice="$HOME/.config/kitty/kitty.conf" ;;
quit) echo "Program terminated." && exit 1 ;;
*) exit 1 ;;
esac
kitty -e nvim "$choice"

47
scripts/dmenu/dmenu-power.sh Executable file
View file

@ -0,0 +1,47 @@
#!/bin/sh
declare options=("Shut Down
Reboot
Logout
Suspend
Lock Screen
quit")
choice=$(echo -e "${options[@]}" | dmenu -h 24 -p 'Power')
case "$choice" in
"Shut Down")
declare opt=("Yes\nNo")
yesno=$(echo -e "${opt[@]}" | dmenu -h 24 -p 'Power')
case "$yesno" in
"Yes") exec systemctl poweroff ;;
"No") exec exit 0 ;;
esac
;;
"Reboot")
declare opt=("Yes\nNo")
yesno=$(echo -e "${opt[@]}" | dmenu -h 24 -p 'Power')
case "$yesno" in
"Yes") exec systemctl reboot ;;
"No") exec exit 0 ;;
esac
;;
"Logout")
declare opt=("Yes\nNo")
yesno=$(echo -e "${opt[@]}" | dmenu -h 24 -p 'Power')
case "$yesno" in
"Yes") exec loginctl terminate-session $XDG_SESSION_ID ;;
"No") exec exit 0 ;;
esac
;;
"Lock Screen")
declare opt=("Yes\nNo")
yesno=$(echo -e "${opt[@]}" | dmenu -h 24 -p 'Power')
case "$yesno" in
"Yes") exec loginctl lock-session $XDG_SESSION_ID ;;
"No") exec exit 0 ;;
esac
;;
quit) echo "Program terminated." && exit 1 ;;
*) exit 1 ;;
esac

17
scripts/dmenu/dmenu-sysmon.sh Executable file
View file

@ -0,0 +1,17 @@
#!/bin/sh
declare options=("htop
bashtop
gtop
quit")
choice=$(echo -e "${options[@]}" | dmenu -h 24 -p 'System monitor ')
case "$choice" in
htop) choice="htop" ;;
bashtop) choice="bashtop" ;;
gtop) choice="gtop" ;;
quit) echo "Program terminated." && exit 1 ;;
*) exit 1 ;;
esac
kitty -e "$choice"

View file

@ -1,5 +0,0 @@
#!/bin/sh
git add ./
read -p "Commit message: " msg
git commit -am "$msg"
git push origin master

0
scripts/manjaro-fetch.sh Normal file → Executable file
View file

View file

@ -1,9 +0,0 @@
#!/bin/sh
fileDate=`date +%Y-%m-%d-%H-%M-%S`
machineName=`hostname`
fileName=".png"
FILENAME=$fileDate"-"$machineName$fileName
SHORT=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 7 | head -n 1)
FILENAMESHORT=$fileDate$fileName
import $FILENAMESHORT

3
scripts/snap-remove-old-pkg.sh Normal file → Executable file
View file

@ -1,6 +1,5 @@
#!/bin/sh
LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision
do
while read snapname revision; do
sudo snap remove "$snapname" --revision="$revision"
done

View file

@ -1,3 +0,0 @@
#!/bin/sh
tar -czf "../${PWD##*/}.tar.gz" .
echo -e "\033[32mThe archive was created successfully"

View file

@ -1,3 +0,0 @@
#!/bin/sh
tar -czf "$1.tar.gz" $1
echo -e "\033[32mThe archive was created successfully"

0
scripts/walpapper-changer.sh Normal file → Executable file
View file

72
zshrc
View file

@ -1,53 +1,35 @@
export ZSH="/home/sasha/.oh-my-zsh"
#export ZSH="/root/.oh-my-zsh"
source ~/.env
#ZSH_THEME="bureau"
ZSH_THEME="cyan-simple"
# Uncomment the following line to use case-sensitive completion.
#CASE_SENSITIVE="true"
### Oh my zsh ###
ZSH_THEME="cyan-simple" # Set theme
#CASE_SENSITIVE="true" # Use case-sensitive completion.
#HYPHEN_INSENSITIVE="true" # Case-sensitive completion must be off.
#DISABLE_AUTO_UPDATE="true" # Disable bi-weekly auto-update checks.
DISABLE_UPDATE_PROMPT="true" # Automatically update without prompting.
export UPDATE_ZSH_DAYS=13 # Change how often to auto-update.
#DISABLE_MAGIC_FUNCTIONS="true" # If pasting URLs and other text is messed up.
#DISABLE_LS_COLORS="true" # Disable colors in ls.
#DISABLE_AUTO_TITLE="true" # Disable auto-setting terminal title.
#ENABLE_CORRECTION="true" # Enable command auto-correction.
#COMPLETION_WAITING_DOTS="true" # Display red dots whilst waiting for completion.
export LANG=en_US.UTF-8 # Set locale
# Case-sensitive completion must be off. _ and - will be interchangeable.
#HYPHEN_INSENSITIVE="true"
# Uncomment the following line to disable bi-weekly auto-update checks.
#DISABLE_AUTO_UPDATE="true"
# Uncomment the following line to automatically update without prompting.
#DISABLE_UPDATE_PROMPT="true"
# Uncomment the following line to change how often to auto-update (in days).
export UPDATE_ZSH_DAYS=24
# Uncomment the following line if pasting URLs and other text is messed up.
#DISABLE_MAGIC_FUNCTIONS=true
# Uncomment the following line to disable colors in ls.
#DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
export DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
#ENABLE_CORRECTION="true"
# You may need to manually set your language environment
export LANG=en_US.UTF-8
# Uncomment the following line to display red dots whilst waiting for completion.
#COMPLETION_WAITING_DOTS="true"
# Plugins
plugins=(pip python sudo git tmux taskwarrior)
plugins=(pip python sudo git taskwarrior)
source $ZSH/oh-my-zsh.sh
# User configuration
export EDITOR="vim"
### Aliases ###
alias cls="clear"
alias :q
echo "$(tput bold)Welcome:$(tput sgr0) $(whoami)"
source ~/.env
source ~/.profile
alias ..="cd .."
alias ...="cd ../.."
alias .3="cd ../../.."
alias .4="cd ../../../.."
alias .5="cd ../../../../.."
alias .6="cd ../../../../../.."
alias cls='clear'
alias :q="exit"
alias py='python3'
alias tozsh="chsh -s /bin/zsh && echo 'Now log out.'"
alias tofish="chsh -s /bin/fish && echo 'Now log out.'"
alias tobash="chsh -s /bin/bash && echo 'Now log out.'"