tetuca

command module
v2.1.0-alpha+incompatible Latest Latest
Warning

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

Go to latest
Published: Jul 4, 2016 License: AGPL-3.0, AGPL-3.0-or-later 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

License: GNU AGPL

##Runtime dependencies

  • RethinkDB. On Linux 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.
  • ffmpeg >= 3.0 libraries (libavcodec, libavutil, libavformat, libswscale) compiled with:
    • libvpx
    • libvorbis
    • libopus
    • libtheora
    • libx264
    • libmp3lame

##Compiled Binaries Compiled binary release archives for linux/x86_64 and windows/x86_64 are downloadable from the release page.

##Production

  • See ./meguca help for server operation
  • Login into the "admin" with the password "password" and change the password
  • For upgrading between semver major releases see docs/migration.md

##Building from source

###All Platforms

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

###Linux and OSX

  • Install:
    • GCC or Clang
    • make
    • ffmpeg >= 3.0 development libraries (libavcodec, libavutil, libavformat, libswscale)
    • git
    • zip
  • 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
    • zip
  • Navigate to the meguca root directory
  • Run make

##Development

  • ./meguca or ./meguca debug 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

###Linux only

  • make creates a Go workspace in the .build subdirectory. If you don't have a proper Go worksapce set up, you can simply export GOPATH=$(pwd)/.build to temporarily assign .build as your Go workspace in the current shell. This will allow you to use native go commands such as go test and go build.

// 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