## Software Packages on SDF by Category

This page is intended to present the many, many software packages & programs currently installed on SDF, sorted into categories for ease of reference. New users can refer to this file when trying to find programs, and even long-time SDFers can possibly discover something new here.

Note that this list is not expected to contain every single package currently installed. For a complete list of packages on SDF, see here. For a complete list of software that could be installed see here. Software requests are made by making a post on the 'bboard' <REQUESTS> board.

Programs marked "ARPA", "MetaARPA", "DBA", or similar can only be run by users with the specified membership level.

Note: If you are planning on adding to this file, you are advised to follow the recommendations below.

#### Text Editors

- `ce`
- `ed` — the standard text editor
- `ee`
- `emacs`
- `ex`
- `hexedit`
- `jed`
- `joe`
- `jove`
- `mined`
- `nano`
- `ne` — Cambridge text editor
- `nvi`
- `pico`
- `uemacs`
- `ve`
- `vi`
- `vile`
- `vim` — Vi IMproved
- `zile`

#### Binary File Editors

- `beav`
- `bvi`
- `hexedit`
- `id3`
- `id3ed`
- `id3v2`
- `mp3asm`

#### E-mail Clients

- `alpine`
- `elm`
- `mail`
- `mailto`
- `mailx`
- `mm`
- `mush`
- `mutt`
- `nmh`
- `pine`
- `rmail`
- `xmh`

#### Mail-Processing & Other Mail-Related Programs

- `biff` — notifies you when new mail arrives
- `fetchmail` — fetch mail from a remote server
- `formail`
- `frm`, `nfrm` — list `From:` and `Subject:` of selected messages in mailbox or folder
- `from`
- `getmail`
- `imapfilter`
- `mailstat`
- `mdfrm` — parses Maildir files
- `metamail`
- `metasend`
- `mhn`
- `procmail`
- `sendfiles`
- `splitmail`
- `ssmtp`

#### Shells

- `bash`
- `csh`
- `ksh`
- `ksh93`
- `mudsh` — "M.U.D. game-like shell"
- `osh` — a port of the Sixth Edition Thompson shell
- `pdksh`
- `rc`
- `sh`
- `tcsh`
- `zsh`

#### Filesystem Utilities

- `basename`
- `chflags`
- `chgrp`
- `chmod`
- `colorls` — like `ls`, but with a `-G` option that enables colorized output
- `cp` — copy files
- `df`
- `dirname`
- `du`
- `file` — determine the type of a file
- `ln`
- `ls` — list the contents of a directory
- `mkdir` — create a directory
- `mv` — move/rename a file
- `quota`
- `readlink`
- `rm` — delete files
- `rmdir` — delete empty directories
- `stat`
- `touch`

#### File Processing & Filtering

- `awk`
- `cat` — output the contents of a file
- `cmp` — display differences between two files byte by byte
- `colrm`
- `column`
- `comm` — display line common to two files
- `cut`
- `dd`
- `diff` — display differences between two files line by line
- `diff3` — display differences between three files line by line
- `dos2unix` — convert CRLF line endings to LF
- `expand`
- `fmt`
- `fold`
- `grep` — search files for lines matching a pattern
- `head` — print the first few lines of a file
- `hexdump`
- `indent`
- `join`
- `look`
- `mawk`
- `merge`
- `nl` — number lines
- `od`
- `par`
- `paste`
- `patch` — apply the output of a `diff` command to a file
- `pr` — format text files for printing
- `rev`
- `sdiff`
- `sed`
- `sort` — sort lines
- `split` — split a file into pieces
- `states`
- `tabs`
- `tail` — print the last few lines of a file
- `tidy`
- `tr`
- `uniq`
- `unix2dos` — convert LF line endings to CRLF
- `vis`
- `wc` — count the number of bytes, characters, words, and/or lines in a file
- `xxd`

#### Web Browsers

- `dillo` — only available on the NetBSD 5.0 hosts
- `elinks`
- `links`
- `lynx`
- `w3m`

#### Newsreaders

- `Pnews` (ARPA)
- `nn` (ARPA)
- `pine` (ARPA)
- `rn` (ARPA)
- `slrn` (ARPA)
- `tin` (ARPA)
- `trn` (ARPA)

