]> git.pld-linux.org Git - packages/rpm-build-tools.git/blob - update-kde4.sh
- added some games, toys, sdk and admin packages
[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-oxygen-icons
10 kde4-kdebase-workspace
11 kde4-kdebase
12 kde4-libkdeedu
13 kde4-kdebase-runtime
14 python-PyKDE4
15 kde4-kate
16 kde4-okular
17 kde4-smokegen
18 kde4-smokeqt
19 kde4-smokekde
20 perl-Qt4
21 perl-KDE4
22 kde4-analitza
23 kde4-libkexiv2
24 kde4-libkcddb
25 kde4-libkdcraw
26 kde4-libkipi
27 kde4-libksane
28 kde4-marble
29 kde4-qyoto
30 kde4-ark
31 kde4-libkcompactdisc
32 kde4-audiocd-kio
33 kde4-blinken
34 kde4-cantor
35 kde4-dragon
36 kde4-ffmpegthumbs
37 kde4-filelight
38 kde4-gwenview
39 kde4-jovie
40 kde4-juk
41 kde4-kaccessible
42 kde4-kalgebra
43 kde4-kalzium
44 kde4-kamera
45 kde4-kanagram
46 kde4-kbruch
47 kde4-kcalc
48 kde4-kcharselect
49 kde4-kcolorchooser
50 kde4-kdebase-artwork
51 kde4-wallpapers
52 kde4-kdeadmin
53 kde4-kdeartwork
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-kdewebdev
62 kde4-kdf
63 kde4-kgamma
64 kde4-kgeography
65 kde4-kgpg
66 kde4-khangman
67 kde4-kig
68 kde4-kimono
69 kde4-kiten
70 kde4-klettres
71 kde4-kmag
72 kde4-kmix
73 kde4-kmousetool
74 kde4-kmouth
75 kde4-kmplot
76 kde4-kolourpaint
77 kde4-konsole
78 kde4-kremotecontrol
79 kde4-kruler
80 kde4-ksaneplugin
81 kde4-kscd
82 kde4-ksnapshot
83 kde4-kstars
84 kde4-ktimer
85 kde4-ktouch
86 kde4-kturtle
87 kde4-kwallet
88 kde4-kwordquiz
89 kde4-mplayerthumbs
90 kde4-pairs
91 kde4-parley
92 kde4-printer-applet
93 kde4-rocs
94 kde4-step
95 kde4-superkaramba
96 kde4-svgpart
97 kde4-sweeper
98 kde4-libkdegames
99 kde4-libkmahjongg
100 kde4-bomber
101 kde4-bovo
102 kde4-granatier
103 kde4-kajongg
104 kde4-kapman
105 kde4-katomic
106 kde4-kblackbox
107 kde4-kblocks
108 kde4-kbounce
109 kde4-kbreakout
110 kde4-kdiamond
111 kde4-kfourinline
112 kde4-kgoldrunner
113 kde4-kigo
114 kde4-killbots
115 kde4-kiriki
116 kde4-kjumpingcube
117 kde4-klickety
118 kde4-klines
119 kde4-kmahjongg
120 kde4-kmines
121 kde4-knavalbattle
122 kde4-knetwalk
123 kde4-kolf
124 kde4-kollision
125 kde4-konquest
126 kde4-korundum
127 kde4-kpat
128 kde4-kreversi
129 kde4-kshisen
130 kde4-ksirk
131 kde4-ksnakeduel
132 kde4-kspaceduel
133 kde4-ksquares
134 kde4-ksudoku
135 kde4-ktuberling
136 kde4-kubrick
137 kde4-lskat
138 kde4-palapeli
139 kde4-picmi
140 kde4-amor
141 kde4-kteatime
142 kde4-ktux
143 kde4-cervisia
144 kde4-dolphin-plugins
145 kde4-kapptemplate
146 kde4-kcachegrind
147 kde4-kde-dev-scripts
148 kde4-kde-dev-utils
149 kde4-kdesdk-kioslaves
150 kde4-kdesdk-strigi-analyzers
151 kde4-kdesdk-thumbnailers
152 kde4-kompare
153 kde4-lokalize
154 kde4-poxml
155 kde4-umbrello
156 kde4-kuser
157 kde4-ksystemlog
158 "
159
160 #kfloppy
161 #korundum
162 #kross-interpreters
163 #qtruby
164
165 newver="4.12.0"
166
167 topdir=$(rpm -E '%{_topdir}')
168
169 n="$(echo -e '\nn')"
170 n="${n%%n}"
171
172 get_dump() {
173         local specfile="$1"
174         if ! out=$(rpm --specfile "$specfile" --define 'prep %dump' -q 2>&1); then
175                 echo >&2 "$out"
176                 echo >&2 "You need icon files being present in SOURCES."
177                 exit 1
178         fi
179         echo "$out"
180 }
181
182 set_release() {
183         local specfile="$1"
184         local rel="$2"
185         local newrel="$3"
186         sed -i -e "
187                 s/^\(%define[ \t]\+_\?rel[ \t]\+\)$rel\$/\1$newrel/
188                 s/^\(Release:[ \t]\+\)$rel\$/\1$newrel/
189         " $specfile
190 }
191
192 set_version() {
193         local specfile="$1"
194         local rel="$2"
195         local newrel="$3"
196         sed -i -e "
197                 s/^\(%define[ \t]\+_\?ver[ \t]\+\)$rel\$/\1$newrel/
198                 s/^\(Version:[ \t]\+\)$rel\$/\1$newrel/
199         " $specfile
200 }
201
202 cd "$topdir"
203 for pkg in $KDEPKGS ; do
204         # spec: package/package.spec
205         spec=$(rpm -D "name $pkg" -E '%{_specdir}/%{name}.spec')
206         spec=${spec#$topdir/}
207
208         # pkgdir: package/
209         pkgdir=${spec%/*}
210
211         # specname: only spec filename
212         specname=${spec##*/}
213
214         # start real work
215         echo "$pkg ..."
216
217         # get package
218         [ "$get" = 1 -a -d "$pkgdir" ] && continue
219
220         if [ "$update" = "1" -o "$get" = "1" ]; then
221                 ./builder -g -ns "$spec"
222         fi
223
224         [ "$get" = 1 ] && continue
225
226         # update .spec files
227         dump=$(get_dump "$spec")
228
229         ver=$(awk '/^%define[   ]+_?rel[        ]+/{print $NF}' $spec)
230         if [ -z "$ver" ]; then
231                 ver=$(echo "$dump" | awk '/PACKAGE_VERSION/{print $NF; exit}')
232         fi
233         rel=$(awk '/^%define[   ]+_?rel[        ]+/{print $NF}' $spec)
234         if [ -z "$rel" ]; then
235                 rel=$(echo "$dump" | awk '/PACKAGE_RELEASE/{print $NF; exit}')
236         fi
237         echo $ver-$rel
238
239         set_release "$spec" $rel "1"
240         set_version "$spec" $ver $newver
241
242         # update md5sums
243         ./builder -U "$spec"
244
245         # commit the changes
246         msg=""
247         [ -n "$message" ] && msg="$msg- $message$n"
248         msg="$msg- updated to $newver (by update-kde4.sh)"
249         echo git commit -m "$msg" $spec
250         if [ "$test" != 1 ]; then
251                 cd $pkgdir
252                 git commit -m "$msg" $specname
253                 git push
254                 cd ..
255         fi
256 done
This page took 0.046513 seconds and 4 git commands to generate.