refactor(web/blog): Use timestamps for dates instead of strings
This lets me easily create an ordered list of entries if the homepage is designed to list both blog posts and other content.
This commit is contained in:
parent
cc2c130352
commit
8e9fb73958
3 changed files with 13 additions and 10 deletions
|
@ -11,7 +11,7 @@ let
|
|||
post = struct "blog-post" {
|
||||
key = string; #
|
||||
title = string;
|
||||
date = string; # *sigh*
|
||||
date = int;
|
||||
|
||||
# Path to the Markdown file containing the post content.
|
||||
content = path;
|
||||
|
@ -39,8 +39,7 @@ let
|
|||
${lib.concatStringsSep "\n" (map (post:
|
||||
"cp ${fragments.renderPost post} $out/${post.key}.html"
|
||||
) posts)}
|
||||
''; # '' (this line makes nix-mode happy :/)
|
||||
|
||||
'';
|
||||
in import ./nginx.nix (args // {
|
||||
inherit posts renderedBlog;
|
||||
})
|
||||
|
|
|
@ -51,9 +51,13 @@ let
|
|||
renderPost = post: runCommandNoCC "${post.key}.html" {} ''
|
||||
cat ${toFile "header.html" (header post.title)} > $out
|
||||
|
||||
# Write the actual post
|
||||
# Write the post title & date
|
||||
echo '<article><h2 class="inline">${escape post.title}</h2>' >> $out
|
||||
echo '<aside class="date">${post.date}</aside>' >> $out
|
||||
echo '<aside class="date">' >> $out
|
||||
date --date="@${toString post.date}" '+%Y-%m-%d' >> $out
|
||||
echo '</aside>' >> $out
|
||||
|
||||
# Write the actual post through cheddar's about-filter mechanism
|
||||
cat ${post.content} | ${pkgs.tools.cheddar}/bin/cheddar --about-filter ${post.content} >> $out
|
||||
echo '</article>' >> $out
|
||||
|
||||
|
|
|
@ -3,35 +3,35 @@
|
|||
{
|
||||
key = "reversing-watchguard-vpn";
|
||||
title = "Reverse-engineering WatchGuard Mobile VPN";
|
||||
date = "2017-02-11";
|
||||
date = 1486830338;
|
||||
content = ./posts/reversing-watchguard-vpn.md;
|
||||
oldKey = "1486830338";
|
||||
}
|
||||
{
|
||||
key = "make-object-t-again";
|
||||
title = "Make Object <T> Again!";
|
||||
date = "2016-10-18";
|
||||
date = 1476807384;
|
||||
content = ./posts/make-object-t-again.md;
|
||||
oldKey = "1476807384";
|
||||
}
|
||||
{
|
||||
key = "the-smu-problem";
|
||||
title = "The SMU-problem of messaging apps";
|
||||
date = "2015-12-17";
|
||||
date = 1450354078;
|
||||
content =./posts/the-smu-problem.md;
|
||||
oldKey = "1450354078";
|
||||
}
|
||||
{
|
||||
key = "sick-in-sweden";
|
||||
title = "Being sick in Sweden";
|
||||
date = "2015-02-15";
|
||||
date = 1423995834;
|
||||
content = ./posts/sick-in-sweden.md;
|
||||
oldKey = "1423995834";
|
||||
}
|
||||
{
|
||||
key = "nsa-zettabytes";
|
||||
title = "The NSA's 5 zettabytes of data";
|
||||
date = "2013-07-31";
|
||||
date = 1375310627;
|
||||
content = ./posts/nsa-zettabytes.md;
|
||||
oldKey = "1375310627";
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue