]> git.ipfire.org Git - ipfire-3.x.git/blob - chrony/chrony.nm
intel-microcode: Set correct permissions for dirs and files
[ipfire-3.x.git] / chrony / chrony.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = chrony
7 version = 4.3
8 release = 2
9
10 groups = System/Daemons
11 url = https://chrony.tuxfamily.org
12 license = GPLv2
13 summary = An NTP client/server.
14
15 description
16 A client/server for the Network Time Protocol, this program keeps your
17 computer's clock accurate. It was specially designed to support
18 systems with intermittent internet connections, but it also works well
19 in permanently connected environments. It can use also hardware reference
20 clocks, system real-time clock or manual input as time references.
21 end
22
23 source_dl = https://download.tuxfamily.org/chrony/
24
25 build
26 requires
27 bison
28 libcap-devel
29 libedit-devel
30 nettle-devel
31 readline-devel
32 shadow-utils
33 texinfo
34 end
35
36 configure_options = \
37 --prefix=/usr \
38 --with-sendmail=/usr/sbin/sendmail
39
40 prepare_cmds
41 %{create_user}
42 end
43
44 build_targets += getdate all docs
45 install_targets += install-docs
46
47 install_cmds
48 mkdir -pv %{BUILDROOT}/var/{lib,log}/chrony
49 touch %{BUILDROOT}/var/lib/chrony/{drift,rtc}
50
51 mkdir -pv %{BUILDROOT}/etc
52 install -m 644 -p %{DIR_SOURCE}/chrony.conf %{BUILDROOT}/etc/chrony.conf
53 install -m 640 -p %{DIR_SOURCE}/chrony.keys %{BUILDROOT}/etc/chrony.keys
54 chown -v root.chrony %{BUILDROOT}/etc/chrony.keys
55
56 chown -Rv chrony.chrony %{BUILDROOT}/var/{lib,log}/chrony
57 end
58 end
59
60 create_user
61 getent group chrony >/dev/null || /usr/sbin/groupadd -r chrony
62 getent passwd chrony >/dev/null || /usr/sbin/useradd -r -g chrony \
63 -d /var/lib/chrony -s /sbin/nologin chrony
64 end
65
66 packages
67 package %{name}
68 groups += Base
69
70 configfiles
71 /etc/chrony.conf
72 /etc/chrony.keys
73 end
74
75 prerequires
76 shadow-utils
77 systemd-units
78 end
79
80 script prein
81 %{create_user}
82 end
83
84 script postin
85 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
86 /bin/systemctl --no-reload enable \
87 chrony-wait.service chronyd.service >/dev/null 2>&1 || :
88 end
89
90 script preun
91 /bin/systemctl --no-reload disable \
92 chrony-wait.service chronyd.service >/dev/null 2>&1 || :
93 /bin/systemctl stop chrony-wait.service chronyd.service >/dev/null 2>&1 || :
94 end
95
96 script postup
97 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
98 /bin/systemctl try-restart chronyd.service >/dev/null 2>&1 || :
99 end
100 end
101
102 package %{name}-debuginfo
103 template DEBUGINFO
104 end
105 end