Designing Integrated High Quality Linux Applications

Avi Alkalay

avi at
avi at

Senior IT and Software Architect :: Linux Market Developer
IBM Linux Impact Team ::

v2.1, 2002-08-24

Revision History
Revision 2.124 Aug 2002Revised by: avi
Rewrite of the /opt /usr/local section.Cosmetics on graphical user interface and plugins sections.Fixed screens and programlistings width.
Revision 2.007 May 2002Revised by: avi
Final XML conversion. Files reorganization.
Revision 1.9.920 Apr 2002Revised by: avi
Included other document locations.
Revision 1.9814 Apr 2002Revised by: avi
Title changed from "Creating" to "Designing".
Revision 1.9709 Apr 2002Revised by: avi
Converted to XML 4.1.2, and started to use real XSLT. Spell checked the english version.
Revision 1.9623 Mar 2002Revised by: avi
Better HTML style sheets.
Revision 1.9517 Mar 2002Revised by: avi
Last chapter: One Body, Many Souls. Created appendix. Still have to translate some words here and there.
Revision 1.916 Mar 2002Revised by: avi
Added universal software table with FHS.
Revision 1.716 Mar 2002Revised by: avi
Everything is now translated except some words.
Revision 1.327 Feb 2002Revised by: avi
Translated and reviewed the most important section of the article: The /opt and /usr/local section.
Revision 1.223 Feb 2002Revised by: avi
English translation at 65%. Doing some corrections to potuguese version also.
Revision 1.117 Feb 2002Revised by: avi
Started english translation.
Revision 1.016 Feb 2002Revised by: avi
First final version of proposed skeleton.
Revision 0.9.616 Feb 2002Revised by: avi
Finished Plugin chapter.
Revision 0.9.515 Feb 2002Revised by: avi
Finished chapter about boot and subsystems.
Revision 0.9.414 Feb 2002Revised by: avi
Finished chapter describing the boot process.
Revision 0.9.308 Feb 2002Revised by: avi
Text and style updates.
Revision 0.9.207 Feb 2002Revised by: avi
Text updates.
Revision 0.906 Feb 2002Revised by: avi
First translation to DocBook.

Table of Contents
1. Introduction
2. User Friendly: Guaranteed Success
2.1. Embrace the Install-and-Use Paradigm
3. The Four Universal Parts of Any Software
3.1. Practical Examples
3.2. The Importance of Clear Separation Between Four Parts
3.3. One Body, Many Souls
4. Linux Directory Hierarchy: Oriented to the Software Parts
4.1. FHS Summary
4.2. Examples Using the FHS
4.3. Developer, Do Not Install in /opt or /usr/local !
5. Provide Architecture for Extensions and Plugins
5.1. Abstracting About Plugins
6. Allways Provide RPM Packages of Your Softwares
6.1. Software Package Modularization
7. Security: The Omnipresent Concept
8. Graphical User Interface
8.1. KDE, GNOME, Java or Motif?
8.2. Web Interface: Access from Anywhere
8.3. Wizards and Graphical Installers
9. Starting Your Software Automatically on Boot
9.1. From BIOS to Subsystems
9.2. Runlevels
9.3. The Subsystems
9.4. Turning Your Software Into a Subsystem
9.5. Packaging Your Boot Script
A. Red Hat, About the Filesystem Structure
B. About this Document