aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/servers/web-apps/moodle/moodle-utils.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/web-apps/moodle/moodle-utils.nix')
-rw-r--r--nixpkgs/pkgs/servers/web-apps/moodle/moodle-utils.nix32
1 files changed, 32 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/web-apps/moodle/moodle-utils.nix b/nixpkgs/pkgs/servers/web-apps/moodle/moodle-utils.nix
new file mode 100644
index 00000000000..168482bffe6
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/moodle/moodle-utils.nix
@@ -0,0 +1,32 @@
+{ stdenv, unzip, ... }:
+
+let
+ buildMoodlePlugin = a@{
+ name,
+ src,
+ pluginType,
+ configurePhase ? ":",
+ buildPhase ? ":",
+ buildInputs ? [ ],
+ ...
+ }:
+ stdenv.mkDerivation (a // {
+ name = name;
+
+ inherit pluginType;
+ inherit configurePhase buildPhase;
+
+ buildInputs = [ unzip ] ++ buildInputs;
+
+ installPhase = ''
+ runHook preInstall
+
+ mkdir -p "$out"
+ mv * $out/
+
+ runHook postInstall
+ '';
+ });
+in {
+ inherit buildMoodlePlugin;
+}