all repos

dotfiles @ f407ac09bc38fa44c9a297a37d365a80e29bd43e

i use rach linux btw
13 files changed, 304 insertions(+), 36 deletions(-)
Add alacritty, bettrscreenlock config & update qtile, nvim
Author: Smirnov Olexandr ss2316544@gmail.com
Committed at: 2020-12-19 14:42:34 +0200
Parent: 88cbabb
M README.md
···
                1
                1
                 <h1 align="center">dotfiles</h1>

              
                2
                2
                 

              
                
                3
                +[install arch linux](install_arch.md)

              
                
                4
                +-------------------------------------

              
                
                5
                +

              
                3
                6
                 ![](./config/qtile/screen.png)

              
                4
                7
                 ------------------------------

              
                5
                8
                 

              
                6
                9
                 #### System configuration

              
                7
                10
                 - `OS` Arch

              
                8
                11
                 - `WM` Qtile

              
                9
                
                -- `Terminal` Kitty

              
                
                12
                +- `Terminal` Alacritty

              
                10
                13
                 - `Shell` zsh

              
                11
                14
                 - `Editor` nvim

              
                
                15
                +- `File manager` ranger, mc

              
                12
                16
                 - `Browser` firefox

              
                13
                17
                 - `Font` Jatbrains Mono

              
                14
                18
                 - `Icon font` FontAwesome5

              
M bin/extract
···
                13
                13
                     *.7z)        7z x $1               ;;

              
                14
                14
                     *.deb)       ar x $1               ;;

              
                15
                15
                     *.tar.xz)    tar xf $1             ;;

              
                16
                
                -    *.tar.zst)   unzstd $1             ;;      

              
                
                16
                +    *.tar.zst)   unzstd $1             ;;

              
                17
                17
                     *) echo "'$1' is not a valid file" ;;

              
                18
                18
                 esac

              
M bin/giti
···
                1
                1
                 #!/bin/sh

              
                2
                2
                 add() {

              
                3
                
                -    local file="$1"

              
                4
                
                -    echo $file >> .gitignore

              
                
                3
                +    echo $1 >> .gitignore

              
                5
                4
                 }

              
                6
                5
                 del() {

              
                7
                
                -    local file="$1"

              
                8
                
                -    sed -i "/$file/d" .gitignore

              
                
                6
                +    sed -i "/$1/d" .gitignore

              
                9
                7
                 }

              
                10
                8
                 edit() {

              
                11
                
                -    local oldname="$1"

              
                12
                
                -    local newanme="$2"

              
                13
                
                -    sed -in "s|$oldname|$newanme|g" .gitignore

              
                
                9
                +    sed -in "s|$1|$2|g" .gitignore

              
                14
                10
                 }

              
                15
                11
                 show() {

              
                16
                12
                     if [ -f '/usr/bin/bat' ]

              ···
                22
                18
                 }

              
                23
                19
                 

              
                24
                20
                 case "$1" in

              
                25
                
                -    add|a)  shift; add "$@"  ;;

              
                26
                
                -    del|d)  shift; del "$@"  ;;

              
                
                21
                +    add|a)  shift; add  "$@" ;;

              
                
                22
                +    del|d)  shift; del  "$@" ;;

              
                27
                23
                     mv)     shift; edit "$@" ;;

              
                28
                24
                     show|s) shift; show      ;;

              
                29
                25
                     help) echo "add/a - filename add to ignore"

              ···
                32
                28
                           echo "show  - show ignore file"

              
                33
                29
                     ;;

              
                34
                30
                     *) echo "Command is not valid"

              
                35
                
                -esac

              
                
                31
                +esac
              
M bin/kbhl
···
                1
                1
                 #!/bin/sh

              
                2
                2
                 case "$1" in

              
                3
                
                -    "on"|"-on"|"--on"|1) xset led on     ;;

              
                
                3
                +    "on"|"-on"|"--on"|1) xset led on          ;;

              
                4
                4
                     "of"|"off"|"-off"|"--off"|0) xset led off ;;

              
                5
                5
                 esac

              
                6
                6
                 

              