#### File Transfer & Retrieval Programs

- `curl`
- `ftp` (ARPA)
- `gopher`
- `kermit` (ARPA)
- `ncftpget` (ARPA)
- `rcp`
- `rsync` (MetaARPA)
- `scp` — copy files between machines using SSH (ARPA)
- `sftp` — secure file transfer protocol (ARPA)
- `snarf` (ARPA)
- `sz, rz, sb, rb, sx, rx`
- `tftp` (ARPA)
- `unison` (MetaARPA)
- `uucp`
- `wget` (ARPA)

#### Network Utilities

- `6tunnel` — tunnel IPv6 connections over IPv4
- `cidr`
- `cu`
- `dig`
- `geoip`
- `host` — get the IP address for a domain name or vice versa
- `jwhois`
- `ldapsearch`
- `netstat`
- `nmap`
- `nslookup`
- `ping`
- `ruptime`
- `sipcalc`
- `traceroute` — follow the path packets take to a remote host
- `uux`
- `whois`
- `yuptime`
- `yusers`
- `ywho`

#### Remote Networking

- `dict` — DICT protocol client
- `rlogin` (ARPA)
- `rsh`
- `ssh` (ARPA)
- `telnet` (ARPA)
- `tn3270`

#### Chat-System Clients

- `bitchx` (ARPA)
- `bsflite` — AIM client (ARPA)
- `centerim` (ARPA)
- `climm` — ICQ client (ARPA)
- `epic` — IRC client (ARPA)
- `finch` — IRC client; only available on the NetBSD 5.0 hosts (ARPA)
- `irssi` — IRC client (MetaARPA)
- `naim` — AIM client (ARPA)
- `ninja` (ARPA)
- `scrollz` — IRC client (ARPA)
- `sic` (ARPA)
- `silc` (ARPA)
- `tac` (ARPA)
- `ttytter` — terminal-based Twitter client (ARPA)
- `xaric` — IRC client (ARPA)
- `ysm` — ICQ client (ARPA)

#### Inter-user Communication Software

- `mesg`
- `talk`
- `wall`
- `write`
- `ytalk`

#### User Information

- `finger`
- `groups`
- `id`
- `logname`
- `whoami`

#### System Information

- `date`
- `domainname`
- `hostname`
- `machine`
- `uname`
- `uptime`
- `users`

#### Process Information & Control

- `env`
- `kill`
- `killall`
- `lsof`
- `nice`
- `nohup`
- `pkill`
- `printenv`
- `ps`
- `pstree` — display a tree of processes
- `time` — time how long it takes a program to run
- `top` (MetaARPA)
- `w`
- `watch` — watch a program with update intervals
- `who`

#### Compilers

- `c++` (ARPA)
- `c89` (wrapper around `cc`)
- `cc` (ARPA)
- `clisp` (MetaARPA)
- `distcc`
- `distccd`
- `g++` — GNU C++ compiler (ARPA)
- `g77`
- `gcc` — GNU C compiler (ARPA)
- `jikes` (MetaARPA)
- `nasm` (MetaARPA)

#### Programming Language Interpreters & Virtual Machines

- `cint` — C interpreter
- `hugs` — Haskell interpreter
- `java` (MetaARPA)
- `kaffe` (MetaARPA)
- `lisp` (MetaARPA; wrapper around `uxlisp`)
- `perl` — pathologically eclectic rubbish lister practical extraction & report language (ARPA)
- `php` — PHP: hypertext preprocessor (ARPA)
- `python` (ARPA)
- `ruby` (ARPA)

#### Version Control Systems

- `cvs`
- `git` (MetaARPA)
- `hg`
- `rcs`
- `sccs`
- `svn` (MetaARPA)

#### Miscellaneous Software Development Programs

- `ant` (MetaARPA)
- `as` (ARPA)
- `asp2php`
- `autoconf`
- `automake`
- `bison` — GNU yacc
- `chicken`
- `cim`
- `cook`
- `cpp` — C preprocessor
- `cscope`
- `flex` — GNU lex (ARPA)
- `gcov`
- `gdb` — GNU debugger
- `gmake`
- `gprof`
- `ld` (ARPA)
- `lex` (ARPA)
- `lint`
- `m4`
- `make` (ARPA)
- `mkdep`
- `phpize`
- `yacc` — yet another compiler compiler (ARPA)

