99 lines
5.3 KiB
Markdown
99 lines
5.3 KiB
Markdown
# YTDL Web
|
|
|
|
## Usage
|
|
|
|
```sh
|
|
ytdl-web [OPTIONS]
|
|
```
|
|
|
|
Available options:
|
|
|
|
- -b, --base-path string the base path, used when behind reverse proxy
|
|
- --config string config file (default is $XDG_CONFIG_HOME/ytdl-web/config.yml)
|
|
- -h, --help help for ytdl-web
|
|
- -l, --listen string address to listen on (default "127.0.0.1")
|
|
- -p, --port int port to listen on (default 8080)
|
|
- -y, --ytdlp-path string the path to the yt-dlp binary, used when it is not in $PATH (default "yt-dlp")
|
|
|
|
## Configuration
|
|
|
|
### Environment variables
|
|
|
|
You can configure the application using environment variables
|
|
|
|
| Variable Name | Description | Default Value | Accepted Values |
|
|
| ---------------------------------- | ----------------------------------------------------------------------------------------------- | --------------- | ------------------------------------------------------------------------------ |
|
|
| YTDL_CONFIGDIR | Add a custom config directory to search for the config file | ` ` | |
|
|
| YTDL_ENV | The application environment | `Production` | `Development`, `Staging`, `Production` |
|
|
| YTDL_YTDLP_BINARYPATH | The path to the yt-dlp binary | `yt-dlp` | |
|
|
| YTDL_HTTP_PORT | The tcp port for the web server to listen on | `8080` | |
|
|
| YTDL_HTTP_LISTEN | The address for the web server to listen on | `127.0.0.1` | `0.0.0.0`, `127.0.0.1`, etc. |
|
|
| YTDL_HTTP_BASEPATH | The base path of the application, useful for reverse proxies | `/` | |
|
|
| YTDL_CACHE_TTL | How long to keep cached metadata | `1h` | `1h`, `30s`, `2m`, etc. |
|
|
| YTDL_CACHE_DIRPATH | The path to the directory of where to store the cache | `/tmp/ytdl-web` | |
|
|
| YTDL_COOKIES_ENABLED | Whether to use cookies when using yt-dlp | `true` | `true` or `false` |
|
|
| YTDL_COOKIES_FILEPATH | The path to the netscape format cookies file | `./cookies.txt` | |
|
|
| YTDL_COOKIES_FROMBROWSER_BROWSER | The name of the browser to load cookies from. (if specified, it disables YTDL_COOKIES_FILEPATH) | ` ` | `brave`, `chrome`, `chromium`, `edge`, `firefox`, `opera`, `safari`, `vivaldi` |
|
|
| YTDL_COOKIES_FROMBROWSER_KEYRING | The name of the keyring for decrypting cookies for the chromium browser on linux | ` ` | `basictext`, `gnomekeyring`, `kwallet` |
|
|
| YTDL_COOKIES_FROMBROWSER_PROFILE | The browser profile to load cookies from | ` ` | |
|
|
| YTDL_COOKIES_FROMBROWSER_CONTAINER | The container name (if firefox) to load the cookies from | ` ` | |
|
|
|
|
## Building from source
|
|
|
|
Prerequisites:
|
|
|
|
- [devenv](https://devenv.sh/getting-started/)
|
|
|
|
Steps:
|
|
|
|
1. Enter devenv shell
|
|
|
|
```sh
|
|
devenv shell
|
|
```
|
|
|
|
2. Run the build script
|
|
|
|
```sh
|
|
build
|
|
```
|
|
|
|
## Releasing
|
|
|
|
Prerequisites:
|
|
|
|
- [devenv](https://devenv.sh/getting-started/)
|
|
|
|
Steps:
|
|
|
|
1. Ensure gitea access token is in `~/.config/goreleaser/gitea_token`
|
|
|
|
2. Enter devenv shell
|
|
|
|
```sh
|
|
devenv shell
|
|
```
|
|
|
|
3. Run the release script
|
|
|
|
```sh
|
|
release
|
|
```
|
|
|
|
## Contributing
|
|
|
|
Please read [CONTRIBUTING.md](./CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
|
|
|
|
## Versioning
|
|
|
|
We use [Semantic Versioning](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://git.fifitido.net/apps/ytdl-web/tags).
|
|
|
|
## Authors
|
|
|
|
- Evan Fiordeliso - _Initial project work_ - [efiordeliso](https://git.fifitido.net/efiordeliso)
|
|
- Billie Thompson - _Provided README Template_ - [PurpleBooth](https://github.com/PurpleBooth)
|
|
|
|
## License
|
|
|
|
The project is licensed under the [GPL v3](./LICENSE.md) License - see the [LICENSE.md](./LICENSE.md) file for details.
|