[Debian-pan-maintainers] Packaging pytango 9.2.0

PICCA Frederic-Emmanuel frederic-emmanuel.picca at synchrotron-soleil.fr
Fri Aug 26 09:21:00 BST 2016


> Ok - thanks for the feedback.
> I attach the first round of the patch (for review) - i'll do the binary package transition soon.

> diff --git a/debian/changelog b/debian/changelog
> index ad57059..6c66c71 100644
> --- a/debian/changelog
> +++ b/debian/changelog
> @@ -1,3 +1,17 @@
> +pytango (9.2.0-1) UNRELEASED; urgency=medium
> +
> +  * package 9.2.0

if you use gbp dch in order to genereate the changelog it says 
       * Import Upstream 9.2.0
which is clearer

> +  * debian/patch
> +    - 0001-Fix-syntax-error-in-python-3.patch (deleted, upstream uses python-six)

ok

> +  * debian/control
> +    - Build-deps: libtango-dev (>= 9.2.0+dfsg-1~)

I would remove the version dependency, since libtango-dev exist only since tango9

you can use cme fix dpkg in order to check you control file

> +    - Build-Depends-Indep: use python3-sphinx to generate docs

Usually I build the documentation for all version of python in the package
you can have a look here [1], specially the override_dh_sphinxdoc.

 
> +  * drop itango dependency - itango is a separate project since 9.2.0

ok for now but the idea is to add this dependency for sardana ;)

> +  * debian/rules:
> +    - explicitely use pybuild

great :))

> +
> + -- Sandor Bodo-Merle <sandor.bodo-merle at eli-alps.hu>  Wed, 24 Aug 2016 15:10:25 +0200
> +
>  pytango (8.1.8-2) unstable; urgency=medium
 

>   * debian/patches
> diff --git a/debian/control b/debian/control
> index 7ece0be..fdca2d4 100644
> --- a/debian/control
> +++ b/debian/control
> @@ -4,15 +4,19 @@ Uploaders: Picca Frédéric-Emmanuel <picca at debian.org>
>  Section: science
>  Priority: extra
>  Build-Depends: debhelper (>= 9),
> +               dh-python,
>                 libboost-python-dev,
> -               libtango8-dev (>= 8.1.2c+dfsg-7~),
> +               libtango-dev (>= 9.2.0+dfsg-1~),

remove the version dependency

>                pkg-config,
>                python-all-dev,
>               python-numpy,
> +               python-setuptools,

ok

>                 python3-all-dev,
> -               python3-numpy
> +               python3-numpy,
> +               python3-setuptools,
> +               rsync


why rsync ?

On debian infrastructure there is no networkconnection during the build.
so what are you doing with this ?

>  Build-Depends-Indep: graphviz,
> -                     python-sphinx
> +                     python3-sphinx

I would use both in order to build the documentation for python2 and python3
 
> Standards-Version: 3.9.4
> Vcs-Browser: http://anonscm.debian.org/gitweb/?p=debian-science/packages/pytango.git
> Vcs-Git: git://anonscm.debian.org/debian-science/packages/pytango.git
>@@ -26,7 +30,6 @@ Section: python
> Depends: ${shlibs:Depends},
>          ${misc:Depends},
>          ${python:Depends},
>-         ipython

ok

> Provides: ${python:Provides}
> Description: API for the TANGO control system (Python 2)
>  TANGO is an object oriented distributed control system using CORBA,
> @@ -43,7 +46,6 @@ Section: python
>  Depends: ${shlibs:Depends},
>           ${misc:Depends},
>           ${python3:Depends},
> -         ipython3

ok

>  Provides: ${python3:Provides}
>  Description: API for the TANGO control system (Python 3)
>   TANGO is an object oriented distributed control system using CORBA,
> diff --git a/debian/patches/0001-Fix-syntax-error-in-python-3.patch b/debian/patches/0001-Fix-syntax-error-in-python-3.patch
> deleted file mode 100644

ok

> diff --git a/debian/patches/series b/debian/patches/series
> deleted file mode 100644

ok

> diff --git a/debian/python-pytango.install b/debian/python-pytango.install
> index d91fadf..b2cc136 100644
> --- a/debian/python-pytango.install
> +++ b/debian/python-pytango.install
> @@ -1,2 +1 @@
> -usr/bin/itango
> -usr/lib/python2*
> \ No newline at end of file
> +usr/lib/python2*

if I am correct :) with pybuild you can remove the
python-pytango.install and python3-pytango.install files now.

> diff --git a/debian/python-pytango.manpages b/debian/python-pytango.manpages
> deleted file mode 100644

ok

> diff --git a/debian/python-pytango.pyinstall b/debian/python-pytango.pyinstall
> deleted file mode 100644

ok

> index 8f5ae77..0000000
> --- a/debian/python-pytango.pyinstall
> +++ /dev/null

ok

> diff --git a/debian/python3-pytango.install b/debian/python3-pytango.install
> index 3e1c0f1..b06a399 100644
> --- a/debian/python3-pytango.install
> +++ b/debian/python3-pytango.install
> @@ -1,2 +1 @@
> -usr/bin/itango3
> -usr/lib/python3
> \ No newline at end of file
> +usr/lib/python3

idem you should remove this file

> diff --git a/debian/rules b/debian/rules
i> ndex d04e851..a4010b4 100755
-> > -- a/debian/rules
> +++ b/debian/rules
> @@ -4,7 +4,7 @@ PYTHON2=$(shell pyversions -vr)
>  PYTHON3=$(shell py3versions -vr)

this is useless right ?
 
>  %:
> -	dh $@ --with python2,python3
> +	dh $@ --with python2,python3 --buildsystem=pybuild

you should add with sphinxdoc in order to deal with the sphinx documentation javascript link


 
>  build-python%:
>  	python$* setup.py build
> @@ -12,20 +12,12 @@ build-python%:
>  override_dh_auto_build: $(PYTHON3:%=build-python%)
>  	dh_auto_build
>  
> -
>  install-python%:
>  	python$* setup.py install --root=$(CURDIR)/debian/tmp --install-layout=deb --install-html=$(CURDIR)/debian/python-pytango-doc/usr/share/doc/python-pytango-doc/html
> -	# install itango3
> -	mv $(CURDIR)/debian/tmp/usr/bin/itango $(CURDIR)/debian/tmp/usr/bin/itango3
> -	# install the ipython >= 0.11 profiles
> -	install -d $(CURDIR)/debian/tmp/usr/lib/python3/dist-packages/IPython/config/profile/tango
> -	install -p -m644\
> -		$(CURDIR)/IPython/config/profile/tango/ipython_config.py\
> -		$(CURDIR)/debian/tmp/usr/lib/python3/dist-packages/IPython/config/profile/tango
> 	dh_numpy3
 
>  override_dh_auto_install: $(PYTHON3:%=install-python%)
> -	dh_auto_install -- --install-html=$(CURDIR)/debian/python-pytango-doc/usr/share/doc/python-pytango-doc/html
> +	dh_auto_install
 > 	dh_numpy

now you need to call also dh_numpy3 for python3.

can you look after [1] create a new package and upload it into mentors [2]

this way I can get your source package easily and I can try to build it and test your modifications.

Cheers

Fred

[1] https://tracker.debian.org/media/packages/p/pymca/rules-5.1.2%2Bdfsg-1
[2] https://mentors.debian.net



More information about the Debian-pan-maintainers mailing list