AppImages of v0.18 release builds

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: AppImages of v0.18 release builds

Post by sgrogan »

looo wrote: Thu Mar 21, 2019 9:56 pm Yes for sure. Adding the docs which are generated during the build?
Yes the offline docs that show up in the doc directory. freecad.qhc and freecad.qch. The .qch file is big which is why I don't include it in developer builds. A third file exists in this directory, ThirdPartyLibraries.html, which I think should always be included.

Your 0.18 releases will be ahead of the releases/FreeCAD-0-18 fork but we can deal with this at 0.18.1

EDIT: I will upload your existing packages to the 018_pre. These will be a dead-end of 0.18_pre until 0.19_pre is created. This makes them "almost 0.18" until the 0.18 release page is complete.
"fight the good fight"
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

sgrogan wrote: Thu Mar 21, 2019 9:10 pm @triplus thoughts?
I noticed this thread:

https://forum.freecadweb.org/viewtopic.php?f=3&t=35092

Today i did a quick test, for the PPA based AppImage, and indeed things are misbehaving a bit, when it comes to including the offline documentation. Will take a closer look tomorrow, for any obvious clues and possible fixes.
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

Did a few tests today. Two small tweaks are needed, to make use of the offline documentation from GitHub (added to the PPA based AppImage). This will therefore highly likely be possible to achieve.

There is one issue left, that i need to take a closer look at. AppImage will pull in freecad-doc package, not the one from the PPA, the one from the standard repository. Likely best to wait, for the situation on the stable PPA to settle first.
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

OK, the PPA and Conda packaging situation has settled. Do we want to provide both AppImages for FreeCAD 0.18? That is Py2/Qt4 (PPA) and Py3/Qt5 (Conda) based one?

Opinions?

P.S. @looo likely has the recipe for Conda based one figured out. I can take a look for the PPA based one. I can't promise any real results before Sunday/Monday.
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: AppImages of v0.18 release builds

Post by sgrogan »

triplus wrote: Sat Mar 23, 2019 8:35 pm There is one issue left, that i need to take a closer look at. AppImage will pull in freecad-doc package, not the one from the PPA, the one from the standard repository. Likely best to wait, for the situation on the stable PPA to settle first.
It doesn't look like we will achieve a 14.04 stable release. I don't mind using the one from the daily's before it goes away (it's the release commit).
Can I unpack it, add the docs and repack it, and sign the package?

I know backports will be a nightmare, I think we will soon have to update travis as well.
"fight the good fight"
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

Indeed, best if you save the existing AppImage. To serve as a possible backup option. Quickly looking at the current situation, Ubuntu 16.04 FreeCAD package is still build against Py2/Qt4? Therefore i guess we can just try and use that as a base for the AppImage instead.

P.S. Unfortunately i likely won't be able to do any AppImage related test before Sunday/Monday. I could imagine @looo providing a working recipe for Conda based AppImage, that should help with the signing process.
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Post by looo »

P.S. Unfortunately i likely won't be able to do any AppImage related test before Sunday/Monday. I could imagine @looo providing a working recipe for Conda based AppImage, that should help with the signing process.
I am not sure how I can help. What is currently going on (on my side):
We have two toolchains available. 1. py36 gcc4.8, 2. py37 gcc7.2 For linux. The appimage (0.19 pre) uses still the old toolchain. I am not sure when to switch this settings.
For osx we see some people reporting troubles regarding the dmg's I provided. I also encountered such troubles recently (not repeatable crashes and so on). I had no such difficulties with using conda-packages directly (no dmg bundle). So I guess osx needs some additional environment variables set at the startup (like conda does when activating an environment.) But it will be definitely hard to find out the reason for these crashes. So I guess the simpler solution will be to reproduce the bundle @perterl did some time ago. But I can't do this, as I am not familiar how to do so. Also I have no time at all currently.

If you want to create locally a appimage of the release-build you can do the folowing:
clone my appimage-repo: https://github.com/looooo/FreeCAD-AppImage
remove this line: https://github.com/looooo/FreeCAD-AppIm ... onda.sh#L8
and run the script. This will create an appimage using the latest 0.18 build of freecad: https://anaconda.org/conda-forge/freeca ... annel=main
This is a build (without any docs) of the official 0.18 source. But this is not the same source as was used for the currently available 0.18rc appimages on github. So (as already said) I would like to wait for 0.18.1.

