Projects / epkg


epkg is a package manager which uses the Encap Package Management System, a method for flexibly handling installation and management of third-party software on a Unix system. Encap places each package in its own subdirectory, then automatically manages symlinks to their appropriate places in /usr/local. The Encap package format includes features like postinstall scripts and prerequisite checking. Other features include builtin tar/gzip extraction, optional builtin FTP and HTTP support, transaction logging, and the ability to automatically upgrade a package to the latest version.

Operating Systems

Recent releases

  •  19 Jul 2004 13:16

    Release Notes: This version is a quick update to change the download code to use the new libfget-1.3.0 API.

    •  15 Apr 2004 20:34

      Release Notes: Minor bugfixes to the update mode.

      •  03 Mar 2003 05:22

        Release Notes: This release fixes a number of minor bugs in mkencap's package profile support code.

        •  07 Jan 2003 19:11

          Release Notes: Various bugfixes to mkencap profile code.

          •  24 Dec 2002 01:24

            Release Notes: This release fixes a few bugs in the new package profile code.

            Recent comments

            23 Apr 2001 19:13 dbt

            Re: My installation procedure
            That's an pretty common method of ad hoc management, but it falls short on a couple counts. Pretty much any time filenames change, for example -- shared libraries, new/renamed binaries, etc.

            Check out EPKG. Basically, move your /opt tree to /usr/local/encap, remove the package name symlinks (leave foo-3.1 but delete foo), and run epkg on it. You'll be pleasantly surprised.

            04 Jul 1999 22:57 kyusaku

            oh, btw..
            as far as the gnu stow question earlier, go look at the page.
            encap's copyright predates it. encap's copyright predates freshmeat itself.

            14 Jun 1999 16:09 cmatsuoka

            My installation procedure
            I'm installing packages under /opt/package-version (using ./configure --prefix=/opt/package-version), symlinking the directory to /opt/package and then symlinking the files to /usr/local (to have them in $PATH ). So foobar 3.0 binaries are installed under /opt/foobar-3.0/bin, /opt/foobar is a symlink to /opt/foobar-3.0, and /usr/local/bin/foobar is a link to /opt/foobar/bin/foobar. When foobar 3.1 is released, I can just install it under /opt/foobar-3.1 and change /opt/foobar to point to it, and links in /usr/local are automatically updated. To uninstall, just nuke the directory from /opt and remove dangling links from /usr/local. Sounds messy, but it works quite well.

            14 Jun 1999 11:35 kyusaku

            gnu stow? ech.
            except that the last time i checked, gnu stow didn't handle forced link removal nearly as nice as encap does. encap is robust enough to deal with most of the stuff gnu stow just chokes on.

            04 Apr 1999 11:56 jackcummin

            Kinda looks a lot like GNU stow...
            I haven't had a chance to look at this software, but from the description, it does exactly what GNU stow does.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.