Merge ~slyon/ubuntu/+source/chrony:merge-lp2110435-questing into ubuntu/+source/chrony:debian/experimental

Proposed by Lukas Märdian
Status: Merged
Merge reported by: Lukas Märdian
Merged at revision: de4c18188d37067dcabe2a70671da18ef8ca0866
Proposed branch: ~slyon/ubuntu/+source/chrony:merge-lp2110435-questing
Merge into: ubuntu/+source/chrony:debian/experimental
Diff against target: 1977 lines (+1579/-9)
23 files modified
debian/NEWS (+40/-0)
debian/README.container (+72/-0)
debian/changelog (+1115/-0)
debian/chrony.conf (+3/-2)
debian/chrony.config (+10/-0)
debian/chrony.default (+4/-0)
debian/chrony.examples (+1/-0)
debian/chrony.service (+3/-2)
debian/chronyd-starter.sh (+68/-0)
debian/conf.d/ubuntu-nts.conf (+6/-0)
debian/control (+4/-1)
debian/docs (+1/-0)
debian/install (+4/-0)
debian/nts-bootstrap-staging-ubuntu.crt (+11/-0)
debian/nts-bootstrap-ubuntu.crt (+11/-0)
debian/postinst (+26/-3)
debian/postrm (+14/-0)
debian/rules (+0/-1)
debian/templates (+12/-0)
debian/tests/control (+6/-0)
debian/tests/default-ubuntu-sources-behavior (+134/-0)
debian/ubuntu-ntp-pools.sources (+31/-0)
debian/usr.sbin.chronyd (+3/-0)
Reviewer Review Type Date Requested Status
Jonas Jelten (community) Approve
Lukas Märdian Pending
Canonical Server Reporter Pending
Canonical Server packageset reviewers Pending
Canonical Server Core Reviewers Pending
git-ubuntu import Pending
Review via email: mp+487764@code.launchpad.net

Description of the change

PPA: https://launchpad.net/~slyon/+archive/ubuntu/merge-lp2110435-chrony/+packages

DEP-8:
=> I retriggered amd64 as the run_system_tests case passed locally and seems to be flaky.

$ ppa tests ppa:slyon/merge-lp2110435-chrony
[...]
* Results:
  - chrony: questing/chrony/4.7-1ubuntu1~ppa3 [amd64]
    + ✅ chrony on questing for amd64 @ 30.06.25 14:02:03 Log️ 🗒️
  - chrony: questing/chrony/4.7-1ubuntu1~ppa3 [arm64]
    + ✅ chrony on questing for arm64 @ 30.06.25 13:42:46 Log️ 🗒️
  - chrony: questing/chrony/4.7-1ubuntu1~ppa3 [armhf]
    + ✅ chrony on questing for armhf @ 30.06.25 13:48:10 Log️ 🗒️
  - chrony: questing/chrony/4.7-1ubuntu1~ppa3 [ppc64el]
    + ✅ chrony on questing for ppc64el @ 30.06.25 13:43:43 Log️ 🗒️
  - chrony: questing/chrony/4.7-1ubuntu1~ppa3 [s390x]
    + ✅ chrony on questing for s390x @ 30.06.25 14:01:09 Log️ 🗒️

Range diff:

$ git range-diff old/debian..logical/4.6.1-1ubuntu2 new/debian..slyon/merge-lp2110435-questing --creation-factor=100

Installation & removal:
# add-apt-repository ppa:slyon/merge-lp2110435-chrony
[...]

# apt install chrony
Upgrading:
  chrony

Summary:
  Upgrading: 1, Installing: 0, Removing: 0, Not Upgrading: 63
  Download size: 337 kB
  Space needed: 9216 B / 7041 MB available

Get:1 https://ppa.launchpadcontent.net/slyon/merge-lp2110435-chrony/ubuntu questing/main amd64 chrony amd64 4.7-1ubuntu1~ppa3 [337 kB]
Fetched 337 kB in 0s (1214 kB/s)
Preconfiguring packages ...
(Reading database ... 78160 files and directories currently installed.)
Preparing to unpack .../chrony_4.7-1ubuntu1~ppa3_amd64.deb ...
Unpacking chrony (4.7-1ubuntu1~ppa3) over (4.6.1-1ubuntu2) ...
Setting up chrony (4.7-1ubuntu1~ppa3) ...
Installing new version of config file /etc/apparmor.d/usr.sbin.chronyd ...
Replacing config file /etc/chrony/chrony.conf with new version
Processing triggers for man-db (2.13.1-1) ...
[...]

root@chrony:~# systemctl status chrony
● chrony.service - chrony, an NTP client/server
     Loaded: loaded (/usr/lib/systemd/system/chrony.service; enabled; preset: enabled)
     Active: active (running) since Mon 2025-06-30 13:25:41 UTC; 13s ago
 Invocation: cdc1afe5836c4fcdbfc6dc0425716581
       Docs: man:chronyd(8)
             man:chronyc(1)
             man:chrony.conf(5)
   Main PID: 1826 (chronyd-starter)
      Tasks: 3 (limit: 1042)
     Memory: 5.5M (peak: 5.9M)
        CPU: 42ms
     CGroup: /system.slice/chrony.service
             ├─1826 /bin/sh /usr/lib/systemd/scripts/chronyd-starter.sh -n -F 1
             ├─1838 /usr/sbin/chronyd -n -F 1
             └─1839 /usr/sbin/chronyd -n -F 1

Jun 30 13:25:41 chrony chronyd[1838]: Loaded seccomp filter (level 1)
Jun 30 13:25:41 chrony systemd[1]: Started chrony.service - chrony, an NTP client/server.
Jun 30 13:25:41 chrony chronyd[1838]: Added pool 1.ntp.ubuntu.com
Jun 30 13:25:41 chrony chronyd[1838]: Added pool 2.ntp.ubuntu.com
Jun 30 13:25:41 chrony chronyd[1838]: Added pool 3.ntp.ubuntu.com
Jun 30 13:25:41 chrony chronyd[1838]: Added pool 4.ntp.ubuntu.com
Jun 30 13:25:41 chrony chronyd[1838]: Added pool ntp-bootstrap.ubuntu.com
Jun 30 13:25:47 chrony chronyd[1838]: Selected source 185.125.190.122 (1.ntp.ubuntu.com)
Jun 30 13:25:47 chrony chronyd[1838]: System clock TAI offset set to 37 seconds
Jun 30 13:25:48 chrony chronyd[1838]: Selected source 185.125.190.123 (2.ntp.ubuntu.com)

# apt purge chrony systemd-timesyncd+
Installing:
  systemd-timesyncd

REMOVING:
  chrony*

Summary:
  Upgrading: 0, Installing: 1, Removing: 1, Not Upgrading: 63
  Download size: 41.4 kB
  Freed space: 449 kB

Continue? [Y/n]
Get:1 http://archive.ubuntu.com/ubuntu questing/main amd64 systemd-timesyncd amd64 257.6-1ubuntu1 [41.4 kB]
Fetched 41.4 kB in 0s (102 kB/s)
[...]

To post a comment you must log in.
Revision history for this message
Jonas Jelten (jj) wrote :

Review Symbols:
+ = OK
! = Not OK
? = Question
N = Not applicable
S = Skipped

* Changelog:
  - [+] Changelog entry has correct version and targeted codename
  - [+] Correct formatting of changelog items
  - [+] Bug references correct
  - [+] Old content and logical tag match as expected (Package Merge)

* Release notes and Documentation
  - [+] Added, updated or enqueued relevant documentation.
  - [N] Added, updated or enqueued relevant release notes.

* Package Merge - indirect changes:
  - [+] No upstream changes that need adapting due to Ubuntu's design
  - [+] No further upstream version/changes to consider
  - [+] Debian changes are compatible with the Ubuntu implementation
  - [+] update-maintainer has been run

* Package Merge - old delta:
  - [+] Dropped changes are ok to be dropped
  - [+] Nothing else to drop
  - [+] Old delta was forwarded to upstream/Debian or marked as Ubuntu-only

