The OS X Package Manager
OSXPM Application and Source Code:
The OS X Package Manager is a Cocoa Package Manager Install-Create-Delete from the desktop not the terminal it is the result of a OSXGNU.ORG GUI project for The PackageTools Script announced Nov 8 2001. This Util is written to use GNU and Open-Source Tools GNUTAR GZIP not PAX which makes it Sim-Link friendly.
This Tool Makes a new type of package with an extention of .XPM this package is made the same as a traditional .PKG package the difference is the package archive is built by GNUTAR not PAX.
The Application adds 2 new Flags to the .info file:
- Archiver GNUTAR
- Dependency NO
The Archiver Flag is to let OTHER systems know what was used the valid values are :
- PAX ( standard .PKG format)
- COMPRESS ( Old Package Manager format (Next) .OPM format)
- GNUTAR (OSXPM format .XPM format)
- CPIO ( Currently not used by any Package manager)
The Dependency Flag is a hook for the OSXPM V1.1.x or above (To be released by July 2002) to implement dependency checking for packages. Valid Values are:
- NO (Do NOT use the Dependency checker)
- YES (use the Dependency checker)
All other Package Flags stay the same in the .info file.
The Package Deleter format supports all Important Flags in the .Info File. If the InstallOnly flag is set to YES the Package Manager Will Not delete the package.
The Package Manager currently does not support Meta Packages.
It NOW DOES support the UNDOCUMENTED pre/postflight scripts and does support pre-install and post-install scripts as of V 1.0.0.2.
The Package Manager ENFORCES the DefaultLocation FLAG so it does not ask where to install the package. Receipts made by the Package Manager are stored with the .PKG file name as the difference in the package types only apples to installation methods not Receipt or Delete Methods.
The Source is included and Developers are encouraged to help with the project.
Chris Roberts
The OSXGNU Package Utilites
Mac OS X package built by Chris
Roberts
mkpkgdir util
dompkg util
The pkgInstall Utility (package Un-Installer)
The gnu2pkg utility
mkpkgdir util
A utility that makes the structure for a meta package
and creates the stubs for the Text files for Welcome,
ReadMe, and License.
- Make the packages you want to include in the meta package. Fill in the package descriptionin the Package maker dialog as this will be used in the custom dialog in the meta package.
- In the terminal cd into your Desktop. Type: mkpkgdir the_name_of_the_meta_package do not use the .mpkg extention in the name of your meta package. replace the "the_name_of_the_meta_package" with the filename of your metapackage without spaces in the name!
- Copy all the packages you want to be included in the meta package you made in Step 1. in the Packages directory in the the_name_of_the_meta_package directory.
- Edit the Text files in the the_name_of_the_meta_package Valid File Types for these files are RTF RTFD HTML TXT only one of each file can exist you can not have two Welcome.XXX files.
dompkg util
After editing the Text files and placing the packages to
build into the meta package in the Packages directory,
this script will build and create a working meta package
in the same directory as the directory mkpkgdir program
made the stubs.
- From the terminal cd into the your Desktop.
Type: dompkg the_name_of_the_meta_package 'The name of the meta package' Package.version
The first paramiter is the same name you gave to mkpkgdir.
The second paramiter is the readable package title enclosed in " ' " single quotes. The last paramiter is the version of the meta package no spaces in version.
- If there is an order to the packages to be installed you must edit the file
the_name_of_the_meta_package.mpkg/the_name_of_the_meta_package.list
and place the package names in the order you want.
Scripts Written and Built By: Chris Roberts
The pkgInstall Utility
This Shell Script OSX Packages and will install or UN-Install them.
To use this Script you must use the terminal application or a XTerm.
First how to UN-Install a Package:
- Find the name of a package you want to UN-Install un the /Library/Receipts Directory
- Open a Terminal and type: sudo pkgInstall --delete packagenametodelete.pkg
- As allways the system will ask for your password and then proceed to delete the package and all it's files and the Receipt.
Second how to Install a Package:
- Open a Terminal and type: sudo pkgInstall --install packagenametoInstall.pkg
- As allways the system will ask for your password and then proceed to Install the package and all it's files and the Receipt.
This simple and Powerful tool was written by Yves Arrouye.
The gnu2pkg utility
This Perl Script uses the Gnu-Darwin Packages and makes them into OSX Package directories so they can be packaged.
To use this Script you must use the terminal application or a XTerm.
- Download a .tgz package you want from ftp2.sourceforge.net or ftp3.sourceforge.net
- Open a terminal and cd to the directory you downloaded to.
- Type the following in the terminal: gnu2pkg (pkgname.tgz) (pkgname)
- This will create a directory with the name of the package (pkgname) you gave in the last step. It will also dcompress the file and make two directories "packages" and "resource" inside the (pkgname) directory.
- Start the PackageMaker application in the /Developer/Applications directory.
- Click "Change Root" and select the (pkgname) folder and the package directory in it click "Open"
- Click "Set" and select the (pkgname) folder and the resource directory in it click "Open"
- Add a title for the package in the "Package Title" box.
- Check "Needs Authorization" check box
Click "Create Package" and give a name for this package usually "pkgname-version.pkg"
- Click Continue when done making the package then Quit PackageMaker.
- Double Click on the package you just made to install the software.
This Script was made by Chris Roberts chris@osxgnu.org