1 ************************************
2 phorkie - PHP and Git based pastebin
3 ************************************
4 Self-hosted pastebin software written in PHP.
5 Pastes are editable, may have multiple files and are stored in git repositories.
7 Homepage: http://sourceforge.net/p/phorkie/
9 .. contents:: Table of Contents
14 - every paste is a git repository
16 - repositories can be cloned
17 - clone url can be displayed
21 - delete existing files
22 - replace file with upload
23 - multiple files in one paste
24 - syntax highlighting with GeSHi
26 - image upload + display
27 - external tool support
35 phorkie stands on the shoulders of giants.
38 Install VersionControl_Git
39 ==========================
42 $ pear install versioncontrol_git-alpha
49 $ pear channel-discover mediawiki.googlecode.com/svn
50 $ pear install mediawiki/geshi
52 Note that this version of GeSHi is a bit outdated, but it's the fastest
60 $ pear channel-discover pear.twig-project.org
61 $ pear install twig/Twig
68 Make git repositories clonable
69 ==============================
70 To make git repositories clonable, you need to install ``git-daemon``
71 (``git-daemon-run`` package on Debian/Ubuntu).
73 Now make the repositories available by symlinking the paste repository
74 directory (``$GLOBALS['phorkie']['cfg']['repos']`` setting) into
75 ``/var/cache/git``, e.g.::
77 $ ln -s /home/user/www/paste/repos/git /var/cache/git/paste
79 Edit your ``config.php`` and set the ``$GLOBALS['phorkie']['cfg']['git']['public']``
80 setting to ``git://$yourhostname/git/paste/``.
81 The rest will be appended automatically.
84 You're on your own to setup writable repositories.
94 - OpenID-Login to get username+email as authorship information
96 - document how to keep disk usage low (block size)
98 - when 2 people edit, merge changes
100 - configurable highlights
107 Index page. Shows form for new paste
109 Display page for paste
113 Display raw file contents
122 Internal directory layout
123 =========================
128 1/ - work directory for paste #1
129 2/ - work directory for paste #2
131 1.git/ - git repository for paste #1
132 description - Description for the repository
133 2.git/ - git repository for paste #2