Linux repositories inspector


16 Sep 2007


tool for creating custom KLone web server packages


make-klone-project - manage a KLone based custom Debian package


make-klone-project [options] COMMAND


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 Create a new project directory, package-0.1 and seeds it with KLone’s source and a debian/ directory.
clean 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 <>"
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


-b NAME Name the created web server binary as NAME. If not specified the package name is used.
-l 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 <>.
⇧ Top