40 lines
721 B
Nix
40 lines
721 B
Nix
{ wrapGAppsHook
|
|
, glib
|
|
, lib
|
|
, symlinkJoin
|
|
, switchboard
|
|
, switchboardPlugs
|
|
, plugs
|
|
# Only useful to disable for development testing.
|
|
, useDefaultPlugs ? true
|
|
}:
|
|
|
|
let
|
|
selectedPlugs =
|
|
if plugs == null then switchboardPlugs
|
|
else plugs ++ (lib.optionals useDefaultPlugs switchboardPlugs);
|
|
in
|
|
symlinkJoin {
|
|
name = "${switchboard.name}-with-plugs";
|
|
|
|
paths = [
|
|
switchboard
|
|
] ++ selectedPlugs;
|
|
|
|
buildInputs = [
|
|
wrapGAppsHook
|
|
glib
|
|
] ++ (lib.forEach selectedPlugs (x: x.buildInputs))
|
|
++ selectedPlugs;
|
|
|
|
postBuild = ''
|
|
make_glib_find_gsettings_schemas
|
|
|
|
gappsWrapperArgs+=(--set SWITCHBOARD_PLUGS_PATH "$out/lib/switchboard")
|
|
|
|
wrapGAppsHook
|
|
'';
|
|
|
|
inherit (switchboard) meta;
|
|
}
|