5.  Arabization for Applications (SAIS - Applications)

Applications here are classified in the following categories, needed for the comfortable use of a desktop environment:

  1. Base Libraries: like fribidi, ICU

  2. Text user interface: consoles and shells: like mlterm, Akka

  3. Programming Languages and programming environment: support for UTF-8

  4. Graphical Desktop Environments: KDE, GNOME

A program is said to be 'adequately Arabized' if it is certified as supporting UTF-8 and locale conformance. It is said to be 'fully Arabized' if it is certified as supporting an Arabic interface. These terms refer to the levels ASL-Green and ASL-Blue below.

5.1. Arabization Standard Levels - Applications

SAIS makes use of a double terminology to indicate the level of Arabization standards. The first terminology makes use of stars, and scales applications on a one-star to five-star scale. A color-coded indicator can also be used, and should be beneficial for color-coding in tables, etc. The Arabization Standard Levels for Applications are:

5.1.1. Red (*)

An application is said to be ASL-Red if it needs Arabic support but does not have it yet. This serves as a 'null' level.

5.1.2. Orange (**)

An application is said to be ASL-Orange if it has wide character support with planned UTF-8 support, or that has UTF-8 support that is buggy, e.g. lacking Arabic shaping

5.1.3. Yellow (***)

An application that has full UTF-8 support as described in condition 1 of Software Arabization is said to be ASL-Yellow.

5.1.4. Green (****)

An application that fulfills the ASL-Yellow conditions and satisfies condition 2 of Software Arabization by supporting the Arabic locales is said to be ASL-Green or adequately Arabized in the ASL sense.

5.1.5. Blue (*****)

An application that satisfies the conditions for ASL-Green certification and, additionally, includes an Arabic UI as specified in condition 3 of Software Arabization is said to be ASL-Green or fully Arabized in the ASL sense.

5.2. Application Classification - Prerequisites

The following information are needed in application classification, both to specify the situation of the package itself and as its value for a distribution.

Name

is the name of the application/package.

Version

is the version subject to classification

Functionality

is the what the program does. All programs labeled with the same functionality can be substituted for one another without a significant loss of functionality.

Importance

is the degree of need of the program in a distro. The following choices can be made:

  1. A must

  2. Critical

  3. Important

  4. Nice to Have

  5. Of Interest

Status

is the situation of the program with respect to Arabization. Can range from ASL-Red (for a program listed for its importance but needed for Arabization) to ASL-Blue.

Comments

Any particular comments related to the Arabization status of a package or its packaging.

Packaging

is the packaging form available for this application. Examples are .rpm .deb and .tgz. More than one is possible.

5.3. Application Certification Procedure

An application is submitted by one of its developers or anybody else who can step forward as an Application Arabization Maintainer for the specific application. The Application Arabization Maintainer should be responsible for testing the application in the version submitted and later ones.

The Application Arabization Maintainer should provide the information above mentioned. In particular, he should propose a certain status/level for the package. This status is verified by a second person in the Arabeyes community before it is submitted to be included in the applications table. The importance attribute should be submitted by the Application Arabization Maintainer as a suggestion. The actual importance will be awarded by the community.

Applications which are specifically developed with Arabization in mind, such as the Arabeyes internal projects, are assumed to be maintained by their own developers. The normal testing and bug squashing for such applications is sufficient for asserting their status.

5.4. A Sample Application Table

The following is a table that serves as an example for the application. To be done: this table will be removed in favor of a separate real table in next revision

Name

Version

Status

Functionality

Importance

Comments

Packaging

mlterm

2.7.0+

***

terminal emulator

Must have

minor bugs

rpm

fribidi

0.10.4+

***

BiDi support library

Must have

Shaping missing

rpm

Duali

0.1.1

****

spelling checker

Must have

functional, UI not polished

rpm,deb

Vim

6.2+

****

text based editor

Must have

rpm

Katoob

0.3.5

****

GUI based editor

critical

rpm

KASCT fonts

1.4

*****

fonts

critical

rpm,deb

Khotot fonts

1.0

*****

fonts

critical

rpm

fvwm

2.5.7+

****

Window Manager

important

rpm,deb

ArabTex

3.x?

****

Arabic typesetter

Must have

archive(?)