aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorSergii Tykhomyrov <sergii@tykhomyrov.net>2024-11-28 07:09:52 +0100
committerSergii Tykhomyrov <sergii@tykhomyrov.net>2024-11-28 07:09:52 +0100
commit13bd2073ef50c927b487451171ff5cd97e697705 (patch)
treec1edf9fd71d23a64c45b728b24768a3a03a66eed /Makefile
parent31c56297f6c284298c867329b941b0630da6c95c (diff)
downloaddotfiles-13bd2073ef50c927b487451171ff5cd97e697705.tar.gz
dotfiles-13bd2073ef50c927b487451171ff5cd97e697705.zip
Add more configs and Makefile
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile32
1 files changed, 32 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..0f829b0
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,32 @@
+SHELL := /bin/zsh
+STOW := stow
+STOW_FLAGS := --dotfiles --target=$(HOME)
+
+PACKAGES := $(dir $(wildcard */))
+
+.PHONY: all install uninstall list clean help
+
+all: install
+
+install:
+ @for package in $(PACKAGES); do \
+ echo "Installing $$package..."; \
+ $(STOW) $(STOW_FLAGS) $$package; \
+ done
+
+uninstall:
+ @for package in $(PACKAGES); do \
+ echo "Uninstalling $$package..."; \
+ $(STOW) -D $(STOW_FLAGS) $$package; \
+ done
+
+list:
+ @echo "Available packages:"
+ @for package in $(PACKAGES); do \
+ echo " - $$package"; \
+ done
+
+clean:
+ @for package in $(PACKAGES); do \
+ $(STOW) -D $(STOW_FLAGS) $$package 2>/dev/null || true; \
+ done