mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-28 16:10:17 +02:00
Merge pull request #24720 from k0001/hun-es
hunspellDicts: add spanish dictionaries.
This commit is contained in:
commit
4a2f605398
|
@ -1,30 +1,13 @@
|
||||||
/* hunspell dictionaries */
|
/* hunspell dictionaries */
|
||||||
|
|
||||||
{ stdenv, fetchurl, unzip }:
|
{ stdenv, fetchurl, fetchFromGitHub, unzip, coreutils, bash, which, zip }:
|
||||||
|
|
||||||
with stdenv.lib;
|
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
mkDict =
|
mkDict =
|
||||||
{ name, src, meta, readmeFile, dictFileName, ... }:
|
{ name, readmeFile, dictFileName, ... }@args:
|
||||||
let
|
stdenv.mkDerivation (rec {
|
||||||
isFrench = hasSuffix "fr_" dictFileName;
|
inherit name;
|
||||||
isItaly = hasSuffix "it_" dictFileName;
|
|
||||||
isSpanish = hasSuffix "es_" dictFileName;
|
|
||||||
isEnglish = hasSuffix "en_" dictFileName;
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
inherit name src meta;
|
|
||||||
buildInputs = [ unzip ];
|
|
||||||
sourceRoot = ".";
|
|
||||||
phases = "unpackPhase installPhase" + (if isItaly then "patchPhase" else "");
|
|
||||||
unpackCmd = "unzip $src ${readmeFile} ${dictFileName}.dic ${dictFileName}.aff";
|
|
||||||
prePatch = if isItaly then ''
|
|
||||||
# Fix dic file empty lines (FS#22275)
|
|
||||||
sed '/^\/$/d' -i it_IT.dic
|
|
||||||
'' else "";
|
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
# hunspell dicts
|
# hunspell dicts
|
||||||
install -dm755 "$out/share/hunspell"
|
install -dm755 "$out/share/hunspell"
|
||||||
|
@ -38,7 +21,45 @@ let
|
||||||
install -dm755 "$out/share/doc"
|
install -dm755 "$out/share/doc"
|
||||||
install -m644 ${readmeFile} $out/share/doc/${name}.txt
|
install -m644 ${readmeFile} $out/share/doc/${name}.txt
|
||||||
'';
|
'';
|
||||||
};
|
} // args);
|
||||||
|
|
||||||
|
mkDictFromRla =
|
||||||
|
{ shortName, shortDescription, dictFileName }:
|
||||||
|
mkDict rec {
|
||||||
|
inherit dictFileName;
|
||||||
|
version = "2.2";
|
||||||
|
name = "hunspell-dict-${shortName}-rla-${version}";
|
||||||
|
readmeFile = "README.txt";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "sbosio";
|
||||||
|
repo = "rla-es";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "0n9ms092k7vg7xpd3ksadxydbrizkb7js7dfxr08nbnnb9fgy0i8";
|
||||||
|
};
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Hunspell dictionary for ${shortDescription} from rla";
|
||||||
|
homepage = https://github.com/sbosio/rla-es;
|
||||||
|
license = with licenses; [ gpl3 lgpl3 mpl11 ];
|
||||||
|
maintainers = with maintainers; [ renzo ];
|
||||||
|
platforms = platforms.all;
|
||||||
|
};
|
||||||
|
phases = "unpackPhase patchPhase buildPhase installPhase";
|
||||||
|
buildInputs = [ bash coreutils unzip which zip ];
|
||||||
|
patchPhase = ''
|
||||||
|
substituteInPlace ortograf/herramientas/make_dict.sh \
|
||||||
|
--replace /bin/bash bash \
|
||||||
|
--replace /dev/stderr stderr.log
|
||||||
|
|
||||||
|
substituteInPlace ortograf/herramientas/remover_comentarios.sh \
|
||||||
|
--replace /bin/bash bash \
|
||||||
|
'';
|
||||||
|
buildPhase = ''
|
||||||
|
cd ortograf/herramientas
|
||||||
|
bash -x ./make_dict.sh -l ${dictFileName} -2
|
||||||
|
unzip ${dictFileName}.zip \
|
||||||
|
${dictFileName}.dic ${dictFileName}.aff ${readmeFile}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
mkDictFromDicollecte =
|
mkDictFromDicollecte =
|
||||||
{ shortName, shortDescription, longDescription, dictFileName }:
|
{ shortName, shortDescription, longDescription, dictFileName }:
|
||||||
|
@ -59,6 +80,12 @@ let
|
||||||
maintainers = with maintainers; [ renzo ];
|
maintainers = with maintainers; [ renzo ];
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
};
|
};
|
||||||
|
buildInputs = [ unzip ];
|
||||||
|
phases = "unpackPhase installPhase";
|
||||||
|
sourceRoot = ".";
|
||||||
|
unpackCmd = ''
|
||||||
|
unzip $src ${dictFileName}.dic ${dictFileName}.aff ${readmeFile}
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
mkDictFromWordlist =
|
mkDictFromWordlist =
|
||||||
|
@ -75,9 +102,15 @@ let
|
||||||
maintainers = with maintainers; [ renzo ];
|
maintainers = with maintainers; [ renzo ];
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
};
|
};
|
||||||
|
buildInputs = [ unzip ];
|
||||||
|
phases = "unpackPhase installPhase";
|
||||||
|
sourceRoot = ".";
|
||||||
|
unpackCmd = ''
|
||||||
|
unzip $src ${dictFileName}.dic ${dictFileName}.aff ${readmeFile}
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
mkLinguistico =
|
mkDictFromLinguistico =
|
||||||
{ shortName, shortDescription, dictFileName, src }:
|
{ shortName, shortDescription, dictFileName, src }:
|
||||||
mkDict rec {
|
mkDict rec {
|
||||||
inherit src dictFileName;
|
inherit src dictFileName;
|
||||||
|
@ -90,6 +123,16 @@ let
|
||||||
maintainers = with maintainers; [ renzo ];
|
maintainers = with maintainers; [ renzo ];
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
};
|
};
|
||||||
|
buildInputs = [ unzip ];
|
||||||
|
phases = "unpackPhase patchPhase installPhase";
|
||||||
|
sourceRoot = ".";
|
||||||
|
prePatch = ''
|
||||||
|
# Fix dic file empty lines (FS#22275)
|
||||||
|
sed '/^\/$/d' -i ${dictFileName}.dic
|
||||||
|
'';
|
||||||
|
unpackCmd = ''
|
||||||
|
unzip $src ${dictFileName}.dic ${dictFileName}.aff ${readmeFile}
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
mkDictFromXuxen =
|
mkDictFromXuxen =
|
||||||
|
@ -169,6 +212,134 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* SPANISH */
|
||||||
|
|
||||||
|
es-any = mkDictFromRla {
|
||||||
|
shortName = "es-any";
|
||||||
|
shortDescription = "Spanish (any variant)";
|
||||||
|
dictFileName = "es_ANY";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-ar = mkDictFromRla {
|
||||||
|
shortName = "es-ar";
|
||||||
|
shortDescription = "Spanish (Argentina)";
|
||||||
|
dictFileName = "es_AR";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-bo = mkDictFromRla {
|
||||||
|
shortName = "es-bo";
|
||||||
|
shortDescription = "Spanish (Bolivia)";
|
||||||
|
dictFileName = "es_BO";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-cl = mkDictFromRla {
|
||||||
|
shortName = "es-cl";
|
||||||
|
shortDescription = "Spanish (Chile)";
|
||||||
|
dictFileName = "es_CL";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-co = mkDictFromRla {
|
||||||
|
shortName = "es-co";
|
||||||
|
shortDescription = "Spanish (Colombia)";
|
||||||
|
dictFileName = "es_CO";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-cr = mkDictFromRla {
|
||||||
|
shortName = "es-cr";
|
||||||
|
shortDescription = "Spanish (Costra Rica)";
|
||||||
|
dictFileName = "es_CR";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-cu = mkDictFromRla {
|
||||||
|
shortName = "es-cu";
|
||||||
|
shortDescription = "Spanish (Cuba)";
|
||||||
|
dictFileName = "es_CU";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-do = mkDictFromRla {
|
||||||
|
shortName = "es-do";
|
||||||
|
shortDescription = "Spanish (Dominican Republic)";
|
||||||
|
dictFileName = "es_DO";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-ec = mkDictFromRla {
|
||||||
|
shortName = "es-ec";
|
||||||
|
shortDescription = "Spanish (Ecuador)";
|
||||||
|
dictFileName = "es_EC";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-es = mkDictFromRla {
|
||||||
|
shortName = "es-es";
|
||||||
|
shortDescription = "Spanish (Spain)";
|
||||||
|
dictFileName = "es_ES";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-gt = mkDictFromRla {
|
||||||
|
shortName = "es-gt";
|
||||||
|
shortDescription = "Spanish (Guatemala)";
|
||||||
|
dictFileName = "es_GT";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-hn = mkDictFromRla {
|
||||||
|
shortName = "es-hn";
|
||||||
|
shortDescription = "Spanish (Honduras)";
|
||||||
|
dictFileName = "es_HN";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-mx = mkDictFromRla {
|
||||||
|
shortName = "es-mx";
|
||||||
|
shortDescription = "Spanish (Mexico)";
|
||||||
|
dictFileName = "es_MX";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-ni = mkDictFromRla {
|
||||||
|
shortName = "es-ni";
|
||||||
|
shortDescription = "Spanish (Nicaragua)";
|
||||||
|
dictFileName = "es_NI";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-pa = mkDictFromRla {
|
||||||
|
shortName = "es-pa";
|
||||||
|
shortDescription = "Spanish (Panama)";
|
||||||
|
dictFileName = "es_PA";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-pe = mkDictFromRla {
|
||||||
|
shortName = "es-pe";
|
||||||
|
shortDescription = "Spanish (Peru)";
|
||||||
|
dictFileName = "es_PE";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-pr = mkDictFromRla {
|
||||||
|
shortName = "es-pr";
|
||||||
|
shortDescription = "Spanish (Puerto Rico)";
|
||||||
|
dictFileName = "es_PR";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-py = mkDictFromRla {
|
||||||
|
shortName = "es-py";
|
||||||
|
shortDescription = "Spanish (Paraguay)";
|
||||||
|
dictFileName = "es_PY";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-sv = mkDictFromRla {
|
||||||
|
shortName = "es-sv";
|
||||||
|
shortDescription = "Spanish (El Salvador)";
|
||||||
|
dictFileName = "es_SV";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-uy = mkDictFromRla {
|
||||||
|
shortName = "es-uy";
|
||||||
|
shortDescription = "Spanish (Uruguay)";
|
||||||
|
dictFileName = "es_UY";
|
||||||
|
};
|
||||||
|
|
||||||
|
es-ve = mkDictFromRla {
|
||||||
|
shortName = "es-ve";
|
||||||
|
shortDescription = "Spanish (Venezuela)";
|
||||||
|
dictFileName = "es_VE";
|
||||||
|
};
|
||||||
|
|
||||||
/* FRENCH */
|
/* FRENCH */
|
||||||
|
|
||||||
fr-any = mkDictFromDicollecte {
|
fr-any = mkDictFromDicollecte {
|
||||||
|
@ -215,7 +386,7 @@ in {
|
||||||
|
|
||||||
/* ITALIAN */
|
/* ITALIAN */
|
||||||
|
|
||||||
it-it = mkLinguistico rec {
|
it-it = mkDictFromLinguistico rec {
|
||||||
shortName = "it-it";
|
shortName = "it-it";
|
||||||
dictFileName = "it_IT";
|
dictFileName = "it_IT";
|
||||||
shortDescription = "Hunspell dictionary for 'Italian (Italy)' from Linguistico";
|
shortDescription = "Hunspell dictionary for 'Italian (Italy)' from Linguistico";
|
||||||
|
|
Loading…
Reference in a new issue