diff options
| author | Chris Wells <chris@mathematicaster.org> | 2024-12-30 21:23:52 -0600 |
|---|---|---|
| committer | Chris Wells <chris@mathematicaster.org> | 2024-12-30 21:23:52 -0600 |
| commit | 42a2d42eecf551dd1990c97c1ae2586cd46674be (patch) | |
| tree | 873e80c07aca811167aa06caa19de7334c94048d /src/WWW/Base.hs | |
| download | main-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.hs | 39 |
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) |
