meguca

command module
v2.0.0-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 21, 2016 License: MIT Imports: 1 Imported by: 0

README

GoDoc Build Status Dependency Status

Note: The version in the master branch is currently in early development. For deploying a production-ready legacy meguca instance, download the latests release and consult the bundled README.

Platforms: Linux, OSX, Win64

##Runtime dependencies

  • RethinkDB
    • RethinkDB does not enable a configuration file by default. If you don't want to configure anything, just copy /etc/rethinkdb/default.conf.sample into /etc/rethinkdb/instances.d/instance1.conf. You might also set it to autostart on boot. See the official guide.

##Installable binaries Coming soon™

##Building from source

###All Platforms

  • Install Go >=1.6
  • Install Node.js >=5.0 (for building the client)

###Linux and OSX

  • Install:
    • GCC or Clang
    • make
    • zip
    • ffmpeg >=3.0 development libraries (libavcodec, libavutil, libavformat, libswscale) compiled with:
      • libvpx
      • libvorbis
      • libopus
      • libtheora
      • libx264
      • libmp3lame
  • Run make

###Windows

  • Install MSYS2
  • Open MSYS2 shell
  • Install with pacman:
    • mingw-w64-x86_64-ffmpeg
    • mingw-w64-x86_64-gcc
    • mingw-w64-x86_64-pkg-config
    • git
    • make
  • Navigate to the meguca root directory
  • Run make

##Production

  • Edit ./config/config.json to configure your instance
  • See ./meguca help
    • Windows does not support daemonisation. The stop|restart arguments are not available and start is an alias for debug
  • For upgarding between semver major releases see docs/migration.md

##Development

  • ./meguca to run the server in development mode
  • make server and make client build the server and client separately
  • make watch watches the file system for changes and incrementally rebuilds the client
  • make clean removes files from the previous compilation
  • make dist_clean in addition to the above, removes configuration, images and stored assets

// TODO: Rewrite everything below for v2

Documentation

  • docs/api.md - JSON API spec
  • docs/dev_guide.md - Brief description on project operation for developers
  • docs/migration_*.js - Major semvser migration instructions
  • docs/doushio.initscript.example - Init script example
  • docs/nginx.config.example - ngingx configuration example

##Standalone upkeep scripts

  • scripts/backup.js - uploads rdb to S3
  • scripts/backup.sh - MEGA backup script
  • scripts/purge_bans.sh - Removes all bans
  • scripts/purge_mod_sessions.sh - Closes all active moderator sessions
  • scripts/radio.js - icecast2 server integration
  • scripts/send.js - global websocket push messages

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package auth determines and asserts client permissions to access and modify resources.
Package auth determines and asserts client permissions to access and modify resources.
Package config parses JSON configuration files and exports the configuration for server-side use and the public availability JSON struct, which includes a small subset of the server configuration.
Package config parses JSON configuration files and exports the configuration for server-side use and the public availability JSON struct, which includes a small subset of the server configuration.
Package db handles all database intercations of the server
Package db handles all database intercations of the server
Package imager handles image, video, etc.
Package imager handles image, video, etc.
Package server handles client requests, both for HTML page rendering and websocket connections.
Package server handles client requests, both for HTML page rendering and websocket connections.
websockets
Package websockets manages active websocket connections and messages received from and sent to them.
Package websockets manages active websocket connections and messages received from and sent to them.
Package templates generates and stores HTML templates
Package templates generates and stores HTML templates
Package types contains common shared types used throughout the project.
Package types contains common shared types used throughout the project.
Package util contains various general utility functions used throughout the project.
Package util contains various general utility functions used throughout the project.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL