OSDN Git Service

upg
[joborun/jobcore.git] / runit / PKGBUILD
1 #!/usr/bin/bash
2 # JOBoRun               : Jwm OpenBox Obarun RUNit
3 # Maintainer            : Joe Bo Run <joborun@disroot.org>
4 # PkgSource             : url="https://gittea.disroot.org/joborun/jobcore/$pkgname"
5 # Maintainer    : Chris Cromer <chris@cromer.cl>
6 # Maintainer    : Muhammad Herdiansyah <koni@artixlinux.org>
7 #-----------------------------------------| DESCRIPTION |---------------------------------------
8
9 _url=https://gitea.artixlinux.org/artix/runit-artix
10 _pkgname=runit-artix
11 _pkgver=20200825
12
13 # Many thanks to the artix team members Konimex & c-cromer for refining
14 # runit's adoption to Arch.
15 # After the changes that took place on 9/2020 we decided to stay
16 # with the old Gentoo opentmpfiles and opensysusers and not adopt the 
17 # large systemd counterparts.
18 # Since runit's development has stopped years ago for reaching its goals
19 # 100%  we will leave it as is ourselves.  So both runit & runit-rc are 
20 # the last releases before that change.
21 # set default service path to /run/runit/service
22 _servicedir=/run/runit/service
23
24 pkgname=runit
25 pkgver=2.1.2
26 pkgrel=023
27 pkgdesc='a cross-platform Unix init scheme with service supervision'
28 arch=('x86_64')
29 groups=(base)
30 url='http://smarden.org/runit/'
31 depends=('runit-rc' 'joborun66')
32 makedepends=('git')
33 backup=('etc/rc.local' 'etc/rc.shutdown')
34 install=runit.install
35 provides=('svc-manager')
36 conflicts=('svc-manager')
37 source=("$url/${pkgname}-${pkgver}.tar.gz"
38         "${_pkgname}-${_pkgver}.tar.gz::${_url}/archive/${_pkgver}.tar.gz"
39         "halt.c"
40         "shutdown"
41         "clearmem.patch"
42         "svlogd.patch"
43         "utmpset-time_t.patch"
44         "runit-hook"
45         "runit-install.hook"
46         "runit-remove.hook"
47         "30-binfmt.hook"
48         "30-sysctl.hook")
49
50 prepare() {
51         # set default service path to /run/runit/service
52         cd "${srcdir}/admin/${pkgname}-${pkgver}"
53         sed -i "s|/service/|${_servicedir}/|" src/sv.c
54
55         # apply patches
56         patch -p1 -i "${srcdir}/clearmem.patch"
57         patch -p1 -i "${srcdir}/svlogd.patch"
58         patch -p1 -i "${srcdir}/utmpset-time_t.patch"
59 }
60
61 build() {
62         cc ${CFLAGS} halt.c -o halt ${LDFLAGS}
63
64         cd ${_pkgname}
65         make SERVICEDIR="${_servicedir}"
66
67         cd "${srcdir}/admin/${pkgname}-${pkgver}"
68
69         CFLAGS="${CFLAGS} -static"
70         LDFLAGS="${LDFLAGS} -static"
71
72         package/compile
73
74 }
75
76 check() {
77         cd "${srcdir}/admin/${pkgname}-${pkgver}"
78         package/check
79 }
80
81 package() {
82         # commands
83         install -dm755 "${pkgdir}/usr/bin/run"
84         install -Dm755 ${srcdir}/admin/${pkgname}-${pkgver}/command/* "${pkgdir}/usr/bin"
85         install -Dm755 ${srcdir}/halt ${pkgdir}/usr/bin/run/halt
86         ln -s halt ${pkgdir}/usr/bin/run/poweroff
87         ln -s halt ${pkgdir}/usr/bin/run/reboot
88         install -Dm755 ${srcdir}/shutdown ${pkgdir}/usr/bin/run/shutdown
89
90         cd ${_pkgname}
91         make DESTDIR="${pkgdir}" PREFIX="/usr" SERVICEDIR="${_servicedir}" install-runit
92
93         # man pages
94         install -dm755 "${pkgdir}/usr/share/man/man8"
95         install -Dm644 ${srcdir}/admin/${pkgname}-${pkgver}/man/* "${pkgdir}/usr/share/man/man8"
96
97         # alpm hooks
98         install -Dm755 "${srcdir}/runit-hook" "${pkgdir}/usr/share/libalpm/scripts/runit-hook"
99         install -Dm644 -t "${pkgdir}/usr/share/libalpm/hooks" "${srcdir}"/*.hook
100
101         # license
102         install -dm755 ${pkgdir}/usr/share/licenses/${pkgname}
103         install -Dm644 "${srcdir}/admin/${pkgname}-${pkgver}/package/COPYING" ${pkgdir}/usr/share/licenses/${pkgname}/COPYING
104         sed -n '/To the extent/,/0/p' README.md > "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
105 }
106
107 #---- license gpg-key sha256sums ----
108
109 license=('BSD')
110
111 sha256sums=(6fd0160cb0cf1207de4e66754b6d39750cff14bb0aa66ab49490992c0c47ba18 # runit-2.1.2.tar.gz
112         60435808bdaf2478776bc31e7509a30e037f67990db3f92602064696401d49df # runit-artix-20200825.tar.gz
113         a9e4b3e09fb72fd44e62f052fd2302d6fcde64a112d53037febd221564e62b1a # halt.c
114         7f11c5cab16f10178612b6a81d37184c25c4426b9c2d5d3f8ef7ed7ab2b52c56 # shutdown
115         19b5e99135f153d07052f2dff707430af9faeabc717a5740ea58a8a783f609de # clearmem.patch
116         9cf269264c0713975be1b3bc9dd3b5b3bb1e2078ac596527370a902d8d025a5a # svlogd.patch
117         527f68f501cc9eb4bbab33f8ad374822624342c7d74b5c795efe4aac6b3f170a # utmpset-time_t.patch
118         4fd0751bce6cefff13ea24f3dd5ea8c91db7090170668736d9ff132aad07c6b8 # runit-hook
119         87c2eef83dceb42c5f10f31cbdba07e4751a2165b18ad00dd2f3a5819456d271 # runit-install.hook
120         dc583a40ce68d33e2c1b1039527427f941568a0189014f564afcfc02b01232c8 # runit-remove.hook
121         20d0c5297f20f5f48d9bad24203603f7768c2dc2085b51eafac45dc62aa7ac4c # 30-binfmt.hook
122         7b1c4928483df7715a3a897f82baccf4552a3f9b61fba87139aad80addf53202) # 30-sysctl.hook