Hi Bjorn, Jonathon, and everyone,

FreeCAD was certainly not easy to package. I spent actually several months just working on the pyside2 dependencies and I still do not have a working build of Pivy from coin.  It is only thanks to the help of the upstream maintainers that this package is even close to working.  I have attached updated patches and my responses to Bjorn's notes below. Thanks for your review!

As to QTWebKit - I do not know why it is a dependency. It may not be a hard requirement. If you comment it out, I think the configure phase may succeed. I included it for completion only.

* FreeCAD Notes

** DONE Add commit message details and copyright lines

** Coin3D

*** DONE Delete blobs

*** hg-fetch deletes .hg dirs (and all submodules' .hg dirs)

** SoQT vs. Quarter

*** Not interchangeable as far as I know.

*** FreeCAD requires SoQT specifically during configure.

** Pyside2

*** Does all of pyside2 belong in qt.scm? - there are three packages: Shiboken2, Pyside2, and Pyside2-Tools

*** QT version compatibility

**** The pyside2 project has branches for the newest version with compatibility with older QT versions (I am using the 5.11.3 compat branch)

 - That is also why I am using a git commit for the Pyside2 packages
 - https://code.qt.io/cgit/pyside/pyside-setup.git/
 - Pyside dependencies were by far the most challenging, and I had to track some issues (of which, some are not resolved)

** libmedfile

*** Reason for old version is that what was released when I started

*** 4.0.0 requires hdf5 >= 1.10.2

**** HDF5 has some dependents:

guix refresh --list-dependent hdf5 Building the following 11 packages would ensure 23 dependent packages are rebuilt:
r-ioniser@2.8.0 r-scone@1.8.0 r-lumi@2.36.0 r-yarn@1.10.0 r-illuminahumanmethylationepicmanifest@0.3.0 r-scdd@1.8.0 pigx@0.0.3 r-pore@0.24 r-yamss@1.10.0 r-xcms@3.6.1 r-msnid@1.18.0

**** HDF5 patches need updates when HDF5 updated to 1.10.5

*** DONE Change license to gpl3+

** libarea License questions and source locations:

**** I am using the source from github: https://github.com/Heeks/libarea

 - Should I use some other source? The google archive is unavailable.
 - I cannot find any license information in the github repository.

**** DONE Change to gpl3+

** Using releases over hg/git downloads (please advise)

1. Pyside2 packages - Done for compatibility reasons
2. Coin3D and SoQt - I don't think there are releases of these aside from the bitbucket repository.
3. LLVM propagated packages (llvm-toolchain and pyside-libcxx-headers)
 - I am not sure these are the best way to accomplish the goal anyways.
 - Not sure where to find the right sources for llvm-toolchain-6 and the pyside-libcxx-headers.
4. libarea - Seems like libarea is actually close to not even having source available anymore, let alone a release
5. libspnav - Confused as to the best source to use here. If there is a release or better version, I can update.
6. FreeCAD
 - I can use the releases if they exist. I do not think they have source tarballs available.
 - I was packaging during a lot of active development of FreeCAD

Thank you for your review and advice.

- John

On Mon, Jul 22, 2019 at 5:57 PM Jonathan Brielmaier <jonathan.brielmaier@web.de> wrote:
Thanks Björn for having a look here :)

On 7/22/19 4:11 PM, Björn Höfling wrote:> I wanted to give it a try for
myself but failed: I could not build
> qtwebkit locally, and no substitutes are available. I don't want to
> hold back my comments any longer, so I postponed trying it out.

qtwebkit seems to fail on master as well and it needs long to build, so
I can't do it locally on my laptop:
http://ci.guix.gnu.org/build/1488065/details

> I wonder if we need the dependency on qtwebkit or if we can get rid of this, but I haven't investigated yet.

I think we need it as openSUSE and Debian have a build require on
qtwebkit-devel and it's noted at their wiki:
https://www.freecadweb.org/wiki/CompileOnUnix#Getting_the_dependencies