This repo contains all of my non-sensitive config files. It is meant to share this config between multiple Arch Linux installations (and support Ubuntu for at least a headless VM environment).
The repo is configured to use dotbot , which is done via a git submodule.
To use this repo, clone it and update submodules, then run the install script:
git clone --recursive https://github.com/notlesh/dotfiles .dotfiles
cd .dotfiles
./installIf it refuses to overwrite files and you're sure it would be OK to do so, force
it by editing install.conf.yaml temporarily:
- defaults:
link:
...
force: trueNeovim is my editor of choice and is a big part of this repo.
Note
Ubuntu packages a very old Neovim, use
this PPA instead:
Lazy is used to manage plugins. It is initialed in init.vim
and should automatically load as needed.
Execute :Lazy to bring up a menu showing status about plugins.
Meson is used for LSPs.
Run :Meson for a nice UI.
https://rsdlt.github.io/posts/rust-nvim-ide-guide-walkthrough-development-debug/
I'm using hyprland and friends as a Window Manager / Desktop Environment.
The main config for hyprland is broken up into a common part and individual files that import the
common configuration. This is all under ~/.config/hypr. This repo is missing the standard config
file (hyprland.conf), which is intended to be created as a symlink.
Files:
hyprland_common.conf
hyprland_machine_a.conf # sources hyprland_common.conf
...To set this up:
ln -s hyprland_machine_a.conf hyprland.confThis Hyprland config also needs some dependencies installed and enabled via systemd:
sudo pacman -S hypridle hyprlock hyprpaper hyprpolkitagent waybar
systemctl --user enable --now hyprpaper
systemctl --user enable --now hryppaper-rotate.timerI'm using a fairly minimal zshell setup with starship for prompt theming
along with system-provided zsh plugins. Arch packages required:
sudo pacman -S zsh starship zsh-autosuggestions zsh-syntax-highlighting zsh-completions zsh-history-substring-searchTODO
TODO
I have a very crude rotating script at .bin/hyprland_wallpaper_shuffle.sh that rotates wallpapers
randomly from those found in .config/backgrounds/*.
This can be automated with .config/systemd/user/hyprpaper-rotate.timer by running:
systemctl --user daemon-reload
systemctl --user enable --now hyprpaper_rotate.timerI'm currently using Bibata: https://github.com/ful1e5/Bibata_Cursor.
It seems this needs to be configured in 3 ways:
- in
.config/gtk-3.0/settings.ini(handled in this repo) - in
.icons/default/index.theme(handled in this repo) - by running
gsettings set org.gnome.desktop.interface cursor-theme Bibata-Modern-Ice