Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: Add modern options to PkgCreator for large-payload, compression and signing #828

Open
grahampugh opened this issue Sep 19, 2022 · 1 comment

Comments

@grahampugh
Copy link
Contributor

Time moves on, and pkgbuild has more functions than were present when AutoPkg was created. Each of the following functions would be awesome to add into the core packager.py script to make larger payloads possible, provide smaller compressed packages, and to sign packages so that they can be used for MDM-based pkg deployment:

    --large-payload
             By default, packages that are created have a per-file size limit associated with them.  This method instructs
             pkgbuild to construct a package where the included payload format supports large files.  A large file is defined
             as any file that is 8 GiB or larger.

             Warning: The --large-payload option generates packages that are only compatible with macOS 12.0 and above.
             Packages using this feature will fail to install or extract on previous releases.  Specifying this option
             requires the user to pass [--min-os-version 12.0] or later to acknowledge this requirement.

     --compression compression-mode
             Allows control over the compression used for the package. This option does not affect the compression used for
             plugins or scripts. Not specifying this option will leave the chosen compression algorithm up to the operating
             system. Two compression-mode arguments are supported:

               •   legacy forces a 10.5-compatible compression algorithm for the package.

               •   latest enables pkgbuild to automatically select newer, more efficient compression algorithms based on what
                   is provided to [--min-os-version <version>].

     --min-os-version os-version
             Specifying a minimum OS version allows the system to create a package with the latest supported features. Some
             features can have major benefits such as a better compression ratio. However, specifying a minimum version will
             make the package require that version when presented to productbuild(1). Some of the options in this tool
             require this argument to be provided.

     --sign identity-name
             Adds a digital signature to the resulting package. See SIGNED PACKAGES

     --keychain keychain-path
             Specify a specific keychain to search for the signing identity. See SIGNED PACKAGES
@Jaharmi
Copy link
Contributor

Jaharmi commented Sep 29, 2022

@grahampugh Do you have any particular thoughts about the approach for this? I might be interested in it, given that I have been known to love compression.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants