tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
phpPackages: init php56Packages and php70Packages
Steve Müller
10 years ago
4c0988b1
f438011a
+122
-20
2 changed files
expand all
collapse all
unified
split
pkgs
top-level
all-packages.nix
php-packages.nix
+9
-1
pkgs/top-level/all-packages.nix
···
5201
5202
php = php56;
5203
5204
-
phpPackages = recurseIntoAttrs (callPackage ./php-packages.nix {});
5205
5206
php55Packages = recurseIntoAttrs (callPackage ./php-packages.nix {
5207
php = php55;
0
0
0
0
0
0
0
0
5208
});
5209
5210
inherit (callPackages ../development/interpreters/php { })
···
5201
5202
php = php56;
5203
5204
+
phpPackages = php56Packages;
5205
5206
php55Packages = recurseIntoAttrs (callPackage ./php-packages.nix {
5207
php = php55;
5208
+
});
5209
+
5210
+
php56Packages = recurseIntoAttrs (callPackage ./php-packages.nix {
5211
+
php = php56;
5212
+
});
5213
+
5214
+
php70Packages = recurseIntoAttrs (callPackage ./php-packages.nix {
5215
+
php = php70;
5216
});
5217
5218
inherit (callPackages ../development/interpreters/php { })
+113
-19
pkgs/top-level/php-packages.nix
···
1
-
{ pkgs, php }:
0
0
0
0
0
0
0
0
0
2
3
-
let self = with self; {
4
-
buildPecl = import ../build-support/build-pecl.nix {
5
-
inherit php;
6
-
inherit (pkgs) stdenv autoreconfHook fetchurl;
7
-
};
8
9
-
apcu = buildPecl {
10
name = "apcu-4.0.7";
11
12
sha256 = "1mhbz56mbnq7dryf2d64l84lj3fpr5ilmg2424glans3wcg772hp";
13
};
14
15
-
imagick = buildPecl {
0
0
0
0
0
0
0
0
16
name = "imagick-3.1.2";
17
sha256 = "14vclf2pqcgf3w8nzqbdw0b9v30q898344c84jdbw2sa62n6k1sj";
18
configureFlags = "--with-imagick=${pkgs.imagemagick}";
19
buildInputs = [ pkgs.pkgconfig ];
20
};
21
22
-
memcache = buildPecl {
0
0
0
0
0
0
0
0
23
name = "memcache-3.0.8";
24
25
sha256 = "04c35rj0cvq5ygn2jgmyvqcb0k8d03v4k642b6i37zgv7x15pbic";
···
27
configureFlags = "--with-zlib-dir=${pkgs.zlib}";
28
};
29
30
-
memcached = buildPecl {
0
0
31
name = "memcached-2.2.0";
32
33
sha256 = "0n4z2mp4rvrbmxq079zdsrhjxjkmhz6mzi7mlcipz02cdl7n1f8p";
···
40
buildInputs = with pkgs; [ pkgconfig cyrus_sasl ];
41
};
42
43
-
xdebug = buildPecl {
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
44
name = "xdebug-2.3.1";
45
46
sha256 = "0k567i6w7cw14m13s7ip0946pvy5ii16cjwjcinnviw9c24na0xm";
···
49
checkTarget = "test";
50
};
51
52
-
zendopcache = buildPecl {
0
0
0
0
0
0
0
0
0
0
53
name = "zendopcache-7.0.3";
54
55
sha256 = "0qpfbkfy4wlnsfq4vc4q5wvaia83l89ky33s08gqrcfp3p1adn88";
56
};
57
58
-
zmq = buildPecl {
0
0
59
name = "zmq-1.1.2";
60
61
sha256 = "0ccz73p8pkda3y9p9qbr3m19m0yrf7k2bvqgbaly3ibgh9bazc69";
···
67
buildInputs = [ pkgs.pkgconfig ];
68
};
69
70
-
xcache = buildPecl rec {
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
71
name = "xcache-${version}";
72
73
version = "3.2.0";
···
92
buildInputs = [ pkgs.m4 ];
93
};
94
95
-
pthreads = assert pkgs.config.php.zts or false; buildPecl {
96
-
#pthreads requires a build of PHP with ZTS (Zend Thread Safety) enabled
97
-
#--enable-maintainer-zts or --enable-zts on Windows
0
0
98
name = "pthreads-2.0.10";
99
sha256 = "1xlcb1b1g10jd0xhm3c01a06yqpb5qln47pd1k522138324qvpwb";
100
};
101
102
-
geoip = buildPecl {
0
0
0
0
0
0
103
name = "geoip-1.1.0";
104
sha256 = "1fcqpsvwba84gqqmwyb5x5xhkazprwkpsnn4sv2gfbsd4svxxil2";
105
···
108
buildInputs = [ pkgs.geoip ];
109
};
110
111
-
redis = buildPecl {
0
0
112
name = "redis-2.2.7";
113
sha256 = "00n9dpk9ak0bl35sbcd3msr78sijrxdlb727nhg7f2g7swf37rcm";
0
0
0
0
0
0
0
0
0
0
0
114
};
115
116
composer = pkgs.stdenv.mkDerivation rec {
···
1
+
{ pkgs, fetchgit, php }:
2
+
3
+
let
4
+
self = with self; {
5
+
buildPecl = import ../build-support/build-pecl.nix {
6
+
inherit php;
7
+
inherit (pkgs) stdenv autoreconfHook fetchurl;
8
+
};
9
+
isPhpOlder55 = pkgs.lib.versionOlder php.version "5.5";
10
+
isPhp7 = pkgs.lib.versionAtLeast php.version "7.0";
11
12
+
apcu = if isPhp7 then apcu51 else apcu40;
0
0
0
0
13
14
+
apcu40 = assert !isPhp7; buildPecl {
15
name = "apcu-4.0.7";
16
17
sha256 = "1mhbz56mbnq7dryf2d64l84lj3fpr5ilmg2424glans3wcg772hp";
18
};
19
20
+
apcu51 = assert isPhp7; buildPecl {
21
+
name = "apcu-5.1.2";
22
+
23
+
sha256 = "0r5pfbjbmdj46h20jm3iqmy969qd27ajyf0phjhgykv6j0cqjlgd";
24
+
};
25
+
26
+
imagick = if isPhp7 then imagick34 else imagick31;
27
+
28
+
imagick31 = assert !isPhp7; buildPecl {
29
name = "imagick-3.1.2";
30
sha256 = "14vclf2pqcgf3w8nzqbdw0b9v30q898344c84jdbw2sa62n6k1sj";
31
configureFlags = "--with-imagick=${pkgs.imagemagick}";
32
buildInputs = [ pkgs.pkgconfig ];
33
};
34
35
+
imagick34 = buildPecl {
36
+
name = "imagick-3.4.0RC4";
37
+
sha256 = "0fdkzdv3r8sm6y1x11kp3rxsimq6zf15xvi0mhn57svmnan4zh0i";
38
+
configureFlags = "--with-imagick=${pkgs.imagemagick}";
39
+
buildInputs = [ pkgs.pkgconfig ];
40
+
};
41
+
42
+
# No support for PHP 7 yet
43
+
memcache = assert !isPhp7; buildPecl {
44
name = "memcache-3.0.8";
45
46
sha256 = "04c35rj0cvq5ygn2jgmyvqcb0k8d03v4k642b6i37zgv7x15pbic";
···
48
configureFlags = "--with-zlib-dir=${pkgs.zlib}";
49
};
50
51
+
memcached = if isPhp7 then memcachedPhp7 else memcached22;
52
+
53
+
memcached22 = assert !isPhp7; buildPecl {
54
name = "memcached-2.2.0";
55
56
sha256 = "0n4z2mp4rvrbmxq079zdsrhjxjkmhz6mzi7mlcipz02cdl7n1f8p";
···
63
buildInputs = with pkgs; [ pkgconfig cyrus_sasl ];
64
};
65
66
+
# Not released yet
67
+
memcachedPhp7 = assert isPhp7; buildPecl rec {
68
+
name = "memcached-php7";
69
+
70
+
src = fetchgit {
71
+
url = "https://github.com/php-memcached-dev/php-memcached";
72
+
rev = "e573a6e8fc815f12153d2afd561fc84f74811e2f";
73
+
sha256 = "f7acfdae04ef2ef9ece67b6d009aaf6604db64735fc7619f7169929aabb9c58f";
74
+
};
75
+
76
+
configureFlags = [
77
+
"--with-zlib-dir=${pkgs.zlib}"
78
+
"--with-libmemcached-dir=${pkgs.libmemcached}"
79
+
];
80
+
81
+
buildInputs = with pkgs; [ pkgconfig cyrus_sasl ];
82
+
};
83
+
84
+
xdebug = if isPhp7 then xdebug24 else xdebug23;
85
+
86
+
xdebug23 = assert !isPhp7; buildPecl {
87
name = "xdebug-2.3.1";
88
89
sha256 = "0k567i6w7cw14m13s7ip0946pvy5ii16cjwjcinnviw9c24na0xm";
···
92
checkTarget = "test";
93
};
94
95
+
xdebug24 = buildPecl {
96
+
name = "xdebug-2.4.0RC3";
97
+
98
+
sha256 = "06ppsihw4cl8kxmywvic6wsm4ps9pvsns2vbab9ivrfyp8b6h5dy";
99
+
100
+
doCheck = true;
101
+
checkTarget = "test";
102
+
};
103
+
104
+
# Since PHP 5.5 OPcache is integrated in the core and has to be enabled via --enable-opcache during compilation.
105
+
zendopcache = assert isPhpOlder55; buildPecl {
106
name = "zendopcache-7.0.3";
107
108
sha256 = "0qpfbkfy4wlnsfq4vc4q5wvaia83l89ky33s08gqrcfp3p1adn88";
109
};
110
111
+
zmq = if isPhp7 then zmqPhp7 else zmq11;
112
+
113
+
zmq11 = assert !isPhp7; buildPecl {
114
name = "zmq-1.1.2";
115
116
sha256 = "0ccz73p8pkda3y9p9qbr3m19m0yrf7k2bvqgbaly3ibgh9bazc69";
···
122
buildInputs = [ pkgs.pkgconfig ];
123
};
124
125
+
# Not released yet
126
+
zmqPhp7 = assert isPhp7; buildPecl rec {
127
+
name = "zmq-php7";
128
+
129
+
src = fetchgit {
130
+
url = "https://github.com/mkoppanen/php-zmq";
131
+
rev = "94d2b87d195f870775b153b42c29f30da049f4db";
132
+
sha256 = "51a25b1029800d8abe03c5c08c50d6aee941c95c741dc22d2f853052511f4296";
133
+
};
134
+
135
+
configureFlags = [
136
+
"--with-zmq=${pkgs.zeromq2}"
137
+
];
138
+
139
+
buildInputs = [ pkgs.pkgconfig ];
140
+
};
141
+
142
+
# No support for PHP 7 and probably never will be
143
+
xcache = assert !isPhp7; buildPecl rec {
144
name = "xcache-${version}";
145
146
version = "3.2.0";
···
165
buildInputs = [ pkgs.m4 ];
166
};
167
168
+
#pthreads requires a build of PHP with ZTS (Zend Thread Safety) enabled
169
+
#--enable-maintainer-zts or --enable-zts on Windows
170
+
pthreads = if isPhp7 then pthreads31 else pthreads20;
171
+
172
+
pthreads20 = assert (pkgs.config.php.zts or false) && (!isPhp7); buildPecl {
173
name = "pthreads-2.0.10";
174
sha256 = "1xlcb1b1g10jd0xhm3c01a06yqpb5qln47pd1k522138324qvpwb";
175
};
176
177
+
pthreads31 = assert (pkgs.config.php.zts or false) && isPhp7; buildPecl {
178
+
name = "pthreads-3.1.5";
179
+
sha256 = "1ziap0py3zrc7qj9lw4nzq6wx1viyj8v9y1babchizzan014x6p5";
180
+
};
181
+
182
+
# No support for PHP 7 yet
183
+
geoip = assert !isPhp7; buildPecl {
184
name = "geoip-1.1.0";
185
sha256 = "1fcqpsvwba84gqqmwyb5x5xhkazprwkpsnn4sv2gfbsd4svxxil2";
186
···
189
buildInputs = [ pkgs.geoip ];
190
};
191
192
+
redis = if isPhp7 then redisPhp7 else redis22;
193
+
194
+
redis22 = buildPecl {
195
name = "redis-2.2.7";
196
sha256 = "00n9dpk9ak0bl35sbcd3msr78sijrxdlb727nhg7f2g7swf37rcm";
197
+
};
198
+
199
+
# Not released yet
200
+
redisPhp7 = assert isPhp7; buildPecl rec {
201
+
name = "redis-php7";
202
+
203
+
src = fetchgit {
204
+
url = "https://github.com/phpredis/phpredis";
205
+
rev = "4a37e47d0256581ce2f7a3b15b5bb932add09f36";
206
+
sha256 = "ac5894d168e22ae4a770ce252cfbd07d0f9f1a5b48b084c0559b67fe4d3e51cb";
207
+
};
208
};
209
210
composer = pkgs.stdenv.mkDerivation rec {