From f4a280dc6a869c540975b697f614c5172007d7a2 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Mon, 13 May 2024 15:47:09 -0400 Subject: nix flake and envrc related --- org/config_env.org | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 74 insertions(+), 6 deletions(-) (limited to 'org/config_env.org') diff --git a/org/config_env.org b/org/config_env.org index 403d6b5..a482da8 100644 --- a/org/config_env.org +++ b/org/config_env.org @@ -4,7 +4,7 @@ #+FILETAGS: :spine:build:tools: #+AUTHOR: Ralph Amissah #+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]] -#+COPYRIGHT: Copyright (C) 2015 - 2023 Ralph Amissah +#+COPYRIGHT: Copyright (C) 2015 - 2024 Ralph Amissah #+LANGUAGE: en #+STARTUP: content hideblocks hidestars noindent entitiespretty #+PROPERTY: header-args :exports code @@ -76,7 +76,8 @@ echo ' ❯❯ nix flake show ❯❯ nix flake update && nix flake check && nix flake show -- for a dev shell: +- for a dev shell (development environment): + ❯❯ nix develop ❯❯ nix develop ".#" --print-build-logs -c zsh ❯❯ nix develop ".#dsh" --print-build-logs -c zsh @@ -89,18 +90,36 @@ echo ' ❯❯ nix develop ".#dsh-sqlite" --print-build-logs -c zsh - to build project: + ❯❯ nix build --print-build-logs ❯❯ nix build ".#" --print-build-logs + +- to build project: ❯❯ nix build ".#spine-nixpkgs-dmd" --print-build-logs ❯❯ nix build ".#spine-overlay-dmd" --print-build-logs ❯❯ nix build ".#spine-nixpkgs-ldc" --print-build-logs ❯❯ nix build ".#spine-overlay-ldc" --print-build-logs - - (see nix other/additional build options): - ❯❯ nix flake show - ❯❯ nix flake update && nix flake check --show-trace && nix flake show && nix develop ".#devShell" -c zsh - ❯❯ dub build --compiler=ldmd --build=release --combined --skip-registry=all +- to build using dub (on nix or otherwise): + + you need to be in sisudoc-spine to use source code tree directly. + +- for develop environment & build options + + ❯❯ nix flake update && nix flake check && nix flake show + ❯❯ nix flake show + +- if on nix: build the sisudoc-spine using nix build commands above and + run the result against the sample files here in the sisudoc-spine-samples dir + (assuming the appropriate paths have been set in your .envrc-local) + + ❯❯ ${SpineBIN} -v --source --pod --epub --html --html-link-curate --html-link-markup --curate --output=${SpineOUT} ${SpinePOD}/* + ❯❯ ${SpineBIN} -v --source --pod --latex --latex-init --epub --html --html-link-pdf --html-link-curate --html-link-markup --curate --output=${SpineOUT} ${SpinePOD}/* ' +echo "- + ❯❯ ${SpineBIN} -v --source --pod --epub --html --html-link-curate --html-link-markup --curate --output=${SpineOUT} ${SpinePOD}/* + ❯❯ ${SpineBIN} -v --source --pod --latex --latex-init --epub --html --html-link-pdf --html-link-curate --html-link-markup --curate --output=${SpineOUT} ${SpinePOD}/* +" #+END_SRC *** 3.0.4 @@ -153,3 +172,52 @@ sha256-0000000000000000000000000000000000000000000= NixDirEnvSHA="sha256-0000000000000000000000000000000000000000000=" direnv fetchurl https://raw.githubusercontent.com/nix-community/nix-direnv/${NixDirEnvVersion}/direnvrc #+END_SRC + +** .envrc-git-init + +#+HEADER: :tangle ../.envrc-git-init +#+HEADER: :noweb yes +#+BEGIN_SRC sh +if [[ ! -d ./.git ]]; then + git init + git add . +fi +#+END_SRC + +** .envrc-local CHECK MODIFY + +- bespoke modify appropriately and generate if needed + +#+HEADER: :tangle ../.envrc-local_ +#+HEADER: :noweb yes +#+BEGIN_SRC sh +export SpineBIN=./result/bin/spine +# ❯❯ nix builds spine binary: +#export SpineBIN=./result/bin/spine +# ❯❯ if from ../sisudoc-spine on directory tree nix build +#export SpineBIN=../sisudoc-spine/result/bin/spine +# ❯❯ dub builds spine binary (name depends on build, check): +#export SpineBIN=../sisudoc-spine/bin/spine +#export SpineBIN=../sisudoc-spine/bin/spine-ldc +#export SpineBIN=../sisudoc-spine/bin/spine-dmd +# ❯❯ location of source files: +export SpineDOC=. +# ❯❯ location of source files pod: +export SpinePOD=${SpineDOC}/markup/pod +# ❯❯ sisudoc-spine output processing path: +export SpineOUT=./OUTPUT_TEST_sisudocSpine +# ❯❯ sisudoc-spine output processing path (web server e.g.): +#export SpineOUT=/srv/www/spine +# ❯❯ path configured for cgi search form: +export SpineSearchActionLocal='http://localhost/spine_search' +export SpineSearchActionRemote='https://sisudoc.org/spine_search' +# ❯❯ cgi search form name: +export SpineCGIform='spine_search' +# ❯❯ search form db name: +export SpineSQLdb='spine.search.db' +# ❯❯ configuration cgi search form path: +export SpineCGIbin=/var/www/cgi/cgi-bin +# ❯❯ configuration db path: +export SpineDBpath=/var/www/sqlite +#export SpineDBpath=/srv/www/spine/sqlite +#+END_SRC -- cgit v1.2.3