Your Forum for exchanging information about open standards, open systems, open source, products, services and architectures

St. Louis Unix Users Group logo


BASE: GNU Make Your Life Easier

by Ryan J. Price, Slalom Consulting, Clayton

GNU make is a utility that ships with nearly all operating systems that come with GNU software, and can also be installed on Windows and macOS. The make utility was originally written for a relatively specific purpose: recompile the parts of a (probably C) program that have changed since last compile, and update those parts' dependencies as well. In this regard, make is still an incredibly powerful tool for dependency management, compilation orchestration, and other things.

However, many these days may not have even heard of make, because they either write small enough programs to "not need it", or write high-level code that removes the need for compilation altogether.

But, the beauty and promise of Make isn't that it's a program for C developers, or even for developers of compiled languages (I've never written a line of compiled code in my life). Make isn't bootstrapped by the Cs; its steps are written as shell commands. So, if you can write shell commands to run your software's bits and pieces, then you can use Make! This includes high-level software like Python, Ruby, R, or even Bash itself. For example, instead of writing a verbose and ugly case block for different arguments that Bash might take (via getopts, for instance), you can just define those arguments as "targets" in Make. And perhaps the greatest benefit to Make is that those Makefiles that it uses move entirely with your codebase in version control, so these "recipes" for common commands are always with your code, on any system that Make runs on. This is not only a boon for developers of your code, but great for reducing verbosity in custom definitions in CI/CD tools like Jenkins Pipelines.

In this short talk, Ryan will walk through a sample Makefile structure that I use for Python packages, and others if time permits. This short-and-sweet PythonMakefile format is one he actually uses in production; no silly "Hello World" examples here, but it might feel like it given how concise it is. Ryan will demonstrate that the common env, build, test, and install commands that can be tedious to type out are reduced to simple make commands that take as few as four characters to run.

Read Less

MAIN: Web Sites to Docker Containers

by Chuck Doolittle

Want to have a website (or many websites), without a server?

We will start with a quick overview of Docker. Then we will show the process of converting a normal server-based web site to a docker container that can run on any OS.

We will finish with time for Q&A, with live systems available as examples.

SLUUG Sponsored meetings in the STL Metro Area

Monthly Meetings

We open the room for the general meeting about 6:00 PM. Then we start at 6:30 PM with our BASE introductory level session (usually focused on personal computing); which may include either amazing graphical packages, blinking lights, command line wonders, demonstrations of useful applications, displays of newly discovered web sites, major resolution of long standing anomalies, quantum discoveries, superb tutorials, or shifts in both time and space.

Sometime after 7:00 PM we get to a quick welcome, introductions, announcements, current events of interest, and a general CALL FOR HELP (Questions and Answers) segment.

Sometime after 7:30 PM, we may take a short break before our MAIN topic (usually focused on enterprise computing),

All of our meetings are free and open to the public. There is no individual membership fee.


Graybar Electric, Inc.
11885 Lackland Road, Maryland Heights, MO 63146
Google Maps


Wednesday April 10th, 2019

from 6:30PM till 9:00PM Central Time

Next scheduled meeting dates

Past Meetings

We have been meeting continuously since at least July 1992.

Possible Future Topics

Lists of meeting topics and presentations for SLUUG's Special Interest Groups may be on their individual web sites:

Contact SLUUG if you have a presentation you would like to have considered for selection.

This site hosted by the Saint Louis Unix Users Group