unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Trying to build latest Icedtea / Java 6 [security update]
@ 2016-05-30  4:59 Leo Famulari
  2016-05-31 19:13 ` Ricardo Wurmus
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2016-05-30  4:59 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 285 bytes --]

Icedtea 1.13.11 was released, which fixes a number of security bugs:

http://blog.fuseyism.com/index.php/2016/05/04/security-icedtea-1-13-11-for-openjdk-6-released/

I tried to build it with the attached patch, but it fails for me. I've
attached the tail of the build log. Any advice?

[-- Attachment #2: icedtea@1.13.11-tail.log --]
[-- Type: text/plain, Size: 4581 bytes --]

# Running javac:
/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/bootstrap/jdk1.6.0/bin/javac -J-XX:ThreadStackSize=2048 -J-Xmx896m -J-Xms128m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m -g -source 1.5 -target 5 -encoding ascii -Xbootclasspath:/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk.build-ecj/classes -sourcepath /tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/generated.build:../../../src/solaris/classes:../../../src/share/classes -d /tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk.build-ecj/classes @/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk.build-ecj/tmp/java/java.lang.management/management/.classes.list
----------
1. ERROR in /tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java (at line 231)
        public String getVersion() throws RemoteException {
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The method getVersion() of type RMIJRMPServerImpl.ExportedWrapper must override a superclass method
----------
2. ERROR in /tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java (at line 236)
        public RMIConnection newClient(Object credentials) throws IOException {
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The method newClient(Object) of type RMIJRMPServerImpl.ExportedWrapper must override a superclass method
----------
3. ERROR in /tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java (at line 241)
        public void check(Method method, ObjectStreamClass descriptor,
                int paramIndex, int callID) {
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The method check(Method, ObjectStreamClass, int, int) of type RMIJRMPServerImpl.ExportedWrapper must override a superclass method
----------
4. ERROR in /tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java (at line 251)
        public void checkProxyClass(Method method, String[] ifaces,
                int paramIndex, int callID) {
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The method checkProxyClass(Method, String[], int, int) of type RMIJRMPServerImpl.ExportedWrapper must override a superclass method
----------
5. ERROR in /tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java (at line 263)
        public void end(int callID) {
                    ^^^^^^^^^^^^^^^
The method end(int) of type RMIJRMPServerImpl.ExportedWrapper must override a superclass method
----------
5 problems (5 errors)/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/make/common/Rules.gmk:233: recipe for target '.compile.classlist' failed
make[5]: *** [.compile.classlist] Error 255
make[5]: Leaving directory '/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/make/java/management'
Makefile:57: recipe for target 'all' failed
make[4]: *** [all] Error 1
make[4]: Leaving directory '/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/make/java'
Makefile:251: recipe for target 'all' failed
make[3]: *** [all] Error 1
make[3]: Leaving directory '/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj/jdk/make'
make/jdk-rules.gmk:107: recipe for target 'jdk-build' failed
make[2]: *** [jdk-build] Error 2
make[2]: Leaving directory '/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj'
Makefile:198: recipe for target 'build_product_image' failed
make[1]: *** [build_product_image] Error 2
make[1]: Leaving directory '/tmp/guix-build-icedtea-1.13.11.drv-0/icedtea6-1.13.11/openjdk-ecj'
Makefile:2578: recipe for target 'stamps/icedtea-ecj.stamp' failed
make: *** [stamps/icedtea-ecj.stamp] Error 2
phase `build' failed after 716.3 seconds
builder for `/gnu/store/ppcxalk78wlhb3yycj8pmsm67iapac1h-icedtea-1.13.11.drv' failed with exit code 1
@ build-failed /gnu/store/ppcxalk78wlhb3yycj8pmsm67iapac1h-icedtea-1.13.11.drv - 1 builder for `/gnu/store/ppcxalk78wlhb3yycj8pmsm67iapac1h-icedtea-1.13.11.drv' failed with exit code 1
guix build: error: build failed: build of `/gnu/store/ppcxalk78wlhb3yycj8pmsm67iapac1h-icedtea-1.13.11.drv' failed

[-- Attachment #3: 0001-gnu-icedtea-Update-to-1.13.11.patch --]
[-- Type: text/x-diff, Size: 2217 bytes --]

From 2bc70a72cd33e02ef65aabb78c20e27a7fed9018 Mon Sep 17 00:00:00 2001
From: Leo Famulari <leo@famulari.name>
Date: Fri, 27 May 2016 23:50:51 -0400
Subject: [PATCH] gnu: icedtea: Update to 1.13.11.

Fixes CVE-2016-{0686, 0687, 0695, 3425, 3427}.

* gnu/packages/java.scm (icedtea): Update to 1.13.11.
[inputs]: Add libxcomposite.
---
 gnu/packages/java.scm | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index ff785ef..23a5232 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -181,7 +181,7 @@ build process and its dependencies, whereas Make uses Makefile format.")
 (define-public icedtea-6
   (package
     (name "icedtea")
-    (version "1.13.10")
+    (version "1.13.11")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -189,7 +189,7 @@ build process and its dependencies, whereas Make uses Makefile format.")
                     version ".tar.xz"))
               (sha256
                (base32
-                "1mq08sfyfjlfw0c1czjs47303zv4h91s1jc0nhdlra4rbbx0g2d0"))
+                "1grki39a4rf8n74zc0iglcggxxbpniyfh1gk1lb10p63zvvcsvjj"))
               (modules '((guix build utils)))
               (snippet
                '(substitute* "Makefile.in"
@@ -539,6 +539,7 @@ build process and its dependencies, whereas Make uses Makefile format.")
        ("mit-krb5" ,mit-krb5)
        ("nss" ,nss)
        ("libx11" ,libx11)
+       ("libxcomposite" ,libxcomposite)
        ("libxt" ,libxt)
        ("libxtst" ,libxtst)
        ("libxi" ,libxi)
@@ -552,10 +553,10 @@ build process and its dependencies, whereas Make uses Makefile format.")
        ("openjdk6-src"
         ,(origin
            (method url-fetch)
-           (uri "https://java.net/downloads/openjdk6/openjdk-6-src-b38-20_jan_2016.tar.gz")
+           (uri "https://java.net/downloads/openjdk6/openjdk-6-src-b39-03_may_2016.tar.gz")
            (sha256
             (base32
-             "1fapj9w4ahzf5nwvdgi1dsxjyh9dqbcvf9638r60h1by13wjqk5p"))))
+             "1brxbsgwcj4js26y5lk6capc3pvghgjidvv9cavw6z8n7c7aw8af"))))
        ("lcms" ,lcms)
        ("zlib" ,zlib)
        ("gtk" ,gtk+-2)
-- 
2.8.3


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: Trying to build latest Icedtea / Java 6 [security update]
  2016-05-30  4:59 Trying to build latest Icedtea / Java 6 [security update] Leo Famulari
@ 2016-05-31 19:13 ` Ricardo Wurmus
  2016-05-31 22:52   ` Leo Famulari
  0 siblings, 1 reply; 8+ messages in thread
From: Ricardo Wurmus @ 2016-05-31 19:13 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel


Leo Famulari <leo@famulari.name> writes:

> Icedtea 1.13.11 was released, which fixes a number of security bugs:
>
> http://blog.fuseyism.com/index.php/2016/05/04/security-icedtea-1-13-11-for-openjdk-6-released/
>
> I tried to build it with the attached patch, but it fails for me. I've
> attached the tail of the build log. Any advice?

The patch looks good to me.  If I understand correctly this may be
because we’re bootstrapping with GCJ, which implements Java 1.5.  You
can see in the log that “javac” runs with “-source 1.5 -target 5”, which
means that it assumes that the code is written in compliance with Java
1.5.  Maybe this file simply is not valid Java 1.5.

According to http://stackoverflow.com/a/8697805/519736 “@Override” is
interpreted more strictly in 1.5.  I don’t know much about Java and I
haven’t looked at the sources in question, but I guess there are
“@Override” annotations above the five method declarations.  We might be
able to just remove them.

I think this should be reported to Andrew; looks like a bug as
bootstrapping with GCJ should work for OpenJDK 6.

~~ Ricardo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Trying to build latest Icedtea / Java 6 [security update]
  2016-05-31 19:13 ` Ricardo Wurmus
@ 2016-05-31 22:52   ` Leo Famulari
  2016-06-01  6:07     ` Ricardo Wurmus
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2016-05-31 22:52 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

On Tue, May 31, 2016 at 09:13:04PM +0200, Ricardo Wurmus wrote:
> Leo Famulari <leo@famulari.name> writes:
> 
> > Icedtea 1.13.11 was released, which fixes a number of security bugs:
> >
> > http://blog.fuseyism.com/index.php/2016/05/04/security-icedtea-1-13-11-for-openjdk-6-released/
> >
> > I tried to build it with the attached patch, but it fails for me. I've
> > attached the tail of the build log. Any advice?
> 
> The patch looks good to me.  If I understand correctly this may be
> because we’re bootstrapping with GCJ, which implements Java 1.5.  You
> can see in the log that “javac” runs with “-source 1.5 -target 5”, which
> means that it assumes that the code is written in compliance with Java
> 1.5.  Maybe this file simply is not valid Java 1.5.
> 
> According to http://stackoverflow.com/a/8697805/519736 “@Override” is
> interpreted more strictly in 1.5.  I don’t know much about Java and I
> haven’t looked at the sources in question, but I guess there are
> “@Override” annotations above the five method declarations.  We might be
> able to just remove them.
> 
> I think this should be reported to Andrew; looks like a bug as
> bootstrapping with GCJ should work for OpenJDK 6.

Done: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2990

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Trying to build latest Icedtea / Java 6 [security update]
  2016-05-31 22:52   ` Leo Famulari
@ 2016-06-01  6:07     ` Ricardo Wurmus
  2016-06-01  6:29       ` Leo Famulari
  0 siblings, 1 reply; 8+ messages in thread
From: Ricardo Wurmus @ 2016-06-01  6:07 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel


Leo Famulari <leo@famulari.name> writes:

> On Tue, May 31, 2016 at 09:13:04PM +0200, Ricardo Wurmus wrote:
>> Leo Famulari <leo@famulari.name> writes:
>> 
>> > Icedtea 1.13.11 was released, which fixes a number of security bugs:
>> >
>> > http://blog.fuseyism.com/index.php/2016/05/04/security-icedtea-1-13-11-for-openjdk-6-released/
>> >
>> > I tried to build it with the attached patch, but it fails for me. I've
>> > attached the tail of the build log. Any advice?
>> 
>> The patch looks good to me.  If I understand correctly this may be
>> because we’re bootstrapping with GCJ, which implements Java 1.5.  You
>> can see in the log that “javac” runs with “-source 1.5 -target 5”, which
>> means that it assumes that the code is written in compliance with Java
>> 1.5.  Maybe this file simply is not valid Java 1.5.
>> 
>> According to http://stackoverflow.com/a/8697805/519736 “@Override” is
>> interpreted more strictly in 1.5.  I don’t know much about Java and I
>> haven’t looked at the sources in question, but I guess there are
>> “@Override” annotations above the five method declarations.  We might be
>> able to just remove them.
>> 
>> I think this should be reported to Andrew; looks like a bug as
>> bootstrapping with GCJ should work for OpenJDK 6.
>
> Done: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2990

Thank you.  Since this has been fixed here

   http://icedtea.classpath.org/hg/icedtea6/rev/60be25a84f2d

we should apply this change to the 1.13.11 sources.

~~ Ricardo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Trying to build latest Icedtea / Java 6 [security update]
  2016-06-01  6:07     ` Ricardo Wurmus
@ 2016-06-01  6:29       ` Leo Famulari
  2016-06-16  2:02         ` Danny Milosavljevic
  0 siblings, 1 reply; 8+ messages in thread
From: Leo Famulari @ 2016-06-01  6:29 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

On Wed, Jun 01, 2016 at 08:07:53AM +0200, Ricardo Wurmus wrote:
>    http://icedtea.classpath.org/hg/icedtea6/rev/60be25a84f2d
> 
> we should apply this change to the 1.13.11 sources.

