]> git.immae.eu Git - perso/Immae/Config/Nix.git/commitdiff
Purify Ludivine's website
authorIsmaël Bouya <ismael.bouya@normalesup.org>
Wed, 23 Jan 2019 15:26:11 +0000 (16:26 +0100)
committerIsmaël Bouya <ismael.bouya@normalesup.org>
Wed, 23 Jan 2019 15:26:11 +0000 (16:26 +0100)
virtual/modules/websites/ludivine/ludivinecassal.json
virtual/modules/websites/ludivine/ludivinecassal.nix
virtual/modules/websites/ludivine/php-packages.nix [new file with mode: 0644]

index 95ed12ae26ead687ddc9361a83ff402e8b6e8ac9..f39b143494c92bc5d01bb43392b3704c91facf83 100644 (file)
@@ -1,5 +1,5 @@
 {
-  "tag": "a06b5f4-master",
+  "tag": "0dacc32-master",
   "meta": {
     "name": "ludivinecassal",
     "url": "gitolite@git.immae.eu:perso/Immae/Sites/Ludivine",
@@ -7,8 +7,8 @@
   },
   "git": {
     "url": "gitolite@git.immae.eu:perso/Immae/Sites/Ludivine",
-    "rev": "a06b5f4df2e206a3f1fe2f04355d9d1c1f33ce87",
-    "sha256": "19gpnhlfnmmbx1dh8qrpjv4cgyhd2fw2l0zcw19igm5djr4ram8a",
+    "rev": "0dacc320ea052b69f79861c84bceaa89be53de60",
+    "sha256": "10khg1fq9ixly3xak591n3v0rv3f2hn91rd46d75yv3wjxaj1c2d",
     "fetchSubmodules": true
   }
 }
index 342c6983a95ccf3ae30b0010d3f3ff559bf7bb37..eff0bf8f762ed34104fb825e56239df578e6b5d6 100644 (file)
@@ -1,4 +1,4 @@
-{ lib, writeText, fetchedGitPrivate, stdenv, php, git, cacert, phpPackages, ruby, sass, imagemagick }:
+{ pkgs, lib, writeText, fetchedGitPrivate, stdenv, composerEnv, fetchurl, fetchgit, ruby, sass, imagemagick }:
 let
   ludivinecassal = { config }: rec {
     environment = config.environment;
@@ -12,6 +12,7 @@ let
             database_name: ${config.mysql.name}
             database_user: ${config.mysql.user}
             database_password: ${config.mysql.password}
+            database_server_version: ${pkgs.mariadb.mysqlVersion}
             mailer_transport: smtp
             mailer_host: mail.immae.eu
             mailer_user: null
@@ -141,30 +142,24 @@ let
       fi
       '';
     };
-    webappDir = stdenv.mkDerivation (fetchedGitPrivate ./ludivinecassal.json // rec {
-      # /!\ miniatures and data need to be in the same dir due to a
-      #     bug in leapt.im (searches for data/../miniatures)
-      buildPhase = ''
-        export GIT_SSL_CAINFO=${cacert}/etc/ssl/certs/ca-bundle.crt
-        export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
-
-        ln -sf ${configRoot} app/config/parameters.yml
-        sed -i -e "/Incenteev..ParameterHandler..ScriptHandler::buildParameters/d" composer.json
-        ${if environment == "dev" then ''
-          composer install
-        '' else ''
-          SYMFONY_ENV=prod composer install --no-dev
-        ''}
-        rm -rf var
-        ln -sf ../../../../../${varDir} var
-        '';
-      installPhase = ''
-        cp -a . $out
-        '';
-      buildInputs = [
-        php git cacert phpPackages.composer sass
-      ];
-    });
+    webappDir = composerEnv.buildPackage (
+      import ./php-packages.nix { inherit composerEnv fetchurl fetchgit; } //
+      fetchedGitPrivate ./ludivinecassal.json //
+      rec {
+        noDev = (environment == "prod");
+        preInstall = ''
+          export SYMFONY_ENV="${environment}"
+          ln -sf ${configRoot} app/config/parameters.yml
+          sed -i -e "/Incenteev..ParameterHandler..ScriptHandler::buildParameters/d" composer.json
+          '';
+        # /!\ miniatures and data need to be in the same physical dir due to a
+        #     bug in leapt.im (searches for data/../miniatures)
+        postInstall = ''
+          rm -rf var/{logs,cache,data,miniatures,tmp}
+          ln -sf ../../../../../../../${varDir}/{logs,cache,data,miniatures,tmp} var/
+          '';
+        buildInputs = [ sass ];
+      });
     webRoot = "${webappDir}/web";
   };
 in
