10 Commits

Author SHA1 Message Date
AresValley
d2e0ece9eb Linux and MacOS autopack actions 2022-10-01 19:40:06 +02:00
AresValley
d1716621b0 Auto packaging script for Linux OS 2022-10-01 12:30:32 +02:00
AresValley
cd5d31b404 Updated changelog 2022-09-30 22:37:22 +02:00
AresValley
5a1db2c0d4 Updated version info 2022-09-30 22:33:25 +02:00
AresValley
e4fdf1d564 Changed python version (3.10->3.9) for packaging 2022-09-30 22:10:12 +02:00
AresValley
3e02dd7bfa Updated changelog and version 2022-09-29 18:12:56 +02:00
AresValley
0e20fcbc71 Auto packaging for windows with GitHub actions 2022-09-29 18:02:38 +02:00
Marco Dalla Tiezza
91099940ff Merge pull request #34 from pinkavaj/pi-fix-play
Fix crash for playing audio
2022-09-29 17:58:29 +02:00
Jiří Pinkava
490d9cf3e6 Fix crash for playing audio
pygame 2.1.2 (SDL 2.24.0, Python 3.10.7
  File "audio_player.py", line 122, in _set_max_progress_bar
    self._audio_progress.setMaximum(
TypeError: setMaximum(self, int): argument 1 has unexpected type 'float'
2022-09-27 23:39:24 +02:00
Marco Dalla Tiezza
c84b0d2963 Update README.md 2022-07-29 22:15:57 +02:00
7 changed files with 193 additions and 5 deletions

64
.github/workflows/linux-packaging.yml vendored Normal file
View File

@@ -0,0 +1,64 @@
name: Auto Packaging - Linux
on:
workflow_dispatch:
jobs:
linux-packaging:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Use Python 3.9
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install dependencies
run: pip install -r ./requirements/requirements.txt
- name: Install PyInstaller
run: |
pip install pyinstaller
- name: Build Artemis main executable
run: |
cd ./spec_files/Linux
mkdir output
mkdir output/artemis
pyinstaller Artemis.spec
mv -v ./dist/Artemis ./output/Artemis
rm -rfv dist build
pyinstaller updater.spec
mv -v ./dist/_ArtemisUpdater ./output/_ArtemisUpdater
rm -rfv dist build
echo "Create single archives"
cd output
cp -r ../../../src/themes artemis/themes
rm -f artemis/themes/__current_theme
cp Artemis artemis/Artemis
cp _ArtemisUpdater artemis/_ArtemisUpdater
tar -czvf Artemis_linux.tar.gz Artemis -C artemis themes
tar -czvf _ArtemisUpdater_linux.tar.gz ./_ArtemisUpdater
echo "Create full archive for website"
cp ../artemis3.svg artemis
cp ../create_shortcut.sh artemis
tar -czvf ArtemisWebDownlaod_linux.tar.gz artemis
echo "Get size and sha256"
python ../../__get_hash_code.py Artemis_linux.tar.gz _ArtemisUpdater_linux.tar.gz ArtemisWebDownlaod_linux.tar.gz > checksum.txt
- uses: actions/upload-artifact@v3
with:
name: Artemis_Linux
path: |
./spec_files/Linux/output/Artemis_linux.tar.gz
./spec_files/Linux/output/_ArtemisUpdater_linux.tar.gz
./spec_files/Linux/output/ArtemisWebDownlaod_linux.tar.gz
./spec_files/Linux/output/checksum.txt

34
.github/workflows/macOS-packaging.yml vendored Normal file
View File

@@ -0,0 +1,34 @@
name: Auto Packaging - MacOS
on:
workflow_dispatch:
jobs:
macos-packaging:
runs-on: macos-11
steps:
- uses: actions/checkout@v3
- name: Use Python 3.9
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install dependencies
run: pip install -r ./requirements/requirements.txt
- name: Install PyInstaller
run: |
pip install pyinstaller
- name: Build Artemis main executable
run: |
cd ./spec_files/macOS
pyinstaller Artemis.spec
ls -lart
- uses: actions/upload-artifact@v3
with:
name: Artemis_MacOS
path: |
./spec_files/macOS/dist

79
.github/workflows/windows-packaging.yml vendored Normal file
View File

@@ -0,0 +1,79 @@
name: Auto Packaging - Windows
on:
workflow_dispatch:
jobs:
windows-packaging:
runs-on: windows-2022
steps:
- uses: actions/checkout@v3
- name: Use Python 3.9
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install dependencies
run: pip install -r ./requirements/requirements.txt
- name: Install PyInstaller
run: |
pip install pyinstaller
- name: Build Artemis main executables
run: |
CD spec_files\Windows
ECHO "Building Artemis executable..."
MKDIR output
pyinstaller artemis.spec
MOVE dist\Artemis.exe .\output\Artemis.exe
RMDIR -recurse -force dist
RMDIR -recurse -force build
ECHO "Building updater..."
pyinstaller updater.spec
MOVE dist\_ArtemisUpdater.exe .\output\_ArtemisUpdater.exe
RMDIR -recurse -force dist
RMDIR -recurse -force build
CD output
MKDIR Artemis
XCOPY /y Artemis.exe Artemis\
XCOPY /e /k /y ..\..\..\src\themes Artemis\themes\ /EXCLUDE:..\excluded_files.txt
XCOPY /y _ArtemisUpdater.exe Artemis\
ECHO "Compress files themes+Artemis.exe -> Artemis.zip"
$compress = @{
Path = ".\Artemis.exe", "..\..\..\src\themes"
CompressionLevel = "Optimal"
DestinationPath = ".\Artemis_win.zip"
}
Compress-Archive @compress
$compress = @{
Path = ".\_ArtemisUpdater.exe"
CompressionLevel = "Optimal"
DestinationPath = ".\_ArtemisUpdater_win.zip"
}
Compress-Archive @compress
ECHO "Compress all files for website download"
$compress = @{
Path = "Artemis"
CompressionLevel = "Optimal"
DestinationPath = ".\ArtemisWebsite_win.zip"
}
Compress-Archive @compress
python ..\..\__get_hash_code.py Artemis_win.zip _ArtemisUpdater_win.zip ArtemisWebsite_win.zip > checksum.txt
- uses: actions/upload-artifact@v3
with:
name: Artemis_Windows
path: |
.\spec_files\Windows\output\Artemis_win.zip
.\spec_files\Windows\output\_ArtemisUpdater_win.zip
.\spec_files\Windows\output\ArtemisWebsite_win.zip
.\spec_files\Windows\output\checksum.txt

View File

@@ -3,6 +3,16 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
The first release is [3.0.0] because this is actually the third major version (completely rewritten) of the software. The first release is [3.0.0] because this is actually the third major version (completely rewritten) of the software.
## [3.2.4] - 2022-09-30
### Fixed
- Fixed crash on opening the Rx/Tx Condition tab
## [3.2.3] - 2022-09-29
### Added
- Add auto-packaging feature using GitHub actions for Windows OS (experimental)
### Fixed
- Fix crash for playing audio ([#34](https://github.com/AresValley/Artemis/pull/34))
## [3.2.2] - 2022-07-29 ## [3.2.2] - 2022-07-29
### Fixed ### Fixed
- Fixed crash on startup or if checking for updates without an internet connection ([#23](https://github.com/AresValley/Artemis/pull/23)) - Fixed crash on startup or if checking for updates without an internet connection ([#23](https://github.com/AresValley/Artemis/pull/23))

View File

@@ -33,8 +33,8 @@ For more information, follow [the main page of Artemis 3](https://aresvalley.com
**Requirements:** **Requirements:**
- Windows 7/8/8.1/10 - Windows 7/8/8.1/10
- Linux: Ubuntu 18.04+, Mint 19+, Fedora 28+ and many other. **You need at least version 2.27 of the GLIBC system library** ([details](https://github.com/AresValley/Artemis/tree/master/spec_files)) - Linux: Ubuntu 20.04+, Mint 20+, Fedora 32+ and many other. **You need at least version 2.31 of the GLIBC system library** ([details](https://github.com/AresValley/Artemis/tree/master/spec_files))
- macOS - macOS 11+ (Big Sur or later)
### Run from source code ### Run from source code
Run the software from the source code with the Python interpreter is the simplest and natural way to run Artemis 3. Run the software from the source code with the Python interpreter is the simplest and natural way to run Artemis 3.
@@ -147,7 +147,7 @@ The only folder with the pre-built package is the `themes` one. In this way the
Some of the available themes were adapted from https://github.com/GTRONICK/QSS. Some of the available themes were adapted from https://github.com/GTRONICK/QSS.
## License ## License
This program (ARTEMIS 3, 2014-2020) is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program (ARTEMIS 3, 2014-2022) is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

View File

@@ -64,7 +64,7 @@ import loggingconf # noqa 401
# import default_imgs_rc # import default_imgs_rc
__LATEST_VERSION__ = "3.2.2" __LATEST_VERSION__ = "3.2.4"
if IS_BINARY: if IS_BINARY:
__VERSION__ = __LATEST_VERSION__ __VERSION__ = __LATEST_VERSION__

View File

@@ -1,3 +1,4 @@
import math
import os import os
from pygame import mixer from pygame import mixer
from PyQt5.QtCore import QTimer, pyqtSlot, QObject from PyQt5.QtCore import QTimer, pyqtSlot, QObject
@@ -120,7 +121,7 @@ class AudioPlayer(QObject):
def _set_max_progress_bar(self): def _set_max_progress_bar(self):
"""Set the maximum value of the progress bar.""" """Set the maximum value of the progress bar."""
self._audio_progress.setMaximum( self._audio_progress.setMaximum(
mixer.Sound(self._audio_file).get_length() * 1000 math.ceil(mixer.Sound(self._audio_file).get_length() * 1000)
) )
def set_audio_player(self, fname=""): def set_audio_player(self, fname=""):