blob: cb04ff750f75e77da22e87cd6a5c9ceb9ea9c632 (
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
|
# Contributor: Patrick McCarty <pnorcks at gmail dot com>
# Contributor: David Roheim < david dot roheim at gmail dot com >
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Uncomment to enable usermode support
#_with_usermode=1
pkgname=mock
pkgver=1.4.16
_rpmrel=1
_pkgtag=$pkgname-$pkgver-$_rpmrel
pkgrel=$_rpmrel.1
pkgdesc="A simple chroot build environment manager for building RPMs"
url="https://github.com/rpm-software-management/$pkgname"
arch=('any')
license=('GPL2')
depends=('mock-core-configs' 'python' 'python-distro' 'python-jinja' 'python-pyroute2')
((_with_usermode)) && depends+=('usermode')
optdepends=('createrepo_c: for mockchain command'
'dnf-plugins-core: to create RPMs for Fedora >= 24 and for Mageia'
'lvm2: for lvm_root plugin'
'nosync: to speed up yum/dnf database access'
'pigz: for parallel compression of chroot cache'
'python-requests: for mockchain command'
'yum-utils: to create RPMs for Fedora <= 23 (including EL5, EL6 and EL7)')
install="$pkgname.install"
backup=("etc/$pkgname/site-defaults.cfg")
source=("$url/archive/$_pkgtag.tar.gz"
"$pkgname.sysusers"
"$pkgname.tmpfiles")
md5sums=('5db3847642c49a6c01a7a6c1e3c31fe4'
'd277502b9a95484594f86231d073dae0'
'1052fa4db74b59b0c195f4756bd865e8')
_prefix=/usr
_bindir=$_prefix/bin
_datadir=$_prefix/share
_mandir=$_datadir/man
_sysconfdir=/etc
prepare() {
mv "$pkgname-$_pkgtag" "$pkgname-$pkgver"
cd "$pkgname-$pkgver"
pushd "$pkgname" >/dev/null
# ArchLinux does not provides gtar symlink
sed -e "/config_opts\['tar'\]/ s|.*|config_opts['tar'] = \"bsdtar\"|" \
-e "/config_opts\['plugin_conf'\]\['root_cache_opts'\]\['decompress_program'\]/ s|.*|config_opts['plugin_conf']['root_cache_opts']['decompress_program'] = \"gunzip\"|" \
-i "etc/$pkgname/site-defaults.cfg"
popd >/dev/null
}
build() {
cd "$pkgname-$pkgver"
pushd "$pkgname" >/dev/null
python_sitelib=$(python -c 'from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib())')
sed -r -i "py/$pkgname"{,chain}.py \
-e 's|^__VERSION__\s*=.*|__VERSION__="'$pkgver'"|' \
-e 's|^SYSCONFDIR\s*=.*|SYSCONFDIR="'$_sysconfdir'"|' \
-e 's|^PYTHONDIR\s*=.*|PYTHONDIR="'$python_sitelib'"|' \
-e 's|^PKGPYTHONDIR\s*=.*|PKGPYTHONDIR="'$python_sitelib'/mockbuild"|'
# Replace /usr/libexec path in help message
sed -r -i "py/$pkgname.py" \
-e 's|/usr/libexec/mock/mock|/usr/bin/mock.py|'
sed -e "s|@VERSION@|$pkgver|" -i "docs/$pkgname"{,chain}.1
python -m compileall py/ -q
python -O -m compileall py/ -q
popd >/dev/null
}
package() {
cd "$pkgname-$pkgver"
pushd "$pkgname" >/dev/null
mkdir -p "$pkgdir/$_bindir/"
install -Dp -m755 py/mock.py "$pkgdir/$_bindir/"mock
install -Dp -m755 py/mockchain.py "$pkgdir/$_bindir/"mockchain
mkdir -p "$pkgdir/$_sysconfdir/"pam.d
cp -Rp etc/pam/* "$pkgdir/$_sysconfdir/"pam.d/
mkdir -p "$pkgdir/$_sysconfdir/"mock
cp -Rp etc/mock/* "$pkgdir/$_sysconfdir/"mock/
mkdir -p "$pkgdir/$_datadir/"bash-completion/completions
cp -Rp etc/bash_completion.d/* "$pkgdir/$_datadir/"bash-completion/completions/
ln -s mock "$pkgdir/$_datadir/"bash-completion/completions/mockchain
mkdir -p "$pkgdir/$_sysconfdir/"pki/mock
cp -Rp etc/pki/* "$pkgdir/$_sysconfdir/"pki/mock/
python_sitelib=$(python -c 'from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib())')
mkdir -p "$pkgdir/$python_sitelib/"
cp -Rp py/mockbuild "$pkgdir/$python_sitelib/"
mkdir -p "$pkgdir/$_mandir/"man1
cp -Rp "docs/$pkgname"{,chain}.1 "$pkgdir/$_mandir/"man1/
if ((_with_usermode)); then
mkdir -p "$pkgdir/$_sysconfdir/"security/console.apps/
cp -Rp etc/consolehelper/$pkgname "$pkgdir/$_sysconfdir/"security/console.apps/$pkgname
mv "$pkgdir/usr/bin/$pkgname"{,.py}
sed -e "s|/usr/libexec/$pkgname/$pkgname|/usr/bin/$pkgname.py|" \
-i "$pkgdir/etc/security/console.apps/$pkgname"
ln -s /usr/bin/consolehelper "$pkgdir/usr/bin/$pkgname"
fi
popd >/dev/null
install -Dp -m644 "$srcdir/$pkgname.sysusers" "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
install -Dp -m644 "$srcdir/$pkgname.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
}
# vim: set ft=sh ts=4 sw=4 noet:
|