diff options
Diffstat (limited to 'meta/recipes-extended/cronie/cronie_1.7.2.bb')
-rw-r--r-- | meta/recipes-extended/cronie/cronie_1.7.2.bb | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/meta/recipes-extended/cronie/cronie_1.7.2.bb b/meta/recipes-extended/cronie/cronie_1.7.2.bb new file mode 100644 index 0000000000..b250717ab8 --- /dev/null +++ b/meta/recipes-extended/cronie/cronie_1.7.2.bb | |||
@@ -0,0 +1,87 @@ | |||
1 | SUMMARY = "Cron daemon for executing programs at set times" | ||
2 | DESCRIPTION = "Cronie contains the standard UNIX daemon crond that runs \ | ||
3 | specified programs at scheduled times and related tools. It is based on the \ | ||
4 | original cron and has security and configuration enhancements like the \ | ||
5 | ability to use pam and SELinux." | ||
6 | HOMEPAGE = "https://github.com/cronie-crond/cronie/" | ||
7 | BUGTRACKER = "https://bugzilla.redhat.com" | ||
8 | |||
9 | # Internet Systems Consortium License | ||
10 | LICENSE = "ISC & BSD-3-Clause & BSD-2-Clause & GPL-2.0-or-later" | ||
11 | LIC_FILES_CHKSUM = "file://COPYING;md5=dd2a592170760e1386c769e1043b3722 \ | ||
12 | file://src/cron.c;endline=20;md5=b425c334265026177128353a142633b4 \ | ||
13 | file://src/popen.c;beginline=3;endline=31;md5=edd50742d8def712e9472dba353668a9" | ||
14 | |||
15 | SECTION = "utils" | ||
16 | |||
17 | GITHUB_BASE_URI = "https://github.com/cronie-crond/${BPN}/releases/" | ||
18 | |||
19 | SRC_URI = "${GITHUB_BASE_URI}/download/cronie-${PV}/cronie-${PV}.tar.gz \ | ||
20 | file://make_error_func_prototype_complete.patch \ | ||
21 | file://crond.init \ | ||
22 | file://crontab \ | ||
23 | file://crond.service \ | ||
24 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)}" | ||
25 | |||
26 | PAM_SRC_URI = "file://crond_pam_config.patch" | ||
27 | PAM_DEPS = "libpam libpam-runtime pam-plugin-access pam-plugin-loginuid" | ||
28 | |||
29 | SRC_URI[sha256sum] = "f1da374a15ba7605cf378347f96bc8b678d3d7c0765269c8242cfe5b0789c571" | ||
30 | |||
31 | inherit autotools update-rc.d useradd systemd github-releases | ||
32 | UPSTREAM_CHECK_REGEX = "releases/tag/cronie-(?P<pver>\d+(\.\d+)+)" | ||
33 | |||
34 | PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" | ||
35 | |||
36 | PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit," | ||
37 | PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,${PAM_DEPS}" | ||
38 | PACKAGECONFIG[anacron] = "--enable-anacron,--disable-anacron,anacron" | ||
39 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux" | ||
40 | PACKAGECONFIG[inotify] = "--with-inotify,--without-inotify," | ||
41 | |||
42 | INITSCRIPT_NAME = "crond" | ||
43 | INITSCRIPT_PARAMS = "start 90 2 3 4 5 . stop 60 0 1 6 ." | ||
44 | |||
45 | USERADD_PACKAGES = "${PN}" | ||
46 | GROUPADD_PARAM:${PN} = "--system crontab" | ||
47 | |||
48 | SYSTEMD_SERVICE:${PN} = "crond.service" | ||
49 | |||
50 | do_install:append () { | ||
51 | install -d ${D}${sysconfdir}/sysconfig/ | ||
52 | install -d ${D}${sysconfdir}/init.d/ | ||
53 | install -m 0644 ${S}/crond.sysconfig ${D}${sysconfdir}/sysconfig/crond | ||
54 | install -m 0755 ${UNPACKDIR}/crond.init ${D}${sysconfdir}/init.d/crond | ||
55 | |||
56 | # install systemd unit files | ||
57 | install -d ${D}${systemd_system_unitdir} | ||
58 | install -m 0644 ${UNPACKDIR}/crond.service ${D}${systemd_system_unitdir} | ||
59 | sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ | ||
60 | -e 's,@SBINDIR@,${sbindir},g' \ | ||
61 | ${D}${systemd_system_unitdir}/crond.service | ||
62 | |||
63 | # below are necessary for a complete cron environment | ||
64 | install -d ${D}${localstatedir}/spool/cron | ||
65 | install -m 0755 ${UNPACKDIR}/crontab ${D}${sysconfdir}/ | ||
66 | mkdir -p ${D}${sysconfdir}/cron.d | ||
67 | mkdir -p ${D}${sysconfdir}/cron.hourly | ||
68 | mkdir -p ${D}${sysconfdir}/cron.daily | ||
69 | mkdir -p ${D}${sysconfdir}/cron.weekly | ||
70 | mkdir -p ${D}${sysconfdir}/cron.monthly | ||
71 | touch ${D}${sysconfdir}/cron.deny | ||
72 | |||
73 | # below setting is necessary to allow normal user using crontab | ||
74 | |||
75 | # setgid for crontab binary | ||
76 | chown root:crontab ${D}${bindir}/crontab | ||
77 | chmod 2755 ${D}${bindir}/crontab | ||
78 | |||
79 | # allow 'crontab' group write to /var/spool/cron | ||
80 | chown root:crontab ${D}${localstatedir}/spool/cron | ||
81 | chmod 770 ${D}${localstatedir}/spool/cron | ||
82 | |||
83 | chmod 600 ${D}${sysconfdir}/crontab | ||
84 | } | ||
85 | |||
86 | FILES:${PN} += "${sysconfdir}/cron*" | ||
87 | CONFFILES:${PN} += "${sysconfdir}/crontab" | ||