1#! /bin/sh
2
3cd $(dirname $0);
4
5source lib-cache.sh;
6
7print_expression () {
8 module_name="$1";
9 module_basename="${module_name//::/-}";
10 module_compressedname="perl${module_name//::/}";
11 sourcelink="$(./source-download-link.sh "${module_name}")";
12 version_name="${sourcelink%.tar.*}";
13 version_name="${version_name##*/}";
14 dependencies="$(./filtered-requirements.sh "$module_name" | sed -e 's/^/perl/; s/:://g' | xargs)";
15 source_hash=$(nix-prefetch-url "$sourcelink" 2>/dev/null);
16
17 cat <<EOF
18
19 ${module_compressedname} = import ../development/perl-modules/generic perl {
20 name = "${version_name}";
21 src = fetchurl {
22 url = ${sourcelink};
23 sha256 = "$source_hash";
24 };
25 propagatedBuildInputs = [${dependencies}];
26 };
27
28EOF
29};
30
31module_name="$1";
32module_basename="${module_name//::/-}";
33
34cached_output print_expression "$module_basename" "$module_name" "nix";