From f3004eb020d8d9dba84fea3008e0e6b3563b2170 Mon Sep 17 00:00:00 2001 From: Mats Rauhala Date: Mon, 12 Nov 2018 22:58:50 +0200 Subject: [PATCH] Start building the frontend libs --- default.nix | 12 ++++++++++++ frontend/ChangeLog.md | 5 +++++ frontend/LICENSE | 30 ++++++++++++++++++++++++++++++ frontend/Setup.hs | 2 ++ frontend/frontend.cabal | 27 +++++++++++++++++++++++++++ frontend/src/Main.hs | 4 ++++ 6 files changed, 80 insertions(+) create mode 100644 frontend/ChangeLog.md create mode 100644 frontend/LICENSE create mode 100644 frontend/Setup.hs create mode 100644 frontend/frontend.cabal create mode 100644 frontend/src/Main.hs diff --git a/default.nix b/default.nix index c85da76..c0d352f 100644 --- a/default.nix +++ b/default.nix @@ -1,12 +1,24 @@ { nixpkgs, haskellPackages }: +let jsaddle = nixpkgs.fetchFromGitHub { + owner = "ghcjs"; + repo = "jsaddle"; + rev = "68208be806c49a2a0c9f037dfac85feae10a8c80"; + sha256 = "0acj0x716ikfb08ndib36jmwxkwq399lvkip46sfkh1ynn0pvc1c"; +}; + +in + (import ./project.nix nixpkgs) { packages = { common = ./common; backend = ./backend; + frontend = ./frontend; }; overrides = self: super: { generic-lens = nixpkgs.haskell.lib.dontCheck super.generic-lens; + jsaddle-warp = nixpkgs.haskell.lib.dontCheck (super.callPackage (jsaddle + "/jsaddle-warp") {}); + jsaddle = super.callPackage (jsaddle + "/jsaddle") {}; }; tools = with haskellPackages; [ ghcid diff --git a/frontend/ChangeLog.md b/frontend/ChangeLog.md new file mode 100644 index 0000000..231ccd6 --- /dev/null +++ b/frontend/ChangeLog.md @@ -0,0 +1,5 @@ +# Revision history for frontend + +## 0.1.0.0 -- YYYY-mm-dd + +* First version. Released on an unsuspecting world. diff --git a/frontend/LICENSE b/frontend/LICENSE new file mode 100644 index 0000000..00aedcc --- /dev/null +++ b/frontend/LICENSE @@ -0,0 +1,30 @@ +Copyright (c) 2018, Mats Rauhala + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + * Neither the name of Mats Rauhala nor the names of other + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/frontend/Setup.hs b/frontend/Setup.hs new file mode 100644 index 0000000..9a994af --- /dev/null +++ b/frontend/Setup.hs @@ -0,0 +1,2 @@ +import Distribution.Simple +main = defaultMain diff --git a/frontend/frontend.cabal b/frontend/frontend.cabal new file mode 100644 index 0000000..f98b98f --- /dev/null +++ b/frontend/frontend.cabal @@ -0,0 +1,27 @@ +-- Initial frontend.cabal generated by cabal init. For further +-- documentation, see http://haskell.org/cabal/users-guide/ + +name: frontend +version: 0.1.0.0 +-- synopsis: +-- description: +license: BSD3 +license-file: LICENSE +author: Mats Rauhala +maintainer: mats.rauhala@iki.fi +-- copyright: +category: Web +build-type: Simple +extra-source-files: ChangeLog.md +cabal-version: >=1.10 + +executable frontend + main-is: Main.hs + -- other-modules: + -- other-extensions: + build-depends: base >=4.11 && <4.12 + , common + , miso + , jsaddle-warp + hs-source-dirs: src + default-language: Haskell2010 diff --git a/frontend/src/Main.hs b/frontend/src/Main.hs new file mode 100644 index 0000000..65ae4a0 --- /dev/null +++ b/frontend/src/Main.hs @@ -0,0 +1,4 @@ +module Main where + +main :: IO () +main = putStrLn "Hello, Haskell!"