diff options
Diffstat (limited to 'pkgs/servers/dict')
-rw-r--r-- | pkgs/servers/dict/default.nix | 23 | ||||
-rw-r--r-- | pkgs/servers/dict/dictd-db.nix | 178 | ||||
-rw-r--r-- | pkgs/servers/dict/dictd-wiktionary.nix | 6 | ||||
-rw-r--r-- | pkgs/servers/dict/dictd-wordnet.nix | 4 | ||||
-rw-r--r-- | pkgs/servers/dict/libmaa.nix | 2 |
5 files changed, 115 insertions, 98 deletions
diff --git a/pkgs/servers/dict/default.nix b/pkgs/servers/dict/default.nix index ee0477734c2f..6868c0f81664 100644 --- a/pkgs/servers/dict/default.nix +++ b/pkgs/servers/dict/default.nix @@ -1,22 +1,35 @@ { stdenv, fetchurl, which, bison, flex, libmaa, zlib, libtool }: stdenv.mkDerivation rec { - version = "1.12.1"; name = "dictd-${version}"; + version = "1.12.1"; src = fetchurl { url = "mirror://sourceforge/dict/dictd-${version}.tar.gz"; sha256 = "0min6v60b6z5mrymyjfwzx8nv6rdm8pd8phlwl6v2jl5vkngcdx2"; }; - buildInputs = [ flex bison which libmaa zlib libtool ]; + buildInputs = [ libmaa zlib ]; + + nativeBuildInputs = [ bison flex libtool which ]; + + # Makefile(.in) contains "clientparse.c clientparse.h: clientparse.y" which + # causes bison to run twice, and break the build when this happens in + # parallel. Test with "make -j clientparse.c clientparse.h". The error + # message may be "mv: cannot move 'y.tab.c' to 'clientparse.c'". + enableParallelBuilding = false; patchPhase = "patch -p0 < ${./buildfix.diff}"; - configureFlags = "--datadir=/var/run/current-system/share/dictd"; + configureFlags = [ + "--enable-dictorg" + "--datadir=/run/current-system/share/dictd" + ]; meta = with stdenv.lib; { description = "Dict protocol server and client"; - maintainers = [ maintainers.mornfall ]; - platforms = platforms.linux; + homepage = http://www.dict.org; + license = licenses.gpl2; + maintainers = with maintainers; [ ]; + platforms = platforms.linux; }; } diff --git a/pkgs/servers/dict/dictd-db.nix b/pkgs/servers/dict/dictd-db.nix index 5f109c58e6e4..70cd362c5ea3 100644 --- a/pkgs/servers/dict/dictd-db.nix +++ b/pkgs/servers/dict/dictd-db.nix @@ -1,91 +1,95 @@ -{ builderDefs }: +{ stdenv, fetchurl, callPackage }: -let makeDictdDB = _src: _name: _subdir: _locale: -with builderDefs; - let localDefs = builderDefs.passthru.function (rec { - src=_src; - doInstall = fullDepEntry ('' - mkdir -p $out/share/dictd - tar xf ${src} - cp $(ls ./${_subdir}/*.{dict*,index} || true) $out/share/dictd - echo "${_locale}" >$out/share/dictd/locale - '') ["minInit" "addInputs" "defEnsureDir"]; +let + # Probably a bug in some FreeDict release files, but easier to trivially + # work around than report. Not that it can cause any other problems.. + makeDictdDBFreedict = src: name: locale: + makeDictdDB src name "{.,bin}" locale; - buildInputs = []; - configureFlags = []; - }); - in with localDefs; -stdenv.mkDerivation rec { - name = "dictd-db-${_name}"; - locale = _locale; - dbName = _name; - builder = writeScript (name + "-builder") - (textClosure localDefs - [doInstall doForceShare doPropagate]); - meta = { - description = "${name} dictionary for dictd"; - }; -}; -# Probably a bug in some FreeDict release files, but easier to trivially -# work around than report. Not that it can cause any other problems.. -makeDictdDBFreedict = _src: _name: _locale: makeDictdDB _src _name "{.,bin}" _locale; -fetchurl = builderDefs.fetchurl; + makeDictdDB = src: _name: _subdir: _locale: + stdenv.mkDerivation rec { + name = "dictd-db-${_name}"; + inherit src; + locale = _locale; + dbName = _name; + buildPhase = ":"; + unpackPhase = '' + tar xf ${src} + ''; + installPhase = '' + mkdir -p $out/share/dictd + cp $(ls ./${_subdir}/*.{dict*,index} || true) $out/share/dictd + echo "${_locale}" >$out/share/dictd/locale + ''; -in - -rec { - nld2eng = makeDictdDBFreedict (fetchurl { - url = http://prdownloads.sourceforge.net/freedict/nld-eng.tar.gz; - sha256 = "1vhw81pphb64fzsjvpzsnnyr34ka2fxizfwilnxyjcmpn9360h07"; - }) "nld-eng" "nl_NL"; - eng2nld = makeDictdDBFreedict (fetchurl { - url = http://downloads.sourceforge.net/freedict/eng-nld.tar.gz; - sha256 = "0rcg28ldykv0w2mpxc6g4rqmfs33q7pbvf68ssy1q9gpf6mz7vcl"; - }) "eng-nld" "en_UK"; - eng2rus = makeDictdDBFreedict (fetchurl { - url = http://downloads.sourceforge.net/freedict/eng-rus.tar.gz; - sha256 = "15409ivhww1wsfjr05083pv6mg10bak8v5pg1wkiqybk7ck61rry"; - }) "eng-rus" "en_UK"; - fra2eng = makeDictdDBFreedict (fetchurl { - url = http://downloads.sourceforge.net/freedict/fra-eng.tar.gz; - sha256 = "0sdd88s2zs5whiwdf3hd0s4pzzv75sdsccsrm1wxc87l3hjm85z3"; - }) "fra-eng" "fr_FR"; - eng2fra = makeDictdDBFreedict (fetchurl { - url = http://downloads.sourceforge.net/freedict/eng-fra.tar.gz; - sha256 = "0fi6rrnbqnhc6lq8d0nmn30zdqkibrah0mxfg27hsn9z7alwbj3m"; - }) "eng-fra" "en_UK"; - mueller_eng2rus_pkg = makeDictdDB (fetchurl { - url = http://downloads.sourceforge.net/mueller-dict/mueller-dict-3.1.tar.gz; - sha256 = "04r5xxznvmcb8hkxqbjgfh2gxvbdd87jnhqn5gmgvxxw53zpwfmq"; - }) "mueller-eng-rus" "mueller-dict-*/dict" "en_UK"; - mueller_enru_abbr = { - outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-abbrev"; - name = "mueller-abbr"; - dbName = "mueller-abbr"; - locale = "en_UK"; - }; - mueller_enru_base = { - outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-base"; - name = "mueller-base"; - dbName = "mueller-base"; - locale = "en_UK"; - }; - mueller_enru_dict = { - outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-dict"; - name = "mueller-dict"; - dbName = "mueller-dict"; - locale = "en_UK"; - }; - mueller_enru_geo = { - outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-geo"; - name = "mueller-geo"; - dbName = "mueller-geo"; - locale = "en_UK"; - }; - mueller_enru_names = { - outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-names"; - name = "mueller-names"; - dbName = "mueller-names"; - locale = "en_UK"; - }; + meta = { + description = "dictd-db dictionary for dictd"; + platforms = stdenv.lib.platforms.linux; + }; + }; +in rec { + deu2eng = makeDictdDBFreedict (fetchurl { + url = http://prdownloads.sourceforge.net/freedict/deu-eng.tar.gz; + sha256 = "0dqrhv04g4f5s84nbgisgcfwk5x0rpincif0yfhfh4sc1bsvzsrb"; + }) "deu-eng" "de_DE"; + eng2deu = makeDictdDBFreedict (fetchurl { + url = http://prdownloads.sourceforge.net/freedict/eng-deu.tar.gz; + sha256 = "01x12p72sa3071iff3jhzga8588440f07zr56r3x98bspvdlz73r"; + }) "eng-deu" "en_EN"; + nld2eng = makeDictdDBFreedict (fetchurl { + url = http://prdownloads.sourceforge.net/freedict/nld-eng.tar.gz; + sha256 = "1vhw81pphb64fzsjvpzsnnyr34ka2fxizfwilnxyjcmpn9360h07"; + }) "nld-eng" "nl_NL"; + eng2nld = makeDictdDBFreedict (fetchurl { + url = mirror://sourceforge/freedict/eng-nld.tar.gz; + sha256 = "0rcg28ldykv0w2mpxc6g4rqmfs33q7pbvf68ssy1q9gpf6mz7vcl"; + }) "eng-nld" "en_UK"; + eng2rus = makeDictdDBFreedict (fetchurl { + url = mirror://sourceforge/freedict/eng-rus.tar.gz; + sha256 = "15409ivhww1wsfjr05083pv6mg10bak8v5pg1wkiqybk7ck61rry"; + }) "eng-rus" "en_UK"; + fra2eng = makeDictdDBFreedict (fetchurl { + url = mirror://sourceforge/freedict/fra-eng.tar.gz; + sha256 = "0sdd88s2zs5whiwdf3hd0s4pzzv75sdsccsrm1wxc87l3hjm85z3"; + }) "fra-eng" "fr_FR"; + eng2fra = makeDictdDBFreedict (fetchurl { + url = mirror://sourceforge/freedict/eng-fra.tar.gz; + sha256 = "0fi6rrnbqnhc6lq8d0nmn30zdqkibrah0mxfg27hsn9z7alwbj3m"; + }) "eng-fra" "en_UK"; + mueller_eng2rus_pkg = makeDictdDB (fetchurl { + url = mirror://sourceforge/mueller-dict/mueller-dict-3.1.tar.gz; + sha256 = "04r5xxznvmcb8hkxqbjgfh2gxvbdd87jnhqn5gmgvxxw53zpwfmq"; + }) "mueller-eng-rus" "mueller-dict-*/dict" "en_UK"; + mueller_enru_abbr = { + outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-abbrev"; + name = "mueller-abbr"; + dbName = "mueller-abbr"; + locale = "en_UK"; + }; + mueller_enru_base = { + outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-base"; + name = "mueller-base"; + dbName = "mueller-base"; + locale = "en_UK"; + }; + mueller_enru_dict = { + outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-dict"; + name = "mueller-dict"; + dbName = "mueller-dict"; + locale = "en_UK"; + }; + mueller_enru_geo = { + outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-geo"; + name = "mueller-geo"; + dbName = "mueller-geo"; + locale = "en_UK"; + }; + mueller_enru_names = { + outPath = "${mueller_eng2rus_pkg}/share/dictd/mueller-names"; + name = "mueller-names"; + dbName = "mueller-names"; + locale = "en_UK"; + }; + wordnet = callPackage ./dictd-wordnet.nix {}; + wiktionary = callPackage ./dictd-wiktionary.nix {}; } diff --git a/pkgs/servers/dict/dictd-wiktionary.nix b/pkgs/servers/dict/dictd-wiktionary.nix index 42eb3c0757e3..13e4757fe89e 100644 --- a/pkgs/servers/dict/dictd-wiktionary.nix +++ b/pkgs/servers/dict/dictd-wiktionary.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, python, dict, glibcLocales, writeScript}: stdenv.mkDerivation rec { - version = "20140118"; + version = "20161001"; name = "dict-db-wiktionary-${version}"; data = fetchurl { url = "http://dumps.wikimedia.org/enwiktionary/${version}/enwiktionary-${version}-pages-articles.xml.bz2"; - sha256 = "892c9fc16b248a31e2d3e42590267161c1b899b31fe923eb1ede1deb6d24cfa8"; + sha256 = "0g3k7kxp2nzg0v56i4cz253af3aqvhn1lwkys2fnam51cn3yqm7m"; }; convert = ./wiktionary2dict.py; @@ -25,7 +25,7 @@ stdenv.mkDerivation rec { meta = { description = "DICT version of English Wiktionary"; homepage = http://en.wiktionary.org/; - maintainers = [ stdenv.lib.maintainers.mornfall ]; + maintainers = [ ]; platforms = stdenv.lib.platforms.all; }; } diff --git a/pkgs/servers/dict/dictd-wordnet.nix b/pkgs/servers/dict/dictd-wordnet.nix index b6680e8b21c4..13a78d61098b 100644 --- a/pkgs/servers/dict/dictd-wordnet.nix +++ b/pkgs/servers/dict/dictd-wordnet.nix @@ -28,9 +28,9 @@ stdenv.mkDerivation rec { the wordnet data available to dictd and by extension for lookup with the dict command. ''; - homepage = http://wordnet.princeton.edu/; + homepage = https://wordnet.princeton.edu/; - maintainers = [ stdenv.lib.maintainers.mornfall ]; + maintainers = [ ]; platforms = stdenv.lib.platforms.all; }; } diff --git a/pkgs/servers/dict/libmaa.nix b/pkgs/servers/dict/libmaa.nix index 833aaa95b0ca..d35a9a683031 100644 --- a/pkgs/servers/dict/libmaa.nix +++ b/pkgs/servers/dict/libmaa.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Dict protocol server and client"; - maintainers = [ maintainers.mornfall ]; + maintainers = [ ]; platforms = platforms.linux; }; } |