mantisbt = mypkgs.mantisbt.phpFpm.pool;
ttrss = mypkgs.ttrss.phpFpm.pool;
roundcubemail = mypkgs.roundcubemail.phpFpm.pool;
+ davical = mypkgs.davical.phpFpm.pool;
};
};
install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/adminer
install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/mantisbt
install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/ttrss
+ install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/davical
'';
redis = ''
mkdir -p /run/redis
mypkgs.ympd.apache.vhostConf
mypkgs.ttrss.apache.vhostConf
mypkgs.roundcubemail.apache.vhostConf
+ mypkgs.infcloud.apache.vhostConf
+ mypkgs.davical.apache.vhostConf
];
})
(withConf "eldiron" // {
enable = true;
systemCronJobs = let
stats = domain: conf: let
- d = pkgs.writeScriptBin "stats-${domain}" "${pkgs.gnused}/bin/sed -n '/\\['$(LC_ALL=C ${pkgs.coreutils}/bin/date -d yesterday +'%d\\/%b\\/%Y')'/ p' /var/log/httpd/access_log-${domain} | ${pkgs.goaccess}/bin/goaccess -o /var/lib/goaccess/${domain}/index.html -p ${conf}";
+ d = pkgs.writeScriptBin "stats-${domain}" ''
+ #!${pkgs.stdenv.shell}
+ set -e
+ shopt -s nullglob
+ date_regex=$(LC_ALL=C date -d yesterday +'%d\/%b\/%Y')
+ TMPFILE=$(mktemp)
+ trap "rm -f $TMPFILE" EXIT
+
+ cat /var/log/httpd/access_log-${domain} | sed -n "/\\[$date_regex/ p" > $TMPFILE
+ for i in /var/log/httpd/access_log-${domain}*.gz; do
+ zcat "$i" | sed -n "/\\[$date_regex/ p" >> $TMPFILE
+ done
+ goaccess $TMPFILE --no-progress -o /var/lib/goaccess/${domain}/index.html -p ${conf}
+ '';
in "${d}/bin/stats-${domain}";
# FIXME: running several goaccess simultaneously seems to be
# bugged?