Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/profiles/i3-wm.py
diff options
context:
space:
mode:
authorAggam Rahamim <agamclass@gmail.com>2021-04-25 14:56:03 +0300
committerAggam Rahamim <agamclass@gmail.com>2021-04-25 14:56:03 +0300
commite25018131756757999bbe8ba8e54ec3ae8224c7d (patch)
tree828fb3ad3882d4dfac3e522c52a16369c6042990 /profiles/i3-wm.py
parent5c9859d316b8064949370c03745cfd99e0d67670 (diff)
parent4db40c06eb37390eaa19b6d8b0afa7b21c5e65b3 (diff)
Merge branch 'master' of https://github.com/AggamR/archinstall
Diffstat (limited to 'profiles/i3-wm.py')
-rw-r--r--profiles/i3-wm.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/profiles/i3-wm.py b/profiles/i3-wm.py
new file mode 100644
index 00000000..a2449e39
--- /dev/null
+++ b/profiles/i3-wm.py
@@ -0,0 +1,42 @@
+import archinstall, subprocess
+
+is_top_level_profile = False
+
+def _prep_function(*args, **kwargs):
+ """
+ Magic function called by the importing installer
+ before continuing any further. It also avoids executing any
+ other code in this stage. So it's a safe way to ask the user
+ for more input before any other installer steps start.
+ """
+
+ # i3 requires a functioning Xorg installation.
+ profile = archinstall.Profile(None, 'xorg')
+ with profile.load_instructions(namespace='xorg.py') as imported:
+ if hasattr(imported, '_prep_function'):
+ return imported._prep_function()
+ else:
+ print('Deprecated (??): xorg profile has no _prep_function() anymore')
+def _post_install(*args, **kwargs):
+ """
+ Another magic function called after the system
+ has been installed.
+ """
+ installation.log("the installation of i3 does not conatain any configuerations for the wm. In this shell you should take your time to add your desiired configueration. Exit the shell once you are done to continue the installation.", fg="yellow")
+ try:
+ subprocess.check_call("arch-chroot /mnt",shell=True)
+ except subprocess.CallProcessError:
+ return False
+
+ return True
+
+if __name__ == 'i3-wm':
+ # Install dependency profiles
+ installation.install_profile('xorg')
+ # we are installing lightdm to auto start i3
+ installation.add_additional_packages("lightdm-gtk-greeter lightdm")
+ # install the i3 group now
+ i3 = archinstall.Application(installation, 'i3-wm')
+ i3.install()
+ # Auto start lightdm for all users
+ installation.enable_service('lightdm')