Skip to content

Releases: macadmins/outset

Outset 4.0.21894

23 Jun 08:25
0e5167d
Compare
Choose a tag to compare
Outset 4.0.21894 Pre-release
Pre-release

Notes

This is a version of Outset created by GitHub Actions.
Outset.app has been signed and notarized. The package has been signed, notarized and stapled.

Changelog

Changes

  • 573ae20 - Merge pull request #26 from macadmins/development
  • b095ec1 - Merge pull request #29 from macadmins/development
  • 09b1f03 - add marketing model to debug output
  • de634e3 - add LaunchOnlyOnce key to login-window plist. Fixes a behaviour where login window tasks were executing continuously.
  • 2009177 - update version
  • e902c37 - Fixed up some listing rules after installing SwiftLint on my new dev box refactor sha256sum to checksum removed old preference definitions, some of which were being used in-code. Since these were never being populated they would not evaluate and conditional code was not being run as a result.
  • 038af56 - update writePreferences so when running as root it will write to /Library/Preferences instead of /var/root/Library/Preferences. This fixes a bunch of expected behaviour like using --add-ignored-user and having it correctly apply to all users on the system and not just when run in a user context.
  • c151750 - some more refactoring for shasum -> checksum rename added some additional debug logging updated loadPreferences function to force load from /Library/Preferences/io.macadmins.Outset.plist if running as root update loginOnce processing to pass in any overrides. also added some extra debug logging to inform if the console user is in the ignored list
  • 4082a65 - removed unneeded debug lines
  • 6c59f5e - Updated spelling on overrides - fixes #31
  • e6d5139 - fix error cause by unwrapping nil value in an optional also keeping the linter happy.

Outset 4.0.21891

18 Jun 08:34
0e5167d
Compare
Choose a tag to compare
Outset 4.0.21891 Pre-release
Pre-release

Notes

This is a version of Outset created by GitHub Actions.
Outset.app has been signed and notarized. The package has been signed, notarized and stapled.

Changelog

Changes

  • 573ae20 - Merge pull request #26 from macadmins/development
  • b095ec1 - Merge pull request #29 from macadmins/development
  • 09b1f03 - add marketing model to debug output
  • de634e3 - add LaunchOnlyOnce key to login-window plist. Fixes a behaviour where login window tasks were executing continuously.
  • 2009177 - update version
  • e902c37 - Fixed up some listing rules after installing SwiftLint on my new dev box refactor sha256sum to checksum removed old preference definitions, some of which were being used in-code. Since these were never being populated they would not evaluate and conditional code was not being run as a result.
  • 038af56 - update writePreferences so when running as root it will write to /Library/Preferences instead of /var/root/Library/Preferences. This fixes a bunch of expected behaviour like using --add-ignored-user and having it correctly apply to all users on the system and not just when run in a user context.
  • c151750 - some more refactoring for shasum -> checksum rename added some additional debug logging updated loadPreferences function to force load from /Library/Preferences/io.macadmins.Outset.plist if running as root update loginOnce processing to pass in any overrides. also added some extra debug logging to inform if the console user is in the ignored list

Outset 4.0.2

01 Jun 07:49
b095ec1
Compare
Choose a tag to compare

Outset 4.0.2 (build 4.0.21887)

Notes

This is a version of Outset created by GitHub Actions.
Outset.app has been signed and notarized. The package has been signed, notarized and stapled.

Changelog

Changes

  • 1801316 - Merge pull request #21 from macadmins/development
  • e1b5f45 - Update issue templates
  • 37124c9 - Created workflow for manually building release builds
  • 4f7e84c - Merge pull request #25 from macadmins/development
  • 7970afd - Merge pull request #24 from macadmins/build_release_workflow
  • 573ae20 - Merge pull request #26 from macadmins/development
  • 59db788 - update console user code #27
  • 2ca69ce - Made a bit safer
  • ef428f3 - Clean up how login window state is managed
  • 52b1dfd - some cleanup of the writeLog function
  • b095ec1 - Merge pull request #29 from macadmins/development

Outset 4.0.21885

26 May 11:07
573ae20
Compare
Choose a tag to compare
Outset 4.0.21885 Pre-release
Pre-release

Notes

This is a version of Outset created by GitHub Actions.
Outset.app has been signed and notarized. The package has been signed, notarized and stapled.

Changelog

Changes

  • 59db788 - update console user code #27
  • 2ca69ce - Made a bit safer
  • ef428f3 - Clean up how login window state is managed
  • 52b1dfd - some cleanup of the writeLog function

Outset 4.0.1

26 Mar 11:03
Compare
Choose a tag to compare

Outset 4 - The Swift Port

The swift port of Outset is a direct feature for feature (almost) replacement for the python version of Outset.

Goals

  • Maintain backwards compatability and feature parity with previous versions of Outset as much as possible
  • Support for features of modern versions of macOS (SMAppService)
  • Reduction in dependencies making deployment easier (one package, no opportunity to trigger python install dialogs)
  • Use of system API's to perform actions instead of relying on shelling out
  • Released under Mac Admins Open Source as a community project

Features

  • Native use of user defaults for reading and setting preferences
  • Support for sha256 sum of deployed files to protect against tampering
  • Unified Bundle ID and support for macOS 13 Login Items management
  • Support for login-window context
  • Current username (when available) is passed into scripts as $1

Not supported

