The Itsy Package Management (ipkg) is mainly used for embedded systems. It reproduces a subset of the debian package management system (dpkg).

At least the following distributions use ipkg:

It is quite easy to package self written or ported software for the Itsy Package Management system. The following text will show you, how it works and where to get the information alternatively.

You may also want to maintain a repository of your package(s) to ease the installation for your users. This part will be a little bit tricky, if you want to do this through a web interface. But it will be worth the trouble!
(the command line interface works out of the box)


You need to install ipkg-util. It includes the necessary tools to build packages and to manage a repository.

Before installing ipkg-util you need the following packages (as of debian):

(change the version of python according to your system - version 2.1 should work too)

Then you can start:

If you need more than the most essential tools of ipkg-util, then you should add the necessary files to the first line of the Makefile und do make install again. At least the following scripts should be included this way:

Change the first line of ipkg-make-index to:

To build ipkg packages with tar instead of ar (as some small system do not support it) then you should change line 215 to:

ipkg-build -c /tmp/${pkg} || exit 1 

Building a package

There are some useful tutorials in the internet:

After you finished your preparations as described, you run

fakeroot ipkg-buildpackage 

To sign the package, you type gpg -sab $IPKG_FILE.

Managing a repository

You can manage a repository with command line tools or a web interface. Both are part of ipkg-util.

command line

web interface

This needs a bit of preparation, as the cgi that comes with ipkg-util is not ready to use.

Hint: the web interface assumes that you maintain more than one repository - e.g. unstable, devel and so on. This can be changed, of course.

Try the following steps:

If you want to upload you freshly built packages automatically, then you may use the following curl command:

curl -F "filename=@$(IPKG_FILE)" \
     -F "signaturefilename=@$(SIG_FILE)" \
     -F "sourcefilename=@$(SRC_FILE)" \
     -F "feedname=unstable" \

BuildingIpkgPackages (last edited 2012-06-13 21:26:27 by anonymous)

Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.