Compare commits

...

15 Commits

Author SHA1 Message Date
MintMain21 9ba26c6b43
Merge 1cb3ea84ca into 3c2356b9b4 2024-04-30 17:35:37 +01:00
Victor Lin 3c2356b9b4
Update macOS install (#545)
* Remove install for shards

shards is not available as a Homebrew package. Instead, it comes with
the crystal package.

<https://crystal-lang.org/reference/1.12/man/shards/index.html#installation>

* Fix postgresql package name

* Add createdb

Fixes initial error:

    FATAL:  database "<user>" does not exist

<https://stackoverflow.com/a/17936043>

* Clone repo before PostgreSQL setup

The PostgreSQL setup uses config files from the repo.

* Fix PostgreSQL name in headings

* Give PostgreSQL role login permissions

Fixes an error upon running the first script:

   FATAL:  role "kemal" is not permitted to log in

* Remove nonexistent script

* Use make for Invidious setup

Copied from Linux section
2024-04-29 11:20:07 +02:00
Émilien (perso) ee58285ebd
use official uptime website for updown.io 2024-04-22 23:40:29 +02:00
Émilien (perso) 7af7f1c7a1
update uptime link to updown.io 2024-04-22 23:38:27 +02:00
Émilien (perso) 0ff04d68bc
remove inv.n8pjl.ca
close https://github.com/iv-org/documentation/issues/543
2024-04-22 23:27:53 +02:00
Emilien Devos 5b5830b38b fix Unexpected token ')' 2024-04-22 00:22:50 +02:00
Emilien Devos 8e451d4365 trying to add the new check to the status page 2024-04-22 00:20:29 +02:00
Emilien Devos 775e3ed3ea no need external library 2024-04-22 00:07:13 +02:00
Emilien Devos f14d71df20 correctly send the json body 2024-04-22 00:03:29 +02:00
TheFrenchGhosty ea4d456cb4
Add a CI to add instances to updown (#525)
* Add a CI to add instances to updown

* improve adding new instance to updown

---------

Co-authored-by: Emilien Devos <4016501+unixfox@users.noreply.github.com>
2024-04-21 23:49:47 +02:00
MintMain21 1cb3ea84ca
Update url-parameters.md
How's this?
2023-07-15 00:18:27 -07:00
MintMain21 66572c14c7
Moved _Player Style_ up to Player parameters 2023-04-06 13:37:31 -07:00
MintMain21 4b308d03a6
Added `dark_mode=auto` Parameter 2023-04-06 13:34:17 -07:00
MintMain21 4047372cef
Added Extend Description
As far as I know, only two URL parameters are missing from here now, VR Mode and Save Player Position. 

I have left these off intentionally because I do not know these option well enough to know what they do, how they work, or if they would be helpful parsed through extensions like Redirector or the URL Parameters Userscript. 

I shall leave these two to be added by an individual more knowledgeable.
2023-04-05 20:18:37 -07:00
MintMain21 a83a6fcc41
Update with quality_dash preference
The documentation has been updated to include the quality_dash preference to enforce preferred quality using dash.
2023-03-04 14:03:03 -08:00
4 changed files with 179 additions and 18 deletions

View File

@ -0,0 +1,149 @@
name: Add instance to updown.io
on:
issues:
types: [opened, reopened]
jobs:
replycomment:
runs-on: ubuntu-latest
permissions: write-all
steps:
- uses: actions/checkout@v3
if: contains(github.event.issue.labels.*.name, 'instance-add')
- uses: actions/setup-node@v3
if: contains(github.event.issue.labels.*.name, 'instance-add')
with:
node-version: 16
- run: npm install request linkifyjs
if: contains(github.event.issue.labels.*.name, 'instance-add')
- uses: actions/github-script@v6
if: contains(github.event.issue.labels.*.name, 'instance-add')
with:
script: |
var issueInfo = (await github.rest.issues.get({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
})).data;
var linkify = require("linkifyjs");
var issueTitleParseUrl = linkify.find(issueInfo.title);
if (issueTitleParseUrl.length !== 0) {
if (issueInfo.title.includes(".onion")) {
var replyComment =
['Hello! I have detected that you are requesting to add an onion URL.',
'Please create a pull request instead for adding your onion url as an alternative to your clearnet URL: https://github.com/iv-org/documentation/edit/master/docs/instances.md'
].join('\n');
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: replyComment
});
await github.rest.issues.update({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
state: 'closed'
});
}
else {
var instanceHostname = (new URL(issueTitleParseUrl[0].href)).hostname;
var request = require("request");
var optionsAddNewCheck = { method: 'POST',
url: 'https://updown.io/api/checks?api-key=${{ secrets.UPDOWN_API_KEY }}',
json:true,
headers:
{ 'content-type': 'application/x-www-form-urlencoded' },
form:
{ url: 'https://' + instanceHostname,
period: '300',
mute_until: 'forever',
published: 'true',
alias: instanceHostname,
string_match: 'An alternative front-end to YouTube' } };
request(optionsAddNewCheck, async function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
if (body.token) {
var optionsGetStatusPages = {
method: 'GET',
url: 'https://updown.io/api/status_pages?api-key=${{ secrets.UPDOWN_API_KEY }}',
json: true
};
request(optionsGetStatusPages, async function (error, response, body) {
if (error) throw new Error(error);
const statusPage = body.filter(element => element.token === "resvf");
let checksOfStatusPage = statusPage[0].checks;
checksOfStatusPage.push(body.token)
var optionsAddCheckToStatusPage = {
method: 'PUT',
url: 'https://updown.io/api/status_pages/resvf?api-key=${{ secrets.UPDOWN_API_KEY }}',
headers: {
'content-type': 'application/json'
},
json: {checks: checksOfStatusPage}
};
request(optionsAddCheckToStatusPage, async function (error, response, body) {
if (error) throw new Error(error);
console.log(body)
});
});
var replyComment =
['Hello! Your instance has been added to our monitoring system: https://updown.io/' + body.token,
'You need to wait 30 days before we add your instance, this is to evaluate that your instance will keep a good uptime for one month.',
'',
'Make sure you double checked all the mandatory checks or this will slow down the process of adding your instance!',
'',
'Please consult these two important tutorials:',
'',
'- Escaping the YouTube block ([403 errors in playback](https://github.com/iv-org/invidious/issues/4045)): https://docs.invidious.io/ipv6-rotator/',
'',
'- Improving the performance and the stability of your public instance: https://docs.invidious.io/improve-public-instance/',
'',
'It is highly recommended to follow these tutorials because it will allow the instance to stay stable and performant over the long term.',
'',
'Please consider joining the Matrix room for public instance maintainers by joining our Matrix room: https://matrix.to/#/#invidious:matrix.org',
'then pinging @ unixfox, @ TheFrenchGhosty and @ SamantazFox for asking to be invited to the Matrix room.',
'We discuss troubles managing a public instance, sharing some advices and more.'
].join('\n');
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: replyComment
})
await github.rest.issues.addLabels({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
labels: ['wait-30-days']
})
}
});
}
}
else {
var replyComment =
['Domain not detected in the title, please edit the title by correcting it like this:',
'Issue title example: `[New instance] https://myinstance.com`'
].join('\n');
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: replyComment
})
}

