| @@ -9,18 +9,20 @@ on: | |||||
| jobs: | jobs: | ||||
| build-appimage: | build-appimage: | ||||
| name: Build | name: Build | ||||
| runs-on: ubuntu-latest | |||||
| runs-on: ubuntu-22.04 | |||||
| steps: | steps: | ||||
| - uses: actions/checkout@v3 | - uses: actions/checkout@v3 | ||||
| - name: Prepare environment | - name: Prepare environment | ||||
| env: | |||||
| PYTHON_KEYRING_BACKEND: keyring.backends.null.Keyring | |||||
| run: | | run: | | ||||
| sudo gem install ronn | |||||
| wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage -O /usr/local/bin/appimagetool | |||||
| sudo chmod +x /usr/local/bin/appimagetool | |||||
| sudo apt install libfuse2 | |||||
| pip install -U pip poetry appimage-builder | pip install -U pip poetry appimage-builder | ||||
| poetry install | poetry install | ||||
| sudo mkdir -p /usr/share/icons/hicolor/scalable/apps/kosmorro.svg | |||||
| sudo cp -r kosmorro/assets/svg/kosmorro-icon.svg /usr/share/icons/hicolor/scalable/apps/kosmorro.svg | |||||
| - name: Build wheel | - name: Build wheel | ||||
| run: | | run: | | ||||
| @@ -29,6 +31,7 @@ jobs: | |||||
| - name: Build AppImage | - name: Build AppImage | ||||
| run: | | run: | | ||||
| make appimage | make appimage | ||||
| tree build | |||||
| - name: Upload AppImage | - name: Upload AppImage | ||||
| uses: actions/upload-artifact@v2 | uses: actions/upload-artifact@v2 | ||||
| @@ -1,10 +1,11 @@ | |||||
| # appimage-builder recipe see https://appimage-builder.readthedocs.io for details | # appimage-builder recipe see https://appimage-builder.readthedocs.io for details | ||||
| version: 1 | version: 1 | ||||
| script: | | |||||
| mkdir -p build/AppDir build/AppDir/usr/share/icons/hicolor/scalable/apps | |||||
| cp kosmorro/assets/svg/kosmorro-icon.svg build/AppDir/usr/share/icons/hicolor/scalable/apps/kosmorro.svg | |||||
| pip3 install --isolated --root="./build/AppDir" ./dist/kosmorro-*.whl | |||||
| script: | |||||
| - rm -rf build/AppDir | true | |||||
| - mkdir -p build/AppDir AppDir/usr/share/icons/hicolor/scalable/apps/ | |||||
| - cp -r kosmorro/assets/svg/kosmorro-icon.svg AppDir/usr/share/icons/hicolor/scalable/apps/kosmorro.svg | |||||
| - python3 -m pip install --ignore-installed --prefix=/usr --root=build/AppDir dist/kosmorro-*.whl | |||||
| AppDir: | AppDir: | ||||
| path: build/AppDir | path: build/AppDir | ||||
| @@ -14,30 +15,24 @@ AppDir: | |||||
| icon: kosmorro | icon: kosmorro | ||||
| version: latest | version: latest | ||||
| exec: usr/bin/python3 | exec: usr/bin/python3 | ||||
| exec_args: $APPDIR/usr/local/bin/kosmorro $@ | |||||
| exec_args: -m kosmorro $@ | |||||
| runtime: | |||||
| env: | |||||
| PYTHONPATH: '$APPDIR/usr/local/lib/python3.10/site-packages' | |||||
| apt: | apt: | ||||
| arch: amd64 | arch: amd64 | ||||
| allow_unauthenticated: true | |||||
| sources: | sources: | ||||
| - sourceline: deb http://archive.ubuntu.com/ubuntu/ focal main restricted | |||||
| - sourceline: deb http://archive.ubuntu.com/ubuntu/ focal universe restricted | |||||
| - sourceline: 'deb http://archive.ubuntu.com/ubuntu/ jammy main restricted' | |||||
| key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xf6ecb3762474eda9d21b7022871920d1991bc93c' | |||||
| include: | include: | ||||
| - python3 | - python3 | ||||
| - python3-certifi | |||||
| - python3-dateutil | |||||
| exclude: [] | |||||
| files: | files: | ||||
| include: | include: | ||||
| - /usr/bin/sh | |||||
| - /usr/bin/bash | |||||
| - /usr/bin/env | |||||
| exclude: | |||||
| - usr/share/man | |||||
| - usr/share/doc/*/README.* | |||||
| - usr/share/doc/*/changelog.* | |||||
| - usr/share/doc/*/NEWS.* | |||||
| - usr/share/doc/*/TODO.* | |||||
| - '/usr/bin/env' | |||||
| test: | test: | ||||
| fedora-30: | fedora-30: | ||||
| @@ -27,12 +27,10 @@ prepare-release: messages changelog | |||||
| @echo | @echo | ||||
| @echo "Before tagging, don't forget to update version number in CHANGELOG" | @echo "Before tagging, don't forget to update version number in CHANGELOG" | ||||
| appdir: | |||||
| appimage: | |||||
| appimage-builder --skip-tests | appimage-builder --skip-tests | ||||
| mv *.AppImage dist/ | mv *.AppImage dist/ | ||||
| mv *.zsync dist/ | mv *.zsync dist/ | ||||
| appimage: appdir | |||||
| clean: | clean: | ||||
| rm -rf build dist appimage-builder-cache kosmorro.egg-info manpage/kosmorro.{1,7}{,.html} | rm -rf build dist appimage-builder-cache kosmorro.egg-info manpage/kosmorro.{1,7}{,.html} | ||||
| @@ -20,6 +20,8 @@ import argparse | |||||
| import sys | import sys | ||||
| import os.path | import os.path | ||||
| print(sys.path) | |||||
| from babel.dates import format_date | from babel.dates import format_date | ||||
| from kosmorrolib import Position, get_ephemerides, get_events, get_moon_phase | from kosmorrolib import Position, get_ephemerides, get_events, get_moon_phase | ||||
| from kosmorrolib.exceptions import OutOfRangeDateError | from kosmorrolib.exceptions import OutOfRangeDateError | ||||
| @@ -344,3 +346,7 @@ def get_args(output_formats: [str]): | |||||
| def main(): | def main(): | ||||
| sys.exit(run()) | sys.exit(run()) | ||||
| if __name__ == '__main__': | |||||
| main() | |||||
| @@ -2,11 +2,7 @@ | |||||
| from termcolor import colored as do_color | from termcolor import colored as do_color | ||||
| from sys import stderr | from sys import stderr | ||||
| try: | |||||
| from importlib.metadata import version | |||||
| except ImportError: | |||||
| from importlib_metadata import version | |||||
| from importlib.metadata import version | |||||
| KOSMORRO_VERSION = version("kosmorro") | KOSMORRO_VERSION = version("kosmorro") | ||||
| KOSMORROLIB_VERSION = version("kosmorrolib") | KOSMORROLIB_VERSION = version("kosmorrolib") | ||||
| @@ -21,7 +21,6 @@ termcolor = "^1.1" | |||||
| kosmorrolib = "^1.0" | kosmorrolib = "^1.0" | ||||
| python-dateutil = "^2.8" | python-dateutil = "^2.8" | ||||
| Babel = "^2.9" | Babel = "^2.9" | ||||
| importlib-metadata = "^4.11" | |||||
| openlocationcode = "^1.0" | openlocationcode = "^1.0" | ||||
| [tool.poetry.dev-dependencies] | [tool.poetry.dev-dependencies] | ||||