guile-irregex: init at 0.9.11

+66
+66
pkgs/by-name/gu/guile-irregex/package.nix
···
··· 1 + { 2 + stdenv, 3 + fetchzip, 4 + mitscheme, 5 + guile, 6 + lib, 7 + }: 8 + stdenv.mkDerivation (finalAttrs: { 9 + pname = "guile-irregex"; 10 + version = "0.9.11"; 11 + 12 + src = fetchzip { 13 + url = "https://synthcode.com/scheme/irregex/irregex-${finalAttrs.version}.tar.gz"; 14 + hash = "sha256-abBCMNsr6GTBOm+eQWuOX8JYx/qMA/V6TwGdYRjznWU="; 15 + }; 16 + 17 + strictDeps = true; 18 + 19 + nativeBuildInputs = [ 20 + guile 21 + mitscheme 22 + ]; 23 + 24 + buildInputs = [ 25 + guile 26 + ]; 27 + 28 + env.GUILE_AUTO_COMPILE = "0"; 29 + 30 + buildPhase = '' 31 + runHook preBuild 32 + 33 + site_dir="$out/share/guile/site/3.0" 34 + lib_dir="$out/lib/guile/3.0/site-ccache" 35 + 36 + mkdir -p $site_dir/rx/source 37 + mkdir -p $lib_dir/rx/source 38 + 39 + cp $src/irregex-guile.scm $site_dir/rx/irregex.scm 40 + cp $src/irregex.scm $site_dir/rx/source/irregex.scm 41 + cp $src/irregex-utils.scm $site_dir/rx/source/irregex-utils.scm 42 + guild compile --r7rs $site_dir/rx/irregex.scm -o $lib_dir/rx/irregex.go 43 + guild compile --r7rs $site_dir/rx/source/irregex.scm -o $lib_dir/rx/source/irregex.go 44 + 45 + runHook postBuild 46 + ''; 47 + 48 + dontInstall = true; 49 + 50 + meta = { 51 + description = "IrRegular Expressions"; 52 + longDescription = '' 53 + A fully portable and efficient R[4567]RS implementation of regular expressions, supporting 54 + both POSIX syntax with various (irregular) PCRE extensions, as well as SCSH's SRE syntax, with 55 + various aliases for commonly used patterns. DFA matching is used when possible, otherwise a 56 + closure-compiled NFA approach is used. The library makes no assumptions about the encoding of 57 + strings or range of characters and can thus be used in Unicode-aware Scheme implementations. 58 + Matching may be performed over standard Scheme strings, or over arbitrarily chunked streams of 59 + strings. 60 + ''; 61 + homepage = "https://synthcode.com/scheme/irregex"; 62 + license = lib.licenses.mit; 63 + maintainers = with lib.maintainers; [ knightpp ]; 64 + platforms = guile.meta.platforms; 65 + }; 66 + })