Updated README.rst. Added file for DEVELOPMENT instructions.
This commit is contained in:
parent
6a118eefb2
commit
70bcf731b7
@ -11,6 +11,7 @@ python:
|
|||||||
install:
|
install:
|
||||||
- "pip install --upgrade --requirement requirements.txt"
|
- "pip install --upgrade --requirement requirements.txt"
|
||||||
- "npm install"
|
- "npm install"
|
||||||
|
- "node_modules/.bin/gulp --production"
|
||||||
script:
|
script:
|
||||||
- "flake8 openslides tests"
|
- "flake8 openslides tests"
|
||||||
- "isort --check-only --recursive openslides tests"
|
- "isort --check-only --recursive openslides tests"
|
||||||
|
@ -2,12 +2,16 @@
|
|||||||
CHANGELOG of OpenSlides
|
CHANGELOG of OpenSlides
|
||||||
=========================
|
=========================
|
||||||
|
|
||||||
http://openslides.org
|
https://openslides.org/
|
||||||
|
|
||||||
Version 2.0.0 (unreleased)
|
Version 2.0 (unreleased)
|
||||||
==========================
|
==========================
|
||||||
[https://github.com/OpenSlides/OpenSlides/milestones/2.0]
|
[https://github.com/OpenSlides/OpenSlides/milestones/2.0]
|
||||||
|
|
||||||
|
OpenSlides 2.0 is essentially not compatible to OpenSlides 1.7. E. g.
|
||||||
|
customized templates, databases and plugins can not be reused without
|
||||||
|
adaption.
|
||||||
|
|
||||||
Agenda:
|
Agenda:
|
||||||
- Updated the tests and changed internal parts of method of the agenda model.
|
- Updated the tests and changed internal parts of method of the agenda model.
|
||||||
- Changed API of related objects. All assignments, motions and custom slides
|
- Changed API of related objects. All assignments, motions and custom slides
|
||||||
|
98
DEVELOPMENT.rst
Normal file
98
DEVELOPMENT.rst
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
========================
|
||||||
|
OpenSlides Development
|
||||||
|
========================
|
||||||
|
|
||||||
|
If you want to contribute to OpenSlides, have a look at `OpenSlides website
|
||||||
|
<https://openslides.org/>`_ and write us an email.
|
||||||
|
|
||||||
|
|
||||||
|
Installation and start of the development version
|
||||||
|
=================================================
|
||||||
|
|
||||||
|
1. Installation on GNU/Linux or Mac OS X
|
||||||
|
----------------------------------------
|
||||||
|
|
||||||
|
a. Check requirements
|
||||||
|
'''''''''''''''''''''
|
||||||
|
|
||||||
|
Make sure that you have installed `Python (>= 3.4)
|
||||||
|
<https://www.python.org/>`_, `Node.js (>=0.10) <https://nodejs.org/>`_ and
|
||||||
|
`Git <http://git-scm.com/>`_ on your system. See also step 1. a. in the
|
||||||
|
installation section in the `README.rst
|
||||||
|
<https://github.com/OpenSlides/OpenSlides/blob/master/README.rst>`_.
|
||||||
|
|
||||||
|
|
||||||
|
b. Get OpenSlides source code
|
||||||
|
'''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Clone current master version from `OpenSlides GitHub repository
|
||||||
|
<https://github.com/OpenSlides/OpenSlides/>`_::
|
||||||
|
|
||||||
|
$ git clone https://github.com/OpenSlides/OpenSlides.git
|
||||||
|
$ cd OpenSlides
|
||||||
|
|
||||||
|
|
||||||
|
c. Setup a virtual Python environment (optional)
|
||||||
|
''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
See step 1. b. in the installation section in the `README.rst
|
||||||
|
<https://github.com/OpenSlides/OpenSlides/blob/master/README.rst>`_.
|
||||||
|
|
||||||
|
|
||||||
|
d. Install dependencies
|
||||||
|
'''''''''''''''''''''''
|
||||||
|
|
||||||
|
Install all required Python packages::
|
||||||
|
|
||||||
|
$ pip install -r requirements.txt
|
||||||
|
|
||||||
|
Install all NPM and Bower packages and run several JavaScript build tasks::
|
||||||
|
|
||||||
|
$ npm install
|
||||||
|
|
||||||
|
Optional: To enhance performance run Gulp in production mode::
|
||||||
|
|
||||||
|
$ node_modules/.bin/gulp --production
|
||||||
|
|
||||||
|
|
||||||
|
e. Start OpenSlides
|
||||||
|
'''''''''''''''''''
|
||||||
|
|
||||||
|
Use the command-line interface::
|
||||||
|
|
||||||
|
$ python manage.py start
|
||||||
|
|
||||||
|
See step 1. d. in the installation section in the `README.rst
|
||||||
|
<https://github.com/OpenSlides/OpenSlides/blob/master/README.rst>`_.
|
||||||
|
|
||||||
|
To get help on the command-line options run::
|
||||||
|
|
||||||
|
$ python manage.py --help
|
||||||
|
|
||||||
|
Later you might want to restart the server with the following command to
|
||||||
|
avoid opening new browser windows::
|
||||||
|
|
||||||
|
$ python manage.py runserver
|
||||||
|
|
||||||
|
|
||||||
|
2. Installation on Windows
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
Follow the instructions above (Installation on GNU/Linux or Mac OS X) but
|
||||||
|
care of the following variations.
|
||||||
|
|
||||||
|
To get Python download and run the latest `Python 3.5 32-bit (x86)
|
||||||
|
executable installer <https://www.python.org/downloads/windows/>`_. Note
|
||||||
|
that the 32-bit installer is required even on a 64-bit Windows system. If
|
||||||
|
you use the 64-bit installer, step d. of the instruction will fail unless
|
||||||
|
you installed the package Reportlab manually.
|
||||||
|
|
||||||
|
You also have to install Setuptools. Download and run (via double click)
|
||||||
|
the last `install script ez_setup.py for Setuptools
|
||||||
|
<https://pypi.python.org/pypi/setuptools/#installation-instructions>`_.
|
||||||
|
|
||||||
|
To setup and activate the virtual environment in step c. use::
|
||||||
|
|
||||||
|
> .virtualenv\Scripts\activate.bat
|
||||||
|
|
||||||
|
All other commands are the same as for GNU/Linux and Mac OS X.
|
251
README.rst
251
README.rst
@ -2,121 +2,82 @@
|
|||||||
OpenSlides
|
OpenSlides
|
||||||
============
|
============
|
||||||
|
|
||||||
I. What is OpenSlides?
|
What is OpenSlides?
|
||||||
======================
|
===================
|
||||||
|
|
||||||
OpenSlides is a free web-based presentation and assembly system for
|
OpenSlides is a free, web based presentation and assembly system for
|
||||||
displaying and controlling of agenda, motions and elections of an assembly.
|
managing and projecting agenda, motions and elections of an assembly. See
|
||||||
See http://openslides.org/ for more information.
|
https://openslides.org/ for more information.
|
||||||
|
|
||||||
|
|
||||||
II. Requirements
|
Requirements
|
||||||
================
|
============
|
||||||
|
|
||||||
OpenSlides runs everywhere where Python is running (for example on
|
OpenSlides runs everywhere where Python is running (for example on
|
||||||
GNU/Linux, Mac or Windows (XP or newer)). On each client you need only a
|
GNU/Linux, Mac or Windows (XP or newer)). On each client you need only a
|
||||||
current version of a webbrowser.
|
current version of a webbrowser.
|
||||||
|
|
||||||
|
|
||||||
III. Installation
|
Installation
|
||||||
=================
|
============
|
||||||
|
|
||||||
Installation on GNU/Linux or Mac OS X
|
1. Installation on GNU/Linux or Mac OS X
|
||||||
-------------------------------------
|
----------------------------------------
|
||||||
|
|
||||||
1. Check requirements
|
a. Check requirements
|
||||||
|
'''''''''''''''''''''
|
||||||
|
|
||||||
Make sure that you have installed Python Programming Language 3 (>= 3.4)
|
Make sure that you have installed `Python (>= 3.4)
|
||||||
on your system. You will also need the Python development headers.
|
<https://www.python.org/>`_ on your system. You also need the Python
|
||||||
|
development headers, the Independent JPEG Group's JPEG runtime library
|
||||||
|
(dependency package) and the compression library (development).
|
||||||
|
|
||||||
For example for Ubuntu run::
|
\E. g. for Ubuntu run::
|
||||||
|
|
||||||
$ sudo apt-get install python3-dev
|
$ sudo apt-get install python3-dev libjpg-dev zlib1g-dev
|
||||||
|
|
||||||
2. Setup a virtual Python environment using the virtual environment (venv)
|
|
||||||
package for Python (optional)
|
|
||||||
|
|
||||||
You can setup a virtual Python environment to install OpenSlides as
|
b. Setup a virtual Python environment (optional)
|
||||||
non-root user.
|
''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
Note: For Ubuntu 14.04 you have to install the pyvenv binary package. Run::
|
You can setup a virtual Python environment using the virtual environment
|
||||||
|
(venv) package for Python to install OpenSlides as non-root user.
|
||||||
|
|
||||||
$ sudo apt-get install python3.4-venv
|
*Note: For Ubuntu 14.04 you have to install the pyvenv binary package*
|
||||||
|
``python3.4-venv`` *before.*
|
||||||
|
|
||||||
Create your OpenSlides directory, change to it, setup and activate the
|
Create your OpenSlides directory, change to it, setup and activate the
|
||||||
virtual environment::
|
virtual environment::
|
||||||
|
|
||||||
$ mkdir OpenSlides
|
$ mkdir OpenSlides
|
||||||
$ cd OpenSlides
|
$ cd OpenSlides
|
||||||
$ python3 -m venv .virtualenv
|
$ python3 -m venv .virtualenv
|
||||||
$ source .virtualenv/bin/activate
|
$ source .virtualenv/bin/activate
|
||||||
|
|
||||||
3. Install OpenSlides
|
|
||||||
|
|
||||||
You can use the package from the `OpenSlides Website
|
c. Install OpenSlides
|
||||||
<http://openslides.org/download/>`_. Download latest OpenSlides release
|
'''''''''''''''''''''
|
||||||
as compressed tar archive and run::
|
|
||||||
|
To install OpenSlides just run::
|
||||||
|
|
||||||
|
$ pip install openslides
|
||||||
|
|
||||||
|
You can also use the package from the `OpenSlides website
|
||||||
|
<https://openslides.org/>`_. Download latest OpenSlides release as
|
||||||
|
compressed tar archive and run::
|
||||||
|
|
||||||
$ pip install openslides-x.x.tar.gz
|
$ pip install openslides-x.x.tar.gz
|
||||||
|
|
||||||
OpenSlides will install all required Python packages (see
|
This will install all required Python packages (see
|
||||||
requirements_production.txt).
|
``requirements_production.txt``).
|
||||||
|
|
||||||
|
|
||||||
Installation on Windows
|
d. Start OpenSlides
|
||||||
-----------------------
|
'''''''''''''''''''
|
||||||
|
|
||||||
*Note: There is a portable version of OpenSlides for Windows which does not
|
To start OpenSlides simply run::
|
||||||
require any install steps. If there is a reason that you can not use the
|
|
||||||
portable version you should observe the following install steps.*
|
|
||||||
|
|
||||||
1. Check requirements
|
$ openslides
|
||||||
|
|
||||||
Make sure that you have installed Python Programming Language 3 (>= 3.4)
|
|
||||||
and Setuptools on your system.
|
|
||||||
|
|
||||||
a. Download and run the latest `Python 3.5 32-bit (x86) executable
|
|
||||||
installer <https://www.python.org/downloads/windows/>`_. Note that
|
|
||||||
the 32-bit installer is required even on a 64-bit Windows system. If
|
|
||||||
you use the 64-bit installer, step 3 of this instruction will fail
|
|
||||||
unless you installed the package Reportlab manually.
|
|
||||||
|
|
||||||
b. Download and run (via double click) the last `install script
|
|
||||||
ez_setup.py for Setuptools
|
|
||||||
<https://pypi.python.org/pypi/setuptools/#installation-instructions>`_.
|
|
||||||
|
|
||||||
2. Setup a virtual Python environment using the virtual environment (venv)
|
|
||||||
package for Python (optional)
|
|
||||||
|
|
||||||
You can setup a virtual Python environment to install OpenSlides as
|
|
||||||
non-root user.
|
|
||||||
|
|
||||||
Create your OpenSlides directory, change to it, setup and activate the
|
|
||||||
virtual environment::
|
|
||||||
|
|
||||||
> md OpenSlides
|
|
||||||
> cd OpenSlides
|
|
||||||
> python -m venv .virtualenv
|
|
||||||
> .virtualenv\Scripts\activate.bat
|
|
||||||
|
|
||||||
3. Install OpenSlides
|
|
||||||
|
|
||||||
You can use the package from the `OpenSlides Website
|
|
||||||
<http://openslides.org/download/>`_. Download latest OpenSlides release
|
|
||||||
as compressed tar archive and run::
|
|
||||||
|
|
||||||
> pip install openslides-x.x.tar.gz
|
|
||||||
|
|
||||||
OpenSlides will install all required Python packages (see
|
|
||||||
requirements_production.txt).
|
|
||||||
|
|
||||||
|
|
||||||
IV. Start
|
|
||||||
=========
|
|
||||||
|
|
||||||
To start OpenSlides simply run on command line::
|
|
||||||
|
|
||||||
openslides
|
|
||||||
|
|
||||||
If you run this command the first time, a new database and the admin
|
If you run this command the first time, a new database and the admin
|
||||||
account (Username: `admin`, Password: `admin`) will be created. Please
|
account (Username: `admin`, Password: `admin`) will be created. Please
|
||||||
@ -128,107 +89,41 @@ try to listen on the local ip address on port 8000. That means that the
|
|||||||
server will be available to everyone on your local network (at least for
|
server will be available to everyone on your local network (at least for
|
||||||
commonly used network configurations).
|
commonly used network configurations).
|
||||||
|
|
||||||
If you use a virtual environment (see install instructions, step 2), do not
|
If you use a virtual environment (see step b.), do not forget to activate
|
||||||
forget to activate the environment before restart after you have closed the
|
the environment before restart after you have closed the terminal::
|
||||||
terminal.
|
|
||||||
|
|
||||||
For Unix and Mac OS X run::
|
|
||||||
|
|
||||||
$ source .virtualenv/bin/activate
|
$ source .virtualenv/bin/activate
|
||||||
|
|
||||||
For Windows run::
|
|
||||||
|
|
||||||
> .virtualenv\Scripts\activate
|
|
||||||
|
|
||||||
To get help on the command line options run::
|
To get help on the command line options run::
|
||||||
|
|
||||||
openslides --help
|
$ openslides --help
|
||||||
|
|
||||||
You can store settings, database and other personal files in a local
|
You can store settings, database and other personal files in a local
|
||||||
subdirectory and use these files e. g. if you want to run multiple
|
subdirectory and use these files e. g. if you want to run multiple
|
||||||
instances of OpenSlides::
|
instances of OpenSlides::
|
||||||
|
|
||||||
openslides --local-installation
|
$ openslides --local-installation
|
||||||
|
|
||||||
|
|
||||||
V. Development
|
2. Installation on Windows
|
||||||
==============
|
--------------------------
|
||||||
|
|
||||||
If you want to join us developing OpenSlides, have a look at `GitHub
|
Download the latest portable version of OpenSlides for Windows from
|
||||||
<https://github.com/OpenSlides/OpenSlides/>`_ or write an email to our
|
`OpenSlides website <https://openslides.org/>`_ which does not require any
|
||||||
`mailing list <http://openslides.org/contact/>`_.
|
install steps. Simply unzip the downloaded file and run ``openslides.exe``.
|
||||||
|
|
||||||
|
|
||||||
Installation and start of the development version
|
Development
|
||||||
-------------------------------------------------
|
===========
|
||||||
|
|
||||||
1. Check requirements
|
If you want to contribute to OpenSlides, have a look at `OpenSlides website
|
||||||
|
<https://openslides.org/>`_ and write us an email. There is also an
|
||||||
You need to have `Python 3 (>=3.4) <https://www.python.org/>`_, `Node.js
|
`instruction to install the development version
|
||||||
(>=0.10) <https://nodejs.org/>`_ and `Git <http://git-scm.com/>`_
|
<https://github.com/OpenSlides/OpenSlides/blob/master/DEVELOPMENT.rst>`_.
|
||||||
installed. See also step 1 in the correspondent instruction in section
|
|
||||||
III.
|
|
||||||
|
|
||||||
2. Get OpenSlides source code
|
|
||||||
|
|
||||||
Clone current master version from `OpenSlides' GitHub repository
|
|
||||||
<https://github.com/OpenSlides/OpenSlides/>`_::
|
|
||||||
|
|
||||||
cd ... # Go to a nice place in your filesystem.
|
|
||||||
git clone https://github.com/OpenSlides/OpenSlides.git
|
|
||||||
cd OpenSlides
|
|
||||||
|
|
||||||
3. Setup a virtual Python environment using the virtual environment (venv)
|
|
||||||
package for Python (optional)
|
|
||||||
|
|
||||||
See step 2 in the correspondent instruction in section III.
|
|
||||||
|
|
||||||
4. Install all required Python packages::
|
|
||||||
|
|
||||||
$ pip install -r requirements.txt
|
|
||||||
|
|
||||||
5. Install all npm and bower packages and concat and copy all third party
|
|
||||||
JavaScript and Cascading Style Sheets libraries
|
|
||||||
|
|
||||||
For Unix and Mac OS X run::
|
|
||||||
|
|
||||||
$ npm install
|
|
||||||
|
|
||||||
For Windows run::
|
|
||||||
|
|
||||||
> npm install
|
|
||||||
|
|
||||||
Later you might want to rerun gulp so that the third party JavaScript
|
|
||||||
and Cascading Style Sheets libraries are not minified.
|
|
||||||
|
|
||||||
To do this for Unix and Mac OS X run::
|
|
||||||
|
|
||||||
$ node_modules/.bin/gulp
|
|
||||||
|
|
||||||
To do this for Windows run::
|
|
||||||
|
|
||||||
> node_modules\.bin\gulp
|
|
||||||
|
|
||||||
6. Start OpenSlides
|
|
||||||
|
|
||||||
Use the command-line interface::
|
|
||||||
|
|
||||||
python manage.py start
|
|
||||||
|
|
||||||
This will create a new directoy with settings.py and database.
|
|
||||||
|
|
||||||
To get help on the command-line options run::
|
|
||||||
|
|
||||||
python manage.py --help
|
|
||||||
|
|
||||||
Later you might want to start the server with the following command to
|
|
||||||
avoid opening new browser windows::
|
|
||||||
|
|
||||||
python manage.py runserver
|
|
||||||
|
|
||||||
|
|
||||||
VI. Used software
|
Used software
|
||||||
=================
|
=============
|
||||||
|
|
||||||
OpenSlides uses the following projects or parts of them:
|
OpenSlides uses the following projects or parts of them:
|
||||||
|
|
||||||
@ -240,17 +135,19 @@ OpenSlides uses the following projects or parts of them:
|
|||||||
|
|
||||||
* `Django <https://www.djangoproject.com>`_, License: BSD
|
* `Django <https://www.djangoproject.com>`_, License: BSD
|
||||||
|
|
||||||
* `Django REST framework <http://www.django-rest-framework.org>`_, License: BSD
|
* `Django REST framework <http://www.django-rest-framework.org>`_, License:
|
||||||
|
BSD
|
||||||
|
|
||||||
* `html5-lib <https://github.com/html5lib/html5lib-python>`_, License: MIT
|
* `html5lib <https://github.com/html5lib/html5lib-python>`_, License: MIT
|
||||||
|
|
||||||
* `jsonfield <https://github.com/bradjasper/django-jsonfield/>`_, License: MIT
|
* `django-jsonfield <https://github.com/bradjasper/django-jsonfield/>`_,
|
||||||
|
License: MIT
|
||||||
|
|
||||||
* `natsort <https://github.com/SethMMorton/natsort/>`_, License: MIT
|
* `natsort <https://pypi.python.org/pypi/natsort>`_, License: MIT
|
||||||
|
|
||||||
* `PyPDF2 <http://mstamy2.github.io/PyPDF2/>`_, License: BSD
|
* `PyPDF2 <http://mstamy2.github.io/PyPDF2/>`_, License: BSD
|
||||||
|
|
||||||
* `ReportLab <http://www.reportlab.com/software/opensource/rl-toolkit/>`_,
|
* `ReportLab <http://www.reportlab.com/opensource/>`_,
|
||||||
License: BSD
|
License: BSD
|
||||||
|
|
||||||
* `roman <https://pypi.python.org/pypi/roman>`_, License: Python 2.1.1
|
* `roman <https://pypi.python.org/pypi/roman>`_, License: Python 2.1.1
|
||||||
@ -258,6 +155,8 @@ OpenSlides uses the following projects or parts of them:
|
|||||||
* `setuptools <https://pypi.python.org/pypi/setuptools>`_,
|
* `setuptools <https://pypi.python.org/pypi/setuptools>`_,
|
||||||
License: Python Software Foundation License
|
License: Python Software Foundation License
|
||||||
|
|
||||||
|
* `Six <http://pythonhosted.org/six/>`_, License: MIT
|
||||||
|
|
||||||
* `sockjs-tornado <https://github.com/mrjoes/sockjs-tornado>`_,
|
* `sockjs-tornado <https://github.com/mrjoes/sockjs-tornado>`_,
|
||||||
License: MIT
|
License: MIT
|
||||||
|
|
||||||
@ -266,7 +165,7 @@ OpenSlides uses the following projects or parts of them:
|
|||||||
|
|
||||||
* `Whoosh <https://bitbucket.org/mchaput/whoosh/wiki/Home>`_, License: BSD
|
* `Whoosh <https://bitbucket.org/mchaput/whoosh/wiki/Home>`_, License: BSD
|
||||||
|
|
||||||
* Several JavaScript packages (see bower.json)
|
* Several JavaScript packages (see ``bower.json``)
|
||||||
|
|
||||||
* `angular <http://angularjs.org>`_, License: MIT
|
* `angular <http://angularjs.org>`_, License: MIT
|
||||||
* `angular-animate <http://angularjs.org>`_, License: MIT
|
* `angular-animate <http://angularjs.org>`_, License: MIT
|
||||||
@ -306,9 +205,9 @@ OpenSlides uses the following projects or parts of them:
|
|||||||
* `tinymce-i18n <https://github.com/OpenSlides/tinymce-i18n>`_, License: LGPL-2.1
|
* `tinymce-i18n <https://github.com/OpenSlides/tinymce-i18n>`_, License: LGPL-2.1
|
||||||
|
|
||||||
|
|
||||||
VII. License and authors
|
License and authors
|
||||||
========================
|
===================
|
||||||
|
|
||||||
OpenSlides is Free/Libre Open Source Software (FLOSS), and distributed under
|
OpenSlides is Free/Libre Open Source Software (FLOSS), and distributed
|
||||||
the MIT License, see LICENSE file. The authors of OpenSlides are mentioned
|
under the MIT License, see ``LICENSE`` file. The authors of OpenSlides are
|
||||||
in the AUTHORS file.
|
mentioned in the ``AUTHORS`` file.
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
"name": "OpenSlides",
|
"name": "OpenSlides",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"prepublish": "bower install && gulp --production"
|
"prepublish": "bower install && gulp"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"bower": "~1.7.2",
|
"bower": "~1.7.2",
|
||||||
|
Loading…
Reference in New Issue
Block a user