summaryrefslogtreecommitdiff
path: root/www-apps
diff options
context:
space:
mode:
authorBertrand Jacquin <bertrand@jacquin.bzh>2017-02-07 22:33:24 +0000
committerBertrand Jacquin <bertrand@jacquin.bzh>2017-02-07 22:33:24 +0000
commit782dda6108cf56b2ebf0ce5a7eb066e95b00e38d (patch)
tree7342ea7d260e736fdfa513bb9e97e2c14634b689 /www-apps
parentprofiles/desktop: Enable systemd and policykit globally (diff)
downloadportage-782dda6108cf56b2ebf0ce5a7eb066e95b00e38d.tar.xz
www-apps/phabricator: Version bump
Package-Manager: portage-2.3.3
Diffstat (limited to 'www-apps')
-rw-r--r--www-apps/phabricator/Manifest16
-rw-r--r--www-apps/phabricator/files/20170204-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch50
-rw-r--r--www-apps/phabricator/phabricator-20170204.ebuild181
3 files changed, 231 insertions, 16 deletions
diff --git a/www-apps/phabricator/Manifest b/www-apps/phabricator/Manifest
deleted file mode 100644
index 07999398..00000000
--- a/www-apps/phabricator/Manifest
+++ /dev/null
@@ -1,16 +0,0 @@
-AUX 20160709-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch 1382 SHA256 9de5d736b21c96eeca547ced5b90837f82f45a83279327cc9b12ee7a41ba79cb WHIRLPOOL 7d6953fdab3f614dbf7e7a224ae75561b817559edd6a0da28bd13cc71cfccf14c665029a3ad8e30742e092cca0d36074c1e2b4be18c2277c8ddd3d6c8d8226a9
-AUX 20161213-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch 1423 SHA256 9d34660077cc1f93cde9ec121f13a1c4a948cd233d777bf3d2a738686e51e355 WHIRLPOOL 432e24ad5b824301ad43127da5e3a0f861c61efebcd16b3ec9b67b55a2b3b19ac4228f45882c6a1d79c3b1613573eeb53ae130fdce07040e9e43c4beb8b519a3
-AUX 20170113-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch 1850 SHA256 631a55cf248e87593be2047b9b58d56685335dd270de630ec09a7a3a808acbce WHIRLPOOL d66065aa93112f7eeec15cae9894dc3b1929aaad5f9ba8135c0d7dba8f037735276958f8d891b97dbf19bb37210a5bb84a4a1fb5ef85ac52859ee2ebcc06f672
-AUX 9999-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch 1850 SHA256 b20978410dcd8caba4edf1ac3d444ac74a3475028c23f3b89873ef27284f86b2 WHIRLPOOL dd506d62e14776505d483631b4896c20a59727cba0e15e25eb351f9064f3a26ff388922a5a81fbb0cae0b0e6d00bbaa47bf745279beff412e42e38ea96d2de94
-AUX aphlict.confd 269 SHA256 c40eb50ecebecb4a4b5ff641d098a7a8fc65ef3c64b899499c2a768e5b7e47a1 WHIRLPOOL e03498542aeaf10846ba0fecae285b9ccf9bebc39faaa2f675cac1cd2948132a242e34b70031b14e09a1e2ef99523e657fc95fb391541d42872766245d5dbb93
-AUX aphlict.initd 1663 SHA256 7c8f02d02e0854e5b43e51ed5b0d1369d4aff4ddec8ac7ee29327e9c6ecfb190 WHIRLPOOL 57d86f49e9b1888ac1c116c73a7cbca4843d4afe05ef2bfe3875fa1a15ff6ce96ff1f06c25d2ce9ad91076992663aa58496ca9863fde4d37c3657a1022e1bc73
-AUX htaccess 475 SHA256 90b7245b7518f5b3e56bae9d574a530e3cd47808ef937bdc78ea4288eaff0c6a WHIRLPOOL fc9123f3d40affe53314a25c2649a5b2f47640131c9bc5a6dd0c55ac36e0a205f392b403fcbce93daffceaf427c7146b7a091115a8260c7551a3bfe8069ad88e
-AUX phabricator.logrotate 56 SHA256 e63141278776888c1a3f8e841b0d263efe2beb6c9dbefa3d700fbd8912f4fe58 WHIRLPOOL 8fa63b4218f8757221cd4780e16c70d16e9849e6a89b9eecd327688bff9195bb1c0604c8e80e496cd659ef0a6fc9cfa79774a825d79be58c03e4f1a592ad07b9
-AUX phd.confd 215 SHA256 80ddbf586f38cc600d06e524f7e85c3258bd563696fa2e41e1ea19268da8079b WHIRLPOOL 0f1a587c755994c410b62da6b897ca8684d584b9f01956359e078429fc7ec7642561dc3e3c306bbb24753e3a68ef5f088a5709706143b6154aa085ac2dfa52ad
-AUX phd.initd 2435 SHA256 80bcf67fa7c8ada594113246abe19e1b420319ce976c0b2e90e20afcd67d688c WHIRLPOOL a1f8c061cc896703c4cc64c7273242b60eba865f4125c35700b82bad2d37a3c355957363d7d27411576bc304de5bf948b3c0d47702af26072fcbaedfd91c7fb1
-AUX webapp-hook 3618 SHA256 0cfa2c9b019cf1f9b6276a29ecda7765250e6dd3ba8b41642146aca1875c6e3d WHIRLPOOL 6464f2e44238b713e59f4afdf33530421f734f4bb0cf125a000ddcf4e075a0a79b60d3a57b77edc17670a028f52afe379ebe580bc1dec6edae782cb76a4deef2
-EBUILD phabricator-20160709.ebuild 4815 SHA256 57aed07b65524c0207e683beb84d6b4b02e2b68591de4f22b38846e02217f923 WHIRLPOOL 2376345b60bd9ea0ac8fbaa18e278689183c2f81b04162cda3ec9a997c6ef27ef7085c183c335567b35a997df6715c12a29ff68f5e1838c1ec669c5cde349599
-EBUILD phabricator-20161213.ebuild 4815 SHA256 a6f0583eb7559752dc0cbde462fa8fc900a26f0b12c96f34fae1ce948ad680f2 WHIRLPOOL dc92107b5d5eae767688fd427c68fe41f4bd62b915d0a43927713da6e4b345491c2f1464caf5b77ff481c755de88017ec876ecf10178774e3b41952f89504e68
-EBUILD phabricator-20170113.ebuild 4931 SHA256 f45bdc5f7c4c1ccbfa0e8a41bf0b0ea68f508017aaf8fc99605b1ee828607415 WHIRLPOOL 64d652fe4935d8118ef44e9e9db17556314737a4360d804c113b1764138379b506682fbb589b7d8c2769d0887fc7ae765ae1143d805e447c22a33979b2910c6a
-EBUILD phabricator-9999.ebuild 4847 SHA256 caa6841a43292ccfe13077ff3c49b12cf7de3e6824a174397836d8e37cf9c7df WHIRLPOOL 18219828f0f94788276b45db31ea66142a4800e2a775718cdc94636a857b65c345ac689b302787ab11b915a67f2df3efc673957376196682cdddcf88bc6931f0
-MISC metadata.xml 814 SHA256 b60b7f5f56a5ea70c07d40b8b245b159c11977aba064002dc46787fc67b7cd8d WHIRLPOOL 939566913599e4c6f3f1ca506cd5b4dea5406a339927ee7241b0635181f39805b8f79808ebdf08f33b706235da77ae5af51d20094617b1769bc794acb10d06d7
diff --git a/www-apps/phabricator/files/20170204-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch b/www-apps/phabricator/files/20170204-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch
new file mode 100644
index 00000000..d1ca1f11
--- /dev/null
+++ b/www-apps/phabricator/files/20170204-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch
@@ -0,0 +1,50 @@
+From 620374f976e3ea6b0965a6887b49ce942c8ddbe4 Mon Sep 17 00:00:00 2001
+From: Bertrand Jacquin <bertrand@jacquin.bzh>
+Date: Sat, 22 Feb 2014 18:31:14 +0100
+Subject: [PATCH] MEDIUM: Get VERSION for files in
+ /usr/share/<PN>/GIT_COMMIT_INFO rather than from git
+
+---
+ .../PhabricatorConfigVersionController.php | 29 +++++++++++-----------
+ 1 file changed, 15 insertions(+), 14 deletions(-)
+
+diff --git a/src/applications/config/controller/PhabricatorConfigVersionController.php b/src/applications/config/controller/PhabricatorConfigVersionController.php
+index 8f43192b3bcc..f07cf2544cda 100644
+--- a/src/applications/config/controller/PhabricatorConfigVersionController.php
++++ b/src/applications/config/controller/PhabricatorConfigVersionController.php
+@@ -83,20 +83,21 @@ final class PhabricatorConfigVersionController
+ $remote_futures = array();
+
+ foreach ($specs as $lib) {
+- $root = dirname(phutil_get_library_root($lib));
+-
+- $log_command = csprintf(
+- 'git log --format=%s -n 1 --',
+- '%H %ct');
+-
+- $remote_command = csprintf(
+- 'git remote -v');
+-
+- $log_futures[$lib] = id(new ExecFuture('%C', $log_command))
+- ->setCWD($root);
+-
+- $remote_futures[$lib] = id(new ExecFuture('%C', $remote_command))
+- ->setCWD($root);
++ switch ($lib) {
++ case "phutil":
++ $_dir = "libphutil";
++ break;
++ case "sprint":
++ $_dir = "phabricator-extensions-Sprint";
++ break;
++ default:
++ $_dir = $lib;
++ }
++
++ $log_futures[$lib] =
++ id(new ExecFuture('cat -- %s', "/usr/share/" . $_dir . "/GIT_COMMIT_INFO"));
++ $remote_futures[$lib] =
++ id(new ExecFuture('cat -- %s', "/usr/share/" . $_dir . "/GIT_REMOTE_INFO"));
+ }
+
+ $all_futures = array_merge($log_futures, $remote_futures);
diff --git a/www-apps/phabricator/phabricator-20170204.ebuild b/www-apps/phabricator/phabricator-20170204.ebuild
new file mode 100644
index 00000000..d9c2ee62
--- /dev/null
+++ b/www-apps/phabricator/phabricator-20170204.ebuild
@@ -0,0 +1,181 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+WEBAPP_NO_AUTO_INSTALL=yes
+WEBAPP_MANUAL_SLOT=yes
+inherit git-r3 webapp
+
+DESCRIPTION="Collection of web applications which makes it easier to scale software companies"
+HOMEPAGE="https://www.phacility.com"
+EGIT_REPO_URI="git://github.com/phacility/phabricator.git"
+EGIT_BRANCH="stable"
+EGIT_COMMIT="c3bdcb4ca85487921909f0202aa760e8ed61404a"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="extension-sprint git highlight mail mercurial subversion ssl test"
+REQUIRED_USE="test? ( git mercurial subversion )"
+
+DEPEND="virtual/awk:0
+ test? (
+ =www-client/arcanist-20170106:0[test]
+ )"
+RDEPEND=">=app-admin/webapp-config-1.51-r1:0
+ sys-apps/gentoo-functions
+ || (
+ >=www-servers/apache-2.2.7:2[apache2_modules_rewrite]
+ www-servers/nginx:0
+ www-servers/lighttpd:0
+ )
+ app-misc/jq:0
+ >=dev-lang/php-5.2.3:*[cli,curl,gd,iconv,json,mysql,mysqli,pcntl,simplexml,ssl?,unicode]
+ dev-php/pecl-apcu
+ dev-php/PHPExcel
+ virtual/mysql
+ =dev-php/libphutil-20170113:0
+ net-libs/nodejs:0
+ =www-client/arcanist-20170106:0[git?,mercurial?,subversion?]
+ git? ( dev-vcs/git:0 )
+ mercurial? ( >dev-vcs/mercurial-2.2:0 )
+ subversion? ( >dev-vcs/subversion-1.7.1:0 )
+ highlight? ( dev-python/pygments:0 )
+ mail? ( dev-php/pecl-mailparse:0 )"
+PDEPEND="extension-sprint? ( www-apps/phabricator-extensions-Sprint )"
+
+pkg_setup() {
+ webapp_pkg_setup
+
+ if use test ; then
+ einfo "Environnement variables you can tweak for database tests"
+ einfo " PHABRICATOR_MYSQL_HOST (default my.cnf[client].host || my.cnf[client].socket)"
+ einfo " PHABRICATOR_MYSQL_USER (default my.cnf[client].user || current user)"
+ einfo " PHABRICATOR_MYSQL_PASS (default my.cnf[client].password || empty)"
+ einfo
+ einfo "src_test() may fail if such variable are not defined"
+ fi
+}
+
+src_prepare() {
+ default
+
+ git log --format='%H %ct' -n 1 > "${S}/GIT_COMMIT_INFO"
+ git remote add origin "${EGIT_REPO_URI}"
+ git remote -v > "${S}/GIT_REMOTE_INFO"
+
+ epatch "${FILESDIR}/${PV}-MEDIUM-Get-VERSION-for-files-in-usr-share-PN-GIT_COM.patch"
+
+ find -type f -name .gitignore -print0 \
+ | xargs -0 --no-run-if-empty -- \
+ rm
+
+ rm -r scripts/install
+
+ # Replace 'env' shebang to files it point to
+ find -type f \
+ | sort \
+ | xargs -n 1 --no-run-if-empty -- \
+ awk 'NR == 1 && /^#!\/usr\/bin\/env/ {print FILENAME}' \
+ | while read ; do
+ set -- $(sed -ne '1 s:^#!\([^ ]*\) ::p;q' ${REPLY})
+ cmd="$1" ; shift ; args="$@"
+
+ case "${cmd}" in
+ bash|php) ;;
+ *) continue ;;
+ esac
+
+ path="$(type -p ${cmd})" || continue
+ [[ -z "${path}" ]] && continue
+
+ einfo "Changing ${REPLY} shebang to #!${path} ${args}"
+ sed -i \
+ -e "1 s:^#!.*:#!${path} ${args}:" \
+ "${REPLY}"
+ eend $?
+ done
+}
+
+src_test() {
+ local BASE_URI="http://localhost.localdomain"
+
+ einfo "Setting phabricator.base-uri='${BASE_URI}'"
+ bin/config set phabricator.base-uri "${BASE_URI}" > /dev/null
+ eend $?
+
+ if [[ -n "${PHABRICATOR_MYSQL_HOST}" ]] ; then
+ einfo "Setting mysql.host='${PHABRICATOR_MYSQL_HOST}'"
+ bin/config set mysql.host "${PHABRICATOR_MYSQL_HOST}" > /dev/null
+ eend $?
+ fi
+
+ if [[ -n "${PHABRICATOR_MYSQL_USER}" ]] ; then
+ einfo "Setting mysql.user='${PHABRICATOR_MYSQL_USER}'"
+ bin/config set mysql.user "${PHABRICATOR_MYSQL_USER}" > /dev/null
+ eend $?
+ fi
+
+ if [[ -n "${PHABRICATOR_MYSQL_PASS}" ]] ; then
+ einfo "Setting mysql.pass='${PHABRICATOR_MYSQL_PASS}'"
+ bin/config set mysql.pass "${PHABRICATOR_MYSQL_PASS}" > /dev/null
+ eend $?
+ fi
+
+ arc unit --everything --no-coverage || die "arc unit failed"
+
+ # Cleanup tests only config files
+ rm conf/local/local.json
+}
+
+src_install() {
+ insinto "/usr/share/${PN}"
+ doins GIT_COMMIT_INFO GIT_REMOTE_INFO
+
+ webapp_src_preinst
+
+ # All directories must be private (ie accessible in hostroot),
+ # expect webroot that will become htdocs
+ insinto "${MY_HOSTROOTDIR}"
+ doins -r bin conf externals resources scripts src support
+
+ # All files and directories present in webroot/ will be
+ # installed in htdocs
+ insinto "${MY_HTDOCSDIR}"
+ doins -r webroot/*
+
+ newins "${FILESDIR}/htaccess" .htaccess
+
+ # Make executable all shebanged files
+ find "${ED}" -type f \
+ | xargs -n 1 --no-run-if-empty -- \
+ awk 'NR == 1 && /^#!/ {print FILENAME}' \
+ | sed -e "s:${ED}:/:" \
+ | xargs --no-run-if-empty -- \
+ fperms 755
+
+ webapp_configfile "${MY_HTDOCSDIR}/.htaccess"
+ webapp_hook_script "${FILESDIR}/webapp-hook"
+
+ webapp_src_install
+
+ newinitd "${FILESDIR}/phd.initd" phd
+ newconfd "${FILESDIR}/phd.confd" phd
+
+ newinitd "${FILESDIR}/aphlict.initd" aphlict
+ newconfd "${FILESDIR}/aphlict.confd" aphlict
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotate" "${PN}"
+
+ dodoc NOTICE README.md
+}
+
+pkg_postinst() {
+ webapp_pkg_postinst
+
+ elog
+ elog "For more info about how to configure, see"
+ elog " http://www.phabricator.com/docs/phabricator/article/Configuration_Guide.html"
+}