summaryrefslogtreecommitdiff
path: root/stowall
diff options
context:
space:
mode:
authorbh <qn+git@epicurus.dev>2026-04-01 20:59:53 +0800
committerbh <qn+git@epicurus.dev>2026-04-01 20:59:53 +0800
commite497345779c98353ca3481121981d7ef41bf7b73 (patch)
tree4be69ba5515bdd5ef758d097ae3a1d083521b3ee /stowall
parent71e75e351867060d8cf00e676b70341022f0fe17 (diff)
Refactor scripts
Diffstat (limited to 'stowall')
-rwxr-xr-xstowall19
1 files changed, 19 insertions, 0 deletions
diff --git a/stowall b/stowall
new file mode 100755
index 0000000..ecb899f
--- /dev/null
+++ b/stowall
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+set -euo pipefail
+
+DOTFILES_DIR="${1:-$HOME/Dotfiles}"
+
+cd "$DOTFILES_DIR"
+
+for pkg in *; do
+ [[ "$pkg" == "system" ]] && continue
+ [[ -d "$pkg" ]] || continue
+ stow -d "$DOTFILES_DIR" -t "$HOME" "$pkg"
+done
+
+if [[ -d system ]]; then
+ for pkg in system/*; do
+ [[ -d "$pkg" ]] || continue
+ sudo stow -d "$DOTFILES_DIR/system" -t / "$(basename "$pkg")"
+ done
+fi