dwinkler1.github.io/flake.nix
2025-09-08 12:09:24 +10:00

52 lines
1.1 KiB
Nix

{
description = "Quarto website build";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
};
outputs = {
self,
nixpkgs,
}: let
systems = ["x86_64-linux" "aarch64-linux" "aarch64-darwin"];
forAllSystems = f:
builtins.listToAttrs (map (system: {
name = system;
value = f (builtins.getAttr system nixpkgs.legacyPackages);
})
systems);
reqPkgs = pkgs: [pkgs.quarto];
in {
packages = forAllSystems (
pkgs: let
website = pkgs.stdenv.mkDerivation {
name = "personal-website";
src = ./.;
buildInputs = reqPkgs pkgs;
buildPhase = ''
mkdir home
export HOME=$PWD/home
quarto render
'';
installPhase = ''
mkdir -p $out
cp -r build/* $out/
'';
};
in {
default = website;
}
);
devShells = forAllSystems (
pkgs: {
default = pkgs.mkShell {
buildInputs = reqPkgs pkgs;
};
}
);
};
}