diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 97 |
1 files changed, 55 insertions, 42 deletions
@@ -1,14 +1,12 @@ # Invidious -[](https://travis-ci.org/omarroth/invidious) +[](https://travis-ci.org/github/iv-org/invidious) ## Invidious is an alternative front-end to YouTube +- [Copylefted libre software](https://github.com/iv-org/invidious) (AGPLv3+ licensed) - Audio-only mode (and no need to keep window open on mobile) -- [Free software](https://github.com/omarroth/invidious) (AGPLv3 licensed) -- No ads -- No need to create a Google account to save subscriptions -- Lightweight (homepage is ~4 KB compressed) +- Lightweight (the homepage is ~4 KB compressed) - Tools for managing subscriptions: - Only show unseen videos - Only show latest (or latest unseen) video from each channel @@ -18,11 +16,15 @@ - Dark mode - Embed support - Set default player options (speed, quality, autoplay, loop) -- Does not require JS to play videos -- Support for Reddit comments in place of YT comments +- Support for Reddit comments in place of YouTube comments - Import/Export subscriptions, watch history, preferences +- [Developer API](https://github.com/iv-org/invidious/wiki/API) - Does not use any of the official YouTube APIs -- Developer [API](https://github.com/omarroth/invidious/wiki/API) +- Does not require JavaScript to play videos +- No need to create a Google account to save subscriptions +- No ads +- No CoC +- No CLA Liberapay: https://liberapay.com/omarroth BTC: 356DpZyMXu6rYd55Yqzjs29n79kGKWcYrY @@ -30,7 +32,7 @@ BCH: qq4ptclkzej5eza6a50et5ggc58hxsq5aylqut2npk ## Invidious Instances -See [Invidious Instances](https://github.com/omarroth/invidious/wiki/Invidious-Instances) for a full list of publicly available instances. +[Public instances](https://github.com/iv-org/invidious/wiki/Invidious-Instances) are to be found in this list. ### Official Instances @@ -48,7 +50,7 @@ See [Invidious Instances](https://github.com/omarroth/invidious/wiki/Invidious-I ## Installation -See [Invidious-Updater](https://github.com/tmiland/Invidious-Updater) for a self-contained script that can automatically install and update Invidious. +[Invidious-Updater](https://github.com/tmiland/Invidious-Updater) is a self-contained script that can automatically install and update Invidious. ### Docker: @@ -58,7 +60,7 @@ See [Invidious-Updater](https://github.com/tmiland/Invidious-Updater) for a self $ docker-compose up ``` -And visit `localhost:3000` in your browser. +Then visit `localhost:3000` in your browser. #### Rebuild cluster: @@ -73,9 +75,11 @@ $ docker volume rm invidious_postgresdata $ docker-compose build ``` -### Linux: +### Linux + +To manually compile invidious you need at least 2GB of RAM. If you have less you can setup SWAP to have a combined amount of 2 GB or use Docker instead. -#### Install dependencies +#### Install the dependencies ```bash # Arch Linux @@ -91,16 +95,16 @@ $ sudo apt-get update $ sudo apt install crystal libssl-dev libxml2-dev libyaml-dev libgmp-dev libreadline-dev postgresql librsvg2-bin libsqlite3-dev ``` -#### Add invidious user and clone repository +#### Add an Invidious user and clone the repository ```bash $ useradd -m invidious $ sudo -i -u invidious -$ git clone https://github.com/omarroth/invidious +$ git clone https://github.com/iv-org/invidious $ exit ``` -#### Setup PostgresSQL +#### Set up PostgresSQL ```bash $ sudo systemctl enable postgresql @@ -115,13 +119,12 @@ $ psql invidious kemal < /home/invidious/invidious/config/sql/users.sql $ psql invidious kemal < /home/invidious/invidious/config/sql/session_ids.sql $ psql invidious kemal < /home/invidious/invidious/config/sql/nonces.sql $ psql invidious kemal < /home/invidious/invidious/config/sql/annotations.sql -$ psql invidious kemal < /home/invidious/invidious/config/sql/privacy.sql $ psql invidious kemal < /home/invidious/invidious/config/sql/playlists.sql $ psql invidious kemal < /home/invidious/invidious/config/sql/playlist_videos.sql $ exit ``` -#### Setup Invidious +#### Set up Invidious ```bash $ sudo -i -u invidious @@ -141,15 +144,29 @@ $ sudo systemctl enable invidious.service $ sudo systemctl start invidious.service ``` -### OSX: +#### Logrotate + +```bash +$ sudo echo "/home/invidious/invidious/invidious.log { +rotate 4 +weekly +notifempty +missingok +compress +minsize 1048576 +}" | tee /etc/logrotate.d/invidious.logrotate +$ sudo chmod 0644 /etc/logrotate.d/invidious.logrotate +``` + +### macOS: ```bash # Install dependencies $ brew update $ brew install shards crystal postgres imagemagick librsvg -# Clone repository and setup postgres database -$ git clone https://github.com/omarroth/invidious +# Clone the repository and set up a PostgreSQL database +$ git clone https://github.com/iv-org/invidious $ cd invidious $ brew services start postgresql $ psql -c "CREATE ROLE kemal WITH PASSWORD 'kemal';" # Change 'kemal' here to a stronger password, and update `password` in config/config.yml @@ -165,14 +182,14 @@ $ psql invidious kemal < config/sql/privacy.sql $ psql invidious kemal < config/sql/playlists.sql $ psql invidious kemal < config/sql/playlist_videos.sql -# Setup Invidious +# Set up Invidious $ shards update && shards install $ crystal build src/invidious.cr --release ``` ## Update Invidious -You can see how to update Invidious [here](https://github.com/omarroth/invidious/wiki/Updating). +Instructions are available in the [updating guide](https://github.com/iv-org/invidious/wiki/Updating). ## Usage: @@ -203,39 +220,35 @@ $ ./sentry ## Documentation -[Documentation](https://github.com/omarroth/invidious/wiki) can be found in the wiki. +[Documentation](https://github.com/iv-org/invidious/wiki) can be found in the wiki. ## Extensions -[Extensions](https://github.com/omarroth/invidious/wiki/Extensions) can be found in the wiki, as well as documentation for integrating it into other projects. +[Extensions](https://github.com/iv-org/invidious/wiki/Extensions) can be found in the wiki, as well as documentation for integrating it into other projects. ## Made with Invidious -- [FreeTube](https://github.com/FreeTubeApp/FreeTube): An Open Source YouTube app for privacy. -- [CloudTube](https://cadence.moe/cloudtube/subscriptions): A JS-rich alternate YouTube player -- [PeerTubeify](https://gitlab.com/Ealhad/peertubeify): On YouTube, displays a link to the same video on PeerTube, if it exists. -- [MusicPiped](https://github.com/deep-gaurav/MusicPiped): A materialistic music player that streams music from YouTube. +- [FreeTube](https://github.com/FreeTubeApp/FreeTube): A libre software YouTube app for privacy. +- [CloudTube](https://cadence.moe/cloudtube/subscriptions): A JavaScript-rich alternate YouTube player +- [PeerTubeify](https://gitlab.com/Cha_deL/peertubeify): On YouTube, displays a link to the same video on PeerTube, if it exists. +- [MusicPiped](https://github.com/deep-gaurav/MusicPiped): A material design music player that streams music from YouTube. +- [LapisTube](https://github.com/blubbll/lapis-tube): A fancy and advanced (experimental) YouTube front-end. Combined streams & custom YT features. +- [HoloPlay](https://github.com/stephane-r/HoloPlay): Funny Android application connecting on Invidious API's with search, playlists and favoris. ## Contributing -1. Fork it ( https://github.com/omarroth/invidious/fork ) +1. Fork it ( https://github.com/iv-org/invidious/fork ) 2. Create your feature branch (git checkout -b my-new-feature) 3. Commit your changes (git commit -am 'Add some feature') 4. Push to the branch (git push origin my-new-feature) -5. Create a new Pull Request +5. Create a new pull request -## Contact - -Feel free to send an email to omarroth@protonmail.com or join our [Matrix Server](https://riot.im/app/#/room/#invidious:matrix.org), or #invidious on Freenode. +#### Translation -You can also view release notes on the [releases](https://github.com/omarroth/invidious/releases) page or in the CHANGELOG.md included in the repository. +- Log in with an account you have elsewhere, or register an account and start translating at [Hosted Weblate](https://hosted.weblate.org/projects/invidious/). -## License +## Contact -[](http://www.gnu.org/licenses/agpl-3.0.en.html) +Feel free to send an e-mail to omarroth@protonmail.com or join our [Matrix server](https://riot.im/app/#/room/#invidious:matrix.org), or #invidious on freenode. -Invidious is Free Software: You can use, study share and improve it at your -will. Specifically you can redistribute and/or modify it under the terms of the -[GNU Affero General Public License](https://www.gnu.org/licenses/agpl.html) as -published by the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +You can also read the release notes on the [page of releases](https://github.com/iv-org/invidious/releases) [CHANGELOG.md](https://github.com/iv-org/invidious/blob/master/CHANGELOG.md) included in the repository. |
