diff --git a/pkgs/development/libraries/languagemachines/frog.nix b/pkgs/by-name/fr/frog/package.nix similarity index 73% rename from pkgs/development/libraries/languagemachines/frog.nix rename to pkgs/by-name/fr/frog/package.nix index d9864573c3b5..e2ef0647f8fb 100644 --- a/pkgs/development/libraries/languagemachines/frog.nix +++ b/pkgs/by-name/fr/frog/package.nix @@ -1,34 +1,39 @@ { lib, stdenv, - fetchurl, - automake, - autoconf, + fetchFromGitHub, + gitUpdater, + callPackage, + autoreconfHook, bzip2, libtar, libtool, pkg-config, autoconf-archive, libxml2, - icu, - languageMachines, + icu60, + ticcutils, + timbl, + mbt, + libfolia, + ucto, + frogdata, }: -let - release = lib.importJSON ./release-info/LanguageMachines-frog.json; -in - -stdenv.mkDerivation { +stdenv.mkDerivation (finalAttrs: { pname = "frog"; - version = release.version; - src = fetchurl { - inherit (release) url sha256; - name = "frog-v${release.version}.tar.gz"; + version = "0.13.7"; + + src = fetchFromGitHub { + owner = "LanguageMachines"; + repo = "frog"; + tag = "v${finalAttrs.version}"; + hash = "sha256-khc2uZ/dOtWPTnt/ZD6ILxD386MaZt6fsvNTWTCbs+c="; }; + nativeBuildInputs = [ pkg-config - automake - autoconf + autoreconfHook ]; buildInputs = [ bzip2 @@ -36,28 +41,30 @@ stdenv.mkDerivation { libtool autoconf-archive libxml2 - icu - languageMachines.ticcutils - languageMachines.timbl - languageMachines.mbt - languageMachines.libfolia - languageMachines.ucto - languageMachines.frogdata + icu60 + ticcutils + timbl + mbt + libfolia + ucto + frogdata ]; - preConfigure = '' - sh bootstrap.sh - ''; postInstall = '' # frog expects the data files installed in the same prefix mkdir -p $out/share/frog/; - for f in ${languageMachines.frogdata}/share/frog/*; do + for f in ${frogdata}/share/frog/*; do ln -s $f $out/share/frog/; done; make check ''; + passthru = { + updateScript = gitUpdater { rev-prefix = "v"; }; + tests.simple = callPackage ./test.nix { frog = finalAttrs.finalPackage; }; + }; + meta = with lib; { description = "Tagger-Lemmatizer-Morphological-Analyzer-Dependency-Parser for Dutch"; homepage = "https://languagemachines.github.io/frog"; @@ -72,4 +79,4 @@ stdenv.mkDerivation { ''; }; -} +}) diff --git a/pkgs/development/libraries/languagemachines/test.nix b/pkgs/by-name/fr/frog/test.nix similarity index 89% rename from pkgs/development/libraries/languagemachines/test.nix rename to pkgs/by-name/fr/frog/test.nix index 57965a758311..7b624e85f306 100644 --- a/pkgs/development/libraries/languagemachines/test.nix +++ b/pkgs/by-name/fr/frog/test.nix @@ -1,10 +1,10 @@ { runCommand, - languageMachines, + frog, }: runCommand "frog-test" { } '' - ${languageMachines.frog}/bin/frog >$out <$out <&2 - exit 1 -} - -# Create temporary directory with automatic cleanup -readonly MY_TMP="$(mktemp -d)" -cleanup () { - rm -rf "$MY_TMP" -} -trap cleanup EXIT - -# stdout: file containing release info and a convenient placeholder -# for the sha256 attribute -getRelease () { - local owner="$1" - local repo="$2" - local out="$MY_TMP/$owner--$repo-release" - curl -fSs https://api.github.com/repos/"$owner"/"$repo"/releases/latest \ - | jq '{ version: .name, url: .tarball_url, sha256: "__SHA256__" }' \ - > "$out" - echo "$out" -} - -# 'getters' for the release info file - -# stdout: unquoted tarball url -releaseUrl () { - local file="$1" - jq -r '.url' <"$file" -} - -# stdout: unquoted version -releaseVersion () { - local file="$1" - jq -r '.version' <"$file" -} - -# Fetch release tarball and compute hash -# stdout: base32 sha256 to be used in fetchurl -getReleaseHash () { - local file="$1" - local name="$2" - nix-prefetch-url "$(releaseUrl "$file")" --name "$name-$(releaseVersion "$file").tar.gz" -} - -# Write a release info file to release-info/$owner-$repo.json -updateRelease () { - local owner="$1" - local repo="$2" - local r="$(getRelease "$owner" "$repo")" - local hash="$(getReleaseHash "$r" "$repo")" - sed \ - -e s/__SHA256__/"$hash"/\ - <"$r" \ - >"release-info/$owner-$repo.json" -} - -updateRelease LanguageMachines frogdata -updateRelease LanguageMachines frog -updateRelease LanguageMachines libfolia -updateRelease LanguageMachines mbt -updateRelease LanguageMachines ticcutils -updateRelease LanguageMachines timbl -updateRelease LanguageMachines timblserver -updateRelease LanguageMachines ucto -updateRelease LanguageMachines uctodata diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index e882730c477c..d8b5cf88c708 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1316,6 +1316,18 @@ mapAliases { ### L ### l3afpad = throw "'l3afpad' has been removed due to lack of maintenance upstream. Consider using 'xfce.mousepad' instead"; # Added 2024-09-14 + languageMachines = { + ticcutils = ticcutils; + libfolia = libfolia; + ucto = ucto; + uctodata = uctodata; + timbl = timbl; + timblserver = timblserver; + mbt = mbt; + frog = frog; + frogdata = frogdata; + test = frog.tests.simple; + }; # Added 2025-10-07 larynx = piper-tts; # Added 2023-05-09 LASzip = laszip; # Added 2024-06-12 LASzip2 = laszip_2; # Added 2024-06-12 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4af09590bec5..1af1f55e6259 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7273,8 +7273,6 @@ with pkgs; }; }; - frog = res.languageMachines.frog; - fontconfig = callPackage ../development/libraries/fontconfig { }; makeFontsConf = callPackage ../development/libraries/fontconfig/make-fonts-conf.nix { }; @@ -7744,12 +7742,6 @@ with pkgs; stdenv = gccStdenv; }; - languageMachines = recurseIntoAttrs ( - import ../development/libraries/languagemachines/packages.nix { - inherit pkgs; - } - ); - lcms = lcms2; libagar = callPackage ../development/libraries/libagar { };