diff options
| author | Yuchen Pei <hi@ypei.me> | 2022-11-23 10:41:07 +1100 | 
|---|---|---|
| committer | Yuchen Pei <hi@ypei.me> | 2022-11-23 10:41:07 +1100 | 
| commit | 2fe810118c6068abc3cc7e876faef7e1213ecb76 (patch) | |
| tree | 337bedaa7dcd2e235fdd3eb53dd48db2019d2d09 | |
| parent | 55d1e6c9a9f41394a37b48c42f65cc02274b9ab7 (diff) | |
adding librejs
| -rw-r--r-- | .gitignore | 3 | ||||
| -rw-r--r-- | app/Main.hs | 11 | ||||
| -rwxr-xr-x | build.sh | 7 | ||||
| -rw-r--r-- | librejserver.cabal | 2 | 
4 files changed, 19 insertions, 4 deletions
| @@ -1,2 +1,3 @@  *~ -dist-newstyle
\ No newline at end of file +dist-newstyle +librejs
\ No newline at end of file diff --git a/app/Main.hs b/app/Main.hs index 94da226..fa816ae 100644 --- a/app/Main.hs +++ b/app/Main.hs @@ -16,6 +16,7 @@ import           Servant                        ( (:>)                                                  , Server                                                  , serve                                                  ) +import           System.Process                 ( readProcess )  type API = GetPageCompliance @@ -25,10 +26,16 @@ server :: Server API  server = getPageCompliance  getPageCompliance :: [Text] -> Handler Text -getPageCompliance url = +getPageCompliance urlPieces =    return      $  "You have requested librejs-compliance info for " -    <> T.intercalate "/" url +    <> T.intercalate "/" urlPieces + +runCompliance :: Text -> IO Text +runCompliance url = T.pack <$> readProcess +  "bin/node" +  ["~/source/librejserver/librejs/utilities/compliance.js", T.unpack url] +  ""  app :: Application  app = serve api server diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..ff62f95 --- /dev/null +++ b/build.sh @@ -0,0 +1,7 @@ +set -eux + +git clone https://git.savannah.gnu.org/git/librejs.git +cd librejs +npm install acorn@"<=8.7.1" jssha browserify selenium-webdriver geckodriver +export PATH=$PATH:./node_modules/.bin +./build.sh diff --git a/librejserver.cabal b/librejserver.cabal index 581d36f..3048390 100644 --- a/librejserver.cabal +++ b/librejserver.cabal @@ -11,6 +11,6 @@ extra-source-files: CHANGELOG.md  executable librejserver      main-is:          Main.hs -    build-depends:    base, servant-server, text, warp +    build-depends:    base, servant-server, text, warp, process      hs-source-dirs:   app      default-language: Haskell2010 | 
