From d324442d4750388c13d76ec9f1ca20664e3052ed Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Wed, 25 Dec 2024 13:01:30 -0800 Subject: actually build the site with nix build --- flake.nix | 50 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index 07770fb..d49334c 100644 --- a/flake.nix +++ b/flake.nix @@ -7,12 +7,55 @@ pre-commit-hooks.url = "github:cachix/pre-commit-hooks.nix"; }; - outputs = { self, nixpkgs, flake-utils, pre-commit-hooks, }: - flake-utils.lib.eachDefaultSystem (system: + outputs = + { self + , nixpkgs + , flake-utils + , pre-commit-hooks + , + }: + flake-utils.lib.eachDefaultSystem ( + system: let pkgs = nixpkgs.legacyPackages.${system}; in { + apps = { + default = { + type = "app"; + program = "${self.packages."${system}".zola}/bin/zola"; + }; + }; + + packages = { + default = + with pkgs; + stdenv.mkDerivation { + pname = "fcuny.net"; + version = self.lastModifiedDate; + src = ./.; + buildInputs = [ + zola + git + ]; + buildPhase = '' + mkdir -p $out + ${pkgs.zola}/bin/zola build -o $out -f + ''; + dontInstall = true; + }; + zola = pkgs.writeShellScriptBin "zola" '' + set -euo pipefail + export PATH=${ + pkgs.lib.makeBinPath [ + pkgs.zola + pkgs.git + ] + } + zola serve + ''; + }; + checks = { pre-commit-check = pre-commit-hooks.lib.${system}.run { src = ./.; @@ -42,5 +85,6 @@ exiftool ]; }; - }); + } + ); } -- cgit v1.2.3