A Standard for Application Starters

Mr. Anastacio demonstrates how to write an aplication starter in a standard format.
The File Name and Location

In order for programs to know where to look for this file, it must have a standard name and location. The name is .apps and the location is found in this way. First, the home directory is searched so that different users can have different configurations. Next, the system directory /usr/local is searched. This is the default configuration for all users, and can be managed by the system administrator.

QStart

Most of my experience in GUI programming has been with Motif, Xforms and TclTk. To write Qstart, I chose to use QT because it is available for many platforms and is a powerful toolkit. Also, by choosing QT, I got to learn something new.

QStart reads the .apps file from the standard location. The icon of the main menu is displayed on-screen at the position indicated by the reserved word “Position” as a button. When you press this button with the left mouse button, the applications pop-up menu will appear and the list is shown. (See Figure 1.) Pressing the right mouse button pops up a configuration menu. This menu has the options Quit and Restart. Quit does just that; Restart runs the QStart program (have it in your path) and then quits. These are useful options when you make changes to the .apps file; calling restart automatically updates the applications list.

Figure 1. Applications Menu

QStart defines the following reserved word: Position x;y. This uses x,y as the position on the screen for the button which pops up the menu.

Qstart can be found in the archive file http://w3.ualg.pt/~ranasta/starter/qstart/qstart-1.0.tgz. This includes both binaries and source. Anyone interested is encouraged to use this code to build better starters.

The Future

Here are some points to think about for the future:

  • A stable format for this file

  • New starters built using this format—prettier, more efficient, etc.

  • Installation programs which automatically add entries for the installed components

  • Creation of a set of routines to facilitate the installation programs finding, changing, adding and deleting entries in the file

  • Support of this format in existing window managers

The future is unknown, but we can shape it or at least give it a try.

Rui Anastácio is currently teaching mathematics and computer science at Escola Superior de Tecnologia—Universidade do Algarve and uses Linux for part of his work. His free time is spent in sports such as tennis, table tennis, bicycling, jogging, kung fu, swimming and others. He also likes good books, music, photography, traveling and programming. He can be reached via e-mail at ranasta@ualg.pt.

______________________

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix