make-klone-project(1) manage a KLone based custom Debian package


make-klone-project [optionsCOMMAND


make-klone-project is a tool to create and manage custom webserver packages that use KLone, a framework that integrates a web site with possibly dynamic content and a web server into a single binary.

The aim is to let the author to focus on editing the site specific files under webapp/ and allow creating a Debian package containing the web server and an init.d script to manage it with dpkg-buildpackage.


make-klone-project takes one non-option argument.
Create a new project directory, package-0.1 and seeds it with KLone's source and a debian/ directory.
Remove all non-user created files and directories ie. everything but debian/copyright, debian/changelog, debian/wsp.* and webapp/. See also the -l option below.
Cleans the project directory as with make-klone-project clean and reseeds the KLone source and the debian/ directory.


 make-klone-project create -p myapp -m "Kari Pahula <[email protected]>"
 cd myapp-0.1
 (edit any files that require editing, mostly in webapp/)
 make-klone-project refresh
 dpkg-buildpackage -rfakeroot
 sudo dpkg -i ../myapp_0.1_i386.deb


Name the created web server binary as NAME. If not specified the package name is used.
Look for the project root directory in clean and refresh commands by changing the working directory to the parent directory until they find a file named debian/wsp.opt.maintainer in the current directory. Returns with error if none is found. Without this option, only the current directory is checked for this file.

The upside of using this option is that make-klone-project will be agnostic about the working directory, as long as it is somewhere inside the project tree, just like dpkg-buildpackage. The downside is that you run a greater risk of having the clean command cause unwanted data loss, if you happen to have an unfortunately named file in a wrong place.

Sets the maintainer name as NAME.
Set the package name as NAME. Only effective with the create command. If not specified, uses customkloneapp.


A custom description for the package. Should be formatted like the corresponding field in the debian/control file.
The options set in prior calls to make-klone-project.
The user specified site tree, to be imported as the site by KLone.


Your web server will be run as a root, so you will need to use either allow_root or uid and gid options in your etc/kloned.conf.


make-klone-project was written by Kari Pahula <[email protected]>.