Lightweight YouTube client for Linux https://trizenx.blogspot.com/2012/03/gtk-youtube-viewer.html

trizen bd053b07c5 Version 3.11.1 3 weeks ago
.github 343a608396 Create FUNDING.yml 4 years ago
bin bd053b07c5 Version 3.11.1 3 weeks ago
lib bd053b07c5 Version 3.11.1 3 weeks ago
share b7e3e05e5c 2024 -- looking good so far 2 months ago
t 6c42fb1f1a Version v3.5.4. 5 years ago
utils 5c8afe498d - Re-implemented support for related videos, without using the YouTube API. 7 months ago
.gitignore ecaabe125c Make "Unicode::GCString" recommended. 3 years ago
Build.PL 3324f408b6 - Extended `fat32safe` to convert Unicode characters to ASCII equivalent when `Text::Unidecode` is available. 10 months ago
Changes b3ceba2807 Version 3.11.0 2 months ago
LICENSE 36f91117c9 modified: LICENSE 7 years ago
MANIFEST f67c1db5a6 renamed: bin/gtk3-youtube-viewer -> bin/gtk-youtube-viewer 3 years ago
MANIFEST.SKIP ab564f3a75 Version 3.5.9 4 years ago
Makefile.PL 4fbbbefc49 Code tidy. 7 months ago
README.md 107006ac4e modified: README.md -- prefer the `-git` version from AUR 2 months ago

README.md

youtube-viewer

A lightweight application for searching and playing videos from YouTube.

youtube-viewer

  • command-line interface to YouTube.

youtube-viewer

gtk-youtube-viewer

  • GTK+ interface to YouTube.

gtk-youtube-viewer

AVAILABILITY

INSTALLATION

To install youtube-viewer, run:

    perl Build.PL
    sudo ./Build installdeps
    sudo ./Build install

To install gtk-youtube-viewer along with youtube-viewer, run:

    perl Build.PL --gtk
    sudo ./Build installdeps
    sudo ./Build install

TRY

For trying the latest commit of youtube-viewer, without installing it, execute the following commands:

    cd /tmp
    wget https://github.com/trizen/youtube-viewer/archive/master.zip -O youtube-viewer-master.zip
    unzip -n youtube-viewer-master.zip
    cd youtube-viewer-master/bin
    ./youtube-viewer

DEPENDENCIES

For youtube-viewer:

For gtk-youtube-viewer:

Optional dependencies:

PACKAGING

To package this application, run the following commands:

    perl Build.PL --destdir "/my/package/path" --installdirs vendor [--gtk]
    ./Build test
    ./Build install --install_path script=/usr/bin

LOGGING IN

Starting with version 3.7.4, youtube-viewer provides the ~/.config/youtube-viewer/api.json file, which allows setting an YouTube API key and the client ID/SECRET values:

{
    "key":           "API_KEY",
    "client_id":     "CLIENT_ID",
    "client_secret": "CLIENT_SECRET"
}
  • Prerequisite: you must create a Google Platform project. Following the below steps should prompt you to create one if you do not already have one.
  • Enable the YouTube Data v3 API on your project: navigate here and click "Enable" (if you see a blue "Manage" button, it's already enabled).
  • Replace API_KEY with your YouTube API key. Create a new key here by clicking on "Create Credentials" > "API Key".
  • Optionally, in order to log in, replace CLIENT_ID and CLIENT_SECRET with your native client ID and client secret values, by creating a new OAuth 2.0 Client ID here: click "Create Credentials" > "OAuth client ID", then select "TV and Limited Input devices" (tutorial -- may be outdated).

The project must have the following scope enabled: https://www.googleapis.com/auth/youtube

Also, in order to log in, grant access to the project in: https://console.cloud.google.com/apis/credentials/consent

See also: #285, #308.

PIPE-VIEWER

pipe-viewer is a fork of straw-viewer, which parses the YouTube website directly, and thus it does not require an YouTube API key.

REVIEWS

VIDEO REVIEWS

SUPPORT AND DOCUMENTATION

After installing, you can find documentation with the following commands:

man youtube-viewer
perldoc WWW::YoutubeViewer

LICENSE AND COPYRIGHT

Copyright (C) 2012-2024 Trizen

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See https://dev.perl.org/licenses/ for more information.