Skip to content
This repository was archived by the owner on Nov 11, 2018. It is now read-only.
Closed
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions debian.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Run this script in order to generate a Debian package
#
# Ensure that the version number below is correct
#
# The directory within which the finalterm is contained
# should have the name finalterm-x.xx, where the x's are
# the version number.
#
# A corresponding version number entry must exist at the
# top of debian/changelog and the email signature name
# within that file should correspond exactly with your
# GPG key.
#
#!/bin/bash

APP=finalterm
VERSION=0.10
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A really cool thing would be to get the version string from git tags. (But that's rather advanced, an example can be found in vala sourcecode: build-aux/git-version-gen)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, that would save some manual effort when increasing the version number.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not using any tags ATM because I'm not actually versioning yet. I consider Final Term to be in an unstable, pre-alpha state where everything can change at any time and I do not want to worry about semantic implications of version numbers at the moment.

Once basic, everyday functionality is ready, versioning will start and I'll switch from a "push at will" model to an actual release cycle.

At that point, pulling the version from tags would indeed be very cool :)


# ensure that recent version of vala is available
#sudo add-apt-repository ppa:vala-team

# clean
rm -f ${APP} \#* \.#* debian/*.log debian/*.substvars debian/files
rm -rf debian/deb.* debian/${APP} build obj-*
rm -f ../${APP}*.deb ../${APP}*.changes ../${APP}*.asc ../${APP}*.dsc

# Create a source archive
tar -cvzf ../${APP}_${VERSION}.orig.tar.gz ../${APP}-${VERSION} --exclude=.git --exclude=build
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One can use the --exclude-vcs switch to exclude files from version control system. Instead of ../${APP}-${VERSION} i suggest ../$(basename $(pwd)) to make it independent of current directory name.


# Build the package
fakeroot dpkg-buildpackage -F
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dpkg-buildpackage already uses fakeroot internally (as default), so no need to run the command with fakeroot.

5 changes: 5 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
finalterm (0.10-1) raring; urgency=low

* Added Debian packaging

-- Bob Mottram (4096 bits) <[email protected]> Mon, 20 May 2013 14:00:00 +0100
1 change: 1 addition & 0 deletions debian/compat
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
9
18 changes: 18 additions & 0 deletions debian/control
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Source: finalterm
Section: contrib/utils
Priority: extra
Maintainer: Philipp Emanuel Weidmann <[email protected]>
Build-Depends: debhelper (>= 9.0.0), cmake, valac-0.18, libgee-0.8-2, libmx-dev, libclutter-gtk-1.0-dev, libnotify-dev, libunity-dev
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again the compiler dependency should be (for saucy e.g.): valac-0.18 | valac-0.20

Standards-Version: 3.9.4
Homepage: http://finalterm.org/
Vcs-Browser: https://github.com/p-e-w/finalterm
Vcs-Git: https://github.com/p-e-w/finalterm.git

Package: finalterm
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, valac-0.18, libgee-0.8-2, libmx-dev, libclutter-gtk-1.0-dev, libnotify-dev, libunity-dev
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why does the runtime package depends on development packages and the compiler?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are the minimum runtime dependencies?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should work without any extra dependencies. Everything already should come with ${shlibs:Depends}.

Description: At last – a modern terminal emulator
finalterm goes beyond mere emulation and understands what is
happening inside the shell it is hosting. This allows it to
offer features no other terminal can, including semantic text
menus, smart command completion and GUI terminal controls
41 changes: 41 additions & 0 deletions debian/copyright
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: finalterm
Source: https://github.com/p-e-w/finalterm

Files: *
Copyright: Copyright 2013 Philipp Emanuel Weidmann <[email protected]>
License: GPL-3.0+
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".

Files: debian/*
Copyright: Copyright 2013 Philipp Emanuel Weidmann <[email protected]>
License: GPL-3.0+
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Avoid to name a license twice. So use:

Files: *
Copyright: ...
License: GPL...

Files: debian/*
..
License: GPL...

License: GPL...
  disclaimer text

See also the standard itself.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
1 change: 1 addition & 0 deletions debian/docs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
README.md
1 change: 1 addition & 0 deletions debian/manpages
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
man/finalterm.1.gz
49 changes: 49 additions & 0 deletions debian/rules
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#!/usr/bin/make -f

%:
dh $@

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should compile without all of the following lines.

build: build-stamp
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why to manual name targets? dh $@ should behave fine. Otherwise use override targets.

dh_testdir
dh_auto_configure
dh_auto_build

build-stamp:
dh_testdir
touch build-stamp

clean:
dh_testdir
dh_testroot
rm -f build-stamp
dh_clean

install: build clean
dh_testdir
dh_testroot
dh_prep
dh_installdirs
dh_installman
dh_auto_install

binary-indep: build install
dh_shlibdeps
dh_testdir
dh_testroot
dh_installchangelogs
dh_installdocs
dh_installexamples
dh_installman
dh_auto_install
dh_link
dh_compress
dh_fixperms
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb

binary-arch: build install

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install
1 change: 1 addition & 0 deletions debian/source/format
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
3.0 (quilt)
11 changes: 11 additions & 0 deletions debian/source/include-binaries
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
man/finalterm.1.gz
data/Icons/hicolor/22x22/apps/final-term.png
data/Icons/hicolor/24x24/apps/final-term.png
data/Icons/hicolor/32x32/apps/final-term.png
data/Icons/hicolor/48x48/apps/final-term.png
data/Icons/hicolor/64x64/apps/final-term.png
data/Icons/hicolor/96x96/apps/final-term.png
data/Icons/hicolor/scalable/apps/final-term.svg
data/Icons/source/extra-small.svg
data/Icons/source/regular.svg
data/Icons/source/small.svg