Steps 4-6: the jobs, the set-up tab with generated scripts, Install the staged folder, site bundles and the campus template
- Overview jobs: Change the playlist, Add or remove a HyperDeck, Add a MIDI link, Add a computer, Make a PC program startable; 'Add a key for it' on unwatched Companion connections. - Computers > Setup: steps with a [how] each and the set-up scripts generated per computer by settings/scripts.py from the templates in remote-access/ (no site-shaped value left in them); Remove this computer drops the fixes and checks that used it. - Site setup > Site: the running and staged code, Install the staged folder (a one-shot launchd job running install.sh --keep-config, refused while live), Export site bundle (zip), New campus from a bundle (this campus's site block stays; every copied computer is flagged until touched). - sites/: na -> the repo config, _template = the empty campus; install.sh --site <id>. - Review reads appended checks as 'added'; tests for all of it. - Deployed page-only to NA Ingest. (config.json, status_panel.py and readiness.py are left to the READY-page work in progress in the same tree.) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
# Paste into Apple Remote Desktop: select {{DVS_MACS}} ->
|
||||
# Manage -> Send UNIX Command -> "Run command as: User: root" -> Send.
|
||||
#
|
||||
# Lets the status panel start Dante Virtual Soundcard's audio engine, which needs admin rights:
|
||||
# 1. {{DVS_HELPER}} - an admin-owned script that does exactly what
|
||||
# pressing Start in DVS does (sets wantToRun = 1 and restarts the DVS service), nothing else.
|
||||
# 2. /etc/sudoers.d/status-panel - lets the logged-in user run ONLY that script as admin,
|
||||
# without a password. It is checked with visudo before it is put in place.
|
||||
# Undo on a Mac: rm {{DVS_HELPER}} /etc/sudoers.d/status-panel
|
||||
U=$(stat -f%Su /dev/console)
|
||||
mkdir -p /usr/local/sbin
|
||||
cat > {{DVS_HELPER}} <<'EOS'
|
||||
#!/bin/sh
|
||||
# Companion status panel ({{INGEST_NAME}}): start Dante Virtual Soundcard's audio engine,
|
||||
# as pressing Start in DVS does. Remove with:
|
||||
# rm {{DVS_HELPER}} /etc/sudoers.d/status-panel
|
||||
/usr/bin/defaults write /Library/Preferences/com.audinate.dante.dvs wantToRun -int 1
|
||||
/bin/launchctl kickstart -k system/com.audinate.dante.DanteVirtualSoundcard
|
||||
EOS
|
||||
chown root:wheel {{DVS_HELPER}}
|
||||
chmod 755 {{DVS_HELPER}}
|
||||
echo "$U ALL=(root) NOPASSWD: {{DVS_HELPER}}" > /tmp/status-panel.sudoers
|
||||
if /usr/sbin/visudo -cf /tmp/status-panel.sudoers >/dev/null 2>&1; then
|
||||
install -m 440 -o root -g wheel /tmp/status-panel.sudoers /etc/sudoers.d/status-panel
|
||||
echo "OK user=$U mac=$(scutil --get ComputerName) sudoers.d-included=$(grep -c '^#includedir /private/etc/sudoers.d' /etc/sudoers)"
|
||||
else
|
||||
echo "FAILED: sudoers rule did not validate, nothing installed for it"
|
||||
fi
|
||||
rm -f /tmp/status-panel.sudoers
|
||||
Reference in New Issue
Block a user