diff --git "a/Always-use-\"local\"-to-proxy-video-through-the-server-without-creating-an-account.md" "b/Always-use-\"local\"-to-proxy-video-through-the-server-without-creating-an-account.md" index 9978ea8..c663064 100644 --- "a/Always-use-\"local\"-to-proxy-video-through-the-server-without-creating-an-account.md" +++ "b/Always-use-\"local\"-to-proxy-video-through-the-server-without-creating-an-account.md" @@ -8,10 +8,10 @@ editor: markdown dateCreated: 2021-01-28T20:38:58.736Z --- -Download ViolentMonkey for your Browser: -[Firefox](https://addons.mozilla.org/en-US/firefox/addon/violentmonkey/) -[Chrome and Chromium](https://chrome.google.com/webstore/detail/violentmonkey/jinjaccalgkegednnccohejagnlnfdag) -[Others](https://violentmonkey.github.io/get-it/) +Download ViolentMonkey for your Browser: +[Firefox](https://addons.mozilla.org/en-US/firefox/addon/violentmonkey/) +[Chrome and Chromium](https://chrome.google.com/webstore/detail/violentmonkey/jinjaccalgkegednnccohejagnlnfdag) +[Others](https://violentmonkey.github.io/get-it/) Than add the following script in ViolentMonkey. It will always add `&local=true` to the end of the video URL. diff --git a/Apache2-Reverse-Proxy.md b/Apache2-Reverse-Proxy.md index 4b71eee..57b08ba 100644 --- a/Apache2-Reverse-Proxy.md +++ b/Apache2-Reverse-Proxy.md @@ -33,28 +33,28 @@ SSLCertificateChainFile /etc/letsencrypt/live/invidious.domain.tld/chain.pem ``` -- Another config example without HTTPS, but with Apache Basic Auth HTTP login. +- Another config example without HTTPS, but with Apache Basic Auth HTTP login. The user will connect to Apache on port 3333 and will be asked to log in. If authentification is successful, Apache will redirect the user to Invidious' page. To make the VirtualHost config below actually work, you should as well: - - Create a [.htpasswd](http://httpd.apache.org/docs/current/programs/htpasswd.html) file and add required [username/login combos](http://aspirine.org/htpasswd_en.html) to it, if not already existing. - - Open port 3333 (or any other free port) adding `Listen 3333` to Apache `ports.conf` (Debian `/etc/apache2/ports.conf`) - - If you run Invidious with default parameters, you may need to replace default host binding (0.0.0.0) with localhost (127.0.0.1) instead. That way, Invidious won't be publicly available on port 3000 anymore, but only accessible via the reverse proxy on port 3333. So if you run Invidious via a systemd service, you would edit the service file (e.g. `/etc/systemd/system/invidious.service`) and change modify the ExecStart line to include the -b switch as follows `ExecStart=/home/invidious/invidious/invidious -b 127.0.0.1 -o invidious.log` and then reload the daemon with `systemctl daemon-reload` so that changes are taken into account. - - A convenient way to open such protected Invidious page without having to log in manually everytime is to access use a URL with the following format: http://username:password@domain:3333 + - Create a [.htpasswd](http://httpd.apache.org/docs/current/programs/htpasswd.html) file and add required [username/login combos](http://aspirine.org/htpasswd_en.html) to it, if not already existing. + - Open port 3333 (or any other free port) adding `Listen 3333` to Apache `ports.conf` (Debian `/etc/apache2/ports.conf`) + - If you run Invidious with default parameters, you may need to replace default host binding (0.0.0.0) with localhost (127.0.0.1) instead. That way, Invidious won't be publicly available on port 3000 anymore, but only accessible via the reverse proxy on port 3333. So if you run Invidious via a systemd service, you would edit the service file (e.g. `/etc/systemd/system/invidious.service`) and modify the ExecStart line to include the -b switch as follows `ExecStart=/home/invidious/invidious/invidious -b 127.0.0.1 -o invidious.log` and then reload the daemon with `systemctl daemon-reload` so that changes are taken into account. + - A convenient way to open such protected Invidious page without having to log in manually everytime is to access use a URL with the following format: http://username:password@domain:3333 ``` - ServerName invidious.domain.tld #add your own domain name (or localhost if you have no) + ServerName invidious.domain.tld #add your own domain name (or localhost if you have none) ServerAdmin admin@localhost Deny from all # Forbid access to all by default... - #Allow from 127.0.0.1 #...Except from specific IPs (which will not need to authentificate)... + #Allow from 127.0.0.1 #...Except from specific IPs (which will not need to authenticate)... AuthUserFile /etc/apache2/.htpasswd #path to .htpasswd file AuthName "Restricted Area" # name displayed in the promptbox AuthType Basic # http://httpd.apache.org/docs/current/howto/auth.html Satisfy Any - Require valid-user # ...and except from authentified users included in the .htpasswd file + Require valid-user # ...and except from authenticated users included in the .htpasswd file ProxyPass / http://127.0.0.1:3000/ nocanon diff --git a/Authenticated-Endpoints.md b/Authenticated-Endpoints.md index c8b4ef3..40c4820 100644 --- a/Authenticated-Endpoints.md +++ b/Authenticated-Endpoints.md @@ -37,9 +37,9 @@ Examples: - `POST:playlists*`: authorizes `POST` methods to _any_ endpoint under `/api/v1/auth/playlists` (`/api/v1/auth/playlists`, `/api/v1/playlists/:id/videos`, etc.) -- `:playlists/*`: authorizes \_any method to endpoints under `/api/v1/auth/playlists/` (`/api/v1/auth/playlists/:id`, `/api/v1/playlists/:id/videos`, etc.) +- `:playlists/*`: authorizes _any_ method to endpoints under `/api/v1/auth/playlists/` (`/api/v1/auth/playlists/:id`, `/api/v1/playlists/:id/videos`, etc.) -- `GET:playlists/IVPAAAAAAA`: authorizes `GET` only to playlist `IVPAAAAAA`. +- `GET:playlists/IVPAAAAAAA`: authorizes `GET` only to playlist `IVPAAAAAAA`. - `:preferences`: authorizes _any_ method to `/api/v1/auth/preferences` diff --git a/Configuration.md b/Configuration.md index 92ea6a6..ba6d1af 100644 --- a/Configuration.md +++ b/Configuration.md @@ -74,7 +74,7 @@ db: - `host_binding` (default `0.0.0.0`) Default host for HTTP server -- `cookies` (default ``) Cookies to be used when connecting to YouTube +- `cookies` (default `nil`) Cookies to be used when connecting to YouTube - `captcha_key` (default `nil`) [Anti-Captcha](https://anti-captcha.com/) API key for solving YouTube CAPTCHAs, see [#886](https://github.com/iv-org/invidious/issues/886). diff --git a/Database-Information-and-Maintenance.md b/Database-Information-and-Maintenance.md index 2058224..8c84b7e 100644 --- a/Database-Information-and-Maintenance.md +++ b/Database-Information-and-Maintenance.md @@ -11,12 +11,12 @@ dateCreated: 2021-01-28T20:39:18.631Z Invidious needs one PostgreSQL database which has the following tables. - `annotations` Caches annotation data if `cache_annotations` is enabled in [`config.yml`](./Configuration) -- `channel_videos` Stores truncated video info, used to create user feeds -- `channels` Stores UCID and author name -- `nonces` Keeps track of tokens issued to prevent CSRF -- `users` Stores user info, such as preferences, username, subscriptions -- `session_ids` Keeps track of user sessions -- `videos` Stores video cache, used to create "top" page +- `channel_videos` Stores truncated video info, used to create user feeds +- `channels` Stores UCID and author name +- `nonces` Keeps track of tokens issued to prevent CSRF +- `users` Stores user info, such as preferences, username, subscriptions +- `session_ids` Keeps track of user sessions +- `videos` Stores video cache, used to create "top" page The table `videos` grows a lot and needs the most storage. You can clean it up using following commands: ```bash @@ -30,4 +30,4 @@ For regular maintenance you should add a cronjob for these commands ```bash @weekly psql invidious -c "DELETE FROM nonces * WHERE expire < current_timestamp" > /dev/null @weekly psql invidious -c "TRUNCATE TABLE videos" > /dev/null -``` \ No newline at end of file +``` diff --git a/Export-YouTube-subscriptions.md b/Export-YouTube-subscriptions.md index b1a1d4a..a37268a 100644 --- a/Export-YouTube-subscriptions.md +++ b/Export-YouTube-subscriptions.md @@ -8,16 +8,16 @@ editor: markdown dateCreated: 2021-01-28T20:39:23.334Z --- -**The steps below as well as the resulting file name are different depending on your Google language +**The steps below as well as the resulting file name are different depending on your Google language settings.** 1. Open [Google Takeout](https://takeout.google.com/takeout/custom/youtube). 2. Under `Create a new export` choose `YouTube and YouTube Music`. 3. Click on `All YouTube data included` and only tick `subscriptions` in the dialog that opens. 4. Click on `Next step`, make sure `Export once` is chosen and click on `Create export`. -5. Wait until the export creation is finished, then on the same page click on `Download` under +5. Wait until the export creation is finished, then on the same page click on `Download` under `Your latest export` that should now be visible. 6. Extract the downloaded archive and find the file `subscriptions.json`. -7. While logged into your Invidious account go to Subscriptions -> Manage Subscriptions -> - Import/Export -> Import YouTube subscriptions, select the file you just downloaded and click on +7. While logged into your Invidious account go to Subscriptions -> Manage Subscriptions -> + Import/Export -> Import YouTube subscriptions, select the file you just downloaded and click on `Import`. diff --git a/Extensions.md b/Extensions.md index 475500e..40ab776 100644 --- a/Extensions.md +++ b/Extensions.md @@ -9,14 +9,14 @@ dateCreated: 2021-01-28T20:39:27.709Z --- ### Browser extensions for Invidious -- [Privacy Redirect](https://github.com/SimonBrazell/privacy-redirect): Redirects YouTube to Invidious, Twitter to Nitter, and Instagram to Bibliogram. [Source](https://github.com/SimonBrazell/privacy-redirect) / [Firefox](https://addons.mozilla.org/en-US/firefox/addon/privacy-redirect/) / [Chrome](https://chrome.google.com/webstore/detail/privacy-redirect/pmcmeagblkinmogikoikkdjiligflglb) -- [Alter](https://addons.mozilla.org/addon/alter/): Firefox extension that redirects YouTube, Twitter and Reddit to Invidious, Nitter and Teddit respectively. [Source](https://github.com/w3bdev1/alter) / [Firefox](https://addons.mozilla.org/addon/alter/) -- [SponsorBlock](https://github.com/ajayyy/SponsorBlock): A crowd-sourced extension to skip sponsorships. Support invidious instances if enabled in the options (Available for Chrome and Firefox). -- [Invidition](https://addons.mozilla.org/en-US/firefox/addon/invidition/): Firefox extension that redirects YouTube links and embeds to their Invidious counterpart without any call to YouTube. [(Source)](https://codeberg.org/Booteille/Invidition) (**deprecated**). -- [Alternate Tube Redirector](https://addons.mozilla.org/en-US/firefox/addon/alternate-tube-redirector/): Firefox extension to automatically open YouTube Videos on alternate sites like Invidious or Hooktube. [(Source)](https://gitlab.com/2vek/alternate-tube-redirector/). -- [Invidious Copy URL](https://github.com/recette-lemon/invidious-copy-url/): Adds context menu options on Invidious to copy shortened YouTube .URL at current time or not (Requires using developer mode in Chrome or a developer version of Firefox). +- [Privacy Redirect](https://github.com/SimonBrazell/privacy-redirect): Redirects YouTube to Invidious, Twitter to Nitter, and Instagram to Bibliogram. [Source](https://github.com/SimonBrazell/privacy-redirect) / [Firefox](https://addons.mozilla.org/addon/privacy-redirect) / [Chrome](https://chrome.google.com/webstore/detail/privacy-redirect/pmcmeagblkinmogikoikkdjiligflglb) +- [Alter](https://addons.mozilla.org/addon/alter): Firefox extension that redirects YouTube, Twitter and Reddit to Invidious, Nitter and Teddit respectively. [Source](https://github.com/w3bdev1/alter) / [Firefox](https://addons.mozilla.org/addon/alter) +- [SponsorBlock](https://github.com/ajayyy/SponsorBlock): A crowd-sourced extension to skip sponsorships. Support invidious instances if enabled in the options. [Source](https://github.com/ajayyy/SponsorBlock) / [Firefox](https://addons.mozilla.org/addon/sponsorblock) / [Chrome](https://chrome.google.com/webstore/detail/mnjggcdmjocbbbhaepdhchncahnbgone) +- [Invidition](https://addons.mozilla.org/addon/invidition): Firefox extension that redirects YouTube links and embeds to their Invidious counterpart without any call to YouTube. [Source](https://codeberg.org/Booteille/Invidition) (**deprecated**). +- [Alternate Tube Redirector](https://gitlab.com/2vek/alternate-tube-redirector): Extension to automatically open YouTube Videos on alternate sites like Invidious or Hooktube. [Source](https://gitlab.com/2vek/alternate-tube-redirector) +- [Invidious Copy URL](https://github.com/recette-lemon/invidious-copy-url): Adds context menu options on Invidious to copy shortened YouTube URL at current time or not (Requires using developer mode in Chrome or a developer version of Firefox). - [View on Invidious](https://omar.yt/722e5c15832840fe1ae8830b7c590254b9e0a45c/invidious-bookmarklet.html): View page on Invidious (bookmarklet). -- [Inviduration](https://addons.mozilla.org/en-US/firefox/addon/inviduration/): Shows total duration of playlists on Invidious. [(Source)](https://github.com/rsapkf/inviduration). +- [Inviduration](https://addons.mozilla.org/addon/inviduration): Firefox extension that shows total duration of playlists on Invidious. [Source](https://github.com/rsapkf/inviduration) / [Firefox](https://addons.mozilla.org/addon/inviduration) ### Userscripts for Invidious. - [Invidious Redirect](https://greasyfork.org/en/scripts/370461-invidious-redirect): Redirects YouTube URLs to Invidio.us. @@ -26,11 +26,11 @@ dateCreated: 2021-01-28T20:39:27.709Z - [FYTE](https://greasyfork.org/en/scripts/9252-fyte-fast-youtube-embedded-player): Replace all YouTube embeds on a page with the video's thumbnail. Click on the thumbnail to play the video. Invidious is supported in the Options panel. ### Extensions that integrate Invidious into other programs and apps -- [UntrackMe](https://f-droid.org/en/packages/app.fedilab.nitterizeme/): Android app to rewrite YouTube links to Invidious. Can optionally play videos in the app as well. +- [UntrackMe](https://f-droid.org/en/packages/app.fedilab.nitterizeme): Android app to rewrite YouTube links to Invidious. Can optionally play videos in the app as well. - [iPhone Redirector Shortcut](https://www.icloud.com/shortcuts/6bbf26d989cf4d07a5fe1626efbc0950): Automatically open YouTube videos in Invidious (iPhone shortcut). - [FreshRSS Extension](https://github.com/tmiland/freshrss-invidious): A FreshRSS extension to directly embed videos from Invidious channel feeds. - [Kodi add-on](https://github.com/TheAssassin/kodi-invidious-plugin): Watch YouTube videos in the Kodi media center, using the Invidious API. Privacy-friendly alternative to the YouTube API add-on. -- [Another Kodi add-on](https://github.com/lekma/plugin.video.invidious)...seems to have been more recently updated than the above. +- [Another Kodi add-on](https://github.com/lekma/plugin.video.invidious): Seems to have been more recently updated than the above. ### Utilities for Invidious -- [Invidious-Updater (And Installer)](https://github.com/tmiland/Invidious-Updater): Automatic update script for Invidious. +- [Invidious-Updater (And Installer)](https://github.com/tmiland/Invidious-Updater): Automatic install and update script for Invidious. diff --git a/FAQ.md b/FAQ.md index 49e4151..211e20c 100644 --- a/FAQ.md +++ b/FAQ.md @@ -2,7 +2,7 @@ ## Table of Contents -- Using invidious +- Using Invidious * [Can I use Invidious on my device?](#q-can-i-use-invidious-on-my-device) * [Do you plan to make an Android/iOS app?](#q-do-you-plan-to-make-an-androidios-app) * [What data is collected by Invidious?](#q-what-data-is-collected-by-invidious) @@ -23,7 +23,7 @@ #q-the-popular-feedpage-on-my-instance-is-empty) -# Using invidious +# Using Invidious ## **Q:** Can I use Invidious on my device? @@ -37,7 +37,7 @@ sure, of course! A responsive interface is available for mobile/tablets. **A:** No. Invidious is and will always be a browser application. If you have an Android phone/tablet, you can check the -[NewPipe](https://github.com/TeamNewPipe/NewPipe/) application. +[NewPipe](https://github.com/TeamNewPipe/NewPipe) application.
@@ -51,7 +51,7 @@ By default, the server logs which URLs were accessed, the associated error code (e.g 404 if the URL was not found) and the time it took for the server to respond. -Here is what the server logs looks like: +Here is what the server logs look like: ``` 2021-08-30 18:15:44 UTC [info] 200 GET /watch?v=GIAKHj9uJtM 781.21ms @@ -66,7 +66,7 @@ or delete these data at any time from your user account page.
-## **Q:** What data is shared with youTube? +## **Q:** What data is shared with YouTube? **A:** By default, the video stream is fetched directly from Google's servers (`googlevideo.com`) in order to reduce the bandwidth required by invidious, @@ -74,8 +74,8 @@ meaning that Google will be able to see your IP address and some other data commonly sent by web browsers, like your user-agent string. If you don't want that to happen, you can go to the `preferences` page and -check the `Proxy videos` option. When this option is enabled, the invidious -instance will be used as a relay (also know as a "proxy") between you and +check the `Proxy videos` option. When this option is enabled, the Invidious +instance will be used as a relay (also known as a "proxy") between you and Google's servers, which will hide your IP address and the other information sent by your browser. @@ -89,9 +89,9 @@ sent by your browser. **A:** This problem can occur in different scenarios: * If you're trying to watch a music clip, Youtube is likely blocking the - video stream. Try enabling `proxy videos` in the preferences (or add - `&local=1` in the URL). Switching instance is also a good alternative, - as this type of content is often geo-restricted. + video stream. Try enabling `Proxy videos` in the preferences (or add + `&local=1` in the URL). Switching to another instance is also a good + alternative, as this type of content is often geo-restricted. * Youtube often sends corrupted video data for the `hd720`, `medium` and `small` quality settings. Refreshing the page multiple times (5-7) can @@ -101,9 +101,9 @@ sent by your browser. * Rarely, it can be due to an internal failure of the instance and the video stream can't be fetched. A simple page refresh can solve the issue. -If none of the solutions listed above fix that problem, try switching +If none of the solutions listed above fix the problem, try switching instances. And if that still doesn't work, you'll have to watch the video -on youtube itself (sorry for the inconvenience). +on YouTube itself (sorry for the inconvenience).
@@ -136,11 +136,11 @@ All the supported configuration options are documented there. ## **Q:** RSS feeds/links/etc... URLs redirect to `:3000` but I have a reverse proxy! -**A:** Make sure that the following parameters are set accrodingly to your environment: -- `https_only`: if your instance is served over HTTPs +**A:** Make sure that the following parameters are set according to your environment: +- `https_only`: if your instance is served over HTTPS - `domain`: if you have a domain name that redirects to your instance - `external_port`: if your instance is accessed from a different port than - the listening one (e.g your instance listens on :3000, but is available on + the listening one (e.g your instance listens on :3000, but is available on :443 through a reverse proxy, set `external_port` to `443`)
diff --git a/Geoblocking,-available-video-quality-and-DASH.md b/Geoblocking,-available-video-quality-and-DASH.md index c458759..9cb5a8b 100644 --- a/Geoblocking,-available-video-quality-and-DASH.md +++ b/Geoblocking,-available-video-quality-and-DASH.md @@ -11,7 +11,7 @@ dateCreated: 2021-01-28T20:39:32.300Z ## Geoblocking Sometimes you may notice that you cannot watch a video on Invidious. This is because YouTube is geoblocking, i.e. preventing access to videos based on your geographical location. -If "Proxy videos?" setting is enabled, then Invidious will proxy videos through itself, so the stream will be routed like this: +If the `Proxy videos?` setting is enabled, Invidious will proxy videos through itself, so the stream will be routed like this: > YouTube → Invidious/server → Client/browser If a video is blocked where the instance is hosted, then the route would be this: @@ -20,7 +20,7 @@ If a video is blocked where the instance is hosted, then the route would be this The current system works by cycling through proxies in different regions, and finding one where the video is not blocked. The reason geoblocked videos may take a long time to load is because Invidious would have to cycle through all known proxy servers until it finds one that is able to play back the video. -If "Proxy videos?" setting is disabled, then the stream would be routed like this: +If the `Proxy videos?` setting is disabled, then the stream would be routed like this: > YouTube → Client/browser ## Video quality and DASH @@ -28,4 +28,4 @@ On Invidious you often don't have the same quality options as on YouTube. This i DASH is a streaming technique used by YouTube to provide resolutions higher than 720p by providing multiple files for a client to use depending on network and user preferences. -You can enable DASH by selecting the appropriately named video quality in the settings or by appending `&quality=dash` to the end of a video's URL. With this option enabled, the stream is proxied through Invidious for you to then watch at a higher or automatic quality. \ No newline at end of file +You can enable DASH by selecting the appropriately named video quality in the settings or by appending `&quality=dash` to the end of a video's URL. With this option enabled, the stream is proxied through Invidious for you to then watch at a higher or automatic quality. diff --git a/How-to-deal-with-uMatrix.md b/How-to-deal-with-uMatrix.md index 85d5d26..47b8967 100644 --- a/How-to-deal-with-uMatrix.md +++ b/How-to-deal-with-uMatrix.md @@ -8,8 +8,8 @@ editor: markdown dateCreated: 2021-01-28T20:39:36.844Z --- -If you're using [uMatrix](https://github.com/gorhill/uMatrix), you'll not be able to automatically play a video served by Invidious on other websites without unblocking requests to Invidious instances. +If you're using [uMatrix](https://github.com/gorhill/uMatrix), you won't be able to automatically play a video served by Invidious on other websites without unblocking requests to Invidious instances. -So, to make it work, you'll need to allow `css`, `image`, `media`, `script`, `xhr`, `frame` for the instance form which you're trying to play the video. +So, to make it work, you'll need to allow `css`, `image`, `media`, `script`, `xhr`, `frame` for the instance from which you're trying to play the video. -Since there are more and more Invidious instances, you can use the tool called [Invimatrix](https://booteille.gitlab.io/invimatrix/) to automatically generate uMatrix rules for every known instances. +Since there are many Invidious instances, you can use the tool called [Invimatrix](https://booteille.gitlab.io/invimatrix) to automatically generate uMatrix rules for every known instance. diff --git a/How-to-setup-Anti-Captcha.md b/How-to-setup-Anti-Captcha.md index 2dd3d8c..60ec839 100644 --- a/How-to-setup-Anti-Captcha.md +++ b/How-to-setup-Anti-Captcha.md @@ -8,13 +8,13 @@ editor: markdown dateCreated: 2021-01-28T20:39:41.544Z --- -1. Register on anti-captcha.com: https://anti-captcha.com/clients/entrance/register and finish the registration with the link provided in your mailbox. -2. Head over the "Add fund" page: https://anti-captcha.com/clients/finance/refill and use whatever currency you prefer to use for adding $2 into your balance. -Do note that cryptocurrencies give a bonus of 20% at the first time you add funds then 10% for each new recharge. -3. After adding funds, go the API key link: https://anti-captcha.com/clients/settings/apisetup and copy your "Account key" (**never share it, it's confidential**). -4. Edit your Invidious `config.yml` file (should be located in the `config` directory) and add your account key at the end of the file after the `captcha_key` parameter. -Here is an example: +1. [Register on anti-captcha.com](https://anti-captcha.com/clients/entrance/register) and finish the registration with the link provided in your mailbox. +2. Head over to the [Add fund](https://anti-captcha.com/clients/finance/refill) page and use whatever currency you prefer to use for adding $2 into your balance. +Do note that cryptocurrencies give a bonus of 20% the first time you add funds and then 10% for each new recharge. +3. After adding funds, go to the [API key link](https://anti-captcha.com/clients/settings/apisetup) and copy your `Account Key` (**never share it, it's confidential**). +4. Edit your Invidious `config.yml` file (should be located in the `config` directory) and add your account key at the end of the file after the `captcha_key` parameter. +Here is an example: ```yml captcha_key: acuGae2riad5quashoug3Leeh ``` -5. Restart Invidious and that's it! \ No newline at end of file +5. Restart Invidious and that's it! diff --git a/Issues-with-CAPTCHA-on-Debian-and-Ubuntu.md b/Issues-with-CAPTCHA-on-Debian-and-Ubuntu.md index c869b74..5cf8be5 100644 --- a/Issues-with-CAPTCHA-on-Debian-and-Ubuntu.md +++ b/Issues-with-CAPTCHA-on-Debian-and-Ubuntu.md @@ -9,19 +9,19 @@ dateCreated: 2021-01-28T20:39:51.349Z --- #### Warning: If you use ImageMagick on Ubuntu for other services like Mastodon this guide may break them, please use [this guide](https://linuxconfig.org/how-to-install-imagemagick-7-on-ubuntu-18-04-linux) instead. -There is some issue on Debian 9 and Ubuntu 18.04 and later. It appears that the clock (the CAPTCHA) has no hands but you can see them outside the clock. You need to compile ImageMagick yourself with librsvg to solve this issue. -Thanks [Tmiland](https://github.com/tmiland) for showing up a solution at [#299](https://github.com/iv-org/invidious/issues/299) +There is some issue on Debian 9 and Ubuntu 18.04 and later. It appears that the clock (the CAPTCHA) has no hands but you can see them outside the clock. You need to compile ImageMagick yourself with librsvg to solve this issue. +Thanks [Tmiland](https://github.com/tmiland) for showing us a solution at [#299](https://github.com/iv-org/invidious/issues/299) -For lazy people a little hack is to disable CAPTCHA or use text one. +For lazy people, a little hack is to disable CAPTCHA or use text one. -You can check if your version of ImageMagick is affected with `convert -list format`. +You can check if your version of ImageMagick is affected with `convert -list format`. It should show the following if your installed version is okay. ``` SVG SVG rw+ Scalable Vector Graphics (RSVG 2.40.13) SVGZ SVG rw+ Compressed Scalable Vector Graphics (RSVG 2.40.13) ``` -If this is not the case your version is not compiled with librsvg, then you get the following. +If this is not the case, your version is not compiled with librsvg, then you get the following. ``` SVG SVG rw+ Scalable Vector Graphics (XML 2.9.4) SVGZ SVG rw+ Compressed Scalable Vector Graphics (XML 2.9.4) @@ -29,9 +29,8 @@ If this is not the case your version is not compiled with librsvg, then you get Follow the steps to fix this issue: -`$ sudo apt purge imagemagick` - ```bash +$ sudo apt purge imagemagick $ cd /tmp # check for new releases: https://github.com/ImageMagick/ImageMagick6/releases $ wget https://github.com/ImageMagick/ImageMagick6/archive/6.9.11-19.tar.gz @@ -42,7 +41,7 @@ $ make $ sudo make install ``` -Set the correct path: `$ sudo ln -s /usr/local/bin/convert /usr/bin/convert` +Set the correct path: `$ sudo ln -s /usr/local/bin/convert /usr/bin/convert` If you get an error here that this file already exists, please execute `$ sudo apt autoremove` Now `convert -list format` reports @@ -50,4 +49,7 @@ Now `convert -list format` reports SVG rw+ Scalable Vector Graphics (RSVG 2.40.16) SVGZ rw+ Compressed Scalable Vector Graphics (RSVG 2.40.16) -Restart Invidious, just to be sure `$ sudo systemctl restart invidious.service` \ No newline at end of file +Restart Invidious, just to be sure: +```bash +$ sudo systemctl restart invidious.service +``` diff --git a/NGINX-Reverse-Proxy.md b/NGINX-Reverse-Proxy.md index f00e1fe..4cc8aa0 100644 --- a/NGINX-Reverse-Proxy.md +++ b/NGINX-Reverse-Proxy.md @@ -8,7 +8,7 @@ editor: markdown dateCreated: 2021-01-28T20:40:07.950Z --- -This is a very basic config, secured with Let's Encrypt. Any log is disabled by default. Do not forget to replace `server_name` with your domain. +This is a very basic config, secured with Let's Encrypt. Any log is disabled by default. Do not forget to replace `server_name` with your domain. ``` server { @@ -35,4 +35,4 @@ server { if ($https = '') { return 301 https://$host$request_uri; } # if not connected to HTTPS, perma-redirect to HTTPS } -``` \ No newline at end of file +``` diff --git a/Takedowns.md b/Takedowns.md index 6f619dc..c320191 100644 --- a/Takedowns.md +++ b/Takedowns.md @@ -8,7 +8,7 @@ editor: markdown dateCreated: 2021-11-16T16:58:48.431Z --- -While running Invidious, it is very possible you will recive a DMCA at some point. A copyright agent will probably at some point search the ID of an infringing video on a search engine and see an Invidious instance appear. At least in the United States, Invidious instances should in theory be immune to DMCA laws because of [17 U.S. Code § 512](https://www.law.cornell.edu/uscode/text/17/512) stating that a provider is not responsible for content assusimg that "the material is transmitted through the system or network without modification of its content." +While running Invidious, it is very possible you will recive a DMCA at some point. A copyright agent will probably at some point search the ID of an infringing video on a search engine and see an Invidious instance appear. At least in the United States, Invidious instances should in theory be immune to DMCA laws because of [17 U.S. Code § 512](https://www.law.cornell.edu/uscode/text/17/512) stating that a provider is not responsible for content assuming that "the material is transmitted through the system or network without modification of its content." ## Sample DMCA (United States) @@ -36,7 +36,7 @@ I am writing on behalf of {{website}}. I am the webmaster of {{website}} and all I see you are filing a claim for {{invidious instance url}}. {{invidious instance url}} hosts Invidious, a private YouTube front-end, meaning it is simply a proxy to access YouTube assets and user generated content without tracking from Google. Thus, all content is proxied from YouTube and is not stored on our servers and if YouTube chooses to remove an asset, it will no longer appear on our site. -Our {{server hosting}} {{invidious instance url}} is hosted in the European Union, so the European Union's laws apply. Under the directive 2001/29/EC of the European Parliament and of the Council of 22 May 2001 on the harmonization of certain aspects of copyright and related rights in the information society, "temporary acts of reproduction referred to in Article 2, which are transient or incidental [and] an integral and essential part of a technological process and whose sole purpose is to enable: a transmission in a network between third parties by an intermediary" is allowed, and legal. +Our {{server hosting}} {{invidious instance url}} is hosted in the European Union, so the European Union's laws apply. Under the directive 2001/29/EC of the European Parliament and of the Council of 22 May 2001 on the harmonization of certain aspects of copyright and related rights in the information society, "temporary acts of reproduction referred to in Article 2, which are transient or incidental [and] an integral and essential part of a technological process and whose sole purpose is to enable: a transmission in a network between third parties by an intermediary" is allowed, and legal. As such, all takedown requests must be sent to YouTube, as we don't have any control on the data that they have on their servers.