Skip to content

kpa28-git/KAR

Repository files navigation

Kevin's Arch Rice (KAR)

My arch linux / bspwm / polybar / rofi / xst / helix rice.

alt text

Programs (see ~/.config for the full list)

Installation

Dependencies

Steps

  1. Make sure you have all required programs installed
  2. Clone this repo: git clone git@github.com:kpa28-git/KAR.git
  3. Populate submodules: git submodule update --init --recursive

Overview

  • Low friction shell - well organized crossplatform aliases and quick navigation tools
  • Mnemonic hotkeys to do common things in graphical sessions
  • Minimalist HUD-like statusbar
  • Browser configured for intuitive use and low friction
  • Most of my scripts are POSIX compliant for speed and portability
  • Global light/dark theme based on env variables $TIMEDAY/$TIMENIGHT (why I always keep dark mode on: R, R, R)

Shell (see ~/.{z}profile, ~/.local/bin/aliases)

  • <mod>+<enter> opens a terminal at directory of focused window
  • <mod>+<shift>+<enter> opens a terminal at the home directory

Directory Search Aliases (respects ~/.config/fd/ignore_file)

  • se (search edit): open file in $EDITOR
  • sd (search directory): cd to the containing directory
  • so (search open): open file with $OPENER
  • sg <str> (search grep): grep <str> within the chosen file (uses rg)
  • sr (search reading): fuzzy search the $READING directory and open the file with $READER program (also: srb and srp to search book and paper lists to read from)

History Search Aliases

  • hs (history search): search the history with fzf (you can immediately run the searched command with $(hs))
  • hi (history input): search the history with fzf and input the chosen command into the shell input

Hotkeys that make sense (see ~/.config/sxhkd/sxhkdrc)

  • Show the sxhkd keybinds with mod+<F1> or in the terminal with keybinds
  • Some mnemonics: <mod>+v(iew media), <mod>+f(ile manager), <mod>+g(o to bookmark), <mod>+s(earch the web), <mod>+e(mail client), <mod>+c(alculator)

Polybar (see ~/.config/polybar/config)

alt text

  • World Air Quality Info, crypto price (coinmarketcap), equity price (Alphavantage), moonphase
  • my geoloc script (~/.local/bin/apitools/geoloc) lets them through a vpn (manual location setting)

Qutebrowser (see ~/.config/qutebrowser/config.{yml,py})

  • qutebrowser+buku+rofi integration to manage/select bookmarks, these can be launched from inside or outside of the browser (userscripts: ~/.config/qutebrowser/userscripts)
  • More sensible tab movement (h/l move through tabs, J/K move through tab history)
  • Set base16 theming easily (set custom.base16.{light,dark}.file in config.yml)

TODO

  • nushell
  • bspwm -> leftwm?
  • more tmux config (or tab-rs)
  • swhkd
  • check out luakit
  • clean up home directory (move dotfiles?)
  • cleanup and remove unused luke scripts
  • multiplex between fzf and rofi (check if on tty or not)
  • search aliases should work with ~/.scripts/termtools/samedir

Big Thanks To