• Stars
    star
    198
  • Rank 196,898 (Top 4 %)
  • Language AppleScript
  • License
    MIT License
  • Created over 10 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Payload-Free-Package-Creator

OS Compatibility:

The current release of Payload-Free Package Creator.app has been tested and verified to run on the following versions of macOS:

  • 12.3.1
  • 11.6.5
  • 10.15.7

Not tested on the following versions of macOS:

  • 10.14.6 or earlier

============================

Using Payload-Free Package Creator.app

  1. As needed, download the Payload-Free_Package_Creator_Application.zip file from the application directory in this GitHub repo.

  2. Once downloaded and unzipped, double-click on the Payload-Free Package Creator application.

  3. You'll be prompted to select the script that you want to create a payload-free package from.

  4. Once you've selected the script, you'll be prompted to name the payload-free package. By default, the name filled in will be Payload-Free Installer Package, but this name can be changed as desired.

  5. Once you've entered a name for the installer package, you'll be prompted for a package identifier. By default, the name filled in will be com.github.payload_free, but this name should be changed to be something unique.

  6. Once you’ve entered an identifier for the installer package, you’ll be prompted for a version number. By default, the value filled in will be 1.0, but this value should be changed to be something unique.

  7. Once the package name, package identifier and package version number have been set, Payload-Free Package Creator.app will prompt for an administrator's username and password.

  8. Once the admin username and password are provided, Payload-Free Package Creator.app will create the payload-free package and prompt you when it's finished.

  9. Click OK at the prompt and a new Finder window will open and display the newly-created payload-free package.

  10. Payload-Free Package Creator.app will automatically exit.

How Payload-Free Package Creator.app works

Payload-Free Package Creator.app is an Automator application that uses AppleScript, shell scripting and pkgbuild behind the scenes to create payload-free packages. When a script is selected, the following process takes place:

  1. The script is copied to /tmp and renamed to postinstall, to match the name that pkgbuild is expecting for a post-installation script.

  2. After the package name and package identifier are chosen, /tmp is checked to make sure that there is not an existing directory that is named the same as the chosen name. If a matching directory is found, it is removed.

  3. A new directory is created in /tmp that matches the chosen name of the package.

  4. Next, a scripts directory and an empty directory named nopayload are created inside of /tmp/package_name_here. The nopayload directory provides the empty directory for pkgbuild's --root option

  5. The postinstall script is moved to /tmp/package_name_here/scripts

  6. The payload-free package is built by pkgbuild using the postinstall script stored in /tmp/package_name_here/scripts

  7. The finished payload-free package is stored in /tmp/package_name_here and the user is prompted that the process is finished.

  8. Once the user is notified and clicks OK, a new Finder window opens for /tmp/package_name_here

Blog posts: https://derflounder.wordpress.com/category/payload-free-package-creator/

More Repositories

1

rtrouton_scripts

Scripts to share
Shell
1,303
star
2

profiles

Management profiles for OS X / macOS
518
star
3

create_macos_vm_install_dmg

Shell
474
star
4

create_os_x_vm_install_dmg

Shell
186
star
5

create_macos_recovery

Tool for repairing the Recovery volume (APFS) or partition (HFS+) on Macs running macOS 10.13.x or later.
Shell
117
star
6

First_Boot_Package_Install_Generator

Shell
106
star
7

privacy_preferences_control_profiles

Repository for Privacy Preferences Policy Control profiles, also known as TCC profiles
95
star
8

Simple-Package-Creator

87
star
9

CasperCheck

Shell
81
star
10

First-Boot-Package-Install

Shell
59
star
11

set_microsoft_outlook_as_default_application

41
star
12

autopkg-conductor

Script for managing AutoPkg runs
Shell
36
star
13

payload-free_package_printer_generator

Shell
34
star
14

First-Boot-Package-Install-With-Automated-Apple-Software-Update

Shell
27
star
15

esxi_macos_vm_creation

Shell
20
star
16

aws_scripts

Shell
18
star
17

autopkg_setup_for_jamf_pro

This utility is designed to install and configure AutoPkg and JSSImporter on macOS
Shell
17
star
18

documentation_VM_profiles

These are management profiles I use when creating VMs for documentation purposes.
17
star
19

AutoPkg_Processors

Python
12
star
20

Show-or-Hide-Desktop-Icons

11
star
21

documentation_VM_scripts

Shell
9
star
22

aws_lightsail

This repo is for posting and sharing AWS Lightsail setup scripts.
Shell
8
star
23

jp400-09-2019

Scripts and other info developed as part of a Jamf Pro certification training class in September 2019.
Shell
8
star
24

2015_cce_class

Shell
8
star
25

jamf_infrastructure_manager

This repo is for Jamf Infrastructure Manager-related scripts.
Shell
8
star
26

afp548keychainminder

This repository stores the source code for the original Keychain Minder, formerly hosted by AFP548.com
Objective-C
8
star
27

ec2_systems_manager

Shell
4
star
28

pbj

Peanut butter and jelly images
1
star