summaryrefslogtreecommitdiffstats
path: root/_deploy
diff options
context:
space:
mode:
authorPhilip Sargent <philip.sargent@gmail.com>2024-12-31 22:14:58 +0000
committerPhilip Sargent <philip.sargent@gmail.com>2024-12-31 22:14:58 +0000
commit443583631316f16180d7439cb368052a592a51b2 (patch)
treeabaab9f9151e5538ceec85bea547c7cfe27a0333 /_deploy
parentf5441e4c6b62fe9ad8136f4867d2eaece7a0d0b8 (diff)
downloadtroggle-443583631316f16180d7439cb368052a592a51b2.tar.gz
troggle-443583631316f16180d7439cb368052a592a51b2.tar.bz2
troggle-443583631316f16180d7439cb368052a592a51b2.zip
cleaning version history of these which have no secrets in them
Diffstat (limited to '_deploy')
-rw-r--r--_deploy/debian-server/localsettings-2024-12-31.py3
-rw-r--r--_deploy/debian-server/localsettings2024-02-05.py160
-rw-r--r--_deploy/debian-server/localsettingsserver-old.py121
-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/this-is-the-live-expo.survex.com-system.txt1
6 files changed, 3 insertions, 469 deletions
diff --git a/_deploy/debian-server/localsettings-2024-12-31.py b/_deploy/debian-server/localsettings-2024-12-31.py
index 87979d5..0e2fe6f 100644
--- a/_deploy/debian-server/localsettings-2024-12-31.py
+++ b/_deploy/debian-server/localsettings-2024-12-31.py
@@ -34,7 +34,8 @@ DATABASES = {
'ENGINE': 'django.db.backends.mysql', # 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
"OPTIONS": {
"charset": "utf8mb4", # To permit emojis in logbook entries and elsewhere
- }, 'NAME' : 'troggle', # Or path to database file if using sqlite3.
+ },
+ 'NAME' : 'troggle', # Or path to database file if using sqlite3.
'USER' : 'expo', # Not used with sqlite3.
'PASSWORD' : 'not-the-real-password', # Not used with sqlite3.
'HOST' : '', # Set to empty string for localhost. Not used with sqlite3.
diff --git a/_deploy/debian-server/localsettings2024-02-05.py b/_deploy/debian-server/localsettings2024-02-05.py
deleted file mode 100644
index 3c5293e..0000000
--- a/_deploy/debian-server/localsettings2024-02-05.py
+++ /dev/null
@@ -1,160 +0,0 @@
-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 = True
-CACHEDPAGES = True # experimental page cache for a handful of page types
-
-
-# executables:
-CAVERN = 'cavern' # for parsing .svx files and producing .2d 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-server/localsettingsserver-old.py b/_deploy/debian-server/localsettingsserver-old.py
deleted file mode 100644
index 72ab0f0..0000000
--- a/_deploy/debian-server/localsettingsserver-old.py
+++ /dev/null
@@ -1,121 +0,0 @@
-import os
-import sys
-import urllib.parse
-
-"""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.
-"""
-
-print(" * importing troggle/localsettings.py")
-
-# DO NOT check this file into the git repo - it contains real passwords. [not this copy]
-SECRET_KEY = "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
-EXPOUSERPASS = "nope"
-EXPOADMINUSERPASS = "nope"
-EMAIL_HOST_PASSWORD = "nope"
-
-
-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' : 'not a real password', # 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 = "nnn:gggggg"
-EXPOUSER_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/'
-
-TEMPLATES = [
- {
- 'BACKEND': 'django.template.backends.django.DjangoTemplates',
- 'DIRS': [
- PYTHON_PATH + "templates"
- ],
- 'OPTIONS': {
- 'debug': 'DEBUG',
- 'context_processors': [
- 'django.contrib.auth.context_processors.auth',
- 'core.context.troggle_context',
- 'django.template.context_processors.debug',
- 'django.template.context_processors.i18n',
- 'django.template.context_processors.media',
- 'django.template.context_processors.static',
- 'django.template.context_processors.tz',
- 'django.contrib.messages.context_processors.messages',
- ],
- 'loaders': [
- 'django.template.loaders.filesystem.Loader',
- 'django.template.loaders.app_directories.Loader',
- # insert your TEMPLATE_LOADERS here
- ]
- },
- },
-]
-
-PUBLIC_SITE = True
-
-# This should be False for normal running
-DEBUG = True
-
-SURVEX_DATA = REPOS_ROOT_PATH + 'loser/'
-DRAWINGS_DATA = REPOS_ROOT_PATH + 'drawings/'
-
-CAVERN = 'cavern'
-THREEDTOPOS = 'survexport'
-EXPOWEB = REPOS_ROOT_PATH + 'expoweb/'
-SURVEYS = REPOS_ROOT_PATH
-SURVEY_SCANS = REPOS_ROOT_PATH + 'expofiles/surveyscans/'
-FILES = REPOS_ROOT_PATH + 'expofiles'
-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/'
-
-URL_ROOT = 'http://expo.survex.com/'
-DIR_ROOT = ''#this should end in / if a value is given
-EXPOWEB_URL = '/'
-SURVEYS_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/'
-
-MEDIA_ROOT = REPOS_ROOT_PATH + '/troggle/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 290, 291, 358 when they don't make it crash horribly
-NOTABLECAVESHREFS = [ "264", "258", "204", "76", "107"]
diff --git a/_deploy/debian-server/localsettingsserver2023-01-secret.py b/_deploy/debian-server/localsettingsserver2023-01-secret.py
deleted file mode 100644
index d99e61d..0000000
--- a/_deploy/debian-server/localsettingsserver2023-01-secret.py
+++ /dev/null
@@ -1,164 +0,0 @@
-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
deleted file mode 100644
index 1a5abb1..0000000
--- a/_deploy/debian-server/requirements-server.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-#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-server/this-is-the-live-expo.survex.com-system.txt b/_deploy/debian-server/this-is-the-live-expo.survex.com-system.txt
index e69de29..8e88969 100644
--- a/_deploy/debian-server/this-is-the-live-expo.survex.com-system.txt
+++ b/_deploy/debian-server/this-is-the-live-expo.survex.com-system.txt
@@ -0,0 +1 @@
+see .gitignore for those files which DO contain the secret passwords \ No newline at end of file