diff --git a/Cargo.toml b/Cargo.toml index 41b8521..abd4023 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0-alpha" edition = "2018" authors = ["Yechan Bae ", "Kangsu Kim "] license = "MIT OR Apache-2.0" -description = "Your one-stop CTF problem management tool" +description = "Cross-platform CTF problem container manager" repository = "https://github.com/PLUS-POSTECH/soma" keywords = ["ctf", "hacking", "security", "container", "docker"] categories = ["command-line-utilities", "config"] @@ -50,3 +50,6 @@ path = "src/lib.rs" name = "soma" test = false doc = false + +[profile.release] +lto = true diff --git a/README.md b/README.md index f20ef15..20be2b7 100644 --- a/README.md +++ b/README.md @@ -46,10 +46,10 @@ ## What is Soma? -Soma is a cross-platform CTF problem management tool. - -Soma helps to manage and distribute CTF problems after contests. +Soma is a cross-platform CTF problem container manager. +* Soma helps *problem authors* to easily create and distribute reproducible CTF problem environment. +* Soma hepls *CTF players* to easily download and run CTF problems on their local machine after contests. ### For problem solvers @@ -110,12 +110,11 @@ Soma requires [Docker][docker] to be installed on the system. ## Current Status -Soma is in **pre-alpha** stage. Currently, Soma does not have any stable release, and everything is subject to change. +Soma is in its *alpha* stage. Currently, it supports running a binary file under a `socat` fork server. -The initial 0.1.0 release will contain the features listed in the [issue #4] and [issue #66]. -Issues related to 0.1.0 release are marked with [`0.1.0` milestone]. +We hope to add more scenarios to it, notably a web problem setup which uses PHP with MySQL and a Python-based setup. -Soma team is hoping to ship the alpha version in the first quarter of 2019. +Issues related to 0.1.0 release are marked with [`0.1.0` milestone]. ### Roadmap @@ -129,7 +128,16 @@ Soma team is hoping to ship the alpha version in the first quarter of 2019. ### Installation -As we don't provide a pre-compiled binary yet, you should install [Rust][rust-lang] toolchain and build your own binary from the source. In detail, clone this git repository and run `cargo install`. +Use `cargo install soma-ctf` if you have [Rust][rust-lang] toolchain on your system. +This command will download the latest released version from [crates.io][crates.io] and build the executable file. + +```bash +$ cargo install soma-ctf +``` + +Or, download the precompiled binary from [the release page][releases]. + +If you want to try the cutting-edge master branch, you can also build your own binary from the source. In detail, clone this git repository and run `cargo install`. ```bash $ git clone https://github.com/PLUS-POSTECH/soma.git @@ -137,8 +145,6 @@ $ cd soma $ cargo install ``` -We are expecting to release `0.1.0-alpha` soon to [crates.io]. - ### Command overview | | Add / Create | Remove | @@ -152,7 +158,7 @@ Additionally, [update](#updating-repositories) ### Adding repositories -Soma repository has `soma.toml` or `soma-list.toml` in its top level directory and can contain one or more problems. To use Soma, start by adding problem repositories. We will use [`soma-bata-list`][soma-bata-list] as an example through out this document. +Soma repository has `soma.toml` or `soma-list.toml` in its top level directory and can contain one or more problems. To use Soma, start by adding problem repositories. We will use [`soma-bata-list`][soma-bata-list] as an example throughout this document. You can add a repository with `add` subcommand: @@ -422,10 +428,8 @@ at your option. Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions. -[issue #4]: https://github.com/PLUS-POSTECH/soma/issues/4 [issue #50]: https://github.com/PLUS-POSTECH/soma/issues/50 [issue #64]: https://github.com/PLUS-POSTECH/soma/issues/64 -[issue #66]: https://github.com/PLUS-POSTECH/soma/issues/66 [issue #84]: https://github.com/PLUS-POSTECH/soma/issues/84 [issue #114]: https://github.com/PLUS-POSTECH/soma/issues/114 [issue #115]: https://github.com/PLUS-POSTECH/soma/issues/115 @@ -435,5 +439,6 @@ Unless you explicitly state otherwise, any contribution intentionally submitted [docker]: https://www.docker.com/ [docker-compose]: https://docs.docker.com/compose/ [docker-regexp]: https://github.com/docker/distribution/blob/master/reference/regexp.go +[releases]: https://github.com/PLUS-POSTECH/soma/releases [rust-lang]: https://www.rust-lang.org/ [soma-bata-list]: https://github.com/PLUS-POSTECH/soma-bata-list