diff --git a/pkgs/applications/video/kooha/default.nix b/pkgs/applications/video/kooha/default.nix index 6203041ed63e..f5be86647390 100644 --- a/pkgs/applications/video/kooha/default.nix +++ b/pkgs/applications/video/kooha/default.nix @@ -1,28 +1,40 @@ -{ lib, fetchFromGitHub, appstream-glib, desktop-file-utils, glib -, gobject-introspection, gst_all_1, gtk4, libadwaita, librsvg, meson, ninja -, pkg-config, python3, wrapGAppsHook }: +{ lib +, stdenv +, fetchFromGitHub +, appstream-glib +, desktop-file-utils +, glib +, gobject-introspection +, gst_all_1 +, gtk4 +, libadwaita +, libpulseaudio +, librsvg +, meson +, ninja +, pkg-config +, python3 +, rustPlatform +, wayland +, wrapGAppsHook +}: -python3.pkgs.buildPythonApplication rec { +stdenv.mkDerivation rec { pname = "kooha"; - version = "1.2.1"; - format = "other"; + version = "2.0.1"; src = fetchFromGitHub { owner = "SeaDve"; repo = "Kooha"; rev = "v${version}"; - sha256 = "1qwbzdn0n1nxcfci1bhhkfchdhw5yz74fdvsa84cznyyx2jils8w"; + sha256 = "05ynpwjdpl7zp9f17zhhvb59rbz3gd7hc0amla1g85ldgfxbgl00"; }; - buildInputs = [ - glib - gobject-introspection - gst_all_1.gstreamer - gst_all_1.gst-plugins-base - gtk4 - libadwaita - librsvg - ]; + cargoDeps = rustPlatform.fetchCargoTarball { + inherit src; + name = "${pname}-${version}"; + hash = "sha256:16zf6vb001z7xdv2g4kpmb2vqsmaql2cpsx1rl9zrfhpl2z6frs9"; + }; nativeBuildInputs = [ appstream-glib @@ -31,21 +43,31 @@ python3.pkgs.buildPythonApplication rec { ninja python3 pkg-config + rustPlatform.cargoSetupHook + rustPlatform.rust.cargo + rustPlatform.rust.rustc + wayland wrapGAppsHook ]; + buildInputs = [ + glib + gobject-introspection + gst_all_1.gstreamer + gst_all_1.gst-plugins-base + gtk4 + libadwaita + libpulseaudio + librsvg + ]; + propagatedBuildInputs = [ python3.pkgs.pygobject3 ]; strictDeps = false; - buildPhase = '' - export GST_PLUGIN_SYSTEM_PATH_1_0="$out/lib/gstreamer-1.0/:$GST_PLUGIN_SYSTEM_PATH_1_0" - ''; - # Fixes https://github.com/NixOS/nixpkgs/issues/31168 postPatch = '' - chmod +x build-aux/meson/postinstall.py - patchShebangs build-aux/meson/postinstall.py + patchShebangs build-aux/meson_post_install.py ''; installCheckPhase = ''