WOULDN'T IT BE NICE IF

2005–2015 Justin B Rye
(Non‐Geek Escape Route)

An approximate top ten from my mental list of Fantasy Debian Packages.  Some of these might turn up in Unstable tomorrow; others are blatantly never going to happen (which may be a good thing); and some I might one of these days get round to lashing together as Perl scripts – indeed, a good few things vanished from this prospective‐packages list into my ~/bin directory before the page could go live…


     Package: burbled
     Section: sound
     Description: daemon for adding sci-fi computer sound-effects
    

On TV, whenever someone searches a fingerprint database, processes an image, or gets a transporter lock, the computer generates meaningless tweedly-beep noises as if its video and audio drivers were interfering with one another. If your boss always seems obscurely unimpressed whenever you silently produce a screenful of vital data, try running this daemon - it adds random bells and whistles (or LED blinkenlights) whenever something graphically or computationally significant happens.

     Package: doxy
     Section: doc
     Description: docs-proxy for getting web-accessible documentation
    

There's no need for all the software repositories to be bulked out with documentation packages which then cause problems with their restrictive licensing; all that's needed is a script redirecting queries from http://localhost/cgi-bin/doxy?pkgname to example.org/pkgname or pkgname.sourcemorgue.net as appropriate (and other queries to debian.org/doc, tldp.org, or wherever). If you don't want to have to dial out before you can read the Modem-Repair-HOWTO you can also ask it to spider some or all of the sites into an offline web-proxy - even if the pages are covered in "no copying permitted" notices, they obviously don't object to local browser-caches or they wouldn't have put them on the web...

     Package: gkrellm-fvwm
     Section: x11
     Description: FvwmButtons plugin for GKrellM
    

The GNU Krell Monitors' single-process stack of plugins has already swallowed my system clock display, load bar, new-mail flag, etc., so this is all I need to get rid of the last few bits of loose desktop clutter. It swallows FVWM's buttonbar module, which can in turn be configured to handle the workspace pager, windowlist, apps menu, logout button, and so on.

     Package: info-tng
     Section: doc
     Description: replacement for GNU Info
    

At last, the "next generation" version of the texinfo documentation format, retaining all the advantages (i.e. internal cross-references) but adding an amazing new set of features:
.
 * ASCII-text storage format for improved maintainability;
 * new support for color, multifont text, and inline images;
 * improved compatibility with authoring/conversion utilities;
 * well established remote access protocol;
 * easy searching, indexing, proxying, etc.;
 * intuitive user-friendly front-ends already available.
.
That's right, it's HTML; TNG means "old hat by the mid-nineties".

     Package: kernel-discover
     Section: devel
     Description: hardware identification plugin for kernel-package
    

When you're recompiling your Linux kernel and find it wants to know whether your TLA bus is a BFG-31337 or an ID10T-4Q2, disassembling the computer to have a look at the serial numbers stamped on its innards tends to be inconvenient. What's needed is something that'll decrypt the jargon, tell you "ignore that option, it's for antiques", and generally emulate the OS-installation and X-configuration autodetectors. Its database of kernel features and bleeding-edge hardware bugs needs to be updated three times daily.

     Package: metals
     Section: utils
     Description: directory-lister with libextractor support
    

Media formats frequently allow you to attach comment tags to each file (EXIF, ID3 etc.), viewable in an appropriate browser; but the tags don't show up in an ordinary "ls" of the directory, which gets all its data from a stat call. This package provides a generic metadata-sensitive list command:
.
 metals docroot/*
 index.htm (text/html)  Welcome to my home page!
 tile.jpg  (image/jpeg) Created with The GIMP
 music.ogg (audio/ogg)  The Birdie Song - The Tweets

     Package: nethack-utf8
     Section: games
     Description: text-based/non-ASCII D&D-style adventure game
    

Nethack is a wonderfully silly, yet quite addicting, Dungeons and Dragons-style adventure game. You play the part of a fierce fighter, wizard, or any of many other classes, fighting your way down to retrieve the Amulet of Yendor for your god. This package contains a modified version of the plain console-interface for Nethack using character codes outside the usual seven-bit range and providing a specialized font so that for instance players appear not as at-signs but as little stick-figures.

     Package: screen-tabextensions
     Section: misc
     Description: tabbed browsing plugin for screen
    

An ncurses wrapper for screen, which puts tabs at the top of your terminal window so you can quickly and conveniently switch between screen sessions. Also provides menu access for the more obscure functions, such as locking, logging, and multiuser access.

     Package: syncron
     Section: admin
     Description: enhanced replacement for user crontabs
    

A mechanism allowing users who don't speak crontabese to schedule events at intervals described by plain English phrases such as "every three days", or (via hooks in run-parts directories) at triggers such as "dialout" or "xlogout". Rather than being hidden away under /var/spool its configuration is stored sensibly inside ~/.syncron.

     Package: vigilance
     Section: admin
     Description: safe editor for crucial system configfiles
    

A wrapper for handling /etc/fstab, /etc/network/interfaces, /etc/inittab, and other strictly formatted vital files in safety (just as vipw can be used for /etc/passwd - in fact vigilance can call vipw, vigr, and visudo). It refuses to save over the file on disk until the new version's syntax checks out as valid. It can also hook into a revision control system to provide more sophisticated rollback facilities. Despite the name it does not require vi.

     Package: xwindows
     Section: games
     Description: tasteful fittings for X
    

This is a toy along the lines of xpenguins, xfishtank, and xmountains, all of which draw decorative nonsense on your desktop; in this case net curtains, venetian blinds, frosted-glass effects, and so on appear obscuring your existing application windows. The package's sole reason for existing is to confuse and annoy people who think X11 (AKA the X Window System) is called "xwindows".


Hmm, that's eleven… well, I said it was approximate.  Anyway, please send any bugreports for these packages direct to the maintainer rather than filing them as “wishlist bugs” in the Debian BTS…


Tenth Anniversary Postscript:

Now that screen-tabextensions or something similar has got into Debian as byobu, here are a couple more to take its place.

     Package: lintiand
     Section: devel
     Description: runtime Debian package checker
    

Lintian dissects Debian packages and reports bugs and policy violations. It contains automated checks for many aspects of Debian policy as well as some checks for common errors. However, since it only sees the .deb, lintian can't catch policy violations that happen at runtime, like attempts to write tempfiles to the root directory.
.
This package installs a daemon that continuously monitors the behavior of installed software packages (including itself) and automatically raises the alarm if it sees an executable misbehaving. Plugins are also available to allow it to monitor the kernel, local users, or the Internet.

     Package: sysblog
     Section: admin
     Description: log to blog converter
    

The trouble with all the system logs under /var/log is that most desktop users hardly realise they exist. You could try to deal with this problem the way logcheck does, by compiling hourly reports and sending them to the admin's local mailbox, but newbies these days won't read that either. Instead sysblog solves the problem by sending its summaries of your server's log messages to social media so that they show up in your Facebook spew-page.