85 lines
1.6 KiB
Nix
85 lines
1.6 KiB
Nix
{
|
|
pkgs,
|
|
tree,
|
|
...
|
|
}: let
|
|
kodiPackage = pkgs.kodi-wayland.withPackages (kodiPkgs:
|
|
with kodiPkgs; [
|
|
keymap
|
|
sendtokodi
|
|
sponsorblock
|
|
pvr-iptvsimple
|
|
inputstreamhelper
|
|
inputstream-adaptive
|
|
inputstream-rtmp
|
|
visualization-projectm
|
|
visualization-waveform
|
|
visualization-matrix
|
|
visualization-starburst
|
|
visualization-spectrum
|
|
]);
|
|
in {
|
|
environment.systemPackages = [
|
|
kodiPackage
|
|
];
|
|
|
|
services.xserver = {
|
|
enable = true;
|
|
desktopManager.kodi = {
|
|
enable = true;
|
|
package = kodiPackage;
|
|
};
|
|
#autoLogin.enable = true;
|
|
#autoLogin.user = "kodi";
|
|
};
|
|
|
|
networking.firewall = {
|
|
allowedTCPPorts = [8080];
|
|
allowedUDPPorts = [8080];
|
|
};
|
|
|
|
users.users.kodi = {
|
|
uid = 1002;
|
|
isNormalUser = true;
|
|
extraGroups = [
|
|
"video"
|
|
"input"
|
|
"uinput"
|
|
"audio"
|
|
"rtkit"
|
|
];
|
|
};
|
|
|
|
home-manager.users.kodi = {
|
|
imports = with tree.profiles.home-manager; [
|
|
base
|
|
|
|
gui.base
|
|
gui.environments.gnome
|
|
|
|
apps.fileRoller
|
|
apps.nautilus
|
|
apps.pavucontrol
|
|
apps.mpv
|
|
|
|
apps.firefox
|
|
apps.telegram
|
|
|
|
apps.aria2
|
|
apps.rclone
|
|
];
|
|
|
|
# only for x86_64
|
|
home.file.widevine-lib = {
|
|
source = "${pkgs.widevine-cdm}/share/google/chrome/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so";
|
|
target = ".kodi/cdm/libwidevinecdm.so";
|
|
};
|
|
home.file.widevine-manifest = {
|
|
source = "${pkgs.widevine-cdm}/share/google/chrome/WidevineCdm/manifest.json";
|
|
target = ".kodi/cdm/manifest.json";
|
|
};
|
|
|
|
home.stateVersion = "24.05";
|
|
};
|
|
}
|