Bug#1064191: openjdk-8: fails to install on i386 mantic, focal and jammy
Vladimir Petko
vpa1977 at gmail.com
Sun Feb 18 08:07:37 GMT 2024
Package: openjdk-8
Severity: wishlist
Tags: patch
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu noble ubuntu-patch
Dear Maintainer,
openjdk-8 402-ga-2 introduced changes that make the package fail to install
in i386 Ubuntu noble.
binfmt-support might not be installed and /usr/share/binfmts directory might
not exist. This causes postinstall script to fail in a new installation.
ATK wrapper package for i386 is not present in stable releases of Ubuntu and
will require SRU process to be introduced. This makes package uninstallable.
Would it be possible to consider the following changes:
* Fix installation issue on i386 (LP: #2053110):
- d/rules: build without atk bridge on i386 for Ubuntu versions that
do not have it.
- d/JB-jre-headless.postinst.in: check that /usr/share/binfmts exists
before trying to delete it.
Thanks for considering the patch.
-- System Information:
Debian Release: trixie/sid
APT prefers mantic-updates
APT policy: (500, 'mantic-updates'), (500, 'mantic-security'), (500, 'mantic'), (100, 'mantic-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 6.5.0-17-generic (SMP w/32 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
-------------- next part --------------
diff -Nru openjdk-8-8u402-ga/debian/JB-jre-headless.postinst.in openjdk-8-8u402-ga/debian/JB-jre-headless.postinst.in
--- openjdk-8-8u402-ga/debian/JB-jre-headless.postinst.in 2024-01-31 18:05:28.000000000 +1300
+++ openjdk-8-8u402-ga/debian/JB-jre-headless.postinst.in 2024-02-14 19:58:48.000000000 +1300
@@ -19,7 +19,9 @@
--remove jar /usr/bin/jexec 2>/dev/null || true
update-alternatives --remove jexec \
$basedir/jre/lib/jexec 2>/dev/null || true
- rmdir --ignore-fail-on-non-empty /usr/share/binfmts
+ if [ -e /usr/share/binfmts ]; then
+ rmdir --ignore-fail-on-non-empty /usr/share/binfmts
+ fi
fi
# fail early. java currently uses tricks to find its own shared
diff -Nru openjdk-8-8u402-ga/debian/rules openjdk-8-8u402-ga/debian/rules
--- openjdk-8-8u402-ga/debian/rules 2024-01-31 18:05:28.000000000 +1300
+++ openjdk-8-8u402-ga/debian/rules 2024-02-14 19:58:48.000000000 +1300
@@ -305,6 +305,16 @@
with_bridge = atk
endif
+ifeq ($(derivative),Ubuntu)
+ ifeq ($(DEB_HOST_ARCH),i386)
+# disable bridge on focal, jammy and mantic until atk wrapper is introduced
+# in those releases on i386
+ ifneq (,$(filter $(distrel),focal jammy mantic))
+ with_bridge =
+ endif
+ endif
+endif
+
with_nss = yes
on_buildd := $(shell [ -f /CurrentlyBuilding -o "$$LOGNAME" = buildd ] && echo yes)
More information about the pkg-java-maintainers
mailing list