AppImages of v0.18 release builds

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
realthunder
Posts: 1103
Joined: Tue Jan 03, 2017 10:55 am

Re: AppImages of v0.18 release builds

Postby realthunder » Sun May 26, 2019 11:59 pm

looo wrote:
Sun May 26, 2019 11:15 am
Is it possible for you to try your suggestion (extract appimage and remove mentioned libs)?
Yes, I tried, of course, while building asm3 release package. I did my research, you know. I even read the gtk source code. If I didn't find the answer, I would have built a customized gtk package and continue searching.

looo wrote:
Sun May 26, 2019 4:35 pm
I think we are running into a similar issue. We should stop trying to support as many distros via hacks... We should take the conda packages (Cross Linux / Cross platform) and if people tell us FreeCAD doesn't look very nice on distro xx we should answer: this is a problem of the distro xx. If the distro would support conda-packages this issue wouldn't exist. This is the only way towards a more consistent packaging system.
No, this is not a similar issue. FreeCAD does not really have customized theme code, it is just Qt trying to use the system theme and failed because of missing gtk theme module. The bundled libgtk package is fine. It is just missing the theme module, which is a separate package. It is available somewhere on the host system and the bundled libgtk can't find them.

This is not a specific issue for conda either, as the problem appears when you try bundling conda built binaries with AppImage. As I mentioned before, AppImage folks are probably aware of this problem, and they choose not to bundle libgtk or libgdk-pixbuf. You can check out pkg2appimage/excludedeblist file. If one creates an AppImage with a deb package, say from freecad daily ppa, libgtk will not be bundled even if it's in the dependency list.
Try Assembly3 (latest version 0.10.2) along with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
looo
Posts: 2742
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Postby looo » Mon May 27, 2019 8:23 am

realthunder wrote:
Sun May 26, 2019 11:59 pm
As I mentioned before, AppImage folks are probably aware of this problem, and they choose not to bundle libgtk or libgdk-pixbuf.
I don't see libgtk being removed from the appimage here [1].
Also I don't see libgtk bundled in current 0.19. Maybe you are refering to build where qt5.6.2 was used. After changing to qt5.6.3 the gui issues were fixed for me. Maybe you can try a recent 0.19 appimage.

After some tests I can confirm:
0.19 16540 included libgtk
0.19 16854 doesn't include libgtk

Removing libgtk and libgdk from 16540 fixes pixbuf-warning and gui looks the same as with 0.19 16854. So I guess it's a problem of conda qt5.6.2-package and is fixed in qt5.6.3. Hopefully also the upcoming qt5.9 won't include these libraries.

Btw.:
I think we should try to use this "official" script [1] for creating the appimages from conda-packages and help improving it. I see some things we currently are not doing (like removing header files) which will lead to a smaller size.

[1] https://github.com/linuxdeploy/linuxdep ... h#L135L144
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Sun Aug 25, 2019 10:38 pm

Next week(end) i plan to take a look at remaining issues we have discussed in this thread. I have one question up front. On macOS, when using FreeCAD 0.18, accessing help results in similar issues as seen in AppImage? That is the included help doesn't work and a pop-up describing path issue emerges instead of the help? Can one of the macOS people confirm that?
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Tue Aug 27, 2019 11:55 am

In addition and AFAIR we have discussed, it would likely make sense to sign AppImages in this thread. And there is an issue reported here:

https://github.com/FreeCAD/FreeCAD-AppImage/issues/6

At that time we believed the procedure of downloading the AppImage, signing it and re-upload it could work. As it turned out this likely isn't a feasible option. Stable AppImages still being updated on a daily basis and in addition signing FreeCAD 0.19 AppImages wouldn't fit nicely in this strategy. If this should be tackled it should be tackled on Travis. I am prepared to invest some effort in making this work, but somebody that has the needed permissions on Travis, can access the settings of FreeCAD-AppImage repository on Travis, needs to get involved too.
Last edited by triplus on Tue Aug 27, 2019 2:45 pm, edited 1 time in total.
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Tue Aug 27, 2019 1:46 pm

@looo

Any plans to update FreeCAD 0.18 set of dependencies on Conda to the FreeCAD 0.19 ones, any technical issues preventing that?

https://github.com/FreeCAD/FreeCAD-AppImage/issues/19

P.S. If such task takes too much effort, redirecting people having such issues to FreeCAD 0.19 AppImage is a sensible solution too.
looo
Posts: 2742
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Postby looo » Tue Aug 27, 2019 3:11 pm

triplus wrote:
Tue Aug 27, 2019 1:46 pm
@looo

Any plans to update FreeCAD 0.18 set of dependencies on Conda to the FreeCAD 0.19 ones, any technical issues preventing that?

https://github.com/FreeCAD/FreeCAD-AppImage/issues/19

P.S. If such task takes too much effort, redirecting people having such issues to FreeCAD 0.19 AppImage is a sensible solution too.
Yes I tried already to update to qt5.9 and freecad 0.18.3 on conda-forge actually uses qt5.9 but the problem is the startpage which I had to disable because of the change from webkit to webengine. 0.18 doesn't fully support webengine and backporting different commits from 0.19 is in my eyes too much work. So either we use qt5.9 /qt5.12 without start-wb or stick with qt5.6.

In my eyes it's better to concentrate on 0.19 (qt5.12, link, asm3) and redirect people to 0.19 builds if 0.18 has issues.
User avatar
Kunda1
Posts: 5149
Joined: Thu Jan 05, 2017 9:03 pm

Re: AppImages of v0.18 release builds

Postby Kunda1 » Wed Aug 28, 2019 6:27 pm

Re: Signing AppImages
@probonopd says in https://github.com/FreeCAD/FreeCAD-AppI ... -525840839
Sure, we are doing it for our own AppImages. It's a bit tricky: We encrypted the private key in an archive secured with a long password which is stored as a secure variable in Travis CI.

https://github.com/AppImage/AppImageKit ... sh#L24-L26
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
triplus
Posts: 8605
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Postby triplus » Wed Aug 28, 2019 7:27 pm

looo wrote:
Tue Aug 27, 2019 3:11 pm
Yes I tried already to update to qt5.9 and freecad 0.18.3 on conda-forge actually uses qt5.9 but the problem is the startpage which I had to disable because of the change from webkit to webengine.
And does Conda by any chance provide QWebKit package for Qt 5.9/5.12? If yes, that could i guess still be used for FreeCAD 0.18. If not, indeed it doesn't make much sense to invest more effort.
looo
Posts: 2742
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Postby looo » Wed Aug 28, 2019 8:14 pm

triplus wrote:
Wed Aug 28, 2019 7:27 pm
And does Conda by any chance provide QWebKit package for Qt 5.9/5.12? If yes, that could i guess still be used for FreeCAD 0.18. If not, indeed it doesn't make much sense to invest more effort.
Linux builds are missing:
https://anaconda.org/conda-forge/qtwebkit/files

edit: I had a look at the recipe and tried to build for linux, but configuration fails with:

Code: Select all

Project ERROR: Cannot run compiler 'g++'. Output:
===================
sh: g++: command not found
===================
For sure it's possible to solve this (like it is done for the qt-feedstock [1]), but there is really not much motivation for me to do this.

[1] https://github.com/conda-forge/qt-feeds ... ild.sh#L67
looo
Posts: 2742
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Postby looo » Thu Aug 29, 2019 8:41 am