summaryrefslogtreecommitdiffstats
path: root/_deploy
diff options
context:
space:
mode:
Diffstat (limited to '_deploy')
-rw-r--r--_deploy/debian-laptops/localsettings2023-04-05-cleansed.py (renamed from _deploy/debian/localsettings2023-04-05-cleansed.py)0
-rw-r--r--_deploy/debian-laptops/localsettings2023-04-05-secret.py160
-rw-r--r--_deploy/debian-laptops/localsettingsserver2023-01-cleansed.py (renamed from _deploy/debian/localsettingsserver2023-01-cleansed.py)0
-rw-r--r--_deploy/debian-laptops/settings2023-02-10.py (renamed from _deploy/debian/settings2023-02-10.py)0
-rw-r--r--_deploy/debian-laptops/settings2023-04-23.py (renamed from _deploy/debian/settings2023-04-23.py)0
-rw-r--r--_deploy/debian-server/apache2.conf (renamed from _deploy/debian/apache2.conf)0
-rw-r--r--_deploy/debian-server/envvars (renamed from _deploy/debian/envvars)0
-rw-r--r--_deploy/debian-server/localsettingsserver-old.py (renamed from _deploy/debian/localsettingsserver-old.py)0
-rw-r--r--_deploy/debian-server/localsettingsserver2023-01-secret.py164
-rw-r--r--_deploy/debian-server/requirements-server.txt23
-rw-r--r--_deploy/debian-server/serversetup (renamed from _deploy/debian/serversetup)0
-rw-r--r--_deploy/debian-server/sitecustomize.py (renamed from _deploy/debian/sitecustomize.py)0
-rw-r--r--_deploy/debian-server/this-is-the-live-expo.survex.com-system.txt (renamed from _deploy/debian/this-is-the-live-expo.survex.com-system.txt)0
-rw-r--r--_deploy/debian-server/wookey-exposerver-recipe.txt (renamed from _deploy/debian/wookey-exposerver-recipe.txt)0
-rw-r--r--_deploy/potatohut/localsettingspotatohut.py79
-rw-r--r--_deploy/readme.txt18
-rw-r--r--_deploy/wsl/localsettingsWSL.py7
17 files changed, 369 insertions, 82 deletions
diff --git a/_deploy/debian/localsettings2023-04-05-cleansed.py b/_deploy/debian-laptops/localsettings2023-04-05-cleansed.py
index 2544dff..2544dff 100644
--- a/_deploy/debian/localsettings2023-04-05-cleansed.py
+++ b/_deploy/debian-laptops/localsettings2023-04-05-cleansed.py
diff --git a/_deploy/debian-laptops/localsettings2023-04-05-secret.py b/_deploy/debian-laptops/localsettings2023-04-05-secret.py
new file mode 100644
index 0000000..f73b512
--- /dev/null
+++ b/_deploy/debian-laptops/localsettings2023-04-05-secret.py
@@ -0,0 +1,160 @@
+import os
+import sys
+import urllib.parse
+from pathlib import Path
+
+"""Settings for a troggle installation which may vary among different
+installations: for development or deployment, in a docker image or
+python virtual environment (venv), on ubuntu, debian or in Windows
+System for Linux (WSL), on the main server or in the potato hut,
+using SQLite or mariaDB.
+
+It sets the directory locations for the major parts of the system so
+that e.g. expofiles can be on a different filesystem.
+
+This file is included at the end of the main troggle/settings.py file so that
+it overwrites defaults in that file.
+
+NOTE this file is vastly out of sync with troggle/_deploy/wsl/localsettings.py
+which is the most recent version used in active maintenance. There should be
+essential differences, but there and many, many non-essential differences which
+should be eliminated for clarity and to use modern idioms. 8 March 2023.
+"""
+
+print(" * importing troggle/localsettings.py")
+
+# DO NOT check this file into the git repo - it contains real passwords.
+
+EXPOFILESREMOTE = False # if True, then re-routes urls in expofiles to remote sever
+#SECURE_SSL_REDIRECT = True # breaks 7 tests in test suite 301 not 200 (or 302) and runserver fails completely
+
+DATABASES = {
+ 'default': {
+ 'ENGINE': 'django.db.backends.mysql', # 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
+ 'NAME' : 'troggle', # Or path to database file if using sqlite3.
+ 'USER' : 'expo', # Not used with sqlite3.
+ 'PASSWORD' : 'uFqP56B4XleeyIW', # Not used with sqlite3.
+ 'HOST' : '', # Set to empty string for localhost. Not used with sqlite3.
+ 'PORT' : '', # Set to empty string for default. Not used with sqlite3.
+ }
+}
+
+
+EXPOUSER = 'expo'
+EXPOUSERPASS = '161:gosser'
+EXPOADMINUSER = 'expoadmin'
+EXPOADMINUSERPASS = 'gosser:161'
+EXPOUSER_EMAIL = 'wookey@wookware.org'
+EXPOADMINUSER_EMAIL = 'wookey@wookware.org'
+
+REPOS_ROOT_PATH = '/home/expo/'
+sys.path.append(REPOS_ROOT_PATH)
+sys.path.append(REPOS_ROOT_PATH + 'troggle')
+# Define the path to the django app (troggle in this case)
+PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
+
+
+PHOTOS_YEAR = "2023"
+# add in 358 when they don't make it crash horribly
+NOTABLECAVESHREFS = [ "290", "291", "359", "264", "258", "204", "76", "107"]
+
+TEMPLATES = [
+ {
+ 'BACKEND': 'django.template.backends.django.DjangoTemplates',
+ 'DIRS': [
+ PYTHON_PATH + "templates"
+ ],
+ 'OPTIONS': {
+ 'debug': 'DEBUG',
+ 'context_processors': [
+ # django.template.context_processors.csrf, # is always enabled and cannot be removed, sets csrf_token
+ 'django.contrib.auth.context_processors.auth', # knowledge of logged-on user & permissions
+ 'core.context.troggle_context', # in core/troggle.py
+ 'django.template.context_processors.debug',
+ #'django.template.context_processors.request', # copy of current request, added in trying to make csrf work
+ 'django.template.context_processors.i18n',
+ 'django.template.context_processors.media', # includes a variable MEDIA_URL
+ 'django.template.context_processors.static', # includes a variable STATIC_URL
+ 'django.template.context_processors.tz',
+ 'django.contrib.messages.context_processors.messages',
+ ],
+ 'loaders': [
+ 'django.template.loaders.filesystem.Loader',
+ 'django.template.loaders.app_directories.Loader', #For each app, inc admin, in INSTALLED_APPS, loader looks for /templates
+ # insert your own TEMPLATE_LOADERS here
+ ]
+ },
+ },
+]
+
+PUBLIC_SITE = True
+
+# This should be False for normal running
+DEBUG = False
+CACHEDPAGES = True # experimental page cache for a handful of page types
+
+
+# executables:
+CAVERN = 'cavern' # for parsing .svx files and producing .3d files
+SURVEXPORT = 'survexport' # for parsing .3d files and producing .pos files
+
+PV = "python" + str(sys.version_info.major) + "." + str(sys.version_info.minor)
+LIBDIR = Path(REPOS_ROOT_PATH) / 'lib' / PV
+
+EXPOWEB = Path(REPOS_ROOT_PATH + 'expoweb/')
+SURVEYS = REPOS_ROOT_PATH
+SURVEY_SCANS = REPOS_ROOT_PATH + 'expofiles/surveyscans/'
+FILES = REPOS_ROOT_PATH + 'expofiles'
+PHOTOS_ROOT = REPOS_ROOT_PATH + 'expofiles/photos/'
+
+TROGGLE_PATH = Path(__file__).parent
+TEMPLATE_PATH = TROGGLE_PATH / 'templates'
+MEDIA_ROOT = TROGGLE_PATH / 'media'
+JSLIB_ROOT = TROGGLE_PATH / 'media' / 'jslib' # used for CaveViewer JS utility
+
+
+CAVEDESCRIPTIONS = EXPOWEB / "cave_data"
+ENTRANCEDESCRIPTIONS = EXPOWEB / "entrance_data"
+
+
+PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
+
+
+#URL_ROOT = 'http://expo.survex.com/'
+URL_ROOT = '/'
+DIR_ROOT = Path("") #this should end in / if a value is given
+EXPOWEB_URL = '/'
+SURVEYS_URL = '/survey_scans/'
+
+REPOS_ROOT_PATH = Path(REPOS_ROOT_PATH)
+
+SURVEX_DATA = REPOS_ROOT_PATH / "loser"
+DRAWINGS_DATA = REPOS_ROOT_PATH / "drawings"
+
+
+EXPOFILES = REPOS_ROOT_PATH / "expofiles"
+SCANS_ROOT = EXPOFILES / "surveyscans"
+PHOTOS_ROOT = EXPOFILES / "photos"
+
+#EXPOFILES = urllib.parse.urljoin(REPOS_ROOT_PATH, 'expofiles/')
+PHOTOS_URL = urllib.parse.urljoin(URL_ROOT, '/photos/')
+
+# MEDIA_URL is used by urls.py in a regex. See urls.py & core/views_surveys.py
+MEDIA_URL = '/site_media/'
+
+
+STATIC_URL = urllib.parse.urljoin(URL_ROOT , '/static/') # used by Django admin pages. Do not delete.
+JSLIB_URL = urllib.parse.urljoin(URL_ROOT , '/javascript/') # always fails, try to revive it ?
+# STATIC_ROOT removed after merging content into MEDIA_ROOT. See urls.py & core/views/surveys.py
+
+#TINY_MCE_MEDIA_ROOT = STATIC_ROOT + '/tiny_mce/' # not needed while TinyMCE not installed
+#TINY_MCE_MEDIA_URL = STATIC_URL + '/tiny_mce/' # not needed while TinyMCE not installed
+
+LOGFILE = '/var/log/troggle/troggle.log'
+IMPORTLOGFILE = '/var/log/troggle/import.log'
+
+# Sanitise these to be strings as Django seems to be particularly sensitive to crashing if they aren't
+STATIC_URL = str(STATIC_URL) + "/"
+MEDIA_URL = str(MEDIA_URL) + "/"
+
+print(" + finished importing troggle/localsettings.py")
diff --git a/_deploy/debian/localsettingsserver2023-01-cleansed.py b/_deploy/debian-laptops/localsettingsserver2023-01-cleansed.py
index a1e22ca..a1e22ca 100644
--- a/_deploy/debian/localsettingsserver2023-01-cleansed.py
+++ b/_deploy/debian-laptops/localsettingsserver2023-01-cleansed.py
diff --git a/_deploy/debian/settings2023-02-10.py b/_deploy/debian-laptops/settings2023-02-10.py
index 938c024..938c024 100644
--- a/_deploy/debian/settings2023-02-10.py
+++ b/_deploy/debian-laptops/settings2023-02-10.py
diff --git a/_deploy/debian/settings2023-04-23.py b/_deploy/debian-laptops/settings2023-04-23.py
index 938c024..938c024 100644
--- a/_deploy/debian/settings2023-04-23.py
+++ b/_deploy/debian-laptops/settings2023-04-23.py
diff --git a/_deploy/debian/apache2.conf b/_deploy/debian-server/apache2.conf
index ae4b2c3..ae4b2c3 100644
--- a/_deploy/debian/apache2.conf
+++ b/_deploy/debian-server/apache2.conf
diff --git a/_deploy/debian/envvars b/_deploy/debian-server/envvars
index d3e69a6..d3e69a6 100644
--- a/_deploy/debian/envvars
+++ b/_deploy/debian-server/envvars
diff --git a/_deploy/debian/localsettingsserver-old.py b/_deploy/debian-server/localsettingsserver-old.py
index 72ab0f0..72ab0f0 100644
--- a/_deploy/debian/localsettingsserver-old.py
+++ b/_deploy/debian-server/localsettingsserver-old.py
diff --git a/_deploy/debian-server/localsettingsserver2023-01-secret.py b/_deploy/debian-server/localsettingsserver2023-01-secret.py
new file mode 100644
index 0000000..d99e61d
--- /dev/null
+++ b/_deploy/debian-server/localsettingsserver2023-01-secret.py
@@ -0,0 +1,164 @@
+import os
+import sys
+import urllib.parse
+from pathlib import Path
+
+"""Settings for a troggle installation which may vary among different
+installations: for development or deployment, in a docker image or
+python virtual environment (venv), on ubuntu, debian or in Windows
+System for Linux (WSL), on the main server or in the potato hut,
+using SQLite or mariaDB.
+
+It sets the directory locations for the major parts of the system so
+that e.g. expofiles can be on a different filesystem, or /javascript/ can be in
+a system-wide location rather than just a local directory.
+
+This file is included at the end of the main troggle/settings.py file so that
+it overwrites defaults in that file.
+
+Read https://realpython.com/python-pathlib/
+Read https://adamj.eu/tech/2020/03/16/use-pathlib-in-your-django-project/
+"""
+
+print(" * importing troggle/localsettings.py")
+
+# DO NOT check this file into the git repo - it contains real passwords.
+
+EXPOFILESREMOTE = False # if True, then re-routes urls in expofiles to remote sever
+#SECURE_SSL_REDIRECT = True # breaks 7 tests in test suite 301 not 200 (or 302) and runserver fails completely
+
+DATABASES = {
+ 'default': {
+ 'ENGINE': 'django.db.backends.mysql', # 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
+ 'NAME' : 'troggle', # Or path to database file if using sqlite3.
+ 'USER' : 'expo', # Not used with sqlite3.
+ 'PASSWORD' : 'uFqP56B4XleeyIW', # Not used with sqlite3.
+ 'HOST' : '', # Set to empty string for localhost. Not used with sqlite3.
+ 'PORT' : '', # Set to empty string for default. Not used with sqlite3.
+ }
+}
+
+
+EXPOUSER = 'expo'
+EXPOADMINUSER = 'expoadmin'
+EXPOUSER_EMAIL = 'wookey@wookware.org'
+EXPOADMINUSER_EMAIL = 'wookey@wookware.org'
+
+SECRET_KEY = "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
+EXPOUSERPASS = "nope"
+EXPOADMINUSERPASS = "nope"
+EMAIL_HOST_PASSWORD = "nope"
+
+REPOS_ROOT_PATH = '/home/expo/'
+sys.path.append(REPOS_ROOT_PATH)
+sys.path.append(REPOS_ROOT_PATH + 'troggle')
+# Define the path to the django app (troggle in this case)
+PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
+PHOTOS_YEAR = "2022"
+TEMPLATES = [
+ {
+ 'BACKEND': 'django.template.backends.django.DjangoTemplates',
+ 'DIRS': [
+ PYTHON_PATH + "templates"
+ ],
+ 'OPTIONS': {
+ 'debug': 'DEBUG',
+ 'context_processors': [
+ # django.template.context_processors.csrf, # is always enabled and cannot be removed, sets csrf_token
+ 'django.contrib.auth.context_processors.auth', # knowledge of logged-on user & permissions
+ 'core.context.troggle_context', # in core/troggle.py
+ 'django.template.context_processors.debug',
+ #'django.template.context_processors.request', # copy of current request, added in trying to make csrf work
+ 'django.template.context_processors.i18n',
+ 'django.template.context_processors.media', # includes a variable MEDIA_URL
+ 'django.template.context_processors.static', # includes a variable STATIC_URL
+ 'django.template.context_processors.tz',
+ 'django.contrib.messages.context_processors.messages',
+ ],
+ 'loaders': [
+ 'django.template.loaders.filesystem.Loader',
+ 'django.template.loaders.app_directories.Loader', #For each app, inc admin, in INSTALLED_APPS, loader looks for /templates
+ # insert your own TEMPLATE_LOADERS here
+ ]
+ },
+ },
+]
+
+PUBLIC_SITE = True
+
+# This should be False for normal running
+DEBUG = True
+CACHEDPAGES = True # experimental page cache for a handful of page types
+
+SURVEX_DATA = REPOS_ROOT_PATH + 'loser/'
+DRAWINGS_DATA = REPOS_ROOT_PATH + 'drawings/'
+
+# executables:
+CAVERN = 'cavern' # for parsing .svx files and producing .3d files
+SURVEXPORT = 'survexport' # for parsing .3d files and producing .pos files
+
+EXPOWEB = REPOS_ROOT_PATH + 'expoweb/'
+#SURVEYS = REPOS_ROOT_PATH
+SCANS_ROOT = REPOS_ROOT_PATH + 'expofiles/surveyscans/'
+FILES = REPOS_ROOT_PATH + 'expofiles'
+PHOTOS_ROOT = REPOS_ROOT_PATH + 'expofiles/photos/'
+
+TROGGLE_PATH = Path(__file__).parent
+TEMPLATE_PATH = TROGGLE_PATH / 'templates'
+MEDIA_ROOT = TROGGLE_PATH / 'media'
+JSLIB_ROOT = TROGGLE_PATH / 'media' / 'jslib' # used for CaveViewer JS utility
+
+
+CAVEDESCRIPTIONS = os.path.join(EXPOWEB, "cave_data")
+ENTRANCEDESCRIPTIONS = os.path.join(EXPOWEB, "entrance_data")
+
+# CACHEDIR = REPOS_ROOT_PATH + 'expowebcache/'
+# THREEDCACHEDIR = CACHEDIR + '3d/'
+# THUMBNAILCACHE = CACHEDIR + 'thumbs'
+
+PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/'
+PV = "python" + str(sys.version_info.major) + "." + str(sys.version_info.minor)
+LIBDIR = Path(REPOS_ROOT_PATH) / 'lib' / PV
+
+#Note that all these *_URL constants are not actually used in urls.py, they should be..
+#URL_ROOT = 'http://expo.survex.com/'
+URL_ROOT = '/'
+DIR_ROOT = ''#this should end in / if a value is given
+EXPOWEB_URL = '/'
+SCANS_URL = '/survey_scans/'
+EXPOFILES = urllib.parse.urljoin(REPOS_ROOT_PATH, 'expofiles/')
+PHOTOS_URL = urllib.parse.urljoin(URL_ROOT, '/photos/')
+
+# MEDIA_URL is used by urls.py in a regex. See urls.py & core/views_surveys.py
+MEDIA_URL = '/site_media/'
+
+
+STATIC_URL = urllib.parse.urljoin(URL_ROOT , '/static/') # used by Django admin pages. Do not delete.
+JSLIB_URL = urllib.parse.urljoin(URL_ROOT , '/javascript/') # always fails, try to revive it ?
+
+#TINY_MCE_MEDIA_ROOT = STATIC_ROOT + '/tiny_mce/' # not needed while TinyMCE not installed
+#TINY_MCE_MEDIA_URL = STATIC_URL + '/tiny_mce/' # not needed while TinyMCE not installed
+
+LOGFILE = '/var/log/troggle/troggle.log'
+IMPORTLOGFILE = '/var/log/troggle/import.log'
+
+# add in 358 when they don't make it crash horribly
+NOTABLECAVESHREFS = [ "290", "291", "359", "264", "258", "204", "76", "107"]
+
+# Sanitise these to be strings as all other code is expecting strings
+# and we have not made the change to pathlib Path type in the other localsettings-* variants yet.
+CAVEDESCRIPTIONS = os.fspath(CAVEDESCRIPTIONS)
+ENTRANCEDESCRIPTIONS = os.fspath(ENTRANCEDESCRIPTIONS)
+LOGFILE = os.fspath(LOGFILE)
+#SURVEYS = os.fspath(SURVEYS)
+EXPOWEB = os.fspath(EXPOWEB)
+DRAWINGS_DATA = os.fspath(DRAWINGS_DATA)
+SURVEX_DATA = os.fspath(SURVEX_DATA)
+REPOS_ROOT_PATH = os.fspath(REPOS_ROOT_PATH)
+TEMPLATE_PATH = os.fspath(TROGGLE_PATH)
+MEDIA_ROOT = os.fspath(MEDIA_ROOT)
+JSLIB_ROOT = os.fspath(JSLIB_ROOT)
+SCANS_ROOT = os.fspath(SCANS_ROOT)
+LIBDIR = os.fspath(LIBDIR)
+
+print(" + finished importing troggle/localsettings.py") \ No newline at end of file
diff --git a/_deploy/debian-server/requirements-server.txt b/_deploy/debian-server/requirements-server.txt
new file mode 100644
index 0000000..1a5abb1
--- /dev/null
+++ b/_deploy/debian-server/requirements-server.txt
@@ -0,0 +1,23 @@
+#This requirements txt matches the libaries as of 2023-07-09 on expo.survex.com <Debian GNU/Linux 11 (bullseye)>
+
+#Nb on the server asgiref==3.3.0, however this conflicts with the Django==3.2.12 requirement
+asgiref==3.3.2
+Django==3.2.12
+docutils==0.16
+packaging==20.9
+Pillow==8.1.2
+pytz==2021.1
+sqlparse==0.4.1
+Unidecode==1.2.0
+beautifulsoup4==4.9.3
+piexif==1.1.3
+
+#Not installed on expo.survex.com
+#black==23.3
+#click==8.1.3
+#coverage==7.2
+#isort==5.12.0
+#mypy-extensions==1.0.0
+#pathspec==0.11
+#platformdirs==3.8
+#ruff==0.0.245
diff --git a/_deploy/debian/serversetup b/_deploy/debian-server/serversetup
index 1c54546..1c54546 100644
--- a/_deploy/debian/serversetup
+++ b/_deploy/debian-server/serversetup
diff --git a/_deploy/debian/sitecustomize.py b/_deploy/debian-server/sitecustomize.py
index 89c6712..89c6712 100644
--- a/_deploy/debian/sitecustomize.py
+++ b/_deploy/debian-server/sitecustomize.py
diff --git a/_deploy/debian/this-is-the-live-expo.survex.com-system.txt b/_deploy/debian-server/this-is-the-live-expo.survex.com-system.txt
index e69de29..e69de29 100644
--- a/_deploy/debian/this-is-the-live-expo.survex.com-system.txt
+++ b/_deploy/debian-server/this-is-the-live-expo.survex.com-system.txt
diff --git a/_deploy/debian/wookey-exposerver-recipe.txt b/_deploy/debian-server/wookey-exposerver-recipe.txt
index 6bcdc57..6bcdc57 100644
--- a/_deploy/debian/wookey-exposerver-recipe.txt
+++ b/_deploy/debian-server/wookey-exposerver-recipe.txt
diff --git a/_deploy/potatohut/localsettingspotatohut.py b/_deploy/potatohut/localsettingspotatohut.py
deleted file mode 100644
index 184f0ab..0000000
--- a/_deploy/potatohut/localsettingspotatohut.py
+++ /dev/null
@@ -1,79 +0,0 @@
-import sys
-
-# This is an example file. Copy it to localsettings.py, set the
-# password and _don't_ check that file back to the repo as it exposes
-# your/our password to the world!
-
-# This will ALL NEED TO BE CHANGED to match localsettingsWSL / python3 / Django v1.18.29
-# This WILL NOT WORK as it is for an earlier version of Django
-
-
-DATABASES = {
- 'default': {
- 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
- 'NAME': 'troggle', # Or path to database file if using sqlite3.
- 'USER': 'expo', # Not used with sqlite3.
- 'PASSWORD': 'notarealpassword', # Not used with sqlite3.
- 'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
- 'PORT': '', # Set to empty string for default. Not used with sqlite3.
- }
-}
-
-REPOS_ROOT_PATH = '/home/expo/'
-sys.path.append(REPOS_ROOT_PATH)
-sys.path.append(REPOS_ROOT_PATH + 'troggle')
-
-PUBLIC_SITE = True
-FIX_PERMISSIONS = ["sudo", "/usr/local/bin/fix_permissions"]
-
-SURVEX_DATA = REPOS_ROOT_PATH + 'loser/'
-DRAWINGS_DATA = REPOS_ROOT_PATH + 'drawings/'
-THREEDCACHEDIR = REPOS_ROOT_PATH + 'expowebcache/3d/'
-
-CAVERN = 'cavern'
-THREEDTOPOS = '3dtopos'
-EXPOWEB = REPOS_ROOT_PATH + 'expoweb/'
-SURVEYS = REPOS_ROOT_PATH
-SURVEY_SCANS = REPOS_ROOT_PATH + 'expoimages/'
-FILES = REPOS_ROOT_PATH + 'expoimages'
-
-
-PYTHON_PATH = '/home/expo/troggle/'
-
-URL_ROOT = "http://expo/"
-DIR_ROOT = ''#this should end in / if a value is given
-EXPOWEB_URL = 'http://expo/'
-SURVEYS_URL = 'http://expo/survey_scans/'
-MEDIA_URL = '/' + DIR_ROOT + 'site_media/'
-
-STATIC_URL = URL_ROOT
-STATIC_ROOT = DIR_ROOT
-
-MEDIA_ROOT = REPOS_ROOT_PATH + '/troggle/media/'
-MEDIA_ADMIN_DIR = '/usr/lib/python2.7/site-packages/django/contrib/admin/media/'
-
-JSLIB_PATH = '/usr/share/javascript/'
-
-TINY_MCE_MEDIA_ROOT = '/usr/share/tinymce/www/'
-TINY_MCE_MEDIA_URL = URL_ROOT + DIR_ROOT + 'tinymce_media/'
-
-TEMPLATE_DIRS = (
- PYTHON_PATH + "templates",
- # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
- # Always use forward slashes, even on Windows.
- # Don't forget to use absolute paths, not relative paths.
-)
-
-LOGFILE = '/home/expo/troggle/troggle_log.txt'
-
-FEINCMS_ADMIN_MEDIA='/site_media/feincms/'
-
-EMAIL_HOST = "smtp.gmail.com"
-
-EMAIL_HOST_USER = "cuccexpo@gmail.com"
-
-EMAIL_HOST_PASSWORD = "insert-real-email-password-here"
-
-EMAIL_PORT=587
-
-EMAIL_USE_TLS = True
diff --git a/_deploy/readme.txt b/_deploy/readme.txt
new file mode 100644
index 0000000..0986324
--- /dev/null
+++ b/_deploy/readme.txt
@@ -0,0 +1,18 @@
+2023-07-17 Philip Sargent
+
+Trying to sort out configurations as we got into a bit of a mess on
+Expo in the last couple of weeks with two (notionally identical Debian
+Bullseye) expo laptops Crowley (which has local troggle installed and
+can run locally) and Aziraphale (has local copy of troggle repo but is
+not configured to run locally), Martin Green's laptop (Ubuntu 22.04.2),
+Philip's Barbie laptop Ubuntu 22.04.3). And of course the server itself
+expo.survex.com which is running Debian Bullseye. But most development
+recently had been done on Philip's two other machines, desktop and PC,
+both running Ubuntu on WSL on Windows and both using venv environments,
+which Crowley also does.
+
+- settings.py
+is common to all configurations,
+but these are all different:
+- localsettings.py
+- requirements.txt \ No newline at end of file
diff --git a/_deploy/wsl/localsettingsWSL.py b/_deploy/wsl/localsettingsWSL.py
index ffead19..2824125 100644
--- a/_deploy/wsl/localsettingsWSL.py
+++ b/_deploy/wsl/localsettingsWSL.py
@@ -47,6 +47,7 @@ PV = "python" + str(sys.version_info.major) + "." + str(sys.version_info.minor)
REPOS_ROOT_PATH = Path(__file__).parent.parent
LIBDIR = REPOS_ROOT_PATH / "lib" / PV
+
TROGGLE_PATH = Path(__file__).parent
TEMPLATE_PATH = TROGGLE_PATH / "templates"
MEDIA_ROOT = TROGGLE_PATH / "media"
@@ -64,9 +65,9 @@ NOTABLECAVESHREFS = ["290", "291", "264", "258", "204", "359", "76", "107"]
# PYTHON_PATH = os.fspath(PYTHON_PATH)
PYTHON_PATH = REPOS_ROOT_PATH / "troggle"
LOGFILE = PYTHON_PATH / "troggle.log"
+SQLITEDB = PYTHON_PATH / "troggle.sqlite"
+KMZ_ICONS_PATH = PYTHON_PATH / "kmz_icons"
-#sys.path.append(os.fspath(REPOS_ROOT_PATH))
-#sys.path.append(os.fspath(PYTHON_PATH))
# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash if there is a path component (optional in other cases).
@@ -99,7 +100,7 @@ DBSQLITE = {
"default": {
"ENGINE": "django.db.backends.sqlite3", # 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
#'NAME' : 'troggle.sqlite',
- "NAME": "/home/philip/p11d4/troggle.sqlite",
+ "NAME": str(SQLITEDB),
"USER": "expo", # Not used with sqlite3.
"PASSWORD": "sekrit", # Not used with sqlite3.
"HOST": "", # Set to empty string for localhost. Not used with sqlite3.