Screen Shot 2015-12-08 at 15.43.44

As we approach the 17th anniversary of IBM publishing its mainframe-enabling patches to the Linux kernel on the Marist college website, it seems appropriate to look at the state of open source software ecosystem on z.

Since the “Marist Distribution”, as it came to be known, we have seen enormous commitments to the ecosystem by distributors, vendors, and the community. Between the commercial distributions of SUSE, Red Hat, and Ubuntu we have tens of thousands of packages available. The community distributions such as ClefOS, Slackware, and others have also added many thousands more.

For several years, we at Sine Nomine, have made open source packages available to the community: There is hardly a Linux on z customer who has not used SWAPGEN in their environment. In addition, we have built FOSS for our clients and ourselves and made the available from our website. There are in the order of 1,000 packages for the community to use. We even offer support for those who need it.

The list of packages available for ClefOS 6 and 7 that are also usable on RHEL may be found at:

Recently, we have built the EPEL repository for ClefOS 7 (and usasble on RHEL). This adds more than 11,000 packages to the ecosystem. We hope to make this available as soon as all our checks are completed.

Docker is also changing the landscape for Linux on z. Docker enables multi-tenancy of applications that may have differing and sometimes conflicting requirements (for example, different levels of libraries) by managing self-contained entities that are isolated from each other. More importantly, these containers are distribution agnostic: if you have docker daemon running then no matter under which z-based distribution the container was built then you can run your container any other distribution. In fact, the early Hyperledger containers we built and published were based on ClefOS but were built using a Docker environment running under Ubuntu. Talk about freedom!

The Docker ecosystem on z is continuing to expand. Here are some of the containers freely available at https://hub.docker.com/r/sinenomine:

Name Description
ade Anomaly Detection Engine
ansible An IT automation engine for provisioning, configuration management, deployment and orchestration
bacula Bacula backup and restore containers
clefos-base Base Container from which all others are built
cobol GNU COBOL development
django A high-level Python Web framework
earthquake Terminal-based Twitter Client with Streaming API support
erlang Erlang Development Environment
fabric-baseimage Hyperledger fabric base image
fabric-ccenv Hyperledger fabric C/C++ environment
fabric-javaenv Hyperledger fabric java environment
fabric-membersrvc Hyperledger member services
fabric-peer Hyperledger fabric peer
fabric-src Hyperledger fabric source
fluentd Open-Source Log Collector
golang golang 1.7.3-2 development environment
hello-nodejs Sample program to exercise nodejs
httpd Apache http server
java IBM Java JDK environment
kubernetes A tool for orchestrating and managing Docker containers
lighttpd An open-source web server optimized for speed-critical environments
mariadb MariaDB 5.5 server
mean MEAN stack – a full-stack JavaScript open-source solution
mediawiki MediaWiki is a free and open-source wiki application
memcached A general-purpose distributed memory caching system
mongodb A free and open-source cross-platform document-oriented database program
mono .NET development and runtime environment for Linux on z
nginx A free, open-source, high-performance HTTP server and reverse proxy
nodejs A open-source, cross-platform JavaScript runtime environment for developing a diverse variety of tools and applications
postgresql PostgreSQL server
puppet An open-source configuration management tool
qpid An  open-source messaging system that implements the Advanced Message Queuing Protocol
r-devel The R Project for Statistical Computing
redis Data Structure server – Redis provides access to mutable data structures via a set of commands
registry Docker registry
saltmaster Software to automate the management and configuration of any infrastructure or application at scale
solr The the popular, blazing-fast, open source enterprise search platform
spark An an open source cluster computing framework
swarm Docker cluster manager
tomcat An an open-source Java Servlet Container
ulboracms MEAN stack CMS and blog platform
wordpress A  free and open-source content management system

There are still some important FOSS packages that have not made their way to the Linux on z mainstream but the gap is narrowing by the day. Between the distributions, vendors, and the Linux on z community the amount of applications available is staggering. If there is a package you require for Linux on z then let your distributor know or ask the question in one of the many Linux communities out there. I recommend signing up to the LINUX-390 listserver as it has a large and active membership.

Editors Note: Neale Ferguson the author of the blog is on a mission to make open source available on the z Systems and LinuxONE platforms.  His organization Sine Nomine Associates punches above its weight in the Linux on z space and I suggest anyone who is interested in the blog above to follow and engage with Neale on Twitter @NealeFerguson