1
0
mirror of https://github.com/vichan-devel/vichan.git synced 2024-11-28 01:10:51 +01:00
Vichan is the most popular and widely used imageboard software in the world. It is a free, light-weight, fast, highly configurable and user-friendly imageboard software package.
Go to file
2017-04-09 13:56:25 +09:00
8chan-captcha allow caps in captcha 2015-05-28 21:21:49 -07:00
inc Remove unneccessary config 2017-04-08 01:16:27 +09:00
js Added missing curly brackets in post-filter.js 2015-09-13 16:10:32 +08:00
static Fix some flags, see https://archive.is/ce9be 2015-08-30 22:59:33 +08:00
stylesheets Prevent poster IDs from wordwrapping 2015-10-22 10:50:59 -07:00
templates thanks @czaks :^) 2015-09-27 00:40:24 +09:00
tmp add tmp subdirectory (a filesystem used for further optimizations) 2015-04-06 19:14:24 +02:00
tools Fast forward 2015-08-19 19:47:35 -07:00
.gitignore update gitignore 2015-04-06 19:15:24 +02:00
.gitmodules Edit static pages commit 2015-03-29 09:18:14 +08:00
404.php 8chan/smart-build: 404.php should global $config? php is weird 2015-04-07 01:48:03 +02:00
board-search.php #501 Resolved case sensitivity in the board search. 2015-05-28 05:50:47 +10:00
boards.php Fast forward 2015-08-19 19:47:35 -07:00
claim-old.php Replace '8chan.co's with '8ch.net's 2015-01-14 14:15:33 -06:00
claim.php claim.php: file_write, not unix pipe (fix blank page issue) 2015-04-24 17:46:53 -07:00
create.php Fix create.php error 2015-05-09 21:15:27 -07:00
dnsbls_bypass.php Fast forward 2015-08-19 19:47:35 -07:00
expire.php Expire update: check openBoard, fix ghost board bug 2015-03-14 22:02:16 -07:00
faq.php Fast forward 2015-08-19 19:47:35 -07:00
index.php Fast forward 2015-08-19 19:47:35 -07:00
install.sql #494 Added missing email field. 2015-05-14 11:15:09 +10:00
LICENSE.md I've made enough commits to this project to have a spot in the license file I think :^) 2015-03-28 18:15:08 +08:00
LICENSE.Tinyboard.md move Tinyboard license 2014-04-18 11:13:41 +02:00
log.php Public action logs commit (log.php) 2015-02-25 17:21:49 -08:00
mod.php Update mod.php 2017-04-08 01:03:15 +09:00
player.php Suppress warnings that might leak information 2014-08-09 12:14:56 +02:00
post.php [BUG] Image reject repost board option now also affects YT embeds 2015-08-23 09:04:37 +08:00
random.php SECURITY: Move indexed option to table...fixes unindexed boards appearing in search/random 2014-10-07 20:54:00 -07:00
README.md Update README.md 2017-04-09 13:56:25 +09:00
report.php Close ctrlcctrlv/infinity#481 2015-04-25 19:50:07 +08:00
search.php remove inane code 2015-02-26 19:11:41 +09:00
settings.php Add some forgotten settings to settings.php 2015-04-04 10:37:00 +08:00
smart_build.php 8chan/smart-build: includable 404.php 2015-04-07 01:44:55 +02:00
translation.php Translation instructions 2015-03-18 19:28:20 -07:00

OpenIB

About

OpenIB is a fork of Infinity which is a fork of vichan. OpenIB will be a security fork focused on user security. Infinity offered us board creation ontop of vichan. Now OpenIB will be refactoring Infinity and making the imageboard ecosystem safer for users. A running instance is at 8ch.net

Due to being a recent fork, we have not yet deviated much from Infinity.

As of now, most things (other than installation) that apply to upstream vichan also apply to OpenIB. See their readme for a detailed FAQ: https://github.com/vichan-devel/vichan/blob/master/README.md

If you are not interested in letting your users make their own boards, install vichan instead of infinity.

Much like Arch Linux, OpenIB should be considered ``rolling release''. Unlike upstream vichan, we have no install.php. Database schema and templates are changed often and it is on you to read the Git log before updating!

Installation

Basic requirements: A computer running a Unix or Unix-like OS (OpenIB has been specifically tested with and is known to work under FreeBSD 10.3), Apache, MySQL, and PHP

  • Make sure Apache has read/write access to the directory OpenIB resides in.
  • install.php is not maintained. Don't use it.
  • As of February 22, 2015, you need the DirectIO module (dio.so). This is for compatibility with NFS.

Step 1. Create OpenIB's database from the included install.sql file. Enter mysql and create an empty database named 'openib'. Then cd into the openib base directory and run:

mysql -uroot -p openib < install.sql
echo '+ <a href="https://github.com/OpenIB/OpenIB">OpenIB</a> '`git rev-parse HEAD|head -c 10` > .installed

Step 2. /inc/secrets.php does not exist by default, but OpenIB needs it in order to function. To fix this, cd into /inc/ and run:

sudo cp secrets.example.php secrets.php

Now open secrets.php and edit the $config['db'] settings to point to the 'openib' MySQL database you created in Step 1. 'user' and 'password' refer to your MySQL login credentials. It should look something like this when you're finished:

	$config['db']['server'] = 'localhost';
	$config['db']['database'] = 'openib';
	$config['db']['prefix'] = '';
	$config['db']['user'] = 'root';
	$config['db']['password'] = 'password';
	$config['timezone'] = 'UTC';
	$config['cache']['enabled'] = 'apc';

Step 3.(Optional) By default, OpenIB will ignore any changes you make to the template files until you log into mod.php, go to Rebuild, and select Flush Cache. You may find this inconvenient. To make OpenIB automatically accept your changes to the template files, set $config['twig_cache'].

Step 4. OpenIB can function in a very barebones fashion after the first two steps, but you should probably install these additional packages if you want to seriously run it and/or contribute to it. Make sure to run the below as root:

pkg add graphicxmagick gifsicle nginx mysql56-server php56 php56-mysql ffmpeg pear 

Page Generation

A lot of the static pages (claim.html, boards.html, index.html) need to be regenerated every so often. You can do this with a crontab.

*/10 * * * * cd /srv/http; /usr/bin/php /srv/http/boards.php
*/5 * * * * cd /srv/http; /usr/bin/php /srv/http/claim.php
*/20 * * * * cd /srv/http; /usr/bin/php -r 'include "inc/functions.php"; rebuildThemes("bans");'
*/5 * * * * cd /srv/http; /usr/bin/php /srv/http/index.php

Also, main.js is empty by default. Run tools/rebuild.php to create it every time you update one of the JS files.

Have fun!