Creating Integrated High Quality Linux Applications HOWTO

Avi Alkalay

IBM Linux Impact Team

avi@br.ibm.com
avi@unix.sh

1.95 :: 2002/03/23

Revision History
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. Friend Advice: Never use /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