diff options
| author | Paul C. Buetow (mars.fritz.box) <paul@buetow.org> | 2014-06-22 11:14:32 +0200 |
|---|---|---|
| committer | Paul C. Buetow (mars.fritz.box) <paul@buetow.org> | 2014-06-22 11:14:32 +0200 |
| commit | fc4cb97144f62f07cf3d86052adf7f7b06267557 (patch) | |
| tree | ffcddc5eb9946981849cd09c5a7b5f64168dcabf | |
| parent | 6b3174a2c6760a0b42790bc12fd76f6e8ff10077 (diff) | |
add README.pod
| -rw-r--r-- | README.pod | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/README.pod b/README.pod new file mode 100644 index 0000000..76de14e --- /dev/null +++ b/README.pod @@ -0,0 +1,114 @@ +=head1 NAME + +template - A template project + +=head1 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 template. + +Follow these steps: + +=head2 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. + +=head2 Compile the project + +Go to the to level directory and run + + make + +To test run + + ./bin/template + +It should print out the version number of the project. + +=head2 Create a Debian package + +Go to the to level directory and run + + make deb + +It will create the files like: + + ../template_0.0.0.0_all.deb + ../template_0.0.0.0.dsc + ../template_0.0.0.0_amd64.changes + ../template_0.0.0.0.tar.gz + +It should create a debian package in ../. Check and install it, e.g: + + lintian --pedantic ../template_0.0.0.0_all.deb + sudo dpkg -i ../template_0.0.0.0_all.deb + +Run + + dpkg -L template + +to see whats in there. You can now run + + /usr/bin/template + +or for example + + man template + +=head2 Read the Makefile + +Read the Makefile in order to understand what's going on. + +=head1 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: + +=head2 Manual page + +This template is using POD for creating manual pages. Edit ./docs/template.pod and run + + make documentation + +in order to build ./docs/template.1. The page will be included in the resulting debian package automatically. You can review the page with + + man ./docs/template.1 + +=head2 Renaming template into your project name + +Rename all files which have *template* included into your own new package name. You can do that with: + + PROJECTNAME=yourproject + find . -name \*template\* | + while read template; do git mv $template ${template/template/$PROJECTNAME}; done + +Search all content and rename *template* into your own new package name. You can do that with: + + grep -R template . | grep -v .git | + cut -d: -f1 | uniq | xargs sed -i "s/template/$PROJECTNAME/g" + +=head2 Updating ./debian + +Edit the following files accordingly to your new project (e.g. with vim): + + vim ./debian/{control,copyright,README} + +=head2 Update changelog + +Go to the to level directory and run + + dch -i |
