Auto blog post addition.
This commit is contained in:
@@ -95,9 +95,37 @@
|
||||
'';
|
||||
};
|
||||
|
||||
new-post = pkgs.writeShellApplication {
|
||||
name = "new-post";
|
||||
runtimeInputs = [ pkgs.coreutils pkgs.gnused ];
|
||||
text = ''
|
||||
if [ $# -eq 0 ]; then
|
||||
echo "Usage: new-post \"Post Title\""
|
||||
exit 1
|
||||
fi
|
||||
title="$*"
|
||||
slug=$(echo "$title" | tr '[:upper:]' '[:lower:]' | sed 's/[^a-z0-9]/-/g' | sed 's/-\+/-/g' | sed 's/^-//;s/-$//')
|
||||
date=$(date +%Y-%m-%d)
|
||||
filename="content/blog/''${date}-''${slug}.org"
|
||||
mkdir -p content/blog
|
||||
cat > "$filename" <<EOF
|
||||
#+TITLE: $title
|
||||
#+DATE: $date
|
||||
|
||||
*
|
||||
|
||||
EOF
|
||||
echo "Created: $filename"
|
||||
'';
|
||||
};
|
||||
|
||||
in {
|
||||
packages.default = site;
|
||||
|
||||
devShells.default = pkgs.mkShell {
|
||||
packages = [ new-post ];
|
||||
};
|
||||
|
||||
apps = {
|
||||
default = {
|
||||
type = "app";
|
||||
|
||||
Reference in New Issue
Block a user