summaryrefslogtreecommitdiff
path: root/site.hs
diff options
context:
space:
mode:
authorjamie <git@skilet.ro>2025-10-23 11:43:03 +0100
committerjamie <git@skilet.ro>2025-10-23 13:15:12 +0100
commit3b76863b673e14bbb20d2fb81de727c72259b25e (patch)
tree8d579704310153581c6a6029de9667906cf7de0f /site.hs
parent9cc4a262486332f42b228710f24dfe4dea3947e1 (diff)
refactor: neaten up source tree
Diffstat (limited to '')
-rw-r--r--ssg/Main.hs (renamed from site.hs)32
1 files changed, 14 insertions, 18 deletions
diff --git a/site.hs b/ssg/Main.hs
index 7c9980b..c130c91 100644
--- a/site.hs
+++ b/ssg/Main.hs
@@ -1,14 +1,15 @@
--------------------------------------------------------------------------------
{-# LANGUAGE OverloadedStrings #-}
-import Control.Exception
-import Data.List
-import Data.Monoid
-import Hakyll
-import Hakyll.Web.Sass
-import System.Environment
-import System.FilePath.Posix
-import System.Process
+import Control.Exception
+import Data.List
+import Data.Maybe
+import Data.Monoid
+import Hakyll
+import Hakyll.Web.Sass
+import System.Environment
+import System.FilePath.Posix
+import System.Process
--------------------------------------------------------------------------------
main :: IO ()
@@ -47,7 +48,7 @@ main = hakyll $ do
compile $
pandocCompiler
>>= loadAndApplyTemplate "templates/default.html" defaultCtx
- >>= relativizeUrls
+ -- >>= relativizeUrls
>>= removeIndexHtml
create ["archive.html"] $ do
@@ -124,7 +125,7 @@ removeIndexHtml item = return $ fmap (withUrls removeIndexStr) item
removeIndexStr :: String -> String
removeIndexStr url = case splitFileName url of
(dir, "index.html") | isLocal dir -> dir
- _ -> url
+ _ -> url
where
isLocal uri = not ("://" `isInfixOf` uri)
@@ -142,14 +143,9 @@ hDateCtx = dateField "hdate" "%B %e, %Y"
cDateCtx :: Context String
cDateCtx = dateField "cdate" "%Y-%m-%d"
-gitRevisionField :: String -> Context String
-gitRevisionField = flip field (const gitRevision)
-
-gitRevision :: Compiler String
-gitRevision = unixFilter "git" ["rev-parse", "--short=7", "HEAD"] ""
-
gitRevisionCtx :: Context String
-gitRevisionCtx = gitRevisionField "revision"
+gitRevisionCtx = field "revision" $ \_ -> do
+ mRevision <- unsafeCompiler $ lookupEnv "GIT_REVISION"
+ return $ fromMaybe "dev" mRevision
--------------------------------------------------------------------------------
---------------------------------------------------------------------------------