Browse Source

Merge branch 'master' of git.nora.codes:nora/dotfiles

master
Leonora Tindall 1 year ago
parent
commit
6bb460c2d0
  1. 7
      .gitignore
  2. 3
      .gitmodules
  3. 19
      README.md
  4. 22
      dashtopanel-settings
  5. 29
      packages.txt
  6. 7192
      scripts/emoji-to-scl.py
  7. 289
      stow/alacritty/.config/alacritty/alacritty.yml
  8. BIN
      stow/background/.config/background.png
  9. BIN
      stow/background/.config/lockscreen.png
  10. 127
      stow/bash/.bashrc
  11. 107
      stow/compton/.config/compton.conf
  12. 5
      stow/conky/.bin/start_conky
  13. 46
      stow/conky/.config/conky/conky.conf
  14. 12
      stow/dunst/.bin/toggle_dunst.sh
  15. 302
      stow/dunst/.config/dunst/dunstrc
  16. 3
      stow/fish/.config/fish/config.fish
  17. 42
      stow/fish/.config/fish/functions/fish_prompt.fish
  18. 19
      stow/fish/.config/fish/functions/fish_prompt_old.fish
  19. 3
      stow/fish/.config/fish/functions/tmux.fish
  20. 111
      stow/gdb/.gdb_history
  21. 3998
      stow/gdb/.gdbinit
  22. 5
      stow/git/.gitconfig
  23. 189
      stow/i3/.config/i3/arthur-c.rasi
  24. 272
      stow/i3/.config/i3/config
  25. 4
      stow/kakuone/.config/kak/autoload/init.kak
  26. 29
      stow/mimeapps/.config/mimeapps.list
  27. 6
      stow/misc-scripts/.bin/huion-fix.sh
  28. 142
      stow/neovim/.config/nvim/init.vim
  29. 12
      stow/polybar/.bin/docker-polybar.sh
  30. 1
      stow/polybar/.config/polybar/config
  31. 271
      stow/polybar/.config/polybar/config.ini
  32. 37
      stow/profile/.profile
  33. 17
      stow/rofi-powermenu/.bin/piclock.sh
  34. 78
      stow/rofi-powermenu/.bin/system_menu.sh
  35. 84
      stow/rofi-spchar/.bin/special_characters.sh
  36. 3353
      stow/rofi-spchar/.config/rofi-spchar/special_character_list
  37. 1
      stow/sakura/.config/sakura/sakura
  38. 68
      stow/sakura/.config/sakura/sakura.conf
  39. 0
      stow/snippets
  40. 5
      stow/tarsnap/.bin/tarsnap-backup.sh
  41. 42
      stow/taskwarrior/.taskrc
  42. BIN
      stow/terminology/.config/terminology/config/standard/base.cfg
  43. 103
      stow/tmux/.tmux.conf
  44. 1
      stow/tmux/.tmux/plugins/tpm
  45. 264
      stow/vim/.vim/autoload/pathogen.vim
  46. 150
      stow/vim/.vim/autoload/plug.vim
  47. 7
      stow/vim/.vim/bundle/ctrlp.vim/.gitignore
  48. 2656
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp.vim
  49. 173
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/autoignore.vim
  50. 147
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/bookmarkdir.vim
  51. 277
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/buffertag.vim
  52. 98
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/changes.vim
  53. 95
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/dir.vim
  54. 81
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/line.vim
  55. 88
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/mixed.vim
  56. 158
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/mrufiles.vim
  57. 59
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/quickfix.vim
  58. 59
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/rtscript.vim
  59. 146
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/tag.vim
  60. 154
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/undo.vim
  61. 110
      stow/vim/.vim/bundle/ctrlp.vim/autoload/ctrlp/utils.vim
  62. 1
      stow/vim/.vim/bundle/ctrlp.vim/ctrlp.vim
  63. 1616
      stow/vim/.vim/bundle/ctrlp.vim/doc/ctrlp.cnx
  64. 1682
      stow/vim/.vim/bundle/ctrlp.vim/doc/ctrlp.txt
  65. 72
      stow/vim/.vim/bundle/ctrlp.vim/plugin/ctrlp.vim
  66. 105
      stow/vim/.vim/bundle/ctrlp.vim/readme.md
  67. 24
      stow/vim/.vim/bundle/editorconfig-vim/.editorconfig
  68. 1
      stow/vim/.vim/bundle/editorconfig-vim/.gitignore
  69. 3
      stow/vim/.vim/bundle/editorconfig-vim/.gitmodules
  70. 23
      stow/vim/.vim/bundle/editorconfig-vim/.travis.yml
  71. 5
      stow/vim/.vim/bundle/editorconfig-vim/CONTRIBUTORS
  72. 26
      stow/vim/.vim/bundle/editorconfig-vim/LICENSE
  73. 107
      stow/vim/.vim/bundle/editorconfig-vim/README.md
  74. 59
      stow/vim/.vim/bundle/editorconfig-vim/autoload/editorconfig.vim
  75. 228
      stow/vim/.vim/bundle/editorconfig-vim/doc/editorconfig.txt
  76. 1
      stow/vim/.vim/bundle/editorconfig-vim/editorconfig-vim
  77. 3
      stow/vim/.vim/bundle/editorconfig-vim/mkzip.sh
  78. 12
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/.editorconfig
  79. 11
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/.gitignore
  80. 22
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/.travis.yml
  81. 21
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/CMakeLists.txt
  82. 192
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/LICENSE.txt
  83. 1
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/MANIFEST.in
  84. 82
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/README.rst
  85. 130
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/docs/Makefile
  86. 18
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/docs/command_line_usage.rst
  87. 219
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/docs/conf.py
  88. 23
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/docs/index.rst
  89. 170
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/docs/make.bat
  90. 72
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/docs/plugins.rst
  91. 84
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/docs/usage.rst
  92. 19
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/__init__.py
  93. 23
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/compat.py
  94. 27
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/exceptions.py
  95. 219
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/fnmatch.py
  96. 127
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/handler.py
  97. 174
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/ini.py
  98. 78
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/main.py
  99. 897
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/odict.py
  100. 35
      stow/vim/.vim/bundle/editorconfig-vim/plugin/editorconfig-core-py/editorconfig/versiontools.py

7
.gitignore

@ -1,3 +1,4 @@
*.netrwhist
stow/neovim/.config/nvim/plugged/
stow/taskwarrior/.inthe.am.keys/
stow/vim/.vim/plugged/
stow/vim/.vim/*.netrwhist
stow/gdb/.gdb_history
stow/tmux/.tmux/plugins/

3
.gitmodules

@ -22,3 +22,6 @@
[submodule "vim/bundle/editorconfig-vim"]
path = stow/vim/.vim/bundle/editorconfig-vim/editorconfig-vim
url = https://github.com/editorconfig/editorconfig-vim.git
[submodule "stow/stow/tmux/.tmux/plugins/tpm"]
path = stow/stow/tmux/.tmux/plugins/tpm
url = git@github.com:tmux-plugins/tpm

19
README.md

@ -4,16 +4,15 @@ Scripts, configs, and dotfiles needed for my desktop and laptop setups.
This is designed to be used with [GNU Stow](https://www.gnu.org/software/stow/). Specifically,
entering the `stow` directory and running `stow -t ~ *` will link all dotfiles.
## Scripts
## Software
### In the PATH
* `tarsnap-backup.sh` backs up files to tarsnap
* `huion-fix.sh` maps a Huion tablet to a single monitor
* `special_characters.sh` uses Rofi or DMenu to pick special characters from
`special_characters_list`.
* `start_conky.sh` starts Conky with the config included here
From the Ubuntu repos, I use `gnome-terminal` with the `zsh` shell with autocompletions from `zsh-autosuggestions` and `vim` editor, using the `fonts-firacode` font.
### In `scripts/`
* `emoji-to-scl.py` will take the rofimoji emoji list (from EmojiPedia) into
special_character_list format
From `crates.io`, `starship` is my prompt, `exa` to list files, `bat` to read them,
`git-delta` for diffing, `ripgrep` my grep, `hyperfine` for measurement, `ffsend` for sending
files, and `genact` to look busy.
Vim is configured with `VimPlug`, and `fish` with `fisher`, both included here.
I also use pietvanzoen's `git-get` to organize git repositories.

22
dashtopanel-settings

@ -0,0 +1,22 @@
[/]
appicon-margin=12
appicon-padding=4
dot-position='BOTTOM'
dot-style-focused='SEGMENTED'
dot-style-unfocused='SEGMENTED'
group-apps=true
hotkeys-overlay-combo='TEMPORARILY'
isolate-workspaces=false
location-clock='STATUSLEFT'
panel-position='TOP'
panel-size=32
show-activities-button=false
show-appmenu=false
show-show-apps-button=true
stockgs-force-hotcorner=false
stockgs-keep-dash=false
taskbar-position='LEFTPANEL'
trans-use-custom-bg=false
trans-use-custom-gradient=false
trans-use-custom-opacity=true
trans-use-dynamic-opacity=false

29
packages.txt

@ -1,29 +0,0 @@
git
curl
mono-complete
mono-mcs
python-pip
python3
python3-pip
tmux
vim
zsh
sakura
glances
xdotool
hexchat
stow
neovim
anonymous-pro ttf-dejavu ttf-dejavu-extra
fonts-emojione fonts-noto-color-emoji fonts-symbola
fonts-firacode
i3
polybar (req libmpdclient)
unifont
xrandr
autorandr
zsh-autosuggestions

7192
scripts/emoji-to-scl.py

File diff suppressed because it is too large

289
stow/alacritty/.config/alacritty/alacritty.yml

@ -1,289 +0,0 @@
# Configuration for Alacritty, the GPU enhanced terminal emulator
# Any items in the `env` entry below will be added as
# environment variables. Some entries may override variables
# set by alacritty it self.
env:
# TERM env customization.
#
# If this property is not set, alacritty will set it to xterm-256color.
#
# Note that some xterm terminfo databases don't declare support for italics.
# You can verify this by checking for the presence of `smso` and `sitm` in
# `infocmp xterm-256color`.
TERM: xterm-256color
# Window dimensions in character columns and lines
# (changes require restart)
dimensions:
columns: 80
lines: 24
# Adds this many blank pixels of padding around the window
# Units are physical pixels; this is not DPI aware.
# (change requires restart)
padding:
x: 2
y: 2
# The FreeType rasterizer needs to know the device DPI for best results
# (changes require restart)
dpi:
x: 96.0
y: 96.0
# Display tabs using this many cells (changes require restart)
tabspaces: 4
# When true, bold text is drawn using the bright variant of colors.
draw_bold_text_with_bright_colors: true
# Font configuration (changes require restart)
font:
# The normal (roman) font face to use.
normal:
family: monospace # should be "Menlo" or something on macOS.
# Style can be specified to pick a specific face.
# style: Regular
# The bold font face
bold:
family: monospace # should be "Menlo" or something on macOS.
# Style can be specified to pick a specific face.
# style: Bold
# The italic font face
italic:
family: monospace # should be "Menlo" or something on macOS.
# Style can be specified to pick a specific face.
# style: Italic
# Point size of the font
size: 11.0
# Offset is the extra space around each character. offset.y can be thought of
# as modifying the linespacing, and offset.x as modifying the letter spacing.
offset:
x: 0.0
y: 0.0
# Glyph offset determines the locations of the glyphs within their cells with
# the default being at the bottom. Increase the x offset to move the glyph to
# the right, increase the y offset to move the glyph upward.
glyph_offset:
x: 0.0
y: 0.0
# OS X only: use thin stroke font rendering. Thin strokes are suitable
# for retina displays, but for non-retina you probably want this set to
# false.
use_thin_strokes: true
# Should display the render timer
render_timer: false
# Use custom cursor colors. If true, display the cursor in the cursor.foreground
# and cursor.background colors, otherwise invert the colors of the cursor.
custom_cursor_colors: false
# Colors (Tomorrow Night Bright)
colors:
# Default colors
primary:
background: '0x000000'
foreground: '0xeaeaea'
# Colors the cursor will use if `custom_cursor_colors` is true
cursor:
text: '0x000000'
cursor: '0xffffff'
# Normal colors
normal:
black: '0x000000'
red: '0xd54e53'
green: '0xb9ca4a'
yellow: '0xe6c547'
blue: '0x7aa6da'
magenta: '0xc397d8'
cyan: '0x70c0ba'
white: '0xffffff'
# Bright colors
bright:
black: '0x666666'
red: '0xff3334'
green: '0x9ec400'
yellow: '0xe7c547'
blue: '0x7aa6da'
magenta: '0xb77ee0'
cyan: '0x54ced6'
white: '0xffffff'
# Dim colors (Optional)
dim:
black: '0x333333'
red: '0xf2777a'
green: '0x99cc99'
yellow: '0xffcc66'
blue: '0x6699cc'
magenta: '0xcc99cc'
cyan: '0x66cccc'
white: '0xdddddd'
# Visual Bell
#
# Any time the BEL code is received, Alacritty "rings" the visual bell. Once
# rung, the terminal background will be set to white and transition back to the
# default background color. You can control the rate of this transition by
# setting the `duration` property (represented in milliseconds). You can also
# configure the transition function by setting the `animation` property.
#
# Possible values for `animation`
# `Ease`
# `EaseOut`
# `EaseOutSine`
# `EaseOutQuad`
# `EaseOutCubic`
# `EaseOutQuart`
# `EaseOutQuint`
# `EaseOutExpo`
# `EaseOutCirc`
# `Linear`
#
# To completely disable the visual bell, set its duration to 0.
#
visual_bell:
animation: EaseOutExpo
duration: 0
# Background opacity
background_opacity: 0.75
# Key bindings
#
# Each binding is defined as an object with some properties. Most of the
# properties are optional. All of the alphabetical keys should have a letter for
# the `key` value such as `V`. Function keys are probably what you would expect
# as well (F1, F2, ..). The number keys above the main keyboard are encoded as
# `Key1`, `Key2`, etc. Keys on the number pad are encoded `Number1`, `Number2`,
# etc. These all match the glutin::VirtualKeyCode variants.
#
# Possible values for `mods`
# `Command`, `Super` refer to the super/command/windows key
# `Control` for the control key
# `Shift` for the Shift key
# `Alt` and `Option` refer to alt/option
#
# mods may be combined with a `|`. For example, requiring control and shift
# looks like:
#
# mods: Control|Shift
#
# The parser is currently quite sensitive to whitespace and capitalization -
# capitalization must match exactly, and piped items must not have whitespace
# around them.
#
# Either an `action`, `chars`, or `command` field must be present.
# `action` must be one of `Paste`, `PasteSelection`, `Copy`, or `Quit`.
# `chars` writes the specified string every time that binding is activated.
# These should generally be escape sequences, but they can be configured to
# send arbitrary strings of bytes.
# `command` must be a map containing a `program` string, and `args` array of
# strings. For example:
# - { ... , command: { program: "alacritty", args: ["-e", "vttest"] } }
#
# Want to add a binding (e.g. "PageUp") but are unsure what the X sequence
# (e.g. "\x1b[5~") is? Open another terminal (like xterm) without tmux,
# then run `showkey -a` to get the sequence associated to a key combination.
key_bindings:
- { key: V, mods: Control|Shift, action: Paste }
- { key: C, mods: Control|Shift, action: Copy }
- { key: Q, mods: Command, action: Quit }
- { key: W, mods: Command, action: Quit }
- { key: Insert, mods: Shift, action: PasteSelection }
- { key: Home, chars: "\x1bOH", mode: AppCursor }
- { key: Home, chars: "\x1b[H", mode: ~AppCursor }
- { key: End, chars: "\x1bOF", mode: AppCursor }
- { key: End, chars: "\x1b[F", mode: ~AppCursor }
- { key: PageUp, mods: Shift, chars: "\x1b[5;2~" }
- { key: PageUp, mods: Control, chars: "\x1b[5;5~" }
- { key: PageUp, chars: "\x1b[5~" }
- { key: PageDown, mods: Shift, chars: "\x1b[6;2~" }
- { key: PageDown, mods: Control, chars: "\x1b[6;5~" }
- { key: PageDown, chars: "\x1b[6~" }
- { key: Left, mods: Shift, chars: "\x1b[1;2D" }
- { key: Left, mods: Control, chars: "\x1b[1;5D" }
- { key: Left, mods: Alt, chars: "\x1b[1;3D" }
- { key: Left, chars: "\x1b[D", mode: ~AppCursor }
- { key: Left, chars: "\x1bOD", mode: AppCursor }
- { key: Right, mods: Shift, chars: "\x1b[1;2C" }
- { key: Right, mods: Control, chars: "\x1b[1;5C" }
- { key: Right, mods: Alt, chars: "\x1b[1;3C" }
- { key: Right, chars: "\x1b[C", mode: ~AppCursor }
- { key: Right, chars: "\x1bOC", mode: AppCursor }
- { key: Up, mods: Shift, chars: "\x1b[1;2A" }
- { key: Up, mods: Control, chars: "\x1b[1;5A" }
- { key: Up, mods: Alt, chars: "\x1b[1;3A" }
- { key: Up, chars: "\x1b[A", mode: ~AppCursor }
- { key: Up, chars: "\x1bOA", mode: AppCursor }
- { key: Down, mods: Shift, chars: "\x1b[1;2B" }
- { key: Down, mods: Control, chars: "\x1b[1;5B" }
- { key: Down, mods: Alt, chars: "\x1b[1;3B" }
- { key: Down, chars: "\x1b[B", mode: ~AppCursor }
- { key: Down, chars: "\x1bOB", mode: AppCursor }
- { key: Tab, mods: Shift, chars: "\x1b[Z" }
- { key: F1, chars: "\x1bOP" }
- { key: F2, chars: "\x1bOQ" }
- { key: F3, chars: "\x1bOR" }
- { key: F4, chars: "\x1bOS" }
- { key: F5, chars: "\x1b[15~" }
- { key: F6, chars: "\x1b[17~" }
- { key: F7, chars: "\x1b[18~" }
- { key: F8, chars: "\x1b[19~" }
- { key: F9, chars: "\x1b[20~" }
- { key: F10, chars: "\x1b[21~" }
- { key: F11, chars: "\x1b[23~" }
- { key: F12, chars: "\x1b[24~" }
- { key: Back, chars: "\x7f" }
- { key: Back, mods: Alt, chars: "\x1b\x7f" }
- { key: Insert, chars: "\x1b[2~" }
- { key: Delete, chars: "\x1b[3~" }
# Mouse bindings
#
# Currently doesn't support modifiers. Both the `mouse` and `action` fields must
# be specified.
#
# Values for `mouse`:
# - Middle
# - Left
# - Right
# - Numeric identifier such as `5`
#
# Values for `action`:
# - Paste
# - PasteSelection
# - Copy (TODO)
mouse_bindings:
- { mouse: Middle, action: PasteSelection }
mouse:
double_click: { threshold: 300 }
triple_click: { threshold: 300 }
selection:
semantic_escape_chars: ",│`|:\"' ()[]{}<>"
hide_cursor_when_typing: false
# Live config reload (changes require restart)
live_config_reload: true
# Shell
#
# You can set shell.program to the path of your favorite shell, e.g. /bin/fish.
# Entries in shell.args are passed unmodified as arguments to the shell.
shell:
program: /bin/zsh

BIN
stow/background/.config/background.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 272 KiB

BIN
stow/background/.config/lockscreen.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 272 KiB

127
stow/bash/.bashrc

@ -1,127 +0,0 @@
# ~/.bashrc: executed by bash(1) for non-login shells.
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=5000
HISTFILESIZE=10000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
shopt -s globstar
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
# Turn the prompt symbol red if the user is root
if [ $(id -u) -eq 0 ];
then # you are root, make the prompt red
export PS1="\[\033[38;5;196m\]λ\[\033[38;5;15m\]\[$(tput sgr0)\] "
else
export PS1="λ\[$(tput sgr0)\] "
fi
else
PS1="λ "
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
alias dfree='dfc -t ext4'
fi
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Tmux hates unicode
alias tmux='tmux -u'
# Add an "alert" alias for long running commands. Use like so:
# sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
export EDITOR=vim
alias vi=vim
export LC_ALL="en_US.UTF_8"
alias fdate="date +%y.%m.%d"
export TERM="screen-256color"
[ -f ~/.fzf.bash ] && source ~/.fzf.bash

107
stow/compton/.config/compton.conf

@ -1,107 +0,0 @@
# Shadow
shadow = true;
# no-dnd-shadow = true;
no-dock-shadow = true;
clear-shadow = true;
detect-rounded-corners = true;
shadow-radius = 5;
shadow-offset-x = 1;
shadow-offset-y = 1;
shadow-opacity = .3;
shadow-ignore-shaped = false;
shadow-exclude = [
"name = 'Notification'",
# workaround for conky until it provides window properties:
"override_redirect = 1 && !WM_CLASS@:s",
"class_g ?= 'Dmenu'",
# "class_g ?= 'Dunst'",
# disable shadows for hidden windows:
"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
"_GTK_FRAME_EXTENTS@:c",
# disables shadows on sticky windows:
# "_NET_WM_STATE@:32a *= '_NET_WM_STATE_STICKY'",
# disables shadows on i3 frames
"class_g ?= 'i3-frame'"
];
# shadow-exclude-reg = "x10+0+0";
# xinerama-shadow-crop = true;
#menu-opacity = 0.95;
#inactive-opacity = 0.93;
#active-opacity = 1;
#alpha-step = 0.01;
#inactive-dim = 0.0;
#blur-background = false;
#blur-kern = "3x3box";
fading = false;
fade-delta = 1;
fade-in-step = 0.03;
fade-out-step = 0.03;
fade-exclude = [ ];
backend = "xrender";
mark-wmwin-focused = true;
mark-ovredir-focused = true;
detect-client-opacity = true;
unredir-if-possible = true;
refresh-rate = 0;
vsync = "none";
dbe = false;
paint-on-overlay = true;
focus-exclude = [ "class_g = 'Cairo-clock'" ];
detect-transient = true;
detect-client-leader = true;
invert-color-include = [ ];
glx-copy-from-front = false;
glx-swap-method = "undefined";
#opacity-rule = [
#"99:name *?= 'Call'",
#"99:class_g = 'Chromium'",
#"99:name *?= 'Conky'",
#"99:class_g = 'Darktable'",
#"50:class_g = 'Dmenu'",
#"99:name *?= 'Event'",
#"99:class_g = 'Firefox'",
#"99:class_g = 'GIMP'",
#"99:name *?= 'Image'",
#"99:class_g = 'Lazpaint'",
#"99:class_g = 'Midori'",
#"99:name *?= 'Minitube'",
#"99:class_g = 'Mousepad'",
#"99:name *?= 'MuseScore'",
#"90:name *?= 'Page Info'",
#"99:name *?= 'Pale Moon'",
#"90:name *?= 'Panel'",
#"99:class_g = 'Pinta'",
#"90:name *?= 'Restart'",
#"99:name *?= 'sudo'",
#"99:name *?= 'Screenshot'",
#"99:class_g = 'Viewnior'",
#"99:class_g = 'VirtualBox'",
#"99:name *?= 'VLC'",
#"99:name *?= 'Write'",
#"93:class_g = 'URxvt' && !_NET_WM_STATE@:32a",
#"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
#"96:_NET_WM_STATE@:32a *= '_NET_WM_STATE_STICKY'"
#];
wintypes :
{
tooltip :
{
fade = true;
shadow = false;
opacity = 0.85;
focus = true;
};
fullscreen :
{
fade = true;
shadow = false;
opacity = 1;
focus = true;
};
};

5
stow/conky/.bin/start_conky

@ -1,5 +0,0 @@
#!/bin/bash
killall conky
conky -c $HOME/.config/conky/conky.conf &&
exit 0

46
stow/conky/.config/conky/conky.conf

@ -1,46 +0,0 @@
conky.config = {
alignment = 'top_right',
background = true,
color2 = '5D7B86',
cpu_avg_samples = 2,
default_color = 'F9FAF9',
double_buffer = true,
font = 'Bitstream Vera Sans:size=8',
draw_shades = false,
gap_x = 25,
gap_y = 32,
minimum_width = 200,
no_buffers = true,
own_window = true,
own_window_type = 'override',
own_window_transparent = true,
update_interval = 1.0,
use_xft = true,
}
conky.text = [[
${voffset 8}$color2${font Bitstream Vera Sans:size=16}${time %A}$font\
${voffset -8}$alignr$color${font Bitstream Vera Sans:size=38}${time %e}$font
$color${voffset -30}$color${font Bitstream Vera Sans:size=18}${time %b}$font\
${voffset -3} $color${font Bitstream Vera Sans:size=20}${time %Y}$font$color2$hr
#
${voffset 20}${goto 40}${color}CPU${font Bitstream Vera Sans:bold:size=8}$alignr$cpu%
${voffset 5}${goto 40}$font$color2${top name 1}$alignr$color${top cpu 1}%
${goto 40}$color2${top name 2}$alignr$color${top cpu 2}%
${goto 40}$color2${top name 3}$alignr$color${top cpu 3}%
${goto 40}$color2${top name 4}$alignr$color${top cpu 4}%
# ${goto 40}$color2${top name 5}$alignr$color${top cpu 5}%
#
${voffset 10}${goto 40}${color}RAM${font Bitstream Vera Sans:bold:size=8}$alignr$mem$font
${goto 40}${voffset 5}$color2${top_mem name 1}$alignr$color${top_mem mem_res 1}
${goto 40}$color2${top_mem name 2}$alignr$color${top_mem mem_res 2}
${goto 40}$color2${top_mem name 3}$alignr$color${top_mem mem_res 3}
${goto 40}$color2${top_mem name 4}$alignr$color${top_mem mem_res 4}
# ${goto 40}$color2${top_mem name 5}$alignr$color${top_mem mem_res 5}
#
${voffset 10}${goto 40}${color}Swap${font Bitstream Vera Sans:bold:size=8}$alignr${swap}/ ${swapfree}
${voffset 15}$font$alignr${execi 10000 awk -F= '/TION/ {print $2}' /etc/lsb-release |sed 's/"//g'} \
${execi 10000 awk -F= '/EASE=/ {printf $2" "} /NAME/ {print $2}' /etc/lsb-release}
${voffset 10}${color2}${alignr}${execi 1200 whoami}@${nodename}
${alignr}${color2}${font Bitstream Vera Sans:size=8}uptime: ${color}${uptime_short}
${voffset 5}${color2}${font Bitstream Vera Sans:size=8}${alignr}kernel: ${color}${kernel}
]]

12
stow/dunst/.bin/toggle_dunst.sh

@ -1,12 +0,0 @@
#! /usr/bin/env bash
if [ -e /tmp/dunstpaused.tmp ]; then
rm /tmp/dunstpaused.tmp
killall -SIGUSR2 dunst;
echo "UNpause Dunst"
else
touch /tmp/dunstpaused.tmp
killall -SIGUSR1 dunst;
echo "Pause Dunst"
fi

302
stow/dunst/.config/dunst/dunstrc

@ -1,302 +0,0 @@
[global]
frame_width = 1
frame_color = "#FFC600"
font = Fira Code 10
# Allow a small subset of html markup:
# <b>bold</b>
# <i>italic</i>
# <s>strikethrough</s>
# <u>underline</u>
#
# For a complete reference see
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
# If markup is not allowed, those tags will be stripped out of the
# message.
markup = yes
# The format of the message. Possible variables are:
# %a appname
# %s summary
# %b body
# %i iconname (including its path)
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
# Markup is allowed
format = "%a%p: %s\n%b"
# Sort messages by urgency.
sort = yes
# Show how many messages are currently hidden (because of geometry).
indicate_hidden = yes
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = right
# The frequency with wich text that is longer than the notification
# window allows bounces back and forth.
# This option conflicts with "word_wrap".
# Set to 0 to disable.
bounce_freq = 0
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Split notifications into multiple lines if they don't fit into
# geometry.
word_wrap = yes
# Ignore newlines '\n' in notifications.
ignore_newline = no
# The geometry of the window:
# [{width}]x{height}[+/-{x}+/-{y}]
# The geometry of the message window.
# The height is measured in number of notifications everything else
# in pixels. If the width is omitted but the height is given
# ("-geometry x2"), the message window expands over the whole screen
# (dmenu-like). If width is 0, the window expands to the longest
# message displayed. A positive x is measured from the left, a
# negative from the right side of the screen. Y is measured from
# the top and down respectevly.
# The width can be negative. In this case the actual width is the
# screen width minus the width defined in within the geometry option.
geometry = "760x4-25+25"
# Shrink window if it's smaller than the width. Will be ignored if
# width is 0.
shrink = yes
# The transparency of the window. Range: [0; 100].
# This option will only work if a compositing windowmanager is
# present (e.g. xcompmgr, compiz, etc.).
transparency = 15
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
# default 120
idle_threshold = 120
# Which monitor should the notifications be displayed on.
monitor = 0
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
#
# "keyboard" needs a windowmanager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern windowmanagers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = mouse
# Should a notification popped up from history be sticky or timeout
# as if it would normally do.
sticky_history = yes
# Maximum amount of notifications kept in history
history_length = 20
# Display indicators for URLs (U) and actions (A).
show_indicators = yes
# The height of a single line. If the height is smaller than the
# font height, it will get raised to the font height.
# This adds empty space above and under the text.
line_height = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
separator_height = 1
# Padding between text and separator.
# padding = 8
padding = 8
# Horizontal padding.
horizontal_padding = 10
# Define a color for the separator.
# possible values are:
# * auto: dunst tries to find a color fitting to the background;
# * foreground: use the same color as the foreground;
# * frame: use the same color as the frame;
# * anything else will be interpreted as a X color.
separator_color = #263238
# Print a notification on startup.
# This is mainly for error detection, since dbus (re-)starts dunst
# automatically after a crash.
startup_notification = false
# dmenu path.
dmenu = /usr/bin/dmenu -p dunst:
# Browser for opening urls in context menu.
browser = firefox
# Align icons left/right/off
icon_position = left
# Paths to default icons.
icon_path = /usr/share/icons/Adwaita/16x16/status/:/usr/share/icons/Adwaita/16x16/devices/
# Limit icons size.
max_icon_size=32
[shortcuts]
# Shortcuts are specified as [modifier+][modifier+]...key
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
# "mod3" and "mod4" (windows-key).
# Xev might be helpful to find names for keys.
# Close notification.
close = mod1+space
# Close all notifications.
# close_all = ctrl+shift+space
close_all = ctrl+mod1+space
# Redisplay last message(s).
# On the US keyboard layout "grave" is normally above TAB and left
# of "1".
history = ctrl+mod4+h
# Context menu.
context = ctrl+mod1+c
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
background = "#112434"
foreground = "#FFC600"
timeout = 10
[urgency_normal]
background = "#112434"
foreground = "#FFC600"
timeout = 10
[urgency_critical]
background = "#24FFFF"
foreground = "#FF4343"
timeout = 0
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
# Messages can be matched by "appname", "summary", "body", "icon", "category",
# "msg_urgency" and you can override the "timeout", "urgency", "foreground",
# "background", "new_icon" and "format".
# Shell-like globbing will get expanded.
#
# SCRIPTING
# You can specify a script that gets run when the rule matches by
# setting the "script" option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: if you don't want a notification to be displayed, set the format
# to "".
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# format = ""
#[signed_on]
# appname = Pidgin
# summary = "*signed on*"
# urgency = low
#
#[signed_off]
# appname = Pidgin
# summary = *signed off*
# urgency = low
#
#[says]
# appname = Pidgin
# summary = *says*
# urgency = critical
#
#[twitter]
# appname = Pidgin
# summary = *twitter.com*
# urgency = normal
#
#[Claws Mail]
# appname = claws-mail
# category = email.arrived
# urgency = normal
# background = "#2F899E"
# foreground = "#FFA247"
#
#[mute.sh]
# appname = mute
# category = mute.sound
# script = mute.sh
#
#[JDownloader]
# appname = JDownloader
# category = JD
# background = "#FFA247"
# foreground = "#FFFFFF"
#
#[newsbeuter]
# summary = *Feeds*
# background = "#A8EB41"
# foreground = "#FFFFFF"
#
[irc]
appname = weechat
timeout = 0
background = "#0033bb"
foreground = "#dddddd"
#
[weechat hl]
appname = weechat
category = weechat.HL
background = "#FF5C47"
foreground = "#FFFFFF"
#
[weechat pn]
appname = weechat
category = weechat.PM
background = "#D53B84"
foreground = "#FFFFFF"
#
#[CMUS]
# appname = CMUS
# category = cmus
# background = "#6C4AB7"
# foreground = "#FFE756"
#
#
# background = "#30AB70"
# foreground = "#F67245"
#
# vim: ft=cfg

3
stow/fish/.config/fish/config.fish

@ -1,3 +0,0 @@
set fish_greeting
abbr -a code vscodium

42
stow/fish/.config/fish/functions/fish_prompt.fish

@ -1,42 +0,0 @@
function fish_prompt --description 'Write out the prompt'
#Save the return status of the previous command
set stat $status
if not set -q __fish_prompt_normal
set -g __fish_prompt_normal (set_color normal)
end
if not set -q __fish_color_blue
set -g __fish_color_blue (set_color -o blue)
end
#Set the color for the status depending on the value
set __fish_color_status (set_color -o green)
if test $stat -gt 0
set __fish_color_status (set_color -o red)
end
switch "$USER"
case root toor
if not set -q __fish_prompt_cwd
if set -q fish_color_cwd_root
set -g __fish_prompt_cwd (set_color $fish_color_cwd_root)
else
set -g __fish_prompt_cwd (set_color $fish_color_cwd)
end
end
printf '%s@%s %s%s%sΛ ' $USER (prompt_hostname) "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal"
case '*'
if not set -q __fish_prompt_cwd
set -g __fish_prompt_cwd (set_color $fish_color_cwd)
end
printf '[%s] %s%s@%s %s%s %s(%s)%s \f\rλ ' (date "+%H:%M:%S") "$__fish_color_blue" $USER (prompt_hostname) "$__fish_prompt_cwd" (prompt_pwd) "$__fish_color_status" "$stat" "$__fish_prompt_normal"
end
end

19
stow/fish/.config/fish/functions/fish_prompt_old.fish

@ -1,19 +0,0 @@
function fish_prompt --description 'Write out the prompt'
set -l color_cwd
set -l suffix
switch "$USER"
case root toor
if set -q fish_color_cwd_root
set color_cwd $fish_color_cwd_root
else
set color_cwd $fish_color_cwd
end
set suffix '#'
case '*'
set color_cwd $fish_color_cwd
set suffix '>'
end
echo -n -s "$USER" @ (prompt_hostname) ' ' (set_color $color_cwd) (prompt_pwd) (set_color normal) "$suffix "
end

3
stow/fish/.config/fish/functions/tmux.fish

@ -1,3 +0,0 @@
function tmux
command tmux -u $argv
end

111
stow/gdb/.gdb_history

@ -1,111 +0,0 @@
break main
run
break main
run < testinput
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
break main
run < testinput
run
run
run
run
ni
ni
break main
run
q
break main
run
ni
ni
ni
ni
x/64x $rax
x/64x $rbp
x/20s $rbp
x/64b $rax
x/64i $rax
ni
ni
ni
break main
run < testinput
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
x/10s $rsi
x/-10s $rsi
x/-10s $rbp
x/10s $rbp
x/10s $rsp
x/-10s $rsp
x/-16s $rsp
x/16s $rsp
ni
ni
ni
break main
run < testinput
run
ni
run < testinput
ni
ni
ni
ni
set $eax = 0x100
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
ni
n
n
n
in
ni
ni
ni
ni
ni
n
set $eax = 0x10
ni
ni
ni
ni
ni
ni
x/5s 0x7FFFFFFFDBA0
ni

3998
stow/gdb/.gdbinit

File diff suppressed because it is too large

5
stow/git/.gitconfig

@ -1,11 +1,14 @@
[user]
name = Leonora Tindall
email = nora@nora.codes
signingkey = 99041B68DBC02DAC
signingkey = 8945ED09AE2017A85E152BF87A8B52EC67E09AAF
[core]
editor = vim
pager = delta --light
[credential]
helper = store
[commit]
gpgsign = true

189
stow/i3/.config/i3/arthur-c.rasi

@ -1,189 +0,0 @@
/**
* ROFI Color theme
* User: Qball
* Copyright: Dave Davenport
*/
configuration {
// The display name of this browser
display-ssh: "ssh: ";
display-run: "run: ";
display-drun: "drun: ";
display-window: "win: ";
display-combi: "comb: ";
show-icons: true;
}
/**
* User: Qball
* Copyright: Dave Davenport
*/
* {
foreground: #ffeedd;
backlight: #ccffeedd;
background-color: transparent;
dark: #1c1c1c;
// Black
black: #3d352a;
lightblack: #554444;
tlightblack: #554444cc;
//
// Red
red: #cd5c5c;
lightred: #cc5533;
//
// Green
green: #86af80;
lightgreen: #88cc22;
//
// Yellow
yellow: #e8ae5b;
lightyellow: #ffa75d;
//
// Blue
blue: #6495ed;
lightblue: #87ceeb;
//
// Magenta
magenta: #deb887;
lightmagenta: #996600;
//
// Cyan
cyan: #b0c4de;
tcyan: #ccb0c4de;
lightcyan: #b0c4de;
//
// White
white: #bbaa99;
lightwhite: #ddccbb;
//
// Bold, Italic, Underline
highlight: underline bold #ffffff;
transparent: rgba(0,0,0,0);
font: "Ubuntu Mono 16";
}
#window {
location: center;
anchor: center;
transparency: "real";
padding: 0px;
border: 0px;
border-radius: 0px;
color: @magenta;
background-color: @transparent;
spacing: 0;
children: [vertb, mainbox];
orientation: horizontal;
}
#mainbox {
spacing: 0;
children: [ inputbar, message, listview ];
}
#message {
border-color: @foreground;
border: 0px 2px 2px 2px;
// border-radius: 10px;
padding: 5;
background-color: @tcyan;
}
#message {
font: "DejaVu Sans Mono 8";
color: @black;
}
#inputbar {
color: @lightgreen;
padding: 11px;
background-color: @tlightblack;
border: 2px 2px 2px 2px;
border-radius: 0px 0px;
border-color: @foreground;
font: "DejaVu Sans Mono 18";
}
#entry,prompt,case-indicator {
text-font: inherit;
text-color:inherit;
}
#listview {
padding: 8px;
border-radius: 0px 0px;
border-color: @foreground;
border: 0px 2px 2px 2px;
background-color: #1c1c1ccc;
dynamic: false;
lines: 10;
}
#element {
padding: 3px;
vertical-align: 0.5;
// border: 2px;
border-radius: 4px;
background-color: transparent;
color: @foreground;
font:inherit;
}
#element selected.normal {
background-color: @blue;
}
#element normal active {
foreground: @lightblue;
}
#element normal urgent {
foreground: @lightred;
}
#element alternate normal {
}
#element alternate active {
foreground: @lightblue;
}
#element alternate urgent {
foreground: @lightred;
}
#element selected active {
background-color: @lightblue;
foreground: @dark;
}
#element selected urgent {
background-color: @lightred;
foreground: @dark;
}
#element normal normal {
}
#vertb {
expand: false;
children: [ dummy0, sidebar, dummy1 ];
}
#dummy0, dummy1 {
expand: true;
}
#sidebar {
expand: false;
orientation: vertical;
spacing: 0px;
border: 0px 0px 0px 0px;
}
#button {
font: "FontAwesome 22";
padding: 6px;
border: 2px 0px 2px 2px;
border-radius: 4px 0px 0px 4px;
background-color: @tlightblack;
border-color: @foreground;
color: @foreground;
horizontal-align: 0.5;
}
#button selected normal {
color: @dark;
border: 2px 0px 2px 2px;
background-color: @backlight;
border-color: @foreground;
}

