From 2ed0c6eab4fc164b0cd938ce1f078cb0900dce43 Mon Sep 17 00:00:00 2001 From: Zach Bruggeman Date: Mon, 9 Feb 2015 19:27:52 -0800 Subject: [PATCH] Refactor Mac .pkg generation This refactors the Mac .pkg generation to use Packages. This moves node.js away from using the deprecated Package Maker, and allows for easy localization of the installer. --- .gitignore | 7 +- Makefile | 28 +- doc/osx_installer_logo.png | Bin 16640 -> 1049 bytes tools/osx-pkg.pmdoc/01local-contents.xml | 1 - tools/osx-pkg.pmdoc/01local.xml | 25 - tools/osx-pkg.pmdoc/02npm-contents.xml | 1 - tools/osx-pkg.pmdoc/02npm.xml | 24 - tools/osx-pkg.pmdoc/index.xml.tmpl | 55 - tools/osx-pkg/README.md | 46 + tools/osx-pkg/osx-pkg.pkgproj | 2165 +++++++++++++++++ .../scripts/npm_postinstall.sh} | 0 tools/osx-pkg/scripts/npm_preinstall.sh | 7 + tools/osx-pkg/scripts/uninstall.sh | 19 + tools/osx-pkg/strings/en/introduction.rtf | 6 + tools/osx-pkg/strings/en/summary.rtf | 14 + 15 files changed, 2281 insertions(+), 117 deletions(-) delete mode 100644 tools/osx-pkg.pmdoc/01local-contents.xml delete mode 100644 tools/osx-pkg.pmdoc/01local.xml delete mode 100644 tools/osx-pkg.pmdoc/02npm-contents.xml delete mode 100644 tools/osx-pkg.pmdoc/02npm.xml delete mode 100644 tools/osx-pkg.pmdoc/index.xml.tmpl create mode 100644 tools/osx-pkg/README.md create mode 100755 tools/osx-pkg/osx-pkg.pkgproj rename tools/{osx-pkg-postinstall.sh => osx-pkg/scripts/npm_postinstall.sh} (100%) create mode 100644 tools/osx-pkg/scripts/npm_preinstall.sh create mode 100644 tools/osx-pkg/scripts/uninstall.sh create mode 100644 tools/osx-pkg/strings/en/introduction.rtf create mode 100644 tools/osx-pkg/strings/en/summary.rtf diff --git a/.gitignore b/.gitignore index f9a106d8f566e1..254a50990a51a4 100644 --- a/.gitignore +++ b/.gitignore @@ -50,7 +50,6 @@ ipch/ /dist-osx /npm.wxs /tools/msvs/npm.wixobj -/tools/osx-pkg.pmdoc/index.xml /test/addons/??_*/ email.md deps/v8-* @@ -88,3 +87,9 @@ test.tap # Xcode workspaces and project folders *.xcodeproj *.xcworkspace + +# mac installer files +/tools/osx-pkg/osx-pkg-out.pkgproj +/tools/osx-pkg/strings/LICENSE.txt +/tools/osx-pkg/strings/**/*.out.rtf +/tools/osx-pkg/scripts/nodejs-run-uninstall diff --git a/Makefile b/Makefile index 31e964d080835c..6cfa070978e5f5 100644 --- a/Makefile +++ b/Makefile @@ -305,7 +305,7 @@ BINARYTAR=$(BINARYNAME).tar XZ=$(shell which xz > /dev/null 2>&1; echo $$?) XZ_COMPRESSION ?= 9 PKG=$(TARNAME).pkg -PACKAGEMAKER ?= /Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker +PACKAGESBUILD=/usr/local/bin/packagesbuild PKGDIR=out/dist-osx release-only: @@ -330,7 +330,22 @@ release-only: exit 1 ; \ fi -$(PKG): release-only +pre-pkg: + touch tools/osx-pkg/scripts/nodejs-run-uninstall # empty file for uninstall step + cp LICENSE tools/osx-pkg/strings/LICENSE.txt + cat tools/osx-pkg/osx-pkg.pkgproj | \ + sed -e 's|__nodeversion__|'$(FULLVERSION)'|g' | \ + sed -e 's|introduction.rtf|introduction.out.rtf|g' > \ + tools/osx-pkg/osx-pkg-out.pkgproj + $(foreach dir, \ + $(shell echo tools/osx-pkg/strings/*/), \ + cat $(dir)introduction.rtf | \ + sed -e 's|__nodeversion__|'$(FULLVERSION)'|g' | \ + sed -e 's|__npmversion__|'$(NPMVERSION)'|g' > \ + $(dir)introduction.out.rtf; \ + ) + +$(PKG): release-only pre-pkg rm -rf $(PKGDIR) rm -rf out/deps out/Release $(PYTHON) ./configure \ @@ -340,14 +355,7 @@ $(PKG): release-only $(CONFIG_FLAGS) $(BUILD_RELEASE_FLAGS) $(MAKE) install V=$(V) DESTDIR=$(PKGDIR) SIGN="$(CODESIGN_CERT)" PKGDIR="$(PKGDIR)" bash tools/osx-codesign.sh - cat tools/osx-pkg.pmdoc/index.xml.tmpl \ - | sed -E "s/\\{nodeversion\\}/$(FULLVERSION)/g" \ - | sed -E "s/\\{npmversion\\}/$(NPMVERSION)/g" \ - > tools/osx-pkg.pmdoc/index.xml - $(PACKAGEMAKER) \ - --id "org.nodejs.pkg" \ - --doc tools/osx-pkg.pmdoc \ - --out $(PKG) + $(PACKAGESBUILD) tools/osx-pkg/osx-pkg-out.pkgproj SIGN="$(PRODUCTSIGN_CERT)" PKG="$(PKG)" bash tools/osx-productsign.sh pkg: $(PKG) diff --git a/doc/osx_installer_logo.png b/doc/osx_installer_logo.png index 65ba89ddac761d23458ad4d513a4effe29296090..6ded8b58fa9a95fb4f707a8c055b39df8df7c1c3 100644 GIT binary patch literal 1049 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 XL!g)S-e>ZEL;LE=+DeTIHWB{^z|;wu diff --git a/tools/osx-pkg.pmdoc/01local-contents.xml b/tools/osx-pkg.pmdoc/01local-contents.xml deleted file mode 100644 index ccbb4189961b0a..00000000000000 --- a/tools/osx-pkg.pmdoc/01local-contents.xml +++ /dev/null @@ -1 +0,0 @@ - diff --git a/tools/osx-pkg.pmdoc/01local.xml b/tools/osx-pkg.pmdoc/01local.xml deleted file mode 100644 index 537b35508bb714..00000000000000 --- a/tools/osx-pkg.pmdoc/01local.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - org.nodejs.node.pkg - 1.0 - - - - ../out/dist-osx/usr/local/ - /usr/local - - - - - installTo.isRelativeType - installTo - locationType - relocatable - installFrom.path - installTo.isAbsoluteType - identifier - parent - installTo.path - installFrom.isRelativeType - - diff --git a/tools/osx-pkg.pmdoc/02npm-contents.xml b/tools/osx-pkg.pmdoc/02npm-contents.xml deleted file mode 100644 index ccbb4189961b0a..00000000000000 --- a/tools/osx-pkg.pmdoc/02npm-contents.xml +++ /dev/null @@ -1 +0,0 @@ - diff --git a/tools/osx-pkg.pmdoc/02npm.xml b/tools/osx-pkg.pmdoc/02npm.xml deleted file mode 100644 index fca97e5c27dd11..00000000000000 --- a/tools/osx-pkg.pmdoc/02npm.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - org.nodejs.npm.pkg - 1.0 - - - - ../deps/npm - /usr/local/lib/node_modules/npm - - - - - installTo.path - installFrom.isRelativeType - installTo - scripts.postinstall.isRelativeType - parent - installTo.isAbsoluteType - - - osx-pkg-postinstall.sh - - diff --git a/tools/osx-pkg.pmdoc/index.xml.tmpl b/tools/osx-pkg.pmdoc/index.xml.tmpl deleted file mode 100644 index e3b14b2112d694..00000000000000 --- a/tools/osx-pkg.pmdoc/index.xml.tmpl +++ /dev/null @@ -1,55 +0,0 @@ - - - Node.js - /Users/nodejs/Desktop/node.pkg - org.nodejs - - - - - - - - - - - - - - - - - - - ../doc/osx_installer_logo.png - ../LICENSE - - - - - - 01local.xml - 02npm.xml - properties.title - properties.userDomain - properties.anywhereDomain - properties.systemDomain - diff --git a/tools/osx-pkg/README.md b/tools/osx-pkg/README.md new file mode 100644 index 00000000000000..6f020facf34723 --- /dev/null +++ b/tools/osx-pkg/README.md @@ -0,0 +1,46 @@ +## osx-pkg + +### Build + +Prerequisites: + +* Packages: http://s.sudre.free.fr/Software/Packages/about.html + +In the root folder: + +```bash +make pkg +``` + +### Localization + +There are two files that can be localized in the OS X installer: the +introduction, and the summary. + +1. Make sure you've installed Packages: + http://s.sudre.free.fr/Software/Packages/about.html +2. Duplicate the `strings/en` folder for reference, and rename the folder to + the language you are localizing (ex. `fr`, `ru`, etc.) +3. Translate `introduction.rtf` and `summary.rtf`. Do not modify the words + `__nodeversion__` or `__npmversion__`, as these are automatically replaced + by the build step with the Node.js and npm versions, respectively. +4. In the root folder, run `make pre-pkg`. This will generate the + files needed for Packages. +5. Open `tools/osx-pkg/osx-pkg.pkgproj` in Packages. (Not + `osx-pkg-out.pkgproj`, as this is a generated file) +6. In Packages, go to the Presentation tab, and if not already selected, + choose "Introduction" from the dropdown on the right-hand side. + ![packages preview](https://s3.amazonaws.com/f.cl.ly/items/3q160p2r1X1B3i2N1W42/Screen%20Shot%202015-02-09%20at%207.26.09%20PM.png) +7. Press the "+" at the bottom right. This will add a new language entry. Click + on the flag, and choose which language you are localizing. +8. Click on the column next to the flag, and ensure "Relative to Project" is + selected. It's a rectangle with the letter "R" inside of it. +9. Click on the last column, which will currently have a dash in it, and + press "Choose...". +10. Locate the `introduction.rtf` file you translated, and choose it. + Don't worry about the `introduction.out.rtf` file, as this is an autogenerated + file, and is dealt with when compiling. +11. In the dropdown that says "Introduction" at the top, choose "Conclusion" + and repeat this process for the `conclusion.rtf` file. +12. Save the project, and commit your changes. The generated files are + automatically ignored by Git, so you don't have to worry about accidentally committing them in. diff --git a/tools/osx-pkg/osx-pkg.pkgproj b/tools/osx-pkg/osx-pkg.pkgproj new file mode 100755 index 00000000000000..47e92642af25d9 --- /dev/null +++ b/tools/osx-pkg/osx-pkg.pkgproj @@ -0,0 +1,2165 @@ + + + + + PACKAGES + + + PACKAGE_FILES + + DEFAULT_INSTALL_LOCATION + / + HIERARCHY + + CHILDREN + + + CHILDREN + + + CHILDREN + + GID + 80 + PATH + Utilities + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 80 + PATH + Applications + PATH_TYPE + 0 + PERMISSIONS + 509 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + GID + 80 + PATH + Application Support + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Automator + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Documentation + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Filesystems + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Frameworks + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Input Methods + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Internet Plug-Ins + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + LaunchAgents + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + LaunchDaemons + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + PreferencePanes + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Preferences + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 80 + PATH + Printers + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + PrivilegedHelperTools + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + QuickLook + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + QuickTime + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Screen Savers + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Scripts + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Services + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Widgets + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + Library + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + Extensions + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + Library + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + System + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + Shared + PATH_TYPE + 0 + PERMISSIONS + 1023 + TYPE + 1 + UID + 0 + + + GID + 80 + PATH + Users + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + ../../out/dist-osx/usr/local + PATH_TYPE + 1 + PERMISSIONS + 493 + TYPE + 3 + UID + 0 + + + GID + 0 + PATH + usr + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 2 + UID + 0 + + + GID + 0 + PATH + / + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + PAYLOAD_TYPE + 0 + VERSION + 3 + + PACKAGE_SCRIPTS + + RESOURCES + + + PACKAGE_SETTINGS + + AUTHENTICATION + 1 + CONCLUSION_ACTION + 0 + IDENTIFIER + org.nodejs.node.pkg + NAME + Node.js + OVERWRITE_PERMISSIONS + + VERSION + __nodeversion__ + + UUID + F15133E4-7140-467A-90C3-BB6B53A9C79E + + + PACKAGE_FILES + + DEFAULT_INSTALL_LOCATION + / + HIERARCHY + + CHILDREN + + + CHILDREN + + + CHILDREN + + GID + 80 + PATH + Utilities + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 80 + PATH + Applications + PATH_TYPE + 0 + PERMISSIONS + 509 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + GID + 80 + PATH + Application Support + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Automator + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Documentation + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Filesystems + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Frameworks + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Input Methods + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Internet Plug-Ins + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + LaunchAgents + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + LaunchDaemons + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + PreferencePanes + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Preferences + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 80 + PATH + Printers + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + PrivilegedHelperTools + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + QuickLook + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + QuickTime + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Screen Savers + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Scripts + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Services + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Widgets + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + Library + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + Extensions + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + Library + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + System + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + Shared + PATH_TYPE + 0 + PERMISSIONS + 1023 + TYPE + 1 + UID + 0 + + + GID + 80 + PATH + Users + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + + CHILDREN + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + ../../deps/npm + PATH_TYPE + 1 + PERMISSIONS + 493 + TYPE + 3 + UID + 0 + + + GID + 0 + PATH + node_modules + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 2 + UID + 0 + + + GID + 0 + PATH + lib + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 2 + UID + 0 + + + GID + 0 + PATH + local + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 2 + UID + 0 + + + GID + 0 + PATH + usr + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 2 + UID + 0 + + + GID + 0 + PATH + / + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + PAYLOAD_TYPE + 0 + VERSION + 3 + + PACKAGE_SCRIPTS + + POSTINSTALL_PATH + + PATH + scripts/npm_postinstall.sh + PATH_TYPE + 1 + + PREINSTALL_PATH + + PATH + scripts/npm_preinstall.sh + PATH_TYPE + 1 + + RESOURCES + + + PACKAGE_SETTINGS + + AUTHENTICATION + 1 + CONCLUSION_ACTION + 0 + IDENTIFIER + org.nodejs.npm.pkg + LOCATION + 0 + NAME + npm + OVERWRITE_PERMISSIONS + + VERSION + __npmversion__ + + TYPE + 0 + UUID + 2D16FD51-8800-422D-9E9B-EC59D2157FE8 + + + PACKAGE_FILES + + DEFAULT_INSTALL_LOCATION + / + HIERARCHY + + CHILDREN + + + CHILDREN + + + CHILDREN + + GID + 80 + PATH + Utilities + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 80 + PATH + Applications + PATH_TYPE + 0 + PERMISSIONS + 509 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + GID + 80 + PATH + Application Support + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Automator + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Documentation + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Filesystems + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Frameworks + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Input Methods + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Internet Plug-Ins + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + LaunchAgents + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + LaunchDaemons + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + PreferencePanes + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Preferences + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 80 + PATH + Printers + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + PrivilegedHelperTools + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + QuickLook + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + QuickTime + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Screen Savers + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Scripts + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Services + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + GID + 0 + PATH + Widgets + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + Library + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + Extensions + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + Library + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + System + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + scripts/nodejs-run-uninstall + PATH_TYPE + 1 + PERMISSIONS + 420 + TYPE + 3 + UID + 0 + + + GID + 0 + PATH + tmp + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 2 + UID + 0 + + + CHILDREN + + + CHILDREN + + GID + 0 + PATH + Shared + PATH_TYPE + 0 + PERMISSIONS + 1023 + TYPE + 1 + UID + 0 + + + GID + 80 + PATH + Users + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + + GID + 0 + PATH + / + PATH_TYPE + 0 + PERMISSIONS + 493 + TYPE + 1 + UID + 0 + + PAYLOAD_TYPE + 0 + VERSION + 3 + + PACKAGE_SCRIPTS + + POSTINSTALL_PATH + + PATH + scripts/uninstall.sh + PATH_TYPE + 1 + + RESOURCES + + + PACKAGE_SETTINGS + + AUTHENTICATION + 1 + CONCLUSION_ACTION + 0 + IDENTIFIER + org.nodejs.uninstall.pkg + LOCATION + 0 + NAME + uninstall + OVERWRITE_PERMISSIONS + + VERSION + __nodeversion__ + + TYPE + 0 + UUID + DC223951-DCCA-426C-8A88-B8F4A53FE9C6 + + + PROJECT + + PROJECT_COMMENTS + + NOTES + + PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBIVE1M + IDQuMDEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQv + c3RyaWN0LmR0ZCI+CjxodG1sPgo8aGVhZD4KPG1ldGEgaHR0cC1l + cXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7 + IGNoYXJzZXQ9VVRGLTgiPgo8bWV0YSBodHRwLWVxdWl2PSJDb250 + ZW50LVN0eWxlLVR5cGUiIGNvbnRlbnQ9InRleHQvY3NzIj4KPHRp + dGxlPjwvdGl0bGU+CjxtZXRhIG5hbWU9IkdlbmVyYXRvciIgY29u + dGVudD0iQ29jb2EgSFRNTCBXcml0ZXIiPgo8bWV0YSBuYW1lPSJD + b2NvYVZlcnNpb24iIGNvbnRlbnQ9IjE0MDQuMzQiPgo8c3R5bGUg + dHlwZT0idGV4dC9jc3MiPgo8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5 + Pgo8L2JvZHk+CjwvaHRtbD4K + + + PROJECT_PRESENTATION + + BACKGROUND + + ALIGNMENT + 6 + BACKGROUND_PATH + + PATH + ../../doc/osx_installer_logo.png + PATH_TYPE + 1 + + CUSTOM + 1 + SCALING + 2 + + INSTALLATION TYPE + + HIERARCHIES + + INSTALLER + + LIST + + + DESCRIPTION + + OPTIONS + + DEPENDENCY + + ENABLED_DEPENDENCY + + COMPARATOR + 1 + OBJECT + 1 + UUID + 41286F31-6755-4025-A7D1-04F7055B2AC8 + + ENABLED_MODE + 2 + SELECTED_DEPENDENCY + + COMPARATOR + 1 + OBJECT + 1 + UUID + 41286F31-6755-4025-A7D1-04F7055B2AC8 + + + HIDDEN + + STATE + 3 + + PACKAGE_UUID + F15133E4-7140-467A-90C3-BB6B53A9C79E + REQUIREMENTS + + TITLE + + TOOLTIP + + TYPE + 0 + UUID + 95681E96-6FC4-494B-8901-D85A1178E7D4 + + + DESCRIPTION + + OPTIONS + + DEPENDENCY + + ENABLED_DEPENDENCY + + COMPARATOR + 1 + OBJECT + 1 + UUID + 41286F31-6755-4025-A7D1-04F7055B2AC8 + + ENABLED_MODE + 2 + SELECTED_DEPENDENCY + + COMPARATOR + 1 + OBJECT + 1 + UUID + 41286F31-6755-4025-A7D1-04F7055B2AC8 + + + HIDDEN + + STATE + 3 + + PACKAGE_UUID + 2D16FD51-8800-422D-9E9B-EC59D2157FE8 + REQUIREMENTS + + TITLE + + TOOLTIP + + TYPE + 0 + UUID + E6975970-F10F-41C5-8FD8-8D816D281D47 + + + DESCRIPTION + + OPTIONS + + HIDDEN + + STATE + 2 + + PACKAGE_UUID + DC223951-DCCA-426C-8A88-B8F4A53FE9C6 + REQUIREMENTS + + TITLE + + + LANGUAGE + English + VALUE + Uninstall Node.js + + + TOOLTIP + + TYPE + 0 + UUID + 41286F31-6755-4025-A7D1-04F7055B2AC8 + + + REMOVED + + + + INSTALLATION TYPE + 0 + MODE + 2 + + INSTALLATION_STEPS + + + ICPRESENTATION_CHAPTER_VIEW_CONTROLLER_CLASS + ICPresentationViewIntroductionController + INSTALLER_PLUGIN + Introduction + LIST_TITLE_KEY + InstallerSectionTitle + + + ICPRESENTATION_CHAPTER_VIEW_CONTROLLER_CLASS + ICPresentationViewReadMeController + INSTALLER_PLUGIN + ReadMe + LIST_TITLE_KEY + InstallerSectionTitle + + + ICPRESENTATION_CHAPTER_VIEW_CONTROLLER_CLASS + ICPresentationViewLicenseController + INSTALLER_PLUGIN + License + LIST_TITLE_KEY + InstallerSectionTitle + + + ICPRESENTATION_CHAPTER_VIEW_CONTROLLER_CLASS + ICPresentationViewDestinationSelectController + INSTALLER_PLUGIN + TargetSelect + LIST_TITLE_KEY + InstallerSectionTitle + + + ICPRESENTATION_CHAPTER_VIEW_CONTROLLER_CLASS + ICPresentationViewInstallationTypeController + INSTALLER_PLUGIN + PackageSelection + LIST_TITLE_KEY + InstallerSectionTitle + + + ICPRESENTATION_CHAPTER_VIEW_CONTROLLER_CLASS + ICPresentationViewInstallationController + INSTALLER_PLUGIN + Install + LIST_TITLE_KEY + InstallerSectionTitle + + + ICPRESENTATION_CHAPTER_VIEW_CONTROLLER_CLASS + ICPresentationViewSummaryController + INSTALLER_PLUGIN + Summary + LIST_TITLE_KEY + InstallerSectionTitle + + + INTRODUCTION + + LOCALIZATIONS + + + LANGUAGE + English + VALUE + + PATH + strings/en/introduction.rtf + PATH_TYPE + 1 + + + + + LICENSE + + KEYWORDS + + LOCALIZATIONS + + + LANGUAGE + English + VALUE + + PATH + strings/LICENSE.txt + PATH_TYPE + 1 + + + + MODE + 0 + TEMPLATE + BSD License + + README + + LOCALIZATIONS + + + SUMMARY + + LOCALIZATIONS + + + LANGUAGE + English + VALUE + + PATH + strings/en/summary.rtf + PATH_TYPE + 1 + + + + + TITLE + + LOCALIZATIONS + + + LANGUAGE + English + VALUE + Node.js + + + + + PROJECT_REQUIREMENTS + + LIST + + POSTINSTALL_PATH + + PREINSTALL_PATH + + RESOURCES + + ROOT_VOLUME_ONLY + + + PROJECT_SETTINGS + + ADVANCED_OPTIONS + + BUILD_FORMAT + 0 + BUILD_PATH + + PATH + ../../out + PATH_TYPE + 1 + + EXCLUDED_FILES + + + PATTERNS_ARRAY + + + REGULAR_EXPRESSION + + STRING + .DS_Store + TYPE + 0 + + + PROTECTED + + PROXY_NAME + Remove .DS_Store files + PROXY_TOOLTIP + Remove ".DS_Store" files created by the Finder. + STATE + + + + PATTERNS_ARRAY + + + REGULAR_EXPRESSION + + STRING + .pbdevelopment + TYPE + 0 + + + PROTECTED + + PROXY_NAME + Remove .pbdevelopment files + PROXY_TOOLTIP + Remove ".pbdevelopment" files created by ProjectBuilder or Xcode. + STATE + + + + PATTERNS_ARRAY + + + REGULAR_EXPRESSION + + STRING + CVS + TYPE + 1 + + + REGULAR_EXPRESSION + + STRING + .cvsignore + TYPE + 0 + + + REGULAR_EXPRESSION + + STRING + .cvspass + TYPE + 0 + + + REGULAR_EXPRESSION + + STRING + .svn + TYPE + 1 + + + REGULAR_EXPRESSION + + STRING + .git + TYPE + 1 + + + REGULAR_EXPRESSION + + STRING + .gitignore + TYPE + 0 + + + PROTECTED + + PROXY_NAME + Remove SCM metadata + PROXY_TOOLTIP + Remove helper files and folders used by the CVS, SVN or Git Source Code Management systems. + STATE + + + + PATTERNS_ARRAY + + + REGULAR_EXPRESSION + + STRING + classes.nib + TYPE + 0 + + + REGULAR_EXPRESSION + + STRING + designable.db + TYPE + 0 + + + REGULAR_EXPRESSION + + STRING + info.nib + TYPE + 0 + + + PROTECTED + + PROXY_NAME + Optimize nib files + PROXY_TOOLTIP + Remove "classes.nib", "info.nib" and "designable.nib" files within .nib bundles. + STATE + + + + PATTERNS_ARRAY + + + REGULAR_EXPRESSION + + STRING + Resources Disabled + TYPE + 1 + + + PROTECTED + + PROXY_NAME + Remove Resources Disabled folders + PROXY_TOOLTIP + Remove "Resources Disabled" folders. + STATE + + + + SEPARATOR + + + + NAME + node-__nodeversion__ + + + TYPE + 0 + VERSION + 2 + + diff --git a/tools/osx-pkg-postinstall.sh b/tools/osx-pkg/scripts/npm_postinstall.sh similarity index 100% rename from tools/osx-pkg-postinstall.sh rename to tools/osx-pkg/scripts/npm_postinstall.sh diff --git a/tools/osx-pkg/scripts/npm_preinstall.sh b/tools/osx-pkg/scripts/npm_preinstall.sh new file mode 100644 index 00000000000000..41cf0ec2c32922 --- /dev/null +++ b/tools/osx-pkg/scripts/npm_preinstall.sh @@ -0,0 +1,7 @@ +#!/bin/sh +# TODO Can this be done inside the .pmdoc? +# TODO Can we extract $PREFIX from the installer? + +set -e + +rm -rf /usr/local/lib/node_modules/npm diff --git a/tools/osx-pkg/scripts/uninstall.sh b/tools/osx-pkg/scripts/uninstall.sh new file mode 100644 index 00000000000000..b14880e52431df --- /dev/null +++ b/tools/osx-pkg/scripts/uninstall.sh @@ -0,0 +1,19 @@ +#!/bin/sh +DIR_PREFIX=/usr/local +if [ -f /tmp/nodejs-run-uninstall ]; then + rm -f $DIR_PREFIX/bin/node + rm -f $DIR_PREFIX/bin/npm + if [ -L $DIR_PREFIX/bin/node ]; then + rm -f $DIR_PREFIX/bin/node + fi + rm -rf $DIR_PREFIX/include/node + rm -f $DIR_PREFIX/lib/dtrace/node.d + rm -f $DIR_PREFIX/share/man/man1/node.1 + rm -f $DIR_PREFIX/share/systemtap/tapset/node.stp + + if [ ! "$(ls -A $DIR_PREFIX/lib/node_modules)" ]; then + rm -rf $DIR_PREFIX/lib/node_modules + fi + + rm -f /tmp/nodejs-run-uninstall +fi diff --git a/tools/osx-pkg/strings/en/introduction.rtf b/tools/osx-pkg/strings/en/introduction.rtf new file mode 100644 index 00000000000000..c817d2d764246d --- /dev/null +++ b/tools/osx-pkg/strings/en/introduction.rtf @@ -0,0 +1,6 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf360 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural + +\f0\fs26 \cf0 This package will install Node.js __nodeversion__ and npm __npmversion__ into /usr/local/.} diff --git a/tools/osx-pkg/strings/en/summary.rtf b/tools/osx-pkg/strings/en/summary.rtf new file mode 100644 index 00000000000000..0a0b890ba3c0ec --- /dev/null +++ b/tools/osx-pkg/strings/en/summary.rtf @@ -0,0 +1,14 @@ +{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf360 +{\fonttbl\f0\fnil\fcharset0 LucidaGrande;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural + +\f0\fs26 \cf0 Node.js was installed at\ +\ + /usr/local/bin/node\ +\ +npm was installed at\ +\ + /usr/local/bin/npm\ +\ +Make sure that /usr/local/bin is in your $PATH.}