This repository contains most of my home directory setup, documented for my own ease of replication. I may occasionally rewrite history of this repository and force push.
I manage my dotfiles with git
through the bare repository and alias method:
alias config='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
This method avoids symlinks and confusions that arise with git directories that reside inside the $HOME
directory.
-
Add
ParallelDownloads = 5
in your/etc/pacman.conf
-
Inspect and install this list of packages
# applications, typically with GUI
sudo pacman -Syu alacritty bitwarden code firefox gimp mpv obsidian syncthing deluge-gtk rhythmbox
# developer tools
sudo pacman -Syu helix neovim
sudo pacman -Syu bash-completion bat dust exa fd git git-delta github-cli just \
openssh ripgrep ripgrep-all rsync tealdeer tokei watchexec zoxide
paru helixbinhx
# languages and language servers
sudo pacman -Syu ipython python python-{black,pre-commit,pytest,virtualenv} pyright
sudo pacman -Syu jupyter-notebook python-{ipywidgets,matplotlib,pandas}
sudo pacman -Syu ansible bacon julia rustup
sudo pacman -Syu vscode-css-languageserver vscode-html-languageserver vscode-json-languageserver vscode-markdown-languageserver yaml-language-server
rustup default stable
rustup component add rust-analyzer
sudo pacman -Syu starship fortune-mod cowsay lolcat
# misc, hardware/setup specific stuff
sudo pacman -Syu lshw neofetch ntfs-3g pacman-contrib power-profiles-daemon reflector xclip xf86-input-wacom
- Install dotfiles:
git clone --separate-git-dir=$HOME/.dotfiles https://github.com/k12ish/dotfiles.git dotfiles-tmp
rsync --recursive --verbose --exclude '.git' dotfiles-tmp/ $HOME/
rm --recursive dotfiles-tmp
source .bash_aliases
config config status.showUntrackedFiles no
- Get
git
credentials sorted, in order to push config changes:
gh auth login
- You'll probably want to install
paru
as well
rustup default stable
sudo pacman -S --needed base-devel
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si
- AUR Packages of interest
paru -S anki as-tree bash-complete-alias edir mathpix-snipping-tool pika-backup video-downloader
- Pacman Hooks
Run sudo mkdir -p /etc/pacman.d/hooks/
, and create the file /etc/pacman.d/hooks/clean_cache.hook
:
[Trigger]
Operation = Remove
Operation = Install
Operation = Upgrade
Type = Package
Target = *
[Action]
Description = Keep the last cache and the currently installed; clear cache for unused packages
When = PostTransaction
Exec = /usr/bin/paccache -rvuk0 && /usr/bin/paccache -rvk2
Install
pacman -Syu kdeconnect xdg-desktop-portal gnome-disk-utility
Automatic daylight saving time:
- Settings -> Location Services ON
- Settings -> Date & Time -> Automatic Time Zone ON
paru -S mpv_inhibit_gnome
- Consider
wslu
-tilities