So until there is a 0.18.1 I will concentrate on the weekly builds.
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

OK, today i started tackling the recipe for creating an AppImage based on Ubuntu 16.04 and by using FreeCAD 0.18 package from the stable PPA. Long story short i will likely need to invest a few days of free time in trying to make this work and to do some basic testing. As for Conda based AppImage. I will start testing tomorrow.
looo wrote: Thu Apr 04, 2019 9:43 am This is a build (without any docs) of the official 0.18 source
What is the plan for Conda, regarding documentation? A package to be created or adding/using the documentation from the releases page is excepted?

https://github.com/FreeCAD/FreeCAD/releases/tag/0.18

Regarding the releases page. We therefore need to start deploying development oriented AppImages to 0.19_pre and eventually remove the 0.18_pre section. Only Conda based development oriented AppImages or for now to still provide daily PPA based one too (Py2/Qt4)? Is @bblacey the only one that has access to AppImage oriented Travis instance? @sgrogan?

As for the macOS. For development builds we would therefore need to set up macOS oriented Travis instance first. As the primary objective is to provide a FreeCAD 0.18 build. For that we don't need Travis. How bad is the situation, regarding people experiencing crashes?

On Windows side i guess @sgrogan has already sorted it out. When it comes to FreeCAD 0.18 binaries provided from the releases page.
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: AppImages of v0.18 release builds

Post by sgrogan »

triplus wrote: Mon Apr 08, 2019 9:43 pm OK, today i started tackling the recipe for creating an AppImage based on Ubuntu 16.04 and by using FreeCAD 0.18 package from the stable PPA.
I have a local backup of "FreeCAD_0.18.16093.glibc2.17-x86_64.AppImage" I don't know why it's trimmed from the github/releases.
It would be great if I could unpack it, add the docs, and repack (It's based on 14.04) for 0.18.0
Going forward we will need to use 16.04, and unfortunately this will be PY2/QT4 unless we make a bunch of 16.04 packages for the PPA. For 0.18.1 maybe we can just pack/add docs/unpack this.
triplus wrote: Mon Apr 08, 2019 9:43 pm What is the plan for Conda, regarding documentation? A package to be created or adding/using the documentation from the releases page is excepted?
Both would be acceptable IMHO, or even without the docs. Right now this is our best path to PY3/QT, for the AppImages. I think this is top priority. On newer Debian/Ubuntu this is being addressed. But for a distro agnostic bundle this is our best bet.
triplus wrote: Mon Apr 08, 2019 9:43 pm Is @bblacey the only one that has access to AppImage oriented Travis instance? @sgrogan?
I have commit access to the AppImage repo, but I think there are also some OAUTH keys that I don't have access to. I think changing this https://github.com/FreeCAD/FreeCAD-AppI ... vis.yml#L3 should work but I'm not sure how
- DEPLOY_REPO=${DEPLOY_REPO:-FreeCAD/FreeCAD}is set? Maybe in @bblacey's scripts?
triplus wrote: Mon Apr 08, 2019 9:43 pm On Windows side i guess @sgrogan has already sorted it out. When it comes to FreeCAD 0.18 binaries provided from the releases page.
Almost, https://forum.freecadweb.org/viewtopic. ... 90#p299746

For OSX I don't know how to proceed. You and @looo are leading the charge.
"fight the good fight"
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Post by looo »

sgrogan wrote: Mon Apr 08, 2019 10:45 pm triplus wrote: ↑
Mon Apr 08, 2019 10:43 pm
What is the plan for Conda, regarding documentation? A package to be created or adding/using the documentation from the releases page is excepted?

Both would be acceptable IMHO, or even without the docs. Right now this is our best path to PY3/QT, for the AppImages. I think this is top priority. On newer Debian/Ubuntu this is being addressed. But for a distro agnostic bundle this is our best bet.
I don't want to include the docs in the conda freecad-package. Building locally is more work than setting up a branch and let the ci's create the packages. So it would be best if the docs would be available from the release page and we can add them to the appimage/dmg
triplus wrote: Mon Apr 08, 2019 9:43 pm How bad is the situation, regarding people experiencing crashes?
I will use py36 and old toolchain for 0.18.1. Judging from the feedback I think this was the more stable dependency mix.

The 0.18.1 builds available from conda-forge are py3.7 based. Working good in conda environments but not in the bundles. I guess some additional settings are necessary...
Post Reply