summaryrefslogtreecommitdiff
path: root/docs/foo.txt
diff options
context:
space:
mode:
Diffstat (limited to 'docs/foo.txt')
-rw-r--r--docs/foo.txt113
1 files changed, 113 insertions, 0 deletions
diff --git a/docs/foo.txt b/docs/foo.txt
new file mode 100644
index 0000000..7f01494
--- /dev/null
+++ b/docs/foo.txt
@@ -0,0 +1,113 @@
+NAME
+ foo - A template project
+
+WTF?
+ You may use this project in order to build your own Debian package for
+ your own project. This has been tested with Debian GNU/Linux Squeeze and
+ Debian GNU/Linux Wheezy.
+
+ Feel free to modify any aspects. This project is just an empty example
+ foo.
+
+ Follow these steps:
+
+ Install required packages
+ Run the following:
+
+ sudo aptitude install lintian devscripts dpkg-dev make perl
+
+ Todo: Ensure this are the correct packages. In order to test that I
+ would have to setup a blank Debian system.
+
+ Compile the project
+ Go to the to level directory and run
+
+ make
+
+ To test run
+
+ ./bin/foo
+
+ It should print out the version number of the project.
+
+ Create a Debian package
+ Go to the to level directory and run
+
+ make deb
+
+ It will create the files like:
+
+ ../foo_0.0.0.0_all.deb
+ ../foo_0.0.0.0.dsc
+ ../foo_0.0.0.0_amd64.changes
+ ../foo_0.0.0.0.tar.gz
+
+ It should create a debian package in ../. Check and install it, e.g:
+
+ lintian --pedantic ../foo_0.0.0.0_all.deb
+ sudo dpkg -i ../foo_0.0.0.0_all.deb
+
+ Run
+
+ dpkg -L foo
+
+ to see whats in there. You can now run
+
+ /usr/bin/foo
+
+ or for example
+
+ man foo
+
+ Read the Makefile
+ Read the Makefile in order to understand what's going on.
+
+Customize
+ Now, since you understood everything feel free to customize everything
+ the way you want it. E.g.:
+
+ Don't use POD for documentation but LaTeX
+
+ Compile a C program
+
+ Include a ./lib dir, add it to the 'install' Makefile rule
+
+ etc etc.
+
+ You should also consider the following:
+
+ Manual page
+ This template is using POD for creating manual pages. Edit
+ ./docs/foo.pod and run
+
+ make documentation
+
+ in order to build ./docs/foo.1. The page will be included in the
+ resulting debian package automatically. You can review the page with
+
+ man ./docs/foo.1
+
+ Renaming foo into your project name
+ Rename all files which have *foo* included into your own new package
+ name. You can find them with
+
+ find . -name \*foo\*
+
+ Search all content and rename *foo* into your own new package name. You
+ can find all files with
+
+ grep -R foo . | grep -v .git
+
+ Updating ./debian
+ Edit the following files accordingly to your new project (e.g. with
+ vim):
+
+ ./debian/control
+ ./debian/copyright
+ ./debian/README
+
+ Update changelog
+ Go to the to level directory and run
+
+ dch -i
+