summaryrefslogtreecommitdiffhomepage
path: root/org/spine_info.org
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2024-05-22 16:29:20 -0400
committerRalph Amissah <ralph.amissah@gmail.com>2024-05-22 16:29:20 -0400
commit672310fdcc768de1a824657cf391a4db998a9bed (patch)
tree123f7fb3b371bd332a2ce739d0cebe4926374ecd /org/spine_info.org
parentspine search info (diff)
README, further note on using nix for installation
Diffstat (limited to 'org/spine_info.org')
-rw-r--r--org/spine_info.org94
1 files changed, 59 insertions, 35 deletions
diff --git a/org/spine_info.org b/org/spine_info.org
index c0642ea..8283292 100644
--- a/org/spine_info.org
+++ b/org/spine_info.org
@@ -43,7 +43,7 @@
<<sisudoc_spine_README_install_summary>>
-,** Clone project
+,** make a directory & clone the sisudoc-spine project
<<sisudoc_spine_README_install_clone>>
@@ -51,6 +51,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
<<sisudoc_spine_README_commands>>
@@ -98,7 +106,7 @@
<<sisudoc_spine_README_install_summary>>
-## make a directory and clone the sisudoc-spine project
+## make a directory & clone the sisudoc-spine project
<<sisudoc_spine_README_install_clone>>
@@ -106,6 +114,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
<<sisudoc_spine_README_commands>>
@@ -182,6 +198,9 @@ The default build tools used are dub with ldc2 (dub is also tested)
#+NAME: sisudoc_spine_README_install_clone
#+BEGIN_SRC text
+Make a directory and clone the sisudoc-spine project (or just sisudoc-spine-
+search-cgi as needed)
+
Make a directory and clone the sisudoc-spine project
mkdir ~/git.sisudoc
@@ -197,6 +216,9 @@ all work in this installation of sisudoc-spine-search-cgi will take place in the
directory: sisudoc-spine-search-cgi
#+END_SRC
+*** install & build cgi search form
+**** install & build cgi search form
+
#+NAME: sisudoc_spine_README_install_build
#+BEGIN_SRC text
NOTE all actions to build sisudoc-spine are taken within the directory
@@ -204,63 +226,65 @@ sisudoc-spine-search-cgi
cd sisudoc-spine-search-cgi
-## directly with dub
-### ldc2
- # on nix (get dependencies by setting your development environment):
- nix develop ".#dsh-nixpkgs-ldc-dub" --print-build-logs -c zsh
-
- 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
+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
-### dmd
- # on nix (get dependencies by setting your development environment):
- nix develop ".#dsh-nixpkgs-dmd-dub" --print-build-logs -c zsh
-
- dub run --compiler=dmd --config=dmd --combined --skip-registry=all
- dub --compiler=dmd --config=dmd
+cd sisudoc-spine
+#+END_SRC
-## with make
+**** install build project using nix flakes
-### 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
-### 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:
-## with nix on linux / nixos
+mkdir -p ~/.config/nix && echo "experimental-features = flakes nix-command" >> ~/.config/nix/nix.conf
-### ldc2
+- to use the D compiler ldc2:
nix build ".#spine-search-nixpkgs-ldc" --print-build-logs
# or
nix build ".#spine-search-overlay-ldc" --print-build-logs
-### dmd
+- to use the D compiler dmd:
nix build ".#spine-search-nixpkgs-dmd" --print-build-logs
# or
nix build ".#spine-search-overlay-dmd" --print-build-logs
+#+END_SRC
+#+END_SRC
-## the Meson build system was used briefly
+**** install build project using dub directly
-On recommendation at debconf-18 meson was used briefly. It has neither been
-tested nor used since the move to nix.
+#+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
-- https://mesonbuild.com/
+ # 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
- meson
- ninja -C build
- meson setup --wipe build && ninja -v -C build
- make meson
+- 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
+
** configuration
#+NAME: sisudoc_spine_README_build_configuration