[Mageia-dev] Packaging help for GDM+GNOME Mageia background (long)
Olav Vitters
olav at vitters.nl
Sun Feb 19 13:13:44 CET 2012
I'm looking to theme GDM+GNOME with:
1: changing the default background
2: putting a Mageia logo above the GDM userlist
https://bugs.mageia.org/show_bug.cgi?id=4419
This can be done by (1 and 2 match up with above):
1a. Making an XML file for the default Mageia background and placing that
into /usr/share/gnome-background-properties
XML such as:
http://git.gnome.org/browse/gnome-backgrounds/tree/backgrounds/gnome-backgrounds.xml.in.in
Note: this allows translation! Just going to call it Mageia and not
setup translation (due to simple reason that I do not know how).
1b. Creating an gschema.override file to change the default background.
gschema.override such as:
https://build.opensuse.org/package/view_file?file=glib2-branding.gschema.override.in&package=glib2-branding-openSUSE&project=openSUSE%3AFactory&rev=e64e8406fad55bc7ec175dfcbe3d5c47
This needs to be compiled by glib-compile-schemas. I've ensured the
existing filetrigger also works for '.override' files as of
glib2.0-2.31.16-2.mga2
1c. Patching gnome-control-center to assume the default background
within /usr/share/gnome-background-properties is specified in
"mageia.xml" if it exists, else, "adwaita.xml".
Note: this is a hack, but unfortunately the default is not in
gsettings, so cannot nicely override.
2a. Creating an gschema.override file to the Mageia logo (as SVG):
http://pkgs.fedoraproject.org/gitweb/?p=gdm.git;a=blob;f=org.gnome.login-screen.gschema.override;hb=HEAD
Now, IMO, this should be done in the Mageia theme package. This so:
- If you don't want these backgrounds, you can just remove them
- If Mageia wants different backgrounds for Live cd / DVD / special
release then it is just a matter of packaging them
- Don't have to put a Require: on some Mageia theme in
gdm/gnome-control-center, etc.
However, due to 1c, the background within the theme MUST have a file
called /usr/share/gnome-background-properties/mageia.xml. So the themes
will conflict with eachother. At the moment, it seems there only is one
theme package called mageia-theme-Default. I'm guessing it is ok if the
themes conflict, otherwise you do not know which one should give the
background.
To recap, I need to put the following files in some package:
- /usr/share/gnome-background-properties/mageia.xml
=> mageia-theme-Default ? who owns the directory then?
- http://www.mageia.org/g/media/logo/mageia-2011.svg
=> mageia-theme-Default or desktop-common-data ?
- /usr/share/glib-2.0/schemas/mageia-theme-Default.override
=> mageia-theme-Default and depend on glib2.0-common?
- (and patch gnome-control-center)
=> not sure if I can :P
Now, I know which files I need to package, but I have trouble with in
which package to put them without creating incorrect Requires.
If I package /usr/share/gnome-background-properties/mageia.xml, should I
depend on gnome-control-center (as the directory is part of
gnome-control-center), or not? Can I ignore this? Ignoring this would
allow me to just put it in mageia-theme-Default
For /usr/share/glib-2.0/schemas/mageia-theme-Default.override,
glib-compile-schemas needs to run. Should I depend on glib for the file
trigger. That seems a bit much for mageia-theme-Default. How to solve? I
noticed mageia-theme-kde-background, but that just gives one background.
It also doesn't have any dependencies on KDE, which seems a bit odd.
Note: I also see
/usr/share/gnome-background-properties/gnome-default.xml; it is NOT
used.
--
Regards,
Olav
More information about the Mageia-dev
mailing list