Tested successfully, and applied as 1c6303fae.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Trying to build latest Icedtea / Java 6 [security update]
  2016-06-01  6:29       ` Leo Famulari
@ 2016-06-16  2:02         ` Danny Milosavljevic
  2016-06-16  6:55           ` Ricardo Wurmus
  0 siblings, 1 reply; 8+ messages in thread
From: Danny Milosavljevic @ 2016-06-16  2:02 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

On Wed, 1 Jun 2016 02:29:54 -0400
Leo Famulari <leo@famulari.name> wrote:

> On Wed, Jun 01, 2016 at 08:07:53AM +0200, Ricardo Wurmus wrote:
> >    http://icedtea.classpath.org/hg/icedtea6/rev/60be25a84f2d
> > 
> > we should apply this change to the 1.13.11 sources.  
> 
> Tested successfully, and applied as 1c6303fae.

Not sure when exactly Java broke (I'm not using it much) but it worked before and now I get (when using a GUI program):

Exception in thread "main" java.lang.NullPointerException
	at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)
	at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)
	at sun.awt.FontConfiguration.init(FontConfiguration.java:107)
	at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)
	at sun.font.SunFontManager$2.run(SunFontManager.java:431)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.font.SunFontManager.<init>(SunFontManager.java:376)
	at sun.awt.FcFontManager.<init>(FcFontManager.java:35)
	at sun.awt.X11FontManager.<init>(X11FontManager.java:57)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
	at sun.font.SunFontManager.getInstance(SunFontManager.java:250)
	at sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:264)
	at sun.swing.SwingUtilities2.getFontMetrics(SwingUtilities2.java:1107)
	at javax.swing.JComponent.getFontMetrics(JComponent.java:1617)
	at javax.swing.plaf.basic.BasicGraphicsUtils.getPreferredButtonSize(BasicGraphicsUtils.java:276)
	at javax.swing.plaf.basic.BasicButtonUI.getPreferredSize(BasicButtonUI.java:376)
	at javax.swing.plaf.basic.BasicButtonUI.getMinimumSize(BasicButtonUI.java:366)
	at javax.swing.JComponent.getMinimumSize(JComponent.java:1735)
	at javax.swing.BoxLayout.checkRequests(BoxLayout.java:483)
	at javax.swing.BoxLayout.preferredLayoutSize(BoxLayout.java:301)
	at java.awt.Container.preferredSize(Container.java:1796)
	at java.awt.Container.getPreferredSize(Container.java:1780)
	at javax.swing.JComponent.getPreferredSize(JComponent.java:1655)
	at java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:729)
	at java.awt.Container.preferredSize(Container.java:1796)
	at java.awt.Container.getPreferredSize(Container.java:1780)
	at javax.swing.JComponent.getPreferredSize(JComponent.java:1655)
	...

Does using a Java GUI "fat client" application work for you?

$ java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (IcedTea 3.0.1) (linux-gnu build 1.8.0_91-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)

Note that I didn't install icedtea:jdk . I've since installed it into my user profile - no change.

Minimal example to reproduce:

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.WindowConstants;

public class A {
	public static void main(String[] args) {
		JFrame f = new JFrame();
		JLabel l = new JLabel("Hello");
		f.add(l); // comment me
		f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
		//f.pack();
		f.setVisible(true);
	}
}

(breaks as soon as the label is in the frame)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Trying to build latest Icedtea / Java 6 [security update]
  2016-06-16  2:02         ` Danny Milosavljevic
@ 2016-06-16  6:55           ` Ricardo Wurmus
  2016-07-20 22:13             ` IcedTea Java 8 font problems Danny Milosavljevic
  0 siblings, 1 reply; 8+ messages in thread
From: Ricardo Wurmus @ 2016-06-16  6:55 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel


Danny Milosavljevic <dannym@scratchpost.org> writes:

> On Wed, 1 Jun 2016 02:29:54 -0400
> Leo Famulari <leo@famulari.name> wrote:
>
>> On Wed, Jun 01, 2016 at 08:07:53AM +0200, Ricardo Wurmus wrote:
>> >    http://icedtea.classpath.org/hg/icedtea6/rev/60be25a84f2d
>> > 
>> > we should apply this change to the 1.13.11 sources.  
>> 
>> Tested successfully, and applied as 1c6303fae.
>
> Not sure when exactly Java broke (I'm not using it much) but it worked before and now I get (when using a GUI program):
>
> Exception in thread "main" java.lang.NullPointerException
> 	at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)
> 	at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)
> 	at sun.awt.FontConfiguration.init(FontConfiguration.java:107)
> 	at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)
> 	at sun.font.SunFontManager$2.run(SunFontManager.java:431)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.font.SunFontManager.<init>(SunFontManager.java:376)
> 	at sun.awt.FcFontManager.<init>(FcFontManager.java:35)
> 	at sun.awt.X11FontManager.<init>(X11FontManager.java:57)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> 	at java.lang.Class.newInstance(Class.java:442)
> 	at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
> 	at sun.font.SunFontManager.getInstance(SunFontManager.java:250)
> 	at sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:264)
> 	at sun.swing.SwingUtilities2.getFontMetrics(SwingUtilities2.java:1107)
> 	at javax.swing.JComponent.getFontMetrics(JComponent.java:1617)
> 	at javax.swing.plaf.basic.BasicGraphicsUtils.getPreferredButtonSize(BasicGraphicsUtils.java:276)
> 	at javax.swing.plaf.basic.BasicButtonUI.getPreferredSize(BasicButtonUI.java:376)
> 	at javax.swing.plaf.basic.BasicButtonUI.getMinimumSize(BasicButtonUI.java:366)
> 	at javax.swing.JComponent.getMinimumSize(JComponent.java:1735)
> 	at javax.swing.BoxLayout.checkRequests(BoxLayout.java:483)
> 	at javax.swing.BoxLayout.preferredLayoutSize(BoxLayout.java:301)
> 	at java.awt.Container.preferredSize(Container.java:1796)
> 	at java.awt.Container.getPreferredSize(Container.java:1780)
> 	at javax.swing.JComponent.getPreferredSize(JComponent.java:1655)
> 	at java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:729)
> 	at java.awt.Container.preferredSize(Container.java:1796)
> 	at java.awt.Container.getPreferredSize(Container.java:1780)
> 	at javax.swing.JComponent.getPreferredSize(JComponent.java:1655)
> 	...