diff --git a/virtual/modules/websites/ludivine/php-packages.nix b/virtual/modules/websites/ludivine/php-packages.nix
new file mode 100644 (file)
index 0000000..be0c559
--- /dev/null
@@ -0,0 +1,868 @@
+# Generated with composer2nix and adapted to return only the list of
+# packages
+{ composerEnv, fetchurl, fetchgit ? null }:
+{
+  packages = {
+    "behat/transliterator" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "behat-transliterator-826ce7e9c2a6664c0d1f381cbb38b1fb80a7ee2c";
+        src = fetchurl {
+          url = https://api.github.com/repos/Behat/Transliterator/zipball/826ce7e9c2a6664c0d1f381cbb38b1fb80a7ee2c;
+          sha256 = "1mgc9azx79fkrxahji3xwbgqhlcnvh3xk6llqdvhjb7vgzj4bqq0";
+        };
+      };
+    };
+    "components/bootstrap" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "components-bootstrap-5d60b2efd3159e1a9e203901849b3493c5aac61f";
+        src = fetchurl {
+          url = https://api.github.com/repos/components/bootstrap/zipball/5d60b2efd3159e1a9e203901849b3493c5aac61f;
+          sha256 = "0jdyxl86dr2lf8az1vby84i7kdn1qcqkp8fy60rs18gav0aqp4fg";
+        };
+      };
+    };
+    "components/jquery" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "components-jquery-459648cda77875519c5da3ae1dd0ed5d170aa649";
+        src = fetchurl {
+          url = https://api.github.com/repos/components/jquery/zipball/459648cda77875519c5da3ae1dd0ed5d170aa649;
+          sha256 = "04jv8yifhwx0cpkw3y3ng0bs2dv77pzrdd640p59rjxwba6r1lbb";
+        };
+      };
+    };
+    "components/jqueryui" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "components-jqueryui-c34f8dbf3ba57b3784b93f26119f436c0e8288e1";
+        src = fetchurl {
+          url = https://api.github.com/repos/components/jqueryui/zipball/c34f8dbf3ba57b3784b93f26119f436c0e8288e1;
+          sha256 = "00nkg6z8g6l3jysyzsfmfxhxqcdsd3jfqib28j8kn2frzx508xv9";
+        };
+      };
+    };
+    "composer/ca-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "composer-ca-bundle-8afa52cd417f4ec417b4bfe86b68106538a87660";
+        src = fetchurl {
+          url = https://api.github.com/repos/composer/ca-bundle/zipball/8afa52cd417f4ec417b4bfe86b68106538a87660;
+          sha256 = "18b0gq29frjf4yhl4sl3i3zbz6zr3qjgsjb8cjdhz65vpb50581p";
+        };
+      };
+    };
+    "doctrine/annotations" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-annotations-c7f2050c68a9ab0bdb0f98567ec08d80ea7d24d5";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/annotations/zipball/c7f2050c68a9ab0bdb0f98567ec08d80ea7d24d5;
+          sha256 = "0b80xpqd3j99xgm0c41kbgy0k6knrfnd29223c93295sb12112g7";
+        };
+      };
+    };
+    "doctrine/cache" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-cache-d768d58baee9a4862ca783840eca1b9add7a7f57";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/cache/zipball/d768d58baee9a4862ca783840eca1b9add7a7f57;
+          sha256 = "1kljhw4gqp12iz88h6ymsrlfir2fis7icn6dffyizfc1csyb4s2i";
+        };
+      };
+    };
+    "doctrine/collections" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-collections-a01ee38fcd999f34d9bfbcee59dbda5105449cbf";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/collections/zipball/a01ee38fcd999f34d9bfbcee59dbda5105449cbf;
+          sha256 = "0d36zc21ka0pdac9xpkxsgf5zzw9gp0m9lk3r3xs5y70j0lkkkis";
+        };
+      };
+    };
+    "doctrine/common" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-common-30e33f60f64deec87df728c02b107f82cdafad9d";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/common/zipball/30e33f60f64deec87df728c02b107f82cdafad9d;
+          sha256 = "0s4vv14ibyx62a9aj3wn5cs2bbxd72fajmfmi8qb5l11gx0375na";
+        };
+      };
+    };
+    "doctrine/dbal" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-dbal-22800bd651c1d8d2a9719e2a3dc46d5108ebfcc9";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/dbal/zipball/22800bd651c1d8d2a9719e2a3dc46d5108ebfcc9;
+          sha256 = "0kbahs699jd8pxf512dgg7arv49dc7qzi3mx8snxqm4h15n5brnj";
+        };
+      };
+    };
+    "doctrine/doctrine-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-doctrine-bundle-82d2c63cd09acbde2332f55d9aa7b28aefe4983d";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/DoctrineBundle/zipball/82d2c63cd09acbde2332f55d9aa7b28aefe4983d;
+          sha256 = "0gzrigv360rp50yxpwidbkf8vlagym0w1if010yz5xcfrz37cpn3";
+        };
+      };
+    };
+    "doctrine/doctrine-cache-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-doctrine-cache-bundle-5514c90d9fb595e1095e6d66ebb98ce9ef049927";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/DoctrineCacheBundle/zipball/5514c90d9fb595e1095e6d66ebb98ce9ef049927;
+          sha256 = "04njrfhw4fc2ifacd9h0wd9i14l7ycv3hanbqrw5ilsai02j6asa";
+        };
+      };
+    };
+    "doctrine/doctrine-migrations-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-doctrine-migrations-bundle-49fa399181db4bf4f9f725126bd1cb65c4398dce";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/49fa399181db4bf4f9f725126bd1cb65c4398dce;
+          sha256 = "1a73xjhjrjlvkh8d253kfc2rbxd2h4hwafhv5078dy7rg6x9blyn";
+        };
+      };
+    };
+    "doctrine/event-manager" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-event-manager-a520bc093a0170feeb6b14e9d83f3a14452e64b3";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/event-manager/zipball/a520bc093a0170feeb6b14e9d83f3a14452e64b3;
+          sha256 = "165cxvw4idqj01l63nya2whpdb3fz6ld54rx198b71bzwfrydl88";
+        };
+      };
+    };
+    "doctrine/inflector" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-inflector-5527a48b7313d15261292c149e55e26eae771b0a";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/inflector/zipball/5527a48b7313d15261292c149e55e26eae771b0a;
+          sha256 = "0ng6vlwjr8h6hqwa32ynykz1mhlfsff5hirjidlk086ab6njppa5";
+        };
+      };
+    };
+    "doctrine/instantiator" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-instantiator-185b8868aa9bf7159f5f953ed5afb2d7fcdc3bda";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/instantiator/zipball/185b8868aa9bf7159f5f953ed5afb2d7fcdc3bda;
+          sha256 = "1mah9a6mb30qad1zryzjain2dxw29d8h4bjkbcs3srpm3p891msy";
+        };
+      };
+    };
+    "doctrine/lexer" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-lexer-83893c552fd2045dd78aef794c31e694c37c0b8c";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c;
+          sha256 = "0cyh3vwcl163cx1vrcwmhlh5jg9h47xwiqgzc6rwscxw0ppd1v74";
+        };
+      };
+    };
+    "doctrine/migrations" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-migrations-215438c0eef3e5f9b7da7d09c6b90756071b43e6";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/migrations/zipball/215438c0eef3e5f9b7da7d09c6b90756071b43e6;
+          sha256 = "0k6sgw65vji9rgib10mq2m634m41a67inspkrcw4qixig2lnb3ld";
+        };
+      };
+    };
+    "doctrine/orm" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-orm-434820973cadf2da2d66e7184be370084cc32ca8";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/orm/zipball/434820973cadf2da2d66e7184be370084cc32ca8;
+          sha256 = "114fyq8kaf5qzfkp8sdygqflf3z94va1cs5c3scycfpg9cmi4gls";
+        };
+      };
+    };
+    "doctrine/persistence" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-persistence-c0f1c17602afc18b4cbd8e1c8125f264c9cf7d38";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/persistence/zipball/c0f1c17602afc18b4cbd8e1c8125f264c9cf7d38;
+          sha256 = "0xdm5n38rjas1mlyxc15sg1as5h7y012mdb0j9lr6cvphgnaxxv7";
+        };
+      };
+    };
+    "doctrine/reflection" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-reflection-02538d3f95e88eb397a5f86274deb2c6175c2ab6";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/reflection/zipball/02538d3f95e88eb397a5f86274deb2c6175c2ab6;
+          sha256 = "12n9zik4lxb9lx1jf0nbvg9vl9nv958a7z1yjx48scfxd1d1sxjy";
+        };
+      };
+    };
+    "fig/link-util" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "fig-link-util-1a07821801a148be4add11ab0603e4af55a72fac";
+        src = fetchurl {
+          url = https://api.github.com/repos/php-fig/link-util/zipball/1a07821801a148be4add11ab0603e4af55a72fac;
+          sha256 = "0ky1pq4a17br5zvcychjghgwr6wpkgp409hdv0ljdk3ks90w5w64";
+        };
+      };
+    };
+    "gedmo/doctrine-extensions" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "gedmo-doctrine-extensions-87c78ff9fd4b90460386f753d95622f6fbbfcb27";
+        src = fetchurl {
+          url = https://api.github.com/repos/Atlantic18/DoctrineExtensions/zipball/87c78ff9fd4b90460386f753d95622f6fbbfcb27;
+          sha256 = "0jfg0a19lhdv5b3c032ghknxhvc1f0x2n7fcwp47bm1rbz222q0z";
+        };
+      };
+    };
+    "immae/ludivine-ckeditor-component" = {
+      targetDir = "";
+      src = fetchgit {
+        name = "immae-ludivine-ckeditor-component-1794320dcfdfcd19572fb1676294f9853a6bbc20";
+        url = "https://git.immae.eu/perso/Immae/Projets/packagist/ludivine-ckeditor-component.git";
+        rev = "1794320dcfdfcd19572fb1676294f9853a6bbc20";
+        sha256 = "080f3znvp0aj5jdpc3ywis0kfzvkwz5mw2jcj12gwq3r5g5i8zdq";
+      };
+    };
+    "immae/ludivine-slick-component" = {
+      targetDir = "";
+      src = fetchgit {
+        name = "immae-ludivine-slick-component-604734c4a960aac3d99f1008337181ed2b0f04db";
+        url = "https://git.immae.eu/perso/Immae/Projets/packagist/ludivine-slick-component.git";
+        rev = "604734c4a960aac3d99f1008337181ed2b0f04db";
+        sha256 = "041wqv9pa9nvqcgqykx6cnbj539qnr9h1iym7l54igw12yj57w06";
+      };
+    };
+    "incenteev/composer-parameter-handler" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "incenteev-composer-parameter-handler-933c45a34814f27f2345c11c37d46b3ca7303550";
+        src = fetchurl {
+          url = https://api.github.com/repos/Incenteev/ParameterHandler/zipball/933c45a34814f27f2345c11c37d46b3ca7303550;
+          sha256 = "1zqdwlcl790kjyz4rkpva35xkfsp8kslds82fzznj0yigkgnbifm";
+        };
+      };
+    };
+    "jdorn/sql-formatter" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "jdorn-sql-formatter-64990d96e0959dff8e059dfcdc1af130728d92bc";
+        src = fetchurl {
+          url = https://api.github.com/repos/jdorn/sql-formatter/zipball/64990d96e0959dff8e059dfcdc1af130728d92bc;
+          sha256 = "1dnmkm8mxylvxjwi0bdkzrlklncqx92fa4fwqp5bh2ypj8gaagzi";
+        };
+      };
+    };
+    "kriswallsmith/assetic" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "kriswallsmith-assetic-e911c437dbdf006a8f62c2f59b15b2d69a5e0aa1";
+        src = fetchurl {
+          url = https://api.github.com/repos/kriswallsmith/assetic/zipball/e911c437dbdf006a8f62c2f59b15b2d69a5e0aa1;
+          sha256 = "1dqk4zvx8fgqf8rb81sj9bipl5431jib2b9kcvxyig5fw99irpf8";
+        };
+      };
+    };
+    "leapt/im-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "leapt-im-bundle-83442778d118f6edb537b93f9746c3a97e56c3d1";
+        src = fetchurl {
+          url = https://api.github.com/repos/leapt/im-bundle/zipball/83442778d118f6edb537b93f9746c3a97e56c3d1;
+          sha256 = "1gm4ih3v1j0xjm7mrpspd3yacdwvbqgag22cyqmix0hc9hw3pc6a";
+        };
+      };
+    };
+    "luxifer/doctrine-functions" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "luxifer-doctrine-functions-e1c0bb1a5cb002d9fc82d8b32a5da28c02d34c6c";
+        src = fetchurl {
+          url = https://api.github.com/repos/luxifer/doctrine-functions/zipball/e1c0bb1a5cb002d9fc82d8b32a5da28c02d34c6c;
+          sha256 = "1sw4826nvs5q0y2na9m26rbxfiaw0kfqwhky7x7apicgx5adqfa9";
+        };
+      };
+    };
+    "monolog/monolog" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "monolog-monolog-bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266";
+        src = fetchurl {
+          url = https://api.github.com/repos/Seldaek/monolog/zipball/bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266;
+          sha256 = "0h3nnxjf2bdh7nmpqnpij99lqv6bw13r2bx83d8vn5zvblwg5png";
+        };
+      };
+    };
+    "ocramius/package-versions" = {
+      targetDir = "";
+      needsModifyRights = true;
+      src = composerEnv.buildZipPackage {
+        name = "ocramius-package-versions-4489d5002c49d55576fa0ba786f42dbb009be46f";
+        src = fetchurl {
+          url = https://api.github.com/repos/Ocramius/PackageVersions/zipball/4489d5002c49d55576fa0ba786f42dbb009be46f;
+          sha256 = "039c404g9597x45xh04bnn8kmcyknkbnr57yb9s7vf29vfrg4881";
+        };
+      };
+    };
+    "ocramius/proxy-manager" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "ocramius-proxy-manager-14b137b06b0f911944132df9d51e445a35920ab1";
+        src = fetchurl {
+          url = https://api.github.com/repos/Ocramius/ProxyManager/zipball/14b137b06b0f911944132df9d51e445a35920ab1;
+          sha256 = "10y5msgh2jdlw4w075fasv40yq01szjy15m3f0wgc89hlfmqz0sn";
+        };
+      };
+    };
+    "paragonie/random_compat" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "paragonie-random_compat-84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95";
+        src = fetchurl {
+          url = https://api.github.com/repos/paragonie/random_compat/zipball/84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95;
+          sha256 = "03nsccdvcb79l64b7lsmx0n8ldf5z3v8niqr7bpp6wg401qp9p09";
+        };
+      };
+    };
+    "psr/cache" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "psr-cache-d11b50ad223250cf17b86e38383413f5a6764bf8";
+        src = fetchurl {
+          url = https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8;
+          sha256 = "06i2k3dx3b4lgn9a4v1dlgv8l9wcl4kl7vzhh63lbji0q96hv8qz";
+        };
+      };
+    };
+    "psr/container" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "psr-container-b7ce3b176482dbbc1245ebf52b181af44c2cf55f";
+        src = fetchurl {
+          url = https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f;
+          sha256 = "0rkz64vgwb0gfi09klvgay4qnw993l1dc03vyip7d7m2zxi6cy4j";
+        };
+      };
+    };
+    "psr/link" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "psr-link-eea8e8662d5cd3ae4517c9b864493f59fca95562";
+        src = fetchurl {
+          url = https://api.github.com/repos/php-fig/link/zipball/eea8e8662d5cd3ae4517c9b864493f59fca95562;
+          sha256 = "091k4p9irkqnmq9b0p792wz1hb7dm4rafpjilw9im9xhsxgkmr13";
+        };
+      };
+    };
+    "psr/log" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "psr-log-6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd";
+        src = fetchurl {
+          url = https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd;
+          sha256 = "1i351p3gd1pgjcjxv7mwwkiw79f1xiqr38irq22156h05zlcx80d";
+        };
+      };
+    };
+    "psr/simple-cache" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "psr-simple-cache-408d5eafb83c57f6365a3ca330ff23aa4a5fa39b";
+        src = fetchurl {
+          url = https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b;
+          sha256 = "1djgzclkamjxi9jy4m9ggfzgq1vqxaga2ip7l3cj88p7rwkzjxgw";
+        };
+      };
+    };
+    "robloach/component-installer" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "robloach-component-installer-908a859aa7c4949ba9ad67091e67bac10b66d3d7";
+        src = fetchurl {
+          url = https://api.github.com/repos/RobLoach/component-installer/zipball/908a859aa7c4949ba9ad67091e67bac10b66d3d7;
+          sha256 = "19y5sv4k338bihzmm8iac6q43r18vxhmbpvrdhz8jn39r51ampq9";
+        };
+      };
+    };
+    "sensio/distribution-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sensio-distribution-bundle-59eac70f15f97ee945924948a6f5e2f6f86b7a4b";
+        src = fetchurl {
+          url = https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/59eac70f15f97ee945924948a6f5e2f6f86b7a4b;
+          sha256 = "05mj4c0ahwg6l2wipyqfyyjjp1m2vvl7ymp61nvwv7zhvqacvljs";
+        };
+      };
+    };
+    "sensio/framework-extra-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sensio-framework-extra-bundle-bb907234df776b68922eb4b25bfa061683597b6a";
+        src = fetchurl {
+          url = https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/bb907234df776b68922eb4b25bfa061683597b6a;
+          sha256 = "011hcljjcfq5qy4a7mlf0hwqxyb58yci40ini0n5rqandcyk2nck";
+        };
+      };
+    };
+    "sensiolabs/security-checker" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sensiolabs-security-checker-46be3f58adac13084497961e10eed9a7fb4d44d1";
+        src = fetchurl {
+          url = https://api.github.com/repos/sensiolabs/security-checker/zipball/46be3f58adac13084497961e10eed9a7fb4d44d1;
+          sha256 = "1caqf3hdfsajj9nb8fpinvs6apv90g1srwxcyxdnr6a8d6g0p6qi";
+        };
+      };
+    };
+    "swiftmailer/swiftmailer" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "swiftmailer-swiftmailer-181b89f18a90f8925ef805f950d47a7190e9b950";
+        src = fetchurl {
+          url = https://api.github.com/repos/swiftmailer/swiftmailer/zipball/181b89f18a90f8925ef805f950d47a7190e9b950;
+          sha256 = "0hkmawv3bhbqdavy4wxqhzajg5zqd7chsi8w27y2zdi5r35az75d";
+        };
+      };
+    };
+    "symfony/assetic-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-assetic-bundle-2e0a23a4874838e26de6f025e02fc63328921a4c";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/assetic-bundle/zipball/2e0a23a4874838e26de6f025e02fc63328921a4c;
+          sha256 = "17rxrkyzxa6x5nn7qhhhdgx4z0nlznnq5fifza4wv9znca8bbwyc";
+        };
+      };
+    };
+    "symfony/monolog-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-monolog-bundle-572e143afc03419a75ab002c80a2fd99299195ff";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/monolog-bundle/zipball/572e143afc03419a75ab002c80a2fd99299195ff;
+          sha256 = "0g8icydnwfbqcbc56pqyc8bv1vp31331w0r75r3hqh225p2j1nd7";
+        };
+      };
+    };
+    "symfony/polyfill-apcu" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-polyfill-apcu-19e1b73bf255265ad0b568f81766ae2a3266d8d2";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/polyfill-apcu/zipball/19e1b73bf255265ad0b568f81766ae2a3266d8d2;
+          sha256 = "0jg33c81kwkpxk0b18jkslz9jkbkxl5k48h6m5b33dm63p1fj05r";
+        };
+      };
+    };
+    "symfony/polyfill-ctype" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-polyfill-ctype-e3d826245268269cd66f8326bd8bc066687b4a19";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/polyfill-ctype/zipball/e3d826245268269cd66f8326bd8bc066687b4a19;
+          sha256 = "16md0qmy5jvvl7lc6n6r5hxjdr5i30vl6n9rpkm4b11rh2nqh7mh";
+        };
+      };
+    };
+    "symfony/polyfill-intl-icu" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-polyfill-intl-icu-f22a90256d577c7ef7efad8df1f0201663d57644";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/f22a90256d577c7ef7efad8df1f0201663d57644;
+          sha256 = "0x7h8l248l1gc07xmvfixq6p80ifdaa29qympfq3jzfb79k69slq";
+        };
+      };
+    };
+    "symfony/polyfill-mbstring" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-polyfill-mbstring-c79c051f5b3a46be09205c73b80b346e4153e494";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/polyfill-mbstring/zipball/c79c051f5b3a46be09205c73b80b346e4153e494;
+          sha256 = "18v2777cky55ah6xi4dh383mp4iddwzmnvx81qd86y1kgfykwhpi";
+        };
+      };
+    };
+    "symfony/polyfill-php56" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-polyfill-php56-ff208829fe1aa48ab9af356992bb7199fed551af";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/polyfill-php56/zipball/ff208829fe1aa48ab9af356992bb7199fed551af;
+          sha256 = "0vmpiwakc7hpbr6jwpk7cqcy41ybgwl6jkn3q8c4ryxynknn5hfk";
+        };
+      };
+    };
+    "symfony/polyfill-php70" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-polyfill-php70-6b88000cdd431cd2e940caa2cb569201f3f84224";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/polyfill-php70/zipball/6b88000cdd431cd2e940caa2cb569201f3f84224;
+          sha256 = "08h77r1i2q4pwdd0yk3pfhqqgk0z7gwmkzmvykx9bfv1z7a0h8ik";
+        };
+      };
+    };
+    "symfony/polyfill-util" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-polyfill-util-3b58903eae668d348a7126f999b0da0f2f93611c";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/polyfill-util/zipball/3b58903eae668d348a7126f999b0da0f2f93611c;
+          sha256 = "00bb5mgljk6d54nyvd4gmc7mbzfr4b4q7h3rxmv8rzq613wcjp3i";
+        };
+      };
+    };
+    "symfony/swiftmailer-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-swiftmailer-bundle-c4808f5169efc05567be983909d00f00521c53ec";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/c4808f5169efc05567be983909d00f00521c53ec;
+          sha256 = "0jmd3slhb3gf3c3krmk2a9fi4ixdxvqlimdkfpj0sfaaq0115y01";
+        };
+      };
+    };
+    "symfony/symfony" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-symfony-f6b8ddc362b1cf3fb06548693c3adbb736092412";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/symfony/zipball/f6b8ddc362b1cf3fb06548693c3adbb736092412;
+          sha256 = "0ip7k5xf34w4p1zvv2nkv4nyik3asidk3zlgzyc1v57429z0f28q";
+        };
+      };
+    };
+    "twig/extensions" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "twig-extensions-57873c8b0c1be51caa47df2cdb824490beb16202";
+        src = fetchurl {
+          url = https://api.github.com/repos/twigphp/Twig-extensions/zipball/57873c8b0c1be51caa47df2cdb824490beb16202;
+          sha256 = "1sjajjd6vnczvdrl9b8zhzr06l5dflzqiwg9d33d92q8gli4j7jn";
+        };
+      };
+    };
+    "twig/twig" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "twig-twig-a11dd39f5b6589e14f0ff3b36675d06047c589b1";
+        src = fetchurl {
+          url = https://api.github.com/repos/twigphp/Twig/zipball/a11dd39f5b6589e14f0ff3b36675d06047c589b1;
+          sha256 = "0rnwam9379gj5m4ik0fh6c81dbr7kwj2b3x1gnmpf6awa5fm261n";
+        };
+      };
+    };
+    "zendframework/zend-code" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "zendframework-zend-code-c21db169075c6ec4b342149f446e7b7b724f95eb";
+        src = fetchurl {
+          url = https://api.github.com/repos/zendframework/zend-code/zipball/c21db169075c6ec4b342149f446e7b7b724f95eb;
+          sha256 = "031mfsahjkl63348020wq05273kvszx0dv2766zmzncnd6fcggw1";
+        };
+      };
+    };
+    "zendframework/zend-eventmanager" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "zendframework-zend-eventmanager-a5e2583a211f73604691586b8406ff7296a946dd";
+        src = fetchurl {
+          url = https://api.github.com/repos/zendframework/zend-eventmanager/zipball/a5e2583a211f73604691586b8406ff7296a946dd;
+          sha256 = "08a05gn40hfdy2zhz4gcd3r6q7m7zcaks5kpvb9dx1awgx0pzr8n";
+        };
+      };
+    };
+  };
+  devPackages = {
+    "doctrine/data-fixtures" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-data-fixtures-3a1e2c3c600e615a2dffe56d4ca0875cc5233e0a";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/data-fixtures/zipball/3a1e2c3c600e615a2dffe56d4ca0875cc5233e0a;
+          sha256 = "0wbxhy7hq17laqgnq9x9ygysv0n1kn7s4x3v89pk7iy622pil3sm";
+        };
+      };
+    };
+    "doctrine/doctrine-fixtures-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "doctrine-doctrine-fixtures-bundle-74b8cc70a4a25b774628ee59f4cdf3623a146273";
+        src = fetchurl {
+          url = https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/74b8cc70a4a25b774628ee59f4cdf3623a146273;
+          sha256 = "1bbflq8k6izwqgp9ka2gyb5y96a80b4lnlc5wrgc5gnih7hqidlf";
+        };
+      };
+    };
+    "fzaninotto/faker" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "fzaninotto-faker-d0190b156bcca848d401fb80f31f504f37141c8d";
+        src = fetchurl {
+          url = https://api.github.com/repos/fzaninotto/Faker/zipball/d0190b156bcca848d401fb80f31f504f37141c8d;
+          sha256 = "1x7xrxw14x7b0iq7sxi9ynswk8ljga62i77ch7xip4dwgq1dypvi";
+        };
+      };
+    };
+    "league/factory-muffin" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "league-factory-muffin-316ed2bac70178567f995d877b831804c9c58d5a";
+        src = fetchurl {
+          url = https://api.github.com/repos/thephpleague/factory-muffin/zipball/316ed2bac70178567f995d877b831804c9c58d5a;
+          sha256 = "1fxh0hsqifmnhgkwyd460x3w9wn74369lmak3f1m24mn2asiynxq";
+        };
+      };
+    };
+    "league/factory-muffin-faker" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "league-factory-muffin-faker-30dbd11bb6be03b47e52bd60006ae198d20ab426";
+        src = fetchurl {
+          url = https://api.github.com/repos/thephpleague/factory-muffin-faker/zipball/30dbd11bb6be03b47e52bd60006ae198d20ab426;
+          sha256 = "0dsimjdnsmzdd4vwjzw1gz1bb4zlhmv66g3fc9k4nj5bqch6mny1";
+        };
+      };
+    };
+    "mikey179/vfsStream" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "mikey179-vfsStream-d5fec95f541d4d71c4823bb5e30cf9b9e5b96145";
+        src = fetchurl {
+          url = https://api.github.com/repos/mikey179/vfsStream/zipball/d5fec95f541d4d71c4823bb5e30cf9b9e5b96145;
+          sha256 = "034rdds85qr3n7kqz161dqinl909gwnxgjsvychw8m7dyk2dbl99";
+        };
+      };
+    };
+    "phpdocumentor/reflection-common" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpdocumentor-reflection-common-21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6";
+        src = fetchurl {
+          url = https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6;
+          sha256 = "1yaf1zg9lnkfnq2ndpviv0hg5bza9vjvv5l4wgcn25lx1p8a94w2";
+        };
+      };
+    };
+    "phpdocumentor/reflection-docblock" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpdocumentor-reflection-docblock-94fd0001232e47129dd3504189fa1c7225010d08";
+        src = fetchurl {
+          url = https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/94fd0001232e47129dd3504189fa1c7225010d08;
+          sha256 = "03zvxqb5n9ddvysj8mjdwf59h7sagj5x5z15nhs7mqpcky1w388x";
+        };
+      };
+    };
+    "phpdocumentor/type-resolver" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpdocumentor-type-resolver-9c977708995954784726e25d0cd1dddf4e65b0f7";
+        src = fetchurl {
+          url = https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9c977708995954784726e25d0cd1dddf4e65b0f7;
+          sha256 = "0h888r2iy2290yp9i3fij8wd5b7960yi7yn1rwh26x1xxd83n2mb";
+        };
+      };
+    };
+    "phpspec/prophecy" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpspec-prophecy-4ba436b55987b4bf311cb7c6ba82aa528aac0a06";
+        src = fetchurl {
+          url = https://api.github.com/repos/phpspec/prophecy/zipball/4ba436b55987b4bf311cb7c6ba82aa528aac0a06;
+          sha256 = "0sz9fg8r4yvpgrhsh6qaic3p89pafdj8bdf4izbcccq6mdhclxn6";
+        };
+      };
+    };
+    "phpunit/php-code-coverage" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpunit-php-code-coverage-eabf68b476ac7d0f73793aada060f1c1a9bf8979";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979;
+          sha256 = "0xfkf2kaqrid0ajr8qfh3qnpiqqddl0cmmdy6hd7l9y7ziy6qz8d";
+        };
+      };
+    };
+    "phpunit/php-file-iterator" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpunit-php-file-iterator-730b01bc3e867237eaac355e06a36b85dd93a8b4";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/730b01bc3e867237eaac355e06a36b85dd93a8b4;
+          sha256 = "0kbg907g9hrx7pv8v0wnf4ifqywdgvigq6y6z00lyhgd0b8is060";
+        };
+      };
+    };
+    "phpunit/php-text-template" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpunit-php-text-template-31f8b717e51d9a2afca6c9f046f5d69fc27c8686";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686;
+          sha256 = "1y03m38qqvsbvyakd72v4dram81dw3swyn5jpss153i5nmqr4p76";
+        };
+      };
+    };
+    "phpunit/php-timer" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpunit-php-timer-3dcf38ca72b158baf0bc245e9184d3fdffa9c46f";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f;
+          sha256 = "1j04r0hqzrv6m1jk5nb92k2nnana72nscqpfk3rgv3fzrrv69ljr";
+        };
+      };
+    };
+    "phpunit/php-token-stream" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpunit-php-token-stream-1ce90ba27c42e4e44e6d8458241466380b51fa16";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/1ce90ba27c42e4e44e6d8458241466380b51fa16;
+          sha256 = "0j1v83m268cddhyzi8qvqfzhpz12hrm3dyw6skyqvljdp7l9x6lk";
+        };
+      };
+    };
+    "phpunit/phpunit" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpunit-phpunit-46023de9a91eec7dfb06cc56cb4e260017298517";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/phpunit/zipball/46023de9a91eec7dfb06cc56cb4e260017298517;
+          sha256 = "0mxhgcmc575hw3n7czindgqiha8jhdi4p19h883vf15fg6xf5iv6";
+        };
+      };
+    };
+    "phpunit/phpunit-mock-objects" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "phpunit-phpunit-mock-objects-ac8e7a3db35738d56ee9a76e78a4e03d97628983";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983;
+          sha256 = "0s7nyyafdqw2hp7wsd2mxnjxpk26630vv3wii6hcdb0q8xy8r78i";
+        };
+      };
+    };
+    "sebastian/comparator" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sebastian-comparator-2b7424b55f5047b47ac6e5ccb20b2aea4011d9be";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be;
+          sha256 = "0ymarxgnr8b3iy0w18h5z13iiv0ja17vjryryzfcwlqqhlc6w7iq";
+        };
+      };
+    };
+    "sebastian/diff" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sebastian-diff-7f066a26a962dbe58ddea9f72a4e82874a3975a4";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/diff/zipball/7f066a26a962dbe58ddea9f72a4e82874a3975a4;
+          sha256 = "1ppx21vjj79z6d584ryq451k7kvdc511awmqjkj9g4vxj1s1h3j6";
+        };
+      };
+    };
+    "sebastian/environment" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sebastian-environment-be2c607e43ce4c89ecd60e75c6a85c126e754aea";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea;
+          sha256 = "0gzgnk847kf18krq4ybbi2knzj7i0kdghsdlj6qynzzrlf7idij0";
+        };
+      };
+    };
+    "sebastian/exporter" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sebastian-exporter-42c4c2eec485ee3e159ec9884f95b431287edde4";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4;
+          sha256 = "1p5mc4lqwxn79v06jjlgqxynblywcxw2mkhbf6r4jlz0bsrqafxn";
+        };
+      };
+    };
+    "sebastian/global-state" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sebastian-global-state-bc37d50fea7d017d3d340f230811c9f1d7280af4";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4;
+          sha256 = "0y1x16mf9q38s7rlc7k2s6sxn2ccxmyk1q5zgh24hr4yp035f0pb";
+        };
+      };
+    };
+    "sebastian/recursion-context" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sebastian-recursion-context-b19cc3298482a335a95f3016d2f8a6950f0fbcd7";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/b19cc3298482a335a95f3016d2f8a6950f0fbcd7;
+          sha256 = "1i9xdv55nkg1yy5q4lmpq1jsjif69hjrwmr1zha6b5qjf6ivlvjm";
+        };
+      };
+    };
+    "sebastian/version" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sebastian-version-58b3a85e7999757d6ad81c787a1fbf5ff6c628c6";
+        src = fetchurl {
+          url = https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6;
+          sha256 = "1s71b6ss29pcsm0120myriwnzla1kpj13f3f739c7k1wfm69h4wz";
+        };
+      };
+    };
+    "sensio/generator-bundle" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "sensio-generator-bundle-28cbaa244bd0816fd8908b93f90380bcd7b67a65";
+        src = fetchurl {
+          url = https://api.github.com/repos/sensiolabs/SensioGeneratorBundle/zipball/28cbaa244bd0816fd8908b93f90380bcd7b67a65;
+          sha256 = "1j09y037xk843q8gcyfmwgy6dmn0h67pd5jnsvhj08h92ssbl0c3";
+        };
+      };
+    };
+    "symfony/phpunit-bridge" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "symfony-phpunit-bridge-2155067dfc73e0e77dbc26f236af17e4df552de5";
+        src = fetchurl {
+          url = https://api.github.com/repos/symfony/phpunit-bridge/zipball/2155067dfc73e0e77dbc26f236af17e4df552de5;
+          sha256 = "1fhqyhvns69pkv086d1sp918bakqq9pk9d16nzck2s4pfdf097pj";
+        };
+      };
+    };
+    "webmozart/assert" = {
+      targetDir = "";
+      src = composerEnv.buildZipPackage {
+        name = "webmozart-assert-83e253c8e0be5b0257b881e1827274667c5c17a9";
+        src = fetchurl {
+          url = https://api.github.com/repos/webmozart/assert/zipball/83e253c8e0be5b0257b881e1827274667c5c17a9;
+          sha256 = "0d84b0ms9mjpqx368gs7c3qs06mpbx5565j3vs43b1ygnyhhhaqk";
+        };
+      };
+    };
+  };
+}