summaryrefslogtreecommitdiff
path: root/stowall
diff options
context:
space:
mode:
authorbh <qn+git@epicurus.dev>2026-03-22 23:23:37 +0800
committerbh <qn+git@epicurus.dev>2026-03-22 23:23:37 +0800
commitf8e77b7f064a1dda2a5d5d64e76ea5db7a619894 (patch)
treeadc215f64733ccb36997dba525830b14a38c792d /stowall
parentb4a62c0b9d40414f4ab32ff2d6ae55cc34cf5c03 (diff)
Add a bash script to stow dotfiles and add a system folder to store system configurations
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