autopackage 0.2.6

Welcome to the 0.2.6 release of autopackage, a framework for building
distro neutral packages for Linux. This file will show you how to
install and then experiment with what we have so far, and tell you a
bit about the project. For more detailed information, see the website.

Getting Started
---------------

If you already have a previous version of autopackage installed, you
need to run the unsetup script that was in the main/ directory first.


1) Firstly, switch into the "main" directory, and run the setup script as
root:

	$ cd main
	$ su
	# ./setup
	# exit
	$

This is a simple bash script that does some things needed for
autopackage to work, for instance setting up symlinks in /usr/local to
point to wherever you unpacked autopackage to. The script will tell
you what it's going to do before it does it, and you can abort if you
want to alter stuff (but don't whinge if you play about and it breaks
at this stage ;). Hopefully we'll soon have this automatic, so when
you try to install a .package file without the tools being present
they are automatically downloaded and setup for you.

Developers for this feature would be appreciated.

3) Now cd back into the directory where you unpacked the tarball to,
you should see "foobar-1.2.2.package" : this is an autopackage built
from the foobar directory, it's provided for you so you can try it out
without having to compile foobar for yourself (we cover that in a
moment).

There are some other packages there, they are present to test dependency
resolution.

You now have a choice - you can install either as a user (in which
case the default prefix is to ~/.local) or as root in which case the
program will be accessible to all users (/usr/local). You can try
both, there's nothing stopping you. Just uninstall before trying to
reinstall.

If you don't have sudo setup and so use "su" PLEASE PLEASE make
sure that /usr/local/bin is in your path. Some systems don't have this
in the root path by default and things will break if you don't.

Note that foobar doesn't actually do anything, but it does have
several different types of file that we use for development. We're
starting with the real basics, and working up to more complex
packages.

You can change the prefix used by using the -p switch, use --help
on a package to see the available options.

OK, I'm going to assume it installed OK without errors. If it
didn't tell us what went wrong either on the mailing list or IRC.

4) Still as root, run "package verify foobar". This reruns the
dependancy checks, so if this test fails something went badly
wrong. In the future it'll be used to help automagically repair
packages if they "break".

4) As root, run "package uninstall foobar foobar-core libprefixdb".
It should uninstall all the packages OK, again, if it doesn't it's a
bug and we want to know.

5) That's it! You just installed, verified and uninstalled your first
autopackage. How does it feel? Why not try the mplayer package! A few
notes about it:

  * Uninstall mplayer first if you have it installed
  * We haven't packaged all its dependencies. So, it might not install
    without you manually resolving some stuff.
  * It's compiled against libpng.so.2, if you get a failure at the
    "Checking for libpng" stage, but you think you have it, you probably
    have libpng.so.3

6) No time for that actually, we want to show you how to make your own
.package files. Change into the foobar directory. As you can see, it's
a fairly standard build tree. Run configure at least once, this will
generate the autopackage.spec file from the template:

	 $ cd foobar
	 $ ./configure

7) Now run "makeinstaller default childtest". You should see text flowing past as the
packages are configured (with prefixdb support), and the end result will
be a couple of .package files just like the one you just ran. If you hit
problems, talk to us about it.

-----------------------------------------------------------------------

So what comes next? Well, you do at least one of the following things:

   - Join the mailing list, and take part in development
   - Tell your friends about us, and maybe they will join in
     development
   - Send us sweeties/chocolate/fizzy pop etc

If you think taking part would be cool then don't worry if you don't
have any experience, neither did we until we started and we don't mind
helping you come up to speed, so drop by in IRC and say hello.