A config/alacritty.yml
···
                
                1
                +env:

              
                
                2
                +  TERM: xterm-256color

              
                
                3
                +

              
                
                4
                +window:

              
                
                5
                +  title: Alacritty

              
                
                6
                +  class:

              
                
                7
                +    instance: Alacritty

              
                
                8
                +    general: Alacritty

              
                
                9
                +  padding:

              
                
                10
                +    x: 0

              
                
                11
                +    y: 0

              
                
                12
                +

              
                
                13
                +scrolling:

              
                
                14
                +  history: 1000

              
                
                15
                +  

              
                
                16
                +font:

              
                
                17
                +  antialias: lcd

              
                
                18
                +  hinting: true

              
                
                19
                +  size: 12.0

              
                
                20
                +  normal:

              
                
                21
                +    family: Hack 

              
                
                22
                +    style: Regular

              
                
                23
                +  bold:

              
                
                24
                +    family: Hack

              
                
                25
                +    style: Bold

              
                
                26
                +  italic:

              
                
                27
                +    family: Hack

              
                
                28
                +    style: Italic

              
                
                29
                +  bold_italic:

              
                
                30
                +    family: Hack

              
                
                31
                +    style: Bold Italic

              
                
                32
                +  offset:

              
                
                33
                +    x: 1

              
                
                34
                +    y: 0

              
                
                35
                +

              
                
                36
                +debug.render_timer: false

              
                
                37
                +draw_bold_text_with_bright_colors: false

              
                
                38
                +background_opacity: 0.85

              
                
                39
                +#dynamic_title: true

              
                
                40
                +

              
                
                41
                +colors:

              
                
                42
                +  primary:

              
                
                43
                +    background: '0x262A2D'

              
                
                44
                +    foreground: '0xDFDFDF'

              
                
                45
                +  cursor:

              
                
                46
                +    text: '0x7D7D7D'

              
                
                47
                +    cursor: '0xDFDFDF'

              
                
                48
                +  selection:

              
                
                49
                +    text: '0xEDEBD7'

              
                
                50
                +    background: '0x262A3B'

              
                
                51
                +  normal:

              
                
                52
                +    black:   '0x1c1f24'

              
                
                53
                +    red:     '0xff6c6b'

              
                
                54
                +    green:   '0x98be65'

              
                
                55
                +    yellow:  '0xda8548'

              
                
                56
                +    blue:    '0x51afef'

              
                
                57
                +    magenta: '0xc678dd'

              
                
                58
                +    cyan:    '0x5699af'

              
                
                59
                +    white:   '0x202328'

              
                
                60
                +  bright:

              
                
                61
                +    black:   '0x5b6268'

              
                
                62
                +    red:     '0xda8548'

              
                
                63
                +    green:   '0x4db5bd'

              
                
                64
                +    yellow:  '0xecbe7b'

              
                
                65
                +    blue:    '0x3071db'

              
                
                66
                +    magenta: '0xa9a1e1'

              
                
                67
                +    cyan:    '0x46d9ff'

              
                
                68
                +    white:   '0xdfdfdf'

              
                
                69
                +

              
                
                70
                +cursor:

              
                
                71
                +  style: Block

              
                
                72
                +

              
                
                73
                +key_bindings:

              
                
                74
                +  - { key: V,        mods: Control|Shift, action: Paste            }

              
                
                75
                +  - { key: C,        mods: Control|Shift, action: Copy             }

              
                
                76
                +  - { key: Key0,     mods: Control,       action: ResetFontSize    }

              
                
                77
                +  - { key: Equals,   mods: Alt,           action: IncreaseFontSize }

              
                
                78
                +  - { key: Minus,    mods: Alt,           action: DecreaseFontSize }

              
A config/betterlockscreenrc
···
                
                1
                +insidecolor=#00000000

              
                
                2
                +ringcolor=#ffffff

              
                
                3
                +keyhlcolor=#51AFEF

              
                
                4
                +bshlcolor=#51AFEF

              
                
                5
                +separatorcolor=#00000000

              
                
                6
                +insidevercolor=#ff6c6b

              
                
                7
                +insidewrongcolor=#51AFEF

              
                
                8
                +ringvercolor=#ffffff

              
                
                9
                +ringwrongcolor=#ffffff

              
                
                10
                +verifcolor=#ffffff

              
                
                11
                +timecolor=#ffffff

              
                
                12
                +datecolor=#ced4da

              
                
                13
                +loginbox=#000066

              
