{ lib , stdenv , fetchFromGitLab , rustPlatform , cargo , desktop-file-utils , appstream-glib , blueprint-compiler , meson , ninja , pkg-config , rustc , wrapGAppsHook4 , python3 , git , glib , gtk4 , gst_all_1 , libadwaita }: stdenv.mkDerivation rec { pname = "solanum"; version = "5.0.0"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "World"; repo = "Solanum"; rev = version; hash = "sha256-Xf/b/9o6zHF1hjHSyAXb90ySoBj+DMMe31e6RfF8C4Y="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; hash = "sha256-POvKpwzi+bkEkfSDhi/vjs/ey+A2vNN5ta4Q7Ma/RBQ="; }; postPatch = '' patchShebangs build-aux ''; nativeBuildInputs = [ meson ninja pkg-config wrapGAppsHook4 python3 git desktop-file-utils appstream-glib blueprint-compiler rustPlatform.cargoSetupHook cargo rustc ]; buildInputs = [ glib gtk4 libadwaita gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-bad ]; meta = with lib; { homepage = "https://gitlab.gnome.org/World/Solanum"; description = "A pomodoro timer for the GNOME desktop"; maintainers = with maintainers; [ linsui ]; license = licenses.gpl3Plus; platforms = platforms.linux; mainProgram = "solanum"; }; }