From c890321db12036be69ebbece202984874b1e5a57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isma=C3=ABl=20Bouya?= Date: Sat, 11 May 2019 16:26:38 +0200 Subject: Add Tellesflorian website to pkgs --- nixops/modules/websites/tellesflorian/default.nix | 14 +- .../websites/tellesflorian/php-packages.nix | 389 --------------------- .../websites/tellesflorian/tellesflorian.json | 14 - .../websites/tellesflorian/tellesflorian.nix | 299 ++++++++-------- pkgs/private/webapps/default.nix | 1 + pkgs/private/webapps/tellesflorian/default.nix | 25 ++ .../private/webapps/tellesflorian/php-packages.nix | 389 +++++++++++++++++++++ .../webapps/tellesflorian/tellesflorian.json | 14 + 8 files changed, 575 insertions(+), 570 deletions(-) delete mode 100644 nixops/modules/websites/tellesflorian/php-packages.nix delete mode 100644 nixops/modules/websites/tellesflorian/tellesflorian.json create mode 100644 pkgs/private/webapps/tellesflorian/default.nix create mode 100644 pkgs/private/webapps/tellesflorian/php-packages.nix create mode 100644 pkgs/private/webapps/tellesflorian/tellesflorian.json diff --git a/nixops/modules/websites/tellesflorian/default.nix b/nixops/modules/websites/tellesflorian/default.nix index f86b0c5..381476c 100644 --- a/nixops/modules/websites/tellesflorian/default.nix +++ b/nixops/modules/websites/tellesflorian/default.nix @@ -1,13 +1,13 @@ { lib, pkgs, config, myconfig, mylibs, ... }: let - adminer = pkgs.callPackage ../commons/adminer.nix {}; + adminer = pkgs.callPackage ../commons/adminer.nix {}; - tellesflorian = pkgs.callPackage ./tellesflorian.nix { inherit (mylibs) fetchedGitPrivate; }; - tellesflorian_dev = tellesflorian { - config = myconfig.env.websites.tellesflorian.integration; - }; + tellesflorian_dev = pkgs.callPackage ./tellesflorian.nix { + inherit (pkgs.private.webapps) tellesflorian; + config = myconfig.env.websites.tellesflorian.integration; + }; - cfg = config.services.myWebsites.TellesFlorian; + cfg = config.services.myWebsites.TellesFlorian; in { options.services.myWebsites.TellesFlorian = { integration = { @@ -24,7 +24,7 @@ in { system.activationScripts.tellesflorian_dev = tellesflorian_dev.activationScript; system.extraSystemBuilderCmds = '' mkdir -p $out/webapps - ln -s ${tellesflorian_dev.webRoot} $out/webapps/${tellesflorian_dev.apache.webappName} + ln -s ${tellesflorian_dev.app.webRoot} $out/webapps/${tellesflorian_dev.apache.webappName} ''; services.myWebsites.integration.modules = adminer.apache.modules ++ tellesflorian_dev.apache.modules; services.myWebsites.integration.vhostConfs.tellesflorian = { diff --git a/nixops/modules/websites/tellesflorian/php-packages.nix b/nixops/modules/websites/tellesflorian/php-packages.nix deleted file mode 100644 index 0c7e00c..0000000 --- a/nixops/modules/websites/tellesflorian/php-packages.nix +++ /dev/null @@ -1,389 +0,0 @@ -# Generated with composer2nix and adapted to return only the list of -# packages -{ composerEnv, fetchurl }: -{ - packages = { - "composer/ca-bundle" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "composer-ca-bundle-943b2c4fcad1ef178d16a713c2468bf7e579c288"; - src = fetchurl { - url = https://api.github.com/repos/composer/ca-bundle/zipball/943b2c4fcad1ef178d16a713c2468bf7e579c288; - sha256 = "1gljia7akifp57w4rjzyh1km23kwymmvglz0mgafdgqzczcw0m6w"; - }; - }; - }; - "doctrine/annotations" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-annotations-f25c8aab83e0c3e976fd7d19875f198ccf2f7535"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535; - sha256 = "08vm22fqq8r4bg2fk06y4inqnc8x0yfmsss28w5ra2011x2phq4z"; - }; - }; - }; - "doctrine/cache" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-cache-eb152c5100571c7a45470ff2a35095ab3f3b900b"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/cache/zipball/eb152c5100571c7a45470ff2a35095ab3f3b900b; - sha256 = "0iq0qqv1smlqz63jhj2fpjy54c5dwfwxyf5c89iky6i0yb81gwyd"; - }; - }; - }; - "doctrine/collections" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-collections-6c1e4eef75f310ea1b3e30945e9f06e652128b8a"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a; - sha256 = "1dkxr2vjycykpcnnmq68rcnn1ww0kbpizd5pxxm6x9i2ilj8cbn7"; - }; - }; - }; - "doctrine/common" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-common-7bce00698899aa2c06fe7365c76e4d78ddb15fa3"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/common/zipball/7bce00698899aa2c06fe7365c76e4d78ddb15fa3; - sha256 = "12yizcsxsbhhi8hwaik4zalr12n5nxbpld05zygqhx6miyr92jyd"; - }; - }; - }; - "doctrine/dbal" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-dbal-729340d8d1eec8f01bff708e12e449a3415af873"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/dbal/zipball/729340d8d1eec8f01bff708e12e449a3415af873; - sha256 = "184p8h0n6mcm0y6vfyh0z6qcxmmf8h5z4vdvxd4ycmx0531lnhj3"; - }; - }; - }; - "doctrine/doctrine-bundle" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-doctrine-bundle-eb6e4fb904a459be28872765ab6e2d246aac7c87"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/DoctrineBundle/zipball/eb6e4fb904a459be28872765ab6e2d246aac7c87; - sha256 = "0kkisgyblc9hf9x3zpbb1wif51fa8mi6svyd44nls38k9k93dp17"; - }; - }; - }; - "doctrine/doctrine-cache-bundle" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-doctrine-cache-bundle-9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/DoctrineCacheBundle/zipball/9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1; - sha256 = "08bqz18vk4673pnm2r2pcph6pdchc36zajnma1p9c6dp21sv7iki"; - }; - }; - }; - "doctrine/inflector" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-inflector-90b2128806bfde671b6952ab8bea493942c1fdae"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/inflector/zipball/90b2128806bfde671b6952ab8bea493942c1fdae; - sha256 = "01vmclj3k7xil51jg329fznshh8d07pvm4mr89lvfn1d7fyrq6qw"; - }; - }; - }; - "doctrine/instantiator" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-instantiator-8e884e78f9f0eb1329e445619e04456e64d8051d"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d; - sha256 = "15dcja45rnwya431pcm826l68k1g8f1fabl7rih69alcdyvdlln4"; - }; - }; - }; - "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/orm" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "doctrine-orm-810a7baf81462a5ddf10e8baa8cb94b6eec02754"; - src = fetchurl { - url = https://api.github.com/repos/doctrine/doctrine2/zipball/810a7baf81462a5ddf10e8baa8cb94b6eec02754; - sha256 = "1hmkc7917kgnav9hmlgvlp7qwm3zjj910ci71g9yqwjh6s28wrf1"; - }; - }; - }; - "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"; - }; - }; - }; - "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"; - }; - }; - }; - "monolog/monolog" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "monolog-monolog-fd8c787753b3a2ad11bc60c063cff1358a32a3b4"; - src = fetchurl { - url = https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4; - sha256 = "0avf3y8raw23krwdb7kw9qb5bsr5ls4i7qd2vh7hcds3qjixg3h9"; - }; - }; - }; - "paragonie/random_compat" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "paragonie-random_compat-5da4d3c796c275c55f057af5a643ae297d96b4d8"; - src = fetchurl { - url = https://api.github.com/repos/paragonie/random_compat/zipball/5da4d3c796c275c55f057af5a643ae297d96b4d8; - sha256 = "1hp6pin4923c300yi85m7qk04gsrbygv52wv5zm7giyyf0k0g073"; - }; - }; - }; - "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-4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"; - src = fetchurl { - url = https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d; - sha256 = "1mlcv17fjw39bjpck176ah1z393b6pnbw3jqhhrblj27c70785md"; - }; - }; - }; - "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"; - }; - }; - }; - "sensio/distribution-bundle" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "sensio-distribution-bundle-eb6266b3b472e4002538610b28a0a04bcf94891a"; - src = fetchurl { - url = https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/eb6266b3b472e4002538610b28a0a04bcf94891a; - sha256 = "0wyffqj924lz9cv0vbahyngjw1g850v0p34swygzzgp3cr0ank13"; - }; - }; - }; - "sensio/framework-extra-bundle" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "sensio-framework-extra-bundle-bf4940572e43af679aaa13be98f3446a1c237bd8"; - src = fetchurl { - url = https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/bf4940572e43af679aaa13be98f3446a1c237bd8; - sha256 = "1kb1n5w3kfc0kf4pslqdx5pgp0g4hmaag0i00wvjj2n3pjfm5lhf"; - }; - }; - }; - "sensiolabs/security-checker" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "sensiolabs-security-checker-dc270d5fec418cc6ac983671dba5d80ffaffb142"; - src = fetchurl { - url = https://api.github.com/repos/sensiolabs/security-checker/zipball/dc270d5fec418cc6ac983671dba5d80ffaffb142; - sha256 = "0fnshyd6f8j91a7y604nh6sqgscjl48mfa0727g2r4hkdfz8hpd1"; - }; - }; - }; - "swiftmailer/swiftmailer" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "swiftmailer-swiftmailer-7ffc1ea296ed14bf8260b6ef11b80208dbadba91"; - src = fetchurl { - url = https://api.github.com/repos/swiftmailer/swiftmailer/zipball/7ffc1ea296ed14bf8260b6ef11b80208dbadba91; - sha256 = "1vl5pzgvr2yfrj1yfs02mi917b0gr56v76ibi40r51a3346zhp6v"; - }; - }; - }; - "symfony/monolog-bundle" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "symfony-monolog-bundle-8781649349fe418d51d194f8c9d212c0b97c40dd"; - src = fetchurl { - url = https://api.github.com/repos/symfony/monolog-bundle/zipball/8781649349fe418d51d194f8c9d212c0b97c40dd; - sha256 = "0wcqhg1vfdj3mxacr3fxpgqwy1rk9znjg9bmzx4jymk8l16i7bq8"; - }; - }; - }; - "symfony/polyfill-apcu" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "symfony-polyfill-apcu-e8ae2136ddb53dea314df56fcd88e318ab936c00"; - src = fetchurl { - url = https://api.github.com/repos/symfony/polyfill-apcu/zipball/e8ae2136ddb53dea314df56fcd88e318ab936c00; - sha256 = "07wdszb9ircnidjk3fp3cvcrggxv3sfm996jzd0a9pm6vfz9hymv"; - }; - }; - }; - "symfony/polyfill-intl-icu" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "symfony-polyfill-intl-icu-254919c03761d46c29291616576ed003f10e91c1"; - src = fetchurl { - url = https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/254919c03761d46c29291616576ed003f10e91c1; - sha256 = "01yivzv7p55fzrkkyvgd57zpyz82zn1qp0h6nzr77k01rkv3w0ds"; - }; - }; - }; - "symfony/polyfill-mbstring" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "symfony-polyfill-mbstring-78be803ce01e55d3491c1397cf1c64beb9c1b63b"; - src = fetchurl { - url = https://api.github.com/repos/symfony/polyfill-mbstring/zipball/78be803ce01e55d3491c1397cf1c64beb9c1b63b; - sha256 = "0cqr8ni6wpbaxa9gyr40y5bsv54pa2g8kdarlfw3qg2rgzmk0yz1"; - }; - }; - }; - "symfony/polyfill-php56" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "symfony-polyfill-php56-ebc999ce5f14204c5150b9bd15f8f04e621409d8"; - src = fetchurl { - url = https://api.github.com/repos/symfony/polyfill-php56/zipball/ebc999ce5f14204c5150b9bd15f8f04e621409d8; - sha256 = "0b2j56l6d6rdggx7vr20d527df4pjfp4lgxpglsgbf5912rcyf83"; - }; - }; - }; - "symfony/polyfill-php70" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "symfony-polyfill-php70-3532bfcd8f933a7816f3a0a59682fc404776600f"; - src = fetchurl { - url = https://api.github.com/repos/symfony/polyfill-php70/zipball/3532bfcd8f933a7816f3a0a59682fc404776600f; - sha256 = "151m76lc9w0kxnnwk4zdcjlmj7fppibnp8jisgpvvq32ml3fizdi"; - }; - }; - }; - "symfony/polyfill-util" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "symfony-polyfill-util-e17c808ec4228026d4f5a8832afa19be85979563"; - src = fetchurl { - url = https://api.github.com/repos/symfony/polyfill-util/zipball/e17c808ec4228026d4f5a8832afa19be85979563; - sha256 = "17sdpdidc0b701f9rippjv1grfci7wrdpy2i1inlwwpr6zy782cq"; - }; - }; - }; - "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-874d4d659774d7bab90538072c83ed532dd17dc5"; - src = fetchurl { - url = https://api.github.com/repos/symfony/symfony/zipball/874d4d659774d7bab90538072c83ed532dd17dc5; - sha256 = "02rsn3sc34jh107n576jfbh666k06y44yr7hw61nir0d864k8api"; - }; - }; - }; - "twig/twig" = { - targetDir = ""; - src = composerEnv.buildZipPackage { - name = "twig-twig-9c24f2cd39dc1906b76879e099970b7e53724601"; - src = fetchurl { - url = https://api.github.com/repos/twigphp/Twig/zipball/9c24f2cd39dc1906b76879e099970b7e53724601; - sha256 = "0brfj2lahrrw1322zy6jyd380hjks1ynzzkmq3875a282gzrfkdz"; - }; - }; - }; - }; - devPackages = { - "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-32b06d2b0babf3216e55acfce42249321a304f03"; - src = fetchurl { - url = https://api.github.com/repos/symfony/phpunit-bridge/zipball/32b06d2b0babf3216e55acfce42249321a304f03; - sha256 = "0vw4q3lvz8gfs0r93ds8yymz8586k0czwa01c7d172rc8x02v0qq"; - }; - }; - }; - }; -} diff --git a/nixops/modules/websites/tellesflorian/tellesflorian.json b/nixops/modules/websites/tellesflorian/tellesflorian.json deleted file mode 100644 index 81b42af..0000000 --- a/nixops/modules/websites/tellesflorian/tellesflorian.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "tag": "1793d5c-master", - "meta": { - "name": "tellesflorian", - "url": "gitolite@git.immae.eu:perso/florian_telles/stabilo", - "branch": "master" - }, - "git": { - "url": "gitolite@git.immae.eu:perso/florian_telles/stabilo", - "rev": "1793d5c7912d1b20ad1df1ac59be9d7f1220e919", - "sha256": "1zhxcrbglbjb6xfr8sfm4m2miabbkkb0a7543va3b5akrn6yk0cb", - "fetchSubmodules": true - } -} diff --git a/nixops/modules/websites/tellesflorian/tellesflorian.nix b/nixops/modules/websites/tellesflorian/tellesflorian.nix index afd723c..5955431 100644 --- a/nixops/modules/websites/tellesflorian/tellesflorian.nix +++ b/nixops/modules/websites/tellesflorian/tellesflorian.nix @@ -1,175 +1,154 @@ -{ lib, writeText, fetchedGitPrivate, fetchurl, stdenv, composerEnv }: -let - tellesflorian = { config }: rec { - environment = config.environment; - varDir = "/var/lib/tellesflorian_${environment}"; - keys = [ - { - dest = "webapps/${environment}-tellesflorian-passwords"; - user = apache.user; - group = apache.group; - permissions = "0400"; - text = '' - invite:${config.invite_passwords} - ''; - } - { - dest = "webapps/${environment}-tellesflorian"; - user = apache.user; - group = apache.group; - permissions = "0400"; - text = '' - # This file is auto-generated during the composer install - parameters: - database_host: ${config.mysql.host} - database_port: ${config.mysql.port} - database_name: ${config.mysql.name} - database_user: ${config.mysql.user} - database_password: ${config.mysql.password} - mailer_transport: smtp - mailer_host: 127.0.0.1 - mailer_user: null - mailer_password: null - secret: ${config.secret} - ''; - } - ]; - phpFpm = rec { - preStart = '' - if [ ! -f "${varDir}/currentWebappDir" -o \ - ! -f "${varDir}/currentKey" -o \ - "${webappDir}" != "$(cat ${varDir}/currentWebappDir 2>/dev/null)" ] \ - || ! sha512sum -c --status ${varDir}/currentKey; then - pushd ${webappDir} > /dev/null - /run/wrappers/bin/sudo -u wwwrun ./bin/console --env=${environment} cache:clear --no-warmup - popd > /dev/null - echo -n "${webappDir}" > ${varDir}/currentWebappDir - sha512sum /var/secrets/webapps/${environment}-tellesflorian > ${varDir}/currentKey - fi - ''; - serviceDeps = [ "mysql.service" ]; - socket = "/var/run/phpfpm/floriantelles-${environment}.sock"; - pool = '' - listen = ${socket} - user = ${apache.user} - group = ${apache.group} - listen.owner = ${apache.user} - listen.group = ${apache.group} - php_admin_value[upload_max_filesize] = 20M - php_admin_value[post_max_size] = 20M - ;php_admin_flag[log_errors] = on - php_admin_value[open_basedir] = "/var/secrets/webapps/${environment}-tellesflorian:${webappDir}:${varDir}:/tmp" - php_admin_value[session.save_path] = "${varDir}/phpSessions" - ${if environment == "dev" then '' - pm = ondemand - pm.max_children = 5 - pm.process_idle_timeout = 60 - env[SYMFONY_DEBUG_MODE] = "yes" - '' else '' - pm = dynamic - pm.max_children = 20 - pm.start_servers = 2 - pm.min_spare_servers = 1 - pm.max_spare_servers = 3 - ''}''; - }; - apache = rec { - user = "wwwrun"; - group = "wwwrun"; - modules = [ "proxy_fcgi" ]; - webappName = "florian_${environment}"; - root = "/run/current-system/webapps/${webappName}"; - vhostConf = '' - - SetHandler "proxy:unix:${phpFpm.socket}|fcgi://localhost" - +{ tellesflorian, config }: +rec { + app = tellesflorian.override { inherit (config) environment; }; + keys = [ + { + dest = "webapps/${app.environment}-tellesflorian-passwords"; + user = apache.user; + group = apache.group; + permissions = "0400"; + text = '' + invite:${config.invite_passwords} + ''; + } + { + dest = "webapps/${app.environment}-tellesflorian"; + user = apache.user; + group = apache.group; + permissions = "0400"; + text = '' + # This file is auto-generated during the composer install + parameters: + database_host: ${config.mysql.host} + database_port: ${config.mysql.port} + database_name: ${config.mysql.name} + database_user: ${config.mysql.user} + database_password: ${config.mysql.password} + mailer_transport: smtp + mailer_host: 127.0.0.1 + mailer_user: null + mailer_password: null + secret: ${config.secret} + ''; + } + ]; + phpFpm = rec { + preStart = '' + if [ ! -f "${app.varDir}/currentWebappDir" -o \ + ! -f "${app.varDir}/currentKey" -o \ + "${app}" != "$(cat ${app.varDir}/currentWebappDir 2>/dev/null)" ] \ + || ! sha512sum -c --status ${app.varDir}/currentKey; then + pushd ${app} > /dev/null + /run/wrappers/bin/sudo -u wwwrun ./bin/console --env=${app.environment} cache:clear --no-warmup + popd > /dev/null + echo -n "${app}" > ${app.varDir}/currentWebappDir + sha512sum /var/secrets/webapps/${app.environment}-tellesflorian > ${app.varDir}/currentKey + fi + ''; + serviceDeps = [ "mysql.service" ]; + socket = "/var/run/phpfpm/floriantelles-${app.environment}.sock"; + pool = '' + listen = ${socket} + user = ${apache.user} + group = ${apache.group} + listen.owner = ${apache.user} + listen.group = ${apache.group} + php_admin_value[upload_max_filesize] = 20M + php_admin_value[post_max_size] = 20M + ;php_admin_flag[log_errors] = on + php_admin_value[open_basedir] = "/var/secrets/webapps/${app.environment}-tellesflorian:${app}:${app.varDir}:/tmp" + php_admin_value[session.save_path] = "${app.varDir}/phpSessions" + ${if app.environment == "dev" then '' + pm = ondemand + pm.max_children = 5 + pm.process_idle_timeout = 60 + env[SYMFONY_DEBUG_MODE] = "yes" + '' else '' + pm = dynamic + pm.max_children = 20 + pm.start_servers = 2 + pm.min_spare_servers = 1 + pm.max_spare_servers = 3 + ''}''; + }; + apache = rec { + user = "wwwrun"; + group = "wwwrun"; + modules = [ "proxy_fcgi" ]; + webappName = "florian_${app.environment}"; + root = "/run/current-system/webapps/${webappName}"; + vhostConf = '' + + SetHandler "proxy:unix:${phpFpm.socket}|fcgi://localhost" + - ${if environment == "dev" then '' - - AuthBasicProvider file ldap - Use LDAPConnect - Require ldap-group cn=app.tellesflorian.com,cn=httpd,ou=services,dc=immae,dc=eu + ${if app.environment == "dev" then '' + + AuthBasicProvider file ldap + Use LDAPConnect + Require ldap-group cn=app.tellesflorian.com,cn=httpd,ou=services,dc=immae,dc=eu - AuthUserFile "/var/secrets/webapps/${environment}-tellesflorian-passwords" - Require user "invite" + AuthUserFile "/var/secrets/webapps/${app.environment}-tellesflorian-passwords" + Require user "invite" - ErrorDocument 401 "" - + ErrorDocument 401 "" + - - Options Indexes FollowSymLinks MultiViews Includes - AllowOverride None - Require all granted + + Options Indexes FollowSymLinks MultiViews Includes + AllowOverride None + Require all granted - DirectoryIndex app_dev.php + DirectoryIndex app_dev.php - - Options -MultiViews - + + Options -MultiViews + - - RewriteEngine On + + RewriteEngine On - RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ - RewriteRule ^(.*) - [E=BASE:%1] + RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ + RewriteRule ^(.*) - [E=BASE:%1] - # Maintenance script - RewriteCond %{DOCUMENT_ROOT}/maintenance.php -f - RewriteCond %{SCRIPT_FILENAME} !maintenance.php - RewriteRule ^.*$ %{ENV:BASE}/maintenance.php [R=503,L] - ErrorDocument 503 /maintenance.php + # Maintenance script + RewriteCond %{DOCUMENT_ROOT}/maintenance.php -f + RewriteCond %{SCRIPT_FILENAME} !maintenance.php + RewriteRule ^.*$ %{ENV:BASE}/maintenance.php [R=503,L] + ErrorDocument 503 /maintenance.php - # Sets the HTTP_AUTHORIZATION header removed by Apache - RewriteCond %{HTTP:Authorization} . - RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] + # Sets the HTTP_AUTHORIZATION header removed by Apache + RewriteCond %{HTTP:Authorization} . + RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] - RewriteCond %{ENV:REDIRECT_STATUS} ^$ - RewriteRule ^app_dev\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L] + RewriteCond %{ENV:REDIRECT_STATUS} ^$ + RewriteRule ^app_dev\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L] - # If the requested filename exists, simply serve it. - # We only want to let Apache serve files and not directories. - RewriteCond %{REQUEST_FILENAME} -f - RewriteRule ^ - [L] + # If the requested filename exists, simply serve it. + # We only want to let Apache serve files and not directories. + RewriteCond %{REQUEST_FILENAME} -f + RewriteRule ^ - [L] - # Rewrite all other queries to the front controller. - RewriteRule ^ %{ENV:BASE}/app_dev.php [L] - + # Rewrite all other queries to the front controller. + RewriteRule ^ %{ENV:BASE}/app_dev.php [L] + - - '' else '' - - Options Indexes FollowSymLinks MultiViews Includes - AllowOverride All - Require all granted - - ''} - ''; - }; - activationScript = { - deps = [ "wrappers" ]; - text = '' - install -m 0755 -o ${apache.user} -g ${apache.group} -d ${varDir} \ - ${varDir}/var - install -m 0750 -o ${apache.user} -g ${apache.group} -d ${varDir}/phpSessions - ''; - }; - webappDir = composerEnv.buildPackage ( - import ./php-packages.nix { inherit composerEnv fetchurl; } // - fetchedGitPrivate ./tellesflorian.json // - rec { - noDev = (environment == "prod"); - preInstall = '' - export SYMFONY_ENV="${environment}" - ''; - postInstall = '' - cd $out - rm app/config/parameters.yml - ln -sf /var/secrets/webapps/${environment}-tellesflorian app/config/parameters.yml - rm -rf var/{logs,cache} - ln -sf ${varDir}/var/{logs,cache,sessions} var/ - ''; - }); - webRoot = "${webappDir}/web"; + + '' else '' + + Options Indexes FollowSymLinks MultiViews Includes + AllowOverride All + Require all granted + + ''} + ''; + }; + activationScript = { + deps = [ "wrappers" ]; + text = '' + install -m 0755 -o ${apache.user} -g ${apache.group} -d ${app.varDir} \ + ${app.varDir}/var + install -m 0750 -o ${apache.user} -g ${apache.group} -d ${app.varDir}/phpSessions + ''; }; -in - tellesflorian +} diff --git a/pkgs/private/webapps/default.nix b/pkgs/private/webapps/default.nix index 9acff98..46ad31c 100644 --- a/pkgs/private/webapps/default.nix +++ b/pkgs/private/webapps/default.nix @@ -4,4 +4,5 @@ rec { connexionswing = callPackage ./connexionswing { inherit composerEnv mylibs;}; ludivinecassal = callPackage ./ludivinecassal { inherit composerEnv mylibs; }; piedsjaloux = callPackage ./piedsjaloux { inherit composerEnv mylibs; }; + tellesflorian = callPackage ./tellesflorian { inherit composerEnv mylibs; }; } diff --git a/pkgs/private/webapps/tellesflorian/default.nix b/pkgs/private/webapps/tellesflorian/default.nix new file mode 100644 index 0000000..b1ccb98 --- /dev/null +++ b/pkgs/private/webapps/tellesflorian/default.nix @@ -0,0 +1,25 @@ +{ environment ? "prod" +, varDir ? "/var/lib/tellesflorian_${environment}" +, composerEnv, fetchurl, mylibs }: +let + app = composerEnv.buildPackage ( + import ./php-packages.nix { inherit composerEnv fetchurl; } // + mylibs.fetchedGitPrivate ./tellesflorian.json // + rec { + noDev = (environment == "prod"); + preInstall = '' + export SYMFONY_ENV="${environment}" + ''; + postInstall = '' + cd $out + rm app/config/parameters.yml + ln -sf /var/secrets/webapps/${environment}-tellesflorian app/config/parameters.yml + rm -rf var/{logs,cache} + ln -sf ${varDir}/var/{logs,cache,sessions} var/ + ''; + passthru = { + inherit varDir environment; + webRoot = "${app}/web"; + }; + }); +in app diff --git a/pkgs/private/webapps/tellesflorian/php-packages.nix b/pkgs/private/webapps/tellesflorian/php-packages.nix new file mode 100644 index 0000000..0c7e00c --- /dev/null +++ b/pkgs/private/webapps/tellesflorian/php-packages.nix @@ -0,0 +1,389 @@ +# Generated with composer2nix and adapted to return only the list of +# packages +{ composerEnv, fetchurl }: +{ + packages = { + "composer/ca-bundle" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "composer-ca-bundle-943b2c4fcad1ef178d16a713c2468bf7e579c288"; + src = fetchurl { + url = https://api.github.com/repos/composer/ca-bundle/zipball/943b2c4fcad1ef178d16a713c2468bf7e579c288; + sha256 = "1gljia7akifp57w4rjzyh1km23kwymmvglz0mgafdgqzczcw0m6w"; + }; + }; + }; + "doctrine/annotations" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-annotations-f25c8aab83e0c3e976fd7d19875f198ccf2f7535"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535; + sha256 = "08vm22fqq8r4bg2fk06y4inqnc8x0yfmsss28w5ra2011x2phq4z"; + }; + }; + }; + "doctrine/cache" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-cache-eb152c5100571c7a45470ff2a35095ab3f3b900b"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/cache/zipball/eb152c5100571c7a45470ff2a35095ab3f3b900b; + sha256 = "0iq0qqv1smlqz63jhj2fpjy54c5dwfwxyf5c89iky6i0yb81gwyd"; + }; + }; + }; + "doctrine/collections" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-collections-6c1e4eef75f310ea1b3e30945e9f06e652128b8a"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/collections/zipball/6c1e4eef75f310ea1b3e30945e9f06e652128b8a; + sha256 = "1dkxr2vjycykpcnnmq68rcnn1ww0kbpizd5pxxm6x9i2ilj8cbn7"; + }; + }; + }; + "doctrine/common" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-common-7bce00698899aa2c06fe7365c76e4d78ddb15fa3"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/common/zipball/7bce00698899aa2c06fe7365c76e4d78ddb15fa3; + sha256 = "12yizcsxsbhhi8hwaik4zalr12n5nxbpld05zygqhx6miyr92jyd"; + }; + }; + }; + "doctrine/dbal" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-dbal-729340d8d1eec8f01bff708e12e449a3415af873"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/dbal/zipball/729340d8d1eec8f01bff708e12e449a3415af873; + sha256 = "184p8h0n6mcm0y6vfyh0z6qcxmmf8h5z4vdvxd4ycmx0531lnhj3"; + }; + }; + }; + "doctrine/doctrine-bundle" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-doctrine-bundle-eb6e4fb904a459be28872765ab6e2d246aac7c87"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/DoctrineBundle/zipball/eb6e4fb904a459be28872765ab6e2d246aac7c87; + sha256 = "0kkisgyblc9hf9x3zpbb1wif51fa8mi6svyd44nls38k9k93dp17"; + }; + }; + }; + "doctrine/doctrine-cache-bundle" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-doctrine-cache-bundle-9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/DoctrineCacheBundle/zipball/9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1; + sha256 = "08bqz18vk4673pnm2r2pcph6pdchc36zajnma1p9c6dp21sv7iki"; + }; + }; + }; + "doctrine/inflector" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-inflector-90b2128806bfde671b6952ab8bea493942c1fdae"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/inflector/zipball/90b2128806bfde671b6952ab8bea493942c1fdae; + sha256 = "01vmclj3k7xil51jg329fznshh8d07pvm4mr89lvfn1d7fyrq6qw"; + }; + }; + }; + "doctrine/instantiator" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-instantiator-8e884e78f9f0eb1329e445619e04456e64d8051d"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d; + sha256 = "15dcja45rnwya431pcm826l68k1g8f1fabl7rih69alcdyvdlln4"; + }; + }; + }; + "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/orm" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "doctrine-orm-810a7baf81462a5ddf10e8baa8cb94b6eec02754"; + src = fetchurl { + url = https://api.github.com/repos/doctrine/doctrine2/zipball/810a7baf81462a5ddf10e8baa8cb94b6eec02754; + sha256 = "1hmkc7917kgnav9hmlgvlp7qwm3zjj910ci71g9yqwjh6s28wrf1"; + }; + }; + }; + "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"; + }; + }; + }; + "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"; + }; + }; + }; + "monolog/monolog" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "monolog-monolog-fd8c787753b3a2ad11bc60c063cff1358a32a3b4"; + src = fetchurl { + url = https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4; + sha256 = "0avf3y8raw23krwdb7kw9qb5bsr5ls4i7qd2vh7hcds3qjixg3h9"; + }; + }; + }; + "paragonie/random_compat" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "paragonie-random_compat-5da4d3c796c275c55f057af5a643ae297d96b4d8"; + src = fetchurl { + url = https://api.github.com/repos/paragonie/random_compat/zipball/5da4d3c796c275c55f057af5a643ae297d96b4d8; + sha256 = "1hp6pin4923c300yi85m7qk04gsrbygv52wv5zm7giyyf0k0g073"; + }; + }; + }; + "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-4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"; + src = fetchurl { + url = https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d; + sha256 = "1mlcv17fjw39bjpck176ah1z393b6pnbw3jqhhrblj27c70785md"; + }; + }; + }; + "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"; + }; + }; + }; + "sensio/distribution-bundle" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "sensio-distribution-bundle-eb6266b3b472e4002538610b28a0a04bcf94891a"; + src = fetchurl { + url = https://api.github.com/repos/sensiolabs/SensioDistributionBundle/zipball/eb6266b3b472e4002538610b28a0a04bcf94891a; + sha256 = "0wyffqj924lz9cv0vbahyngjw1g850v0p34swygzzgp3cr0ank13"; + }; + }; + }; + "sensio/framework-extra-bundle" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "sensio-framework-extra-bundle-bf4940572e43af679aaa13be98f3446a1c237bd8"; + src = fetchurl { + url = https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/bf4940572e43af679aaa13be98f3446a1c237bd8; + sha256 = "1kb1n5w3kfc0kf4pslqdx5pgp0g4hmaag0i00wvjj2n3pjfm5lhf"; + }; + }; + }; + "sensiolabs/security-checker" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "sensiolabs-security-checker-dc270d5fec418cc6ac983671dba5d80ffaffb142"; + src = fetchurl { + url = https://api.github.com/repos/sensiolabs/security-checker/zipball/dc270d5fec418cc6ac983671dba5d80ffaffb142; + sha256 = "0fnshyd6f8j91a7y604nh6sqgscjl48mfa0727g2r4hkdfz8hpd1"; + }; + }; + }; + "swiftmailer/swiftmailer" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "swiftmailer-swiftmailer-7ffc1ea296ed14bf8260b6ef11b80208dbadba91"; + src = fetchurl { + url = https://api.github.com/repos/swiftmailer/swiftmailer/zipball/7ffc1ea296ed14bf8260b6ef11b80208dbadba91; + sha256 = "1vl5pzgvr2yfrj1yfs02mi917b0gr56v76ibi40r51a3346zhp6v"; + }; + }; + }; + "symfony/monolog-bundle" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "symfony-monolog-bundle-8781649349fe418d51d194f8c9d212c0b97c40dd"; + src = fetchurl { + url = https://api.github.com/repos/symfony/monolog-bundle/zipball/8781649349fe418d51d194f8c9d212c0b97c40dd; + sha256 = "0wcqhg1vfdj3mxacr3fxpgqwy1rk9znjg9bmzx4jymk8l16i7bq8"; + }; + }; + }; + "symfony/polyfill-apcu" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "symfony-polyfill-apcu-e8ae2136ddb53dea314df56fcd88e318ab936c00"; + src = fetchurl { + url = https://api.github.com/repos/symfony/polyfill-apcu/zipball/e8ae2136ddb53dea314df56fcd88e318ab936c00; + sha256 = "07wdszb9ircnidjk3fp3cvcrggxv3sfm996jzd0a9pm6vfz9hymv"; + }; + }; + }; + "symfony/polyfill-intl-icu" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "symfony-polyfill-intl-icu-254919c03761d46c29291616576ed003f10e91c1"; + src = fetchurl { + url = https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/254919c03761d46c29291616576ed003f10e91c1; + sha256 = "01yivzv7p55fzrkkyvgd57zpyz82zn1qp0h6nzr77k01rkv3w0ds"; + }; + }; + }; + "symfony/polyfill-mbstring" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "symfony-polyfill-mbstring-78be803ce01e55d3491c1397cf1c64beb9c1b63b"; + src = fetchurl { + url = https://api.github.com/repos/symfony/polyfill-mbstring/zipball/78be803ce01e55d3491c1397cf1c64beb9c1b63b; + sha256 = "0cqr8ni6wpbaxa9gyr40y5bsv54pa2g8kdarlfw3qg2rgzmk0yz1"; + }; + }; + }; + "symfony/polyfill-php56" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "symfony-polyfill-php56-ebc999ce5f14204c5150b9bd15f8f04e621409d8"; + src = fetchurl { + url = https://api.github.com/repos/symfony/polyfill-php56/zipball/ebc999ce5f14204c5150b9bd15f8f04e621409d8; + sha256 = "0b2j56l6d6rdggx7vr20d527df4pjfp4lgxpglsgbf5912rcyf83"; + }; + }; + }; + "symfony/polyfill-php70" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "symfony-polyfill-php70-3532bfcd8f933a7816f3a0a59682fc404776600f"; + src = fetchurl { + url = https://api.github.com/repos/symfony/polyfill-php70/zipball/3532bfcd8f933a7816f3a0a59682fc404776600f; + sha256 = "151m76lc9w0kxnnwk4zdcjlmj7fppibnp8jisgpvvq32ml3fizdi"; + }; + }; + }; + "symfony/polyfill-util" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "symfony-polyfill-util-e17c808ec4228026d4f5a8832afa19be85979563"; + src = fetchurl { + url = https://api.github.com/repos/symfony/polyfill-util/zipball/e17c808ec4228026d4f5a8832afa19be85979563; + sha256 = "17sdpdidc0b701f9rippjv1grfci7wrdpy2i1inlwwpr6zy782cq"; + }; + }; + }; + "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-874d4d659774d7bab90538072c83ed532dd17dc5"; + src = fetchurl { + url = https://api.github.com/repos/symfony/symfony/zipball/874d4d659774d7bab90538072c83ed532dd17dc5; + sha256 = "02rsn3sc34jh107n576jfbh666k06y44yr7hw61nir0d864k8api"; + }; + }; + }; + "twig/twig" = { + targetDir = ""; + src = composerEnv.buildZipPackage { + name = "twig-twig-9c24f2cd39dc1906b76879e099970b7e53724601"; + src = fetchurl { + url = https://api.github.com/repos/twigphp/Twig/zipball/9c24f2cd39dc1906b76879e099970b7e53724601; + sha256 = "0brfj2lahrrw1322zy6jyd380hjks1ynzzkmq3875a282gzrfkdz"; + }; + }; + }; + }; + devPackages = { + "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-32b06d2b0babf3216e55acfce42249321a304f03"; + src = fetchurl { + url = https://api.github.com/repos/symfony/phpunit-bridge/zipball/32b06d2b0babf3216e55acfce42249321a304f03; + sha256 = "0vw4q3lvz8gfs0r93ds8yymz8586k0czwa01c7d172rc8x02v0qq"; + }; + }; + }; + }; +} diff --git a/pkgs/private/webapps/tellesflorian/tellesflorian.json b/pkgs/private/webapps/tellesflorian/tellesflorian.json new file mode 100644 index 0000000..81b42af --- /dev/null +++ b/pkgs/private/webapps/tellesflorian/tellesflorian.json @@ -0,0 +1,14 @@ +{ + "tag": "1793d5c-master", + "meta": { + "name": "tellesflorian", + "url": "gitolite@git.immae.eu:perso/florian_telles/stabilo", + "branch": "master" + }, + "git": { + "url": "gitolite@git.immae.eu:perso/florian_telles/stabilo", + "rev": "1793d5c7912d1b20ad1df1ac59be9d7f1220e919", + "sha256": "1zhxcrbglbjb6xfr8sfm4m2miabbkkb0a7543va3b5akrn6yk0cb", + "fetchSubmodules": true + } +} -- cgit v1.2.3