Recent version of macos restrict the installation of .mobileconfig files in a useful way outside of MDM and from macOS 11 Big Sur onwards, the profiles command can no longer be used to install configuration profiles. As such support for this feature has been discontinued in Outset 4+.

The previous v3.0.3 release of Outset is available as a legacy package if required.

Agents

Agents and Daemons have been updated with the AssociatedBundleIdentifiers key so under macOS 13, Login Items show everything under the 'Outset' title.

Outset Login Items

Notes

This is a version of Outset created by GitHub Actions.
Outset.app has been signed and notarized. The package has been signed, notarized and stapled.

Changelog

Changes

  • 1801316 - Merge pull request #21 from macadmins/development
  • 9e08674 - Bumped version number Removed postinstall steps for macOS 13 to use SMAppService loading and instead copy agents and daemons directly

Outset 3.0.3

23 Mar 23:53
Compare
Choose a tag to compare

The last version prior to swift rewrite

Outset 1.0.0

23 Mar 23:34
Compare
Choose a tag to compare

The original release

Outset 4.0 Beta 2

22 Mar 12:08
Compare
Choose a tag to compare
Outset 4.0 Beta 2 Pre-release
Pre-release

Minor updates:

  • Copyright notice in LICENSE.md updated to "Copyright 2023 Mac Admins Open Source"
  • Current username (when available) is passed into scripts as $1
  • Login Items should now all appear under "Outset" instead of being split between Outset and developer name.
    image

Service Management

image

LaunchAgent and LaunchDaemon plists are now embedded in the app bundle and managed using the Service Management framework present in macOS 13

When installing on macOS 13 or newer SMAppService is used to load services. This means that launchd plists for io.macadmins.Outset.<service>.plist will no longer appear in /Library/LaunchAgents/ or /Library/LaunchDaemons/

  • With one exception:- There appears to be a bug in macOS when loading the LoginWindow agent using SMAppService which prevents it from being loaded properly. For now, this is loaded in the traditional way. A feedback reporting the bug has been submitted (FB12074856)

When installing on macOS 10.15 -> 12 the pkg postinstall will move launchd plists into the appropriate /Library/Launch[Agents|Daemons] directories.

New Commands

  • --enable-services: will check for and load services. If no config profile to manage login items for io.macadmins.Outset is present this will cause a user notification of a new background process to be approved
  • --disable services: unloads the services. This does not remove the entry from login items whcih is by design according to Apple
  • --service-status: shows the current service status (Enabled, Not Registered, Requires Approval or Not Found)

Known Issues

  • If a config profile for managing Login Items for io.macadmins.Outset is not present when installed and the user notification for "Background Items Added" is actioned and approved, only the LaunchDaemons (boot, login-privileged and cleanup) are approved. The LaunchAgents (login, on-demand and login-window) will be in a state of "Requires Approval" as reported by --service-status even though the Login Items in System Settings will show background items for Outset as being approved.
    The workaround is to un-check and re-check the Outset background item, or deploy a config profile from your MDM to manage background items for the io.macadmins.Outset domain.
  • pkg installer is not signed. Outset.app is signed with a private developer account (for now)

Outset 4.0 Beta 1

07 Mar 10:11
Compare
Choose a tag to compare
Outset 4.0 Beta 1 Pre-release
Pre-release

New:

  • Addition of 'login-window` processing for running scripts while the login window is present #14 ( wiki )
  • Addition of logging to /usr/local/outset/logs/ #15 ( wiki )
  • If migrating from v3 (python) to v4 (swift), existing settings and preferences should transfer to the correct io.macadmins.Outset preference domain (please read Preferences for details on what is stored where)

Fixed:

  • Fixes Typo in help for --compute-sha #5
  • Fixes "--login-privileged doesn't remove the trigger file" #11
  • On macOS 13 systems it should correctly register in Login Items under "Outset" (please raise an issue if this is not the case)
    Image 7-3-2023 at 9 07 pm

Known Issues:

  • Outset binary currently signed with a personal certificate
  • pkg is not signed
  • no notarisation

Outset 4.0 Alpha 3

01 Mar 11:58
4c87e54
Compare
Choose a tag to compare
Outset 4.0 Alpha 3 Pre-release
Pre-release

Outset Icon

What's Changed

  • Updated Apache license - added LICENSE.md
  • Bundle ID updated to io.macadmins.Outset in prep for moving to the macadmins.io github
    • launchd plists have been updated with new bundle id and launch paths
    • AssociatedBundleIdentifiers set so Outset appears as a single entry in Login Items under macOS 13 and can be easily managed
      Image 1-3-2023 at 10 50 pm
      Image 1-3-2023 at 10 49 pm
  • App preferences processing now using UserDefaults.
    • Preference domain is io.macdmins.Outset and follows standard macOS pref domain priority for reading and setting key values.
    • Migration from existing legacy preferences will be attempted but this is not fully tested
  • sha56 support
    • sha256sum property in preferences sets filename:hash key, value pairs. Presence of this property enforces all files to be process to have a matching hash.
    • --compute-sha <file> argument will generate expected hash values. using the all keyword instead of a filename will process all files in the /usr/local/outset directory structure as well as a formatted plist for use with an MDM
  • General refactor of function and variable names as well as cleanup of folder structure.
  • python 3 version moved to Legacy subfolder
  • App bundle uses the official icon

Products in this release are signed. The attached pkg is not.

Full Changelog: v4.0_alpha2...v4.0_alpha3