Not everything about computers and software these days is related to packaging, but a lot is. How can users acquire software faster and run it more easily? How should software be packaged up so that we can run it wherever we like? How do we resolve the tensions between the siren song of public cloud convenience and open source freedom and flexibility?
Continue reading “Summit Book Signing: From Pots and Vats to Programs and Apps”
Have you wanted to use software collections but found packaging has kept you at bay? Tried rebuilding a package only to find it give you weird errors you’ve not seen before? In this blog post we’ll learn how to configure and use mock to build RPM packages for the Python 2.7 Software Collection. Along the way we’ll learn why we can’t use standard mock configurations, and what makes Software Collections (SCL) mock configurations different.
Continue reading “Using Mock to build Python27 Software Collections packages for RHEL6”
I like to work with open source code. But it is not always possible. Sometimes you have to deal with proprietary code. And sometimes you have to distribute it. I like to distribute software as RPM package because it allows me to put together patches, post-install scripts and configuration files. But how can I create and distribute proprietary software without violating license? The answer is “nosrc.rpm“.
For example – let assume that you want to distribute Oracle Database Server with your custom settings and patches. The oracle-server.spec file may look like this:
Continue reading “How to package proprietary software”
As Software Collections are getting popular, there are more and more people asking how they can build their own collections and/or extend collections in RHSCL. In this article, I will demonstrate how to extend python27 collection from RHSCL 1.2, adding a simple Python extension library. (Note that the same steps can be applied to the python33 collection.) I’m going to work on a RHEL 6 machine throughout this whole tutorial. I’m assuming that readers have basic knowledge of RPM building and Software Collections concept.
Continue reading “How to add packages to Python 2.7 Software Collection”
Are you fed up by enabling multiple collections, which are dependent on themselves? We were. For example, thermostat needs mongo, mongo needs v8. Enabling them looks like:
scl enable thermostat1 mongodb24 v8314 bash
There another reason to use dependent collections: when you are missing packages in a RHSCL collection and you want to add them. Obviously, we don’t plan to package everything because some packages have high maintenance costs or they are changing too fast even for two or three years of support.
Dependent collections have been available since RHSCL 1.1 and are supported by scl-utils-20131017 and higher.
Continue reading “How to Create Dependent Software Collections”
As Software Collections are getting popular, there are more and more people asking how they can build their own collections and/or extend collections in RHSCL. In this article, I will demonstrate how to extend python27 collection from RHSCL 1.1 (Beta), adding a simple Python extension library. I’m going to work on a RHEL 6 machine throughout this whole tutorial. I’m assuming that readers have basic knowledge of RPM building and Software Collections concept.
Continue reading “Building Software Collections on top of RHSCL”
Unfortunately, not every application is packaged for every distribution. What do you do when you can’t find it packaged for Red Hat Enterprise Linux? If you are like most people, you give up or attempt to install it from source. What happens when installing from source goes badly? If you are like most people, you definitely give up. How do you keep up with application improvements or, perhaps more importantly, security fixes? If you are like most people, you periodically try and check on the application status (especially when your version stops working 🙂 ), and then try and rebuild it. What is the solution to all of these issues? Proper packaging. Well, this post is meant to help you get started.
Continue reading “Getting Started with RPMs”