From 326b96d80869bc9c67eec89eb05bea2fac131939 Mon Sep 17 00:00:00 2001 From: Dylan Taylor Date: Fri, 9 Apr 2021 08:29:58 -0400 Subject: Add budgie implementation --- profiles/applications/budgie.py | 4 ++++ profiles/applications/cinnamon.py | 3 +-- profiles/applications/xfce4.py | 3 +-- profiles/budgie.py | 34 ++++++++++++++++++++++++++++++++++ 4 files changed, 40 insertions(+), 4 deletions(-) create mode 100644 profiles/applications/budgie.py create mode 100644 profiles/budgie.py diff --git a/profiles/applications/budgie.py b/profiles/applications/budgie.py new file mode 100644 index 00000000..8c5ea223 --- /dev/null +++ b/profiles/applications/budgie.py @@ -0,0 +1,4 @@ +import archinstall + +# "It is recommended also to install the gnome group, which contains applications required for the standard GNOME experience." - Arch Wiki +installation.add_additional_packages("budgie-desktop lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings gnome") \ No newline at end of file diff --git a/profiles/applications/cinnamon.py b/profiles/applications/cinnamon.py index af1cbee2..5e2ac02e 100644 --- a/profiles/applications/cinnamon.py +++ b/profiles/applications/cinnamon.py @@ -1,4 +1,3 @@ import archinstall -installation.add_additional_packages("cinnamon system-config-printer gnome-keyring gnome-terminal blueberry metacity lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings") -# We'll create a cinnamon-minimal later, but for now, we'll avoid issues by giving more than we need. +installation.add_additional_packages("cinnamon system-config-printer gnome-keyring gnome-terminal blueberry metacity lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings") \ No newline at end of file diff --git a/profiles/applications/xfce4.py b/profiles/applications/xfce4.py index 6d6f8f7c..809d10d0 100644 --- a/profiles/applications/xfce4.py +++ b/profiles/applications/xfce4.py @@ -1,4 +1,3 @@ import archinstall -installation.add_additional_packages("xfce4 xfce4-goodies lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings") -# We'll create a xfce4-minimal later, but for now, we'll avoid issues by giving more than we need. +installation.add_additional_packages("xfce4 xfce4-goodies lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings") \ No newline at end of file diff --git a/profiles/budgie.py b/profiles/budgie.py new file mode 100644 index 00000000..6c5475ae --- /dev/null +++ b/profiles/budgie.py @@ -0,0 +1,34 @@ +# A desktop environment using "budgie" + +import archinstall + +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. + """ + + # budgie 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') + +# Ensures that this code only gets executed if executed +# through importlib.util.spec_from_file_location("budgie", "/somewhere/budgie.py") +# or through conventional import budgie +if __name__ == 'budgie': + # Install dependency profiles + installation.install_profile('xorg') + + # Install the application budgie from the template under /applications/ + budgie = archinstall.Application(installation, 'budgie') + budgie.install() + + installation.enable_service('lightdm') # Light Display Manager -- cgit v1.2.3-70-g09d2