summary refs log tree commit diff
path: root/pkgs/servers/dict
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2008-03-06 12:02:10 +0000
committerMichael Raskin <7c6f434c@mail.ru>2008-03-06 12:02:10 +0000
commit7b6c7dd65fbf3c8727739372da942c6793029b1b (patch)
tree4d2a2ab2810c20455ad0b61fd450d72e241faf30 /pkgs/servers/dict
parent003a6d10b55fb0b68db789410a39b073361635d7 (diff)
downloadnixpkgs-7b6c7dd65fbf3c8727739372da942c6793029b1b.tar
nixpkgs-7b6c7dd65fbf3c8727739372da942c6793029b1b.tar.gz
nixpkgs-7b6c7dd65fbf3c8727739372da942c6793029b1b.tar.bz2
nixpkgs-7b6c7dd65fbf3c8727739372da942c6793029b1b.tar.lz
nixpkgs-7b6c7dd65fbf3c8727739372da942c6793029b1b.tar.xz
nixpkgs-7b6c7dd65fbf3c8727739372da942c6793029b1b.tar.zst
nixpkgs-7b6c7dd65fbf3c8727739372da942c6793029b1b.zip
Made entries for a few dictd dictionaries
svn path=/nixpkgs/trunk/; revision=10979
Diffstat (limited to 'pkgs/servers/dict')
-rw-r--r--pkgs/servers/dict/dictd-db.nix38
1 files changed, 20 insertions, 18 deletions
diff --git a/pkgs/servers/dict/dictd-db.nix b/pkgs/servers/dict/dictd-db.nix
index 88cc8f53448..77056a4304b 100644
--- a/pkgs/servers/dict/dictd-db.nix
+++ b/pkgs/servers/dict/dictd-db.nix
@@ -1,13 +1,13 @@
-{
-  builderDefs
-}:
-let makeDictdDBFreedict = _src: _name:
+{ builderDefs }:
+
+let makeDictdDB = _src: _name: _subdir: 
 with builderDefs {src="";} null;
 	let localDefs = builderDefs (rec {
 		src=_src;
 		doInstall = FullDepEntry (''
 			ensureDir $out/share/dictd
-			tar xf  ${src} -C $out/share/dictd
+			tar xf  ${src}
+			cp $(ls ./${_subdir}/*.{dict*,index} || true) $out/share/dictd 
 		'') ["minInit" "addInputs" "defEnsureDir"];
 
 		buildInputs = [];
@@ -26,8 +26,13 @@ stdenv.mkDerivation rec {
 		inherit src;
 	};
 };
+# 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: makeDictdDB _src _name "{.,bin}";
 fetchurl = (builderDefs {src="";} null).fetchurl;
+
 in 
+
 {
 	nld2eng = makeDictdDBFreedict (fetchurl {
 		url = http://prdownloads.sourceforge.net/freedict/nld-eng.tar.gz;
@@ -37,24 +42,21 @@ in
 		url = http://downloads.sourceforge.net/freedict/eng-nld.tar.gz;
 		sha256 = "0rcg28ldykv0w2mpxc6g4rqmfs33q7pbvf68ssy1q9gpf6mz7vcl";
 	}) "eng-nld";
-}
-/*	fetchurl {
+	eng2rus = makeDictdDBFreedict (fetchurl {
 		url = http://downloads.sourceforge.net/freedict/eng-rus.tar.gz;
 		sha256 = "15409ivhww1wsfjr05083pv6mg10bak8v5pg1wkiqybk7ck61rry";
-	};
-	fetchurl {
-		url = http://downloads.sourceforge.net/freedict/rus-eng.tar.gz;
-		sha256 = "";
-	};
-	fetchurl {
+	}) "eng-rus";
+	fra2eng = makeDictdDBFreedict (fetchurl {
 		url = http://downloads.sourceforge.net/freedict/fra-eng.tar.gz;
 		sha256 = "0sdd88s2zs5whiwdf3hd0s4pzzv75sdsccsrm1wxc87l3hjm85z3";
-	};
-	fetchurl {
+	}) "fra-eng";
+	eng2fra = makeDictdDBFreedict (fetchurl {
 		url = http://downloads.sourceforge.net/freedict/eng-fra.tar.gz;
 		sha256 = "0fi6rrnbqnhc6lq8d0nmn30zdqkibrah0mxfg27hsn9z7alwbj3m";
-	};
-	fetchurl {
+	}) "eng-fra";
+	mueller_eng2rus = makeDictdDB (fetchurl {
 		url = http://downloads.sourceforge.net/mueller-dict/mueller-dict-3.1.tar.gz;
 		sha256 = "04r5xxznvmcb8hkxqbjgfh2gxvbdd87jnhqn5gmgvxxw53zpwfmq";
-	};*/
+	}) "mueller-eng-rus" "mueller-dict-*/dict";
+	
+}