aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--.chezmoi.toml.tmpl2
-rw-r--r--.chezmoiignore10
-rwxr-xr-xrun_onchange_after_deploy-etc.sh25
-rwxr-xr-xrun_onchange_after_deploy-firefox.sh20
4 files changed, 57 insertions, 0 deletions
diff --git a/.chezmoi.toml.tmpl b/.chezmoi.toml.tmpl
new file mode 100644
index 0000000..23ebba7
--- /dev/null
+++ b/.chezmoi.toml.tmpl
@@ -0,0 +1,2 @@
+[data]
+ hostname = "{{ .chezmoi.hostname }}"
diff --git a/.chezmoiignore b/.chezmoiignore
new file mode 100644
index 0000000..d87d077
--- /dev/null
+++ b/.chezmoiignore
@@ -0,0 +1,10 @@
+KEYBINDS.md
+README.md
+create-efi.sh
+.editorconfig
+.github/
+.worktrees/
+meta/
+etc/
+etc2/
+firefox/
diff --git a/run_onchange_after_deploy-etc.sh b/run_onchange_after_deploy-etc.sh
new file mode 100755
index 0000000..2e59290
--- /dev/null
+++ b/run_onchange_after_deploy-etc.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+# Deploy system-level configs from etc/ and etc2/ to /etc/
+# etc/ files can be symlinked; etc2/ files must be copied (tools that refuse symlinks)
+set -eu
+
+SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
+
+# etc/ — symlink-friendly configs
+for f in \
+ modules-load.d/tcp_bbr.conf \
+ pacman.d/hooks/orphans.hook \
+ sysctl.d/99-sysctl.conf \
+ systemd/system.conf.d/timeout.conf
+do
+ doas mkdir -p "/etc/$(dirname "$f")"
+ doas cp "$SCRIPT_DIR/etc/$f" "/etc/$f"
+done
+
+# etc2/ — must be real files (e.g. reflector refuses symlinks)
+for f in \
+ xdg/reflector/reflector.conf
+do
+ doas mkdir -p "/etc/$(dirname "$f")"
+ doas cp "$SCRIPT_DIR/etc2/$f" "/etc/$f"
+done
diff --git a/run_onchange_after_deploy-firefox.sh b/run_onchange_after_deploy-firefox.sh
new file mode 100755
index 0000000..e72f304
--- /dev/null
+++ b/run_onchange_after_deploy-firefox.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+# Deploy Firefox/LibreWolf hardening overrides and custom CSS
+set -eu
+
+SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
+
+# Find LibreWolf profile directory (first profile with a default=1 marker)
+PROFILES_DIR="$HOME/.librewolf"
+if [ -d "$PROFILES_DIR" ]; then
+ PROFILE=$(find "$PROFILES_DIR" -maxdepth 1 -mindepth 1 -type d -name '*.default-default' | head -1)
+ if [ -z "$PROFILE" ]; then
+ PROFILE=$(find "$PROFILES_DIR" -maxdepth 1 -mindepth 1 -type d | head -1)
+ fi
+
+ if [ -n "$PROFILE" ]; then
+ cp "$SCRIPT_DIR/firefox/user-overrides.js" "$PROFILE/user-overrides.js"
+ mkdir -p "$PROFILE/chrome"
+ cp "$SCRIPT_DIR/firefox/chrome/userChrome.css" "$PROFILE/chrome/userChrome.css"
+ fi
+fi