Skip to content

qqshka/qtv-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QTV implemented in golang

Features

  • All features from original QTV, except for RSS and admin HTTP page
  • Demo upload via HTTP interface
  • Better code base, should be easier for others to contribute and support
  • Build-in HTTP server from golang (faster, support HTTPS and HTTP/2, easier to extend)
  • IPv6 support, configurable
  • Logging support JSON format or pretty colored format for console, configurable

Compiling

Recent version of golang tools required, so for average user using docker is probably the simplest way.

HINT: by default make without parameters will execute two targets: update and build, so average user will compile with recent golang packages, but it somewhat slow if you execute make command frequently, if you want to do it faster execute make build, you still need to execute make update at least once after you get source code.

Compiling a Linux binary

Using docker (recommended, unless you have recent golang in system)

docker pull golang
docker run --rm -v "$PWD":/qtv-go -w /qtv-go golang:latest make

Using go from the system

make

Compiling a Windows binary

Using docker

docker pull golang
docker run --rm -v "$PWD":/qtv-go -w /qtv-go -e GOOS=windows golang:latest make

Configuring

Configuration explained in qtv.cfg, that file executed by default.

Command line

Everything is configured with config file qtv.cfg. There is no useful command line switches.

Unlike traditional quake engines if you wish to pass commands from command line to be executed by QTV then you have to use it as is:

./qtv-go exec example.cfg

If you need to pass multiple commands then you have to use semicolon (you have to escape it from the shell):

./qtv-go exec example1.cfg ";" exec example2.cfg

Releases

No releases published

Packages

No packages published