From d8ffaacc7130d636bed20eb924400ce0d43216bb Mon Sep 17 00:00:00 2001 From: Brian Hicks Date: Tue, 22 Feb 2022 05:55:00 -0600 Subject: [PATCH] package up the result --- .gitignore | 1 + flake.nix | 24 ++++++++++++++- nix/elm-srcs.nix | 77 ++++++++++++++++++++++++++++++++++++++++++++++++ nix/registry.dat | 0 4 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 nix/elm-srcs.nix create mode 100644 nix/registry.dat diff --git a/.gitignore b/.gitignore index 04559f6..cd2b077 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /elm-stuff /index.html +/result diff --git a/flake.nix b/flake.nix index a75721f..bfb3142 100644 --- a/flake.nix +++ b/flake.nix @@ -7,9 +7,31 @@ outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; - in { + in rec { + packages.nates-mazes = pkgs.stdenv.mkDerivation { + name = "nates-mazes"; + src = ./.; + + buildInputs = [ pkgs.elmPackages.elm ]; + + buildPhase = pkgs.elmPackages.fetchElmDeps { + elmPackages = import ./nix/elm-srcs.nix; + elmVersion = "0.19.1"; + registryDat = ./nix/registry.dat; + }; + + installPhase = '' + mkdir -p $out/share/nates-mazes + elm make src/Main.elm --output $out/share/nates-mazes/index.html + ''; + }; + defaultPackage = packages.nates-mazes; + + overlay = final: prev: { nates-mazes = packages.nates-mazes; }; + devShell = pkgs.mkShell { packages = [ + pkgs.elm2nix pkgs.elmPackages.elm pkgs.elmPackages.elm-format pkgs.elmPackages.elm-live diff --git a/nix/elm-srcs.nix b/nix/elm-srcs.nix new file mode 100644 index 0000000..e38d229 --- /dev/null +++ b/nix/elm-srcs.nix @@ -0,0 +1,77 @@ +{ + + "mpizenberg/elm-pointer-events" = { + sha256 = "16s14sh01g6ssabwkf2k1xdxnahnkn0s7603cg87wd0h4myg15da"; + version = "4.0.2"; + }; + + "elm/html" = { + sha256 = "1n3gpzmpqqdsldys4ipgyl1zacn0kbpc3g4v3hdpiyfjlgh8bf3k"; + version = "1.0.0"; + }; + + "elm/browser" = { + sha256 = "0nagb9ajacxbbg985r4k9h0jadqpp0gp84nm94kcgbr5sf8i9x13"; + version = "1.0.2"; + }; + + "elm/core" = { + sha256 = "19w0iisdd66ywjayyga4kv2p1v9rxzqjaxhckp8ni6n8i0fb2dvf"; + version = "1.0.5"; + }; + + "elm/url" = { + sha256 = "0av8x5syid40sgpl5vd7pry2rq0q4pga28b4yykn9gd9v12rs3l4"; + version = "1.0.0"; + }; + + "elm/json" = { + sha256 = "0kjwrz195z84kwywaxhhlnpl3p251qlbm5iz6byd6jky2crmyqyh"; + version = "1.1.3"; + }; + + "rtfeldman/elm-css" = { + sha256 = "1437v58qzr7ba7i7xjgxczdyb8irkkacmdpqqpxiq79zwdx3ywaa"; + version = "17.0.5"; + }; + + "elm/random" = { + sha256 = "138n2455wdjwa657w6sjq18wx2r0k60ibpc4frhbqr50sncxrfdl"; + version = "1.0.0"; + }; + + "elm/time" = { + sha256 = "0vch7i86vn0x8b850w1p69vplll1bnbkp8s383z7pinyg94cm2z1"; + version = "1.0.0"; + }; + + "elm/virtual-dom" = { + sha256 = "0q1v5gi4g336bzz1lgwpn5b1639lrn63d8y6k6pimcyismp2i1yg"; + version = "1.0.2"; + }; + + "elm/bytes" = { + sha256 = "02ywbf52akvxclpxwj9n04jydajcbsbcbsnjs53yjc5lwck3abwj"; + version = "1.0.8"; + }; + + "elm/file" = { + sha256 = "1rljcb41dl97myidyjih2yliyzddkr2m7n74x7gg46rcw4jl0ny8"; + version = "1.0.5"; + }; + + "robinheghan/murmur3" = { + sha256 = "15asmgr2zqh7rkywrg5647rpdqkpzxk02v5qc6ndj60jza3gsmjk"; + version = "1.0.0"; + }; + + "rtfeldman/elm-hex" = { + sha256 = "1y0aa16asvwdqmgbskh5iba6psp43lkcjjw9mgzj3gsrg33lp00d"; + version = "1.0.0"; + }; + + "elm-explorations/test" = { + sha256 = "1fsd7bajm7qa93r5pn3mdafqh3blpzya601jbs9l238p0hmvh576"; + version = "1.2.2"; + }; +} diff --git a/nix/registry.dat b/nix/registry.dat new file mode 100644 index 0000000..e69de29