From 13fe49e791ca30bda6537f67b6253de10a460cff Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Wed, 22 May 2024 22:53:45 +0300 Subject: [PATCH] Add default.nix --- default.nix | 26 ++++++++++++++++++++++++++ preserves.nimble | 3 +-- src/preserves/schema.nim | 3 ++- 3 files changed, 29 insertions(+), 3 deletions(-) create mode 100644 default.nix diff --git a/default.nix b/default.nix new file mode 100644 index 0000000..55a3fe5 --- /dev/null +++ b/default.nix @@ -0,0 +1,26 @@ +{ + pkgs ? import { }, +}: +let + inherit (pkgs) lib buildNimPackage nim; +in +buildNimPackage { + pname = "preserves-nim"; + version = "unstable"; + + lockFile = ./lock.json; + + src = if lib.inNixShell then null else lib.cleanSource ./.; + + nimFlags = [ "--path:${nim.passthru.nim}/nim" ]; + # Path to the compiler/ast library. + + postInstall = '' + pushd $out/bin + for link in preserves_decode preserves_from_json preserves_to_json; + do ln -s preserves_encode $link + done + mv preserves_schemac preserves-schemac + popd + ''; +} diff --git a/preserves.nimble b/preserves.nimble index 0fa1a11..67ace70 100644 --- a/preserves.nimble +++ b/preserves.nimble @@ -6,8 +6,7 @@ description = "data model and serialization format" license = "Unlicense" srcDir = "src" -bin = @["preserves/preserves_schema_nim", "preserves/private/preserves_encode", "preserves/schemac"] - +bin = @["preserves/preserves_schemac", "preserves/preserves_schema_nim", "preserves/private/preserves_encode"] # Dependencies diff --git a/src/preserves/schema.nim b/src/preserves/schema.nim index fbb653a..9405021 100644 --- a/src/preserves/schema.nim +++ b/src/preserves/schema.nim @@ -1,6 +1,7 @@ import - preserves, std/tables + std/tables, + ../preserves type Ref* {.preservesRecord: "ref".} = object