M config/kitty/kitty.conf
···
                86
                86
                 

              
                87
                87
                 # Theming

              
                88
                88
                 foreground #dfdfdf

              
                89
                
                -#background_opacity 0.85

              
                90
                
                -background_opacity 1

              
                
                89
                +background_opacity 0.85

              
                
                90
                +#background_opacity 1

              
                91
                91
                 background_image none

              
                92
                92
                 background_image_layout tiled

              
                93
                93
                 background_image_linear no

              ···
                96
                96
                 dim_opacity 0.75

              
                97
                97
                 selection_foreground #edebd7

              
                98
                98
                 selection_background #073642

              
                99
                
                -background #262a2b

              
                
                99
                +background #262a3b

              
                
                100
                +#background #262a2b

              
                100
                101
                 foreground #ffffff

              
                101
                102
                 cursorColor #d2dae2

              
                102
                103
                 selection_background #262a3b

              
M config/nvim/init.vim
···
                20
                20
                     Plug 'pangloss/vim-javascript', { 'for': 'javascript' }

              
                21
                21
                     Plug 'PotatoesMaster/i3-vim-syntax', { 'for': 'i3' }

              
                22
                22
                     Plug 'kovetskiy/sxhkd-vim', { 'for': 'sxhkd' }

              
                
                23
                +    Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries', 'for': 'go' }

              
                23
                24
                     Plug 'mattn/emmet-vim', { 'on': 'Emmet' }

              
                24
                25
                     Plug 'Olical/vim-scheme', { 'for': 'scheme' }

              
                25
                26
                     Plug 'cakebaker/scss-syntax.vim', { 'for': 'scss' }

              ···
                117
                118
                 let g:indent_guides_enable_on_vim_startup = 1

              
                118
                119
                 

              
                119
                120
                 " Floaterm

              
                120
                
                -nmap <A-t> :FloatermNew --name=vimterminal --position=top --autoclose=2<CR>

              
                121
                
                -imap <A-t> :FloatermNew --name=vimterminal --position=top --autoclose=2<CR>

              
                
                121
                +nmap <A-t> :FloatermNew --title=vimterminal --position=top --autoclose=2<CR>

              
                122
                122
                 

              
                123
                123
                 " == Maping

              
                124
                124
                 "imap fd <Esc>

              ···
                142
                142
                 noremap <C-n> :tabnew<CR>

              
                143
                143
                 noremap <C-t> :tabnew<CR>

              
                144
                144
                 noremap <C-S-w> :tabclose<CR>

              
                145
                
                -noremap <leader>1 :tabn 1<CR>

              
                146
                
                -noremap <leader>2 :tabn 2<CR>

              
                147
                
                -noremap <leader>3 :tabn 3<CR>

              
                148
                
                -noremap <leader>4 :tabn 4<CR>

              
                149
                
                -noremap <leader>5 :tabn 5<CR>

              
                150
                
                -noremap <leader>6 :tabn 6<CR>

              
                151
                
                -noremap <leader>7 :tabn 7<CR>

              
                152
                
                -noremap <leader>8 :tabn 8<CR>

              
                153
                
                -noremap <leader>9 :tabn 9<CR>

              
                
                145
                +noremap <A-1> :tabn 1<CR>

              
                
                146
                +noremap <A-2> :tabn 2<CR>

              
                
                147
                +noremap <A-3> :tabn 3<CR>

              
                
                148
                +noremap <A-4> :tabn 4<CR>

              
                
                149
                +noremap <A-5> :tabn 5<CR>

              
                
                150
                +noremap <A-6> :tabn 6<CR>

              
                
                151
                +noremap <A-7> :tabn 7<CR>

              
                
                152
                +noremap <A-8> :tabn 8<CR>

              
                
                153
                +noremap <A-9> :tabn 9<CR>

              
                154
                154
                 noremap <leader>n :bnext<CR>

              
                155
                155
                 noremap <leader>p :bprev<CR>

              
