jpackage Are the RPM Requires necessary?
alexey.semenyuk at oracle.com
Thu Mar 26 22:24:37 UTC 2020
On 3/26/2020 6:23 PM, Sverre Moe wrote:
> tor. 26. mar. 2020 kl. 23:21 skrev Sverre Moe <sverre.moe at gmail.com
> <mailto:sverre.moe at gmail.com>>:
> tor. 26. mar. 2020 kl. 21:29 skrev Alexey Semenyuk
> <alexey.semenyuk at oracle.com <mailto:alexey.semenyuk at oracle.com>>:
> On 3/26/2020 4:13 PM, Sverre Moe wrote:
>> tor. 26. mar. 2020 kl. 20:41 skrev Alexey Semenyuk
>> <alexey.semenyuk at oracle.com <mailto:alexey.semenyuk at oracle.com>>:
>> On 3/26/2020 11:17 AM, Sverre Moe wrote:
>> > Running jpackage to build an RPM will add some Requires
>> to the package.
>> > It comes from the Template file:
>> > Autoprov: 0
>> > Autoreq: 0
>> > %if "xPACKAGE_DEFAULT_DEPENDENCIES" != x ||
>> > != x
>> > Requires: PACKAGE_DEFAULT_DEPENDENCIES
>> > %endif
>> > Building on OpenSUSE will give us these Requires:
>> > +%if "xglibc, libX11-6, libXau6, libXext6, libXi6,
>> libXrender1, libXtst6,
>> > libasound2, libxcb1, libz1" != x || "x" != x
>> > +Requires: glibc, libX11-6, libXau6, libXext6, libXi6,
>> > libXtst6, libasound2, libxcb1, libz1
>> > +%endif
>> > +
>> > +#avoid ARCH subfolder
>> > We override the RPM spec file with resource directory.
>> I copied the RPM
>> > spec file content from the one jpackage generated and
>> added something extra
>> > to it.
>> > Unfortunately this RPM will not install on Fedora, but
>> installs fine on
>> > OpenSUSE where I built it.
>> > Installing on Fedora will spew out this line for all
>> these Requires.
>> > nothing provides libX11-6
>> > Are these Requires needed by Java?
>> Yes. The list of required packages is built automatically
>> by jpackage by
>> analyzing dependencies of dynamic libraries of JRE
>> bundled with the
>> application being packed.
>> On different distributes the same package can have
>> different names.
>> Seems like the package that is named on OpenSuSE as '
>> libX11-6' is named
>> as 'libX11' on Fedora.
>> Not all Requires for OpenSUSE had an equivalent Fedoroa Requires
>> Requires for OpenSUSE from jpackage
>> Requires: glibc, libX11-6, libXau6, libXext6, libXi6,
>> libXrender1, libXtst6, libasound2, libxcb1, libz1
>> Requires for Fedora from jpackage:
>> Requires: glibc, libX11, libXau, libXext, libXi, libXrender,
>> libXtst, libxcb
>> The RPM spec for Fedora does not get any Requires with
>> libasound and libz.
> Probably this is because these packages are not installed on
> Fedora host where you run jpackage.
> Actually, the "missing" packages from Fedora RPM Spec generated by
> jpackage, the libasound and libz does not exist on Fedora 30.
> Makes me wonder, because the RPM installs fine on Fedora without
> Though there could be a different package that provides these two on
> Fedora, but then jpackage should have mention that package.
I can't comment on this without seeing jpackage log.
More information about the core-libs-dev