Date 21-May-2005 10:55:38
Topic: Software News

This coming week will see the release of Amiga Package Management System. This is an API and command line tool for AmigaOS4 users to keep their Amiga installations and packages up to date with a given package server. Currently the only package server we have is the os4depot mirrors.

Why bring this up now? Well its the weekend and a lot of you who wouldn't normally browse here will be doing so and have a chance to input or volunteer to help maintain and enhance the codebase.

You can get your packages to use APMS for not just synchronising packages but to cover install and removal itself once programmers start to adhere to the apms install/uninstall mechanism. Until then it can be used just as a way of keeping in sync with os4depot updates.

The first release covers maintaining your system in line with files on os4depot.net or any mirror. The underlying technique is below but you will be able to:

apms update
- automatically updates all packages you have installed, if a newer one is available.

apms install ( package name )
- downloads, unpacks and installs ( or prompts for user action to install if no apms.install script is found ) the package that matches ( package name ). If there is more than one package matching that name you are prompted for which one you meant.

apms remove ( package name )
- if there is an apms.uninstall script in the package itself, that is called. If not, it removes the local copy of the archive and marks it as uninstalled in the database.

apms query ( query string )
- run a complex query on APMS's local package database and even any remote data.

The power to do much more is available in the tool, including updating only security fixes, operating system components etc. But until a common install/uninstall format is put together for AmigaOS the tool is limited by our scenes packaging practices.

APMS was discussed, designed on #amigadev in 2003, 2004 and 2005 in bits and bobs. Only now have we all the tools required to finish it off. Reply here if you wish to get involved in public beta-testing of the tool.

What else remains to be done?

- Get packages to run an installer script in apms.install and apms.uninstall
- Add handlers for all unarchiving types available rather than the limited set we have.
- Get someone to do a gui tool

What should developers do?

- Just package as normal and ignore this, thats fine.
- Implement an apms.install script and an apms.uninstall script in the base directory of your archive that covers those two processes.
- Get in touch.

Credits to:
- Orgin, Nicomen, Sibbi, GuruMeditation and anyone else from #amigadev who pitched in the original discussions.

The packaging tool is Freeware, and self updating. The APMS tool source is available to anyone who downloads APMS and runs the apms tool to request the source using apms install apms_src.

This article comes from AmigaWorld - Amiga Community Portal

The URL for this story is: