aboutsummaryrefslogtreecommitdiffhomepage
path: root/org
diff options
context:
space:
mode:
Diffstat (limited to 'org')
-rw-r--r--org/config_env.org79
-rw-r--r--org/config_git.org180
-rw-r--r--org/config_make.org12
-rw-r--r--org/config_nix.org98
-rw-r--r--org/nix-develop-dlang-shared.org227
-rw-r--r--org/sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org6
-rw-r--r--org/spine-bespoke-output-homepage-html.org2
-rw-r--r--org/spine_info.org4
8 files changed, 371 insertions, 237 deletions
diff --git a/org/config_env.org b/org/config_env.org
index 33b3cf0..d1c0f3c 100644
--- a/org/config_env.org
+++ b/org/config_env.org
@@ -4,12 +4,12 @@
#+FILETAGS: :spine:build:tools:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
-#+COPYRIGHT: Copyright (C) 2015 - 2024 Ralph Amissah
+#+COPYRIGHT: Copyright (C) 2015 - 2025 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: content hideblocks hidestars noindent entitiespretty
#+PROPERTY: header-args :exports code
#+PROPERTY: header-args+ :noweb yes
-#+PROPERTY: header-args+ :results no
+#+PROPERTY: header-args+ :results output none
#+PROPERTY: header-args+ :cache no
#+PROPERTY: header-args+ :padline no
#+PROPERTY: header-args+ :mkdirp yes
@@ -33,12 +33,15 @@ fi
#+NAME: envrc
#+HEADER: :tangle ../.envrc
+#+HEADER: :shebang "# -*- mode: sh -*-"
#+BEGIN_SRC shell
if [ -f .envrc-git-init ]; then
source_env_if_exists .envrc-git-init || source .envrc-git-init
fi
if [ -f .envrc-local ]; then
source_env_if_exists .envrc-local || source .envrc-local
+elif [ -f .envrc-local_ ]; then
+ source_env_if_exists .envrc-local_ || source .envrc-local_
fi
if [ -f .envrc-nix ]; then
source_env_if_exists .envrc-nix || source .envrc-nix
@@ -49,10 +52,11 @@ fi
- https://github.com/nix-community/nix-direnv
- source_url
- - direnv fetchurl "https://raw.githubusercontent.com/nix-community/nix-direnv/<<direnv_version>>/direnvrc" "<<direnv_hash>>"
+ - direnv fetchurl "https://raw.githubusercontent.com/nix-community/nix-direnv/<<direnv-version>>/direnvrc" "<<direnv_hash>>"
- ${NixDirEnvVersion}
#+HEADER: :tangle ../.envrc-nix
+#+HEADER: :shebang "# -*- mode: nix -*-"
#+BEGIN_SRC shell
NIX_ENFORCE_PURITY=1
# - https://github.com/nix-community/nix-direnv
@@ -79,29 +83,32 @@ echo '
• for a dev shell (development environment):
• nix develop
❯❯ nix develop ".#" --print-build-logs -c zsh
- • nix develop using nixpkgs
+ • nix develop some specialized shells (tools)
❯❯ nix develop ".#dsh-epub" --print-build-logs -c zsh
❯❯ nix develop ".#dsh-html" --print-build-logs -c zsh
❯❯ nix develop ".#dsh-i18n" --print-build-logs -c zsh
❯❯ nix develop ".#dsh-latex-pdf" --print-build-logs -c zsh
❯❯ nix develop ".#dsh-spine" --print-build-logs -c zsh
❯❯ nix develop ".#dsh-sqlite" --print-build-logs -c zsh
- • nix develop using package overlays: (dmd-<<dmd_version>>, ldc-<<ldc_version>>, dub-<<dub_version>>)
- ❯❯ nix develop ".#dsh" --print-build-logs -c zsh
+ • nix develop using nixpkgs
+ ❯❯ nix develop ".#dsh-nixpkgs-dmd" --print-build-logs -c zsh
+ ❯❯ nix develop ".#dsh-nixpkgs-ldc" --print-build-logs -c zsh
+ • nix develop using package overlays: (dmd-<<dmd_version>>, ldc-<<ldc_version>>, dub-<<dub_version>>, dtools-<<dtools_version>>)
❯❯ nix develop ".#dsh-overlay-dmd" --print-build-logs -c zsh
❯❯ nix develop ".#dsh-overlay-ldc" --print-build-logs -c zsh
- ❯❯ nix flake show
+ • for more nix develop build spine & generate markup
+ ❯❯ nix develop ".#dsh-build-spine-generate-samples-env-defaults" --print-build-logs -c zsh
+ ❯❯ nix develop ".#dsh-build-spine-generate-samples-test" --print-build-logs -c zsh
+ • for more nix develop specialized shells
+ ❯❯ nix flake show
• to build project:
-
- ❯❯ nix build --print-build-logs
- ❯❯ nix build ".#" --print-build-logs
-
-• to build project:
- • nix build using nixpkgs
+ • nix flake set default
+ ❯❯ nix build --print-build-logs
+ ❯❯ nix build ".#" --print-build-logs
❯❯ nix build ".#spine-nixpkgs-dmd" --print-build-logs
❯❯ nix build ".#spine-nixpkgs-ldc" --print-build-logs
- • nix build using package overlays: (dmd-<<dmd_version>>, ldc-<<ldc_version>>, dub-<<dub_version>>)
+ • nix build using package overlays: (dmd, ldc, dub, dtools)
❯❯ nix build ".#spine-overlay-dmd" --print-build-logs
❯❯ nix build ".#spine-overlay-ldc" --print-build-logs
@@ -120,16 +127,25 @@ 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}/*
+
+ ❯❯ ${SpineBIN} -v --sqlite-db-create --sqlite-db-filename=${SpineSQLdb} --sqlite-db-path=./_tmp-db
+ ❯❯ ${SpineBIN} -v --sqlite-update --sqlite-db-filename=${SpineSQLdb} --sqlite-db-path=./_tmp-db ${SpinePOD}/*
'
+#+END_SRC
+
+#+BEGIN_SRC shell
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}/*
+ ❯❯ spine --very-verbose --sqlite-db-create --sqlite-db-filename=spine.search.db --sqlite-db-path=./_tmp-db
+ ❯❯ spine -v --html --epub --latex --sqlite-update --sqlite-db-filename=spine.search.db --sqlite-db-path=./tmp-db ./markup/pod-samples/pod/*
"
#+END_SRC
** .envrc-git-init
#+HEADER: :tangle ../.envrc-git-init
+#+HEADER: :shebang "# -*- mode: sh -*-"
#+HEADER: :noweb yes
#+BEGIN_SRC shell
if [[ ! -d ./.git ]]; then
@@ -143,21 +159,20 @@ fi
- bespoke modify appropriately and generate if needed
#+HEADER: :tangle ../.envrc-local_
+#+HEADER: :shebang "# -*- mode: sh -*-"
#+HEADER: :noweb yes
#+BEGIN_SRC shell
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
+# ❯❯ dub builds spine binary (name depends on build, check, not available here):
+#export SpineBIN=./bin/spine
+#export SpineBIN=./bin/spine-ldc
+#export SpineBIN=./bin/spine-dmd
# ❯❯ location of source files:
export SpineDOC=.
# ❯❯ location of source files pod:
-export SpinePOD=${SpineDOC}/markup/pod
+export SpinePOD=${SpineDOC}/markup/pod-samples/pod
# ❯❯ sisudoc-spine output processing path:
export SpineOUT=./OUTPUT_TEST_sisudocSpine
# ❯❯ sisudoc-spine output processing path (web server e.g.):
@@ -176,7 +191,7 @@ export SpineDBpath=/var/www/sqlite
#export SpineDBpath=/srv/www/spine/sqlite
#+END_SRC
-* SHARED versions
+* org includes - versions GET
** direnv
#+NAME: direnv_version
@@ -191,15 +206,13 @@ export SpineDBpath=/var/www/sqlite
<<./nix-develop-dlang-shared.org:direnv-hash()>>
#+END_SRC
-** spine project VERSION :version:set:project:
+** dlang overlays
-#+NAME: spine_version
-#+HEADER: :noweb yes
-#+BEGIN_SRC emacs-lisp
-<<./sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org:spine_project_version()>>
-#+END_SRC
+- does not make sense to update versions here, unless you carry on careful
+ syncing with provided dlang related overlays ... which should not be
+ necessary, so they are available here but have been taken out of use;
+ the latest available overlay is pulled
-** dlang overlays
*** ldc
#+NAME: ldc_version
@@ -232,4 +245,12 @@ export SpineDBpath=/var/www/sqlite
<<./nix-develop-dlang-shared.org:dtools-version()>>
#+END_SRC
+** spine project VERSION :version:set:project:
+
+#+NAME: spine_version
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org:spine_project_version()>>
+#+END_SRC
+
* __END__
diff --git a/org/config_git.org b/org/config_git.org
index 9622e4e..a57f9d3 100644
--- a/org/config_git.org
+++ b/org/config_git.org
@@ -4,7 +4,7 @@
#+FILETAGS: :spine:hub:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
-#+COPYRIGHT: Copyright (C) 2015 - 2024 Ralph Amissah
+#+COPYRIGHT: Copyright (C) 2015 - 2025 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: content hideblocks hidestars noindent entitiespretty
#+PROPERTY: header-args :exports code
@@ -19,7 +19,7 @@
** .gitignore :gitignore:
#+HEADER: :tangle "../.gitignore"
-#+BEGIN_SRC sh
+#+BEGIN_SRC gitignore
# git ls-files --others --exclude-from=.git/info/exclude
# git check-ignore -v flake.lock
# git clean -ix
@@ -33,13 +33,10 @@
!flake.lock
!nixDevEnv.sh
!.envrc
-!.envrc-local
!.envrc-nix
!.envrc-git-init
-!.env
-!.env/**
-!README
!README.md
+!README
!COPYRIGHT
!CHANGELOG
!makefile
@@ -47,6 +44,8 @@
!configuration.txt
!*.json
!*.sdl
+!*.md
+!*.txt
!tangle
!*.org
!org
@@ -54,35 +53,45 @@
!.dr
!.dr/*
!markup/
-!markup/pod/
-!markup/pod/*/
-!markup/pod/*/pod.manifest
-!markup/pod/*/conf/
-!markup/pod/*/conf/document_make
-!markup/pod/*/media/
-!markup/pod/*/media/text/
-!markup/pod/*/media/text/*/
-!markup/pod/*/media/text/*/*.sst
-!markup/pod/*/media/text/*/*.ssm
-!markup/pod/*/media/text/*/*.ssi
-!markup/pod/*/media/image/
-!markup/pod/*/media/image/*.png
-!markup/pod/*/media/image/*.jpg
-!markup/pod/*/media/image/*.PNG
-!markup/pod/*/media/image/*.JPG
-!markup/pod/*/tools/
-!markup/pod/*/tools/po4a/
-!markup/pod/*/tools/po4a/pot/
-!markup/pod/*/tools/po4a/pot/*.sst.pot
-!markup/pod/*/tools/po4a/pot/*.ssm.pot
-!markup/pod/*/tools/po4a/pot/*.ssi.pot
-!markup/pod/*/tools/po4a/po/
-!markup/pod/*/tools/po4a/po/*/
-!markup/pod/*/tools/po4a/po/*/*.sst.po
-!markup/pod/*/tools/po4a/po/*/*.ssm.po
-!markup/pod/*/tools/po4a/po/*/*.ssi.po
-!markup/pod/.dr
-!markup/pod/.dr/*
+!markup/*
+#!markup/**
+!markup/pod-samples/
+!markup/pod-samples/pod/
+!markup/pod-samples/pod/*/
+!markup/pod-samples/pod/*/pod.manifest
+!markup/pod-samples/pod/*/conf/
+!markup/pod-samples/pod/*/conf/document_make
+!markup/pod-samples/pod/*/media/
+!markup/pod-samples/pod/*/media/text/
+!markup/pod-samples/pod/*/media/text/*/
+!markup/pod-samples/pod/*/media/text/*/*.sst
+!markup/pod-samples/pod/*/media/text/*/*.ssm
+!markup/pod-samples/pod/*/media/text/*/*.ssi
+!markup/pod-samples/pod/*/media/text/_sisu/
+!markup/pod-samples/pod/*/media/text/_sisu/**
+!markup/pod-samples/pod/*/media/image/
+!markup/pod-samples/pod/*/media/image/*.png
+!markup/pod-samples/pod/*/media/image/*.jpg
+!markup/pod-samples/pod/*/media/image/*.PNG
+!markup/pod-samples/pod/*/media/image/*.JPG
+!markup/pod-samples/pod/*/tools/
+!markup/pod-samples/pod/*/tools/bin/
+!markup/pod-samples/pod/*/tools/bin/*.sh
+!markup/pod-samples/pod/*/tools/po4a/
+!markup/pod-samples/pod/*/tools/po4a/Makefile
+!markup/pod-samples/pod/*/tools/po4a/pot/
+!markup/pod-samples/pod/*/tools/po4a/pot/*.sst.pot
+!markup/pod-samples/pod/*/tools/po4a/pot/*.ssm.pot
+!markup/pod-samples/pod/*/tools/po4a/pot/*.ssi.pot
+!markup/pod-samples/pod/*/tools/po4a/pot/index.html.in.pot
+!markup/pod-samples/pod/*/tools/po4a/po/
+!markup/pod-samples/pod/*/tools/po4a/po/*/
+!markup/pod-samples/pod/*/tools/po4a/po/*/*.sst.po
+!markup/pod-samples/pod/*/tools/po4a/po/*/*.ssm.po
+!markup/pod-samples/pod/*/tools/po4a/po/*/*.ssi.po
+!markup/pod-samples/pod/*/tools/po4a/po/*/index.html.in.po
+!markup/pod-samples/pod/.dr
+!markup/pod-samples/pod/.dr/*
!markup/non-pod-samples/
!markup/non-pod-samples/*.sst
!markup/non-pod-samples/image/
@@ -96,119 +105,28 @@
,**/.dub/**
tmp/**
,*_.org
+,*_.md
+,*_.txt
+,*_.json
,*_.nix
,*_.d
,*_.txt
,*_
-!.envrc-local_
,*.swp
,*~
\#*
,*.\#*
+!.envrc-local_
#!*/
#\#*
#*.\#*
#.reggae/**
#+END_SRC
-** markup/.gitignore (redundant) :gitignore:
-
-#+HEADER: :tangle "../markup/.gitignore"
-#+BEGIN_SRC sh
-# git ls-files --others --exclude-from=.git/info/exclude
-# git check-ignore -v flake.lock
-# git clean -ix
-# find . -name "*_" | xargs rm -rf
-# find . -name "*.o" | xargs rm -rf
-,*
-!.gitignore
-!COPYRIGHT
-!README
-!README.md
-!shell.nix
-!packages.nix
-!version.txt
-!pod/
-!pod/.dr/config_local_site
-# pod.manifest
-!pod/*/
-!pod/*/pod.manifest
-# conf/document_make
-!pod/*/conf/
-!pod/*/conf/document_make
-# media/text
-!pod/*/media/
-!pod/*/media/text/
-!pod/*/media/text/*/
-!pod/*/media/text/*/*.sst
-!pod/*/media/text/*/*.ssm
-!pod/*/media/text/*/*.ssi
-!pod/*/media/text/*/index.html.in
-# media/image
-!pod/*/media/image/
-!pod/*/media/image/*.png
-!pod/*/media/image/*.jpg
-!pod/*/media/image/*.PNG
-!pod/*/media/image/*.JPG
-# tools/po4a
-!pod/*/tools/
-!pod/*/tools/Makefile
-!pod/*/tools/bin/
-!pod/*/tools/bin/*.sh
-!pod/*/tools/po4a/
-!pod/*/tools/po4a/pot/
-!pod/*/tools/po4a/pot/*.sst.pot
-!pod/*/tools/po4a/pot/*.ssm.pot
-!pod/*/tools/po4a/pot/*.ssi.pot
-!pod/*/tools/po4a/pot/index.html.in.pot
-!pod/*/tools/po4a/po/
-!pod/*/tools/po4a/po/*/
-!pod/*/tools/po4a/po/*/*.sst.po
-!pod/*/tools/po4a/po/*/*.ssm.po
-!pod/*/tools/po4a/po/*/*.ssi.po
-!pod/*/tools/po4a/po/*/index.html.in.po
-!pod/.dr
-!pod/.dr/*
-# separate from media/text use tools
-!pod/*/media/text/Makefile
-!pod/*/media/text/bin/
-!pod/*/media/text/bin/*.sh
-!pod/*/media/text/pot/
-!pod/*/media/text/pot/*.sst.pot
-!pod/*/media/text/pot/*.ssm.pot
-!pod/*/media/text/pot/*.ssi.pot
-!pod/*/media/text/pot/index.html.in.pot
-!pod/*/media/text/po/
-!pod/*/media/text/po/*/
-!pod/*/media/text/po/*/*.sst.po
-!pod/*/media/text/po/*/*.ssm.po
-!pod/*/media/text/po/*/*.ssi.po
-!pod/*/media/text/po/*/index.html.in.po
-!non-pod-samples/
-!non-pod-samples/*.sst
-!non-pod-samples/image/
-!non-pod-samples/image/*.png
-!non-pod-samples/image/*.jpg
-!non-pod-samples/image/*.PNG
-!non-pod-samples/image/*.JPG
-!sisudoc-spine-bespoke-output/
-!sisudoc-spine-bespoke-output/**
-# skip
-.dub/**
-tmp/**
-,*_.org
-,*_.d
-,*_.txt
-,*_
-,*~
-\#*
-,*.\#*
-#+END_SRC
-
** .gitattributes :gitattributes:
#+HEADER: :tangle "../.gitattributes"
-#+BEGIN_SRC sh
+#+BEGIN_SRC gitattributes
/org export-ignore
.gitattributes export-ignore
/.dub export-ignore
diff --git a/org/config_make.org b/org/config_make.org
index d68585c..4af977c 100644
--- a/org/config_make.org
+++ b/org/config_make.org
@@ -56,7 +56,7 @@ $(SiSU_MARKUP_SAMPLES_FIND_PODS) | xargs
Date := `date "+%Y%m%d"`
#SpineBIN := $(SpineBIN) # './result/bin'
#SpineOUT := $(SpineOUT) # '/srv/www/spine'
-#SpinePOD := $(SpinePOD) # 'markup/pod'
+#SpinePOD := $(SpinePOD) # 'markup/pod-samples/pod'
#SpineSearchActionLocal := $(SpineSearchActionLocal) # 'http://localhost/spine_search'
#SpineSearchActionRemote := $(SpineSearchActionRemote) # 'https://sisudoc.org/spine_search'
#SpineCGIform := $(SpineCGIform) # 'spine_search'
@@ -633,28 +633,28 @@ testrun_paths:
testrun_paths_pod_source:
spine -v --source \
--output-dir=tmp/program_output_pod \
- ./markup/pod/*
+ ./markup/pod-samples/pod/*
testrun_paths_pod_pod:
spine -v --pod \
--output-dir=tmp/program_output_pod \
- ./markup/pod/*
+ ./markup/pod-samples/pod/*
testrun_paths_pod_html:
spine -v --html \
--output-dir=tmp/program_output_pod \
- ./markup/pod/*
+ ./markup/pod-samples/pod/*
testrun_paths_pod_epub:
spine -v --epub \
--output-dir=tmp/program_output_pod \
- ./markup/pod/*
+ ./markup/pod-samples/pod/*
testrun_paths_pod_all:
spine -v --source --html --epub --sqlite-discrete \
--sqlite-create --sqlite-update \
--output-dir=tmp/program_output_pod \
- ./markup/pod/*
+ ./markup/pod-samples/pod/*
testrun_find_dir_source:
$(SiSU_MARKUP_SAMPLES_DIR_FILES_FOUND) \
diff --git a/org/config_nix.org b/org/config_nix.org
index 651d310..47074e4 100644
--- a/org/config_nix.org
+++ b/org/config_nix.org
@@ -26,13 +26,12 @@
{
description = "spine (sisu like parser & document generator) made available to process markup samples";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
- #inputs.flake-utils.url = "github:numtide/flake-utils";
inputs.spine = {
url = "<<sisudoc_spine_nix_src>>";
inputs.nixpkgs.follows = "nixpkgs";
flake = true;
};
- inputs.sisudoc-d-overlay = {
+ inputs.d-overlay = {
url = "<<sisudoc_dlang_nix_overlay_src>>";
inputs.nixpkgs.follows = "nixpkgs";
flake = true;
@@ -40,11 +39,10 @@
outputs = {
self,
nixpkgs,
- #flake-utils,
spine,
- sisudoc-d-overlay,
+ d-overlay,
...
- }@inputs: let
+ } @ inputs: let
version = "<<spine_version>>";
shell = ./shell.nix;
devEnv = ./nixDevEnv.sh;
@@ -57,8 +55,8 @@
in {
default = spine.packages.${system}.default;
spine-nixpkgs-dmd = spine.packages.${system}.spine-nixpkgs-dmd;
- spine-nixpkgs-ldc = spine.packages.${system}.spine-nixpkgs-ldc;
spine-overlay-dmd = spine.packages.${system}.spine-overlay-dmd;
+ spine-nixpkgs-ldc = spine.packages.${system}.spine-nixpkgs-ldc;
spine-overlay-ldc = spine.packages.${system}.spine-overlay-ldc;
#vendorSha256 = "sha256-0Q00000000000000000000000000000000000000000=";
});
@@ -71,9 +69,9 @@
devShells = forAllSystems (system: let
pkgs = nixpkgsFor.${system};
shellHook = ''
+ export DFLAGS="-O2 -boundscheck=on"
export Date=`date "+%Y%m%d"`
## set local values in .envrc-local (or here if you must)
- echo " ❯❯ ./result/bin/spine -v --source --pod --epub --html --html-link-pdf --html-link-curate --html-link-markup --curate --output=./OUTPUT_TEST_sisudocSpine ./markup/pod/*";
'';
in
with pkgs; {
@@ -91,10 +89,10 @@
inherit shellHook;
};
dsh-spine = spine.devShells.${system}.default;
- dsh-overlay-dmd = sisudoc-d-overlay.devShells.${system}.dsh-overlay-dmd-dub;
- dsh-nixpkgs-dmd = sisudoc-d-overlay.devShells.${system}.dsh-nixpkgs-dmd-dub;
- dsh-overlay-ldc = sisudoc-d-overlay.devShells.${system}.dsh-overlay-ldc-dub;
- dsh-nixpkgs-ldc = sisudoc-d-overlay.devShells.${system}.dsh-nixpkgs-ldc-dub;
+ dsh-overlay-dmd = d-overlay.devShells.${system}.dsh-overlay-dmd-dub;
+ dsh-nixpkgs-dmd = d-overlay.devShells.${system}.dsh-nixpkgs-dmd-dub;
+ dsh-overlay-ldc = d-overlay.devShells.${system}.dsh-overlay-ldc-dub;
+ dsh-nixpkgs-ldc = d-overlay.devShells.${system}.dsh-nixpkgs-ldc-dub;
dsh-epub = mkShell {
name = "spine-<<spine_version>> dev shell for epub output";
inherit shell;
@@ -108,8 +106,6 @@
libxml2
html-tidy
xmlstarlet
- epubcheck
- ebook_tools
libxml2
html-tidy
xmlstarlet
@@ -186,6 +182,46 @@
];
inherit shellHook;
};
+ dsh-build-spine-generate-samples-env-defaults = mkShell {
+ name = "spine-<<spine_version>> dev shell test build spine and generate samples env defaults";
+ inherit shell;
+ inherit devEnv;
+ packages = [
+ nix
+ sqlite
+ #chromium
+ #calibre #(suite includes: ebook-viewer)
+ ];
+ shellHook = ''
+ export DFLAGS="-O2 -boundscheck=on"
+ ## set local values in .envrc-local (or here if you must)
+ nix build ".#spine-overlay-ldc" --print-build-logs
+ #$SpineBIN -v --source --pod --epub --html --html-link-curate --html-link-markup --curate --output=$SpineOUT $SpinePOD/*
+ $SpineBIN --very-verbose --sqlite-db-recreate --sqlite-db-filename=$SpineSQLdb --sqlite-db-path=./_tmp-db
+ $SpineBIN --very-verbose --source --pod --epub --html --html-link-curate --html-link-markup --sqlite-update --sqlite-db-filename=$SpineSQLdb --sqlite-db-path=./_tmp-db --curate --output=$SpineOUT $SpinePOD/*
+ echo "./result/bin/spine -v --source --pod --epub --html --html-link-curate --html-link-markup --curate --output=$SpineOUT $SpinePOD/*"
+ '';
+ };
+ dsh-build-spine-generate-samples-test = mkShell {
+ name = "spine-<<spine_version>> dev shell test build spine and generate samples test";
+ inherit shell;
+ inherit devEnv;
+ packages = [
+ nix
+ sqlite
+ #chromium
+ #calibre #(suite includes: ebook-viewer)
+ ];
+ shellHook = ''
+ export DFLAGS="-O2 -boundscheck=on"
+ ## set local values in .envrc-local (or here if you must)
+ nix build ".#spine-overlay-ldc" --print-build-logs
+ #./result/bin/spine -v --source --pod --epub --html --html-link-curate --html-link-markup --curate --output=./OUTPUT_TEST_sisudocSpine ./markup/pod-samples/pod/*
+ ./result/bin/spine --very-verbose --sqlite-db-recreate --sqlite-db-filename=spine.search.db --sqlite-db-path=./_tmp-db
+ ./result/bin/spine --very-verbose --source --pod --epub --html --html-link-curate --html-link-markup --sqlite-update --sqlite-db-filename=spine.search.db --sqlite-db-path=./_tmp-db --curate --output=./OUTPUT_TEST_sisudocSpine ./markup/pod-samples/pod/*
+ echo "./result/bin/spine -v --source --pod --epub --html --html-link-curate --html-link-markup --curate --output=./OUTPUT_TEST_sisudocSpine ./markup/pod-samples/pod/*"
+ '';
+ };
default = import ./shell.nix {inherit pkgs;};
});
};
@@ -212,7 +248,7 @@ with pkgs;
nix-output-monitor
#nix-tree
#jq
- #alejandra
+ #nixfmt-rfc-style
#git
# ❯❯❯ dev
#gnumake
@@ -221,14 +257,17 @@ with pkgs;
# ❯❯ package manager
#dub
# ❯❯ compiler
+ #dmd
#ldc
- ##rund
+ #rund
# ❯❯ linker
- ##lld
- ##mold
+ #lld
+ #mold
# ❯❯ builder
- ##ninja
- ##meson
+ #ninja
+ #meson
+ # ❯❯ tools
+ #dtools
# ❯❯❯ sqlite search related
#sqlite
# ❯❯❯ pdf_latex_related
@@ -265,7 +304,8 @@ with pkgs;
pkgs.callPackage ./devenv.nix {}
#+END_SRC
-** devEnv
+* devEnv
+** devenv.nix :default:devenv:
nix profile install .
@@ -284,7 +324,7 @@ with pkgs;
# ❯❯❯ nix_related
#nix # if not on NixOS, this is needed
direnv
- nixVersions.latest #nixVersions.latest #nixVersions.git
+ nixVersions.latest #nixVersions.latest #nixVersions.git #nixVersions.nix_2_29 #nixVersions.nix_2_29
nix-prefetch-git
validatePkgConfig
nix-output-monitor
@@ -387,7 +427,7 @@ with (
exit "Error: could not find D compiler"
fi
echo "$DC_ used as D compiler to build $pname"
- dub run --compiler=$DC --build=release --combined --skip-registry=all
+ dub build --compiler=$DC --build=release --combined --skip-registry=all
runHook postBuild
'';
checkPhase = ''
@@ -441,8 +481,6 @@ with (
}
#+END_SRC
-#src = ./.;
-
#+NAME: project_path_local_out_static
#+HEADER: :noweb yes
#+BEGIN_SRC nix
@@ -468,7 +506,7 @@ file://<<spine_tarball_path>>/<<spine_tarball_filename>>
#+END_SRC
#+NAME: nixpkgs_local
-#+BEGIN_SRC sh
+#+BEGIN_SRC shell
/srv/nixpkgs-dev/nixpkgs
#+END_SRC
@@ -490,12 +528,6 @@ spine-0.12.0-tag-0.11.2.r107.gf89a107.tar.gz
sha256:03dr7dn7kq6arw4ry7qar13iqmi1caw70imfjwi8qr7g2j4mnk2q
#+END_SRC
-#+BEGIN_SRC nix
-sha256:0000000000000000000000000000000000000000000000000000
-#+END_SRC
-
-/home/ralph/grotto/repo/git.repo/projects/project-spine/tarball
-
#+NAME: project_path_local_out_static_
#+BEGIN_SRC nix
/var/www
@@ -519,10 +551,6 @@ github:NixOS/nixpkgs/nixpkgs-unstable
"nixpkgs/nixos-unstable";
#+END_SRC
-#+BEGIN_SRC nix
-"nixpkgs/nixos-23.05";
-#+END_SRC
-
#+HEADER: :noweb yes
#+BEGIN_SRC nix
<<nixpkgs_path_local>>
diff --git a/org/nix-develop-dlang-shared.org b/org/nix-develop-dlang-shared.org
index 5623f63..2a2f66d 100644
--- a/org/nix-develop-dlang-shared.org
+++ b/org/nix-develop-dlang-shared.org
@@ -17,20 +17,51 @@
* nix
** direnv
+*** NOTES to update direnv in .envrc-nix
+
+- https://github.com/nix-community/nix-direnv
+
+check for latest version:
+
+- https://github.com/nix-community/nix-direnv/releases
+
+update direnv version and sha hash:
+- emacs org/nix-develop-dlang-shared.org
+
+re-tangle file:
+
+- emacs org/config_env.org
+ updates: .envrc-nix
+
+update flake.lock:
+- nix flake update && nix flake check && nix flake show
+
*** version SET
#+NAME: direnv-version
#+BEGIN_SRC org
-<<direnv_version_3_0_6>>
+<<direnv_version_3_0_7>>
#+END_SRC
#+NAME: direnv-hash
#+BEGIN_SRC org
-<<direnv_hash_3_0_6>>
+<<direnv_hash_3_0_7>>
#+END_SRC
*** versions
+**** 3.0.7
+
+#+NAME: direnv_version_3_0_7
+#+BEGIN_SRC org
+3.0.7
+#+END_SRC
+
+#+NAME: direnv_hash_3_0_7
+#+BEGIN_SRC org
+sha256-bn8WANE5a91RusFmRI7kS751ApelG02nMcwRekC/qzc=
+#+END_SRC
+
**** 3.0.6
#+NAME: direnv_version_3_0_6
@@ -81,6 +112,36 @@ sha256-XQzUAvL6pysIJnRJyR7uVpmUSZfc7LSgWQwq/4mBr1U=
* dlang
** ldc
+*** NOTES to update ldc
+
+check for latest version:
+
+update ldc version and sha hash:
+- emacs ./org/nix-develop-dlang-shared.org
+
+re-tangle files:
+- emacs ./org/nixpkgs_overlays_d_related.org
+ updates: nix-overlays/ldc/package.nix
+- emacs ./org/config_nix.org
+ updates: flake.nix
+- emacs ./org/config_env.org
+ updates: .envrc-nix
+
+update flake.lock:
+- nix flake update && nix flake check && nix flake show
+
+build:
+- nix build ".#spine-overlay-ldc" --print-build-logs
+
+adjust nix overlay if required (to get started):
+- git clone --depth 1 https://github.com/NixOS/nixpkgs
+- find ./nixpkgs/pkgs/ -type d -name "ldc"
+ ./nixpkgs/pkgs/by-name/ld/ldc
+- compare with overlay:
+ ./nix-overlays/ldc
+- overlay is tangled from:
+ emacs ./org/nixpkgs_overlays_d_related.org
+
*** version SET
**** version & sha256 nix composite
@@ -94,24 +155,65 @@ sha256 = "<<ldc-hash>>";
#+NAME: ldc-version
#+BEGIN_SRC org
-<<ldc_version_1_40_0>>
+<<ldc_version_1_41_0>>
#+END_SRC
#+NAME: ldc-hash
#+BEGIN_SRC org
-<<ldc_hash_1_40_0>>
+<<ldc_hash_1_41_0>>
#+END_SRC
#+NAME: ldc-llvm-set
#+BEGIN_SRC org
-<<ldc_llvm_set_1_40_0>>
+<<ldc_llvm_set_1_41_0>>
#+END_SRC
*** versions
+**** 1.41 OK ✓
+***** 1.41.0 OK ✓
+
+ - nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.41.0.tar.gz
+ - nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/releases/download/v${version}/ldc-${version}-src.tar.gz
+
+#+NAME: ldc_version_1_41_0
+#+BEGIN_SRC nix
+1.41.0
+#+END_SRC
+
+#+NAME: ldc_hash_1_41_0
+#+BEGIN_SRC nix
+sha256-6LcpY3LSFK4KgEiGrFp/LONu5Vr+/+vI04wEEpF3s+s=
+#+END_SRC
+
+#+NAME: ldc_llvm_set_1_41_0
+#+BEGIN_SRC nix
+llvm_20
+#+END_SRC
+
**** 1.40 OK ✓
+***** 1.40.1 OK ✓
+
+ - nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.40.1.tar.gz
+ - nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/releases/download/v${version}/ldc-${version}-src.tar.gz
+
+#+NAME: ldc_version_1_40_1
+#+BEGIN_SRC nix
+1.40.1
+#+END_SRC
+
+#+NAME: ldc_hash_1_40_1
+#+BEGIN_SRC nix
+sha256-WdnwdH25A5oMNNY3uWG2hxnaAT+S1hNuP7LElH3uuuk=
+#+END_SRC
+
+#+NAME: ldc_llvm_set_1_40_1
+#+BEGIN_SRC nix
+llvm_19
+#+END_SRC
+
***** 1.40.0 OK ✓
- - nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.40.0-beta6.tar.gz
+ - nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.40.0.tar.gz
- nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/releases/download/v${version}/ldc-${version}-src.tar.gz
#+NAME: ldc_version_1_40_0
@@ -222,24 +324,67 @@ sha256-/bs3bwgkLZF5IqaiKnc5gCF/r6MQBG/F1kWUkK8j2s0=
#+END_SRC
** dmd
+
+- https://github.com/dlang/dmd/tags
+
*** version SET
#+NAME: dmd-version
#+BEGIN_SRC org
-<<dmd_version_2_109_1>>
+<<dmd_version_2_111_0>>
#+END_SRC
#+NAME: dmd-hash
#+BEGIN_SRC org
-<<dmd_hash_2_109_1>>
+<<dmd_hash_2_111_0>>
#+END_SRC
#+NAME: phobos-hash
#+BEGIN_SRC org
-<<phobos_hash_2_109_1>>
+<<phobos_hash_2_111_0>>
#+END_SRC
*** versions
+**** 2.111.0 OK ✓
+
+- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.111.0.tar.gz
+- nix-prefetch-url --unpack https://github.com/dlang/phobos/archive/refs/tags/v2.111.0.tar.gz
+
+#+NAME: dmd_version_2_111_0
+#+BEGIN_SRC nix
+2.111.0
+#+END_SRC
+
+#+NAME: phobos_hash_2_111_0
+#+BEGIN_SRC nix
+sha256-9jySZbODoL8sULhYKj/l4+c/uiG5xY2dO240k9XQtPk=
+#+END_SRC
+
+#+NAME: dmd_hash_2_111_0
+#+BEGIN_SRC nix
+sha256-2bjsGa9nTny818dLRV6LKkes+Ycq8W+PFjwhGVrD5TM=
+#+END_SRC
+
+**** 2.110.0 OK ✓
+
+- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.110.0.tar.gz
+- nix-prefetch-url --unpack https://github.com/dlang/phobos/archive/refs/tags/v2.110.0.tar.gz
+
+#+NAME: dmd_version_2_110_0
+#+BEGIN_SRC nix
+2.110.0
+#+END_SRC
+
+#+NAME: phobos_hash_2_110_0
+#+BEGIN_SRC nix
+sha256-CmJpcHM+sIsaYBlpALCFoQFG+93s8gUyWmM0tYqjXkk=
+#+END_SRC
+
+#+NAME: dmd_hash_2_110_0
+#+BEGIN_SRC nix
+sha256-icXp9xWF2AI2gp7z/lQFAChmXfQePe9b5pbpQ9Mn19Y=
+#+END_SRC
+
**** 2.109.1 OK ✓
- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.109.1.tar.gz
@@ -361,15 +506,30 @@ sha256-yRL9ub3u4mREG9PVxBvgQ/LDXD57RadPTZ2h08qyh/s=
#+NAME: dub-version
#+HEADER: :noweb yes
#+BEGIN_SRC org
-<<dub_version_1_38_1>>
+<<dub_version_1_39_0>>
#+END_SRC
#+NAME: dub-hash
#+BEGIN_SRC org
-<<dub_hash_1_38_1>>
+<<dub_hash_1_39_0>>
#+END_SRC
*** versions
+**** 1.39 OK ✓
+***** 1.39.0
+
+- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.39.0.tar.gz
+
+#+NAME: dub_version_1_39_0
+#+BEGIN_SRC nix
+1.39.0
+#+END_SRC
+
+#+NAME: dub_hash_1_39_0
+#+BEGIN_SRC nix
+sha256-73b15A9+hClD6IbuxTy9QZKpTKjUFYBuqGOclUyhrnM=
+#+END_SRC
+
**** 1.38 OK ✓
***** 1.38.1
@@ -482,61 +642,66 @@ sha256-5pW3Fu3PQ1ZLJnsuh7fPpEBNbVQgGfFyiuMrAVOJKQA=
#+NAME: dtools-version
#+BEGIN_SRC org
-<<dtools_version_2_103_1>>
+<<dtools_version_2_110_0>>
#+END_SRC
#+NAME: dtools-hash
#+BEGIN_SRC org
-<<dtools_hash_2_103_1>>
+<<dtools_hash_2_110_0>>
#+END_SRC
*** versions
-**** 2.103.1 OK ✓
+**** 2.110.0 OK ✓
-- https://github.com/dlang/tools/releases/tag/v2.103.1
+- https://github.com/dlang/tools/releases/tag/v2.110.0
-#+NAME: dtools_version_2_103_1
+#+NAME: dtools_version_2_110_0
#+BEGIN_SRC nix
-2.103.1
+2.110.0
#+END_SRC
-#+NAME: dtools_hash_2_103_1
+#+NAME: dtools_hash_2_110_0
#+BEGIN_SRC nix
-sha256-XM4gUxcarQCOBR8W/o0iWAI54PyLDkH6CsDce22Cnu4=
+sha256-xMEHnrstL5hAkhp8+/z1I2KZWZ7eztWZnUGLTKCfbBI=
#+END_SRC
-**** 2.102.2
+**** 2.109.1 OK ✓
-- https://github.com/dlang/tools/releases/tag/v2.102.2
+- https://github.com/dlang/tools/releases/tag/v2.109.1
-#+NAME: dtools_version_2_102_2
+#+NAME: dtools_version_2_109_1
#+BEGIN_SRC nix
-2.102.2
+2.109.1
#+END_SRC
-#+NAME: dtools_hash_2_102_2
+#+NAME: dtools_hash_2_109_1
#+BEGIN_SRC nix
-sha256-XM4gUxcarQCOBR8W/o0iWAI54PyLDkH6CsDce22Cnu4=
+sha256-Pfj8Kwf5AlcrHhLs5A/0vIFWLZaNR3ro+esbs7oWN9I=
#+END_SRC
-**** 2.095.1
+**** 2.104.1 OK ✓
-- https://github.com/dlang/tools/releases/tag/v2.095.1
+- https://github.com/dlang/tools/releases/tag/v2.104.2
-#+NAME: dtools_version_2_095_1
+#+NAME: dtools_version_2_104_2
#+BEGIN_SRC nix
-2.095.1
+2.104.2
#+END_SRC
-#+NAME: dtools_hash_2_095_1
+#+NAME: dtools_hash_2_104_2
#+BEGIN_SRC nix
-sha256:0rdfk3mh3fjrb0h8pr8skwlq6ac9hdl1fkrkdl7n1fa2806b740b
+sha256-Pfj8Kwf5AlcrHhLs5A/0vIFWLZaNR3ro+esbs7oWN9I=
#+END_SRC
** sha256 blank_hash
#+NAME: blank_hash
#+BEGIN_SRC nix
+<<sha256-blank>>
+#+END_SRC
+
+#+NAME: sha256-blank
+#+BEGIN_SRC nix
sha256-0000000000000000000000000000000000000000000=
#+END_SRC
diff --git a/org/sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org b/org/sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org
index 28ead23..b536386 100644
--- a/org/sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org
+++ b/org/sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org
@@ -4,7 +4,7 @@
#+FILETAGS: :spine:abstraction:
#+AUTHOR: Ralph Amissah
#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
-#+COPYRIGHT: Copyright (C) 2015 - 2024 Ralph Amissah
+#+COPYRIGHT: Copyright (C) 2015 - 2025 Ralph Amissah
#+LANGUAGE: en
#+STARTUP: content hideblocks hidestars noindent entitiespretty
#+PROPERTY: header-args :noweb yes
@@ -29,7 +29,7 @@
- Author: Ralph Amissah
[ralph.amissah@gmail.com]
- - Copyright: (C) 2015 - 2024 Ralph Amissah, All Rights Reserved.
+ - Copyright: (C) 2015 - 2025 Ralph Amissah, All Rights Reserved.
- License: AGPL 3 or later:
@@ -98,7 +98,7 @@
#+NAME: spine_project_version_part_minor
#+BEGIN_SRC org
-17
+18
#+END_SRC
*** patch
diff --git a/org/spine-bespoke-output-homepage-html.org b/org/spine-bespoke-output-homepage-html.org
index f0c9177..32dc9d1 100644
--- a/org/spine-bespoke-output-homepage-html.org
+++ b/org/spine-bespoke-output-homepage-html.org
@@ -609,12 +609,14 @@ ralph.amissah www since 1993 ;-)
[ <a href="https://discourse.nixos.org/t/nixos-foundation-board-giving-power-to-the-community/44552/">
NixOS Foundation board: Giving power to the community
</a> ]<br>
+<!--
[ <a href="https://aux.computer/">
Aux - aux.computer - a community fork of nix (under deliberation), billed as "An alternative to the Nix ecosystem"
</a> ]
[ <a href="https://forum.aux.computer/">
community discussion (discourse)
</a> ]<br>
+-->
Gnu [ <a href="https://guix.gnu.org/">
Guix
</a> ]
diff --git a/org/spine_info.org b/org/spine_info.org
index db4571a..2fba2c0 100644
--- a/org/spine_info.org
+++ b/org/spine_info.org
@@ -154,7 +154,7 @@ sub-directory called image. sisudoc-spine can be run against the prepared .sst
file.
sisudoc-spine organizes document source into pods (sisupods). Document samples
-using the directory structure for sisudoc-spine are located under: ./markup/pod/
+using the directory structure for sisudoc-spine are located under: ./markup/pod-samples/pod/
(this includes a number of prepared books and articles).
individual .sst files with their associated images are automatically converted
@@ -259,7 +259,7 @@ document source to get the desired output.
#+BEGIN_SRC markdown
e.g.:
- ./result/bin/spine -v --source --pod --epub --html --html-link-curate --html-link-markup --curate --output=./OUTPUT_TEST_sisudocSpine ./markup/pod/*
+ ./result/bin/spine -v --source --pod --epub --html --html-link-curate --html-link-markup --curate --output=./OUTPUT_TEST_sisudocSpine ./markup/pod-samples/pod/*
with sisudoc-spine installed, for a list of commands from the program type: