From 6b92a68a3ec3b4fbc89dc3e11e6aee92151c2d20 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Tue, 21 Jul 2020 08:18:22 +0200
Subject: [PATCH] MycroftOS: More timesync changes.
---
.../NetworkManager/dispatcher.d/09-timezone | 6 ++++++
.../dispatcher.d/10-update-timesyncd | 20 +++++++++++++++++++
.../etc/systemd/network/eth0.network | 6 ------
.../rootfs-overlay/etc/systemd/timesyncd.conf | 3 +++
4 files changed, 29 insertions(+), 6 deletions(-)
create mode 100755 buildroot-external/rootfs-overlay/etc/NetworkManager/dispatcher.d/09-timezone
create mode 100755 buildroot-external/rootfs-overlay/etc/NetworkManager/dispatcher.d/10-update-timesyncd
delete mode 100644 buildroot-external/rootfs-overlay/etc/systemd/network/eth0.network
create mode 100644 buildroot-external/rootfs-overlay/etc/systemd/timesyncd.conf
diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/dispatcher.d/09-timezone b/buildroot-external/rootfs-overlay/etc/NetworkManager/dispatcher.d/09-timezone
new file mode 100755
index 00000000..7146c886
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/dispatcher.d/09-timezone
@@ -0,0 +1,6 @@
+#!/bin/sh
+case "$2" in
+ up)
+ timedatectl set-timezone "$(curl --fail https://ipapi.co/timezone)"
+ ;;
+esac
diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/dispatcher.d/10-update-timesyncd b/buildroot-external/rootfs-overlay/etc/NetworkManager/dispatcher.d/10-update-timesyncd
new file mode 100755
index 00000000..aff55028
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/dispatcher.d/10-update-timesyncd
@@ -0,0 +1,20 @@
+#! /usr/bin/bash
+
+[ -n "$CONNECTION_UUID" ] || exit
+
+INTERFACE=$1
+ACTION=$2
+
+case $ACTION in
+ up | dhcp4-change | dhcp6-change)
+ [ -n "$DHCP4_NTP_SERVERS" ] || exit
+ exec > /etc/systemd/timesyncd.conf.d/$CONNECTION_UUID.conf
+ echo "[Time]"
+ echo "NTP=$DHCP4_NTP_SERVERS"
+ systemctl restart systemd-timesyncd
+ ;;
+ down)
+ rm -f /etc/systemd/timesyncd.conf.d/$CONNECTION_UUID.conf
+ systemctl restart systemd-timesyncd
+ ;;
+esac
diff --git a/buildroot-external/rootfs-overlay/etc/systemd/network/eth0.network b/buildroot-external/rootfs-overlay/etc/systemd/network/eth0.network
deleted file mode 100644
index 6407da4d..00000000
--- a/buildroot-external/rootfs-overlay/etc/systemd/network/eth0.network
+++ /dev/null
@@ -1,6 +0,0 @@
-[Match]
-Name=eth0
-[Network]
-DHCP=ipv4
-[DHCP]
-RouteMetric=10
diff --git a/buildroot-external/rootfs-overlay/etc/systemd/timesyncd.conf b/buildroot-external/rootfs-overlay/etc/systemd/timesyncd.conf
new file mode 100644
index 00000000..63422d88
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/systemd/timesyncd.conf
@@ -0,0 +1,3 @@
+[Time]
+NTP=time.cloudflare.com
+FallbackNTP=0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org