<!--#include virtual="/server/header.html" -->
<!-- Parent-Version: 1.84 -->
<title>Web Server Utility Sources
- GNU Project - Free Software Foundation</title>
<!--#include virtual="/server/source/po/source.translist" -->
<!--#include virtual="/server/banner.html" -->
<h2>Web Server Utility Sources</h2>

<p>(This page needs updating.  Please update it.)</p>


<p>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.</p>


<h3><a id="cvs">CVS Tree</a></h3>

<p>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
<a href="https://savannah.gnu.org/cvs/?group=www">Savannah CVS page</a>,
the “Webpages repository” information.</p>

<h3><a id="find_duplicate_links">find_duplicate_links</a></h3>
<ul>
  <li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/server/source/find_duplicate_links/?root=www">Source code</a></li>
  <li>Author: <a href="mailto:felicien@gnu.org">Félicien Pillot</a></li>
</ul>

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

<h3><a id="make_patch_addresses">make_patch_addresses</a></h3>
<ul>
  <li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/server/source/make_patch_addresses/?root=www">Source code</a></li>
  <li>Author: <a href="mailto:felicien@gnu.org">Félicien Pillot</a></li>
</ul>

<p>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.</p>

<h3><a id="linc">linc</a></h3>

<ul>
  <li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/server/source/linc/?root=www">Source code</a></li>
  <li>Author: <a href="mailto:wwj@gnu.org">Wacław Jacek</a></li>
</ul>

<p>LINC stands for “LINC Is Not Checklink”.  It scans our
web site (or any site) and makes a report of <a
href="linc/linc-report.html">broken links on our web site</a>.  It runs
weekly on fencepost from user gnun's cron.</p>


<h3><a id="planetrss">planetrss.pl</a></h3>

<ul>
  <li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/server/source/planetrss/?root=www">Source code</a></li>
  <li>Author: <a href="mailto:shailesh@gnu.org">Shailesh Ghadge</a></li>
</ul>

<p>This Perl script fetches and saves N feeds from <a
href="http://planet.gnu.org.">planet.gnu.org</a>, 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.</p>


<h3><a id="sitemap-generator">sitemap-generator</a></h3>

<ul>
  <li><a href="http://web.cvs.savannah.gnu.org/viewvc/www/server/source/sitemap-generator/?root=www">Source code</a></li>
  <li>Author: <a href="mailto:wwj@gnu.org">Wacław Jacek</a></li>
</ul>

<p>This program generates the <a href="/server/sitemap.html">sitemap of
our web site</a>, based on its directory structure on the file
system.  It runs on fencepost in user gnun's cron.</p>


<h3><a id="symlinks">symlinks</a></h3>

<ul>
  <li><a href="http://savannah.gnu.org/cgi-bin/viewcvs/www/www/symlinks/">Source code</a></li>
  <li>Author: <a href="mailto:loic@gnu.org">Loic Dachary</a></li>
  <li>Current version: 1.1</li>
</ul>

<p>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.</p>

<p>This script is no longer used on the live web site.  Instead, the
<tt>.symlinks</tt>
<code>.symlinks</code> files are transformed into RewriteRule directives.
More information about <tt>.symlinks</tt> <code>.symlinks</code> files can be found in the <a
href="/server/standards/README.webmastering.html#symlinks">Symbolic
Links</a> section of the GNU Webmaster Guidelines.</p>


<h3><a id="update-license">update-license.php</a></h3>

<ul>
  <li><a href="/server/source/update-license.php.txt">Source code</a></li>
  <li>Author: <a href="mailto:jturner@gnu.org">James Turner</a></li>
</ul>

<p>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.</p>


<h3><a id="update-recent-releases">update-recent-releases</a></h3>

<ul>
  <li><a href="/server/source/update-recent-releases">Source code</a></li>
</ul>

<p>This script generates the <a
href="/software/recent-releases.html">list of recent releases</a> (from
the <a href="https://lists.gnu.org/mailman/listinfo/info-gnu">info-gnu
archives</a>).  It runs on fencepost in user gnun's cron.</p>

</div><!-- for id="content", starts in the include above -->
<!--#include virtual="/server/footer.html" -->
<div id="footer">
<div class="unprintable">

<p>Please send general FSF & GNU inquiries to
<a href="mailto:gnu@gnu.org"><gnu@gnu.org></a>.
There are also <a href="/contact/">other ways to contact</a>
the FSF.  Broken links and other corrections or suggestions can be sent
to <a href="mailto:webmasters@gnu.org"><webmasters@gnu.org></a>.</p>

<p><!-- TRANSLATORS: Ignore the original text in this paragraph,
        replace it with the translation of these two:

        We work hard and do our best to provide accurate, good quality
        translations.  However, we are not exempt from imperfection.
        Please send your comments and general suggestions in this regard
        to <a href="mailto:web-translators@gnu.org">
        <web-translators@gnu.org></a>.</p>

        <p>For information on coordinating and submitting translations of
        our web pages, see <a
        href="/server/standards/README.translations.html">Translations
        README</a>. -->
Please see the <a
href="/server/standards/README.translations.html">Translations
README</a> for information on coordinating and submitting translations
of this article.</p>
</div>

<!-- Regarding copyright, in general, standalone pages (as opposed to
     files generated as part of manuals) on the GNU web server should
     be under CC BY-ND 4.0.  Please do NOT change or remove this
     without talking with the webmasters or licensing team first.
     Please make sure the copyright date is consistent with the
     document.  For web pages, it is ok to list just the latest year the
     document was modified, or published.

     If you wish to list earlier years, that is ok too.
     Either "2001, 2002, 2003" or "2001-2003" are ok for specifying
     years, as long as each year in the range is in fact a copyrightable
     year, i.e., a year in which the document was published (including
     being publicly visible on the web or in a revision control system).

     There is more detail about copyright years in the GNU Maintainers
     Information document, www.gnu.org/prep/maintain. -->

<p>Copyright © 2014, 2015, 2017 2017, 2019, 2020 Free Software Foundation, Inc.</p>

<p>This page is licensed under a <a rel="license"
href="http://creativecommons.org/licenses/by-nd/4.0/">Creative
Commons Attribution-NoDerivatives 4.0 International License</a>.</p>

<!--#include virtual="/server/bottom-notes.html" -->

<p class="unprintable">Updated:
<!-- timestamp start -->
$Date: 2021/06/08 08:44:44 $
<!-- timestamp end --></p>
</div>
</div>
</body>
</html>