42 lines
1.3 KiB
Nix
42 lines
1.3 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
with lib; let
|
|
cfg = config.custom.desktops.sway.swayfx;
|
|
in {
|
|
options.custom.desktops.sway.swayfx.enable = mkOption {default = false;};
|
|
|
|
config.home-manager.users.${config.custom.username} = mkIf cfg.enable {
|
|
# https://github.com/WillPower3309/swayfx
|
|
wayland.windowManager.sway = {
|
|
# BUG: DRM build failure
|
|
# https://github.com/nix-community/home-manager/issues/5379
|
|
checkConfig = false;
|
|
|
|
# Polyfill home-manager wrappers
|
|
# https://github.com/nix-community/home-manager/blob/master/modules/services/window-managers/i3-sway/sway.nix#L334
|
|
package = with config.home-manager.users.${config.custom.username}.wayland.windowManager.sway;
|
|
pkgs.sway.override {
|
|
extraSessionCommands = extraSessionCommands;
|
|
extraOptions = extraOptions;
|
|
withBaseWrapper = wrapperFeatures.base;
|
|
withGtkWrapper = wrapperFeatures.gtk;
|
|
};
|
|
|
|
# https://github.com/WillPower3309/swayfx?tab=readme-ov-file#new-configuration-options
|
|
extraConfig = ''
|
|
corner_radius 12
|
|
default_dim_inactive 0.25
|
|
dim_inactive_colors.unfocused #002b36
|
|
scratchpad_minimize enable
|
|
shadows enable
|
|
shadows_on_csd enable
|
|
smart_corner_radius enable
|
|
#// titlebar_separator disable
|
|
'';
|
|
};
|
|
};
|
|
}
|