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: http://www.gnu.org/software/gsrc
This release is a snapshot of the state of released GNU software at this time. You can download this release at http://ftp.gnu.org/gnu/gsrc or, to download it from the nearest mirror, at http://ftpmirror.gnu.org/gsrc/
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://bzr.savannah.gnu.org/gsrc/trunk/ 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 email@example.com.
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 ‘gar.conf.mk’.
GSRC messages may now optionally be colorized
GSRC-specific messages may be (unobtrusively) colorized via the USE_COLOR variable in the file ‘gar.conf.mk’. 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 ‘config.mk’ 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.
This target may be used to display useful information about a package, including a description.
This target is similar to ‘pkg-info’ but in a short form which is ideal for printing lists of packages
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
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.