nixos/sway: add programs.sway.extraOptions

This commit is contained in:
gnidorah 2019-12-29 09:22:50 +03:00 committed by Michael Weiss
parent a06925d8c6
commit ad8a430a3a
No known key found for this signature in database
GPG Key ID: 5BE487C4D4771D83
2 changed files with 20 additions and 3 deletions

View File

@ -28,6 +28,7 @@ let
swayPackage = pkgs.sway.override { swayPackage = pkgs.sway.override {
extraSessionCommands = cfg.extraSessionCommands; extraSessionCommands = cfg.extraSessionCommands;
extraOptions = cfg.extraOptions;
withBaseWrapper = cfg.wrapperFeatures.base; withBaseWrapper = cfg.wrapperFeatures.base;
withGtkWrapper = cfg.wrapperFeatures.gtk; withGtkWrapper = cfg.wrapperFeatures.gtk;
}; };
@ -67,6 +68,21 @@ in {
''; '';
}; };
extraOptions = mkOption {
type = types.listOf types.str;
default = [];
example = [
"--verbose"
"--debug"
"--unsupported-gpu"
"--my-next-gpu-wont-be-nvidia"
];
description = ''
Command line arguments passed to launch Sway. Please DO NOT report
issues if you use an unsupported GPU (proprietary drivers).
'';
};
extraPackages = mkOption { extraPackages = mkOption {
type = with types; listOf package; type = with types; listOf package;
default = with pkgs; [ default = with pkgs; [

View File

@ -3,6 +3,7 @@
, makeWrapper, symlinkJoin, writeShellScriptBin , makeWrapper, symlinkJoin, writeShellScriptBin
, withBaseWrapper ? true, extraSessionCommands ? "", dbus , withBaseWrapper ? true, extraSessionCommands ? "", dbus
, withGtkWrapper ? false, wrapGAppsHook, gdk-pixbuf , withGtkWrapper ? false, wrapGAppsHook, gdk-pixbuf
, extraOptions ? [] # E.g.: [ "--verbose" ]
}: }:
assert extraSessionCommands != "" -> withBaseWrapper; assert extraSessionCommands != "" -> withBaseWrapper;
@ -39,9 +40,9 @@ in symlinkJoin {
export dontWrapGApps=true export dontWrapGApps=true
${optionalString withGtkWrapper "wrapGAppsHook"} ${optionalString withGtkWrapper "wrapGAppsHook"}
wrapProgram $out/bin/sway \ wrapProgram $out/bin/sway \
--prefix PATH : "${swaybg}/bin" ${optionalString withGtkWrapper ''\ --prefix PATH : "${swaybg}/bin" \
"''${gappsWrapperArgs[@]}" ${optionalString withGtkWrapper ''"''${gappsWrapperArgs[@]}"''} \
''} ${optionalString (extraOptions != []) "${concatMapStrings (x: " --add-flags " + x) extraOptions}"}
''; '';
passthru.providedSessions = [ "sway" ]; passthru.providedSessions = [ "sway" ];