From a581bce64c81fe02b4bb38ad63599b6f218d3e69 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Wed, 16 Aug 2023 09:12:40 +0100 Subject: [PATCH] Update preserves-nim and syndicate-nim for Nim-2.0.0 --- flake.lock | 20 +++++++------ flake.nix | 29 ++++++++++++++++-- packages/preserves-nim/default.nix | 47 ------------------------------ 3 files changed, 38 insertions(+), 58 deletions(-) delete mode 100644 packages/preserves-nim/default.nix diff --git a/flake.lock b/flake.lock index 522b9f2..24377f9 100644 --- a/flake.lock +++ b/flake.lock @@ -20,16 +20,18 @@ }, "nixpkgs": { "locked": { - "lastModified": 1690860117, - "narHash": "sha256-srkCfjMlg777HxDVMfhkIFgRhhtuZjIOIyR2ejLYK+Y=", - "owner": "NixOS", + "lastModified": 1691412377, + "narHash": "sha256-WpMRfQUxBLM2yZ8DzgnrI3BuTTpZGMUX6Owm39PKD3Y=", + "owner": "ehmry", "repo": "nixpkgs", - "rev": "96d403ee2479f2070050353b94808209f1352edb", + "rev": "13df68506e632a15e95d57252cec4d9f0ea20701", "type": "github" }, "original": { - "id": "nixpkgs", - "type": "indirect" + "owner": "ehmry", + "ref": "nim", + "repo": "nixpkgs", + "type": "github" } }, "root": { @@ -46,11 +48,11 @@ ] }, "locked": { - "lastModified": 1690856601, - "narHash": "sha256-OP1w4rwMJscne5ckSfzOjXXQTPzAWM3Mkm4wRmHwCh8=", + "lastModified": 1692151776, + "narHash": "sha256-nE3Z0bRcABHQq2RFC1RsUVnGCJS0Y5xhYUBY9amxgJA=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "657d170ebe594da9fa32797e38704d45732d0c72", + "rev": "dea24da3d3be23ab53ee80314474afd5fcb03c1c", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index d8e71b0..f077345 100644 --- a/flake.nix +++ b/flake.nix @@ -2,6 +2,7 @@ description = "Syndicate utilities"; inputs = { + nixpkgs.url = "github:ehmry/nixpkgs/nim"; rust = { url = "github:oxalica/rust-overlay"; inputs.nixpkgs.follows = "nixpkgs"; @@ -17,8 +18,32 @@ nimOverlay = final': prev': { noiseprotocol = final'.callPackage ./packages/nim/noiseprotocol { }; - preserves = final'.callPackage ./packages/preserves-nim { }; - syndicate = final'.callPackage ./packages/syndicate-nim { }; + + preserves = prev'.preserves.overrideAttrs (finalAttrs: prevAttrs: { + pname = "preserves"; + version = "20230806"; + src = final.fetchFromGitea { + domain = "git.syndicate-lang.org"; + owner = "ehmry"; + repo = "preserves-nim"; + rev = finalAttrs.version; + hash = "sha256-kSIGqdcbrrdDiD7AbH0jOuqxywqbS7htBRBdJc1RO3U="; + }; + nimFlags = [ "--path:${final'.nim.passthru.nim}/nim" ]; + }); + + syndicate = prev'.syndicate.overrideAttrs (finalAttrs: prevAttrs: { + version = "20230816"; + src = final.fetchFromGitea { + domain = "git.syndicate-lang.org"; + owner = "ehmry"; + repo = "${finalAttrs.pname}-nim"; + rev = finalAttrs.version; + hash = "sha256-0zZngM2OFicDNisZVAKMS1yOfgf3huL21uA4AU1lWMg="; + }; + nimFlags = [ ]; + }); + syndicate_utils = final'.callPackage ./packages/syndicate_utils-nim { }; syndicated-open = final'.callPackage ./packages/syndicated-open { }; diff --git a/packages/preserves-nim/default.nix b/packages/preserves-nim/default.nix deleted file mode 100644 index 580625f..0000000 --- a/packages/preserves-nim/default.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ lib, stdenv, buildNimPackage, fetchFromGitea, fetchFromGitHub, runCommand -, nim-unwrapped, preserves }: - -let - compiler = runCommand "compiler.nimble" { inherit (nim-unwrapped) src; } '' - mkdir -p $out - tar xf $src --strip-components=1 -C $out - ''; - - npeg = fetchFromGitHub { - owner = "zevv"; - repo = "npeg"; - rev = "1.2.1"; - hash = "sha256-kN91cp50ZL4INeRWqwrRK6CAkVXUq4rN4YlcN6WL/3Y="; - }; - -in buildNimPackage rec { - pname = "preserves"; - version = "20230530"; - src = fetchFromGitea { - domain = "git.syndicate-lang.org"; - owner = "ehmry"; - repo = "${pname}-nim"; - rev = version; - sha256 = "sha256-IRIBGjv4po8VyL873v++ovqz8Vg6a9Qbh/M1fxpQXvY="; - }; - - propagatedBuildInputs = [ compiler npeg ]; - propagatedNativeBuildInputs = - lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) preserves; - # propagate the utilities of this package for this build platform - preConfigure = "substituteInPlace preserves.nimble --replace '# bin ' 'bin '"; - - postInstall = '' - pushd $out/bin - for link in preserves_decode preserves_from_json preserves_to_json; - do ln -s preserves_encode $link - done - popd - ''; - doCheck = true; - - meta = src.meta // { - maintainers = [ lib.maintainers.ehmry ]; - license = lib.licenses.unlicense; - }; -}