-
Notifications
You must be signed in to change notification settings - Fork 0
Description
The project currently does not have a proper installer or reliable update mechanism. The existing setup works, but it relies on temporary workarounds that are not ideal for users.
Installer / Setup issue
Right now there is no installer. Users must manually extract the project and configure the environment.
To make the tools work, the /bin directory must be added to the system PATH so executables such as ffmpeg and yt-dlp can be accessed.
I created a small automation script (path.bat) that adds the /bin directory to the PATH automatically. However, this is only a temporary workaround and not a proper installation method.
Current situation:
- No installer
- No automated setup process
- PATH must be configured manually or through
path.bat - This is not ideal for users who are not familiar with system configuration
A proper installation method would ideally:
- Detect the environment
- Add
/binto PATH safely - Verify required binaries
- Set up the application in a predictable way
Updater issue
An updater system was implemented to check GitHub releases and download updates automatically.
The intended workflow is:
- The application checks the latest release from GitHub.
- The current version is compared with the latest release version.
- If a newer version exists:
- Download the latest release archive
- Extract it
- Replace application files
- Preserve important local directories when possible.
However, the current implementation fails in some PHP environments because it relies on:
file_get_contents("https://api.github.com/...")
If PHP does not have HTTPS wrappers or OpenSSL enabled (which happens in some Windows setups), the updater fails with:
"Unable to find the wrapper 'https'"
Because of this:
- The updater cannot contact GitHub
- Version checks fail
- Automatic updates break
What is needed
A more reliable update implementation that works across typical PHP environments.
Possible improvements:
- Use cURL instead of file_get_contents
- Add environment checks before attempting updates
- Improve error handling for missing dependencies
Goal
The goal is to make installation and updating easier and more reliable for users without requiring manual configuration or troubleshooting.