View File

@ -138,7 +138,7 @@ git clone https://github.com/iv-org/invidious
exit
```
#### Set up PostgresSQL
#### Set up PostgreSQL
```bash
systemctl enable --now postgresql
@ -177,14 +177,22 @@ systemctl enable --now invidious.service
```bash
brew update
brew install shards crystal postgres imagemagick librsvg
brew install crystal postgresql imagemagick librsvg
```
#### Set up PostgresSQL
#### Clone the Invidious repository
```bash
git clone https://github.com/iv-org/invidious
cd invidious
```
#### Set up PostgreSQL
```bash
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
createdb
psql -c "CREATE ROLE kemal WITH LOGIN PASSWORD 'kemal';" # Change 'kemal' here to a stronger password, and update `password` in config/config.yml
createdb -O kemal invidious
psql invidious kemal < config/sql/channels.sql
psql invidious kemal < config/sql/videos.sql
@ -193,7 +201,6 @@ psql invidious kemal < config/sql/users.sql
psql invidious kemal < config/sql/session_ids.sql
psql invidious kemal < config/sql/nonces.sql
psql invidious kemal < config/sql/annotations.sql
psql invidious kemal < config/sql/privacy.sql
psql invidious kemal < config/sql/playlists.sql
psql invidious kemal < config/sql/playlist_videos.sql
```
@ -201,12 +208,10 @@ psql invidious kemal < config/sql/playlist_videos.sql
#### Set up Invidious
```bash
git clone https://github.com/iv-org/invidious
cd invidious
shards install --production
crystal build src/invidious.cr --release
make
# Configure config/config.yml as you like
cp config/config.example.yml config/config.yml
# Configure config/config.yml how you want
```
### Windows

