diff --git a/mac_installer/Installer.cpp b/mac_installer/Installer.cpp index 0c4d4e8dd2..fd8c078cd4 100644 --- a/mac_installer/Installer.cpp +++ b/mac_installer/Installer.cpp @@ -1,6 +1,6 @@ // This file is part of BOINC. // http://boinc.berkeley.edu -// Copyright (C) 2008 University of California +// Copyright (C) 2015 University of California // // BOINC is free software; you can redistribute it and/or modify it // under the terms of the GNU Lesser General Public License @@ -68,6 +68,7 @@ CFStringRef valueNoRestart = CFSTR("NoRestart"); int main(int argc, char *argv[]) { char pkgPath[MAXPATHLEN]; + char postInstallAppPath[MAXPATHLEN]; char temp[MAXPATHLEN]; char brand[64], s[256]; char *p; @@ -90,6 +91,9 @@ int main(int argc, char *argv[]) strlcpy(temp, pkgPath, sizeof(temp)); strlcat(pkgPath, "/Contents/Resources/", sizeof(pkgPath)); + + strlcpy(postInstallAppPath, pkgPath, sizeof(postInstallAppPath)); + strlcat(postInstallAppPath, "PostInstall.app", sizeof(postInstallAppPath)); // To allow for branding, assume name of installer package inside bundle corresponds to name of this application p = strrchr(temp, '/'); // Point to name of this application (e.g., "BOINC Installer.app") @@ -109,12 +113,16 @@ int main(int argc, char *argv[]) // Expand the installer package system("rm -dfR /tmp/BOINC.pkg"); system("rm -dfR /tmp/expanded_BOINC.pkg"); + system("rm -dfR /tmp/PostInstall.app"); system("rm -f /tmp/BOINC_preferred_languages"); system("rm -f /tmp/BOINC_restart_flag"); - sprintf(temp, "pkgutil --expand \"%s\" /tmp/expanded_BOINC.pkg", pkgPath); + sprintf(temp, "cp -fpR \"%s\" /tmp/PostInstall.app", postInstallAppPath); err = system(temp); + sprintf(temp, "pkgutil --expand \"%s\" /tmp/expanded_BOINC.pkg", pkgPath); + err = system(temp); + if (err == noErr) { GetPreferredLanguages(); } diff --git a/mac_installer/complist.plist b/mac_installer/complist.plist index 3efcc1b5de..ab85e5786f 100644 --- a/mac_installer/complist.plist +++ b/mac_installer/complist.plist @@ -22,17 +22,5 @@ RootRelativeBundlePath Library/Screen Savers/BOINCSaver.saver - - BundleHasStrictIdentifier - - BundleIsRelocatable - - BundleIsVersionChecked - - BundleOverwriteAction - upgrade - RootRelativeBundlePath - tmp/PostInstall.app - diff --git a/mac_installer/myDistribution b/mac_installer/myDistribution index 66a43623d2..0f0ad04b71 100644 --- a/mac_installer/myDistribution +++ b/mac_installer/myDistribution @@ -2,7 +2,7 @@