Skip to content

Instantly share code, notes, and snippets.

@ancorgs
Last active November 21, 2023 09:23
Show Gist options
  • Save ancorgs/92857310d50fe7672bc09351fa0a8212 to your computer and use it in GitHub Desktop.
Save ancorgs/92857310d50fe7672bc09351fa0a8212 to your computer and use it in GitHub Desktop.
Roles in use in the YaST installer

Tumbleweed and Leap roles

  • kde
  • gnome
  • xfce
  • generic_desktop
  • server
  • serverro
See details of each role
  • Desktop with KDE Plasma
    • Redefines the list of default patterns
  • Desktop with GNOME
    • Redefines the list of default patterns
  • Desktop with Xfce
    • Redefines the list of default patterns
  • Generic Desktop
    • Redefines the list of default patterns
  • Server
    • Modifies installer settings: firewall, ssh
    • Redefines the list of default patterns
  • Transactional Server
    • Modifies installer settings: firewall, ssh
    • Redefines the list of default patterns
    • Redefines partitioning
      • Mandatory Btrfs with ro root and snapshots,
      • Extra subvolume boot/writable

Summary:

  • Roles are mainly used to modify the list of default patterns
  • Server roles also enable ssh
  • Transactional role also adjust partitioning
    • Mandatory Btrfs with ro root and snapshots
    • Extra subvolume boot/writable

openSUSE MicroOS roles

  • micro_os_role
  • container_host_role
  • micro_os_gnome_desktop_role
  • micro_os_kde_desktop_role
  • micro_os_role_ra_agent
  • micro_os_role_ra_verifier
See details of each role
  • MicroOS
    • Additional dialog: inst_microos_role
  • MicroOS Container Host
    • Additional dialog: inst_microos_role
    • Redefines the list of default patterns
  • MicroOS Desktop (GNOME)
    • Additional dialogs: inst_microos_role, inst_user_first
    • Modifies installer settings: kdump, polkit, readonly_language
    • Redefines the list of default patterns
    • Redefines partitioning: do not propose a separate /var partition
  • MicroOS Desktop (KDE Plasma)
    • Additional dialogs: inst_microos_role, inst_user_first
    • Modifies installer settings: kdump, polkit, readonly_language
    • Redefines the list of default patterns
    • Redefines partitioning: do not propose a separate /var partition
  • MicroOS with Remote Attestation (Agent)
    • Additional dialog: inst_microos_role
    • Redefines the list of default patterns
  • MicroOS with Remote Attestation (Verifier)
    • Additional dialog: inst_microos_role
    • Redefines the list of default patterns

Summary:

  • All roles add the inst_microos_role dialog (apparently only used to configure NTP)
  • All roles modify the list of default patterns
  • Only the desktop roles modify installer settings (kdump, polkit, readonly_language)
  • Only the desktop roles modify partitioning
    • Do NOT have a separate /var partition

SUSE Linux Enterprise roles

  • basic-desktop
  • common-criteria
  • gnome
  • gnome-x11
  • ha
  • geo
  • hpc-compute
  • hpc-server
  • kvm
  • minimal-desktop
  • real-time-text-mode
  • sap-business-one
  • server-default
  • sles4sap → there is a package, but it doesn’t seem to contain role
  • text-mode
  • transactional-server
  • xen
See details of each role
  • Gnome Desktop (basic):
    • Redefines the lists of default and optional patterns
  • Common Criteria (SLE):
    • Adds a workflow step (asking for encryption password)
    • Modifies installer settings: booting kernel parameters, autologin, firewall, sshd, libzypp config…
    • Redefines the list of default patterns
    • Redefines partitioning
  • Gnome Desktop:
    • Redefines the lists of default and optional patterns
  • Gnome Desktop (X11):
    • Redefines the lists of default and optional patterns
  • HA node
    • Modifies installer settings: firewall, sshd, NTP…
    • Redefines the lists of default and optional patterns
  • HA GEO node
    • Modifies installer settings: firewall, sshd, NTP…
    • Redefines the lists of default and optional patterns
  • HPC Compute Node
    • Modifies installer settings: autologin, firewall, sshd, kdump, display manager, dhclient, kdump, NTP, libzypp config, os-prober, local users…
    • Redefines the lists of default and optional patterns
    • Redefines partitioning
  • HPC Management Server:
    • Modifies installer settings: autologin, firewall, sshd, kdump, display manager, dhclient, kdump, NTP, libzypp config, os-prober…
    • Redefines the lists of default and optional patterns
    • Redefines partitioning
  • KVM Virtualization Host
    • Modifies installer settings: autologin, firewall, sshd, kdump, display manager, dhclient, kdump, NTP, libzypp config…
    • Redefines the lists of default and optional patterns
    • Redefines partitioning
  • IceWM Desktop (Minimal)
    • Redefines the lists of default and optional patterns
  • Real Time (Text Mode)
    • Redefines the lists of default and optional patterns
  • SLES for SAP Business One Serve
    • Redefines the list of default patterns
    • Redefines partitioning
  • SLES with Gnome
    • Redefines the lists of default and optional patterns
  • Text mode:
    • Modifies one installer setting: default-target (multi-user)
    • Redefines the lists of default and optional patterns
  • Transactional server:
    • Redefines the list of default patterns
    • Redefines partitioning
  • XEN Virtualization Host:
    • Modifies installer settings: autologin, firewall, sshd, dhclient, kdump, NTP, libzypp config…
    • Redefines the lists of default and optional patterns
    • Redefines partitioning

Summary:

  • Roles are more heterogeneous than in other cases (used for several unrelated things)
  • The set of available roles depend on the activated modules and extensions (each role lives in its own package)
  • There is only one role that adds a dialog - common-criteria for asking the encryption password
  • There are two roles that add finish clients (common-criteria and sap-business-one)
  • Several roles modify installer settings including autologin, firewall, sshd, kdump, display manager, dhclient, kdump, NTP, libzypp config, os-prober and/or local users.
  • There are 6 roles that only modify the software selection (basic-desktop, gnome, gnome-x11, minimal-desktop, real-time-text-mode, server-default). Seven if we include text-mode (that also modifies default-target)
  • There are 7 roles with impact in partitioning
    • Common criteria
      • Remove /tmp subvol (to configure /tmp as a tmpfs)
      • Many more UNINTENTIONAL changes since definitions has gone out of sync
    • HPC Management Server
      • Remove all pre-existing partitions (SLE default is to delete only what is needed)
      • Bigger root by default (min: 4, desired: 16, max: 32 vs SLE defaults 3, 5, 10).
      • Separate /var/tmp/ partition with unlimited max (instead of /home)
    • HPC Compute Node
      • Same changes than HPC Server
      • Additionally: root is xfs by default
    • KVM Virtualization Host
      • Windows delete mode: all
      • Bigger root by default (min: 5, desired: 10, max: 30 vs SLE defaults 3, 5, 10).
      • Separate /var/lib/libvirt partition with unlimited max (instead of /home)
    • SLES for SAP Business One Server
      • Remove all pre-existing partitions (SLE default is to delete only what is needed)
      • lvm_vg_strategy: :use_needed (instead of default :use_available)
      • Only root and swap (no optional home)
      • Root with mandatory btfs and snapshots but with a max of 80 GiB
    • Transactional Server
      • Mandatory Btrfs with ro root and snapshots
      • Some adjustments in volume sizes
    • XEN Virtualization Host
      • Identical to KVM Virtualization Host
@ancorgs
Copy link
Author

ancorgs commented Nov 21, 2023

There is another important aspect of system roles that I forgot to mention. Tumbleweed and openSUSE MicroOS share the same repositories, but they offer different roles because roles are defined in the control file of each product. So we have one set of repositories but two different products with their own sets of roles.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment