-
Notifications
You must be signed in to change notification settings - Fork 2
RFC: Repo organization #1
Comments
I started to read about git-buildpackage, but quite frankly couldn't wrap my mind around the documentation. It almost seemed like the whole system is meant to operate on the original source tree, with the debian packaging on a separate branch. I will need to look more at it during this week. |
I was able to successfully build a source package using git buildpackage. I will produce a README.md that describes how the building works. PR to follow. |
One thing that I'm not clear about: how do we handle all the different flavors of libgtsam that only differ by some compile options? Like for instance with or without MKL support. We can make two different packages, and give them different names, but they would not be able to co-exist. |
In principle, I was not thinking of supporting such a feature... but it would be great! From other packages, they do it normally as you suggest: e.g. libgtsam-dev vs libgtsam-mkl-dev, etc.
to |
OK, I added instructions on how to get the basics going.
|
#2 is brilliant!! 😄 It was far more complicated than I expected, but using gbp seems to be systematic enough to be a good choice. Just a couple of follow-up doubts and thoughts:
|
|
They should belong to the new repository https://github.com/borglab/gtsam-packaging. Read: borglab/gtsam-packaging#1
Hi @berndpfrommer ! Should we add the debian directory to this repo? |
Yes! Please give me til the weekend to work on it. |
I finally finished the mother of all build scripts, using gbp to build a nightly snapshot of gtsam. The final version is in another workspace. Unfortunately this repo has to be private because it must hold the necessary keys to sign the package for upload to the PPA. These keys cannot be in a public repo since anybody with the keys can then upload to the PPA. As of tonight that script is running and building a gtsam snapshot to ppa:bernd-pfrommer/gtsam-snapshot I will watch it for a couple of days to make sure it works as it should. Then I'll create a public repo with the build script and instructions how to set it up, but with the keys removed. |
wow, awesome!! 💯 |
as you can probably see from the commit history I've been chipping away on this for the last few days and weeks. |
I have seen this trickle in, and this is supercool :-) |
Quite an odyssey to figure out how to do Ubuntu packaging. Sorry it's taken so long, but it works now, and the setup is reasonably sound. |
Awesome work, Bernd! I'm eager to get gtsam-4.0.3 into Debian, so I'm preparing a manually-edited version of 4.0.3, removing the only 3rdparty library that is taken from the system at present (Eigen3), and leaving the rest as is, for now. Also, I needed to edit the debian/* files quite a lot, and futher changes are probably yet to show up after the review by Debian sponsors. Any ideas on a better approach to this? |
Note to ourselves: these are the remaining lintian warnings/errors:
the so-file version needs cmake changes, that could be integrated into develop, then added to the 4.0.3 release as a patch. PS: the "unstable" error is not really a bug, can be ignored. |
One more issue we need to discuss: I think we might need a "custom export" script anyway for gtsam (like the first one I added time ago, later removed) since gtsam will keep shipping many 3rd-party libraries (I think that's @dellaert 's idea) but that's not allowed for an official Debian release. It's OK for our private Ubuntu PPA repos, but Debian folks won't like that solution at all.
Right now, this is WIP addressed in borglab/gtsam#292 My idea is submitting gtsam 4.0.3 + some patches to fix lintian errors, without Eigen3, then ourselves or someone else will report the Debian "wish-list" bugs regarding the need to get rid of 3rd party embedded libraries and we can work more on that in the future, but at least we would take gtsam within Debian and Ubuntu official repos and that would be super useful! ;-) |
My preference would be to first establish an official borglab branded PPA before we shoot for anl inclusion into Ubuntu outright. I think we can get feedback from users and iron out a lot of kinks more easily in a private PPA. |
Closing this issue because the main topic has been addressed now. Other steps necessary towards getting a full, official Ubuntu release working should be addressed with separate issues. |
Merging in some brew fixes that had previously caused CI to fail
Hi all: (specially, @berndpfrommer )
How should we organize the contents of this repo?
My first idea was to simply put a
/debian
directory on the root, but we should do it as git-buildpackage recommends. On the other hand, @berndpfrommer mentioned that this same repo could be used to store packaging stuff for other non-debian formats, but: how could that be done? in different branches, for example?The text was updated successfully, but these errors were encountered: