about summary refs log tree commit diff
path: root/pkgs/data
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2017-12-23 20:25:54 +0100
committerMichael Raskin <7c6f434c@mail.ru>2017-12-23 20:26:48 +0100
commit428708feba163ca069cd9d1fe4809c857c2b353c (patch)
treed4ba731f64d73ce02e39a75c150333bf75d0503f /pkgs/data
parentfac4de6aa2f8fa250414a8eaaa332621745edf0a (diff)
downloadnixlib-428708feba163ca069cd9d1fe4809c857c2b353c.tar
nixlib-428708feba163ca069cd9d1fe4809c857c2b353c.tar.gz
nixlib-428708feba163ca069cd9d1fe4809c857c2b353c.tar.bz2
nixlib-428708feba163ca069cd9d1fe4809c857c2b353c.tar.lz
nixlib-428708feba163ca069cd9d1fe4809c857c2b353c.tar.xz
nixlib-428708feba163ca069cd9d1fe4809c857c2b353c.tar.zst
nixlib-428708feba163ca069cd9d1fe4809c857c2b353c.zip
scowl: init at 2017.08.24
Diffstat (limited to 'pkgs/data')
-rw-r--r--pkgs/data/misc/scowl/default.nix101
1 files changed, 101 insertions, 0 deletions
diff --git a/pkgs/data/misc/scowl/default.nix b/pkgs/data/misc/scowl/default.nix
new file mode 100644
index 000000000000..2769ed1a166a
--- /dev/null
+++ b/pkgs/data/misc/scowl/default.nix
@@ -0,0 +1,101 @@
+{stdenv, fetchFromGitHub, unzip, zip, perl, aspell, dos2unix}:
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "scowl";
+  version = "2017.08.24";
+
+  src = fetchFromGitHub {
+    owner = "en-wl";
+    repo = "wordlist";
+    rev = "rel-${version}";
+    sha256 = "16mgk6scbw8i38g63kh60bsnzgzfs8gvvz2n5jh4x5didbwly8nz";
+  };
+
+  buildInputs = [];
+  nativeBuildInputs = [unzip zip perl aspell dos2unix];
+
+  NIX_CFLAGS_COMPILE = " -Wno-narrowing ";
+
+  preConfigure = ''
+    patchShebangs .
+    export PERL5LIB="$PERL5LIB''${PERL5LIB:+:}$PWD/varcon"
+  '';
+
+  postBuild = ''
+    (
+    cd scowl/speller
+    make aspell
+    make hunspell
+    )
+  '';
+
+  enableParallelBuilding = false;
+
+  installPhase = ''
+    eval "$preInstall"
+
+    mkdir -p "$out/share/scowl" 
+    mkdir -p "$out/lib" "$out/share/hunspell" "$out/share/myspell" 
+    mkdir -p "$out/share/dict"
+
+    cp -r scowl/speller/aspell "$out/lib/aspell"
+    cp scowl/speller/*.{aff,dic} "$out/share/hunspell"
+    ln -s "$out/share/hunspell" "$out/share/myspell/dicts"
+
+    cp scowl/final/* "$out/share/scowl"
+
+    (
+      cd scowl
+      for region in american british british_s british_z canadian australian; do
+        case $region in
+          american)
+            regcode=en-us;
+            ;;
+          british)
+            regcode=en-gb-ise;
+            ;;
+          british_s)
+            regcode=en-gb-ise;
+            ;;
+          british_z)
+            regcode=en-gb-ize;
+            ;;
+          canadian)
+            regcode=en-ca;
+            ;;
+          australian)
+            regcode=en-au;
+            ;;
+        esac
+        regcode_var="$regcode"
+        if test "$region" = british; then
+          regcode_var="en-gb"
+        fi
+
+        echo $region $regcode $regcode_sz
+        for s in 10 20 30 35 40 50 55 60 70 80 90; do
+          ./mk-list $regcode $s > "$out/share/dict/w$region.$s"
+          ./mk-list --variants=1 $regcode_var $s > "$out/share/dict/w$region.variants.$s"
+          ./mk-list --variants=2 $regcode_var $s > "$out/share/dict/w$region.acceptable.$s"
+        done
+        ./mk-list $regcode 60 > "$out/share/dict/w$region.txt"
+        ./mk-list --variants=1 $regcode_var 60 > "$out/share/dict/w$region.variants.txt"
+        ./mk-list --variants=2 $regcode_var 80 > "$out/share/dict/w$region.scrabble.txt"
+      done
+      ./mk-list --variants=1 en-gb 60 > "$out/share/dict/words.variants.txt"
+      ./mk-list --variants=1 en-gb 80 > "$out/share/dict/words.scrabble.txt"
+      ./mk-list en-gb-ise 60 > "$out/share/dict/words.txt"
+    )
+
+    eval "$postInstall"
+  '';
+
+  meta = {
+    inherit version;
+    description = "Spell checker oriented word lists";
+    license = stdenv.lib.licenses.mit;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.unix;
+    homepage = "http://wordlist.aspell.net/";
+  };
+}