]> git.pld-linux.org Git - packages/rpm-build-tools.git/blame - update-kde4.sh
- haskell hackage support
[packages/rpm-build-tools.git] / update-kde4.sh
CommitLineData
5fc8c657
JR
1#!/bin/sh
2
3KDEPKGS="
4kde4-kdelibs
7fc1512a 5kde4-nepomuk-core
47537d92 6kde4-nepomuk-widgets
5fc8c657
JR
7kde4-kactivities
8kde4-kdepimlibs
3edadb93 9kde4-oxygen-icons
5fc8c657
JR
10kde4-kdebase-workspace
11kde4-kdebase
12kde4-libkdeedu
5fc8c657
JR
13kde4-kdebase-runtime
14python-PyKDE4
15kde4-kate
16kde4-okular
17kde4-smokegen
18kde4-smokeqt
19kde4-smokekde
20perl-Qt4
21perl-KDE4
22kde4-analitza
23kde4-libkexiv2
24kde4-libkcddb
25kde4-libkdcraw
26kde4-libkipi
27kde4-libksane
28kde4-marble
29kde4-qyoto
30kde4-ark
31kde4-libkcompactdisc
32kde4-audiocd-kio
33kde4-blinken
34kde4-cantor
35kde4-dragon
36kde4-ffmpegthumbs
37kde4-filelight
38kde4-gwenview
39kde4-jovie
40kde4-juk
41kde4-kaccessible
42kde4-kalgebra
43kde4-kalzium
44kde4-kamera
45kde4-kanagram
46kde4-kbruch
47kde4-kcalc
48kde4-kcharselect
49kde4-kcolorchooser
50kde4-kdebase-artwork
51kde4-wallpapers
52kde4-kdeadmin
53kde4-kdeartwork
54kde4-kdegames
55kde4-kdegraphics-mobipocket
56kde4-kdegraphics-strigi-analyzer
57kde4-kdegraphics-thumbnailers
58kde4-kdenetwork
59kde4-kdepim
60kde4-kdepim-runtime
61kde4-kdeplasma-addons
62kde4-kdesdk
63kde4-kdetoys
64kde4-kdewebdev
65kde4-kdf
66kde4-kgamma
67kde4-kgeography
68kde4-kgpg
69kde4-khangman
70kde4-kig
71kde4-kimono
72kde4-kiten
73kde4-klettres
74kde4-kmag
75kde4-kmix
76kde4-kmousetool
77kde4-kmouth
78kde4-kmplot
79kde4-kolourpaint
80kde4-konsole
81kde4-kremotecontrol
82kde4-kruler
83kde4-ksaneplugin
84kde4-kscd
85kde4-ksnapshot
86kde4-kstars
87kde4-ktimer
88kde4-ktouch
89kde4-kturtle
90kde4-kwallet
91kde4-kwordquiz
92kde4-mplayerthumbs
5fc8c657
JR
93kde4-pairs
94kde4-parley
95kde4-printer-applet
96kde4-rocs
97kde4-step
98kde4-superkaramba
99kde4-svgpart
100kde4-sweeper
101"
102
103#kfloppy
104#korundum
105#kross-interpreters
106#qtruby
107
108newver="4.9.5"
109
110topdir=$(rpm -E '%{_topdir}')
111
112n="$(echo -e '\nn')"
113n="${n%%n}"
114
115get_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
125set_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
135set_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
145cd "$topdir"
146for 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
199done
This page took 0.072006 seconds and 4 git commands to generate.