diff --git a/flake.nix b/flake.nix index 701316d..cc5a3dc 100644 --- a/flake.nix +++ b/flake.nix @@ -35,6 +35,37 @@ pkgs.rsyncy ]; }; + + new-post = pkgs.writeShellApplication { + name = "new-post"; + + text = '' + if [ $# -lt 1 ]; then + echo "usage: $0 [ [<description>]]" + exit 1 + fi + + filename="$1.mdx" + title=''${2:-"CHANGEME"} + description=''${3:-"CHANGEME"} + + if [ -e "site-src/$filename" ]; then + echo "$filename already exists!" + exit 2 + fi + + # TODO: don't hardcode timezone (%z doesn't quite work) + cat > "site-src/$filename" <<EOF + --- + title: $title + description: $description + tags: post,short + date: $(date +'%Y-%m-%d %H:%M:%S -5') + --- + bla bla bla + EOF + ''; + }; in { devShell = pkgs.mkShell { @@ -48,7 +79,7 @@ build = eleventy-shortcut { name = "build"; }; serve = eleventy-shortcut { name = "serve"; args = ["--serve"]; }; watch = eleventy-shortcut { name = "watch"; args = ["--watch"]; }; - inherit deploy; + inherit deploy new-post; }; } );