diff --git a/flake.nix b/flake.nix index 4716291..e69dde9 100644 --- a/flake.nix +++ b/flake.nix @@ -114,6 +114,9 @@ channels-config = { allowUnfree = true; + permittedInsecurePackages = [ + "olm-3.2.16" + ]; }; overlays = with inputs; [ diff --git a/homes/x86_64-linux/kylekrein/default.nix b/homes/x86_64-linux/kylekrein/default.nix index 2478718..b0f77b5 100644 --- a/homes/x86_64-linux/kylekrein/default.nix +++ b/homes/x86_64-linux/kylekrein/default.nix @@ -17,12 +17,12 @@ in enable = true; firstNixOSInstall = 1729112485; }; + nheko.enable = osConfig.custom.presets.wayland.enable; librewolf.enable = osConfig.custom.presets.wayland.enable; prismlauncher.enable = osConfig.custom.presets.gaming.enable; bottles.enable = osConfig.custom.presets.wayland.enable; }; }; - programs.nheko.enable = custom.presets.wayland.enable; home = { packages = with pkgs; [ diff --git a/modules/home/programs/nheko/default.nix b/modules/home/programs/nheko/default.nix new file mode 100644 index 0000000..b5b2a65 --- /dev/null +++ b/modules/home/programs/nheko/default.nix @@ -0,0 +1,35 @@ +{ + lib, + pkgs, + inputs, + namespace, + system, + target, + format, + virtual, + systems, + config, + ... +}: +with lib; +with lib.${namespace}; let + cfg = config.${namespace}.programs.nheko; + impermanence = config.${namespace}.impermanence; +in { + options.${namespace}.programs.nheko = with types; { + enable = mkBoolOpt false "Enable Nheko - Matrix client written in C++"; + }; + + config = mkIf cfg.enable (mkIf impermanence.enable { + home.persistence."${impermanence.persistentStorage}".directories = [ + ".config/nheko" + ".local/share/nheko" + ".cache/nheko" + ]; + } + // { + programs.nheko = { + enable = true; + }; + }); +}