Unverified Commit b16cdbe2 authored by K900's avatar K900 Committed by GitHub
Browse files

Merge pull request #243088 from Alper-Celik/kde-accessibility-fix

plasma-desktop: add missing gsettings schemas on kaccess
parents 68c071f1 a37e23c8
Loading
Loading
Loading
Loading
+12 −8
Original line number Diff line number Diff line
@@ -58,7 +58,14 @@
, runCommandLocal
, makeWrapper
}:

let
  # run gsettings with desktop schemas for using in "kcm_access" kcm
  # and in kaccess
  gsettings-wrapper = runCommandLocal "gsettings-wrapper" { nativeBuildInputs = [ makeWrapper ]; } ''
    mkdir -p $out/bin
    makeWrapper ${glib}/bin/gsettings $out/bin/gsettings --prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas.out}/share/gsettings-schemas/${gsettings-desktop-schemas.name}
  '';
in
mkDerivation {
  pname = "plasma-desktop";
  nativeBuildInputs = [ extra-cmake-modules kdoctools wayland-scanner ];
@@ -122,19 +129,16 @@ mkDerivation {
    ./kcm-access.patch
  ];
  CXXFLAGS =
    let
      # run gsettings with desktop schemas for using in kcm_accces kcm
      gsettings-wrapper = runCommandLocal "gsettings-wrapper" { nativeBuildInputs = [ makeWrapper ]; } ''
        makeWrapper ${glib}/bin/gsettings $out --prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas.out}/share/gsettings-schemas/${gsettings-desktop-schemas.name}
      '';
    in
    [
      ''-DNIXPKGS_HWCLOCK=\"${lib.getBin util-linux}/bin/hwclock\"''
      ''-DNIXPKGS_GSETTINGS=\"${gsettings-wrapper}\"''
      ''-DNIXPKGS_GSETTINGS=\"${gsettings-wrapper}/bin/gsettings\"''
    ];
  postInstall = ''
    # Display ~/Desktop contents on the desktop by default.
    sed -i "''${!outputBin}/share/plasma/shells/org.kde.plasma.desktop/contents/defaults" \
        -e 's/Containment=org.kde.desktopcontainment/Containment=org.kde.plasma.folder/'
  '';

  # wrap kaccess with wrapped gsettings so it can access accessibility schemas
  qtWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ gsettings-wrapper ]}" ];
}