Update README.md wxPython4
authorEdouard Tisserant <edouard.tisserant@gmail.com>
Wed, 19 Oct 2022 20:53:01 +0200
branchwxPython4
changeset 3635 5107a2712b17
parent 3634 db3ea47b0d0b
child 3636 99b20dff00d5
Update README.md
README.md
--- a/README.md	Tue Oct 11 15:07:14 2022 +0200
+++ b/README.md	Wed Oct 19 20:53:01 2022 +0200
@@ -1,4 +1,6 @@
+<!---
 [![docs](https://readthedocs.org/projects/beremiz/badge/?version=latest)](https://beremiz.readthedocs.io)
+-->
 
 # Beremiz #
 
@@ -15,73 +17,154 @@
 
 See official [Beremiz website](http://www.beremiz.org/) for more information.
 
-## Build on Linux ##
-
-* Prerequisites
-
-  	# Ubuntu/Debian :
-  	sudo apt-get install build-essential bison flex autoconf
-  	sudo apt-get install python2-dev libpython2.7-dev libgtk-3-dev libssl-dev libgl1-mesa-dev libglu1-mesa-dev python-setuptools python-lxml 
-  	
-  	python2 -m pip install wxPython==4.1.1
-  	python2 -m pip install pyro mercurial==5.9.3 nevow matplotlib lxml zeroconf2 cycler autobahn msgpack u-msgpack-python sslpsk posix_spawn future enum34 twisted click opcua pycountry fonttools Brotli python-config
-
-* Prepare
-
-		mkdir ~/Beremiz
-		cd ~/Beremiz
-
-* Get Source Code
-
-		cd ~/Beremiz
-		hg clone https://bitbucket.org/automforge/beremiz
-		hg clone https://bitbucket.org/automforge/matiec
-
-* Build MatIEC compiler
-
-		cd ~/Beremiz/matiec
-		autoreconf -i
-		./configure
-		make
-
-* Build CanFestival (optional)  
-  Only needed for CANopen support. Please read CanFestival manual to choose CAN interface other than 'virtual'.
-
-		cd ~/Beremiz
-		hg clone http://dev.automforge.net/CanFestival-3
-		cd ~/Beremiz/CanFestival-3
-		./configure --can=virtual
-		make
-
-* Build Modbus library (optional)
-  Only needed for Modbus support.
-
-		cd ~/Beremiz
-		hg clone https://bitbucket.org/mjsousa/modbus Modbus
-		cd ~/Beremiz/Modbus
-		make
-
-* Build BACnet (optional)
-  Only needed for BACnet support.
-
-		cd ~/Beremiz
-		svn checkout https://svn.code.sf.net/p/bacnet/code/trunk/bacnet-stack/ BACnet
-		cd BACnet
-		make MAKE_DEFINE='-fPIC' MY_BACNET_DEFINES='-DPRINT_ENABLED=1 -DBACAPP_ALL -DBACFILE -DINTRINSIC_REPORTING -DBACNET_TIME_MASTER -DBACNET_PROPERTY_LISTS=1 -DBACNET_PROTOCOL_REVISION=16' library
-
-
-* Launch Beremiz IDE
-
-		cd ~/Beremiz/beremiz
-		python Beremiz.py
+## Install latest release ##
+
+Windows installer and Snap package for Linux are available in [Github releases](https://github.com/beremiz/beremiz/releases) and [Snapcraft's store](https://snapcraft.io/beremiz)
+
+## Tutorials and examples ##
+
+In IDE, find menu "File>Tutorials and examples" to quickly open examples that should run as-is.
+
+There are more examples in 'tests/projects' and 'exemples' directories.
+
+Some example and test are shown on [Beremiz youtube channel](https://www.youtube.com/channel/UCcE4KYI0p1f6CmSwtzyg-ZA).
+
+## Development with Beremiz ##
+
+Developers are invited to subscribe to [mailing list](https://sourceforge.net/p/beremiz/mailman/beremiz-devel/) (beremiz-devel@lists.sourceforge.net).
+
+The list is moderated and requires subscription before posting.
+
+To subscribe to the mailing list go [here](https://sourceforge.net/p/beremiz/mailman/beremiz-devel/).
+
+Searchable archive using search engine of your choice is available [here](http://beremiz-devel.2374573.n4.nabble.com/).
+
+## Build on Linux (developer setup) ##
+
+### Prerequisites (Ubuntu/Debian) :
+```
+sudo apt-get install build-essential bison flex autoconf
+sudo apt-get install python2-dev libpython2.7-dev libgtk-3-dev libssl-dev libgl1-mesa-dev libglu1-mesa-dev python-setuptools
+
+python2 -m pip install  \
+    future              \
+    matplotlib          \
+    msgpack_python      \
+    u-msgpack-python    \
+    zeroconf2           \
+    enum34              \
+    pyro                \
+    sslpsk              \
+    posix_spawn         \
+    twisted             \
+    nevow               \
+    autobahn            \
+    click               \
+    opcua               \
+    pycountry           \
+    fonttools           \
+    Brotli              \
+    lxml==4.5.0         \
+    wxPython==4.1.1
+
+```
+
+### Prepare build directory
+
+All commands hereafter assume that selected directory to contain all downloaded source code and build results is '~/Beremiz'
+
+```
+mkdir ~/Beremiz
+cd ~/Beremiz
+```
+
+### Get Source Code (Mercurial)
+
+```
+cd ~/Beremiz
+hg clone https://hg.beremiz.org/beremiz
+hg clone https://hg.beremiz.org/matiec
+```
+
+### Get Source Code (Git)
+
+```
+cd ~/Beremiz
+git clone https://github.com/beremiz/beremiz
+git clone https://github.com/beremiz/matiec
+```
+
+### Build MatIEC compiler
+
+```
+cd ~/Beremiz/matiec
+autoreconf -i
+./configure
+make
+```
+
+### Build CanFestival (optional)
+
+Only needed for CANopen support. Please read CanFestival manual to choose CAN interface other than 'virtual'.
+
+```
+cd ~/Beremiz
+hg clone http://hg.beremiz.org/CanFestival-3
+cd ~/Beremiz/CanFestival-3
+./configure --can=virtual
+make
+```
+
+### Build Modbus library (optional)
+
+Only needed for Modbus support.
+
+```
+cd ~/Beremiz
+hg clone https://hg.beremiz.org/Modbus
+cd ~/Beremiz/Modbus
+make
+```
+
+### Build BACnet (optional)
+
+Only needed for BACnet support.
+
+```
+cd ~/Beremiz
+svn checkout https://svn.code.sf.net/p/bacnet/code/trunk/bacnet-stack/ BACnet
+cd BACnet
+make MAKE_DEFINE='-fPIC' MY_BACNET_DEFINES='-DPRINT_ENABLED=1 -DBACAPP_ALL -DBACFILE -DINTRINSIC_REPORTING -DBACNET_TIME_MASTER -DBACNET_PROPERTY_LISTS=1 -DBACNET_PROTOCOL_REVISION=16' library
+```
+
+### Launch Beremiz IDE
+
+```
+cd ~/Beremiz/beremiz
+python Beremiz.py
+```
+
+## Run standalone Beremiz runtime ##
+
+* Start standalone Beremiz service
+
+```
+mkdir ~/beremiz_runtime_workdir
+python Beremiz_service.py -p 61194 -i localhost -x 0 -a 1 ~/beremiz_runtime_workdir
+```
+
+To connect IDE with runtime, enter target location URI in project's settings (project->Config->BeremizRoot/URI_location) pointed to your running Beremiz service in this case :
+
+```
+PYRO://127.0.0.1:61194
+```
+
+If project's URL is 'LOCAL://', then IDE launches on demand a local instance of Beremiz python runtime working on a temporary directory.
 
 ## Build documentation
 
-Source code for Beremiz user manual is stored in
-[doc](tree/default/doc)
-directory in project's source tree.
-It's written in reStructuredText (ReST) and uses Sphinx to build documentation in different formats.
-
+Source code for documentation is stored in [doc](tree/default/doc) directory in project's source tree.
+It's written in reStructuredText (ReST) and uses Sphinx to generate documentation in different formats.
 
 To build documentation you need following packages on Ubuntu/Debian:
 
@@ -121,40 +204,11 @@
 
 Result documentation is stored in 'doc/\_build/latex/Beremiz.pdf'.
 
-## Run standalone Beremiz runtime ##
-
-Runtime implementation can be different on different platforms.
-For example, PLC used Cortex-M most likely would have C-based runtime. Beremiz project contains reference implementation in python, that can be easily run on GNU/Linux, Windows and Mac OS X.
-This section will describe how to run it.
-
-If project's URL is 'LOCAL://', then IDE launches temprorary instance of Beremiz python runtime (Beremiz_service.py) localy as user tries to connect to PLC. This allows to debug programs localy without PLC.
-
-If you want to run Beremiz_service.py as standalone service, then follow these instructions:
-
-* Start standalone Beremiz service
-
-		mkdir ~/beremiz_workdir
-		python Beremiz_service.py -p 61194 -i localhost -x 0 -a 1 ~/beremiz_workdir
-
-* Launch Beremiz IDE
-
-		python Beremiz.py
-
-* Open/Create PLC project in Beremiz IDE.  
-  Enter target location URI in project's settings (project->Config->BeremizRoot/URI_location) pointed to your running Beremiz service (For example, PYRO://127.0.0.1:61194).
-  Save project and connect to running Beremiz service.
-
-## Examples ##
-
-Almost for all functionality exists example in ['tests'](tree/default/tests/projects) and ['exemples'](tree/default/tests/projects) directories.
-
-Most of examples are shown on [Beremiz youtube channel](https://www.youtube.com/channel/UCcE4KYI0p1f6CmSwtzyg-ZA).
-
 ## Documentation ##
 
  * See [Beremiz youtube channel](https://www.youtube.com/channel/UCcE4KYI0p1f6CmSwtzyg-ZA) to get quick information how to use Beremiz IDE.
 
- * [Official user manual](http://beremiz.readthedocs.io/) is built from sources in doc directory.
+ * [Official documentation](http://beremiz.readthedocs.io/) is built from sources in doc directory.
    Documentation does not cover all aspects of Beremiz use yet.
    Contribution are very welcome!
    
@@ -168,12 +222,3 @@
 
  * See official [Beremiz website](http://www.beremiz.org/) for more information.
 
-## Support and development ##
-
-Main community support channel is [mailing list](https://sourceforge.net/p/beremiz/mailman/beremiz-devel/) (beremiz-devel@lists.sourceforge.net).
-
-The list is moderated and requires subscription for posting to it.
-
-To subscribe to the mailing list go [here](https://sourceforge.net/p/beremiz/mailman/beremiz-devel/).
-
-Searchable archive using search engine of your choice is available [here](http://beremiz-devel.2374573.n4.nabble.com/).
\ No newline at end of file