P2 Touchpoint chmod not working?

I am using Eclipse 3.5.2 and I created p2.inf with the following information:

instructions.install = \
chmod(targetDir:@artifact,targetFile:$os$/libfoo.so,permissions:755);

instructions.install.import= \
org.eclipse.equinox.p2.touchpoint.natives.chmod

I placed p2.inf inside the META-INF folder of this fragment, but when I install the update site, libfoo.so does not have execute permissions.

Having pulled out my hair, I tried p2.inf, citing the nonexistent * .so, but nothing happens. No error messages, exceptions or warnings of any type to indicate that the P2 touchpoint action failed ...

What a deal? Any ideas?

+3
source share
3 answers

org.eclipse.equinox.p2.touchpoint.eclipse.chmod (.. eclipse, ), org.eclipse.equinox.internal.p2. touchpoint.eclipse.actions.ChmodAction

// This basically a copy of the chmod action in the native touchpoint,
// only it provides @artifact support.

( . chmod )

"os".

+3

Eclipse 3.6 ( ) , @artifact, ${artifact.location}. p2, , targetDir .

+2

, :

  • "touchpoint.natives.chmod" @artifact. org.eclipse.equinox.p2.touchpoint.eclipse.chmod.
  • osis not a parameter that is replaced during installation. Also, looking at the p2 source code, if the os parameter was a parameter, it seems that the syntax will actually be ${os}. (See ParameterizedProvisioningAction # processVariables)

Please note that the parameters $version$and `$ qualifier $ 'specified in the wiki are replaced when creating / publishing metadata, and not during installation.

+1
source

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


All Articles