AutomatingArtwork

Differences between revisions 10 and 11
Revision 10 as of 2006-06-22 16:28:22
Size: 4680
Editor: ALagny-109-1-9-136
Comment:
Revision 11 as of 2006-06-22 16:33:32
Size: 4679
Editor: ALagny-109-1-9-136
Comment:
Deletions are marked like this. Additions are marked like this.
Line 38: Line 38:
|| run strip-icons iconprio/iconprio.csv on them || YES || ||
|| run strip-icons on whitelist.csv as well and automatically uuencode, uudecode || || YES ||
|| run strip-icons on iconprio.csv || YES || ||
|| run strip-icons on whitelist.csv as well and automatically uuencode, uudecode where needed || || YES ||

Summary

A set of scripts will be written and/or changed to automate the 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 currently is highly manual work and requires time and concentration. Most parts of it could be automated.

Use cases

Icon designer Dave worked hard to improve a batch of icons and sends the master sheets to his Ubuntu contact. It only takes a little while until he can see all the icons in action.

Package maintainer Daniel is close to a deadline and needs to update the artwork package. He does not need to do somersaults to get all the changes in.

Scope

The changes will involve

  • splitting of the ubuntu-artwork package,

  • changes in the existing scripts that rename the icons that were cut out and update the build system. Some new scripts will have to be written to do additional tasks in updating the build system, for creating symlinks and visualizing changes from the old to the new artwork package.

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 to be automated and which maybe done later.

Step

Necessary

May be deferred

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

YES

run strip-icons on iconprio.csv

YES

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

YES

generate symlinks as specified in the CSV files

YES

run icon-spec-rename on them

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

(sanity check: this only updates Makefile.am's, doesn't generate them - while it sounds easy, there are other things to take into consideration as well: configure.in needs adding of that Makefile, index.theme must get a new stanza for that change)

some sheets were missing icons they had before (remove all of them? and just replace with what we have to date?)

YES

some icons had to be edited manually (could be done via blacklist - but that has to be checked as well)

YES

we had chosen a wrong name (ok, needs to be fixed in the .csv files, but I noted it mostly during this stage)

YES

pbuild it

YES

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

YES

go through iterations of the above

YES

Implementation

  1. The first step will be to 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. The second step will be to 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. The third step of the process will be to write a script, which reads the information contained in the iconprio CSV files and generate symlinks where specified.
  4. The fourth step involves enhancing the update-Makefile.am script to be able to add new Makefiles where needed and change configure.ac and index.theme appropriately (this might justify to rename the script).

BoF agenda and discussion

  • Is modularization of icons also considered? I mean many icons are based on or variations of say folders or disks. So when the folder icon gets changed, do all the variations (folder-new, folder-home, ...) also have to be changed?
    • DanielHolbach: No, the spec concerns only the process of producing the ubuntu-artwork package from said icon master sheets.


CategorySpec

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