Skip to content

Test PipeWire restart on a real Linux machine #5

@offbyonebit

Description

@offbyonebit

What this is

When you rename an audio port with portname, it needs to restart PipeWire (the audio system) so the new name shows up immediately in Sound Settings — without you having to reboot or manually restart anything.

That restart is tested and working on Linux Mint (which is what portname was originally developed on). But Mint uses a different internal path than Arch and Fedora do. We've verified the file operations on Arch and Fedora automatically via CI, but we haven't confirmed that the audio restart actually fires correctly on those distros with a live audio system running.

Why it's hard to test automatically

You can't run a real audio system inside a Docker container or on GitHub's servers — there's no sound hardware. So this one has to be tested by hand on a real machine.

What needs to be tested

On a real Arch or Fedora machine (not Linux Mint):

  1. Plug in or confirm you have an audio device showing up in Sound Settings
  2. Run sudo portname rename <route> "Test Name" and check that the new name appears in Sound Settings straight away — no reboot needed
  3. Run sudo portname revert <route> and check the original name comes back
  4. Simulate what happens when a package upgrade overwrites your rename:
    • Run sudo cp /usr/share/alsa-card-profile/mixer/paths/<route>.conf.orig /usr/share/alsa-card-profile/mixer/paths/<route>.conf
    • Run sudo portname check
    • Confirm the custom name reappears in Sound Settings automatically

Why Linux Mint doesn't count here

Mint is based on Debian/Ubuntu, so it uses a tool called dpkg-divert to protect renamed files from being overwritten. Arch and Fedora don't have that tool, so they use a different code path (a plain JSON file to track renames instead). We've tested the logic of that code path thoroughly, but haven't confirmed the audio restart fires correctly at the end of it on a live Arch or Fedora system.

Current status

  • Linux Mint: ✓ manually verified
  • Arch/Fedora file operations: ✓ verified automatically by CI
  • Arch/Fedora live audio restart: ❌ still needs a real machine

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions