mirror of
https://github.com/LukeSmithxyz/voidrice.git
synced 2026-03-20 01:37:45 +01:00
make repo my own
This commit is contained in:
parent
5a8369755f
commit
a600c5f75b
27
.Xresources
27
.Xresources
@ -15,7 +15,32 @@
|
||||
*.color13: #d3869b
|
||||
*.color14: #8ec07c
|
||||
*.color15: #ebdbb2
|
||||
|
||||
!! base16 Tomorrow Night theme
|
||||
!! https://github.com/honza/base16-st
|
||||
!!*.color0: #1d1f21
|
||||
!!*.color1: #cc6666
|
||||
!!*.color2: #b5bd68
|
||||
!!*.color3: #f0c674
|
||||
!!*.color4: #81a2be
|
||||
!!*.color5: #b294bb
|
||||
!!*.color6: #8abeb7
|
||||
!!*.color7: #c5c8c6
|
||||
!!*.color8: #969896
|
||||
!!*.color9: #de935f
|
||||
!!*.color10: #282a2e
|
||||
!!*.color11: #373b41
|
||||
!!*.color12: #b4b7b4
|
||||
!!*.color13: #e0e0e0
|
||||
!!*.color14: #a3685a
|
||||
!!*.color15: #ebdbb2
|
||||
|
||||
!! Transparency (0-255):
|
||||
*.alpha: 230
|
||||
!!*.alpha: 230
|
||||
!! My custom entry
|
||||
!!*.alpha: 235
|
||||
!! Set a default font and font size as below:
|
||||
!! *.font: Monospace-14;
|
||||
!! My custom entry
|
||||
!!*.font: Source Code Pro for Powerline:pixelsize=16:antialias=true:autohint=true;
|
||||
*.font: SauceCodePro Nerd Font Mono:pixelsize=15:antialias=true:autohint=true;
|
||||
|
||||
3
.bashrc
3
.bashrc
@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
stty -ixon # Disable ctrl-s and ctrl-q.
|
||||
shopt -s autocd #Allows you to cd into directory merely by typing the directory name.
|
||||
#shopt -s autocd #Allows you to cd into directory merely by typing the directory name.
|
||||
HISTSIZE= HISTFILESIZE= # Infinite history.
|
||||
export PS1="\[$(tput bold)\]\[$(tput setaf 1)\][\[$(tput setaf 3)\]\u\[$(tput setaf 2)\]@\[$(tput setaf 4)\]\h \[$(tput setaf 5)\]\W\[$(tput setaf 1)\]]\[$(tput setaf 7)\]\\$ \[$(tput sgr0)\]"
|
||||
|
||||
@ -28,6 +28,7 @@ alias ref="shortcuts >/dev/null ; source ~/.bashrc" # Refresh shortcuts manually
|
||||
alias mpv="mpv --input-ipc-server=/tmp/mpvsoc$(date +%s)"
|
||||
alias x="sxiv -ft *"
|
||||
alias lp="pacman -Qett --color=always | less"
|
||||
alias bw="wal -i ~/.config/wall.png" # Rerun pywal
|
||||
|
||||
# Adding color
|
||||
alias ls='ls -hN --color=auto --group-directories-first'
|
||||
|
||||
1
.bmfiles
1
.bmfiles
@ -5,6 +5,7 @@ cfz ~/.zshrc
|
||||
cfv ~/.vimrc
|
||||
cfr ~/.config/ranger/rc.conf
|
||||
cfi ~/.config/i3/config
|
||||
cfib ~/.config/i3blocks/config
|
||||
cfq ~/.config/qutebrowser/config.py
|
||||
cfm ~/.config/mutt/muttrc
|
||||
cft ~/.config/termite/config
|
||||
|
||||
@ -20,8 +20,8 @@
|
||||
# #---Basic Definitions---# #
|
||||
# Needed for i3-gaps
|
||||
for_window [class="^.*"] border pixel 2
|
||||
gaps inner 15
|
||||
gaps outer 15
|
||||
gaps inner 10
|
||||
gaps outer 10
|
||||
set $term --no-startup-id $TERMINAL
|
||||
set $mod Mod4
|
||||
set $stoprec --no-startup-id dmenurecord kill
|
||||
@ -45,7 +45,8 @@ for_window [instance="dropdown_*"] move position center
|
||||
|
||||
# #---Starting External Scripts---# #
|
||||
# Setting the background:
|
||||
exec --no-startup-id feh --bg-scale ~/.config/wall.png
|
||||
# exec --no-startup-id feh --bg-scale ~/.config/wall.png
|
||||
exec --no-startup-id feh --bg-scale ~/Dropbox/Infrastructure/Desktop-Backgrounds/fluorescence.jpg
|
||||
# Starts dunst for notifications:
|
||||
exec --no-startup-id dunst
|
||||
# Composite manager:
|
||||
@ -88,10 +89,15 @@ client.urgent $darkred $darkred $black $darkred $darkred
|
||||
client.background $black
|
||||
|
||||
bar {
|
||||
font pango:mono 10
|
||||
# font pango:mono 10
|
||||
# font pango:Source Code Pro for Powerline,Font Awesome 5 Free-Regular-400,Font Awesome 5 Free-Solid-900 8
|
||||
# font pango:SauceCodePro Nerd Font,Font Awesome 5 Free-Regular-400,Font Awesome 5 Free-Solid-900 8
|
||||
font pango:SauceCodePro Nerd Font,Font Awesome 5 Free 8
|
||||
# font pango:Inconsolata for Powerline 9
|
||||
colors {
|
||||
background $darkblack
|
||||
statusline $darkwhite
|
||||
# statusline $white
|
||||
separator $cyan
|
||||
focused_workspace $blue $darkblue $darkblack
|
||||
active_workspace $blue $blue $darkwhite
|
||||
@ -121,7 +127,7 @@ bindsym $mod+grave exec --no-startup-id dmenuunicode
|
||||
##bindsym $mod+asciitilde
|
||||
|
||||
#STOP/HIDE EVERYTHING:
|
||||
bindsym $mod+Shift+Delete exec --no-startup-id lmc truemute ; exec --no-startup-id lmc pause ; exec --no-startup-id pauseallmpv; workspace 0; exec $term -e htop ; exec $term -e $FILE
|
||||
bindsym $mod+Shift+Delete exec --no-startup-id lmc truemute ; exec --no-startup-id lmc pause ; exec --no-startup-id pauseallmpv; workspace 0; exec $term -e htop ; exec $term -e $FILE
|
||||
|
||||
# Show selection:
|
||||
bindsym $mod+Insert exec --no-startup-id showclip
|
||||
@ -141,7 +147,7 @@ bindsym $mod+r exec $term -e ranger
|
||||
bindsym $mod+Shift+r exec --no-startup-id winresize
|
||||
|
||||
bindsym $mod+t split toggle
|
||||
bindsym $mod+Shift+t gaps inner current set 15; gaps outer current set 15
|
||||
bindsym $mod+Shift+t gaps inner current set 10; gaps outer current set 10
|
||||
|
||||
bindsym $mod+y exec $term -e calcurse
|
||||
bindsym $mod+Shift+y exec --no-startup-id i3resize left
|
||||
@ -361,10 +367,13 @@ bindsym XF86MyComputer exec $term -e $FILE
|
||||
##bindsym XF86Back exec
|
||||
##bindsym XF86Forward exec
|
||||
bindsym XF86Eject exec --no-startup-id dmenuumount
|
||||
bindsym XF86AudioNext exec --no-startup-id lmc next
|
||||
bindsym XF86AudioPlay exec --no-startup-id lmc toggle
|
||||
bindsym XF86AudioPrev exec --no-startup-id lmc prev
|
||||
bindsym XF86AudioStop exec --no-startup-id lmc toggle
|
||||
# bindsym XF86AudioNext exec --no-startup-id lmc next
|
||||
# bindsym XF86AudioPlay exec --no-startup-id lmc toggle
|
||||
# bindsym XF86AudioPrev exec --no-startup-id lmc prev
|
||||
# bindsym XF86AudioStop exec --no-startup-id lmc toggle
|
||||
bindsym XF86AudioNext exec --no-startup-id playerctl next
|
||||
bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause
|
||||
bindsym XF86AudioPrev exec --no-startup-id playerctl previous
|
||||
##bindsym XF86AudioRecord
|
||||
bindsym XF86AudioRewind exec --no-startup-id lmc back 10
|
||||
bindsym XF86AudioForward exec --no-startup-id lmc forward 10
|
||||
@ -415,3 +424,9 @@ bindsym XF86Documents exec $term -e $FILE ~/Documents
|
||||
bindsym XF86WLAN exec $netrefresh
|
||||
|
||||
exec --no-startup-id lukescripts
|
||||
|
||||
# My entries
|
||||
# Dropbox Start
|
||||
exec --no-startup-id dropbox start
|
||||
# Clipboard History manager
|
||||
exec --no-startup-id clipit
|
||||
|
||||
@ -3,7 +3,7 @@ separator_block_width=15
|
||||
markup=pango
|
||||
|
||||
[record]
|
||||
command=cat /tmp/recordingicon
|
||||
command=cat ~/.recordingicon
|
||||
interval=once
|
||||
signal=9
|
||||
|
||||
@ -26,22 +26,33 @@ signal=8
|
||||
interval=20
|
||||
signal=7
|
||||
|
||||
[weather]
|
||||
interval=3600
|
||||
signal=5
|
||||
#[weather]
|
||||
#interval=3600
|
||||
#signal=5
|
||||
|
||||
[mailbox]
|
||||
label=📬
|
||||
interval=180
|
||||
signal=12
|
||||
|
||||
#[bandwidth]
|
||||
#instance=wlp3s0
|
||||
#interval=5
|
||||
|
||||
#[openvpn]
|
||||
#interval=20
|
||||
|
||||
[bandwidth3]
|
||||
interval=persist
|
||||
markup=pango
|
||||
|
||||
#[memory]
|
||||
#interval=30
|
||||
#label=🧠
|
||||
#label=
|
||||
|
||||
#[cpu]
|
||||
#cpu]
|
||||
#interval=15
|
||||
#label=💻
|
||||
#label=
|
||||
|
||||
[volume]
|
||||
interval=once
|
||||
@ -55,16 +66,21 @@ signal=10
|
||||
#interval=60
|
||||
#command=disk /home 🏠
|
||||
|
||||
[battery]
|
||||
command=battery BAT0
|
||||
interval=5
|
||||
[internet]
|
||||
interval=20
|
||||
#interval=10
|
||||
|
||||
[clock]
|
||||
label=📅
|
||||
label=
|
||||
interval=30
|
||||
|
||||
[internet]
|
||||
interval=10
|
||||
[kbdd_layout]
|
||||
interval=persist
|
||||
|
||||
[help]
|
||||
interval=once
|
||||
[battery]
|
||||
command=battery BAT0
|
||||
interval=10
|
||||
#interval=5
|
||||
|
||||
#[help]
|
||||
#interval=once
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
http://lukesmith.xyz/rss.xml
|
||||
https://notrelated.libsyn.com/rss
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UC2eYFnH61tmytImy1mTYvhA "~Luke Smith (YouTube)"
|
||||
https://www.archlinux.org/feeds/news/ "tech"
|
||||
https://www.macsparky.com/blog?format=rss
|
||||
|
||||
0
.config/ranger/plugins/__init__.py
Normal file
0
.config/ranger/plugins/__init__.py
Normal file
BIN
.config/ranger/plugins/__pycache__/__init__.cpython-37.opt-1.pyc
Normal file
BIN
.config/ranger/plugins/__pycache__/__init__.cpython-37.opt-1.pyc
Normal file
Binary file not shown.
BIN
.config/ranger/plugins/__pycache__/devicons.cpython-37.opt-1.pyc
Normal file
BIN
.config/ranger/plugins/__pycache__/devicons.cpython-37.opt-1.pyc
Normal file
Binary file not shown.
Binary file not shown.
232
.config/ranger/plugins/devicons.py
Executable file
232
.config/ranger/plugins/devicons.py
Executable file
@ -0,0 +1,232 @@
|
||||
#!/usr/bin/python
|
||||
# coding=UTF-8
|
||||
# These glyphs, and the mapping of file extensions to glyphs
|
||||
# has been copied from the vimscript code that is present in
|
||||
# https://github.com/ryanoasis/vim-devicons
|
||||
import re;
|
||||
import os;
|
||||
|
||||
# all those glyphs will show as weird squares if you don't have the correct patched font
|
||||
# My advice is to use NerdFonts which can be found here:
|
||||
# https://github.com/ryanoasis/nerd-fonts
|
||||
file_node_extensions = {
|
||||
'7z' : '',
|
||||
'ai' : '',
|
||||
'apk' : '',
|
||||
'avi' : '',
|
||||
'bat' : '',
|
||||
'bmp' : '',
|
||||
'bz2' : '',
|
||||
'c' : '',
|
||||
'c++' : '',
|
||||
'cab' : '',
|
||||
'cbr' : '',
|
||||
'cbz' : '',
|
||||
'cc' : '',
|
||||
'clj' : '',
|
||||
'cljc' : '',
|
||||
'cljs' : '',
|
||||
'coffee' : '',
|
||||
'conf' : '',
|
||||
'cp' : '',
|
||||
'cpio' : '',
|
||||
'cpp' : '',
|
||||
'css' : '',
|
||||
'cxx' : '',
|
||||
'd' : '',
|
||||
'dart' : '',
|
||||
'db' : '',
|
||||
'deb' : '',
|
||||
'diff' : '',
|
||||
'dump' : '',
|
||||
'edn' : '',
|
||||
'ejs' : '',
|
||||
'epub' : '',
|
||||
'erl' : '',
|
||||
'exe' : '',
|
||||
'f#' : '',
|
||||
'fish' : '',
|
||||
'flac' : '',
|
||||
'flv' : '',
|
||||
'fs' : '',
|
||||
'fsi' : '',
|
||||
'fsscript' : '',
|
||||
'fsx' : '',
|
||||
'gem' : '',
|
||||
'gif' : '',
|
||||
'go' : '',
|
||||
'gz' : '',
|
||||
'gzip' : '',
|
||||
'hbs' : '',
|
||||
'hrl' : '',
|
||||
'hs' : '',
|
||||
'htm' : '',
|
||||
'html' : '',
|
||||
'ico' : '',
|
||||
'ini' : '',
|
||||
'java' : '',
|
||||
'jl' : '',
|
||||
'jpeg' : '',
|
||||
'jpg' : '',
|
||||
'js' : '',
|
||||
'json' : '',
|
||||
'jsx' : '',
|
||||
'less' : '',
|
||||
'lha' : '',
|
||||
'lhs' : '',
|
||||
'log' : '',
|
||||
'lua' : '',
|
||||
'lzh' : '',
|
||||
'lzma' : '',
|
||||
'markdown' : '',
|
||||
'md' : '',
|
||||
'mkv' : '',
|
||||
'ml' : 'λ',
|
||||
'mli' : 'λ',
|
||||
'mov' : '',
|
||||
'mp3' : '',
|
||||
'mp4' : '',
|
||||
'mpeg' : '',
|
||||
'mpg' : '',
|
||||
'mustache' : '',
|
||||
'ogg' : '',
|
||||
'pdf' : '',
|
||||
'php' : '',
|
||||
'pl' : '',
|
||||
'pm' : '',
|
||||
'png' : '',
|
||||
'psb' : '',
|
||||
'psd' : '',
|
||||
'py' : '',
|
||||
'pyc' : '',
|
||||
'pyd' : '',
|
||||
'pyo' : '',
|
||||
'rar' : '',
|
||||
'rb' : '',
|
||||
'rc' : '',
|
||||
'rlib' : '',
|
||||
'rpm' : '',
|
||||
'rs' : '',
|
||||
'rss' : '',
|
||||
'scala' : '',
|
||||
'scss' : '',
|
||||
'sh' : '',
|
||||
'slim' : '',
|
||||
'sln' : '',
|
||||
'sql' : '',
|
||||
'styl' : '',
|
||||
'suo' : '',
|
||||
't' : '',
|
||||
'tar' : '',
|
||||
'tgz' : '',
|
||||
'ts' : '',
|
||||
'twig' : '',
|
||||
'vim' : '',
|
||||
'vimrc' : '',
|
||||
'wav' : '',
|
||||
'webm' : '',
|
||||
'xml' : '',
|
||||
'xul' : '',
|
||||
'xz' : '',
|
||||
'yml' : '',
|
||||
'zip' : '',
|
||||
}
|
||||
|
||||
dir_node_exact_matches = {
|
||||
# English
|
||||
'.git' : '',
|
||||
'Desktop' : '',
|
||||
'Documents' : '',
|
||||
'Downloads' : '',
|
||||
'Dropbox' : '',
|
||||
'Music' : '',
|
||||
'Pictures' : '',
|
||||
'Public' : '',
|
||||
'Templates' : '',
|
||||
'Videos' : '',
|
||||
# Spanish
|
||||
'Escritorio' : '',
|
||||
'Documentos' : '',
|
||||
'Descargas' : '',
|
||||
'Música' : '',
|
||||
'Imágenes' : '',
|
||||
'Público' : '',
|
||||
'Plantillas' : '',
|
||||
'Vídeos' : '',
|
||||
# French
|
||||
'Bureau' : '',
|
||||
'Documents' : '',
|
||||
'Images' : '',
|
||||
'Musique' : '',
|
||||
'Publique' : '',
|
||||
'Téléchargements' : '',
|
||||
'Vidéos' : '',
|
||||
# Portuguese
|
||||
'Documentos' : '',
|
||||
'Imagens' : '',
|
||||
'Modelos' : '',
|
||||
'Música' : '',
|
||||
'Público' : '',
|
||||
'Vídeos' : '',
|
||||
'Área de trabalho' : '',
|
||||
# Italian
|
||||
'Documenti' : '',
|
||||
'Immagini' : '',
|
||||
'Modelli' : '',
|
||||
'Musica' : '',
|
||||
'Pubblici' : '',
|
||||
'Scaricati' : '',
|
||||
'Scrivania' : '',
|
||||
'Video' : '',
|
||||
# German
|
||||
'Bilder' : '',
|
||||
'Dokumente' : '',
|
||||
'Musik' : '',
|
||||
'Schreibtisch' : '',
|
||||
'Vorlagen' : '',
|
||||
'Öffentlich' : '',
|
||||
}
|
||||
|
||||
file_node_exact_matches = {
|
||||
'.Xdefaults' : '',
|
||||
'.Xresources' : '',
|
||||
'.bashprofile' : '',
|
||||
'.bashrc' : '',
|
||||
'.dmrc' : '',
|
||||
'.ds_store' : '',
|
||||
'.fasd' : '',
|
||||
'.gitconfig' : '',
|
||||
'.gitignore' : '',
|
||||
'.jack-settings' : '',
|
||||
'.mime.types' : '',
|
||||
'.nvidia-settings-rc' : '',
|
||||
'.pam_environment' : '',
|
||||
'.profile' : '',
|
||||
'.recently-used' : '',
|
||||
'.selected_editor' : '',
|
||||
'.vimrc' : '',
|
||||
'.xinputrc' : '',
|
||||
'config' : '',
|
||||
'dropbox' : '',
|
||||
'exact-match-case-sensitive-1.txt' : 'X1',
|
||||
'exact-match-case-sensitive-2' : 'X2',
|
||||
'favicon.ico' : '',
|
||||
'gruntfile.coffee' : '',
|
||||
'gruntfile.js' : '',
|
||||
'gruntfile.ls' : '',
|
||||
'gulpfile.coffee' : '',
|
||||
'gulpfile.js' : '',
|
||||
'gulpfile.ls' : '',
|
||||
'ini' : '',
|
||||
'ledger' : '',
|
||||
'license' : '',
|
||||
'mimeapps.list' : '',
|
||||
'node_modules' : '',
|
||||
'procfile' : '',
|
||||
'react.jsx' : '',
|
||||
'user-dirs.dirs' : '',
|
||||
}
|
||||
|
||||
def devicon(file):
|
||||
if file.is_directory: return dir_node_exact_matches.get(file.relative_path, '')
|
||||
return file_node_exact_matches.get(file.relative_path, file_node_extensions.get(file.extension, ''))
|
||||
19
.config/ranger/plugins/devicons_linemode.py
Executable file
19
.config/ranger/plugins/devicons_linemode.py
Executable file
@ -0,0 +1,19 @@
|
||||
import ranger.api
|
||||
from ranger.core.linemode import LinemodeBase
|
||||
from plugins.devicons import *
|
||||
|
||||
@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
|
||||
@ -518,3 +518,6 @@ map yta console shell youtube-dl -xic%space
|
||||
|
||||
# Source shortcuts
|
||||
source ~/.config/ranger/shortcuts.conf
|
||||
# a plugin that adds file glyphs / icon support to Ranger:
|
||||
# https://github.com/alexanderjeurissen/ranger_devicons
|
||||
default_linemode devicons
|
||||
|
||||
@ -0,0 +1,59 @@
|
||||
map gh cd ~/
|
||||
map th tab_new ~/
|
||||
map mh shell mv -v %s ~/
|
||||
map Yh shell cp -rv %s ~/
|
||||
map gd cd ~/Documents
|
||||
map td tab_new ~/Documents
|
||||
map md shell mv -v %s ~/Documents
|
||||
map Yd shell cp -rv %s ~/Documents
|
||||
map gD cd ~/Downloads
|
||||
map tD tab_new ~/Downloads
|
||||
map mD shell mv -v %s ~/Downloads
|
||||
map YD shell cp -rv %s ~/Downloads
|
||||
map gm cd ~/Music
|
||||
map tm tab_new ~/Music
|
||||
map mm shell mv -v %s ~/Music
|
||||
map Ym shell cp -rv %s ~/Music
|
||||
map gpp cd ~/Pictures
|
||||
map tpp tab_new ~/Pictures
|
||||
map mpp shell mv -v %s ~/Pictures
|
||||
map Ypp shell cp -rv %s ~/Pictures
|
||||
map gvv cd ~/Videos
|
||||
map tvv tab_new ~/Videos
|
||||
map mvv shell mv -v %s ~/Videos
|
||||
map Yvv shell cp -rv %s ~/Videos
|
||||
map gcf cd ~/.config
|
||||
map tcf tab_new ~/.config
|
||||
map mcf shell mv -v %s ~/.config
|
||||
map Ycf shell cp -rv %s ~/.config
|
||||
map gsc cd ~/.scripts
|
||||
map tsc tab_new ~/.scripts
|
||||
map msc shell mv -v %s ~/.scripts
|
||||
map Ysc shell cp -rv %s ~/.scripts
|
||||
map gmn cd /mnt
|
||||
map tmn tab_new /mnt
|
||||
map mmn shell mv -v %s /mnt
|
||||
map Ymn shell cp -rv %s /mnt
|
||||
map bf shell $EDITOR ~/.bmfiles
|
||||
map bd shell $EDITOR ~/.bmdirs
|
||||
map cfb shell $EDITOR ~/.bashrc
|
||||
map cfz shell $EDITOR ~/.zshrc
|
||||
map cfv shell $EDITOR ~/.vimrc
|
||||
map cfr shell $EDITOR ~/.config/ranger/rc.conf
|
||||
map cfi shell $EDITOR ~/.config/i3/config
|
||||
map cfib shell $EDITOR ~/.config/i3blocks/config
|
||||
map cfq shell $EDITOR ~/.config/qutebrowser/config.py
|
||||
map cfm shell $EDITOR ~/.config/mutt/muttrc
|
||||
map cft shell $EDITOR ~/.config/termite/config
|
||||
map eb shell $EDITOR ~/Documents/LaTeX/uni.bib
|
||||
map cv shell $EDITOR ~/Documents/LaTeX/cv.tex
|
||||
map cfp shell $EDITOR ~/.config/polybar/config
|
||||
map cfd shell $EDITOR ~/.Xdefaults
|
||||
map cfu shell $EDITOR ~/.config/newsboat/urls
|
||||
map cfn shell $EDITOR ~/.config/newsboat/config
|
||||
map cfA shell $EDITOR ~/.asoundrc
|
||||
map cfmb shell $EDITOR ~/.config/ncmpcpp/bindings
|
||||
map cfmc shell $EDITOR ~/.config/ncmpcpp/config
|
||||
map cfmpd shell $EDITOR ~/.config/mpd/mpd.conf
|
||||
map cfM shell $EDITOR ~/.config/mpd/mpd.conf
|
||||
map er shell $EDITOR ~/.referbib
|
||||
104
.gitignore
vendored
Normal file
104
.gitignore
vendored
Normal file
@ -0,0 +1,104 @@
|
||||
vmware
|
||||
nokia
|
||||
Nextcloud
|
||||
mnt
|
||||
Media
|
||||
iso
|
||||
IdeaProjects
|
||||
Dropbox
|
||||
Downloads
|
||||
Development
|
||||
AndroidStudioProjects
|
||||
Android
|
||||
.zsh*
|
||||
.z
|
||||
.zcompdump-think-5.6.2
|
||||
.weatherreport
|
||||
.w3m
|
||||
.vscode-oss
|
||||
.vnc
|
||||
.vmware
|
||||
.virtualenvs
|
||||
.ssh
|
||||
.spacemacs*
|
||||
.shortcuts
|
||||
.python_history*
|
||||
.putty
|
||||
.pub-cache
|
||||
.profile.orig
|
||||
.pki
|
||||
.pip
|
||||
.pacupgrnum
|
||||
.oh-my-zsh
|
||||
.npm
|
||||
.ncmpcpp
|
||||
.mysql
|
||||
.mozilla
|
||||
.local/share/*
|
||||
!.local/share/applications/
|
||||
.lesshst
|
||||
.java
|
||||
.gtk-bookmarks
|
||||
.gtkrc-2.0
|
||||
.gnupg*
|
||||
.gradle
|
||||
.gitkraken
|
||||
.gitignore_global
|
||||
.gitconfig
|
||||
.flutter
|
||||
.fltk
|
||||
.fehbg
|
||||
.fasd
|
||||
.emacs.d
|
||||
.emulator_console_auth_token
|
||||
.esd_auth
|
||||
.dart
|
||||
.dartServer
|
||||
.dotfiles
|
||||
.dropbox
|
||||
.cert
|
||||
.cache
|
||||
.bashrc.bak
|
||||
.bash_logout
|
||||
.bash_history
|
||||
.ansible_galaxy
|
||||
.ansible
|
||||
.android
|
||||
.AndroidStudio3.2
|
||||
.IntelliJIdea2018.3
|
||||
.Xauthority
|
||||
.viminfo
|
||||
.config/Android\ Open\ Source\ Project/
|
||||
.config/autostart
|
||||
.config/clipit
|
||||
.config/Code\ -\ OSS/
|
||||
.config/configstore
|
||||
.config/dconf
|
||||
.config/gconf
|
||||
.config/GitKraken
|
||||
.config/google-chrome
|
||||
.config/gwakeonlan
|
||||
.config/htop
|
||||
.config/libvirt
|
||||
.config/menus
|
||||
.config/Nextcloud
|
||||
.config/nitrogen
|
||||
.config/procps
|
||||
.config/pulse
|
||||
.config/spotify
|
||||
.config/VirtualBox
|
||||
.config/wal
|
||||
.config/yay
|
||||
.config/youtube-viewer
|
||||
.config/gtk-3.0/bookmarks
|
||||
.config/mpd/database
|
||||
.config/mpd/log
|
||||
.config/mpd/pid
|
||||
.config/mpd/state
|
||||
.config/mpd/sticker.sql
|
||||
.config/filezilla/
|
||||
.config/vifm
|
||||
.calcurse/apts
|
||||
.calcurse/notes
|
||||
.calcurse/todo
|
||||
.calcurse/.calcurse.pid
|
||||
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
[submodule ".i3blocks-contrib"]
|
||||
path = .i3blocks-contrib
|
||||
url = git@github.com:vivien/i3blocks-contrib.git
|
||||
1
.i3blocks-contrib
Submodule
1
.i3blocks-contrib
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 345a83876c08550c1d795ce9cdbf0d33226d6949
|
||||
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Docs
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=aohghmighlieiainnegkcijnfilokake
|
||||
Icon=chrome-aohghmighlieiainnegkcijnfilokake-Default
|
||||
NoDisplay=true
|
||||
StartupWMClass=crx_aohghmighlieiainnegkcijnfilokake
|
||||
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Google Drive
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=apdfllckaahabafndbhieahigkjlhalf
|
||||
Icon=chrome-apdfllckaahabafndbhieahigkjlhalf-Default
|
||||
NoDisplay=true
|
||||
StartupWMClass=crx_apdfllckaahabafndbhieahigkjlhalf
|
||||
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=YouTube
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=blpcfgokakmgnkcojhhkbfbldkacnbeo
|
||||
Icon=chrome-blpcfgokakmgnkcojhhkbfbldkacnbeo-Default
|
||||
NoDisplay=true
|
||||
StartupWMClass=crx_blpcfgokakmgnkcojhhkbfbldkacnbeo
|
||||
@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Postman
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=fhbjgbiflinjbdggehcddcbncdddomop
|
||||
Icon=chrome-fhbjgbiflinjbdggehcddcbncdddomop-Default
|
||||
StartupWMClass=crx_fhbjgbiflinjbdggehcddcbncdddomop
|
||||
@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Authy
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=gaedmjdfmmahhbjefcbgaolhhanlaolb
|
||||
Icon=chrome-gaedmjdfmmahhbjefcbgaolhhanlaolb-Default
|
||||
StartupWMClass=crx_gaedmjdfmmahhbjefcbgaolhhanlaolb
|
||||
@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Chrome Remote Desktop
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=gbchcmhmhahfdphkhkmpfmihenigjmpp
|
||||
Icon=chrome-gbchcmhmhahfdphkhkmpfmihenigjmpp-Default
|
||||
StartupWMClass=crx_gbchcmhmhahfdphkhkmpfmihenigjmpp
|
||||
@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Google Keep - notes and lists
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=hmjkmjkepdijhoojdojkdfohbdgmmhki
|
||||
Icon=chrome-hmjkmjkepdijhoojdojkdfohbdgmmhki-Default
|
||||
StartupWMClass=crx_hmjkmjkepdijhoojdojkdfohbdgmmhki
|
||||
@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Google Hangouts
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=knipolnnllmklapflnccelgolnpehhpl
|
||||
Icon=chrome-knipolnnllmklapflnccelgolnpehhpl-Default
|
||||
StartupWMClass=crx_knipolnnllmklapflnccelgolnpehhpl
|
||||
@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Wunderlist for Chrome
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=ojcflmmmcfpacggndoaaflkmcoblhnbh
|
||||
Icon=chrome-ojcflmmmcfpacggndoaaflkmcoblhnbh-Default
|
||||
StartupWMClass=crx_ojcflmmmcfpacggndoaaflkmcoblhnbh
|
||||
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Name=Gmail
|
||||
Exec=/opt/google/chrome/google-chrome --profile-directory=Default --app-id=pjkljhegncpnkpknbcohdijeoejaedia
|
||||
Icon=chrome-pjkljhegncpnkpknbcohdijeoejaedia-Default
|
||||
NoDisplay=true
|
||||
StartupWMClass=crx_pjkljhegncpnkpknbcohdijeoejaedia
|
||||
0
.local/share/applications/mimeapps.list
Normal file
0
.local/share/applications/mimeapps.list
Normal file
8
.profile
8
.profile
@ -5,13 +5,14 @@
|
||||
export PATH="$PATH:$(du "$HOME/.scripts/" | cut -f2 | tr '\n' ':')"
|
||||
export EDITOR="vim"
|
||||
export TERMINAL="st"
|
||||
export BROWSER="firefox"
|
||||
export BROWSER="google-chrome-stable"
|
||||
export READER="zathura"
|
||||
export FILE="ranger"
|
||||
export BIB="$HOME/Documents/LaTeX/uni.bib"
|
||||
export REFER="$HOME/.referbib"
|
||||
export SUDO_ASKPASS="$HOME/.scripts/tools/dmenupass"
|
||||
# export PIX="$HOME/.scripts/pix"
|
||||
export PIX="$HOME/.pix/"
|
||||
export SUDO_ASKPASS="$HOME/.scripts/tools/dmenupass"
|
||||
|
||||
# less/man colors
|
||||
export LESS=-R
|
||||
@ -25,7 +26,8 @@ export LESS_TERMCAP_ue=$'\E[0m' # reset underline
|
||||
|
||||
[ ! -f ~/.shortcuts ] && shortcuts >/dev/null 2>&1
|
||||
|
||||
echo "$0" | grep "bash$" >/dev/null && [ -f ~/.bashrc ] && source "$HOME/.bashrc"
|
||||
[ -f ~/.bashrc ] && source "$HOME/.bashrc"
|
||||
# echo "$0" | grep "bash$" >/dev/null && [ -f ~/.bashrc ] && source "$HOME/.bashrc"
|
||||
|
||||
# Start graphical server if i3 not already running.
|
||||
[ "$(tty)" = "/dev/tty1" ] && ! pgrep -x i3 >/dev/null && exec startx
|
||||
|
||||
112
.scripts/statusbar/bandwidth
Executable file
112
.scripts/statusbar/bandwidth
Executable file
@ -0,0 +1,112 @@
|
||||
#!/bin/bash
|
||||
# Copyright (C) 2012 Stefan Breunig <stefan+measure-net-speed@mathphys.fsk.uni-heidelberg.de>
|
||||
# Copyright (C) 2014 kaueraal
|
||||
# Copyright (C) 2015 Thiago Perrotta <perrotta dot thiago at poli dot ufrj dot br>
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
# Get custom IN and OUT labels if provided by command line arguments
|
||||
while [[ $# -gt 1 ]]; do
|
||||
key="$1"
|
||||
case "$key" in
|
||||
-i|--inlabel)
|
||||
INLABEL="$2"
|
||||
shift;;
|
||||
-o|--outlabel)
|
||||
OUTLABEL="$2"
|
||||
shift;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
[[ -z $INLABEL ]] && INLABEL="IN "
|
||||
[[ -z $OUTLABEL ]] && OUTLABEL="OUT "
|
||||
|
||||
# Use the provided interface, otherwise the device used for the default route.
|
||||
if [[ -z $INTERFACE ]] && [[ -n $BLOCK_INSTANCE ]]; then
|
||||
INTERFACE=$BLOCK_INSTANCE
|
||||
elif [[ -z $INTERFACE ]]; then
|
||||
INTERFACE=$(ip route | awk '/^default/ { print $5 ; exit }')
|
||||
fi
|
||||
|
||||
# Exit if there is no default route
|
||||
[[ -z "$INTERFACE" ]] && exit
|
||||
|
||||
# Issue #36 compliant.
|
||||
if ! [ -e "/sys/class/net/${INTERFACE}/operstate" ] || \
|
||||
(! [ "$TREAT_UNKNOWN_AS_UP" = "1" ] &&
|
||||
! [ "`cat /sys/class/net/${INTERFACE}/operstate`" = "up" ])
|
||||
then
|
||||
echo "$INTERFACE down"
|
||||
echo "$INTERFACE down"
|
||||
echo "#FF0000"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# path to store the old results in
|
||||
path="/dev/shm/$(basename $0)-${INTERFACE}"
|
||||
|
||||
# grabbing data for each adapter.
|
||||
read rx < "/sys/class/net/${INTERFACE}/statistics/rx_bytes"
|
||||
read tx < "/sys/class/net/${INTERFACE}/statistics/tx_bytes"
|
||||
|
||||
# get time
|
||||
time=$(date +%s)
|
||||
|
||||
# write current data if file does not exist. Do not exit, this will cause
|
||||
# problems if this file is sourced instead of executed as another process.
|
||||
if ! [[ -f "${path}" ]]; then
|
||||
echo "${time} ${rx} ${tx}" > "${path}"
|
||||
chmod 0666 "${path}"
|
||||
fi
|
||||
|
||||
# read previous state and update data storage
|
||||
read old < "${path}"
|
||||
echo "${time} ${rx} ${tx}" > "${path}"
|
||||
|
||||
# parse old data and calc time passed
|
||||
old=(${old//;/ })
|
||||
time_diff=$(( $time - ${old[0]} ))
|
||||
|
||||
# sanity check: has a positive amount of time passed
|
||||
[[ "${time_diff}" -gt 0 ]] || exit
|
||||
|
||||
# calc bytes transferred, and their rate in byte/s
|
||||
rx_diff=$(( $rx - ${old[1]} ))
|
||||
tx_diff=$(( $tx - ${old[2]} ))
|
||||
rx_rate=$(( $rx_diff / $time_diff ))
|
||||
tx_rate=$(( $tx_diff / $time_diff ))
|
||||
|
||||
# shift by 10 bytes to get KiB/s. If the value is larger than
|
||||
# 1024^2 = 1048576, then display MiB/s instead
|
||||
|
||||
# incoming
|
||||
echo -n "$INLABEL"
|
||||
rx_kib=$(( $rx_rate >> 10 ))
|
||||
if hash bc 2>/dev/null && [[ "$rx_rate" -gt 1048576 ]]; then
|
||||
printf '%sM' "`echo "scale=1; $rx_kib / 1024" | bc`"
|
||||
else
|
||||
echo -n "${rx_kib}K"
|
||||
fi
|
||||
|
||||
echo -n " "
|
||||
|
||||
# outgoing
|
||||
echo -n "$OUTLABEL"
|
||||
tx_kib=$(( $tx_rate >> 10 ))
|
||||
if hash bc 2>/dev/null && [[ "$tx_rate" -gt 1048576 ]]; then
|
||||
printf '%sM' "`echo "scale=1; $tx_kib / 1024" | bc`"
|
||||
else
|
||||
echo -n "${tx_kib}K"
|
||||
fi
|
||||
104
.scripts/statusbar/bandwidth3
Executable file
104
.scripts/statusbar/bandwidth3
Executable file
@ -0,0 +1,104 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# Copyright (C) 2015 James Murphy
|
||||
# Licensed under the terms of the GNU GPL v2 only.
|
||||
#
|
||||
# i3blocks blocklet script to monitor bandwidth usage
|
||||
|
||||
iface="${BLOCK_INSTANCE}"
|
||||
iface="${IFACE:-$iface}"
|
||||
dt="${DT:-3}"
|
||||
unit="${UNIT:-MB}"
|
||||
LABEL=" "
|
||||
printf_command="${PRINTF_COMMAND:-"printf \"${LABEL}%-5.1f/%5.1f %s/s\\n\", rx, wx, unit;"}"
|
||||
|
||||
function default_interface {
|
||||
ip route | awk '/^default via/ {print $5; exit}'
|
||||
}
|
||||
|
||||
function check_proc_net_dev {
|
||||
if [ ! -f "/proc/net/dev" ]; then
|
||||
echo "/proc/net/dev not found"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
function list_interfaces {
|
||||
check_proc_net_dev
|
||||
echo "Interfaces in /proc/net/dev:"
|
||||
grep -o "^[^:]\\+:" /proc/net/dev | tr -d " :"
|
||||
}
|
||||
|
||||
while getopts i:t:u:p:lh opt; do
|
||||
case "$opt" in
|
||||
i) iface="$OPTARG" ;;
|
||||
t) dt="$OPTARG" ;;
|
||||
u) unit="$OPTARG" ;;
|
||||
p) printf_command="$OPTARG" ;;
|
||||
l) list_interfaces && exit 0 ;;
|
||||
h) printf \
|
||||
"Usage: bandwidth3 [-i interface] [-t time] [-u unit] [-p printf_command] [-l] [-h]
|
||||
Options:
|
||||
-i\tNetwork interface to measure. Default determined using \`ip route\`.
|
||||
-t\tTime interval in seconds between measurements. Default: 3
|
||||
-u\tUnits to measure bytes in. Default: Mb
|
||||
\tAllowed units: Kb, KB, Mb, MB, Gb, GB, Tb, TB
|
||||
\tUnits may have optional it/its/yte/ytes on the end, e.g. Mbits, KByte
|
||||
-p\tAwk command to be called after a measurement is made.
|
||||
\tDefault: printf \"<span font='FontAwesome'> </span>%%-5.1f/%%5.1f %%s/s\\\\n\", rx, wx, unit;
|
||||
\tExposed variables: rx, wx, tx, unit, iface
|
||||
-l\tList available interfaces in /proc/net/dev
|
||||
-h\tShow this help text
|
||||
" && exit 0;;
|
||||
esac
|
||||
done
|
||||
|
||||
check_proc_net_dev
|
||||
|
||||
iface="${iface:-$(default_interface)}"
|
||||
while [ -z "$iface" ]; do
|
||||
echo No default interface
|
||||
sleep "$dt"
|
||||
iface=$(default_interface)
|
||||
done
|
||||
|
||||
case "$unit" in
|
||||
Kb|Kbit|Kbits) bytes_per_unit=$((1024 / 8));;
|
||||
KB|KByte|KBytes) bytes_per_unit=$((1024));;
|
||||
Mb|Mbit|Mbits) bytes_per_unit=$((1024 * 1024 / 8));;
|
||||
MB|MByte|MBytes) bytes_per_unit=$((1024 * 1024));;
|
||||
Gb|Gbit|Gbits) bytes_per_unit=$((1024 * 1024 * 1024 / 8));;
|
||||
GB|GByte|GBytes) bytes_per_unit=$((1024 * 1024 * 1024));;
|
||||
Tb|Tbit|Tbits) bytes_per_unit=$((1024 * 1024 * 1024 * 1024 / 8));;
|
||||
TB|TByte|TBytes) bytes_per_unit=$((1024 * 1024 * 1024 * 1024));;
|
||||
*) echo Bad unit "$unit" && exit 1;;
|
||||
esac
|
||||
|
||||
scalar=$((bytes_per_unit * dt))
|
||||
init_line=$(cat /proc/net/dev | grep "^[ ]*$iface:")
|
||||
if [ -z "$init_line" ]; then
|
||||
echo Interface not found in /proc/net/dev: "$iface"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
init_received=$(awk '{print $2}' <<< $init_line)
|
||||
init_sent=$(awk '{print $10}' <<< $init_line)
|
||||
|
||||
(while true; do cat /proc/net/dev; sleep "$dt"; done) |\
|
||||
stdbuf -oL grep "^[ ]*$iface:" |\
|
||||
awk -v scalar="$scalar" -v unit="$unit" -v iface="$iface" '
|
||||
BEGIN{old_received='"$init_received"';old_sent='"$init_sent"'}
|
||||
{
|
||||
received=$2
|
||||
sent=$10
|
||||
rx=(received-old_received)/scalar;
|
||||
wx=(sent-old_sent)/scalar;
|
||||
tx=rx+wr;
|
||||
old_received=received;
|
||||
old_sent=sent;
|
||||
if(rx >= 0 && wx >= 0){
|
||||
'"$printf_command"';
|
||||
fflush(stdout);
|
||||
}
|
||||
}
|
||||
'
|
||||
@ -11,8 +11,8 @@ case $BLOCK_BUTTON in
|
||||
" ;;
|
||||
esac
|
||||
|
||||
[ "$(cat /sys/class/net/w*/operstate)" = 'down' ] && wifiicon="📡"
|
||||
[ "$(cat /sys/class/net/w*/operstate)" = 'down' ] && wifiicon=""
|
||||
|
||||
[ ! -n "${wifiicon+var}" ] && wifiicon=$(grep "^\s*w" /proc/net/wireless | awk '{ print "📶", int($3 * 100 / 70) "%" }')
|
||||
[ ! -n "${wifiicon+var}" ] && wifiicon=$(grep "^\s*w" /proc/net/wireless | awk '{ print "", int($3 * 100 / 70) "%" }')
|
||||
|
||||
printf "%s %s" "$wifiicon" "$(cat /sys/class/net/e*/operstate | sed "s/down/❎/;s/up/🌐/")"
|
||||
printf "%s %s" "$wifiicon" "$(cat /sys/class/net/e*/operstate | sed "s/down//;s/up//")"
|
||||
|
||||
41
.scripts/statusbar/kbdd_layout
Executable file
41
.scripts/statusbar/kbdd_layout
Executable file
@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# kbdd_layout is a script that parse layout with kbdd in real time
|
||||
# Copyright (C) 2016 Anton Karmanov <starcom24@gmail.com>
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or any
|
||||
# later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
# In case user is restarting block after making layout changes
|
||||
# e.g. via setxkbmap, reload kbdd
|
||||
killall kbdd 2>/dev/null
|
||||
kbdd >/dev/null || exit 1
|
||||
|
||||
# Get initial state of layout
|
||||
N=$( dbus-send --print-reply=literal --dest=ru.gentoo.KbddService\
|
||||
/ru/gentoo/KbddService ru.gentoo.kbdd.getCurrentLayout 2>/dev/null |\
|
||||
sed -un 's/^.*uint32 //p' )
|
||||
|
||||
# In case dbus service wasn't available yet, poll until service is ready
|
||||
while [[ -z "$N" ]]; do
|
||||
sleep .1
|
||||
N=$( dbus-send --print-reply=literal --dest=ru.gentoo.KbddService\
|
||||
/ru/gentoo/KbddService ru.gentoo.kbdd.getCurrentLayout 2>/dev/null |\
|
||||
sed -un 's/^.*uint32 //p' )
|
||||
done
|
||||
echo $( dbus-send --print-reply=literal --dest=ru.gentoo.KbddService \
|
||||
/ru/gentoo/KbddService ru.gentoo.kbdd.getLayoutName uint32:$N )
|
||||
|
||||
# Parse dbus output
|
||||
dbus-monitor "interface='ru.gentoo.kbdd',member='layoutNameChanged'" |\
|
||||
sed -un '0~2p' | sed -un 's:.*string "\(.*\)".*:\1:p' | sed -u '/:/d'
|
||||
4
.scripts/statusbar/openvpn
Executable file
4
.scripts/statusbar/openvpn
Executable file
@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
result=$(nmcli -t -f type,state,connection d | egrep "^(tun|tap):connected" | awk -F':' '{ print $3 }')
|
||||
[[ -z $result ]] || echo " $result"
|
||||
# [[ -z $result ]] && echo ' N/A' || echo " $result"
|
||||
@ -11,16 +11,16 @@ case $BLOCK_BUTTON in
|
||||
- Scroll to change."
|
||||
esac
|
||||
|
||||
[ "$(pulsemixer --get-mute)" = "1" ] && printf "🔇\\n" && exit
|
||||
[ "$(pulsemixer --get-mute)" = "1" ] && printf "\\n" && exit
|
||||
|
||||
vol=$(pulsemixer --get-volume | awk '{print $1}')
|
||||
|
||||
if [ "$vol" -gt "70" ]; then
|
||||
icon="🔊"
|
||||
icon=""
|
||||
elif [ "$vol" -lt "30" ]; then
|
||||
icon="🔈"
|
||||
icon=""
|
||||
else
|
||||
icon="🔉"
|
||||
icon=""
|
||||
fi
|
||||
|
||||
printf "%s %s%%\\n" "$icon" "$vol"
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
#!/bin/sh
|
||||
[ "$(stat -c %y /tmp/weatherreport | awk '{print $1}')" != "$(date '+%Y-%m-%d')" ] && getforecast
|
||||
[ "$(stat -c %y /tmp/weatherreport | awk '{print $1}')" != "$(date '+%Y-%m-%d')" ] && getforecast Athens
|
||||
|
||||
case $BLOCK_BUTTON in
|
||||
1) $TERMINAL -e less -S /tmp/weatherreport ;;
|
||||
|
||||
15
.scripts/statusbar/weather.bak
Executable file
15
.scripts/statusbar/weather.bak
Executable file
@ -0,0 +1,15 @@
|
||||
#!/bin/sh
|
||||
[ "$(stat -c %y .weatherreport | awk '{print $1}')" != "$(date '+%Y-%m-%d')" ] && getforecast Athens
|
||||
|
||||
case $BLOCK_BUTTON in
|
||||
1) $TERMINAL -e less -S ~/.weatherreport ;;
|
||||
3) pgrep -x dunst >/dev/null && notify-send "<b>🌈 Weather module:</b>
|
||||
- Click for wttr.in forecast.
|
||||
☔: Chance of rain/snow
|
||||
❄: Daily low
|
||||
🌞: Daily high" ;;
|
||||
esac
|
||||
|
||||
printf "%s" "$(sed '16q;d' ~/.weatherreport | grep -wo "[0-9]*%" | sort -n | sed -e '$!d' | sed -e "s/^/☔ /g" | tr -d '\n')"
|
||||
|
||||
sed '13q;d' ~/.weatherreport | grep -o "m\\(-\\)*[0-9]\\+" | sort -n -t 'm' -k 2n | sed -e 1b -e '$!d' | tr '\n|m' ' ' | awk '{print " ❄️",$1 "°","🌞",$2 "°"}'
|
||||
177
.tmux.conf
177
.tmux.conf
@ -1,177 +0,0 @@
|
||||
##############################
|
||||
# _
|
||||
# | |_ _ __ ___ _ ___ __
|
||||
# | __| '_ ` _ \| | | \ \/ /
|
||||
# | |_| | | | | | |_| |> <
|
||||
# \__|_| |_| |_|\__,_/_/\_\
|
||||
#
|
||||
#############################
|
||||
#
|
||||
# COPY AND PASTE
|
||||
# http://robots.thoughtbot.com/tmux-copy-paste-on-os-x-a-better-future
|
||||
#
|
||||
# Use vim keybindings in copy mode
|
||||
setw -g mode-keys vi
|
||||
|
||||
# Setup 'v' to begin selection as in Vim
|
||||
#bind-key -t vi-copy v begin-selection
|
||||
#bind-key -t vi-copy y copy-pipe "reattach-to-user-namespace pbcopy"
|
||||
|
||||
# Update default binding of `Enter` to also use copy-pipe
|
||||
# unbind -t vi-copy Enter
|
||||
# bind-key -t vi-copy Enter copy-pipe "reattach-to-user-namespace pbcopy"
|
||||
#
|
||||
############################################################################
|
||||
############################################################################
|
||||
# Reset Prefix
|
||||
############################################################################
|
||||
set -g prefix C-a
|
||||
bind-key a send-prefix # for nested tmux sessions
|
||||
|
||||
############################################################################
|
||||
# Global options
|
||||
############################################################################
|
||||
# large history
|
||||
set-option -g history-limit 10000
|
||||
|
||||
# colors
|
||||
setw -g mode-bg black
|
||||
set-option -g default-terminal "screen-256color" #"xterm-256color" # "screen-256color"
|
||||
set-option -g pane-active-border-fg green
|
||||
|
||||
# utf8 support
|
||||
#set-window-option -g utf8 on
|
||||
|
||||
|
||||
# basic settings
|
||||
set-window-option -g xterm-keys on # for vim
|
||||
set-window-option -g mode-keys vi # vi key
|
||||
set-window-option -g monitor-activity on
|
||||
set-window-option -g window-status-current-fg white
|
||||
setw -g window-status-current-attr reverse
|
||||
|
||||
# Automatically set window title
|
||||
setw -g automatic-rename
|
||||
|
||||
# use mouse # More on mouse support http://floriancrouzat.net/2010/07/run-tmux-with-mouse-support-in-mac-os-x-terminal-app/
|
||||
#setw -g mode-mouse on
|
||||
#setw -g mouse-resize-pane on
|
||||
#set -g mouse-select-window on
|
||||
#set -g mouse-select-pane on
|
||||
set -g mouse on
|
||||
set -g history-limit 30000
|
||||
set -g terminal-overrides 'xterm*:smcup@:rmcup@'
|
||||
|
||||
# vi movement keys
|
||||
# set-option -g status-keys vi
|
||||
|
||||
############################################################################
|
||||
# Status Bar
|
||||
############################################################################
|
||||
#set-option -g status-utf8 on
|
||||
set-option -g status-justify right
|
||||
set-option -g status-bg black # colour213 # pink
|
||||
set-option -g status-fg cyan
|
||||
set-option -g status-interval 5
|
||||
set-option -g status-left-length 30
|
||||
set-option -g status-left '#[fg=magenta]» #[fg=blue,bold]#T#[default]'
|
||||
set-option -g status-right '#[fg=red,bold][[ #(git branch) branch ]] #[fg=cyan]»» #[fg=blue,bold]###S #[fg=magenta]%R %m-%d#(acpi | cut -d ',' -f 2)#[default]'
|
||||
set-option -g visual-activity on
|
||||
|
||||
# Titles (window number, program name, active (or not)
|
||||
set-option -g set-titles on
|
||||
set-option -g set-titles-string '#H:#S.#I.#P #W #T'
|
||||
|
||||
|
||||
############################################################################
|
||||
# Unbindings
|
||||
############################################################################
|
||||
#unbind [ # copy mode bound to escape key
|
||||
unbind j
|
||||
unbind C-b # unbind default leader key
|
||||
unbind '"' # unbind horizontal split
|
||||
unbind % # unbind vertical split
|
||||
|
||||
|
||||
############################################################################
|
||||
# Bindings
|
||||
############################################################################
|
||||
# reload tmux conf
|
||||
bind-key r source-file ~/.tmux.conf
|
||||
|
||||
#bind Escape copy-mode
|
||||
|
||||
# new split in current pane (horizontal / vertical)
|
||||
bind-key c split-window -v # split pane horizontally
|
||||
bind-key v split-window -h # split pane vertically
|
||||
|
||||
# list panes
|
||||
bind-key Space list-panes
|
||||
|
||||
# break-pane
|
||||
bind-key Enter break-pane
|
||||
|
||||
# join-pane [-dhv] [-l size | -p percentage] [-s src-pane]
|
||||
# [-t:dst-window.dst-pane] (destination window (dot) destination pane
|
||||
# (alias: joinp)
|
||||
#
|
||||
#bind C-j command-prompt "joinp"
|
||||
#bind C-j command-prompt "join-pane"
|
||||
#bind-key j command-prompt "join-pane -s '%%'"
|
||||
#bind-key j command-prompt "joinp -t:0"
|
||||
bind-key Space command-prompt "joinp -t:%%" # %% = prompt for window.pane [-V|H] # vert|hor split
|
||||
|
||||
#previous pane
|
||||
bind-key -n C-up prev
|
||||
bind-key -n C-left prev
|
||||
|
||||
#next pane
|
||||
bind-key -n C-right next
|
||||
bind-key -n C-down next
|
||||
|
||||
############################################################################
|
||||
# windows
|
||||
############################################################################
|
||||
set-window-option -g window-status-current-bg red
|
||||
bind C-j previous-window
|
||||
bind C-k next-window
|
||||
bind-key C-a last-window # C-a C-a for last active window
|
||||
bind A command-prompt "rename-window %%"
|
||||
# By default, all windows in a session are constrained to the size of the
|
||||
# smallest client connected to that session,
|
||||
# even if both clients are looking at different windows.
|
||||
# It seems that in this particular case, Screen has the better default
|
||||
# where a window is only constrained in size if a smaller client
|
||||
# is actively looking at it.
|
||||
setw -g aggressive-resize on
|
||||
|
||||
############################################################################
|
||||
# panes
|
||||
############################################################################
|
||||
# Navigation ---------------------------------------------------------------
|
||||
# use the vim motion keys to move between panes
|
||||
bind-key h select-pane -L
|
||||
bind-key j select-pane -D
|
||||
bind-key k select-pane -U
|
||||
bind-key l select-pane -R
|
||||
|
||||
# Resizing ---------------------------------------------------------------
|
||||
bind-key C-h resize-pane -L
|
||||
bind-key C-j resize-pane -D
|
||||
bind-key C-k resize-pane -U
|
||||
bind-key C-l resize-pane -R
|
||||
|
||||
# use vim motion keys while in copy mode
|
||||
setw -g mode-keys vi
|
||||
|
||||
############################################################################
|
||||
# layouts
|
||||
############################################################################
|
||||
bind o select-layout "active-only"
|
||||
bind M-- select-layout "even-vertical"
|
||||
bind M-| select-layout "even-horizontal"
|
||||
bind M-r rotate-window
|
||||
|
||||
|
||||
# focus on first window
|
||||
# select-window -t 0
|
||||
1
.tmux.conf
Symbolic link
1
.tmux.conf
Symbolic link
@ -0,0 +1 @@
|
||||
.dotfiles/tmux.conf
|
||||
File diff suppressed because it is too large
Load Diff
21
.xinitrc
21
.xinitrc
@ -1,8 +1,29 @@
|
||||
#!/bin/sh
|
||||
|
||||
# fixes problems with mysql-workbench
|
||||
# and maybe other problems
|
||||
# eval $(/usr/bin/gnome-keyring-daemon --start --components=gpg,pkcs11,secrets,ssh)
|
||||
# export $(gnome-keyring-daemon --start --components=pkcs11,secrets,ssh,gpg)
|
||||
# dbus-update-activation-environment --systemd DISPLAY
|
||||
# END
|
||||
|
||||
# fixes problems with mysql-workbench
|
||||
# and maybe other problems
|
||||
dbus-update-activation-environment --systemd DISPLAY
|
||||
eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)
|
||||
export SSH_AUTH_SOCK
|
||||
# END
|
||||
|
||||
[ -f ~/.Xmodmap ] && xmodmap ~/.Xmodmap
|
||||
[ -f ~/.Xresources ] && xrdb -merge ~/.Xresources
|
||||
|
||||
setxkbmap -model extd -layout gb,gr -option grp:alt_shift_toggle
|
||||
|
||||
xset r rate 200 50
|
||||
|
||||
# from arch wiki for thinkpad x230
|
||||
xrandr --dpi 125.37
|
||||
|
||||
# cat ~/.config/i3/config ~/.config/i3/config.custom > ~/.config/i3/config.combined
|
||||
|
||||
exec i3
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user