summaryrefslogtreecommitdiff
path: root/src/WWW/Base.hs
diff options
context:
space:
mode:
authorChris Wells <chris@mathematicaster.org>2024-12-30 21:23:52 -0600
committerChris Wells <chris@mathematicaster.org>2024-12-30 21:23:52 -0600
commit42a2d42eecf551dd1990c97c1ae2586cd46674be (patch)
tree873e80c07aca811167aa06caa19de7334c94048d /src/WWW/Base.hs
downloadmain-42a2d42eecf551dd1990c97c1ae2586cd46674be.tar
main-42a2d42eecf551dd1990c97c1ae2586cd46674be.tar.gz
main-42a2d42eecf551dd1990c97c1ae2586cd46674be.tar.bz2
main-42a2d42eecf551dd1990c97c1ae2586cd46674be.tar.lz
main-42a2d42eecf551dd1990c97c1ae2586cd46674be.tar.xz
main-42a2d42eecf551dd1990c97c1ae2586cd46674be.tar.zst
main-42a2d42eecf551dd1990c97c1ae2586cd46674be.zip
Started writing the main utilities for my webpage
Diffstat (limited to 'src/WWW/Base.hs')
-rw-r--r--src/WWW/Base.hs39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/WWW/Base.hs b/src/WWW/Base.hs
new file mode 100644
index 0000000..4f8d1c7
--- /dev/null
+++ b/src/WWW/Base.hs
@@ -0,0 +1,39 @@
+module WWW.Base
+ ( baseConfig
+ , baseHakyll
+ , domain
+ , wwwRoot
+ ) where
+
+import Prolog
+import Hakyll
+import System.Process
+
+
+hakyllVersion :: IsString s => s
+hakyllVersion = "Hakyll 4.16.2.2"
+
+-- | mathematicaster.org
+domain :: IsString s => s
+domain = "mathematicaster.org"
+
+-- | /var/www
+wwwRoot :: IsString s => s
+wwwRoot = "/var/www"
+
+baseConfig :: FilePath -> Configuration
+baseConfig p = defaultConfiguration
+ { destinationDirectory = "output"
+ , storeDirectory = ".cache"
+ , tmpDirectory = ".cache/tmp"
+ , deploySite = \cfg -> rawSystem "rsync"
+ [ "-aP"
+ , "--delete-after"
+ , "--chown=nginx:nginx"
+ , destinationDirectory cfg <> "/"
+ , "root@" <> domain <> ":" <> wwwRoot <> "/" <> p
+ ]
+ }
+
+baseHakyll :: MonadIO m => FilePath -> Rules a -> m ()
+baseHakyll p = liftIO . hakyllWith (baseConfig p)