When installing PackageKit, move the application package. How to disable this behavior?

My program was previously distributed as a package with a zipper, but now I plan to add a daemon that should start after installation. Therefore, I decide to create a package during installation, which will be run after installing the script. First, I create a simple package as follows:

productbuil --component MyAppName.app /Applications --sign "common name of my certificate" MyAppName.pkg 

and try to install it.

The installation was successful, but after I did not find the application in the / Application directory. Although inverstigatin this poltergaste I found in /var/log/install.log this line:

installd [1954]: PackageKit: Applications /MyAppName.app moved to Users / myUserName / PAServer / scratch-dir / UserName1.Kh-profileName / MyAppName.app

After that, I find this answer Creating OS X installer packages such as Pro-Xcode Developer ID ready pkg and try to execute the commands found in it.

pkgbuild --analyze --root./MyProgram.app MyProgram.app.plist
pkgbuild: Listing package components from content. /MyProgram.app pkgbuild: writing a new list of component properties to MyProgram.app1.plist

Where I plan to edit the plist file, but first I tried to create a simple assembly package with default options.

pkgbuild --root./MyProgram.app - Component-plist. /MyProgram.app.plist MyProgram.pkg pkgbuild: Reading components from./MyProgram.app.plist pkgbuild: error: there is no package identifier specified and not quite one component to receive it.

What's wrong?

-----------------------------

I am also trying to install an old version of the additional Xcode tools to use PackageMaker, but I cannot find the documentation (I need to use PackageMaker from the command line), even if I install XCode 4.5. I can’t create packages manually from the GUI tools, because the end-user package contains a unique resource library, and manual assembly is too expensive. Therefore, I am looking for methods of automatic construction.

+6
source share
1 answer

You are missing the --identifier . Try:

 pkgbuild --identifier MyIdentifier --root ./MyProgram.app \ --component-plist ./MyProgram.app.plist MyProgram.pkg 

Where --identifier MyIdentifier is a unique name that can be registered in the system.

PS You can follow the suffix.domain.project naming suffix.domain.project with:

 pkgbuild --identifier com.mydomain.MyIdentifier --root ./MyProgram.app \ --component-plist ./MyProgram.app.plist MyProgram.pkg 

Where --identifier com.mydomain.MyIdentifier is a unique name that can be registered in the system.

+7
source

Source: https://habr.com/ru/post/982936/


All Articles