#### Encryption & Cryptography Programs

- `cksum`
- `gpg`
- `md5`
- `openssl`
- `pgp5`
- `sha1`
- `sum`

#### File Format Converters (non-image)

- `2vcard`
- `antiword`
- `asciidoc`
- `catdoc`
- `hevea`
- `latex2rtf`
- `makeinfo`
- `pdftohtml`
- `pdftotext`
- `richtext`
- `rtf2html`
- `rtf2LaTeX`
- `rtf2text`
- `rtf2troff`
- `texi2dvi`
- `troffcvt`
- `xlhtml`

#### File Archival & Compression Utilities

- `aetar`
- `ar`
- `bsdtar`
- `bzip2`
- `compress`
- `cpio`
- `freeze`
- `gtar`
- `gzip`
- `lzop`
- `mousetar`
- `pax`
- `shar`
- `tar`
- `zip`
- `znew`
- `zoo`

#### File Encoding

- `caesar`
- `iconv`
- `mimencode`
- `rot13`
- `uuencode`
- `yencode`

#### File Managers

- `mc`
- `vfu`
- `vifm`

#### Typesetting

- Manpages & *roff
  - `colcrt`
  - `eqn`
  - `groff`
  - `groffer`
  - `grog`
  - `grotty`
  - `nroff`
  - `pic`
  - `refer`
  - `tbl`
  - `troff`
  - `vgrind`
- PostScript & PDFs
  - `abcm2ps` — "Converts ABC to music sheet in PostScript format"
  - `diffpp`
  - `enscript`
  - `gs` (`ps2pdf`, `ps2ascii`, `pdf2ps`, `epstopdf`, etc.)
  - `ps2eps`
  - `psnup`
  - `yup`
- TeX, LaTeX, etc.
  - `dvipdf`
  - `dvips`
  - `etex`
  - `latex`
  - `lgrind`
  - `mf`
  - `mktexmf`
  - `mktexpk`
  - `mpost`
  - `pdfetex`
  - `pslatex`
  - `tex`

#### XML Processing Programs

- `xmllint`
- `xmlto`
- `xsltproc`

#### Text File Pagers

- `less`
- `more`
- `most`
- `pg`

#### Games

- `adv770`
- `animal` — the computer tries to guess what animal you're thinking of
- `atc` — air traffic controller game
- `backgammon` — the game of backgammon; play against the computer or a friend
- `battlestar` — "a tropical [text] adventure game"
- `bluemoon` — one of many solitaire card games
- `boggle`
- `c4` — Connect Four
- `canfield` — the solitaire card game canfield
- `cribbage` — the card game cribbage (played against the computer)
- `dinkum` — an Australian text-adventure game
- `dopewars`
- `dungeon`
- `fish` — Go Fish
- `gnuchess4`
- `hack`
- `knight` — Knight's Tour — move the knight to visit every square on the board
- `larn` — "exploring the caverns of Larn"
- `mdg`
- `monop` — Monopoly
- `moon-buggy`
- `moria`
- `motti`
- `nethack`
- `netris` — "A free networked version of T*tris"
- `nobs` — cribbage game
- `phantasia`
- `robots`
- `robots2`
- `rogue`
- `saa` — play the solitaire card game "streets and alleys"
- `ski` — "an unusual skiing simulation game"
- `snake`
- `sokoban`
- `tetris`
- `thxmoo`
- `tttt` — 4×4 Tic-Tac-Toe with wraparound edges
- `wand`
- `worm`
- `wump` — Hunt the Wumpus
- `zombies`

#### Diversions

