setting up grav

This commit is contained in:
revol-xut 2023-03-31 14:55:55 +02:00
parent 0ed90c8122
commit 46d7fef2b6
No known key found for this signature in database
GPG key ID: 4F56FF7759627D07
4 changed files with 351 additions and 19 deletions

View file

@ -11,26 +11,12 @@
#packages."aarch64-linux".sanddorn = self.nixosConfigurations.sanddorn.config.system.build.sdImage;
packages."x86_64-linux".quitte = self.nixosConfigurations.quitte-vm.config.system.build.vm;
packages."x86_64-linux".default = self.packages."x86_64-linux".quitte;
packages."x86_64-linux".grav = nixpkgs.legacyPackages.x86_64-linux.callPackage ./pkgs/grav.nix { };
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixpkgs-fmt;
nixosConfigurations = {
birne = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./hosts/birne/configuration.nix
./modules/base.nix
./modules/autoupdate.nix
./modules/desktop.nix
./modules/printing.nix
./modules/wifi.nix
./modules/options.nix
{
fsr.enable_office_bloat = true;
}
];
};
sanddorn = nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
modules = [
@ -42,8 +28,6 @@
./hosts/sanddorn/configuration.nix
./modules/infoscreen.nix
./modules/base.nix
./modules/autoupdate.nix
./modules/wifi.nix
./modules/desktop.nix
./modules/options.nix
"${nixpkgs}/nixos/modules/installer/sd-card/sd-image-aarch64.nix"
@ -69,6 +53,7 @@
./modules/stream.nix
./modules/nextcloud.nix
./modules/matrix.nix
./modules/website.nix
{
fsr.enable_office_bloat = false;
fsr.domain = "staging.ifsr.de";
@ -89,6 +74,7 @@
./modules/hedgedoc.nix
./modules/wiki.nix
./modules/stream.nix
./modules/website.nix
./modules/vm.nix
"${nixpkgs}/nixos/modules/virtualisation/qemu-vm.nix"
{

43
modules/website.nix Normal file
View file

@ -0,0 +1,43 @@
{ pkgs, lib, config, ... }:
let
grav-cms = pkgs.callPackage ../pkgs/grav.nix { };
app = "grav";
domain = "grav.${config.fsr.domain}";
in
{
services.phpfpm.pools.${app} = {
user = app;
settings = {
"listen.owner" = config.services.nginx.user;
"pm" = "dynamic";
"pm.max_children" = 32;
"pm.max_requests" = 500;
"pm.start_servers" = 2;
"pm.min_spare_servers" = 2;
"pm.max_spare_servers" = 5;
"php_admin_value[error_log]" = "stderr";
"php_admin_flag[log_errors]" = true;
"catch_workers_output" = true;
};
phpEnv."PATH" = lib.makeBinPath [ pkgs.php ];
};
services.nginx = {
enable = true;
virtualHosts."${domain}".locations."/" = {
root = "${grav-cms}";
extraConfig = ''
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:${config.services.phpfpm.pools.${app}.socket};
include ${pkgs.nginx}/conf/fastcgi_params;
include ${pkgs.nginx}/conf/fastcgi.conf;
'';
};
};
users.users.${app} = {
isSystemUser = true;
createHome = true;
home = grav-cms;
group = app;
};
users.groups.${app} = { };
}

82
pkgs/composer.patch Normal file
View file

@ -0,0 +1,82 @@
diff --git a/composer.json b/composer.json
index cf446dad6..fb38ca72a 100644
--- a/composer.json
+++ b/composer.json
@@ -61,7 +61,8 @@
"symfony/http-client": "^4.4",
"composer/semver": "^1.4",
"rhukster/dom-sanitizer": "^1.0",
- "multiavatar/multiavatar-php": "^1.0"
+ "multiavatar/multiavatar-php": "^1.0",
+ "stephank/composer-plugin-nixify": "^1.1"
},
"require-dev": {
"codeception/codeception": "^4.1",
@@ -91,6 +92,9 @@
"apcu-autoloader": true,
"platform": {
"php": "7.3.6"
+ },
+ "allow-plugins": {
+ "stephank/composer-plugin-nixify": true
}
},
"autoload": {
diff --git a/composer.lock b/composer.lock
index 842d0731c..7a12c400b 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "3b106a4d1a271673896d67cbdc8623e1",
+ "content-hash": "62d2afce59081dbbc26cfbbcf2d3ef21",
"packages": [
{
"name": "composer/ca-bundle",
@@ -2267,6 +2267,44 @@
},
"time": "2020-12-15T21:32:01+00:00"
},
+ {
+ "name": "stephank/composer-plugin-nixify",
+ "version": "v1.1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/stephank/composer-plugin-nixify.git",
+ "reference": "d93c4348388d714d7d81b41e34ccb2ae9c2131c2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/stephank/composer-plugin-nixify/zipball/d93c4348388d714d7d81b41e34ccb2ae9c2131c2",
+ "reference": "d93c4348388d714d7d81b41e34ccb2ae9c2131c2",
+ "shasum": ""
+ },
+ "require": {
+ "composer-plugin-api": "^1.1 || ^2.0"
+ },
+ "type": "composer-plugin",
+ "extra": {
+ "class": "Nixify\\Plugin"
+ },
+ "autoload": {
+ "psr-4": {
+ "Nixify\\": "./src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-2-Clause"
+ ],
+ "description": "Composer plugin to help with Nix packaging",
+ "homepage": "https://github.com/stephank/composer-plugin-nixify",
+ "support": {
+ "issues": "https://github.com/stephank/composer-plugin-nixify/issues",
+ "source": "https://github.com/stephank/composer-plugin-nixify/tree/v1.1.0"
+ },
+ "time": "2021-09-05T14:46:45+00:00"
+ },
{
"name": "symfony/console",
"version": "v4.4.49",

221
pkgs/grav.nix Normal file
View file

@ -0,0 +1,221 @@
# This file is generated by composer-plugin-nixify.
# Manual changes might be lost - proceed with caution!
{ lib
, php
, phpPackages
, unzip
, stdenv
, runCommandLocal
, writeText
, fetchurl
, fetchzip
# Default fetcher.
, fetcher ? (args: fetchurl { inherit (args) name urls sha256; })
}:
with lib;
let
package_src = fetchzip {
url = "https://github.com/getgrav/grav/releases/download/1.7.40/grav-v1.7.40.zip";
sha256 = "sha256-TeTqg9Pw/+HOvrfQmQEfJ1NoMkSV/bKeybo5sqw0/EM=";
};
composerPath = phpPackages.composer.src;
cacheEntries = [
{ name = "composer_ca-bundle-1.3.5.0"; filename = "composer/ca-bundle/9d46825bb4e4953e40f12b8ecaa9d3a004261bae.zip"; sha256 = "f1f2401d3021f8d2901ba7e2ede7005e0f1f189c91ff2f5c12ba07f3542dfc68"; urls = [ "https://api.github.com/repos/composer/ca-bundle/zipball/74780ccf8c19d6acb8d65c5f39cd72110e132bbd" ]; }
{ name = "composer_semver-1.7.2.0"; filename = "composer/semver/e01ecfbcfa44741c2f40fbd0949233048f809a56.zip"; sha256 = "b9fc779bf631a4e61de65490284a5b114ef33c4c84225880a2168f05d619bd99"; urls = [ "https://api.github.com/repos/composer/semver/zipball/647490bbcaf7fc4891c58f47b825eb99d19c377a" ]; }
{ name = "doctrine_cache-1.13.0.0"; filename = "doctrine/cache/1fc140d1ab686b4e1f84e3049c04ff7fb6a67e8c.zip"; sha256 = "d939626519158f1170234e01410e8af148f9b1a29b6949d196fd226c33bf25e6"; urls = [ "https://api.github.com/repos/doctrine/cache/zipball/56cd022adb5514472cb144c087393c1821911d09" ]; }
{ name = "doctrine_collections-1.8.0.0"; filename = "doctrine/collections/2941fa6c1027968e7cdcb511da8612248a7ec8eb.zip"; sha256 = "c81ade20559401923714f00851a7074c5fad2dfdab93571b31fbce93bb140532"; urls = [ "https://api.github.com/repos/doctrine/collections/zipball/2b44dd4cbca8b5744327de78bafef5945c7e7b5e" ]; }
{ name = "doctrine_deprecations-1.0.0.0"; filename = "doctrine/deprecations/0b11d410b30a1fca6ad657a01bbf1bf8cb37b15b.zip"; sha256 = "0948892861e2470c164fb0c45063967417c4b9e527ea4cf2b987030b047061ea"; urls = [ "https://api.github.com/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de" ]; }
{ name = "donatj_phpuseragentparser-1.7.0.0"; filename = "donatj/phpuseragentparser/54d86e86aec59e20749d59938c3718fa6f50ebaf.zip"; sha256 = "9a6b1a6089a0d651983c64d102988353d75f8c057ec88677695d5526758d6058"; urls = [ "https://api.github.com/repos/donatj/PhpUserAgent/zipball/a35900b93530715f8669c10e49756adde5c8e6fc" ]; }
{ name = "dragonmantank_cron-expression-1.2.1.0"; filename = "dragonmantank/cron-expression/942010f033d4b9cb297b5f87d708a83c92f21d38.zip"; sha256 = "ce0299262e2e85ac144bb3cafa79c834be8993a8af38b648a4e90466fb770844"; urls = [ "https://api.github.com/repos/dragonmantank/cron-expression/zipball/9504fa9ea681b586028adaaa0877db4aecf32bad" ]; }
{ name = "erusev_parsedown-1.7.4.0"; filename = "erusev/parsedown/9a0f25348b1c8c7fcf828270221f60d12d127c96.zip"; sha256 = "ad7f955dd7d24acc009820964b58d12cb4aec5c2458dd7fbdda50ef0d04e34c6"; urls = [ "https://api.github.com/repos/erusev/parsedown/zipball/cb17b6477dfff935958ba01325f2e8a2bfa6dab3" ]; }
{ name = "erusev_parsedown-extra-0.8.1.0"; filename = "erusev/parsedown-extra/5145cd36d263edd666bba988370130aae421e76a.zip"; sha256 = "8212e9e1de3122116f3dc10fa8b993eee5205a23948d0a98876cb513b86efea7"; urls = [ "https://api.github.com/repos/erusev/parsedown-extra/zipball/91ac3ff98f0cea243bdccc688df43810f044dcef" ]; }
{ name = "filp_whoops-2.14.6.0"; filename = "filp/whoops/794a816e1a560392afeb4ca3fddd2c58b4be7ce9.zip"; sha256 = "9bebc1390c9c503b198533349ce3d75c15386e4baebe2b54cce2007804a6e0d0"; urls = [ "https://api.github.com/repos/filp/whoops/zipball/f7948baaa0330277c729714910336383286305da" ]; }
{ name = "getgrav_cache-2.0.0.0"; filename = "getgrav/cache/02fa88a6a7c075f1d05e489dd7ca5d6245c7a757.zip"; sha256 = "8f807818195b636e47d7be1dd3b625f70ae0160b433dbf7f581b3e28df1d2d04"; urls = [ "https://api.github.com/repos/getgrav/Cache/zipball/56fd63f752779928fcd1074ab7d12f406dde8861" ]; }
{ name = "getgrav_image-3.0.0.0"; filename = "getgrav/image/9e4244a65d0a98c9f6f93f954979fe60872cf532.zip"; sha256 = "f849ce585f2ac839aac26ad3aefe0b8649e129edb9e24606c92e5420c59d2d05"; urls = [ "https://api.github.com/repos/getgrav/Image/zipball/02c1bb2c179dd894c4f6610c9c49da364ee7d264" ]; }
{ name = "guzzlehttp_psr7-1.9.0.0"; filename = "guzzlehttp/psr7/866497c46ef2ed33a09ebc5ba949790be8188a60.zip"; sha256 = "1ad5b4b7c123a4c54b40c3c0aa34206c29775b33a94719cabb422ec9a93177ad"; urls = [ "https://api.github.com/repos/guzzle/psr7/zipball/e98e3e6d4f86621a9b75f623996e6bbdeb4b9318" ]; }
{ name = "itsgoingd_clockwork-5.1.12.0"; filename = "itsgoingd/clockwork/f26dc3d3ed0e1df118e4a9f9fdd4b775a887086e.zip"; sha256 = "dfe866d41e083862ea5306cb323b6c8b93ec8ec83d0fb6a6ea93c0e0525ec14d"; urls = [ "https://api.github.com/repos/itsgoingd/clockwork/zipball/c9dbdbb1f0efd19bb80f1080ef63f1b9b1bc3b1b" ]; }
{ name = "league_climate-3.8.2.0"; filename = "league/climate/449bff51c30b4554ec32cf71649b0271cca42902.zip"; sha256 = "d10a6f0c9460dd2fb2f7158ecdc8fdad2ccd88afcf436cf92d7770420633d556"; urls = [ "https://api.github.com/repos/thephpleague/climate/zipball/a785a3ac8f584eed4abd45e4e16fe64c46659a28" ]; }
{ name = "matthiasmullie_minify-1.3.70.0"; filename = "matthiasmullie/minify/a589762a8aa62ca832efb92a5b166d903c1cf220.zip"; sha256 = "49f8f5cd7fe2aad86447939d5d21844d21b0c7021c616b89fa0d4e6699a143a4"; urls = [ "https://api.github.com/repos/matthiasmullie/minify/zipball/2807d9f9bece6877577ad44acb5c801bb3ae536b" ]; }
{ name = "matthiasmullie_path-converter-1.1.3.0"; filename = "matthiasmullie/path-converter/7381f29fb03e127bd1521f56397cc86ac3e1f972.zip"; sha256 = "79481872937049d0ec74da0ce18fc292df3eb7531dbf867c824437be8ad9822c"; urls = [ "https://api.github.com/repos/matthiasmullie/path-converter/zipball/e7d13b2c7e2f2268e1424aaed02085518afa02d9" ]; }
{ name = "maximebf_debugbar-1.18.2.0"; filename = "maximebf/debugbar/c9ebc907cb5e1dd594f3899e8cb3ebb19fe4aa26.zip"; sha256 = "fb3c50e8a24965497bece8d68b087c06c021c21808d5207e8d8ea6fa1547e919"; urls = [ "https://api.github.com/repos/maximebf/php-debugbar/zipball/17dcf3f6ed112bb85a37cf13538fd8de49f5c274" ]; }
{ name = "miljar_php-exif-0.6.5.0"; filename = "miljar/php-exif/d93c8fa05d659d1d84fe8bb6951ddaac0de73bb1.zip"; sha256 = "9f4806c0983413599301d4fa5922e7a4b4e944e283e46440f2f91eb095c86a1c"; urls = [ "https://api.github.com/repos/PHPExif/php-exif/zipball/41f23db39d7b48e4af0e134c2e80e577c1782ac9" ]; }
{ name = "monolog_monolog-1.27.1.0"; filename = "monolog/monolog/78f33d1dc807c414405ccad2b7fdb054be64b41b.zip"; sha256 = "52120ca3fb637ed1a493daa23685d56e545bcdc47d97d0dd6a6615325b69d29d"; urls = [ "https://api.github.com/repos/Seldaek/monolog/zipball/904713c5929655dc9b97288b69cfeedad610c9a1" ]; }
{ name = "multiavatar_multiavatar-php-1.0.5.0"; filename = "multiavatar/multiavatar-php/4f479adfef01acef74d938a4362c7658245719fb.zip"; sha256 = "b3402ffcd044bbe8f11edc685555973fdb99965f1ac82b49dfbe594064da841f"; urls = [ "https://api.github.com/repos/multiavatar/multiavatar-php/zipball/13a62a656b1c2ca1c62dee57b4c1d8a3b04e6574" ]; }
{ name = "nyholm_psr7-1.5.1.0"; filename = "nyholm/psr7/5d6f09262bdbe7949bc2811cc73627ff51f389c1.zip"; sha256 = "9db56258c34bfd5a355a8196242a85f371252cbf2f7caf7f60b3a187032d1171"; urls = [ "https://api.github.com/repos/Nyholm/psr7/zipball/f734364e38a876a23be4d906a2a089e1315be18a" ]; }
{ name = "nyholm_psr7-server-1.0.2.0"; filename = "nyholm/psr7-server/fd3271e24f437b2fd91b74592dcdb152667fd079.zip"; sha256 = "206e92ebfcb8635b8ad6f460bdf5584b9dd7a139e18dd549b78c7d9e1582e600"; urls = [ "https://api.github.com/repos/Nyholm/psr7-server/zipball/b846a689844cef114e8079d8c80f0afd96745ae3" ]; }
{ name = "php-http_message-factory-1.0.2.0"; filename = "php-http/message-factory/3a0870f309cd6c659ea5925ef5a3d22e5203a375.zip"; sha256 = "9a1dfff8872c579bf8bd9e605d4d99579e3a5784fca4053e1463e03510bbb98d"; urls = [ "https://api.github.com/repos/php-http/message-factory/zipball/a478cb11f66a6ac48d8954216cfed9aa06a501a1" ]; }
{ name = "pimple_pimple-3.5.0.0"; filename = "pimple/pimple/2b779ca4c5368b4bd2cbf2aff634d10a209c763f.zip"; sha256 = "f4a26a6a701bdeb7c90c19e8355cb8ea5ffd3a4505c22bf72e45fb873d03b8f1"; urls = [ "https://api.github.com/repos/silexphp/Pimple/zipball/a94b3a4db7fb774b3d78dad2315ddc07629e1bed" ]; }
{ name = "psr_cache-1.0.1.0"; filename = "psr/cache/db0acef2d2023a676945c844eded3b911c3089c2.zip"; sha256 = "1fa30d4dc220ca458781f0ef4327a18c278af6a32d6ca2927d94acd1db98221a"; urls = [ "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8" ]; }
{ name = "psr_container-1.1.1.0"; filename = "psr/container/e4c7bcf51ae3971f12405fe5a14d36d5b2ddff27.zip"; sha256 = "9667379def7c9222ea036f8199ef905f31c42e2baafdb4a63927d23aaef3db61"; urls = [ "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf" ]; }
{ name = "psr_http-factory-1.0.1.0"; filename = "psr/http-factory/554dafa2f4680a78fa693cedcbe62bc6873809db.zip"; sha256 = "baedc0aa21248f8a0316a8b78c98754cf7c4b3fe8ab7a4da5ad0adc22eb6cb46"; urls = [ "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be" ]; }
{ name = "psr_http-message-1.0.1.0"; filename = "psr/http-message/cc1d4e9ee13f2053b80c08976256789bf3be5256.zip"; sha256 = "8538467ca2665fe15574f4d2506871823f71fd24b9a9284aae2ba90d8f69ada4"; urls = [ "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363" ]; }
{ name = "psr_http-server-handler-1.0.1.0"; filename = "psr/http-server-handler/3e4398b37dd092bb1f62653d8810cab13c6028a2.zip"; sha256 = "9df8319abcf5e0236cc26e70819295798ae27ac57881fa41a33ac74e930cdf69"; urls = [ "https://api.github.com/repos/php-fig/http-server-handler/zipball/aff2f80e33b7f026ec96bb42f63242dc50ffcae7" ]; }
{ name = "psr_http-server-middleware-1.0.1.0"; filename = "psr/http-server-middleware/191b7f9e08d6b4893ea296f41c5385246a7fe3c5.zip"; sha256 = "f2013d5ce5c972db00801a4232e202fecd1d679974e25e9565dd2e0f85ec22e5"; urls = [ "https://api.github.com/repos/php-fig/http-server-middleware/zipball/2296f45510945530b9dceb8bcedb5cb84d40c5f5" ]; }
{ name = "psr_log-1.1.4.0"; filename = "psr/log/73bdffd901b564d0a2f7244baecb66a2572fcfc4.zip"; sha256 = "965685486b2439218c456e8ad399957891e508ec836f6cf56bbfee0606ae6069"; urls = [ "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11" ]; }
{ name = "psr_simple-cache-1.0.1.0"; filename = "psr/simple-cache/977de1cd1e7a1a991cbdf4204e86faeaeeb42382.zip"; sha256 = "fc75f927cfe72224d9a0e746a19eea7807fcbe7b2f55e2658a5d563529fb4fb6"; urls = [ "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" ]; }
{ name = "ralouphie_getallheaders-3.0.3.0"; filename = "ralouphie/getallheaders/ddc5f4c7ab3d868f5060717336a0d93475d53175.zip"; sha256 = "ef0165da5690da666ab4cb88bb4cec0d50372e3e7c922532c5795a3567b367af"; urls = [ "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822" ]; }
{ name = "rhukster_dom-sanitizer-1.0.6.0"; filename = "rhukster/dom-sanitizer/188ff95287718b5080ff1169470931465e962e30.zip"; sha256 = "1df7a4b32ea930e9d4ded59c8f744f70f4b6e6dc5d2fa6bb343878c31c9bd493"; urls = [ "https://api.github.com/repos/rhukster/dom-sanitizer/zipball/4db3ef1ac3d5505d044c5eb12aa106ba745bf129" ]; }
{ name = "rockettheme_toolbox-1.6.3.0"; filename = "rockettheme/toolbox/d2c4d66992009d14fd9fb08c895c88ddc6e49e77.zip"; sha256 = "22aae42454a5e16f3666e96af7e7402171fcc24c403eee6abbfaaf87ea50afc2"; urls = [ "https://api.github.com/repos/rockettheme/toolbox/zipball/8c751e96269aee4b42bf10c8d39f2121b7b7859c" ]; }
{ name = "seld_cli-prompt-1.0.4.0"; filename = "seld/cli-prompt/44def1d41b707822beedb593a718c2a5d02d9b50.zip"; sha256 = "1a45986e5bb9a32ca601bf6ba5272271920df65b368db0b102bb695a1dfcc9b0"; urls = [ "https://api.github.com/repos/Seldaek/cli-prompt/zipball/b8dfcf02094b8c03b40322c229493bb2884423c5" ]; }
{ name = "stephank_composer-plugin-nixify-1.1.0.0"; filename = "stephank/composer-plugin-nixify/6b00aedf28221acbb64a87222a0eb819404901f2.zip"; sha256 = "ac7cc480698f8717fb9fce4077b81303d37fe6ab2b89c8547cd7f9451598ee1e"; urls = [ "https://api.github.com/repos/stephank/composer-plugin-nixify/zipball/d93c4348388d714d7d81b41e34ccb2ae9c2131c2" ]; }
{ name = "symfony_console-4.4.49.0"; filename = "symfony/console/d14d3963a21a4767d5de90640578435a70ed879f.zip"; sha256 = "b54f19caf4f04778d77524db78e0ee6ff9bfb885f22453a4130a77933876b89e"; urls = [ "https://api.github.com/repos/symfony/console/zipball/33fa45ffc81fdcc1ca368d4946da859c8cdb58d9" ]; }
{ name = "symfony_contracts-1.1.13.0"; filename = "symfony/contracts/62924454534b650454665a30b3a330fc60f99608.zip"; sha256 = "a6da503d1371990f84887130d8cd5810b5a0927a06779a4875eca673554be83f"; urls = [ "https://api.github.com/repos/symfony/contracts/zipball/9e27f5c175ecbd6fff554d839ff4a432da797168" ]; }
{ name = "symfony_event-dispatcher-4.4.44.0"; filename = "symfony/event-dispatcher/e23d106384d0a96574d9b4ebbf46f3be1b78e549.zip"; sha256 = "400ca621de0afc6b9e6dff16e02a75fd97f01b0e4d8986e94db1b32419982d21"; urls = [ "https://api.github.com/repos/symfony/event-dispatcher/zipball/1e866e9e5c1b22168e0ce5f0b467f19bba61266a" ]; }
{ name = "symfony_http-client-4.4.49.0"; filename = "symfony/http-client/e3199458d533d5029cc1b6224c60555fba98c50a.zip"; sha256 = "48ca3cb9f71846a025cc7f77ab969ced691fb3681f1943c4afa27100afee8244"; urls = [ "https://api.github.com/repos/symfony/http-client/zipball/0185497cd61440bdf68df7d81241b97a543e9c3f" ]; }
{ name = "symfony_polyfill-ctype-1.27.0.0"; filename = "symfony/polyfill-ctype/04e84c03a82a82c09eaa688b17b523570f9d14d2.zip"; sha256 = "66f212bc73088271dbbec1f3b1c3ba21171e4c5ab38676c4d151441f3e38db6f"; urls = [ "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a" ]; }
{ name = "symfony_polyfill-iconv-1.27.0.0"; filename = "symfony/polyfill-iconv/69e48eceddb28b2d5879869d36e2ca37c03b236a.zip"; sha256 = "099017cb34e1eb1d9c7ab60d5ff0919afb66520151a14c50cf65509147fbb6e2"; urls = [ "https://api.github.com/repos/symfony/polyfill-iconv/zipball/927013f3aac555983a5059aada98e1907d842695" ]; }
{ name = "symfony_polyfill-mbstring-1.27.0.0"; filename = "symfony/polyfill-mbstring/7061da8bfb2a98acfbdcaf076c3ba5f167d856cc.zip"; sha256 = "b112101451a1f76a0cb4edd6595a5733059fd2f7a4cd4d36052526602e26a8fa"; urls = [ "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534" ]; }
{ name = "symfony_polyfill-php74-1.27.0.0"; filename = "symfony/polyfill-php74/4e9b02cfee3ebb6c3a6ea02326dc08f507301cb8.zip"; sha256 = "b43ca8e8d83da1c83c7b1e16bb3ecf856a914196ac582013c8450fbe9bb5faec"; urls = [ "https://api.github.com/repos/symfony/polyfill-php74/zipball/aa7f1231a1aa56d695e626043252b7be6a90c4ce" ]; }
{ name = "symfony_polyfill-php80-1.27.0.0"; filename = "symfony/polyfill-php80/fe4df98f0392f59ca247eec4d07f380451c09242.zip"; sha256 = "8db38ad9c85c94ad664b89ff9ec9dd5b232dc922f6107bb356d44e9dcf6cde9b"; urls = [ "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" ]; }
{ name = "symfony_polyfill-php81-1.27.0.0"; filename = "symfony/polyfill-php81/05342953cef79782b0eb31a71035b4ad15818809.zip"; sha256 = "2e09d990064b80c605ac1d7b112895f0dc98e96a1e541e0215807c6bad931917"; urls = [ "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a" ]; }
{ name = "symfony_process-4.4.44.0"; filename = "symfony/process/2ace199b202a81c6384b2b19dc8c40e584cdb3f7.zip"; sha256 = "e71b1b2cbadd8a2f12ebbc77d8e31d854e501997202b05f594defa95830450e5"; urls = [ "https://api.github.com/repos/symfony/process/zipball/5cee9cdc4f7805e2699d9fd66991a0e6df8252a2" ]; }
{ name = "symfony_var-dumper-4.4.47.0"; filename = "symfony/var-dumper/70ee02869ede4d19e2305f5d4b1085dcc111a2af.zip"; sha256 = "57d238c61a1535e0be396688b2a53a32b216728c0f419642722663f905048948"; urls = [ "https://api.github.com/repos/symfony/var-dumper/zipball/1069c7a3fca74578022fab6f81643248d02f8e63" ]; }
{ name = "symfony_yaml-4.4.45.0"; filename = "symfony/yaml/9e0a115ac549039063c6b681770f50c719472aeb.zip"; sha256 = "bff3888fc84fcf8aa2bfd71821a67d0403672941ae2865893ee002ea474436cd"; urls = [ "https://api.github.com/repos/symfony/yaml/zipball/aeccc4dc52a9e634f1d1eebeb21eacfdcff1053d" ]; }
{ name = "twig_twig-1.44.7.0"; filename = "twig/twig/6f7c242e10ad87cd27e4978d769b9cc88a20d7b6.zip"; sha256 = "da6b5e41c62c5a0f14fd2118e99c82284000bd216182935ad24afb30d2fff3fe"; urls = [ "https://api.github.com/repos/twigphp/Twig/zipball/0887422319889e442458e48e2f3d9add1a172ad5" ]; }
{ name = "willdurand_negotiation-3.1.0.0"; filename = "willdurand/negotiation/bc3258f38b86f2b29aca701bdd45e9b6da700dc3.zip"; sha256 = "624d3d28cc3dca8fb14276378b9415bc465ca4eb2ef786b5906e8d3df995a80d"; urls = [ "https://api.github.com/repos/willdurand/Negotiation/zipball/68e9ea0553ef6e2ee8db5c1d98829f111e623ec2" ]; }
{ name = "behat_gherkin-4.9.0.0"; filename = "behat/gherkin/1a6dc13389d0bd2fa4d1f82770cb8290d6aff8f4.zip"; sha256 = "f3bb34a302f68c24f6c8f4687f4f793fa517b08b2253835994fb9bf1f662e4f2"; urls = [ "https://api.github.com/repos/Behat/Gherkin/zipball/0bc8d1e30e96183e4f36db9dc79caead300beff4" ]; }
{ name = "codeception_codeception-4.2.2.0"; filename = "codeception/codeception/336d69908cbf95e6b8c9c616abef3c8853d248ad.zip"; sha256 = "ecfbcaf0932c8e6624ef2b979c44a102455e6d1c2e9f6eb63953bb259653426c"; urls = [ "https://api.github.com/repos/Codeception/Codeception/zipball/b88014f3348c93f3df99dc6d0967b0dbfa804474" ]; }
{ name = "codeception_lib-asserts-1.13.2.0"; filename = "codeception/lib-asserts/2d9f7a1e793b6dc4c1367805b398849c77aa3f70.zip"; sha256 = "a6600d50a0b8d4ec0e5eaab86b7fc5c6ccff37e041c58c7876385e92bd1979a5"; urls = [ "https://api.github.com/repos/Codeception/lib-asserts/zipball/184231d5eab66bc69afd6b9429344d80c67a33b6" ]; }
{ name = "codeception_lib-innerbrowser-1.5.1.0"; filename = "codeception/lib-innerbrowser/a22916c1a265c9826ea2bf2316f20e84f3f60853.zip"; sha256 = "77973527d3b997647b4c64be6a8b3d027ce4a4806062e209826e1c4685950103"; urls = [ "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/31b4b56ad53c3464fcb2c0a14d55a51a201bd3c2" ]; }
{ name = "codeception_module-asserts-1.3.1.0"; filename = "codeception/module-asserts/6fa3693c685c71f1ba864907a50c37e6d1822758.zip"; sha256 = "06716a356fafe41cbef41b3e611881525342e2060bbd8ed0534f0feeea88f719"; urls = [ "https://api.github.com/repos/Codeception/module-asserts/zipball/59374f2fef0cabb9e8ddb53277e85cdca74328de" ]; }
{ name = "codeception_module-phpbrowser-1.0.3.0"; filename = "codeception/module-phpbrowser/a7a5ec24ce93d5c26a3abdb01a7aa2dc154eb1ad.zip"; sha256 = "b4d525985fcd1ea6bb97f6c2339cf6a72ec33195eed10fec497f1cd8d9cb000d"; urls = [ "https://api.github.com/repos/Codeception/module-phpbrowser/zipball/8ba6bede11d0914e74d98691f427fd8f397f192e" ]; }
{ name = "codeception_phpunit-wrapper-9.0.9.0"; filename = "codeception/phpunit-wrapper/1c6974236c573d133eb567aaf367e54f57738d91.zip"; sha256 = "f9b9b2efcce5fe29ff3db38100f5469d37729e23fee13968fc022384a83290b1"; urls = [ "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/7439a53ae367986e9c22b2ac00f9d7376bb2f8cf" ]; }
{ name = "codeception_stub-3.7.0.0"; filename = "codeception/stub/994fad1bd94f1a0204f2f80c1ed63a292355dee8.zip"; sha256 = "8c94b81eec91574d0e087dc5cdf6e29d61d48e6a4296c3a0de990ba36f076d0e"; urls = [ "https://api.github.com/repos/Codeception/Stub/zipball/468dd5fe659f131fc997f5196aad87512f9b1304" ]; }
{ name = "doctrine_instantiator-1.5.0.0"; filename = "doctrine/instantiator/281539f78a082d6b6f518e4643e807bb44376df5.zip"; sha256 = "b2ac699a2ce6afe19db094650009e81eb0471d8cbfaa7a8bb4825e88e6011b03"; urls = [ "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b" ]; }
{ name = "getgrav_markdowndocs-2.0.1.0"; filename = "getgrav/markdowndocs/43e4550262fc578664f2305e2b3a348b38a7408a.zip"; sha256 = "e6e7190c2a1d54e17cf003282ee10352ff8a90b9664f290780410cbc240d00cb"; urls = [ "https://api.github.com/repos/getgrav/PHP-Markdown-Documentation-Generator/zipball/4a24d1b64a88da17e8f1696dc64969f5ca769064" ]; }
{ name = "guzzlehttp_guzzle-7.5.0.0"; filename = "guzzlehttp/guzzle/01743f83cc505a0464ba7a1a4507444403a079c7.zip"; sha256 = "37ddb40b16d8df64994dd3cdd41011109fe34ff02c4c00252adda9093212c833"; urls = [ "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba" ]; }
{ name = "guzzlehttp_promises-1.5.2.0"; filename = "guzzlehttp/promises/691eab84bb1e9e2a0b452c7fed0eb1f67862a516.zip"; sha256 = "e8efd4c91f3b0302c055cfcbeba9d869a93db8aad2b7f3242e257555fc616aef"; urls = [ "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598" ]; }
{ name = "myclabs_deep-copy-1.11.0.0"; filename = "myclabs/deep-copy/8a47e905abc875fa8049c320097a46a9c305b50b.zip"; sha256 = "3c357c9554caa4d6d71117ce8cfb7db23c1ac64eb28a1e659988cbcf201ba984"; urls = [ "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614" ]; }
{ name = "nikic_php-parser-4.15.3.0"; filename = "nikic/php-parser/d82d7114a2384784c2ec20cf1dd8fd2ac538f2ba.zip"; sha256 = "b9d68a41dc37fdb939e2200911ac0610fd37e4169a3171a0eb3a13e5e5b570e0"; urls = [ "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039" ]; }
{ name = "phar-io_manifest-2.0.3.0"; filename = "phar-io/manifest/99001d1a4fa9041c56147e32147fb55de1cf9383.zip"; sha256 = "3cb072c02dc066ff22531c8bb5bdf1a4e1dca6207c378218f75c4f4680d4ed80"; urls = [ "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53" ]; }
{ name = "phar-io_version-3.2.1.0"; filename = "phar-io/version/1495d1d88b1ae7e031b437037ce96298d897a969.zip"; sha256 = "4f6f4fab8bfeac95934cec75be23743e38b6d864876f52dcdd5b54e003fcab55"; urls = [ "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74" ]; }
{ name = "phpstan_phpstan-1.9.18.0"; filename = "phpstan/phpstan/a29ad1dc8ce451d271feb28da5275061ff8e5673.zip"; sha256 = "9769ea1e21377d38ab7ad543b8cccd766898c3ad77c3b739c79207a32eced78d"; urls = [ "https://api.github.com/repos/phpstan/phpstan/zipball/f2d5cf71be91172a57c649770b73c20ebcffb0bf" ]; }
{ name = "phpstan_phpstan-deprecation-rules-1.1.1.0"; filename = "phpstan/phpstan-deprecation-rules/f3a82bc70f249cb52d2bacffe0b4cec1a6593a27.zip"; sha256 = "ee5605db89f674a0d2b15892d88cebf04b55a3e0ce66dccd090c7e5e9b420293"; urls = [ "https://api.github.com/repos/phpstan/phpstan-deprecation-rules/zipball/2c6792eda026d9c474c14aa018aed312686714db" ]; }
{ name = "phpunit_php-code-coverage-9.2.24.0"; filename = "phpunit/php-code-coverage/22950ed3ec19594703b2c51ce0c35f7e8c502d87.zip"; sha256 = "ea8717edadc67bd1817b2d4a79cedc7e5540b0ff3ae984655df32dc6b13bb2d2"; urls = [ "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2cf940ebc6355a9d430462811b5aaa308b174bed" ]; }
{ name = "phpunit_php-file-iterator-3.0.6.0"; filename = "phpunit/php-file-iterator/4fd4ef934d9b090aff1c14e5987f251c5d6b2d0c.zip"; sha256 = "d9b2fe0929a3a844490dd9d32dbbd09a19713e3356e0199b26bc0c181c6a0790"; urls = [ "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" ]; }
{ name = "phpunit_php-invoker-3.1.1.0"; filename = "phpunit/php-invoker/18d90380b8ff6f566265ca070b4bcfe4c4bbd34c.zip"; sha256 = "d091fc2206ce86ff8664068b04952c8d8ff6dc12b7d864c1a8bf92c4adb416ef"; urls = [ "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67" ]; }
{ name = "phpunit_php-text-template-2.0.4.0"; filename = "phpunit/php-text-template/b8d58f7d3789d6fd84cb6a82ebcb5776ab609787.zip"; sha256 = "98a2b504e34e4b99e433f6d738b877d5847ea9b2800f7d8534f147eebf3fc839"; urls = [ "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" ]; }
{ name = "phpunit_php-timer-5.0.3.0"; filename = "phpunit/php-timer/b71ded866a460bbdb922b5eb818f4ed163f38f0c.zip"; sha256 = "cacc8ec54d593bfaa1627bc67e110b0ef9d2f1d2ae98007d8b2bcc4fbc3f2f3c"; urls = [ "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" ]; }
{ name = "phpunit_phpunit-9.6.3.0"; filename = "phpunit/phpunit/43638934ebf3cb1d505efcd402ac91eee55732e5.zip"; sha256 = "7a248a5f760d15264e4cc3b116b5234c9fb5b6f8d9a22c470e5c61d5e97eebdc"; urls = [ "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/e7b1615e3e887d6c719121c6d4a44b0ab9645555" ]; }
{ name = "psr_http-client-1.0.1.0"; filename = "psr/http-client/9ef0ac1a0bb8280477e24c9232fac374ed3024ac.zip"; sha256 = "fb98c497fe0d21d34c55622f687766e22198037a3c073fec44394439948bb332"; urls = [ "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" ]; }
{ name = "sebastian_cli-parser-1.0.1.0"; filename = "sebastian/cli-parser/f4b297cc8d9ba3ba47f6d1c84b9d69bac882a7b1.zip"; sha256 = "6740017ab612481526b458876d8a9aba23326099ca0e0cb7263dcd1470fb981c"; urls = [ "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2" ]; }
{ name = "sebastian_code-unit-1.0.8.0"; filename = "sebastian/code-unit/2175508c3a7c4f57c236668e95692cb4f230ef7e.zip"; sha256 = "f51e89b8ecce2a310a2cef0d7e8256378540fe1da91daa7a25a5e50c0ae87413"; urls = [ "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120" ]; }
{ name = "sebastian_code-unit-reverse-lookup-2.0.3.0"; filename = "sebastian/code-unit-reverse-lookup/68fb878dfd88a53caa52899dcad6f00ede9925b2.zip"; sha256 = "4a6a9beb03ba89c65df74e0200eef997aed640f362a94a224e61aa3ffe5f32c0"; urls = [ "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" ]; }
{ name = "sebastian_comparator-4.0.8.0"; filename = "sebastian/comparator/6a8576886b5e1cfd55783584d8a948ab21adc37c.zip"; sha256 = "7ca0bc15be7811ff9964e059889466bab579a93f7ed34cd02e58f0aef85c1155"; urls = [ "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a" ]; }
{ name = "sebastian_complexity-2.0.2.0"; filename = "sebastian/complexity/76ac0bc95bb26576a1588ac4917fe13f3107573f.zip"; sha256 = "ce23bcd6c0fe24007e0ad6bf3cc17fa7beedf11dfdc6e46c84eb6b882cfa9ef8"; urls = [ "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88" ]; }
{ name = "sebastian_diff-4.0.4.0"; filename = "sebastian/diff/527dd851ed7cdbd6b86e440441567b594e489fde.zip"; sha256 = "b209732f1736f8eb065781ac87b69bc0d8a752f19df0813ed820dbc60cb5c724"; urls = [ "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d" ]; }
{ name = "sebastian_environment-5.1.5.0"; filename = "sebastian/environment/2233d3b38ac6d485959f6c153c851f07547fee65.zip"; sha256 = "f653465ac3278f2109df985a8cfab6bb8a0524f4f0861d4e993f001b872d0408"; urls = [ "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" ]; }
{ name = "sebastian_exporter-4.0.5.0"; filename = "sebastian/exporter/d097047a341fb0e411c70e540a62a9ca3af9479c.zip"; sha256 = "d290d6d4c1ed86927a833cc9cceb9fefb4b55d6cda7774e38b43f28c3692dea8"; urls = [ "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" ]; }
{ name = "sebastian_global-state-5.0.5.0"; filename = "sebastian/global-state/1cf3bc48e84c37ec54b03a90443ac94230cef95b.zip"; sha256 = "e14d22f89153d22e02b21b305a34258e43992ef7ab3a2ac2517fc7b38a7259b3"; urls = [ "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2" ]; }
{ name = "sebastian_lines-of-code-1.0.3.0"; filename = "sebastian/lines-of-code/c83c674fbb96cf1b9525472250a2ec5c8e7784d6.zip"; sha256 = "60ae97d500e9d96e826afb01b5789c511fdb7fe6304a7c325fcf84ca8a4e5e39"; urls = [ "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc" ]; }
{ name = "sebastian_object-enumerator-4.0.4.0"; filename = "sebastian/object-enumerator/da625947c9c4e28182677035866359692138e8aa.zip"; sha256 = "c132dcacda3e4e0967aeabf068fa83f3f492a351c34bcd8f5101227ec01f0585"; urls = [ "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71" ]; }
{ name = "sebastian_object-reflector-2.0.4.0"; filename = "sebastian/object-reflector/89595d8936651649889c35a91221207e12331fda.zip"; sha256 = "4f673297cc7e85c41c8658c202e01ead4adae48d6c870ec070941bcfb50bb53c"; urls = [ "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" ]; }
{ name = "sebastian_recursion-context-4.0.5.0"; filename = "sebastian/recursion-context/4b7cea85c6a1d0a92ff75035f6b0545625890a5f.zip"; sha256 = "8102972caec5c2041cb1b156913ac9a320cca9943dc94cde79be43e7baf6e6a9"; urls = [ "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" ]; }
{ name = "sebastian_resource-operations-3.0.3.0"; filename = "sebastian/resource-operations/c70bff160e611fd40d5d68d1f06d580b9496fb3a.zip"; sha256 = "d92f4b5b50d5e264d3b00ab31a3b80c0718f2689a1f3f23d101ce67a6e46ba5c"; urls = [ "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" ]; }
{ name = "sebastian_type-3.2.1.0"; filename = "sebastian/type/6c52c952769f461058a7bcc9db2baadd3633dfc8.zip"; sha256 = "8507e504e5e67b8ac937a96373d980464fd8c1fa7211dd3f14fe2e2cccda6e2f"; urls = [ "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" ]; }
{ name = "sebastian_version-3.0.2.0"; filename = "sebastian/version/85e202da271e8389420827021d6c4f00bdd90951.zip"; sha256 = "e1c5424e05207360f511745290144dcad1df69f1789fd97eb0d1819a145f47af"; urls = [ "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c" ]; }
{ name = "symfony_browser-kit-5.4.19.0"; filename = "symfony/browser-kit/5eadf89a886f40195f59d7ebf90c9991cd92a282.zip"; sha256 = "ce752f82f1ffe5dc6fd32c4af6d220302b3b1796ce8a10307892dacdda036d7a"; urls = [ "https://api.github.com/repos/symfony/browser-kit/zipball/572b9e03741051b97c316f65f8c361eed08fdb14" ]; }
{ name = "symfony_css-selector-5.4.19.0"; filename = "symfony/css-selector/fbf6b329792996cae5f603209695eddd03319ae4.zip"; sha256 = "e62c22b77531726bcbac00f65a0f77f3ff95d35ae1752ca3f4b5e27396c25717"; urls = [ "https://api.github.com/repos/symfony/css-selector/zipball/f4a7d150f5b9e8f974f6f127d8167e420d11fc62" ]; }
{ name = "symfony_deprecation-contracts-2.5.2.0"; filename = "symfony/deprecation-contracts/7901e5c1b07f210519f820a73a327361a010e87b.zip"; sha256 = "2fbaf4a29dc3f366a972ff2e0d42d9c6974904d2b74404fb68ec2ca955326826"; urls = [ "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66" ]; }
{ name = "symfony_dom-crawler-5.4.19.0"; filename = "symfony/dom-crawler/1de5fc375cdb1169406b855419cab13071051bce.zip"; sha256 = "bedc7a8e1e192a08fb035d4ead2e97efa6036d94c05a20b14c7f55e81d6a4a2e"; urls = [ "https://api.github.com/repos/symfony/dom-crawler/zipball/224a1820e7669babdd85970230ed72bd6e342ad4" ]; }
{ name = "symfony_finder-5.4.19.0"; filename = "symfony/finder/a845d9fab363cfb2f9d7f296c42f1e1ba7c30deb.zip"; sha256 = "429f9b782df13b2c5e1b8922e94d7e0b2228f1a9fc8e7f4ece9692152b634bbc"; urls = [ "https://api.github.com/repos/symfony/finder/zipball/6071aebf810ad13fe8200c224f36103abb37cf1f" ]; }
{ name = "theseer_tokenizer-1.2.1.0"; filename = "theseer/tokenizer/9c419ba4ed9d43ff57a21270f44363ad0bed22f7.zip"; sha256 = "18d8c32441b19070ed7643321f5d3d5ee07217b991bee605cf64c979025044fd"; urls = [ "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e" ]; }
];
localPackages = [
];
# Shell snippet to collect all project dependencies.
collectCacheScript = writeText "collect-cache.sh" (
concatMapStrings
(args: ''
(
cacheFile=${escapeShellArg args.filename}
cacheFilePath="$COMPOSER_CACHE_DIR/files/$cacheFile"
mkdir -p "$(dirname "$cacheFilePath")"
cp ${escapeShellArg (fetcher args)} "$cacheFilePath"
)
'')
cacheEntries
);
replaceLocalPaths = writeText "replace-local-paths.sh" (
concatMapStrings
(args: ''
sed -i -e "s|\"${args.string}\"|\"${args.path}\"|" composer.lock
'')
localPackages
);
in
stdenv.mkDerivation {
name = "getgrav_grav";
src = package_src;
patches = [ ./composer.patch ];
# Make sure the build uses the right PHP version everywhere.
# Also include unzip for Composer.
buildInputs = [ php unzip ];
# Defines the shell alias to run Composer.
postHook = ''
composer () {
php "$NIX_COMPOSER_PATH" "$@"
}
'';
configurePhase = ''
runHook preConfigure
# Set the cache directory for Composer.
export COMPOSER_CACHE_DIR="$NIX_BUILD_TOP/.composer/cache"
# Build the cache directory contents.
source ${collectCacheScript}
# Replace local package paths with their Nix store equivalent.
source ${replaceLocalPaths}
# Store the absolute path to Composer for the 'composer' alias.
export NIX_COMPOSER_PATH="$(readlink -f ${escapeShellArg composerPath})"
# Run normal Composer install to complete dependency installation.
composer install
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/libexec $out/bin
# Move the entire project to the output directory.
mv $PWD "$out/libexec/$sourceRoot"
cd "$out/libexec/$sourceRoot"
# Update the path to Composer.
export NIX_COMPOSER_PATH="$(readlink -f ${escapeShellArg composerPath})"
# Invoke a plugin internal command to setup binaries.
composer nixify-install-bin "$out/bin"
runHook postInstall
'';
passthru = {
inherit php;
};
}