Summary

A set of scripts will be written and/or changed to automate the artwork process, from cutting out the icons to building a test package and showing an overview of the changes that went in.

Please note: this spec can only be implemented by a Canonical employee. If you want to help out somewhere, it'd be better to pick another spec.

Rationale

Doing ubuntu-artwork updates is currently highly manual work and requires time and concentration. Most parts of it could be automated.

Use cases

Scope

The changes will involve

Design

The first step will be to split human-icon-theme from ubuntu-artwork.

The implementation of the update functionality will run through two phases. The following table depicts which steps are MUST goals, which will be adressed and which steps are not crucial to be automated.

Step

MUST goals

run gimp on .psd files, remove informational layer, save as .png file

NO

run strip-icons on iconprio.csv

YES

run strip-icons on whitelist.csv as well and automatically uuencode, uudecode where needed

NO

generate symlinks as specified in the CSV files

YES

rename icons appropriately

YES

get last human-icon-theme package

YES

replace old icons with spec-renamed icons

YES

run update-Makefile.am on the icon directory

YES

add missing Makefiles, change other files in the build system

YES

respect icons which are stored in a blacklist (some are edited manually)

YES

pbuild it

YES

check the debdiff of the two packages to see missing files etc

YES

go through iterations of the above

NO

Implementation

  1. Split ubuntu-artwork into:

    • human-icon-theme

    • human-wallpapers

    • human-splashscreens

    • human-theme

    • human-gdm-theme

    This will make updates smaller and easier (as the individual build systems will be less complex as a whole). ubuntu-artwork will be merely a meta package and ship default files.

  2. Write a script which will
    • make use of the existing scripts and call them in succession,
    • pay attention to a blacklist to not overwrite icon which where specifically changed (smaller sizes, etc.),
    • run the build process of the package in pbuilder,
    • show the changes between the new and old package.
  3. Write a script, which reads the information contained in the iconprio CSV files and generate symlinks where specified.
  4. Enhance the script, which currently updates Makefiles to be able to add new Makefiles where needed and change configure.ac and index.theme appropriately.

BoF agenda and discussion


CategorySpec

Spec/AutomatingArtwork (last edited 2008-08-06 16:31:38 by localhost)