├── .colors ├── dark └── default ├── .gitignore ├── README.md ├── bspwm └── bspwmrc ├── panel ├── colors ├── config ├── panel └── top ├── scrot.png ├── sxhkd └── sxhkdrc └── urxvt └── .Xresources /.colors/dark: -------------------------------------------------------------------------------- 1 | *background: #333333 2 | *foreground: #f3f3f3 3 | 4 | !black 5 | *color0: #666666 6 | *color8: #666666 7 | 8 | !red 9 | *color1: #dc322f 10 | *color9: #cb4b16 11 | 12 | !green 13 | *color2: #859900 14 | *color10: #586e75 15 | 16 | !yellow 17 | *color3: #b58900 18 | *color11: #657b83 19 | 20 | !blue 21 | *color4: #268bd2 22 | *color12: #839496 23 | 24 | !magenta 25 | *color5: #d33682 26 | *color13: #6c71c4 27 | 28 | !cyan 29 | *color6: #2aa198 30 | *color14: #93a1a1 31 | 32 | !white 33 | *color7: #eee8d5 34 | *color15: #fdf6e3 35 | 36 | -------------------------------------------------------------------------------- /.colors/default: -------------------------------------------------------------------------------- 1 | *background: #002b36 2 | *foreground: #657b83 3 | 4 | !black 5 | *color0: #073642 6 | *color8: #002b36 7 | 8 | !red 9 | *color1: #dc322f 10 | *color9: #cb4b16 11 | 12 | !green 13 | *color2: #859900 14 | *color10: #586e75 15 | 16 | !yellow 17 | *color3: #b58900 18 | *color11: #657b83 19 | 20 | !blue 21 | *color4: #268bd2 22 | *color12: #839496 23 | 24 | !magenta 25 | *color5: #d33682 26 | *color13: #6c71c4 27 | 28 | !cyan 29 | *color6: #2aa198 30 | *color14: #93a1a1 31 | 32 | !white 33 | *color7: #eee8d5 34 | *color15: #fdf6e3 35 | 36 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | chromium/ 2 | gtk-2.0/ 3 | menus/ 4 | dconf/ 5 | ranger/ 6 | nemo/ 7 | .git/ 8 | archey3.cfg 9 | QtProject.conf 10 | *.log 11 | *.save 12 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # dotfiles 2 | -------------------------------------------------------------------------------- /bspwm/bspwmrc: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | bspc monitor -d o o o o o o 4 | 5 | desktop_config() { 6 | bspc config $1 $2 7 | for M in $(bspc query -M); do 8 | bspc config -m $M $1 $2 9 | done 10 | } 11 | 12 | desktop_config border_width 0 13 | desktop_config window_gap 40 14 | 15 | bspc config window_gap 15 16 | bspc config top_padding 35 17 | bspc config right_padding 10 18 | bspc config bottom_padding 10 19 | bspc config left_padding 10 20 | bspc config split_ratio 0.50 21 | 22 | bspc config borderless_monocle true 23 | bspc config gapless_monocle true 24 | bspc config focus_by_distance true 25 | bspc config focus_follows_pointer true 26 | 27 | bspc config normal_border_color "#f3f3f3" 28 | bspc config active_border_color "#f3f3f3" 29 | bspc config focused_border_color "#f3f3f3" 30 | bspc config presel_border_color "#f3f3f3" 31 | bspc config urgent_border_color "#f3f3f3" 32 | bspc config focused_locked_border_color "#f3f3f3" 33 | 34 | bspc rule -a urxvt floating=off 35 | bspc rule -a Chromium desktop=^2 36 | bspc rule -a feh floating=on 37 | bspc rule -a nemo floating=on 38 | 39 | # set background 40 | feh --bg-scale ~/media/wallpapers/archlinux.png 41 | 42 | # autostart 43 | $XDG_CONFIG_HOME/panel/panel 44 | -------------------------------------------------------------------------------- /panel/colors: -------------------------------------------------------------------------------- 1 | COLOR_FOREGROUND='#fff3f3f3' 2 | COLOR_BACKGROUND='#cc333333' 3 | 4 | COLOR_ACTIVE_MONITOR_FG='#fff3f3f3' 5 | COLOR_ACTIVE_MONITOR_BG='#cc333333' 6 | 7 | COLOR_INACTIVE_MONITOR_FG='#fff3f3f3' 8 | COLOR_INACTIVE_MONITOR_BG='#cc34322e' 9 | 10 | COLOR_FOCUSED_OCCUPIED_FG='#ffc3c3c3' 11 | COLOR_FOCUSED_OCCUPIED_BG='#ee000000' 12 | 13 | COLOR_FOCUSED_FREE_FG='#ffc3c3c3' 14 | COLOR_FOCUSED_FREE_BG='#ee000000' 15 | 16 | COLOR_FOCUSED_URGENT_FG='#ffc3c3c3' 17 | COLOR_FOCUSED_URGENT_BG='#ee000000' 18 | 19 | COLOR_OCCUPIED_FG='#fff3f3f3' 20 | COLOR_OCCUPIED_BG='#cc333333' 21 | 22 | COLOR_FREE_FG='#fff3f3f3' 23 | COLOR_FREE_BG='#cc333333' 24 | 25 | COLOR_URGENT_FG='#fff3f3f3' 26 | COLOR_URGENT_BG='#cc333333' 27 | 28 | COLOR_LAYOUT_FG='#fff3f3f3' 29 | COLOR_LAYOUT_BG='#cc333333' 30 | 31 | COLOR_TITLE_FG='#fff3f3f3' 32 | COLOR_TITLE_BG='#cc333333' 33 | 34 | COLOR_STATUS_FG='#fff3f3f3' 35 | COLOR_STATUS_BG='#cc333333' 36 | -------------------------------------------------------------------------------- /panel/config: -------------------------------------------------------------------------------- 1 | PANEL_FONT='Inconsolata' 2 | PANEL_UNDERLINE='0' 3 | PANEL_HEIGHT='x25' 4 | -------------------------------------------------------------------------------- /panel/panel: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | if [ $(pgrep -cx panel) -gt 1 ] ; then 4 | printf "%s\n" "The panel is already running." >&2 5 | exit 1 6 | fi 7 | 8 | trap 'trap - TERM; kill 0' INT TERM QUIT EXIT 9 | 10 | source $XDG_CONFIG_HOME/panel/config 11 | source $XDG_CONFIG_HOME/panel/colors 12 | 13 | $XDG_CONFIG_HOME/panel/top | lemonbar \ 14 | -g "$PANEL_HEIGHT" \ 15 | -u "$PANEL_UNDERLINE" \ 16 | -f "$PANEL_FONT" \ 17 | -F "$COLOR_FOREGROUND" \ 18 | -B "$COLOR_BACKGROUND" & 19 | 20 | wait 21 | -------------------------------------------------------------------------------- /panel/top: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | source $XDG_CONFIG_HOME/panel/config 4 | source $XDG_CONFIG_HOME/panel/colors 5 | 6 | panel_workspaces() { 7 | ws="" 8 | IFS=':' read -a array <<< $(bspc control --get-status) 9 | for item in "${array[@]}" 10 | do 11 | name=${item#?} 12 | case $item in 13 | O*) # focused occupied 14 | ws="${ws}%{B#cc000000}%{F#ffc3c3c3} ${name} %{F-}%{B-}" 15 | ;; 16 | F*) # focused free 17 | ws="${ws}%{B#cc000000}%{F#ffc3c3c3} ${name} %{F-}%{B-}" 18 | ;; 19 | U*) # focused urgent 20 | ws="${ws}%{B#cc000000}%{F#ffff4500} ${name} %{F-}%{B-}" 21 | ;; 22 | o*) # occupied 23 | ws="${ws}%{B#cc222222}%{F#ffc3c3c3} ${name} %{F-}%{B-}" 24 | ;; 25 | f*) # free 26 | ws="${ws}%{F#ffc3c3c3} ${name} %{F-}" 27 | ;; 28 | u*) # urgent 29 | ws="${ws}%{F#ffff4500} ${name} %{F-}" 30 | ;; 31 | esac 32 | shift 33 | done 34 | echo "${ws}" 35 | } 36 | 37 | panel_title() { 38 | echo $(xtitle) 39 | } 40 | 41 | panel_battery() { 42 | echo "%{B#cc222222}%{F#ffc3c3c3} $(battery -f '%d')% %{F-}%{B-}" 43 | } 44 | 45 | panel_hostname() { 46 | echo "%{B#cc111111}%{F#ffc3c3c3} $(hostname) %{F-}%{B-}" 47 | } 48 | 49 | panel_clock() { 50 | echo "%{B#cc000000}%{F#ffc3c3c3} $(date +'%a %-I:%M %p') %{F-}%{B-}" 51 | } 52 | 53 | # print to panel 54 | 55 | while [ "$(pidof xinit)" != "" ]; do 56 | echo "%{l}$(panel_workspaces)" \ 57 | "%{c}$(panel_title)" \ 58 | "%{r}$(panel_battery)$(panel_hostname)$(panel_clock)" 59 | sleep 0.1s 60 | done 61 | -------------------------------------------------------------------------------- /scrot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/knigitz/dotfiles/87d52a0df3a3ccc16429299228216c5eb0a37282/scrot.png -------------------------------------------------------------------------------- /sxhkd/sxhkdrc: -------------------------------------------------------------------------------- 1 | # 2 | # bspwm hotkeys 3 | # 4 | 5 | super + shift + Escape 6 | pkill -x panel; bspc quit 7 | 8 | super + w 9 | bspc window -c 10 | 11 | super + t 12 | bspc desktop -l next 13 | 14 | super + b 15 | bspc desktop -B 16 | 17 | super + {s,f} 18 | bspc window -t {floating,fullscreen} 19 | 20 | super + {grave,Tab} 21 | bspc {window,desktop} -f last 22 | 23 | super + apostrophe 24 | bspc window -s last 25 | 26 | super + {o,i} 27 | bspc control --record-history off; \ 28 | bspc window {older,newer} -f; \ 29 | bspc control --record-history on 30 | 31 | super + y 32 | bspc window -w last.manual 33 | 34 | super + m 35 | bspc window -s biggest 36 | 37 | super + {_,shift + }{h,j,k,l} 38 | bspc window -{f,s} {left,down,up,right} 39 | 40 | super + {_,shift + }c 41 | bspc window -f {next,prev} 42 | 43 | super + {comma,period} 44 | bspc desktop -C {backward,forward} 45 | 46 | super + bracket{left,right} 47 | bspc desktop -f {prev,next} 48 | 49 | super + ctrl + {h,j,k,l} 50 | bspc window -p {left,down,up,right} 51 | 52 | super + ctrl + {_,shift + }space 53 | bspc {window -p cancel,desktop -c} 54 | 55 | super + alt + {h,j,k,l} 56 | bspc window -e {left -10,down +10,up -10,right +10} 57 | 58 | super + alt + shift + {h,j,k,l} 59 | bspc window -e {right -10,up +10,down -10,left +10} 60 | 61 | super + ctrl + {1-9} 62 | bspc window -r 0.{1-9} 63 | 64 | super + {_,shift + }{1-9,0} 65 | bspc {desktop -f,window -d} ^{1-9,10} 66 | 67 | ~button1 68 | bspc pointer -g focus 69 | 70 | super + button{1-3} 71 | ; bspc pointer -g {move,resize_side,resize_corner} 72 | 73 | super + @button{1-3} 74 | bspc pointer -u 75 | 76 | # 77 | # wm independent hotkeys 78 | # 79 | 80 | super + Return 81 | urxvt 82 | 83 | super + e 84 | nemo 85 | 86 | super + space 87 | dmenu_run -q -h 25 -fn "Inconsolata-12:normal" -nb "#333333" -nf "#f3f3f3" -sb "#000000" -sf "#f3f3f3" -dim .5 -o .9 -p ">" 88 | 89 | # make sxhkd reload its configuration files: 90 | super + Escape 91 | pkill -USR1 -x sxhkd 92 | -------------------------------------------------------------------------------- /urxvt/.Xresources: -------------------------------------------------------------------------------- 1 | urxvt*.perl-lib: /usr/lib/urxvt/perl 2 | urxvt*.perl-ext-common: default,matcher,clipboard 3 | urxvt*.perl-matcher: 1 4 | urxvt*.matcher-button: 3 5 | urxvt*.url-launcher: /usr/bin/chromium 6 | !urxvt*.matcher.button: 1 7 | !urxvt*.matcher.pattern.1: \\bwww\\.[\\w-]\\.[\\w./?&@#-]*[\\w/-] 8 | 9 | ! letter spacing 10 | urxvt*.letterSpace: -1 11 | 12 | urxvt*.dynamicColors: on 13 | urxvt*.urgentOnBell: true 14 | 15 | ! cursor 16 | urxvt*.cursorBlink: true 17 | urxvt*.cursorUnderline: 1 18 | 19 | ! scrollbar 20 | urxvt*.scrollBar: false 21 | urxvt*.scrollBar_right: true 22 | urxvt*.scrollBar_floating: true 23 | urxvt*.scrollstyle: plain 24 | urxvt*.scrollColor: #efefef 25 | urxvt*.troughColor: #ffffff 26 | urxvt*.thickness: 1 27 | 28 | ! border 29 | urxvt*.borderLess: false 30 | urxvt*.internalBorder: 5 31 | urxvt*.externalBorder: 0 32 | 33 | ! window fading 34 | !urxvt*.fading: 1 35 | !urxvt*.fadeColor: #000000 36 | 37 | ! true transparency 38 | urxvt*.depth: 32 39 | urxvt*.background: [75]#333333 40 | 41 | ! native transparency 42 | !urxvt*.transparent: true 43 | !urxvt*.shading: 175 44 | 45 | ! font 46 | urxvt*.font: xft:Inconsolata:size=9:antialias=true 47 | urxvt*.boldFont: xft:Inconsolata:style=bold:size=9:antialias=true 48 | urxvt*.italicFont: xft:Inconsolata:style=italic:size=9:antialias=true 49 | urxvt*.boldItalicFont: xft:Inconsolata:style=bolditalic:size=9:antialias=true 50 | 51 | --------------------------------------------------------------------------------