Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"no audio server" explicitly installs pipewire #3055

Open
Klaaktu opened this issue Dec 30, 2024 · 1 comment · May be fixed by #3058
Open

"no audio server" explicitly installs pipewire #3055

Klaaktu opened this issue Dec 30, 2024 · 1 comment · May be fixed by #3058

Comments

@Klaaktu
Copy link

Klaaktu commented Dec 30, 2024

Which ISO version are you using?

2024-12-01

The installation log

Hardware model detected: QEMU Standard PC (Q35 + ICH9, 2009); UEFI mode: True
Processor model detected: AMD Ryzen 7 7840U w/ Radeon  780M Graphics
Memory statistics: 1632616 available out of 1990736 total installed
Virtualization detected: kvm; is VM: True
Graphics devices detected: dict_keys(['Red Hat, Inc. Virtio 1.0 GPU (rev 01)'])
Disk states before installing:
{
    "blockdevices": [
        {
            "name": "loop0",
            "path": "/dev/loop0",
            "pkname": null,
            "log_sec": 512,
            "size": "813 MiB",
            "pttype": null,
            "ptuuid": null,
            "rota": false,
            "tran": null,
            "partn": null,
            "partuuid": null,
            "parttype": null,
            "uuid": null,
            "fstype": "squashfs",
            "fsver": "4.0",
            "fsavail": 0,
            "fsuse_percentage": "100%",
            "type": "loop",
            "mountpoint": "/run/archiso/airootfs",
            "mountpoints": [
                "/run/archiso/airootfs"
            ],
            "fsroots": [
                "/"
            ],
            "children": []
        },
        {
            "name": "sr0",
            "path": "/dev/sr0",
            "pkname": null,
            "log_sec": 2048,
            "size": "1161 MiB",
            "pttype": "dos",
            "ptuuid": "382d5c21",
            "rota": false,
            "tran": "sata",
            "partn": null,
            "partuuid": null,
            "parttype": null,
            "uuid": "2024-12-01-05-48-32-00",
            "fstype": "iso9660",
            "fsver": "Joliet Extension",
            "fsavail": 0,
            "fsuse_percentage": "100%",
            "type": "rom",
            "mountpoint": "/run/archiso/bootmnt",
            "mountpoints": [
                "/run/archiso/bootmnt"
            ],
            "fsroots": [
                "/"
            ],
            "children": []
        },
        {
            "name": "vda",
            "path": "/dev/vda",
            "pkname": null,
            "log_sec": 512,
            "size": "20480 MiB",
            "pttype": null,
            "ptuuid": null,
            "rota": true,
            "tran": "virtio",
            "partn": null,
            "partuuid": null,
            "parttype": null,
            "uuid": null,
            "fstype": null,
            "fsver": null,
            "fsavail": null,
            "fsuse_percentage": null,
            "type": "disk",
            "mountpoint": null,
            "mountpoints": [],
            "fsroots": [],
            "children": []
        }
    ]
}
Checking version...
New version available: �[?25larchinstall 3.0.1-1 -> 3.0.1-2
�[?25h
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/__init__.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/custom.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktop.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/minimal.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/server.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/tailored.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/xorg.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/applications/__init__.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/applications/pipewire.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/__init__.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/awesome.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/bspwm.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/budgie.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/cinnamon.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/cosmic.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/cutefish.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/deepin.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/enlightenment.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/gnome.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/hyprland.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/i3.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/lxqt.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/mate.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/plasma.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/qtile.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/sway.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/desktops/xfce4.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/__init__.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/cockpit.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/docker.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/httpd.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/lighttpd.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/mariadb.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/nginx.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/postgresql.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/sshd.py
Importing profile: /usr/lib/python3.12/site-packages/archinstall/default_profiles/servers/tomcat.py
 -- Chosen configuration --
{
    "additional-repositories": [],
    "archinstall-language": "English",
    "audio_config": {
        "audio": "No audio server"
    },
    "bootloader": "Efistub",
    "config_version": "3.0.1",
    "debug": false,
    "disk_config": {
        "config_type": "default_layout",
        "device_modifications": [
            {
                "device": "/dev/vda",
                "partitions": [
                    {
                        "btrfs": [],
                        "dev_path": null,
                        "flags": [
                            "boot",
                            "esp"
                        ],
                        "fs_type": "fat32",
                        "mount_options": [],
                        "mountpoint": "/boot",
                        "obj_id": "ad17cb83-1d52-4837-babd-3ec404b22ffd",
                        "size": {
                            "sector_size": {
                                "unit": "B",
                                "value": 512
                            },
                            "unit": "GiB",
                            "value": 1
                        },
                        "start": {
                            "sector_size": {
                                "unit": "B",
                                "value": 512
                            },
                            "unit": "MiB",
                            "value": 1
                        },
                        "status": "create",
                        "type": "primary"
                    },
                    {
                        "btrfs": [
                            {
                                "mountpoint": "/",
                                "name": "@"
                            },
                            {
                                "mountpoint": "/home",
                                "name": "@home"
                            },
                            {
                                "mountpoint": "/var/log",
                                "name": "@log"
                            },
                            {
                                "mountpoint": "/var/cache/pacman/pkg",
                                "name": "@pkg"
                            },
                            {
                                "mountpoint": "/.snapshots",
                                "name": "@.snapshots"
                            }
                        ],
                        "dev_path": null,
                        "flags": [],
                        "fs_type": "btrfs",
                        "mount_options": [
                            "compress=zstd"
                        ],
                        "mountpoint": null,
                        "obj_id": "b5dd30cd-76da-4400-8b5e-d0c214b4b65e",
                        "size": {
                            "sector_size": {
                                "unit": "B",
                                "value": 512
                            },
                            "unit": "B",
                            "value": 20398997504
                        },
                        "start": {
                            "sector_size": {
                                "unit": "B",
                                "value": 512
                            },
                            "unit": "B",
                            "value": 1074790400
                        },
                        "status": "create",
                        "type": "primary"
                    }
                ],
                "wipe": true
            }
        ]
    },
    "disk_encryption": null,
    "hostname": "archlinux",
    "kernels": [
        "linux"
    ],
    "locale_config": {
        "kb_layout": "us",
        "sys_enc": "UTF-8",
        "sys_lang": "en_US"
    },
    "mirror_config": null,
    "network_config": {
        "nics": [
            {
                "dhcp": true,
                "dns": [],
                "gateway": null,
                "iface": "enp1s0",
                "ip": null
            }
        ],
        "type": "manual"
    },
    "no_pkg_lookups": false,
    "ntp": true,
    "offline": false,
    "packages": [],
    "parallel downloads": 0,
    "profile_config": {
        "gfx_driver": null,
        "greeter": null,
        "profile": {
            "custom_settings": {},
            "details": [],
            "main": "Minimal"
        }
    },
    "save_config": null,
    "script": "guided",
    "silent": false,
    "skip_ntp": false,
    "skip_version_check": false,
    "swap": true,
    "timezone": "UTC",
    "uki": true,
    "version": "3.0.1"
}
Unmounting all existing partitions: /dev/vda
Wiping partitions and metadata: /dev/vda
Creating partitions: /dev/vda
	Type: primary
	Filesystem: fat32
	Geometry: 2048 start sector, 2097152 length
	Type: primary
	Filesystem: btrfs
	Geometry: 2099200 start sector, 39841792 length
Formatting filesystem: mkfs.fat -F 32 /dev/vda1
partition information found: {"name":"vda1","path":"/dev/vda1","pkname":"vda","log_sec":512,"size":"1024 MiB","pttype":"gpt","ptuuid":"1e56dada-1194-4299-9de3-4be10bb3a4bb","rota":true,"tran":"virtio","partn":1,"partuuid":"500f9ff5-ab0b-4e47-b212-b5d6c7e16e15","parttype":"c12a7328-f81f-11d2-ba4b-00a0c93ec93b","uuid":"785E-226E","fstype":"vfat","fsver":"FAT32","fsavail":null,"fsuse_percentage":null,"type":"part","mountpoint":null,"mountpoints":[],"fsroots":[],"children":[]}
Formatting filesystem: mkfs.btrfs -f /dev/vda2
partition information found: {"name":"vda2","path":"/dev/vda2","pkname":"vda","log_sec":512,"size":"19454 MiB","pttype":"gpt","ptuuid":"1e56dada-1194-4299-9de3-4be10bb3a4bb","rota":true,"tran":"virtio","partn":2,"partuuid":"542ed446-d328-4fa4-824f-92b64ee5c561","parttype":"4f68bce3-e8cd-4db1-96e7-fbcaf984b709","uuid":"c36f7fca-f691-45a7-a471-79cae84e1f14","fstype":"btrfs","fsver":null,"fsavail":null,"fsuse_percentage":null,"type":"part","mountpoint":null,"mountpoints":[],"fsroots":[],"children":[]}
Creating subvolumes: /dev/vda2
Mounting /dev/vda2: mount -o compress=zstd /dev/vda2 /mnt/arch_btrfs
Creating subvolume: @
Creating subvolume: @home
Creating subvolume: @log
Creating subvolume: @pkg
Creating subvolume: @.snapshots
Partition /dev/vda2 is currently mounted at: ['/mnt/arch_btrfs']
Unmounting mountpoint: /mnt/arch_btrfs
Starting installation...
Mounting ordered layout
No lvm config defined to be mounted
Mounting partition layout
Mounting /dev/vda2: mount -o compress=zstd,subvol=@ /dev/vda2 /mnt/archinstall
Mounting /dev/vda2: mount -o compress=zstd,subvol=@,subvol=@home /dev/vda2 /mnt/archinstall/home
Mounting /dev/vda2: mount -o compress=zstd,subvol=@,subvol=@home,subvol=@log /dev/vda2 /mnt/archinstall/var/log
Mounting /dev/vda2: mount -o compress=zstd,subvol=@,subvol=@home,subvol=@log,subvol=@pkg /dev/vda2 /mnt/archinstall/var/cache/pacman/pkg
Mounting /dev/vda2: mount -o compress=zstd,subvol=@,subvol=@home,subvol=@log,subvol=@pkg,[email protected] /dev/vda2 /mnt/archinstall/.snapshots
Mounting /dev/vda1: mount /dev/vda1 /mnt/archinstall/boot
Waiting for time sync (timedatectl show) to complete.
Waiting for automatic mirror selection (reflector) to complete.
Waiting for Arch Linux keyring sync (archlinux-keyring-wkd-sync) to complete.
Archinstall will not install any ucode.
The multilib flag is not set. This system will be installed without multilib repositories enabled.
The testing flag is not set. This system will be installed without testing repositories enabled.
Installing packages: ['base', 'base-devel', 'linux-firmware', 'linux', 'btrfs-progs']
Setting keyboard language to us
Keyboard language for this installation is now set to: us
Setting up swap on zram
Installing packages: ['zram-generator']
Enabling service [email protected]
Adding bootloader Efistub to /dev/vda1
Identifying root partition by PARTUUID: 542ed446-d328-4fa4-824f-92b64ee5c561
kernel parameters: root=PARTUUID=542ed446-d328-4fa4-824f-92b64ee5c561 zswap.enabled=0 rootflags=subvol=@ rw rootfstype=btrfs
Installing efistub bootloader
Installing packages: ['efibootmgr']
Enabling service systemd-networkd
Enabling service systemd-resolved
Creating user test
Setting password for test
Enabling sudo permissions for test
Installing audio server: NoAudio
Installing packages: ['pipewire', 'pipewire-alsa', 'pipewire-jack', 'pipewire-pulse', 'gst-plugin-pipewire', 'libpulse', 'wireplumber']
Activating systemd-timesyncd for time synchronization using Arch Linux and ntp.org NTP servers
Enabling service systemd-timesyncd
Updating /mnt/archinstall/etc/fstab
For post-installation tips, see https://wiki.archlinux.org/index.php/Installation_guide#Post-installation
Installation completed without any errors.
Log files temporarily available at /var/log/archinstall.
You may reboot when ready.

Disk states after installing:
{
    "blockdevices": [
        {
            "name": "loop0",
            "path": "/dev/loop0",
            "pkname": null,
            "log_sec": 512,
            "size": "813 MiB",
            "pttype": null,
            "ptuuid": null,
            "rota": false,
            "tran": null,
            "partn": null,
            "partuuid": null,
            "parttype": null,
            "uuid": null,
            "fstype": "squashfs",
            "fsver": "4.0",
            "fsavail": 0,
            "fsuse_percentage": "100%",
            "type": "loop",
            "mountpoint": "/run/archiso/airootfs",
            "mountpoints": [
                "/run/archiso/airootfs"
            ],
            "fsroots": [
                "/"
            ],
            "children": []
        },
        {
            "name": "sr0",
            "path": "/dev/sr0",
            "pkname": null,
            "log_sec": 2048,
            "size": "1161 MiB",
            "pttype": "dos",
            "ptuuid": "382d5c21",
            "rota": false,
            "tran": "sata",
            "partn": null,
            "partuuid": null,
            "parttype": null,
            "uuid": "2024-12-01-05-48-32-00",
            "fstype": "iso9660",
            "fsver": "Joliet Extension",
            "fsavail": 0,
            "fsuse_percentage": "100%",
            "type": "rom",
            "mountpoint": "/run/archiso/bootmnt",
            "mountpoints": [
                "/run/archiso/bootmnt"
            ],
            "fsroots": [
                "/"
            ],
            "children": []
        },
        {
            "name": "vda",
            "path": "/dev/vda",
            "pkname": null,
            "log_sec": 512,
            "size": "20480 MiB",
            "pttype": "gpt",
            "ptuuid": "1e56dada-1194-4299-9de3-4be10bb3a4bb",
            "rota": true,
            "tran": "virtio",
            "partn": null,
            "partuuid": null,
            "parttype": null,
            "uuid": null,
            "fstype": null,
            "fsver": null,
            "fsavail": null,
            "fsuse_percentage": null,
            "type": "disk",
            "mountpoint": null,
            "mountpoints": [],
            "fsroots": [],
            "children": [
                {
                    "name": "vda1",
                    "path": "/dev/vda1",
                    "pkname": "vda",
                    "log_sec": 512,
                    "size": "1024 MiB",
                    "pttype": "gpt",
                    "ptuuid": "1e56dada-1194-4299-9de3-4be10bb3a4bb",
                    "rota": true,
                    "tran": "virtio",
                    "partn": 1,
                    "partuuid": "500f9ff5-ab0b-4e47-b212-b5d6c7e16e15",
                    "parttype": "c12a7328-f81f-11d2-ba4b-00a0c93ec93b",
                    "uuid": "785E-226E",
                    "fstype": "vfat",
                    "fsver": "FAT32",
                    "fsavail": 888922112,
                    "fsuse_percentage": "17%",
                    "type": "part",
                    "mountpoint": "/mnt/archinstall/boot",
                    "mountpoints": [
                        "/mnt/archinstall/boot"
                    ],
                    "fsroots": [
                        "/"
                    ],
                    "children": []
                },
                {
                    "name": "vda2",
                    "path": "/dev/vda2",
                    "pkname": "vda",
                    "log_sec": 512,
                    "size": "19454 MiB",
                    "pttype": "gpt",
                    "ptuuid": "1e56dada-1194-4299-9de3-4be10bb3a4bb",
                    "rota": true,
                    "tran": "virtio",
                    "partn": 2,
                    "partuuid": "542ed446-d328-4fa4-824f-92b64ee5c561",
                    "parttype": "4f68bce3-e8cd-4db1-96e7-fbcaf984b709",
                    "uuid": "c36f7fca-f691-45a7-a471-79cae84e1f14",
                    "fstype": "btrfs",
                    "fsver": null,
                    "fsavail": 17933271040,
                    "fsuse_percentage": "10%",
                    "type": "part",
                    "mountpoint": "/mnt/archinstall/.snapshots",
                    "mountpoints": [
                        "/mnt/archinstall/.snapshots",
                        "/mnt/archinstall/var/cache/pacman/pkg",
                        "/mnt/archinstall/var/log",
                        "/mnt/archinstall/home",
                        "/mnt/archinstall"
                    ],
                    "fsroots": [
                        "/@.snapshots",
                        "/@pkg",
                        "/@log",
                        "/@home",
                        "/@"
                    ],
                    "children": []
                }
            ]
        }
    ]
}

describe the problem

archinstall with minimal profile and "no audio server" explicitly installs pipewire and related packages.

$ pacman -Qe
base 3-2
base-devel 1-2
btrfs-progs 6.12-2
efibootmgr 18-3
gst-plugin-pipewire 1:1.2.7-1
libpulse 17.0+r43+g3e2bb8a1e-1
linux 6.12.7.arch1-1
linux-firmware 20241210.b00a7f7e-1
pipewire 1:1.2.7-1
pipewire-alsa 1:1.2.7-1
pipewire-jack 1:1.2.7-1
pipewire-pulse 1:1.2.7-1
wireplumber 0.5.7-1
zram-generator 1.2.1-1
$ pactree -r pipewire
pipewire
├─gst-plugin-pipewire
├─pipewire-alsa
├─pipewire-audio
│ ├─pipewire-alsa
│ ├─pipewire-jack
│ └─pipewire-pulse
├─pipewire-jack
├─pipewire-pulse
└─wireplumber
  ├─gst-plugin-pipewire
  ├─pipewire-alsa
  ├─pipewire-jack
  └─pipewire-pulse

Someone on the Arch forum also encountered this starting from archinstall v3.0.0

l4zy0n3 added a commit to l4zy0n3/archinstall that referenced this issue Dec 30, 2024
Added case for Audio.NoAudio
@l4zy0n3 l4zy0n3 mentioned this issue Dec 30, 2024
1 task
@codefiles codefiles linked a pull request Dec 30, 2024 that will close this issue
@codefiles
Copy link
Contributor

codefiles commented Dec 30, 2024

The source of this bug is the incorrect use of dataclass on the audio enum.

@dataclass
class Audio(Enum):
NoAudio = 'No audio server'
Pipewire = 'pipewire'
Pulseaudio = 'pulseaudio'

Here is a brief example with the same bug; the unintended pipewire case will trigger even though the audio variable is Audio.NoAudio.

from dataclasses import dataclass
from enum import Enum

@dataclass
class Audio(Enum):
	NoAudio = 'No audio server'
	Pipewire = 'pipewire'
	Pulseaudio = 'pulseaudio'

audio = Audio.NoAudio

match audio:
    case Audio.Pipewire:
        print('Incorrect match!')

Output

Incorrect match!

In the example below, only the incorrect usage of dataclass was removed. With the audio variable still Audio.NoAudio, the pipewire case will not trigger and there will be no output.

from enum import Enum

class Audio(Enum):
	NoAudio = 'No audio server'
	Pipewire = 'pipewire'
	Pulseaudio = 'pulseaudio'
	
audio = Audio.NoAudio

match audio:
    case Audio.Pipewire:
        print('Incorrect match!')

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants