]> git.pld-linux.org Git - packages/rpm-build-tools.git/blob - update-kde4.sh
- removed obsolete/non-existing 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
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-kdeartwork
52 kde4-kdegraphics-mobipocket
53 kde4-kdegraphics-strigi-analyzer
54 kde4-kdegraphics-thumbnailers
55 kde4-kdepim
56 kde4-kdepim-runtime
57 kde4-kdeplasma-addons
58 kde4-kdewebdev
59 kde4-kdf
60 kde4-kgamma
61 kde4-kgeography
62 kde4-kgpg
63 kde4-khangman
64 kde4-kig
65 kde4-kimono
66 kde4-kiten
67 kde4-klettres
68 kde4-kmag
69 kde4-kmix
70 kde4-kmousetool
71 kde4-kmouth
72 kde4-kmplot
73 kde4-kolourpaint
74 kde4-konsole
75 kde4-kremotecontrol
76 kde4-kruler
77 kde4-ksaneplugin
78 kde4-kscd
79 kde4-ksnapshot
80 kde4-kstars
81 kde4-ktimer
82 kde4-ktouch
83 kde4-kturtle
84 kde4-kwallet
85 kde4-kwordquiz
86 kde4-mplayerthumbs
87 kde4-pairs
88 kde4-parley
89 kde4-print-manager
90 kde4-rocs
91 kde4-step
92 kde4-superkaramba
93 kde4-svgpart
94 kde4-sweeper
95 kde4-libkdegames
96 kde4-libkmahjongg
97 kde4-bomber
98 kde4-bovo
99 kde4-granatier
100 kde4-kajongg
101 kde4-kapman
102 kde4-katomic
103 kde4-kblackbox
104 kde4-kblocks
105 kde4-kbounce
106 kde4-kbreakout
107 kde4-kdiamond
108 kde4-kfourinline
109 kde4-kgoldrunner
110 kde4-kigo
111 kde4-killbots
112 kde4-kiriki
113 kde4-kjumpingcube
114 kde4-klickety
115 kde4-klines
116 kde4-kmahjongg
117 kde4-kmines
118 kde4-knavalbattle
119 kde4-knetwalk
120 kde4-kolf
121 kde4-kollision
122 kde4-konquest
123 kde4-kpat
124 kde4-kreversi
125 kde4-kshisen
126 kde4-ksirk
127 kde4-ksnakeduel
128 kde4-kspaceduel
129 kde4-ksquares
130 kde4-ksudoku
131 kde4-ktuberling
132 kde4-kubrick
133 kde4-lskat
134 kde4-palapeli
135 kde4-picmi
136 kde4-amor
137 kde4-kteatime
138 kde4-ktux
139 kde4-cervisia
140 kde4-dolphin-plugins
141 kde4-kapptemplate
142 kde4-kcachegrind
143 kde4-kde-dev-scripts
144 kde4-kde-dev-utils
145 kde4-kdesdk-kioslaves
146 kde4-kdesdk-strigi-analyzers
147 kde4-kdesdk-thumbnailers
148 kde4-kompare
149 kde4-lokalize
150 kde4-poxml
151 kde4-umbrello
152 kde4-kuser
153 kde4-ksystemlog
154 kde4-kdenetwork-filesharing
155 kde4-kdenetwork-strigi-analyzers
156 "
157
158 #kde4-korundum
159
160 newver="4.12.0"
161
162 topdir=$(rpm -E '%{_topdir}')
163
164 n="$(echo -e '\nn')"
165 n="${n%%n}"
166
167 get_dump() {
168         local specfile="$1"
169         if ! out=$(rpm --specfile "$specfile" --define 'prep %dump' -q 2>&1); then
170                 echo >&2 "$out"
171                 echo >&2 "You need icon files being present in SOURCES."
172                 exit 1
173         fi
174         echo "$out"
175 }
176
177 set_release() {
178         local specfile="$1"
179         local rel="$2"
180         local newrel="$3"
181         sed -i -e "
182                 s/^\(%define[ \t]\+_\?rel[ \t]\+\)$rel\$/\1$newrel/
183                 s/^\(Release:[ \t]\+\)$rel\$/\1$newrel/
184         " $specfile
185 }
186
187 set_version() {
188         local specfile="$1"
189         local rel="$2"
190         local newrel="$3"
191         sed -i -e "
192                 s/^\(%define[ \t]\+_\?ver[ \t]\+\)$rel\$/\1$newrel/
193                 s/^\(Version:[ \t]\+\)$rel\$/\1$newrel/
194         " $specfile
195 }
196
197 cd "$topdir"
198 for pkg in $KDEPKGS ; do
199         # spec: package/package.spec
200         spec=$(rpm -D "name $pkg" -E '%{_specdir}/%{name}.spec')
201         spec=${spec#$topdir/}
202
203         # pkgdir: package/
204         pkgdir=${spec%/*}
205
206         # specname: only spec filename
207         specname=${spec##*/}
208
209         # start real work
210         echo "$pkg ..."
211
212         # get package
213         [ "$get" = 1 -a -d "$pkgdir" ] && continue
214
215         if [ "$update" = "1" -o "$get" = "1" ]; then
216                 ./builder -g -ns "$spec"
217         fi
218
219         [ "$get" = 1 ] && continue
220
221         # update .spec files
222         dump=$(get_dump "$spec")
223
224         ver=$(awk '/^%define[   ]+_?rel[        ]+/{print $NF}' $spec)
225         if [ -z "$ver" ]; then
226                 ver=$(echo "$dump" | awk '/PACKAGE_VERSION/{print $NF; exit}')
227         fi
228         rel=$(awk '/^%define[   ]+_?rel[        ]+/{print $NF}' $spec)
229         if [ -z "$rel" ]; then
230                 rel=$(echo "$dump" | awk '/PACKAGE_RELEASE/{print $NF; exit}')
231         fi
232         echo $ver-$rel
233
234         set_release "$spec" $rel "1"
235         set_version "$spec" $ver $newver
236
237         # update md5sums
238         ./builder -U "$spec"
239
240         # commit the changes
241         msg=""
242         [ -n "$message" ] && msg="$msg- $message$n"
243         msg="$msg- updated to $newver (by update-kde4.sh)"
244         echo git commit -m "$msg" $spec
245         if [ "$test" != 1 ]; then
246                 cd $pkgdir
247                 git commit -m "$msg" $specname
248                 git push
249                 cd ..
250         fi
251 done
This page took 0.099888 seconds and 3 git commands to generate.