14 rustPlatform.buildRustPackage rec {
17 JOSH_VERSION = "r${version}";
19 src = fetchFromGitHub {
23 sha256 = "1sqa8xi5d55zshky7gicac02f67vp944hclkdsmwy0bczk9hgssr";
27 # Unreleased patch allowing compilation from the GitHub tarball download
29 name = "josh-version-without-git.patch";
30 url = "https://github.com/josh-project/josh/commit/13e7565ab029206598881391db4ddc6dface692b.patch";
31 sha256 = "1l5syqj51sn7kcqvffwl6ggn5sq8wfkpviga860agghnw5dpf7ns";
34 # Merged upstream, fixes builds with newer rustc
36 name = "josh-fix-builds-with-rust-173.patch";
37 url = "https://github.com/josh-project/josh/commit/7b8259b81a9acabb528ddebc4ab30fc712f756fb.patch";
38 sha256 = "sha256-YfrVlH6Ox05ZbmB/15HVaFlOyRTOFbYflq0edi6/X9k=";
39 includes = [ "josh-proxy/src/bin/josh-proxy.rs" ];
43 cargoSha256 = "0f6cvz2s8qs53b2g6xja38m24hafqla61s4r5za0a1dyndgms7sl";
53 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
64 wrapProgram "$out/bin/josh-proxy" --prefix PATH : "${git}/bin"
68 description = "Just One Single History";
69 homepage = "https://josh-project.github.io/josh/";
70 downloadPage = "https://github.com/josh-project/josh";
71 changelog = "https://github.com/josh-project/josh/releases/tag/${version}";
72 license = lib.licenses.mit;
74 lib.maintainers.sternenseemann
75 lib.maintainers.tazjin
77 platforms = lib.platforms.all;