kodi.nix (2110B)
1 { username, ... }: 2 3 { 4 programs.kodi = { 5 enable = true; 6 settings = { 7 "addons.unknownsources" = "true"; 8 "addons.updatemode" = "1"; 9 "locale.country" = "UK (12h)"; 10 "locale.language" = "resource.language.en_gb"; 11 "locale.timezone" = "Europe/London"; 12 "locale.timezonecountry" = "Britain (UK)"; 13 "lookandfeel.skincolors" = "midnight"; 14 "screensaver.mode" = "screensaver.xbmc.builtin.dim"; 15 "screensaver.time" = "5"; 16 "services.webserver" = "true"; 17 "services.webserverauthentication" = "true"; 18 "services.webserverpassword" = "kodi"; 19 "services.webserverport" = "8080"; 20 "services.webserverusername" = "kodi"; 21 "videolibrary.tvshowsselectfirstunwatcheditem" = "2"; 22 }; 23 addonSettings = { 24 "service.watchedlist" = { 25 "extdb" = "true"; 26 "dbpath" = "/home/${username}/vault/"; 27 "dbfilename" = "watchedlist.db"; 28 }; 29 "skin.estuary" = { 30 "homemenunopicturesbutton" = "true"; 31 "homemenunoradiobutton" = "true"; 32 "homemenunofavbutton" = "true"; 33 "homemenunomusicbutton" = "true"; 34 "homemenunomusicvideobutton" = "true"; 35 "homemenunovideosbutton" = "true"; 36 "homemenunotvbutton" = "true"; 37 }; 38 }; 39 sources = { 40 video = { 41 default = "movies"; 42 source = [ 43 { name = "television"; path = "/mnt/media/videos/television"; allowsharing = "true"; } 44 { name = "movies"; path = "/mnt/media/videos/movies"; allowsharing = "true"; } 45 { name = "${username}"; path = "/home/${username}"; allowsharing = "true"; } 46 ]; 47 }; 48 files = { 49 source = [ 50 { name = "a4kSubtitles-repo"; path = "https://a4k-openproject.github.io/a4kSubtitles/packages/"; allowsharing = "true"; } 51 ]; 52 }; 53 }; 54 }; 55 # Launch Kodi (and fix fullscreen issue) via Hyprland 56 wayland.windowManager.hyprland = { 57 settings = { 58 "exec-once" = "htpc-launcher"; 59 }; 60 }; 61 }