nixfromnpm 0.1.0.0 → 0.1.0.2
raw patch · 2 files changed
+18/−13 lines, 2 filesdep +docopt
Dependencies added: docopt
Files
- nixfromnpm.cabal +2/−1
- src/Main.hs +16/−12
nixfromnpm.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/ name: nixfromnpm-version: 0.1.0.0+version: 0.1.0.2 synopsis: Generate nix expressions from npm packages. -- description: license: MIT@@ -36,6 +36,7 @@ , network-uri , directory , simple-nix+ , docopt hs-source-dirs: src default-language: Haskell2010
src/Main.hs view
@@ -1,16 +1,20 @@-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE QuasiQuotes #-} module Main where ------------------------------------------------------------------------------import NixFromNpm-import Data.Text (Text)-import qualified Data.Text as T-----------------------------------------------------------------------------+import System.Environment (getArgs)+import System.Console.Docopt +import NixFromNpm hiding (getArgs)++patterns :: Docopt+patterns = [docoptFile|USAGE.txt|]++args ?? arg = getArgOrExitWith patterns args (argument arg)+ main :: IO ()-main = getArgs >>= \case- pkgName:path:_ -> dumpPkgNamed False pkgName path- _ -> error "Incorrect number of arguments"+main = do+ args <- parseArgsOrExit patterns =<< getArgs+ pkgName <- args ?? "packagename"+ path <- args ?? "outputpath"+ let noCache = isPresent args (longOption "no-cache")+ dumpPkgNamed noCache (pack pkgName) (pack path)