From aae85e76286a8e70eb2ecc295bc819043ff9eb23 Mon Sep 17 00:00:00 2001 From: Danila Fedorin Date: Thu, 30 Nov 2023 04:54:40 +0000 Subject: [PATCH] Make the package work, building Elm and NodeJS dependencies. --- default.nix | 39 ++++++++-------- flake.lock | 130 ++++++++++++++++++++++++++++++++++++++++++++++++++++ flake.nix | 2 +- 3 files changed, 150 insertions(+), 21 deletions(-) create mode 100644 flake.lock diff --git a/default.nix b/default.nix index df7ea64..41915ef 100644 --- a/default.nix +++ b/default.nix @@ -1,27 +1,26 @@ -{ mkYarnModules, bergamot-elm }: +{ stdenv, mkYarnModules, bergamot-elm }: let # Generate a Nix expression from the yarn.lock file - yarnModules = pkgs.mkYarnModules { - src = ./.; - packageJson = ./package.json; + yarnModules = mkYarnModules { + version = "1.0.0"; + pname = "web-files"; + packageJSON = ./package.json; yarnLock = ./yarn.lock; }; in -pkgs.stdenv.mkDerivation { - name = "web-files"; - - # Use the generated yarnModules - buildInputs = [ yarnModules bergamot-elm ]; - - buildPhase = '' - ''; - - installPhase = '' - mkdir -p $out $out/katex $out/katex-expression $out/bergamot - cp ${yarnModules}/node_modules/katex/dist/katex.min.css $out/katex - cp ${yarnModules}/node_modules/@navsnpm/katex-expression/dist/katex-expression/katex-expression.esm.js $out/katex-expression - cp ${bergamot-elm}/Main.min.js $out/bergamot/bergamot.js - ''; -} + stdenv.mkDerivation { + name = "web-files"; + src = ./.; + + # Use the generated yarnModules + buildInputs = [ yarnModules bergamot-elm ]; + + installPhase = '' + mkdir -p $out $out/katex $out/katex-expression $out/bergamot + cp ${yarnModules}/node_modules/katex/dist/katex.min.css $out/katex + cp ${yarnModules}/node_modules/@navsnpm/katex-expression/dist/katex-expression/katex-expression.esm.js $out/katex-expression + cp ${bergamot-elm}/Main.min.js $out/bergamot/bergamot.js + ''; + } diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..beb402a --- /dev/null +++ b/flake.lock @@ -0,0 +1,130 @@ +{ + "nodes": { + "bergamot-elm": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1701318122, + "narHash": "sha256-wOik1hcZ6xwTUQZmDo8cPB7tE0VoyQM99zUTjqB4xUI=", + "ref": "main", + "rev": "524796d74fbec2828bf3f8f3b7abd4c843d529b3", + "revCount": 33, + "type": "git", + "url": "https://dev.danilafe.com/Everything-I-Know-About-Types/bergamot-elm.git" + }, + "original": { + "ref": "main", + "type": "git", + "url": "https://dev.danilafe.com/Everything-I-Know-About-Types/bergamot-elm.git" + } + }, + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "inputs": { + "systems": "systems_2" + }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1701068326, + "narHash": "sha256-vmMceA+q6hG1yrjb+MP8T0YFDQIrW3bl45e7z24IEts=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "8cfef6986adfb599ba379ae53c9f5631ecd2fd9c", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1701319520, + "narHash": "sha256-xVghb4ELbEtJUdEmB4PR+sq/aoNP0VEcM6GczDh+Zss=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "db77de49336382a33b9490a88ba3fe483e2b605f", + "type": "github" + }, + "original": { + "owner": "nixos", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "bergamot-elm": "bergamot-elm", + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_2" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_2": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix index 4fb142d..5dfb15b 100644 --- a/flake.nix +++ b/flake.nix @@ -11,7 +11,7 @@ let pkgs = import nixpkgs { inherit system; }; web-files = import ./default.nix { - inherit (pkgs) mkYarnModules; + inherit (pkgs) stdenv mkYarnModules; bergamot-elm = bergamot-elm.defaultPackage.${system}; }; in