{"id":28591198,"url":"https://github.com/scriptingosx/setupmanagerfinishedscript","last_synced_at":"2025-06-11T09:13:51.355Z","repository":{"id":271249151,"uuid":"881458920","full_name":"scriptingosx/SetupManagerFinishedScript","owner":"scriptingosx","description":"Daemon + Script to run custom functionality when Setup Manager finishes","archived":false,"fork":false,"pushed_at":"2025-03-11T12:25:03.000Z","size":5,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-11T13:31:30.590Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scriptingosx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-31T16:01:37.000Z","updated_at":"2025-03-11T12:25:06.000Z","dependencies_parsed_at":"2025-01-07T03:02:13.019Z","dependency_job_id":null,"html_url":"https://github.com/scriptingosx/SetupManagerFinishedScript","commit_stats":null,"previous_names":["scriptingosx/setupmanagerfinishedscript"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scriptingosx%2FSetupManagerFinishedScript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scriptingosx%2FSetupManagerFinishedScript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scriptingosx%2FSetupManagerFinishedScript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scriptingosx%2FSetupManagerFinishedScript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scriptingosx","download_url":"https://codeload.github.com/scriptingosx/SetupManagerFinishedScript/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scriptingosx%2FSetupManagerFinishedScript/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259236397,"owners_count":22826309,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-11T09:13:45.969Z","updated_at":"2025-06-11T09:13:51.345Z","avatar_url":"https://github.com/scriptingosx.png","language":"Shell","readme":"# Run a script when Setup Manager is finished\n\nThis is a launchDaemon that works with [Setup Manager](https://github.com/Jamf-Concepts/Setup-Manager) for Jamf Pro and Jamf School.\n\nSee [this blog post for background](https://scriptingosx.com/2025/01/run-a-script-when-setup-manager-is-finished/).\n\n## Usage\n\nDownload the repo and adapt the [`setupManagerFinished.sh`](https://github.com/scriptingosx/SetupManagerFinishedScript/blob/main/payload/Library/Management/setupManagerFinished.sh) script to your needs. The code you want to adapt is [in lines 39 through 47](https://github.com/scriptingosx/SetupManagerFinishedScript/blob/d8a837172a6b8b9315480664c1d77749e3499450/payload/Library/Management/setupManagerFinished.sh#L39-L47).\n\nThe default script triggers a custom policy trigger (`setup_manager_finished`, defined [in line 10](https://github.com/scriptingosx/SetupManagerFinishedScript/blob/d8a837172a6b8b9315480664c1d77749e3499450/payload/Library/Management/setupManagerFinished.sh#L10))\n\nThe [`buildSetupManagerFinishedPkg.sh`](https://github.com/scriptingosx/SetupManagerFinishedScript/blob/d8a837172a6b8b9315480664c1d77749e3499450/buildSetupManagerFinishedPkg.sh) script will assemble the LaunchDaemon plist, the script and the installation scripts into a pkg.\n\nYou will have to adapt the name of the certificate you use to sign the pkg [in line 20](https://github.com/scriptingosx/SetupManagerFinishedScript/blob/d8a837172a6b8b9315480664c1d77749e3499450/buildSetupManagerFinishedPkg.sh#L20). If you do not have a signing certificate, you can set `signature=\"\"` and the script will build an un-signed pkg. You need a signed installer pkg when you want to add it to the Jamf Pro Prestage or install it with Jamf School. But if the pkg is not signed, you can still install it with a Jamf Pro policy with a Setup Manager action. As long as it is installed before Setup Manager finishes, it will trigger when the flag file gets created.\n\n## Support and Community\n\nCode is provided as-is. You can join us on the [Mac Admins Slack](https://macadmins.org) in the  [#jamf-setup-manager](https://macadmins.slack.com/archives/C078DDLKRDW) channel for discussions.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscriptingosx%2Fsetupmanagerfinishedscript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscriptingosx%2Fsetupmanagerfinishedscript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscriptingosx%2Fsetupmanagerfinishedscript/lists"}