diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index 691c8581d6f..8acf68ac3af 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -97,6 +97,18 @@ with lib.maintainers; { scope = "Maintain Jitsi."; }; + kodi = { + members = [ + aanderse + cpages + edwtjo + minijackson + peterhoeg + sephalon + ]; + scope = "Maintain Kodi and related packages."; + }; + matrix = { members = [ ma27 diff --git a/nixos/modules/services/backup/restic.nix b/nixos/modules/services/backup/restic.nix index 573f0efa9da..ac57f271526 100644 --- a/nixos/modules/services/backup/restic.nix +++ b/nixos/modules/services/backup/restic.nix @@ -93,10 +93,12 @@ in }; paths = mkOption { - type = types.listOf types.str; - default = []; + type = types.nullOr (types.listOf types.str); + default = null; description = '' - Which paths to backup. + Which paths to backup. If null or an empty array, no + backup command will be run. This can be used to create a + prune-only job. ''; example = [ "/var/lib/postgresql" @@ -217,7 +219,7 @@ in resticCmd = "${pkgs.restic}/bin/restic${extraOptions}"; filesFromTmpFile = "/run/restic-backups-${name}/includes"; backupPaths = if (backup.dynamicFilesFrom == null) - then concatStringsSep " " backup.paths + then if (backup.paths != null) then concatStringsSep " " backup.paths else "" else "--files-from ${filesFromTmpFile}"; pruneCmd = optionals (builtins.length backup.pruneOpts > 0) [ ( resticCmd + " forget --prune " + (concatStringsSep " " backup.pruneOpts) ) @@ -243,7 +245,8 @@ in restartIfChanged = false; serviceConfig = { Type = "oneshot"; - ExecStart = [ "${resticCmd} backup --cache-dir=%C/restic-backups-${name} ${concatStringsSep " " backup.extraBackupArgs} ${backupPaths}" ] ++ pruneCmd; + ExecStart = (optionals (backupPaths != "") [ "${resticCmd} backup --cache-dir=%C/restic-backups-${name} ${concatStringsSep " " backup.extraBackupArgs} ${backupPaths}" ]) + ++ pruneCmd; User = backup.user; RuntimeDirectory = "restic-backups-${name}"; CacheDirectory = "restic-backups-${name}"; diff --git a/nixos/tests/restic.nix b/nixos/tests/restic.nix index 0cc8bd39afb..16979eab821 100644 --- a/nixos/tests/restic.nix +++ b/nixos/tests/restic.nix @@ -45,6 +45,10 @@ import ./make-test-python.nix ( ''; inherit passwordFile initialize paths pruneOpts; }; + remoteprune = { + inherit repository passwordFile; + pruneOpts = [ "--keep-last 1" ]; + }; }; environment.sessionVariables.RCLONE_CONFIG_LOCAL_TYPE = "local"; @@ -84,6 +88,8 @@ import ./make-test-python.nix ( "systemctl start restic-backups-rclonebackup.service", '${pkgs.restic}/bin/restic -r ${repository} -p ${passwordFile} snapshots -c | grep -e "^4 snapshot"', '${pkgs.restic}/bin/restic -r ${rcloneRepository} -p ${passwordFile} snapshots -c | grep -e "^4 snapshot"', + "systemctl start restic-backups-remoteprune.service", + '${pkgs.restic}/bin/restic -r ${repository} -p ${passwordFile} snapshots -c | grep -e "^1 snapshot"', ) ''; } diff --git a/pkgs/applications/video/kodi-packages/certifi/default.nix b/pkgs/applications/video/kodi-packages/certifi/default.nix index bfce47b7b2c..d122cacc878 100644 --- a/pkgs/applications/video/kodi-packages/certifi/default.nix +++ b/pkgs/applications/video/kodi-packages/certifi/default.nix @@ -17,5 +17,6 @@ buildKodiAddon rec { homepage = "https://certifi.io"; description = "Python package for providing Mozilla's CA Bundle"; license = licenses.mpl20; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/chardet/default.nix b/pkgs/applications/video/kodi-packages/chardet/default.nix index 1e37f6b46e2..7c069592c67 100644 --- a/pkgs/applications/video/kodi-packages/chardet/default.nix +++ b/pkgs/applications/video/kodi-packages/chardet/default.nix @@ -17,5 +17,6 @@ buildKodiAddon rec { homepage = "https://github.com/Freso/script.module.chardet"; description = "Universal encoding detector"; license = licenses.lgpl2Only; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/controllers/default.nix b/pkgs/applications/video/kodi-packages/controllers/default.nix index bd29b7c0f7c..825ad5d53fc 100644 --- a/pkgs/applications/video/kodi-packages/controllers/default.nix +++ b/pkgs/applications/video/kodi-packages/controllers/default.nix @@ -16,6 +16,7 @@ buildKodiAddon rec { meta = with lib; { description = "Add support for different gaming controllers."; platforms = platforms.all; - maintainers = with maintainers; [ edwtjo ]; + license = licenses.odbl; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/dateutil/default.nix b/pkgs/applications/video/kodi-packages/dateutil/default.nix new file mode 100644 index 00000000000..665858d3d57 --- /dev/null +++ b/pkgs/applications/video/kodi-packages/dateutil/default.nix @@ -0,0 +1,27 @@ +{ lib, buildKodiAddon, fetchzip, addonUpdateScript, six }: + +buildKodiAddon rec { + pname = "dateutil"; + namespace = "script.module.dateutil"; + version = "2.8.1+matrix.1"; + + src = fetchzip { + url = "https://mirrors.kodi.tv/addons/matrix/${namespace}/${namespace}-${version}.zip"; + sha256 = "1jr77017ihs7j3455i72af71wyvs792kbizq4539ccd98far8lm7"; + }; + + propagatedBuildInputs = [ + six + ]; + + passthru.updateScript = addonUpdateScript { + attrPath = "kodi.packages.dateutil"; + }; + + meta = with lib; { + homepage = "https://dateutil.readthedocs.io/en/stable/"; + description = "Extensions to the standard Python datetime module"; + license = with licenses; [ asl20 bsd3 ]; + maintainers = teams.kodi.members; + }; +} diff --git a/pkgs/applications/video/kodi-packages/idna/default.nix b/pkgs/applications/video/kodi-packages/idna/default.nix index abe5635e828..662a45188ec 100644 --- a/pkgs/applications/video/kodi-packages/idna/default.nix +++ b/pkgs/applications/video/kodi-packages/idna/default.nix @@ -17,5 +17,6 @@ buildKodiAddon rec { homepage = "https://github.com/Freso/script.module.idna"; description = "Internationalized Domain Names for Python"; license = licenses.bsd3; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix b/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix index cd4c5aca117..136efe8a243 100644 --- a/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix +++ b/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix @@ -23,6 +23,7 @@ buildKodiBinaryAddon rec { homepage = "https://github.com/peak3d/inputstream.adaptive"; description = "Kodi inputstream addon for several manifest types"; platforms = platforms.all; - maintainers = with maintainers; [ sephalon ]; + license = licenses.gpl2Only; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix b/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix index 2bbcc6d9d2c..b42c32fed10 100644 --- a/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix +++ b/pkgs/applications/video/kodi-packages/inputstreamhelper/default.nix @@ -17,5 +17,6 @@ buildKodiAddon rec { homepage = "https://github.com/emilsvennesson/script.module.inputstreamhelper"; description = "A simple Kodi module that makes life easier for add-on developers relying on InputStream based add-ons and DRM playback"; license = licenses.mit; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/jellyfin/default.nix b/pkgs/applications/video/kodi-packages/jellyfin/default.nix new file mode 100644 index 00000000000..03a037ce538 --- /dev/null +++ b/pkgs/applications/video/kodi-packages/jellyfin/default.nix @@ -0,0 +1,49 @@ +{ lib, addonDir, buildKodiAddon, fetchFromGitHub, kodi, requests, dateutil, six, kodi-six, signals }: +let + python = kodi.pythonPackages.python.withPackages (p: with p; [ pyyaml ]); +in +buildKodiAddon rec { + pname = "jellyfin"; + namespace = "plugin.video.jellyfin"; + version = "0.7.1"; + + src = fetchFromGitHub { + owner = "jellyfin"; + repo = "jellyfin-kodi"; + rev = "v${version}"; + sha256 = "0fx20gmd5xlg59ks4433qh2b3jhbs5qrnc49zi4rkqqr4jr4nhnn"; + }; + + nativeBuildInputs = [ + python + ]; + + prePatch = '' + substituteInPlace .config/generate_xml.py \ + --replace "'jellyfin-kodi/release.yaml'" "'release.yaml'" \ + --replace "'jellyfin-kodi/addon.xml'" "'addon.xml'" + ''; + + buildPhase = '' + ${python}/bin/python3 .config/generate_xml.py py3 + ''; + + postInstall = '' + mv /build/source/addon.xml $out${addonDir}/${namespace}/ + ''; + + propagatedBuildInputs = [ + requests + dateutil + six + kodi-six + signals + ]; + + meta = with lib; { + homepage = "https://jellyfin.org/"; + description = "A whole new way to manage and view your media library"; + license = licenses.gpl3Only; + maintainers = teams.kodi.members; + }; +} diff --git a/pkgs/applications/video/kodi-packages/joystick/default.nix b/pkgs/applications/video/kodi-packages/joystick/default.nix index 321ddce905f..a1b9c3eeeef 100644 --- a/pkgs/applications/video/kodi-packages/joystick/default.nix +++ b/pkgs/applications/video/kodi-packages/joystick/default.nix @@ -11,11 +11,12 @@ buildKodiBinaryAddon rec { sha256 = "1dhj4afr9kj938xx70fq5r409mz6lbw4n581ljvdjj9lq7akc914"; }; + extraBuildInputs = [ tinyxml udev ]; + meta = with lib; { description = "Binary addon for raw joystick input."; platforms = platforms.all; - maintainers = with maintainers; [ edwtjo ]; + license = licenses.gpl2Only; + maintainers = teams.kodi.members; }; - - extraBuildInputs = [ tinyxml udev ]; } diff --git a/pkgs/applications/video/kodi-packages/kodi-six/default.nix b/pkgs/applications/video/kodi-packages/kodi-six/default.nix new file mode 100644 index 00000000000..b4f1169b36d --- /dev/null +++ b/pkgs/applications/video/kodi-packages/kodi-six/default.nix @@ -0,0 +1,23 @@ +{ lib, buildKodiAddon, fetchzip, addonUpdateScript }: + +buildKodiAddon rec { + pname = "kodi-six"; + namespace = "script.module.kodi-six"; + version = "0.1.3.1"; + + src = fetchzip { + url = "https://mirrors.kodi.tv/addons/matrix/${namespace}/${namespace}-${version}.zip"; + sha256 = "14m232p9hx925pbk8knsg994m1nbpa5278zmcrnfblh4z84gjv4x"; + }; + + passthru.updateScript = addonUpdateScript { + attrPath = "kodi.packages.kodi-six"; + }; + + meta = with lib; { + homepage = "https://github.com/romanvm/kodi.six"; + description = "Wrappers around Kodi Python API for seamless Python 2/3 compatibility"; + license = licenses.gpl3Only; + maintainers = teams.kodi.members; + }; +} diff --git a/pkgs/applications/video/kodi-packages/myconnpy/default.nix b/pkgs/applications/video/kodi-packages/myconnpy/default.nix index a1b25576524..bd0c98137a5 100644 --- a/pkgs/applications/video/kodi-packages/myconnpy/default.nix +++ b/pkgs/applications/video/kodi-packages/myconnpy/default.nix @@ -17,5 +17,6 @@ buildKodiAddon rec { homepage = "http://dev.mysql.com/doc/connector-python/en/index.html"; description = "MySQL Connector/Python"; license = licenses.gpl2Only; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/netflix/default.nix b/pkgs/applications/video/kodi-packages/netflix/default.nix index 20440153f76..e187fad9737 100644 --- a/pkgs/applications/video/kodi-packages/netflix/default.nix +++ b/pkgs/applications/video/kodi-packages/netflix/default.nix @@ -1,4 +1,5 @@ -{ lib, buildKodiAddon, fetchFromGitHub, signals, inputstreamhelper, requests, myconnpy }: +{ lib, buildKodiAddon, fetchFromGitHub, signals, inputstream-adaptive, inputstreamhelper, requests, myconnpy }: + buildKodiAddon rec { pname = "netflix"; namespace = "plugin.video.netflix"; @@ -13,6 +14,7 @@ buildKodiAddon rec { propagatedBuildInputs = [ signals + inputstream-adaptive inputstreamhelper requests myconnpy @@ -22,5 +24,6 @@ buildKodiAddon rec { homepage = "https://github.com/CastagnaIT/plugin.video.netflix"; description = "Netflix VOD Services Add-on"; license = licenses.mit; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/pdfreader/default.nix b/pkgs/applications/video/kodi-packages/pdfreader/default.nix index 430b9be3fd4..8896a94c9c3 100644 --- a/pkgs/applications/video/kodi-packages/pdfreader/default.nix +++ b/pkgs/applications/video/kodi-packages/pdfreader/default.nix @@ -14,6 +14,7 @@ buildKodiAddon rec { meta = with lib; { homepage = "https://forum.kodi.tv/showthread.php?tid=187421"; description = "A comic book reader"; - maintainers = with maintainers; [ edwtjo ]; + license = licenses.gpl2Plus; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix b/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix index 3920120b90a..ba1a0241ffe 100644 --- a/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix +++ b/pkgs/applications/video/kodi-packages/pvr-hdhomerun/default.nix @@ -11,12 +11,13 @@ buildKodiBinaryAddon rec { sha256 = "0gbwjssnd319csq2kwlyjj1rskg19m1dxac5dl2dymvx5hn3zrgm"; }; + extraBuildInputs = [ jsoncpp libhdhomerun ]; + meta = with lib; { homepage = "https://github.com/kodi-pvr/pvr.hdhomerun"; description = "Kodi's HDHomeRun PVR client addon"; platforms = platforms.all; - maintainers = with maintainers; [ titanous ]; + license = licenses.gpl2Only; + maintainers = teams.kodi.members; }; - - extraBuildInputs = [ jsoncpp libhdhomerun ]; } diff --git a/pkgs/applications/video/kodi-packages/pvr-hts/default.nix b/pkgs/applications/video/kodi-packages/pvr-hts/default.nix index 935238758a6..5c55873e819 100644 --- a/pkgs/applications/video/kodi-packages/pvr-hts/default.nix +++ b/pkgs/applications/video/kodi-packages/pvr-hts/default.nix @@ -15,7 +15,7 @@ buildKodiBinaryAddon rec { homepage = "https://github.com/kodi-pvr/pvr.hts"; description = "Kodi's Tvheadend HTSP client addon"; platforms = platforms.all; - maintainers = with maintainers; [ cpages ]; + license = licenses.gpl2Only; + maintainers = teams.kodi.members; }; - } diff --git a/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix b/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix index b508eae8c7e..9f160b4fa61 100644 --- a/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix +++ b/pkgs/applications/video/kodi-packages/pvr-iptvsimple/default.nix @@ -11,12 +11,13 @@ buildKodiBinaryAddon rec { sha256 = "062i922qi0izkvn7v47yhyy2cf3fa7xc3k95b1gm9abfdwkk8ywr"; }; + extraBuildInputs = [ zlib pugixml ]; + meta = with lib; { homepage = "https://github.com/kodi-pvr/pvr.iptvsimple"; description = "Kodi's IPTV Simple client addon"; platforms = platforms.all; license = licenses.gpl2Plus; + maintainers = teams.kodi.members; }; - - extraBuildInputs = [ zlib pugixml ]; } diff --git a/pkgs/applications/video/kodi-packages/requests/default.nix b/pkgs/applications/video/kodi-packages/requests/default.nix index 05288b74b6c..7d79abd0872 100644 --- a/pkgs/applications/video/kodi-packages/requests/default.nix +++ b/pkgs/applications/video/kodi-packages/requests/default.nix @@ -24,5 +24,6 @@ buildKodiAddon rec { homepage = "http://python-requests.org"; description = "Python HTTP for Humans"; license = licenses.asl20; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/signals/default.nix b/pkgs/applications/video/kodi-packages/signals/default.nix index 9d49e632721..bba7b112e9f 100644 --- a/pkgs/applications/video/kodi-packages/signals/default.nix +++ b/pkgs/applications/video/kodi-packages/signals/default.nix @@ -17,5 +17,6 @@ buildKodiAddon rec { homepage = "https://github.com/ruuk/script.module.addon.signals"; description = "Provides signal/slot mechanism for inter-addon communication"; license = licenses.lgpl21Only; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/six/default.nix b/pkgs/applications/video/kodi-packages/six/default.nix new file mode 100644 index 00000000000..8d7b8f936f3 --- /dev/null +++ b/pkgs/applications/video/kodi-packages/six/default.nix @@ -0,0 +1,23 @@ +{ lib, buildKodiAddon, fetchzip, addonUpdateScript }: + +buildKodiAddon rec { + pname = "six"; + namespace = "script.module.six"; + version = "1.14.0+matrix.2"; + + src = fetchzip { + url = "https://mirrors.kodi.tv/addons/matrix/${namespace}/${namespace}-${version}.zip"; + sha256 = "1f9g43j4y5x7b1bgbwqqfj0p2bkqjpycj17dj7a9j271mcr5zhwb"; + }; + + passthru.updateScript = addonUpdateScript { + attrPath = "kodi.packages.six"; + }; + + meta = with lib; { + homepage = "https://pypi.org/project/six/"; + description = "Python 2 and 3 compatibility utilities"; + license = licenses.mit; + maintainers = teams.kodi.members; + }; +} diff --git a/pkgs/applications/video/kodi-packages/steam-controller/default.nix b/pkgs/applications/video/kodi-packages/steam-controller/default.nix index 5eee0eff941..d2b79029f7c 100644 --- a/pkgs/applications/video/kodi-packages/steam-controller/default.nix +++ b/pkgs/applications/video/kodi-packages/steam-controller/default.nix @@ -16,7 +16,6 @@ buildKodiBinaryAddon rec { meta = with lib; { description = "Binary addon for steam controller."; platforms = platforms.all; - maintainers = with maintainers; [ edwtjo ]; + maintainers = teams.kodi.members; }; - } diff --git a/pkgs/applications/video/kodi-packages/steam-launcher/default.nix b/pkgs/applications/video/kodi-packages/steam-launcher/default.nix index cb140b4fb4d..c4a695b8f81 100644 --- a/pkgs/applications/video/kodi-packages/steam-launcher/default.nix +++ b/pkgs/applications/video/kodi-packages/steam-launcher/default.nix @@ -23,6 +23,7 @@ buildKodiAddon { restart/maximise. Running pre/post Steam scripts can be configured via the addon. ''; - maintainers = with maintainers; [ edwtjo ]; + license = licenses.gpl2Only; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/svtplay/default.nix b/pkgs/applications/video/kodi-packages/svtplay/default.nix index cc7d350fa31..db4fbb642c0 100644 --- a/pkgs/applications/video/kodi-packages/svtplay/default.nix +++ b/pkgs/applications/video/kodi-packages/svtplay/default.nix @@ -21,6 +21,7 @@ buildKodiAddon rec { is the preferred video format by the plugin. ''; platforms = platforms.all; - maintainers = with maintainers; [ edwtjo ]; + license = licenses.gpl3Plus; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/urllib3/default.nix b/pkgs/applications/video/kodi-packages/urllib3/default.nix index e8146987913..e3127a8d118 100644 --- a/pkgs/applications/video/kodi-packages/urllib3/default.nix +++ b/pkgs/applications/video/kodi-packages/urllib3/default.nix @@ -17,5 +17,6 @@ buildKodiAddon rec { homepage = "https://urllib3.readthedocs.io/en/latest/"; description = "HTTP library with thread-safe connection pooling, file post, and more"; license = licenses.mit; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/applications/video/kodi-packages/vfs-libarchive/default.nix b/pkgs/applications/video/kodi-packages/vfs-libarchive/default.nix index 13100b0dd35..6819f7bfdcb 100644 --- a/pkgs/applications/video/kodi-packages/vfs-libarchive/default.nix +++ b/pkgs/applications/video/kodi-packages/vfs-libarchive/default.nix @@ -11,12 +11,12 @@ buildKodiBinaryAddon rec { sha256 = "1q62p1i6rvqk2zv6f1cpffkh95lgclys2xl4dwyhj3acmqdxd9i5"; }; + extraBuildInputs = [ libarchive lzma bzip2 zlib lz4 lzo openssl ]; + meta = with lib; { description = "LibArchive Virtual Filesystem add-on for Kodi"; license = licenses.gpl2Plus; platforms = platforms.all; - maintainers = with maintainers; [ minijackson ]; + maintainers = teams.kodi.members; }; - - extraBuildInputs = [ libarchive lzma bzip2 zlib lz4 lzo openssl ]; } diff --git a/pkgs/applications/video/kodi-packages/vfs-sftp/default.nix b/pkgs/applications/video/kodi-packages/vfs-sftp/default.nix index 7910ab640e9..e41f008281a 100644 --- a/pkgs/applications/video/kodi-packages/vfs-sftp/default.nix +++ b/pkgs/applications/video/kodi-packages/vfs-sftp/default.nix @@ -11,12 +11,12 @@ buildKodiBinaryAddon rec { sha256 = "06w74sh8yagrrp7a7rjaz3xrh1j3wdqald9c4b72c33gpk5997dk"; }; + extraBuildInputs = [ openssl libssh zlib ]; + meta = with lib; { description = "SFTP Virtual Filesystem add-on for Kodi"; license = licenses.gpl2Plus; platforms = platforms.all; - maintainers = with maintainers; [ minijackson ]; + maintainers = teams.kodi.members; }; - - extraBuildInputs = [ openssl libssh zlib ]; } diff --git a/pkgs/applications/video/kodi/build-kodi-addon.nix b/pkgs/applications/video/kodi/build-kodi-addon.nix index cd768b6fa99..572d5dda805 100644 --- a/pkgs/applications/video/kodi/build-kodi-addon.nix +++ b/pkgs/applications/video/kodi/build-kodi-addon.nix @@ -11,11 +11,15 @@ toKodiAddon (stdenv.mkDerivation ({ extraRuntimeDependencies = [ ]; installPhase = '' + runHook preInstall + cd $src/$sourceDir d=$out${addonDir}/${namespace} mkdir -p $d sauce="." [ -d ${namespace} ] && sauce=${namespace} cp -R "$sauce/"* $d + + runHook postInstall ''; } // attrs)) diff --git a/pkgs/applications/video/kodi/build-kodi-binary-addon.nix b/pkgs/applications/video/kodi/build-kodi-binary-addon.nix index 74ce508ab6a..e0ca5d1cf6e 100644 --- a/pkgs/applications/video/kodi/build-kodi-binary-addon.nix +++ b/pkgs/applications/video/kodi/build-kodi-binary-addon.nix @@ -24,8 +24,12 @@ toKodiAddon (stdenv.mkDerivation ({ # and the non-wrapped kodi lib/... folder before even trying to dlopen # them. Symlinking .so, as setting LD_LIBRARY_PATH is of no use installPhase = let n = namespace; in '' + runHook preInstall + make install ln -s $out/lib/addons/${n}/${n}.so.${version} $out${addonDir}/${n}/${n}.so.${version} ${extraInstallPhase} + + runHook postInstall ''; } // attrs)) diff --git a/pkgs/applications/video/kodi/unwrapped.nix b/pkgs/applications/video/kodi/unwrapped.nix index 2a713324c3f..1b665418f3f 100644 --- a/pkgs/applications/video/kodi/unwrapped.nix +++ b/pkgs/applications/video/kodi/unwrapped.nix @@ -237,6 +237,6 @@ in stdenv.mkDerivation { homepage = "https://kodi.tv/"; license = licenses.gpl2Plus; platforms = platforms.linux; - maintainers = with maintainers; [ titanous edwtjo peterhoeg sephalon ]; + maintainers = teams.kodi.members; }; } diff --git a/pkgs/development/python-modules/avro/default.nix b/pkgs/development/python-modules/avro/default.nix index 5a38e86eee3..4c1fb77dc69 100644 --- a/pkgs/development/python-modules/avro/default.nix +++ b/pkgs/development/python-modules/avro/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "avro"; - version = "1.10.1"; + version = "1.10.2"; src = fetchPypi { inherit pname version; - sha256 = "b3a405df5aa8654b992d2aca7b80482b858a1919a44dc0b10a682162e8ee340a"; + sha256 = "381b990cc4c4444743c3297348ffd46e0c3a5d7a17e15b2f4a9042f6e955c31a"; }; patchPhase = '' diff --git a/pkgs/development/python-modules/icmplib/default.nix b/pkgs/development/python-modules/icmplib/default.nix index 89f49d9cf62..2718b634054 100644 --- a/pkgs/development/python-modules/icmplib/default.nix +++ b/pkgs/development/python-modules/icmplib/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "icmplib"; - version = "2.0.2"; + version = "2.1.1"; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "ValentinBELYN"; repo = pname; rev = "v${version}"; - sha256 = "0djsbksgml2h18w6509w59s88730w1xaxdxzws12alq4m5v4hirr"; + sha256 = "06xx9854yzxa7x1mjfzbhhw5rfzgjnw269j5k0rshyqh3qvw1nwv"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/jupyterlab/default.nix b/pkgs/development/python-modules/jupyterlab/default.nix index 81ad668db08..f22b52b25b6 100644 --- a/pkgs/development/python-modules/jupyterlab/default.nix +++ b/pkgs/development/python-modules/jupyterlab/default.nix @@ -10,12 +10,12 @@ buildPythonPackage rec { pname = "jupyterlab"; - version = "3.0.11"; + version = "3.0.12"; disabled = pythonOlder "3.5"; src = fetchPypi { inherit pname version; - sha256 = "sha256-zkz08xFjzlGu0BPAGoV8BdQ6k8Ru1pAWbkhkT255R94="; + sha256 = "929c60d7fb4aa704084c02d8ededc209b8b378e0b3adab46158b7fa6acc24230"; }; propagatedBuildInputs = [ jupyterlab_server notebook jupyter-packaging nbclassic ]; diff --git a/pkgs/top-level/kodi-packages.nix b/pkgs/top-level/kodi-packages.nix index f9b20dd2bc7..03d70a32f6a 100644 --- a/pkgs/top-level/kodi-packages.nix +++ b/pkgs/top-level/kodi-packages.nix @@ -66,6 +66,8 @@ let self = rec { snes = callPackage ../applications/video/kodi-packages/controllers { controller = "snes"; }; }; + jellyfin = callPackage ../applications/video/kodi-packages/jellyfin { }; + joystick = callPackage ../applications/video/kodi-packages/joystick { }; netflix = callPackage ../applications/video/kodi-packages/netflix { }; @@ -96,18 +98,24 @@ let self = rec { chardet = callPackage ../applications/video/kodi-packages/chardet { }; + dateutil = callPackage ../applications/video/kodi-packages/dateutil { }; + idna = callPackage ../applications/video/kodi-packages/idna { }; inputstream-adaptive = callPackage ../applications/video/kodi-packages/inputstream-adaptive { }; inputstreamhelper = callPackage ../applications/video/kodi-packages/inputstreamhelper { }; + kodi-six = callPackage ../applications/video/kodi-packages/kodi-six { }; + myconnpy = callPackage ../applications/video/kodi-packages/myconnpy { }; requests = callPackage ../applications/video/kodi-packages/requests { }; signals = callPackage ../applications/video/kodi-packages/signals { }; + six = callPackage ../applications/video/kodi-packages/six { }; + urllib3 = callPackage ../applications/video/kodi-packages/urllib3 { }; }; in self