This is the WikiWiki based documentation system for the Wakaba and Kareha scripts. You can read the information available about the two scripts here:
Outside contribution is appreciated, either by simply writing entries for the documentation, or discussing what needs to be added. I'd also like to have a JapaneseDocumentation, since some of the scripts do have a JapaneseVersion.
This documentation wiki is based on Jeremy Ruston's TiddlyWiki. If you want to play around, do it in the SandBox. If you want to really mess around with this kind of WikiWiki, go to http://wakaba.c3.cx/docs/test.html, which is the test page. Feel free to go crazy in there.
So, I've changed the documentation over to a new, highly customized and re-written version of TiddlyWiki. Some changes are:
I'll be re-writing some parts of the documentation too, and maybe even adding some of the missing parts.
Report any problems and bugs on the DiscussionBoard!
Futaba is the image board script used at the hugely popular japanese site FutabaChannel, and many other japanese image boards. It lives at http://www.2chan.net/script/ . It is written in PHP, and is entirely in Japanese.
NiChannel, or 2ch, is a huge Japanese message board. It is by all measures the center of the internet in Japan.
There is a translated menu of 2ch boards at http://4-ch.net/2chportal/
Futallaby is an improved and translated version of FutabaScript. It is used at http://www.4chan.org/ , and an old version lives at http://www.1chan.net/ .
Wakaba borrows quite a bit of HTML code and translated text from Futallaby. Wakaba's CSS is also compatible with Futallaby's. Many thanks to thatdog for his work.
Kareha is very light on requirements. It only needs a Perl installation. 5.6 or 5.8 should work fine, 5.005 or older might work. It also needs to be able to write to its own directory. See SettingPermissions.
Wakaba will run on fairly old versions of Perl, but may lack some features. For best performance, run it on Perl 5.8.0 and up. It has been tested on versions down to 5.005 or so.
First and foremost, Wakaba requires a database backend. It has been designed to support mysql and SQLite. You will need to install the appropriate DBD driver for whichever one you pick. See MysqlDatabase or SQLiteDatabase for more information.
Thumbnailing is done either with ImageMagick or NetPBM. At least one of these is often installed on Unix machines.
It also needs to be able to write to its own directory, and its subdirectories. See SettingPermissions for more information.
The following are optional:
MD5 checksumming requires Digest::MD5 package. Digest::MD5 is included with newer Perl distributions, or can be obtained from CPAN for older ones. Wakaba can also try to calculate MD5 checksums using the external 'md5sum' program.
CharacterSetConversion requires Perl 5.8.0 to work.
This string is used to secure various features in the scripts, such as SecureTripCodes, SecureIdCodes, and the VeriCodes and EncryptedLogFile in KarehaScript.
It should be a long and randomized string. Ten characters at the very least, and preferably twenty or thirty. It should also not be revealed to anyone.
See WakabaConfig or KarehaConfig for information about setting it.
Secure trip codes are an alternate form of TripCodes, which are secure against the BruteForceAttack that can be used to crack normal TripCodes. SecureTripCodes are used by writing your name and tripcode as "Name##securetripcode" instead of "Name#normaltripcode". You can also use "Name#normal##secure".
If you want to keep your tripcode secure, do not ever use the same word for a normal and a secure tripcode.
Secure trip codes rely on a SecretString being configured for the script. Since the SecretString is not shared between different websites, secure trip codes are not portable across different websites.
Wakaba creates static HTML pages for all pages. If you change the settings for the script, or if you move it, these pages will no longer be correct. To fix them, you need to have the script rebuild them. How to do this differs depending on which script you're running.
In Wakaba, you can tell the script to rebuild the caches by clicking the "Manage" link and logging in to the ManagementPanel. Here you can select "Rebuild Caches". However, if you moved the script, the Manage link may be incorrect. In this case, manually enter the URL as " http://yoursite.com/yourdirectory/wakaba.pl?action=admin ".
In Wakaba Zero and Kareha, the caches get rebuilt everytime you hit the script and the main HTML file does not exist (wakaba.html for Wakaba Zero, index.html for Kareha, or whatever you changed it to in the configuration file). So to rebuild caches, delete this HTML files, and access the script (wakaba.pl or kareha.pl) through a web browser.
Kareha has no separate interface for administrative tasks. To delete a post, click the "Manage" link, enter the AdminPassword, and the click the "Del" link next to a post. To delete or PermaSage a thread, click on the "All Threads" link in the thread list, and again click on the "Manage" link. "Delete" and "Permasage" links will appear in the thread list.
To see the IP address of a poster, you currently have to run the dumplog.pl script from a shell. This will hopefully change in the future.
If you want, you can also delete and move threads directly on the server, or even edit the thread HTML files, and then RebuildCaches.
See http://en.wikipedia.org/wiki/Context-free_grammar for more information about context-free gramamrs than you can stand.
The context-free grammars used in Wakaba and Kareha are all stolen from http://www.ruf.rice.edu/~pound/#werd . Many thanks to Chris Pound!
There
is a japanese version of Wakaba. It is, however, somewhat neglected and
all strings have not been properly translated. To use it, change the "strings_en.pl"
at the top of the script to "strings_jp.pl"
. The strings_jp.pl
file is in the extras/
directory. There are also translated version of rules.html
available in extras/include/
.
Kareha also has a japanese translation. To use it, copy templates_jp.pl
from the extras/
directory, and change the "templates.pl"
line at the top of the script to "templates_jp.pl"
. Also make sure to run the script with the Shift_JIS character set.
I'd love some help with bringing these up to date and fixing any mistakes.
http://netpbm.sourceforge.net/
The NetPBM tools are another possibility for thumbnailing in Wakaba and Wakaba Zero. The script will use a combination of the commands 'djpeg', 'cjpeg', 'pngtopnm', 'giftopnm' and 'pnmscale' to make the thumbnails.
If you are getting SQL connection errors, make sure all the SQL options in config.pl are set up correctly, and make sure the database you are trying to use has been created. Wakaba will create the tables it needs itself, but the database the tables are in has to be created by hand. See WakabaConfig.
Also see the generic TroubleShooting section.
Above the basic functionality of FutabaScript, Wakaba offers these features (and more):
The discussion board, which predictably runs on KarehaScript, is available at http://wakaba.c3.cx/sup/ .
The scripts can run on Windows machines that have Apache and Perl installed. (ActivePerl is a good Windows version of Perl.) In fact, that's the setup I develop them on. However, Windows machines are quite a bit more insecure for these purposes. The scripts try to reject uploading .exe files and the like, but to be on the safe side, it is a good idea to set ALLOW_UNKNOWN to 0 (see WakabaConfig) if you run on Windows, unless you really know what you're doing.
Windows machines usually want a different HashBang than Unix machines. This means the first line of the script should be set to "#!perl".
For Windows, the Q8-static version of ImageMagick is recommended, as people have reported problems with getting the DLL version to work. You might also want to copy the convert.exe file to a directory that is in the path, to make sure the web server can find it.
RunningOnIIS might be possible, but I have very limited experience with this.
If uploading works, but the images don't post, make sure you have the URL for the image board set up correctly in oekaki_config.pl. See OekakiConfig.
The ImageMagick 'convert' command is used to thumbnail images in Wakaba and Wakaba Zero. Sometimes, the convert command may be installed on a server, but Apache won't be able to find it. In this case, you can configure the complete path to it in config.pl by changing the CONVERT_COMMAND entry. See WakabaConfig.
If you are RunningOnWindows, the Q8-static version of ImageMagick is recommended, as people have reported problems getting the DLL version to work at all. It can be found here: http://www.imagemagick.net/download/binaries/
Wakaba is also able to use the PerlMagick module for thumbnailing, but this is only tried as a last effort, because of the unreliable nature of the module, and the severely lacking documentation. It is suggested to use the command-line version of ImageMagick instead.
A brute-force attack is done by testing all combinations of letters, or checking a dictionary of words, to see what tripcode they generate. If your tripcode is fairly short and simple, such an attack can reveal it.
SecureTripCodes are immune against this sort of attack.
Kareha offers, beyond the basic message board functionality, these and other features:
WakabaMark is a very simple markup code for doing simple formatting of posts. It's designed to be intuitive to use, and look good even when not parsed. It is heavily inspired by MarkDown.
The basic features are as follows:
*
or _
to make <em> tags. _Like this_
or *like this*
. This makes the text italic.**
or __
to make <strong> tags. This makes the text bold.*
,
or -
. You can add line breaks in list entries by breaking the line and indenting the next line with one or more spaces. `like so`
. To display code that contains backticks, use several backticks to surround it, ``like so``
.>>1
are also automatically turned into links.Do no leave empty lines in the middle of lists or quoted blocks, as this turns them into separate blocks.
Note: There's a small bug in the wiki code that'll hit if you try to edit this entry, so don't. I'll remove this notice when it's fixed.
Oekaki are Java applets for doing quick drawing on the net. Wakaba can be integrated with an Oekaki applet to allow people to draw images that are then uploaded directly to the board.
The applet supported at the moment is Shi Painter: http://hp.vector.co.jp/authors/VA016309/spainter/index_en.html
Adding support for other applets should be fairly easy.
To enable oekaki support, you need to get the spainter_all.jar
file from the Shi Painter distribution on the site linked above. If you want the "Palette Selfy" palette editor, you need the palette_selfy.js
file too, which can be found here: http://babu.jp/~useyan/s/relm/palette_selfy.html
Then, copy all the oekaki files from the extras/
directory, and also the finish.pl
, paint.pl
and getpic.pl
scripts. The last three scripts need to be set up to run as CGI scripts in the same way as wakaba.pl
(as usual, see RunningPerlScripts).
Edit oekaki_config.pl
to suit your needs, and especially remember to configure the URL for where your image board lives. See OekakiConfig.
Finally, edit wakaba.pl
and change the line that contains "futaba_style.pl"
near the top to say "oekaki_style.pl"
instead, and then RebuildCaches.
Oekaki painting should now work. If it doesn't, see OekakiTroubleshooting, or post on the DiscussionBoard.
I have very little experience in trying to run Wakaba on IIS. Installing ActivePerl seems to let you run Perl CGI scripts, but the working directory seems to be set wrong when the script is started. This can be worked around by adding:
BEGIN { chdir "imgboard_dir"; }
as one of the first lines of the script, where "imgboard_dir" is the path to where you keep the image board. This needs to be done for both wakaba.pl and captcha.pl.
Second, it seems IIS can't run external commands by default. This prevents wakaba from running the ImageMagick convert command and making thumbnails. This article has some information:
It seems that if you give the IUSR_* user access to run cmd.exe in c:\windows\system32, or copy cmd.exe into c:\windows\system32\inetsrv, you can get it to work.
Finally, there seems to be some peculiarities with the way IIS handles redirects from CGI scripts, so you will need to enable the ALTERNATE_REDIRECT option in config.pl. See WakabaConfig.
mode_*/
directory.config.pl
to your liking. At the very least, set up the AdminPassword and the SecretString.kareha.pl
through a web browser. This should create the HTML pages and forward you to them if everything worked.If this didn't work, check out the KarehaTroubleShooting section, or ask for help on the DiscussionBoard.
(Somebody with more unix skills than me could maybe clarify this section a bit?)
The scripts themselves (wakaba.pl, kareha.pl and captcha.pl) need to be set as executable. This usually just means setting the permissions to 755.
All the scripts need to be able to write to the directory they live in, and some subdirectories such as res/, src/ and thumb/. How to accomplish this varies depending on how your web server is set up.
For webservers that run scripts as the the same user who owns the file, you might not need to do anything.
For webservers that run scripts as some low-privilege user, you may need to set the permissions for the directories to 777. This is a bit risky if done on a multi-user machine, since it means every other user can write to these directories.
There are other possibilities too, and it helps to be familiar with how permissions work in unix when figuring it all out. Or you can ask for help on the DiscussionBoard.
On Windows machines, writing is usually possible at all times. However, see RunningOnWindows.
Tripcodes are used as a proof of identity, while still remaining anonymous. If you enter your name as Name#tripcode
, it will be shown as Name!3GqYIJ3Obs
, the idea being that only you know the code word used to generate the tripcode.
However, the tripcode algorithm is well known, and it is fairly easy to perform a BruteForceAttack on it to find out someone's code. Therefore, tripcodes are more of a token than a guarantee.
To address this problem, Wakaba, Kareha and the documentation wiki all support SecureTripCodes.
A WikiWord is a word composed of a bunch of other words slammed together with each of their first letters capitalised. WikiWord notation in a WikiWikiWeb is used to name individual pages. Furthermore, referring to a page automatically creates a link to it. Clicking on a link jumps to that page or, if it doesn't exist, to an editor to create it. TiddlyWiki uses WikiWord titles for smaller chunks of MicroContent.
Threads set to PermaSage may be posted to, but will not be bumped to the front of the thread list.
config.pl
to your liking. At the very least, set up the database settings, the AdminPassword and the SecretString. See WakabaConfig.wakaba.pl
through a web browser. This should create the HTML pages and forward you to them if everything worked.If this didn't work, check out the WakabaTroubleShooting section, or ask for help on the DiscussionBoard.
The SQLite database is completely self-contained, and only needs the DBD::SQLite database driver module for Perl. This can be found at http://search.cpan.org/~msergeant/DBD-SQLite-1.07/ . ActivePerl users should be able to find it with the package manager.
You do not need any kind of database server to use SQLite. Instead of databases on a server, it uses plain files for each database. These are set up automatically. The filename is specified by the SQL_DBI_SOURCE config option. Usually this option will be set to something like:
use constant SQL_DBI_SOURCE => 'dbi:SQLite:dbname=wakaba.sql';
Which
will put the database into the file "wakaba.sql". It is strongly
recommended that you either put this file somewhere where the web
server can't see it, or block access to it through the web server,
because it contains IP addresses of posters that you do not want people
to be able to download. The example.htaccess
file included with the script shows you how to do this.
The SQL_USERNAME and SQL_PASSWORD fields can be left blank.
More information on SQLite can be found at http://www.sqlite.org/.
"sage" is a way to reply to a thread without bumping it to the top of the thread list or the top of the board's first page.
To sage, write "sage" in the e-mail/link box.
Getting Apache to run Perl scripts is sometimes a bit tricky. The short version is: Make sure the script has the correct execute bits set, make sure the HashBang at the start of the script is correct, and make sure that your web server configuration is correct. You'll probably need these lines in the Apache configuration file (httpd.conf):
Options +ExecCGI
AddHandler cgi-handler .cgi .pl
If you are lucky, all of this has been done for you.
To make sure the script has the execute bits set, set its permissions to 755. The SettingPermissions section may have some more information. This is not necessary when RunningOnWindows.
A guide to configuring Apache to run CGI scripts under Windows (some of it applies to Unix servers, too) can be found here:
http://www.thesitewizard.com/archive/addcgitoapache.shtml
There is a discussion board thread related to Internal Server Errors: http://wakaba.c3.cx/sup/kareha.pl/1109033191
Kareha is a very customizable board script. It can operate as the sort of message board scripts used on japanese sites like NiChannel, or as an image board like FutabaChannel (or WakabaScript). See MultipleBoardModes for more information. It uses modern structured XHTML and CSS layout. It does not require a database backend.
I claim no copyright on Kareha. It is released into the public domain.
If the web server only shows the Perl source code and doesn't run the script, your web server is not set up to run CGI scripts. See RunningPerlScripts for more information.
Verification codes are a form of captcha (http://www.captcha.net/ for more information) that are used to prevent scripts from posting on the boards. Both scripts support them as an option. They work by presenting the user with an image of a scribbled word, and asking them to type it in. Spamming scripts will have great difficulty parsing the image, and thus won't be able to fill your board with garbage.
To enable verification codes, set ENABLE_CAPTCHA to 1 in config.pl. See WakabaConfig or KarehaConfig for more information.
Trivia: The verification codes are generated by a ContextFreeGrammar that creates words that look vaguely like English.
SillyNames is a feature in KarehaScript that makes up silly names (using a ContextFreeGrammar) for people who don't enter a name.
Configuring Kareha is fairly easy. Open config.pl
in a text editor and change whatever options you want to change, and
remove the '#' character from the beginning of any lines you change.
Here is a list of all the config.pl options for Kareha with descriptions and their default values (WARNING: This list is quite outdated):
ADMIN_PASS - AdminPassword, must be changed
SECRET - SecretString, must be changed
ADMIN_TRIPS () - Admin tripcodes
TITLE ('Kareha message board') - Name of the board
THREADS_DISPLAYED (10) - Maximum number of threads shown on the main page
THREADS_LISTED (40) - Maximum umber of threads shown in the thread list
REPLIES_PER_THREAD (10) - Maximum number of replies shown in each thread on the main page
S_ANONAME ('Anonymous') - Name to use when the name field is blank
DEFAULT_STYLE ('Headline') - Default stylesheet to use
ALLOW_TEXT_THREADS
(1) - Allow posting of new threads by all users (only users with Admin
tripcodes are allowed to post new threads if this is 0)
ALLOW_TEXT_REPLIES
(1) - Allow posting of replies by all users (only users with Admin
tripcodes are allowed to post replies if this is 0)
ALLOW_IMAGE_THREADS (0) - does nothing
ALLOW_IMAGE_REPLIES (0) - does nothing
MAX_RES (1000) - Maximum number of times a thread can be bumped
MAX_THREADS (500) - Maximum number of threads
MAX_FIELD_LENGTH (100) - Maximum length of subject, name, and email fields
MAX_COMMENT_LENGTH (8192) - Maximum post length
MAX_LINES - Maximum number of lines per post
MAX_LINES_SHOWN (15) - Maximum number of lines of a post shown on the main page
MAX_KEY_LOG (1000) - Number of captcha keys to log
ENABLE_CAPTCHA (0) - Enable (1) or disable (0) VeriCodes
CAPTCHA_HEIGHT (18) -
CAPTCHA_SCRIBBLE (0.2) -
CAPTCHA_SCALING (0.15) -
CAPTCHA_ROTATION (0.3) -
CAPTCHA_SPACING (2.5) -
CHARSET ('utf-8') - Character set to use
PROXY_CHECK () - Ports to scan for proxies, NOT IMPLEMENTED
TRIM_METHOD (1) - Which threads to trim (when MAX_THREADS is reached), 0: oldest, 1: least active (furthest back)
DATE_STYLE ('2ch') - Date style: '2ch', 'localtime' , or 'http'
DISPLAY_ID (1) - Display user IDs: 0: never, 1: if no email, 2: always
EMAIL_ID ('Heaven') - ID string to use when DISPLAY_ID is 1 and the user uses an email
SILLY_ANONYMOUS (0) - Enable (1) or disable (0) SillyNames
FORCED_ANON (0) - Enable (1) or disable (0) ForcedAnonymousPosting
TRIPKEY ('!') - Character to display before tripcodes
ALTERNATE_REDIRECT (0) - Use alternate redirect method (javascript/meta-refresh instead of HTTP forwards)
ENABLE_WAKABAMARK (1) - Enable (1) or disable (0) WakabaMark formatting
APPROX_LINE_LENGTH (150) - Approximate line lenght used by reply abbreviation code to guess at the length of a reply
COOKIE_PATH
('root') - Path argument for cookies: 'root': cookies apply to all
boards on the site, 'current': cookies apply to only this board,
'parent': cookies apply to all boards in the parent directory; does NOT
apply to the style cookie
STYLE_COOKIE ('karehastyle') - Cookie name for the style selector
ENABLE_DELETION (1) - Enable (1) or disable (0) user deletion of posts
RES_DIR ('res/') - Reply cache directory
HTML_SELF ('index.html') - Main html file
HTML_BACKLOG ('subback.html') - Backlog HTML file
RSS_FILE ('index.rss') - RSS file, set to '' to disable RSS
CSS_DIR ('css/') - CSS file directory
PAGE_EXT ('.html') - Extension to use for thread pages
SPAM_FILE ('spam.txt') - Spam definitions
Forced anonymous posting does not allow users to use a name when they post. It also doesn't let users use anything except 'sage' for the email field.
A Wiki is a widely-used, mature way of building collaborative websites. It's based on the ideas of easy editting of pages and the use of special WikiWord notation to automagically create links between pages. See Wikipedia for more details: http://en.wikipedia.org/wiki/Wiki . TiddlyWiki is different from a conventional Wiki because it is not based on entire pages of content, but rather items of MicroContent that are referred to as 'tiddlers'.
TiddlyWiki doesn't normally have any way to save edits for others to see. This modified version talks to a very simple Perl script that makes changes directly in the HTML file on the server, and keeps backups of older versions. A quick and undocumented release of the code can be found here: http://wakaba.c3.cx/releases/other/kozakana2.pl
If you want to test out TiddlyWiki and the backend, do it on http://wakaba.c3.cx/docs/test.html, where anything goes.
To quote a certain passage of text, you only need to append a single angle bracket followed by a single space in front of it:
> This is the quoted text. Both KarehaScript and WakabaScript,
> as well as the FutabaScript and the FutallabyScript
> automatically turn this into a different colour than normal
> text.
To refer to a certain post in a thread, either click on the number of the post (if you have JavaScript enabled) or manually write out the number and append two angle brackets in front of it:
>>2
This will automatically create a link to the post you refer to, making it easier to follow points of reference and structure discussions. Just as the quoting of text in the above mentioned manner, this is a very common practice on all FutabaChannel and NiChannel offshoots.
At the bottom of each page in Wakaba, there is a Delete button. Next to it, there's a password field. If you haven't set an individual password, Wakaba will already have set a password for you that is saved in your cookie*. Check the box next to your name for the post(s) you want to delete, and check the File Only box above the Delete button if you only want to delete your images. Then click the Delete Button for great justice!
*NOTE: This requires your JavaScript & cookies to be turned on. Also, if Firefox asks you whether the password should be remembered, tell it to "Never remember it for this site"!
Click here!
↓
┌──────────────────────────────────────────────
│☐ Anonymous 05/02/18(Fri)07:50 No.1992 [Reply]
│
│ This is a stupid post. I should delete it.
└──────────────────────────────────────────────
────────✂────────✂────────✂────────✂────────
Delete Post [ ☐ File Only]
Password [********______] [ Delete ]
↑
Then click here!
Just click on the Reply link next to the first post of the thread you wish to reply to. If you just fill out the comment box and hit submit before clicking Reply, you will try to create a new thread. This will most often result in a "Error: No file selected." - the safest way to tell that you haven't really tried to reply to a thread.
Wakaba is an image board script very strictly modelled after the FutabaScript and FutallabyScript.
I claim no copyright on Wakaba. It is released into the public domain.
Sand goes here.
AccentedFôo doesn't work, no [alternative markup] for links in WakabaMark?
No, I haven't gotten around to making non-wikicased links yet. Still pondering how to handle various exotic charaters in those. Also, I suppose I should explicitly set the character set in the HTML file for those browsers that get confused otherwise...
Actually, my mistake, there was a problem with the encoding when saving... NOW accented characters should work, except not in tiddler names.
The HashBang is the first line of the script, that starts with "#!". This tells the web server where to find the Perl executable. On Unix machines, this first line should usually be "#!/usr/bin/perl", while on Windows machines it should be "#!perl".
Sometimes, when I package distributions, I forget to change the hashbang at the top of the scripts. I develop on a Windows machine, and most people run the script on Unix machines, which can lead to problems when I mess up. Also see RunningOnWindows.
The admin password is used to access the administrative interfaces of KarehaScript and WakabaScript. See KarehaAdministration and WakabaAdministration for more information.
TiddlyWiki is an unorthodox WikiWiki system written by Jeremy Ruston. It is entirely Javascript-based, and self-contained in a single HTML file. It lives at http://www.tiddlywiki.com/.
This documentation uses a heavily modified version of TiddlyWiki with a minimalist StorageBackend wirtten in Perl.
Here is a quick guide to some of the more strange and mystifying parts of using these board scripts.
There are no doubt more things that could be explained. Feel free to suggest some, or just write about them.
It is considered polite to not post lots of new threads with a single image in each, but instead to collect them in threads. After clicking the reply link in a thread, you can select an image in the same way as when creating a new thread, and it will be posted as a reply.
Unlike certain other sites, there are no limits to how many images you can post in a thread.
WakabaScript and KarehaScript both read a file called spam.txt
to find a list of URLs that are not allowed to be posted on the board. You can find fresh versions of this file at http://wakaba.c3.cx/antispam/.
Well-formed
XHTML code is HTML written as proper XML. This means that all tags have
to be closed. This means you either have to use <tag>...</tag>
pairs, or the <tag />
shorthand. The character &
is also not allowed, but has to be written as &
.
Furthermore, all tags and attributes have to be in lower case, and all
attribute values properly quoted with double or single quotes.
If pages are sent as application/xhtml xml instead of text/html, many browser will require you to follow these rules strictly, or they will not display the page.
The workings of the KarehaScript are determined to quite a large extent by the templates.pl
and config_defaults.pl
files. After unpacking the distribution archive, you will need to copy these (and possibly other files) from one of the mode_*/
directories into the main directory. This will determine how the board
behaves. You can not change this behviour later for the same install.
mode_message/
- A NiChannel-like message board mode. This also supports posting of images, if you turn on the appropriate configuration options (see KarehaConfig).mode_image/
- A FutabaChannel/WakabaScript-like board mode.