diff options
Diffstat (limited to 'meta/recipes-extended/cronie/cronie_1.7.1.bb')
-rw-r--r-- | meta/recipes-extended/cronie/cronie_1.7.1.bb | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/meta/recipes-extended/cronie/cronie_1.7.1.bb b/meta/recipes-extended/cronie/cronie_1.7.1.bb new file mode 100644 index 0000000000..854b68163c --- /dev/null +++ b/meta/recipes-extended/cronie/cronie_1.7.1.bb | |||
@@ -0,0 +1,85 @@ | |||
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://crond.init \ | ||
21 | file://crontab \ | ||
22 | file://crond.service \ | ||
23 | ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)}" | ||
24 | |||
25 | PAM_SRC_URI = "file://crond_pam_config.patch" | ||
26 | PAM_DEPS = "libpam libpam-runtime pam-plugin-access pam-plugin-loginuid" | ||
27 | |||
28 | SRC_URI[sha256sum] = "78033100c24413f0c40f93e6138774d6a4f55bc31050567b90db45a2f9f1b954" | ||
29 | |||
30 | inherit autotools update-rc.d useradd systemd github-releases | ||
31 | UPSTREAM_CHECK_REGEX = "releases/tag/cronie-(?P<pver>\d+(\.\d+)+)" | ||
32 | |||
33 | PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" | ||
34 | |||
35 | PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit," | ||
36 | PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,${PAM_DEPS}" | ||
37 | PACKAGECONFIG[anacron] = "--enable-anacron,--disable-anacron,anacron" | ||
38 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux" | ||
39 | |||
40 | INITSCRIPT_NAME = "crond" | ||
41 | INITSCRIPT_PARAMS = "start 90 2 3 4 5 . stop 60 0 1 6 ." | ||
42 | |||
43 | USERADD_PACKAGES = "${PN}" | ||
44 | GROUPADD_PARAM:${PN} = "--system crontab" | ||
45 | |||
46 | SYSTEMD_SERVICE:${PN} = "crond.service" | ||
47 | |||
48 | do_install:append () { | ||
49 | install -d ${D}${sysconfdir}/sysconfig/ | ||
50 | install -d ${D}${sysconfdir}/init.d/ | ||
51 | install -m 0644 ${S}/crond.sysconfig ${D}${sysconfdir}/sysconfig/crond | ||
52 | install -m 0755 ${WORKDIR}/crond.init ${D}${sysconfdir}/init.d/crond | ||
53 | |||
54 | # install systemd unit files | ||
55 | install -d ${D}${systemd_system_unitdir} | ||
56 | install -m 0644 ${WORKDIR}/crond.service ${D}${systemd_system_unitdir} | ||
57 | sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ | ||
58 | -e 's,@SBINDIR@,${sbindir},g' \ | ||
59 | ${D}${systemd_system_unitdir}/crond.service | ||
60 | |||
61 | # below are necessary for a complete cron environment | ||
62 | install -d ${D}${localstatedir}/spool/cron | ||
63 | install -m 0755 ${WORKDIR}/crontab ${D}${sysconfdir}/ | ||
64 | mkdir -p ${D}${sysconfdir}/cron.d | ||
65 | mkdir -p ${D}${sysconfdir}/cron.hourly | ||
66 | mkdir -p ${D}${sysconfdir}/cron.daily | ||
67 | mkdir -p ${D}${sysconfdir}/cron.weekly | ||
68 | mkdir -p ${D}${sysconfdir}/cron.monthly | ||
69 | touch ${D}${sysconfdir}/cron.deny | ||
70 | |||
71 | # below setting is necessary to allow normal user using crontab | ||
72 | |||
73 | # setgid for crontab binary | ||
74 | chown root:crontab ${D}${bindir}/crontab | ||
75 | chmod 2755 ${D}${bindir}/crontab | ||
76 | |||
77 | # allow 'crontab' group write to /var/spool/cron | ||
78 | chown root:crontab ${D}${localstatedir}/spool/cron | ||
79 | chmod 770 ${D}${localstatedir}/spool/cron | ||
80 | |||
81 | chmod 600 ${D}${sysconfdir}/crontab | ||
82 | } | ||
83 | |||
84 | FILES:${PN} += "${sysconfdir}/cron*" | ||
85 | CONFFILES:${PN} += "${sysconfdir}/crontab" | ||