-{ lib, env, writeText, stdenv, fetchurl, fetchedGithub, phpPackages, apacheHttpd }:
-let
- roundcubemail = let
- defaultInstall = ''
- mkdir -p $out
- cp -R . $out/
- cd $out
- if [ -d skins -a -d skins/larry -a ! -d skins/elastic ]; then
- ln -s larry skins/elastic
- fi
- '';
- buildPlugin = { appName, version, url, sha256, installPhase ? defaultInstall }:
- stdenv.mkDerivation rec {
- name = "roundcube-${appName}-${version}";
- inherit version;
- phases = "unpackPhase installPhase";
- inherit installPhase;
- src = fetchurl { inherit url sha256; };
- };
- plugins = {
- carddav = buildPlugin rec {
- appName = "carddav";
- version = "3.0.3";
- url = "https://github.com/blind-coder/rcmcarddav/releases/download/v${version}/${appName}-${version}.tar.bz2";
- sha256 = "0cf5rnqkhhag2vdy808zfpr4l5586fn43nvcia8ac1ha58azrxal";
- };
- contextmenu = buildPlugin rec {
- appName = "contextmenu";
- version = "2.3";
- url = "https://github.com/johndoh/roundcube-${appName}/archive/${version}.tar.gz";
- sha256 = "1rb8n821ylfniiiccfskc534vd6rczhk3g82455ks3m09q6l8hif";
- };
- contextmenu_folder = buildPlugin rec {
- appName = "contextmenu_folder";
- version = "1.3.3";
- url = "https://github.com/random-cuber/${appName}/archive/${version}.tar.gz";
- sha256 = "1ngfws1v8qrpa52rjh7kirc98alchk2vbqwra86h00agyjjlcc57";
- };
- automatic_addressbook = buildPlugin rec {
- appName = "automatic_addressbook";
- version = "0.4.3";
- url = "https://github.com/sblaisot/${appName}/archive/${version}.tar.gz";
- sha256 = "0bx5qjzp3a3wc72fr295bvgsy5n15949c041hq76n6c7sqdn7inc";
- };
- message_highlight = buildPlugin rec {
- appName = "message_highlight";
- version = "4.4";
- url = "https://github.com/corbosman/${appName}/archive/${version}.tar.gz";
- sha256 = "12c4x47y70xdl5pgm8csh5i4yiyhpi232lvjbixmca6di4lkhh9j";
- };
- thunderbird_labels = buildPlugin rec {
- appName = "thunderbird_labels";
- version = "v1.3.2";
- url = "https://github.com/mike-kfed/roundcube-${appName}/archive/${version}.tar.gz";
- sha256 = "1q4x30w66m02v3lw2n8020g0158rmyfzs6gydfk89pa1hs28k9bg";
- };
- html5_notifier = buildPlugin rec {
- appName = "html5_notifier";
- version = "v0.6.2";
- url = "https://github.com/stremlau/${appName}/archive/${version}.tar.gz";
- sha256 = "0s1wq9ira4bcd8jvhn93nhxiqzpp92i0za2kw37kf7ksyhr0xslq";
- };
- ident_switch = buildPlugin rec {
- appName = "ident_switch";
- version = "4.0.1";
- url = "https://bitbucket.org/BoresExpress/${appName}/get/${version}.tar.gz";
- sha256 = "1zyy40lfq2kn7hkghbl8lgp18fb634zr4fxmmxvb1wqyvqdpdpyk";
- };
- };
- skins = {};
- in rec {
- varDir = "/var/lib/roundcubemail";
- activationScript = {
- deps = [ "wrappers" ];
- text = ''
- install -m 0755 -o ${apache.user} -g ${apache.group} -d ${varDir} \
- ${varDir}/cache ${varDir}/logs
- install -m 0750 -o ${apache.user} -g ${apache.group} -d ${varDir}/phpSessions
- '';
- };
- keys = [{
- dest = "webapps/tools-roundcube";
- user = apache.user;
- group = apache.group;
- permissions = "0400";
- text = ''
- <?php
- $config['db_dsnw'] = '${env.psql_url}';
- $config['default_host'] = 'ssl://mail.immae.eu';
- $config['imap_conn_options'] = array("ssl" => array("verify_peer" => false));
- $config['smtp_server'] = 'tls://mail.immae.eu';
- $config['smtp_port'] = '25';
- $config['managesieve_host'] = 'mail.immae.eu';
- $config['managesieve_port'] = '4190';
- $config['managesieve_usetls'] = true;
- $config['managesieve_conn_options'] = array("ssl" => array("verify_peer" => false));
+{ env, roundcubemail, roundcubemail-plugins, roundcubemail-skins, phpPackages, apacheHttpd }:
+rec {
+ varDir = "/var/lib/roundcubemail";
+ activationScript = {
+ deps = [ "wrappers" ];
+ text = ''
+ install -m 0755 -o ${apache.user} -g ${apache.group} -d ${varDir} \
+ ${varDir}/cache ${varDir}/logs
+ install -m 0750 -o ${apache.user} -g ${apache.group} -d ${varDir}/phpSessions
+ '';
+ };
+ keys = [{
+ dest = "webapps/tools-roundcube";
+ user = apache.user;
+ group = apache.group;
+ permissions = "0400";
+ text = ''
+ <?php
+ $config['db_dsnw'] = '${env.psql_url}';
+ $config['default_host'] = 'ssl://mail.immae.eu';
+ $config['imap_conn_options'] = array("ssl" => array("verify_peer" => false));
+ $config['smtp_server'] = 'tls://mail.immae.eu';
+ $config['smtp_port'] = '25';
+ $config['managesieve_host'] = 'mail.immae.eu';
+ $config['managesieve_port'] = '4190';
+ $config['managesieve_usetls'] = true;
+ $config['managesieve_conn_options'] = array("ssl" => array("verify_peer" => false));