Proposal for Generic Metadata and Settings Modularization

Joel Bryan Juliano joelbryan.juliano at
Sun Oct 1 03:25:46 BST 2006

This proposal aims to:

- change the way hardcoded patches are handled.
- create a modularized packages for settings
- provide a way to truely customize ubuntu by modularization.

The current problem is, ubuntu packages contains distribution specific data
and tied up dependencies with the distribution services. A user cannot
safely remove launchpad-integration without removing the packages affected
by it. The gnome-panel package contains distro specific desktop entry and a
hardcoded patch that doesn't link to a .desktop file. These are unchangeable
features build into the gnome-panel mainstream package. Ubuntu specific logo
cannot be interchangeably revert back to upstream logo, and vice-versa. A
user cannot choose to remove rhythmbox in place of banshee without breaking
dependencies with ubuntu-meta. Those problems currently limit the choice of
a user to truely customize ubuntu according to their requirements.

Problems arises when a user tries to customize ubuntu according to their
requirements. The cause is the distribution specific information in
mainstream packages. What if all distro specific files and services where
only be restricted inside the ubuntu-meta packages.

Another proposal is to create a -generic metadata packages that contains
only the desktop environment, upstream documentations, and upstream

Here is an example. (User cases)

- Jon choose ubuntu as a primary distribution for their business firm. The
company has specific requirements in order for their business to work
properly, so he modified ubuntu, download and install ubuntu-generic meta
package that gives him the freedom to remove ubuntu-meta, so he can truely
customize the OS according to their requirements without breaking any
dependencies. Also with the aid of ubuntu-generic-template metapackage, he
customize the OS much easier.

The user must be able to customize the ubuntu distribution that gives him a
total freedom to do all sorts of things into the system.

For example, if a user choose to remove packages which were included in
ubuntu-meta, a generic metadata can be installed in place of ubuntu-meta.

The ubuntu-generic metadata package is similar to ubuntu-meta. Only it
indicate that the packages does not contain distro specific files, and use
the upstream version instead.
The ubuntu-generic metadata package can also be used as a replacement of
ubuntu-meta, so it will not report dependency problems when a package inside
ubuntu-meta is removed.

Proposals for -generic metadata.

ubuntu-artwork-generic - contains packages that gives freedom for the user
to remove ubuntu-specific artworks, and provide the upstream defaults for
those packages.

ubuntu-doc-generic - contains non distro specific documentations like
gnome2-manual, diveintopython, and mozilla default start page.

ubuntu-desktop-generic - only contains the components for the desktop to
work. Will not contain office applications, multimedia applications, and
distribution specific files.

ubuntu-live-generic - use a chosen language as default, provides freedom to
remove languages.

Modularization of settings.

Package creation of the following.

gnome-panel-help-ubuntu - will use the ubuntu-doc files that links to
"System > Help" submenu.

gnome-panel-help-generic - does not use the ubuntu-doc files but contains
link to ubuntu-doc-generic, and launchpad generic help sources page.

Gconf defaults.

The ubuntu gconf package contains already predefined defaults based on the
specifications of ubuntu. The gconf settings must be customizable without
modifying the gconf package itself.

The proposal is to define the gconf settings in seperate packages, there
will be a modularization of distro specific gconf settings and the gconf
upstream version, the proposals are,

- gconf-settings-ubuntu
- gconf-settings-generic

A user must be able to choose a settings in place of the other, and remove
the unused settings without dependency problems.


University Scholar, Open Source promoter in the Philippines. Quick and Dirty
GTK+ C programmer and a musician..

Joel Bryan Juliano
-------------- next part --------------
An HTML attachment was scrubbed...

More information about the ubuntu-devel mailing list