You are not logged in.
I need to update my machine, but it appears that some of the applications I have installed require jre7-openjdk, whilst others need openjdk6.
This occurs because jre7-openjdk and the Java7 set of packages don't appear to "provide" java-environment but java-environment=7.
The package build has this:
package_jdk7-openjdk() {
pkgdesc="Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs - SDK"
depends=('jre7-openjdk')
provides=('java-environment=7')
conflicts=('java-environment')
# replaces=('openjdk6')
The error I get when trying to update: (After removing openjdk6 and installing Java7.)
pacman -Syu
:: Synchronising package databases...
core is up to date
extra is up to date
community is up to date
:: Starting full system upgrade...
:: Replace cpufrequtils with community/cpupower? [Y/n] y
:: Replace kdegames-kbattleship with extra/kdegames-knavalbattle? [Y/n] y
:: Replace kdegames-ktron with extra/kdegames-ksnakeduel? [Y/n] y
:: Replace libsystemd with core/systemd? [Y/n] y
warning: perl-datetime-format-strptime: local (1.5000-1) is newer than community (1.52-1)
:: Replace python-pycurl with extra/python2-pycurl? [Y/n] y
:: Replace systemd-tools with core/systemd? [Y/n] y
:: Replace virtualbox-additions with community/virtualbox-guest-iso? [Y/n] y
:: Replace virtualbox-archlinux-additions with community/virtualbox-guest-utils? [Y/n] y
:: Replace virtualbox-archlinux-modules with community/virtualbox-guest-modules? [Y/n] y
:: Replace virtualbox-modules with community/virtualbox-host-modules? [Y/n] y
:: Replace virtualbox-source with community/virtualbox-host-source? [Y/n] y
resolving dependencies...
warning: dependency cycle detected:
warning: dbus-core will be installed before its systemd dependency
looking for inter-conflicts...
:: util-linux and eject are in conflict. Remove eject? [y/N] y
:: openjdk6 and jdk7-openjdk are in conflict (java-environment). Remove jdk7-openjdk? [y/N] n
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: openjdk6 and jdk7-openjdk are in conflict
I get errors as well when I do it the other way around also as the android development environment needs Java 7.
Kind regards
Benedict White
Offline
jdk6-compat in aur may be useful for you, as that is jdk6 intended to work together with jdk7 .
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
I will try that later though I can't see either package fixing the "provides=java-environment" which seems to be the problem with the upgrade.
(I would remake the Java7 packages but can't without doing the upgrade first...)
Kind regards
Benedict White
Offline
a possible reason for the conflict is that jdk6 has everything in 1 package, but jdk7 uses 3 packages.
$ pacman -Qs jdk
local/jdk7-openjdk 7.u7_2.3.2-2
Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs - SDK
local/jre7-openjdk 7.u7_2.3.2-2
Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs -Full Java runtime environment - needed for executing Java GUI and Webstart programs
local/jre7-openjdk-headless 7.u7_2.3.2-2
Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs - Minimal Java runtime - needed for executing non GUI Java programs
Check if you have all 3 listed above installed.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
I have installed all 3, but the relevant line (as in my original post) is:
package_jdk7-openjdk() {
pkgdesc="Free Java environment based on OpenJDK 7.0 with IcedTea7 replacing binary plugs - SDK"
depends=('jre7-openjdk')
provides=('java-environment=7')
conflicts=('java-environment')
# replaces=('openjdk6')
This seems to stop it being recognised as providing "java-environment" which seems odd, and may indeed be a Pacman issue. (The packages that complain about a lack of "java-environment" don't seem to care which version)
Kind regards
Benedict White
Offline
Openjdk6 does it similar as the jdk7 packages .
openjdk6 6.b24_1.11.4-1
Provides: java-environment=6, java-runtime=6, java-runtime-headless=6
Conflicts: java-environment, java-runtime
I think the conflicts java-environment and java-runtime was put there during the switch from oracle java to openjdk .
It would help if we find out which packages are responsible for the error, so they can be updated.
try pacman -Syu --ignore openjdk6 , that might show the problem packages.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
It seems to be mostly Libre Office... which is hardly a surprise.
That said, they didn't complain about the version number but then I haven't read the PKGBUILD files for Libre office.
Kind regards
Benedict White
Offline