Releases: ProfileCreator/ProfileCreator
Big Sur Compatibility
This unsigned version of 0.3.3 has been in the #profilecreator MacAdmins Slack channel for a while and thought it was finally time to bring it out to the public.
At this time we have no intention of addressing the question of code signing this open source software nor have had any additional development on the app itself outside of adding Big Sur support.
Happy profile creating!
ProfileCreator 0.3.2
Please report any bugs, feature requests or suggestions as an issue to this repository.
Alternate Downloads
If the downloaded .dmg doesn't open correctly for you, please try one of the alternative downloads provided.
ProfileCreator Wiki
Remeber that the ProfileCreator wiki is continuously updated with information about the application and the included payloats.
New Features
Open Source
ProfileCreator is now Open Source under the GNU General Public License v3.0.
I write about this and the reasons why I have to stop developing this application in a blog post here: https://erikberglund.github.io/2019/Profile_Creator_Open_Source/
Ability to reorder TableView rows.
It's now possible to reorder TableView rows and to add rows directly below the selected row.
New Payloads
- edu.psu.macoslaps (macOS) (Added by @erikberglund)
- com.apple.iWork.Numbers (macOS) (Added by @tom.case)
- com.apple.iWork.Keynote (macOS) (Added by @tom.case)
- com.apple.iWork.Pages (macOS) (Added by @tom.case)
- com.apple.iTunes (macOS) (Added by @tom.case)
- com.apple.iBooksX (macOS) (Added by @tom.case)
Updated Payloads
com.microsoft.rdc.macos
- @erikberglund added
ClientSettings.EnforceCredSSPSupport
com.apple.coreservices.uiagent
- @erikberglund and @apizz fixed a typo on the key
CSUIDisable32BitWarnings
com.apple.TCC.configuration-profile-policy
- @erikberglund added the new TCC keys for 10.15.
com.apple.Safari
- @tom.case added
CanPromptForNotifications
,EnableExtensions
,DidDisableIndividualExtensionsAfterRemovingOnOffSwitchIfNecessary
.
com.apple.smartcard
- @AndrewWCarson added
tokenRemovalAction
.
ManagedInstall
- @apizz added
LicenseInfoURL
,
Bug Fixes
- Fixed issue...
Contribute
If you wish to contribute to this project, the following things are a good starting point:
- Test and report bugs or incorrect behavior both in the UI and in the exported profiles.
- Language and spelling errors. (English is not my native language).
- Missing payloads or payload keys. (Contribute to the ProfileManifests repository to improve the manifests used to define all payloads, keys and their interactions.)
- Add feature requests or suggestions by opening an issue in this repository.
ProfileCreator 0.3.1
Please report any bugs, feature requests or suggestions as an issue to this repository.
Alternate Downloads
If the downloaded .dmg doesn't open correctly for you, please try one of the alternative downloads provided.
ProfileCreator Wiki
Remeber that the ProfileCreator wiki is continuously updated with information about the application and the included payloats.
New Features
Import Multiple Files
You can now select multiple files when importing to a file view that supports multiple payloads. Each file will then create a new payload.
Useful for adding multiple fonts or certificates.
Bug Fixes
- Fixed issue where importing existing profile or paylosd on 10.14 would crash the app.
- Fixed issue where exporting profiles in the XML content style, or with multiple payloads. The exported file would only include one payload.
Contribute
If you wish to contribute to this project, the following things are a good starting point:
- Test and report bugs or incorrect behavior both in the UI and in the exported profiles.
- Language and spelling errors. (English is not my native language).
- Missing payloads or payload keys. (Contribute to the ProfileManifests repository to improve the manifests used to define all payloads, keys and their interactions.)
- Add feature requests or suggestions by opening an issue in this repository.
ProfileCreator 0.3.0
Please report any bugs, feature requests or suggestions as an issue to this repository.
Alternate Downloads
If the downloaded .dmg doesn't open correctly for you, please try one of the alternative downloads provided.
ProfileCreator Wiki
A number of new wiki pages have been added, including a list of supported payloads, ProfileCreator preferences, and a detailed user guide.
New Features
Icon
Thanks to the very generous Tom Bridge and Technolutionary, LLC, we now have an Icon for ProfileCreator!
The icon is made by the artist Katherine M. Ahern which you can find at her website: kateahern.com
App Updates
From this version and forward the application will show a notification whenever a new version of the app is released.
And through the Sparkle framework you will also be able to update the application in place without needing to manually download it from GitHub.
Notes
A text box has been added where the value for the key pfm_note
will be shown to bring extra attention to some aspect of the payload key.
Substitution Variables
A new key in the manifest allows the manifest creator to define available substitution variables for the specific key.
Substitution variables are shown in purple and will show a popover when hovering the mouse over them describing the variable and the source for it's replacement.
Button: Import
An import button is now available for all keys that support drag/drop as a method of importing data for a payload key.
Button: Remove
A "Remove" button is now available for data payload keys where files can be added. (#156)
Additional Payload Key Information
Added additional fields to the footer introduced in version 0.2.5:
- Scope (Shows if a payload key is only supported in a subset of the scopes for the entire payload)
On Demand loading of dynamic local preferences manifests
From this version, the local preferences generated manifest are only loaded if that option is selected from the app preferences.
Multiple selections in tableview allowed
It is now possible to select multiple rows in a tableview.
New build versioning system
To comply with the Sparkle framework for updates, the build number CFBundleVersion
will from now on always be incremented for each release.
New Payloads
- com.apple.coreservices.uiagent (macOS) (Added by @erikberglund)
- com.apple.mDNSResponder (macOS) (Added by @erikberglund)
- com.apple.security (macOS) (Added by @erikberglund)
- com.apple.screencapture (macOS) (Added by @erikberglund)
- com.apple.Siri (macOS) (Added by @erikberglund)
- com.apple.assistant.support (macOS) (Added by @erikberglund)
- com.apple.TimeMachine (macOS) (Added by @erikberglund)
- com.apple.finder (custom settings) (macOS) (Added by @erikberglund)
- com.apple.systemuiserver (macOS) (Added by @erikberglund)
- com.apple.FinalCut (macOS) (Added by @wegotoeleven)
- com.google.Keystone (macOS) (Added by @apizz)
- com.jamf.connect.login-Okta (macOS) (Added by @arekdreyer and @erikberglund)
- com.jamf.connect.login-OpenID (macOS) (Added by @arekdreyer and @erikberglund)
- com.jamf.connect.sync (macOS) (Added by @arekdreyer and @erikberglund)
- com.jamf.connect.verify (macOS) (Added by @arekdreyer and @erikberglund)
Updated Payloads
.GlobalPreferences
- @erikberglund added max os version for the CSUIDisable32BitWarning key and now pointing to com.apple.coreservices.uiagent for 10.14
com.apple.loginwindow
- @WardsParadox added
HiddenUsersList
.
com.apple.syspolicy.kernel-extension-policy
- @apizz added a
pfm_note
describing an interaction between whitelisting entire Team Identifiers and specific Team- and Bundle Identifiers.
com.apple.airplay
- @erikberglund added import function for MAC addresses found in csv.
Bug Fixes
- Fixed issue not being able to select menu items in PopUp Buttons inside tableviews. (#150)
- Fixed issue where certain icons and features in Dark Mode were not being uses (#149)
- Fixed issue where the application tried to create missing folder inside it's own imported frameworks.
- Fixed issue where the file prompt in file views did not display file extensions in the prompt if they weren't UTI types.
- Fixed issue where a Combo Box that was the target of an exclusion would not allow changing value via the PopUp button.
- Fixed issue where a Combo Box would not select the title but only the actual value whenever
pfm_range_list_titles
was specified.
Contribute
If you wish to contribute to this project, the following things are a good starting point:
- Test and report bugs or incorrect behavior both in the UI and in the exported profiles.
- Language and spelling errors. (English is not my native language).
- Missing payloads or payload keys. (Contribute to the ProfileManifests repository to improve the manifests used to define all payloads, keys and their interactions.)
- Add feature requests or suggestions by opening an issue in this repository.
ProfileCreator 0.2.5 (Beta 10)
Please report any bugs, feature requests or suggestions as an issue to this repository.
Alternate Downloads
If the downloaded .dmg doesn't open correctly for you, please try one of the alternative downloads provided.
ProfileCreator Wiki
A number of new wiki pages have been added, including a list of supported payloads, ProfileCreator preferences, and a detailed user guide.
New Features
Additional Payload Key Information
A new footer for payload keys is shown if there are additional information about that key.
The following information items are currently supported:
- If the key is only supported from or up to a specific os/app-version.
- URL linking to additional documentation about the key, shown as a small book icon. When clicked it opens this URL in your default web browser. (#135)
Export to .plist
Now, in addition to exporting profiles you can also export preferences to a .plist. This makes it easier to import into the Custom Settings payload of an MDM.
This option is only shown when holding the export button in the profile or payload window to bring upp the context menu and choosing "Export Plist".
This will export each enabled payload domain to their own file in the selected folder.
Export Button in Editor Window
Added an export button to the profile editor window to make exporting the currently open profile easier.
Export Keyboard Shortcut
The Export menu item now has a keyboard shortcut mapped to ⌘E
(#128)
Custom ProfileIdentifierFormat & PayloadIdentifierFormat
In the ProfileCreator preferences under 'Advanced', you can specify a custom default format for the ProfileIdentifier
& PayloadIdentifier
values. See the wiki for more info. (#55)
The application will rename your profile configuration file (.pfcconf) to match the current value.
IMPORTANT As there can't be two files with the same name in a directory, the application will not rename a file if the new name already exists. The file is still saved though, but keeps its old name.
The file rename only occurs when a profile is saved, it does not change every saved file retroactively if the setting is changed.
New Interface Item: Slider
A slider is now available as an input method for certain payload keys with a predefined list of items to select. See Use slider as input method
New Interface Item: Combo Box
The app now support keys that allow both custom input and selecting values from a list. See Allow both custom and pfm_range_list
values as input
Copy Description Text
Now payload key description text is selectable for copying & pasting.
Develper: Show Payload Manifest in Finder
When you select a payload from the left sidebar, you can click 'Show Payload Manifest in Finder' from the Developer menu (this must be enabled first) to take you directly to the manifest file in the Finder.
Donate Button
I have been asked multiple times to add a Donate button, so from this version there is a Donate button in the application preferences under General.
Updated ProfileManifest Features
Vist the Manifest Format Versions to view all changes made to the manifest format used by ProfileCreator.
ProfileManifest Subdomains
In some cases, there are payloads that are used for multiple purposes. com.apple.MCX, for example, handles Energy Settings as well as Time Server & Mobile Accounts. This provides the ability to separate preferences into different manifest files, but which all contribute to the same domain. (ProfileCreator/ProfileManifests#20)
- com.apple.MCX-EnergySettings
- com.apple.MCX-MobileAccounts
- com.apple.MCX-TimeServer
Allow historical dates
Now you can supply a historical date for date
preferences by setting pfm_date_allow_past
key to true
. (#129)
Additional options for payload keys utilizing a pfm_range_list
Allow only unique values in an Array
The new key pfm_value_unique
when set to true
will only permit a given value to be added once within an array. Support for additional input methods will be added in a later release (#146).
Allow both custom and pfm_range_list
values as input
The new key pfm_range_list_allow_custom_value
when set to true
will allow the user to enter custom value(s) for a given preference while also selecting from the available pfm_range_list
items.
Use slider as input method
To use a slider as the input method for a pfm_range_list
, the new key: pfm_view
must be set to slider
.
Support for value copy from other domains
The pfm_value_copy
and pfm_default_copy
keys now supports specifying the domain before the key path to be copied by using the @
character as domain-keypath separator.
One example of this configuration are payloads that support for the identity payload. By specifying the following configuration in a payloads IdentificationUUID
key, the value for the Identification payload's UUID will be automatically populated as the default value if the identity payload is added to the profile.
<key>pfm_default_copy</key>
<string>com.apple.configurationprofile.identification@PayloadUUID</string>
Allow custom decimal places in number textfields.
The new key pfm_value_decimal_places
will allow the manifest creator to specify the number of decimal places to show in the GUI. (#110)
New Payloads
- org.mozilla.firefox (macOS)(Added by @bp88) (ProfileCreator/ProfileManifests#16)
- com.apple.iMovieApp (macOS)(Added by @wegotoeleven)
- MunkiReport (macOS)(Added by @apizz) (ProfileCreator/ProfileManifests#29)
- com.apple.NetworkBrowser (macOS)(Added by @apizz) (ProfileCreator/ProfileManifests#47)
- uk.co.dataJAR.jamJAR (macOS)(Added by @apizz) (ProfileCreator/ProfileManifests#48)
- com.apple.garageband (macOS)(Added by @apizz) (ProfileCreator/ProfileManifests#49)
- com.apple.notificationsettings (iOS)(Added by @apizz) (ProfileCreator/ProfileManifests#64)
- com.apple.touristd (macOS)(Added by @apizz) (ProfileCreator/ProfileManifests#65)
- com.barebones.bbedit.plist (macOS)(Added by @apizz) (ProfileCreator/ProfileManifests#69)
- com.apple.applicationaccess-tvOS (tvOS)(Added by @apizz) (ProfileCreator/ProfileManifests#71)
- com.apple.applicationaccess-iOS (iOS)(Added by @apizz) (ProfileCreator/ProfileManifests#72)
- com.apple.Safari (macOS)(Added by @erikberglund)
- com.apple.education (macOS/iOS)(Added by @apizz)
- com.apple.tvremote (macOS)(Added by @apizz)
- com.apple.MCX-MobileAccounts (macOS)(Added by @erikberglund)
- com.apple.MCX-TimeServer (macOS)(Added by @erikberglund)
- com.microsoft.rdc (macOS)(Added by @apizz)
Updated Payloads
com.apple.iMovieApp
- @wegotoeleven added user-supplied keys to allow suppressing iMovie prompts for different iMovie app versions (ProfileCreator/ProfileManifests#21 & ProfileCreator/ProfileManifests#40)
com.apple.logic10
- @apizz did some manifest reformatting & added description regarding the correct preference misspelling of
DontShowAdditionalContentDowload
(ProfileCreator/ProfileManifests#54)
com.apple.SoftwareUpdate
- @wegotoeleven added
AutomaticallyInstallMacOSUpdates
(ProfileCreator/ProfileManifests#19) - @mikedowler corrected wording on
AutomaticallyInstallMacOSUpdates
pref to correctly indicate this refers to macOS updates, not automatic App Store Updates (which is handled byAutoUpdate
in com.apple.commerce and unfortunately cannot be managed by profile 😢 ) (ProfileCreator/ProfileManifests#63)
com.apple.applicationaccess-macOS (formerly com.apple.applicationaccess)
- @mikedowler added
allowPasswordAutoFill
,allowPasswordSharing
,allowPasswordProximityRequests
,allowCloudBTMM
, andallowCloudFMM
(ProfileCreator/ProfileManifests#59) - @apizz added menu structure (ProfileCreator/ProfileManifests#73)
com.microsoft.autoupdate2
- @qu1gl3s added Microsoft Teams & OneDrive to MAU (ProfileCreator/ProfileManifests#23)
- @qu1gl3s added
pfm_range_list
items forApplication ID
given difference between MAU 4.6 and earlier & MAU 4.7+ (ProfileCreator/ProfileManifests#60)
com.apple.dashboard
- @erikberglund fixed the key
WhiteList
, which was incorrectly listed aswhiteList
. (ProfileCreator/ProfileManifests@9c0b7e8)
com.apple.NSExtensions
- @mikedowler fixed the incorrect payload identifier & type (was listed as com.apple.font) (ProfileCreator/ProfileManifests#58)
com.apple.mail.managed
- @erikberglund added
IdentificationUUID
(ProfileCreator/ProfileManifests@100d154)
com.apple.ews.account (formerly com.apple.eas.account)
- @erikberglund fixed the incorrect PayloadType (was com.apple.eas.account) (ProfileCreator/ProfileManifests@635d821)
- @erikberglund added support for
IdentificationUUID
from com.apple.mail.managed (https://github.com/erikberglund/Profile...
ProfileCreator 0.2.4 (Beta 9)
Please report any bugs, feature requests or suggestions as an issue to this repository.
Alternative Downloads
If the downloaded .dmg doesn't open correctly for you, please try one of the alternative downloads provided.
Updated Features
ProfileManifest Repository
Much work has gone into updating the ProfileManifest Repository.
- The Getting Started wiki page is now completed to guide anyone in creating a manifests for ProfileCreator.
- Manifest Format Version 4 was added with new keys.
Manifest Alias Key
Added an alias to the pfm_type
value. Now it's possible to write real
as well as float
to describe a floating point value type. (#86)
Checkbox for pfm_range_list
choice.
A new option was added to allow a pfm_range_list
with precisely two items in its array to be represented as a checkbox.
New Payloads
- com.apple.security.certificatetransparency (macOS)
- com.apple.Enterprise-Connect (macOS)
- com.google.Chrome (macOS)
- com.github.salopensource.sal (macOS)
- com.pratikkumar.airserver-mac (macOS) (Added by @apizz) (ProfileCreator/ProfileManifests#9)
- com.sqwarq.DetectX-Swift (macOS) (Added by @apizz) (ProfileCreator/ProfileManifests#9)
- menu.nomad.shares (macOS) (Added by @apizz) (ProfileCreator/ProfileManifests#9)
- com.apple.Spotlight (macOS) (Added by @apizz) (ProfileCreator/ProfileManifests#12)
- com.apple.TextEdit (macOS) (Added by @apizz) (ProfileCreator/ProfileManifests#12)
- com.apple.logic10 (macOS) (Added by @walkintom)
Updated Payloads
Updated all payloads currently in ProfileCreator with the changes in the latest Configuration Profile Reference.
- com.apple.mail.managed
- com.apple.security.FDERecoveryRedirect
- com.apple.SetupAssistant.managed
- com.apple.wifi.managed
.GlobalPreferences
- @Zolotkey added the key
MultipleSessionEnabled
(ProfileCreator/ProfileManifests#6)
com.apple.SoftwareUpdate
- @kevinmcox added the key
SUDisableEVCheck
. (ProfileCreator/ProfileManifests#7)
com.microsoft.Word
- @kevinmcox added the key
DisableResumeAssistant
(ProfileCreator/ProfileManifests#10)
com.apple.dock
- @qu1gl3s added the key
show-recents
(ProfileCreator/ProfileManifests#14)
Bug Fixes
- Fixed a bug when entering fingerprint with invalid characters in the SCEP payload.
- Fixed a bug where you could only add one item to an array of dictionaries before you had to de-select and re-select the payload to add another.
- Fixed a bug in the base642data value processor where the conversion from data to string sometimes returned nil.
- Fixed a bug where a payload key contained a period (.) at the root of the KeyPath it would be set incorrectly.
- Fixed a bug where the exclusion message was hidden if a text field was larger than 1 line. (#87)
- Fixed a bug where the exclusion condition was not updated when a text was entered in text fields. (#83)
- Fixed a bug where an array inside a dictionary did not store the entered value correct until you saved, closed and reopened the profile. (#82)
- ...and many minor bug fixes.
Known Issues
-
When a profile is reopened by the application at launch, the application doesn't recognize that it's open and multiple copies of the same profile may be open at the same time.
-
When saving a profile for the first time, on rare occasions it might not save and won't be recognized after a restart.
(Never found a way to replicate, only rare reports. If this happens to you, please contact me or file an issue.)
Contribute
There are many ways to contribute to this project. Here are a few listed below:
- Test and report bugs or incorrect behavior both in the UI and in the exported profiles.
- Language and spelling errors. (English is not my native language).
- Missing payloads or payload keys. (Contribute to the ProfileManifests repository to improve the manifests used to define all payloads, keys and their interactions.)
- Add feature requests or suggestions by opening an issue in this repository.
ProfileCreator 0.2.3 (Beta 8)
Please report any bugs, feature requests or suggestions as an issue to this repository.
New Features
Dark Mode
This release has implemented support for the new Dark Mode feature in macOS Mojave.
If you are using the default settings for code highlighting and background color, the app will switch to its dark equivalent when in Dark Mode.
Simpler manifest arrays
When creating manifests, if you want to define a simple array without collection values you are now only required to specify the type and nothing else.
Previously a key name was required for the payload key to be loaded.
Notarization
The application is now Notarized by Apple.
Updated Features
Payload Filter
When using the payload filter (search), the application now shows matches for the PayloadType value as well as the DisplayName of the payload.
New Preferences
Updated Preferences
- Changed the default preference for
PayloadManifestsAutomaticallyDownloadUpdates
totrue
.
This only applies when that setting was not previously set in the user's preference file.
New Payloads
- com.apple.eas.account (iOS)
- com.apple.systempolicy.managed (macOS)
- com.apple.security.FDERecoveryKeyEscrow (macOS)
- com.apple.security.FDERecoveryRedirect (macOS)
Updated Payloads
Configuration
-
PayloadIdentifier
andPayloadUUID
are now hidden by default as that created unnecessary confusion for people new to profiles.
If you know you need to change those, they can be showed again from the settings by enabling "hidden" keys. -
PayloadScope
is now enabled by default as that is a setting that should be set for the profile and not just when exporting the profile.
com.apple.systempreferences
- Changed scope to include User
com.apple.airprint
- Added macOS as a supported platform.
com.apple.AssetCache.managed
- Fixed incorrect titles and added segmented control for better structure.
com.apple.DirectoryService.managed
- Renamed payload from
Directory
toActive Directory
.
com.apple.domains
- Added macOS as a supported platform for the
EmailDomains
key.
com.apple.screensaver
- Added the key
idleTime
to the computer level screensaver payload. - Added the key
moduleName
to the computer level screensaver payload.
com.apple.ews.account
- Added new keys for OAuth supported in macOS 10.14.
com.apple.loginwindow
- Fixed incorrect boolean value for key
SHOWFULLNAME
. - Removed user scope as a valid export.
com.apple.systempreferences
- Added the key
HiddenPreferencePanes
com.apple.systempolicy.contro
- Renamed from
Policy Control: System
toSystem Policy: Control
com.apple.TCC.configuration-profile-policy
- Renamed from
Policy Control: Privacy
toPrivacy Preferences Policy Control
com.apple.dock
- Added the key
static-apps
. This key also supports drag and drop. - Added the key
static-others
. This key also supports drag and drop.
com.microsoft.Outlook
- Added new keys for versions 16.18 and 16.19
Bug Fixes
- Fixed a bug where boolean to integer conversion failed for certain payload key values.
- Fixed a bug where you could not see or scroll to text that was outside the edge of the text field.
- Fixed a bug where the UI would not always show the correct value for a range list that did not have custom titles set.
- Now payloads that don't have an icon set will use a generic dotted square as the icon instead of empty space.
- Now the "Show Hidden" setting also shows table view columns that were previously hidden.
- ...and many minor bug fixes.
Known Issues
-
When a profile is reopened by the application at launch, the application doesn't recognize that it's open and multiple copies of the same profile may be open at the same time.
-
When saving a profile for the first time, on rare occasions it might not save and won't be recognized after a restart.
(Never found a way to replicate, only rare reports. If this happens to you, please contact me or file an issue.)
Contribute
There are many ways to contribute to this project. Here are a few listed below:
- Test and report bugs or incorrect behavior both in the UI and in the exported profiles.
- Language and spelling errors. (English is not my native language).
- Missing payloads or payload keys. (Contribute to the ProfileManifests repository to improve the manifests used to define all payloads, keys and their interactions.)
- Add feature requests or suggestions by opening an issue in this repository.
Please report any bugs, feature requests or suggestions as an issue to this repository.
ProfileCreator 0.2.2 (Beta 7)
Please report any bugs, feature requests or suggestions as an issue to this repository.
New Features
New Payload Library: Local Preferences (Experimental)
In the Payload library, there is now a new icon of an iMac symbolizing local preferences.
The preference domains that currently exist on your local Mac will be listed under this menu item but only preferences for items in the Applications folder will be shown by default. You can enable to show all preference domains in the settings under "Payloads.".
Those of you who have used the excellent mcxToProfile by @timsutton will recognize this feature.
The preferences are collected using the UserDefaults API for all domains that have a property list file in any of the following locations:
- /Library/Preferences
- ~/Library/Preferences
- ~/Library/Preferences/ByHost
ProfileCreator will combine the settings for a domain from all locations into one manifest and present them in the general UI.
The description for each key describes where that setting was defined.
IMPORTANT: This feature is experimental and will continue to be improved in the coming betas.
Current limitations are:
* Multilevel nested Dictionaries or Array of Dictionaries does not display their contents correctly.
* Settings are only read on application launch.
* Application launch time is slower.
* .GlobalPreferences includes the preferences for ProfileCreator.
* Not all preferences are included, only those with a .plist file in any of the following locations:
/Library/Preferences
~/Library/Preferences
~/Library/Preferences/ByHost
Change path for the profile library groups
You can now in the application Preferences under Library select a custom path to a folder where the application will store the profile group save files.
If the path is empty or invalid, the default path will be used instead.
Updated Features
Developer Menu
- New item:
Show Payload Manifest
that will show a text representation of the current manifest.
Profile Importing
- Importing profiles now ignores the following keys included by management applications:
- Keys with prefix: ABT_ (LANrev)
New Preferences
Library
- ProfileGroupLibraryPath
The path to the folder where the profile group settings are saved.
Payloads
-
PayloadLibraryShowCustom
Show the custom payloads created by the user (not available yet) or unknown payloads imported. -
PayloadLibraryShowApplicationsFolderOnly
Include only preferences for applications under /Applications in the Local Preferences view.
If set to false, includes all preferences.
New Payloads
- com.apple.FileVault2 (macOS)
- com.apple.SubmitDiagInfo (macOS)
- com.microsoft.autoupdate.fba (macOS)
- com.microsoft.errorreporting (macOS)
- com.microsoft.Excel (macOS)
- com.microsoft.Office365ServiceV2 (macOS)
- com.microsoft.OneDrive (macOS)
- com.microsoft.OneDriveUpdater (macOS)
- com.microsoft.onenote.mac (macOS)
- com.microsoft.Powerpoint (macOS)
- com.microsoft.Word (macOS)
- com.skype.skype (macOS)
- com.grahamgilbert.crypt (macOS)
Updated Payloads
ManagedInstalls (Munki)
- Changed the
SoftwareRepoURL
key from required to enabled.
com.apple.applicationaccess (Restrictions)
- Added the key
allowDiagnosticSubmission
Bug Fixes
- Fixed a bug where the general data imports (like scripts for LoginWindow) did not save the imported value.
- Fixed a bug where pasting formatted text kept the formatting in the TextField. (#66)
- Fixed a bug where entering integer values in certain fields returned an unexpected error (#67)
- Fixed a bug where removing a custom imported payload from the profile did not "stick" after save. (#69)
- Fixed a bug where converting between hex strings and data not showing the correct string in the UI.
- Fixed a bug where dropping a .mobileconfig on the app icon didn't import the profile if there were any warnings.
- Now payloads that don't have a configured icon will use a generic dotted square instead.
- ...and many minor bug fixes.
Known Issues
-
When a profile is reopened by the application at launch, the application doesn't recognize that it's open and multiple copies of the same profile may be open at the same time.
-
When saving a profile for the first time, on rare occasions it might not save and won't be recognized after a restart.
(Never found a way to replicate, only rare reports. If this happens to you, please contact me or file an issue.)
Contribute
There are many ways to contribute to this project. Here are a few listed below:
- Test and report bugs or incorrect behavior both in the UI and in the exported profiles.
- Language and spelling errors. (English is not my native language).
- Missing payloads or payload keys. (Contribute to the ProfileManifests repository to improve the manifests used to define all payloads, keys and their interactions.)
- Add feature requests or suggestions by opening an issue in this repository.
ProfileCreator 0.2.1 (Beta 6)
Please report any bugs, feature requests or suggestions as an issue to this repository.
Updated Features
New Signing Certificate selection
This version fixed a bug where a prompt to authenticate ProfileCreator for private key access to certain certificates was shown to some users.
The fix required another reference to the keychain item to be saved than in previous versions.
This means that if you have selected a signing certificate in previous versions you will only see a string of numbers. You will need to re-select that certificate to update the reference.
You can still export with the old reference in my testing, but it will not show as selected in the list of certificates.
New Signing Certificate search optioins
In the Preferences under Profile Defaults you can now expand the signing identity search to include:
- System Keychain
- Untrusted Certs
- Expired Certs
New Features
Change path for the profile library
You can now in the application Preferences under Library select a custom path to a folder where the application will store the profile save files.
If the path is empty or invalid, the default path will be used instead.
New Preferences
Library
- ProfileLibraryPath
Path to the folder where the profile settings are saved.
Profile Defaults
-
SigningCertificateSearchSystemKeychain
Include signing certificates from the System Keychain (default false) -
SigningCertificateShowUntrusted
Include signing certificates that are not considered trusted (default false) -
SigningCertificateShowExpired
Include signing certificates that have expired (default false)
New Payloads
- com.apple.FileVault2 (macOS)
- com.apple.SubmitDiagInfo (macOS)
Updated Payloads
ManagedInstalls (Munki)
- Changed the
SoftwareRepoURL
key from required to enabled.
com.apple.applicationaccess (Restrictions)
- Added the key
allowDiagnosticSubmission
Bug Fixes
- Fixed a bug where the export setting "Payload Content Style: XML" was never used even if selected.
- ...and many minor bug fixes.
Known Issues
- When saving a profile for the first time, on rare occasions it might not save and won't be recognized after a restart.
(Never found a way to replicate, only rare reports. If this happens to you, please contact me or file an issue.)
Contribute
There are many ways to contribute to this project. Here are a few listed below:
- Test and report bugs or incorrect behavior both in the UI and in the exported profiles.
- Language and spelling errors. (English is not my native language).
- Missing payloads or payload keys. (Contribute to the ProfileManifests repository to improve the manifests used to define all payloads, keys and their interactions.)
- Add feature requests or suggestions by opening an issue in this repository.
ProfileCreator 0.2.0 (Beta 5)
Please report any bugs, feature requests or suggestions as an issue to this repository.
New Features
Import existing configuration profiles
This is the big feature of this release that makes it possible to import existing .mobileconfig
files.
To make this possible, the entire save format and internal save/read data code was completely rewritten. The new system stores the profile information almost exactly as they would be in the exported profile whereas the previous system stored the settings in a flat dictionary for each keyPath for each subkey. That was both hard to read and hard to use in code.
The unfortunate effect of this change is that existing profiles created in ProfileCreator cannot be read by this version.
This is a one-time change and will not happen again as the format from now on will easily just upgrade between future formats, but this change requires manual action. That is also why this application is still in beta, as breaking changes might still occur.
If you have existing profiles and want to import them in this and future version of the application you need to do the following:
- Open ProfileCreator Beta 4 (Download it from here if you don't have it: Beta 4 Release)
- Export all profiles you wish to keep to
.mobileconfig
files. - Open ProfileCreator Beta 5 and import the
.mobileconfig
files by either:- Drag and Drop on any group in the main window or in the profile list.
- Drag and Drop on the Application icon in the Dock.
- Select "Open…" from the File menu and select the
. mobileconfig
files you want to import.
Another big upside of this rework is to lay the groundwork for a very exciting feature where ProfileCreator can read/edit/upload profiles from selected MDMs who support those actions through their APIs.
Duplicate profiles
Now you can duplicate a profile in the profile list.
Select "Duplicate…" from the File menu or right-click a profile and select "Duplicate " from the context menu.
NOTE: The duplicated profile will generate new UUIDs and Identifiers for the root configuration and each payload with configured settings to avoid a collision if installed together.
New versioning system
In the future, each new release will increase the patch number of the application version instead of just updating the build number.
As an example, new releases will use this format: 0.1.4 build 1 instead of: 0.1 build 4
New icon for the documented Apple payloads.
A new icon that looks like the profiles icon in system preferences is added for the apple payloads library.
Updated Features
More signing identities
Now the signing certificate pop-up button shows all valid and trusted identity certificates.
Previously only certificates with the code signing extended attribute set were shown.
Drag and drop support for payload key values.
Added drag and drop support for the following payloads:
com.apple.dashboard (Dashboard)
- Dashboard widget whitelist
Drag and drop icon for all payload types
The Drag and drop icon will now be shown on all CellViews that supports drag and drop, not just table views.
More clear message for sensitive data
The message shown for fields marked as sensitive has been updated to be more clear. Now it reads:
This value is stored in the clear in the profile, it is recommended that the profile be encrypted for the device if it's not delivered by an MDM.
Disable empty fields in export accessory view.
The profile Description
and Organization
text fields kept the enabled setting from the profile editor and exported an empty string if left empty.
To clean the profile they will now be disabled if their respective value is empty. They can still be enabled manually in the accessory view.
New Payloads
- com.apple.com.apple.TCC.configuration-profile-policy (macOS)
- com.apple.systempreferences (macOS)
Updated Payloads
com.apple.general/Configuration (General)
- Renamed
com.apple.general
(which was a made up name) toConfiguration
.
com.apple.dashboard (Parental Controls: Dashboard)
- Added missing dictionary declaration to the
whiteList
key. - Fixed the incorrect
PayloadType
for the payload.
com.apple.wifi (Wi-Fi)
- Changed the EAP Setup Modes input from table view with pop-up buttons to checkboxes. (thanks @joncrain)
com.apple.security.scep (SCEP)
- Changed the Subject input from table view to String. This expects a X.500 name string and the output is a very nested array structure.
com.apple.dock (Dock)
- Added missing option
AddDockMCXSharedFolder
to the keyMCXDockSpecialFolders
.
com.apple.SetupAssistant.managed (SetupAssistant)
- Added new key
SkipAppearance
(thanks @WardsParadox)
com.apple.NSExtension (Extension)
- Changed the DeniedExtensionPoints input from table view with pop-up buttons to checkboxes.
Bug Fixes
- Fixed bug where checkboxes that represents array values did not correctly remove values when unchecked if the value was anything other than an integer.
- Signing certificate list is now sorted alphabetically.
- ...and many minor bug fixes.
Known Issues
- When saving a profile for the first time, on rare occasions it might not save and won't be recognized after a restart.
(Never found a way to replicate, only rare reports. If this happens to you, please contact me or file an issue.)
Contribute
There are many ways to contribute to this project. Here are a few listed below:
- Test and report bugs or incorrect behavior both in the UI and in the exported profiles.
- Language and spelling errors. (English is not my native language).
- Missing payloads or payload keys. (Contribute to the ProfileManifests repository to improve the manifests used to define all payloads, keys and their interactions.)
- Add feature requests or suggestions by opening an issue in this repository.