The Advanced Bash Scripting Guide is both a reference and a tutorial on shell scripting. This comprehensive book, the equivalent of 1,000+ print pages, covers almost every aspect of shell scripting. It contains 382 profusely commented illustrative examples, a number of tables, and a cross-linked index/glossary. Not just a shell scripting tutorial, this book also provides an introduction to basic programming techniques, such as sorting and recursion. Included scripts are the Game of Life, a Perquackey variant, a Morse code trainer, and an implementation of the Gronsfeld Cipher. This book is suited for both individual study and classroom use. It covers Bash, up to and including version 4.2. Note that users of miniaturized single-board computers running Linux, such as the Raspberry Pi and the Beagle Bone, would find this Guide useful for learning and running Bash scripts to explore and expand the capabilities of these small, but powerful machines.
cdrtools (formerly cdrecord) creates home-burned CDs/DVDs with a CDR/CDRW/DVD/BluRay recorder. It works as a burn engine for several applications. It supports CD/DVD/BD recorders from many different vendors; all SCSI-3/mmc- and ATAPI/mmc-compliant drives should also work. Supported features include IDE/ATAPI, parallel port, and SCSI drives; audio CDs, data CDs, and mixed CDs; full multi-session support; CD-RWs, DVD-R/-RW, DVD+R/+RW, BD-R/BD-RE; and TAO, DAO, RAW, and human-readable error messages. cdrtools includes remote SCSI support and can access local or remote CD/DVD/BD writers.
For users on Linux and Unix, KDE offers a full suite of user workspace applications which allow interaction with these operating systems in a modern, graphical user interface. This includes Plasma Desktop, KDE's innovative and powerful desktop interface. Other workspace applications are included to aid with system configuration, running programs, or interacting with hardware devices. While the fully integrated KDE Workspaces are only available on Linux and Unix, some of these features are available on other platforms. In addition to the workspace, KDE produces a number of key applications such as the Konqueror Web browser, Dolphin file manager, and Kontact, the comprehensive personal information management suite. The list of applications includes many others, including those for education, multimedia, office productivity, networking, games, and much more. Most applications are available on all platforms supported by the KDE Development. KDE also brings to the forefront many innovations for application developers. An entire infrastructure has been designed and implemented to help programmers create robust and comprehensive applications in the most efficient manner, eliminating the complexity and tediousness of creating highly functional applications.
GnuTLS is a secure communications library implementing the SSL, TLS, and DTLS protocols and technologies around them. It provides a simple C language application programming interface (API) to access the secure communications protocols, as well as APIs to parse and write X.509, PKCS #12, OpenPGP, and other required structures. It is intended to be portable and efficient with a focus on security and interoperability.
album is a free HTML/XHTML photo album and gallery generator that supports themes/skins. You can choose different themes or write your own to get different layouts and styles. It creates all your thumbnails (including directory thumbnails) and descends into directories so you can organize your photos. See the home page for more examples. album is also multi-lingual, with many languages being added all the time. N.B.: The purchase link is provided for donations; the software does not cost anything.
CUPS is a standards-based printing system for Mac OS X and other Unix-like operating systems. It provides the System V and Berkeley command line interfaces, and uses the Internet Printing Protocol ("IPP") as the basis for managing print jobs and queues. The Line Printer Daemon (LPD) Server Message Block (SMB), and AppSocket (a.k.a. JetDirect) protocols are also supported with reduced functionality. CUPS adds network printer browsing and PostScript Printer Description ("PPD") based printing options to support real world printing.
GTK, which stands for the Gimp ToolKit, is a library for creating graphical user interfaces. It is designed to be small and efficient, but still flexible enough to allow the programmer freedom in the interfaces created. GTK provides some unique features over standard widget libraries.