
VIDTUBER INSTALLATION INSTRUCTIONS AND BUILDINGS

=============================
Base application dependencies
=============================

    Requires:
        - Python >=3.11
        - wxPython >=4.1.1
        - PyPubSub >=4.0.3
        - requests
        - yt-dlp
        - FFmpeg (included ffprobe) >=5.1
    Optionals:
        - atomicparsley (http://atomicparsley.sourceforge.net/)


=========================
Run from source directory
=========================

Vidtuber can be run without installing by extracting the source archive
and executing the "launcher" script inside the source Vidtuber directory.

    cd Vidtuber (source directory)

    python launcher

Vidtuber can also be imported from the Python3 console (interactive mode):

    >>> from vidtuber import gui_app
    >>> gui_app.main()


=====================================
Translate the program into your language
=====================================

By default, MO (aka Machine Object) files are not distributed with the
source code and/or the Python sdist package, so the program will not be
fully translated into your language. Compiling the language translation
catalogs must be done on your machine by one of the following options:


-1- Using PoEdit application: <https://poedit.net/>

    Browse the directory corresponding to your language code:
        "Vidtuber/data/locale"
    Open the Vidtuber.po file using PoEdit, then save it (Ctrl+S). This is
    enough to translate Vidtuber into your native language.

-2- Using GNU-gettext utilities.

    Requires:
        - shell (/bin/bash)
        - msgfmt (from GNU-gettext)

    cd Vidtuber (source directory)

    ./develop/gettext_utils/generate_MO_files.sh

-3- Using `babel` Python package <https://pypi.org/project/babel/>

    Requires:
        - Python >= 3.10.0
        - pybabel (from `babel` package, installable via pip)

    cd Vidtuber (source directory)
    pybabel compile --domain Vidtuber --directory "Vidtuber/data/locale"

    To compile a single language file only, add the `--locale` option followed
    by your locale code as argument (e.g. `de_DE`) to pybabel comand line.


* Note that all the options listed above involve exiting and restarting
  Vidtuber, then setting the proper language from the preferences dialog.


======================
Installation using pip
======================

    -----------------------------------------------------------------------
    If you are a Linux/FreeBSD user, the standard installation procedure
    will not install wxPython, as wxPython's PyPi wheels provides support for
    Windows and MacOS only. Please install wxPython manually using your OS's
    package manager.

    Then, this assumes a virtual environment activated using python-venv
    module with `--system-site-package` option to share wxPython module
    installed in your OS,
    like this:

        python -m venv --system-site-packages --upgrade-deps VENV

        source VENV/bin/activate
    ------------------------------------------------------------------------

If you want install dependencies only, inside source directory type:

    python3 -m pip install -r requirements.txt

If you want install dependencies + Vidtuber, Use like this:

    python3 -m pip install git+https://github.com/jeanslack/Vidtuber.git@main -r requirements.txt

On some systems, you may need to use "py" or "python" instead of "python3"

