diff options
Diffstat (limited to 'org')
-rw-r--r-- | org/config_env.org | 168 | ||||
-rw-r--r-- | org/config_git.org | 1 | ||||
-rw-r--r-- | org/config_nix.org | 135 |
3 files changed, 118 insertions, 186 deletions
diff --git a/org/config_env.org b/org/config_env.org index 1609a97d..671b0a1c 100644 --- a/org/config_env.org +++ b/org/config_env.org @@ -4,7 +4,7 @@ #+FILETAGS: :sisu: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 - 2025 Ralph Amissah #+LANGUAGE: en #+STARTUP: content hideblocks hidestars noindent entitiespretty #+PROPERTY: header-args :exports code @@ -23,21 +23,22 @@ ** nixDevEnv envrc :envrc: #+HEADER: :tangle ../nixDevEnv.sh -#+BEGIN_SRC sh +#+BEGIN_SRC shell if [ -f .envrc ]; then source_env_if_exists .envrc || source .envrc fi #+END_SRC -** envrc :envrc: -*** .envrc +* envrc :envrc: - https://github.com/nix-community/nix-direnv - source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/${NixDirEnvVersion}/direnvrc" "sha256-0000000000000000000000000000000000000000000=" +** .envrc + #+NAME: envrc #+HEADER: :tangle ../.envrc -#+BEGIN_SRC sh +#+BEGIN_SRC shell if [ -f .envrc-git-init ]; then source_env_if_exists .envrc-git-init || source .envrc-git-init fi @@ -49,7 +50,7 @@ if [ -f .envrc-nix ]; then fi #+END_SRC -*** .envrc-nix +** .envrc-nix - https://github.com/nix-community/nix-direnv - source_url @@ -57,7 +58,7 @@ fi - ${NixDirEnvVersion} #+HEADER: :tangle ../.envrc-nix -#+BEGIN_SRC sh +#+BEGIN_SRC shell NIX_ENFORCE_PURITY=1 # - https://github.com/nix-community/nix-direnv NixDirEnvVersion="<<direnv-version>>" @@ -75,58 +76,82 @@ watch_file .envrc-nix PATH_add result/bin use flake . echo " -- consider running: +• consider running: ❯❯ 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-latex-pdf" --print-build-logs -c zsh -- to build project: +• to build project: + ❯❯ nix build ".#" --print-build-logs - (see nix other/additional build options): ❯❯ nix flake show " #+END_SRC -*** 3.0.0 +*** 3.0.6 #+NAME: direnv-version -#+BEGIN_SRC sh -3.0.0 +#+BEGIN_SRC shell +3.0.6 #+END_SRC #+NAME: direnv-sha -#+BEGIN_SRC sh +#+BEGIN_SRC shell +sha256-RYcUJaRMf8oF5LznDrlCXbkOQrywm0HDv1VjYGaJGdM= +#+END_SRC + +*** 3.0.4 + +#+BEGIN_SRC shell +3.0.4 +#+END_SRC + +#+BEGIN_SRC shell +sha256-DzlYZ33mWF/Gs8DDeyjr8mnVmQGx7ASYqA5WlxwvBG4= +#+END_SRC + +*** 3.0.0 + +#+BEGIN_SRC shell +3.0.0 +#+END_SRC + +#+BEGIN_SRC shell sha256-21TMnI2xWX7HkSTjFFri2UaohXVj854mgvWapWrxRXg= #+END_SRC *** 2.4.0 -#+BEGIN_SRC sh +#+BEGIN_SRC shell 2.4.0 #+END_SRC -#+BEGIN_SRC sh +#+BEGIN_SRC shell sha256-XQzUAvL6pysIJnRJyR7uVpmUSZfc7LSgWQwq/4mBr1U= #+END_SRC -#+BEGIN_SRC sh +#+BEGIN_SRC shell 2.3.0 #+END_SRC -#+BEGIN_SRC sh +#+BEGIN_SRC shell sha256-Dmd+j63L84wuzgyjITIfSxSD57Tx7v51DMxVZOsiUD8= #+END_SRC +*** empty + #+NAME: direnv-sha_ -#+BEGIN_SRC sh +#+BEGIN_SRC shell sha256-0000000000000000000000000000000000000000000= #+END_SRC -#+BEGIN_SRC sh +#+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 @@ -136,7 +161,7 @@ direnv fetchurl https://raw.githubusercontent.com/nix-community/nix-direnv/${Nix #+HEADER: :tangle ../.envrc-git-init #+HEADER: :noweb yes -#+BEGIN_SRC sh +#+BEGIN_SRC shell if [[ ! -d ./.git ]]; then git init git add . @@ -149,94 +174,37 @@ fi #+HEADER: :tangle ../.envrc-local_ #+HEADER: :noweb yes -#+BEGIN_SRC sh -export DFLAGS="-O2 -inline -boundscheck=on -color=on" -export SpineVER=$(git describe --long --tags | sed 's/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g') -export SpineBIN=result/bin -export SpinePROJ=~/grotto/repo/git.repo/projects/doc-reform/code/software/spine -export SpineDOC=~/grotto/repo/git.repo/projects/project-spine/doc-reform-markup/spine-markup-samples -export SpinePOD=${SpineDOC}/markup/pod -export SpineOUT=/srv/www/spine -export SpineOUTversioned=/srv/www/spine/${SpineVER} -export SpineSearchActionLocal='http://localhost/spine_search' -export SpineSearchActionRemote='https://sisudoc.org/spine_search' -export SpineCGIform='spine_search' -export SpineSQLdb='spine.search.db' -export SpineCGIbin=/var/www/cgi/cgi-bin -export SpineDBpath=/var/www/sqlite -#export SpineDBpath=/srv/www/spine/sqlite -#+END_SRC - -#+HEADER: :tangle-NO ../.envrc-local -#+HEADER: :noweb yes -#+BEGIN_SRC sh -if [[ ! -d ./.git ]]; then - git init - git add . -fi -echo ' - .envrc-local echo ❯❯ - - ❯❯ nix flake update && nix flake check --show-trace && nix flake show && nix develop ".#devShell" -c $SHELL - - ❯❯ nix develop - ❯❯ nix develop -c $SHELL - ❯❯ nix develop ".#dsh-overlay-ldc" --print-build-logs - - ❯❯ nix build - ❯❯ nix build ".#default" --print-build-logs -' +#+BEGIN_SRC shell +export SisuVER=$(git describe --long --tags | sed 's/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g') +PATH_add result/bin +#export sisuBIN=bin +#export sisuBIN=result/bin +export sisuSRC=~/grotto/repo/git.repo/projects/project-sisu/sisu +export sisuPROJ=~/grotto/repo/git.repo/projects/doc-reform/code/software/sisu +export sisuDOC=~/grotto/repo/git.repo/projects/project-sisu/susu-markup/sisu-markup-samples/data/samples/current +export sisuOUT=/srv/www/sisu +#export sisuOUT=/var/www +#export sisuOUTver=/tmp/sisu/$sisuVER/www +export sisuCGIbin=/var/www/cgi/cgi-bin +export sisuSearchActionLocal='http://localhost/sisu_search' +export sisuSearchActionRemote='https://sisudoc.org/sisu_search' +export sisuCGIform='sisu_search' +export sisuSQLdb='spine.search.db' +export sisuDBpath=/var/www/sqlite +#export sisuDBpath=/srv/www/sisu/sqlite +export RUBYLIB+=`pwd`/lib #+END_SRC -#+BEGIN_SRC sh -#export NIX_PATH=/nix/var/nix/profiles/per-user/root/channels/nixos -#export NIX_PATH=/srv/nix/nixpkgs -#export NIX_PATH=nixpkgs=/srv/nix/nixpkgs -#+END_SRC +export NIX_PATH=/nix/var/nix/profiles/per-user/root/channels/nixos *** .envrc-local CHECK MODIFY - bespoke modify appropriately and generate if needed -#+HEADER: :tangle ../.envrc-local_ #+HEADER: :noweb yes -#+BEGIN_SRC sh -export NIX_PATH=/nix/var/nix/profiles/per-user/root/channels/nixos -#export NIX_PATH=nixpkgs=/nixpkgs-ra/nixpkgs -## reload when these files change -use flake -watch_file flake.nix -#eval "$(nix print-dev-env)" -export sisuVER=$(git describe --long --tags | sed 's/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g') -#export sisuBIN=bin -export sisuSRC=~/grotto/repo/git.repo/projects/project-sisu/sisu -export sisuDOC=~/grotto/repo/git.repo/projects/project-sisu/susu-markup/sisu-markup-samples/data/samples/current -export sisuOUT=/var/www -export sisuOUTver=/tmp/sisu/$sisuVER/www -export RUBYLIB+=`pwd`/lib -#+END_SRC - -#+BEGIN_SRC sh +#+BEGIN_SRC shell export Date=`date "+%Y%m%d"` export sisuver=$(git describe --long --tags | sed 's/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g') - ### set local values in .envrc-local (or modify here if you must) - # export sisuPROJ=~/grotto/repo/git.repo/projects/doc-reform/code/software/sisu - # export sisuDOC=~/grotto/repo/git.repo/projects/project-sisu/doc-reform-markup/sisu-markup-samples - # export sisuSRC=~/grotto/repo/git.repo/projects/project-sisu/sisu - # export sisuDOC=~/grotto/repo/git.repo/projects/project-sisu/susu-markup/sisu-markup-samples/data/samples/current - # export sisuOUT=/srv/www/sisu - # export sisuOUTver=/srv/www/sisu/$sisuVER/www - # export sisu=/srv/www/sisu - # export sisu=/var/www/sqlite - # export sisu=/srv/www/sisu/sqlite - export sisu=$sisuPROJ/src - export sisu=$sisuPROJ/result/lib - export sisu=$sisuDOC/markup/pod - export sisu=$sisuOUT/$sisuVER - export sisu='http://localhost/sisu_search' - # export sisuSearchActionRemote='https://sisudoc.org/sisu_search' - export sisuCGIform='sisu_search' - export sisuSQLdb='sisusearch.db' export PROG_VER_GIT="`git describe --long --tags | sed -e 's/^[ a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g'`" #export PROG_VER_DECLARED="`cat ./views/version.txt | grep --color=never "enum" | sed 's/.\+(\([0-9]\+\),[ \t]\+\([0-9]\+\),[ \t]\+\([0-9]\+\)[ \t]*).\+/\1.\2.\3/g'`" export sisuNixHelp="cat ./.env/nix-commands" @@ -249,5 +217,3 @@ export RUBYLIB+=`pwd`/lib export sisuSqlite="sisu --very-verbose --sqlite-discrete --sqlite-db-path=\"$sisuDBpath\" --sqlite-db-filename=\"sisu.search.db\" --output=\"\$sisuOUT\" $sisuPOD/*" #export sisuSqlite="sisu --very-verbose --sqlite-update --sqlite-db-path=\"$sisuDBpath\" --sqlite-db-filename=\"sisu.search.db\" --output=\"\$sisuOUT\" $sisuPOD/*" #+END_SRC - - diff --git a/org/config_git.org b/org/config_git.org index 68ff2cea..baedbd8e 100644 --- a/org/config_git.org +++ b/org/config_git.org @@ -108,6 +108,7 @@ !.envrc !.envrc-local !.envrc-nix +!!.envrc-git-init #+END_SRC ** .gitattributes :gitattributes: diff --git a/org/config_nix.org b/org/config_nix.org index 200fe7f2..9b922882 100644 --- a/org/config_nix.org +++ b/org/config_nix.org @@ -4,7 +4,7 @@ #+FILETAGS: :sisu: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 - 2025 Ralph Amissah #+LANGUAGE: en #+STARTUP: content hideblocks hidestars noindent entitiespretty #+PROPERTY: header-args :exports code @@ -22,32 +22,30 @@ /srv/nix/nixpkgs #+END_SRC +* sisu + - default.nix - shell.nix -** flake :flake: -*** flake -**** flake.nix +** flake.nix #+HEADER: :tangle ../flake.nix #+HEADER: :noweb yes #+BEGIN_SRC nix { description = "sisu parser & document generator"; - inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; # "github:nixos/nixpkgs"; "github:NixOS/nixpkgs/nixpkgs-unstable"; "nixpkgs/nixos-unstable"; "nixpkgs/nixos-21.11"; - inputs.flake-utils.url = "github:numtide/flake-utils"; + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; # "github:nixos/nixpkgs"; # "github:NixOS/nixpkgs/nixpkgs-unstable"; "nixpkgs/nixos-unstable"; "nixpkgs/nixos-21.11"; outputs = { self, nixpkgs, - flake-utils, } @ inputs: let pname = "sisu"; version = "<<sisu_project_version>>"; shell = ./shell.nix; # ./default.nix; - devEnv = ./shell.nix; # ./.envrc; # ./shell.nix; # ./default.nix; - supportedSystems = ["x86_64-linux"]; # [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ]; + devEnv = ./.envrc; # ./.envrc; # ./shell.nix; # ./default.nix; + supportedSystems = [ "x86_64-linux" ]; # [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ]; forAllSystems = nixpkgs.lib.genAttrs supportedSystems; - nixpkgsFor = forAllSystems (system: import nixpkgs {inherit system;}); # nixpkgs instantiated for supported system types + nixpkgsFor = forAllSystems (system: import nixpkgs { inherit system; }); # nixpkgs instantiated for supported system types checkPhase = '' runHook preCheck runHook postCheck @@ -140,6 +138,7 @@ sigil calibre #(suite includes: ebook-viewer) foliate + validatePkgConfig jq #git ]; @@ -156,6 +155,7 @@ zip unzip xz + validatePkgConfig jq #git ]; @@ -175,10 +175,11 @@ source-sans-pro source-serif-pro source-code-pro - texlive.combined.scheme-full + texliveFull # texliveTeTeX noto-fonts noto-fonts-cjk-sans takao + validatePkgConfig jq #git ]; @@ -195,6 +196,7 @@ zip unzip xz + validatePkgConfig jq #git ]; @@ -209,6 +211,7 @@ sqlite graphicsmagick perl538Packages.Po4a + validatePkgConfig jq #git ]; @@ -250,7 +253,7 @@ mkShell { xz zip openssl - #texlive-combined-full + #texliveFull # texliveTeTeX nixFlakes validatePkgConfig nix-output-monitor @@ -265,86 +268,69 @@ mkShell { #+END_SRC ** packages.nix -*** default +*** ruby next -#+HEADER: :NO-tangle ../packages.nix +#+NAME: ruby_next #+BEGIN_SRC nix -{ pkgs ? import <nixpkgs> {} }: -with pkgs; [ - <<ruby_current>> - <<packages_project_relevant>> - <<packages_build>> -] +ruby<<ruby_version_next>> +rubyPackages<<ruby_version_next>>.rake +rubyPackages<<ruby_version_next>>.sqlite3 +rubyPackages<<ruby_version_next>>.thor #+END_SRC -*** ruby 3.2 +*** ruby current -#+HEADER: :tangle-NO ../nix/pkglst/packages_ruby_3_2.nix +#+NAME: ruby_current #+BEGIN_SRC nix -{ pkgs ? import <nixpkgs> {} }: -with pkgs; [ - <<ruby_version_3_2>> - <<packages_project_relevant>> - <<packages_build>> -] +ruby<<ruby_version_current>> +rubyPackages<<ruby_version_current>>.rake +rubyPackages<<ruby_version_current>>.sqlite3 +rubyPackages<<ruby_version_current>>.thor #+END_SRC -*** ruby 3.1 +*** ruby legacy -#+HEADER: :tangle-NO ../nix/pkglst/packages_ruby_3_1.nix +#+NAME: ruby_legacy #+BEGIN_SRC nix -{ pkgs ? import <nixpkgs> {} }: -with pkgs; [ - <<ruby_version_3_1>> - <<packages_project_relevant>> - <<packages_build>> -] +<<ruby_version_3_2>> #+END_SRC -*** ruby 3.0 +*** ruby versions current, next +**** ruby version next -#+HEADER: :tangle-NO ../nix/pkglst/packages_ruby_3_0.nix +#+NAME: ruby_version_next #+BEGIN_SRC nix -{ pkgs ? import <nixpkgs> {} }: -with pkgs; [ - <<ruby_version_3_0>> - <<packages_project_relevant>> - <<packages_build>> -] +_3_4 #+END_SRC -*** ruby legacy - -#+NAME: ruby_legacy -#+BEGIN_SRC nix -<<ruby_version_3_1>> -#+END_SRC +**** ruby version current -*** ruby current +- default to current nix version, which is ruby 3.3 but not provided as a fixed lable/tag, so leave blank and will + follow nix current nix -#+NAME: ruby_current +#+NAME: ruby_version_current #+BEGIN_SRC nix -<<ruby_version_3_3>> #+END_SRC -*** ruby next +**** ruby version legacy -#+NAME: ruby_next +#+NAME: ruby_version_legacy #+BEGIN_SRC nix -<<ruby_version_3_3>> +_3_2 #+END_SRC -*** ruby 3.3 - ruby_version_3_3 +*** ruby fixed versions +**** ruby 3.4 - ruby_version_3_4 -#+NAME: ruby_version_3_3 +#+NAME: ruby_version_3_4 #+BEGIN_SRC nix -ruby_3_3 -rubyPackages_3_3.rake -rubyPackages_3_3.sqlite3 -rubyPackages_3_3.thor +ruby_3_4 +rubyPackages_3_4.rake +rubyPackages_3_4.sqlite3 +rubyPackages_3_4.thor #+END_SRC -*** ruby 3.2 - ruby_version_3_2 +**** ruby 3.2 - ruby_version_3_2 #+NAME: ruby_version_3_2 #+BEGIN_SRC nix @@ -354,26 +340,6 @@ rubyPackages_3_2.sqlite3 rubyPackages_3_2.thor #+END_SRC -*** ruby 3.1 - ruby_version_3_1 - -#+NAME: ruby_version_3_1 -#+BEGIN_SRC nix -ruby_3_1 -rubyPackages_3_1.rake -rubyPackages_3_1.sqlite3 -rubyPackages_3_1.thor -#+END_SRC - -*** ruby 3.0 - ruby_version_3_0 - -#+NAME: ruby_version_3_0 -#+BEGIN_SRC nix -ruby_3_0 -rubyPackages_3_0.rake -rubyPackages_3_0.sqlite3 -rubyPackages_3_0.thor -#+END_SRC - *** nix related packages #+NAME: nix_packages @@ -393,7 +359,7 @@ unzip xz zip openssl -#texlive-combined-full +#texliveFull # texliveTeTeX #+END_SRC *** project misc build packages @@ -413,7 +379,6 @@ git #starship #+END_SRC -** variables ** sisu version SET VERSION :version:set:project: #+NAME: sisu_project_version |