{ lib, buildNimPackage, fetchFromGitea, fetchFromGitHub, syndicate, libnotify }: let gtk2 = fetchFromGitHub { owner = "nim-lang"; repo = "gtk2"; rev = "v1.3"; hash = "sha256-KPHMF2gHIwjRuslJOhbf7KU0VUwp4Oe0+63YKKOBCPk="; }; nim-libnotify = buildNimPackage rec { pname = "libnotify"; version = "HEAD"; src = fetchFromGitHub { owner = "FedericoCeratto"; repo = "nim-${pname}"; rev = "c715ca5b23377a9bceba93529339526fbca11517"; hash = "sha256-Ifp7cV+Jxa7ZotggIkR6OT6I/f4LZ7ZBtSdfkjVtg7w="; }; propagatedBuildInputs = [ libnotify gtk2 ]; }; in buildNimPackage rec { pname = "syndicate_utils"; version = "20220627"; src = fetchFromGitea { domain = "git.syndicate-lang.org"; owner = "ehmry"; repo = pname; rev = version; hash = "sha256-FFKDjSUECnintVyhTBoNOt+gIRQu9ydaA3uCLjSnyAE="; }; propagatedBuildInputs = [ syndicate nim-libnotify ]; nimFlags = [ "-p:${gtk2}/src/" ]; # everyone breaks the nimble rules, nim-lang included meta = src.meta // { maintainers = [ lib.maintainers.ehmry ]; license = lib.licenses.unlicense; }; }