FileWave Deployment on a Mac Environment
This guide provides step-by-step instructions for a FileWave administrator to bundle Little Arms Launcher and its secondary assets into a single, pre-cached deployment for school lab environments.
Phase 1: Prepare the Source Machine
The administrator needs a clean technician Mac (or a test lab machine) to capture the entire installation layout.
Install the Launcher: Download and install Little Arms Launcher into the
/Applicationsdirectory on the technician Mac.Set the Apps Library to a shared system path: On first launch, the launcher prompts for a preferred drive/location. Do not accept the default for lab deployments — the default is the current user's home folder (
~/Library/Application Support), which is not shared across student accounts.When prompted, choose a location that resolves to a system-wide writable path, such as
/Library/Application Support(recommended) or/Users/Shared.Alternatively, after setup, go to Settings → General → Management and set Apps Library Location to
/Library/Application Support.
The technician account must have permission to write to the chosen location. You may need to temporarily grant admin access or pre-create the target directory with appropriate ownership (
root:wheeloradmin) and permissions.Download Secondary Content: Open the launcher, sign in if prompted, and trigger the installation of Zephyr and all required DLC, scenario packs, and support files used in your courses. Let every download finish completely. Launch Zephyr once and confirm it opens successfully.
Verify the Paths: Confirm where the files were saved.
The launcher should be located at
/Applications/Little Arms Launcher.app.The secondary apps and support files must be under the shared Apps Library, not inside the launcher
.appbundle:{AppsLibraryRoot}/Little Arms Studios/Apps/Zephyr/Zephyr.app {AppsLibraryRoot}/Little Arms Studios/Apps/Zephyr/DLC/Where
{AppsLibraryRoot}is the path you selected in step 2 (e.g./Library/Application Support).Record this path — it must match the
rootDirvalue stored in launcher settings (see step 5).
Prepare shared launcher settings (recommended for lab devices): Copy the launcher's settings directory from the technician account to a shared system path:
Source (default):
~/Library/Application Support/Little Arms Launcher/Destination (example) Notice the missing ~ in the new path:
/Library/Application Support/Little Arms Launcher/The
app-data-store.jsonfile inside should have"setupComplete": trueand"rootDir"pointing to your shared Apps Library root (e.g."/Library/Application Support").Authentication note: Session tokens in
user-authentication-dataare encrypted with a key stored in the macOS Keychain on the target machine. Pre-cached auth data will not transfer to other machines or users. Plan for students to sign in individually.
Phase 2: Build the Fileset in FileWave Central
The administrator will use FileWave Central to capture these files exactly as they sit on the disk.
Open FileWave Central: Navigate to the Filesets section in the left-hand menu.
Create a New Fileset: Click New Desktop Fileset in the top toolbar and select File/Folder.
Import the Launcher: Browse to and select Little Arms Launcher from the
/Applicationsfolder. Click Open to import it into the Fileset structure.Import the Support Content: Inside the Fileset window, mimic the system path by navigating to or creating the
Library/Application Support/folder structure. Right-click, select Import Files/Folders, and pull in theLittle Arms Studiospayload folder containing the secondary software:Import shared launcher settings (if prepared in Phase 1, Step 5): In the same
Library/Application Support/tree, import the sharedLittle Arms Launcherfolder (containingapp-data-store.jsonand related files).Verify the Structure: Double-check the virtual file system tree inside the Fileset. For a system-wide deployment it must match this layout:
Adjust the prefix if you used a different Apps Library root (e.g.
/Users/Shared).
Phase 3: Set Permissions and Self-Healing Rules
Because this is a school lab, files must be protected from accidental deletion or modification by students.
Set Root Ownership: Select the top-level folders inside the Fileset, right-click, and select Properties. Ensure the Owner is set to
rootand the Group is set towheel(oradmin).Configure Executable Permissions: Ensure the launcher binary and any secondary executables (including contents of
Zephyr.app) have permissions set to755(Read/Write/Execute for Owner, Read/Execute for others).Enable Self-Healing: In the file properties, ensure the verification setting is set to Self-Healing (Reinstall if modified or deleted). If a student deletes a support file, DLC pack, or secondary app, FileWave will automatically replace it on the next check-in.
Phase 4: Create and Link the PPPC Security Profile
To stop macOS from prompting students for an admin password when the launcher runs background tasks, a Privacy profile must be attached.
Open Profile Editor: Go to Assistants > Profile Editor in FileWave Central.
Create New Profile: Click New, name it uniquely (e.g. Little Arms Launcher TCC Permissions), and scroll down to the Privacy Preferences Policy Control (PPPC) payload.
Add Full Disk Access: Click the + button to add an entry.
Enter the launcher's Bundle Identifier:
com.littlearms.LittleArmsLauncherEnter its Code Requirement signature (obtain from the signed app using FileWave's code requirement helper or
codesign -dr -on the installed.app).Set the SystemPolicyAllFiles (Full Disk Access) option to Allow.
Consider also allowing Keychain Access (required for secure storage of authentication encryption keys) and Accessibility if prompted by macOS.
Save the Profile: Click Save. This creates a configuration profile alongside your fileset.
Phase 5: Associate and Test the Model
Configure shared launcher settings for all users (recommended for lab devices): Deploy an environment variable so every student account reads launcher configuration from the shared system path prepared in Phase 1:
VariableExample valueLITTLE_ARMS_LAUNCHER_USER_DATA/Library/Application Support/Little Arms LauncherThis can also be passed as a launch argument (takes precedence over the environment variable):
Apply via FileWave environment variable payload, custom launch script, or wrapper deployed to
/usr/local/bin/.Combine Filesets: Create a Fileset Group containing the payload Fileset, the shared launcher settings Fileset (if applicable), and the PPPC Profile so they travel together.
Target a Test Group: Drag and drop the Fileset Group onto a small test group of lab computers.
Update the Model: Click the Update Model button in the top toolbar to publish the changes.
Verify Deployment: Once FileWave completes the local network transfer, log into a test machine as a standard student user (non-admin) and verify:
CheckExpected resultLauncher opens
/Applications/Little Arms Launcher.applaunches without errorsNo first-run setup prompt
If settings were pre-seeded with
setupComplete: trueStudent sign-in
Student can authenticate with their Zephyr account
Zephyr appears installed
Zephyr shows as installed without downloading
DLC/content available
Required scenario packs are present; no re-download needed
Zephyr launches
Application opens and loads content from the pre-cached DLC folder
The secondary software should load without needing to download anything from the internet. Expand to the rest of the computers after successful testing.
Last updated
Was this helpful?