Skip to content

fix: improve microphone mute fallback reliability using pactl#5492

Closed
shmall03 wants to merge 44 commits intobasecamp:devfrom
shmall03:fix/mic-mute-fallback-reliability
Closed

fix: improve microphone mute fallback reliability using pactl#5492
shmall03 wants to merge 44 commits intobasecamp:devfrom
shmall03:fix/mic-mute-fallback-reliability

Conversation

@shmall03
Copy link
Copy Markdown
Contributor

Problem:

On certain hardware (specifically tested on HP laptops), the default swayosd-client --input-volume mute-toggle correctly triggers the OSD UI but fails to actually toggle the mute state in PipeWire/PulseAudio. This creates a deceptive state where the user sees a "muted" icon but the microphone remains active.

Solution:

This PR generalizes the reliable logic already used in the XPS and ThinkPad handlers into the main fallback. It uses pactl to perform the actual toggle and swayosd-client to display the custom OSD message.

Benefits:

  • Ensures the microphone state actually changes on all systems.
  • Maintains visual consistency with the rest of the Omarchy media keys.
  • Uses pactl for broad compatibility with both PulseAudio and PipeWire.

Copilot AI review requested due to automatic review settings April 29, 2026 19:34
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR aims to make microphone mute toggling more reliable by switching the non-XPS/ThinkPad fallback to a pactl-driven toggle and showing a custom OSD state, and it also updates Chromium’s default appearance preferences to include color_scheme2.

Changes:

  • Update omarchy-cmd-mic-mute fallback to toggle the default input source mute via pactl and show a custom OSD message/icon.
  • Update Chromium default initial_preferences to set both color_scheme and color_scheme2.
  • Add a migration to update both the system-wide Chromium initial preferences and an existing user profile’s Preferences file accordingly.

Tip

If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 1 comment.

File Description
bin/omarchy-cmd-mic-mute Replaces the generic mute-toggle with a pactl toggle + explicit OSD messaging.
install/config/theme.sh Sets Chromium’s default theme prefs to include color_scheme2 alongside color_scheme.
migrations/1777018408.sh Migrates existing installs by updating system initial prefs and user profile preferences for Chromium theme fields.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread migrations/1777018408.sh
Comment on lines +1 to +3
echo "Fix Chromium appearance mode to also set color_scheme2 (the field Chromium actually reads now)"

echo '{"browser":{"theme":{"color_scheme":0,"color_scheme2":0}}}' | sudo tee /usr/lib/chromium/initial_preferences >/dev/null
Copy link

Copilot AI Apr 29, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR title/description focus on microphone mute reliability, but this migration introduces an unrelated Chromium appearance-mode change. Please either update the PR description to include the Chromium/theme work (and why it’s bundled), or split this into a separate PR so the change history matches the documented intent.

Copilot uses AI. Check for mistakes.
@shmall03 shmall03 closed this by deleting the head repository Apr 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants