1{ stdenv, lib, writeText, bash, fetchurl, php }:
2
3let
4 phpIni = writeText "wp-cli-php.ini" ''
5 [Phar]
6 phar.readonly = Off
7 '';
8
9in stdenv.mkDerivation rec {
10 version = "0.23.1";
11 name = "wp-cli-${version}";
12
13 src = fetchurl {
14 url = "https://github.com/wp-cli/wp-cli/releases/download/v${version}/${name}.phar";
15 sha256 = "1sjai8gjsx6j82lsxq9m827bczp4ajnldk6ibj4krcisn9pjva5f";
16 };
17
18 propagatedBuildInputs = [ php ];
19
20 buildCommand = ''
21 mkdir -p $out/bin
22
23 cat >$out/bin/wp <<EOF
24 #! ${bash}/bin/bash -e
25 exec ${php}/bin/php -c ${phpIni} -f ${src} "\$@"
26 EOF
27
28 chmod +x $out/bin/wp
29 '';
30
31 meta = {
32 description = "A command line interface for WordPress";
33 maintainers = [ stdenv.lib.maintainers.peterhoeg ];
34 platforms = stdenv.lib.platforms.all;
35 homepage = https://wp-cli.org;
36 license = stdenv.lib.licenses.mit;
37 };
38}