(Things otherwise classified as games but without a goal or in which the user doesn't really do anything)

- `anagram` — search the dictionary for anagrams of a word
- `arithmetic` — quiz on simple arithmetic
- `autopun` — "Phonetically Reparse an English Phrase"
- `aybabtu` — ASCII recreation of the ZeroWing opening sequence
- `banner`
- `bcd`
- `cookie`
- `countmail` — a program for laughing at the size of your inbox
- `cowsay` — an ASCII cow says stuff
- `crypto` — "a program to generate and/or solve cryptograms"
- `cursive`
- `dive`
- `factor`
- `figlet`
- `fortune`
- `macarena` — the horror... the horror...
- `macarena1` — the horror revisited
- `morse`
- `number` — convert Arabic numerals to English
- `phoon` — shows the phase of the moon with an ASCII image
- `pig` — anslatetray exttay intoway Igpay Atinlay
- `pom` — display the phase of the moon
- `ppt`
- `primes`
- `quiz` — "random knowledge tests"
- `rain` — animated ASCII raindrops on a terminal
- `sonnet`
- `suicide`
- `suicide1`
- `suicide2`
- `suicide3`
- `wargames`
- `worms` — animate worms on a terminal
- `wtf`

#### Game Interpreters & Clients

- `frotz`
- `tf`

#### Mathematical & Statistical Programs

- `bc`
- `dc`
- `gnuplot`
- `mathomatic`

#### Image Creation, Conversion, & Manipulation

- ImageMagick (`animate`, `compare`, `composite`, `conjure`, `convert`, `display`, `identify`, `import`, `mogrify`, `montage`, `stream`)
- `compface`
- `gif2png`, `web2png` — convert GIFs to PNGs
- `jhead` — digital camera JPEG exif header manipulation tool
- `netpbm`
- `povray`

#### Spellcheckers

- `enchant`
- `hunspell`
- `ispell`

#### Productivity & Reminder Software

- `calendar`
- `leave`
- `remind`
- `todo`

#### X11 Programs

(MetaARPA membership required)

- `bitmap`
- `ico`
- `imake`
- `luit`
- `mwm`
- `resize`
- `startx`
- `twm`
- `xcalc`
- `xclock`
- `xeyes`
- `xgamma`
- `xlsfonts`
- `xman`
- `xmh`
- `xsnow`
- `xterm`

#### Database Programs

- `mysql` (DBA)
- `psql` (DBA)
- `sqlite` (DBA)
- `sqlite3` (DBA)

#### Feed Readers

- `r2e`
- `snownews` (ARPA)

#### Terminal Management Programs

- `clear` — clear the screen
- `lock` — reserve a terminal
- `stty` — set various options for the current terminal
- `tput`
- `tset`
- `tty` — give the name of your terminal

#### Information & Help

- `apropos` — search for programs by keywords in documentation
- `ascii`
- `info`
- `man` — view the manual page for a command
- `pinfo` — like `info`, but better
- `vilearn`
- `vimtutor`
- `whatis` — get a brief description of a command

#### Finding Files & Programs

- `find` — search a directory tree for files that match given criteria (MetaARPA)
- `locate` — search a database of files for ones with the given name
- `whereis`
- `which` — locate a program in your PATH

#### Guidelines for Maintaining This File

- Only programs that are located in the default users' PATH should be listed here; i.e., user-written software in `/sys/sdf/bin` should be left out.
- Custom commands specific to SDF should be left out. There is already a list of them here.
- Make sure that a program is currently installed by seeing whether it exists in the PATH (e.g., with "`command -v program`" or "`finbin program`"). There are many programs that don't have manual pages, and in some cases there may be manual pages left behind from old programs that were uninstalled.
- While you don't have to, it would be nice if you included a brief description of what each command does along with a link to its official project page (if any).
- Be sure to list membership requirements for programs that only ARPA or MetaARPA users can run.
- Try to only list programs that fall into a specific category. You may add a new category if you feel one is needed, but only if you can find more than one program that fits into the new category (three or four programs seems like a good minimum, but we won't force you to follow this rule).
- If you don't know what a program does (at least not well enough to place it into a category), don't add it.
- If several closely-related programs come together as part of the same package (e.g., `strfile` and `unstr` with `fortune`, or all of the GhostScript programs), only give the name of the main program.
- If a program currently just doesn't work (e.g., `hnb`), don't list it here.

    $Id: software.html,v 1.16 2012/01/25 21:49:32 smj Exp $