From 78c301653fd5b6f370b112c86e7e5869a0ba46fa Mon Sep 17 00:00:00 2001
From: grossmj <grossmj@gns3.net>
Date: Tue, 10 Jan 2023 08:23:06 +0800
Subject: [PATCH] Convert README to Markdown

---
 MANIFEST.in |   2 +-
 README.md   | 256 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 README.rst  | 241 -------------------------------------------------
 setup.py    |   2 +-
 4 files changed, 258 insertions(+), 243 deletions(-)
 create mode 100644 README.md
 delete mode 100644 README.rst

diff --git a/MANIFEST.in b/MANIFEST.in
index 2b9ab0ff..6fa63e63 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,4 +1,4 @@
-include README.rst
+include README.md
 include AUTHORS
 include LICENSE
 include MANIFEST.in
diff --git a/README.md b/README.md
new file mode 100644
index 00000000..087d346b
--- /dev/null
+++ b/README.md
@@ -0,0 +1,256 @@
+GNS3-server
+===========
+
+[![image](https://github.com/GNS3/gns3-server/workflows/testing/badge.svg)](https://github.com/GNS3/gns3-server/actions?query=workflow%3Atesting)
+
+[![image](https://img.shields.io/pypi/v/gns3-server.svg)](https://pypi.python.org/pypi/gns3-server)
+
+[![image](https://snyk.io/test/github/GNS3/gns3-server/badge.svg)](https://snyk.io/test/github/GNS3/gns3-server)
+
+This is the GNS3 server repository.
+
+The GNS3 server manages emulators such as Dynamips, VirtualBox or
+Qemu/KVM. Clients like the [GNS3 GUI](https://github.com/GNS3/gns3-gui/)
+and the [GNS3 Web UI](https://github.com/GNS3/gns3-web-ui) control the
+server using an HTTP REST API.
+
+Software dependencies
+---------------------
+
+In addition of Python dependencies listed in a section below, other
+software may be required, recommended or optional.
+
+-   [uBridge](https://github.com/GNS3/ubridge/) is required, it
+    interconnects the nodes.
+-   [Dynamips](https://github.com/GNS3/dynamips/) is required for
+    running IOS routers (using real IOS images) as well as the internal
+    switches and hubs.
+-   [VPCS](https://github.com/GNS3/vpcs/) is recommended, it is a
+    builtin node simulating a very simple computer to perform
+    connectitivy tests using ping, traceroute etc.
+-   Qemu is strongly recommended on Linux, as most node types are based
+    on Qemu, for example Cisco IOSv and Arista vEOS.
+-   libvirt is recommended (Linux only), as it\'s needed for the NAT
+    cloud.
+-   Docker is optional (Linux only), some nodes are based on Docker.
+-   mtools is recommended to support data transfer to/from QEMU VMs
+    using virtual disks.
+-   i386-libraries of libc and libcrypto are optional (Linux only), they
+    are only needed to run IOU based nodes.
+
+### Docker support
+
+Docker support needs the script program (bsdutils or
+util-linux package), when running a docker VM and a static
+busybox during installation (python3 setup.py install / pip3 install /
+package creation).
+
+Branches
+--------
+
+### master
+
+master is the next stable release, you can test it in your day to day
+activities. Bug fixes or small improvements pull requests go here.
+
+### 2.x (2.3 for example)
+
+Next major release
+
+*Never* use this branch for production. Pull requests for major new
+features go here.
+
+Linux
+-----
+
+GNS3 is perhaps packaged for your distribution:
+
+-   Gentoo: <https://packages.gentoo.org/package/net-misc/gns3-server>
+-   Alpine:
+    <https://pkgs.alpinelinux.org/package/v3.10/community/x86_64/gns3-server>
+-   NixOS:
+    <https://search.nixos.org/packages?channel=21.11&from=0&size=50&sort=relevance&type=packages&query=gns3-server>
+
+Linux (Debian based)
+--------------------
+
+The following instructions have been tested with Ubuntu and Mint. You
+must be connected to the Internet in order to install the dependencies.
+
+Dependencies:
+
+-   Python 3.6, setuptools and the ones listed
+    [here](https://github.com/GNS3/gns3-server/blob/master/requirements.txt)
+
+The following commands will install some of these dependencies:
+
+``` {.bash}
+sudo apt-get install python3-setuptools
+```
+
+Finally, these commands will install the server as well as the rest of
+the dependencies:
+
+``` {.bash}
+cd gns3-server-master
+sudo python3 setup.py install
+gns3server
+```
+
+To run tests use:
+
+``` {.bash}
+py.test -v
+```
+
+### Docker container
+
+For development, you can run the GNS3 server in a container
+
+``` {.bash}
+bash scripts/docker_dev_server.sh
+```
+
+### Run as daemon (Unix only)
+
+You will find init sample scripts for various systems inside the init
+directory.
+
+Useful options:
+
+-   `--daemon`: start process as a daemon
+-   `--log logfile`: store output in a logfile
+-   `--pid pidfile`: store the pid of the running process in a file and
+    prevent double execution
+
+All init scripts require the creation of a GNS3 user. You can change it
+to another user.
+
+``` {.bash}
+sudo adduser gns3
+```
+
+upstart
+-------
+
+For ubuntu < 15.04
+
+You need to copy init/gns3.conf.upstart to /etc/init/gns3.conf
+
+``` {.bash}
+sudo chown root /etc/init/gns3.conf
+sudo service gns3 start
+```
+
+systemd
+-------
+
+You need to copy init/gns3.service.systemd to
+/lib/systemd/system/gns3.service
+
+``` {.bash}
+sudo chown root /lib/systemd/system/gns3.service
+sudo systemctl start gns3
+```
+
+Windows
+-------
+
+Please use our [all-in-one
+installer](https://community.gns3.com/software/download) to install the
+stable build.
+
+If you install via source you need to first install:
+
+-   Python (3.3 or above) - <https://www.python.org/downloads/windows/>
+-   Pywin32 - <https://sourceforge.net/projects/pywin32/>
+
+Then you can call
+
+``` {.bash}
+python setup.py install
+```
+
+to install the remaining dependencies.
+
+To run the tests, you also need to call
+
+``` {.bash}
+pip install pytest pytest-capturelog
+```
+
+before actually running the tests with
+
+``` {.bash}
+python setup.py test
+```
+
+or with
+
+``` {.bash}
+py.test -v
+```
+
+Mac OS X
+--------
+
+Please use our DMG package for a simple installation.
+
+If you want to test the current git version or contribute to the
+project, you can follow these instructions with virtualenvwrapper:
+<http://virtualenvwrapper.readthedocs.org/> and homebrew:
+<http://brew.sh/>.
+
+``` {.bash}
+brew install python3
+mkvirtualenv gns3-server --python=/usr/local/bin/python3.5
+python3 setup.py install
+gns3server
+```
+
+SSL
+---
+
+If you want enable SSL support on GNS3 you can generate a self signed
+certificate:
+
+``` {.bash}
+bash gns3server/cert_utils/create_cert.sh
+```
+
+This command will put the files in \~/.config/GNS3/ssl
+
+After you can start the server in SSL mode with:
+
+``` {.bash}
+python gns3server/main.py --certfile ~/.config/GNS3/ssl/server.cert --certkey ~/.config/GNS3/ssl/server.key --ssl
+```
+
+Or in your gns3\_server.conf by adding in the Server section:
+
+``` {.ini}
+[Server]
+certfile=/Users/noplay/.config/GNS3/ssl/server.cert
+certkey=/Users/noplay/.config/GNS3/ssl/server.key
+ssl=True
+```
+
+### Running tests
+
+Just run:
+
+``` {.bash}
+py.test -vv
+```
+
+If you want test coverage:
+
+``` {.bash}
+py.test --cov-report term-missing --cov=gns3server
+```
+
+Security issues
+---------------
+
+Please contact us using contact form available here:
+<http://docs.gns3.com/1ON9JBXSeR7Nt2-Qum2o3ZX0GU86BZwlmNSUgvmqNWGY/index.html>
diff --git a/README.rst b/README.rst
deleted file mode 100644
index 11f2cab1..00000000
--- a/README.rst
+++ /dev/null
@@ -1,241 +0,0 @@
-GNS3-server
-===========
-
-.. image:: https://github.com/GNS3/gns3-server/workflows/testing/badge.svg
-    :target: https://github.com/GNS3/gns3-server/actions?query=workflow%3Atesting
-
-.. image:: https://img.shields.io/pypi/v/gns3-server.svg
-    :target: https://pypi.python.org/pypi/gns3-server
-
-.. image:: https://snyk.io/test/github/GNS3/gns3-server/badge.svg
-    :target: https://snyk.io/test/github/GNS3/gns3-server
-
-This is the GNS3 server repository.
-
-The GNS3 server manages emulators such as Dynamips, VirtualBox or Qemu/KVM.
-Clients like the `GNS3 GUI <https://github.com/GNS3/gns3-gui/>`_ and the `GNS3 Web UI <https://github.com/GNS3/gns3-web-ui>`_ control the server using a HTTP REST API.
-
-Software dependencies
----------------------
-
-In addition of Python dependencies listed in a section below, other software may be required, recommended or optional.
-
-* `uBridge <https://github.com/GNS3/ubridge/>`_ is required, it interconnects the nodes.
-* `Dynamips <https://github.com/GNS3/dynamips/>`_ is required for running IOS routers (using real IOS images) as well as the internal switches and hubs.
-* `VPCS <https://github.com/GNS3/vpcs/>`_ is recommended, it is a builtin node simulating a very simple computer to perform connectitivy tests using ping, traceroute etc.
-* Qemu is strongly recommended on Linux, as most node types are based on Qemu, for example Cisco IOSv and Arista vEOS.
-* libvirt is recommended (Linux only), as it's needed for the NAT cloud.
-* Docker is optional (Linux only), some nodes are based on Docker.
-* mtools is recommended to support data transfer to/from QEMU VMs using virtual disks.
-* i386-libraries of libc and libcrypto are optional (Linux only), they are only needed to run IOU based nodes.
-
-Docker support
-**************
-
-Docker support needs the script program (`bsdutils` or `util-linux` package), when running a docker VM and a static busybox during installation (python3 setup.py install / pip3 install / package creation).
-
-Branches
---------
-
-master
-******
-master is the next stable release, you can test it in your day to day activities.
-Bug fixes or small improvements pull requests go here.
-
-2.x (2.3 for example)
-*********************
-Next major release
-
-*Never* use this branch for production. Pull requests for major new features go here.
-
-Linux
------
-
-GNS3 is perhaps packaged for your distribution:
-
-* Gentoo: https://packages.gentoo.org/package/net-misc/gns3-server
-* Alpine: https://pkgs.alpinelinux.org/package/v3.10/community/x86_64/gns3-server
-* NixOS: https://search.nixos.org/packages?channel=21.11&from=0&size=50&sort=relevance&type=packages&query=gns3-server
-
-
-Linux (Debian based)
---------------------
-
-The following instructions have been tested with Ubuntu and Mint.
-You must be connected to the Internet in order to install the dependencies.
-
-Dependencies:
-
-- Python 3.6, setuptools and the ones listed `here <https://github.com/GNS3/gns3-server/blob/master/requirements.txt>`_
-
-The following commands will install some of these dependencies:
-
-.. code:: bash
-
-   sudo apt-get install python3-setuptools
-
-Finally these commands will install the server as well as the rest of the dependencies:
-
-.. code:: bash
-
-   cd gns3-server-master
-   sudo python3 setup.py install
-   gns3server
-
-To run tests use:
-
-.. code:: bash
-
-   py.test -v
-
-
-Docker container
-****************
-
-For development you can run the GNS3 server in a container
-
-.. code:: bash
-
-    bash scripts/docker_dev_server.sh
-
-
-Run as daemon (Unix only)
-**************************
-
-You will find init sample scripts for various systems
-inside the init directory.
-
-Usefull options:
-
-* --daemon: start process as a daemon
-* --log logfile: store output in a logfile
-* --pid pidfile: store the pid of the running process in a file and prevent double execution
-
-All init scripts require the creation of a GNS3 user. You can change it to another user.
-
-.. code:: bash
-
-    sudo adduser gns3
-
-upstart
--------
-
-For ubuntu < 15.04
-
-You need to copy init/gns3.conf.upstart to /etc/init/gns3.conf
-
-.. code:: bash
-
-    sudo chown root /etc/init/gns3.conf
-    sudo service gns3 start
-
-
-systemd
--------
-
-You need to copy init/gns3.service.systemd to /lib/systemd/system/gns3.service
-
-.. code:: bash
-
-    sudo chown root /lib/systemd/system/gns3.service
-    sudo systemctl start gns3
-
-Windows
--------
-
-
-Please use our `all-in-one installer <https://community.gns3.com/software/download>`_ to install the stable build.
-
-If you install via source you need to first install:
-
-- Python (3.3 or above) - https://www.python.org/downloads/windows/
-- Pywin32 - https://sourceforge.net/projects/pywin32/
-
-Then you can call
-
-.. code:: bash
-
-    python setup.py install
-
-to install the remaining dependencies.
-
-To run the tests, you also need to call
-
-.. code:: bash
-
-   pip install pytest pytest-capturelog
-
-before actually running the tests with
-
-.. code:: bash
-
-   python setup.py test
-
-or with
-
-.. code:: bash
-
-   py.test -v
-
-Mac OS X
---------
-
-Please use our DMG package for a simple installation.
-
-If you want to test the current git version or contribute to the project,
-you can follow these instructions with virtualenwrapper: http://virtualenvwrapper.readthedocs.org/
-and homebrew: http://brew.sh/.
-
-.. code:: bash
-
-   brew install python3
-   mkvirtualenv gns3-server --python=/usr/local/bin/python3.5
-   python3 setup.py install
-   gns3server
-
-SSL
----
-
-If you want enable SSL support on GNS3 you can generate a self signed certificate:
-
-.. code:: bash
-
-    bash gns3server/cert_utils/create_cert.sh
-
-This command will put the files in ~/.config/GNS3/ssl
-
-After you can start the server in SSL mode with:
-
-.. code:: bash
-
-    python gns3server/main.py --certfile ~/.config/GNS3/ssl/server.cert --certkey ~/.config/GNS3/ssl/server.key --ssl
-
-
-Or in your gns3_server.conf by adding in the Server section:
-
-.. code:: ini
-    
-    [Server]
-    certfile=/Users/noplay/.config/GNS3/ssl/server.cert
-    certkey=/Users/noplay/.config/GNS3/ssl/server.key
-    ssl=True
-
-Running tests
-*************
-
-Just run:
-
-.. code:: bash
-
-    py.test -vv
-
-If you want test coverage:
-
-.. code:: bash
-
-    py.test --cov-report term-missing --cov=gns3server
-
-Security issues
-----------------
-Please contact us using contact form available here:
-http://docs.gns3.com/1ON9JBXSeR7Nt2-Qum2o3ZX0GU86BZwlmNSUgvmqNWGY/index.html
diff --git a/setup.py b/setup.py
index 9b0a8655..9d112d58 100644
--- a/setup.py
+++ b/setup.py
@@ -75,7 +75,7 @@ setup(
     tests_require=["pytest", "pytest-capturelog", "pytest-aiohttp"],
     cmdclass={"test": PyTest},
     description="GNS3 server",
-    long_description=open("README.rst", "r").read(),
+    long_description=open("README.md", "r").read(),
     install_requires=dependencies,
     entry_points={
         "console_scripts": [