Grouprise: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
Zeile 107: Zeile 107:
xyz00-groups@h00:~/stadtgestalten$ ls -l stadt/settings/local.py
xyz00-groups@h00:~/stadtgestalten$ ls -l stadt/settings/local.py
lrwxrwxrwx 1 xyz00-groups xyz00 45 Jun 13 20:32 stadt/settings/local.py -> /home/pacs/xyz00/users/groups/etc/settings.py
lrwxrwxrwx 1 xyz00-groups xyz00 45 Jun 13 20:32 stadt/settings/local.py -> /home/pacs/xyz00/users/groups/etc/settings.py
xyz00-groups@h00:~/stadtgestalten$  
xyz00-groups@h00:~/stadtgestalten$ . build/venv/bin/activate
xyz00-groups@h00:~/stadtgestalten$ python manage.py migrate
xyz00-groups@h00:~/stadtgestalten$
</pre>
 
Die Datei ''$HOME/doms/groups.hs-example.de/app-ssl/passenger_wsgi.py'':
<pre>
import sys, os
sys.path.append("/home/pacs/xyz00/users/groups/stadtgestalten")
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "stadt.settings")
application = get_wsgi_application()
</pre>
</pre>



Version vom 13. Juni 2020, 18:49 Uhr

Installation von Grouprise

Grouprise ist eine Software für die Menschen in einer Stadt oder Region. Sie ermöglicht es, dass einzelne Personen sich in Gruppen engagieren und austauschen. Grouprise ist freie Software (FOSS), die Lizenz ist die AGPL.

Vorbereitungen in HSAdmin

In HSAdmin werden angelegt:

  • ein Service-User,
  • eine Domain,
  • ein Postgres-User und eine Datenbank,
  • eine Catch-All E-Mail Adresse
xyz00@h00:~$ hsscript -i
Password: *********************
xyz00@hsadmin> user.add({ set: { name:'xyz00-groups', password:'******', shell:'/bin/bash' xyz00@hsadmin> domain.add({ set: { name:'groups.hs-example.de', user:'xyz00-groups' } })
xyz00@hsadmin> postgresqluser.add({ set: { name:'xyz00_groups', password:'******' } })
xyz00@hsadmin> postgresqldb.add({ set: { name:'xyz00_groups', owner:'xyz00_groups' } })
xyz00@hsadmin> emailaddress.add({ set: { localpart:'', domain:'groups.hs-example.de', target:'xyz00-groups' } })
xyz00@hsadmin> bye
xyz00@h00:~$ 

Installation von NodeJS

Installation von NodeJS (hier Version 10.x) für den User nach der Anleitung NodeJS

xyz00@h00:~$ sudo -u xyz00-groups -i
xyz00-groups@h00:~$ touch ~/.profile
xyz00-groups@h00:~$ chmod u+x ~/.profile
xyz00-groups@h00:~$ wget https://raw.githubusercontent.com/creationix/nvm/v0.35.3/install.sh
xyz00-groups@h00:~$ chmod u+x install.sh 
xyz00-groups@h00:~$ ./install.sh 
xyz00-groups@h00:~$ rm install.sh 
xyz00-groups@h00:~$ export NVM_DIR="$HOME/.nvm"
xyz00-groups@h00:~$ . "$NVM_DIR/nvm.sh"
xyz00-groups@h00:~$ nvm install 10
xyz00-groups@h00:~$ node -v 
v10.21.0

Notizen zur Installation

xyz00-groups@h00:~$ git clone https://git.hack-hro.de/stadtgestalten/stadtgestalten.git
xyz00-groups@h00:~$ cd stadtgestalten/
xyz00-groups@h97:~/stadtgestalten$ git tag
xyz00-groups@h97:~/stadtgestalten$ git checkout v2.4.3
xyz00-groups@h97:~/stadtgestalten$ make app_setup

Anlegen einer Datei $HOME/etc/settings.py mit folgendem Inhalt:

# grouprise settings file
# see https://docs.djangoproject.com/en/2.1/ref/settings/
import os
import subprocess
from stadt.settings.default import *
from core.assets import add_javascript_reference, add_javascript_inline, add_csp_directive, add_meta
# see https://www.miniwebtool.com/django-secret-key-generator/
SECRET_KEY = 'XXXXXXXXXXXXXXXXXXXXXXXX'
ALLOWED_HOSTS = ['groups.hs-example.de', 'localhost']
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'HOST': 'localhost',
        'NAME': 'xyz00_groups',
        'USER': 'xyz00_groups',
        'PASSWORD': '******',
    }
}
ADMINS = [
    ('Admins', 'hallo@groups.hs-example.de'),
]
DEFAULT_FROM_EMAIL = 'noreply@groups.hs-example.de'
FROM_EMAIL_WITH_SLUG = 'noreply+{slug}@groups.hs-example.de'
ANSWERABLE_FROM_EMAIL = 'noreply@groups.hs-example.de'
DEFAULT_REPLY_TO_EMAIL = 'reply+{reply_key}@groups.hs-example.de'
STADTGESTALTEN_BOT_EMAIL = 'grouprise-bot@groups.hs-example.de'
SERVER_EMAIL = 'grouprise <noreply@groups.hs-example.de>'
GROUPRISE_POSTMASTER_EMAIL = 'postmaster@groups.hs-example.de'
ABOUT_GROUP_ID = 1
STADTGESTALTEN_FEEDS_IMPORTER_USER_ID = 1
GROUPRISE_FEEDS_IMPORTER_GESTALT_ID = 1
GROUPRISE_UNKNOWN_GESTALT_ID = 1
ACCOUNT_DEFAULT_HTTP_PROTOCOL = 'https'
ENTITY_SLUG_BLACKLIST = [ 'all', 'alle', 'antwort', 'crew', 'facebook', 'gbr', 'info', 'kontakt', 'mail', 'noreply', 'postmaster', 'presse', 'reply', 'stadt', 'unknown', 'webmaster', 'www']
# set debug mode to false
DEBUG = False
# increase session cookie time to 1 year
SESSION_COOKIE_AGE = 60 * 60 * 24 * 365
STADTGESTALTEN_CLAIMS = [
    'grouprise forever',
    'Mailingslisten leichtgemacht',
]
STATIC_URL = '/static/'

Verlinken nach $HOME/stadtgestalten/stadt/settings/local.py:

xyz00-groups@h00:~/stadtgestalten$ mkdir -p $HOME/etc
xyz00-groups@h00:~/stadtgestalten$ vi $HOME/etc/settings.py
xyz00-groups@h00:~/stadtgestalten$ ln -sf $HOME/etc/settings.py stadt/settings/local.py 
xyz00-groups@h00:~/stadtgestalten$ ls -l stadt/settings/local.py
lrwxrwxrwx 1 xyz00-groups xyz00 45 Jun 13 20:32 stadt/settings/local.py -> /home/pacs/xyz00/users/groups/etc/settings.py
xyz00-groups@h00:~/stadtgestalten$ . build/venv/bin/activate
xyz00-groups@h00:~/stadtgestalten$ python manage.py migrate
xyz00-groups@h00:~/stadtgestalten$

Die Datei $HOME/doms/groups.hs-example.de/app-ssl/passenger_wsgi.py:

import sys, os
sys.path.append("/home/pacs/xyz00/users/groups/stadtgestalten")
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "stadt.settings")
application = get_wsgi_application()

Links

Webseite

Grouprise Installationen

Handbuch für Nutzer:innen