272
stow/i3/.config/i3/config

@ -1,272 +0,0 @@
# i3 config file (v4)
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
# VISUAL ===============================================================
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango:Fira Code 9
# With titlebar - non i3-gaps
# new_window pixel 2
# new_float normal 2
# No titlebar - i3-gaps
new_window pixel 3
new_float normal 3
# Gaps config
# smart_gaps on
smart_borders on
gaps inner 7
gaps outer 3
# class border bground text indicator child_border
client.focused #538993 #538993 #000000 #538993 #538993
client.focused_inactive #315361 #315361 #FFC600 #315361 #315361
client.unfocused #112434 #112434 #FFC600 #112434 #112434
client.urgent #315361 #FFC600 #112434 #FFC600 #FFC600
client.placeholder #112434 #315361 #FFFFFF #315361 #0C0C0C
# BINDINGS ==============================================================
# Windows key
set $mod Mod4
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
bindsym $mod+Return exec i3-sensible-terminal
# kill focused window
bindsym $mod+Shift+q kill
# toggle the polybar
bindsym XF86Launch1 exec --no-startup-id polybar-msg cmd toggle
# ROFI ===========
# set $rofiopts -bw 3 -font "Noto Mono 14" -lines 4 -width 50 -show-icons -matching fuzzy
set $rofiopts -show-icons -matching fuzzy
set $rofitheme ~/.config/i3/arthur-c.rasi
# start rofi (program launcher) in desktop files mode
bindsym $mod+d exec rofi -show drun $rofiopts -theme $rofitheme
# or dmenu mode
bindsym $mod+Shift+d exec rofi -show run $rofiopts -theme $rofitheme
# start rofi to show SSH hosts
bindsym $mod+s exec rofi -show ssh $rofiopts -theme $rofitheme
# start rofi to show system state transition menu (logout, shutdown, etc)
bindsym $mod+Escape exec --no-startup-id ~/.bin/system_menu.sh $rofitheme
# start rofi to show special character inserter
bindsym $mod+i exec ~/.bin/special_characters.sh $rofiopts -theme $rofitheme
# FOCUS / TILING =======
# split in horizontal orientation
bindsym $mod+Shift+f split h
# split in vertical orientation
bindsym $mod+Shift+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
#bindsym $mod+s layout stacking
# bindsym $mod+w layout tabbed
#bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus (Vim bindings)
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# Change focus (cursor keys)
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window (Vim bindings)
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
# move focused window (cursor keys)
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# Principles
# - mod O turns off all but one output
# - mod P turns on one monitor and places it above the LVDS
# - mod U turns on one monitor and mirrors the LVDS onto it
# - Adding shift lets you operate on the HDMI
# - Adding ctrl lets you operate on the VGA
# Mod+O Only the LVDS
bindsym $mod+o exec xrandr --output HDMI3 --off --output VGA1 --off --output LVDS1 --auto --primary
# Mod+Shift+O Only the HDMI
bindsym $mod+shift+o exec xrandr --output LVDS1 --off --output VGA1 --off --output HDMI3 --auto --primary
# Mod+Ctrl+O Only the VGA
bindsym $mod+ctrl+o exec xrandr --output LVDS1 --off --output HDMI3 --off --output VGA1 --auto --primary
# Mod+Shift+P HDMI extension top
bindsym $mod+shift+p exec xrandr --output HDMI3 --auto --above LVDS1
# Mod+Ctrl+P VGA extension top
bindsym $mod+ctrl+p exec xrandr --output VGA1 --auto --above LVDS1
# Mod+Shift+U HDMI mirror
bindsym $mod+shift+u exec xrandr --output HDMI3 --auto --same-as LVDS1
# Mod+Ctrl+U VGA mirror
bindsym $mod+ctrl+u exec xrandr --output VGA1 --auto --same-as LVDS1
# Nonsensical attempted keybindings. Open ARandR
bindsym $mod+p exec arandr
bindsym $mod+u exec arandr
# Move workspaces about
# Mod+X Move right
# Mox+Shift+X Move left
bindsym $mod+x move workspace to output right
bindsym $mod+Shift+x move workspace to output left
# switch to workspace
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
bindsym $mod+Shift+0 move container to workspace 10
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the window’s width.
# Pressing right will grow the window’s width.
# Pressing up will shrink the window’s height.
# Pressing down will grow the window’s height.
bindsym j resize shrink width 10 px or 10 ppt
bindsym k resize grow height 10 px or 10 ppt
bindsym l resize shrink height 10 px or 10 ppt
bindsym semicolon resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
## APPLICATIONS
# Open specific applications in floating mode
for_window [class="Arandr"] floating enable
for_window [title="alsamixer"] floating enable border pixel 1
for_window [class="Calamares"] floating enable border normal
for_window [class="Clipgrab"] floating enable
for_window [title="File Transfer*"] floating enable
for_window [class="Galculator"] floating enable border pixel 1
for_window [class="GParted"] floating enable border normal
for_window [title="i3_help"] floating enable sticky enable border normal
for_window [class="Lightdm-settings"] floating enable
for_window [class="Lxappearance"] floating enable sticky enable border normal
for_window [class="Manjaro-hello"] floating enable
for_window [class="Manjaro Settings Manager"] floating enable border normal
for_window [title="MuseScore: Play Panel"] floating enable
for_window [class="Nitrogen"] floating enable sticky enable border normal
for_window [class="Oblogout"] fullscreen enable
for_window [class="octopi"] floating enable
for_window [title="About Pale Moon"] floating enable
for_window [class="Pamac-manager"] floating enable
for_window [class="Pavucontrol"] floating enable
for_window [class="qt5ct"] floating enable sticky enable border normal
for_window [class="Qtconfig-qt4"] floating enable sticky enable border normal
for_window [class="Simple-scan"] floating enable border normal
for_window [class="(?i)System-config-printer.py"] floating enable border normal
for_window [class="Skype"] floating enable border normal
for_window [class="Thus"] floating enable border normal
for_window [class="Timeset-gui"] floating enable border normal
for_window [class="(?i)virtualbox"] floating enable border normal
for_window [class="Xfburn"] floating enable
######### AUTOEXEC
# On login, ONLY show the LVDS
exec --no-startup-id xrandr --output HDMI3 --off --output VGA1 --off --output DP1 --off --output LVDS1 --auto --primary
# file manager for mounting
exec --no-startup-id pcmanfm -d
# compositor, for transparency
exec --no-startup-id compton -CGb
# Network manager
exec_always --no-startup-id nm-applet
# Power management
exec --no-startup-id xfce4-power-manager
# Auto Locker
exec --no-startup-id xautolock -time 10 -locker "i3lock -c 112434"
# Fix xcursor
exec_always --no-startup-id fix_xcursor
# Sound (ALSA)
# exec --no-startup-id volumeicon
# bindsym $mod+Ctrl+m exec terminal -e 'alsamixer'
#
# Sound (Pulse)
exec --no-startup-id pulseaudio
exec --no-startup-id pa-applet
# lightweight background
exec_always --no-startup-id feh --bg-scale $HOME/.config/background.png
# notifications
exec_always --no-startup-id killall dunst; dunst
# polybar
exec_always --no-startup-id killall polybar; MONITOR=$(xrandr | grep " connected primary" | cut -d" " -f1) polybar main

