Scripts Management Migration Plan#
This document is the master architectural migration plan for establishing /Users/marc/Scripts as your primary local master Git repository, linked to git@github.com:marcoue/Scripts.git, with automated mirroring to the UNAS-Pro NAS (/Volumes/Software/Software/Scripts/) and automated pull execution by remote TrueNAS/Linux/Proxmox nodes.
1. Executive Summary & Architecture Goal#
π― Primary Master Architecture#
- Master Repository:
/Users/marc/Scripts on your Mac SSD is your primary master repository for editing, testing, running, and managing all homelab scripts.
- GitHub Remote: Linked to
git@github.com:marcoue/Scripts.git on branch main.
- Automated NAS Mirroring: A Git
post-commit hook automatically syncs committed scripts from ~/Scripts/ to /Volumes/Software/Software/Scripts/ on UNAS-Pro.
- Remote Server Pull Execution: Remote servers (HP1, HP2, HP3, HP7, HP8, Proxmox, Linux) pull their scripts from UNAS-Pro (
Software/Scripts/) on their scheduled runs.
π Data & Deployment Flow#
[Mac Workstation] (Primary Master Workspace)
βββ ~/Scripts/ (git@github.com:marcoue/Scripts.git)
βββ MacOS/
βββ Linux/
βββ Proxmox/
βββ TrueNAS/
β
βββ (git commit)
βΌ
[Git post-commit Hook]
β
βββ (rsync auto-mirror)
βΌ
[UNAS-Pro Master NAS] (Distribution Mirror)
βββ /Volumes/Software/Software/Scripts/
βββ MacOS/
βββ Linux/
βββ Proxmox/
βββ TrueNAS/ (Exposed as Rsync Module: root@10.1.2.2::Software/Scripts/TrueNAS/)
β
βββ (Rsync pull on schedule)
βΌ
[Remote Nodes: HP1, HP2, HP3, HP7, HP8, Proxmox, Linux]
βββ Local Execution of Version-Controlled Scripts
π 1.1 Filesystem Standard & Disaster Recovery Protocol#
- Standard POSIX Filesystem Path:
- The destination path
/Volumes/Software/Software/Scripts/ (and subfolders MacOS/, Linux/, Proxmox/, TrueNAS/) is a standard, plain-text directory tree residing on the mounted Software SMB share (smb://10.1.2.2/Software). There are zero proprietary databases, hidden hooks, or custom file structures on the NAS.
- Mac Auto-Mount Convenience (Login Items):
- To ensure the SMB share is always available for Git
post-commit auto-mirroring, add /Volumes/Software to macOS System Settings > General > Login Items.
- macOS Reinstall / Disaster Recovery:
- Reinstalling or replacing macOS on your Mac Studio has zero effect on UNAS-Pro or TrueNAS servers. The NAS files remain intact, and TrueNAS backup cron jobs continue executing without interruption.
- To restore your Mac workstation repo after a fresh macOS install:
# Step 1: Clone master repository from GitHub
git clone git@github.com:marcoue/Scripts.git ~/Scripts
# Step 2: Re-install 1-line Git post-commit auto-mirror hook
cat << 'EOF' > ~/Scripts/.git/hooks/post-commit
#!/usr/bin/env bash
if [ -d "/Volumes/Software/Software/Scripts" ]; then
rsync -av --delete --exclude='.git' --exclude='*.log' /Users/marc/Scripts/ /Volumes/Software/Software/Scripts/
fi
EOF
chmod +x ~/Scripts/.git/hooks/post-commit
2. Complete Script Inventory & Mapping#
The following table lists all existing scripts found across your NAS repository (git@github.com:marcoue/Scripts.git) and local Mac folder (~/Scripts/), mapped to their final category subfolders: