Added a qtile profile (#924)

* Added a qtile profile

* Removed unneeded packages

* Removed xorg requirement

* Removed blank lines

* applied patch to qtile profile

* Revert "Removed xorg requirement"

This reverts commit 34e87b13ac.

* Fixed flake8

* Added qtile to the desktop selection/options.

Co-authored-by: Anton Hvornum <anton@hvornum.se>
This commit is contained in:
edl2 2022-02-02 02:42:13 -05:00 committed by GitHub
parent 39b1150a43
commit 860dc1449c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 43 additions and 0 deletions

View File

@ -33,6 +33,7 @@ __supported__ = [
'mate',
'deepin',
'enlightenment',
'qtile'
]

42
profiles/qtile.py Normal file
View File

@ -0,0 +1,42 @@
# A desktop environment using "qtile" window manager with common packages.
import archinstall
is_top_level_profile = False
# New way of defining packages for a profile, which is iterable and can be used out side
# of the profile to get a list of "what packages will be installed".
__packages__ = [
'qtile',
'alacritty',
'lightdm-gtk-greeter',
'lightdm',
'dmenu'
]
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.
"""
# qtile 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')
if __name__ == 'qtile':
# Install dependency profiles
archinstall.storage['installation_session'].install_profile('xorg')
# Install packages for qtile
archinstall.storage['installation_session'].add_additional_packages(__packages__)
# Auto start lightdm for all users
archinstall.storage['installation_session'].enable_service('lightdm') # Light Display Manager