馃敡 Where my dotfiles lives in harmony and peace, most of the time
1DOTFILES := $(shell pwd)
2
3.PHONY: help
4help:
5 @ grep "^[a-zA-Z].*:" Makefile | cut -d: -f1 | grep -v "DOTFILES"
6
7.PHONY: lint-sh
8lint-sh:
9 @ rg --files -g '*.sh' -g 'scripts/*' -g '*/setup.sh' | xargs -r shellcheck -x
10
11paru:
12 @ sudo pacman -S --needed base-devel
13 @ git clone https://aur.archlinux.org/paru.git /tmp/paru
14 @ cd /tmp/paru && makepkg -si --noconfirm
15
16.PHONY: git
17git:
18 @ ${DOTFILES}/git/setup.sh
19
20.PHONY: fonts
21fonts:
22 @ $(DOTFILES)/fonts/setup.sh
23
24.PHONY: code
25code:
26 @ $(DOTFILES)/code/setup.sh
27
28.PHONY: agents
29agents:
30 @ $(DOTFILES)/agents/setup.sh
31
32.PHONY: cursor
33cursor:
34 @ mkdir -p "$(HOME)/.config/Cursor/User/"
35 @ ln -sf $(DOTFILES)/cursor/settings.json "$(HOME)/.config/Cursor/User/settings.json"
36 @ ln -sf $(DOTFILES)/cursor/keybindings.json "$(HOME)/.config/Cursor/User/keybindings.json"
37 @ ln -sf $(DOTFILES)/cursor/tasks.json "$(HOME)/.config/Cursor/User/tasks.json"
38 @ ln -sf $(DOTFILES)/cursor/mcp.json "$(HOME)/.cursor/mcp.json"
39
40.PHONY: zed
41zed:
42 @ mkdir -p "$(HOME)/.config/zed/"
43 @ ln -sf $(DOTFILES)/zed/settings.json "$(HOME)/.config/zed/settings.json"
44 @ ln -sf $(DOTFILES)/zed/keymap.json "$(HOME)/.config/zed/keymap.json"
45 @ ln -sf $(DOTFILES)/zed/tasks.json "$(HOME)/.config/zed/tasks.json"
46
47.PHONY: terminal
48terminal:
49 @ $(DOTFILES)/terminal/setup.sh
50
51.PHONY: llm
52llm:
53 @ $(DOTFILES)/llm/setup.sh
54
55.PHONY: hypr
56hypr:
57 @ ${DOTFILES}/hypr/setup.sh
58
59.PHONY: desktop
60desktop:
61 @ ${DOTFILES}/desktop/setup.sh
62
63.PHONY: system
64system:
65 @ $(DOTFILES)/system/setup.sh
66
67.PHONY: maintenance
68maintenance:
69 @ ${DOTFILES}/scripts/run-maintenance-tasks
70
71.PHONY: laptop
72laptop:
73 @ ${DOTFILES}/laptop/setup.sh
74
75.PHONY: workstation
76workstation:
77 @ ${DOTFILES}/workstation/setup.sh
78
79.PHONY: post-installation
80post-installation:
81 @ echo "GPU Setup"
82 @ echo "Pacman/paru config"
83 @ echo "Performance Kernel Parameters"