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: