diff options
Diffstat (limited to 'org/spine_info.org')
| -rw-r--r-- | org/spine_info.org | 126 | 
1 files changed, 72 insertions, 54 deletions
| diff --git a/org/spine_info.org b/org/spine_info.org index 9df90c6..f0e8d7c 100644 --- a/org/spine_info.org +++ b/org/spine_info.org @@ -47,6 +47,14 @@  <<sisudoc_spine_README_install_build>> +,*** build using nix flakes on linux (binary in ./result/bin) + +<<sisudoc_spine_README_install_build_using_nix_flakes>> + +,*** build using dub directly (binary in ./bin) + +<<sisudoc_spine_README_install_build_using_dub_directly>> +  ,* Commands - document processing examples  ,** basic output @@ -130,7 +138,7 @@  #+HEADER: :tangle "../README.md"  #+HEADER: :noweb yes -#+BEGIN_SRC text +#+BEGIN_SRC markdown  <<sisudoc_spine_README_project_header_info>>  # Summary @@ -150,6 +158,14 @@  <<sisudoc_spine_README_install_build>> +### build using nix flakes on linux (binary in ./result/bin) + +<<sisudoc_spine_README_install_build_using_nix_flakes>> + +### build using dub directly (binary in ./bin) + +<<sisudoc_spine_README_install_build_using_dub_directly>> +  # Commands - document processing examples  ## basic output @@ -289,68 +305,65 @@ all work in this installation of and use of sisudoc-spine will take place in the  directory: sisudoc-spine  #+END_SRC -*** install build project +*** install & build project +**** install & build project  #+NAME: sisudoc_spine_README_install_build  #+BEGIN_SRC text  NOTE all actions to build sisudoc-spine are taken within the directory  sisudoc-spine -cd sisudoc-spine - -to build directly with dub, either: - -for ldc2: -  # on nix (get dependencies by setting your development environment): -  nix develop ".#dsh-nixpkgs-ldc-dub" --print-build-logs -c zsh +NOTE: +- if dub is used to build, the resulting binary should be located in ./bin: +- if "nix build" is used the resulting binary should be in ./result/bin -  # assuming you have ldc2 & dub installed on your system: -  dub run --compiler=ldmd2 --config=ldmd2 --combined --skip-registry=all -  dub --compiler=ldmd2 --config=ldmd2 - -  dub run --compiler=ldc2 --config=ldc2 --combined --skip-registry=all -  dub --compiler=ldc2 --config=ldc2 - -for dmd: -  # on nix (get dependencies by setting your development environment): -  nix develop ".#dsh-nixpkgs-dmd-dub" --print-build-logs -c zsh - -  # assuming you have dmd & dub installed on your system: -  dub run --compiler=dmd --config=dmd --combined --skip-registry=all -  dub --compiler=dmd --config=dmd +cd sisudoc-spine +#+END_SRC -to build with make using the provided makefile, (assuming you have the named -compiler and dub installed on your system) either: +**** install build project using nix flakes -for ldc2: +#+NAME: sisudoc_spine_README_install_build_using_nix_flakes +#+BEGIN_SRC text +you need to have nix installed on your system, and to have nix flakes enabled, +on Debian for example, you would do the following: -  make ldc +sudo apt install nix -for dmd: +create the file in the given path & filename: ~/.config/nix/nix.conf +with the following content: experimental-features = flakes nix-command -  make dmd +which can be achieved thusly: -to build using nix flakes on linux / nixos +mkdir -p ~/.config/nix && echo "experimental-features = flakes nix-command" >> ~/.config/nix/nix.conf -for ldc2: +- to use the D compiler ldc2:    nix build ".#spine-nixpkgs-ldc" --print-build-logs -for dmd: +- to use the D compiler dmd:    nix build ".#spine-nixpkgs-dmd" --print-build-logs +#+END_SRC -The Meson build system was used briefly to build spine, but the spine build -tooling for Meson has not been updated, maintained or tested in recent years. +**** install build project using dub directly -  meson -  ninja -C build -  meson setup --wipe build && ninja -v -C build -  make meson +#+NAME: sisudoc_spine_README_install_build_using_dub_directly +#+BEGIN_SRC text +- to use the D compiler ldc2: +  # on nix (get dependencies by setting your development environment): +  nix develop ".#dsh-nixpkgs-ldc-dub" --print-build-logs -c zsh + +  # assuming you have ldc2 & dub installed on your system: +  dub run --compiler=ldmd2 --config=ldmd2 --combined --skip-registry=all +  or +  dub run --compiler=ldc2 --config=ldc2 --combined --skip-registry=all -- https://mesonbuild.com/ +- to use the D compiler dmd: +  # on nix (get dependencies by setting your development environment): +  nix develop ".#dsh-nixpkgs-dmd-dub" --print-build-logs -c zsh -dub --force --compiler=ldc2 && sudo cp -v cgi-bin/spine-search /usr/lib/cgi-bin/. +  # assuming you have dmd & dub installed on your system: +  dub run --compiler=dmd --config=dmd --combined --skip-registry=all  #+END_SRC  ** commands @@ -361,10 +374,15 @@ dub --force --compiler=ldc2 && sudo cp -v cgi-bin/spine-search /usr/lib/cgi-bin/  For the most basic output you will need to specify:  - the spine binary (executable) +  - for dub builds ./bin/spine (also used filenames: spine-dmd & spine-ldc) +  - for nix flake builds ./result/bin/spine +  - the (recognized) path to a prepared (spine marked up) document or document    collection -- the (path to) where the output is to be placed -- the output types you seek + +- the output types you seek, e.g. --html --epub + +- the (path for) where the generated output is to be placed  export SpineBIN=./result/bin/spine  export SpinePOD=../sisudoc-spine-samples/markup/pod @@ -855,7 +873,7 @@ webserv:  #+HEADER: :tangle "../COPYRIGHT"  #+HEADER: :noweb yes -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Name: spine - SiSU Spine, Doc Reform    <<sisudoc_spine_copyright>> @@ -872,7 +890,7 @@ webserv:  #+HEADER: :tangle "../org/COPYRIGHT"  #+HEADER: :noweb yes -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Name: spine - SiSU Spine, Doc Reform    <<sisudoc_spine_copyright>> @@ -889,7 +907,7 @@ webserv:  #+HEADER: :tangle "../src/COPYRIGHT"  #+HEADER: :noweb yes -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Name: spine - SiSU Spine, Doc Reform    <<sisudoc_spine_copyright>> @@ -906,7 +924,7 @@ webserv:  #+HEADER: :tangle "../src/sisudoc/COPYRIGHT"  #+HEADER: :noweb yes -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Name: spine - SiSU Spine, Doc Reform    <<sisudoc_spine_copyright>> @@ -929,7 +947,7 @@ webserv:  #+HEADER: :tangle "./COPYRIGHT"  #+HEADER: :noweb yes -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Name: spine - SiSU Spine, Doc Reform    <<sisudoc_spine_copyright>> @@ -942,7 +960,7 @@ webserv:  #+HEADER: :NO-tangle "../doc/COPYRIGHT"  #+HEADER: :noweb yes -#+BEGIN_SRC txt +#+BEGIN_SRC text  <<data>>  #+END_SRC @@ -950,7 +968,7 @@ webserv:  *** copyright  #+NAME: sisudoc_spine_copyright -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Description: documents, structuring, processing, publishing, search    - static content generator @@ -964,7 +982,7 @@ webserv:  **** AGPLv3  #+NAME: sisudoc_spine_license_agpl3 -#+BEGIN_SRC txt +#+BEGIN_SRC text  - code under src/* src/sisudoc/*    - License: AGPL 3 or later: @@ -995,7 +1013,7 @@ webserv:  *** spine_summary  #+NAME: sisudoc_spine_summary -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Spine, Doc Reform (related to SiSU) uses standard:    - docReform markup syntax (based on SiSU markup)      - standard SiSU markup syntax with modified headers and minor @@ -1007,7 +1025,7 @@ webserv:    [https://www.sisudoc.org]  #+END_SRC -#+BEGIN_SRC txt +#+BEGIN_SRC text    - Homepages:      [https://www.sisudoc.org]      [https://www.sisudoc.org] @@ -1019,7 +1037,7 @@ webserv:  *** markup_samples  #+NAME: sisudoc_spine_markup_samples -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Spine, Doc Reform (SiSU) markup samples    Individual document content Copyright (Author) [as stated in document header]    Individual document content License (Author) [as stated in document header] @@ -1028,7 +1046,7 @@ webserv:  *** dependencies  #+NAME: sisudoc_spine_dependencies -#+BEGIN_SRC txt +#+BEGIN_SRC text  - Dependencies [check dub.json or dub.sdl]    - Name: d2sqlite3 | 
