From 81aca78d9b61c56e4ba33747d0520f0615a36f76 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= <karel.koci@nic.cz>
Date: Tue, 9 Jul 2019 11:01:37 +0200
Subject: [PATCH] lists: manage foris translations globally

This adds code that is not pkglists dependent and when any Foris plugin
is installed it should automatically also maintain languages.

Note that lists are not aware of Foris packages existence so they need
list of all existing plugins.
---
 lists/foris.lua.m4            | 20 ++++++++++++++++++--
 lists/pkglists/netboot.lua.m4 |  3 ---
 lists/pkglists/netmetr.lua.m4 |  3 ---
 lists/pkglists/openvpn.lua.m4 |  7 +------
 lists/pkglists/pakon.lua.m4   |  3 ---
 5 files changed, 19 insertions(+), 17 deletions(-)

diff --git a/lists/foris.lua.m4 b/lists/foris.lua.m4
index 1fb4e0937..6a1f2bff9 100644
--- a/lists/foris.lua.m4
+++ b/lists/foris.lua.m4
@@ -1,12 +1,28 @@
 include(utils.m4)dnl Include utility macros
 _FEATURE_GUARD_
 
+foris_plugins = {
+	"data_collect",
+	"diagnostics",
+	"netmetr",
+	"openvpn",
+	"pakon",
+	"ssbackups",
+	"storage",
+	"subordinates",
+}
+
+
 Install("foris", "foris-diagnostics-plugin", "foris-storage-plugin", "lighttpd-https-cert", { priority = 40 })
+
 if for_l10n then
 	for_l10n("foris-l10n-")
-	for_l10n("foris-diagnostics-plugin-l10n-")
-	for_l10n("foris-storage-plugin-l10n-")
 	for_l10n('pkglists-l10n-')
+	for plugin in pairs(foris_plugins) do
+		if installed[plugin] then
+			for_l10n("foris-" .. plugin .. "-plugin-l10n-")
+		end
+	end
 end
 
 _END_FEATURE_GUARD_
diff --git a/lists/pkglists/netboot.lua.m4 b/lists/pkglists/netboot.lua.m4
index 0c7664c16..b6b102fa6 100644
--- a/lists/pkglists/netboot.lua.m4
+++ b/lists/pkglists/netboot.lua.m4
@@ -2,8 +2,5 @@ include(utils.m4)dnl Include utility macros
 _FEATURE_GUARD_
 
 Install("foris-subordinates-plugin", { priority = 40 })
-if for_l10n then
-	for_l10n("foris-subordinates-plugin-l10n-")
-end
 
 _END_FEATURE_GUARD_
diff --git a/lists/pkglists/netmetr.lua.m4 b/lists/pkglists/netmetr.lua.m4
index 10b94cd99..484847846 100644
--- a/lists/pkglists/netmetr.lua.m4
+++ b/lists/pkglists/netmetr.lua.m4
@@ -2,8 +2,5 @@ include(utils.m4)dnl Include utility macros
 _FEATURE_GUARD_
 
 Install("foris-netmetr-plugin", { priority = 40 })
-if for_l10n then
-	for_l10n("foris-netmetr-plugin-l10n-")
-end
 
 _END_FEATURE_GUARD_
diff --git a/lists/pkglists/openvpn.lua.m4 b/lists/pkglists/openvpn.lua.m4
index fa6bf6ddc..a4135ebe1 100644
--- a/lists/pkglists/openvpn.lua.m4
+++ b/lists/pkglists/openvpn.lua.m4
@@ -1,11 +1,6 @@
 include(utils.m4)dnl Include utility macros
 _FEATURE_GUARD_
 
-Install("openvpn-openssl", { priority = 40 })
-
-Install("foris-openvpn-plugin", "dhparam", { priority = 40 })
-if for_l10n then
-	for_l10n("foris-openvpn-plugin-l10n-")
-end
+Install("foris-openvpn-plugin","openvpn-openssl", "dhparam", { priority = 40 })
 
 _END_FEATURE_GUARD_
diff --git a/lists/pkglists/pakon.lua.m4 b/lists/pkglists/pakon.lua.m4
index 036a6c6f4..7365b32dc 100644
--- a/lists/pkglists/pakon.lua.m4
+++ b/lists/pkglists/pakon.lua.m4
@@ -2,8 +2,5 @@ include(utils.m4)dnl Include utility macros
 _FEATURE_GUARD_
 
 Install("foris-pakon-plugin", "pakon", "pakon-lists", "suricata-pakon", { priority = 40 })
-if for_l10n then
-	for_l10n("foris-pakon-plugin-l10n-")
-end
 
 _END_FEATURE_GUARD_
-- 
GitLab