Page MenuHomeFreeBSD

New port for phabricator, update libphutil to 20140828
ClosedPublic

Authored by grembo on Aug 29 2014, 12:00 PM.

Details

Reviewers
bapt
flo
Summary

This is a new port for phabricator. Since the good guys at phacility
don't believe in version numbers I tagged yesterday's master branch.
To make this work I also had to update libphutil to the version as
of yesterday. I didn't touch devel/arcanist, since based on its
commit log I don't think it will be harmed by libphutil changes (very
little commits there lately) and since its heavily used by the project
I didn't want to touch it. I'm sending this request using these exact
versions, so the fact that it went through is an indication that it's ok.

This port has optional GD support and supports using opcache (APC for
PHP < 5.5 and zend opcache + APCu for PHP >= 5.5). I used the PHP API
version for detecting this instead of PHP_VER, since this will change
when 5.5 becomes 5 in the future. Not sure if there is a better method, but
it seems like zend opcache is here to stay.

The port also installs an rc script called "phd" to control the phabricator
demons, pkg-message explains how to use it.

Test Plan

env DEVELOPER=yes make stage && make check-plist && make package

Depending how well you know phabricator / how interested you are in testing
this thoroughly you might want to also install nginx/apache and do some
more testing.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
No Linters Available
Unit
No Unit Test Coverage

Event Timeline

grembo retitled this revision from to New port for phabricator, update libphutil to 20140828.
grembo updated this object.
grembo edited the test plan for this revision. (Show Details)
grembo added reviewers: bapt, flo.
bapt requested changes to this revision.Aug 31 2014, 11:27 AM
bapt edited edge metadata.

Concerning the the phabricator init script you probably want as well a function to support custom fibs:

start_precmd="phd_precmd"

phd_precmd()
{
        if command -v check_namevarlist > /dev/null 2>&1; then
                check_namevarlist fib && return 0
        fi

        ${SYSCTL} net.fibs >/dev/null 2>&1 || return 0

        phd_fib=${phd_fib:-"NONE"}
        case "$phd_fib" in
        [Nn][Oo][Nn][Ee])
                ;;
        *)
                command="setfib -F ${phd_fib} ${command}"
                ;;
        esac
}

Can you also update arcanist to be in sync with libphutil? I do like to keep both of them quite in sync

devel/phabricator/Makefile
9

This comment is too long
Section 5.6 or the porters handbook says:

Try to keep the COMMENT value at no longer than 70 characters
16

Check what is done on arcanist, I do think bash it not needed like it was not needed on arcanist

37

This can be replaced by an option helper:

GD_USE= php=gd

Above .include <bsd.port.pre.mk>

This revision now requires changes to proceed.Aug 31 2014, 11:27 AM
grembo edited edge metadata.

Also update arcanist, remove unnecessary dependency on bash,
allow setting phd_fib in rc.conf, shorten COMMENT, use GD_USE
instead of custom condition.

bapt edited edge metadata.

Thank you !

This revision is now accepted and ready to land.Sep 1 2014, 4:39 PM

Do you want to take maintainership on arcanist and libphutil?

They're not very exciting ports, but since they should be updated whenever phabricator is this seems to be reasonable idea.

Do you think it would make sense to use freebsd@grem.de as the maintainer address, or should we use my @freebsd.org account (in which case I should probably change my other ports to that one as well).

Then just take it :) no need for a review.