47 lines
1.5 KiB
Nix
47 lines
1.5 KiB
Nix
# For reference of the available options, see https://docs.noctalia.dev/getting-started/nixos/#config-ref
|
|
#
|
|
# To see a diff of the nix-set and GUI-set (current) settings, run:
|
|
# nix shell nixpkgs#jq nixpkgs#colordiff -c bash -c "colordiff -u --nobanner <(jq -S . ~/.config/noctalia/settings.json) <(noctalia-shell ipc call state all | jq -S .settings)"
|
|
{ config, lib, pkgs, inputs, ... }:
|
|
|
|
let
|
|
cfg = config.noctaliaShell;
|
|
in
|
|
{
|
|
imports = [
|
|
inputs.noctalia.homeModules.default
|
|
];
|
|
|
|
options.noctaliaShell = {
|
|
enable = lib.mkEnableOption "Noctalia shell";
|
|
|
|
settings = lib.mkOption {
|
|
type = lib.types.attrs;
|
|
default = { };
|
|
description = "Noctalia shell settings. See https://docs.noctalia.dev/getting-started/nixos/#config-ref";
|
|
};
|
|
};
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
programs.noctalia-shell = {
|
|
enable = true;
|
|
# Override with calendarSupport for evolution-data-server integration
|
|
package = inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default.override {
|
|
calendarSupport = true;
|
|
};
|
|
settings = cfg.settings;
|
|
};
|
|
|
|
# Disable conflicting services that Noctalia replaces
|
|
services.swayosd.enable = lib.mkForce false;
|
|
services.swaync.enable = lib.mkForce false;
|
|
|
|
# Disable wlsunset - Noctalia has built-in night light
|
|
services.wlsunset.enable = lib.mkForce false;
|
|
|
|
# Disable waybar - Noctalia has its own bar
|
|
waybarConfig.enable = lib.mkForce false;
|
|
programs.waybar.enable = lib.mkForce false;
|
|
};
|
|
}
|