Compare commits
No commits in common. "0ac70566cddd1df664612cc356b725532c58dfac" and "08ad6fb4697ec66df7306bb0c8674ea4bd0fccc3" have entirely different histories.
0ac70566cd
...
08ad6fb469
@ -8,4 +8,3 @@ I live in Espoo Finland. You can contact me on any of the following services.
|
|||||||
- **Slack**: masser@functionalprogramming.slack.com
|
- **Slack**: masser@functionalprogramming.slack.com
|
||||||
- **IRC**: MasseR@freenode
|
- **IRC**: MasseR@freenode
|
||||||
- **Mastodon**: MasseR@mastodon.social
|
- **Mastodon**: MasseR@mastodon.social
|
||||||
- **Keybase**: [https://keybase.io/MasseR](https://keybase.io/MasseR)
|
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 10 KiB |
18
release.nix
18
release.nix
@ -12,21 +12,6 @@ in
|
|||||||
let
|
let
|
||||||
haskellPackages = pkgs.haskellPackages;
|
haskellPackages = pkgs.haskellPackages;
|
||||||
site = pkgs.callPackage ./default.nix {};
|
site = pkgs.callPackage ./default.nix {};
|
||||||
website = with pkgs; stdenv.mkDerivation {
|
|
||||||
pname = "rauhala.info";
|
|
||||||
version = "0.1.0";
|
|
||||||
src = lib.cleanSource ./.;
|
|
||||||
LANG = "en_US.UTF-8";
|
|
||||||
LOCALE_ARCHIVE = lib.optionalString stdenv.isLinux "${glibcLocales}/lib/locale/locale-archive";
|
|
||||||
buildPhase = ''
|
|
||||||
${site}/bin/site clean
|
|
||||||
${site}/bin/site build
|
|
||||||
'';
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/share/
|
|
||||||
mv _site $out/share/html
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
shell = pkgs.buildEnv {
|
shell = pkgs.buildEnv {
|
||||||
name = "site-shell";
|
name = "site-shell";
|
||||||
paths = [];
|
paths = [];
|
||||||
@ -40,5 +25,6 @@ let
|
|||||||
in
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
inherit site shell website;
|
site = site;
|
||||||
|
shell = shell;
|
||||||
}
|
}
|
||||||
|
43
site.hs
43
site.hs
@ -8,11 +8,7 @@ import Data.Time (formatTime, defaultTimeLocale)
|
|||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
main :: IO ()
|
main :: IO ()
|
||||||
main = hakyllWith defaultConfiguration $ do
|
main = hakyllWith defaultConfiguration{ deployCommand = "ipfs add -Q -r _site" } $do
|
||||||
match "well-known/*" $ do
|
|
||||||
route (customRoute (prepend '.'. toFilePath))
|
|
||||||
compile copyFileCompiler
|
|
||||||
|
|
||||||
match "images/*" $ do
|
match "images/*" $ do
|
||||||
route idRoute
|
route idRoute
|
||||||
compile copyFileCompiler
|
compile copyFileCompiler
|
||||||
@ -35,6 +31,40 @@ main = hakyllWith defaultConfiguration $ do
|
|||||||
>>= loadAndApplyTemplate "templates/default.html" defaultContext
|
>>= loadAndApplyTemplate "templates/default.html" defaultContext
|
||||||
>>= relativizeUrls
|
>>= relativizeUrls
|
||||||
|
|
||||||
|
match "posts/incomplete/*" $ do
|
||||||
|
route $ setExtension "html"
|
||||||
|
compile $ pandocCompiler
|
||||||
|
>>= loadAndApplyTemplate "templates/post.html" postCtx
|
||||||
|
>>= loadAndApplyTemplate "templates/default.html" postCtx
|
||||||
|
>>= relativizeUrls
|
||||||
|
|
||||||
|
match "posts/guides/*" $ do
|
||||||
|
route $ setExtension "html"
|
||||||
|
compile $ pandocCompiler
|
||||||
|
>>= loadAndApplyTemplate "templates/post.html" postCtx
|
||||||
|
>>= loadAndApplyTemplate "templates/default.html" postCtx
|
||||||
|
>>= relativizeUrls
|
||||||
|
|
||||||
|
match "posts/brainstorming/*" $ do
|
||||||
|
route $ setExtension "html"
|
||||||
|
compile $ pandocCompiler
|
||||||
|
>>= loadAndApplyTemplate "templates/post.html" postCtx
|
||||||
|
>>= loadAndApplyTemplate "templates/default.html" postCtx
|
||||||
|
>>= relativizeUrls
|
||||||
|
|
||||||
|
create ["guides.html"] $ do
|
||||||
|
route idRoute
|
||||||
|
compile $ do
|
||||||
|
posts <- modFirst =<< loadAll "posts/guides/*"
|
||||||
|
let archiveCtx =
|
||||||
|
listField "posts" postCtx (return posts) `mappend`
|
||||||
|
constField "title" "Guides" `mappend`
|
||||||
|
defaultContext
|
||||||
|
|
||||||
|
makeItem ""
|
||||||
|
>>= loadAndApplyTemplate "templates/guides.html" archiveCtx
|
||||||
|
>>= loadAndApplyTemplate "templates/default.html" archiveCtx
|
||||||
|
>>= relativizeUrls
|
||||||
|
|
||||||
|
|
||||||
match "templates/*" $ compile templateBodyCompiler
|
match "templates/*" $ compile templateBodyCompiler
|
||||||
@ -55,6 +85,3 @@ postCtx =
|
|||||||
modifiedField key format = field key $ \i -> do
|
modifiedField key format = field key $ \i -> do
|
||||||
time <- getItemModificationTime $ itemIdentifier i
|
time <- getItemModificationTime $ itemIdentifier i
|
||||||
return $ formatTime defaultTimeLocale format time
|
return $ formatTime defaultTimeLocale format time
|
||||||
|
|
||||||
prepend :: a -> [a] -> [a]
|
|
||||||
prepend = (:)
|
|
||||||
|
@ -10,9 +10,9 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<header>
|
<header>
|
||||||
<!-- <div class="logo"> -->
|
<div class="logo">
|
||||||
<!-- <a href="/">rauhala.info</a> -->
|
<a href="/">rauhala.info</a>
|
||||||
<!-- </div> -->
|
</div>
|
||||||
<nav>
|
<nav>
|
||||||
<!-- Git logo from https://git-scm.com/downloads/logos -->
|
<!-- Git logo from https://git-scm.com/downloads/logos -->
|
||||||
<!-- Logo by Jason Long -->
|
<!-- Logo by Jason Long -->
|
||||||
|
@ -1,56 +0,0 @@
|
|||||||
==================================================================
|
|
||||||
https://keybase.io/masser
|
|
||||||
--------------------------------------------------------------------
|
|
||||||
|
|
||||||
I hereby claim:
|
|
||||||
|
|
||||||
* I am an admin of https://masser.keybase.pub
|
|
||||||
* I am masser (https://keybase.io/masser) on keybase.
|
|
||||||
* I have a public key ASD7WFMicMJhoArgnvPuR7Dc92WStIUWWXcyngnsTE_IaQo
|
|
||||||
|
|
||||||
To do so, I am signing this object:
|
|
||||||
|
|
||||||
{
|
|
||||||
"body": {
|
|
||||||
"key": {
|
|
||||||
"eldest_kid": "01202eb5d3b8d2fc63e4bc9c6edefb3a38f1043dfdc44a7268393951fe0ea5214cf00a",
|
|
||||||
"host": "keybase.io",
|
|
||||||
"kid": "0120fb58532270c261a00ae09ef3ee47b0dcf76592b485165977329e09ec4c4fc8690a",
|
|
||||||
"uid": "b01557931e13482e9e646593a64e9119",
|
|
||||||
"username": "masser"
|
|
||||||
},
|
|
||||||
"merkle_root": {
|
|
||||||
"ctime": 1580587604,
|
|
||||||
"hash": "890506579950548b2aa6fd0f35850b9fdb1d064786714f18515d0e3089cdc2458c5fe847d40ca71c2e021ca11677de055ac97804c53d1bef89432f88b57599d4",
|
|
||||||
"hash_meta": "104419595abc52918530f85495417faf35c7a5a608d6730bf53152dfa7288970",
|
|
||||||
"seqno": 14451686
|
|
||||||
},
|
|
||||||
"service": {
|
|
||||||
"entropy": "QIvRp0qNOIZFplyzXERiwp75",
|
|
||||||
"hostname": "masser.keybase.pub",
|
|
||||||
"protocol": "https:"
|
|
||||||
},
|
|
||||||
"type": "web_service_binding",
|
|
||||||
"version": 2
|
|
||||||
},
|
|
||||||
"client": {
|
|
||||||
"name": "keybase.io go client",
|
|
||||||
"version": "4.3.1"
|
|
||||||
},
|
|
||||||
"ctime": 1580587641,
|
|
||||||
"expire_in": 504576000,
|
|
||||||
"prev": "c99f66ba0bfa7ff6be736e24691c8007b0db41b6036b7f1e5f9335ab7f3550f4",
|
|
||||||
"seqno": 34,
|
|
||||||
"tag": "signature"
|
|
||||||
}
|
|
||||||
|
|
||||||
which yields the signature:
|
|
||||||
|
|
||||||
hKRib2R5hqhkZXRhY2hlZMOpaGFzaF90eXBlCqNrZXnEIwEg+1hTInDCYaAK4J7z7kew3PdlkrSFFll3Mp4J7ExPyGkKp3BheWxvYWTESpcCIsQgyZ9mugv6f/a+c24kaRyAB7DbQbYDa38eX5M1q381UPTEIH8FtgpzXt/JJxrhAYknW7xL4+K57JBJnbhFpXWAfEH5AgHCo3NpZ8RApEnmCcZApdOTf+XAHRbbgoysAZHfyTHamWC/BEHKuqEf/BlUFSxo6ASa/YC+Y2sMJfW2iRFlP2bs822TyJTBA6hzaWdfdHlwZSCkaGFzaIKkdHlwZQildmFsdWXEINm3yJdAbmbGJd03EnpuKVh2JzkI8WkngbWbAxbbR0MMo3RhZ80CAqd2ZXJzaW9uAQ==
|
|
||||||
|
|
||||||
And finally, I am proving ownership of this host by posting or
|
|
||||||
appending to this document.
|
|
||||||
|
|
||||||
View my publicly-auditable identity here: https://keybase.io/masser
|
|
||||||
|
|
||||||
==================================================================
|
|
Loading…
Reference in New Issue
Block a user