View File

@ -1,6 +1,6 @@
# Invidious Instances
[Uptime History provided by Uptimerobot](https://stats.uptimerobot.com/89VnzSKAn)
[Uptime History provided by updown.io](https://uptime.invidious.io)
[Instances API](https://api.invidious.io/)
@ -54,8 +54,6 @@
* [invidious.nerdvpn.de](https://invidious.nerdvpn.de) 🇺🇦
* [inv.n8pjl.ca](https://inv.n8pjl.ca) 🇨🇦
* [invidious.jing.rocks](https://invidious.jing.rocks) 🇯🇵
* [vid.lilay.dev](https://vid.lilay.dev) 🇸🇬 (uses Cloudflare)

View File

@ -9,7 +9,8 @@ _This list is incomplete. You can help by expanding it._
| **Site-wide parameters** | |
| _Dark mode_ | Configure default theme without setting cookies |
| `dark_mode=true` | Use dark theme |
| `dark_mode=false` | Use light theme |
| `dark_mode=false` | Use light theme |
| `dark_mode=auto` | Use system/browser theme
| _Thin mode_ | Load HTML, CSS, JS and video elements (disables images) |
| `thin_mode=true` | Enabled |
| `thin_mode=false` | Disabled |
@ -52,10 +53,20 @@ _This list is incomplete. You can help by expanding it._
| `quality=dash` | [DASH](https://en.wikipedia.org/wiki/Dynamic_Adaptive_Streaming_over_HTTP) |
| `quality=hd720` | 720p |
| `quality=medium` | 480p |
| _Quality_DASH_ | Default player quality when using DASH (default is Auto) |
| `quality_dash=auto` | Automatically change quality based on network conditions |
| `quality_dash=best` | Automatically use the best quality avalible |
| `quality_dash=###` | always use desired quality (480, 720, etc). |
| `quality_dash=worst` | Automatically use the worst quality avalible |
| _Related Videos_ | Show "Related videos" tab on the right-hand side |
| `related_videos=false` | Disabled |
| _Comments_ | Show comments below the video|
| `comments=false` | Disabled |
| `comments=false` | Disabled |
| _Extended Description_ | Extend Video Description by default |
| `extend_desc=true` | Enabled
| _Player Style_ | Video Player UI |
| `player_style=invidious` | Invidious, the default |
| `player_style=youtube` | YouTube, using a centered play button and always visible video control bar |
| _Speed_ | Default player speed, can be any positive number |
| `speed=0.5` | Play at 0.5x speed |
| `speed=2` | Play at 2x speed |
@ -91,6 +102,4 @@ _This list is incomplete. You can help by expanding it._
| _Region_ | Provide "hint" (as ISO 3166 country code) for Invidious to load trending videos from the specified region | |
| `region=JP` | Load videos that are trending in Japan |
| `region=DE` | Load videos that are trending in Germany |
| **Player Style** | |
| `player_style=invidious` | Invidious, the default |
| `player_style=youtube` | YouTube, using a centered play button and always visible video control bar |