From fb4a6119b6f997896d4e254ad8a878b283000787 Mon Sep 17 00:00:00 2001 From: Kris Jenkins Date: Mon, 19 Jan 2015 09:18:28 +0000 Subject: Updating Elm packages. This includes updates to elm -compiler, -make, -package and -reactor. -repl's test suite currently breaks. The build for elm-reactor could be more concise, but it's clean. The final build step for elm-reactor ultimately relies on elm-package downloading some libraries, so anything radically better would probably need nix to step in and somehow emulate elm-package. That would take more knowledge about elm & nix than I have... --- .../elm/0001-remove-custom-build-step.patch | 25 ---------- pkgs/development/compilers/elm/elm-compiler.nix | 4 +- pkgs/development/compilers/elm/elm-make.nix | 4 +- pkgs/development/compilers/elm/elm-package.nix | 4 +- .../elm/elm-reactor-exact-dependencies.json | 6 +++ pkgs/development/compilers/elm/elm-reactor.nix | 54 +++++++++++++++++++--- 6 files changed, 60 insertions(+), 37 deletions(-) delete mode 100644 pkgs/development/compilers/elm/0001-remove-custom-build-step.patch create mode 100644 pkgs/development/compilers/elm/elm-reactor-exact-dependencies.json (limited to 'pkgs/development/compilers/elm') diff --git a/pkgs/development/compilers/elm/0001-remove-custom-build-step.patch b/pkgs/development/compilers/elm/0001-remove-custom-build-step.patch deleted file mode 100644 index e229a0c239e0..000000000000 --- a/pkgs/development/compilers/elm/0001-remove-custom-build-step.patch +++ /dev/null @@ -1,25 +0,0 @@ -From a164f7a2b662831ba26f5cebce23f97f1b5afccd Mon Sep 17 00:00:00 2001 -From: Tom Hunger -Date: Thu, 8 Jan 2015 14:07:17 +0000 -Subject: [PATCH] remove-custom-build-step - ---- - Setup.hs | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/Setup.hs b/Setup.hs -index 6f80fd8..a45ffc1 100644 ---- a/Setup.hs -+++ b/Setup.hs -@@ -19,8 +19,6 @@ main = - myPostBuild :: Args -> BuildFlags -> PackageDescription -> LocalBuildInfo -> IO () - myPostBuild args flags pd lbi = - do putStrLn "Custom build step: compiling debuggerInterface.elm" -- buildInterface -- concatJS lbi - postBuild simpleUserHooks args flags pd lbi - - --- -1.9.4 - diff --git a/pkgs/development/compilers/elm/elm-compiler.nix b/pkgs/development/compilers/elm/elm-compiler.nix index f686abbf3531..87a0b660d2ad 100644 --- a/pkgs/development/compilers/elm/elm-compiler.nix +++ b/pkgs/development/compilers/elm/elm-compiler.nix @@ -9,8 +9,8 @@ cabal.mkDerivation (self: { pname = "elm-compiler"; - version = "0.14"; - sha256 = "1vgbs3navs6dr36k408kc83gkn2ndhmc0b1015zk3jb0wkmvm73y"; + version = "0.14.1"; + sha256 = "0my04mipgia5qw02nzzrzc4kq3vl7bv75rzrsmd2bdb2wll1k94f"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/compilers/elm/elm-make.nix b/pkgs/development/compilers/elm/elm-make.nix index ff5646ddd062..f9693ab2d94d 100644 --- a/pkgs/development/compilers/elm/elm-make.nix +++ b/pkgs/development/compilers/elm/elm-make.nix @@ -6,8 +6,8 @@ cabal.mkDerivation (self: { pname = "elm-make"; - version = "0.1"; - sha256 = "1hrc8bzfqzrcmkzqcampxkn5m113blfp4095h6c2xnadiicbvwdy"; + version = "0.1.1"; + sha256 = "02mqr6v146piwrhycnmlxnky5bmsl7ap7781qmcwkfmc89wfa4zl"; isLibrary = false; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/compilers/elm/elm-package.nix b/pkgs/development/compilers/elm/elm-package.nix index 3cf2ded8ff50..4bcc4339b68f 100644 --- a/pkgs/development/compilers/elm/elm-package.nix +++ b/pkgs/development/compilers/elm/elm-package.nix @@ -8,8 +8,8 @@ cabal.mkDerivation (self: { pname = "elm-package"; - version = "0.2.2"; - sha256 = "0hkcy1mix2rng2k2zhzgb16nd0asfj9rm9ya2by67vjysiz8cmnr"; + version = "0.4"; + sha256 = "0vsq87imyvs1sa2n4z41b6qswy2cknxsg4prhwc9r7lvyljkmn03"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/compilers/elm/elm-reactor-exact-dependencies.json b/pkgs/development/compilers/elm/elm-reactor-exact-dependencies.json new file mode 100644 index 000000000000..e9e2a77bc8b1 --- /dev/null +++ b/pkgs/development/compilers/elm/elm-reactor-exact-dependencies.json @@ -0,0 +1,6 @@ +{ + "evancz/virtual-dom": "1.1.0", + "evancz/elm-markdown": "1.1.2", + "evancz/elm-html": "1.1.0", + "elm-lang/core": "1.1.0" +} \ No newline at end of file diff --git a/pkgs/development/compilers/elm/elm-reactor.nix b/pkgs/development/compilers/elm/elm-reactor.nix index 2c3da88d8bd6..00efef6c1fe6 100644 --- a/pkgs/development/compilers/elm/elm-reactor.nix +++ b/pkgs/development/compilers/elm/elm-reactor.nix @@ -1,16 +1,59 @@ -{ cabal, blazeHtml, blazeMarkup, cmdargs, elmCompiler, elmMake, filepath +{ unzip, fetchurl, fetchFromGitHub, cabal, blazeHtml, blazeMarkup, cmdargs, elmCompiler, elmMake, filepath , fsnotify, HTTP, mtl, snapCore, snapServer, systemFilepath, text , time, transformers, unorderedContainers, websockets , websocketsSnap }: -cabal.mkDerivation (self: { +cabal.mkDerivation (self: rec { pname = "elm-reactor"; - version = "0.2.0.1"; - sha256 = "1qnrxr3wayhw92w6lghchz8avxbxg00w7p6d1vs7mq9q56876jgj"; + version = "0.3"; isLibrary = false; isExecutable = true; - patches = [ ./0001-remove-custom-build-step.patch ]; + buildTools = [ unzip ]; + + src = fetchFromGitHub { + owner = "elm-lang"; + repo = "elm-reactor"; + rev = "176ff8e05e4bb7474752da1b3455c83d6181d594"; + sha256 = "1marjqlmmq3a74g9f3ngk90h9mkhillcdwfsys6x0nqj6qirw4ph"; + }; + elmLangCore = fetchurl { + url = "https://github.com/elm-lang/core/archive/1.1.0.zip"; + sha256 = "1fhvghjsay1p82k13039wbd02k439yplv2rh9zr77zvcbih6a31j"; + }; + elmHtml = fetchurl { + url = "https://github.com/evancz/elm-html/archive/1.1.0.zip"; + sha256 = "01wshabxsdrxcxs2nn3dhk7n8720sp3prpkahhx36vvprdh05l4q"; + }; + elmMarkdown = fetchurl { + url = "https://github.com/evancz/elm-markdown/archive/1.1.2.zip"; + sha256 = "14y1wp28za50zypdzyvl5d57hkm0v3rgnzm5klv3jcbd625kr9bg"; + }; + virtualDom = fetchurl { + url = "https://github.com/evancz/virtual-dom/archive/1.1.0.zip"; + sha256 = "08dr7q0x1ycgj5b15s2kn1a45iw350gzq65c3lxp47xfffq1vz91"; + }; + elmStuff = ./elm-reactor-exact-dependencies.json; + + preConfigure = '' + unzip -d $TEMPDIR -q ${elmLangCore} + mkdir -p elm-stuff/packages/elm-lang/core/1.1.0 + cp -pr $TEMPDIR/core-1.1.0/* elm-stuff/packages/elm-lang/core/1.1.0/ + + unzip -d $TEMPDIR -q ${elmHtml} + mkdir -p elm-stuff/packages/evancz/elm-html/1.1.0 + cp -pr $TEMPDIR/elm-html-1.1.0/* elm-stuff/packages/evancz/elm-html/1.1.0 + + unzip -d $TEMPDIR -q ${elmMarkdown} + mkdir -p elm-stuff/packages/evancz/elm-markdown/1.1.2 + cp -pr $TEMPDIR/elm-markdown-1.1.2/* elm-stuff/packages/evancz/elm-markdown/1.1.2 + + unzip -d $TEMPDIR -q ${virtualDom} + mkdir -p elm-stuff/packages/evancz/virtual-dom/1.1.0 + cp -pr $TEMPDIR/virtual-dom-1.1.0/* elm-stuff/packages/evancz/virtual-dom/1.1.0 + + cp ${elmStuff} elm-stuff/exact-dependencies.json + ''; buildDepends = [ blazeHtml blazeMarkup cmdargs elmCompiler filepath fsnotify HTTP mtl snapCore snapServer systemFilepath text time transformers @@ -21,6 +64,5 @@ cabal.mkDerivation (self: { description = "Interactive development tool for Elm programs"; license = self.stdenv.lib.licenses.bsd3; platforms = self.ghc.meta.platforms; -# broken = true; }; }) -- cgit 1.4.1