m/n/time: add time service

This adds a bare-minimum time service based on chrony/NTP for keeping
the system clock and RTC on Metropolis nodes accurate.

It also introduces a UID/GID registry in the Metropolis node code
as this is the first unprivileged service to run on the node itself.

It does not yet use a secure time source, this is tracked as #73.

Change-Id: I873971e6d3825709bc8c696e227bece4cfbda93a
Reviewed-on: https://review.monogon.dev/c/monogon/+/319
Reviewed-by: Sergiusz Bazanski <serge@monogon.tech>
diff --git a/third_party/chrony/external.bzl b/third_party/chrony/external.bzl
index e269c41..64b4f47 100644
--- a/third_party/chrony/external.bzl
+++ b/third_party/chrony/external.bzl
@@ -25,5 +25,10 @@
         sha256 = "61a1b0879432695735a1e2a14e5d1ae499d3be15099c767501fbe695f46861da",
         build_file = "@//third_party/chrony:chrony.bzl",
         strip_prefix = "chrony-" + version,
+        patch_args = ["-p1"],
+        patches = [
+            "//third_party/chrony/patches:disable_defaults.patch",
+            "//third_party/chrony/patches:support_fixed_uids.patch",
+        ],
         urls = ["https://git.tuxfamily.org/chrony/chrony.git/snapshot/chrony-%s.tar.gz" % version],
     )