Commit e576d6f
Changed files (1)
modules
desktop
apps
modules/desktop/apps/packages.nix
@@ -21,28 +21,21 @@
cherry-studio = pkgs.cherry-studio.override {commandLineArgs = chromiumCLA;};
qq = pkgs.qq.override {commandLineArgs = chromiumCLA;};
- wpsoffice-cn = pkgs.wpsoffice-cn.overrideAttrs {
- # Fix WPS on Wayland (Hyprland/Niri)
- # 1. Force XCB backend (WPS doesn't support Wayland natively well)
- # 2. Fix Input Method (Fcitx5) - Explicitly set vars since we might unset them globally
- # 3. HiDPI Support - Try to auto-scale
- postFixup = ''
- for app in wps et wpp wpspdf; do
- appdesk=$app
- if [[ $app == "wpspdf" ]]; then
- appdesk="pdf"
- fi
- sed -i "s|^Exec=.*|Exec=env \
- GTK_IM_MODULE=fcitx \
- QT_IM_MODULE=fcitx \
- XMODIFIERS=@im=fcitx \
- QT_QPA_PLATFORM=xcb \
- QT_FONT_DPI=${builtins.toString osConfig.services.xserver.dpi} \
- $out/bin/$app %F|" \
- $out/share/applications/wps-office-$appdesk.desktop
- done
- '';
- };
+ wpsoffice-cn = pkgs.wpsoffice-cn.overrideAttrs (oldAttrs: {
+ buildInputs = (oldAttrs.buildInputs or []) ++ [pkgs.makeWrapper];
+ postFixup =
+ (oldAttrs.postFixup or "")
+ + ''
+ for app in wps et wpp wpspdf; do
+ wrapProgram $out/bin/$app \
+ --set GTK_IM_MODULE fcitx \
+ --set QT_IM_MODULE fcitx \
+ --set XMODIFIERS @im=fcitx \
+ --set QT_QPA_PLATFORM xcb \
+ --set QT_FONT_DPI ${builtins.toString osConfig.services.xserver.dpi}
+ done
+ '';
+ });
in {
home.packages =
(with pkgs; [