anonymous realtime imageboard focused on high performance, free speech and transparent moderation
Platforms: Linux, OSX, Win64
License: GNU AGPL
- PostgresSQL >= 10.0
To enable poster country flags on posts please download GeoLite2-Country.mmdb from https://www.maxmind.com and place it inside meguca's root directory. Country lookup will become available after a server restart.
A reference list of commands can be found in ./docs/installation.md
- Go >=1.11 (for building server)
- Node.js >=5.0 (for building client)
- C11 compiler
- make
- pkg-config
- pthread
- ffmpeg >= 3.1 libraries (libavcodec, libavutil, libavformat, libswscale)
compiled with:
- libvpx
- libvorbis
- libopus
- libtheora
- libx264
- libmp3lame
- OpenCV >= 2
- git
- Run
make
- Install MSYS2
- Open MSYS2 shell
- Install dependencies listed above with the
mingw-w64-x86_64-prefix with pacman - Navigate to the meguca root directory
- Run
make
- See
./meguca helpfor server operation - Login into the "admin" account via the infinity symbol in the top banner with the password "password"
- Change the default password
- Create a board from the administration panel
- Configure server from the administration panel
- To enable country flags on posts download and place
GeoLite2-Country.mmdbinto the root directory - To avoid having to always type in CLI flags on server start you can specify them in
config.jsonfile in the project root. A sample file with all the default settings can be found indocs/.
- See
./docsfor more documentation ./megucaor./meguca debugrun the server in development modemake serverandmake clientbuild the server and client separatelymake watchwatches the file system for changes and incrementally rebuilds the clientmake cleanremoves files from the previous compilationmake {test,test_no_race,test_docker}run regular, without data race detection and Dockerized test suites, respectively- To run server unit tests (unless Dockerized) add database creation rights to your PostgreSQL role
For developing the new C++ client
- Run
git submodule update --init --recursive - Install Emscripten
- Ensure Emscripten environment variables by running
source emsdk_env.shin your shell - Use
DEBUG=1 make wasmandmake wasm_cleanto compile the C++ client and clean build directories - To use the C++ client for meguca add the
?wasm=truequery string to the end of the URL