From 8baf88b9078424258cc1ddd2169ad565d52f4679 Mon Sep 17 00:00:00 2001
From: Jan Vykopal <vykopal@ics.muni.cz>
Date: Fri, 27 Nov 2020 22:57:47 +0000
Subject: [PATCH] Add CyberSec4Europe acknowledgement, update Credits, add link
 to Releases, and reorganize sections in README.md

---
 README.md    |  53 ++++++++++++++++++++++++++++++++++++---------------
 doc/EU.jpg   | Bin 0 -> 14221 bytes
 doc/TACR.png | Bin 0 -> 5080 bytes
 3 files changed, 38 insertions(+), 15 deletions(-)
 create mode 100644 doc/EU.jpg
 create mode 100644 doc/TACR.png

diff --git a/README.md b/README.md
index d4031e5..a774f11 100644
--- a/README.md
+++ b/README.md
@@ -1,12 +1,16 @@
 # Cyber Sandbox Creator
 
-Cyber Sandbox Creator is a tool, which can generate portable input files for building lightweight virtual environments using Vagrant and Ansible from a simple YAML definition of topology. The combination of these three tools makes possible to build virtual machines connected with virtual networks even on a desktop computer.
+Cyber Sandbox Creator is a tool that can generate portable input files for building lightweight virtual environments using Vagrant and Ansible from a simple YAML definition of topology. The combination of these three tools makes it possible to build virtual machines connected with virtual networks even on a desktop computer.
 
 ![usage](doc/sandbox_creator_general.svg "Usage")
 
-## Installation
+---
+
+**Note: This is just a quick guide how to install and generate files with Cyber Sandbox Creator. For full description of how to prepare the host device to run the generated environments and how to build the virtual machines, check our [wiki page](https://gitlab.ics.muni.cz/muni-kypo-csc/cyber-sandbox-creator/-/wikis/Installation-and-Usage).**
 
-**Note:** This is just a quick guide how to install and generate files with this tool. For full description of how to prepare the host device to be able run the generated environments and how to build the virtual machines check our [wiki page](https://gitlab.ics.muni.cz/muni-kypo-csc/cyber-sandbox-creator/-/wikis/Installation-and-Usage).
+**The latest stable release is available in [Releases](https://gitlab.ics.muni.cz/muni-kypo-csc/cyber-sandbox-creator/-/releases).**
+
+## Installation
 
 ### Linux (Ubuntu/Debian)
 
@@ -23,43 +27,62 @@ Cyber Sandbox Creator is a tool, which can generate portable input files for bui
 2. Install [git](https://git-scm.com/downloads).
 3. Clone the project with `git clone https://gitlab.ics.muni.cz/cs4eu/sandbox-creator.git` to an arbitrary folder.
 4. Navigate to the project folder (`cd sandbox-creator`).
-5. Install Python dependencies using the command `python -m pip install -r .\requirements.txt`.
+5. Install Python dependencies using the command `python -m pip install -r requirements.txt`.
 
 ## Usage
 
 ### Linux (Ubuntu/Debian)
 
-1. After the installation simply run the command `$ python3 create.py topology.yml` to generate files.
+1. After the installation, simply run the command `$ python3 create.py topology.yml` to generate intermediate definition files.
 2. Navigate to the newly created directory `sandbox` and run `$ vagrant up` to build the virtual environment.
 3. The built environment can be deleted using the command `$ vagrant destroy -f`.
 
 ### Windows 10
 
 1. Generate files using the command `python create.py --ansible_local topology.yml`.
-2. Navigate to the newly created folder `sandbox` and run the command `vagrant up` to build the virtual environment.
+2. Navigate to the newly created directory `sandbox` and run `vagrant up` to build the virtual environment.
 3. The built environment can be deleted using the command `vagrant destroy -f`.
 
+## License
+
+This project is licensed under the [MIT License](LICENSE).
+
 ## Credits
 
-**Cybersecurity Laboratory**\
+**[Cybersecurity Laboratory](https://kypo.fi.muni.cz)**\
 **Faculty of Informatics**\
 **Masaryk University**
 
+**Project lead**: Jan Vykopal
+
 **Lead developer**: Attila Farkas
 
 **Developer**: Jana Ziková
 
-**Technology lead**: Daniel Tovarňák (KYPO cyber range platform)
+**Contributors**:
 
-**Supervisor**: Jan Vykopal
+- Valdemar Švábenský - user testing
+- Daniel Tovarňák (KYPO Cyber Range Platform) - technical advisor
+- Kamil Andoniadis (KYPO Cyber Range Platform)
 
-**Contributors**:
+**Student contributors:**  all students who use the tool for their thesis projects or training
+
+### Acknowledgements
+
+<table>
+  <tr>
+    <td>![EU](doc/EU.jpg "EU emblem")</td>
+    <td>
+This software and accompanying documentation is part of a [project](https://cybersec4europe.eu) that has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 830929.
+</td>
+  </tr>
+  <tr>
+      <td>![TACR](doc/TACR.png "TACR logo")</td>
+      <td>This software was developed with the support of the Technology Agency of the Czech Republic (TA ČR) from the National Centres of Competence programme (project identification TN01000077 – [National Centre of Competence in Cybersecurity](https://nc3.cz/)). 
+      </td>
+  </tr>
+ </table>
 
-- Valdemar Švábenský
-- Kamil Andoniadis (KYPO cyber range platform)
 
-**Student contributors:** Michal Staník, Zdeněk Vydra,  Adam Skrášek
 
-## License
 
-This project is licensed under the MIT License - see the LICENSE file for details.
diff --git a/doc/EU.jpg b/doc/EU.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..591af7a0127eade751288330409e7a1f29d650d8
GIT binary patch
literal 14221
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
Y-HlZ6?>c`lTkxG#=Ko6>HK0xWFU9d+-v9sr

literal 0
HcmV?d00001

diff --git a/doc/TACR.png b/doc/TACR.png
new file mode 100644
index 0000000000000000000000000000000000000000..ec821dcd1862a3092ea36e592f0da70ceaf4a4d1
GIT binary patch
literal 5080
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
V$Snd>eqaHBfvz#SLfawae*incyo3M%

literal 0
HcmV?d00001

-- 
GitLab