on develop help sign in
A few small fixes to build with reflex-platform
9ca242aRyan Trinkle
default.nix+3−49
@@ -1,50 +1,4 @@
1−{ mkDerivation, pkgs, dependent-map, ghcjs-dom, lens
1+haskellPackages: {
2−, mtl, ref-tf, reflex, text, these
2+ reflex-dom = haskellPackages.callPackage ./reflex-dom {};
3−, transformers, data-default, semigroups, blaze-builder, aeson
3+ reflex-dom-core = haskellPackages.callPackage ./reflex-dom-core {};
4−, ghc, webkitgtk3-javascriptcore, exception-transformers
5−, webkitgtk24x, dependent-sum-template, bifunctors, bimap
6−, raw-strings-qq, zenc, random, monad-control, keycode, hlint
7−, unbounded-delays
8−}:
9−
10−mkDerivation {
11− pname = "reflex-dom";
12− version = "0.3";
13− src = builtins.filterSource (path: type: baseNameOf path != ".git") ./.;
14− buildDepends = [
15− aeson
16− bifunctors
17− bimap
18− blaze-builder
19− data-default
20− dependent-map
21− dependent-sum-template
22− exception-transformers
23− ghcjs-dom
24− keycode
25− lens
26− monad-control
27− mtl
28− random
29− ref-tf
30− reflex
31− semigroups
32− text
33− these
34− transformers
35− zenc
36− unbounded-delays
37− ] ++ (if ghc.isGhcjs or false then [] else [
38− raw-strings-qq
39− webkitgtk3-javascriptcore
40− ]);
41− testDepends = if ghc.isGhcjs or false then [] else [
42− hlint
43− ];
44− pkgconfigDepends = if ghc.isGhcjs or false then [] else [
45− raw-strings-qq
46− webkitgtk24x
47− webkitgtk3-javascriptcore
48− ];
49− license = null;
50}
4}
reflex-dom-core/default.nixnew file+51
@@ -0,0 +1,51 @@
1+{ mkDerivation, pkgs, dependent-map, ghcjs-dom, lens
2+, mtl, ref-tf, reflex, text, these
3+, transformers, data-default, semigroups, blaze-builder, aeson
4+, ghc, webkitgtk3-javascriptcore, exception-transformers
5+, webkitgtk24x, dependent-sum-template, bifunctors, bimap
6+, raw-strings-qq, zenc, random, monad-control, keycode, hlint
7+, unbounded-delays, jsaddle
8+}:
9+
10+mkDerivation {
11+ pname = "reflex-dom-core";
12+ version = "0.3";
13+ src = builtins.filterSource (path: type: baseNameOf path != ".git") ./.;
14+ buildDepends = [
15+ aeson
16+ bifunctors
17+ bimap
18+ blaze-builder
19+ data-default
20+ dependent-map
21+ dependent-sum-template
22+ exception-transformers
23+ ghcjs-dom
24+ jsaddle
25+ keycode
26+ lens
27+ monad-control
28+ mtl
29+ random
30+ ref-tf
31+ reflex
32+ semigroups
33+ text
34+ these
35+ transformers
36+ unbounded-delays
37+ zenc
38+ ] ++ (if ghc.isGhcjs or false then [] else [
39+ raw-strings-qq
40+ webkitgtk3-javascriptcore
41+ ]);
42+ testDepends = if ghc.isGhcjs or false then [] else [
43+ hlint
44+ ];
45+ pkgconfigDepends = if ghc.isGhcjs or false then [] else [
46+ raw-strings-qq
47+ webkitgtk24x
48+ webkitgtk3-javascriptcore
49+ ];
50+ license = null;
51+}
reflex-dom/default.nixnew file+15
@@ -0,0 +1,15 @@
1+{ mkDerivation, base, bytestring, jsaddle-webkit2gtk, reflex
2+, reflex-dom-core, stdenv, text, ghc
3+}:
4+mkDerivation {
5+ pname = "reflex-dom";
6+ version = "0.4";
7+ src = ./.;
8+ libraryHaskellDepends = [
9+ base bytestring reflex reflex-dom-core text
10+ ] ++ (if ghc.isGhcjs or false then [] else [
11+ jsaddle-webkit2gtk
12+ ]);
13+ description = "Functional Reactive Web Apps with Reflex";
14+ license = stdenv.lib.licenses.bsd3;
15+}
reflex-dom/reflex-dom.cabal+9−8
@@ -28,16 +28,17 @@ library
28 reflex == 0.5.*,
28 reflex == 0.5.*,
29 reflex-dom-core >=0.4 && <0.5,
29 reflex-dom-core >=0.4 && <0.5,
30 text == 1.2.*
30 text == 1.2.*
31+ if !impl(ghcjs)
31− if os(osx) || os(ios)
32+ if os(osx) || os(ios)
32− build-depends:
33− jsaddle-wkwebview
34− else
35− if flag(webkit2gtk)
36 build-depends:
33 build-depends:
37− jsaddle-webkit2gtk
34+ jsaddle-wkwebview
38 else
35 else
36+ if flag(webkit2gtk)
39− build-depends:
37+ build-depends:
38+ jsaddle-webkit2gtk
39+ else
40+ build-depends:
40− jsaddle-webkitgtk
41+ jsaddle-webkitgtk
41
42
42 exposed-modules:
43 exposed-modules:
43 Reflex.Dom
44 Reflex.Dom
reflex-dom/src/Reflex/Dom/Internal.hs+5−1
@@ -15,7 +15,11 @@ import Reflex.Dom.Main as Main hiding
15import qualified Reflex.Dom.Main as Main
15import qualified Reflex.Dom.Main as Main
16 (mainWidget, mainWidgetWithHead, mainWidgetWithCss,
16 (mainWidget, mainWidgetWithHead, mainWidgetWithCss,
17 mainWidgetWithHead', mainWidgetInElementById, runApp')
17 mainWidgetWithHead', mainWidgetInElementById, runApp')
18+
19+#if defined(ghcjs_HOST_OS)
20+run :: a -> a
21+run = id
18−#ifdef darwin_HOST_OS
22+#elif defined(darwin_HOST_OS)
19import Language.Javascript.JSaddle.WKWebView (run)
23import Language.Javascript.JSaddle.WKWebView (run)
20#else
24#else
21import Language.Javascript.JSaddle.WebKitGTK (run)
25import Language.Javascript.JSaddle.WebKitGTK (run)