Brandon Invergo

Release of GSRC 2013.01.06

I’m happy to announce the 2013.01.06 release of GSRC, the GNU Source Release Collection. GSRC is a convenient means to fetch, build and install the latest GNU software from source via a BSD Ports-like system. Installing a package is as simple as

$ make -C gnu/hello install

You can find more information and the documentation at the GSRC website:

This release is a snapshot of the state of released GNU software at this time. You can download this release at or, to download it from the nearest mirror, at

Of course, to stay up-to-date with the latest package releases in-between releases of GSRC, you may choose instead to checkout the bzr repository:

$ bzr checkout bzr:// gsrc

And keep up-to-date with the latest releases:

$ bzr update

If you encounter any problems with a build script, please let me know at


  • Changes to the GSRC system

    • GSRC may now optionally redirect build output

      All output during the build process may be redirected elsewhere via the REDIRECT_OUTPUT variable in the file ‘’.

    • GSRC messages may now optionally be colorized

      GSRC-specific messages may be (unobtrusively) colorized via the USE_COLOR variable in the file ‘’. Alternatively, message text delimiters (i.e. ‘==>’ or ‘***’ at the start of a line) may be customized in the same file.

    • GSRC now supports alternate package configurations

      Multiple configurations of a package may be available side-by-side via the GARPROFILE variable, which is appended to a package’s name. Thus, you might have a package foo-1.0 as well as a different configuration of it, foo-1.0-new-config. When you install the package, you simply select which configuration you want by passing the GARPROFILE variable.

    • Large GNU sub-projects now have their own directories

      GNOME and GNUStep packages have been moved to their own package sub-directories, for organizational reasons. Thus, to install GTK+, you now should use ‘make -C gnome/gtk install’ rather than ‘make -C gnu/gtk install’

    • User configuration of packages is now isolated from build recipes

      All packages now have a ‘’ file in addition to the usual ‘Makefile’. All user configuration of the package may be done in this new file, separating it from the build recipe, which should not need modification.

    • The new ‘gsrc’ script facilitates package discovery

      This script simplifies the process of searching for packages, printing information about them and finding their GSRC directories.

    • GSRC has three new targets to use on packages.

      • pkg-info

      This target may be used to display useful information about a package, including a description.

      • pkg-info-curt

      This target is similar to ‘pkg-info’ but in a short form which is ideal for printing lists of packages

      • help-config

      This target prints the configuration options available for a package.

  • Changes in GSRC packages

    • 70 packages have been added to GSRC since the last release.

    • 69 packages have been updated to new versions in GSRC since the last release

    • 56 build recipes that were previously broken have been fixed

    • Coverage statistics.

      Note: the totals include packages that will not be implemented in GSRC, such as retired packages, which are counted as completed. Broken builds are counted as incomplete. See TODO for more information.

      • GNU packages [352/452] [77%] (+19%)

      • GNOME packages [25/566] [4%] (+3%)

      • GNUstep packages [19/25] [76%] (+76%)

For a complete list of new and updated packages see the NEWS file in the GSRC distribution.