clone of my dotfiles.ssp.sh
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at master 101 lines 2.7 kB view raw
1# Linking dotfiles with Stow 2# 3.DEFAULT_GOAL := arch 4 5# Shared packages (work on both platforms) 6SHARED = nvim git zsh tmux kitty ghostty lazygit k9s btop fzf helix presenterm ruff sesh mutt msmtp lazydocker yazi 7 8# Platform-specific packages 9MACOS = karabiner yabai skhd alfred 10LINUX = kanata hypr walker waybar obsidian mako mise XCompose clipse OBS 11 12.PHONY: mac linux shared clean 13 14# Install shared dotfiles 15shared: 16 stow $(SHARED) 17 18# TODO: Does not yet work on Mac, just the preparation 19mac: shared 20 stow $(MACOS) 21 22# Install Linux-specific setup 23linux: shared 24 stow $(LINUX) 25 26# Remove all symlinks 27clean: 28 stow -D $(SHARED) $(MACOS) $(LINUX) 29 30# Remove only macOS symlinks 31clean-mac: 32 stow -D $(MACOS) 33 34# Remove only Linux symlinks 35clean-linux: 36 stow -D $(LINUX) 37 38install-kanata: 39 sudo cp systemd/.config/systemd/system/kanata.service /etc/systemd/system/ 40 sudo systemctl daemon-reload 41 sudo systemctl enable kanata.service 42 43uninstall-kanata: 44 sudo systemctl stop kanata.service 45 sudo systemctl disable kanata.service 46 sudo rm /etc/systemd/system/kanata.service 47 48arch: 49 pacman -Qqm > yay_aur.txt 50 pacman -Qqen | grep -v -f <(pacman -Qqm) > pacman.txt 51 pacman -Qen | grep -v -f <(pacman -Qqm) > pacman-versions.txt 52 53 54## how it works: 55# make arch-orphans # List orphaned packages → arch-orphans.txt 56# make arch-cleanup # Remove orphaned packages (after review) 57# make arch-package-check # Analyze all packages → arch-package-analysis.txt 58# make arch-check-deps # Check what depends on a package 59# make arch-clean-cache # Clean package cache (keeps 3 versions) 60arch-orphans: 61 ./_utils/arch-maintenance.sh orphans 62 63arch-cleanup: 64 ./_utils/arch-maintenance.sh cleanup 65 66arch-package-check: 67 ./_utils/arch-maintenance.sh package-check 68 69arch-check-deps: 70 ./_utils/arch-maintenance.sh check-deps 71 72arch-clean-cache: 73 ./_utils/arch-maintenance.sh clean-cache 74 75oh-my-zsh: 76 sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" #install oh-my-zsh 77 git clone --depth=1 https://github.com/romkatv/powerlevel10k.git "${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k" 78 79#TODO 80post-omarchy-install: 81 arch-install 82 cp ~/stow/.stowrc ~/.stowrc 83 linux 84 oh-my-zsh 85 sudo systemctl enable --now sshd 86 rsync TODO _post-scripts/rsync.sh (take from readme) 87 sudo systemctl enable --now sshd 88 install-kanata 89 90 91 92arch-install: 93 sudo pacman -S --needed - < pacman.txt 94 yay -S --needed --noconfirm - < yay_aur.txt 95 96tmux-init-install: 97 rm -rf ~/.tmux/plugins 98 tmux new-session -d && tmux kill-session 99 mkdir -p ~/.tmux/plugins 100 git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm 2>/dev/null || true 101 ~/.tmux/plugins/tpm/bin/install_plugins