1.2beta1
Pre-release
Pre-release
v1.2 Change Log
Note: A profile manifest with new profile keys is included here. This will be pushed to the official ProfilesManifest repository upon full release of this version. Use the local one for testing.
New Features
- New Default Behavior: Clicking the Dialog notification will initiate the restart window
- This can be disabled in the profile with new OptionalArguments boolean key set to
false
:NotificationActionEnabled
#81
- This can be disabled in the profile with new OptionalArguments boolean key set to
- Language support for Dutch (nl)
- Thank you, @DevliegereM! #90
- Renew can now be used with a plist file OR a mobileconfig
- If a mobile configuration file is not found, Renew will check for a configuration file in this location:
/Library/Preferences/com.secondsonconsulting.renew.plist
- You can still use iMazing Profile Editor to make this plist, just choose "Payload > Export as Plist"
- Huge thanks to @drtaru for adding this feature.
- If a mobile configuration file is not found, Renew will check for a configuration file in this location:
- Admins can now choose additional applications to ignore assertions.
- Huge thanks to @drtaru for adding this feature.
- If you don't want to respect a display sleep assertion for an application, you can add that application to an
OptionalArguments:IgnoreAssertions
array in your configuration file. - The default assertions to ignore will still be used as well (
obs caffeinate Amphetamine
) - Use
pmset -g
to see what applications are using assertions as well as how to ignore them.
Improvements
-
Argument Processing rewritten
--version
now prints only the script version and exits with no logs and no other output- Multiple arguments are now supported. It is up to the operator to ensure conflicting arguments are not passed
--verbose --force-normal --dryrun
is valid--verbose --force-normal --force-notification
is invalid, and will result in undefined behavior
--verbose
or-v
enablesset -x
for verbose troubleshooting output--dryrun
argument now does not process a deferral as well as disabling Restart prompt--deadline
argument now sets the deadline to the provided value for testing- Example:
./Renew.sh --deadline 66
will set the deadline to 66 days uptime
- Example:
--print-configuration
option will print the configuration file and exit--configuration /path/to/renew.plist
allows you to specify a plist file you wish to use as the configuration for that run.- This is intended for use in testing, though, there's nothing stopping you from using this option with a LaunchAgent or from your management tool
- This argument overrides any MDM profile or configuration file for that run
- #80
--language
followed by a language code will allow you to test Renew behavior for different languages (i.e.--language nl
would use Dutch)--help
is now more reliable. Thanks @aschwanb
-
Renew no longer processes deferrals/events if the system has been idle from human input for over 60 minutes
-
If the same program has multiple display sleep assertions (like caffeinate running twice or more), Renew will now properly ignore them if they're on the
IgnoreAssertions
list.- Thanks again to @drtaru for this improvement.
Housekeeping
- Renew is now published under the MIT open-source license
- All log messages are now also written to standard output
- Log messages are more useful in determinig what logic is being applied and why
- Debug messages now only visible in verbose mode, and not tied to
--dryrun
option