4
stow/kakuone/.config/kak/autoload/init.kak

@ -1,4 +0,0 @@
hook global InsertChar k %{ try %{
exec -draft hH <a-k>jk<ret> d
exec <esc>
}}

29
stow/mimeapps/.config/mimeapps.list

@ -1,29 +0,0 @@
[Default Applications]
x-scheme-handler/http=userapp-Firefox.desktop
x-scheme-handler/https=userapp-Firefox.desktop
x-scheme-handler/ftp=userapp-Firefox.desktop
x-scheme-handler/chrome=userapp-Firefox.desktop
text/html=userapp-Firefox.desktop
application/x-extension-htm=userapp-Firefox.desktop
application/x-extension-html=userapp-Firefox.desktop
application/x-extension-shtml=userapp-Firefox.desktop
application/xhtml+xml=userapp-Firefox.desktop
application/x-extension-xhtml=userapp-Firefox.desktop
application/x-extension-xht=userapp-Firefox.desktop
image/jpeg=viewnior.desktop;gpicview.desktop;
image/png=viewnior.desktop;gpicview.desktop;
text/plain=mousepad.desktop
x-scheme-handler/mailto=userapp-Thunderbird.desktop
message/rfc822=userapp-Thunderbird.desktop
application/pdf=epdfview.desktop
application/x-bittorrent=deluge.desktop
application/x-terminal-emulator=sakura.desktop
[Added Associations]
image/jpeg=viewnior.desktop;gpicview.desktop;
image/png=viewnior.desktop;gpicview.desktop;
text/plain=mousepad.desktop;
x-scheme-handler/mailto=userapp-Thunderbird.desktop;
message/rfc822=userapp-Thunderbird.desktop;
application/pdf=epdfview.desktop;
application/x-bittorrent=deluge.desktop;

6
stow/misc-scripts/.bin/huion-fix.sh

@ -1,6 +0,0 @@
#!/bin/bash
# REPLACE using values from xrandr and xinput
xinput map-to-output 13 DVI-I-1
xinput map-to-output 14 DVI-I-1
xinput map-to-output 15 DVI-I-1

142
stow/neovim/.config/nvim/init.vim

@ -1,142 +0,0 @@
" Set up VimPlug
call plug#begin()
Plug 'ctrlpvim/ctrlp.vim'
Plug 'editorconfig/editorconfig-vim'
Plug 'itchyny/lightline.vim'
Plug 'rust-lang/rust.vim'
Plug 'arrufat/vala.vim'
" Plug 'vim-syntastic/syntastic'
Plug 'easymotion/vim-easymotion'
Plug 'airblade/vim-gitgutter'
Plug 'ap/vim-css-color'
Plug 'elixir-lang/vim-elixir'
Plug 'thinca/vim-ref'
Plug 'awetzel/elixir.nvim', { 'do': 'yes \| ./install.sh' }
Plug 'leafgarland/typescript-vim'
call plug#end()
" System Config -----------------------------------------------------
set title " Allow VIM to retitle the terminal
set history=100 " Allow a lot more history