plasma-desktop: add missing gsettings schemas on kaccess
this commit lets kaccess to read screen reader settings[1] using gsettings by adding required gsettings schemas dirs to the $XDG_DATA_DIRS this commit also refactors previus gsettings schemas fix of kcm_access for allowing reuse of wrapped gsettings between kaccess and kcm_access
This commit is contained in:
parent
3c7487575d
commit
a37e23c8ca
1 changed files with 12 additions and 8 deletions
|
@ -58,7 +58,14 @@
|
||||||
, runCommandLocal
|
, runCommandLocal
|
||||||
, makeWrapper
|
, 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 {
|
mkDerivation {
|
||||||
pname = "plasma-desktop";
|
pname = "plasma-desktop";
|
||||||
nativeBuildInputs = [ extra-cmake-modules kdoctools wayland-scanner ];
|
nativeBuildInputs = [ extra-cmake-modules kdoctools wayland-scanner ];
|
||||||
|
@ -122,19 +129,16 @@ mkDerivation {
|
||||||
./kcm-access.patch
|
./kcm-access.patch
|
||||||
];
|
];
|
||||||
CXXFLAGS =
|
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_HWCLOCK=\"${lib.getBin util-linux}/bin/hwclock\"''
|
||||||
''-DNIXPKGS_GSETTINGS=\"${gsettings-wrapper}\"''
|
''-DNIXPKGS_GSETTINGS=\"${gsettings-wrapper}/bin/gsettings\"''
|
||||||
];
|
];
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
# Display ~/Desktop contents on the desktop by default.
|
# Display ~/Desktop contents on the desktop by default.
|
||||||
sed -i "''${!outputBin}/share/plasma/shells/org.kde.plasma.desktop/contents/defaults" \
|
sed -i "''${!outputBin}/share/plasma/shells/org.kde.plasma.desktop/contents/defaults" \
|
||||||
-e 's/Containment=org.kde.desktopcontainment/Containment=org.kde.plasma.folder/'
|
-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 ]}" ];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue