info-page/site.hs
Yiyun Liu 79812a9bd8
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Add link to the draft
2025-07-15 15:02:44 -04:00

41 lines
1.3 KiB
Haskell

--------------------------------------------------------------------------------
{-# LANGUAGE OverloadedStrings #-}
import Hakyll
import Text.Pandoc.Options
--------------------------------------------------------------------------------
hakyllConfig :: Configuration
hakyllConfig =
defaultConfiguration
{ deployCommand =
"rsync -ave 'ssh -p 10087' _site/ alcymd@electriclam.com:/var/www/infopage --delete"
}
pandocOptions :: WriterOptions
pandocOptions = defaultHakyllWriterOptions {writerHTMLMathMethod = MathML }
main :: IO ()
main =
hakyllWith hakyllConfig $ do
match "css/*.css" $ do
route idRoute
compile compressCssCompiler
match "repl25-notes/*.pdf" $ do
route idRoute
compile copyFileCompiler
match "papers/*" $ do
route idRoute
compile copyFileCompiler
match "images/favicon.ico" $ do
route (constRoute "favicon.ico")
compile copyFileCompiler
match "index.org" $ do
route $ setExtension "html"
compile $ do
let indexCtx = constField "title" "Yiyun Liu" <> defaultContext
pandocCompiler
>>= applyAsTemplate indexCtx
>>= loadAndApplyTemplate "templates/default.html" indexCtx
>>= relativizeUrls
match "templates/*" $ compile templateBodyCompiler