]> git.pld-linux.org Git - packages/rpm-build-tools.git/blob - update-kde4.sh
- add kde4-nepomuk-widgets
[packages/rpm-build-tools.git] / update-kde4.sh
1 #!/bin/sh
2
3 KDEPKGS="
4 kde4-kdelibs
5 kde4-nepomuk-core
6 kde4-nepomuk-widgets
7 kde4-kactivities
8 kde4-kdepimlibs
9 kde4-kdebase-workspace
10 kde4-kdebase
11 kde4-libkdeedu
12 kde4-kdebase-runtime
13 python-PyKDE4
14 kde4-kate
15 kde4-okular
16 kde4-smokegen
17 kde4-smokeqt
18 kde4-smokekde
19 perl-Qt4
20 perl-KDE4
21 kde4-analitza
22 kde4-libkexiv2
23 kde4-libkcddb
24 kde4-libkdcraw
25 kde4-libkipi
26 kde4-libksane
27 kde4-marble
28 kde4-qyoto
29 kde4-ark
30 kde4-libkcompactdisc
31 kde4-audiocd-kio
32 kde4-blinken
33 kde4-cantor
34 kde4-dragon
35 kde4-ffmpegthumbs
36 kde4-filelight
37 kde4-gwenview
38 kde4-jovie
39 kde4-juk
40 kde4-kaccessible
41 kde4-kalgebra
42 kde4-kalzium
43 kde4-kamera
44 kde4-kanagram
45 kde4-kbruch
46 kde4-kcalc
47 kde4-kcharselect
48 kde4-kcolorchooser
49 kde4-kdebase-artwork
50 kde4-wallpapers
51 kde4-kdeadmin
52 kde4-kdeartwork
53 kde4-kdegames
54 kde4-kdegraphics-mobipocket
55 kde4-kdegraphics-strigi-analyzer
56 kde4-kdegraphics-thumbnailers
57 kde4-kdenetwork
58 kde4-kdepim
59 kde4-kdepim-runtime
60 kde4-kdeplasma-addons
61 kde4-kdesdk
62 kde4-kdetoys
63 kde4-kdewebdev
64 kde4-kdf
65 kde4-kgamma
66 kde4-kgeography
67 kde4-kgpg
68 kde4-khangman
69 kde4-kig
70 kde4-kimono
71 kde4-kiten
72 kde4-klettres
73 kde4-kmag
74 kde4-kmix
75 kde4-kmousetool
76 kde4-kmouth
77 kde4-kmplot
78 kde4-kolourpaint
79 kde4-konsole
80 kde4-kremotecontrol
81 kde4-kruler
82 kde4-ksaneplugin
83 kde4-kscd
84 kde4-ksnapshot
85 kde4-kstars
86 kde4-ktimer
87 kde4-ktouch
88 kde4-kturtle
89 kde4-kwallet
90 kde4-kwordquiz
91 kde4-mplayerthumbs
92 kde4-oxygen-icons
93 kde4-pairs
94 kde4-parley
95 kde4-printer-applet
96 kde4-rocs
97 kde4-step
98 kde4-superkaramba
99 kde4-svgpart
100 kde4-sweeper
101 "
102
103 #kfloppy
104 #korundum
105 #kross-interpreters
106 #qtruby
107
108 newver="4.9.5"
109
110 topdir=$(rpm -E '%{_topdir}')
111
112 n="$(echo -e '\nn')"
113 n="${n%%n}"
114
115 get_dump() {
116         local specfile="$1"
117         if ! out=$(rpm --specfile "$specfile" --define 'prep %dump' -q 2>&1); then
118                 echo >&2 "$out"
119                 echo >&2 "You need icon files being present in SOURCES."
120                 exit 1
121         fi
122         echo "$out"
123 }
124
125 set_release() {
126         local specfile="$1"
127         local rel="$2"
128         local newrel="$3"
129         sed -i -e "
130                 s/^\(%define[ \t]\+_\?rel[ \t]\+\)$rel\$/\1$newrel/
131                 s/^\(Release:[ \t]\+\)$rel\$/\1$newrel/
132         " $specfile
133 }
134
135 set_version() {
136         local specfile="$1"
137         local rel="$2"
138         local newrel="$3"
139         sed -i -e "
140                 s/^\(%define[ \t]\+_\?ver[ \t]\+\)$rel\$/\1$newrel/
141                 s/^\(Version:[ \t]\+\)$rel\$/\1$newrel/
142         " $specfile
143 }
144
145 cd "$topdir"
146 for pkg in $KDEPKGS ; do
147         # spec: package/package.spec
148         spec=$(rpm -D "name $pkg" -E '%{_specdir}/%{name}.spec')
149         spec=${spec#$topdir/}
150
151         # pkgdir: package/
152         pkgdir=${spec%/*}
153
154         # specname: only spec filename
155         specname=${spec##*/}
156
157         # start real work
158         echo "$pkg ..."
159
160         # get package
161         [ "$get" = 1 -a -d "$pkgdir" ] && continue
162
163         if [ "$update" = "1" -o "$get" = "1" ]; then
164                 ./builder -g -ns "$spec"
165         fi
166
167         [ "$get" = 1 ] && continue
168
169         # update .spec files
170         dump=$(get_dump "$spec")
171
172         ver=$(awk '/^%define[   ]+_?rel[        ]+/{print $NF}' $spec)
173         if [ -z "$ver" ]; then
174                 ver=$(echo "$dump" | awk '/PACKAGE_VERSION/{print $NF; exit}')
175         fi
176         rel=$(awk '/^%define[   ]+_?rel[        ]+/{print $NF}' $spec)
177         if [ -z "$rel" ]; then
178                 rel=$(echo "$dump" | awk '/PACKAGE_RELEASE/{print $NF; exit}')
179         fi
180         echo $ver-$rel
181
182         set_release "$spec" $rel "1"
183         set_version "$spec" $ver $newver
184
185         # update md5sums
186         ./builder -U "$spec"
187
188         # commit the changes
189         msg=""
190         [ -n "$message" ] && msg="$msg- $message$n"
191         msg="$msg- updated to $newver (by update-kde4.sh)"
192         echo git commit -m "$msg" $spec
193         if [ "$test" != 1 ]; then
194                 cd $pkgdir
195                 git commit -m "$msg" $specname
196                 git push
197                 cd ..
198         fi
199 done
This page took 0.049588 seconds and 4 git commands to generate.