* New delta in debian/*:
  - [+] new changes in debian/* are OK
  - [+] New delta was forwarded to Debian or marked as Ubuntu-only

* New patches:
  - [+] No new patches added
  - [N] Patches match those proposed/committed upstream
  - [N] Patches correctly included in Debian/patches/series
  - [N] Patches have correct DEP-3 metadata
  - [N] Patches follow our style choices
  - [N] New code not from upstream was forwarded or marked as Ubuntu-only

* Git/maintenance:
  - [!] Commits are properly split (more important on -dev than on SRUs)

* Build/Test:
  - [+] Build is OK
  - [N] This is an SRU, the validation instructions are ok
  - [+] Testcases added or adapted (N/A if not strictly required or already present)
  - [+] autopkgtest against the PPA package passes (if possible, evidence was provided already)
  - [+] Based on PPA builds and the build-log, no new component mismatch expected
  - [+] Verified PPA package installs/uninstalls
  - [+] Verified PPA source package matches Merge Proposal source package
  - [+] Verified function manually

notes:
- ! merge and reconstruct changelog was committed two times, please fix :)
- why doesn't chrony have After=network.target any more?
- new adjustments for sd-notify look good!

review: Approve
6478701... by Lukas Märdian

d/chrony.conf: Document non-NTS sources from DHCP (LP: #2115565)

UD-Forwarded: no, ubuntu-specific

--CL--
      + d/chrony.conf: Document non-NTS sources from DHCP (LP #2115565)

de4c181... by Lukas Märdian

changelog

Revision history for this message
Lukas Märdian (slyon) wrote :

The After=network.target is explained in Debian upload 4.6.1-2 – And I think that's a good thing, chrony can happily work without routable IPs or DNS being configured.

```
  * debian/chrony.service:
    - Drop 'After=network.target'. First and foremost, the network.target unit
    doesn't guarantee that any network interfaces are configured or
    operational. Furthermore, chronyd is perfectly able to operate without
    network or DNS functionality notably when used with a hardware reference
    clock as a time source.
    - Do not pull time-sync.target nor order chrony.service before it. Services
    pulling and being ordered before time-sync.target must ensure that the
    system clock has been completely synchronized and thus typically guarantee
    an accurate clock. This can't be assumed right after chrony.service has
    finished starting.
```

Nice spot on the merge-changelogs & reconstruct-changelog commits. I will fix it before upload.

I'll also be piggybacking a tiny fix for bug #2115565 on top as "Added Changes".

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/debian/NEWS b/debian/NEWS
2index fe7e4b9..2c4fa8f 100644
3--- a/debian/NEWS
4+++ b/debian/NEWS
5@@ -1,3 +1,43 @@
6+chrony (4.5-3ubuntu4) plucky; urgency=medium
7+
8+ Starting with version 4.5-3ubuntu4, chrony will ship with a default
9+ configuration set to use Ubuntu NTS servers by default.
10+
11+ The two main changes are:
12+
13+ a) NTS/KE uses a separate port (4460/tcp) to negotiate security parameters,
14+ which are then used via the normal NTP port (123/udp). This is a new
15+ deployment, running on different IP addresses than the service without NTS.
16+
17+ b) A new CA is installed in /etc/chrony/nts-bootstrap-ubuntu.crt that is
18+ used specifically for the Ubuntu NTS bootstrap server, needed for when the
19+ clock is too far off. This is added to certificate set ID "1", and defined
20+ via /etc/chrony/conf.d/ubuntu-nts.conf. There is also a staging CA shipped
21+ with the package, but it's not referred to anywhere and is just there as a
22+ convenience for testing the staging servers.
23+
24+ If your network does not allow access to the Ubuntu NTS servers and the
25+ required ports, and the new configuration is in place, chrony will not be
26+ able to adjust this system's clock. To revert to NTP, just edit the
27+ configuration file in /etc/chrony/sources.d/ubuntu-ntp-pools.sources and
28+ revert to using the listed NTP servers in favor of the NTS ones. Or revert
29+ to your previous copy of that configuration file.
30+
31+ -- Andreas Hasenack <andreas@canonical.com> Fri, 11 Oct 2024 13:31:00 -0300
32+
33+chrony (4.5-3ubuntu2) oracular; urgency=medium
34+
35+ Starting with chrony version 4.5-3ubuntu2 the default time sources are
36+ configured by default in the /etc/chrony/sources.d/ubuntu-ntp-pools.sources
37+ file.
38+ Setting the chrony/configure_ubuntu_pools_in_sourcesd debconf key to "false",
39+ either via pre-seeding or dpkg-reconfigure, will result in the package being
40+ installed without any time sources configured. With this setting, in the case
41+ of an upgrade, if /etc/chrony/sources.d/ubuntu-ntp-pools.sources exists, it
42+ will be removed and subsequent upgrades will not recreate it.
43+
44+ -- Ankush Pathak <ankush.pathak@canonical.com> Tue, 16 Jul 2024 17:57:41 -0600
45+
46 chrony (4.1~pre1-1) experimental; urgency=medium
47
48 Starting with chrony 4.0, it is possible to specify NTP sources in files
49diff --git a/debian/README.container b/debian/README.container
50new file mode 100644
51index 0000000..7a068b5
52--- /dev/null
53+++ b/debian/README.container
54@@ -0,0 +1,72 @@
55+Chrony in Containers
56+--------------------
57+
58+Currently in 99.9+% of the cases syncing the local clock in a container
59+is wrong. Most of the time it will be unable to do so, because it is lacking
60+CAP_SYS_TIME. Or worse, if the CAP_SYS_TIME privilege is granted, multiple
61+containers could fight over the system's time, because the Linux kernel does
62+not provide time namespaces (yet).
63+
64+There are two things a user installing chrony usually wants:
65+1. synchronize my time (NTP client)
66+2. serve NTP (NTP server)
67+
68+In a container the first makes (usually) no sense, so by default we enable -x
69+there (as it would only crash otherwise).
70+This will disable the control of the system clock.
71+See `man chronyd` for more details on the -x option.
72+
73+Formerly, the check for Condition=CAP_SYS_TIME in the systemd service avoided
74+the crash of the NTP client portion, but that means the server use case will
75+not work by default in containers. It is still not recommended to use a
76+container as an NTP server, but if the host clock is synchronised via NTP,
77+adding the -x option to chronyd instances running in containers will allow
78+them to function as NTP servers which do not adjust the system clock.
79+The Condition=CAP_SYS_TIME check was a silent, no-log-entry stealing away
80+leaving users often unclear what happened - especially if they were more after
81+the NTP server than the NTP client.
82+
83+One could argue that someone who installs chrony expects the system time to be
84+synchronised, so it should fail if it is not able to do so. On the other hand
85+it could be argued that someone who installs chrony expects time to be served
86+over the network via NTP.
87+We can't know which expectation is applicable, so we assume that time should
88+be synchronised unless chronyd is running in a container (or is without
89+CAP_SYS_TIME in any other environment).
90+
91+To make things worse recent container implementations will offer CAP_SYS_TIME
92+to the container. Since from the container's point of view, this capability is
93+available for the container's user namespace. Just later on adjtimex and similar
94+are actually evaluated against the host kernel where they will fail. Due to
95+that without further precaution running chrony in Ubuntu in the future will
96+likely have the service start (as Condition=CAP_SYS_TIME will be true) but
97+then immediately fail.
98+This will depend on the environment e.g. versions and types of containers and
99+thereby feel just 'unreliable' from users point of view.
100+Furthermore it will affect upgrades as the service has to be restarted for a
101+package upgrade to be considered complete.
102+
103+Due to all of that Ubuntu decided (LP: #1589780) to default to -x (do not
104+set the system clock) in containers.
105+
106+If one really wants to (try to) sync time in a container or CAP_SYS_TIME-less
107+environment set SYNC_IN_CONTAINER="yes" in /etc/default/chrony to disable
108+this special handling.
109+
110+It is important to mention that as soon as upstream provides a way to provide
111+a default config working in those cases Ubuntu intends to use that and drop
112+the current workaround.
113+
114+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Fri, 16 Mar 2018 12:25:44 +0100
115+
116+
117+In addition to the above mentioned SYNC_IN_CONTAINER="yes" enablement one also
118+needs to disable the "ConditionVirtualization=!container" check in
119+chrony.service (LP: #2111535), e.g. by placing an override config in
120+/etc/systemd/system/chrony.service.d/10-container.conf:
121+```
122+[Unit]
123+ConditionVirtualization=
124+```
125+
126+ -- Lukas Märdian <slyon@ubuntu.com> Mon, 02 Jun 2025 11:31:37 +0200
127diff --git a/debian/changelog b/debian/changelog
128index a3516dc..fe6515e 100644
129--- a/debian/changelog
130+++ b/debian/changelog
131@@ -1,3 +1,72 @@
132+chrony (4.7-1ubuntu1) questing; urgency=medium
133+
134+ * Merge with Debian experimental. Remaining changes: (LP: #2110435)
135+ - Set -x as default if unable to set time (e.g. in containers) (LP #1589780)
136+ Chrony is a single service which acts as both NTP client (i.e. syncing the
137+ local clock) and NTP server (i.e. providing NTP services to the network),
138+ and that is both desired and expected in the vast majority of cases.
139+ But in containers syncing the local clock is usually impossible, but this
140+ shall not break the providing of NTP services to the network.
141+ To some extent this makes chrony's default config more similar to 'ntpd',
142+ which complained in syslog but still provided NTP server service in those
143+ cases.
144+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
145+ + d/control: add new dependency libcap2-bin for capsh (usually
146+ installed anyway, but make them explicit to be sure).
147+ + d/chrony.default: new option SYNC_IN_CONTAINER to not fall
148+ back (Default off)
149+ + d/chronyd-starter.sh: wrapper to handle special cases in
150+ containers and if CAP_SYS_TIME is missing. Effectively allows
151+ running the NTP server in containers on a default installation
152+ and avoid failing to sync time (or if allowed to sync, avoid
153+ multiple containers fighting over it by accident).
154+ + d/install: Make chrony-starter.sh available on install.
155+ + d/docs, d/README.container: Provide documentation about the
156+ handling of this case.
157+ - d/rules, d/chrony.examples: Ship restricted service as an example
158+ not installed to the system for use. (See LP #2051028)
159+ - d/chrony.conf: remove Debian NTP pool
160+ - Install Ubuntu NTP sources in
161+ /etc/chrony/sources.d/ubuntu-ntp-pools.sources, gated on a low priority
162+ (default yes) debconf question (LP #2048876):
163+ + d/templates: Add debconf question to customize installation of
164+ /etc/chrony/sources.d/ubuntu-ntp-pools.sources
165+ + d/install, d/ubuntu-ntp-pools.sources: Install ubuntu-ntp-pools.sources
166+ in /usr/share/chrony
167+ + d/control: add dependency on debconf
168+ + d/postinst: handle Ubuntu pools via debconf and ucf
169+ + d/postrm: handle Ubuntu pools via debconf and ucf
170+ + d/NEWS: Add information about default time sources moving out from
171+ chrony.conf to /etc/chrony/sources.d/ubuntu-ntp-pools.sources.
172+ + d/chrony.config: debconf script to handle Ubuntu pools
173+ + d/t/control, d/t/default-ubuntu-sources-behavior: new test to check the
174+ debconf behavior
175+ - Use Ubuntu NTS servers by default (LP #2084585):
176+ + d/conf.d/ubuntu-nts.conf: refer to the CA used to sign the NTS bootstrap
177+ server
178+ + d/nts-bootstrap-{,staging}-ubuntu.crt: CA certificate for the NTS
179+ bootstrap servers
180+ + d/install: install the NTS bootstrap CAs
181+ + d/ubuntu-ntp-pools.sources: use NTS by default
182+ + d/t/default-ubuntu-sources-behavior: update tests for NTS support
183+ + d/NEWS: add news entry about the NTS change
184+ * Drop Changes:
185+ - d/t/helper-functions: Do not fail if backup does not exist
186+ [Fixed in 4.7-1]
187+ - d/tests: Clean up after __no_system_clock_control()
188+ [Fixed in 4.7-1]
189+ - d/chrony.service: Do not run inside containers by default (LP 2111535)
190+ [Fixed in 4.7-1]
191+ - d/t/default-ubuntu-sources-behavior: Adopt to upstream container handling.
192+ [Squashed into "new test to check the debconf behavior"]
193+ * Add Changes:
194+ - d/chrony.service: Allow real chronyd to send READY=1 via sd_notify in
195+ place of the chronyd-starter.sh wrapper.
196+ - d/usr.sbin.chronyd: Grant access to NOTIFY_SOCKET in AppArmor profile.
197+ - d/chrony.conf: Document non-NTS sources from DHCP (LP: #2115565)
198+
199+ -- Lukas Märdian <slyon@ubuntu.com> Mon, 30 Jun 2025 13:26:18 +0200
200+
201 chrony (4.7-1) experimental; urgency=medium
202
203 [ Vincent Blut ]
204@@ -87,6 +156,72 @@ chrony (4.6.1-2) unstable; urgency=medium
205
206 -- Vincent Blut <vincent.debian@free.fr> Wed, 02 Apr 2025 21:33:06 +0200
207
208+chrony (4.6.1-1ubuntu2) questing; urgency=medium
209+
210+ * d/chrony.service: Do not run inside containers by default (LP: #2111535)
211+ Still allow running tests in containers, by installing override
212+ configs in /etc/systemd/system/chrony.service.d/
213+ * d/tests: Clean up after __no_system_clock_control()
214+ * d/t/helper-functions: Do not fail if backup does not exist
215+ * d/t/default-ubuntu-sources-behavior: Adopt to upstream container handling.
216+
217+ -- Lukas Märdian <slyon@ubuntu.com> Tue, 03 Jun 2025 10:13:08 +0200
218+
219+chrony (4.6.1-1ubuntu1) plucky; urgency=medium
220+
221+ * Merge with Debian unstable (LP: #2085221). Remaining changes:
222+ - Set -x as default if unable to set time (e.g. in containers) (LP #1589780)
223+ Chrony is a single service which acts as both NTP client (i.e. syncing the
224+ local clock) and NTP server (i.e. providing NTP services to the network),
225+ and that is both desired and expected in the vast majority of cases.
226+ But in containers syncing the local clock is usually impossible, but this
227+ shall not break the providing of NTP services to the network.
228+ To some extent this makes chrony's default config more similar to 'ntpd',
229+ which complained in syslog but still provided NTP server service in those
230+ cases.
231+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
232+ + d/control: add new dependency libcap2-bin for capsh (usually
233+ installed anyway, but make them explicit to be sure).
234+ + d/chrony.default: new option SYNC_IN_CONTAINER to not fall
235+ back (Default off)
236+ + d/chronyd-starter.sh: wrapper to handle special cases in
237+ containers and if CAP_SYS_TIME is missing. Effectively allows
238+ running the NTP server in containers on a default installation
239+ and avoid failing to sync time (or if allowed to sync, avoid
240+ multiple containers fighting over it by accident).
241+ + d/install: Make chrony-starter.sh available on install.
242+ + d/docs, d/README.container: Provide documentation about the
243+ handling of this case.
244+ - d/rules, d/chrony.examples: Ship restricted service as an example
245+ not installed to the system for use. (See LP #2051028)
246+ - d/chrony.conf: remove Debian NTP pool
247+ - Install Ubuntu NTP sources in
248+ /etc/chrony/sources.d/ubuntu-ntp-pools.sources, gated on a low priority
249+ (default yes) debconf question (LP #2048876):
250+ + d/templates: Add debconf question to customize installation of
251+ /etc/chrony/sources.d/ubuntu-ntp-pools.sources
252+ + d/install, d/ubuntu-ntp-pools.sources: Install ubuntu-ntp-pools.sources
253+ in /usr/share/chrony
254+ + d/control: add dependency on debconf
255+ + d/postinst: handle Ubuntu pools via debconf and ucf
256+ + d/postrm: handle Ubuntu pools via debconf and ucf
257+ + d/NEWS: Add information about default time sources moving out from
258+ chrony.conf to /etc/chrony/sources.d/ubuntu-ntp-pools.sources.
259+ + d/chrony.config: debconf script to handle Ubuntu pools
260+ + d/t/control, d/t/default-ubuntu-sources-behavior: new test to check the
261+ debconf behavior
262+ - Use Ubuntu NTS servers by default (LP #2084585):
263+ + d/conf.d/ubuntu-nts.conf: refer to the CA used to sign the NTS bootstrap
264+ server
265+ + d/nts-bootstrap-{,staging}-ubuntu.crt: CA certificate for the NTS
266+ bootstrap servers
267+ + d/install: install the NTS bootstrap CAs
268+ + d/ubuntu-ntp-pools.sources: use NTS by default
269+ + d/t/default-ubuntu-sources-behavior: update tests for NTS support
270+ + d/NEWS: add news entry about the NTS change
271+
272+ -- Andreas Hasenack <andreas@canonical.com> Thu, 23 Jan 2025 10:35:08 -0300
273+
274 chrony (4.6.1-1) unstable; urgency=medium
275
276 * Import upstream version 4.6.1:
277@@ -134,6 +269,87 @@ chrony (4.6~pre1-1) experimental; urgency=medium
278
279 -- Vincent Blut <vincent.debian@free.fr> Tue, 30 Jul 2024 15:01:19 +0200
280
281+chrony (4.5-3ubuntu4) plucky; urgency=medium
282+
283+ * Use Ubuntu NTS servers by default (LP: #2084585):
284+ - d/conf.d/ubuntu-nts.conf: refer to the CA used to sign the NTS bootstrap
285+ server
286+ - d/nts-bootstrap-{,staging}-ubuntu.crt: CA certificate for the NTS
287+ bootstrap servers
288+ - d/install: install the NTS bootstrap CAs
289+ - d/ubuntu-ntp-pools.sources: use NTS by default
290+ - d/t/default-ubuntu-sources-behavior: update tests for NTS support
291+ - d/NEWS: add news entry about the NTS change
292+
293+ -- Andreas Hasenack <andreas@canonical.com> Thu, 17 Oct 2024 10:25:57 -0300
294+
295+chrony (4.5-3ubuntu3) oracular; urgency=medium
296+
297+ * d/t/control, d/t/default-ubuntu-sources-behavior: new test to check the
298+ debconf behavior introduced in LP #2048876)
299+
300+ -- Andreas Hasenack <andreas@canonical.com> Mon, 02 Sep 2024 16:37:40 -0300
301+
302+chrony (4.5-3ubuntu2) oracular; urgency=medium
303+ * Move Ubuntu NTP sources to /etc/chrony/sources.d/ubuntu-ntp-pools.sources,
304+ gated on a low priority (default yes) debconf question (LP: #2048876):
305+ - d/NEWS: Add entry with information about default time sources moving out
306+ from chrony.conf to /etc/chrony/sources.d/ubuntu-ntp-pools.sources.
307+ - d/chrony.conf, d/ubuntu-ntp-pools.sources: Move Ubuntu NTP pool sources
308+ from chrony.conf to ubuntu-ntp-pools.sources
309+ - d/chrony.config: Ask chrony/configure_ubuntu_pools_in_sourcesd debconf
310+ question.
311+ - d/control: Add debconf dependency.
312+ - d/install: Install ubuntu-ntp-pools.sources in /usr/share/chrony
313+ - d/postinst: Handle ubuntu-ntp-pools.sources installation, removal and
314+ ucf tracking based on debconf question.
315+ - d/postrm: Handle /etc/chrony/sources.d/ubuntu-ntp-pools.sources removal
316+ from ucf tracking based on debconf question on uninstall.
317+ - d/templates: Add debconf question to customize installation of
318+ /etc/chrony/sources.d/ubuntu-ntp-pools.sources.
319+
320+ -- Ankush Pathak <ankush.pathak@canonical.com> Thu, 15 Aug 2024 00:03:08 +0530
321+
322+chrony (4.5-3ubuntu1) oracular; urgency=medium
323+
324+ * Merge with Debian unstable (LP: #2064393, LP: #2068526). Remaining
325+ changes:
326+ - d/chrony.conf: Use ubuntu ntp pool and server.
327+ (LP #1744664, #1754358)
328+ - Set -x as default if unable to set time (e.g. in containers) (LP #1589780)
329+ Chrony is a single service which acts as both NTP client (i.e. syncing the
330+ local clock) and NTP server (i.e. providing NTP services to the network),
331+ and that is both desired and expected in the vast majority of cases.
332+ But in containers syncing the local clock is usually impossible, but this
333+ shall not break the providing of NTP services to the network.
334+ To some extent this makes chrony's default config more similar to 'ntpd',
335+ which complained in syslog but still provided NTP server service in those
336+ cases.
337+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
338+ + d/control: add new dependency libcap2-bin for capsh (usually
339+ installed anyway, but make them explicit to be sure).
340+ + d/chrony.default: new option SYNC_IN_CONTAINER to not fall
341+ back (Default off)
342+ + d/chronyd-starter.sh: wrapper to handle special cases in
343+ containers and if CAP_SYS_TIME is missing. Effectively allows
344+ running the NTP server in containers on a default installation
345+ and avoid failing to sync time (or if allowed to sync, avoid
346+ multiple containers fighting over it by accident).
347+ + d/install: Make chrony-starter.sh available on install.
348+ + d/docs, d/README.container: Provide documentation about the
349+ handling of this case.
350+ - d/rules, d/chrony.examples: Ship restricted service as an example
351+ not installed to the system for use. (See LP #2051028)
352+ * Dropped:
353+ - d/usr.sbin.chronyd: apparmor fixes (LP: #2032805):
354+ + Allow the default UNIX domain socket address to be used by the
355+ reflock_sock service in the Apport configuration.
356+ + Fix failure to start timemaster due to lack of rw permissions on
357+ chrony socket.
358+ [In 4.5-2 and 4.5-3]
359+
360+ -- Andreas Hasenack <andreas@canonical.com> Tue, 02 Jul 2024 15:57:20 -0300
361+
362 chrony (4.5-3) unstable; urgency=medium
363
364 * debian/upstream-simulation-test-suite:
365@@ -172,6 +388,65 @@ chrony (4.5-2) unstable; urgency=medium
366
367 -- Vincent Blut <vincent.debian@free.fr> Thu, 25 Apr 2024 15:52:18 +0200
368
369+chrony (4.5-1ubuntu4) noble; urgency=medium
370+
371+ * d/usr.sbin.chronyd: Fix failure to start timemaster due to lack
372+ of rw permissions on chrony socket.
373+ (LP: #2032805)
374+ * d/usr.sbin.chronyd: Allow the default UNIX domain socket address
375+ to be used by the reflock_sock service in the Apport configuration.
376+ (ref LP #2032805)
377+
378+ -- Bryce Harrington <bryce@canonical.com> Mon, 01 Apr 2024 18:28:32 -0700
379+
380+chrony (4.5-1ubuntu3) noble; urgency=medium
381+
382+ * No-change rebuild for CVE-2024-3094
383+
384+ -- William Grant <wgrant@ubuntu.com> Mon, 01 Apr 2024 16:38:10 +1100
385+
386+chrony (4.5-1ubuntu2) noble; urgency=medium
387+
388+ * No-change rebuild against libgnutls30t64
389+
390+ -- Steve Langasek <steve.langasek@ubuntu.com> Sun, 10 Mar 2024 02:02:48 +0000
391+
392+chrony (4.5-1ubuntu1) noble; urgency=medium
393+
394+ * Merge with Debian unstable (LP: #2040371). Remaining changes:
395+ - d/chrony.conf: Use ubuntu ntp pool and server.
396+ (LP #1744664, #1754358)
397+ - Set -x as default if unable to set time (e.g. in containers) (LP #1589780)
398+ Chrony is a single service which acts as both NTP client (i.e. syncing the
399+ local clock) and NTP server (i.e. providing NTP services to the network),
400+ and that is both desired and expected in the vast majority of cases.
401+ But in containers syncing the local clock is usually impossible, but this
402+ shall not break the providing of NTP services to the network.
403+ To some extent this makes chrony's default config more similar to 'ntpd',
404+ which complained in syslog but still provided NTP server service in those
405+ cases.
406+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
407+ + d/control: add new dependency libcap2-bin for capsh (usually
408+ installed anyway, but make them explicit to be sure).
409+ + d/chrony.default: new option SYNC_IN_CONTAINER to not fall
410+ back (Default off)
411+ + d/chronyd-starter.sh: wrapper to handle special cases in
412+ containers and if CAP_SYS_TIME is missing. Effectively allows
413+ running the NTP server in containers on a default installation
414+ and avoid failing to sync time (or if allowed to sync, avoid
415+ multiple containers fighting over it by accident).
416+ + d/install: Make chrony-starter.sh available on install.
417+ + d/docs, d/README.container: Provide documentation about the
418+ handling of this case.
419+ * Dropped:
420+ - Depend on tzdata-legacy for reading leapsectz from
421+ /usr/share/zoneinfo/right/UTC
422+ (LP #2008076)
423+ * d/rules, d/chrony.examples: Ship restricted service as an example
424+ not installed to the system for use. (See LP #2051028)
425+
426+ -- Bryce Harrington <bryce@canonical.com> Tue, 02 Jan 2024 00:45:01 -0800
427+
428 chrony (4.5-1) unstable; urgency=medium
429
430 * Import upstream version 4.5:
431@@ -285,6 +560,39 @@ chrony (4.3-2+deb12u1) unstable; urgency=medium
432
433 -- Vincent Blut <vincent.debian@free.fr> Mon, 08 May 2023 22:05:00 +0200
434
435+chrony (4.3-2ubuntu1) mantic; urgency=medium
436+
437+ * Merge with Debian unstable (LP: #2018062). Remaining changes:
438+ - d/chrony.conf: use ubuntu ntp pool and server
439+ (LP #1744664, #1754358)
440+ - Set -x as default if unable to set time (e.g. in containers) (LP #1589780)
441+ Chrony is a single service which acts as both NTP client (i.e. syncing the
442+ local clock) and NTP server (i.e. providing NTP services to the network),
443+ and that is both desired and expected in the vast majority of cases.
444+ But in containers syncing the local clock is usually impossible, but this
445+ shall not break the providing of NTP services to the network.
446+ To some extent this makes chrony's default config more similar to 'ntpd',
447+ which complained in syslog but still provided NTP server service in those
448+ cases.
449+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
450+ + d/control: add new dependency libcap2-bin for capsh (usually
451+ installed anyway, but make them explicit to be sure).
452+ + d/chrony.default: new option SYNC_IN_CONTAINER to not fall
453+ back (Default off)
454+ + d/chronyd-starter.sh: wrapper to handle special cases in
455+ containers and if CAP_SYS_TIME is missing. Effectively allows
456+ running the NTP server in containers on a default installation
457+ and avoid failing to sync time (or if allowed to sync, avoid
458+ multiple containers fighting over it by accident).
459+ + d/install: make chrony-starter.sh available on install.
460+ + d/docs, d/README.container: provide documentation about the
461+ handling of this case.
462+ - Depend on tzdata-legacy for reading leapsectz from
463+ /usr/share/zoneinfo/right/UTC
464+ (LP #2008076)
465+
466+ -- Bryce Harrington <bryce@canonical.com> Mon, 08 May 2023 22:15:26 -0700
467+
468 chrony (4.3-2) unstable; urgency=medium
469
470 * debian/control:
471@@ -319,6 +627,60 @@ chrony (4.3-2) unstable; urgency=medium
472
473 -- Vincent Blut <vincent.debian@free.fr> Fri, 27 Jan 2023 22:51:17 +0100
474
475+chrony (4.3-1ubuntu4) lunar; urgency=medium
476+
477+ * Let upstream-simulation-test-suite depend on tzdata-legacy as well
478+ (LP: #2008076)
479+
480+ -- Benjamin Drung <bdrung@ubuntu.com> Wed, 15 Mar 2023 15:42:10 +0100
481+
482+chrony (4.3-1ubuntu3) lunar; urgency=medium
483+
484+ * Depend on tzdata-legacy for reading leapsectz from
485+ /usr/share/zoneinfo/right/UTC (LP: #2008076)
486+
487+ -- Benjamin Drung <bdrung@ubuntu.com> Wed, 15 Mar 2023 09:26:25 +0100
488+
489+chrony (4.3-1ubuntu2) lunar; urgency=medium
490+
491+ * No-change rebuild for glibc 2.37
492+
493+ -- Bryce Harrington <bryce@canonical.com> Thu, 09 Feb 2023 07:26:02 +0000
494+
495+chrony (4.3-1ubuntu1) lunar; urgency=medium
496+
497+ * Merge with Debian unstable (LP: #1993389). Remaining changes:
498+ - d/chrony.conf: use ubuntu ntp pool and server
499+ (LP #1744664, #1754358)
500+ - Set -x as default if unable to set time (e.g. in containers) (LP #1589780)
501+ Chrony is a single service which acts as both NTP client (i.e. syncing the
502+ local clock) and NTP server (i.e. providing NTP services to the network),
503+ and that is both desired and expected in the vast majority of cases.
504+ But in containers syncing the local clock is usually impossible, but this
505+ shall not break the providing of NTP services to the network.
506+ To some extent this makes chrony's default config more similar to 'ntpd',
507+ which complained in syslog but still provided NTP server service in those
508+ cases.
509+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
510+ + debian/control: add new dependency libcap2-bin for
511+ capsh (usually installed anyway, but make them explicit to be sure).
512+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall
513+ back (Default off)
514+ + debian/chronyd-starter.sh: wrapper to handle special cases in
515+ containers and if CAP_SYS_TIME is missing. Effectively allows
516+ running the NTP server in containers on a default installation
517+ and avoid failing to sync time (or if allowed to sync, avoid
518+ multiple containers fighting over it by accident).
519+ + debian/install: make chrony-starter.sh available on install.
520+ + debian/docs, debian/README.container: provide documentation
521+ about the handling of this case.
522+ * Dropped:
523+ - d/patches/add-rseq.patch: Add "rseq" to list of acceptable syscalls to fix
524+ tests with glibc 2.35.
525+ [Included in upstream 4.3 release]
526+
527+ -- Bryce Harrington <bryce@canonical.com> Mon, 09 Jan 2023 19:41:47 -0800
528+
529 chrony (4.3-1) unstable; urgency=medium
530
531 * Import upstream version 4.3:
532@@ -354,6 +716,49 @@ chrony (4.3~pre1-1) experimental; urgency=medium
533
534 -- Vincent Blut <vincent.debian@free.fr> Thu, 11 Aug 2022 14:12:25 +0200
535
536+chrony (4.2-2ubuntu2) jammy; urgency=medium
537+
538+ * d/patches/add-rseq.patch: Add "rseq" to list of acceptable syscalls to fix
539+ tests with glibc 2.35.
540+
541+ -- Michael Hudson-Doyle <michael.hudson@ubuntu.com> Tue, 08 Feb 2022 16:48:09 +1300
542+
543+chrony (4.2-2ubuntu1) jammy; urgency=medium
544+
545+ * Merge with Debian unstable. Remaining changes:
546+ Remaining changes:
547+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
548+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
549+ Chrony is a single service which acts as both NTP client (i.e. syncing the
550+ local clock) and NTP server (i.e. providing NTP services to the network),
551+ and that is both desired and expected in the vast majority of cases.
552+ But in containers syncing the local clock is usually impossible, but this
553+ shall not break the providing of NTP services to the network.
554+ To some extent this makes chrony's default config more similar to 'ntpd',
555+ which complained in syslog but still provided NTP server service in those
556+ cases.
557+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
558+ + debian/control: add new dependency libcap2-bin for capsh (usually
559+ installed anyway, but make them explicit to be sure).
560+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
561+ (Default off) [fixed a minor typo in the comment in this update]
562+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
563+ and if CAP_SYS_TIME is missing. Effectively allows on to run NTP server
564+ in containers on a default installation and avoid failing to sync time
565+ (or if allowed to sync, avoid multiple containers to fight over it by
566+ accident).
567+ + debian/install: make chrony-starter.sh available on install.
568+ + debian/docs, debian/README.container: provide documentation about the
569+ handling of this case.
570+ * Dropped changes [ in 4.2-1 ]
571+ - Drop patches present in v4.2
572+ + d/p/allow-clone3-and-pread64-in-seccomp-filter.patch
573+ + d/p/fix-seccomp-filter-for-BINDTODEVICE-socket-option.patch
574+ + d/p/lp-1940252-rtc-avoid-printing-and-scanning-time_t.patch
575+ - d/t/upstream-simulation-test-suite: bump to the matching clknetsim
576+
577+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Fri, 04 Feb 2022 07:52:48 +0100
578+
579 chrony (4.2-2) unstable; urgency=medium
580
581 * debian/usr.sbin.chronyd:
582@@ -382,6 +787,42 @@ chrony (4.2-1) unstable; urgency=medium
583
584 -- Vincent Blut <vincent.debian@free.fr> Thu, 13 Jan 2022 14:01:35 +0100
585
586+chrony (4.2-0ubuntu1) jammy; urgency=medium
587+
588+ * Merge with Debian testing (LP: #1946848) and upstream v4.2.
589+ Remaining changes:
590+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
591+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
592+ Chrony is a single service which acts as both NTP client (i.e. syncing the
593+ local clock) and NTP server (i.e. providing NTP services to the network),
594+ and that is both desired and expected in the vast majority of cases.
595+ But in containers syncing the local clock is usually impossible, but this
596+ shall not break the providing of NTP services to the network.
597+ To some extent this makes chrony's default config more similar to 'ntpd',
598+ which complained in syslog but still provided NTP server service in those
599+ cases.
600+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
601+ + debian/control: add new dependency libcap2-bin for capsh (usually
602+ installed anyway, but make them explicit to be sure).
603+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
604+ (Default off) [fixed a minor typo in the comment in this update]
605+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
606+ and if CAP_SYS_TIME is missing. Effectively allows on to run NTP server
607+ in containers on a default installation and avoid failing to sync time
608+ (or if allowed to sync, avoid multiple containers to fight over it by
609+ accident).
610+ + debian/install: make chrony-starter.sh available on install.
611+ + debian/docs, debian/README.container: provide documentation about the
612+ handling of this case.
613+ * Drop patches present in v4.2
614+ - d/p/allow-clone3-and-pread64-in-seccomp-filter.patch
615+ - d/p/fix-seccomp-filter-for-BINDTODEVICE-socket-option.patch
616+ - d/p/lp-1940252-rtc-avoid-printing-and-scanning-time_t.patch
617+ * Added changes:
618+ - d/t/upstream-simulation-test-suite: bump to the matching clknetsim
619+
620+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 06 Jan 2022 14:51:22 +0100
621+
622 chrony (4.1-4) unstable; urgency=medium
623
624 * debian/:
625@@ -404,6 +845,41 @@ chrony (4.1-4) unstable; urgency=medium
626
627 -- Vincent Blut <vincent.debian@free.fr> Thu, 07 Oct 2021 15:23:28 +0200
628
629+chrony (4.1-3ubuntu1) impish; urgency=medium
630+
631+ * Merge with Debian unstable (LP: #1940252). Remaining changes:
632+ Remaining changes:
633+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
634+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
635+ Chrony is a single service which acts as both NTP client (i.e. syncing the
636+ local clock) and NTP server (i.e. providing NTP services to the network),
637+ and that is both desired and expected in the vast majority of cases.
638+ But in containers syncing the local clock is usually impossible, but this
639+ shall not break the providing of NTP services to the network.
640+ To some extent this makes chrony's default config more similar to 'ntpd',
641+ which complained in syslog but still provided NTP server service in those
642+ cases.
643+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
644+ + debian/control: add new dependency libcap2-bin for capsh (usually
645+ installed anyway, but make them explicit to be sure).
646+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
647+ (Default off) [fixed a minor typo in the comment in this update]
648+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
649+ and if CAP_SYS_TIME is missing. Effectively allows on to run NTP server
650+ in containers on a default installation and avoid failing to sync time
651+ (or if allowed to sync, avoid multiple containers to fight over it by
652+ accident).
653+ + debian/install: make chrony-starter.sh available on install.
654+ + debian/docs, debian/README.container: provide documentation about the
655+ handling of this case.
656+ * Dropped changes:
657+ - d/t/helper-functions: restart explicitly to fix test issues
658+ * Added changes:
659+ - d/p/lp-1940252-rtc-avoid-printing-and-scanning-time_t.patch: glibc 2.34
660+ compatibility
661+
662+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Tue, 17 Aug 2021 12:22:32 +0200
663+
664 chrony (4.1-3) unstable; urgency=medium
665
666 * Upload to unstable.
667@@ -434,6 +910,51 @@ chrony (4.1-2) experimental; urgency=medium
668
669 -- Vincent Blut <vincent.debian@free.fr> Sat, 26 Jun 2021 17:16:45 +0200
670
671+chrony (4.1-1ubuntu1) impish; urgency=medium
672+
673+ * Merge new upstream 4.1 and yet unrelased changes from Debian salsa.
674+ Remaining changes:
675+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
676+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
677+ Chrony is a single service which acts as both NTP client (i.e. syncing the
678+ local clock) and NTP server (i.e. providing NTP services to the network),
679+ and that is both desired and expected in the vast majority of cases.
680+ But in containers syncing the local clock is usually impossible, but this
681+ shall not break the providing of NTP services to the network.
682+ To some extent this makes chrony's default config more similar to 'ntpd',
683+ which complained in syslog but still provided NTP server service in those
684+ cases.
685+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
686+ + debian/control: add new dependency libcap2-bin for capsh (usually
687+ installed anyway, but make them explicit to be sure).
688+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
689+ (Default off) [fixed a minor typo in the comment in this update]
690+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
691+ and if CAP_SYS_TIME is missing. Effectively allows on to run NTP server
692+ in containers on a default installation and avoid failing to sync time
693+ (or if allowed to sync, avoid multiple containers to fight over it by
694+ accident).
695+ + debian/install: make chrony-starter.sh available on install.
696+ + debian/docs, debian/README.container: provide documentation about the
697+ handling of this case.
698+ * Dropped changes:
699+ - d/t/helper-functions: reduce default ubuntu config, to make space for
700+ testcase config
701+ [ in Debian 4.0-6 ]
702+ - d/t/{dynamically-add-source,ntp-server-and-nts-auth,helper-functions}:
703+ unify tests to use reload and restart
704+ [ in Debian 4.0-6 ]
705+ - d/t/upstream-simulation-test-suite: Update clknetsim version to fix
706+ a test failure on s390x when LTO is enabled at build time (LP #1921377)
707+ [ in Debian 4.1~pre1-1 ]
708+ - d/p/lp-1915006-sys_linux-allow-statx-and-fstatat64-in-seccomp-filte.patch:
709+ add compatibility for glibc 2.33 (LP: 1915006)
710+ [ upstream in 4.1-pre1 ]
711+ * Added changes:
712+ - d/t/helper-functions: restart explicitly to fix test issues
713+
714+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Tue, 18 May 2021 08:12:59 +0200
715+
716 chrony (4.1-1) experimental; urgency=medium
717
718 * Import upstream version 4.1:
719@@ -524,6 +1045,54 @@ chrony (4.0-6) unstable; urgency=medium
720
721 -- Vincent Blut <vincent.debian@free.fr> Sun, 21 Feb 2021 21:59:22 +0100
722
723+chrony (4.0-5ubuntu3) hirsute; urgency=medium
724+
725+ * d/t/upstream-simulation-test-suite: Update clknetsim version to fix
726+ a test failure on s390x when LTO is enabled at build time (LP: #1921377)
727+
728+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 25 Mar 2021 15:45:47 +0100
729+
730+chrony (4.0-5ubuntu2) hirsute; urgency=medium
731+
732+ * d/p/lp-1915006-sys_linux-allow-statx-and-fstatat64-in-seccomp-filte.patch:
733+ add compatibility for glibc 2.33 (LP: 1915006)
734+
735+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Mon, 15 Feb 2021 12:50:29 +0100
736+
737+chrony (4.0-5ubuntu1) hirsute; urgency=medium
738+
739+ * Merge with Debian unstable (LP: #1915006). Remaining changes:
740+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
741+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
742+ Chrony is a single service which acts as both NTP client (i.e. syncing the
743+ local clock) and NTP server (i.e. providing NTP services to the network),
744+ and that is both desired and expected in the vast majority of cases.
745+ But in containers syncing the local clock is usually impossible, but this
746+ shall not break the providing of NTP services to the network.
747+ To some extent this makes chrony's default config more similar to 'ntpd',
748+ which complained in syslog but still provided NTP server service in those
749+ cases.
750+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
751+ + debian/control: add new dependency libcap2-bin for capsh (usually
752+ installed anyway, but make them explicit to be sure).
753+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
754+ (Default off) [fixed a minor typo in the comment in this update]
755+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
756+ and if CAP_SYS_TIME is missing. Effectively allows on to run NTP server
757+ in containers on a default installation and avoid failing to sync time
758+ (or if allowed to sync, avoid multiple containers to fight over it by
759+ accident).
760+ + debian/install: make chrony-starter.sh available on install.
761+ + debian/docs, debian/README.container: provide documentation about the
762+ handling of this case.
763+ * Added changes:
764+ - d/t/helper-functions: reduce default ubuntu config, to make space for
765+ testcase config
766+ - d/t/{dynamically-add-source,ntp-server-and-nts-auth,helper-functions}:
767+ unify tests to use reload and restart
768+
769+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Mon, 08 Feb 2021 12:45:05 +0100
770+
771 chrony (4.0-5) unstable; urgency=medium
772
773 * Follow DEP-14 branch naming conventions:
774@@ -640,6 +1209,35 @@ chrony (4.0-3) unstable; urgency=medium
775
776 -- Vincent Blut <vincent.debian@free.fr> Mon, 18 Jan 2021 21:58:52 +0100
777
778+chrony (4.0-2ubuntu1) hirsute; urgency=medium
779+
780+ * Merge with Debian unstable. Remaining changes:
781+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
782+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
783+ Chrony is a single service which acts as both NTP client (i.e. syncing the
784+ local clock) and NTP server (i.e. providing NTP services to the network),
785+ and that is both desired and expected in the vast majority of cases.
786+ But in containers syncing the local clock is usually impossible, but this
787+ shall not break the providing of NTP services to the network.
788+ To some extent this makes chrony's default config more similar to 'ntpd',
789+ which complained in syslog but still provided NTP server service in those
790+ cases.
791+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
792+ + debian/control: add new dependency libcap2-bin for capsh (usually
793+ installed anyway, but make them explicit to be sure).
794+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
795+ (Default off) [fixed a minor typo in the comment in this update]
796+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
797+ and if CAP_SYS_TIME is missing. Effectively allows on to run NTP server
798+ in containers on a default installation and avoid failing to sync time
799+ (or if allowed to sync, avoid multiple containers to fight over it by
800+ accident).
801+ + debian/install: make chrony-starter.sh available on install.
802+ + debian/docs, debian/README.container: provide documentation about the
803+ handling of this case.
804+
805+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Tue, 27 Oct 2020 10:55:19 +0100
806+
807 chrony (4.0-2) unstable; urgency=medium
808
809 * Merge branch 'experimental' into 'master'.
810@@ -775,6 +1373,44 @@ chrony (4.0~pre4-1) experimental; urgency=medium
811
812 -- Vincent Blut <vincent.debian@free.fr> Fri, 02 Oct 2020 21:21:08 +0200
813
814+chrony (3.5.1-1ubuntu2) groovy; urgency=medium
815+
816+ * d/chronyd-starter.sh: fix commandline argument parsing (LP: #1898000)
817+
818+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Tue, 06 Oct 2020 12:20:40 +0200
819+
820+chrony (3.5.1-1ubuntu1) groovy; urgency=medium
821+
822+ * Merge with Debian unstable. Remaining changes:
823+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
824+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
825+ Chrony is a single service which acts as both NTP client (i.e. syncing the
826+ local clock) and NTP server (i.e. providing NTP services to the network),
827+ and that is both desired and expected in the vast majority of cases.
828+ But in containers syncing the local clock is usually impossible, but this
829+ shall not break the providing of NTP services to the network.
830+ To some extent this makes chrony's default config more similar to 'ntpd',
831+ which complained in syslog but still provided NTP server service in those
832+ cases.
833+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
834+ + debian/control: add new dependency libcap2-bin for capsh (usually
835+ installed anyway, but make them explicit to be sure).
836+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
837+ (Default off) [fixed a minor typo in the comment in this update]
838+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
839+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
840+ containers on a default installation and avoid failing to sync time (or
841+ if allowed to sync, avoid multiple containers to fight over it by
842+ accident).
843+ + debian/install: make chrony-starter.sh available on install.
844+ + debian/docs, debian/README.container: provide documentation about the
845+ handling of this case.
846+ * Dropped changes
847+ - d/t/control: harden time-sources-from-dhcp-servers test for systemd change
848+ (LP: 1873031) [no more needed with recent systemd that is in groovy]
849+
850+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Wed, 26 Aug 2020 15:30:48 +0200
851+
852 chrony (3.5.1-1) unstable; urgency=medium
853
854 * Import upstream version 3.5.1:
855@@ -790,6 +1426,50 @@ chrony (3.5.1-1) unstable; urgency=medium
856
857 -- Vincent Blut <vincent.debian@free.fr> Thu, 20 Aug 2020 14:07:22 +0200
858
859+chrony (3.5-9ubuntu2) groovy; urgency=medium
860+
861+ * No change rebuild against new libnettle8 and libhogweed6 ABI.
862+
863+ -- Dimitri John Ledkov <xnox@ubuntu.com> Mon, 29 Jun 2020 22:22:19 +0100
864+
865+chrony (3.5-9ubuntu1) groovy; urgency=medium
866+
867+ * Merge with Debian unstable (LP: #1878005). Remaining changes:
868+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
869+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
870+ Chrony is a single service which acts as both NTP client (i.e. syncing the
871+ local clock) and NTP server (i.e. providing NTP services to the network),
872+ and that is both desired and expected in the vast majority of cases.
873+ But in containers syncing the local clock is usually impossible, but this
874+ shall not break the providing of NTP services to the network.
875+ To some extent this makes chrony's default config more similar to 'ntpd',
876+ which complained in syslog but still provided NTP server service in those
877+ cases.
878+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
879+ + debian/control: add new dependency libcap2-bin for capsh (usually
880+ installed anyway, but make them explicit to be sure).
881+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
882+ (Default off) [fixed a minor typo in the comment in this update]
883+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
884+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
885+ containers on a default installation and avoid failing to sync time (or
886+ if allowed to sync, avoid multiple containers to fight over it by
887+ accident).
888+ + debian/install: make chrony-starter.sh available on install.
889+ + debian/docs, debian/README.container: provide documentation about the
890+ handling of this case.
891+ - d/t/control: harden time-sources-from-dhcp-servers test for systemd change
892+ (LP: 1873031)
893+ * Dropped changes [in Debian now]
894+ - d/t/upstream-system-tests: stop chrony/systemd-timesynd before tests
895+ - d/t/upstream-system-tests: fix stderr in case services do not exist
896+ - Stop starting systemd-timesyncd in postrm. This is no longer relevant
897+ since systemd-timesyncd is a standalone package declaring
898+ Conflicts/Replaces/Provides: time-daemon. (Closes 955773, LP: 1872183)
899+ - d/postrm: Reinstate the remove target (LP: 1873810)
900+
901+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Wed, 20 May 2020 09:57:39 +0200
902+
903 chrony (3.5-9) unstable; urgency=medium
904
905 * debian/patches/:
906@@ -852,6 +1532,76 @@ chrony (3.5-7) unstable; urgency=medium
907
908 -- Vincent Blut <vincent.debian@free.fr> Tue, 17 Mar 2020 15:21:53 +0100
909
910+chrony (3.5-6ubuntu6) focal; urgency=medium
911+
912+ * d/postrm: Reinstate the remove target (LP: #1873810)
913+
914+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Mon, 20 Apr 2020 15:58:52 +0200
915+
916+chrony (3.5-6ubuntu5) focal; urgency=medium
917+
918+ * d/t/control: harden time-sources-from-dhcp-servers test for systemd change
919+ (LP: #1873031)
920+
921+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Wed, 15 Apr 2020 18:23:10 +0200
922+
923+chrony (3.5-6ubuntu4) focal; urgency=medium
924+
925+ * debian/postrm:
926+ - Stop starting systemd-timesyncd in postrm. This is no longer relevant
927+ since systemd-timesyncd is a standalone package declaring
928+ Conflicts/Replaces/Provides: time-daemon. (Closes 955773, LP: #1872183)
929+
930+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Wed, 15 Apr 2020 09:01:30 +0200
931+
932+chrony (3.5-6ubuntu3) focal; urgency=medium
933+
934+ * avoid multiple time services running concurrently (LP: #1870144).
935+ This fixes the autopkgtests vs chrond itself, the issue of concurrent
936+ systemd-timesyncd will be fixed in systemd by (LP 1849156)
937+ - d/t/upstream-system-tests: stop chrony/systemd-timesynd before tests
938+ - d/t/upstream-system-tests: fix stderr in case services do not exist
939+
940+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Wed, 01 Apr 2020 09:25:45 +0200
941+
942+chrony (3.5-6ubuntu2) focal; urgency=medium
943+
944+ * fix capsh usage in focal avoiding to always fall back to -x (LP: #1867036)
945+ - d/control: add versioned dependency to libcap2-bin new enough to
946+ support --has-p
947+ - d/chronyd-starter.sh: update capsh usage to use --has-p
948+
949+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Tue, 31 Mar 2020 10:19:20 +0200
950+
951+chrony (3.5-6ubuntu1) focal; urgency=medium
952+
953+ * Merge with Debian unstable (LP: #1866753). Remaining changes:
954+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
955+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
956+ Chrony is a single service which acts as both NTP client (i.e. syncing the
957+ local clock) and NTP server (i.e. providing NTP services to the network),
958+ and that is both desired and expected in the vast majority of cases.
959+ But in containers syncing the local clock is usually impossible, but this
960+ shall not break the providing of NTP services to the network.
961+ To some extent this makes chrony's default config more similar to 'ntpd',
962+ which complained in syslog but still provided NTP server service in those
963+ cases.
964+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
965+ + debian/control: add new dependency libcap2-bin for capsh (usually
966+ installed anyway, but make them explicit to be sure).
967+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
968+ (Default off) [fixed a minor typo in the comment in this update]
969+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
970+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
971+ containers on a default installation and avoid failing to sync time (or
972+ if allowed to sync, avoid multiple containers to fight over it by
973+ accident).
974+ + debian/install: make chrony-starter.sh available on install.
975+ + debian/docs, debian/README.container: provide documentation about the
976+ handling of this case.
977+
978+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 12 Mar 2020 11:02:33 +0100
979+
980 chrony (3.5-6) unstable; urgency=medium
981
982 * debian/chrony.service:
983@@ -886,6 +1636,41 @@ chrony (3.5-6) unstable; urgency=medium
984
985 -- Vincent Blut <vincent.debian@free.fr> Tue, 10 Mar 2020 19:17:16 +0100
986
987+chrony (3.5-5ubuntu1) focal; urgency=medium
988+
989+ * Merge with Debian unstable (LP: #1859969). Remaining changes:
990+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
991+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
992+ Chrony is a single service which acts as both NTP client (i.e. syncing the
993+ local clock) and NTP server (i.e. providing NTP services to the network),
994+ and that is both desired and expected in the vast majority of cases.
995+ But in containers syncing the local clock is usually impossible, but this
996+ shall not break the providing of NTP services to the network.
997+ To some extent this makes chrony's default config more similar to 'ntpd',
998+ which complained in syslog but still provided NTP server service in those
999+ cases.
1000+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
1001+ + debian/control: add new dependency libcap2-bin for capsh (usually
1002+ installed anyway, but make them explicit to be sure).
1003+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
1004+ (Default off) [fixed a minor typo in the comment in this update]
1005+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
1006+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
1007+ containers on a default installation and avoid failing to sync time (or
1008+ if allowed to sync, avoid multiple containers to fight over it by
1009+ accident).
1010+ + debian/install: make chrony-starter.sh available on install.
1011+ + debian/docs, debian/README.container: provide documentation about the
1012+ handling of this case.
1013+ * Dropped changes:
1014+ - d/t/control: destructive_system_tests only work on amd64 and s390x right
1015+ now [fixed by backporting fixes from upstream in 3.5-5 ]
1016+ - d/t/upstream-simulation-test-suite: ignore warnings on stderr while
1017+ running clksim make
1018+ [ in Debian 3.5-5 ]
1019+
1020+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 16 Jan 2020 12:55:32 +0100
1021+
1022 chrony (3.5-5) unstable; urgency=medium
1023
1024 * debian/control:
1025@@ -913,6 +1698,47 @@ chrony (3.5-5) unstable; urgency=medium
1026
1027 -- Vincent Blut <vincent.debian@free.fr> Sun, 22 Dec 2019 17:30:40 +0100
1028
1029+chrony (3.5-4ubuntu2) focal; urgency=medium
1030+
1031+ * d/t/control: destructive_system_tests only work on amd64 and s390x right
1032+ now
1033+ * d/t/upstream-simulation-test-suite: ignore warnings on stderr while
1034+ running clksim make
1035+
1036+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Tue, 03 Dec 2019 14:50:50 +0100
1037+
1038+chrony (3.5-4ubuntu1) focal; urgency=medium
1039+
1040+ * Merge with Debian unstable (LP: #1854328). Remaining changes:
1041+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
1042+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
1043+ Chrony is a single service which acts as both NTP client (i.e. syncing the
1044+ local clock) and NTP server (i.e. providing NTP services to the network),
1045+ and that is both desired and expected in the vast majority of cases.
1046+ But in containers syncing the local clock is usually impossible, but this
1047+ shall not break the providing of NTP services to the network.
1048+ To some extent this makes chrony's default config more similar to 'ntpd',
1049+ which complained in syslog but still provided NTP server service in those
1050+ cases.
1051+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
1052+ + debian/control: add new dependency libcap2-bin for capsh (usually
1053+ installed anyway, but make them explicit to be sure).
1054+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
1055+ (Default off) [fixed a minor typo in the comment in this update]
1056+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
1057+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
1058+ containers on a default installation and avoid failing to sync time (or
1059+ if allowed to sync, avoid multiple containers to fight over it by
1060+ accident).
1061+ + debian/install: make chrony-starter.sh available on install.
1062+ + debian/docs, debian/README.container: provide documentation about the
1063+ handling of this case.
1064+ * Dropped changes:
1065+ - d/t/control: allow stderr for recent changes in resolved/iproute
1066+ (LP 1836882) [no more needed]
1067+
1068+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 28 Nov 2019 10:31:36 +0100
1069+
1070 chrony (3.5-4) unstable; urgency=medium
1071
1072 * debian/tests/control:
1073@@ -957,6 +1783,52 @@ chrony (3.5-3) unstable; urgency=medium
1074
1075 -- Vincent Blut <vincent.debian@free.fr> Tue, 13 Aug 2019 17:57:47 +0200
1076
1077+chrony (3.5-2ubuntu3) focal; urgency=medium
1078+
1079+ * No-change rebuild against libnettle7
1080+
1081+ -- Steve Langasek <steve.langasek@ubuntu.com> Thu, 31 Oct 2019 22:07:56 +0000
1082+
1083+chrony (3.5-2ubuntu2) eoan; urgency=medium
1084+
1085+ * d/t/control: allow stderr for recent changes in resolved/iproute
1086+ (LP: #1836882)
1087+
1088+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Wed, 17 Jul 2019 12:41:58 +0200
1089+
1090+chrony (3.5-2ubuntu1) eoan; urgency=medium
1091+
1092+ * Merge with Debian experimental (LP: #1835046). Remaining changes:
1093+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
1094+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
1095+ Chrony is a single service which acts as both NTP client (i.e. syncing the
1096+ local clock) and NTP server (i.e. providing NTP services to the network),
1097+ and that is both desired and expected in the vast majority of cases.
1098+ But in containers syncing the local clock is usually impossible, but this
1099+ shall not break the providing of NTP services to the network.
1100+ To some extent this makes chrony's default config more similar to 'ntpd',
1101+ which complained in syslog but still provided NTP server service in those
1102+ cases.
1103+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
1104+ + debian/control: add new dependency libcap2-bin for capsh (usually
1105+ installed anyway, but make them explicit to be sure).
1106+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
1107+ (Default off) [fixed a minor typo in the comment in this update]
1108+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
1109+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
1110+ containers on a default installation and avoid failing to sync time (or
1111+ if allowed to sync, avoid multiple containers to fight over it by
1112+ accident).
1113+ + debian/install: make chrony-starter.sh available on install.
1114+ + debian/docs, debian/README.container: provide documentation about the
1115+ handling of this case.
1116+ * Dropped changes (accepted in Debian now):
1117+ - d/postrm: re-establish systemd-timesyncd on removal (LP 1764357)
1118+ - d/postrm: respect policy-rc.d when restoring systemd-timesyncd
1119+ (LP 1771994)
1120+
1121+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Tue, 02 Jul 2019 13:37:23 +0200
1122+
1123 chrony (3.5-2) unstable; urgency=medium
1124
1125 * Merge branch “experimental” into “master”.
1126@@ -1043,6 +1915,56 @@ chrony (3.5~pre1-1) experimental; urgency=medium
1127
1128 -- Vincent Blut <vincent.debian@free.fr> Sun, 12 May 2019 22:16:14 +0200
1129
1130+chrony (3.4-4ubuntu2) eoan; urgency=medium
1131+
1132+ * Dropped sysV change added in 3.4-4ubuntu1 (LP: #1829700):
1133+ - removed d/init to avoid weird interactions between sysV and systemd
1134+ [With debhelper compat level 12 this isn't an issue anymore]
1135+
1136+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Wed, 22 May 2019 09:10:41 +0200
1137+
1138+chrony (3.4-4ubuntu1) eoan; urgency=medium
1139+
1140+ * Merge with Debian unstable (LP: #1828992). Remaining changes:
1141+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664 1754358)
1142+ - Set -x as default if unable to set time (e.g. in containers) (LP 1589780)
1143+ Chrony is a single service which acts as both NTP client (i.e. syncing the
1144+ local clock) and NTP server (i.e. providing NTP services to the network),
1145+ and that is both desired and expected in the vast majority of cases.
1146+ But in containers syncing the local clock is usually impossible, but this
1147+ shall not break the providing of NTP services to the network.
1148+ To some extent this makes chrony's default config more similar to 'ntpd',
1149+ which complained in syslog but still provided NTP server service in those
1150+ cases.
1151+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
1152+ + debian/control: add new dependency libcap2-bin for capsh (usually
1153+ installed anyway, but make them explicit to be sure).
1154+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
1155+ (Default off) [fixed a minor typo in the comment in this update]
1156+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
1157+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
1158+ containers on a default installation and avoid failing to sync time (or
1159+ if allowed to sync, avoid multiple containers to fight over it by
1160+ accident).
1161+ + debian/install: make chrony-starter.sh available on install.
1162+ + debian/docs, debian/README.container: provide documentation about the
1163+ handling of this case.
1164+ - d/postrm: re-establish systemd-timesyncd on removal (LP 1764357)
1165+ - d/postrm: respect policy-rc.d when restoring systemd-timesyncd
1166+ (LP 1771994)
1167+ * Added Changes:
1168+ - removed d/init to avoid weird interactions between sysV and systemd
1169+ * Dropped Changes:
1170+ - Notify chrony to update sources in response to systemd-networkd
1171+ events (LP: 1718227)
1172+ + d/links: link dispatcher script to networkd-dispatcher events routable
1173+ and off
1174+ + d/control: set Recommends to networkd-dispatcher
1175+ [Those are in Debian, except that we agreed to have networkd-dispatcher
1176+ to only be a Suggests]
1177+
1178+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Tue, 14 May 2019 12:49:30 +0200
1179+
1180 chrony (3.4-4) unstable; urgency=medium
1181
1182 * debian/patches/*:
1183@@ -1119,6 +2041,48 @@ chrony (3.4-2) unstable; urgency=medium
1184
1185 -- Vincent Blut <vincent.debian@free.fr> Wed, 13 Feb 2019 17:08:17 +0100
1186
1187+chrony (3.4-1ubuntu1) disco; urgency=medium
1188+
1189+ * Merge with Debian unstable (LP: #1802886). Remaining changes:
1190+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664)
1191+ - Set -x as default if unable to set time (e.g. in containers) (LP: 1589780)
1192+ Chrony is a single service which acts as both NTP client (i.e. syncing the
1193+ local clock) and NTP server (i.e. providing NTP services to the network),
1194+ and that is both desired and expected in the vast majority of cases.
1195+ But in containers syncing the local clock is usually impossible, but this
1196+ shall not break the providing of NTP services to the network.
1197+ To some extent this makes chrony's default config more similar to 'ntpd',
1198+ which complained in syslog but still provided NTP server service in those
1199+ cases.
1200+ + debian/chrony.service: allow the service to run without CAP_SYS_TIME
1201+ + debian/control: add new dependency libcap2-bin for capsh (usually
1202+ installed anyway, but make them explicit to be sure).
1203+ + debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
1204+ (Default off).
1205+ + debian/chronyd-starter.sh: wrapper to handle special cases in containers
1206+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
1207+ containers on a default installation and avoid failing to sync time (or
1208+ if allowed to sync, avoid multiple containers to fight over it by
1209+ accident).
1210+ + debian/install: make chronyd-starter.sh available on install.
1211+ + debian/docs, debian/README.container: provide documentation about the
1212+ handling of this case.
1213+ - d/postrm: re-establish systemd-timesyncd on removal (LP: 1764357)
1214+ - Notify chrony to update sources in response to systemd-networkd
1215+ events (LP: 1718227)
1216+ + d/links: link dispatcher script to networkd-dispatcher events routable
1217+ and off
1218+ + d/control: set Recommends to networkd-dispatcher
1219+ * Dropped Changes (upstream):
1220+ - d/p/lp-1718227-nm-dispatcher-for-networkd.patch
1221+ - d/p/lp-1787366-fall-back-to-urandom.patch: avoid hangs when starting
1222+ the service on newer kernels by falling back to urandom. (LP: 1787366)
1223+ * Added Changes:
1224+ - d/postrm: respect policy-rc.d when restoring systemd-timesyncd
1225+ (LP: #1771994)
1226+
1227+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Mon, 12 Nov 2018 11:39:08 +0100
1228+
1229 chrony (3.4-1) unstable; urgency=medium
1230
1231 * Import upstream version 3.4:
1232@@ -1195,6 +2159,66 @@ chrony (3.3-3) unstable; urgency=medium
1233
1234 -- Vincent Blut <vincent.debian@free.fr> Sat, 18 Aug 2018 16:23:19 +0200
1235
1236+chrony (3.3-2ubuntu2) cosmic; urgency=medium
1237+
1238+ * - d/p/lp-1787366-fall-back-to-urandom.patch: avoid hangs when starting
1239+ the service on newer kernels by falling back to urandom.
1240+ (LP: #1787366, Closes: #906276)
1241+
1242+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 16 Aug 2018 11:48:38 +0200
1243+
1244+chrony (3.3-2ubuntu1) cosmic; urgency=medium
1245+
1246+ * Merge with Debian unstable (LP: #1771061). Remaining changes:
1247+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664)
1248+ - Set -x as default if unable to set time (e.g. in containers) (LP: 1589780)
1249+ Chrony is a single service which acts as both NTP client (i.e. syncing the
1250+ local clock) and NTP server (i.e. providing NTP services to the network),
1251+ and that is both desired and expected in the vast majority of cases.
1252+ But in containers syncing the local clock is usually impossible, but this
1253+ shall not break the providing of NTP services to the network.
1254+ To some extent this makes chrony's default config more similar to 'ntpd',
1255+ which complained in syslog but still provided NTP server service in those
1256+ cases.
1257+ - debian/chrony.service: allow the service to run without CAP_SYS_TIME
1258+ - debian/control: add new dependency libcap2-bin for capsh (usually
1259+ installed anyway, but make them explicit to be sure).
1260+ - debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
1261+ (Default off).
1262+ - debian/chronyd-starter.sh: wrapper to handle special cases in containers
1263+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
1264+ containers on a default installation and avoid failing to sync time (or
1265+ if allowed to sync, avoid multiple containers to fight over it by
1266+ accident).
1267+ - debian/install: make chronyd-starter.sh available on install.
1268+ - debian/docs, debian/README.container: provide documentation about the
1269+ handling of this case.
1270+ - d/postrm: re-establish systemd-timesyncd on removal (LP: 1764357)
1271+ - Notify chrony to update sources in response to systemd-networkd
1272+ events (LP: 1718227)
1273+ - d/links: link dispatcher script to networkd-dispatcher events routable
1274+ and off
1275+ - d/control: set Recommends to networkd-dispatcher
1276+ - d/p/lp-1718227-nm-dispatcher-for-networkd.patch
1277+ * Dropped changes
1278+ - debian/usr.sbin.chronyd: ensure RTC/GPS usage isn't blocked by apparmor
1279+ (LP: 1751241) (in Debian now)
1280+ - debian/usr.sbin.chronyd: add cap net_admin for hwtimestamp (LP: 1761327)
1281+ (in Debian now)
1282+ - d/p/lp1589780-sys_linux-don-t-keep-CAP_SYS_TIME-with-x-option.patch:
1283+ When dropping the root privileges, don't try to keep the CAP_SYS_TIME
1284+ capability if the -x option was enabled. This allows chronyd to be
1285+ started without the capability (e.g. in containers) and also drop the
1286+ root privileges (This is upstream now).
1287+ - d/p/lp-1718227-ignore-non-up-down-events-in-nm-dispatcher.patch (This is
1288+ upstream now).
1289+ - d/control: switch to nss instead of tomcrypt (Debian switched to nettle
1290+ which is in main, so we can drop this)
1291+ * Added changes
1292+ - debian/README.container: fix typos
1293+
1294+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Mon, 14 May 2018 09:06:01 +0200
1295+
1296 chrony (3.3-2) unstable; urgency=medium
1297
1298 * debian/chrony.service:
1299@@ -1250,6 +2274,76 @@ chrony (3.2-5) unstable; urgency=medium
1300
1301 -- Vincent Blut <vincent.debian@free.fr> Wed, 28 Feb 2018 17:31:08 +0100
1302
1303+chrony (3.2-4ubuntu4) bionic; urgency=medium
1304+
1305+ * d/postrm: re-establish systemd-timesyncd on removal (LP: #1764357)
1306+ * Notify chrony to update sources in response to systemd-networkd
1307+ events (LP: #1718227)
1308+ - d/links: link dispatcher script to networkd-dispatcher events routable
1309+ and off
1310+ - d/control: set Recommends to networkd-dispatcher
1311+ - d/p/lp-1718227-ignore-non-up-down-events-in-nm-dispatcher.patch
1312+ - d/p/lp-1718227-nm-dispatcher-for-networkd.patch
1313+
1314+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Mon, 16 Apr 2018 17:04:06 +0200
1315+
1316+chrony (3.2-4ubuntu3) bionic; urgency=medium
1317+
1318+ * debian/usr.sbin.chronyd: add cap net_admin for hwtimestamp (LP: #1761327)
1319+
1320+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 05 Apr 2018 09:38:10 +0200
1321+
1322+chrony (3.2-4ubuntu2) bionic; urgency=medium
1323+
1324+ * Set -x as default if unable to set time (e.g. in containers) (LP: #1589780)
1325+ Chrony is a single service which acts as both NTP client (i.e. syncing the
1326+ local clock) and NTP server (i.e. providing NTP services to the network),
1327+ and that is both desired and expected in the vast majority of cases.
1328+ But in containers syncing the local clock is usually impossible, but this
1329+ shall not break the providing of NTP services to the network.
1330+ To some extent this makes chrony's default config more similar to 'ntpd',
1331+ which complained in syslog but still provided NTP server service in those
1332+ cases.
1333+ - d/p/lp1589780-sys_linux-don-t-keep-CAP_SYS_TIME-with-x-option.patch:
1334+ When dropping the root privileges, don't try to keep the CAP_SYS_TIME
1335+ capability if the -x option was enabled. This allows chronyd to be
1336+ started without the capability (e.g. in containers) and also drop the
1337+ root privileges.
1338+ - debian/chrony.service: allow the service to run without CAP_SYS_TIME
1339+ - debian/control: add new dependency libcap2-bin for capsh (usually
1340+ installed anyway, but make them explicit to be sure).
1341+ - debian/chrony.default: new option SYNC_IN_CONTAINER to not fall back
1342+ (Default off).
1343+ - debian/chronyd-starter.sh: wrapper to handle special cases in containers
1344+ and if CAP_SYS_TIME is missing. Effectively allows to run NTP server in
1345+ containers on a default installation and avoid failing to sync time (or
1346+ if allowed to sync, avoid multiple containers to fight over it by
1347+ accident).
1348+ - debian/install: make chronyd-starter.sh available on install.
1349+ - debian/docs, debian/README.container: provide documentation about the
1350+ handling of this case.
1351+ * debian/chrony.conf: update default chrony.conf to not violate the policy
1352+ of pool.ntp.org (to use no more than four of their servers) and to provide
1353+ more ipv6 capable sources by default (LP: #1754358)
1354+
1355+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Fri, 16 Mar 2018 12:25:44 +0100
1356+
1357+chrony (3.2-4ubuntu1) bionic; urgency=medium
1358+
1359+ * Merge with Debian unstable. Remaining changes:
1360+ - d/control: switch to nss instead of tomcrypt (nss is in main)
1361+ - d/chrony.conf: use ubuntu ntp pool and server (LP 1744664)
1362+ * Dropped changes (in Debian)
1363+ - d/chrony.default, d/chrony.service: support /etc/default/chrony
1364+ DAEMON_OPTS in systemd environment (LP: 1746081)
1365+ - d/chrony.service: properly start after networking (LP: 1746458)
1366+ - d/usr.sbin.chronyd: allow to create /run/chrony on demand (LP: 1746444)
1367+ * Added Changes:
1368+ - debian/usr.sbin.chronyd: ensure RTC/GPS usage isn't blocked by apparmor
1369+ (LP: #1751241, Closes: #891201)
1370+
1371+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Mon, 26 Feb 2018 14:44:54 +0100
1372+
1373 chrony (3.2-4) unstable; urgency=medium
1374
1375 * debian/changelog:
1376@@ -1316,6 +2410,27 @@ chrony (3.2-3) unstable; urgency=medium
1377
1378 -- Vincent Blut <vincent.debian@free.fr> Wed, 07 Feb 2018 21:27:09 +0100
1379
1380+chrony (3.2-2ubuntu3) bionic; urgency=medium
1381+
1382+ * Revert the changes of (LP 1746458) as in the follow on discussion
1383+ it became clear that we want it to start early (for example for an
1384+ early offset from drift file). iIf needed chrony will later on pick
1385+ up that servers are online via retries (augmented by hooks on network
1386+ events).
1387+
1388+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Thu, 08 Feb 2018 10:52:30 +0100
1389+
1390+chrony (3.2-2ubuntu2) bionic; urgency=medium
1391+
1392+ * d/control: use to nss instead of tomcrypt (in main) (LP: #1744072)
1393+ * d/chrony.conf: use ubuntu ntp pool and server (LP: #1744664)
1394+ * d/chrony.default, d/chrony.service: support /etc/default/chrony
1395+ DAEMON_OPTS in systemd environment (LP: #1746081)
1396+ * d/chrony.service: properly start after networking (LP: #1746458)
1397+ * d/usr.sbin.chronyd: allow to create /run/chrony on demand (LP: #1746444)
1398+
1399+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Fri, 19 Jan 2018 09:45:38 +0100
1400+
1401 chrony (3.2-2) unstable; urgency=medium
1402
1403 * Initial AppArmor profile for chronyd. Thanks to Jamie
1404diff --git a/debian/chrony.conf b/debian/chrony.conf
1405index 03eccbf..cb6132b 100644
1406--- a/debian/chrony.conf
1407+++ b/debian/chrony.conf
1408@@ -1,10 +1,11 @@
1409 # Welcome to the chrony configuration file. See chrony.conf(5) for more
1410 # information about usable directives.
1411
1412-# Use Debian vendor zone.
1413-pool 2.debian.pool.ntp.org iburst
1414+# The Ubuntu NTP pool servers configuration was moved to /etc/chrony/sources.d/ubuntu-ntp-pools.sources
1415
1416 # Use time sources from DHCP.
1417+# Those could be non-NTS sources. If you want to avoid unauthenticated NTP
1418+# sources comment the following line. (LP: #2115565)
1419 sourcedir /run/chrony-dhcp
1420
1421 # Use NTP sources found in /etc/chrony/sources.d.
1422diff --git a/debian/chrony.config b/debian/chrony.config
1423new file mode 100644
1424index 0000000..369c2f6
1425--- /dev/null
1426+++ b/debian/chrony.config
1427@@ -0,0 +1,10 @@
1428+#!/bin/sh
1429+
1430+set -e
1431+
1432+. /usr/share/debconf/confmodule
1433+
1434+if [ "${1}" = "configure" ] || [ "${1}" = "reconfigure" ]; then
1435+ db_input low chrony/configure_ubuntu_pools_in_sourcesd || true
1436+ db_go || true
1437+fi
1438diff --git a/debian/chrony.default b/debian/chrony.default
1439index 028f63d..6e4e02a 100644
1440--- a/debian/chrony.default
1441+++ b/debian/chrony.default
1442@@ -4,3 +4,7 @@
1443
1444 # Options to pass to chrony.
1445 DAEMON_OPTS="-F 1"
1446+
1447+# Sync system clock in containers or without CAP_SYS_TIME (likely to fail)
1448+# See /usr/share/doc/chrony/README.container for details.
1449+SYNC_IN_CONTAINER="no"
1450diff --git a/debian/chrony.examples b/debian/chrony.examples
1451index 1a0e8e2..20fcbb5 100644
1452--- a/debian/chrony.examples
1453+++ b/debian/chrony.examples
1454@@ -1 +1,2 @@
1455 examples/chrony.conf*
1456+examples/chronyd-restricted.service
1457diff --git a/debian/chrony.service b/debian/chrony.service
1458index 18cab1e..3bf9622 100644
1459--- a/debian/chrony.service
1460+++ b/debian/chrony.service
1461@@ -3,7 +3,6 @@ Description=chrony, an NTP client/server
1462 Documentation=man:chronyd(8) man:chronyc(1) man:chrony.conf(5)
1463 Conflicts=openntpd.service ntp.service ntpsec.service
1464 ConditionVirtualization=!container
1465-ConditionCapability=CAP_SYS_TIME
1466
1467 [Service]
1468 Type=notify
1469@@ -11,7 +10,9 @@ PIDFile=/run/chrony/chronyd.pid
1470 EnvironmentFile=-/etc/default/chrony
1471 User=_chrony
1472 # Daemon is started as root, but still sandboxed
1473-ExecStart=!/usr/sbin/chronyd -n $DAEMON_OPTS
1474+ExecStart=!/usr/lib/systemd/scripts/chronyd-starter.sh -n $DAEMON_OPTS
1475+# Allow real chronyd to notify "READY=1" for chronyd-starter.sh
1476+NotifyAccess=all
1477
1478 CapabilityBoundingSet=~CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_AUDIT_WRITE
1479 CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_KILL CAP_LEASE CAP_LINUX_IMMUTABLE
1480diff --git a/debian/chronyd-starter.sh b/debian/chronyd-starter.sh
1481new file mode 100755
1482index 0000000..2539ffe
1483--- /dev/null
1484+++ b/debian/chronyd-starter.sh
1485@@ -0,0 +1,68 @@
1486+#!/bin/sh
1487+set -ue
1488+
1489+CONF="/etc/default/chrony"
1490+DOC="/usr/share/doc/chrony/README.container"
1491+CAP="cap_sys_time"
1492+CMD="/usr/sbin/chronyd"
1493+# Take any args passed, use none if nothing was specified
1494+EFFECTIVE_DAEMON_OPTS=${@:-""}
1495+
1496+if [ -f "${CONF}" ]; then
1497+ . "${CONF}"
1498+else
1499+ echo "<4>Warning: ${CONF} is missing"
1500+fi
1501+# take from conffile if available, default to no otherwise
1502+EFFECTIVE_SYNC_IN_CONTAINER=${SYNC_IN_CONTAINER:-"no"}
1503+
1504+if [ ! -x "${CMD}" ]; then
1505+ echo "<3>Error: ${CMD} not executable"
1506+ # ugly, but works around https://github.com/systemd/systemd/issues/2913
1507+ sleep 0.1
1508+ exit 1
1509+fi
1510+
1511+# Check if -x is already set manually, don't process further if that is the case
1512+X_SET=0
1513+for arg in $@; do
1514+ if echo "$arg" | grep -q -e '^-[a-zA-Z0-9]*x'; then
1515+ X_SET=1
1516+ fi
1517+done
1518+
1519+if [ ${X_SET} -ne 1 ]; then
1520+ # Assume it is not in a container
1521+ IS_CONTAINER=0
1522+ if [ -x /usr/bin/systemd-detect-virt ]; then
1523+ if /usr/bin/systemd-detect-virt --quiet --container; then
1524+ IS_CONTAINER=1
1525+ fi
1526+ fi
1527+
1528+
1529+ # Assume it has the cap
1530+ HAS_CAP=1
1531+ CAPSH="/sbin/capsh"
1532+ if [ -x "${CAPSH}" ]; then
1533+ ${CAPSH} --has-p="${CAP}" || HAS_CAP=0
1534+ fi
1535+
1536+ if [ ${HAS_CAP} -eq 0 ]; then
1537+ echo "<4>Warning: Missing ${CAP}, syncing the system clock will fail"
1538+ fi
1539+ if [ ${IS_CONTAINER} -eq 1 ]; then
1540+ echo "<4>Warning: Running in a container, likely impossible and unintended to sync system clock"
1541+ fi
1542+
1543+ if [ ${HAS_CAP} -eq 0 -o ${IS_CONTAINER} -eq 1 ]; then
1544+ if [ "${EFFECTIVE_SYNC_IN_CONTAINER}" != "yes" ]; then
1545+ echo "<5>Adding -x as fallback disabling control of the system clock, see ${DOC} to override this behavior"
1546+ EFFECTIVE_DAEMON_OPTS="${EFFECTIVE_DAEMON_OPTS} -x"
1547+ else
1548+ echo "<5>Not falling back to disable control of the system clock, see ${DOC} to change this behavior"
1549+ fi
1550+ fi
1551+fi
1552+
1553+${CMD} ${EFFECTIVE_DAEMON_OPTS}
1554diff --git a/debian/conf.d/ubuntu-nts.conf b/debian/conf.d/ubuntu-nts.conf
1555new file mode 100644
1556index 0000000..cfc0abc
1557--- /dev/null
1558+++ b/debian/conf.d/ubuntu-nts.conf
1559@@ -0,0 +1,6 @@
1560+# This CA is needed for the Ubuntu NTS bootstrap servers. It has a very large
1561+# validity range (decades into the past and future) to allow systems with a
1562+# very large initial clock drift to use NTS.
1563+# If there is already another certificate set using the same index as this one
1564+# here ("1"), then this CA will get added to that set.
1565+ntstrustedcerts 1 /etc/chrony/nts-bootstrap-ubuntu.crt
1566diff --git a/debian/control b/debian/control
1567index a82b2d5..a932b9e 100644
1568--- a/debian/control
1569+++ b/debian/control
1570@@ -1,7 +1,8 @@
1571 Source: chrony
1572 Section: net
1573 Priority: optional
1574-Maintainer: Vincent Blut <vincent.debian@free.fr>
1575+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
1576+XSBC-Original-Maintainer: Vincent Blut <vincent.debian@free.fr>
1577 Standards-Version: 4.7.2
1578 Build-Depends: asciidoctor,
1579 bison,
1580@@ -26,8 +27,10 @@ Package: chrony
1581 Architecture: linux-any
1582 Pre-Depends: ${misc:Pre-Depends}
1583 Depends: adduser (>= 3.130),
1584+ debconf (>= 0.5),
1585 iproute2 [linux-any],
1586 tzdata,
1587+ libcap2-bin (>= 1:2.32-1),
1588 ucf,
1589 ${misc:Depends},
1590 ${shlibs:Depends}
1591diff --git a/debian/docs b/debian/docs
1592index e12f653..3bfc9dc 100644
1593--- a/debian/docs
1594+++ b/debian/docs
1595@@ -1,3 +1,4 @@
1596 FAQ
1597 NEWS
1598 README
1599+debian/README.container
1600diff --git a/debian/install b/debian/install
1601index 2a702e8..1726964 100644
1602--- a/debian/install
1603+++ b/debian/install
1604@@ -1,6 +1,10 @@
1605 debian/chrony-helper usr/libexec/chrony
1606 debian/chrony.conf usr/share/chrony
1607+debian/ubuntu-ntp-pools.sources usr/share/chrony
1608 debian/conf.d etc/chrony
1609 debian/ntp-units.d/50-chrony.list usr/lib/systemd/ntp-units.d
1610 debian/sources.d etc/chrony
1611 debian/usr.sbin.chronyd etc/apparmor.d
1612+debian/chronyd-starter.sh usr/lib/systemd/scripts/
1613+debian/nts-bootstrap-staging-ubuntu.crt etc/chrony
1614+debian/nts-bootstrap-ubuntu.crt etc/chrony
1615diff --git a/debian/nts-bootstrap-staging-ubuntu.crt b/debian/nts-bootstrap-staging-ubuntu.crt
1616new file mode 100644
1617index 0000000..498bc6f
1618--- /dev/null
1619+++ b/debian/nts-bootstrap-staging-ubuntu.crt
1620@@ -0,0 +1,11 @@
1621+-----BEGIN CERTIFICATE-----
1622+MIIBoDCCAUegAwIBAgIUboHEx7dO7bYbqpDEg4me/VVt+IswCgYIKoZIzj0EAwIw
1623+ETEPMA0GA1UEAwwGdWJ1bnR1MCAXDTUwMDEwMTAwMDAwMFoYDzk5OTkxMjMxMjM1
1624+OTU5WjArMSkwJwYDVQQDDCBudHAtYm9vdHN0cmFwLnN0YWdpbmcudWJ1bnR1LmNv
1625+bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABK9XPhpN0XjX3itffScnYxTMi+nH
1626+6pW7bbNTRil6THK7TTKZDhG1r3dLy+FlYBU4dsxg9CQlTSMJlApplUnLwBmjYTBf
1627+ME8GA1UdEQRIMEaCIG50cC1ib290c3RyYXAuc3RhZ2luZy51YnVudHUuY29tgiIq
1628+Lm50cC1ib290c3RyYXAuc3RhZ2luZy51YnVudHUuY29tMAwGA1UdEwEB/wQCMAAw
1629+CgYIKoZIzj0EAwIDRwAwRAIgOvXlLW5NlZob+ukYRAhLkMqlPOzLqLtcHQlKnnja
1630+3sgCIENZVt2+zsZRpX1a8p6O9yVk8n7ovF4tbqEvFkqlzLQm
1631+-----END CERTIFICATE-----
1632diff --git a/debian/nts-bootstrap-ubuntu.crt b/debian/nts-bootstrap-ubuntu.crt
1633new file mode 100644
1634index 0000000..78dd811
1635--- /dev/null
1636+++ b/debian/nts-bootstrap-ubuntu.crt
1637@@ -0,0 +1,11 @@
1638+-----BEGIN CERTIFICATE-----
1639+MIIBiTCCAS+gAwIBAgIUPlSKCl0OHrnDiEB3/4yJAoeMh18wCgYIKoZIzj0EAwIw
1640+ETEPMA0GA1UEAwwGdWJ1bnR1MCAXDTcwMDEwMTAwMDAwMFoYDzIxMDAwMTAxMDAw
1641+MDAwWjAjMSEwHwYDVQQDDBhudHAtYm9vdHN0cmFwLnVidW50dS5jb20wWTATBgcq
1642+hkjOPQIBBggqhkjOPQMBBwNCAAS7TU/9OynpZSHZIF5/AUQPwCewy50pybP3/DBR
1643+PV5cNtdj4CefCp09x7hEsrofm2XSh0HkcuoADgO6pioVAOQXo1EwTzA/BgNVHREE
1644+ODA2ghhudHAtYm9vdHN0cmFwLnVidW50dS5jb22CGioubnRwLWJvb3RzdHJhcC51
1645+YnVudHUuY29tMAwGA1UdEwEB/wQCMAAwCgYIKoZIzj0EAwIDSAAwRQIhAK06wN7r
1646+Ys7PDAIvFn2qlIKL8FFLhYtHZLcJwwV6vFgBAiATxuquFRB/xn4Y3ZSMvAxRx9rG
1647+8vLwOy6cp6CVWRVvWQ==
1648+-----END CERTIFICATE-----
1649diff --git a/debian/postinst b/debian/postinst
1650index 6404edf..0c53316 100644
1651--- a/debian/postinst
1652+++ b/debian/postinst
1653@@ -3,13 +3,15 @@
1654 #
1655 # see: dh_installdeb(1)
1656
1657+. /usr/share/debconf/confmodule
1658 set -e
1659
1660
1661 # targets: configure|abort-upgrade|abort-remove|abort-deconfigure
1662
1663+ucf_managed_sources="true"
1664 case "$1" in
1665- configure)
1666+ configure|reconfigure)
1667
1668 adduser --system \
1669 --group \
1670@@ -18,13 +20,34 @@ case "$1" in
1671 --home /var/lib/chrony \
1672 --no-create-home _chrony
1673
1674+ ubuntu_ntp_pools_sources_filepath="/etc/chrony/sources.d/ubuntu-ntp-pools.sources"
1675+ packaged_ubuntu_ntp_pools_sources_filepath="/usr/share/chrony/ubuntu-ntp-pools.sources"
1676+
1677+ db_get chrony/configure_ubuntu_pools_in_sourcesd
1678+ ucf_managed_sources="${RET}"
1679+
1680 if command -v ucf >/dev/null
1681 then
1682- ucf --three-way /usr/share/chrony/chrony.conf /etc/chrony/chrony.conf
1683- ucf --three-way /usr/share/chrony/chrony.keys /etc/chrony/chrony.keys
1684+ ucf --debconf-ok --three-way /usr/share/chrony/chrony.conf /etc/chrony/chrony.conf
1685+ ucf --debconf-ok --three-way /usr/share/chrony/chrony.keys /etc/chrony/chrony.keys
1686+ if [ "${ucf_managed_sources}" = "true" ]; then
1687+ ucf --debconf-ok --three-way "${packaged_ubuntu_ntp_pools_sources_filepath}" "${ubuntu_ntp_pools_sources_filepath}"
1688+ else
1689+ # If this was under ucf before, purge it.
1690+ # If it wasn't under ucf before, this does not fail
1691+ ucf --debconf-ok --purge "${ubuntu_ntp_pools_sources_filepath}"
1692+ rm -f "${ubuntu_ntp_pools_sources_filepath}"
1693+ fi
1694 if [ -x "$(command -v ucfr)" ]; then
1695 ucfr chrony /etc/chrony/chrony.conf
1696 ucfr chrony /etc/chrony/chrony.keys
1697+ if [ "${ucf_managed_sources}" = "true" ]; then
1698+ ucfr chrony "${ubuntu_ntp_pools_sources_filepath}"
1699+ else
1700+ # If this was under ucf before, purge it.
1701+ # If it wasn't under ucf before, this does not fail
1702+ ucfr --purge chrony "${ubuntu_ntp_pools_sources_filepath}"
1703+ fi
1704 fi
1705 fi
1706
1707diff --git a/debian/postrm b/debian/postrm
1708index 79713e3..9a80d36 100644
1709--- a/debian/postrm
1710+++ b/debian/postrm
1711@@ -5,8 +5,16 @@
1712
1713 set -e
1714
1715+. /usr/share/debconf/confmodule
1716+
1717 # targets: purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear
1718
1719+ubuntu_ntp_pools_sources_filepath="/etc/chrony/sources.d/ubuntu-ntp-pools.sources"
1720+ucf_managed_sources="true"
1721+
1722+db_get chrony/configure_ubuntu_pools_in_sourcesd
1723+ucf_managed_sources="${RET}"
1724+
1725 case "$1" in
1726 purge)
1727 rm -f /var/lib/chrony/*
1728@@ -16,9 +24,15 @@ case "$1" in
1729 then
1730 ucf --purge /etc/chrony/chrony.conf
1731 ucf --purge /etc/chrony/chrony.keys
1732+ if [ "${ucf_managed_sources}" = "true" ]; then
1733+ ucf --purge "${ubuntu_ntp_pools_sources_filepath}"
1734+ fi
1735 if [ -x "$(command -v ucfr)" ]; then
1736 ucfr --purge chrony /etc/chrony/chrony.conf
1737 ucfr --purge chrony /etc/chrony/chrony.keys
1738+ if [ "${ucf_managed_sources}" = "true" ]; then
1739+ ucfr --purge chrony "${ubuntu_ntp_pools_sources_filepath}"
1740+ fi
1741 fi
1742 fi
1743 rm -rf /etc/chrony
1744diff --git a/debian/rules b/debian/rules
1745index 2bb8023..1945fbd 100755
1746--- a/debian/rules
1747+++ b/debian/rules
1748@@ -47,6 +47,5 @@ endif
1749 override_dh_installsystemd:
1750 dh_installsystemd chrony.service
1751 dh_installsystemd --name=chrony-wait --no-enable --no-start chrony-wait.service
1752- dh_installsystemd --name=chronyd-restricted --no-enable --no-start chronyd-restricted.service
1753 dh_installsystemd --name=chrony-dnssrv@ chrony-dnssrv@.service
1754 dh_installsystemd --name=chrony-dnssrv@ --no-enable --no-start chrony-dnssrv@.timer
1755diff --git a/debian/templates b/debian/templates
1756new file mode 100644
1757index 0000000..e93ccd8
1758--- /dev/null
1759+++ b/debian/templates
1760@@ -0,0 +1,12 @@
1761+Template: chrony/configure_ubuntu_pools_in_sourcesd
1762+Type: boolean
1763+Default: true
1764+Description: Configure Ubuntu NTP pools in /etc/chrony/sources.d/ubuntu-ntp-pools.sources
1765+ The default Ubuntu NTP pools were moved from /etc/chrony/chrony.conf to an
1766+ included file in /etc/chrony/sources.d/ubuntu-ntp-pools.sources. The main
1767+ chrony.conf file shipped by the package no longer contains any NTP pools.
1768+ If you answer "yes", what was described above will be applied.
1769+ If you answer "no", then /etc/chrony/sources.d/ubuntu-ntp-pools.sources will
1770+ NOT be created. If it exists already, it will be REMOVED, and subsequent
1771+ upgrades will not recreate it.
1772+ If in doubt, it's recommended that you answer "yes".
1773diff --git a/debian/tests/control b/debian/tests/control
1774index 5586711..42067f2 100644
1775--- a/debian/tests/control
1776+++ b/debian/tests/control
1777@@ -1,3 +1,9 @@
1778+# Keep this as the first test, to check default installation behavior more
1779+# easily.
1780+Tests: default-ubuntu-sources-behavior
1781+Depends: chrony, dpkg-dev
1782+Restrictions: isolation-container, needs-root
1783+
1784 Tests: upstream-simulation-test-suite
1785 Depends: @builddeps@, build-essential, ca-certificates, wget
1786 Restrictions: isolation-container, build-needed, skippable, needs-root, needs-internet
1787diff --git a/debian/tests/default-ubuntu-sources-behavior b/debian/tests/default-ubuntu-sources-behavior
1788new file mode 100644
1789index 0000000..458d010
1790--- /dev/null
1791+++ b/debian/tests/default-ubuntu-sources-behavior
1792@@ -0,0 +1,134 @@
1793+#!/bin/bash
1794+
1795+set -e
1796+
1797+. debian/tests/helper-functions
1798+
1799+UBUNTU_NTP_POOLS="/etc/chrony/sources.d/ubuntu-ntp-pools.sources"
1800+
1801+cleanup() {
1802+ ret=$?
1803+ __cleanup
1804+ set +e
1805+ if [ ${ret} -ne 0 ]; then
1806+ echo "## ERROR, something failed"
1807+ echo
1808+ echo "## journal logs for chrony"
1809+ journalctl -u chrony.service --lines 500
1810+ echo
1811+ echo "## Content of /etc/chrony"
1812+ find /etc/chrony -ls
1813+ echo
1814+ echo "## chrony sources"
1815+ chronyc sources
1816+ fi
1817+}
1818+
1819+trap cleanup EXIT
1820+
1821+test_fresh_install_has_nts_sources() {
1822+ local -i n=0
1823+ local output
1824+
1825+ echo
1826+ echo "## Running ${FUNCNAME[0]}"
1827+ echo "## Fresh install, ubuntu NTS sources must be defined"
1828+ ls -la "$(dirname ${UBUNTU_NTP_POOLS})"
1829+ test -f "${UBUNTU_NTP_POOLS}" || return 1
1830+ cat "${UBUNTU_NTP_POOLS}"
1831+ grep -qE "^pool.*nts" "${UBUNTU_NTP_POOLS}" || return 1
1832+ echo
1833+ echo "## Chrony should have valid sources loaded"
1834+ # Sometimes this lists sources and still fails ($? != 0), so let's ignore
1835+ # errors and check the output instead
1836+ output=$(chronyc sources 2>&1 || :)
1837+ echo "${output}"
1838+ n=$(echo "${output}" | grep -E '^\^'|wc -l)
1839+ echo "## ${n} sources identified"
1840+ if [ "${n}" -gt 0 ]; then
1841+ echo "## OK"
1842+ else
1843+ echo "## FAIL"
1844+ return 1
1845+ fi
1846+ echo
1847+ echo "## And these sources should be authenticated"
1848+ output=$(chronyc authdata 2>&1 || :)
1849+ echo "${output}"
1850+ n=$(echo "${output}" | grep -E 'NTS'|wc -l)
1851+ echo "## ${n} authenticated sources identified"
1852+ if [ "${n}" -gt 0 ]; then
1853+ echo "## OK"
1854+ else
1855+ echo "## FAIL"
1856+ return 1
1857+ fi
1858+}
1859+
1860+test_debconf_no_ubuntu_sources() {
1861+ echo
1862+ echo "## Running ${FUNCNAME[0]}"
1863+ echo "## Checking that ${UBUNTU_NTP_POOLS} exists"
1864+ ls -la "${UBUNTU_NTP_POOLS}" || return 1
1865+ echo
1866+ echo "## Reconfiguring chrony with chrony/configure_ubuntu_pools_in_sourcesd set to false"
1867+ debconf-set-selections <<EOF
1868+chrony chrony/configure_ubuntu_pools_in_sourcesd boolean false
1869+EOF
1870+ dpkg-reconfigure chrony 2>&1
1871+ echo
1872+ echo "## Now ${UBUNTU_NTP_POOLS} should be gone"
1873+ ls -la "${UBUNTU_NTP_POOLS}" 2>&1 && return 1 || :
1874+ echo
1875+ echo "## And chrony should have no sources"
1876+ # Sometimes this lists sources and still fails ($? != 0), so let's ignore
1877+ # errors and check the output instead
1878+ output=$(chronyc sources 2>&1 || :)
1879+ echo "${output}"
1880+ n=$(echo "${output}" | grep -E '^\^'|wc -l)
1881+ echo "## ${n} sources identified"
1882+ if [ "${n}" -gt 0 ]; then
1883+ echo "## FAIL"
1884+ return 1
1885+ else
1886+ echo "## OK"
1887+ fi
1888+}
1889+
1890+test_debconf_with_ubuntu_sources() {
1891+ echo
1892+ echo "## Running ${FUNCNAME[0]}"
1893+ echo "## Checking that ${UBUNTU_NTP_POOLS} does not exist"
1894+ ls -la "${UBUNTU_NTP_POOLS}" 2>&1 && return 1 || :
1895+ echo
1896+ echo "## Reconfiguring chrony with chrony/configure_ubuntu_pools_in_sourcesd set to true"
1897+ debconf-set-selections <<EOF
1898+chrony chrony/configure_ubuntu_pools_in_sourcesd boolean true
1899+EOF
1900+ dpkg-reconfigure chrony 2>&1
1901+ echo
1902+ echo "## Now ${UBUNTU_NTP_POOLS} should exist now"
1903+ ls -la "${UBUNTU_NTP_POOLS}" || return 1
1904+ echo
1905+ echo "## And chrony should have valid sources"
1906+ # Sometimes this lists sources and still fails ($? != 0), so let's ignore
1907+ # errors and check the output instead
1908+ output=$(chronyc sources 2>&1 || :)
1909+ echo "${output}"
1910+ n=$(echo "${output}" | grep -E '^\^'|wc -l)
1911+ echo "## ${n} sources identified"
1912+ if [ "${n}" -gt 0 ]; then
1913+ echo "## OK"
1914+ else
1915+ echo "## FAIL"
1916+ return 1
1917+ fi
1918+}
1919+
1920+__no_system_clock_control
1921+__restart_chronyd
1922+# these tests must be run in this order, because they don't reset the state
1923+# each time
1924+test_fresh_install_has_nts_sources
1925+test_debconf_no_ubuntu_sources
1926+test_debconf_with_ubuntu_sources
1927diff --git a/debian/ubuntu-ntp-pools.sources b/debian/ubuntu-ntp-pools.sources
1928new file mode 100644
1929index 0000000..27a08a5
1930--- /dev/null
1931+++ b/debian/ubuntu-ntp-pools.sources
1932@@ -0,0 +1,31 @@
1933+# Use NTS by default
1934+# NTS uses an additional port to negotiate security: 4460/tcp
1935+# The normal NTP port remains in use: 123/udp
1936+pool 1.ntp.ubuntu.com iburst maxsources 1 nts prefer
1937+pool 2.ntp.ubuntu.com iburst maxsources 1 nts prefer
1938+pool 3.ntp.ubuntu.com iburst maxsources 1 nts prefer
1939+pool 4.ntp.ubuntu.com iburst maxsources 1 nts prefer
1940+# The bootstrap server is needed by systems without a hardware clock, or a very
1941+# large initial clock offset. The specified certificate set is defined in
1942+# /etc/chrony/conf.d/ubuntu-nts.conf.
1943+pool ntp-bootstrap.ubuntu.com iburst maxsources 1 nts certset 1
1944+
1945+# If you can't or won't use NTS, then here are the old NTP-only definitions
1946+
1947+# This will use (up to):
1948+# - 4 sources from ntp.ubuntu.com which some are ipv6 enabled
1949+# - 2 sources from 2.ubuntu.pool.ntp.org which is ipv6 enabled as well
1950+# - 1 source from [01].ubuntu.pool.ntp.org each (ipv4 only atm)
1951+# This means by default, up to 6 dual-stack and up to 2 additional IPv4-only
1952+# sources will be used.
1953+# At the same time it retains some protection against one of the entries being
1954+# down (compare to just using one of the lines). See (LP: #1754358) for the
1955+# discussion.
1956+#
1957+# About using servers from the NTP Pool Project in general see (LP: #104525).
1958+# Approved by Ubuntu Technical Board on 2011-02-08.
1959+# See http://www.pool.ntp.org/join.html for more information.
1960+#pool ntp.ubuntu.com iburst maxsources 4
1961+#pool 0.ubuntu.pool.ntp.org iburst maxsources 1
1962+#pool 1.ubuntu.pool.ntp.org iburst maxsources 1
1963+#pool 2.ubuntu.pool.ntp.org iburst maxsources 2
1964diff --git a/debian/usr.sbin.chronyd b/debian/usr.sbin.chronyd
1965index 6760ef2..fa6fa03 100644
1966--- a/debian/usr.sbin.chronyd
1967+++ b/debian/usr.sbin.chronyd
1968@@ -78,6 +78,9 @@ abi <abi/3.0>,
1969 # Allow read-write access to the socket path(s).
1970 @{run}/timemaster/chrony.SOCK[0-9]* rw,
1971
1972+ # Allow systemd Type=notify using sd_notify's $NOTIFY_SOCKET
1973+ @{run}/systemd/notify w,
1974+
1975 # For use with clocks that report via shared memory (e.g. gpsd),
1976 # you may need to give ntpd access to all of shared memory, though
1977 # this can be considered dangerous. See https://launchpad.net/bugs/722815

Subscribers

People subscribed via source and target branches