Compare commits

...

4 Commits

Author SHA1 Message Date
KeksNino 3597cba207 update pyside6 version 2026-01-14 18:50:11 +01:00
Vxrtrauter 749051aa4f Enhance build process: add backports dependencies and generate release notes 2026-01-14 14:21:00 +01:00
Vxrtrauter bd26f073e4 fix config issues (fallback values, prevent errors) 2026-01-14 14:02:31 +01:00
Vxrtrauter 027b4aff8d improved debug & console outputs 2026-01-14 13:47:58 +01:00
4 changed files with 50 additions and 22 deletions
+30 -1
View File
@@ -67,7 +67,7 @@ jobs:
run: | run: |
python -m pip install --upgrade pip python -m pip install --upgrade pip
pip install -r requirements.txt pip install -r requirements.txt
pip install pyinstaller pip install pyinstaller backports.tarfile
- name: Generate version - name: Generate version
id: version id: version
@@ -105,6 +105,11 @@ jobs:
--add-data "build_info.json;." \ --add-data "build_info.json;." \
--add-data "deps/aria2c.exe;." \ --add-data "deps/aria2c.exe;." \
--add-data "core/interface/assets;core/interface/assets" \ --add-data "core/interface/assets;core/interface/assets" \
--hidden-import=backports.tarfile \
--hidden-import=backports \
--hidden-import=jaraco.context \
--hidden-import=jaraco.text \
--hidden-import=jaraco.functools \
--name ${{ env.APP_NAME }} \ --name ${{ env.APP_NAME }} \
main.py main.py
@@ -115,6 +120,11 @@ jobs:
pyinstaller --onefile --windowed \ pyinstaller --onefile --windowed \
--add-data "build_info.json:." \ --add-data "build_info.json:." \
--add-data "core/interface/assets:core/interface/assets" \ --add-data "core/interface/assets:core/interface/assets" \
--hidden-import=backports.tarfile \
--hidden-import=backports \
--hidden-import=jaraco.context \
--hidden-import=jaraco.text \
--hidden-import=jaraco.functools \
--name ${{ env.APP_NAME }} \ --name ${{ env.APP_NAME }} \
main.py main.py
@@ -158,11 +168,30 @@ jobs:
chmod +x release/SoftwareManager-dev-*-linux release/SoftwareManager-dev-*-macos chmod +x release/SoftwareManager-dev-*-linux release/SoftwareManager-dev-*-macos
ls -la release/ ls -la release/
- name: Generate release notes
run: |
SHORT_SHA="${{ needs.build.outputs.short_sha }}"
cat > release_notes.md << EOF
## Development Build
**Commit:** [\`${SHORT_SHA}\`](https://github.com/${{ github.repository }}/commit/${{ github.sha }})
### Changes
$(git log -1 --pretty=format:"- %s" ${{ github.sha }})
### Downloads
- Linux: \`SoftwareManager-dev-${SHORT_SHA}-linux\`
- Windows: \`SoftwareManager-dev-${SHORT_SHA}-windows.exe\`
- macOS: \`SoftwareManager-dev-${SHORT_SHA}-macos\`
EOF
cat release_notes.md
- name: Create Release (Public) - name: Create Release (Public)
uses: softprops/action-gh-release@v2 uses: softprops/action-gh-release@v2
with: with:
tag_name: ${{ needs.build.outputs.version }} tag_name: ${{ needs.build.outputs.version }}
name: ${{ needs.build.outputs.version }} name: ${{ needs.build.outputs.version }}
body_path: release_notes.md
files: | files: |
release/SoftwareManager-dev-${{ needs.build.outputs.short_sha }}-linux release/SoftwareManager-dev-${{ needs.build.outputs.short_sha }}-linux
release/SoftwareManager-dev-${{ needs.build.outputs.short_sha }}-windows.exe release/SoftwareManager-dev-${{ needs.build.outputs.short_sha }}-windows.exe
+11 -16
View File
@@ -34,22 +34,17 @@ def read_config():
if not os.path.exists(config_file): if not os.path.exists(config_file):
create_config() create_config()
return
config.read(config_file) config.read(config_file)
if state.debug is not None: state.debug = config.getboolean("General", "debug", fallback=state.debug)
state.debug = config.getboolean("General", "debug") state.api_url = config.get("General", "api_url", fallback=state.api_url)
if state.api_url is not None: state.aria2_threads = config.getint("General", "aria2_threads", fallback=state.aria2_threads)
state.api_url = config.get("General", "api_url") state.download_path = config.get("General", "download_path", fallback=state.download_path)
if state.aria2_threads is not None: state.speed_limit = config.getint("General", "speed_limit", fallback=state.speed_limit)
state.aria2_threads = config.getint("General", "aria2_threads") state.ignore_updates = config.getboolean("General", "ignore_updates", fallback=state.ignore_updates)
if state.download_path is not None: state.image_path = config.get("General", "image_path", fallback=state.image_path)
state.download_path = config.get("General", "download_path") state.autoresume = config.getboolean("General", "autoresume", fallback=state.autoresume)
if state.speed_limit is not None:
state.speed_limit = config.getint("General", "speed_limit") create_config()
if state.ignore_updates is not None:
state.ignore_updates = config.getboolean("General", "ignore_updates")
if state.image_path is not None:
state.image_path = config.get("General", "image_path")
if state.autoresume is not None:
state.autoresume = config.getboolean("General", "autoresume")
+6 -2
View File
@@ -1,6 +1,7 @@
from core.utils.data.models import Download, DownloadList from core.utils.data.models import Download, DownloadList
from core.utils.data.state import state from core.utils.data.state import state
from dataclasses import asdict from dataclasses import asdict
from datetime import datetime
import json import json
import os import os
import re import re
@@ -165,11 +166,14 @@ def set_main_window(window):
_main_window = window _main_window = window
def consoleLog(text): def consoleLog(text):
now = datetime.now()
current_time = now.strftime("%H:%M:%S")
try: try:
from core.interface.gui import MainWindow from core.interface.gui import MainWindow
MainWindow.add_log(text) MainWindow.add_log(f"[{current_time}] {text}")
except Exception: except Exception:
pass pass
if state.debug: if state.debug:
print(text) print(f"[{current_time}] {text}")
+1 -1
View File
@@ -1,5 +1,5 @@
requests==2.32.2 requests==2.32.2
PySide6==6.9.2 PySide6==6.10.1
beautifulsoup4==4.13.5 beautifulsoup4==4.13.5
darkdetect==0.8.0 darkdetect==0.8.0
aria2p==0.12.1 aria2p==0.12.1