summaryrefslogtreecommitdiffstats
path: root/bin/list-module-imports
diff options
context:
space:
mode:
authortv <tv@shackspace.de>2015-05-21 01:56:08 +0200
committertv <tv@shackspace.de>2015-05-21 01:56:08 +0200
commit36670f3e1cccad579b994a29320eeb8e287803b7 (patch)
tree484cb2c1075cdcabe8020ca40704f4d68f2b2fed /bin/list-module-imports
parentb95a514bcced00af77ae4adab77326dba9ab4c36 (diff)
sh: functions -> bin/
Diffstat (limited to 'bin/list-module-imports')
-rwxr-xr-xbin/list-module-imports20
1 files changed, 20 insertions, 0 deletions
diff --git a/bin/list-module-imports b/bin/list-module-imports
new file mode 100755
index 000000000..39d11bf34
--- /dev/null
+++ b/bin/list-module-imports
@@ -0,0 +1,20 @@
+#! /bin/sh
+# list-module-imports : nix-file -> lines nix-file
+set -euf
+
+if echo "$1" | grep -q ^/; then
+ :
+else
+ set -- "./$1"
+fi
+
+imports=$(nix-instantiate \
+ -I secrets=secrets \
+ --strict \
+ --json \
+ --eval \
+ -E \
+ "with builtins; with import ./lib/modules.nix; map toString (list-imports $1)")
+
+echo "$imports" \
+ | jq -r .[]