M config/qtile/config.py
···
                9
                9
                 mod = "mod4"

              
                10
                10
                 alt = "mod1"

              
                11
                11
                 

              
                12
                
                -terminal = "kitty"

              
                
                12
                +terminal = "alacritty"

              
                13
                13
                 browser = "firefox"

              
                14
                14
                 filemanager="pcmanfm"

              
                15
                15
                 user = "sasha"

              ···
                45
                45
                         desc="Launch filemanager"

              
                46
                46
                     ),

              
                47
                47
                     Key([mod, alt], "t",

              
                48
                
                -        lazy.spawn(f"{terminal} -e \"nvim /home/{user}/.todo\""),

              
                
                48
                +        lazy.spawn(f"{terminal} -e nvim /home/{user}/.todo"),

              
                49
                49
                         desc="Open ~/.todo file in nvim"

              
                50
                50
                     ),

              
                51
                51
                 

              ···
                200
                200
                 

              
                201
                201
                 # Window layout(s)

              
                202
                202
                 layout_theme = {

              
                203
                
                -    "border_width": 2,

              
                204
                
                -    "margin": 3,

              
                
                203
                +    "border_width": 1,

              
                
                204
                +    "margin": 2,

              
                205
                205
                     "border_focus": color[2],

              
                206
                206
                     "border_normal": color[1],

              
                207
                207
                     "font": "Jatbrains Mono"

              
M config/ranger/rc.conf
···
                24
                24
                 

              
                25
                25
                 ### Preview

              
                26
                26
                 set preview_images true

              
                27
                
                -set preview_images_method kitty

              
                28
                
                -#set preview_images_method ueberzug

              
                
                27
                +#set preview_images_method kitty

              
                
                28
                +set preview_images_method ueberzug

              
                29
                29
                 

              
                30
                30
                 set unicode_ellipsis false

              
                31
                31
                 set bidi_support false

              
A install_arch.md
···
                
                1
                +### Connect to WiFi

              
                
                2
                +~~~bash

              
                
                3
                +$ iwctl

              
                
                4
                +  > device list                 # Show all network deivce

              
                
                5
                +  > station `wlan` scan         # Scan networks from `wlan` device

              
                
                6
                +  > station `wlan` get-networks # Show all wifi networks

              
                
                7
                +  > station `wlan` connect SSID # Get passphrase for connect

              
                
                8
                +$ iwctl --passphrase `pass` station `wlan` connect `SSID`

              
                
                9
                +~~~

              
                
                10
                +

              
                
                11
                +### Clock

              
                
                12
                +~~~bash

              
                
                13
                +$ timedatectl set-ntp true

              
                
                14
                +~~~

              
                
                15
                +

              
                
                16
                +### Disk

              
                
                17
                +~~~bash

              
                
                18
                +$ cfdisk /dev/sdX

              
                
                19
                +~~~

              
                
                20
                +

              
                
                21
                +**Create:**

              
                
                22
                +- swap: size(RAM); type(Linux SWAP)

              
                
                23
                +- root: size(15-30Gb); type(ext4)'

              
                
                24
                +- home(optional): size(all size); type(ext4)

              
                
                25
                +

              
                
                26
                +**Format:**

              
                
                27
                +~~~bash

              
                
                28
                +$ mkswap /dev/(swap)

              
                
                29
                +$ mkfs.ext4 /dev/(root)

              
                
                30
                +$ mkfs.ext4 /dev/(home)

              
                
                31
                +~~~

              
                
                32
                +

              
                
                33
                +**Mount:**

              
                
                34
                +~~~bash

              
                
                35
                +swapon /dev/(swap)

              
                
                36
                +mount /dev/(root) / mnt

              
                
                37
                +mkdit mnt/home && mount /dev/(home) /mnt/home

              
                
                38
                +~~~

              
                
                39
                +

              
                
                40
                +### Base system

              
                
                41
                +~~~bash

              
                
                42
                +$ pacstrarp /mnt base base-devel linux linux-dirmware wpa_supplicant dhcpcd networkmanager

              
                
                43
                +~~~

              
                
                44
                +

              
                
                45
                +### FStab

              
                
                46
                +~~~bash

              
                
                47
                +$ genfstab -U /mnt >> /mnt/etc/fstab

              
                
                48
                +~~~

              
                
                49
                +

              
                
                50
                +### Chroot

              
                
                51
                +~~~bash

              
                
                52
                +$ arch-chroot /mnt

              
                
                53
                +~~~

              
                
                54
                +

              
                
                55
                +## Configure base system

              
                
                56
                +### Time

              
                
                57
                +~~~bash

              
                
                58
                +$ ln -sf /usr/share/zoneinfo/Region/City /etc/localtime

              
                
                59
                +$ hwclock --systohc

              
                
                60
                +~~~

              
                
                61
                +

              
                
                62
                +### Localization

              
                
                63
                +Uncomment your locale in `/etc/locale.gen`

              
                
                64
                +~~~bash

              
                
                65
                +$ locale-gen

              
                
                66
                +~~~

              
                
                67
                +

              
                
                68
                +### Hostname

              
                
                69
                +~~~bash

              
                
                70
                +$ hostnamectl set-hostname arch

              
                
                71
                +$ vim /etc/hosts

              
                
                72
                +  > 127.0.0.1   arch

              
                
                73
                +  > ::1         arch

              
                
                74
                +  > 127.0.1.1   arch.localdomain    arch

              
                
                75
                +~~~

              
                
                76
                +

              
                
                77
                +### Root password

              
                
                78
                +~~~bash

              
                
                79
                +$ passwd root

              
                
                80
                +~~~

              
                
                81
                +

              
                
                82
                +### User & sudo

              
                
                83
                +Uncomment `%wheel` line in `/etc/sudoers`

              
                
                84
                +~~~bash

              
                
                85
                +$ useradd -m user

              
                
                86
                +$ usermod -aG wheel,audio,video,optical,strage user

              
                
                87
                +$ passwd user

              
                
                88
                +~~~

              
                
                89
                +

              
                
                90
                +### Install grub

              
                
                91
                +~~~bash

              
                
                92
                +$ pacman -S grub

              
                
                93
                +$ grub-install --recheck /dev/sdX

              
                
                94
                +$ grub-mkconfig -o /boot/grub/grub.cfg

              
                
                95
                +~~~

              
                
                96
                +

              
                
                97
                +### Reboot in base system

              
                
                98
                +~~~bash

              
                
                99
                +$ exit

              
                
                100
                +$ umount /mnt

              
                
                101
                +$ reboot

              
                
                102
                +~~~

              
                
                103
                +

              
                
                104
                +### Network manager

              
                
                105
                +~~~bash

              
                
                106
                +$ sudo systemctl enable NetworkManager

              
                
                107
                +$ sudo systemctl start NetworkManager

              
                
                108
                +$ nmtui-connect

              
                
                109
                +~~~

              
                
                110
                +

              
                
                111
                +### User dirs

              
                
                112
                +~~~bash

              
                
                113
                +$ sudo pacman -S xdg-userr-dirs

              
                
                114
                +$ xdg-user-dirs-update

              
                
                115
                +~~~

              
                
                116
                +

              
                
                117
                +### Xorg, login manager, video drivers

              
                
                118
                +~~~bash

              
                
                119
                +$ sudo pacman -S xorg-server xorg-xrand xorg-xsetroot xorg-drivers lightdm lightdm-gtk-greeter

              
                
                120
                +$ sudo pacman -S xf86-video-intel lib32-intel-dri       # Intel

              
                
                121
                +$ sudo pacman -S nvidia nvidia-utils lib32-nvidia-utils # Nvidia

              
                
                122
                +$ sudo pacman -S xf86-video-ati lib-ati-dri             # AMD

              
                
                123
                +$ sudo systemctl enable lightdm

              
                
                124
                +~~~

              
                
                125
                +

              
                
                126
                +

              
                
                127
                +### Install yay

              
                
                128
                +~~~bash

              
                
                129
                +$ git clone https://aur.archlinux.org/yay-bin

              
                
                130
                +$ cd yay-bin

              
                
                131
                +$ makepkg -si

              
                
                132
                +~~~

              
                
                133
                +

              
                
                134
                +

              
                
                135
                +### Install alsa, pulseaudio

              
                
                136
                +~~~bash

              
                
                137
                +$ sudo pacman -S alsa-firmware alsa-utils pulseaudio-alsa pulseaudio

              
                
                138
                +~~~

              
                
                139
                +

              
                
                140
                +

              
                
                141
                +### Install WM: Qtile

              
                
                142
                +~~~bash

              
                
                143
                +$ sudo pacman -S qtile alacritty nitrogen

              
                
                144
                +$ sudo systemctl start lightdm

              
                
                145
                +~~~

              
                
                146
                +

              
                
                147
                +

              
                
                148
                +### Install packages from pacman & aur

              
                
                149
                +~~~bash

              
                
                150
                +$ sudo pacman -S --noconfirm --needed firefox redshift mc vifm ranger neovim htop pass passmenu discord zathura papirus-icon-theme arc-gtk-theme lxappearance

              
                
                151
                +$ sudo pacman -S --noconfirm --needed ttf-font-awesome ttf-jatbrains-mono ttf-joypixels

              
                
                152
                +$ yay -S --noconfirm --needed rcm xkblayout bibata-cursor-theme-bin spotify

              
                
                153
                +~~~

              
                
                154
                +

              
                
                155
                +

              
                
                156
                +### Install betterlockscreen

              
                
                157
                +~~~bash

              
                
                158
                +yay -S i3lock-color imagemagick feh xorg-xrandr xorg-xdpyinfo

              
                
                159
                +wget -O betterlockscreen https://git.io/fASUJ

              
                
                160
                +chmod u+x betterlockscreen

              
                
                161
                +cp betterlockscreen ~/.local/bin

              
                
                162
                +~~~

              
                
                163
                +

              
                
                164
                +

              
                
                165
                +### Set qt appearance

              
                
                166
                +~~~bash

              
                
                167
                +$ sudo pacman -S kvantum-qt5 qt5ct

              
                
                168
                +$ sudo echo "QT_QPA_PLATFORMTHEME="qt5ct" >> /etc/enviroment

              
                
                169
                +~~~

              
                
                170
                +

              
                
                171
                +### Install Oh My ZSH

              
                
                172
                +~~~bash

              
                
                173
                +$ sudo pacman -S zsh curl

              
                
                174
                +$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

              
                
                175
                +~~~

              
M script/dmenu/dmenu-config-edit.sh
···
                19
                19
                 case "$choice" in

              
                20
                20
                 	i3) choice="$HOME/.config/i3/config" ;;

              
                21
                21
                     qtile) 

              
                22
                
                -        opt=$(echo -e "config.py\nautostart"|dmenu -p 'Qtile' $@)

              
                
                22
                +        opt=$(echo -e "config.py\nautostart.sh"|dmenu -p 'Qtile' $@)

              
                23
                23
                         case "$opt" in

              
                24
                24
                             "config.py") choice="$HOME/.config/qtile/config.py" ;;

              
                25
                25
                             "autostart.sh") choice="$HOME/.config/qtile/autostart.sh" ;;

              
M zshrc
···
                1
                1
                 export ZSH="$HOME/.oh-my-zsh"

              
                2
                
                -export PATH="$HOME/bin:$PATH"

              
                
                2
                +export PATH="$HOME/bin:$HOME/.local/bin:$PATH"

              
                3
                3
                 #source ~/.env

              
                4
                4
                 #source ~/.profile

              
                5
                5
                 

              ···
                36
                36
                 alias cls="clear"

              
                37
                37
                 alias :q="exit"

              
                38
                38
                 alias tmux="tmux -2"

              
                
                39
                +alias vim="nvim"

              
                39
                40
                 alias icat="kitty +kitten icat"

              
                40
                41
                 

              
                41
                42
                 alias ..="cd .."

              ···
                50
                51
                 alias tobash="chsh -s /bin/bash && echo 'Now log out.'"

              
                51
                52
                 

              
                52
                53
                 ### NeoFetch ###

              
                53
                
                -neofetch

              
                
                54
                +#neofetch