Web Server Utility Sources

(This page needs updating. Please update it.)

To maintain the GNU project web server, we use a lot of different free software. Most of them are already available on the Internet, but we also have some software which has been developed by GNU volunteers and has never been released as GNU software, because they are somewhat specific to our needs. Still, we feel that those programs should also be made available so that others can make use of them. This page is a list of such programs.

CVS Tree

We recommend storing the scripts in the usual www CVS tree. This allows easier sharing between GNU machines that maintain a full or partial image of the www.gnu.org web. See the Savannah CVS page, the “Webpages repository” information.


This Perl script scans every file under /proprietary to check if an URL is used twice in the same page. It runs monthly on fencepost from user felicien's cron.


This script can be ran from a GNU package webroot to replace wrong broken links reporting addresses (webmasters@gnu.org) by good ones (i.e. project mailing list). Patches can then be applied by webmasters or package maintainers.


LINC stands for “LINC Is Not Checklink”. It scans our web site (or any site) and makes a report of broken links on our web site. It runs weekly on fencepost from user gnun's cron.


This Perl script fetches and saves N feeds from planet.gnu.org, using the RSS feed http://planet.gnu.org/rss20.xml, in html format. It is then included in the homepage. Each feed is truncated to M characters.


This program generates the sitemap of our web site, based on its directory structure on the file system. It runs on fencepost in user gnun's cron.


The goal is to cope with the inability of CVS to deal with symbolic files. By adding special files (".symlinks") into the CVS tree that are interpreted as specifications to build symbolic links. The "symlinks" script used to be run immediately after a "cvs update" to fix the symbolic links according to the specifications included in the ".symlinks" files.

This script is no longer used on the live web site. Instead, the .symlinks files are transformed into RewriteRule directives. More information about .symlinks files can be found in the Symbolic Links section of the GNU Webmaster Guidelines.


This script can be ran from the webroot to traverse through English html files replacing the old "Verbatim copying" text with the new CC license.


This script generates the list of recent releases (from the info-gnu archives). It runs on fencepost in user gnun's cron.