EasierUsplashThemingSpec

NOTE: This page is part of the Ubuntu Specification process. Please check the status and details in Launchpad before editing. If the spec is Approved then you should contact the Assignee, or another knowledgeable person, before making changes.

Summary

Usplash theme managment can and should be improved

Rationale

With edgy, usplash got sexier, but theme management not. Both creating and switching themes is quite cumbersome

Use cases

  • Matthew is an Ubuntu user who has also installed kubuntu-desktop. He got tired of KDE and remved it, but the usplash theme didn't change for him.
  • Pete is an artist working on ubuntu. Creating usplash themes is a pain in the butt because of the constraints/limitations of usplash.

Scope

This would involve a few usplash patches, revamping the default artwork and creating a small switcher application.

Design

The struct usplash_theme will once again receive an update.

  • A char *name will be added for the frontends
  • Ratio will be a float instead of an enum for more flexibility

There will be an example build system for themes that has the following features

  • Take arbitrary-sized images with an arbitrary number of colors
  • Produce usplash-compatible images with no manual hassling

Simple GTK and QT applications need to be implemented for theme management

Implementation

Usplash

The ratio selection needs to be improved to cope with ratios a bit better

Theme buildsystem

The build system will involve some imagemagick trickery to make it all just work. The +map option for convert is excellent for creating consistent palettes. Some automagic scaling and resizing will help creating multi-resolution and multi-ratio themes.

Images that make up progressbars and animations will have to be copied and scaled too, to match the theme. Though duplicating these a lot makes me really worry about size.

GUI frontends

These will need to provide non-trivial implementations of usplash_put and usplash_put part so the progressbar and animation can be previewed. A GTK version already exists, see http://blogs.ubuntu-nl.org/dennis/2006/09/13/more-fun-with-usplash/ -- a QT version can be based on this implementation. The GUI frontends should probably be built from the same source package.

Code

Will be available at https://launchpad.net/people/dennis/+branch/usplash/theming

Discussion

Size is really becoming an issue here, we may want to bring back the run-length encoding.

Comment

It is not always best to simply scale pics to other aspect ratios...rounded boxes or circles end up looking funny when simply scaled. Cropping may not always be the best option either. In such cases it might be best to add a function to be able to render the pics from svg's. Proportional issues could be handled better this way.


CategorySpec

EasierUsplashThemingSpec (last edited 2008-08-06 16:30:51 by localhost)