diff options
Diffstat (limited to 'sundry/spine_search_cgi/derivation.nix')
| -rw-r--r-- | sundry/spine_search_cgi/derivation.nix | 120 | 
1 files changed, 0 insertions, 120 deletions
| diff --git a/sundry/spine_search_cgi/derivation.nix b/sundry/spine_search_cgi/derivation.nix deleted file mode 100644 index a00865f..0000000 --- a/sundry/spine_search_cgi/derivation.nix +++ /dev/null @@ -1,120 +0,0 @@ -{ pkgs ? import <nixpkgs> {}, -  stdenv ? pkgs.stdenv, -  lib ? pkgs.lib, -  ldc ? null, -  dcompiler ? pkgs.ldc, -  dub ? pkgs.dub -}: -assert dcompiler != null; -with ( -  assert dcompiler != null; -  with lib; -  let -    # Filter function to remove the .dub package folder from src -    filterDub = name: type: let baseName = baseNameOf (toString name); in ! ( -      type == "directory" && baseName == ".dub" -    ); -    targetOf = package: "${package.targetPath or "."}/${package.targetName or package.name}"; -    # Remove reference to build tools and library sources -    disallowedReferences = deps: [ dcompiler dub ]; -    removeExpr = refs: ''remove-references-to ${lib.concatMapStrings (ref: " -t ${ref}") refs}''; -  in { -    mkDubDerivation = lib.makeOverridable ({ -      src, -      nativeBuildInputs ? [], -      dubJSON ? src + "/dub.json", -      passthru ? {}, -      package ? lib.importJSON dubJSON, -      ... -    } @ attrs: stdenv.mkDerivation (attrs // { -      pname = package.name; -      nativeBuildInputs = [ dcompiler dub pkgs.removeReferencesTo ] ++ nativeBuildInputs; -      disallowedReferences = disallowedReferences deps; -      passthru = passthru // { -        inherit dub dcompiler pkgs; -      }; -      src = lib.cleanSourceWith { -        filter = filterDub; -        src = lib.cleanSource src; -      }; -      preFixup = '' -        find $out/share/cgi-bin -type f -exec ${removeExpr (disallowedReferences deps)} '{}' + || true -      ''; -      buildPhase = '' -        runHook preBuild -        export HOME=$PWD -        for dc_ in dmd ldmd2 gdmd; do -          echo "- check for D compiler $dc_" -          dc=$(type -P $dc_ || echo "") -          if [ ! "$dc" == "" ]; then -            break -          fi -        done -        if [ "$dc" == "" ]; then -          exit "Error: could not find D compiler" -        fi -        echo "$dc_ used as D compiler to build $pname" -        dub build --compiler=$dc --build=release --combined --skip-registry=all -        runHook postBuild -      ''; -      checkPhase = '' -        runHook preCheck -        export HOME=$PWD -        dub test --combined --skip-registry=all -        runHook postCheck -      ''; -      installPhase = '' -        runHook preInstall -        mkdir -p $out/share/cgi-bin -        cp -r "${targetOf package}" $out/share/cgi-bin -        install -m755 -D $out/share/cgi-bin/spine_search spine_search -        runHook postInstall -      ''; -      postInstall = '' -        echo "HERE ${targetOf package} $out/share/cgi-bin" -        echo `ls -la $out/share/cgi-bin/spine_search` -      ''; -      meta = lib.optionalAttrs (package ? description) { -        description = package.description; -      } // attrs.meta or {}; -    } // lib.optionalAttrs (!(attrs ? version)) { -      name = package.name; # use name from dub.json, unless pname and version are specified -    })); -  } -); -mkDubDerivation rec { -  name = "spine-search-${version}"; -  version = "0.11.3"; -  src = ./.; -  buildInputs = [ -    pkgs.sqlite ( -      with pkgs; [ -        nixVersions.unstable #nixFlakes -        ## package manager -        dub -        ## compiler -        ldc -        rund -        ## linker -        #lld -        #mold -        ## builder -        #ninja -        sqlite -      ] -    ) -  ]; -  meta = with pkgs.lib; { -    pname       = "spine-search"; -    version     = "0.11.3"; -    homepage    = "https://sisudoc.org"; -    description = "cgi sqlite search form for document object search"; -    longDescription = '' -      A sisu like parser and document generator -      ... -    ''; -    license     = licenses.agpl3Plus; -    platforms   = platforms.linux; -    maintainers = [ "RalphAmissah" ]; -  }; -} | 
