Files
nixos/hosts/nb/modules/desktop/signal-work.nix
Dominik Polakovics 5648224062 fix(nb): force signal-desktop to use X11 with --ozone-platform=x11
Electron 38 has built-in Wayland auto-detection. Even without
ELECTRON_OZONE_PLATFORM_HINT, it detects WAYLAND_DISPLAY and tries
to use Wayland, triggering the empty window bug in Signal Desktop.

Explicitly force X11/XWayland mode with --ozone-platform=x11 flag
to prevent auto-detection and fix the empty window issue.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 15:56:24 +02:00

35 lines
1013 B
Nix

{ pkgs, ... }:
let
signalDesktopItem = pkgs.makeDesktopItem {
name = "signal-desktop";
desktopName = "Signal";
icon = "signal-desktop";
exec = "signal-desktop --ozone-platform=x11 --enable-features=VaapiVideoDecoder -- %u";
};
signalWorkDesktopItem = pkgs.makeDesktopItem {
name = "signal-work";
desktopName = "Signal with work profile";
icon = "signal-desktop";
exec = "signal-desktop --ozone-platform=x11 --enable-features=VaapiVideoDecoder --enable-dev-tools --user-data-dir=/home/dominik/.config/Signal-work -- %u";
};
in {
environment.systemPackages = [
pkgs.signal-cli
pkgs.signal-desktop
signalDesktopItem
pkgs.zbar
signalWorkDesktopItem
];
}
# signal-cli is a command line interface for Signal
# use it like follows:
# signal-cli -u +4300000000 register
# signal-cli -u +4300000000 verify 123-456
# zbarimg /tmp/qr.png
# QR-Code:tsdevice:/?uuid...
# convert svg to png
# signal-cli -u +4300000000 addDevice --uri "tsdevice:/?uuid=xxx"