blob: b47f1e3cb71a7730b0ac9d0898c6d1b9d1dc720f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
|
%define name get-skype
%define version 2.2.0.35
%define release %mkrel 7
%define instdir %{_datadir}/skype
%define langdir %{instdir}/lang
%define avatardir %{instdir}/avatars
%define sounddir %{instdir}/sounds
%define icondir %{instdir}/icons
%define md5 6e28002c0086fae5206e2d242c3edcfa
%define mytmp %{_localstatedir}/lib/%{name}
Summary: Download and Install Skype.
Name: %{name}
Version: %{version}
Release: %{release}
License: Proprietary
Group: Networking/Instant messaging
URL: http://www.skype.com
Buildarch: noarch
Requires: wget
Requires: liblcms1
Requires: libmng1
Requires: libqtcore4
Requires: libqtdbus4
Requires: libqtnetwork4
Requires: libqtgui4
Requires: libqtsvg4
Requires: libqtxml4
Requires: libxscrnsaver1
Requires: libxv1
Requires: libv4l-wrappers
# The following are lists of filenames (124 in total) placed
# in versioned text files to save clutter in the spec file.
Source0: avatars-%{version}.txt
Source1: sounds-%{version}.txt
Source2: lang-%{version}.txt
%description
This is an installer for Skype-%{version}.
This package does not contain any files as the Skype license does not allow distribution.
By installing this package you will download and install Skype from skype.com.
You must accept the Skype EULA before using it.
Please be patient, this is a 23MB download and may take some time.
Uninstalling this package will uninstall Skype from your system.
%pre
mkdir %{mytmp}
[[ -d %{mytmp} ]] || exit 1
cd %{mytmp}
wget -nc "http://download.skype.com/linux/skype-%{version}.tar.bz2"
md5chk=$(md5sum skype-%{version}.tar.bz2 | cut -d' ' -f1)
if [[ %{md5} != $md5chk ]]; then
rm skype-%{version}.tar.bz2
cd ..
rm -r %{mytmp}
echo "Error - download checksum failed"
exit 1
fi
%install
rm -rf $RPM_BUILD_ROOT
install -d -m 0755 %buildroot%{_bindir}
install -d -m 0755 %buildroot%{_datadir}/applications
touch %buildroot%{_datadir}/applications/skype.desktop
install -d -m 0755 %buildroot%{instdir}
touch %buildroot%{instdir}/{skype.desktop,skype,skype.conf,LICENSE,README}
install -d -m 0755 %buildroot%{langdir}
while read line; do
touch %buildroot%{langdir}/skype_"$line"
done < %{SOURCE2}
install -d -m 0755 %buildroot%{instdir}/icons
install -d -m 0755 %buildroot%{_iconsdir}
touch %buildroot%{_iconsdir}/skype.png
for i in 16 32 48; do
touch %buildroot%{_iconsdir}/SkypeBlue_${i}x${i}.png
touch %buildroot%{instdir}/icons/SkypeBlue_${i}x${i}.png
done
install -d -m 0755 %buildroot%{avatardir}
while read line; do
touch %buildroot%{avatardir}/"$line"
done < %{SOURCE0}
install -d -m 0755 %buildroot%{sounddir}
while read line; do
touch %buildroot%{sounddir}/"$line"
done < %{SOURCE1}
echo "LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so %{instdir}/skype"\
> %buildroot%{_bindir}/skype && chmod +x %buildroot%{_bindir}/skype
%post
tmpextdir=$(mktemp -d)
if ! [[ -d $tmpextdir ]]; then
echo "Failed to create temporary directory"
rm -r %{mytmp}
exit 1
fi
%define tmpdir ${tmpextdir}/skype-%{version}
cd ${tmpextdir}
tar jxf %{mytmp}/skype-%{version}.tar.bz2
if ! [[ -d %{tmpdir} ]]; then
echo "Extracted file folder missing"
cd ..
rm -rf ${tmpextdir}
rm -r %{mytmp}
exit 1
fi
mkdir -p %{instdir}
cp -a %{tmpdir}/icons/* %{_iconsdir}
cp -a %{_iconsdir}/SkypeBlue_48x48.png %{_iconsdir}/skype.png
cp -a %{tmpdir}/skype.desktop %{_datadir}/applications/
mv %{tmpdir}/skype %{instdir}
mv %{tmpdir}/skype.desktop %{instdir}
mv %{tmpdir}/skype.conf %{instdir}
mv %{tmpdir}/LICENSE %{instdir}
mv %{tmpdir}/README %{instdir}
mv %{tmpdir}/avatars %{instdir}
mv %{tmpdir}/lang %{langdir}
mv %{tmpdir}/sounds %{sounddir}
mv %{tmpdir}/icons %{icondir}
rm -r %{tmpdir}
cd ..
rm -r ${tmpextdir}
rm -r %{mytmp}
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%{_bindir}/skype
# If any extra files are added in install then
# corresponding ghost files need to be added here
%ghost %{_iconsdir}/skype.png
%ghost %{_iconsdir}/SkypeBlue_*.png
%ghost %{_datadir}/applications/skype.desktop
%ghost %{instdir}
%changelog
* Sun Jun 12 2011 Barry Jackson <zen25000@zen.co.uk> 2.2.0.35-7.mga1
- Added tests for failed directory creation, exiting with cleanup.
- Added note in %post.
- Removed resource option on launch command line as we use default.
* Sat Jun 11 2011 Barry Jackson <zen25000@zen.co.uk> 2.2.0.35-6.mga1
- Added md5sum check on download and cleanup on fail.
- Downloads to /var/lib/get-skype - removed after install.
- Creates unique /tmp/tmp.xxxx dir for extraction of tar.
- Added versioning to .txt files.
- Added removal of all tmp directories after install.
- Corrected URL:
* Thu Jun 9 2011 Barry Jackson <zen25000@zen.co.uk> 2.2.0.35-5.mga1
- Bumped release to test update - no changes
* Thu Jun 9 2011 Barry Jackson <zen25000@zen.co.uk> 2.2.0.35-4.mga1
- Moved installation to /usr/share instead of /opt
- Changed group and license
- Changed temporary dir
- Changed to wget for d/l
* Mon Jun 6 2011 Barry Jackson <zen25000@zen.co.uk> 2.2.0.35-2.mga1
- Moved download to %pre to stop install if d/l fails
* Sun Jun 5 2011 Barry Jackson <zen25000@zen.co.uk> 2.2.0.35-1.mga1
- Changed get-skype version to follow Skype version.
- Changed URL to directly download only correct version.
- A copy of the downloaded file is retained in /tmp/skype-%{version} to
- speed re-installation (unless you clean /tmp)
* Sat Jun 4 2011 Barry Jackson <zen25000@zen.co.uk> 0.2.mga1
- Now all files are registered in rpm database.
- lang, avatar and sound filenames supplied in source files.
|