Message ID | 20180811140505.13600-1-tim@tn-x.org |
---|---|
State | Superseded |
Headers | show |
diff --git a/build_patches/openwrt/0001-sysupgrade-no-config-save.patch b/build_patches/openwrt/0001-sysupgrade-no-config-save.patch deleted file mode 100644 index eabd5df..0000000 --- a/build_patches/openwrt/0001-sysupgrade-no-config-save.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 1115262b144c9fbdb9101a29681cf3d0f332f167 Mon Sep 17 00:00:00 2001 -From: Tim Niemeyer <tim@tn-x.org> -Date: Sat, 8 Jul 2017 10:46:59 +0200 -Subject: [PATCH 1/7] sysupgrade no config save - ---- - package/base-files/files/sbin/sysupgrade | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/package/base-files/files/sbin/sysupgrade b/package/base-files/files/sbin/sysupgrade -index c095ca8..4a97d36 100755 ---- a/package/base-files/files/sbin/sysupgrade -+++ b/package/base-files/files/sbin/sysupgrade -@@ -104,7 +104,7 @@ EOF - add_uci_conffiles() { - local file="$1" - ( find $(sed -ne '/^[[:space:]]*$/d; /^#/d; p' \ -- /etc/sysupgrade.conf /lib/upgrade/keep.d/* 2>/dev/null) \ -+ /etc/sysupgrade.conf 2>/dev/null) \ - -type f -o -type l 2>/dev/null; - opkg list-changed-conffiles ) | sort -u > "$file" - return 0 --- -2.1.4 - diff --git a/src/packages/fff/fff-config/files/lib/upgrade/keep.d/fff-config b/src/packages/fff/fff-config/files/lib/upgrade/keep.d/fff-config new file mode 100644 index 0000000..95c1329 --- /dev/null +++ b/src/packages/fff/fff-config/files/lib/upgrade/keep.d/fff-config @@ -0,0 +1 @@ +/etc/config/fff diff --git a/src/packages/fff/fff-fastd/Makefile b/src/packages/fff/fff-fastd/Makefile index b6ee5fb..4d48c7a 100644 --- a/src/packages/fff/fff-fastd/Makefile +++ b/src/packages/fff/fff-fastd/Makefile @@ -38,6 +38,10 @@ define Build/Compile # nothing endef +define Package/$(PKG_NAME)/install-overlay + $(CP) ./overlay/* $(1)/ +endef + define Package/$(PKG_NAME)/install $(CP) ./files/* $(1)/ endef diff --git a/src/packages/fff/fff-fastd/overlay/lib/upgrade/keep.d/fastd b/src/packages/fff/fff-fastd/overlay/lib/upgrade/keep.d/fastd new file mode 100644 index 0000000..e69de29 diff --git a/src/packages/fff/fff-hoods/files/lib/upgrade/keep.d/fff-hoods b/src/packages/fff/fff-hoods/files/lib/upgrade/keep.d/fff-hoods new file mode 100644 index 0000000..1b659ca --- /dev/null +++ b/src/packages/fff/fff-hoods/files/lib/upgrade/keep.d/fff-hoods @@ -0,0 +1 @@ +/etc/hoodfile diff --git a/src/packages/fff/fff-network/files/lib/upgrade/keep.d/fff-network b/src/packages/fff/fff-network/files/lib/upgrade/keep.d/fff-network new file mode 100644 index 0000000..fa879f3 --- /dev/null +++ b/src/packages/fff/fff-network/files/lib/upgrade/keep.d/fff-network @@ -0,0 +1 @@ +/etc/network.config diff --git a/src/packages/fff/fff-sysupgrade/Makefile b/src/packages/fff/fff-sysupgrade/Makefile index 0be55ab..2a311b5 100644 --- a/src/packages/fff/fff-sysupgrade/Makefile +++ b/src/packages/fff/fff-sysupgrade/Makefile @@ -33,6 +33,10 @@ define Build/Compile # nothing endef +define Package/$(PKG_NAME)/install-overlay + $(CP) ./overlay/* $(1)/ +endef + define Package/$(PKG_NAME)/install $(CP) ./files/* $(1)/ endef diff --git a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff-sysupgrade b/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff-sysupgrade deleted file mode 100644 index 7ff83f5..0000000 --- a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff-sysupgrade +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -# Copyright 2017 Tim Niemeyer -# License GPLv3 - -cat > /etc/sysupgrade.conf <<-__EOF__ -/etc/shadow -/etc/dropbear/dropbear_dss_host_key -/etc/dropbear/dropbear_rsa_host_key -/etc/dropbear/authorized_keys -/etc/network.config -/etc/config/fff -/etc/hoodfile -__EOF__ diff --git a/src/packages/fff/fff-sysupgrade/files/lib/upgrade/keep.d/fff-sysupgrade b/src/packages/fff/fff-sysupgrade/files/lib/upgrade/keep.d/fff-sysupgrade new file mode 100644 index 0000000..0a1b46b --- /dev/null +++ b/src/packages/fff/fff-sysupgrade/files/lib/upgrade/keep.d/fff-sysupgrade @@ -0,0 +1,4 @@ +/etc/shadow +/etc/dropbear/dropbear_dss_host_key +/etc/dropbear/dropbear_rsa_host_key +/etc/dropbear/authorized_keys
Hallo, ich finde es nach wie vor umständlicher, immer genau zu verfolgen, welche Dateien OpenWrt jetzt gerade in /lib/upgrade/keep.d rein wirft, um sie dann selektiv zu überschreiben. Ich würde mich aber diesem Patch nicht verweigern und ihn ggf. auch reviewen. Als Alternative zu dem install-overlay hätte ich zwei verschiedene Ideen: 1. Man könnte pro Package anstatt des install-overlay mit einem leeren File jeweils ein uci-default Skript verwenden, in dem ein rm Befehl steht. Dann kommt die Original-Datei halt ins ROM, aber wir sparen uns die Doppel-Geschichte mit files und overlay. 2. Man könnte ALLE Dateien in einem uci-default Skript per "rm /lib/upgrade/keep.d/*" löschen. Das hätte den Vorteil, dass wir keine vergessen können, und nicht darauf achten müssen, ob OpenWrt eine neue einführt. Auch dann sparen wir uns das install-overlay. Der Nachteil wäre, dass wir so nicht eine einzelne behalten könnten, was im Moment aber auch nicht vorgesehen ist. Weitere Anmerkungen: - Ist es Absicht, dass du uhttpd nicht überschreibst (ist zumindest auf meinen 18.06 Routern drauf)? Die Certs können ruhig mit jedem Update neu verteilt werden, zumal die größenmäßig beim 841er die gespeicherte Config nochmal ein bisschen größer und damit die Ausfälle wahrscheinlicher machen. - Bei der Gateway-Firmware ist ein zusätzlicher File für OpenVPN. Das sollten wir im Hinterkopf behalten, im Moment brauchen wir openvpn aber ja glaube ich ohnehin nicht. - Folgendes musst du unbedingt auch noch berücksichtigen: https://github.com/FreifunkFranken/firmware/blob/master/src/packages/fff/fff -support/files/etc/init.d/fff-userconfig Das wird in Zeile 8 die /etc/sysupgrade.conf editiert. Das müsste da raus und als /lib/upgrade/keep.d/support eingebunden werden. Bei der Gelegenheit kann man auch gleich in Zeile 12 die Variable verwenden. Inline diesmal nichts. Grüße Adrian > -----Original Message----- > From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf > Of Tim Niemeyer > Sent: Samstag, 11. August 2018 16:05 > To: franken-dev@freifunk.net > Subject: [PATCH v2] fff-sysupgrade: use keep.d and spread to packages > > Currently only one package can define what files are upgrade-save and what > not. With this change, we > - remove the nasty 0001-sysupgrade-no-config-save path > - support more packages to define upgrade-save files > - move the upgrade save definition to the packages owning the files > > Signed-off-by: Tim Niemeyer <tim@tn-x.org> > > --- > > Changes in v2: > - remove sector file > > .../openwrt/0001-sysupgrade-no-config-save.patch | 25 ---------------------- > .../fff-config/files/lib/upgrade/keep.d/fff-config | 1 + > src/packages/fff/fff-fastd/Makefile | 4 ++++ > .../fff/fff-fastd/overlay/lib/upgrade/keep.d/fastd | 0 > .../fff-hoods/files/lib/upgrade/keep.d/fff-hoods | 1 + > .../files/lib/upgrade/keep.d/fff-network | 1 + > src/packages/fff/fff-sysupgrade/Makefile | 4 ++++ > .../files/etc/uci-defaults/99-fff-sysupgrade | 13 ----------- > .../files/lib/upgrade/keep.d/fff-sysupgrade | 4 ++++ > .../overlay/lib/upgrade/keep.d/base-files | 0 > .../lib/upgrade/keep.d/base-files-essential | 0 > .../overlay/lib/upgrade/keep.d/uboot-envtools | 0 > 12 files changed, 15 insertions(+), 38 deletions(-) delete mode 100644 > build_patches/openwrt/0001-sysupgrade-no-config-save.patch > create mode 100644 src/packages/fff/fff- > config/files/lib/upgrade/keep.d/fff-config > create mode 100644 src/packages/fff/fff- > fastd/overlay/lib/upgrade/keep.d/fastd > create mode 100644 src/packages/fff/fff- > hoods/files/lib/upgrade/keep.d/fff-hoods > create mode 100644 src/packages/fff/fff- > network/files/lib/upgrade/keep.d/fff-network > delete mode 100644 src/packages/fff/fff-sysupgrade/files/etc/uci- > defaults/99-fff-sysupgrade > create mode 100644 src/packages/fff/fff- > sysupgrade/files/lib/upgrade/keep.d/fff-sysupgrade > create mode 100644 src/packages/fff/fff- > sysupgrade/overlay/lib/upgrade/keep.d/base-files > create mode 100644 src/packages/fff/fff- > sysupgrade/overlay/lib/upgrade/keep.d/base-files-essential > create mode 100644 src/packages/fff/fff- > sysupgrade/overlay/lib/upgrade/keep.d/uboot-envtools > > diff --git a/build_patches/openwrt/0001-sysupgrade-no-config-save.patch > b/build_patches/openwrt/0001-sysupgrade-no-config-save.patch > deleted file mode 100644 > index eabd5df..0000000 > --- a/build_patches/openwrt/0001-sysupgrade-no-config-save.patch > +++ /dev/null > @@ -1,25 +0,0 @@ > -From 1115262b144c9fbdb9101a29681cf3d0f332f167 Mon Sep 17 00:00:00 > 2001 > -From: Tim Niemeyer <tim@tn-x.org> > -Date: Sat, 8 Jul 2017 10:46:59 +0200 > -Subject: [PATCH 1/7] sysupgrade no config save > - > ---- > - package/base-files/files/sbin/sysupgrade | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/package/base-files/files/sbin/sysupgrade b/package/base- > files/files/sbin/sysupgrade > -index c095ca8..4a97d36 100755 > ---- a/package/base-files/files/sbin/sysupgrade > -+++ b/package/base-files/files/sbin/sysupgrade > -@@ -104,7 +104,7 @@ EOF > - add_uci_conffiles() { > - local file="$1" > - ( find $(sed -ne '/^[[:space:]]*$/d; /^#/d; p' \ > -- /etc/sysupgrade.conf /lib/upgrade/keep.d/* 2>/dev/null) \ > -+ /etc/sysupgrade.conf 2>/dev/null) \ > - -type f -o -type l 2>/dev/null; > - opkg list-changed-conffiles ) | sort -u > "$file" > - return 0 > --- > -2.1.4 > - > diff --git a/src/packages/fff/fff-config/files/lib/upgrade/keep.d/fff-config > b/src/packages/fff/fff-config/files/lib/upgrade/keep.d/fff-config > new file mode 100644 > index 0000000..95c1329 > --- /dev/null > +++ b/src/packages/fff/fff-config/files/lib/upgrade/keep.d/fff-config > @@ -0,0 +1 @@ > +/etc/config/fff > diff --git a/src/packages/fff/fff-fastd/Makefile b/src/packages/fff/fff- > fastd/Makefile > index b6ee5fb..4d48c7a 100644 > --- a/src/packages/fff/fff-fastd/Makefile > +++ b/src/packages/fff/fff-fastd/Makefile > @@ -38,6 +38,10 @@ define Build/Compile > # nothing > endef > > +define Package/$(PKG_NAME)/install-overlay > + $(CP) ./overlay/* $(1)/ > +endef > + > define Package/$(PKG_NAME)/install > $(CP) ./files/* $(1)/ > endef > diff --git a/src/packages/fff/fff-fastd/overlay/lib/upgrade/keep.d/fastd > b/src/packages/fff/fff-fastd/overlay/lib/upgrade/keep.d/fastd > new file mode 100644 > index 0000000..e69de29 > diff --git a/src/packages/fff/fff-hoods/files/lib/upgrade/keep.d/fff-hoods > b/src/packages/fff/fff-hoods/files/lib/upgrade/keep.d/fff-hoods > new file mode 100644 > index 0000000..1b659ca > --- /dev/null > +++ b/src/packages/fff/fff-hoods/files/lib/upgrade/keep.d/fff-hoods > @@ -0,0 +1 @@ > +/etc/hoodfile > diff --git a/src/packages/fff/fff-network/files/lib/upgrade/keep.d/fff- > network b/src/packages/fff/fff-network/files/lib/upgrade/keep.d/fff- > network > new file mode 100644 > index 0000000..fa879f3 > --- /dev/null > +++ b/src/packages/fff/fff-network/files/lib/upgrade/keep.d/fff-network > @@ -0,0 +1 @@ > +/etc/network.config > diff --git a/src/packages/fff/fff-sysupgrade/Makefile b/src/packages/fff/fff- > sysupgrade/Makefile > index 0be55ab..2a311b5 100644 > --- a/src/packages/fff/fff-sysupgrade/Makefile > +++ b/src/packages/fff/fff-sysupgrade/Makefile > @@ -33,6 +33,10 @@ define Build/Compile > # nothing > endef > > +define Package/$(PKG_NAME)/install-overlay > + $(CP) ./overlay/* $(1)/ > +endef > + > define Package/$(PKG_NAME)/install > $(CP) ./files/* $(1)/ > endef > diff --git a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff- > sysupgrade b/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff- > sysupgrade > deleted file mode 100644 > index 7ff83f5..0000000 > --- a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff- > sysupgrade > +++ /dev/null > @@ -1,13 +0,0 @@ > -#!/bin/sh > -# Copyright 2017 Tim Niemeyer > -# License GPLv3 > - > -cat > /etc/sysupgrade.conf <<-__EOF__ > -/etc/shadow > -/etc/dropbear/dropbear_dss_host_key > -/etc/dropbear/dropbear_rsa_host_key > -/etc/dropbear/authorized_keys > -/etc/network.config > -/etc/config/fff > -/etc/hoodfile > -__EOF__ > diff --git a/src/packages/fff/fff-sysupgrade/files/lib/upgrade/keep.d/fff- > sysupgrade b/src/packages/fff/fff-sysupgrade/files/lib/upgrade/keep.d/fff- > sysupgrade > new file mode 100644 > index 0000000..0a1b46b > --- /dev/null > +++ b/src/packages/fff/fff-sysupgrade/files/lib/upgrade/keep.d/fff-sysup > +++ grade > @@ -0,0 +1,4 @@ > +/etc/shadow > +/etc/dropbear/dropbear_dss_host_key > +/etc/dropbear/dropbear_rsa_host_key > +/etc/dropbear/authorized_keys > diff --git a/src/packages/fff/fff- > sysupgrade/overlay/lib/upgrade/keep.d/base-files b/src/packages/fff/fff- > sysupgrade/overlay/lib/upgrade/keep.d/base-files > new file mode 100644 > index 0000000..e69de29 > diff --git a/src/packages/fff/fff- > sysupgrade/overlay/lib/upgrade/keep.d/base-files-essential > b/src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/base-files- > essential > new file mode 100644 > index 0000000..e69de29 > diff --git a/src/packages/fff/fff- > sysupgrade/overlay/lib/upgrade/keep.d/uboot-envtools > b/src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/uboot- > envtools > new file mode 100644 > index 0000000..e69de29 > -- > 2.11.0
Currently only one package can define what files are upgrade-save and what not. With this change, we - remove the nasty 0001-sysupgrade-no-config-save path - support more packages to define upgrade-save files - move the upgrade save definition to the packages owning the files Signed-off-by: Tim Niemeyer <tim@tn-x.org> --- Changes in v2: - remove sector file .../openwrt/0001-sysupgrade-no-config-save.patch | 25 ---------------------- .../fff-config/files/lib/upgrade/keep.d/fff-config | 1 + src/packages/fff/fff-fastd/Makefile | 4 ++++ .../fff/fff-fastd/overlay/lib/upgrade/keep.d/fastd | 0 .../fff-hoods/files/lib/upgrade/keep.d/fff-hoods | 1 + .../files/lib/upgrade/keep.d/fff-network | 1 + src/packages/fff/fff-sysupgrade/Makefile | 4 ++++ .../files/etc/uci-defaults/99-fff-sysupgrade | 13 ----------- .../files/lib/upgrade/keep.d/fff-sysupgrade | 4 ++++ .../overlay/lib/upgrade/keep.d/base-files | 0 .../lib/upgrade/keep.d/base-files-essential | 0 .../overlay/lib/upgrade/keep.d/uboot-envtools | 0 12 files changed, 15 insertions(+), 38 deletions(-) delete mode 100644 build_patches/openwrt/0001-sysupgrade-no-config-save.patch create mode 100644 src/packages/fff/fff-config/files/lib/upgrade/keep.d/fff-config create mode 100644 src/packages/fff/fff-fastd/overlay/lib/upgrade/keep.d/fastd create mode 100644 src/packages/fff/fff-hoods/files/lib/upgrade/keep.d/fff-hoods create mode 100644 src/packages/fff/fff-network/files/lib/upgrade/keep.d/fff-network delete mode 100644 src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff-sysupgrade create mode 100644 src/packages/fff/fff-sysupgrade/files/lib/upgrade/keep.d/fff-sysupgrade create mode 100644 src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/base-files create mode 100644 src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/base-files-essential create mode 100644 src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/uboot-envtools diff --git a/src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/base-files b/src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/base-files new file mode 100644 index 0000000..e69de29 diff --git a/src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/base-files-essential b/src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/base-files-essential new file mode 100644 index 0000000..e69de29 diff --git a/src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/uboot-envtools b/src/packages/fff/fff-sysupgrade/overlay/lib/upgrade/keep.d/uboot-envtools new file mode 100644 index 0000000..e69de29