Skip to content

Instantly share code, notes, and snippets.

@basil
Created December 7, 2018 02:10
Show Gist options
  • Save basil/9f652bb3987e6c04a2437aec3a8cb348 to your computer and use it in GitHub Desktop.
Save basil/9f652bb3987e6c04a2437aec3a8cb348 to your computer and use it in GitHub Desktop.
Usage of make-jpkg(1) with AdoptOpenJDK
$ git clone https://salsa.debian.org/java-team/java-package.git
Cloning into 'java-package'...
[...]
$ cd java-package/
$ git fetch https://salsa.debian.org/JanMa-guest/java-package.git feature/add-support-for-adopt-openjdk
From https://salsa.debian.org/JanMa-guest/java-package
* branch feature/add-support-for-adopt-openjdk -> FETCH_HEAD
$ git checkout -b JanMa-guest/java-package-feature/add-support-for-adopt-openjdk FETCH_HEAD
Switched to a new branch 'JanMa-guest/java-package-feature/add-support-for-adopt-openjdk'
$ git rebase origin/master
First, rewinding head to replay your work on top of it...
Applying: Add support for building packages from Adopt OpenJDK builds
Next, apply the following fix:
diff --git a/lib/adopt-open-jdk.sh b/lib/adopt-open-jdk.sh
index f602fbf..b4bd363 100644
--- a/lib/adopt-open-jdk.sh
+++ b/lib/adopt-open-jdk.sh
@@ -159,8 +159,7 @@ Package: $j2se_package
Architecture: $j2se_debian_arch
Depends: \${misc:Depends}, java-common, $depends
Recommends: netbase
-Provides: java-virtual-machine, java-runtime, java2-runtime, $provides_runtime java-compiler, java2-compiler, java-runtime-headless,
-java2-runtime-headless, $provides_headless java-sdk, java2-sdk, $provides_sdk
+Provides: java-virtual-machine, java-runtime, java2-runtime, $provides_runtime java-compiler, java2-compiler, java-runtime-headless, java2-runtime-headless, $provides_headless java-sdk, java2-sdk, $provides_sdk
Description: $j2se_title
The Java(TM) SE JDK is a development environment for building
applications, applets, and components that can be deployed on the
This avoids the following error:
Create debian package:
dpkg-buildpackage: error: syntax error in debian/control at line 13: line with unknown format (not field-colon-value)
Aborted (-us).
$ dpkg-buildpackage -b -us -uc
[...]
$ cd ..
$ sudo apt install libgl1-mesa-glx
[...]
$ sudo dpkg -i java-package_0.63_all.deb
[...]
$ wget https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.1%2B13/OpenJDK11U-jdk_x64_linux_hotspot_11.0.1_13.tar.gz
[...]
$ sha256sum OpenJDK11U-jdk_x64_linux_hotspot_11.0.1_13.tar.gz
22bd2f1a2e0cb6e4075967bfeda4a960b0325879305aa739a0ba2d6e5cd4c3e2 OpenJDK11U-jdk_x64_linux_hotspot_11.0.1_13.tar.gz
$ mv OpenJDK11U-jdk_x64_linux_hotspot_11.0.1_13.tar.gz OpenJDK11-jdk_x64_linux_hotspot_11_13.tar.gz # XXX HACK HACK HACK - correct fix is to update the regex in the shell script
$ env DEB_BUILD_OPTIONS=nostrip fakeroot make-jpkg OpenJDK11-jdk_x64_linux_hotspot_11_13.tar.gz <<<y
[...]
$ sudo dpkg -i adoptopenjdk-java11-jdk_11+13_amd64.deb
[...]
$ java -version
openjdk version "11.0.1" 2018-10-16
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.1+13)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.1+13, mixed mode)
@flybd5
Copy link

flybd5 commented Dec 7, 2018

diff --git doesn't work in Ubuntu 18, is there a special version diff I should install?

@flybd5
Copy link

flybd5 commented Dec 7, 2018

Never mind, figured it out. :)

@flybd5
Copy link

flybd5 commented Dec 7, 2018

This worked fine for Java 8. If you download the jdk's using the web site links rather than the github releases, you don't have to edit the filenames. I also submitted a merge request to fix that "Provides:" line that was broken into two and causes that error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment