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