3,019
edits
Changes
Debian
,add language box
{{languages|Debian}}= For version 4.0 x and newer =
'''TODOTesting .debs can be found in http://sourceforge.net/projects/gramps/files/Unstable/'''
{{man menu|Gramps 4 moved to setuptool/distutils installer.}} ==Dependency== * debian stuff sudo apt-get install devscripts dpkg-dev fakeroot debhelper dh-linktree * [https://github.com/astraw/stdeb stdeb], which produces Debian source packages from Python packages via a new distutils command, sdist_dsc. Automatic defaults are provided for the Debian package, but many aspects of the resulting package can be customized. An additional command, bdist_deb, creates a Debian binary package, a .deb file. The debianize command builds a debian/ directory directly alongside your setup.py. sudo apt-get install python-stdeb python3-all ==Build== For *'''WARNING'''** The launcher under ''/usr/bin/gramps'' is using the '''same path''' for current stable release and this testing version . '''Backup your launcher''' if you want to install both versions. Translations might be also overwritten, you have been warned...** You need at least version '''3.3.2''' of python-gobject for Gramps '''4.x'''.** You cannot use greater version than '''2.28''' of python-gobject for Gramps '''3.4 and before.x'''. ===via a quick command line=== python setup.py --command-packages=stdeb.command bdist_deb * Custom tarball python setup.py --command-packages=stdeb.command sdist_dsc or Instructions on creating the Debian <tt python setup.py --command-packages=stdeb.command sdist_dsc --depends "python-gobject (>= 3.deb<3.2)" ===via customized options=== These options are set into ''/tt> package for Ubuntu:debian'' folder.
cd debian
export DEBEMAIL='stephanecharette...@gmail.com..' export DEBFULLNAME='Stephane CharetteYour name'
cd ..
dch -v 34.40.3-3 0 "New upstream release, include two patchesfor Gramps 4.0.0"
dpkg-buildpackage -rfakeroot
===via Distutils=== Samples : * https://github.com/astraw/stdeb/blob/master/stdeb/command/* https://github.com/kelvan/gotoVienna/blob/master/bdist_hdeb.py ==Test== $ lintian gramps_4.0.1-2_all.deb W: gramps: old-fsf-address-in-copyright-file W: gramps: extra-license-file usr/share/doc/gramps/COPYING.gz W: gramps: package-contains-upstream-install-documentation usr/share/doc/gramps/INSTALL W: gramps: extra-license-file usr/share/doc/gramps/LICENSE.gz W: gramps: menu-icon-missing usr/share/pixmaps/gramps.xpm ==webapp package== * How to include Makefile into deb package? setup.py: - package_data_webapp = ['webapp/*.sql', 'webapp/grampsdb/sql/*.sql'] + package_data_webapp = ['webapp/*.sql', 'webapp/Makefile', 'webapp/grampsdb/sql/* Release .sql'] * Depends on python-django, python-sqlite Control: Package: python-gramps-webapp Architecture: all Depends: python-django, python-sqlite, ${misc:Depends}, ${python:Depends} Rules: #!/usr/bin/make -f # Uncomment this to turn on verbose mode. export DH_VERBOSE=1 export DH_OPTIONS=-v %: dh $@ --with python2 # Override auto test because upstream do not use the <tt>standard unittest discover override_dh_auto_test: # Override of auto_build override_dh_auto_build: python setup.py --server build # Override of auto_install to remove information from package override_dh_auto_install: #dh_auto_install python setup.py --server install --root=debian/python-gramps-webapp --install-layout=deb< # Make css style sheets and templates non-executable override_dh_fixperms: dh_fixperms chmod a-x $(CURDIR)/debian/python-gramps-webapp/usr/share/gramps/css/Web_*.css chmod a-x $(CURDIR)/debian/python-gramps-webapp/usr/share/gramps/templates/tt*.html # Avoid compressing COPYING file so that it can appear in the "About" dialog override_dh_compress: #dh_compress -X COPYING * python 3 Control: X-Python3-Version: > files= 3.2 Package: python3-gramps-webapp Architecture: all Depends: python3-django, python3-sqlite, ${misc:Depends}, ${python3:Depends} Rules: #!/usr/bin/make -f # Uncomment this to turn on verbose mode. export DH_VERBOSE=1 export DH_OPTIONS=-v %: dh $@ --with python3 # Override auto test because upstream do not use the standard unittest discover override_dh_auto_test: # Override of auto_build cd override_dh_auto_build: python3 setup.py --server build # Override of auto_install to remove information from package override_dh_auto_install: #dh_auto_install python3 setup.py --server install --root=debian/python3-gramps-webapp --install-layout=deb ls # Make css style sheets and templates non-executable override_dh_fixperms: dh_fixperms chmod a-x $(CURDIR)/debian/python3-gramps-webapp/usr/share/gramps/css/Web_*.debcss chmod a-x $(CURDIR)/debian/python3-gramps-webapp/usr/share/gramps/templates/*.html # Avoid compressing COPYING file so that it can appear in the "About" dialog override_dh_compress: Note #dh_compress -X COPYING ==qml package== *Depends on python-pyside, gramps = Instructions on creating the Debian package for Ubuntu = * Check out the necessary version; for example, to build the '''<tt>gramps_3.4.3-3_all.deb</tt>''' filefor GRAMPS {{version}}, which needs you'll want to be uploaded to <tt>ftprun: git clone http://uploadgit.code.sourceforgesf.net/incomingp/gramps/source Gramps git checkout v{{version}} -b {{version}} * Create the Changelog files: git log v{{version}}.. --pretty --numstat --summary --no-merges | git2cl > ChangeLog git log v{{version}}.. --pretty --numstat --summary --no-merges -- po/*.po | git2cl > po/ChangeLog Using the <tt>Changelog</tt>files generated with <tt>git2cl</tt>, Modify <tt>MANIFEST.in</tt> + include ChangeLog + include po/ChangeLog
* The details on how things are going to be packaged into deb files, what are the dependencies, the pre- and post- install and removal scripts etc are under <tt>debian/</tt> directory. Please refer to the [http://www.debian.org/doc/maint-guide/ Debian New Maintainers' Guide] for further details.
[[Category:Developers/Packaging]]