[Debian-pan-maintainers] packaging procedure

PICCA Frederic-Emmanuel frederic-emmanuel.picca at synchrotron-soleil.fr
Sat Oct 24 16:04:00 BST 2015


Hello Sergi, did I missed this email ?

Do you have something ready to commit in for ufo.
We are preparing a workshop at SOLEIL about XRay imaging and I would like to use ufo at this occasion.

Sorry if I did not respond at your email, and do not hesitate to ping me, if I forgot to answer your emails.
It is better to ping instead of waiting for ever an answer :)

Cheers

Fred
________________________________________
De : Sergi Blanch i Torné [sergi at calcurco.cat]
Envoyé : mercredi 1 juillet 2015 14:23
À : PICCA Frederic-Emmanuel
Cc : debian-pan-maintainers at lists.alioth.debian.org
Objet : Re: [Debian-pan-maintainers] packaging procedure

Hi!

Good news. Maybe I'm almost there.

After your suggestion to change the debian/rules I've proceed with small modifications of other files in debian directory. I like to list them here to avoid mistakes.

In debian/rules I've added a rule "override_dh_auto_test:" with no action. I understand that what this produces is to avoid the step of unit tests, isn't it? I'm not sure if this is a good idea, but it allows me to continue. Before I've removed, from the "override_dh_auto_configure:" rule the parameter '-- --enable-gtk-doc' because it was making fail the configure, but I suspect this is an issue that would have relation with packages I've installed. I'm a kde user.

In debian/libufo-dev.install I've modified the paths to remove the intermediate starts. That is, I've modified 'usr/lib/*/lib*.so' to 'usr/lib/lib*.so', and also 'usr/lib/*/pkgconfig' to 'usr/lib/pkgconfig'. As well as in debian/libufo0.install I've modified 'usr/lib/*/lib*.so.*' to 'usr/lib/lib*.so.*', and in debian/gir1.2-ufo-0.0.install modify 'usr/lib/*/girepository-1.0' to 'usr/lib/girepository-1.0'.

With this changes and the execution of 'dch -v 0.8.0-1 "Update to version 0.8.0." && debcommit -a && git-buildpackage', the process completes with the generation of the expected *.deb files: [gir1.2-ufo-0.0_0.8.0-1_amd64.deb, libufo0_0.8.0-1_amd64.deb, libufo0-dbg_0.8.0-1_amd64.deb, libufo-bin_0.8.0-1_amd64.deb, libufo-data_0.8.0-1_all.deb, libufo-dev_0.8.0-1_amd64.deb, libufo-doc_0.8.0-1_all.deb], all of them described in debian/control.

I've managed also two environment variables (DEBEMAIL & DEBFULLNAME) to avoid a misconfiguration of them due to local definitions, and It has been able to request to sign those packages. This also has an effect on the debian/changelog file.

Having this *.deb files, is now the time to commit to the remote?

Thanks!

/Sergi.

On Tue, Jun 30, 2015 at 11:34 AM, PICCA Frederic-Emmanuel <frederic-emmanuel.picca at synchrotron-soleil.fr<mailto:frederic-emmanuel.picca at synchrotron-soleil.fr>> wrote:
Hello Sergi,


> I think it has work and now I should contact the developer for unit test issue. Well, with the last indications I've installed some dependencies I haven't installed and git-buildpackage almost works. And I say almost because when it enters test process, it
 remains there with no more interaction. Last lines are:

> Running tests...

> /usr/bin/ctest --force-new-ctest-process -j1

> Test project /home/serguei/src/debian/ufo-core/obj-x86_64-linux-gnu

>     Start 1: test-suite

If you want to skip the unit test for now to check that the rest of the pacakging is ok just add

override_dh_auto_test:

in the debian/rules file.


Indeed at the end it would be a must to have the unit test during the build and also to add the autopkgtest :)

> And it doesn't consume an appreciable cpu resource, memory neither anything. *dsc, *debian.tar.gz and *amd64.build files are well created in the parent directory.

> I think I'm getting closer and I start understanding how the packaging process is.

Great to hear that it is not that difficult ;)

> Thanks, I hope soon I'll do the commit to have the auto made package.

Cheers

Fred




/Sergi.




On Mon, Jun 29, 2015 at 10:16 AM, PICCA Frederic-Emmanuel
<frederic-emmanuel.picca at synchrotron-soleil.fr<mailto:frederic-emmanuel.picca at synchrotron-soleil.fr>> wrote:


Hello Sergi,





> I surrender... I've been playing this weeks trying to understand how can I include in the git repository with the debian sources of the ufo-core the tag 0.8.0 from the author's repository and I can find how. I've tried > every thing I thought useful, and
 almost everything I read, starting from the traces from Frédéric followed by many howto searches.



Freeze ;)



> I can summarize it in to main paths that I thing have possibilities.



> a) Using both repos to merge them.

> $ git clone
https://github.com/ufo-kit/ufo-core && cd ufo-core

> $ git remote add debian git+ssh://git.debian.org/git/debian-pan/packages/ufo-core.git<http://git.debian.org/git/debian-pan/packages/ufo-core.git><http://git.debian.org/git/debian-pan/packages/ufo-core.git>
 && git fetch debian

> $ git checkout -b v0.8.0



> What blocks me in this option has been how to merge the tag with a new upstream branch.



> b) Using the watch file. It's the option that looks more promising because it looks made to do that:

> $ git clone git+ssh://git.debian.org/git/debian-pan/packages/ufo-core.git<http://git.debian.org/git/debian-pan/packages/ufo-core.git><http://git.debian.org/git/debian-pan/packages/ufo-core.git>
 && cd ufo-core

> $ uscan --download --verbose



> Then I have a file ../ufo-core-0.8.0.tar.gz together with a symlink with the *orig* label. But after that I cannot find how to have an upstream branch with the newer code.



Here I will describe how I add a new upstream release to the debian repository.



- First I do not put the real git upstream in the debian package repository. (If I rememmber correctly there was some discussion about how to  put the upstream repository into the debian repo but with no official consensus, the other way arround is another
 quetion...)



- for now the simplest things to do is to clone only the debian repository (your second solution).

- use uscan to download the lastest version. (already done by you nice :). A working watch file is really import for the debian infrastructure.

  it facilitate a lot the upstream integration :)



- and then integrate this new version in the debian repository.



in order to integrate the new upstream, you need at least two branches (master + upstream)



so



git checkout -t origin/upstream

git checkout master

git-import-orig --pristine-tar ../ufo-core-0.8.0.targ.gz



then you should have to answer the question of the version

just put 0.8.0



once done you should have a new upstream/0.8.0 tag



you should be on the master branch



then you can start to fix the debian files.



build your package with



git-buildpackage



if you do not want to commit you change until it is ok



git-buildpckage --git-ignore-new



Just tell me if it works for you.



Cheers



Fred














More information about the Debian-pan-maintainers mailing list