Merge pull request #230 from dylanmtaylor/pipewire-in-desktop-profile
Only ask for audio server selection on a desktop profile (depends on #219)
This commit is contained in:
commit
e4da0d33fa
|
|
@ -107,7 +107,7 @@ def ask_for_a_timezone():
|
||||||
def ask_for_audio_selection():
|
def ask_for_audio_selection():
|
||||||
audio = "pulseaudio" # Default for most desktop environments
|
audio = "pulseaudio" # Default for most desktop environments
|
||||||
pipewire_choice = input("Would you like to install pipewire instead of pulseaudio as the default audio server? [Y/n] ").lower()
|
pipewire_choice = input("Would you like to install pipewire instead of pulseaudio as the default audio server? [Y/n] ").lower()
|
||||||
if pipewire_choice == "y":
|
if pipewire_choice in ("y", ""):
|
||||||
audio = "pipewire"
|
audio = "pipewire"
|
||||||
|
|
||||||
return audio
|
return audio
|
||||||
|
|
|
||||||
|
|
@ -182,9 +182,16 @@ def ask_user_questions():
|
||||||
)
|
)
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
# Ask about audio server selection (this right now just asks for pipewire and defaults to pulseaudio otherwise)
|
# Ask about audio server selection if one is not already set
|
||||||
if not archinstall.arguments.get('audio', None):
|
if not archinstall.arguments.get('audio', None):
|
||||||
archinstall.arguments['audio'] = archinstall.ask_for_audio_selection()
|
|
||||||
|
# only ask for audio server selection on a desktop profile
|
||||||
|
if str(archinstall.arguments['profile']) == 'Profile(desktop)':
|
||||||
|
archinstall.arguments['audio'] = archinstall.ask_for_audio_selection()
|
||||||
|
else:
|
||||||
|
# packages installed by a profile may depend on audio and something may get installed anyways, not much we can do about that.
|
||||||
|
# we will not try to remove packages post-installation to not have audio, as that may cause multiple issues
|
||||||
|
archinstall.arguments['audio'] = 'none'
|
||||||
|
|
||||||
# Additional packages (with some light weight error handling for invalid package names)
|
# Additional packages (with some light weight error handling for invalid package names)
|
||||||
if not archinstall.arguments.get('packages', None):
|
if not archinstall.arguments.get('packages', None):
|
||||||
|
|
@ -334,13 +341,14 @@ def perform_installation(device, boot_partition, language, mirrors):
|
||||||
installation.enable_service('systemd-networkd')
|
installation.enable_service('systemd-networkd')
|
||||||
installation.enable_service('systemd-resolved')
|
installation.enable_service('systemd-resolved')
|
||||||
|
|
||||||
installation.log(f"The {archinstall.arguments.get('audio', None)} audio server will be used.", level=archinstall.LOG_LEVELS.Info)
|
if archinstall.arguments.get('audio', None) != None:
|
||||||
if archinstall.arguments.get('audio', None) == 'pipewire':
|
installation.log(f"The {archinstall.arguments.get('audio', None)} audio server will be used.", level=archinstall.LOG_LEVELS.Info)
|
||||||
print('Installing pipewire ...')
|
if archinstall.arguments.get('audio', None) == 'pipewire':
|
||||||
installation.add_additional_packages(["pipewire", "pipewire-alsa", "pipewire-docs", "pipewire-jack", "pipewire-media-session", "pipewire-pulse", "gst-plugin-pipewire", "libpulse"])
|
print('Installing pipewire ...')
|
||||||
elif archinstall.arguments.get('audio', None) == 'pulseaudio':
|
installation.add_additional_packages(["pipewire", "pipewire-alsa", "pipewire-docs", "pipewire-jack", "pipewire-media-session", "pipewire-pulse", "gst-plugin-pipewire", "libpulse"])
|
||||||
print('Installing pulseaudio ...')
|
elif archinstall.arguments.get('audio', None) == 'pulseaudio':
|
||||||
installation.add_additional_packages("pulseaudio")
|
print('Installing pulseaudio ...')
|
||||||
|
installation.add_additional_packages("pulseaudio")
|
||||||
|
|
||||||
if archinstall.arguments.get('packages', None) and archinstall.arguments.get('packages', None)[0] != '':
|
if archinstall.arguments.get('packages', None) and archinstall.arguments.get('packages', None)[0] != '':
|
||||||
installation.add_additional_packages(archinstall.arguments.get('packages', None))
|
installation.add_additional_packages(archinstall.arguments.get('packages', None))
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue