diff options
| author | jamie <git@skilet.ro> | 2025-10-23 11:43:03 +0100 |
|---|---|---|
| committer | jamie <git@skilet.ro> | 2025-10-23 13:15:12 +0100 |
| commit | 3b76863b673e14bbb20d2fb81de727c72259b25e (patch) | |
| tree | 8d579704310153581c6a6029de9667906cf7de0f /site.hs | |
| parent | 9cc4a262486332f42b228710f24dfe4dea3947e1 (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
@@ -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 -------------------------------------------------------------------------------- --------------------------------------------------------------------------------- |
