diff options
Diffstat (limited to 'org')
| -rw-r--r-- | org/spine_build_scaffold.org | 154 | 
1 files changed, 88 insertions, 66 deletions
| diff --git a/org/spine_build_scaffold.org b/org/spine_build_scaffold.org index f476485..fe30f53 100644 --- a/org/spine_build_scaffold.org +++ b/org/spine_build_scaffold.org @@ -357,6 +357,7 @@ get_depends:  	hwd=$$(echo `pwd`) && \  	gwd="$${hwd}/src/ext_depends" && \  	dirs=$$(echo `ls -gx $${gwd}`) && \ +	license_bsl="Boost Software License 1.0 (BSL-1.0)" && \  	echo $${hwd} && \  	echo $${gwd} && \  	echo $${dirs} && \ @@ -370,7 +371,9 @@ get_depends:  	      git clone --depth=1 https://github.com/tjhann/$${dir} && \  	      cd $${dir} && \  	      echo $$PWD && \ -	      echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}"  > ../shaHEADdep_$${dir} && \ +	      echo "$${dir} `git rev-parse HEAD | cut -c 1-8`"   > ../$${dir}.meta && \ +	      echo "https://github.com/tjhann/$${dir}"          >> ../$${dir}.meta && \ +	      echo "$${license_bsl}"                            >> ../$${dir}.meta && \  	      cd $${gwd} && \  	      rm -rf $${dir}/.git; \  	    elif [[ "d2sqlite3" == $${dir}  || "D-YAML" == $${dir} || "tinyendian" == $${dir} ]]; then \ @@ -378,7 +381,9 @@ get_depends:  	      rm -rf $${dir} && \  	      git clone --depth=1 https://github.com/dlang-community/$${dir} && \  	      cd $${dir} && \ -	      echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}"  > ../shaHEADdep_$${dir} && \ +	      echo "$${dir} `git rev-parse HEAD | cut -c 1-8`"   > ../$${dir}.meta && \ +	      echo "https://github.com/dlang-community/$${dir}" >> ../$${dir}.meta && \ +	      echo "$${license_bsl}"                            >> ../$${dir}.meta && \  	      cd $${gwd} && \  	      rm -rf $${dir}/.git; \  	    fi; \ @@ -395,16 +400,15 @@ get_depends:  	      rm -rf $${dir} && \  	      git clone --depth=1 https://github.com/lionello/$${dir} && \  	      cd $${dir} && \ -	      echo "`git rev-parse HEAD | cut -c 1-8` - $${dir}"  > ../shaHEADdep_$${dir} && \ +	      echo "$${dir} `git rev-parse HEAD | cut -c 1-8`"   > ../$${dir}.meta && \ +	      echo "https://github.com/lionello/$${dir}"        >> ../$${dir}.meta && \ +	      echo "MIT License"                                >> ../$${dir}.meta && \  	      cd $${ewd} && \  	      rm -rf $${dir}/.git; \  	    fi; \  	  fi; \  	done; \  	cd $${hwd} -set_depends: get_depends -	cp -vi src/ext_depends/tinyendian/source/tinyendian.d src/ext_depends/D-YAML/source/dyaml/tinyendian.d && \ -	echo "`cat src/ext_depends/shaHEADdep_tinyendian` - dyaml/tinyendian.d" >>  src/ext_depends/shaHEADdep_D-YAML  #+END_SRC  gitDir=dub2nix; git clone --depth=1 https://github.com/lionello/${gitDir} | rm -rf ${gitDir}/.git @@ -1136,7 +1140,7 @@ gitsnapshot: distclean tangle    "name":                      "spine",    "version":                   "<<version_spine>>",    "description":               "a sisu like document parser", -  "homepage":                  "http://sisudoc.org", +  "homepage":                  "https://sisudoc.org",    "license":                   "AGPL-3.0+",    "targetPath":                "./bin",    "sourcePaths":               [ "./src/doc_reform" ], @@ -1199,11 +1203,11 @@ gitsnapshot: distclean tangle        "copyright": "Copyright © 2011-2018, Ferdinand Majerech",    	  "sourcePaths": [          "./src/ext_depends/D-YAML/source/dyaml", -        "./src/ext_depends/D-YAML/source/tinyendian" +        "./src/ext_depends/tinyendian/source"        ],    	  "importPaths": [          "./src/ext_depends/D-YAML/source/dyaml", -        "./src/ext_depends/D-YAML/source/tinyendian" +        "./src/ext_depends/tinyendian/source"        ],        "preGenerateCommands": [          "rm -rf ./src/ext_depends/D-YAML/examples", @@ -1242,7 +1246,7 @@ gitsnapshot: distclean tangle    "name":                      "spine",    "version":                   "<<version_spine>>",    "description":               "a sisu like document parser", -  "homepage":                  "http://sisudoc.org", +  "homepage":                  "https://sisudoc.org",    "license":                   "AGPL-3.0+",    "targetPath":                "./bin",    "sourcePaths":               [ "./src/doc_reform" ], @@ -1357,7 +1361,7 @@ gitsnapshot: distclean tangle    "name":                      "spine",    "version":                   "<<version_spine>>",    "description":               "a sisu like document parser", -  "homepage":                  "http://sisudoc.org", +  "homepage":                  "https://sisudoc.org",    "license":                   "AGPL-3.0+",    "targetPath":                "./bin",    "sourcePaths":               [ "./src/doc_reform" ], @@ -1413,7 +1417,7 @@ gitsnapshot: distclean tangle    "copyright":                 "Copyright © 2015 - 2020 Ralph Amissah",    "name":                      "spine",    "description":               "a sisu like document parser", -  "homepage":                  "http://sisudoc.org", +  "homepage":                  "https://sisudoc.org",    "license":                   "AGPL-3.0+",    "targetPath":                "./bin",    "sourcePaths":               [ "./src/doc_reform" ], @@ -1460,7 +1464,7 @@ gitsnapshot: distclean tangle  #+END_SRC  * dub.sdl REFERENCE :dub:config:sdl: -Every DUB package should contain a [[http://code.dlang.org/package-format?lang=json][dub.json]] (or [[http://code.dlang.org/package-format?lang=sdl][dub.sdl]]) +Every DUB package should contain a [[https://code.dlang.org/package-format?lang=json][dub.json]] (or [[https://code.dlang.org/package-format?lang=sdl][dub.sdl]])  not configured here using dub.json for the moment @@ -1469,7 +1473,7 @@ not configured here using dub.json for the moment  #+BEGIN_SRC sh  :NO-tangle ../dub.sdl :tangle-mode (identity #o755) :shebang #!/usr/bin/env dub  name                "spine"  description         "sisu document parser" -homepage            "http://sisudoc.org" +homepage            "https://sisudoc.org"  authors             "Ralph Amissah"  copyright           "Copyright (C) 2016 - 2020 Ralph Amissah"  license             "AGPL-3.0+" @@ -1479,11 +1483,11 @@ stringImportPaths   "./views"  buildRequirements   "allowWarnings"  targetType          "executable"  platforms           "posix" -dependency          "d2sqlite3"      version="~><<version_d2sqlite3>>"     # https://code.dlang.org/packages/d2sqlite3     http://biozic.github.io/d2sqlite3/d2sqlite3 +dependency          "d2sqlite3"      version="~><<version_d2sqlite3>>"     # https://code.dlang.org/packages/d2sqlite3     https://github.com/dlang-community/d2sqlite3    subconfiguration  "d2sqlite3"      "all-included"  dependency          "imageformats"   version="~><<version_imageformats>>"  # https://code.dlang.org/packages/imageformats  https://github.com/lgvz/imageformats  dependency          "dyaml"          version="~><<version_dyaml>>"         # https://code.dlang.org/packages/dyaml         https://github.com/dlang-community/D-YAML -dependency          "tinyendian"     version="~><<version_tinyendian>>"    # http://code.dlang.org/packages/tinyendian     https://github.com/dlang-community/tinyendian // dyaml dependency +dependency          "tinyendian"     version="~><<version_tinyendian>>"    # https://code.dlang.org/packages/tinyendian    https://github.com/dlang-community/tinyendian // dyaml dependency  #+END_SRC  ** default @@ -1610,8 +1614,8 @@ configuration "build" {  * meson REVISIT :meson:build:  ** notes -http://mesonbuild.com/D.html -http://mesonbuild.com/Dependencies.html#Dub +https://mesonbuild.com/D.html +https://mesonbuild.com/Dependencies.html#Dub  - create and move to subdirectory    rm -r build; mkdir build && cd build @@ -1723,7 +1727,7 @@ spine_exe = executable('spine',    - dub      - https://code.dlang.org/packages/d2sqlite3    - upstream -    - https://github.com/biozic/d2sqlite3 +    - https://github.com/dlang-community/d2sqlite3  - dyaml    - dub      - https://code.dlang.org/packages/dyaml @@ -1738,7 +1742,7 @@ spine_exe = executable('spine',      - https://github.com/lgvz/imageformats  - tinyendian (dyaml dependency)    - dub -    - http://code.dlang.org/packages/tinyendian +    - https://code.dlang.org/packages/tinyendian    - upstream git clone      - https://github.com/dlang-community/tinyendian.git  #+END_SRC @@ -1749,7 +1753,7 @@ spine_exe = executable('spine',  #+BEGIN_SRC sh :tangle ../subprojects/d2sqlite3.wrap  [wrap-git]  directory = d2sqlite3 -url       = https://github.com/biozic/d2sqlite3.git +url       = https://github.com/dlang-community/d2sqlite3.git  revision  = head  #+END_SRC @@ -2079,14 +2083,11 @@ make modificatons if desired  if type lorri &>/dev/null; then    echo "direnv: using lorri from PATH ($(type -p lorri))"    eval "$(lorri direnv)" -else -  # fall back to using direnv's builtin nix support -  # to prevent bootstrapping problems. +else # fallback prevent bootstrapping problems by using direnv's builtin nix support    use nix    NIX_ENFORCE_PURITY=0  fi -# source an additional user-specific .envrc in ./.envrc-local -if [ -e .envrc-local ]; then +if [ -e .envrc-local ]; then # source an additional user-specific .envrc in ./.envrc-local    source .envrc-local  fi  #+END_SRC @@ -2127,9 +2128,15 @@ fi  - bespoke modify appropriately and generate if needed -#+BEGIN_SRC nix :NO-tangle ../.envrc-local +#+BEGIN_SRC nix :tangle ../.envrc-local_  export NIX_PATH=nixpkgs=<<nixpkgs_path>> -nix-instantiate --find-file nixpkgs +## reload when these files change +watch_file flake.nix +# watch_file flake.lock +## load the flake devShell +eval "$(nix print-dev-env)" +# echo $NIX_BUILD_TOP +echo "<nixpkgs> `nix-instantiate --find-file nixpkgs`"  #+END_SRC  **** nixpkgs_path SETUP @@ -2137,7 +2144,7 @@ nix-instantiate --find-file nixpkgs  #+NAME: nixpkgs_path  #+BEGIN_SRC nix -<<nixpkgs_path_default>> +<<nixpkgs_path_local>>  #+END_SRC  ***** nixpkgs path options @@ -2149,17 +2156,17 @@ nix-instantiate --find-file nixpkgs  <nixpkgs>  #+END_SRC -- local path +- local path SET WARN  #+NAME: nixpkgs_path_local  #+BEGIN_SRC nix -/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs +/nixpkgs-ra/nixpkgs  #+END_SRC  ** flake :flake:  - flake.nix -    /nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs +    /nixpkgs-ra/nixpkgs      ./shell.nix    - shell.nix        ./pkgs/shell-pkgs.nix @@ -2179,7 +2186,7 @@ nix flake update --recreate-lock-file    description = "a sisu like document parser";    inputs = {      flake-utils.url = "github:numtide/flake-utils"; -    nixpkgs.url = "/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs"; +    nixpkgs.url = "/nixpkgs-ra/nixpkgs";      dub2nix-src = {        url = "github:lionello/dub2nix";        flake  = false; @@ -2208,7 +2215,7 @@ nix flake update --recreate-lock-file    description = "a sisu like document parser";    inputs = {      flake-utils.url = "github:numtide/flake-utils"; -    nixpkgs.url = "/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs"; +    nixpkgs.url = "/nixpkgs-ra/nixpkgs";      d2sqlite3 = {        url    = "github:dlang-community/d2sqlite3";        flake  = false; @@ -2253,8 +2260,8 @@ nix flake update --recreate-lock-file    description = "a sisu like document parser";    inputs = {      flake-utils.url = "github:numtide/flake-utils"; -    nixpkgs.url = "/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs"; -    # pkgs /nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs {} +    nixpkgs.url = "/nixpkgs-ra/nixpkgs"; +    # pkgs /nixpkgs-ra/nixpkgs {}      #spine.url = "/grotto-ra/repo/git.repo/projects/project-spine/doc-reform";      #spine.url = "./.";    }; @@ -2287,13 +2294,13 @@ nix flake update --recreate-lock-file    nix-shell --pure -I nixpkgs=/nixpkgs-ra/nixpkgs    nix-shell --pure -p "with import /nixpkgs-ra/nixpkgs {}; ldc" -  nix-shell --pure -p "with import /nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs {}; [dub ldc]" +  nix-shell --pure -p "with import /nixpkgs-ra/nixpkgs {}; [dub ldc]"    shell.nix direnv: export +IN_NIX_SHELL    nix-shell -p nixFlakes    nix-shell -p nixFlakes --pure -  nix-shell -p nixFlakes --pure -p "with import /nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs {}; [dub ldc]" +  nix-shell -p nixFlakes --pure -p "with import /nixpkgs-ra/nixpkgs {}; [dub ldc]"    shell.nix -I .envrc    shell.nix @@ -2303,7 +2310,8 @@ nix flake update --recreate-lock-file    nix-build -I .envrc    nix build -  nix build -f default.nix +  nix build -f default.nix && noti +  nix build -f default.nix && noti -t "spine built" -m "see ./result/bin/spine"    nix build -f project.nix    nix build -f spine.nix @@ -2317,16 +2325,30 @@ pkgs.mkShell {    buildInputs = with pkgs; [      (import ./nix/pkglst/shell-pkgs.nix { inherit pkgs; })    ]; +  shellHook = '' +    if [[ -e ".envrc" ]]; then +      source .envrc +    fi +  ''; +} +#+END_SRC + + +#+BEGIN_SRC nix :NO-tangle ../shell.nix :tangle-mode (identity #o755) :-shebang "#!/usr/bin/env -S nix-shell" +{ pkgs ? import <nixpkgs> {} }: +pkgs.mkShell { +  buildInputs = with pkgs; [ +    (import ./nix/pkglst/shell-pkgs.nix { inherit pkgs; }) +  ];    buildPhase = "nix build -f default.nix";    shellHook = ''      echo "built spine @ ./result/bin/spine"      if [[ -e ".envrc" ]]; then        source .envrc      fi -    #nix-instantiate | nix show-derivation | jq +    nix-instantiate | nix show-derivation | jq    '';  } -#+END_SRC  nix-shell nix/shell/shell_spine.nix --pure @@ -2366,7 +2388,7 @@ mkDubDerivation rec {      { inherit pkgs; }    )];    meta = with pkgs.lib; { -    homepage = http://sisudoc.org; +    homepage = https://sisudoc.org;      description = "a sisu like document parser";      license = licenses.agpl3Plus;      platforms = platforms.linux; @@ -2415,7 +2437,7 @@ mkDubDerivation rec {      echo "built $out/bin/spine"    '';    meta = with pkgs.lib; { -    homepage = http://sisudoc.org; +    homepage = https://sisudoc.org;      description = "a sisu like document parser";      license = licenses.agpl3Plus;      platforms = platforms.linux; @@ -2432,7 +2454,7 @@ mkDubDerivation rec {  - nix-build -I nixpkgs=<provide local nix path>    e.g. nix-build -I nixpkgs=/nixpkgs-ra/nixpkgs -  nix-build -I nixpkgs=/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs +  nix-build -I nixpkgs=/nixpkgs-ra/nixpkgs    nix-build -I .envrc-local    nix-build -I .envrc    default.nix -I .envrc @@ -2535,7 +2557,7 @@ installPhase = ''  #+NAME: nix_project_meta  #+BEGIN_SRC nix  meta = with pkgs.lib; { -  homepage = http://sisudoc.org; +  homepage = https://sisudoc.org;    description = "a sisu like document parser";    license = licenses.agpl3Plus;    platforms = platforms.linux; @@ -2796,7 +2818,7 @@ jq  #+BEGIN_SRC sh :tangle ../.gitignore  # git ls-files --others --exclude-from=.git/info/exclude -* +,*  !.gitignore  !README.md  !COPYRIGHT @@ -2851,18 +2873,18 @@ notes/**  !notes/reminders  !notes/reminders/**  .dub/** -**/.dub/** -**/cgi-bin/** +,**/.dub/** +,**/cgi-bin/**  tmp/** -*_.org -*_.d -*_.txt -*_ -*.swp -*~ -*~ +,*_.org +,*_.d +,*_.txt +,*_ +,*.swp +,*~ +,*~  \#* -*.\#* +,*.\#*  #!*/  #\#*  #*.\#* @@ -2871,7 +2893,7 @@ tmp/**  * misc  ** sh script to batch process _emacs org babel tangle_ :shell_script:tangle: -  [[http://orgmode.org/manual/Batch-execution.html]] +  [[https://orgmode.org/manual/Batch-execution.html]]  creates a shell batch script called "tangle", that will tangle (emacs org  babel tangle) org files in ./org/ to create .d source files in ./src/doc_reform/  (similar functionality is contained within the "makefile" created by this @@ -2928,14 +2950,14 @@ nix-build project.nix  #+BEGIN_SRC sh  nix-shell --pure -nix-build -I nixpkgs=/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs +nix-build -I nixpkgs=/nixpkgs-ra/nixpkgs  #+END_SRC  - project.nix  #+BEGIN_SRC sh  nix-shell --pure -nix-build -I nixpkgs=/nixpkgs-ra/nixpkgs/.gitworktree/ra/nixpkgs project.nix +nix-build -I nixpkgs=/nixpkgs-ra/nixpkgs  #+END_SRC  #+BEGIN_SRC sh @@ -3090,8 +3112,8 @@ time make ldc_testrun_filelist_dir_pod  - [X] Set D_COMPILER (one of DMD LDC or GDC)  - [X] Set debug flags (using DMD standard flag -deb -[[http://wiki.dlang.org/Compilers][D Compilers wiki https://wiki.dlang.org/Compilers]] -[[http://dlang.org/download.html][D Compilers download http://dlang.org/download.html]] +[[https://wiki.dlang.org/Compilers][D Compilers wiki https://wiki.dlang.org/Compilers]] +[[https://dlang.org/download.html][D Compilers download https://dlang.org/download.html]]  ** version info REVIEW :version: @@ -3120,19 +3142,19 @@ sha256  = "0g5svf55i0kq55q49awmwqj9qi1n907cyrn1vjdjgs8nx6nn35gx";  - https://dlang.org/changelog/index.html  - https://dlang.org/changelog/pending.html -- http://downloads.dlang.org/releases/ -- http://downloads.dlang.org/releases/2.x/ +- https://downloads.dlang.org/releases/ +- https://downloads.dlang.org/releases/2.x/  ** dub :dub:  https://github.com/dlang/dub/ -http://code.dlang.org/getting_started -http://code.dlang.org/docs/commandline +https://code.dlang.org/getting_started +https://code.dlang.org/docs/commandline  *** setup  **** dub json or sdlang -Every DUB package should contain a [[http://code.dlang.org/package-format?lang=json][dub.json]] or [[http://code.dlang.org/package-format?lang=sdl][dub.sdl]] +Every DUB package should contain a [[https://code.dlang.org/package-format?lang=json][dub.json]] or [[https://code.dlang.org/package-format?lang=sdl][dub.sdl]]  https://code.dlang.org/package-format?lang=sdl  https://code.dlang.org/packages/sdlang-d  https://github.com/Abscissa/SDLang-D/blob/master/HOWTO.md | 
