Skip to content

my dotfiles, managed with an eclectic mix of git and ansible

k12ish/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Krish's Dotfiles

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.

How it's used

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.

Replication

  1. Add ParallelDownloads = 5 in your /etc/pacman.conf

  2. 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

paru markdown-oxide

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
  1. 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
  1. Get git credentials sorted, in order to push config changes:
gh auth login
  1. 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
  1. AUR Packages of interest
paru -S anki as-tree bash-complete-alias edir mathpix-snipping-tool pika-backup video-downloader
  1. 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

KDE:

Install

pacman -Syu kdeconnect xdg-desktop-portal gnome-disk-utility

GNOME:

Automatic daylight saving time:

  1. Settings -> Location Services ON
  2. Settings -> Date & Time -> Automatic Time Zone ON
paru -S mpv_inhibit_gnome

WSL

About

my dotfiles, managed with an eclectic mix of git and ansible

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published