summaryrefslogtreecommitdiffhomepage
path: root/org
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2025-02-12 13:15:41 -0500
committerRalph Amissah <ralph.amissah@gmail.com>2025-02-12 13:15:41 -0500
commit38cdb8f0ed3b968e44dc472bc81f63079cde375e (patch)
treecd7e7301c7a979a0d952643db653a76aeda4aa0d /org
parentorg blocks, identify syntax (diff)
org, reorganize version infoHEADmain
Diffstat (limited to 'org')
-rw-r--r--org/config_env.org142
-rw-r--r--org/config_nix.org70
-rw-r--r--org/nix-develop-dlang-shared.org548
3 files changed, 679 insertions, 81 deletions
diff --git a/org/config_env.org b/org/config_env.org
index e46d868..6dddf9c 100644
--- a/org/config_env.org
+++ b/org/config_env.org
@@ -49,15 +49,15 @@ fi
- https://github.com/nix-community/nix-direnv
- source_url
- - direnv fetchurl "https://raw.githubusercontent.com/nix-community/nix-direnv/<<direnv-version>>/direnvrc" "<<direnv-sha>>"
+ - direnv fetchurl "https://raw.githubusercontent.com/nix-community/nix-direnv/<<direnv-version>>/direnvrc" "<<direnv_hash>>"
- ${NixDirEnvVersion}
#+HEADER: :tangle ../.envrc-nix
#+BEGIN_SRC shell
NIX_ENFORCE_PURITY=1
# - https://github.com/nix-community/nix-direnv
-NixDirEnvVersion="<<direnv-version>>"
-NixDirEnvSHA="<<direnv-sha>>"
+NixDirEnvVersion="<<direnv_version>>"
+NixDirEnvSHA="<<direnv_hash>>"
if ! has nix_direnv_version || ! nix_direnv_version ${NixDirEnvVersion}; then
source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/${NixDirEnvVersion}/direnvrc" "${NixDirEnvSHA}"
fi
@@ -77,13 +77,14 @@ echo '
❯❯ nix flake update && nix flake check && nix flake show
• for a dev shell (development environment):
-
- ❯❯ nix develop
- ❯❯ nix develop ".#" --print-build-logs -c zsh
- ❯❯ nix develop ".#dsh-nixpkgs-dmd-dub" --print-build-logs -c zsh
- ❯❯ nix develop ".#dsh-overlay-dmd-dub" --print-build-logs -c zsh
- ❯❯ nix develop ".#dsh-nixpkgs-ldc-dub" --print-build-logs -c zsh
- ❯❯ nix develop ".#dsh-overlay-ldc-dub" --print-build-logs -c zsh
+ • nix develop
+ ❯❯ nix develop ".#" --print-build-logs -c zsh
+ • nix develop using nixpkgs
+ ❯❯ nix develop ".#dsh-nixpkgs-dmd-dub" --print-build-logs -c zsh
+ ❯❯ nix develop ".#dsh-nixpkgs-ldc-dub" --print-build-logs -c zsh
+ • nix develop using package overlays: (dmd-<<dmd_version>>, ldc-<<ldc_version>>, dub-<<dub_version>>)
+ ❯❯ nix develop ".#dsh-overlay-dmd-dub" --print-build-logs -c zsh
+ ❯❯ nix develop ".#dsh-overlay-ldc-dub" --print-build-logs -c zsh
❯❯ nix flake show
• to build project:
@@ -92,12 +93,12 @@ echo '
❯❯ nix build ".#" --print-build-logs
• to build project (for build dependencies select appropriate dev env & build):
-
- ❯❯ nix build ".#spine-search-nixpkgs-dmd" --print-build-logs
- ❯❯ nix build ".#spine-search-overlay-dmd" --print-build-logs
-
- ❯❯ nix build ".#spine-search-nixpkgs-ldc" --print-build-logs
- ❯❯ nix build ".#spine-search-overlay-ldc" --print-build-logs
+ • nix build using nixpkgs
+ ❯❯ nix build ".#spine-search-nixpkgs-dmd" --print-build-logs
+ ❯❯ nix build ".#spine-search-nixpkgs-ldc" --print-build-logs
+ • nix build using package overlays: (dmd-<<dmd_version>>, ldc-<<ldc_version>>, dub-<<dub_version>>)
+ ❯❯ nix build ".#spine-search-overlay-dmd" --print-build-logs
+ ❯❯ nix build ".#spine-search-overlay-ldc" --print-build-logs
• to build using dub on nix (get dependencies by setting your development environment):
@@ -114,89 +115,86 @@ echo '
'
#+END_SRC
-*** 3.0.6
-
-#+NAME: direnv-version
-#+BEGIN_SRC shell
-3.0.6
-#+END_SRC
+** .envrc-git-init
-#+NAME: direnv-sha
+#+HEADER: :tangle ../.envrc-git-init
+#+HEADER: :noweb yes
#+BEGIN_SRC shell
-sha256-RYcUJaRMf8oF5LznDrlCXbkOQrywm0HDv1VjYGaJGdM=
+if [[ ! -d ./.git ]]; then
+ git init
+ git add .
+fi
#+END_SRC
-*** 3.0.4
+** .envrc-local CHECK MODIFY
-#+BEGIN_SRC shell
-3.0.4
-#+END_SRC
+- bespoke modify appropriately and generate if needed
+#+HEADER: :tangle ../.envrc-local
+#+HEADER: :noweb yes
#+BEGIN_SRC shell
-sha256-DzlYZ33mWF/Gs8DDeyjr8mnVmQGx7ASYqA5WlxwvBG4=
+export SpineVER=$(git describe --long --tags | sed 's/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g')
+export SpineSearchBIN=result/share/cgi-bin
+# ❯❯ cgi search form name:
+export SpineCGIform='spine_search'
+# ❯❯ configuration cgi search form path:
+export SpineCGIbin=/var/www/cgi/cgi-bin
#+END_SRC
-*** 3.0.0
+* SHARED versions
+** direnv
-#+BEGIN_SRC shell
-3.0.0
+#+NAME: direnv_version
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:direnv-version()>>
#+END_SRC
-#+BEGIN_SRC shell
-sha256-21TMnI2xWX7HkSTjFFri2UaohXVj854mgvWapWrxRXg=
+#+NAME: direnv_hash
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:direnv-hash()>>
#+END_SRC
-*** 2.4.0
-
-#+BEGIN_SRC shell
-2.4.0
-#+END_SRC
+** spine project VERSION :version:set:project:
-#+BEGIN_SRC shell
-sha256-XQzUAvL6pysIJnRJyR7uVpmUSZfc7LSgWQwq/4mBr1U=
+#+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
-#+BEGIN_SRC shell
-2.3.0
-#+END_SRC
+** dlang overlays
+*** ldc
-#+BEGIN_SRC shell
-sha256-Dmd+j63L84wuzgyjITIfSxSD57Tx7v51DMxVZOsiUD8=
+#+NAME: ldc_version
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:ldc-version()>>
#+END_SRC
-#+NAME: direnv-sha_
-#+BEGIN_SRC shell
-sha256-0000000000000000000000000000000000000000000=
-#+END_SRC
+*** dmd
-#+BEGIN_SRC shell
-- https://github.com/nix-community/nix-direnv
-NixDirEnvSHA="sha256-0000000000000000000000000000000000000000000="
-direnv fetchurl https://raw.githubusercontent.com/nix-community/nix-direnv/${NixDirEnvVersion}/direnvrc
+#+NAME: dmd_version
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:dmd-version()>>
#+END_SRC
-** .envrc-git-init
+*** dub
-#+HEADER: :tangle ../.envrc-git-init
+#+NAME: dub_version
#+HEADER: :noweb yes
-#+BEGIN_SRC shell
-if [[ ! -d ./.git ]]; then
- git init
- git add .
-fi
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:dub-version()>>
#+END_SRC
-** .envrc-local CHECK MODIFY
-
-- bespoke modify appropriately and generate if needed
+*** dtools
-#+HEADER: :tangle ../.envrc-local
+#+NAME: dtools_version
#+HEADER: :noweb yes
-#+BEGIN_SRC shell
-export SpineVER=$(git describe --long --tags | sed 's/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g')
-export SpineSearchBIN=result/share/cgi-bin
-# ❯❯ cgi search form name:
-export SpineCGIform='spine_search'
-# ❯❯ configuration cgi search form path:
-export SpineCGIbin=/var/www/cgi/cgi-bin
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:dtools-version()>>
#+END_SRC
+
+* __END__
diff --git a/org/config_nix.org b/org/config_nix.org
index 6f40d83..cf5e836 100644
--- a/org/config_nix.org
+++ b/org/config_nix.org
@@ -82,6 +82,7 @@
default = stdenv.mkDerivation {
inherit pname;
inherit version;
+ meta.mainProgram = "spine-search";
executable = true;
src = self;
inherit shell;
@@ -233,7 +234,7 @@
with pkgs-nix; {
dsh-d-overlay = spine-d-overlay.devShells.${system}.default;
dsh-overlay = mkShell {
- name = "spine base dev shell";
+ name = "spine-<<spine_version>> base dev shell, ldc-<<ldc_version>>, dub-<<dub_version>>";
inherit shell;
inherit devEnv;
packages = with pkgs-ovl; [
@@ -246,7 +247,7 @@
inherit shellHook;
};
dsh-nixpkgs-dmd-dub = mkShell {
- name = "spine base dev shell";
+ name = "spine-<<spine_version>> base dev shell";
inherit shell;
inherit devEnv;
packages = [
@@ -258,7 +259,7 @@
inherit shellHook;
};
dsh-nixpkgs-ldc-dub = mkShell {
- name = "spine base dev shell";
+ name = "spine-<<spine_version>> base dev shell";
inherit shell;
inherit devEnv;
packages = [
@@ -270,7 +271,7 @@
inherit shellHook;
};
dsh-overlay-dmd-dub = mkShell {
- name = "spine base dev shell";
+ name = "spine-<<spine_version>> base dev shell, dmd-<<dmd_version>>, dub-<<dub_version>>";
inherit shell;
inherit devEnv;
packages = with pkgs-ovl; [
@@ -282,7 +283,7 @@
inherit shellHook;
};
dsh-overlay-ldc-dub = mkShell {
- name = "spine base dev shell";
+ name = "spine-<<spine_version>> base dev shell, ldc-<<ldc_version>>, dub-<<dub_version>>";
inherit shell;
inherit devEnv;
packages = with pkgs-ovl; [
@@ -488,7 +489,7 @@ with (
buildPhase = ''
runHook preBuild
HOME="$PWD"
- DFLAGS="-O2 -inline"
+ #DFLAGS="-O2 -inline"
for DC_ in dmd ldmd2 gdmd; do
echo "- check for D compiler $DC_"
DC=$(type -P $DC_ || echo "")
@@ -532,7 +533,8 @@ with (
}
);
mkDubDerivation rec {
- name = "spine-search-${version}";
+ name = "spine-search-<<spine_version>>";
+ #name = "spine-search-${version}";
src = ./.;
buildInputs = [
pkgs.sqlite
@@ -623,7 +625,8 @@ github:nixos/nixpkgs
/srv/nix/nixpkgs
#+END_SRC
-** version info SET VERSION :version:set:project:
+* SHARED
+** version and other things shared
*** spine project VERSION :version:set:project:
#+NAME: spine_version
@@ -632,7 +635,8 @@ github:nixos/nixpkgs
<<./sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org:spine_project_version()>>
#+END_SRC
-*** spine project git sources VERSION :version:set:project:
+*** spine project git sources
+**** spine project git sources url
#+NAME: sisudoc_spine_nix_src
#+HEADER: :noweb yes
@@ -640,8 +644,56 @@ github:nixos/nixpkgs
<<./sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org:sisudoc_spine_nix_src()>>
#+END_SRC
+*** spine project git sources url
+**** spine project git sources overlay url
+
#+NAME: sisudoc_dlang_nix_overlay_src
#+HEADER: :noweb yes
#+BEGIN_SRC emacs-lisp
<<./sisudoc_spine_version_info_and_doc_header_including_copyright_and_license.org:sisudoc_dlang_nix_overlay_src()>>
#+END_SRC
+
+** versions dlang overlays versions
+*** ldc
+
+#+NAME: ldc_version
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:ldc-version()>>
+#+END_SRC
+
+*** dmd
+
+#+NAME: dmd_version
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:dmd-version()>>
+#+END_SRC
+
+*** dub
+
+#+NAME: dub_version
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:dub-version()>>
+#+END_SRC
+
+*** dtools
+
+#+NAME: dtools_version
+#+HEADER: :noweb yes
+#+BEGIN_SRC emacs-lisp
+<<./nix-develop-dlang-shared.org:dtools-version()>>
+#+END_SRC
+
+** empty sha56 hash
+
+#+NAME: blank_hash
+#+BEGIN_SRC nix
+sha256-0000000000000000000000000000000000000000000=
+#+END_SRC
+
+#+NAME: assumed_hash
+#+BEGIN_SRC nix
+sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+#+END_SRC
diff --git a/org/nix-develop-dlang-shared.org b/org/nix-develop-dlang-shared.org
new file mode 100644
index 0000000..5623f63
--- /dev/null
+++ b/org/nix-develop-dlang-shared.org
@@ -0,0 +1,548 @@
+-*- mode: org -*-
+#+TITLE: dlang related shared versions
+#+DESCRIPTION: dlang
+#+FILETAGS: :dlang:develop:shared:
+#+AUTHOR: Ralph Amissah
+#+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]]
+#+COPYRIGHT: Copyright (C) 2015 - 2025 Ralph Amissah
+#+LANGUAGE: en
+#+STARTUP: content hideblocks hidestars noindent entitiespretty
+#+PROPERTY: header-args :noweb yes
+#+PROPERTY: header-args+ :exports code
+#+PROPERTY: header-args+ :results no
+#+PROPERTY: header-args+ :cache no
+#+PROPERTY: header-args+ :padline no
+#+PROPERTY: header-args+ :mkdirp yes
+#+OPTIONS: H:3 num:nil toc:t \n:t ::t |:t ^:nil -:t f:t *:t
+
+* nix
+** direnv
+*** version SET
+
+#+NAME: direnv-version
+#+BEGIN_SRC org
+<<direnv_version_3_0_6>>
+#+END_SRC
+
+#+NAME: direnv-hash
+#+BEGIN_SRC org
+<<direnv_hash_3_0_6>>
+#+END_SRC
+
+*** versions
+
+**** 3.0.6
+
+#+NAME: direnv_version_3_0_6
+#+BEGIN_SRC org
+3.0.6
+#+END_SRC
+
+#+NAME: direnv_hash_3_0_6
+#+BEGIN_SRC org
+sha256-RYcUJaRMf8oF5LznDrlCXbkOQrywm0HDv1VjYGaJGdM=
+#+END_SRC
+
+**** 3.0.4
+
+#+NAME: direnv_version_3_0_4
+#+BEGIN_SRC org
+3.0.4
+#+END_SRC
+
+#+NAME: direnv_hash_3_0_4
+#+BEGIN_SRC org
+sha256-DzlYZ33mWF/Gs8DDeyjr8mnVmQGx7ASYqA5WlxwvBG4=
+#+END_SRC
+
+**** 3.0.0
+
+#+NAME: direnv_version_3_0_0
+#+BEGIN_SRC org
+3.0.0
+#+END_SRC
+
+#+NAME: direnv_hash_3_0_0
+#+BEGIN_SRC org
+sha256-21TMnI2xWX7HkSTjFFri2UaohXVj854mgvWapWrxRXg=
+#+END_SRC
+
+**** 2.4.0
+
+#+NAME: direnv_version_2_4_0
+#+BEGIN_SRC org
+2.4.0
+#+END_SRC
+
+#+NAME: direnv_hash_2_4_0
+#+BEGIN_SRC org
+sha256-XQzUAvL6pysIJnRJyR7uVpmUSZfc7LSgWQwq/4mBr1U=
+#+END_SRC
+
+* dlang
+** ldc
+*** version SET
+**** version & sha256 nix composite
+
+#+NAME: ldc-version-info
+#+BEGIN_SRC org
+version = "<<ldc-version>>";
+sha256 = "<<ldc-hash>>";
+#+END_SRC
+
+**** select version SET OK ✓
+
+#+NAME: ldc-version
+#+BEGIN_SRC org
+<<ldc_version_1_40_0>>
+#+END_SRC
+
+#+NAME: ldc-hash
+#+BEGIN_SRC org
+<<ldc_hash_1_40_0>>
+#+END_SRC
+
+#+NAME: ldc-llvm-set
+#+BEGIN_SRC org
+<<ldc_llvm_set_1_40_0>>
+#+END_SRC
+
+*** versions
+**** 1.40 OK ✓
+***** 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/releases/download/v${version}/ldc-${version}-src.tar.gz
+
+#+NAME: ldc_version_1_40_0
+#+BEGIN_SRC nix
+1.40.0
+#+END_SRC
+
+#+NAME: ldc_hash_1_40_0
+#+BEGIN_SRC nix
+sha256-LT85DlAebecPpBUgZP0ayKTVrTUqN6DMJVEWTatLOxY=
+#+END_SRC
+
+#+NAME: ldc_llvm_set_1_40_0
+#+BEGIN_SRC nix
+llvm_19
+#+END_SRC
+
+**** 1.39 OK ✓
+***** 1.39.0 OK ✓
+
+- nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.39.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_39_0
+#+BEGIN_SRC nix
+1.39.0
+#+END_SRC
+
+#+NAME: ldc_hash_1_39_0
+#+BEGIN_SRC nix
+sha256-ZiG0ATsY6Asu2nus3Y404fvqIwtKYoHl1JRUDU5A6mo=
+#+END_SRC
+
+#+NAME: ldc_llvm_set_1_39_0
+#+BEGIN_SRC nix
+llvm_18
+#+END_SRC
+
+**** =< 1.32
+***** 1.32.2
+
+- nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.32.1.tar.gz
+
+#+NAME: ldc_version_1_32_2
+#+BEGIN_SRC nix
+1.32.2
+#+END_SRC
+
+#+NAME: ldc_hash_1_32_2
+#+BEGIN_SRC nix
+sha256-v6Sq7nQyChJohDyI4inzObLfCVOkvLT87VLr4N2hzZU=
+#+END_SRC
+
+***** 1.32.1
+
+- nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.32.1.tar.gz
+
+#+NAME: ldc_version_1_32_1
+#+BEGIN_SRC nix
+1.32.1
+#+END_SRC
+
+#+NAME: ldc_hash_1_32_1
+#+BEGIN_SRC nix
+sha256-s1U7+qiVJDF+zSHrLGPG6g+acIChYnXkb9p+OrNX6g8=
+#+END_SRC
+
+***** 1.32.0
+
+- nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.32.0.tar.gz
+
+#+NAME: ldc_version_1_32_0
+#+BEGIN_SRC nix
+1.32.0
+#+END_SRC
+
+#+NAME: ldc_hash_1_32_0
+#+BEGIN_SRC nix
+sha256-xO4L+RtBbdVkE1PZsme2pIYAxJnHgr6xEtLkYOMpvqw=
+#+END_SRC
+
+***** 1.31.0
+
+- nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.31.0.tar.gz
+
+#+NAME: ldc_version_1_31_0
+#+BEGIN_SRC nix
+1.31.0
+#+END_SRC
+
+#+NAME: ldc_hash_1_31_0
+#+BEGIN_SRC nix
+sha256-8cjs6eHjWAbDRBvyT75mbN3Y7vN1WSwZzY/uRwHNVFg=
+#+END_SRC
+
+***** 1.30.0
+
+- nix-prefetch-url --unpack https://github.com/ldc-developers/ldc/archive/refs/tags/v1.30.0.tar.gz
+
+#+NAME: ldc_version_1_30_0
+#+BEGIN_SRC nix
+1.30.0
+#+END_SRC
+
+#+NAME: ldc_hash_1_30_0
+#+BEGIN_SRC nix
+sha256-/bs3bwgkLZF5IqaiKnc5gCF/r6MQBG/F1kWUkK8j2s0=
+#+END_SRC
+
+** dmd
+*** version SET
+
+#+NAME: dmd-version
+#+BEGIN_SRC org
+<<dmd_version_2_109_1>>
+#+END_SRC
+
+#+NAME: dmd-hash
+#+BEGIN_SRC org
+<<dmd_hash_2_109_1>>
+#+END_SRC
+
+#+NAME: phobos-hash
+#+BEGIN_SRC org
+<<phobos_hash_2_109_1>>
+#+END_SRC
+
+*** versions
+**** 2.109.1 OK ✓
+
+- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.109.1.tar.gz
+- nix-prefetch-url --unpack https://github.com/dlang/phobos/archive/refs/tags/v2.109.1.tar.gz
+
+#+NAME: dmd_version_2_109_1
+#+BEGIN_SRC nix
+2.109.1
+#+END_SRC
+
+#+NAME: phobos_hash_2_109_1
+#+BEGIN_SRC nix
+sha256-73I0k7tCBwe5tl4K6uMs3/nT2JTZ2SppFYzmokS4W5Y=
+#+END_SRC
+
+#+NAME: dmd_hash_2_109_1
+#+BEGIN_SRC nix
+sha256-3nCDPZnb4eQZmhYYxcH6qOmsP8or0KYuzAa5g/C9xdU=
+#+END_SRC
+
+**** 2.109.0 OK ✓
+
+- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.109.0.tar.gz
+- nix-prefetch-url --unpack https://github.com/dlang/phobos/archive/refs/tags/v2.109.0.tar.gz
+
+#+NAME: dmd_version_2_109_0
+#+BEGIN_SRC nix
+2.109.0
+#+END_SRC
+
+#+NAME: dmd_hash_2_109_0
+#+BEGIN_SRC nix
+sha256-unAZgyZyT6qomlj6pdlOx4h1SKuDjutl1/0FM9AhBWc=
+#+END_SRC
+
+#+NAME: phobos_hash_2_109_0
+#+BEGIN_SRC nix
+sha256-b91FeluFqhmjHd1wwkyq98QzIlwjE646xNj2n6hP3aM=
+#+END_SRC
+
+**** 2.108.0 OK ✓
+
+- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.108.0.tar.gz
+- nix-prefetch-url --unpack https://github.com/dlang/phobos/archive/refs/tags/v2.108.0.tar.gz
+
+#+NAME: dmd_version_2_108_0
+#+BEGIN_SRC nix
+2.108.0
+#+END_SRC
+
+#+NAME: dmd_hash_2_108_0
+#+BEGIN_SRC nix
+sha256-tlWcFgKtXzfqMMkOq4ezhZHdYCXFckjN5+m6jO4VH0U=
+#+END_SRC
+
+#+NAME: phobos_hash_2_108_0
+#+BEGIN_SRC nix
+sha256-uU8S4rABOfhpKh+MvSbclkbdf0hrsuKF8SIpWMnPpfU=
+#+END_SRC
+
+**** 2.107.0 OK ✓
+
+- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.107.0.tar.gz
+- nix-prefetch-url --unpack https://github.com/dlang/phobos/archive/refs/tags/v2.107.0.tar.gz
+
+#+NAME: dmd_version_2_107_0
+#+BEGIN_SRC nix
+2.107.0
+#+END_SRC
+
+#+NAME: dmd_hash_2_107_0
+#+BEGIN_SRC nix
+<<sha256-blank>>
+#+END_SRC
+
+#+NAME: phobos_hash_2_107_0
+#+BEGIN_SRC nix
+<<sha256-blank>>
+#+END_SRC
+
+**** 2.106.1 OK ✓
+
+- nix-prefetch-url --unpack https://github.com/dlang/dmd/archive/refs/tags/v2.106.1.tar.gz
+- nix-prefetch-url --unpack https://github.com/dlang/phobos/archive/refs/tags/v2.106.1.tar.gz
+
+#+NAME: dmd_version_2_106_1
+#+BEGIN_SRC nix
+2.106.1
+#+END_SRC
+
+#+NAME: dmd_hash_2_106_1
+#+BEGIN_SRC nix
+sha256-vjYa/Pxrz7J2htXT+fa+xaeen/Vxne++lELbHTSXBK8=
+#+END_SRC
+
+#+NAME: phobos_hash_2_106_1
+#+BEGIN_SRC nix
+sha256-yRL9ub3u4mREG9PVxBvgQ/LDXD57RadPTZ2h08qyh/s=
+#+END_SRC
+
+#+NAME: dmd_version
+#+BEGIN_SRC nix
+<<dmd_version_2_104_0>>
+#+END_SRC
+
+#+NAME: dmd_hash
+#+BEGIN_SRC nix
+<<dmd_hash_2_104_0>>
+#+END_SRC
+
+#+NAME: phobos_hash
+#+BEGIN_SRC nix
+<<phobos_hash_2_104_0>>
+#+END_SRC
+
+** dub
+*** version SET
+
+#+NAME: dub-version
+#+HEADER: :noweb yes
+#+BEGIN_SRC org
+<<dub_version_1_38_1>>
+#+END_SRC
+
+#+NAME: dub-hash
+#+BEGIN_SRC org
+<<dub_hash_1_38_1>>
+#+END_SRC
+
+*** versions
+**** 1.38 OK ✓
+***** 1.38.1
+
+- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.38.1.tar.gz
+
+#+NAME: dub_version_1_38_1
+#+BEGIN_SRC nix
+1.38.1
+#+END_SRC
+
+#+NAME: dub_hash_1_38_1
+#+BEGIN_SRC nix
+sha256-8Lr/0sx4SKwU1aNOxZArta0RXpDM+EWl29ZsPDdPWFo=
+#+END_SRC
+
+**** 1.36 OK ✓
+***** 1.36.0
+
+- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.36.0.tar.gz
+
+#+NAME: dub_version_1_36_0
+#+BEGIN_SRC nix
+1.36.0
+#+END_SRC
+
+#+NAME: dub_hash_1_36_0
+#+BEGIN_SRC nix
+sha256-S8pls9zxbGAQTwqYf4bDT2q7Ow12S8bBsJE5UmsACBs=
+#+END_SRC
+
+**** 1.35 OK ✓
+***** 1.35.0
+
+- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.35.0.tar.gz
+
+#+NAME: dub_version_1_35_0
+#+BEGIN_SRC nix
+1.35.0
+#+END_SRC
+
+#+NAME: dub_hash_1_35_0
+#+BEGIN_SRC nix
+sha256-hC46XKE6lLLMLGMGl4vDnLDBQy6P/Z7o3ayDJj0Sois=
+#+END_SRC
+
+**** 1.34 OK ✓
+***** 1.34.0
+
+- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.34.0.tar.gz
+
+#+NAME: dub_version_1_34_0
+#+BEGIN_SRC nix
+1.34.0
+#+END_SRC
+
+#+NAME: dub_hash_1_34_0
+#+BEGIN_SRC nix
+sha256-hC46XKE6lLLMLGMGl4vDnLDBQy6P/Z7o3ayDJj0Sois=
+#+END_SRC
+
+**** 1.33 OK ✓
+***** 1.33.1
+
+- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.33.1.tar.gz
+
+#+NAME: dub_version_1_33_1
+#+BEGIN_SRC nix
+1.33.1
+#+END_SRC
+
+#+NAME: dub_hash_1_33_1
+#+BEGIN_SRC nix
+sha256-QFgUsO04VRXBDjGI5QQs7u9XrexG7/V34TMgJP1D8yA=
+#+END_SRC
+
+***** 1.33.0
+
+- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.33.0.tar.gz
+
+#+NAME: dub_version_1_33_0
+#+BEGIN_SRC nix
+1.33.0
+#+END_SRC
+
+#+NAME: dub_hash_1_33_0
+#+BEGIN_SRC nix
+sha256-4Mha7WF6cg3DIccfpvOnheuvgfziv/7wo8iFsPXO4yY=
+#+END_SRC
+
+**** 1.32 OK ✓
+***** 1.32.1
+
+- nix-prefetch-url --unpack https://github.com/dlang/dub/archive/refs/tags/v1.32.1.tar.gz
+
+#+NAME: dub_version_1_32_1
+#+BEGIN_SRC nix
+1.32.1
+#+END_SRC
+
+#+NAME: dub_hash_1_32_1
+#+BEGIN_SRC nix
+sha256-5pW3Fu3PQ1ZLJnsuh7fPpEBNbVQgGfFyiuMrAVOJKQA=
+#+END_SRC
+
+** dtools
+
+- https://github.com/dlang/tools
+
+*** version SET
+
+#+NAME: dtools-version
+#+BEGIN_SRC org
+<<dtools_version_2_103_1>>
+#+END_SRC
+
+#+NAME: dtools-hash
+#+BEGIN_SRC org
+<<dtools_hash_2_103_1>>
+#+END_SRC
+
+*** versions
+**** 2.103.1 OK ✓
+
+- https://github.com/dlang/tools/releases/tag/v2.103.1
+
+#+NAME: dtools_version_2_103_1
+#+BEGIN_SRC nix
+2.103.1
+#+END_SRC
+
+#+NAME: dtools_hash_2_103_1
+#+BEGIN_SRC nix
+sha256-XM4gUxcarQCOBR8W/o0iWAI54PyLDkH6CsDce22Cnu4=
+#+END_SRC
+
+**** 2.102.2
+
+- https://github.com/dlang/tools/releases/tag/v2.102.2
+
+#+NAME: dtools_version_2_102_2
+#+BEGIN_SRC nix
+2.102.2
+#+END_SRC
+
+#+NAME: dtools_hash_2_102_2
+#+BEGIN_SRC nix
+sha256-XM4gUxcarQCOBR8W/o0iWAI54PyLDkH6CsDce22Cnu4=
+#+END_SRC
+
+**** 2.095.1
+
+- https://github.com/dlang/tools/releases/tag/v2.095.1
+
+#+NAME: dtools_version_2_095_1
+#+BEGIN_SRC nix
+2.095.1
+#+END_SRC
+
+#+NAME: dtools_hash_2_095_1
+#+BEGIN_SRC nix
+sha256:0rdfk3mh3fjrb0h8pr8skwlq6ac9hdl1fkrkdl7n1fa2806b740b
+#+END_SRC
+
+** sha256 blank_hash
+
+#+NAME: blank_hash
+#+BEGIN_SRC nix
+sha256-0000000000000000000000000000000000000000000=
+#+END_SRC
+
+#+NAME: assumed_hash
+#+BEGIN_SRC nix
+sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+#+END_SRC
+
+* __END__