summary refs log tree commit diff
path: root/pkgs/development/tools/wp-cli
diff options
context:
space:
mode:
authorPeter Hoeg <peter@hoeg.com>2017-08-16 08:39:22 +0800
committerPeter Hoeg <peter@hoeg.com>2017-08-16 08:39:29 +0800
commitd32bf457ef6076357036da7ed5164accfd910d60 (patch)
tree8f91a969e0f956ac83898a17886b3744c7ad7c0e /pkgs/development/tools/wp-cli
parented0f2641cb026a87151b81c94cb4e64f8dca9535 (diff)
downloadnixpkgs-d32bf457ef6076357036da7ed5164accfd910d60.tar
nixpkgs-d32bf457ef6076357036da7ed5164accfd910d60.tar.gz
nixpkgs-d32bf457ef6076357036da7ed5164accfd910d60.tar.bz2
nixpkgs-d32bf457ef6076357036da7ed5164accfd910d60.tar.lz
nixpkgs-d32bf457ef6076357036da7ed5164accfd910d60.tar.xz
nixpkgs-d32bf457ef6076357036da7ed5164accfd910d60.tar.zst
nixpkgs-d32bf457ef6076357036da7ed5164accfd910d60.zip
wp-cli: 1.2.1 -> 1.3.0
Diffstat (limited to 'pkgs/development/tools/wp-cli')
-rw-r--r--pkgs/development/tools/wp-cli/default.nix54
1 files changed, 26 insertions, 28 deletions
diff --git a/pkgs/development/tools/wp-cli/default.nix b/pkgs/development/tools/wp-cli/default.nix
index 6603ac510b7..779aed7fea3 100644
--- a/pkgs/development/tools/wp-cli/default.nix
+++ b/pkgs/development/tools/wp-cli/default.nix
@@ -1,51 +1,49 @@
-{ stdenv, lib, fetchurl, php }:
+{ stdenv, lib, fetchurl, writeScript, writeText, php }:
 
 let
-  version = "1.2.1";
+  name = "wp-cli-${version}";
+  version = "1.3.0";
 
-  bin  = "bin/wp";
-  ini  = "etc/php/wp-cli.ini";
-  phar = "share/wp-cli/wp-cli.phar";
+  src = fetchurl {
+    url    = "https://github.com/wp-cli/wp-cli/releases/download/v${version}/${name}.phar";
+    sha256 = "0q5d32jq7a6rba77sr1yyj6ib6x838hw14mm186ah1xxgnn7rnry";
+  };
 
   completion = fetchurl {
     url    = "https://raw.githubusercontent.com/wp-cli/wp-cli/v${version}/utils/wp-completion.bash";
     sha256 = "15d330x6d3fizrm6ckzmdknqg6wjlx5fr87bmkbd5s6a1ihs0g24";
   };
 
-in stdenv.mkDerivation rec {
-  name = "wp-cli-${version}";
+  bin = writeScript "wp" ''
+    #! ${stdenv.shell}
 
-  src = fetchurl {
-    url    = "https://github.com/wp-cli/wp-cli/releases/download/v${version}/${name}.phar";
-    sha256 = "1ds9nhm0akajwykblg0s131vki02k3rpf72a851r3wjw2qv116wz";
-  };
+    set -euo pipefail
 
-  buildCommand = ''
-    mkdir -p $out/bin $out/etc/php
-
-    cat <<_EOF > $out/${bin}
-    #! ${stdenv.shell} -eu
-    exec ${lib.getBin php}/bin/php \\
-      -c $out/${ini} \\
-      -f $out/${phar} "\$@"
-    _EOF
-    chmod 755 $out/${bin}
+    exec ${lib.getBin php}/bin/php \
+      -c ${ini} \
+      -f ${src} -- "$@"
+  '';
 
-    cat <<_EOF > $out/${ini}
+  ini = writeText "wp-cli.ini" ''
     [Phar]
     phar.readonly = Off
-    _EOF
-    chmod 644 $out/${ini}
+  '';
+
+in stdenv.mkDerivation rec {
+  inherit name version;
+
+  buildCommand = ''
+    mkdir -p $out/{bin,share/bash-completion/completions}
 
-    install -Dm644 ${src}        $out/${phar}
+    ln      -s     ${bin}        $out/bin/wp
     install -Dm644 ${completion} $out/share/bash-completion/completions/wp
   '';
 
   meta = with stdenv.lib; {
     description = "A command line interface for WordPress";
+    homepage    = https://wp-cli.org;
+    license     = licenses.mit;
     maintainers = with maintainers; [ peterhoeg ];
-    platforms = platforms.all;
-    homepage = https://wp-cli.org;
-    license = licenses.mit;
+    platforms   = platforms.all;
   };
 }