Ubuntu PPA Maintenance Coordination

Having trouble installing or compiling FreeCAD? Get help here.
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: Ubuntu PPA Maintenance Coordination

Post by sgrogan »

sgrogan wrote: Trying to overwrite '/ usr / share / doc-base / freecad-development-Documentation, which is also in freecad- Package doc 1: 0.16.6703-1ppa1 ~ ubuntu14.04.1
OK Document ID must be unique in freecad-daily-doc.doc-base
Works after fixing that.
"fight the good fight"
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: Ubuntu PPA Maintenance Coordination

Post by NormandC »

I just noticed this blog post on the Launchpad website: Git-to-Git imports

Apparently, since November 2016, Git repositories can now be mirrored to Git!

And it looks like it solves the issue of signed git commits we were having with the old bzr mirror.

Here's how to make a git mirror: https://help.launchpad.net/Code/Git#Mir ... ther_sites

@ sgrogan, I hope you won't mind that I went ahead (just couldn't resist :P ) and followed the first method explained above to import an upstream repository.

The url has been created but the repo is empty for now, it's waiting for the import.

https://code.launchpad.net/~freecad-mai ... it/freecad

Notice that it's registered under lp:freecad. :D

It also appears in the "Code" link of the FreeCAD Maintainers team:
https://code.launchpad.net/~freecad-maintainers

Are you still manually synchronizing from Github in gitmaster?

If the mirror works, maybe you won't need to anymore? One thing I'm eager to find out is if all the branches are mirrored, or only the master branch (I'm not holding my breath :roll: ). It would be nice to at least get the possibility of importing other branches as needed.
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: Ubuntu PPA Maintenance Coordination

Post by NormandC »

*All* the branches were imported. Awesome! :D

Imports are scheduled every 5 hours, but there's an "Import Now" button.
Attachments
FC_lp_freecad_01.png
FC_lp_freecad_01.png (79.67 KiB) Viewed 1769 times
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: Ubuntu PPA Maintenance Coordination

Post by sgrogan »

NormandC wrote:*All* the branches were imported. Awesome! :D
Fantastic! I'll update the recipes to use this.
Thanks NormandC :mrgreen:
"fight the good fight"
User avatar
yorik
Founder
Posts: 13640
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Ubuntu PPA Maintenance Coordination

Post by yorik »

wow, huge improvement!
User avatar
kkremitzki
Veteran
Posts: 2511
Joined: Thu Mar 03, 2016 9:52 pm
Location: Illinois

Re: Ubuntu PPA Maintenance Coordination

Post by kkremitzki »

Would it be worthwhile to do something similar for occt as well if the plan is to package it for Ubuntu? I signed the agreement with OpenCASCADE as well for dev access to their git repo, so I could help out, and I believe they would be okay with doing so if it would be beneficial for packaging it.
Like my FreeCAD work? I'd appreciate any level of support via Patreon, Liberapay, or PayPal! Read more about what I do at my blog.
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: Ubuntu PPA Maintenance Coordination

Post by sgrogan »

kkremitzki wrote:Would it be worthwhile to do something similar for occt as well if the plan is to package it for Ubuntu?
Yes, but first we need to get a stable package working, before a daily version. Then tackle the fact that the OCCT repo is not public.
"fight the good fight"
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: Ubuntu PPA Maintenance Coordination

Post by NormandC »

kkremitzki wrote:Would it be worthwhile to do something similar for occt as well if the plan is to package it for Ubuntu?
Couldn't be done with a synchronized mirror like I just did, because the occt repo isn't public and requires authentication. So you'd basically need to do what sgrogan has been doing with the gitmaster repo up to now, that is to clone the FreeCAD github repo then push it to the Launchpad gitmaster repo. Sure it can be automated with a script, but you'd need to do it from your end.

https://code.launchpad.net/~freecad-mai ... /gitmaster

I believe we discussed this in the gigantic OCCT7 migration topic: a synced occt repo with full git history is not absolutely necessary for packaging. The Debian maintainers don't do it. They create a git repo, import the upstream source tarball for a project into it in and add their debian stuff.

See these two examples:
https://anonscm.debian.org/cgit/debian- ... eecad.git/
https://anonscm.debian.org/cgit/debian- ... s/oce.git/

In our case, it may be easier to manually sync a git repo than dealing with upstream source tarballs, but I don't know git well enough to know for sure. On the other hand, complete git history has its advantages.

As for: is the plan really to package it for Ubuntu?

To be honest, my own plan was never so ambitious: it was solely to package it for our own PPA. To get this package in the Ubuntu repositories is a whole different ball game. For starters, it means getting it in the Debian repositories first. Then it needs to follow the strict rules of Debian packaging. I believe you need to state your intent on their mailing lists, get a mentor, etc.

There's also the matter of deciding what kind of support to include in occt packages: libtbb, vtk, etc. We don't need the latter so we are not enabling it, but if the package is intended for a wide use base, other projects may need it.

One thing I'd like to say Kurt, even though I maintained the PPA for 4 years before sgrogan took charge there's still a lot of things I'm struggling with, like debian/rules makefiles, how they work and how to tailor them. If gdo35 hadn't helped with his script, modified rules file and patch we'd still be stuck.

I think with your programming background you got what it takes to learn more about rules makefiles, this would be of great help to us. And if you really want to package OCCT for debian/ubuntu then go for it! I'll try to give you the help I can but it will quickly reach its limits I'm afraid. ;)

But I understand that your priorities this next summer may lie somewhere else! ;)
User avatar
kkremitzki
Veteran
Posts: 2511
Joined: Thu Mar 03, 2016 9:52 pm
Location: Illinois

Re: Ubuntu PPA Maintenance Coordination

Post by kkremitzki »

NormandC wrote:
kkremitzki wrote:Would it be worthwhile to do something similar for occt as well if the plan is to package it for Ubuntu?
Couldn't be done with a synchronized mirror like I just did, because the occt repo isn't public and requires authentication. So you'd basically need to do what sgrogan has been doing with the gitmaster repo up to now, that is to clone the FreeCAD github repo then push it to the Launchpad gitmaster repo. Sure it can be automated with a script, but you'd need to do it from your end.
Even doing it manually wouldn't be that big of a burden because it would only occur for bugfix releases on the minor version, e.g. we'd be building 7.x.1, 7.x.2 releases, not daily builds. If FreeCAD moves the version it depends on, then I'd just upload a new tag.
I believe we discussed this in the gigantic OCCT7 migration topic: a synced occt repo with full git history is not absolutely necessary for packaging. The Debian maintainers don't do it. They create a git repo, import the upstream source tarball for a project into it in and add their debian stuff.
I can just do a shallow clone of a tagged release, so there's no git history, as I agree it's unnecessary. Mainly I just want there to be an authoritative source for building the occt dependency of FreeCAD on Ubuntu.

As for: is the plan really to package it for Ubuntu?
Yep, I just meant for the PPA; having it available for general purpose use is too ambitious and I have no desire to support components of it beyond what FreeCAD needs.
One thing I'd like to say Kurt, even though I maintained the PPA for 4 years before sgrogan took charge there's still a lot of things I'm struggling with, like debian/rules makefiles, how they work and how to tailor them. If gdo35 hadn't helped with his script, modified rules file and patch we'd still be stuck.

I think with your programming background you got what it takes to learn more about rules makefiles, this would be of great help to us. And if you really want to package OCCT for debian/ubuntu then go for it! I'll try to give you the help I can but it will quickly reach its limits I'm afraid. ;)
Thanks, I think this would be a decently-sized chunk of work for me to do. I'm only just now getting into packaging and it is pretty overwhelming. Not sure how you were able to manage without a programming background. :shock:
Like my FreeCAD work? I'd appreciate any level of support via Patreon, Liberapay, or PayPal! Read more about what I do at my blog.
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: Ubuntu PPA Maintenance Coordination

Post by NormandC »

kkremitzki wrote:Not sure how you were able to manage without a programming background. :shock:
What's the saying? By the skin of my teeth? By the seat of my pants? :lol:

I'm a pretty analytical and methodical person, I guess that helps.
Post Reply