diff options
| author | Simeon Simeonov | 2018-06-30 12:22:35 +0200 |
|---|---|---|
| committer | Simeon Simeonov | 2018-06-30 12:22:35 +0200 |
| commit | 29ea2f46a81c516a08767eafdab9698d5cbd6150 (patch) | |
| tree | 84ce1067a40eda5b5f262b8b1de56e3317a0406d | |
| parent | 63ddf50344cf1e4f2f9b75ce3b0c4db940a3be47 (diff) | |
Documentation cleanups. INSTALL -> INSTALL.md, README -> README.md
| -rw-r--r-- | Changelog | 4 | ||||
| -rw-r--r-- | INSTALL.md (renamed from INSTALL) | 33 | ||||
| -rw-r--r-- | README.md (renamed from README) | 26 | ||||
| -rw-r--r-- | beinc_config_sample.json | 12 | ||||
| -rw-r--r-- | beinc_config_sample.json.readme | 34 |
5 files changed, 30 insertions, 79 deletions
| @@ -1,6 +1,8 @@ | |||
| 1 | v3.0: | 1 | v3.0: |
| 2 | - remove TwistedWeb dependency and write the beinc_server.py in pure Python | 2 | - remove the TwistedWeb dependency and rewrite the beinc_server.py |
| 3 | in pure Python | ||
| 3 | - implement Python >= 3.4.0 support | 4 | - implement Python >= 3.4.0 support |
| 5 | - remove pyosd support | ||
| 4 | 6 | ||
| 5 | v2.0: | 7 | v2.0: |
| 6 | - replace charrypy with TwistedWeb as beinc_server.py backend | 8 | - replace charrypy with TwistedWeb as beinc_server.py backend |
| @@ -1,58 +1,43 @@ | |||
| 1 | Installation Instructions | 1 | ## Installation Instructions |
| 2 | ------------------------- | ||
| 3 | 2 | ||
| 4 | Refer to README for a basic information about the different BEINC components | 3 | Refer to README for a basic information about the different BEINC components |
| 5 | and their software requirements! | 4 | and their software requirements! |
| 6 | 5 | ||
| 7 | 6 | ||
| 8 | Installing the dependencies | 7 | ### Installing the dependencies |
| 9 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| 10 | 8 | ||
| 9 | #### Gentoo GNU/Linux 2014, 2015 | ||
| 11 | 10 | ||
| 12 | Gentoo GNU/Linux 2014, 2015 | 11 | # emerge -va dev-python/pyopenssl dev-python/notify-python |
| 13 | .......................... | ||
| 14 | 12 | ||
| 15 | # emerge -va dev-python/pyopenssl dev-python/twisted-web dev-python/notify-python dev-python/pyosd | ||
| 16 | 13 | ||
| 14 | #### Ubuntu GNU/Linux | ||
| 17 | 15 | ||
| 18 | Ubuntu GNU/Linux | 16 | # apt-get install python-openssl python-notify2 |
| 19 | ................ | ||
| 20 | 17 | ||
| 21 | # apt-get install python-openssl python-twisted-web python-notify2 python-pyosd | ||
| 22 | 18 | ||
| 23 | 19 | #### FreeBSD 10, 11 | |
| 24 | FreeBSD 9, 10 | ||
| 25 | ............. | ||
| 26 | 20 | ||
| 27 | # cd /usr/ports/security/py-openssl | 21 | # cd /usr/ports/security/py-openssl |
| 28 | # make install clean | 22 | # make install clean |
| 29 | 23 | ||
| 30 | # cd /usr/ports/www/py-twistedWeb | ||
| 31 | # make install clean | ||
| 32 | |||
| 33 | # cd /usr/ports/devel/py-notify | 24 | # cd /usr/ports/devel/py-notify |
| 34 | # make install clean | 25 | # make install clean |
| 35 | 26 | ||
| 36 | # cd /usr/ports/misc/py-osd | ||
| 37 | # make install clean | ||
| 38 | |||
| 39 | 27 | ||
| 40 | Intallation using virtualenv and pip | 28 | #### Intallation using virtualenv and pip |
| 41 | .................................... | ||
| 42 | 29 | ||
| 43 | Very often you are not the administrator of the server hosting your BEINC server | 30 | Very often you are not the administrator of the server hosting your BEINC server |
| 44 | This is where virtualenv may become handy (provided that it has been installed): | 31 | This is where virtualenv may become handy (provided that it has been installed): |
| 45 | $ virtualenv beinc_installation | 32 | $ virtualenv beinc_installation |
| 46 | $ cd beinc_installation | 33 | $ cd beinc_installation |
| 47 | $ source bin/activate | 34 | $ source bin/activate |
| 48 | $ pip install Twisted | ||
| 49 | $ pip install pyopenssl | 35 | $ pip install pyopenssl |
| 50 | $ cd beinc-<version> | 36 | $ cd beinc-<version> |
| 51 | $ ./beinc_server.py -h | 37 | $ ./beinc_server.py -h |
| 52 | 38 | ||
| 53 | 39 | ||
| 54 | Installing and setting up BEINC | 40 | ### Installing and setting up BEINC |
| 55 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
| 56 | 41 | ||
| 57 | Unpack the latest version of BEINC | 42 | Unpack the latest version of BEINC |
| 58 | $ tar zxvf beinc-<version>.tar.gz | 43 | $ tar zxvf beinc-<version>.tar.gz |
| @@ -2,8 +2,7 @@ Copyright (C) 2014-2018 - Simeon Simeonov | |||
| 2 | See the end of the file for license conditions. | 2 | See the end of the file for license conditions. |
| 3 | 3 | ||
| 4 | 4 | ||
| 5 | What is BEINC? | 5 | ## What is BEINC? |
| 6 | -------------- | ||
| 7 | 6 | ||
| 8 | Blackmore's Enchanced IRC Notification Collection (BEINC) is a free set of | 7 | Blackmore's Enchanced IRC Notification Collection (BEINC) is a free set of |
| 9 | components that aims to provide a complete system for different | 8 | components that aims to provide a complete system for different |
| @@ -23,8 +22,7 @@ beinc_generic_client.py - a simple client used to push notification messages | |||
| 23 | + documentation and a sample configuration file (beinc_config_sample.json) | 22 | + documentation and a sample configuration file (beinc_config_sample.json) |
| 24 | 23 | ||
| 25 | 24 | ||
| 26 | Why should I use BEINC and what has it done for me lately? | 25 | ## Why should I use BEINC and what has it done for me lately? |
| 27 | ---------------------------------------------------------- | ||
| 28 | 26 | ||
| 29 | BEINC is a free-software, licensed under the GPL3. It gives you the freedoms | 27 | BEINC is a free-software, licensed under the GPL3. It gives you the freedoms |
| 30 | of using it, studying it and modifying it. | 28 | of using it, studying it and modifying it. |
| @@ -44,7 +42,9 @@ No matter which of the two scenarios applies to your needs, you should start by | |||
| 44 | Configure the client to send notifications to the beinc_server.py | 42 | Configure the client to send notifications to the beinc_server.py |
| 45 | N.B. Using encryption is important in these days and age. | 43 | N.B. Using encryption is important in these days and age. |
| 46 | 44 | ||
| 47 | Scenario one: | 45 | |
| 46 | ### Scenario one | ||
| 47 | |||
| 48 | The user's computer can be reached by the server running the IRC client. | 48 | The user's computer can be reached by the server running the IRC client. |
| 49 | If the server (running the IRC client) is able to connect to | 49 | If the server (running the IRC client) is able to connect to |
| 50 | a specified TCP port on the user's computer, this is sufficient for BEINC to | 50 | a specified TCP port on the user's computer, this is sufficient for BEINC to |
| @@ -54,10 +54,13 @@ directly notify the user. Solution: | |||
| 54 | beinc_server.py to listen on and enable its OSD capabilities | 54 | beinc_server.py to listen on and enable its OSD capabilities |
| 55 | (through pynotify) | 55 | (through pynotify) |
| 56 | 56 | ||
| 57 | Scenario two: | 57 | |
| 58 | ### Scenario two | ||
| 59 | |||
| 58 | The user's computer can NOT be reached by the server running the IRC client. | 60 | The user's computer can NOT be reached by the server running the IRC client. |
| 59 | This scenario is typical for users that are working on computers that can not | 61 | This scenario is typical for users that are working on computers that can not |
| 60 | be reached from outside. | 62 | be reached from outside. |
| 63 | |||
| 61 | Solution: | 64 | Solution: |
| 62 | - find a server that can be reached by the server running the IRC client. | 65 | - find a server that can be reached by the server running the IRC client. |
| 63 | - set up the beinc_server.py on it. No OSD capabilities are needed (no X11). | 66 | - set up the beinc_server.py on it. No OSD capabilities are needed (no X11). |
| @@ -79,20 +82,20 @@ There are 2 operations that can be done on an instance: | |||
| 79 | - pull - a poller (f.i. beinc_poller.py) is fetching data from the instance-queue. | 82 | - pull - a poller (f.i. beinc_poller.py) is fetching data from the instance-queue. |
| 80 | A pull is available only for instances defined for queueing. | 83 | A pull is available only for instances defined for queueing. |
| 81 | (read beinc_config_sample.json.readme for details!) | 84 | (read beinc_config_sample.json.readme for details!) |
| 82 | Example: | 85 | Example: |
| 83 | If you defined a beinc_server.py instance with SSL-support, | 86 | If you defined a beinc_server.py instance with SSL-support, |
| 84 | your URL will be: https://hostname:port | 87 | your URL will be: https://hostname:port |
| 85 | 88 | ||
| 86 | 89 | ||
| 87 | Supported systems & requirements | 90 | ## Supported systems & requirements |
| 88 | -------------------------------- | 91 | |
| 89 | Any system running the software required for the selected components. | 92 | Any system running the software required for the selected components. |
| 90 | All components tested on: Gentoo GNU/Linux 2014,2015, | 93 | All components tested on: Gentoo GNU/Linux 2014,2015, |
| 91 | Ubuntu GNU/Linux 14.4,14.10, | 94 | Ubuntu GNU/Linux 14.4,14.10, |
| 92 | FreeBSD 10.x | 95 | FreeBSD 10.x |
| 93 | 96 | ||
| 94 | 97 | ||
| 95 | Requirements: | 98 | ### Requirements |
| 96 | All components: Python >= 2.7.9 or Python >= 3.4.* | 99 | All components: Python >= 2.7.9 or Python >= 3.4.* |
| 97 | 100 | ||
| 98 | beinc_server.py: pynotify >= 0.1 (optional) | 101 | beinc_server.py: pynotify >= 0.1 (optional) |
| @@ -103,8 +106,7 @@ beinc_generic_client.py: No additional software required | |||
| 103 | Read INSTALL in this very same folder for more details about installing the requirements! | 106 | Read INSTALL in this very same folder for more details about installing the requirements! |
| 104 | 107 | ||
| 105 | 108 | ||
| 106 | License | 109 | ### License |
| 107 | ------- | ||
| 108 | 110 | ||
| 109 | This file is part of BEINC. | 111 | This file is part of BEINC. |
| 110 | 112 | ||
diff --git a/beinc_config_sample.json b/beinc_config_sample.json index 4384555..3b04c0b 100644 --- a/beinc_config_sample.json +++ b/beinc_config_sample.json | |||
| @@ -16,18 +16,6 @@ | |||
| 16 | { | 16 | { |
| 17 | "name": "instance2", | 17 | "name": "instance2", |
| 18 | "password": "changeme", | 18 | "password": "changeme", |
| 19 | "osd_system": "pyosd", | ||
| 20 | "osd_timeout": 6, | ||
| 21 | "pyosd_font": "-adobe-courier-bold-o-normal--24-240-75-75-m-150-iso8859-1", | ||
| 22 | "pyosd_vertical_offset": 120, | ||
| 23 | "pyosd_horizontal_offset": 30, | ||
| 24 | "pyosd_align": "left", | ||
| 25 | "pyosd_position": "top", | ||
| 26 | "pyosd_color": "blue" | ||
| 27 | }, | ||
| 28 | { | ||
| 29 | "name": "instance3", | ||
| 30 | "password": "changeme", | ||
| 31 | "osd_system": "none", | 19 | "osd_system": "none", |
| 32 | "osd_timeout": 5, | 20 | "osd_timeout": 5, |
| 33 | "queue_size": 4 | 21 | "queue_size": 4 |
diff --git a/beinc_config_sample.json.readme b/beinc_config_sample.json.readme index edf5845..1bc6b7f 100644 --- a/beinc_config_sample.json.readme +++ b/beinc_config_sample.json.readme | |||
| @@ -30,8 +30,8 @@ documentation to better illustrate the comments. | |||
| 30 | 30 | ||
| 31 | # Encryption method for the BEINC server | 31 | # Encryption method for the BEINC server |
| 32 | # Possible values: | 32 | # Possible values: |
| 33 | # "" or "auto" - Let Twisted decide (use the newest possible method) | 33 | # "" or "auto" - Let the server decide |
| 34 | # "SSLv3" - SSLv3 (weak) | 34 | # (use the newest possible method) |
| 35 | # "TLSv1" - TLSv1.0 | 35 | # "TLSv1" - TLSv1.0 |
| 36 | # "TLSv1_1" - TLSv1.1 | 36 | # "TLSv1_1" - TLSv1.1 |
| 37 | # "TLSv1_2" - TLSv1.2 (most secure, but requires OpenSSL >= 1.0.1e) | 37 | # "TLSv1_2" - TLSv1.2 (most secure, but requires OpenSSL >= 1.0.1e) |
| @@ -52,37 +52,12 @@ documentation to better illustrate the comments. | |||
| 52 | # Possible values: | 52 | # Possible values: |
| 53 | # "none" - the instance will serve for queueing | 53 | # "none" - the instance will serve for queueing |
| 54 | # "pynotify" - OSD implemented using pynotify (libnotify) | 54 | # "pynotify" - OSD implemented using pynotify (libnotify) |
| 55 | # "pyosd" - OSD implemented using pyosd (xosd) | ||
| 56 | "osd_system": "pynotify", | 55 | "osd_system": "pynotify", |
| 57 | 56 | ||
| 58 | # OSD timeout in seconds | 57 | # OSD timeout in seconds |
| 59 | # The amount of time the OSD message will remain in the screen | 58 | # The amount of time the OSD message will remain in the screen |
| 60 | "osd_timeout": 5, | 59 | "osd_timeout": 5, |
| 61 | 60 | ||
| 62 | # Specify a custom font for the pyosd - backend | ||
| 63 | # "xfontsel" can be used to obtain a list of available fonts | ||
| 64 | "pyosd_font": "", | ||
| 65 | |||
| 66 | # Vertical offset (in pixels) for the pyosd - backend | ||
| 67 | "pyosd_vertical_offset": 120, | ||
| 68 | |||
| 69 | # Horizontal offset (in pixels) for the pyosd - backend | ||
| 70 | "pyosd_horizontal_offset": 30, | ||
| 71 | |||
| 72 | # Text horizontal alignment for the pyosd - backend | ||
| 73 | # Possible values: | ||
| 74 | # "left", "center", "right" | ||
| 75 | "pyosd_align": "left", | ||
| 76 | |||
| 77 | # Text vertical position for the pyosd - backend | ||
| 78 | # Possible values: | ||
| 79 | # "top", "middle", "bottom" | ||
| 80 | "pyosd_position": "bottom", | ||
| 81 | |||
| 82 | # Font color for the pyosd - backend | ||
| 83 | # See "rgb.txt" in the X11 distribution of a list of colors | ||
| 84 | "pyosd_color": "blue", | ||
| 85 | |||
| 86 | # How many entries to be kept in the queue | 61 | # How many entries to be kept in the queue |
| 87 | # (when "osd_system": "none") | 62 | # (when "osd_system": "none") |
| 88 | "queue_size": 4 | 63 | "queue_size": 4 |
| @@ -123,13 +98,12 @@ documentation to better illustrate the comments. | |||
| 123 | "ssl_ciphers": "ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384", | 98 | "ssl_ciphers": "ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384", |
| 124 | 99 | ||
| 125 | # Don't check whether the target's hostname matches the server's | 100 | # Don't check whether the target's hostname matches the server's |
| 126 | # certificate. (Only for Python >= 2.7.9) | 101 | # certificate. |
| 127 | # Default: 0 | 102 | # Default: 0 |
| 128 | "disable-hostname-check": 0, | 103 | "disable-hostname-check": 0, |
| 129 | 104 | ||
| 130 | # Force the client to use a specified SSL/TLS version | 105 | # Force the client to use a specified SSL/TLS version |
| 131 | # Valid values: "auto", "SSLv3", "TLSv1", "TLSv1_1", "TLSv1_2" | 106 | # Valid values: "auto", "TLSv1", "TLSv1_1", "TLSv1_2" |
| 132 | # N.B. "TLSv1_1" and "TLSv1_2" only available in Python >= 2.7.9 | ||
| 133 | # Default: "auto" (Let's OpenSSL select the best option) | 107 | # Default: "auto" (Let's OpenSSL select the best option) |
| 134 | "ssl_version": "auto", | 108 | "ssl_version": "auto", |
| 135 | 109 | ||
