3,019
edits
Changes
Debian
,add language box
{{languages|Debian}}= For version 4.0 x and newer =
'''Testing .debs can be found in http://sourceforge.net/projects/gramps/files/Unstable/''' {{man menu|Gramps 4 moves 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 (see the customizing section, below). 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-stdebpython3-all
==Build==
* '''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.x'''. ===via a quick command line (quick)===
python setup.py --command-packages=stdeb.command bdist_deb
* Custom tarball python setup.py --command-packages=stdeb.command sdist_dsc or python setup.py --command-packages=stdeb.command sdist_dsc --depends "python-gobject (>= 3.3.2)" ===via customized options=== These options are set into ''/debian'' folder. cd debian export DEBEMAIL='For testing only...@...' export DEBFULLNAME='Your name' cd .. dch -v 4.0.0 "New upstream for 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: you can get this experimental 'pythonold-fsf-address-in-copyright-file W: gramps: extra-license-file usr/share/doc/gramps/COPYING.gz W: gramps' : package under [http-contains-upstream-install-documentation usr/share/doc/gramps/INSTALL W: gramps:extra-license-file usr/share/sourceforge.netdoc/projectsgramps/LICENSE.gz W: gramps: menu-icon-missing usr/filesshare/Unstablepixmaps/ '''UNSTABLE'''] sectiongramps. xpm ==webapp package== * How to include Makefile into deb package?
setup.py: - package_data_webapp = ['webapp/*.sql', 'webapp/grampsdb/sql/*.sql'WARNING] + package_data_webapp = ['webapp/*.sql', 'webapp/Makefile', 'webapp/grampsdb/sql/*.sql'] ** The launcher under ''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/gramps'' is using the '''same path''' for current stable release and make -f # Uncomment this testing version. '''Backup your launcher''' if you want to install both versions. Translations might be also overwritten, you have been warnedturn on verbose mode. export DH_VERBOSE=1 export DH_OPTIONS=-v %: dh $@ --with python2 # Override auto test because upstream do not use the 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_** You need at least version '''3.3.2''' of css chmod a-x $(CURDIR)/debian/python-gobject for Gramps '''4.0'''gramps-webapp/usr/share/gramps/templates/*.html # Avoid compressing COPYING file so that it can appear in the "About" dialog override_dh_compress: #dh_compress -X COPYING ** You cannot use greater version than '''2.28''' of python-gobject for Gramps '''3.4.x'''. Control:
* 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/* Release .po | git2cl > po/ChangeLog Using the <tt>.debChangelog</tt> files: cd .. ls *.deb: Note the '''generated with <tt>gramps_3.4.3-3_all.debgit2cl</tt>''' file, which needs to be uploaded to Modify <tt>ftp://upload.sourceforgeMANIFEST.net/incoming/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]]