Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/profiles/sway.py
blob: 10e3075356ce4686cc8849477e9b62f62b0bb54d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import archinstall, os

# TODO: Remove hard dependency of bash (due to .bash_profile)

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.
	"""

	__builtins__['_gfx_driver_packages'] = archinstall.lib.gfx_drivers.select_driver()

	return True

def _post_install(*args, **kwargs):
	choice = input("Would you like to autostart sway on login [Y/n]: ")
	if choice.lower == "y":
		with open(f"{installation.mountpoint}/etc/profile", "a") as f:
			x = """
			if [ -z $DISPLAY ] && [ "$(tty)" == "/dev/tty1" ]; then
  				exec sway
			fi
			"""
			f.write(x)
			f.close()
	else:
		installation.log("To start Sway, run the 'sway' command after logging in.")

# Ensures that this code only gets executed if executed
# through importlib.util.spec_from_file_location("kde", "/somewhere/kde.py")
# or through conventional import kde
if __name__ == 'sway':

	installation.add_additional_packages(_gfx_driver_packages)

	# Install dependency profiles
    if _gfx_driver_packages == 'nvidia':
		# NOTE: This is technically runnable with the --my-next-gpu-wont-be-nvidia option
		raise archinstall.lib.exceptions.HardwareIncompatibilityError("Sway does not officially support the proprietary Nvidia driver, you may have to use nouveau.")

	# Install the application kde from the template under /applications/
	sway = archinstall.Application(installation, 'sway')
	sway.install()