HLS Video Downloader Native Messaging Client for Windows, Linux and macOS.
- Windows: install-win.exe
- Linux: install-linux.deb
- macOS: install-macos.pkg
Note
On macOS you need to Ctrl+Click or Right-Click the .pkg and then choose Open to install.
This is the client for this Web Extension: https://github.com/cssnr/hls-video-downloader
Tested and working in the following browsers:
- Firefox
- Waterfox
- Edge
- Chrome
- Chromium
- Brave
- Opera
- Vivaldi
- Ghost
Download and run the installer for your operating system from the latest release.
This can be run directly from the client.py
source file. To do this, all the configuration must be in place and
Python installed. You can either run the installer first or manually configure the app (see More Info).
Then, place the client.bat (Windows) or the client.sh
(Linux/macOS) into the installation directory and update it to point to your source client.py
file.
Note: You may need to place an ffmpeg
executable in the src
directory on some operating systems.
ffmpeg = shutil.which("ffmpeg")
if not ffmpeg:
ffmpeg = os.path.join(os.getcwd(), "ffmpeg")
Lastly, update the installed manifest file for your browser to point to the client.bat or client.sh.
This information is only here for advanced users. Different operating systems and browsers have different requirements. For this purpose, I created an Installers for each OS. For more details, see the More Info section below.
This guide is for reference only. The release builds are built with GitHub Actions. See build.yaml for more details.
Note
The Windows installer uses Inno Setup which must be manually installed.
Note: FFmpeg must be placed in dist/ffmpeg.exe
Build the App:
python -m pip install -r requirements.txt
pyinstaller --noconfirm client.spec
python manifest.py
Create the Installer:
iscc.exe client.iss
Note: FFmpeg must be placed in dist/ffmpeg
#python -m pip install -r requirements.txt
python manifest.py
bash build-linux.sh
Note
The macOS installer uses Packages which must be manually installed.
Note: FFmpeg must be placed in dist/ffmpeg
Build the App:
python -m pip install -r requirements.txt
pyinstaller --noconfirm client.spec
python manifest.py
Create the Package:
bash build-mac.sh
Windows requires corresponding registry entries for the manifest files (see location links below).
Windows and macOS requires packaging the app with pyinstaller
to bundle python.
Manifest files must be renamed to org.cssnr.hls.downloader.json
on Linux and macOS.
Manifest key path
must be set to the absolute path to the client
location.
Manifest files must be placed in specific directories:
- Firefox: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Native_manifests#manifest_location
- Chrome: https://developer.chrome.com/docs/extensions/develop/concepts/native-messaging#native-messaging-host-location
The client
location must be writable by the user and a writable log.txt
must be present in that location due to the current logging configuration in the client.py.
The client.py
must be executable by the user with Python installed and working.