Skip to content

Commit

Permalink
Merge pull request #15 from endlessm/T32061-add-kolibri-zim-plugin
Browse files Browse the repository at this point in the history
Add kolibri_zim_plugin to includes
  • Loading branch information
dylanmccall authored Jul 31, 2021
2 parents d411e69 + d738d56 commit dd3a5a9
Show file tree
Hide file tree
Showing 4 changed files with 77 additions and 54 deletions.
20 changes: 18 additions & 2 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ jobs:

- name: Install requirements
run: |
pip install wheel
pip install -r requirements.txt
pip install -r requirements-win.txt
npm install -g yarn
Expand All @@ -37,13 +38,28 @@ jobs:
run: |
python kapew.py prep-kolibri-dist --exclude-prereleases --skip-preseed
- name: Apply performance patches
- name: Update kolibri.dist.le_utils for kolibri-zim-plugin
run: |
cp patches/morango-models-utils.py src/kolibri/dist/morango/models/utils.py
pip install git+https://github.com/learningequality/le-utils.git@master --target="src\kolibri\dist" --upgrade
- name: Update kolibri.dist.morango for improved performance on Windows
run: |
pip install morango==0.5.6 --target="src\kolibri\dist" --upgrade
- name: Add kolibri_zim_plugin to Kolibri's dist packages
run: |
pip install kolibri-zim-plugin --target="src\kolibri\dist"
# - name: Apply performance patches
# run: |
# cp patches/morango-models-utils.py src/kolibri/dist/morango/models/utils.py

- name: Build
run: |
python kapew.py build
- name: Add package data files to dist
run: |
mv src/kolibri dist/win/Kolibri
mv dist/win/Kolibri kolibri-electron/src/
Expand Down
30 changes: 24 additions & 6 deletions project_info.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,33 @@
"launch_images": {"android": "assets/launch-image.png"},
"asset_dirs": ["assets", "locale"],
"build_tool": {
"win": "pyinstaller"
"win": "pyinstaller"
},
"import_hooks_file": "stdlib_imports.py",
"includes": ["html.parser", "http.cookies", "kolibri.deployment.default.settings.base", "logging.config", "logging.handlers", "pkg_resources.py2_warn"],
"excludes": ["numpy"],
"includes": [
"html.parser",
"http.cookies",
"kolibri.deployment.default.settings.base",
"logging.config",
"logging.handlers",
"pkg_resources.py2_warn"
],
"excludes": [
"numpy"
],
"packages": {
"common": ["setuptools", "sqlite3", "six"],
"win": ["wx"],
"osx": ["kolibri", "wx"]
"common": [
"setuptools",
"sqlite3",
"six"
],
"win": [
"wx"
],
"osx": [
"kolibri",
"wx"
]
},
"disk_image": {
"background": "assets/disk_image/Layout.png",
Expand Down
51 changes: 32 additions & 19 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,24 +1,37 @@
#
# This file is autogenerated by pip-compile
# This file is autogenerated by pip-compile with python 3.9
# To update, run:
#
# pip-compile requirements.in
#
-e git+git://github.com/kollivier/pyeverywhere.git@dev#egg=pyeverywhere # via -r requirements.in
asn1crypto==1.4.0 # via cryptography
certifi==2020.6.20 # via requests
cffi==1.14.3 # via cryptography
chardet==3.0.4 # via requests
cryptography==2.3 # via -r requirements.in
dmgbuild==1.4.2 # via pyeverywhere
docopt==0.6.2 # via pbxproj
ds-store==1.3.0 # via dmgbuild
idna==2.10 # via cryptography, requests
mac-alias==2.1.0 # via dmgbuild
openstep-parser==1.5.3 # via pbxproj
pbxproj==3.2.0 # via pyeverywhere
pycparser==2.20 # via cffi
requests==2.24.0 # via -r requirements.in, pyeverywhere
six==1.15.0 # via cryptography, pyeverywhere, virtualenv-api
urllib3==1.25.11 # via requests
virtualenv-api==2.1.18 # via pyeverywhere
-e git+git://github.com/kollivier/pyeverywhere.git@dev#egg=pyeverywhere
# via -r requirements.in
asn1crypto==1.4.0
# via cryptography
certifi==2020.6.20
# via requests
cffi==1.14.3
# via cryptography
chardet==3.0.4
# via requests
cryptography==2.3
# via -r requirements.in
idna==2.10
# via
# cryptography
# requests
pycparser==2.20
# via cffi
requests==2.24.0
# via
# -r requirements.in
# pyeverywhere
six==1.15.0
# via
# cryptography
# pyeverywhere
# virtualenv-api
urllib3==1.25.11
# via requests
virtualenv-api==2.1.18
# via pyeverywhere
30 changes: 3 additions & 27 deletions src/main.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
import builtins
import datetime
import gettext
import logging
import os
import pew
import sys

from functools import partial

from config import KOLIBRI_PORT
from kolibri_tools.utils import start_kolibri_server

Expand Down Expand Up @@ -61,34 +62,9 @@ def flush(self):
sys.path.insert(0, extra_python_path)
sys.path.insert(0, os.path.join(extra_python_path, "kolibri", "dist"))

pew.set_app_name("Kolibri")

KOLIBRI_ROOT_URL = 'http://localhost:{}'.format(KOLIBRI_PORT)
os.environ["DJANGO_SETTINGS_MODULE"] = "kolibri.deployment.default.settings.base"

app_data_dir = pew.get_app_files_dir()
os.makedirs(app_data_dir, exist_ok=True)

languages = None
locale_info = {}
try:
t = gettext.translation('macapp', locale_root_dir, languages=languages, fallback=False)
locale_info = t.info()
# We have not been able to reproduce, but we have seen this happen in user tracebacks, so
# trigger the exception handling fallback if locale_info doesn't have a language key.
if not 'language' in locale_info:
raise Exception("Received invalid language_info dict.")
_ = t.gettext

except Exception as e:
# Fallback to English and if we fail to find any language catalogs.
locale_info['language'] = 'en_US'
def _(text):
return text
logging.warning("Error retrieving language: {}".format(repr(e)))

logging.info("Locale info = {}".format(locale_info))


class Application:
def _init_log(self):
Expand Down

0 comments on commit dd3a5a9

Please sign in to comment.