Merge lp:~osomon/ubuntu-wallpapers/readme into lp:ubuntu-wallpapers

Proposed by Olivier Tilloy
Status: Merged
Merged at revision: 789
Proposed branch: lp:~osomon/ubuntu-wallpapers/readme
Merge into: lp:ubuntu-wallpapers
Diff against target: 89 lines (+85/-0)
1 file modified
README.md (+85/-0)
To merge this branch: bzr merge lp:~osomon/ubuntu-wallpapers/readme
Reviewer Review Type Date Requested Status
Sebastien Bacher Approve
Iain Lane Needs Fixing
Review via email: mp+405118@code.launchpad.net

Commit message

Add detailed instructions on how to add wallpapers for a new Ubuntu release.

To post a comment you must log in.
Revision history for this message
Iain Lane (laney) wrote :

Thanks Olivier. Just one suggestion inline, then please merge. This is great ♥

review: Needs Fixing
Revision history for this message
Sebastien Bacher (seb128) wrote :

Thanks for working on that Olivier, the instructions are clear to me, +1 also for merging once the comment from Laney is resolved

review: Approve
lp:~osomon/ubuntu-wallpapers/readme updated
786. By Olivier Tilloy

Clarify the changes to debian/control.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== renamed file 'README' => 'README.md'
2--- README 2007-09-19 14:48:45 +0000
3+++ README.md 2021-07-06 16:14:27 +0000
4@@ -0,0 +1,85 @@
5+# How to add wallpapers for a new Ubuntu release
6+
7+## Before starting
8+
9+It is good practice to file a bug in Launchpad to track the addition of the wallpapers for a new Ubuntu release, against the ubuntu-wallpapers source package.
10+This bug will be referenced in the changelog entry as well as in the VCS revision history.
11+See e.g. https://bugs.launchpad.net/ubuntu/+source/ubuntu-wallpapers/+bug/1921139.
12+
13+## Sources
14+
15+Wallpapers typically come from two sources:
16+ * the Canonical design team will provide the official wallpaper (and a greyscale variant)
17+ * a selection of community-provided pictures (see https://wiki.ubuntu.com/UbuntuFreeCultureShowcase for details)
18+
19+## Scripts and pre-requisites
20+
21+There are scripts in the `scripts/` directory that partially automate the task of adding wallpapers for a new Ubuntu release. Some of these scripts assume they are being run on the target release (they call `lsb_release`), so make sure you fulfill that requirement, or you will need to hand-edit generated files (alternatively export `$LSB_OS_RELEASE` to point to a file that overwrites your host system's `/usr/lib/os-release` with the values corresponding to the new release that wallpapers are being generated for − that file is installed by the `base-files` package).
22+
23+Some of these scripts assume that the community-provided wallpapers are named following this convention:
24+
25+ SUBJECT_by_AUTHOR.EXTENSION
26+
27+where SUBJECT and AUTHOR may be made up several words, either dash (-) or underscore (_) separated, and EXTENSION may either be "jpg" or "png".
28+
29+## Disclaimer
30+
31+At the time of writing, this is still largely a manual (and as such, error-prone) process. A good goal would be to automate it as much as possible.
32+
33+## Step-by-step instructions
34+
35+ 0) `export CODENAME=$(lsb_release -cs)`
36+
37+1a) get the new official wallpaper and replace the existing `warty-final-ubuntu.png` with it
38+1b) get the new greyscale official wallpaper and copy it at the root of this branch
39+1c) get the community wallpapers for the upcoming Ubuntu release (codenamed `$CODENAME`) and unpack them in a staging subfolder (e.g. named `staging/`) inside this branch
40+
41+ 2) create `$CODENAME-wallpapers.xml.in` (which references only the community wallpapers):
42+
43+ cd staging
44+ ../scripts/generate-xml.sh > ../$CODENAME-wallpapers.xml.in
45+ cd ..
46+
47+ 3) now copy the greyscale official wallpaper to the `staging/` directory
48+
49+ 4) create `contest/$CODENAME.xml` (which references both the community wallpapers and the greyscale official one):
50+
51+ cd staging
52+ ../scripts/update-background.py > ../contest/$CODENAME.xml
53+ cd ..
54+
55+ 5) create `debian/ubuntu-wallpapers-$CODENAME.install` listing all relevant files:
56+
57+ INSTALL_FILE=debian/ubuntu-wallpapers-$CODENAME.install
58+ for i in $(ls staging); do echo usr/share/backgrounds/$i >> $INSTALL_FILE; done
59+ echo usr/share/gnome-background-properties/$CODENAME-wallpapers.xml >> $INSTALL_FILE
60+ echo usr/share/backgrounds/contest/$CODENAME.xml >> $INSTALL_FILE
61+
62+ 6) move all the files from the staging folder to the root of the branch, and delete the empty folder:
63+
64+ mv staging/* ./
65+ rmdir staging
66+
67+ 7) update `po/POTFILES.in`:
68+
69+ echo $CODENAME-wallpapers.xml.in | sort -m po/POTFILES.in - > po/POTFILES.in.new
70+ mv po/POTFILES.in.new po/POTFILES.in
71+
72+ 8) update the translation template (`po/ubuntu-wallpapers.pot`):
73+
74+ cd po
75+ intltool-update -p -g ubuntu-wallpapers
76+ cd ..
77+
78+ 9) update `debian/ubuntu-wallpapers.links` to change the target of the ubuntu-default-greyscale-wallpaper.png symlink
79+
80+10) update `debian/control`:
81+ * add a new package at the end of the file named `ubuntu-wallpapers-$CODENAME`
82+ * make `ubuntu-wallpapers` depend on `ubuntu-wallpapers-$CODENAME` (and remove the dependency on the previous version)
83+ * add the previous version to the `Suggests` section
84+
85+11) update `debian/copyright` to add all the new wallpapers (community and greyscale official background) and their authors under the corresponding `License` block
86+
87+12) add a new `debian/changelog` entry referencing the Launchpad bug number by running `dch -v $(lsb_release -sr).1-0ubuntu1`
88+
89+Once this is done, don't forget to add new files to the VCS and commit using the `debian/changelog` entry and linking to the Launchpad bug (use `bzr commit --fixes="lp:NNNNNN"`).