65 lines
1.4 KiB
Nix
65 lines
1.4 KiB
Nix
{
|
|
vars,
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}: let
|
|
cfg = config.mediacenter.kodi;
|
|
inherit (lib) types;
|
|
in
|
|
with lib; {
|
|
options.mediacenter.kodi = {
|
|
# enable = mkEnableOption "kodi";
|
|
media = {
|
|
host = mkOption {
|
|
type = types.str;
|
|
default = "media";
|
|
};
|
|
user = mkOption {
|
|
type = types.str;
|
|
default = "kodi";
|
|
};
|
|
pass = mkOption {
|
|
type = types.str;
|
|
default = "kodi";
|
|
};
|
|
};
|
|
mysql = {
|
|
host = mkOption {
|
|
type = types.str;
|
|
default = "localhost";
|
|
};
|
|
port = mkOption {
|
|
type = types.int;
|
|
default = 3306;
|
|
};
|
|
user = mkOption {
|
|
type = types.str;
|
|
default = "kodi";
|
|
};
|
|
pass = mkOption {
|
|
type = types.str;
|
|
default = "kodi";
|
|
};
|
|
};
|
|
};
|
|
imports = [./kodi.nix]; # import overridden kodi module
|
|
config = mkIf cfg.enable {
|
|
#programs.kodi = {
|
|
mediacenter.kodi = {
|
|
# enable = true;
|
|
package = pkgs.kodi-standalone;
|
|
settings = import ./advancedsettings.nix {inherit vars; inherit (cfg) mysql media;};
|
|
};
|
|
home.file = {
|
|
"kodi-passwords.xml" = {
|
|
target = ".kodi/userdata/passwords.xml";
|
|
text = import ./passwords.nix {
|
|
inherit (cfg) media;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|