diff --git a/.github/workflows/taskon-tests.yml b/.github/workflows/taskon-tests.yml index ef3efb0..4891406 100644 --- a/.github/workflows/taskon-tests.yml +++ b/.github/workflows/taskon-tests.yml @@ -80,7 +80,7 @@ jobs: - name: Build Windows executable with PyInstaller (include assets) shell: cmd run: | - pyinstaller taskon/main.py --onefile --noconsole --name TaskOnApp ^ + pyinstaller taskon/main.py --onefile --noconsole --name TaskOn --icon=taskon/assets/images/growing-seed.ico ^ --add-data "taskon/assets/audio;assets/audio" ^ --add-data "taskon/assets/images;assets/images" diff --git a/taskon/audio_service.py b/taskon/audio_service.py index 09f9c4c..400f995 100644 --- a/taskon/audio_service.py +++ b/taskon/audio_service.py @@ -1,4 +1,6 @@ import os +import sys + import pygame from abc import ABC, abstractmethod @@ -36,7 +38,10 @@ def __init__(self, base_path=None): defaults to '../assets/audio/' relative to this file. """ if base_path is None: - base_path = os.path.join(os.path.dirname(__file__), "assets/audio") + if hasattr(sys, '_MEIPASS'): + base_path = os.path.join(sys._MEIPASS, 'assets', 'audio') + else: + base_path = os.path.join(os.path.dirname(__file__), 'assets/audio') self.base_path = os.path.abspath(base_path) pygame.init()