Free Software Supporter is a newsletter run by the FSF (Free Software Foundation) and in it they have a section announcing a few software releases from the GNU project. However, they do not seem to provide any description of the projects aside from their name and version.
I guess this is okay since Free Software Supporter readers may only be interested in particular software packages and may already know what they do. But for me, it’s just a list of random names and numbers that don’t mean much at all.
Here’s the list and a few brief sentences about them. Some of them look useful and might help us programmers avoid re-inventing the wheel!
acct-6.5.1, The GNU Accounting Utilities are used for recording information about system usage by users. This would be useful for system administrators because they can see a history of past usage by user. The preface to the manual is awesome awesome. It begins with this line:
Way back a long time ago, Thompson and Ritchie were sitting opposite one another at the commissary, sipping coffees and discussing their evolving behemoth.
ccscript-4.1.2, ccscript3-1.1.7, GNU ccScript3 seems to be useful for creating scripting languages to use with C++ applications. Their website says,
GNU ccScript is a C++ class framework for creating a virtual machine execution system for use with and as a scripting/assembler language for state-transition driven realtime systems. The most common example of this is as the core of the scripting engine found in GNU Bayonne.
I haven’t ever seen this in action but it sounds a little interesting.
coreutils-7.5, GNU Core Utilities are the standard GNU/Linux utilities. These are basically
ls, and other things like that. Obviously very useful for everyone.
Here are some utilities that I haven’t even heard about before:
- tac: Concatenate and write files in reverse
- stat: Report file or file system status
- nl: Number lines and write files
- fmt: Reformat paragraph text, more specifically, “
fmtfills and joins lines to produce output lines of (at most) a given number of characters (75 by default)”. I usually use this type of function within Emacs (
fill-paragraph) but it’s nice to know that I can format whole files like this from the command-line.
- pr: Paginate or columnate files for printing
- ptx: Produce permuted indexes
- expand: Convert tabs to space. This is possibly the most helpful utility that I haven’t heard of before! If someone’s using tabs in their C, Java or Python files, I’ll have to run
expand --initial --tabs=4to change all tabs at the beginning of the lines to 4 spaces.
freeipmi-0.7.12, GNU FreeIPMI is used for managing IPMI stuff. I have no idea what that means, so here’s the excerpt from their homepage explaining it:
The IPMI specification defines a set of interfaces for platform management and is implemented by a number vendors for system management. The features of IPMI that most users will be interested in are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL).
So I guess it’s meant for managing large amounts of computers. Handy for system administrators for sure.
gengen-1.4, GNU Gengen (it stands for GNU GENerator GENerator) is like a template generator for C/C++. It’s not like C++ templates or meta-programming, I think it’s more like Lisp’s macros. The variable names (the symbols of them if you will) can be substituted into a template. This is somewhat like the C pre-processor macros but I think it’s a bit more powerful. I can’t see myself using this though so I can’t explain its usefulness any more than that. Read this section to see how Gengen could help you.
gsl-1.13, the GNU Scientific Library contains a collection of science-related calculation functions such as those for dealing with polynomials, vectors, matrices, sorting, etc. It is easy to see how this could of use to a large number of developers.
libsigsegv-2.7, GNU libsigsegv is a “library for handling page faults in user mode. A page fault occurs when a program tries to access to a region of memory that is currently not available”. This library is useful for developers, in particular for systems developers.
libunistring-0.9.1.1, GNU libunistring is a C library for handling Unicode text and is useful for developers dealing with Unicode text. Note that this library isn’t for providing translations, that’s what GNU gettext is for.
moe-1.3, GNU Moe is a text editor with a file size of less than 500KB. It has a lot cool stuff in it even though it’s so small. According to the README, there is no learning curve. Some experience with a text editor and a look at the README and apparently you’re set to use
moe. I’m going to download it and I’ll see if it’s a good replacement for
mtools-4.0.11, Mtools is utility tool collection for dealing with the MS-DOS filesystem. It has the basic tools needed to make use of the file system, such as a list directory utility, and another one for formatting a disk. This is useful for archival purposes or when dealing with legacy machines. I’m not sure recent versions of Windows use the MS-DOS filesystem for much ;-)
reftex-4.34, RefTeX is a package for automating labeling, referencing and citing other articles. It is used with LaTeX and BibTeX. I might have to check this out the next time I’m writing a paper for college/university.
sipwitch-0.5.7, GNU SIP Witch is a SIP server. Basically, “GNU SIP Witch can be used to build secure and intercept-free telephone systems”. Again, this is useful for system administrators to know about, but isn’t very interesting for me.
vc-dwim is very useful for programmers because it keeps track of discrepencies between version control and ChangeLogs. The coolest thing is that it can commit changes to files that have been mentioned in the ChangeLog, the unmentioned files won’t be committed. This makes it very easy to keep the version control commits and ChangeLog synchronized. I know I’ve forgotten to update the ChangeLog many many times.
xboard-4.4.0, GNU XBoard is a GUI for chess. It lets you use various chess engines to play. It handles a few different variations of the game too. I may check it out, I’ve been using eboard for a bit now.
zile-2.3.10, GNU Zile (which stands for Zile is Lossy Emacs) is a small text editor modeled on Emacs. It provides the same key-bindings and some useful commands. I’ve been using it as a replacement for
vi. The size of it is less than 500KB too.