Age | Commit message (Collapse) | Author |
|
Upstream PR: https://github.com/JabRef/jabref/pull/11517
|
|
|
|
|
|
|
|
|
|
Arch Linux's official JDK and JRE packages of the same version conflict
with each other. Hence, depending on java-environment=21 works in the
majority of cases. However, there are JDK packages in the AUR that
provide java-environment but not jdk-openjdk and hence do not conflict
with JRE packages. Make sure to launch JabRef with a full JDK and don't
rely on it being chosen automatically.
Fixes a1fe8de0578a5e0e791a10af02d0cbd594dd3374
|
|
The module jdk.unsupported.desktop, required by javafx.swing, is missing
in the JRE. This is probably a bug existing since 2019. The only thing
we can do here is to require a full JDK.
Thanks to Rhinoceros for reporting this issue.
|
|
There's a gradle7 package in the Arch repositories that provides gradle
but is not able to build this package.
Thanks to danieltetraquark for noticing!
|
|
csl-styles and csl-locales are now included using git submodules and
they are not included in the tarball anymore. Using git for building
this package would require cloning hundreds of MB of repository data.
Hence, we now manually download tarballs for all submodules and need to
maintain a list of correct commit hashes.
Also, let's start using Arch's gradle package again as it is currently
capable of building JabRef.
|
|
Regardless of $JAVA_HOME, gradle will try to find a JDK with the version
specified as toolchain->languageVersion. This lets the build fail if no
JDK 20 is installed.
For now, stick to a single valid JDK version. The best option is JDK 21
which is currently available as jdk-openjdk in the Arch repositories.
Thanks a lot to Pavlov and vanja_z, providing all the information
required to fix this issue.
|
|
Upstream states that JDK 21 is required for building JabRef 5.10 but
this is due to a bug in jlink:
https://bugs.openjdk.org/browse/JDK-8240567
As this package does not build a custom JRE, jlink is not used. So we
can stick to JDK 20 here.
|
|
Temporarily switch to using the provided gradle wrapper, because the
gradle package in Arch is outdated and not compatible with Java 19.
|
|
Thankfully, the authors of JabRef switched back to a supported version
of Java.
|
|
|
|
|
|
|
|
|
|
|
|
Example:
JABREF_OPTIONS="-Dglass.gtk.uiScale=144dpi -Djdk.gtk.version=2" jabref
|
|
|
|
|
|
|
|
|
|
|
|
Thanks to eyolf for figuring this out!
|
|
Additional changes:
* use Arch's gradle package instead of the gradlew wrapper
* allow Java version 14 and newer
|
|
Jabref only builds against Java 14 and 15. Unfortunately, we cannot
specify
'java-runtime>=14' 'java-runtime<16'
as makedepends, because this is also satisfied if people have Java 16
and some version below 14 installed.
Therefore, let's stick to Java 15 here. Unfortunately, this is not
provided by any official Arch package, so people need to install one of:
https://aur.archlinux.org/packages/amazon-corretto-15/
https://aur.archlinux.org/packages/jdk15-adoptopenjdk/
https://aur.archlinux.org/packages/zulu-15-bin/
|
|
Notes:
* Remove patch for jabrefHost.py which is now included upstream.
* Update start script.
* Update StartupWMClass in desktop file.
* Bump required JDK version to 14. Officially, version 15 is required
but 14 still seems to work. I cannot test 13 anymore and there is only
a single JDK 13 package in AUR, so let's drop support for that.
* In contrast to the devdocs, javafx is not required to build jabref
when using gradle. See https://github.com/JabRef/jabref/pull/6679.
|
|
Also, we can remove our custom gradle upgrade since gradle 6.3 is used
by default in JabRef 5.1
|
|
|
|
|
|
|
|
The package still includes all required java modules, in particular, we
do not use java-openjfx. It seems that the provided javafx version is
slightly different from Arch's java-openjfx, so trying to use the system
jars leads to a crash on startup.
|
|
For now, use the prebuilt portable version.
|
|
java-openjfx was updated to version 11 in the repos.
|
|
Additional dependencies for the JavaFX UI. Not sure if this should be
dependencies of java-openjfx instead, but for now let's just add them
here.
|
|
|
|
|
|
|
|
* Depend on java-openjfx in version 8
(this has to be realized by requiring java-openjfx>=8 & <9 since
java-openjfx 8 does not provide java-openjfx=8)
* Let archlinux-java-run ensure that a javafx-capable JRE is used
(requires archlinux-java-run v4)
|
|
|
|
|
|
|
|
The license file was recently changed, causing (1) the checksum test to fail
and (2) the license file to become out of sync with what applies to the
installed program version. Download the matching the program version to avoid
that.
Thanks to n-st for this contributing this change via github.
|
|
If a suitable java version is selected via archlinux-java we should use it.
Otherwise use the latest version available as we did before.
Thanks a lot to Rhinoceros for providing this solution!
|
|
|
|
|
|
|
|
|
|
|