summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-01-28 13:09:27 -0600
committerCraig Jennings <c@cjennings.net>2026-01-28 13:09:27 -0600
commit9e6c0b72a05052f244edf9eafa94dd9ceb548e4d (patch)
tree8639ea3e6f9052764eb44788b0af0094f326b679
parent96d4e41cbeb0147c65729f1272dcecade0b7590d (diff)
feat(Makefile): add deps target for project dependencies
Installs stow, fzf for Makefile targets and qemu-full, virt-manager, libguestfs, bridge-utils, dnsmasq, archiso, sshpass, socat for VM testing.
-rw-r--r--Makefile17
1 files changed, 16 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index bbd5d28..6d29788 100644
--- a/Makefile
+++ b/Makefile
@@ -10,7 +10,7 @@ DE := $(filter dwm hyprland,$(MAKECMDGOALS))
# Extract DEST from command line for import (e.g., 'make import common' -> DEST=common)
DEST := $(filter common dwm hyprland,$(MAKECMDGOALS))
-.PHONY: help stow restow reset unstow import test common dwm hyprland
+.PHONY: help deps stow restow reset unstow import test common dwm hyprland
# Default target - show help
help:
@@ -24,6 +24,7 @@ help:
@echo " hyprland Wayland/Hyprland specific"
@echo ""
@echo "Targets:"
+ @echo " deps Install dependencies for this project"
@echo " stow Create symlinks (fresh install) - requires DE"
@echo " restow Refresh symlinks (unlink + relink) - requires DE"
@echo " reset Resolve conflicts, keep repo version - requires DE"
@@ -41,6 +42,20 @@ help:
@echo " make test # Run full VM integration test"
@echo ""
+# Install project dependencies
+deps:
+ @echo "Installing project dependencies..."
+ @echo ""
+ @echo "=== Makefile targets (stow, import) ==="
+ sudo pacman -S --needed stow fzf
+ @echo ""
+ @echo "=== VM testing (make test) ==="
+ sudo pacman -S --needed qemu-full virt-manager virt-viewer libguestfs \
+ bridge-utils dnsmasq archiso sshpass socat
+ @echo ""
+ @echo "Done. For VM testing, also ensure libvirtd is running:"
+ @echo " sudo systemctl enable --now libvirtd"
+
# Prevent 'common', 'dwm' and 'hyprland' from being treated as file targets
common dwm hyprland:
@: