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
31 - history in the sidebar
33 - old files can be downloaded easily
38 phorkie stands on the shoulders of giants.
41 Install VersionControl_Git
42 ==========================
45 $ pear install versioncontrol_git-alpha
52 $ pear channel-discover mediawiki.googlecode.com/svn
53 $ pear install mediawiki/geshi
55 Note that this version of GeSHi is a bit outdated, but it's the fastest
63 $ pear channel-discover pear.twig-project.org
64 $ pear install twig/Twig
71 Make git repositories clonable
72 ==============================
73 To make git repositories clonable, you need to install ``git-daemon``
74 (``git-daemon-run`` package on Debian/Ubuntu).
76 Now make the repositories available by symlinking the paste repository
77 directory (``$GLOBALS['phorkie']['cfg']['repos']`` setting) into
78 ``/var/cache/git``, e.g.::
80 $ ln -s /home/user/www/paste/repos/git /var/cache/git/paste
82 Edit your ``config.php`` and set the ``$GLOBALS['phorkie']['cfg']['git']['public']``
83 setting to ``git://$yourhostname/git/paste/``.
84 The rest will be appended automatically.
87 You're on your own to setup writable repositories.
96 - filters (xmllint --format, rapper)
98 - OpenID-Login to get username+email as authorship information
99 - document how to keep disk usage low (block size)
101 - when 2 people edit, merge changes
103 - configurable highlights
105 - autotags for file types
106 - Atom feed for new pastes
107 - Atom feed for paste changes
114 Index page. Shows form for new paste
116 Display page for paste
120 Display raw file contents
129 Internal directory layout
130 =========================
135 1/ - work directory for paste #1
136 2/ - work directory for paste #2
138 1.git/ - git repository for paste #1
139 description - Description for the repository
140 2.git/ - git repository for paste #2