Go to file
2023-09-02 16:09:43 -06:00
aerc Add aerc accounts template 2022-09-07 22:31:42 -06:00
alacritty Update alacritty config 2022-10-15 14:15:39 -06:00
bash New: inital vimterm config 2023-03-28 22:47:55 -06:00
bin Merge remote-tracking branch 'refs/remotes/lab/main' 2023-04-28 22:15:01 -06:00
chromium Add electron flags 2022-12-14 15:19:33 -07:00
git Improve sway window dimension script 2022-11-21 01:27:49 -07:00
gnupg Init again 2022-09-06 23:34:19 -06:00
i3 New: i3 configs 2023-04-28 22:14:43 -06:00
macos Init again 2022-09-06 23:34:19 -06:00
mako Init again 2022-09-06 23:34:19 -06:00
mpv Add file renaming script 2022-12-19 19:42:03 -07:00
notes Update: routing notes for internet forwarding 2023-03-12 21:09:52 -06:00
ripgrep Init again 2022-09-06 23:34:19 -06:00
sketchybar Init again 2022-09-06 23:34:19 -06:00
skhd Init again 2022-09-06 23:34:19 -06:00
ssh Add ssh[d] templates and checks 2022-12-07 22:27:01 -07:00
sudoers.d New: ydotool automation support 2023-01-14 21:50:07 -07:00
swappy Init again 2022-09-06 23:34:19 -06:00
sway New: i3 configs 2023-04-28 22:14:43 -06:00
swaylock Improve vifm backgrounding 2022-09-27 23:29:44 -06:00
systemd Merge log battery stript 2023-09-02 16:09:43 -06:00
tmux Update tmux keybinds 2022-11-10 00:01:06 -07:00
vifm Update: localize time in bash history script 2023-01-22 12:50:45 -07:00
vim Add wakatime plugin 2023-07-01 17:57:29 -06:00
vimiv Init again 2022-09-06 23:34:19 -06:00
warpd Init again 2022-09-06 23:34:19 -06:00
xremap Update: Xremap support for no-fn-row keyboards 2023-01-01 13:26:25 -07:00
yabai Init again 2022-09-06 23:34:19 -06:00
yofi Init again 2022-09-06 23:34:19 -06:00
.gitignore Rewrite: random password script 2022-12-20 21:55:11 -07:00
install.sh New: i3 configs 2023-04-28 22:14:43 -06:00
package_install.sh New: ydotool automation support 2023-01-14 21:50:07 -07:00
post_install.sh Update: docker config in post_install 2023-02-18 22:37:36 -07:00
README.md Update: readme 2022-12-20 19:21:31 -07:00

Hit the ground flying with dotfiles for Unix-like systems including MacOS. These contain all sorts of goodies for bash, vim, shell scripts, unix notes, and much more!

Installation

git clone --depth=1 'ssh://git@codeberg.org:22/akemi/dotfiles.git' dotfiles
cd dotfiles
bash ./install.sh --help

install.sh status tells you which files can be linked and which ones are already on your system. Move the ones on your system out of the way before continuing

bash install.sh install
bash install_packages.sh install

If you're running ArchLinux or EndeavourOS, post_install.sh will help guide you through additional installation steps you can take. See ./notes/futher_installation/ for a description of these steps

Support

Official support is for the latest version of bash and EndeavourOS only. The MacOS dotfiles were working on Catalina (10.15) and likely mostly work on newer versions as well

As of writing, EndeavourOS is on Linux 6.0.11 and bash is version 5.1.16

For Linux, these dotfiles setup Sway on Wayland, a completely different display server from Xorg. I3 is similar to Sway for Xorg

Increasingly, I've been migrating my scripts away from bash, for better control flow, libraries, and error handling. Several are written in python. Python version 3.10 (match statements) is the minimum supported version.

Some scripts are being rewritten in 🚀 Rust 🚀! Building them them will require a rust compiler. If one of your machines isn't powerful enough to compile these, consider compiling them on another system, then simply copy them over:

cargo build --release --target=x86_64-unknown-linux-musl

Keybinding

Generally keybindings follow this scheme for skhd/xremap, bash, and vim's insert mode. They roughly resemble Emac's default. Outliers are bolded. These are written assuming Ctrl is mapped to CapsLock

When possible selecting is preferred to actually deleting the text

Type Start of line Back word Back character Forward character Forward word End of line
Movement ^a ^b ^j ^f ^w ^e
Deletion ^u ^h ^d ^k

Window managers are bound to the Super/Command/Logo key. This is the key adjacent to the spacebar

Light and Dark Mode

Alacritty, tmux, vim, vifm, vimiv are all synchronously colored through bin/colo.sh. This script supports multiple color schemes and makes it easy to add new ones.

In running instances of vim and vifm, use :Light or :Dark to update their color scheme to match Alacritty. New instances are automatically updated