From 4ec7e84a880f6c01aab809317b510835f741e372 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Tue, 25 Mar 2025 19:22:20 +0100 Subject: [PATCH 01/12] add quarto --- flake.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/flake.nix b/flake.nix index f88949e..14be844 100644 --- a/flake.nix +++ b/flake.nix @@ -56,6 +56,7 @@ pkgs.git pkgs.gnumake pkgs.nixd + pkgs.quartoMinimal self'.formatter # keep-sorted end ]; @@ -101,6 +102,9 @@ }; }; flake = { + site = { + foo = "bar"; + }; schemas = inputs.flake-schemas.schemas; templates = rec { base = { From 6876acc403c91d5a01edce0696d1c45a89ab6bef Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Tue, 25 Mar 2025 21:28:55 +0100 Subject: [PATCH 02/12] add boilerplate quarto --- .gitignore | 2 ++ _quarto.yml | 15 +++++++++++++++ flake.nix | 17 ++++++++++++++--- index.qmd | 1 + 4 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 _quarto.yml create mode 100644 index.qmd diff --git a/.gitignore b/.gitignore index d53e06f..1be2cbd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ .direnv/ result +/.quarto/ +_site/ diff --git a/_quarto.yml b/_quarto.yml new file mode 100644 index 0000000..569dc79 --- /dev/null +++ b/_quarto.yml @@ -0,0 +1,15 @@ +project: + type: website + +website: + title: "nullkomma" + description: "Opinionated 🤓, batteries-included 🔋, extra-DRY 🤌 Nix boilerplate." + navbar: + left: + - href: index.qmd + text: Home + +format: + html: + theme: pulse + toc: true diff --git a/flake.nix b/flake.nix index 14be844..cc88347 100644 --- a/flake.nix +++ b/flake.nix @@ -61,6 +61,20 @@ # keep-sorted end ]; }; + packages = { + docs = pkgs.stdenv.mkDerivation { + name = "nullkomma-docs"; + src = ./.; + buildInputs = [ pkgs.quartoMinimal ]; + buildPhase = '' + quarto render + ''; + installPhase = '' + mkdir -p $out + cp -r _site/* $out + ''; + }; + }; treefmt = { programs = { # keep-sorted start @@ -102,9 +116,6 @@ }; }; flake = { - site = { - foo = "bar"; - }; schemas = inputs.flake-schemas.schemas; templates = rec { base = { diff --git a/index.qmd b/index.qmd new file mode 100644 index 0000000..257cc56 --- /dev/null +++ b/index.qmd @@ -0,0 +1 @@ +foo From a34b076f2346cb483bbfbc4e44c1f21166c230a7 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Tue, 25 Mar 2025 21:41:34 +0100 Subject: [PATCH 03/12] show readme opens #101 --- index.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.qmd b/index.qmd index 257cc56..4b68473 100644 --- a/index.qmd +++ b/index.qmd @@ -1 +1 @@ -foo +{{< include README.md >}} From ecb84ac812e008542584a7a7f32d5bb1a78d3033 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Tue, 25 Mar 2025 21:58:31 +0100 Subject: [PATCH 04/12] use simpler moving --- _quarto.yml | 2 -- flake.nix | 4 ++-- make/main.mk | 2 +- make/quarto.mk | 4 ++++ 4 files changed, 7 insertions(+), 5 deletions(-) create mode 100644 make/quarto.mk diff --git a/_quarto.yml b/_quarto.yml index 569dc79..1206970 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -1,6 +1,5 @@ project: type: website - website: title: "nullkomma" description: "Opinionated 🤓, batteries-included 🔋, extra-DRY 🤌 Nix boilerplate." @@ -8,7 +7,6 @@ website: left: - href: index.qmd text: Home - format: html: theme: pulse diff --git a/flake.nix b/flake.nix index cc88347..1fc3437 100644 --- a/flake.nix +++ b/flake.nix @@ -70,8 +70,8 @@ quarto render ''; installPhase = '' - mkdir -p $out - cp -r _site/* $out + mkdir $out + mv _site $out ''; }; }; diff --git a/make/main.mk b/make/main.mk index a840b74..3626321 100644 --- a/make/main.mk +++ b/make/main.mk @@ -5,7 +5,7 @@ .DEFAULT_GOAL := help ## Run all targets -all: check-flake +all: check-flake render all-check: check-nix diff --git a/make/quarto.mk b/make/quarto.mk new file mode 100644 index 0000000..e81d401 --- /dev/null +++ b/make/quarto.mk @@ -0,0 +1,4 @@ +.PHONY: render + +render: + quarto render From 7067231a82daad4af92693fa0255ff3c077fef29 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Tue, 25 Mar 2025 22:07:22 +0100 Subject: [PATCH 05/12] render without cache --- flake.nix | 2 +- make/quarto.mk | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 1fc3437..39c3ee5 100644 --- a/flake.nix +++ b/flake.nix @@ -67,7 +67,7 @@ src = ./.; buildInputs = [ pkgs.quartoMinimal ]; buildPhase = '' - quarto render + make render-no-cache ''; installPhase = '' mkdir $out diff --git a/make/quarto.mk b/make/quarto.mk index e81d401..38cfca8 100644 --- a/make/quarto.mk +++ b/make/quarto.mk @@ -2,3 +2,6 @@ render: quarto render + +render-no-cache: + quarto render --no-cache From ef35aeb24d4a7f712dc6f2831e0a28fd7fcaa592 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Wed, 26 Mar 2025 00:01:01 +0100 Subject: [PATCH 06/12] add temp home --- flake.nix | 6 +++++- make/quarto.mk | 3 --- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index 39c3ee5..81d19fc 100644 --- a/flake.nix +++ b/flake.nix @@ -66,8 +66,12 @@ name = "nullkomma-docs"; src = ./.; buildInputs = [ pkgs.quartoMinimal ]; + HOME = "$TMPDIR"; + configurePhase = '' + export HOME=$(mktemp -d) + ''; buildPhase = '' - make render-no-cache + make render ''; installPhase = '' mkdir $out diff --git a/make/quarto.mk b/make/quarto.mk index 38cfca8..e81d401 100644 --- a/make/quarto.mk +++ b/make/quarto.mk @@ -2,6 +2,3 @@ render: quarto render - -render-no-cache: - quarto render --no-cache From 7e80908aba4c1665282d9ca8651730c3e47742fb Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Wed, 26 Mar 2025 00:08:52 +0100 Subject: [PATCH 07/12] add which opens #107 --- flake.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 81d19fc..6f43f9c 100644 --- a/flake.nix +++ b/flake.nix @@ -65,7 +65,10 @@ docs = pkgs.stdenv.mkDerivation { name = "nullkomma-docs"; src = ./.; - buildInputs = [ pkgs.quartoMinimal ]; + buildInputs = [ + pkgs.quartoMinimal + pkgs.which + ]; HOME = "$TMPDIR"; configurePhase = '' export HOME=$(mktemp -d) From 5ccf112563beb8a186ee36aca2bb672b451a3733 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Wed, 26 Mar 2025 00:08:52 +0100 Subject: [PATCH 08/12] add which opens #107 --- flake.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 81d19fc..4f30344 100644 --- a/flake.nix +++ b/flake.nix @@ -65,7 +65,10 @@ docs = pkgs.stdenv.mkDerivation { name = "nullkomma-docs"; src = ./.; - buildInputs = [ pkgs.quartoMinimal ]; + buildInputs = [ + pkgs.quartoMinimal + pkgs.which + ]; HOME = "$TMPDIR"; configurePhase = '' export HOME=$(mktemp -d) From 048e482db9d099a6980d15d859185a96c2839a29 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Wed, 26 Mar 2025 00:51:23 +0100 Subject: [PATCH 09/12] get nix diagnostics --- .github/workflows/debug.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 .github/workflows/debug.yml diff --git a/.github/workflows/debug.yml b/.github/workflows/debug.yml new file mode 100644 index 0000000..48691d1 --- /dev/null +++ b/.github/workflows/debug.yml @@ -0,0 +1,12 @@ +on: + pull_request: + push: + +jobs: + lints: + name: Build + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: DeterminateSystems/nix-installer-action@main + - run: nix-shell -p nix-info --run "nix-info -m" From 10c74cc96fdd05525f986f952ef00f1a906ecc89 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Wed, 26 Mar 2025 15:11:26 +0100 Subject: [PATCH 10/12] use standard hook closes #106 --- flake.nix | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index 4f30344..86775e0 100644 --- a/flake.nix +++ b/flake.nix @@ -65,14 +65,13 @@ docs = pkgs.stdenv.mkDerivation { name = "nullkomma-docs"; src = ./.; + nativeBuildInputs = [ + pkgs.stdenv.writableTmpDirAsHomeHook + ]; buildInputs = [ pkgs.quartoMinimal pkgs.which ]; - HOME = "$TMPDIR"; - configurePhase = '' - export HOME=$(mktemp -d) - ''; buildPhase = '' make render ''; From 1d080f5a39650f35d67b95a3e0baf743755a56d8 Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Wed, 26 Mar 2025 15:41:05 +0100 Subject: [PATCH 11/12] fix syntax --- .github/workflows/debug.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/debug.yml b/.github/workflows/debug.yml index 48691d1..649c255 100644 --- a/.github/workflows/debug.yml +++ b/.github/workflows/debug.yml @@ -1,7 +1,6 @@ on: pull_request: push: - jobs: lints: name: Build From 181743e6173180b28c4c15fcb995a5d2dbe229fc Mon Sep 17 00:00:00 2001 From: Maximilian Held Date: Wed, 26 Mar 2025 15:41:11 +0100 Subject: [PATCH 12/12] fix path --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 86775e0..0e37f48 100644 --- a/flake.nix +++ b/flake.nix @@ -66,7 +66,7 @@ name = "nullkomma-docs"; src = ./.; nativeBuildInputs = [ - pkgs.stdenv.writableTmpDirAsHomeHook + pkgs.writableTmpDirAsHomeHook ]; buildInputs = [ pkgs.quartoMinimal