New OS X menu bar icon for server.
[dcpomatic.git] / graphics / update
1 #!/bin/bash
2 #
3 # Update generated stuff in graphics/ from the source files.
4 #
5 # It would be nice to do this with waf but:
6 # a) getting the wscript right is a complete pain in the arse
7 # b) running Inkscape from the command line on OS X is a complete pain in the arse
8
9 pwd=`pwd`
10 if [ `basename $pwd` != "graphics" ]; then
11   echo "$0: run within graphics/"
12   exit 1
13 fi
14
15 if [ `uname -s` == "Darwin" ]; then
16     # Convert OS X icons using OS X-only iconutil
17     for p in dcpomatic2 dcpomatic2_kdm dcpomatic2_server dcpomatic2_batch; do
18         iconutil --convert icns --output osx/$p.icns osx/$p.iconset
19     done
20 else
21     INKSCAPE="inkscape -z -C -e"
22
23     # OS X application icons
24     mkdir -p osx
25     for r in 16 32 128 256 512; do
26         for p in dcpomatic2; do
27             mkdir -p osx/$p.iconset
28             convert src/dcpomatic.png -resize $rx$r osx/$p.iconset/icon_${r}x${r}.png
29             convert src/dcpomatic.png -resize $rx$r osx/$p.iconset/icon_${r}x${r}@2x.png
30         done
31         for p in dcpomatic2_kdm dcpomatic2_server dcpomatic2_batch; do
32             mkdir -p osx/$p.iconset
33             $INKSCAPE osx/$p.iconset/icon_${r}x${r}.png -w $r -h $r src/$p.svg
34             $INKSCAPE osx/$p.iconset/icon_${r}x${r}@2x.png -w $r -h $r src/$p.svg
35         done
36     done
37
38     # Linux application icons
39     mkdir -p linux
40     for r in 16 22 32 48 64 128 256 512; do
41         mkdir -p linux/$r
42         convert src/dcpomatic.png -resize $rx$r linux/$r/dcpomatic2.png
43         for p in dcpomatic2_kdm dcpomatic2_server dcpomatic2_batch; do
44             $INKSCAPE linux/$r/$p.png src/$p.svg -w $r -h $r
45         done
46     done
47
48     # Windows application icons
49     mkdir -p windows
50     for p in dcpomatic2 dcpomatic2_kdm dcpomatic2_server dcpomatic2_batch; do
51         icotool -c -o windows/$p.ico linux/16/$p.png linux/32/$p.png linux/48/$p.png linux/64/$p.png linux/128/$p.png
52     done
53     convert src/dcpomatic.png -resize 400x400 windows/dcpomatic.bmp
54
55     # OS X preferences icons
56     # servers.png does not have an SVG version
57     mkdir -p osx/preferences
58     for i in colour_conversions defaults kdm_email cover_sheet keys tms; do
59         $INKSCAPE osx/preferences/$i.png src/$i.svg -w 32 -h 32
60     done
61
62     # OS X menu bar icon for the server
63     $INKSCAPE osx/dcpomatic_small.png -w 22 -h 22 src/dcpomatic_small.svg
64
65     # Splash screen (all platforms)
66     $INKSCAPE splash.png src/splash.svg -w 400 -h 300
67
68     # favicon
69     mkdir -p web
70     convert src/web.png -resize 256x256 -transparent white web/favicon-256x256.png
71     for r in 16 32 64 128; do
72         convert web/favicon-256x256.png -resize $rx$r web/favicon-${r}x${r}.png
73     done
74     convert web/favicon-16x16.png web/favicon-32x32.png web/favicon-64x64.png web/favicon-128x128.png web/favicon-256x256.png web/favicon.ico
75     convert src/web.png -resize 123x123 -transparent white web/logo.png
76 fi