123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339 |
- %bcond_with systemd
- Name: chrony
- Version: 4.5
- Release: 1%{?_dist_release}%{?with_systemd:.systemd}
- Summary: An NTP client/server
- Group: system
- Vendor: Project Vine
- Distribution: Vine Linux
- Packager: tomop
- License: GPLv2
- URL: https://chrony.tuxfamily.org/
- Source0: https://download.tuxfamily.org/chrony/chrony-%{version}%{?prerelease}.tar.gz
- Source2: chrony.dhclient
- Source3: chronyd.sysconfig
- Source4: chronyd.init
- Source6: chrony.sysusers
- # add distribution-specific bits to DHCP dispatcher
- Patch1: chrony-nm-dispatcher-dhcp.patch
- BuildRequires: libcap-devel readline-devel ncurses-devel bison
- BuildRequires: libseccomp-devel
- BuildRequires: gcc gcc-c++ bison gnupg2 net-tools
- BuildRequires: gnutls-devel gnutls-utils
- Requires(pre): shadow-utils
- %if %{with systemd}
- BuildRequires: systemd
- %{?systemd_requires}
- %else
- Requires(post): chkconfig
- Requires(preun): chkconfig initscripts
- Requires(postun): initscripts
- %endif
- %if "%{?_dist_release}" == "vl7"
- Obsoletes: ntp < 4.2.6p5
- %endif
- %description
- A client/server for the Network Time Protocol, this program keeps your
- computer's clock accurate. It was specially designed to support
- systems with intermittent internet connections, but it also works well
- in permanently connected environments. It can use also hardware reference
- clocks, system real-time clock or manual input as time references.
- %debug_package
- %prep
- %setup -q -n %{name}-%{version}%{?prerelease}
- %patch1 -p1 -b .nm-dispatcher-dhcp
- echo '# Keys used by chronyd for command and NTP authentication' > chrony.keys
- # use example chrony.conf as the default config with some modifications:
- # - use our vendor zone (2.*pool.ntp.org names include IPv6 addresses)
- # - enable leapsectz to get TAI-UTC offset and leap seconds from tzdata
- # - use NTP servers from DHCP
- sed -e 's|^\(pool \)\(pool.ntp.org\)|\1ntp.nict.jp|' \
- -e 's|#\(leapsectz\)|\1|' \
- -e 's|^pool.*pool.ntp.org.*|&\n\n# Use NTP servers from DHCP.\nsourcedir /run/chrony-dhcp|' \
- < examples/chrony.conf.example2 > chrony.conf
- touch -r examples/chrony.conf.example2 chrony.conf
- # regenerate the file from getdate.y
- rm -f getdate.c
- %build
- %configure \
- --chronyrundir=/run/chrony \
- --docdir=%{_docdir} \
- --enable-ntp-signd \
- --enable-scfilter \
- --disable-nts \
- --with-ntp-era=$(date -d '1970-01-01 00:00:00+00:00' +'%s') \
- --with-user=chrony \
- --with-hwclockfile=%{_sysconfdir}/adjtime \
- --with-pidfile=/run/chrony/chronyd.pid \
- --with-sendmail=%{_sbindir}/sendmail \
- %{mil}
- make %{?_smp_mflags}
- %install
- make install DESTDIR=%{buildroot}
- rm -rf %{buildroot}%{_docdir}
- mkdir -p %{buildroot}%{_initrddir}
- mkdir -p %{buildroot}%{_sysconfdir}/{sysconfig,logrotate.d}
- mkdir -p %{buildroot}%{_localstatedir}/{lib,log}/chrony
- mkdir -p %{buildroot}%{_sysconfdir}/dhcp/dhclient.d
- mkdir -p %{buildroot}%{_libexecdir}
- mkdir -p %{buildroot}%{_prefix}/lib/NetworkManager/dispatcher.d
- %if %{with systemd}
- mkdir -p %{buildroot}%{_sysusersdir}
- mkdir -p %{buildroot}{%{_unitdir},%{_prefix}/lib/systemd/ntp-units.d}
- %endif
- install -m 644 -p chrony.conf %{buildroot}%{_sysconfdir}/chrony.conf
- install -m 755 -p %{SOURCE2} \
- %{buildroot}%{_sysconfdir}/dhcp/dhclient.d/chrony.sh
- install -m 644 -p examples/chrony.logrotate \
- %{buildroot}%{_sysconfdir}/logrotate.d/chrony
- install -m 755 -p examples/chrony.nm-dispatcher.onoffline \
- %{buildroot}%{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony-onoffline
- install -m 755 -p examples/chrony.nm-dispatcher.dhcp \
- %{buildroot}%{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony-dhcp
- %if %{with systemd}
- install -m 644 -p examples/chronyd.service \
- %{buildroot}%{_unitdir}/chronyd.service
- install -m 644 -p examples/chronyd-restricted.service \
- %{buildroot}%{_unitdir}/chronyd-restricted.service
- install -m 644 -p examples/chrony-wait.service \
- %{buildroot}%{_unitdir}/chrony-wait.service
- install -m 644 -p %{SOURCE6} \
- %{buildroot}%{_sysusersdir}/chrony.conf
- echo 'chronyd.service' > \
- %{buildroot}/usr/lib/systemd/ntp-units.d/50-chronyd.list
- %else
- install -m 755 -p %{SOURCE4} %{buildroot}%{_initrddir}/chronyd
- %endif
- install -m 644 -p %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/chronyd
- touch %{buildroot}%{_sysconfdir}/chrony.keys
- touch %{buildroot}%{_localstatedir}/lib/chrony/{drift,rtc}
- %pre
- %if %{with systemd}
- %sysusers_create_compat %{SOURCE6}
- %else
- getent group chrony > /dev/null || /usr/sbin/groupadd -r chrony
- getent passwd chrony > /dev/null || /usr/sbin/useradd -r -g chrony \
- -d %{_localstatedir}/lib/chrony -s /sbin/nologin chrony
- exit 0
- %endif
- %post
- %if %{with systemd}
- # migrate from chrony-helper to sourcedir directive
- if test -a %{_libexecdir}/chrony-helper; then
- grep -qi 'sourcedir /run/chrony-dhcp$' %{_sysconfdir}/chrony.conf 2> /dev/null || \
- echo -e '\n# Use NTP servers from DHCP.\nsourcedir /run/chrony-dhcp' >> \
- %{_sysconfdir}/chrony.conf
- mkdir -p /run/chrony-dhcp
- for f in %{_localstatedir}/lib/dhclient/chrony.servers.*; do
- sed 's|.*|server &|' < $f > /run/chrony-dhcp/"${f##*servers.}.sources"
- done 2> /dev/null
- fi
- %systemd_post chronyd.service chronyd-restricted.service chrony-wait.service
- %else
- /sbin/chkconfig --add chronyd
- :
- %endif
- %preun
- %if %{with systemd}
- %systemd_preun chronyd.service chronyd-restricted.service chrony-wait.service
- %else
- if [ "$1" -eq 0 -o -x /bin/systemctl ]; then
- /sbin/service chronyd stop &> /dev/null
- /sbin/chkconfig --del chronyd
- fi
- :
- %endif
- %postun
- %if %{with systemd}
- %systemd_postun_with_restart chronyd.service chronyd-restricted.service
- %else
- if [ "$1" -ge 1 ]; then
- /sbin/service chronyd condrestart &> /dev/null
- fi
- :
- %endif
- %files
- %defattr(-,root,root,-)
- %license COPYING
- %doc FAQ NEWS README examples/*
- %config(noreplace) %{_sysconfdir}/chrony.conf
- %config(noreplace) %attr(640,root,chrony) %{_sysconfdir}/chrony.keys
- %config(noreplace) %{_sysconfdir}/sysconfig/chronyd
- %config(noreplace) %{_sysconfdir}/logrotate.d/chrony
- %if %{with systemd}
- /usr/lib/systemd/ntp-units.d/*.list
- %{_unitdir}/chrony*.service
- %{_sysusersdir}/chrony.conf
- %else
- %{_initrddir}/chronyd
- %endif
- %dir %{_prefix}/lib/NetworkManager
- %dir %{_prefix}/lib/NetworkManager/dispatcher.d
- %{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony*
- %dir %{_sysconfdir}/dhcp
- %dir %{_sysconfdir}/dhcp/dhclient.d
- %{_sysconfdir}/dhcp/dhclient.d/chrony.sh
- %{_bindir}/chronyc
- %{_sbindir}/chronyd
- %{_mandir}/man[158]/%{name}*.[158]*
- %dir %attr(-,chrony,chrony) %{_localstatedir}/lib/chrony
- %ghost %attr(-,chrony,chrony) %{_localstatedir}/lib/chrony/drift
- %ghost %attr(-,chrony,chrony) %{_localstatedir}/lib/chrony/rtc
- %dir %attr(-,chrony,chrony) %{_localstatedir}/log/chrony
- %changelog
- * Fri Jul 12 2024 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.5-1
- - new upstream release.
- * Wed Nov 24 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.1-1
- - new upstream release.
- * Tue Sep 08 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5.1-2
- - rebuilt with nettle-3.6.
- * Thu Aug 27 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5.1-1
- - new upstream release.
- * Mon Apr 06 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5-2
- - added systemd stuff (disabled as default).
- - updated Source2.
- * Wed Mar 25 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.5-1
- - new upstream release.
- - dropped Patch102: fixed in upstream.
- * Sat Aug 31 2019 Toshiaki Ara <ara_t@384.jp> 3.2-2
- - rebuild with readline-8.0 and ncurses-6.1
- * Sat Jun 9 2018 IWAI, Masaharu <iwaim.sub@gmail.com> 3.2-1
- - update to 3.2
- - drop Patch101; upstream merged
- - add Fedora's patch (Patch102)
- * Tue Dec 05 2017 Miroslav Lichvar <mlichvar@redhat.com> 3.2-2
- - fix chronyc getting stuck in infinite loop after clock step (#1520884)
- - restrict obsoleting 'ntp' package to VineSeed; for Vine Linux 6
- * Thu May 18 2017 IWAI, Masaharu <iwaim.sub@gmail.com> 3.0-1
- - update to 3.0
- - add patch to fix time smoothing in interleaved mode (Patch101); from Debian 3.0-4
- - drop chrony.txt in %%doc; upstream dropped
- - drop info file; upstream dropped
- - drop R: info
- - drop BR: texinfo
- - drop scripts for info
- * Mon Jul 11 2016 IWAI, Masaharu <iwaim.sub@gmail.com> 2.2.1-2
- - Obsoletes: networkmanager-dispatcher-chrony
- * Wed Mar 23 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.2.1-1
- - new upstream release.
- * Fri Oct 23 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.2-1
- - new upstream release.
- * Sat Jul 25 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.1.1-1
- - new upstream release.
- * Tue Dec 23 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.31-1
- - new upstream release.
- * Sat Jun 7 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.29.1-1
- - new upstream release.
- - initial build for Vine Linux.
- * Fri Aug 09 2013 Miroslav Lichvar <mlichvar@redhat.com> 1.25-3
- - fix buffer overflow when processing crafted command packets (CVE-2012-4502)
- - don't send uninitialized data in command replies (CVE-2012-4503)
- * Thu May 19 2011 Miroslav Lichvar <mlichvar@redhat.com> 1.25-2
- - remove timepps.h, NM and dhclient scripts
- - build with readline
- * Thu May 05 2011 Miroslav Lichvar <mlichvar@redhat.com> 1.25-1
- - update to 1.25
- - link with -Wl,-z,relro,-z,now options
- - use iburst, four pool servers, rtcsync, stratumweight in default config
- - suppress install-info errors
- * Thu Apr 29 2010 Miroslav Lichvar <mlichvar@redhat.com> 1.24-4.20100428git73d775
- - update to 20100428git73d775
- - replace initstepslew directive with makestep in default config
- - add NetworkManager dispatcher script
- - add dhclient script
- - retry server/peer name resolution at least once to workaround
- NetworkManager race condition on boot
- - don't verify chrony.keys
- * Fri Mar 12 2010 Miroslav Lichvar <mlichvar@redhat.com> 1.24-3.20100302git5fb555
- - update to snapshot 20100302git5fb555
- - compile with PPS API support
- * Thu Feb 04 2010 Miroslav Lichvar <mlichvar@redhat.com> 1.24-1
- - update to 1.24 (#555367, CVE-2010-0292 CVE-2010-0293 CVE-2010-0294)
- - modify default config
- - step clock on start if it is off by more than 100 seconds
- - disable client log
- - build with -fPIE on sparc
- * Tue Dec 15 2009 Miroslav Lichvar <mlichvar@redhat.com> 1.24-0.1.pre1
- - update to 1.24-pre1
- * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.23-7.20081106gitbe42b4
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
- * Fri Jul 17 2009 Miroslav Lichvar <mlichvar@redhat.com> 1.23-6.20081106gitbe42b4
- - switch to editline
- - support arbitrary chronyc commands in init script
- * Mon Jun 08 2009 Dan Horak <dan[at]danny.cz> 1.23-5.20081106gitbe42b4
- - add patch with support for s390/s390x
- * Mon Mar 09 2009 Miroslav Lichvar <mlichvar@redhat.com> 1.23-4.20081106gitbe42b4
- - fix building with broken libcap header (#483548)
- * Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.23-3.20081106gitbe42b4
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
- * Wed Nov 19 2008 Miroslav Lichvar <mlichvar@redhat.com> 1.23-2.20081106gitbe42b4
- - fix info uninstall
- - generate random command key in init script
- - support cyclelogs, online, offline commands in init script
- - add logrotate script
- * Tue Nov 11 2008 Miroslav Lichvar <mlichvar@redhat.com> 1.23-1.20081106gitbe42b4
- - initial release
|