~ubuntu-branches/ubuntu/trusty/gnome-app-install/trusty

« back to all changes in this revision

Viewing changes to README

  • Committer: Bazaar Package Importer
  • Author(s): LaMont Jones
  • Date: 2005-04-06 00:50:49 UTC
  • Revision ID: james.westby@ubuntu.com-20050406005049-g54m4kbrrvf77gm2
Tags: upstream-0+20050404a
ImportĀ upstreamĀ versionĀ 0+20050404a

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Application Install Tool for Whore^WHoary Hedgehog
 
2
Ross Burton <ross@burtonini.com>
 
3
 
 
4
 
 
5
The application presents to the user a list of applications which can be
 
6
installed or removed.  These applications are either end-user applications (such
 
7
as OpenOffice, GIMP, Gaim) or server-side roles (HTTP server, FTP server).
 
8
These can be added and removed by toggling a check box.  The applications will
 
9
be shown in a tree identical to the Applications menu on the panel, and system
 
10
roles in a separate list.
 
11
 
 
12
The package information based on Freedesktop .desktop files.  This is due to all
 
13
end-user applications already having a .desktop file which can be extended with
 
14
a small amount of metadata for use by the application install tool.  These
 
15
.desktop files will be extracted from the Hoary archive automatically and a
 
16
package solely containing .desktop files and the relevant icons created.
 
17
 
 
18
For a package to be available the .desktop file must have a X-AppInstall-Package
 
19
key under the [Desktop Entry] group, which is the name of the package the
 
20
desktop file relates too.  The Name, Comment and Icon keys will be used in the
 
21
interface.
 
22
 
 
23
 
 
24
Example 1: Sound Juicer
 
25
 
 
26
[Desktop Entry]
 
27
Encoding=UTF-8
 
28
Name=Sound Juicer CD Ripper
 
29
Comment=Extract music from your CDs
 
30
Exec=sound-juicer
 
31
Icon=sound-juicer.png
 
32
StartupNotify=true
 
33
Terminal=false
 
34
Type=Application
 
35
Categories=GNOME;Application;AudioVideo;
 
36
X-AppInstall-Package=sound-juicer
 
37
 
 
38
The only change her from the upstream .desktop file is the X-AppInstall-Package
 
39
key, which marks this application as to be displayed in the interface. The
 
40
existing Name, Comment and Icon fields are displayed to the user in the
 
41
interface.
 
42
 
 
43
 
 
44
Example 2: OpenOffice.org
 
45
 
 
46
OpenOffice.org installs a number of .desktop files, none of which are suitable
 
47
for displaying in an Application Install tool as they are for particular aspects
 
48
of the suite (i.e. Writer or Impress).  In this case a new .desktop file is
 
49
added to the package, which contains the required information alongside a
 
50
Hidden=true key.  The Hidden key ensures that it won't be displayed in any
 
51
application menus, but can be picked up by the Application Install Tool.
 
52
 
 
53
[Desktop Entry]
 
54
Encoding=UTF-8
 
55
Name=OpenOffice.org
 
56
Comment=Powerful office suite
 
57
Icon=ooo.png
 
58
Type=Application
 
59
Categories=GNOME;Application;Office;
 
60
X-AppInstall-Package=openoffice.org
 
61
 
 
62
 
 
63
The menu layout is based upon the Freedesktop menu specification.  Currently
 
64
GNOME does not support this standard, but hopefully GNOMEE 2.10 will.  At the
 
65
moment the Application Install Tool includes a copy of the Applications menu
 
66
structure in the Freedesktop menu format, which can be removed if GNOME 2.10
 
67
does move to it. [note: this depends on API additions to PyXDG]
 
68
 
 
69
 
 
70
TODO: Instead of X-AppInstall-Package, use X-AppInstall-Packages which is a list
 
71
of required packages.  This will primarily used for the "Web Server" role which
 
72
would require "apache-mpm-worker" and "apache2-doc" at least.  The UI should
 
73
represent partial-installs and allow the user to fully install or remove a
 
74
partial install.  I'm not sure if this or enforcing Recommends: to be installed
 
75
is a better solution.
 
76
 
 
77
TODO: Currently the X-AppInstall-Icon key is used in preference over the Icon
 
78
key if the standard Icon is not suitable.  I'm not sure there is a solid
 
79
use-case for this.