This looks font-related.  Do you have files in ~/.java/fonts?  If so,
maybe they are invalid?

The changes Leo submitted apply to IcedTea 6, but you are using 8.

> Does using a Java GUI "fat client" application work for you?

Works for me.  I’m using the Axoloti patcher (not yet ready for
submission).  I’m using the default icedtea package, version 7.

~~ Ricardo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* IcedTea Java 8 font problems
  2016-06-16  6:55           ` Ricardo Wurmus
@ 2016-07-20 22:13             ` Danny Milosavljevic
  0 siblings, 0 replies; 8+ messages in thread
From: Danny Milosavljevic @ 2016-07-20 22:13 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

On Thu, 16 Jun 2016 08:55:40 +0200
Ricardo Wurmus <rekado@elephly.net> wrote:

> This looks font-related.  Do you have files in ~/.java/fonts?  If so,
> maybe they are invalid?

Nope.

> The changes Leo submitted apply to IcedTea 6, but you are using 8.

Yeah, sorry. In any case my problem persists across multiple updates.

I tried 

  $ guix package -i icedtea:jdk

now and I still get

Exception in thread "main" java.lang.NullPointerException
	at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)
	at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)
	at sun.awt.FontConfiguration.init(FontConfiguration.java:107)
	at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)
	at sun.font.SunFontManager$2.run(SunFontManager.java:431)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.font.SunFontManager.<init>(SunFontManager.java:376)
	at sun.awt.FcFontManager.<init>(FcFontManager.java:35)
	at sun.awt.X11FontManager.<init>(X11FontManager.java:57)

I checked the source code it uses and it turns out it tries to load a file

  ${java.home}/lib/fontconfig.${os.name}.${os.version}

where $ is an abreviation for System.getProperty.

I ran a Java app I wrote which does this System.getProperty so I'm sure what the values are.

They are:

		$java.home = /gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre
		$os.name = Linux
		$os.version = 4.6.2-gnu

However, /gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre does not contain any fontconfig* files.

Hmm... not sure how it's supposed to find any fonts, then.

And indeed, 

  $strace -f java A 2>&1 |grep /fontconfig

gives:

[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.4.6.2-gnu.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.4.6.2-gnu.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.4.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.4.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.4.6.2-gnu.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.4.6.2-gnu.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.4.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.4.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.4.6.2-gnu.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.4.6.2-gnu.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.4.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.4.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.Linux.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.4.6.2-gnu.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.4.6.2-gnu.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.4.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.4.bfc", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.properties", R_OK) = -1 ENOENT (No such file or directory)
[pid  3533] access("/gnu/store/6ln2p3ynmymdvnqh3lf87hdyip0p3wdm-icedtea-3.0.1-jdk/jre/lib/fontconfig.bfc", R_OK) = -1 ENOENT (No such file or directory)

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-07-20 22:13 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-30  4:59 Trying to build latest Icedtea / Java 6 [security update] Leo Famulari
2016-05-31 19:13 ` Ricardo Wurmus
2016-05-31 22:52   ` Leo Famulari
2016-06-01  6:07     ` Ricardo Wurmus
2016-06-01  6:29       ` Leo Famulari
2016-06-16  2:02         ` Danny Milosavljevic
2016-06-16  6:55           ` Ricardo Wurmus
2016-07-20 22:13             ` IcedTea Java 8 font problems Danny Milosavljevic

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).