{ lib, stdenv, fetchFromGitHub, unstableGitUpdater, xxd, pkg-config, imagemagick, wrapGAppsHook3, gtk3, jansson, nixosTests, }: stdenv.mkDerivation { pname = "urn-timer"; version = "0-unstable-2025-08-07"; src = fetchFromGitHub { owner = "paoloose"; repo = "urn"; rev = "7acdab69eaec05f173d95eff190e5d7a03db8847"; hash = "sha256-jFatHlkQr6O9E2pKroFWk6F2BccnfSr1pq43Q5qQbC4="; }; nativeBuildInputs = [ xxd pkg-config imagemagick wrapGAppsHook3 ]; buildInputs = [ gtk3 jansson ]; makeFlags = [ "PREFIX=$(out)" ]; passthru.updateScript = unstableGitUpdater { url = "https://github.com/paoloose/urn.git"; }; passthru.tests.nixosTest = nixosTests.urn-timer; meta = with lib; { homepage = "https://github.com/paoloose/urn"; description = "Split tracker / timer for speedrunning with GTK+ frontend"; license = licenses.gpl3Plus; maintainers = with maintainers; [ fgaz ]; mainProgram = "urn-gtk"; }; }