uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
83
pkgs/servers/dict/dictd-db-collector.nix
Normal file
83
pkgs/servers/dict/dictd-db-collector.nix
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
{ stdenv, lib, dict }:
|
||||
({ dictlist, allowList ? [ "127.0.0.1" ], denyList ? [ ] }:
|
||||
|
||||
/*
|
||||
dictlist is a list of form
|
||||
[ { filename = /path/to/files/basename;
|
||||
name = "name"; } ]
|
||||
basename.dict.dz and basename.index should be
|
||||
dict files. Or look below for other options.
|
||||
allowList is a list of IP/domain *-wildcarded strings
|
||||
denyList is the same..
|
||||
*/
|
||||
|
||||
let
|
||||
link_arguments = map
|
||||
(x: '' "${x.filename}" '')
|
||||
dictlist;
|
||||
databases = lib.concatStrings (map
|
||||
(x:
|
||||
"${x.name} ${x.filename}\n")
|
||||
dictlist);
|
||||
allow = lib.concatStrings (map (x: "allow ${x}\n") allowList);
|
||||
deny = lib.concatStrings (map (x: "deny ${x}\n") denyList);
|
||||
accessSection = "
|
||||
access {
|
||||
${allow}
|
||||
${deny}
|
||||
}
|
||||
";
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/dictd
|
||||
cd $out/share/dictd
|
||||
echo "${databases}" >databases.names
|
||||
echo "${accessSection}" > dictd.conf
|
||||
for j in ${toString link_arguments}; do
|
||||
name="$(egrep ' '"$j"\$ databases.names)"
|
||||
name=''${name% $j}
|
||||
if test -d "$j"; then
|
||||
if test -d "$j"/share/dictd ; then
|
||||
echo "Got store path $j"
|
||||
j="$j"/share/dictd
|
||||
fi
|
||||
echo "Directory reference: $j"
|
||||
i=$(ls "$j""/"*.index)
|
||||
i="''${i%.index}";
|
||||
else
|
||||
i="$j";
|
||||
fi
|
||||
echo "Basename is $i"
|
||||
locale=$(cat "$(dirname "$i")"/locale)
|
||||
base="$(basename "$i")"
|
||||
echo "Locale is $locale"
|
||||
export LC_ALL=$locale
|
||||
export LANG=$locale
|
||||
if test -e "$i".dict.dz; then
|
||||
ln -s "$i".dict.dz
|
||||
else
|
||||
cp "$i".dict .
|
||||
dictzip "$base".dict
|
||||
fi
|
||||
ln -s "$i".index .
|
||||
dictfmt_index2word --locale $locale < "$base".index > "$base".word || true
|
||||
dictfmt_index2suffix --locale $locale < "$base".index > "$base".suffix || true
|
||||
|
||||
echo "database $name {" >> dictd.conf
|
||||
echo " data $out/share/dictd/$base.dict.dz" >> dictd.conf
|
||||
echo " index $out/share/dictd/$base.index" >> dictd.conf
|
||||
echo " index_word $out/share/dictd/$base.word" >> dictd.conf
|
||||
echo " index_suffix $out/share/dictd/$base.suffix" >> dictd.conf
|
||||
echo "}" >> dictd.conf
|
||||
done
|
||||
'';
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "dictd-dbs";
|
||||
|
||||
buildInputs = [ dict ];
|
||||
|
||||
dontUnpack = true;
|
||||
inherit installPhase;
|
||||
})
|
||||
Loading…
Add table
Add a link
Reference in a new issue