Linux install issue - certificates missing

linux
1.0.11

#1

on startup of axoloti (after trying the mentioned reset all) i get a different error now:

Axoloti version : 1.0.11-0-gc534986 build time : 28/08/2016 23:02:12 UTC
Link to firmware CRC 50A29AA2
Current user library does not match correct version master -> 1.0.11
Stash (stash) FAILED : community (1.0.11,anon)
org.eclipse.jgit.api.errors.NoHeadException: HEAD required to stash local changes
org.eclipse.jgit.api.errors.NoHeadException: HEAD required to stash local changes
at org.eclipse.jgit.api.StashCreateCommand.getHead(StashCreateCommand.java:225)
at org.eclipse.jgit.api.StashCreateCommand.call(StashCreateCommand.java:242)
at axoloti.utils.AxoGitLibrary.createStash(AxoGitLibrary.java:247)
at axoloti.utils.AxoGitLibrary.upgrade(AxoGitLibrary.java:199)
...
Current factory library does not match correct version, upgrading master -> 1.0.11
Stash (stash) FAILED : factory (1.0.11,anon)
org.eclipse.jgit.api.errors.NoHeadException: HEAD required to stash local changes
org.eclipse.jgit.api.errors.NoHeadException: HEAD required to stash local changes
at org.eclipse.jgit.api.StashCreateCommand.getHead(StashCreateCommand.java:225)
at org.eclipse.jgit.api.StashCreateCommand.call(StashCreateCommand.java:242)
...
Sync (pull) FAILED : factory (1.0.11,anon)
org.eclipse.jgit.api.errors.TransportException: https://github.com/axoloti/axoloti-factory.git: cannot open git-upload-pack
org.eclipse.jgit.api.errors.TransportException: https://github.com/axoloti/axoloti-factory.git: cannot open git-upload-pack
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:134)
at org.eclipse.jgit.api.PullCommand.call(PullCommand.java:267)
at axoloti.utils.AxoGitLibrary.pull(AxoGitLibrary.java:331)
at axoloti.utils.AxoGitLibrary.sync(AxoGitLibrary.java:70)
...
Caused by: org.eclipse.jgit.errors.TransportException: https://github.com/axoloti/axoloti-factory.git: cannot open git-upload-pack
at org.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:518)
at org.eclipse.jgit.transport.TransportHttp.openFetch(TransportHttp.java:296)
at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:136)
at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:122)
at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1179)
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:128)
... 18 more
Caused by: javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1906)
at sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1889)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1410)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1513)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)
at org.eclipse.jgit.transport.http.JDKHttpConnection.getResponseCode(JDKHttpConnection.java:98)
at org.eclipse.jgit.util.HttpSupport.response(HttpSupport.java:174)
at org.eclipse.jgit.transport.TransportHttp.connect(TransportHttp.java:469)
... 23 more
Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
at sun.security.validator.PKIXValidator.(PKIXValidator.java:90)
at sun.security.validator.Validator.getInstance(Validator.java:179)
at sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:312)
at sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:171)
at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:184)
at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491)
at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)
at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)
at sun.security.ssl.Handshaker.process_record(Handshaker.java:914)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
... 33 more
Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
at java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200)
at java.security.cert.PKIXParameters.(PKIXParameters.java:120)
at java.security.cert.PKIXBuilderParameters.(PKIXBuilderParameters.java:104)
at sun.security.validator.PKIXValidator.(PKIXValidator.java:88)
... 45 more

Sync (pull) FAILED : community (1.0.11,anon)
org.eclipse.jgit.api.errors.TransportException: https://github.com/axoloti/axoloti-contrib.git: cannot open git-upload-pack
org.eclipse.jgit.api.errors.TransportException: https://github.com/axoloti/axoloti-contrib.git: cannot open git-upload-pack
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:134)
at org.eclipse.jgit.api.PullCommand.call(PullCommand.java:267)
at axoloti.utils.AxoGitLibrary.pull(AxoGitLibrary.java:331)
at axoloti.utils.AxoGitLibrary.sync(AxoGitLibrary.java:70)
...
Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
...
Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
...

Status: factory (1.0.11,anon) : OK ( master,clean )
Status : home : OK
Status: community (1.0.11,anon) : OK ( master,clean )
No available USB device found with matching PID/VID
search path : /home/lokki/axoloti/axoloti-factory/objects
search path : /home/lokki/axoloti/objects
search path : /home/lokki/axoloti/axoloti-contrib/objects
finished loading objects


Axoloti release 1.0.11
#2

Im getting the same on Ubuntu....and I'm investigating
seems everything from syncing, resetting, even a fresh install...

Im suspecting these are the 'cause' but no idea why they should suddenly be occurring...

it seems all git commands (via jgit) are failing, but we have not upgrade this.
anyway, Im digging through it now to see whats going on.


#3

good to know you can reproduce the error!


#4

ok, so it appears its not a code change, but something to do with the packaging on Linux.

this means Im able to run it from a development build, but as soon as its packaged it fails.
(Ive done a local package too, and this fails, so ruling out travis)

At the moment, I cannot find anything thats changed thats likely to have caused it :frowning:

Unfortunately, before I did the build, I upgraded ubuntu packages to see if this helped, but this now means I'm on a newer version of the JDK, which I'm wondering if is what might have triggered it on the travis (public release) build.

there seems to be some indication, this is caused by the java certificate store


but again, as yet, I dont know what triggered this... or the best way to fix it.


#5

@thetechnobear did you try this?

sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure


User library version mismatch error on startup
#6

yes, I tried everything in that article...
the issue I have, is with javaFX there is no script to add the cert location too....
Im thinking I might try to create a script, but that will take a little time, as the layout is different from what we use in dev, so the script needs to be adjusted.
(its obviously important for testing purposes, I use as much of the package as possible, to ensure we are not comparing apples with oranges)


#7

OK, Ive proven its due to a change in the java runtime that is shipped with Axoloti!

@johannes
I installed 1.0.10 which goes to /opt/Axoloti , and inside this the java runtime is installed to /opt/Axoloti/runtime
so I'm moved this runtime somewhere safe
then installed 1.0.11, and deleted /opt/Axoloti/runtime, and put back the runtime from 1.0.10,
et viola it works fine!

ok, so the 'issue' I think is travis (and I) upgraded the 1.8 java, which has this issue...
unfortunately I need to go sort out the puppies.....


#8

ok, Ive found the issue!

for some reason (yet to work out what) the certificates are no longer included in the java runtime,
you can fix this by typing in the following:

a) stop axoloti ui
b) start terminal, and enter

sudo cp /etc/ssl/certs/java/cacerts /opt/Axoloti/runtime/lib/security/cacerts

c) start axoloti
d) file->preferences -> reset all

next step is to work out why Oracle have changed this,
note: there is a cacerts.orginal in the same security folder, which is very suspicious


User library version mismatch error on startup
#9

I hope this isn't too dumb a question, but I'm in Arch so I'm running from source as described here. I'm getting this error and I'm not sure where cacerts should go since there's no /opt/Axoloti of course.

Any help would be greatly appreciated.


#10

the above info about /opt/Axoloti is only relevant when running the pre-packaged build, if you are building axoloti, and running if from the source home directory, then it will use the certs installed for your 'active' java runtime.

are the java certs installed?
you may need to install the java certificates, as was mentioned in the other thread, package ca-certificates-java. but this is probably different on different distros.


#11

I have ca-certificates-utils installed which provides the java certificates, so that shouldn't be a problem. Not sure what's going on.


#12

you'll need to check with your java runtime, where its picking up the certs from.
assuming your message is exactly the same, i.e about trustAnchors.
then its definitely java not finding the certificate, and so cannot authenticate with the server over ssl.

as a start, Id say check /etc/ssl/certs/java/cacerts

unfortunately I don't have time to install arch linux - this is the underlying issue with linux every distro is different, locations of files are different, how they config things - support is nigh impossible.

btw: check your date/time is (roughly) correct too, though I think this causes another error message iirc


#13

For some reason it worked after the n-th try. Not sure what the problem was but probably something silly on my end. Thanks.


#14

input sudo cp /etc/ssl/certs/java/cacerts /opt/Axoloti/runtime/lib/security/cacerts, still having the certificate problem.

also having trouble locating objects. loading a patch and none of the objects are found.

Very new to this... Just trying to get a feel for the layout, and feeling very disoriented.


#15

we need more info... e.g. a console trace, put it on pastebin
also which distro etc.

there wont be any objects/patches until you sort out the certificate issue...

what you can do as a temporary 'fix' if you want is to install factory library manually.
i covered this in one of my videos : https://youtu.be/NP9YcWE4xRM
this is far from ideal, but it will mean you can use axoloti whilst you resolve your issues.

also, personally I think with Linux, you need to know your way around linux reasonably well. the issue, as Ive stated in the past, the issue with linux is there are too many differences between distros to effectively support. its a shame, as I think many of us would like to see Linux become a viable desktop OS...
but currently, Id not recommend it for 'end users' , they will find windows/mac os less frustrating.

of course, Id welcome other axoloti users using linux to jump in and help improve this, e.g. perhaps add distro specific info to the user guide.


#16

Thank for the information. New to linux, so considering installing on another machine - but the linux laptop is the computer I have primary access to. I'd like to get it going on here. I'll have to do some homework to get a better sense of what I'm looking at.

Sorry to walk in with all the most basic questions. Thanks for your time.


#17

no problem... Im more concerned that you will struggle with Linux, and so have a frustrating experience....

as I said first step, is to get us a copy of the whole console to look at, and let us know what distro your using....

its possible, your using a distro that others using axoloti are using, and they may be able to also point you in the right direction... but we will need alot more details.

EDIT: ok, moved your issue to a new topic, as its got some other issues too, so we need to delve deeper.


#18

3 posts were split to a new topic: Linuxmint - stash error on startup


#19

@jimmy what distro are you using?


#20

He was using linuxmint and issue is fixed, see split thread.