All Projects → ox-it → munki-rebrand

ox-it / munki-rebrand

Licence: BSD-3-Clause license
Script to rebrand Munki's Managed Software Center

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to munki-rebrand

pre-commit-macadmin
Pre-commit hooks for Mac admins.
Stars: ✭ 43 (-49.41%)
Mutual labels:  macadmin, munki
Awesome Macadmin Tools
🕶 Awesome Mac Admin Tools list
Stars: ✭ 198 (+132.94%)
Mutual labels:  macadmin
Docklib
Python module intended to assist IT administrators with manipulation of the macOS Dock.
Stars: ✭ 73 (-14.12%)
Mutual labels:  macadmin
Jss Filevault Reissue
A framework for re-escrowing missing or invalid FileVault keys with Jamf Pro.
Stars: ✭ 132 (+55.29%)
Mutual labels:  macadmin
Micromdm
Mobile Device Management server
Stars: ✭ 1,238 (+1356.47%)
Mutual labels:  macadmin
Mac admin
Helpful scripts & configuration profiles for the Mac admin community
Stars: ✭ 139 (+63.53%)
Mutual labels:  macadmin
Fleet
A flexible control server for osquery fleets
Stars: ✭ 1,068 (+1156.47%)
Mutual labels:  macadmin
kolide-quickstart
[DEPRECATED] A quickstart demo for Kolide tools
Stars: ✭ 52 (-38.82%)
Mutual labels:  macadmin
Bigsurblocker
Block Big Sur installer app from launching
Stars: ✭ 171 (+101.18%)
Mutual labels:  macadmin
Firmware password manager
A Python script to help Macintosh administrators manage the firmware passwords of their computers.
Stars: ✭ 127 (+49.41%)
Mutual labels:  macadmin
Desktoppr
Simple command line tool to set the desktop picture on macOS
Stars: ✭ 127 (+49.41%)
Mutual labels:  macadmin
Moroz
Moroz is a Santa server
Stars: ✭ 93 (+9.41%)
Mutual labels:  macadmin
Sus Inspector
Inspect Apple software update service
Stars: ✭ 153 (+80%)
Mutual labels:  macadmin
Mac Zsh Completions
macOS specific additional completion definitions for Zsh.
Stars: ✭ 79 (-7.06%)
Mutual labels:  macadmin
Tccprofile
Creates a TCC profile for new Privacy Payloads in macOS Mojave
Stars: ✭ 208 (+144.71%)
Mutual labels:  macadmin
Jamf Interaction Toolkit
Standardized UEX Toolkit to display dialog and support postponing running policies.
Stars: ✭ 58 (-31.76%)
Mutual labels:  macadmin
Privacy services manager
A single management utility to administer Location Services, Contacts requests, Accessibility, and iCloud access in Apple's OS X.
Stars: ✭ 115 (+35.29%)
Mutual labels:  macadmin
Quickpkg
wrapper for pkgbuild to quickly build simple packages from an installed app, a dmg or zip archive.
Stars: ✭ 137 (+61.18%)
Mutual labels:  macadmin
pkgcheck
Script to check installer pkgs for deprecated runtime calls
Stars: ✭ 88 (+3.53%)
Mutual labels:  macadmin
Recipe Robot
A kick ass tool for creating AutoPkg recipes.
Stars: ✭ 229 (+169.41%)
Mutual labels:  macadmin

munki_rebrand

munki_rebrand is a script to rebrand the Managed Software Center app from Greg Neagle's Munki. It allows you to give the app a different name in Finder (in all localized languages if required), modify its icon, and add an optional postinstall script to the installer pkg.

This is version 4 of munki_rebrand. If you wish to use it to rebrand munki 3.6 or higher, you will need to have Xcode installed and have opened it and installed the extra components. The ability to provide your own .icns file has been removed and the icon will be generated from a 1024x1024px .png only.

It will either:

  • Download the latest release of munkitools from github, unpack it, rebrand it and repack it
  • Use or download a version of the munkitools pkg you specify with the -k or --pkg option. Therefore if you need a custom built pkg you can do this prior to running munki_rebrand, or you can download the automatic builds from https://munkibuilds.org

Pre-requisites

  • Apple Mac running OS X/macOS 10.15+
  • Xcode 12+ (opened once, components installed)
  • Python3

Usage

Please note: munki_rebrand must be run as root in order to successfully build the output pkg.

At its simplest you can use sudo ./munki_rebrand.py --appname "Amazing Software Center" to download the latest munkitools pkg from Github, and rename Managed Software Center to Amazing Software Center in the Finder in all localized versions of "Managed Software Center".

If you specify --pkg you can use either a pathname on disk to a prebuilt munkitools pkg or use an http/s URL to download one, which munki_rebrand will then attempt to rebrand.

The --icon-file option allows you to specify the path to an icon to replace the one in Managed Software Center. This must be a 1024x1024 .png file with alpha channel for transparency that will be converted on the fly. An example .png is included in the repo. The --postinstall option allows you to specify the path to an optional postinstall script that will be executed after munki installs. A postinstall script could be used, for instance, to set the client defaults outlined on the Munki wiki.

To specify the output filename of your custom pkg use --output-file. For example, if you set this to "Amazing_Software_Center" your output file will be renamed from something like munkitools-2.8.2553.pkg to Amazing_Software_Center-2.8.2553.pkg

The --sign-package option allows you to have a rebranded munki package that is also natively signed. To use this option, your Developer Installer Certificate must be installed into the keychain. When using this option, you must specify the entire Common Name of the certificate. Example: "Developer ID Installer: Munki (U8PN57A5N2)"

The --sign-binaries option allows you to recursively sign the app binaries for the rebranded Managed Software Center, allowing for notarization of the pkg. To use this option, your Developer Application Certificate must be installed into the keychain. When using this option, you must specify the entire Common Name of the certificate. Example: "Developer ID Applications: Munki (U8PN57A5N2)"

For usage help please see sudo ./munki_rebrand.py --help

Troubleshooting/Notes

  • If you receive the message
xcode-select: error: tool 'actool' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

then try the following:

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

You can run sudo xcode-select -s /Library/Developer/CommandLineTools to revert this afterwards if you so wish.

  • The Assets.xcassets folder must be located in the same folder that munki_rebrand.py is run from
  • The app will still appear as Managed Software Center.app in the filesystem e.g. when viewed in Terminal. This is by design, in case the app is called or searched for by name by any other process. The changed name will only appear in Finder, the Dock, and the app's menu bar.
  • The pkg ids of com.google.munki.* are also left unchanged for similar reasons.

To-do

  • Enable the splitting of the distribution pkg into its component pkgs so that the user can decide which to upgrade (perhaps they do not want to upgrade the launchd package if not necessary and can therefore avoid a reboot).
  • munkiimport the resulting pkg(s)?
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].