Ondographics
============

A desktop client for YouTube Music with an OBS overlay, song requests from Twitch
chat or channel-point redemptions, and a taskbar that shows the app instead of the
Electron atom.

Installing
----------

Unzip the archive anywhere and double-click install.cmd. Everything is installed
for the current user only:

  * the program      %LOCALAPPDATA%\Programs\Ondographics
  * Start menu       an "Ondographics" entry, and nothing else
  * your settings    %APPDATA%\Ondographics  (kept if you uninstall)

No administrator rights are needed and none are requested. Nothing is written to
Program Files, no service is installed, and no driver is loaded.

There is no .exe to install, and that is on purpose. This archive is a folder with
two .cmd files and three .ps1 scripts in it, and it ships no self-extracting wrapper
of its own: the only program inside is the stock Electron runtime the app runs on,
which Windows already allows. Smart App Control refuses unsigned executables, and there is not
one of this project's here for it to refuse. The installer also clears the
"downloaded from the internet" mark from everything it unpacks, including these
scripts, so nothing asks a question on the way in. If Windows does ask about
install.cmd before that - some machines do, for a script that arrived in a
downloaded folder - choose Run.

Anything typed after install.cmd is handed to install.ps1 (see "Command line, for
scripts" below), so choosing a folder, skipping the shortcuts or staying quiet all
work from a prompt. With no arguments it installs with the defaults above.

Running it without installing
-----------------------------

You do not have to install it at all. Unzip the archive and double-click run.cmd:
the app starts from that folder, nothing is copied anywhere, and the only thing
written outside it is what the app keeps wherever it runs - your settings, logs and
signed-in session in %APPDATA%\Ondographics. That is the same folder an installed
copy uses, so your sign-in, your theme and your queue are yours either way.

The one thing a folder run does not have is a Start menu entry, and with it the
taskbar icon: Windows draws that button from a shortcut, so the icon is what the
shortcut brings. Ask for one if you want it, and take it away when you do not:

  run.cmd -Shortcut           a Start menu entry, and the taskbar icon with it
  run.cmd -Shortcut -Desktop  and one on the Desktop
  run.cmd -Remove             remove those again

One caveat worth knowing: a shortcut belongs to the build, not to the folder, and an
identity can only have one holder. So if you have also installed this same build,
-Shortcut replaces that install's Start menu entry with one pointing at this folder.
Running one build two ways is therefore not meant to be kept side by side. The other
build - Ondographics against Ondographics Local - keeps its own entry and identity.

Only one copy runs at a time, whichever folder it was started from: the two builds
share one settings folder and the app holds a single-instance lock on it, so
starting a second copy brings the running one's window to the front instead.

Uninstalling
------------

"Apps & features" in Windows Settings. Uninstalling is deliberately not offered
in the Start menu: the entry used to sit directly under the app's own, where a
mis-click throws the install away. Your settings, logs and the account you signed
in with are left alone; add -PurgeData to the uninstall command to remove those
too.

Why it is built this way
------------------------

The app is never repackaged into a new executable: it is the stock Electron runtime
running these application files, and updating means replacing those files, not the
runtime.

Be clear about the warning, because the honest answer is less comforting than the
marketing one. The Electron runtime this project runs on is not code-signed, so
Windows has no way to know who made it. What the installer does instead is clear the
"downloaded from the internet" mark from everything it unpacks, which is what
actually produces the first-run dialog. A file without that mark does not get asked
about. A signature made with a certificate this project issued would not change
that either: Windows only stops asking when the certificate chains to a root it
already trusts, and those are issued by public authorities after an identity check.

Command line, for scripts
-------------------------

These options belong to install.ps1 and uninstall.ps1, the scripts in this archive.
install.cmd passes anything you give it straight to install.ps1.

  install.ps1   -InstallDir <path>  install somewhere else
                -Desktop            also create a Desktop shortcut (the default)
                -NoShortcuts        install the files only
                -NoLaunch           do not start the app afterwards
                -Quiet              no transcript, no prompts
  uninstall.ps1 -PurgeData          also delete %APPDATA%\Ondographics
                -Quiet              no transcript, no prompts
