Distribution

Leveraging the potential of free / open source software (FLOSS) shifts the focus from implementation to integration. When a feature is needed, instead of trying to develop it one rather looks for existing FLOSS libraries which provide it. However FLOSS libraries can be of various quality and each has its own development cycle, with independent, possibly incompatible releases.

The definition and maintenance of sets of third-party libraries upon which our applications are based is therefore one of the main value added by Argeo. We have main some clear choices about which third-party technologies we support and we ensure that they are all compatible.

Our approach is similar to Linux distributions such as Red Hat Enterprise Linux, Debian or Ubuntu which provide such consistent sets of binary software packages. We are however more focused, usually providing one implementation for a given need rather that trying to cover many.

The OSGi Java Distribution
Argeo mostly developed software with the Java technology. The FLOSS Java ecosystem is paradoxical because on the one end it is very complete and enterprise-ready, but traditionally packaging and distribution of Java software has always been quite basic. A given projects usually ships an archive with all its dependency as jar files.
Maven has brought some improvement by forcing build systems to identify and version their dependencies. But this information is often not translated in t)he deployed system, and, practically, distinct projects behave has distinct silos and are hard to combine.

OSGi is (among other things) an attempt to address this issue. Its specifications allows to clearly define versioning and dependencies, allowing exciting possibilities such as dynamic deployment, combination of various versions of the same software, etc. We have invested heavily in this technology over the last few years and all our Java systems are based on it.

We therefore maintain a consistent OSGi distribution of more than 250 bundles (standard Java binaries with OSGi metadata).

Enterprise Linux GIS
Our applications are based on Java and are therefore mostly portable across operating systems. But our preferred deployment platform is Enterprise Linux (that is Red Hat Enterprise Linux and its compatible derivative such as CentOS and Scientific Linux).

When we started to work on FLOSS GIS software, we realized that, while the field was moving very fast, our preferred platform was not well supported. So we created the Enterprise Linux GIS effort at the OSGeo Foundation.