Edit README
This commit is contained in:
parent
7495c57013
commit
d2cf7951e6
51
README.md
51
README.md
@ -2,19 +2,42 @@
|
||||
More than a web server that dynamically show the status of a Minecraft server (formerly known as bukkit-server-status)
|
||||
|
||||
# Goals
|
||||
- [ ] A cli (using [`clap`](https://crates.io/crates/clap/)) that enables to
|
||||
- [ ] Start the Minecraft server and give control over its terminal (using [`screen`](https://www.gnu.org/software/screen/))
|
||||
- [ ] Start and control the webserver
|
||||
- [ ] Turn on/off remote starting of the Minecraft server
|
||||
- [ ] A webserver that show the current status of the Minecraft server (using [`actix-web`](https://crates.io/crates/actix-web/), [`tokio`](https://crates.io/crates/tokio/), and [`async-minecraft-ping`](https://crates.io/crates/async-minecraft-ping/))
|
||||
- [ ] Server online
|
||||
- [ ] Players online
|
||||
- [ ] MOTD
|
||||
- [ ] Start the Minecraft server if offline
|
||||
- [ ] Config loading (using [`toml`](https://crates.io/crates/toml/))
|
||||
- [x] A daemon/service (`sfsmcd`/`sfsmc`) that can be controlled via [DBus](https://www.freedesktop.org/wiki/Software/dbus/)
|
||||
- [x] systemd integration
|
||||
- [x] DBus integration
|
||||
- [x] A Minecraft server (starting, eventually stopping) _(needs testing)_
|
||||
- [ ] A web server for the status page
|
||||
- [ ] Online status
|
||||
- [ ] Players
|
||||
- [ ] MOTD
|
||||
- [ ] Start the Minecraft server if it is offline
|
||||
- [ ] Web server extensions (via dynamic libraries) _(just maaaayyybeee)_
|
||||
- [x] A CLI (`sfsmcctl`) that enables to
|
||||
- [x] Start the daemon/service
|
||||
- [x] Stop the daemon/service
|
||||
- [x] Start the Minecraft server _(needs testing)_
|
||||
- [ ] Give control over the Minecraft server terminal
|
||||
- [ ] Stop the Minecraft server
|
||||
- [ ] Start the web server
|
||||
- [ ] Stop the web server
|
||||
- [ ] Config loading
|
||||
- [ ] Config profiles
|
||||
- [ ] Running in the background (using [`screen`](https://www.gnu.org/software/screen/))
|
||||
|
||||
# Decisions made along the way
|
||||
## 4th August 2020
|
||||
For the server and "client" to be able to communicate with eachother, I'll be using [DBus](https://www.freedesktop.org/wiki/Software/dbus/) and the [`dbus`-crate](https://crates.io/crates/dbus/). Also, it will probably be better to split the server and client/daemon and control utility in two separate projects (using Cargo's [workspaces](https://doc.rust-lang.org/cargo/reference/workspaces.html)).
|
||||
# Dependencies
|
||||
## Non-Rust dependencies
|
||||
- [systemd](https://systemd.io/)
|
||||
- [DBus](https://www.freedesktop.org/wiki/Software/dbus/)
|
||||
- Any Minecraft server e.g. [Spigot](https://www.spigotmc.org/)
|
||||
- [screen](https://www.gnu.org/software/screen/)
|
||||
|
||||
## Crates
|
||||
- [clap](https://crates.io/crates/clap/) v2.33
|
||||
- [tokio](https://crates.io/crates/tokio/) v0.2 (although v0.3 is out already)
|
||||
- [dbus](https://crates.io/crates/dbus/) v0.9
|
||||
- [dbus-tokio](https://crates.io/crates/dbus-tokio/) v0.6
|
||||
- [dbus-tree](https://crates.io/crates/dbus-tree/) v0.9
|
||||
- [log](https://crates.io/crates/log/) v0.4
|
||||
- [env_logger](https://crates.io/crates/env_logger/) v0.8
|
||||
- [async-minecraft-ping](https://crates.io/crates/async-minecraft-ping/)
|
||||
- [toml](https://crates.io/crates/toml/)
|
||||
- [actix-web](https://crates.io/crates/actix-web/)
|
Loading…
Reference in New Issue
Block a user