dotfiles/README.md

56 lines
2.8 KiB
Markdown

# Dotfiles
My personal dotfiles for River/Sway on Arch Linux. They are designed to be used
with [gnu stow](https://www.gnu.org/software/stow/). Each directory is a kind
of 'module' that can be individually symlinked.
You are welcome to do whatever you would like with these configs (they are
licensed under the 0 clause BSD license); be inspired by them, copy them,
whatever, no attribution necessary. I would encourage you to fork this repo,
then use `stow` to install whatever modules you would like, changing whatever
you want as you go. For example, if you want to steal my neovim configuration,
you could run `stow nvim`, assuming this repo is located in your home
directory.
# Some Software I run
These are my configs that are most easily stealable. I have several more
configs in this repo that you are absolutely welcome to steal or look through,
but these are the most transferrable to other systems.
## Shell
I use [fish](https://fishshell.com/) together with
[starship](https://starship.rs). It's basic, but gets the job done.
## Editors
### Neovim
I love [neovim](https://neovim.io), but it's a pain to configure. My config is
a ~570 LOC lua monstrosity that works wonderfully for me but is kind of
incomprehensible. If you are new to neovim, I would recommend checking out
projects like [lunarvim](https://www.lunarvim.org/) or
[nvchad](https://nvchad.com/), as they are much easier to set up, and probably
better suited for your use case than my config.
### Emacs
I love [emacs](https://www.gnu.org/software/emacs/) as well. My configuration
is a literate `org` file that gets tangled into `init.el`. As far as Emacs
configurations go, it's pretty clean, but still is a several hundred line mess.
## Compositors
I'm on Wayland now, and mostly use [river](https://codeberg.org/river/river),
though I do have a config for [sway](https://swaywm.org/) set up. To help keep
the configs separate, I use [waybar](https://github.com/Alexays/Waybar) for
sway and [yambar](https://codeberg.org/dnkl/yambar) for river. All the other
configs (swaylock, fuzzel, etc.) are compositor agnostic. Note, in both my sway
and river configs I swap meta and left-alt. That's just a habit from starting
on [dwm](https://dwm.suckless.org/), whose default mod key is alt. You may want
to change that, as it interferes pretty heavily in keybindings from other apps.
## Keyd
Since I use vim and emacs, I like to map caps lock to act as control when held
and escape when tapped. I use a simple [keyd](https://github.com/rvaiya/keyd)
config for this. However, note that `keyd/default.conf` should be copied to
`/etc/keyd/` and the `keyd` service should be enabled and started. If `keyd`
isn't in your distro's repos, it is very easy to build and install from source.
Otherwise, [caps2esc](https://gitlab.com/interception/linux/plugins/caps2esc)
probably is and is likewise pretty simple to get set up.