Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/archinstall/lib/systemd.py
diff options
context:
space:
mode:
authorAnton Hvornum <anton.feeds+github@gmail.com>2020-11-11 19:11:22 +0000
committerAnton Hvornum <anton.feeds+github@gmail.com>2020-11-11 19:11:22 +0000
commit07d70a0a916b3c7ede34671603c1e964a1c7bf30 (patch)
tree7f8e58882ab7db135e90cff9fea278a83a11c571 /archinstall/lib/systemd.py
parent9a1199333a0a00b74f884dfee1b324500d4b8060 (diff)
Added a simple INI handler, and a helper function under Installer().configure_nic() to help with nic configuration. Supports a crude DHCP configuration and a minimal static IP handler.
Diffstat (limited to 'archinstall/lib/systemd.py')
-rw-r--r--archinstall/lib/systemd.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/archinstall/lib/systemd.py b/archinstall/lib/systemd.py
new file mode 100644
index 00000000..edd75098
--- /dev/null
+++ b/archinstall/lib/systemd.py
@@ -0,0 +1,40 @@
+class Ini():
+ def __init__(self, *args, **kwargs):
+ """
+ Limited INI handler for now.
+ Supports multiple keywords through dictionary list items.
+ """
+ self.kwargs = kwargs
+
+ def __str__(self):
+ result = ''
+ first_row_done = False
+ for top_level in self.kwargs:
+ if first_row_done:
+ result += f"\n[{top_level}]\n"
+ else:
+ result += f"[{top_level}]\n"
+ first_row_done = True
+
+ for key, val in self.kwargs[top_level].items():
+ if type(val) == list:
+ for item in val:
+ result += f"{key}={item}\n"
+ else:
+ result += f"{key}={val}\n"
+
+ return result
+
+class Systemd(Ini):
+ def __init__(self, *args, **kwargs):
+ """
+ Placeholder class to do systemd specific setups.
+ """
+ super(Systemd, self).__init__(*args, **kwargs)
+
+class Networkd(Systemd):
+ def __init__(self, *args, **kwargs):
+ """
+ Placeholder class to do systemd-network specific setups.
+ """
+ super(Networkd, self).__init__(*args, **kwargs) \ No newline at end of file