Maintainer tools

Overview

There are tools written specifically for OpenCSW package maintainers, to help with package creation process and assorted additional tasks.

GAR

The OpenCSW package build system. It does all the annoying package build steps1 for you. Visit http://gar.opencsw.org to learn more.

GAR is maintained by Dago.

checkpkg

Checks your package for errors. If you use GAR, your package will be automatically scanned for errors near the end of GAR run. However, since checkpkg is an independent tool, you can run it against any Solaris package.

To get checkpkg sources, look into the bin directory in GAR source code2. After checking out the source code, run mgar/gar/v2/bin/checkpkg -h to get help. In general, you only need to pass it a list of packages to analyze.

Learn more from the checkpkg page.

checkpkg is maintained by Maciej.

pkgdb

A tool to query checkpkg database. It is capable of generating a HTML report of a number of packages. It's used to generate reports on the page with experimental packages.

pkgdb is maintained by Maciej.

integrate_catalogs.py

Used to integrate packages from one catalog to another, for example from unstable to kiel. The utility queries the RESTful interface for packages and generates a shell script with curl invocations against the RESTful interface to apply changes.

the REST interface and curl command line

Try running the following:

curl -s http://buildfarm.opencsw.org/pkgdb/rest/srv4/baf68daf3b2f1bc8caffa985d6a6667d/ \
| python -m json.tool | less

This snippet makes a HTTP request to the buildfarm, fetches a bit of data in the JSON format and pretty-prints it using Python.

You can familiarize yourself with the REST endpoints on the buildfarm. You can call them to fetch various bits of information about the OpenCSW packages and package catalogs.

uWatch

uWatch is a tool which can detect upstream releases of new versions of the software package. This tool, written in python, offers several functions to get upstream version, compare upstream versions to versions from GAR build descriptions, and report version change to a central database.

Learm more about its usage from the uWatch page.

uWatch is maintained by William.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License