Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion archinstall/default_profiles/desktop.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

from typing import TYPE_CHECKING, Self, override

from archinstall.default_profiles.profile import GreeterType, Profile, ProfileType, SelectResult
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType, SelectResult
from archinstall.lib.menu.helpers import Selection
from archinstall.lib.output import info
from archinstall.lib.profile.profiles_handler import profile_handler
Expand Down Expand Up @@ -95,10 +95,16 @@ def install(self, install_session: Installer) -> None:
# Install common packages for all desktop environments
install_session.add_additional_packages(self.packages)

xorg_installed = False

for profile in self.current_selection:
info(f'Installing profile {profile.name}...')

install_session.add_additional_packages(profile.packages)
install_session.enable_service(profile.services)

if not xorg_installed and profile.display_server == DisplayServerType.Xorg:
install_session.add_additional_packages(['xorg-server', 'xorg-xinit'])
xorg_installed = True

profile.install(install_session)
15 changes: 9 additions & 6 deletions archinstall/default_profiles/desktops/awesome.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,27 @@

from typing import TYPE_CHECKING, override

from archinstall.default_profiles.profile import ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, Profile, ProfileType

if TYPE_CHECKING:
from archinstall.lib.installer import Installer


class AwesomeProfile(XorgProfile):
class AwesomeProfile(Profile):
def __init__(self) -> None:
super().__init__('Awesome', ProfileType.WindowMgr)
super().__init__(
'Awesome',
ProfileType.WindowMgr,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
def packages(self) -> list[str]:
return super().packages + [
return [
'awesome',
'alacritty',
'xorg-xinit',
'xorg-xrandr',
'xterm',
'feh',
Expand Down
13 changes: 8 additions & 5 deletions archinstall/default_profiles/desktops/bspwm.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class BspwmProfile(XorgProfile):
class BspwmProfile(Profile):
def __init__(self) -> None:
super().__init__('Bspwm', ProfileType.WindowMgr)
super().__init__(
'Bspwm',
ProfileType.WindowMgr,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
def packages(self) -> list[str]:
# return super().packages + [
return [
'bspwm',
'sxhkd',
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/budgie.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class BudgieProfile(XorgProfile):
class BudgieProfile(Profile):
def __init__(self) -> None:
super().__init__('Budgie', ProfileType.DesktopEnv)
super().__init__(
'Budgie',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/cinnamon.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class CinnamonProfile(XorgProfile):
class CinnamonProfile(Profile):
def __init__(self) -> None:
super().__init__('Cinnamon', ProfileType.DesktopEnv)
super().__init__(
'Cinnamon',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/cosmic.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class CosmicProfile(XorgProfile):
class CosmicProfile(Profile):
def __init__(self) -> None:
super().__init__('Cosmic', ProfileType.DesktopEnv)
super().__init__(
'Cosmic',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Wayland,
)

@property
@override
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/cutefish.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class CutefishProfile(XorgProfile):
class CutefishProfile(Profile):
def __init__(self) -> None:
super().__init__('Cutefish', ProfileType.DesktopEnv)
super().__init__(
'Cutefish',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/deepin.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class DeepinProfile(XorgProfile):
class DeepinProfile(Profile):
def __init__(self) -> None:
super().__init__('Deepin', ProfileType.DesktopEnv)
super().__init__(
'Deepin',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/enlightenment.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class EnlightenmentProfile(XorgProfile):
class EnlightenmentProfile(Profile):
def __init__(self) -> None:
super().__init__('Enlightenment', ProfileType.WindowMgr)
super().__init__(
'Enlightenment',
ProfileType.WindowMgr,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/gnome.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class GnomeProfile(XorgProfile):
class GnomeProfile(Profile):
def __init__(self) -> None:
super().__init__('GNOME', ProfileType.DesktopEnv)
super().__init__(
'GNOME',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Wayland,
)

@property
@override
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/hyprland.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
from typing import override

from archinstall.default_profiles.desktops import SeatAccess
from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType
from archinstall.lib.menu.helpers import Selection
from archinstall.lib.translationhandler import tr
from archinstall.tui.ui.menu_item import MenuItem, MenuItemGroup
from archinstall.tui.ui.result import ResultType


class HyprlandProfile(XorgProfile):
class HyprlandProfile(Profile):
def __init__(self) -> None:
super().__init__('Hyprland', ProfileType.DesktopEnv)
super().__init__(
'Hyprland',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Wayland,
)

self.custom_settings = {'seat_access': None}

Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/i3.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class I3wmProfile(XorgProfile):
class I3wmProfile(Profile):
def __init__(self) -> None:
super().__init__('i3-wm', ProfileType.WindowMgr)
super().__init__(
'i3-wm',
ProfileType.WindowMgr,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
Expand Down
7 changes: 4 additions & 3 deletions archinstall/default_profiles/desktops/labwc.py
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
from typing import override

from archinstall.default_profiles.desktops import SeatAccess
from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType
from archinstall.lib.menu.helpers import Selection
from archinstall.lib.translationhandler import tr
from archinstall.tui.ui.menu_item import MenuItem, MenuItemGroup
from archinstall.tui.ui.result import ResultType


class LabwcProfile(XorgProfile):
class LabwcProfile(Profile):
def __init__(self) -> None:
super().__init__(
'Labwc',
ProfileType.WindowMgr,
support_gfx_driver=True,
display_server=DisplayServerType.Wayland,
)

self.custom_settings = {'seat_access': None}
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/lxqt.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class LxqtProfile(XorgProfile):
class LxqtProfile(Profile):
def __init__(self) -> None:
super().__init__('Lxqt', ProfileType.DesktopEnv)
super().__init__(
'Lxqt',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

# NOTE: SDDM is the only officially supported greeter for LXQt, so unlike other DEs, lightdm is not used here.
# LXQt works with lightdm, but since this is not supported, we will not default to this.
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/mate.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class MateProfile(XorgProfile):
class MateProfile(Profile):
def __init__(self) -> None:
super().__init__('Mate', ProfileType.DesktopEnv)
super().__init__(
'Mate',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Xorg,
)

@property
@override
Expand Down
7 changes: 4 additions & 3 deletions archinstall/default_profiles/desktops/niri.py
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
from typing import override

from archinstall.default_profiles.desktops import SeatAccess
from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType
from archinstall.lib.menu.helpers import Selection
from archinstall.lib.translationhandler import tr
from archinstall.tui.ui.menu_item import MenuItem, MenuItemGroup
from archinstall.tui.ui.result import ResultType


class NiriProfile(XorgProfile):
class NiriProfile(Profile):
def __init__(self) -> None:
super().__init__(
'Niri',
ProfileType.WindowMgr,
support_gfx_driver=True,
display_server=DisplayServerType.Wayland,
)

self.custom_settings = {'seat_access': None}
Expand Down
12 changes: 8 additions & 4 deletions archinstall/default_profiles/desktops/plasma.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
from typing import override

from archinstall.default_profiles.profile import GreeterType, ProfileType
from archinstall.default_profiles.xorg import XorgProfile
from archinstall.default_profiles.profile import DisplayServerType, GreeterType, Profile, ProfileType


class PlasmaProfile(XorgProfile):
class PlasmaProfile(Profile):
def __init__(self) -> None:
super().__init__('KDE Plasma', ProfileType.DesktopEnv)
super().__init__(
'KDE Plasma',
ProfileType.DesktopEnv,
support_gfx_driver=True,
display_server=DisplayServerType.Wayland,
)

@property
@override
Expand Down
Loading
Loading