ytdl-sub/docs/source/guides/getting_started/index.rst
Ross Patterson 3c45e2217e
[DOCS] Clarify Docker container image install (#1282)
* docs(install): Redundant platform-specific mention

I'm guessing this is a remnant from before it got it's own page.

* docs(docker): Clarify container image install

Capturing my changes thus far while I go off to educate myself about rST/Sphinx refs vs
links. As such, this duplicates a reference link in a way I don't like:

    :ref:`Automating Downloads <guides/getting_started/automating_downloads:docker and
    unraid>`

If you want to fix that or are OK with the duplication, this should be ready to
go. Otherwise, I'll fix and force push once I've learned how to do this correctly.

A matter of opinion in this change, I did away with the tabbed GUI vs headless code
blocks and the separate CPU/GPU passthrough code blocks because I find comments in
example code to be more clear, more readable, and more approachable. This also has the
benefit of putting informative comments in the resulting user's configuration. For
example, imagine a user that learns only later that they require GPU passthrough, their
configuration is already ready to get them started. This comes at the cost some repeated
comments (`environment:` and `deploy:` for GPU passthrough) and the fancy Sphinx
highlighting of relevant lines. I think the trade-off is a net benefit for users.

* docs(sphinx): Fix extlinks LSIO reference usage

* docs(sphinx): Address inline literal warning

Addresses:

    ./docs/source/config_reference/plugins.rst:848: WARNING: Inline literal start-string
    without end-string. [docutils]

* docs(start): Clarify prerequisite tech knowledge
2025-08-17 08:09:21 -07:00

60 lines
2.6 KiB
ReStructuredText

Getting Started
===============
Prerequisite Knowledge
----------------------
As a lower level tool with no GUI, ``ytdl-sub`` requires some technical knowledge. You
must be able to:
- do `basic CLI shell navigation`_
- read and write `YAML text files`_
If you plan on using a :ref:`Docker headless image variant
<guides/install/docker:headless image>` of ``ytdl-sub``, you can:
- use ``$ nano /config/...`` to edit configuration files inside the container
- or bind mount ``/config/`` as a Docker volume and use the editor of your choice from
the host
.. _`basic CLI shell navigation`:
https://developer.mozilla.org/en-US/docs/Learn_web_development/Getting_started/Environment_setup/Command_line
.. _`YAML text files`: http://thomasloven.com/blog/2018/08/YAML-For-Nonprogrammers/
Terminology
-----------
Must-know terminology:
- ``subscription``: URL(s) that you want to download with specific metadata requirements.
- ``preset``: A media profile comprised of YAML configuration that can specify anything from metadata layout, media quality, or any feature of ytdl-sub, to apply to subscriptions. A preset can inherit other presets.
- ``prebuilt preset``: Presets that are included in ytdl-sub. These do most of the work defining plugins, overrides, etc in order to make downloads ready for player consumption.
- ``override``: Verb describing the act of overriding something in a preset. For example, the TV Show presets practically expect you to *override* the URL variable to tell ytdl-sub where to download from.
- ``override variables``: User-defined variables that are intended to *override* something.
- ``subscription file``: The file to specify all of your subscriptions and some override variables.
Intermediate terminology:
- ``plugin``: Modular logic to apply to a subscription. To use a plugin, it must be defined in a preset.
- ``config file``: An optional file where you can define custom presets and other advanced configuration.
- ``yt-dlp``: The underlying application that handles downloading for ytdl-sub.
Advanced terminology:
- ``entry variables``: Variables that derive from a downloaded yt-dlp entry (media).
- ``static variables``: Variables that do not have a dependency to entry variables.
- ``scripting``: Syntax that allows the use of entry variables, static variables, and functions in override variables.
Ready to Start?
---------------
Now that you've completed your install of ``ytdl-sub``, it's time to get started.
It is recommended to go through the below sections in order to fully grasp ytdl-sub.
.. toctree::
:maxdepth: 2
first_sub
first_download
automating_downloads
first_config