diff --git a/wiki/*arr.md b/wiki/*arr.md index 9293761..540efda 100644 --- a/wiki/*arr.md +++ b/wiki/*arr.md @@ -4,18 +4,18 @@ the usenet and [BitTorrent](/wiki/bittorrent.md) domain. These applications include but are not limited to [Sonarr](https://github.com/Sonarr/Sonarr) for -[TV shows](/wiki/movies_&_tv_shows.md), +[TV shows](/wiki/video.md), [Radarr](https://github.com/Radarr/Radarr) for -[movies](/wiki/movies_&_tv_shows.md) and +[movies](/wiki/video.md) and [Lidarr](https://github.com/Lidarr/Lidarr) for [music](/wiki/audio.md). ## Setup For the different applications there are different [Docker](/wiki/docker.md) containers for setup: -[Linuxservers Sonarr image](/wiki/docker-images/linuxserver_-_sonarr.md), -[Linuxservers Radarr image](/wiki/docker-images/linuxserver_-_radarr.md) and -[Linuxservers Lidarr image](/wiki/docker-images/linuxserver_-_lidarr.md). +[Linuxservers Sonarr image](/wiki/docker/linuxserver_-_sonarr.md), +[Linuxservers Radarr image](/wiki/docker/linuxserver_-_radarr.md) and +[Linuxservers Lidarr image](/wiki/docker/linuxserver_-_lidarr.md). ### Initial Configuration diff --git a/wiki/airsonic-advanced.md b/wiki/airsonic-advanced.md index dafd310..bf38ab1 100644 --- a/wiki/airsonic-advanced.md +++ b/wiki/airsonic-advanced.md @@ -9,7 +9,7 @@ is a fork of [Subsonic](./subsonic.md). ## Setup The software can be setup via docker with the -[linuxserver image](./docker-images/linuxserver_-_airsonic-advanced.md). +[linuxserver image](./docker/linuxserver_-_airsonic-advanced.md). ### Initial configuration diff --git a/wiki/airsonic.md b/wiki/airsonic.md index d35d51a..c3fa7d6 100644 --- a/wiki/airsonic.md +++ b/wiki/airsonic.md @@ -10,7 +10,7 @@ A more modern implementation of it is ## Set up The software can be setup via [Docker](/wiki/docker.md) with the -[linuxserver image](./docker-images/linuxserver_-_airsonic.md). +[linuxserver image](./docker/linuxserver_-_airsonic.md). ### Clients diff --git a/wiki/android.md b/wiki/android.md new file mode 100644 index 0000000..130d09e --- /dev/null +++ b/wiki/android.md @@ -0,0 +1,23 @@ +# Android + +[Android](https://www.android.com/) is a mobile operating system based on a modified +[Linux](/wiki/linux.md) kernel. +It is designed primarily for mobile devices with touch screens like tablets or smart phones. + +## App Store + +The most used app store of android is the [Google Play Store](https://play.google.com/). +A free and open-source alternative to it is [F-Droid](/wiki/android/f-droid.md) which only features +open-source software. + +## Multi-Factor Authentication + +[Multi-factor authentication](/wiki/multi-factor_authentication.md) can easily be set up on android +systems. +For this the arguably most used app is +[Google Authenticator](https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=de&gl=US). +A free and open-source alternative for it is FreeOTP+. +This app is available at [F-Droid](/wiki/android/f-droid.md) as +[FreeOTP+](https://f-droid.org/de/packages/org.liberty.android.freeotpplus/) and on +[Google Play Store](#app-store) by the +[same name](https://f-droid.org/de/packages/org.liberty.android.freeotpplus/). diff --git a/wiki/android/droidcam.md b/wiki/android/droidcam.md new file mode 100644 index 0000000..ccdae6d --- /dev/null +++ b/wiki/android/droidcam.md @@ -0,0 +1,34 @@ +# DroidCam + +[DroidCam](https://www.dev47apps.com/) is an App developed and published +by Dev47Apps for [Android](/wiki/android.md) systems. +It enables a [smartphone](/wiki/smart_devices.md) to be used as [webcam](/wiki/webcams.md). + +## Setup + +DroidCam needs to be set up on the phone aswell as on the computer to be used. + +On [Android](/wiki/android.md) DroidCam is available on the +[Google Play Store](/wiki/android.md#app-store) in a package called +[DroidCam Webcam](https://play.google.com/store/apps/details?id=com.dev47apps.droidcam). + +On the computer setup files for both [Linux](/wiki/linux.md) and [Windows](/wiki/windows.md) can be +found on the [official website](https://www.dev47apps.com/). +Alternatively most [Linux systems](/wiki/linux/package_manager.md) feature a package named +`droidcam`. + +## Usage + +To initiate a connection between the [smartphone](/wiki/smart_devices.md) and the computer first +start the app on the smartphone. +Make sure to be connected to the same W-LAN as the computer or alternatively connect them with an +USB-cable. +After starting the application an IP and a port will be displayed. +These have to be pasted into the form that is shown on the computer after starting the corresponding +program. +After pressing `Connect` the link will be established. +The [video feed](/wiki/webcams.md) can then be used in other programs such as Discord or +[Matrix](/wiki/matrix.md). +Additionally it can be piped into [OBS](/wiki/obs.md) to edit it more or create a scene. +Despite the option the separate app [DroidCam OBS](https://www.dev47apps.com/obs/) is not +necessarily needed. diff --git a/wiki/android/f-droid.md b/wiki/android/f-droid.md index 2b1b541..b938edb 100644 --- a/wiki/android/f-droid.md +++ b/wiki/android/f-droid.md @@ -1,7 +1,7 @@ # F-Droid [F-Droid](https://f-droid.org) is an installable catalogue of free and open source -software for Android systems. +software for [Android](/wiki/android.md) systems. ## Setup diff --git a/wiki/android/gadgetbridge.md b/wiki/android/gadgetbridge.md new file mode 100644 index 0000000..987aec4 --- /dev/null +++ b/wiki/android/gadgetbridge.md @@ -0,0 +1,62 @@ +# Gadgetbridge + +[Gadgetbridge](https://codeberg.org/Freeyourgadget/Gadgetbridge/) is a free and open source software +for [Android](/wiki/android.md) systems. +It is a cloudless replacement for proprietary software for +[smart devices](/wiki/smart_devices.md), but is especially designed for +[smartwatches and smart bands](/wiki/smart_devices.md#smartwatches-and-smart-bands). + +## Setup + +Gadgetbridge is available on [F-Droid](/wiki/android/f-droid.md) in a package called +[gadgetbridge](https://f-droid.org/packages/nodomain.freeyourgadget.gadgetbridge/). + +## Usage + +The following section addresses different uses and the configuration of different devices in +Gadgetbridge. + +### Configuration of Devices + +Devices can be added to Gadgetbridge by clicking on the `+` in the main screen. +Afterwards the device can simply be paired. + +A special pairing procedure is needed for Amazfit or Xiaomi devices. +The following describes the steps that need to be done. + +- Download the + [Zepp app](https://play.google.com/store/apps/details?id=com.huami.watch.hmwatchmanager). +- Pair the device with the Zepp app. +- Use [huami-token](https://codeberg.org/argrento/huami-token/) to obtain the auth key by using the + command `python3 huami_token.py --method amazfit --email my_email --password password --bt_keys` + with adjusted values. +- Uninstall the Zepp app and unpair the device from inside the bluetooth settings of the smart + phone. +- Inside the Gadgetbridge app click on the `+`, find the device and enter the auth key by long + pressing on the devices name. + Afterwards navigate back to the scanning list. +- Pair the device by clicking on the device name. + +Afterwards the device will be paired and connected. + +### Add Weather Function + +For correct displaying of weather data an additional app is needed. +An example for this is the +[Weather notification app](https://f-droid.org/en/packages/ru.gelin.android.weather.notification/). +Install it, check the Gadgetbridge option inside the Weather notification app to on and set the +location. +Finally create an account at [OpenWeather](https://home.openweathermap.org). +On that website create an API key and paste it into the according setting in the Weather +notification app. +Finally set the desired location in the Gadgetbridge app inside the settings. +Afterwards the weather function will be working. + +### Install Watchfaces + +Watchfaces can be installed by using Gadgetbridges `File Installer` option that is available in the +menu of connected devices. +Watchface files for Xiaomi/Amazfit devices can be downloaded on +[amazfitwatchfaces.com](https://amazfitwatchfaces.com/). +The same catalog is also available as an +[Android app on the Google Play Store](https://play.google.com/store/apps/details?id=com.amazfitwatchfaces.st). diff --git a/wiki/android/ip_webcam.md b/wiki/android/ip_webcam.md new file mode 100644 index 0000000..0122e76 --- /dev/null +++ b/wiki/android/ip_webcam.md @@ -0,0 +1,38 @@ +# IP Webcam + +[IP Webcam](https://play.google.com/store/apps/details?id=com.pas.webcam&hl=de&gl=US) is an App +developed and published by Pavel Khlebovich for [Android](/wiki/android.md) systems. +It enables a [smartphone](/wiki/smart_devices.md) to be used as [webcam](/wiki/webcams.md). + +## Setup + +On [Android](/wiki/android.md) IP Webcam is available on the +[Google Play Store](/wiki/android.md#app-store) in a package called +[IP Webcam](https://play.google.com/store/apps/details?id=com.pas.webcam&hl=de&gl=US). + +## Usage + +To initiate a connection between the [smartphone](/wiki/smart_devices.md) and the computer first +start the app on the smartphone. +Make sure to be connected to the same W-LAN as the computer or alternatively connect them with an +USB-cable. +After starting the application an IPv4 link be displayed. +This link can be pasted into a [browser](/wiki/web_browser.md). +There the video aswell as various settings will be available. +An example link will look like the following. + +```txt +http://192.168.178.66:8080 +``` + +Additionally it can be piped into [OBS](/wiki/obs.md) to edit it or into +[ffmpeg](/wiki/linux/ffmpeg.md) on [Linux](/wiki/linux.md) systems to create a virtual webcam +device as explained in the +[ffmpeg entry](/wiki/linux/ffmpeg.md#create-a-virtual-camera-using-an-ip-video-stream). +The link used for applications like this will be the previously displayed IPv4 link aswell as an +appended `/videofeed`. +An example link will look like the following. + +```txt +http://192.168.178.66:8080/videofeed +``` diff --git a/wiki/android/scrcpy.md b/wiki/android/scrcpy.md new file mode 100644 index 0000000..4bc2012 --- /dev/null +++ b/wiki/android/scrcpy.md @@ -0,0 +1,20 @@ +# scrcpy + +[scrcpy](https://scrcpy.org/) is an application that allows remote +mirroring of an [Android phones](/wiki/android.md) screen aswell as controlling it. + +## Setup + +scrcpy needs to be set up on the computer that displays the mirror of the smartphone used. + +Setup files for [Windows](/wiki/windows.md) can be found on the +[official website](https://scrcpy.org/download/). +Alternatively most [Linux systems](/wiki/linux/package_manager.md) feature a package named +`scrcpy`. + +## Usage + +Connect the phone which is to be controlled with the computer via USB. +Make sure USB debugging is enabled in the phones setting. +Afterwards start up scrcpy. +It is possible that debugging has to be confirmed on the phone again after starting the application. diff --git a/wiki/audio.md b/wiki/audio.md index 576f092..ff93d33 100644 --- a/wiki/audio.md +++ b/wiki/audio.md @@ -10,6 +10,8 @@ Podcasts need a so called Podcatcher. A Podcatcher is used to subscribe to podcasts and download them automatically. For Linux specific music software navigate to the corresponding [wiki entry](/wiki/linux/audio.md). +For voice based communication navigate to the [Communication article](/wiki/communication.md) and +the corresponding [VoIP section](/wiki/communication.md#voip). ## Media Software @@ -137,3 +139,23 @@ The audio file can then be split according to the `.cue` file. For splitting of `.flac` files on a Linux system check the [a flac (package) entry](/wiki/linux/flac_(package).md#splitting-flac-file-according-to-cue-file) for further informations. + +## Scoring Music + +Scoring music has moved more and more into the computer realm. +An easy and intuitive software that can be used for this is +[MuseScore.org](https://musescore.org/). +MuseScore is free and open-source and is cross-platform. +On [Linux based systems](/wiki/linux.md) it is available on most distributions via the `musescore` +package or their [website](https://musescore.org/download) and can be run with the command `mscore`. +For Windows visit the [download section of the MuseScore website](https://musescore.org/download). + +### Getting Metadata + +Using [MediaInfo](https://github.com/MediaArea/MediaInfo) metadata of a file can be obtained. +A command for this looks like the following. +In this the file to obtain metadata to is assumed to be `audio.flac`. + +```sh +mediainfo audio.flac +``` diff --git a/wiki/benchmark.md b/wiki/benchmark.md new file mode 100644 index 0000000..6809aa9 --- /dev/null +++ b/wiki/benchmark.md @@ -0,0 +1,8 @@ +# Benchmark + +A benchmark is the act of running a program or operation in order to assess its performance. +Benchmarks can use a range of criteria to compare programs with one another. + +## Tools + +- [Hyperfine](/wiki/linux/hyperfine.md) is a benchmarking tool for programs and commands [Linux](/wiki/linux.md). diff --git a/wiki/bibliogram.md b/wiki/bibliogram.md index 99a53dc..cbeb13f 100644 --- a/wiki/bibliogram.md +++ b/wiki/bibliogram.md @@ -9,7 +9,7 @@ as it is not possible anymore to show user pages but only single posts. ## Setup The software can be setup via [Docker](/wiki/docker.md) with the -[cloudrac3r image](./docker-images/cloudrac3r_-_bibliogram.md). +[cloudrac3r image](./docker/cloudrac3r_-_bibliogram.md). ## Automatic redirect from Instagram @@ -17,5 +17,5 @@ There are various add-ons to redirect from Instagram links to your (or a public) Bibliogram instance. For Firefox for example there is [privacy redirect](https://addons.mozilla.org/en-US/firefox/addon/privacy-redirect/). -For Android there is +For [Android](/wiki/android.md) there is [the UntrackMe app](https://framagit.org/tom79/nitterizeme) (available at [f-droid](./android/f-droid.md)). diff --git a/wiki/bind.md b/wiki/bind.md index 968ddc6..02a1ef1 100644 --- a/wiki/bind.md +++ b/wiki/bind.md @@ -6,7 +6,7 @@ interacting with the [DNS](./dns.md). ## Setup The software can be setup via docker with the -[ventz image](./docker-images/ventz_-_bind.md). +[ventz image](./docker/ventz_-_bind.md). ## Usage diff --git a/wiki/bittorrent.md b/wiki/bittorrent.md index 60b0be3..0829b4e 100644 --- a/wiki/bittorrent.md +++ b/wiki/bittorrent.md @@ -28,5 +28,5 @@ This is not a legal advice. Take your local laws into account when downloading torrents. Some torrents can be copyright infringing and therefor illegal to download. Only download legal and safe torrents like the -[Arch Linux ISO](/wiki/linux/arch-linux/arch-linux.md#iso-medium). +[Arch Linux ISO](/wiki/linux/arch-linux.md#iso-medium). Seeding it can help the community. diff --git a/wiki/bluetooth.md b/wiki/bluetooth.md index e58c463..280141a 100644 --- a/wiki/bluetooth.md +++ b/wiki/bluetooth.md @@ -3,6 +3,6 @@ [Bluetooth](https://www.bluetooth.com/) is a short-range technology for wireless data transfer. -For [Linux](/wiki/linux/linux.md) based operating systems the +For [Linux](/wiki/linux.md) based operating systems the [bluez package](/wiki/linux/bluez.md) is used as the implementation of the bluetooth standard. diff --git a/wiki/communication.md b/wiki/communication.md new file mode 100644 index 0000000..4408df4 --- /dev/null +++ b/wiki/communication.md @@ -0,0 +1,19 @@ +# Communication + +Computer communication can have multiple different forms. +There are voice and video calls aswell as text based messaging. +This article bundles all of them. + +## VoIP + +This section lists some of the most common Voice over IP (VoIP) platforms. + +- [Matrix](/wiki/matrix.md) is a decentralized and open-source social platform. +- [Discord](https://discord.com/) is a widely used, proprietary social platform. + +### Soundboards + +A soundboard is a computer program to pipe audio files to an application. +It can be used for short audio inserts. +A cross-platform aswell as free and open-source soundboard is +[Soundux](https://github.com/Soundux/Soundux) diff --git a/wiki/cups.md b/wiki/cups.md index 66ff8b4..7580546 100644 --- a/wiki/cups.md +++ b/wiki/cups.md @@ -6,7 +6,7 @@ unix and unix-like systems. ## Setup The software can be setup via [Docker](/wiki/docker.md) with the -[linuxserver image](./docker-images/linuxserver_-_airsonic.md). +[linuxserver image](./docker/linuxserver_-_airsonic.md). Additionally to this a client is needed on the system that need access to the server software. diff --git a/wiki/databases.md b/wiki/databases.md index 1ff3c33..14339aa 100644 --- a/wiki/databases.md +++ b/wiki/databases.md @@ -5,5 +5,5 @@ Most prominent type of database are SQL databases. ## Database management systems (DBMS) -- [MySQL](./docker-images/mysql.md) is a relational DBMS -- [MariaDB](./docker-images/mariadb.md) is a relational DBMS that is a fork of MySQL +- [MySQL](./docker/mysql.md) is a relational DBMS +- [MariaDB](./docker/mariadb.md) is a relational DBMS that is a fork of MySQL diff --git a/wiki/docker.md b/wiki/docker.md index 8f6438b..b2e3e6b 100644 --- a/wiki/docker.md +++ b/wiki/docker.md @@ -32,7 +32,7 @@ After that relog into your machine and you should be able to run The programs below are useful docker-management systems in different style. - [ctop](https://github.com/bcicen/ctop): top-like cli interface for containers -- [portainer](./docker-images/portainer.md): web ui for managing docker and kubernetes +- [portainer](./docker/portainer.md): web ui for managing docker and kubernetes ### Enable Nvidia GPUs diff --git a/wiki/docker-images/alexta69_-_metube.md b/wiki/docker/alexta69_-_metube.md similarity index 100% rename from wiki/docker-images/alexta69_-_metube.md rename to wiki/docker/alexta69_-_metube.md diff --git a/wiki/docker-images/awesometechnologies_-_synapse-admin.md b/wiki/docker/awesometechnologies_-_synapse-admin.md similarity index 100% rename from wiki/docker-images/awesometechnologies_-_synapse-admin.md rename to wiki/docker/awesometechnologies_-_synapse-admin.md diff --git a/wiki/docker-images/axhilrex_-_podgrab.md b/wiki/docker/axhilrex_-_podgrab.md similarity index 100% rename from wiki/docker-images/axhilrex_-_podgrab.md rename to wiki/docker/axhilrex_-_podgrab.md diff --git a/wiki/docker-images/b4bz_-_homer.md b/wiki/docker/b4bz_-_homer.md similarity index 100% rename from wiki/docker-images/b4bz_-_homer.md rename to wiki/docker/b4bz_-_homer.md diff --git a/wiki/docker/bbilly1_-_tubearchivist.md b/wiki/docker/bbilly1_-_tubearchivist.md new file mode 100644 index 0000000..af0b98a --- /dev/null +++ b/wiki/docker/bbilly1_-_tubearchivist.md @@ -0,0 +1,132 @@ +# bbilly1 - tubearchivist + +This is a [Docker](/wiki/docker.md) container for a [TubeArchivist](/wiki/tubearchivist.md) +server. +The Server consists of 3 Docker containers, one is the TubeArchivist main server, another is a +TubeArchivist specific version of Elasticsearch and one a [redis](/wiki/docker/redis.md) instance. + +## Set-up + +Create the files `rebuild.sh` and `docker-compose.yml` at the same place. +Change the settings according to your needs and run `./rebuild.sh` afterwards. + +## Environment-variables + +Set the following environment-variables in the `environment:` section of the +docker-compose file. + +The following table lists the environment variables for the image `bbilly1/tubearchivist`. + +| Name | Usage | Default | +| -------------------| ------------------------------------------- | ------- | +| `ES_URL` | Network address for elastic search instance | `` | +| `REDIS_HOST` | Redis broker URL | `` | +| `HOST_UID` | User ID of Host | `` | +| `HOST_GID` | Group ID of Host | `` | +| `TA_HOST` | Domain name for TubeArchivist | `` | +| `TA_USERNAME` | User name for TubeArchivist | `` | +| `TA_PASSWORD` | Password for TubeArchivist | `` | +| `ELASTIC_PASSWORD` | Password for Elasticsearch | `` | +| `TZ` | Timezone | `` | + +The following table lists the environment variables for the image `bbilly1/tubearchivist-es`. + +| Name | Usage | Default | +| -------------------| ------------------------------------------- | ------- | +| `ELASTIC_PASSWORD` | Password for Elasticsearch | `` | +| `ES_JAVA_OPTS` | Additional Java options | `` | + +## Volumes + +Set the following volumes in the `volumes:` section of the docker-compose file. + +The following table lists the environment variables for the image `bbilly1/tubearchivist`. + +| Outside mount/volume name | Container mount | Description | +| ------------------------- | ------------------------ | --------------------------- | +| `media` | `/youtube` | storage for media | +| `cache` | `/cache` | storage for cache | + +The following table lists the environment variables for the image `bbilly1/tubearchivist-es`. + +| Outside mount/volume name | Container mount | Description | +| ------------------------- | ------------------------------- | --------------------------- | +| `es` | `/usr/share/elasticsearch/data` | storage for elasticsearch | + +## Ports + +Set the following ports in the `ports:` section. + +| Container Port | Recommended outside port | Protocol | Description | +| -------------- | ------------------------ | -------- | ----------- | +| `8000` | `8881` | TCP | WebUI | + +## rebuild.sh + +```sh +#!/bin/sh +docker-compose down +docker-compose up -d +``` + +## docker-compose.yml + +```yml +version: '3.3' + +services: + ta: + restart: unless-stopped + image: bbilly1/tubearchivist + ports: + - 8881:8000 + volumes: + - media:/youtube + - cache:/cache + environment: + - ES_URL=http://es:9200 # needs protocol e.g. http and port + - REDIS_HOST=redis # don't add protocol + - HOST_UID=1000 + - HOST_GID=1000 + - TA_HOST=subdomain.domain.tld # set your host name + - TA_USERNAME=admin # your initial TA credentials + - TA_PASSWORD=admin # your initial TA credentials + - ELASTIC_PASSWORD=verysecret # set password for Elasticsearch + - TZ=Europe/Berlin # set your time zone + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8000/health"] + interval: 2m + timeout: 10s + retries: 3 + depends_on: + - es + - redis + redis: + image: redis/redis-stack-server + restart: unless-stopped + volumes: + - redis:/data + depends_on: + - es + es: + image: bbilly1/tubearchivist-es # only for amd64, or use official es 8.9.0 + restart: unless-stopped + environment: + - "ELASTIC_PASSWORD=verysecret" # matching Elasticsearch password + - "ES_JAVA_OPTS=-Xms512m -Xmx512m" + - "xpack.security.enabled=true" + - "discovery.type=single-node" + - "path.repo=/usr/share/elasticsearch/data/snapshot" + ulimits: + memlock: + soft: -1 + hard: -1 + volumes: + - es:/usr/share/elasticsearch/data # check for permission error when using bind mount, see readme + +volumes: + media: + cache: + redis: + es: +``` diff --git a/wiki/docker-images/benbusby_-_whoogle-search.md b/wiki/docker/benbusby_-_whoogle-search.md similarity index 100% rename from wiki/docker-images/benbusby_-_whoogle-search.md rename to wiki/docker/benbusby_-_whoogle-search.md diff --git a/wiki/docker-images/bilde2910_-_hauk.md b/wiki/docker/bilde2910_-_hauk.md similarity index 100% rename from wiki/docker-images/bilde2910_-_hauk.md rename to wiki/docker/bilde2910_-_hauk.md diff --git a/wiki/docker-images/chocobozzz_-_peertube.md b/wiki/docker/chocobozzz_-_peertube.md similarity index 99% rename from wiki/docker-images/chocobozzz_-_peertube.md rename to wiki/docker/chocobozzz_-_peertube.md index bb77c05..506e373 100644 --- a/wiki/docker-images/chocobozzz_-_peertube.md +++ b/wiki/docker/chocobozzz_-_peertube.md @@ -42,7 +42,7 @@ docker-compose up -d ## .env -```txt +```sh TZ="Europe/Berlin" PT_INITIAL_ROOT_PASSWORD= diff --git a/wiki/docker-images/cloudrac3r_-_bibliogram.md b/wiki/docker/cloudrac3r_-_bibliogram.md similarity index 100% rename from wiki/docker-images/cloudrac3r_-_bibliogram.md rename to wiki/docker/cloudrac3r_-_bibliogram.md diff --git a/wiki/docker-images/dperson_-_torproxy.md b/wiki/docker/dperson_-_torproxy.md similarity index 100% rename from wiki/docker-images/dperson_-_torproxy.md rename to wiki/docker/dperson_-_torproxy.md diff --git a/wiki/docker-images/dyonr_-_jackettvpn.md b/wiki/docker/dyonr_-_jackettvpn.md similarity index 95% rename from wiki/docker-images/dyonr_-_jackettvpn.md rename to wiki/docker/dyonr_-_jackettvpn.md index 235492a..655cb43 100644 --- a/wiki/docker-images/dyonr_-_jackettvpn.md +++ b/wiki/docker/dyonr_-_jackettvpn.md @@ -1,6 +1,6 @@ # dyonr - jackettvpn -This is a [Docker](/wiki/docker.md) container for a [VPN](/wiki/vpn.md) +This is a [Docker](/wiki/docker.md) container for a [OpenVPN](/wiki/openvpn.md) protected [Jackett](/wiki/jackett.md) server. The official container and documentation was made by [dyonr](https://github.com/DyonR/docker-Jackettvpn). diff --git a/wiki/docker-images/dyonr_-_qbittorrentvpn.md b/wiki/docker/dyonr_-_qbittorrentvpn.md similarity index 98% rename from wiki/docker-images/dyonr_-_qbittorrentvpn.md rename to wiki/docker/dyonr_-_qbittorrentvpn.md index 32592d8..d746a69 100644 --- a/wiki/docker-images/dyonr_-_qbittorrentvpn.md +++ b/wiki/docker/dyonr_-_qbittorrentvpn.md @@ -2,7 +2,7 @@ This is a [Docker](/wiki/docker.md) container for a [qBittorrent](../qbittorrent.md) server that is connected to the internet via -an [openVPN tunnel](/wiki/vpn.md). +an [openVPN tunnel](/wiki/openvpn.md). The official container and documentation was made by [dyonr](https://github.com/DyonR/docker-qbittorrentvpn). diff --git a/wiki/docker-images/gitea_-_gitea.md b/wiki/docker/gitea_-_gitea.md similarity index 100% rename from wiki/docker-images/gitea_-_gitea.md rename to wiki/docker/gitea_-_gitea.md diff --git a/wiki/docker/gramps-project_-_grampsweb.md b/wiki/docker/gramps-project_-_grampsweb.md new file mode 100644 index 0000000..1d2a677 --- /dev/null +++ b/wiki/docker/gramps-project_-_grampsweb.md @@ -0,0 +1,111 @@ +# gramps-project - gramps + +This is a [Docker](/wiki/docker.md) container for a [Gramps](../gramps.md) +server. +The Server consists of 2 Docker containers, one is the gramps main server - split into two +subcontainers - and one a [redis instance](/wiki/docker/redis.md). + +## Set-up + +Create the files `rebuild.sh` and `docker-compose.yml` at the same place. +Change the settings according to your needs and run `./rebuild.sh` afterwards. + +## Environment-variables + +Set the following environment-variables in the `environment:` section of the +docker-compose file. + +| Name | Usage | Default | +| ----------------------------------------- | ------------------------------------ | ------- | +| `GRAMPSWEB_TREE` | Will create a new tree if not exists | `` | +| `GRAMPSWEB_CELERY_CONFIG__broker_url` | Redis broker URL | `` | +| `GRAMPSWEB_CELERY_CONFIG__result_backend` | Redis backend URL | `` | +| `GRAMPSWEB_RATELIMIT_STORAGE_URI` | Storage URI | `` | + +## Volumes + +Set the following volumes in the `volumes:` section of the docker-compose file. + +| Outside mount/volume name | Container mount | Description | +| ------------------------- | ------------------------ | --------------------------- | +| `gramps_users` | `/app/users` | storage for users | +| `gramps_index` | `/app/indexdir` | storage for search index | +| `gramps_thumb_cache` | `/app/thumbnail_cache` | storage for thumbnails | +| `gramps_cache` | `/app/cache` | storage for cache | +| `gramps_secret` | `/app/users` | storage for flask secret | +| `gramps_db` | `/root/.gramps/grampsdb` | Gramps database | +| `gramps_media` | `/app/media` | storage for media | +| `gramps_tmp` | `/tmp` | storage for temporary files | + +## Ports + +Set the following ports in the `ports:` section. + +| Container Port | Recommended outside port | Protocol | Description | +| -------------- | ------------------------ | -------- | ----------- | +| `5000` | `80` | TCP | WebUI | + +## rebuild.sh + +```sh +#!/bin/sh +docker-compose down +docker pull ghcr.io/gramps-project/grampsweb:latest +docker pull redis:alpine +docker-compose up -d +``` + +## docker-compose.yml + +```yml +version: "3" + +services: + grampsweb: &grampsweb + image: ghcr.io/gramps-project/grampsweb:latest + restart: always + ports: + - "5051:5000" # host:docker + environment: + GRAMPSWEB_TREE: "Gramps Web" # will create a new tree if not exists + GRAMPSWEB_CELERY_CONFIG__broker_url: "redis://grampsweb_redis:6379/0" + GRAMPSWEB_CELERY_CONFIG__result_backend: "redis://grampsweb_redis:6379/0" + GRAMPSWEB_RATELIMIT_STORAGE_URI: redis://grampsweb_redis:6379/1 + depends_on: + - grampsweb_redis + volumes: + - gramps_users:/app/users + - gramps_index:/app/indexdir + - gramps_thumb_cache:/app/thumbnail_cache + - gramps_cache:/app/cache + - gramps_secret:/app/secret + - gramps_db:/root/.gramps/grampsdb + - gramps_media:/app/media + - gramps_tmp:/tmp + + grampsweb_celery: + <<: *grampsweb # YAML merge key copying the entire grampsweb service config + ports: [] + container_name: grampsweb_celery + depends_on: + - grampsweb_redis + command: celery -A gramps_webapi.celery worker --loglevel=INFO + + grampsweb_redis: + image: redis:alpine + container_name: grampsweb_redis + restart: always + volumes: + - redis:/data + +volumes: + gramps_users: + gramps_index: + gramps_thumb_cache: + gramps_cache: + gramps_secret: + gramps_db: + gramps_media: + gramps_tmp: + redis: +``` diff --git a/wiki/docker/grimsi_-_gameyfin.md b/wiki/docker/grimsi_-_gameyfin.md new file mode 100644 index 0000000..ff87d96 --- /dev/null +++ b/wiki/docker/grimsi_-_gameyfin.md @@ -0,0 +1,73 @@ +# grimsi - gameyfin + +This is a [Docker](/wiki/docker.md) container for a [Gameyfin](/wiki/games/gameyfin.md). + +## Set-up + +Create the files `rebuild.sh` and `docker-compose.yml` at the same place. +Change the settings according to your needs. +Create the volume for the configuration files by running the command `docker volume create +gameyfin_config`. +Make sure to run the following command on the config volume `chown -R 1000:root gameyfin_config`. +Afterwards run `./rebuild.sh`. + +## Environment-variables + +Set the following environment-variables in the `environment:` section of the +docker-compose file. + +| Name | Usage | Default | +| --------------------------------- | --------------------------------------- | ------- | +| `GAMEYFIN_USER` | user name for gameyfin | | +| `GAMEYFIN_PASSWORD` | password for gameyfin | | +| `GAMEYFIN_IGDB_API_CLIENT_ID` | id of twitch internet game database | | +| `GAMEYFIN_IGDB_API_CLIENT_SECRET` | secret of twitch internet game database | | + +## Volumes + +Set the following volumes in the `volumes:` section of the docker-compose file. + +| Outside mount/volume name | Container mount | Description | +| ------------------------- | ----------------------- | ------------------------------ | +| `media_games` | `/opt/gameyfin-library` | storage for games and configs | + +## Ports + +Set the following ports in the `ports:` section. + +| Container Port | Recommended outside port | Protocol | Description | +| -------------- | ------------------------ | -------- | ---------------------- | +| `8080` | `8093` | TCP | WebUI | + + +## rebuild.sh + +```sh +#!/bin/sh +docker-compose down +docker-compose up -d +``` + +## docker-compose.yml + +```yml +version: "3" +services: + gameyfin: + image: grimsi/gameyfin:latest + container_name: gameyfin + environment: + - GAMEYFIN_USER=admin + - GAMEYFIN_PASSWORD=admin + - GAMEYFIN_IGDB_API_CLIENT_ID=id + - GAMEYFIN_IGDB_API_CLIENT_SECRET=secret + volumes: + - media_games:/opt/gameyfin-library + - config:/opt/gameyfin-library/.gameyfin + ports: + - "8093:8080" + +volumes: + media_games: + config: +``` diff --git a/wiki/docker-images/haugene_-_transmission-openvpn.md b/wiki/docker/haugene_-_transmission-openvpn.md similarity index 98% rename from wiki/docker-images/haugene_-_transmission-openvpn.md rename to wiki/docker/haugene_-_transmission-openvpn.md index c77f4f5..1a15ec3 100644 --- a/wiki/docker-images/haugene_-_transmission-openvpn.md +++ b/wiki/docker/haugene_-_transmission-openvpn.md @@ -2,7 +2,7 @@ This is a [Docker](/wiki/docker.md) container for a [transmission](../transmission.md) server that is connected to the internet via -an [openVPN tunnel](/wiki/vpn.md). +an [openVPN tunnel](/wiki/openvpn.md). The official container and documentation was made by [haugene](https://github.com/haugene/docker-transmission-openvpn). diff --git a/wiki/docker-images/henrywhitaker3_-_speedtest-tracker.md b/wiki/docker/henrywhitaker3_-_speedtest-tracker.md similarity index 100% rename from wiki/docker-images/henrywhitaker3_-_speedtest-tracker.md rename to wiki/docker/henrywhitaker3_-_speedtest-tracker.md diff --git a/wiki/docker/homeassistant_-_home-assistant.md b/wiki/docker/homeassistant_-_home-assistant.md new file mode 100644 index 0000000..fd21a59 --- /dev/null +++ b/wiki/docker/homeassistant_-_home-assistant.md @@ -0,0 +1,45 @@ +# homeassistant - home-assistant + +This is a [Docker](/wiki/docker.md) container for a [Home Assistant](/wiki/home_assistant.md) +server. +The official container and documentation was made by +[homeassistant](https://hub.docker.com/r/homeassistant/home-assistant). + +## Set-up + +Create the file `rebuild.sh`. +Change the settings according to your needs and run `./rebuild.sh` afterwards. + +## Volumes + +Set the following volumes with the -v tag. + +| Outside mount/volume name | Container mount | Description | +| ------------------------- | --------------- | ------------------------------- | +| `homeassistant_data` | `/config` | configuration for devices, etc | + +## Environment-variables + +Set the following environment-variables in the `environment:` section of the +docker-compose file. + +| Name | Usage | Default | +| --------------------- | --------------------------- | ----------------------- | +| `TZ` | specify the timezone | `` | + +## Additional + +The container needs acces to the host network. +This will at the same time expose port 8123 as web interface. + +## rebuild.sh + +```sh +docker run --name homeassistant \ + --restart=unless-stopped \ + --privileged \ + --network=host \ + -e TZ=Europe/Berlin \ + -v homeassistant_data:/config \ + -d ghcr.io/home-assistant/home-assistant:stable +``` diff --git a/wiki/docker-images/itzg_-_minecraft-server.md b/wiki/docker/itzg_-_minecraft-server.md similarity index 100% rename from wiki/docker-images/itzg_-_minecraft-server.md rename to wiki/docker/itzg_-_minecraft-server.md diff --git a/wiki/docker-images/iv-org_-_invidious.md b/wiki/docker/iv-org_-_invidious.md similarity index 98% rename from wiki/docker-images/iv-org_-_invidious.md rename to wiki/docker/iv-org_-_invidious.md index 06abd59..b762bd0 100755 --- a/wiki/docker-images/iv-org_-_invidious.md +++ b/wiki/docker/iv-org_-_invidious.md @@ -12,7 +12,7 @@ In addition to the main container you need to connect a First of all create a folder for your `rebuild.sh`. After that clone invidious from -[github](https://github.com/iv-org/invidious) into a folder within the +[GitHub](https://github.com/iv-org/invidious) into a folder within the just created folder. You can find the `docker-compose.yml` in the cloned directory. Set the variables, volumes and ports according and run the `rebuild.sh`. diff --git a/wiki/docker-images/jkarlos_-_git-server-docker.md b/wiki/docker/jkarlos_-_git-server-docker.md similarity index 100% rename from wiki/docker-images/jkarlos_-_git-server-docker.md rename to wiki/docker/jkarlos_-_git-server-docker.md diff --git a/wiki/docker-images/johnktims_-_folding-at-home.md b/wiki/docker/johnktims_-_folding-at-home.md similarity index 100% rename from wiki/docker-images/johnktims_-_folding-at-home.md rename to wiki/docker/johnktims_-_folding-at-home.md diff --git a/wiki/docker-images/jonohill_-_docker-openvpn-proxy.md b/wiki/docker/jonohill_-_docker-openvpn-proxy.md similarity index 98% rename from wiki/docker-images/jonohill_-_docker-openvpn-proxy.md rename to wiki/docker/jonohill_-_docker-openvpn-proxy.md index dd0342e..630688f 100644 --- a/wiki/docker-images/jonohill_-_docker-openvpn-proxy.md +++ b/wiki/docker/jonohill_-_docker-openvpn-proxy.md @@ -1,7 +1,7 @@ # jonohill - docker-openvpn-proxy This is a [Docker](/wiki/docker.md) container for an -[OpenVPN proxy](/wiki/vpn.md#proxy-ovpn). +[OpenVPN proxy](/wiki/openvpn.md#proxy). The official container and documentation was made by [jonohill](https://github.com/jonohill/docker-openvpn-proxy). diff --git a/wiki/docker-images/kylemanna_-_openvpn.md b/wiki/docker/kylemanna_-_openvpn.md similarity index 95% rename from wiki/docker-images/kylemanna_-_openvpn.md rename to wiki/docker/kylemanna_-_openvpn.md index bdc4818..2a76302 100644 --- a/wiki/docker-images/kylemanna_-_openvpn.md +++ b/wiki/docker/kylemanna_-_openvpn.md @@ -1,7 +1,7 @@ # kylemanna - openvpn This is a [Docker](/wiki/docker.md) container for an -[OpenVPN server](/wiki/vpn.md). +[OpenVPN server](/wiki/openvpn.md). The official container and documentation was made by [kylemanna](https://hub.docker.com/r/kylemanna/openvpn). @@ -26,7 +26,7 @@ Afterwards run `./rebuild.sh`. ### Create Certificates -Each device that connects to the [OpenVPN](/wiki/vpn.md#openvpn) server should +Each device that connects to the [OpenVPN](/wiki/openvpn.md) server should have a certificate to connect by. Create a certificate and retrieve it by running the following commands. Change all occurences of `` to the name of the client. diff --git a/wiki/docker-images/linuxserver_-_airsonic-advanced.md b/wiki/docker/linuxserver_-_airsonic-advanced.md similarity index 100% rename from wiki/docker-images/linuxserver_-_airsonic-advanced.md rename to wiki/docker/linuxserver_-_airsonic-advanced.md diff --git a/wiki/docker-images/linuxserver_-_airsonic.md b/wiki/docker/linuxserver_-_airsonic.md similarity index 100% rename from wiki/docker-images/linuxserver_-_airsonic.md rename to wiki/docker/linuxserver_-_airsonic.md diff --git a/wiki/docker-images/linuxserver_-_freshrss.md b/wiki/docker/linuxserver_-_freshrss.md similarity index 100% rename from wiki/docker-images/linuxserver_-_freshrss.md rename to wiki/docker/linuxserver_-_freshrss.md diff --git a/wiki/docker-images/linuxserver_-_jellyfin.md b/wiki/docker/linuxserver_-_jellyfin.md similarity index 100% rename from wiki/docker-images/linuxserver_-_jellyfin.md rename to wiki/docker/linuxserver_-_jellyfin.md diff --git a/wiki/docker-images/linuxserver_-_lidarr.md b/wiki/docker/linuxserver_-_lidarr.md similarity index 97% rename from wiki/docker-images/linuxserver_-_lidarr.md rename to wiki/docker/linuxserver_-_lidarr.md index 0af1538..06f0bf3 100644 --- a/wiki/docker-images/linuxserver_-_lidarr.md +++ b/wiki/docker/linuxserver_-_lidarr.md @@ -13,7 +13,7 @@ It is recommended to set a download completed folder with the same internal and external mounts as your [BitTorent](/wiki/bittorrent.md) client. This guide uses the same mounts as used in the [Transmission](/wiki/transmission.md) -[Docker container](/wiki/docker-images/haugene_-_transmission-openvpn.md). +[Docker container](/wiki/docker/haugene_-_transmission-openvpn.md). This namely causes the following line in the [`docker-compose.yml`](#docker-composeyml). diff --git a/wiki/docker-images/linuxserver_-_radarr.md b/wiki/docker/linuxserver_-_radarr.md similarity index 97% rename from wiki/docker-images/linuxserver_-_radarr.md rename to wiki/docker/linuxserver_-_radarr.md index 53bcccb..7eeefc9 100644 --- a/wiki/docker-images/linuxserver_-_radarr.md +++ b/wiki/docker/linuxserver_-_radarr.md @@ -13,7 +13,7 @@ It is recommended to set a download completed folder with the same internal and external mounts as your [BitTorent](/wiki/bittorrent.md) client. This guide uses the same mounts as used in the [Transmission](/wiki/transmission.md) -[Docker container](/wiki/docker-images/haugene_-_transmission-openvpn.md). +[Docker container](/wiki/docker/haugene_-_transmission-openvpn.md). This namely causes the following line in the [`docker-compose.yml`](#docker-composeyml). diff --git a/wiki/docker-images/linuxserver_-_sonarr.md b/wiki/docker/linuxserver_-_sonarr.md similarity index 97% rename from wiki/docker-images/linuxserver_-_sonarr.md rename to wiki/docker/linuxserver_-_sonarr.md index ba870ff..b95a299 100644 --- a/wiki/docker-images/linuxserver_-_sonarr.md +++ b/wiki/docker/linuxserver_-_sonarr.md @@ -13,7 +13,7 @@ It is recommended to set a download completed folder with the same internal and external mounts as your [BitTorent](/wiki/bittorrent.md) client. This guide uses the same mounts as used in the [Transmission](/wiki/transmission.md) -[Docker container](/wiki/docker-images/haugene_-_transmission-openvpn.md). +[Docker container](/wiki/docker/haugene_-_transmission-openvpn.md). This namely causes the following line in the [`docker-compose.yml`](#docker-composeyml). diff --git a/wiki/docker-images/linuxserver_-_syncthing.md b/wiki/docker/linuxserver_-_syncthing.md similarity index 100% rename from wiki/docker-images/linuxserver_-_syncthing.md rename to wiki/docker/linuxserver_-_syncthing.md diff --git a/wiki/docker-images/linuxserver_-_tvheadend.md b/wiki/docker/linuxserver_-_tvheadend.md similarity index 100% rename from wiki/docker-images/linuxserver_-_tvheadend.md rename to wiki/docker/linuxserver_-_tvheadend.md diff --git a/wiki/docker-images/linuxserver_-_wireguard.md b/wiki/docker/linuxserver_-_wireguard.md similarity index 97% rename from wiki/docker-images/linuxserver_-_wireguard.md rename to wiki/docker/linuxserver_-_wireguard.md index 99e963b..3f9e9ad 100644 --- a/wiki/docker-images/linuxserver_-_wireguard.md +++ b/wiki/docker/linuxserver_-_wireguard.md @@ -1,7 +1,7 @@ # linuxserver - airsonic-advanced This is a [Docker](/wiki/docker.md) container for a -[WireGuard](../vpn.md#WireGuard) server. +[WireGuard](/wiki/wireguard.md) server. The official container and documentation was made by [linuxserver](https://hub.docker.com/r/linuxserver/wireguard). @@ -12,7 +12,7 @@ Change the settings according to your needs. Especially change `` to the URL the VPN is accessible at. If not already done set a port forward or something similar. `PEERS` is given the number of configs to create for different -[clients](/wiki/vpn.md#client-wg). +[clients](/wiki/wireguard.md#client). It is also possible to give a list of clients separated by commas (`first,second,third`) to create. The following shows the two options. diff --git a/wiki/docker-images/mailserver_-_docker-mailserver.md b/wiki/docker/mailserver_-_docker-mailserver.md similarity index 95% rename from wiki/docker-images/mailserver_-_docker-mailserver.md rename to wiki/docker/mailserver_-_docker-mailserver.md index f2d20d4..555e891 100644 --- a/wiki/docker-images/mailserver_-_docker-mailserver.md +++ b/wiki/docker/mailserver_-_docker-mailserver.md @@ -33,7 +33,7 @@ And finally generate the DCIM keys and rebuild once again. `./setup.sh config dkim` Finally if a reverse proxy is used check the -[traefik entry](/wiki/docker-images/traefik.md#setup-mailserver) or the +[traefik entry](/wiki/docker/traefik.md#setup-mailserver) or the [nginx entry](./nginx.md). Afterwards you're ready to go by once again running the `rebuild.sh` file. diff --git a/wiki/docker-images/mariadb.md b/wiki/docker/mariadb.md similarity index 100% rename from wiki/docker-images/mariadb.md rename to wiki/docker/mariadb.md diff --git a/wiki/docker-images/matrixdotorg_-_synapse.md b/wiki/docker/matrixdotorg_-_synapse.md similarity index 100% rename from wiki/docker-images/matrixdotorg_-_synapse.md rename to wiki/docker/matrixdotorg_-_synapse.md diff --git a/wiki/docker-images/mikenye_-_picard.md b/wiki/docker/mikenye_-_picard.md similarity index 100% rename from wiki/docker-images/mikenye_-_picard.md rename to wiki/docker/mikenye_-_picard.md diff --git a/wiki/docker-images/mysql.md b/wiki/docker/mysql.md similarity index 100% rename from wiki/docker-images/mysql.md rename to wiki/docker/mysql.md diff --git a/wiki/docker-images/nextcloud.md b/wiki/docker/nextcloud.md similarity index 85% rename from wiki/docker-images/nextcloud.md rename to wiki/docker/nextcloud.md index 90b4067..9ea7ac1 100644 --- a/wiki/docker-images/nextcloud.md +++ b/wiki/docker/nextcloud.md @@ -12,6 +12,16 @@ Docker container. Create the files `rebuild.sh` and `docker-compose.yml` at the same place. Change the settings according to your needs and run `./rebuild.sh` afterwards. +It is recommended to use the versionnumber instead of `:latest` for both the MariaDB and the +NextCloud image like the following example. + +``` +nextcloud:22 +mariadb:9 +``` + +Make sure to substitute all the occurences of the `:latest` tag accordingly. +Updating has to be done manually so nothing breaks. ## Volumes @@ -50,7 +60,7 @@ volumes: services: db: - image: mariadb + image: mariadb:latest restart: always command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW volumes: @@ -62,7 +72,7 @@ services: - MYSQL_USER=nextcloud app: - image: nextcloud + image: nextcloud:latest restart: always ports: - 8080:80 @@ -81,5 +91,4 @@ volumes: driver: local nextcloud: driver: local - ``` diff --git a/wiki/docker-images/nginx.md b/wiki/docker/nginx.md similarity index 100% rename from wiki/docker-images/nginx.md rename to wiki/docker/nginx.md diff --git a/wiki/docker-images/olbat_-_cupsd.md b/wiki/docker/olbat_-_cupsd.md similarity index 100% rename from wiki/docker-images/olbat_-_cupsd.md rename to wiki/docker/olbat_-_cupsd.md diff --git a/wiki/docker-images/owncloud.md b/wiki/docker/owncloud.md similarity index 100% rename from wiki/docker-images/owncloud.md rename to wiki/docker/owncloud.md diff --git a/wiki/docker-images/oznu_-_docker-cloudflare-ddns.md b/wiki/docker/oznu_-_docker-cloudflare-ddns.md similarity index 100% rename from wiki/docker-images/oznu_-_docker-cloudflare-ddns.md rename to wiki/docker/oznu_-_docker-cloudflare-ddns.md diff --git a/wiki/docker-images/oznu_-_onedrive.md b/wiki/docker/oznu_-_onedrive.md similarity index 100% rename from wiki/docker-images/oznu_-_onedrive.md rename to wiki/docker/oznu_-_onedrive.md diff --git a/wiki/docker-images/portainer_-_agent.md b/wiki/docker/portainer_-_agent.md similarity index 100% rename from wiki/docker-images/portainer_-_agent.md rename to wiki/docker/portainer_-_agent.md diff --git a/wiki/docker-images/portainer_-_portainer.md b/wiki/docker/portainer_-_portainer.md similarity index 100% rename from wiki/docker-images/portainer_-_portainer.md rename to wiki/docker/portainer_-_portainer.md diff --git a/wiki/docker-images/postgres.md b/wiki/docker/postgres.md similarity index 100% rename from wiki/docker-images/postgres.md rename to wiki/docker/postgres.md diff --git a/wiki/docker-images/prologic_-_golinks.md b/wiki/docker/prologic_-_golinks.md similarity index 100% rename from wiki/docker-images/prologic_-_golinks.md rename to wiki/docker/prologic_-_golinks.md diff --git a/wiki/docker-images/prologic_-_gopherproxy.md b/wiki/docker/prologic_-_gopherproxy.md similarity index 100% rename from wiki/docker-images/prologic_-_gopherproxy.md rename to wiki/docker/prologic_-_gopherproxy.md diff --git a/wiki/docker-images/prologic_-_todo.md b/wiki/docker/prologic_-_todo.md similarity index 100% rename from wiki/docker-images/prologic_-_todo.md rename to wiki/docker/prologic_-_todo.md diff --git a/wiki/docker-images/rblsb_-_synctube.md b/wiki/docker/rblsb_-_synctube.md similarity index 95% rename from wiki/docker-images/rblsb_-_synctube.md rename to wiki/docker/rblsb_-_synctube.md index bb65e9d..ed204a6 100644 --- a/wiki/docker-images/rblsb_-_synctube.md +++ b/wiki/docker/rblsb_-_synctube.md @@ -9,7 +9,7 @@ There is no official pre-build on docker-hub. ## Set-up First of all create a folder for your `rebuild.sh`. -After that clone synctube from [github](https://github.com/rblsb/synctube) into +After that clone synctube from [GitHub](https://github.com/rblsb/synctube) into a folder within the just created folder. Then build the image inside the git folder with `docker build -t synctube .`. Set the variables, volumes and ports according and run the `rebuild.sh`. diff --git a/wiki/docker-images/redis.md b/wiki/docker/redis.md similarity index 100% rename from wiki/docker-images/redis.md rename to wiki/docker/redis.md diff --git a/wiki/docker-images/rlister_-_hastebin.md b/wiki/docker/rlister_-_hastebin.md similarity index 100% rename from wiki/docker-images/rlister_-_hastebin.md rename to wiki/docker/rlister_-_hastebin.md diff --git a/wiki/docker-images/samba.md b/wiki/docker/samba.md similarity index 100% rename from wiki/docker-images/samba.md rename to wiki/docker/samba.md diff --git a/wiki/docker-images/searx_-_searx.md b/wiki/docker/searx_-_searx.md similarity index 70% rename from wiki/docker-images/searx_-_searx.md rename to wiki/docker/searx_-_searx.md index 0be2ef6..b244da4 100644 --- a/wiki/docker-images/searx_-_searx.md +++ b/wiki/docker/searx_-_searx.md @@ -7,7 +7,7 @@ The official container and documentation was made by ## Set-up -Create the file `rebuild.sh`. +Create the files `rebuild.sh` and `docker-compose.yml` at the same place. Change the settings according to your needs and run `./rebuild.sh` afterwards. ## Volumes @@ -31,13 +31,27 @@ Set the following ports with the -p tag. ```sh #!/bin/sh -docker stop searx -docker rm searx -docker pull searx/searx -docker run --name searx \ - --restart unless-stopped \ - -v searx_etc:/etc/searx \ - -v searx_log:/var/log/uwsgi \ - -p 8080:8080 \ - -d searx/searx +docker-compose down +docker-compose up -d +``` + +## docker-compose.yml + +```sh +version: "2.1" +services: + searx: + image: searx/searx + volumes: + - etc:/etc/searx + - log:/var/log/uwsgi + restart: unless-stopped + ports: + - 8080:8080 + +volumes: + etc: + driver: local + log: + driver: local ``` diff --git a/wiki/docker-images/sissbrueckner_-_linkding.md b/wiki/docker/sissbrueckner_-_linkding.md similarity index 100% rename from wiki/docker-images/sissbrueckner_-_linkding.md rename to wiki/docker/sissbrueckner_-_linkding.md diff --git a/wiki/docker-images/spikecodes_-_libreddit.md b/wiki/docker/spikecodes_-_libreddit.md similarity index 100% rename from wiki/docker-images/spikecodes_-_libreddit.md rename to wiki/docker/spikecodes_-_libreddit.md diff --git a/wiki/docker-images/teamspeak.md b/wiki/docker/teamspeak.md similarity index 94% rename from wiki/docker-images/teamspeak.md rename to wiki/docker/teamspeak.md index 5f511bd..6de1d12 100644 --- a/wiki/docker-images/teamspeak.md +++ b/wiki/docker/teamspeak.md @@ -1,9 +1,9 @@ # teamspeak This is a [Docker](/wiki/docker.md) container for a -[teamspeak3](../teamspeak3.md) server. +[Teamspeak3](/wiki/teamspeak.md) server. The official container and documentation was made by -[teamspeak](https://hub.docker.com/_/teamspeak). +[Teamspeak](https://hub.docker.com/_/teamspeak). ## Set-up diff --git a/wiki/docker-images/tetricz_-_mordhau-server.md b/wiki/docker/tetricz_-_mordhau-server.md similarity index 100% rename from wiki/docker-images/tetricz_-_mordhau-server.md rename to wiki/docker/tetricz_-_mordhau-server.md diff --git a/wiki/docker/tombursch_-_kitchenowl.md b/wiki/docker/tombursch_-_kitchenowl.md new file mode 100644 index 0000000..77b494d --- /dev/null +++ b/wiki/docker/tombursch_-_kitchenowl.md @@ -0,0 +1,66 @@ +# tombursch - kitchenowl + +This is a [Docker](/wiki/docker.md) container for a [kitchenowl](kitchenowl) +server. +The official container and documentation was made by +[tombursch](https://github.com/tombursch/kitchenowl). +This docker-rebuild is made up by a `docker-compose.yml` file. +The Server consists of two Docker containers, one is the kitchenowl frontend, another is a backend. + +## Set-up + +Create the files `rebuild.sh` and `docker-compose.yml` at the same +place. +Make sure to change `JWT_SECRET_KEY`. +Change the settings according to your needs and run `./rebuild.sh` afterwards. + +## Ports + +Set the following ports in the `ports:` section. + +| Container Port | Recommended outside port | Protocol | Description | +| -------------- | ------------------------ | -------- | ----------- | +| `7890` | `80` | TCP | WebUI | + +## Volumes + +Set the following volumes with the -v tag. + +| Outside mount/volume name | Container mount | Description | +| ------------------------- | -------------------------- | ------------------------ | +| `kitchenowl_data` | `/data` | storage for all data | + +## rebuild.sh + +```sh +#!/bin/sh +docker-compose down +docker pull tombursch/kitchenowl-web:latest +docker pull tombursch/kitchenowl:latest +docker-compose up -d +``` + +## docker-compose.yml + +```yml +version: "3" +services: + kitchenowl: + image: tombursch/kitchenowl-web:latest + restart: unless-stopped + depends_on: + - back + ports: + - 7890:80 + back: + image: tombursch/kitchenowl:latest + restart: unless-stopped + environment: + - JWT_SECRET_KEY=changethis + volumes: + - kitchenowl_data:/data + +volumes: + kitchenowl_data: + driver: local +``` diff --git a/wiki/docker-images/tomsquest_-_docker-radicale.md b/wiki/docker/tomsquest_-_docker-radicale.md similarity index 100% rename from wiki/docker-images/tomsquest_-_docker-radicale.md rename to wiki/docker/tomsquest_-_docker-radicale.md diff --git a/wiki/docker-images/traefik.md b/wiki/docker/traefik.md similarity index 100% rename from wiki/docker-images/traefik.md rename to wiki/docker/traefik.md diff --git a/wiki/docker/vabene1111_-_recipes.md b/wiki/docker/vabene1111_-_recipes.md new file mode 100644 index 0000000..cba8db8 --- /dev/null +++ b/wiki/docker/vabene1111_-_recipes.md @@ -0,0 +1,251 @@ +# vabene1111 - recipes + +This is a [Docker](/wiki/docker.md) container for a [TandoorRecipes](/wiki/tandoor_recipes.md) +server. +The official container and documentation was made by +[TandoorRecipes](https://github.com/TandoorRecipes/recipes). +This docker-rebuild is made up by a `docker-compose.yml` file. +In addition to the main container you need to connect a +[postgres container](/wiki/docker/postgres.md) to it. + +## Set-up + +Create the files `rebuild.sh`, `.env` and `docker-compose.yml` at the same +place. +Make sure to set `SECRET_KEY` and `POSTGRES_PASSWORD`. +Change the settings according to your needs and run `./rebuild.sh` afterwards. + +## Ports + +Set the following ports in the `ports:` section. + +| Container Port | Recommended outside port | Protocol | Description | +| -------------- | ------------------------ | -------- | ----------- | +| `8083` | `8080` | TCP | WebUI | + +## Volumes + +Set the following volumes with the -v tag. + +| Outside mount/volume name | Container mount | Description | +| ------------------------- | -------------------------- | ------------------------ | +| `staticfiles` | `/opt/recipes/staticfiles` | storage for static files | +| `mediafiles` | `/opt/recipes/mediafiles` | storage for media files | + +## rebuild.sh + +```sh +#!/bin/sh +docker-compose down +docker pull vabene1111/recipes:latest +docker pull postgres:15-alpine +docker-compose up -d +``` + +## .env + +```sh +# only set this to true when testing/debugging +# when unset: 1 (true) - dont unset this, just for development +DEBUG=0 +SQL_DEBUG=0 +DEBUG_TOOLBAR=0 +# Gunicorn log level for debugging (default value is "info" when unset) +# (see https://docs.gunicorn.org/en/stable/settings.html#loglevel for available settings) +# GUNICORN_LOG_LEVEL="debug" + +# HTTP port to bind to +# TANDOOR_PORT=8080 + +# hosts the application can run under e.g. recipes.mydomain.com,cooking.mydomain.com,... +ALLOWED_HOSTS=* + +# random secret key, use for example `base64 /dev/urandom | head -c50` to generate one +# ---------------------------- REQUIRED ------------------------- +SECRET_KEY= +# --------------------------------------------------------------- + +# your default timezone See https://timezonedb.com/time-zones for a list of timezones +TIMEZONE=Europe/Berlin + +# add only a database password if you want to run with the default postgres, otherwise change settings accordingly +DB_ENGINE=django.db.backends.postgresql +# DB_OPTIONS= {} # e.g. {"sslmode":"require"} to enable ssl +POSTGRES_HOST=db_recipes +POSTGRES_PORT=5432 +POSTGRES_USER=djangouser +# ---------------------------- REQUIRED ------------------------- +POSTGRES_PASSWORD= +# --------------------------------------------------------------- +POSTGRES_DB=djangodb + +# database connection string, when used overrides other database settings. +# format might vary depending on backend +# DATABASE_URL = engine://username:password@host:port/dbname + +# the default value for the user preference 'fractions' (enable/disable fraction support) +# default: disabled=0 +FRACTION_PREF_DEFAULT=0 + +# the default value for the user preference 'comments' (enable/disable commenting system) +# default comments enabled=1 +COMMENT_PREF_DEFAULT=1 + +# Users can set a amount of time after which the shopping list is refreshed when they are in viewing mode +# This is the minimum interval users can set. Setting this to low will allow users to refresh very frequently which +# might cause high load on the server. (Technically they can obviously refresh as often as they want with their own scripts) +SHOPPING_MIN_AUTOSYNC_INTERVAL=5 + +# Default for user setting sticky navbar +# STICKY_NAV_PREF_DEFAULT=1 + +# If base URL is something other than just / (you are serving a subfolder in your proxy for instance http://recipe_app/recipes/) +# Be sure to not have a trailing slash: e.g. '/recipes' instead of '/recipes/' +# SCRIPT_NAME=/recipes + +# If staticfiles are stored at a different location uncomment and change accordingly, MUST END IN / +# this is not required if you are just using a subfolder +# This can either be a relative path from the applications base path or the url of an external host +# STATIC_URL=/static/ + +# If mediafiles are stored at a different location uncomment and change accordingly, MUST END IN / +# this is not required if you are just using a subfolder +# This can either be a relative path from the applications base path or the url of an external host +# MEDIA_URL=/media/ + +# Serve mediafiles directly using gunicorn. Basically everyone recommends not doing this. Please use any of the examples +# provided that include an additional nxginx container to handle media file serving. +# If you know what you are doing turn this back on (1) to serve media files using djangos serve() method. +# when unset: 1 (true) - this is temporary until an appropriate amount of time has passed for everyone to migrate +GUNICORN_MEDIA=0 + +# GUNICORN SERVER RELATED SETTINGS (see https://docs.gunicorn.org/en/stable/design.html#how-many-workers for recommended settings) +# GUNICORN_WORKERS=1 +# GUNICORN_THREADS=1 + +# S3 Media settings: store mediafiles in s3 or any compatible storage backend (e.g. minio) +# as long as S3_ACCESS_KEY is not set S3 features are disabled +# S3_ACCESS_KEY= +# S3_SECRET_ACCESS_KEY= +# S3_BUCKET_NAME= +# S3_REGION_NAME= # default none, set your region might be required +# S3_QUERYSTRING_AUTH=1 # default true, set to 0 to serve media from a public bucket without signed urls +# S3_QUERYSTRING_EXPIRE=3600 # number of seconds querystring are valid for +# S3_ENDPOINT_URL= # when using a custom endpoint like minio +# S3_CUSTOM_DOMAIN= # when using a CDN/proxy to S3 (see https://github.com/TandoorRecipes/recipes/issues/1943) + +# Email Settings, see https://docs.djangoproject.com/en/3.2/ref/settings/#email-host +# Required for email confirmation and password reset (automatically activates if host is set) +# EMAIL_HOST= +# EMAIL_PORT= +# EMAIL_HOST_USER= +# EMAIL_HOST_PASSWORD= +# EMAIL_USE_TLS=0 +# EMAIL_USE_SSL=0 +# email sender address (default 'webmaster@localhost') +# DEFAULT_FROM_EMAIL= +# prefix used for account related emails (default "[Tandoor Recipes] ") +# ACCOUNT_EMAIL_SUBJECT_PREFIX= + +# allow authentication via reverse proxy (e.g. authelia), leave off if you dont know what you are doing +# see docs for more information https://docs.tandoor.dev/features/authentication/ +# when unset: 0 (false) +REVERSE_PROXY_AUTH=0 + +# Default settings for spaces, apply per space and can be changed in the admin view +# SPACE_DEFAULT_MAX_RECIPES=0 # 0=unlimited recipes +# SPACE_DEFAULT_MAX_USERS=0 # 0=unlimited users per space +# SPACE_DEFAULT_MAX_FILES=0 # Maximum file storage for space in MB. 0 for unlimited, -1 to disable file upload. +# SPACE_DEFAULT_ALLOW_SHARING=1 # Allow users to share recipes with public links + +# allow people to create accounts on your application instance (without an invite link) +# when unset: 0 (false) +# ENABLE_SIGNUP=0 + +# If signup is enabled you might want to add a captcha to it to prevent spam +# HCAPTCHA_SITEKEY= +# HCAPTCHA_SECRET= + +# if signup is enabled you might want to provide urls to data protection policies or terms and conditions +# TERMS_URL= +# PRIVACY_URL= +# IMPRINT_URL= + +# enable serving of prometheus metrics under the /metrics path +# ATTENTION: view is not secured (as per the prometheus default way) so make sure to secure it +# trough your web server (or leave it open of you dont care if the stats are exposed) +# ENABLE_METRICS=0 + +# allows you to setup OAuth providers +# see docs for more information https://docs.tandoor.dev/features/authentication/ +# SOCIAL_PROVIDERS = allauth.socialaccount.providers.github, allauth.socialaccount.providers.nextcloud, + +# Should a newly created user from a social provider get assigned to the default space and given permission by default ? +# ATTENTION: This feature might be deprecated in favor of a space join and public viewing system in the future +# default 0 (false), when 1 (true) users will be assigned space and group +# SOCIAL_DEFAULT_ACCESS = 1 + +# if SOCIAL_DEFAULT_ACCESS is used, which group should be added +# SOCIAL_DEFAULT_GROUP=guest + +# Django session cookie settings. Can be changed to allow a single django application to authenticate several applications +# when running under the same database +# SESSION_COOKIE_DOMAIN=.example.com +# SESSION_COOKIE_NAME=sessionid # use this only to not interfere with non unified django applications under the same top level domain + +# by default SORT_TREE_BY_NAME is disabled this will store all Keywords and Food in the order they are created +# enabling this setting makes saving new keywords and foods very slow, which doesn't matter in most usecases. +# however, when doing large imports of recipes that will create new objects, can increase total run time by 10-15x +# Keywords and Food can be manually sorted by name in Admin +# This value can also be temporarily changed in Admin, it will revert the next time the application is started +# This will be fixed/changed in the future by changing the implementation or finding a better workaround for sorting +# SORT_TREE_BY_NAME=0 +# LDAP authentication +# default 0 (false), when 1 (true) list of allowed users will be fetched from LDAP server +#LDAP_AUTH= +#AUTH_LDAP_SERVER_URI= +#AUTH_LDAP_BIND_DN= +#AUTH_LDAP_BIND_PASSWORD= +#AUTH_LDAP_USER_SEARCH_BASE_DN= +#AUTH_LDAP_TLS_CACERTFILE= +#AUTH_LDAP_START_TLS= + +# Enables exporting PDF (see export docs) +# Disabled by default, uncomment to enable +# ENABLE_PDF_EXPORT=1 + +# Recipe exports are cached for a certain time by default, adjust time if needed +# EXPORT_FILE_CACHE_DURATION=600 +``` + +## docker-compose.yml + +```yml +version: "3" +services: + web_recipes: + restart: unless-stopped + image: vabene1111/recipes + ports: + - 8083:8080 + env_file: + - ./.env + volumes: + - staticfiles:/opt/recipes/staticfiles + - mediafiles:/opt/recipes/mediafiles + depends_on: + - db_recipes + + db_recipes: + restart: unless-stopped + image: postgres:15-alpine + volumes: + - postgresql:/var/lib/postgresql/data + env_file: + - ./.env + +volumes: + postgresql: + staticfiles: + mediafiles: +``` diff --git a/wiki/docker-images/vectorim_-_riot-web.md b/wiki/docker/vectorim_-_riot-web.md similarity index 100% rename from wiki/docker-images/vectorim_-_riot-web.md rename to wiki/docker/vectorim_-_riot-web.md diff --git a/wiki/docker-images/ventz_-_bind.md b/wiki/docker/ventz_-_bind.md similarity index 100% rename from wiki/docker-images/ventz_-_bind.md rename to wiki/docker/ventz_-_bind.md diff --git a/wiki/docker-images/wallabag_-_wallabag.md b/wiki/docker/wallabag_-_wallabag.md similarity index 100% rename from wiki/docker-images/wallabag_-_wallabag.md rename to wiki/docker/wallabag_-_wallabag.md diff --git a/wiki/docker-images/xy2z_-_pinedocs.md b/wiki/docker/xy2z_-_pinedocs.md similarity index 100% rename from wiki/docker-images/xy2z_-_pinedocs.md rename to wiki/docker/xy2z_-_pinedocs.md diff --git a/wiki/docker-images/yourls.md b/wiki/docker/yourls.md similarity index 100% rename from wiki/docker-images/yourls.md rename to wiki/docker/yourls.md diff --git a/wiki/docker-images/zedeus_-_nitter.md b/wiki/docker/zedeus_-_nitter.md similarity index 100% rename from wiki/docker-images/zedeus_-_nitter.md rename to wiki/docker/zedeus_-_nitter.md diff --git a/wiki/firefox.md b/wiki/firefox.md index 63232e9..545b09e 100644 --- a/wiki/firefox.md +++ b/wiki/firefox.md @@ -3,29 +3,6 @@ [Firefox](https://www.mozilla.org/en-US/Firefox) is a free and open-source web browser. -## Configuration - -Firefox has many possible settings and precerences. -This section addresses possible settings and preferences for specific use cases. - -### Telemetry - -Telemetry is the remote measurement and transmission of data. -To change the telemetry of Firefox navigate to `about:telemetry` and click the -options to toggle between enabled and disabled. - -### Enable/Disable Scrolling - -On Linux distributions auto scroll is disabled by default. -This means that you cant click the middle mouse button to use it for scrolling. -To enable it go into the preferences and check `Use autoscrolling`. - -### Enable/Disable Sponsorings - -Sponsorings are embedded ads in Firefox. -After navigating to `about:config` enabling and disabling of sponsorings can be done at -`browser.newtabpage.activity-stream.showSponsored`. - ## Usage The following section addresses different uses and add-ons of Firefox. @@ -37,58 +14,89 @@ including bookmarks smaller. After navigating to `about:config` the configuration can be done at `browser.compactmode.show`. -## List of useful Firefox add-ons +### List of useful Firefox Add-ons Following is a list of useful Firefox add-ons. They can be removed and configured under `about:config`. +The add-ons are grouped thematically + +#### Privacy and Security Add-ons + +The following add-ons increase the security or privacy. - [Cameleon](https://addons.mozilla.org/en-GB/firefox/addon/chameleon-ext/) spoofs your browser profile including user agent and screen size. -- [ClearURLs](https://addons.mozilla.org/en-GB/Firefox/addon/clearurls) removes +- [ClearURLs](https://addons.mozilla.org/en-GB/firefox/addon/clearurls) removes tracking elements from URLs. -- [Dark Reader](https://addons.mozilla.org/en-GB/Firefox/addon/darkreader) creates - an automatic dark mode for sites without native dark mode. -- [Firefox Multi-Account Containers](https://addons.mozilla.org/en-GB/Firefox/addon/multi-account-containers) +- [Consent-O-Matic](https://addons.mozilla.org/en-GB/firefox/addon/consent-o-matic) + automatically refuses GDPR consent to a bunch of platforms. +- [Firefox Multi-Account Containers](https://addons.mozilla.org/en-GB/firefox/addon/multi-account-containers) lets you separate cookies in different containers on a per site base. With this add-on a proxy can be selected for each container which enables - usage of [a VPN proxy](/wiki/vpn.md#openvpn). - - [Temporary Containers](https://addons.mozilla.org/en-GB/Firefox/addon/temporary-containers) - opens tabs and websites, that are not already managed by - `Firefox Multi-Account Containers` in a new container. -- [Floccus](https://addons.mozilla.org/en-US/Firefox/addon/floccus/) syncs your - bookmarks across devices (supports Nextcloud and WebDAV (ownCloud, etc)). -- [hide-scrollbars](https://addons.mozilla.org/en-GB/Firefox/addon/hide-scrollbars) - hides scrollbars. -- [Never-Consent](https://addons.mozilla.org/en-GB/Firefox/addon/never-consent) - automatically refuses GDPR consent to a bunch of platforms. -- [NoScript](https://addons.mozilla.org/en-GB/Firefox/addon/noscript) blocks all + usage of a [VPN](/wiki/vpn.md) that acts as a Proxy like a + [OpenVPN Proxy](/wiki/openvpn.md#proxy). +- [Temporary Containers](https://addons.mozilla.org/en-GB/firefox/addon/temporary-containers) + opens tabs and websites, that are not already managed by + `Firefox Multi-Account Containers` in a new container. +- [NoScript](https://addons.mozilla.org/en-GB/firefox/addon/noscript) blocks all javascript so that the parts you need can be reenabled and the rest is not used. -- [Privacy Badger](https://addons.mozilla.org/en-GB/Firefox/addon/privacy-badger17) +- [Privacy Badger](https://addons.mozilla.org/en-GB/firefox/addon/privacy-badger17) blocks unwanted invisible trackers. -- [Privacy Redirect](https://addons.mozilla.org/en-US/Firefox/addon/privacy-redirect/) +- [Privacy Redirect](https://addons.mozilla.org/en-US/firefox/addon/privacy-redirect/) redirects youtube, instagram, twitter, etc to free alternatives or alternative frontends. -- [Sidebery](https://addons.mozilla.org/en-GB/Firefox/addon/sidebery) - is a sidebar with treestyle tabs and bookmarks. -- [SponsorBlock](https://addons.mozilla.org/en-US/firefox/addon/sponsorblock/) - skips YouTube video sponsors automatically, works with - [invidious](./invidious.md) too. +- [SponsorBlock](/wiki/youtube.md#automatically-skip-sponsorships) skips YouTube video sponsors + automatically, works with [Invidious](./invidious.md) too. - [Tampermonkey](https://github.com/Tampermonkey/tampermonkey) is a userscript manager that can be used for the following tasks: - [Bypass YouTubes age restrictions](https://github.com/zerodytrash/Simple-YouTube-Age-Restriction-Bypass) - [Exclude pages from](http://www.jeffersonscher.com/gm/google-hit-hider/) [search results](/wiki/search_engine.md) - [Auto close YouTube ads](https://greasyfork.org/en/scripts/9165-auto-close-youtube-ads) -- [Tree Style Tab](https://addons.mozilla.org/en-GB/Firefox/addon/tree-style-tab) - shows tabs like a tree. This is especially useful if many tabs are used. -- [uBlock Origin](https://addons.mozilla.org/en-GB/Firefox/addon/ublock-origin) +- [uBlock Origin](https://addons.mozilla.org/en-GB/firefox/addon/ublock-origin) blocks unwanted content like ads. -- [User-Agent Switcher and Manager](https://addons.mozilla.org/en-GB/Firefox/addon/user-agent-string-switcher) +- [User-Agent Switcher and Manager](https://addons.mozilla.org/en-GB/firefox/addon/user-agent-string-switcher) spoofs websites that try to gather information about your webbrowser. + +#### Style Add-ons + +The following add-ons provide changes to the default style. + +- [Dark Reader](https://addons.mozilla.org/en-GB/Firefox/addon/darkreader) creates + an automatic dark mode for sites without native dark mode. +- [hide-scrollbars](https://addons.mozilla.org/en-GB/Firefox/addon/hide-scrollbars) + hides scrollbars. + +#### Tool Add-ons + +The following add-ons add various functions. + +- [Floccus](https://addons.mozilla.org/en-US/Firefox/addon/floccus/) syncs your + bookmarks across devices (supports Nextcloud and WebDAV (ownCloud, etc)). +- [Sidebery](https://addons.mozilla.org/en-GB/Firefox/addon/sidebery) + is a sidebar with treestyle tabs and bookmarks. +- [Surfingkeys](https://github.com/brookhong/Surfingkeys) introduces keyboard-based navigation. + It is similar to Vim Vixen, further down this list. +- [Tree Style Tab](https://addons.mozilla.org/en-GB/Firefox/addon/tree-style-tab) + shows tabs like a tree. This is especially useful if many tabs are used. - [Vim Vixen](https://addons.mozilla.org/en-GB/Firefox/addon/vim-vixen) enables vim movement for Firefox. + It is similar to Surfingkeys further up this list. + +#### Translation Add-ons -## Add a new search engine +The following add-ons provide translation options. + +- [Firefox Translations](https://addons.mozilla.org/en-US/firefox/addon/firefox-translations) + is a add-on made by Mozilla itself that gives an option for marked text to display its + translations quickly from the extension menu but can also translate whole sites. +- [Simple Translate](https://addons.mozilla.org/en-US/firefox/addon/simple-translate) is a add-on + supporting both DeepL and Google Translate to translate marked text in various different ways that + can be automatically displayed. +- [To DeepL translation](https://addons.mozilla.org/en-US/firefox/addon/to-deepl/) gives an option + for marked text to display its translation in a pop-up window using DeepL. + +### Add a new search engine You can add a new search engine with the add-on `Add custom search engine`. Make sure to replace `` with the according url. @@ -96,3 +104,192 @@ Make sure to replace `` with the according url. It is possible to add it without an add-on. Navigate to the search engine and click the `...` in the address bar. Then click `Add Search Engine` + +### Telemetry + +Telemetry is the remote measurement and transmission of data. +To change the telemetry of Firefox navigate to `about:telemetry` and click the +options to toggle between enabled and disabled. + +### Scrolling + +On Linux distributions auto scroll is disabled by default. +This means that you cant click the middle mouse button to use it for scrolling. +To enable it go into the preferences and check `Use autoscrolling`. + +### Sponsorings + +Sponsorings are embedded ads in Firefox. +After navigating to `about:config` enabling and disabling of sponsorings can be done at +`browser.newtabpage.activity-stream.showSponsored`. + +### Make Fullscreen Only Window Wide + +Firefox' default fullscreen does not only hide UI elements of firefox but also increases Firefox' +size beyond the borders of the current window to the whole size of the screen. +By setting the following options in `about:config` the fullscreen and also the kiosk mode will only +hide the UI of Firefox. +The expansion of the window will be disabled by it. +This is often reffered to as fake fullscreen. + +```txt +full-screen-api.ignore-widgets = true +``` + +### Disable Unneeded Services and Features + +The following section is based on the website +[privacy-handbuch.de](https://www.privacy-handbuch.de/handbuch_21n.htm) which discusses ways to +disable often unneeded features in Firefox. +The way to disable these services is by setting values in `about:config`. + +To disable the Pocket expansion set the following config. + +```txt +extensions.pocket.enabled = false +``` + +To disable the screenshot expansion set the following config. + +```txt +extensions.screenshots.disabled = true +``` + +To disable Firefox Sync set the following config. + +```txt +identity.fxaccounts.enabled = false +``` + +To disable form fillings set the following configs. + +```txt +browser.formfill.enable = false +extensions.formautofill.addresses.enabled = false +extensions.formautofill.creditCards.enabled = false +extensions.formautofill.heuristics.enabled = false +``` + +To disable fingerprinting the GPU set the following configs. + +```txt +webgl.enable-debug-renderer-info = false +webgl.disable-extensions = true +webgl.min_capability_mode = true +webgl.disable-fail-if-major-performance-caveat = true +``` + +To avoid operating system attacks via WebGL set the following configs. + +```txt +webgl.disabled = true +webgl.enable-webgl2 = false +``` + +To disable speculative loading of websites when hovering over links set the following config. + +```txt +network.http.speculative-parallel-limit = 0 +``` + +To disable remote deactivation of plugins by firefox aswell as connection of the AMO-servers on a +daily basis set the following configs. + +```txt +extensions.blocklist.enabled = false +extensions.getAddons.cache.enabled = false +``` + +To disable various health reports and telemetry data set the following configs. + +```txt +browser.tabs.crashReporting.sendReport = false +datareporting.policy.dataSubmissionEnabled = false +datareporting.healthreport.uploadEnabled = false +toolkit.coverage.endpoint.base = "" +toolkit.coverage.opt-out = true +toolkit.telemetry.coverage.opt-out = true +``` + +To disable the localization done by pinging Mozillas location server set the following configs. + +```txt +browser.region.update.enabled = false +browser.region.network.url = "" +``` + +To disable safebrowsing which grabs block lists by Mozilla every 30 minutes run the set the +following configs. + +```txt +browser.safebrowsing.phishing.enabled = false +browser.safebrowsing.malware.enabled = false +browser.safebrowsing.blockedURIs.enabled = false +browser.safebrowsing.downloads.enabled = false +browser.safebrowsing.downloads.remote.enabled = false +browser.safebrowsing.downloads.remote.block_dangerous = false +browser.safebrowsing.downloads.remote.block_dangerous_host = false +browser.safebrowsing.downloads.remote.block_potentially_unwanted = false +browser.safebrowsing.downloads.remote.block_uncommon = false +browser.safebrowsing.downloads.remote.url = "" +browser.safebrowsing.provider.*.gethashURL = "" +browser.safebrowsing.provider.*.updateURL = "" +browser.pagethumbnails.capturing_disabled = true +``` + +To disable ads after an update set the following config. + +```txt +browser.startup.homepage_override.mstone = ignore +``` + +To disable the ad system for Firefox add-ons set the following configs. + +```txt +browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons = false +browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features = false +extensions.htmlaboutaddons.recommendations.enabled = false +extensions.ui.lastCategory = addons://list/extension +``` + +To disable [VPN](/wiki/vpn.md) ads set the following config. + +```txt + browser.vpn_promo.enabled = false +``` + +To disable the rating samples set the following config. + +```txt +app.normandy.enabled = false +``` + +To always keep add-ons active even on Firefox and Mozilla sites set the following config. + +```txt +extensions.webextensions.restrictedDomains = "" +``` + +To avoid the fingerprinting of desktop settings deactive the standard values for system colors by +setting the following config. + +```txt +ui.use_standins_for_native_colors = true +``` + +Firefox contacts Firefox' servers on each start to check IP connections. +To disable this set the following config. + +```txt +network.connectivity-service.enabled = false +``` + +To disable Microsoft Family Safety on [Windows systems](/wiki/windows.md) which can be used as a +censoring tool set the following config. + +```txt +security.family_safety.mode = 0 +``` + +Additionally check [the telemetry section](#telemetry) and +[the sponsoring section](#sponsorings). diff --git a/wiki/font.md b/wiki/font.md index e6f4de7..12e61a3 100644 --- a/wiki/font.md +++ b/wiki/font.md @@ -1,7 +1,7 @@ # Font A fonts is the particular size, weight and style of a typeface. -Operating systems based on [Linux](/wiki/linux/linux.md) handle fonts by the +Operating systems based on [Linux](/wiki/linux.md) handle fonts by the [fontconfig package](/wiki/linux/font_configuration.md). ## Typefaces diff --git a/wiki/freshrss.md b/wiki/freshrss.md new file mode 100644 index 0000000..df6793a --- /dev/null +++ b/wiki/freshrss.md @@ -0,0 +1,8 @@ +# FreshRss + +[FreshRSS](https://freshrss.org/) is a self hosted [RSS-Feed](/wiki/rss.md) aggregator. + +## Setup + +The software can be setup via [Docker](/wiki/docker.md) with the +[linuxserver image](/wiki/docker/linuxserver_-_freshrss.md). diff --git a/wiki/games.md b/wiki/games.md new file mode 100644 index 0000000..6e459a3 --- /dev/null +++ b/wiki/games.md @@ -0,0 +1,56 @@ +# Games + +A video game - short game - is an electronic game that features interation and input from the user +to generate a feedback. +Games can be played on different platforms. + +## Game Platforms, Distributors and Managers + +There are various platforms for managing games. +[Steam](/wiki/games/steam.md) is a gaming a platform for games that distributes games at the same +time. +Games bought in the Steam shop but also third party games can be added to the game list. +It is very popular and cross platform capable. + +For [Linux-based systems](/wiki/linux.md) the most used platform is a game manager called +[Lutris](/wiki/games/lutris.md). +Lutris can incorporate local games, aswell as games from various big platforms including steam. +It is especially popular on Linux because it can manage [WINE](/wiki/linux/wine.md) prefixes and +thus is able to easily run [Windows](/wiki/windows.md) games on Linux. + +Furthermore [Gameyfin](/wiki/games/gameyfin.md) is a game manager that can be easily accessed +through a web interface. +Games can then be downloaded from the website. + +## Syncing Game Saves Across Systems + +By using [Syncthing](../syncthing.md) game saves can be synchronized. +First set up Syncthing as described in the +[Syncthing entry](../syncthing.md#setup). +If a system with only user access - like the [Steam Deck](./steam_deck.md) - is used the +[user space configuration](../syncthing.md#user-space-configuration-for-linux) +is recommended. +Afterwards move the game saves to the directory set up by Syncthing and create +[symbolic links](/wiki/linux/shell.md#symbolic-links-using-ln) to link them back to the original +place. + +For games on [Steam](/wiki/games/steam.md) it is possible that they are automatically synchronized +by [Steam Cloud](/wiki/games/steam.md#steam-cloud-and-game-synchronization). + +## Speedrunning + +Speedrunning is the process of trying to finish a video game in shortest amount of time. +A very popular site to compare speedruns is [speedrun.com](https://www.speedrun.com/). +While speedrunning a split tracker is used that keeps track of the time and the times of each +section of the game. +The following is a list of possible split trackers to use. + +- [LiveSplit](http://livesplit.org/) is a popular split tracker available for + [Windows](/wiki/windows.md) systems. +- [LiveSplit One](https://one.livesplit.org/) is a web-based version of LiveSplit. +- [urn](https://github.com/3snowp7im/urn) is a split tracker for [Linux](/wiki/linux.md) based + systems. + +To set up a split tracker for a specific game usually split files are used. +The format needed varies from split tracker to split tracker. +Split files in most formats and for many games can be found on [splits.io](https://splits.io/). diff --git a/wiki/games/bottles.md b/wiki/games/bottles.md index 56d80d4..dfb879d 100644 --- a/wiki/games/bottles.md +++ b/wiki/games/bottles.md @@ -2,12 +2,12 @@ [Bottles](https://usebottles.com/) is an application similar to [Lutris](/wiki/games/lutris.md) that focusses on running both -[Windows](/wiki/windows/windows.md) applications aswell as games through +[Windows](/wiki/windows.md) applications aswell as [games](/wiki/games.md) through [WINE](/wiki/linux/wine.md) or their own runner [Caffe](#caffe). ## Caffe [Caffe](https://docs.usebottles.com/components/runners) is the official runner -of [Windows](/wiki/windows/windows.md) programs in Bottles. +of [Windows](/wiki/windows.md) programs in Bottles. It is a patched version of [WINE](/wiki/linux/wine.md) that can have positive effects on certain programs. diff --git a/wiki/games/counter-strike_2.md b/wiki/games/counter-strike_2.md new file mode 100644 index 0000000..c0f767c --- /dev/null +++ b/wiki/games/counter-strike_2.md @@ -0,0 +1,19 @@ +# Counter-Strike 2 + +[Counter-Strike 2](https://www.counter-strike.net/cs2) is a tactical first-person shooter +[game](/wiki/games.md) developed by [Valve](https://www.valvesoftware.com/en/). +It is distributed via [Steam](./steam.md). + +## Troubleshooting + +This section addresses various errors that can happen when playing Counter-Strike 2. + +### Problems launching on [Steam](/wiki/games/steam.md) + +On [Linux](/wiki/linux.md) systems launching can run into problems. +To fix those the following line should be set as launch options in the general tab of steams game +related settings: + +```sh +gamemoderun %command% -vulkan -sdlaudiodriver pipewire -novid -high -fullscreen -nojoy +``` diff --git a/wiki/games/emulators.md b/wiki/games/emulators.md index 03b4065..7bbb835 100644 --- a/wiki/games/emulators.md +++ b/wiki/games/emulators.md @@ -2,10 +2,12 @@ An Emulator is a hard- or software that enables a computer to behave like another computer. -In the gaming context this is mainly used to run games from a console on +In the [gaming](/wiki/games.md) context this is mainly used to run games from a console on another computer. Emulators usually need ROMs to run games. ROMs are a digital copy of a video game. +Please note that downloading ROMs of licensed games is not permitted due to copyright. +All [emulators](#list-of-emulator-software) should only use non copyright infringing ROMs. Due to its form factor emulators can be installed and used nicely on a [Steam Deck](/wiki/games/steam_deck.md). @@ -14,6 +16,14 @@ Emulator games can even be ## List of Emulator software -- [PPSSPP](/wiki/games/ppsspp.md) is made to emulate Playstation Portable games. -- [Dolphin](/wiki/games/dolphin.md) is made to emulate GameCube and Wii games. -- [Citra](/wiki/games/citra.md) is made to emulate 3DS games. +- [Citra](/wiki/games/emulators/citra.md) emulates Nintendo 3DS games. +- [Dolphin](/wiki/games/emulators/dolphin.md) emulates Nintendo GameCube and Wii games. +- [melonDS](/wiki/games/emulators/melonds.md) emulates Nintendo DS games. +- [mGBA](/wiki/games/emulators/mgba.md) emulates Nintendo Game Boy, Game Boy Color and Game Boy Advanced + games. +- [Nestopia](/wiki/games/emulators/nestopia.md) emulates Nintendo Entertainment System games. +- [PCSX2](/wiki/games/emulators/pcsx2.md) emulates PlayStation 2 games. +- [PPSSPP](/wiki/games/emulators/ppsspp.md) emulates PlayStation Portable games. +- [simple64](/wiki/games/emulators/simple64.md) emulates Nintendo 64 games. +- [Snes9x](/wiki/games/emulators/snes9x.md) emulates Super Nintendo Entertainment System games. +- [yuzu](/wiki/games/emulators/yuzu.md) emulates Nintendo Switch games. diff --git a/wiki/games/citra.md b/wiki/games/emulators/citra.md similarity index 50% rename from wiki/games/citra.md rename to wiki/games/emulators/citra.md index 0013bd0..bc6feff 100644 --- a/wiki/games/citra.md +++ b/wiki/games/emulators/citra.md @@ -1,10 +1,11 @@ # Citra -[Citra](https://citra-emu.org/) is a 3DS [emulator](./emulators.md). +[Citra](https://citra-emu.org/) is a [Nintendo 3DS](/wiki/games.md) +[emulator](/wiki/games/emulators.md). ## Setup Citra can be installed on different systems, a list for this can be found on the [Citra website](https://citra-emu.org/download). -Additionally it can be installed using [Flatpak](../linux/flatpak.md) where the +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the package is called `org.citra_emu.citra`. diff --git a/wiki/games/dolphin.md b/wiki/games/emulators/dolphin.md similarity index 77% rename from wiki/games/dolphin.md rename to wiki/games/emulators/dolphin.md index 59afbd2..0ad80cd 100644 --- a/wiki/games/dolphin.md +++ b/wiki/games/emulators/dolphin.md @@ -1,13 +1,13 @@ # Dolphin -[Dolphin](https://dolphin-emu.org/) is a GameCube and Wii -[emulator](./emulators.md). +[Dolphin](https://dolphin-emu.org/) is a [Nintendo GameCube and Wii](/wiki/games.md) +[emulator](/wiki/games/emulators.md). ## Setup Dolphin can be installed on different systems, a list for this can be found on the [Dolphin website](https://dolphin-emu.org/download/). -Additionally it can be installed using [Flatpak](../linux/flatpak.md) where the +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the package is called `org.DolphinEmu.dolphin-emu`. ## Usage @@ -15,16 +15,14 @@ package is called `org.DolphinEmu.dolphin-emu`. The following sections describe specific issues relating to the configuration and usage of Dolphin. -### Steam Deck specific settings +### Steam Deck Specific Settings The following settings are especially useful when emulating games on the -[Steam Deck](./steam_deck.md) as pointed out by +[Steam Deck](/wiki/games/steam_deck.md) as pointed out by [nchristopher](https://github.com/nchristopher/steamdeck-emulation/blob/main/emulators/dolphin.md). -But it is a good starting point for other systems aswell. -It is important to emphasize that the system needs to meet the requirements to -run Vulkan. + Select the configuration and select the paths tab. -There the directories for Wii and GameCube [ROMs](./emulators.md) can be added. +There the directories for Wii and GameCube [ROMs](/wiki/games/emulators.md) can be added. In the audio tab select `Pulse` as your audio backend. In the interface tab select `Confirm to Stop` to avoid prompts when closing the game. diff --git a/wiki/games/emulators/melonds.md b/wiki/games/emulators/melonds.md new file mode 100644 index 0000000..017a9f2 --- /dev/null +++ b/wiki/games/emulators/melonds.md @@ -0,0 +1,24 @@ +# melonDS + +[melonDS](https://melonds.kuribo64.net/) is a [Nintendo DS](/wiki/games.md) +[emulator](/wiki/games/emulators.md). + +## Setup + +melonDS can be installed on different systems, a list for this can be found on +the [melonDS website](https://melonds.kuribo64.net/downloads.php). +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the +package is called `net.kuribo64.melonDS`. + +## Usage + +The following sections describe specific issues relating to the configuration +and usage of Dolphin. + +### Start Emulated Game in Fullscreen Mode + +In different scenarios it can be useful to start directly into a game in fullscreen mode. +One example would be using the [Steam Deck](/wiki/games/steam_deck.md) to +[set up a game in the Steam UI](/wiki/games/steam_deck.md#running-a-game-directly-through-the-interface) +so it can be run directly without switching to the desktop mode. +For this add the `-f` flag for fullscreen mode. diff --git a/wiki/games/emulators/mgba.md b/wiki/games/emulators/mgba.md new file mode 100644 index 0000000..43c9a10 --- /dev/null +++ b/wiki/games/emulators/mgba.md @@ -0,0 +1,25 @@ +# mGBA + +[mGBA](https://mgba.io/) is a +[Nintendo Game Boy, Game Boy Color and Game Boy Advanced](/wiki/games.md) +[emulator](/wiki/games/emulators.md). + +## Setup + +mGBA can be installed on different systems, a list for this can be found on +the [mGBA website](https://mgba.io/downloads.html). +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the +package is called `io.mgba.mgba`. + +## Usage + +The following sections describe specific issues relating to the configuration +and usage of Dolphin. + +### Start Emulated Game in Fullscreen Mode + +In different scenarios it can be useful to start directly into a game in fullscreen mode. +One example would be using the [Steam Deck](/wiki/games/steam_deck.md) to +[set up a game in the Steam UI](/wiki/games/steam_deck.md#running-a-game-directly-through-the-interface) +so it can be run directly without switching to the desktop mode. +For this add the `-f` flag for fullscreen mode. diff --git a/wiki/games/emulators/nestopia.md b/wiki/games/emulators/nestopia.md new file mode 100644 index 0000000..4b63173 --- /dev/null +++ b/wiki/games/emulators/nestopia.md @@ -0,0 +1,11 @@ +# Nestopia + +[Nestopia](http://0ldsk00l.ca/nestopia/) is a [Nintendo Entertainment System](/wiki/games.md) +[emulator](/wiki/games/emulators.md). + +## Setup + +Nestopia can be installed on different systems, a list for this can be found on +the [Nestopia website](http://0ldsk00l.ca/nestopia/). +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the +package is called `ca._0ldsk00l.Nestopia`. diff --git a/wiki/games/emulators/pcsx2.md b/wiki/games/emulators/pcsx2.md new file mode 100644 index 0000000..7251863 --- /dev/null +++ b/wiki/games/emulators/pcsx2.md @@ -0,0 +1,11 @@ +# PCSX2 + +[PCSX2](https://pcsx2.net/) is a [PlayStation 2](/wiki/games.md) +[emulator](/wiki/games/emulators.md). + +## Setup + +PCSX2 can be installed on different systems, a list for this can be found on +the [PCSX2 website](https://pcsx2.net/downloads). +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the +package is called `net.pcsx2.PCSX2`. diff --git a/wiki/games/ppsspp.md b/wiki/games/emulators/ppsspp.md similarity index 75% rename from wiki/games/ppsspp.md rename to wiki/games/emulators/ppsspp.md index d90151b..96cd425 100644 --- a/wiki/games/ppsspp.md +++ b/wiki/games/emulators/ppsspp.md @@ -1,13 +1,13 @@ # PPSSPP -[PPSSPP](https://ppsspp.org/) is a Playstation Portable (PSP) -[emulator](./emulators.md). +[PPSSPP](https://ppsspp.org/) is a [PlayStation Portable](/wiki/games.md) +[emulator](/wiki/games/emulators.md). ## Setup PPSSPP can be installed on different systems, a list for this can be found on the [PPSSPP website](https://ppsspp.org/downloads.html). -Additionally it can be installed using [Flatpak](../linux/flatpak.md) where the +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the package is called `org.ppsspp.PPSSPP`. ## Usage @@ -18,13 +18,13 @@ and usage of PPSSPP. ### Steam Deck specific settings The following settings are especially useful when emulating PSP games on the -[Steam Deck](./steam_deck.md) as pointed out by +[Steam Deck](/wiki/games/steam_deck.md) as pointed out by [nchristopher](https://github.com/nchristopher/steamdeck-emulation/blob/main/emulators/ppsspp.md). But it is a good starting point for other systems aswell. It is important to emphasize that the system needs to meet the requirements to run Vulkan. The Device name will change if you are not using a -[Steam Deck](./steam_deck.md). +[Steam Deck](/wiki/games/steam_deck.md). - Backend: `Vulkan` - Device: `AMD RADV VANGOGH` diff --git a/wiki/games/emulators/simple64.md b/wiki/games/emulators/simple64.md new file mode 100644 index 0000000..786f124 --- /dev/null +++ b/wiki/games/emulators/simple64.md @@ -0,0 +1,11 @@ +# simple64 + +[simple64](https://simple64.github.io/) is a [Nintendo 64](/wiki/games.md) +[emulator](/wiki/games/emulators.md). + +## Setup + +simple64 can be installed on different systems, a list for this can be found on +the [simple64 website](https://simple64.github.io/). +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the +package is called `https://flathub.org/apps/io.github.simple64.simple64`. diff --git a/wiki/games/emulators/snes9x.md b/wiki/games/emulators/snes9x.md new file mode 100644 index 0000000..3dbbe61 --- /dev/null +++ b/wiki/games/emulators/snes9x.md @@ -0,0 +1,11 @@ +# Snes9x + +[Snes9x](http://www.snes9x.com/) is a [Super Nintendo Entertainment System](/wiki/games.md) +[emulator](/wiki/games/emulators.md). + +## Setup + +Snes9x can be installed on different systems, a list for this can be found on +the [Snes9x website](http://www.snes9x.com/). +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the +package is called `com.snes9x.Snes9x`. diff --git a/wiki/games/emulators/yuzu.md b/wiki/games/emulators/yuzu.md new file mode 100644 index 0000000..83c8f5a --- /dev/null +++ b/wiki/games/emulators/yuzu.md @@ -0,0 +1,45 @@ +# yuzu + +[yuzu](https://yuzu-emu.org/) is a [Nintendo Switch](/wiki/games.md) +[emulator](/wiki/games/emulators.md). + +## Setup + +yuzu can be installed on different systems, a list for this can be found on +the [yuzu website](https://yuzu-emu.org/downloads/#windows). +Additionally it can be installed using [Flatpak](/wiki/linux/flatpak.md) where the +package is called `org.yuzu_emu.yuzu`. + +After installation keys need to be added. +A guide on this can be found on the +[yuzu website](https://yuzu-emu.org/help/quickstart/#setting-up-the-decryption-keys-and-firmware). + +## Usage + +The following sections describe specific issues relating to the configuration +and usage of Dolphin. + +### Start Emulated Game in Fullscreen Mode + +In different scenarios it can be useful to start directly into a game in fullscreen mode. +One example would be using the [Steam Deck](/wiki/games/steam_deck.md) to +[set up a game in the Steam UI](/wiki/games/steam_deck.md#running-a-game-directly-through-the-interface) +so it can be run directly without switching to the desktop mode. +For this add the `-f` flag for fullscreen mode aswell as the `-g` flag in front of the path to the +game that should to be started. + +### Steam Deck Specific Settings + +The following settings are especially useful when emulating games on the +[Steam Deck](/wiki/games/steam_deck.md) as pointed out by +[sofakng](https://www.reddit.com/r/SteamDeck/comments/12ivsky/what_are_the_best_yuzu_settings/). + +For a better performance select `Vulkan` under the `Graphics` in `Graphics`. +If crashes happen switch the option back to `OpenGL` +Under the `Advanced` tab set the following. + +- Enable `Use asynchronous shader building (Hack)` +- Set `GPU Accuracy` to `Normal` +- Enable `Use Fast GPU Time (Hack)` + +Under `System` set the memory option to `Extended memory layout (8GB DRAM)`. diff --git a/wiki/games/gameyfin.md b/wiki/games/gameyfin.md new file mode 100644 index 0000000..ed259de --- /dev/null +++ b/wiki/games/gameyfin.md @@ -0,0 +1,9 @@ +# Gameyfin + +[Gameyfin](https://github.com/grimsi/gameyfin) is a simple [game](/wiki/games.md) library manager +with a web interface to browse and download games. + +## Setup + +The software can be setup via docker with the +[girimsi image](/wiki/docker/grimsi_-_gameyfin.md). diff --git a/wiki/games/guild_wars_2.md b/wiki/games/guild_wars_2.md index 0db3904..2ee2723 100644 --- a/wiki/games/guild_wars_2.md +++ b/wiki/games/guild_wars_2.md @@ -1,8 +1,40 @@ # Guild Wars 2 -[Guild Wars 2](https://www.guildwars2.com) is a MMORPG which is available as +[Guild Wars 2](https://www.guildwars2.com) is a MMORPG [game](/wiki/games.md) which is available as a standalone Launcher for Windows and on [Steam](./steam.md). +## Resources + +There are many useful resources. +This section provides a select few of them. +They are grouped for a better overview. + +The first group of resources can be used to make money on the trading post. + +- [Craft To Gold](https://www.gw2craftgold.com/) analyzes crafting items to sell on the trading + post. +- [GW2BLTC](https://www.gw2bltc.com) is for playing the trading post. +- [GW2TP](https://www.gw2tp.com/) analyzes the trading post. + +The second group provides guides and builds. + +- [Hardstuck](https://hardstuck.gg/gw2/builds/) provides guides but is most useful for its builds. + Especially the PvP builds are good and well maintained. +- [MetaBattle](https://metabattle.com/wiki/MetaBattle_Wiki) provides guides and builds. + Another interesting page of it is the best + [spending of WvW points](https://metabattle.com/wiki/Guide:How_to_spend_WvW_Ability_Points). +- [Snowcrows](https://snowcrows.com/builds) is a guild that provides guides and builds that are + especially well suited for instanced PvE content. + +Finally the this groupd provides various guides and gives information on in-game mechanics. + +- [\[fast\] Farming Community](https://fast.farming-community.eu/) is a guild that provides many + useful trackers for items, dailies and more. +- [Guildwars 2 Wiki](https://wiki.guildwars2.com/wiki/Main_Page) is the official wiki. +- [GW2Crafts](https://gw2crafts.net/) provides guides to level crafting. +- [killproof.me](https://killproof.me/) provides killproof for raids or strikes. + It is also available as [add-on](#killproofme). + ## Add-ons Guild Wars 2 features a large add-on community. @@ -11,6 +43,8 @@ All add-ons described in this guide will assume It has to be set up first if not already done. Additionally this guide assumes the usage of DX11 rendering which is enabled by default. +Many of the following add-ons are on the +[Approved-Addons list by gw2-addon-loader](https://github.com/gw2-addon-loader/Approved-Addons). The following subsections assume that Guild Wars 2 is installed at `gw2_root_directory`. @@ -30,22 +64,20 @@ Proceed to place the files and folders from the `.zip` archive into the root directory of guild wars 2. This add-on loader is capable of loading both DX9 and DX11 add-ons. -This functionality can be added with [d3d9\_wrapper](#d3d9wrapper). +This functionality can be added with [d3d9_wrapper](#d3d9wrapper). The installation of it is therefore recommended. This add-on does not need to be updated often. It only is required when Guild Wars 2 switches its API. -### d3d9\_wrapper +### d3d9_wrapper -[d3d9\_wrapper](https://github.com/gw2-addon-loader/d3d9_wrapper) is a wrapper +[d3d9_wrapper](https://github.com/gw2-addon-loader/d3d9_wrapper) is a wrapper to the d3d9 API that includes d3d9 loading. - Download the current version from the [releases page](https://github.com/gw2-addon-loader/d3d9_wrapper/releases). -From there place the included Directory -`d3d9_wrapper/gw2addon_d3d9_wrapper.dll` in Guild Wars 2 -`gw2_root_directory/addon` directory. +and move the downloaded `.dll` file to +`gw2_root_directory/addon/d3d9_wrapper/gw2addon_d3d9_wrapper.dll`. This add-on does not need to be updated often. It only is required when Guild Wars 2 switches its API. @@ -53,49 +85,125 @@ It only is required when Guild Wars 2 switches its API. ### arcdps [arcdps](https://www.deltaconnected.com/arcdps/) is a damage meter. -Its menu is accessible in-game via the hotkeys `Alt-Shift-T`. - Download the file `d3d11.dll` from [their website](https://www.deltaconnected.com/arcdps/x64/). -Then rename it to `gw2addon_arcdps.dll` and move it to a newly created -directory inside the Guild Wars 2 add-on directory +and move the downloaded `.dll` file to `gw2_root_directory/addons/arcdps/gw2addon_arcdps.dll`. +This extension can be opened with the hotkey `Alt-Shift-T`. + +arcdps' font can be easily changed. +For this a `.ttf` file is needed. +By moving and renaming the file to `gw2_root_directory/addons/arcdps/arcdps_font.ttf` the new font +will be enabled following the next start of Guild Wars 2. +A font similar to the default Guild Wars 2 font is Lato. +Lato can be downloaded from the [Google fonts website](https://fonts.google.com/specimen/Lato). This add-on and its sub-add-ons needs to be updated regularly to work correctly. #### boon-tables -There is an extension to the arcdps add-on regarding the boon stats which are -not easily readable otherwise. -For this download the current version of the +The [boob-tables extension](https://github.com/knoxfighter/GW2-ArcDPS-Boon-Table/) displays the boon +stats which are not easily readable otherwise. +Download the current version of the [gw2-arcdps-boon-table](https://github.com/knoxfighter/GW2-ArcDPS-Boon-Table/releases) -and move the downloaded `.dll` file without changing its name to +and move the downloaded `.dll` file to `gw2_root_directory/addons/arcdps/d3d9_arcdps_table.dll`. -This extension can be opened via the main menu of the original arcdps settings -with the `Boon Table` checkmark or with the hotkey `Alt-Shift-B`. +This extension can be opened with the hotkey `Alt-Shift-B`. + +#### clears + +The [clears extension](https://github.com/gw2scratch/arcdps-clears) displays the raids that have +been cleared by the squad members. +Download the current version of the +[arcdps-clears](https://github.com/gw2scratch/arcdps-clears/releases) +and move the downloaded `.dll` file to +`gw2_root_directory/addons/arcdps/arcdps_clears.dll`. +This extension can be opened with the hotkey `Alt-Shift-C`. + +#### commanders_toolkit + +The [commanders_toolkit extension](https://github.com/RaidcoreGG/GW2-CommandersToolkit) provides a +menu to note the roles and responsibilities of squad members. +Download the current version of the +[GW2-CommandersToolkit](https://github.com/RaidcoreGG/GW2-CommandersToolkit/releases) +and move the downloaded `.dll` file to +`gw2_root_directory/addons/arcdps/arcdps_commanderstoolkit.dll`. +This extension can be opened with the hotkey `Alt-Shift-Q`. + +#### food-reminder + +The [food-reminder extension](https://github.com/Zerthox/arcdps-food-reminder) displays the foods +that were consumed by squad members. +Download the current version of the +[arcdps-food-reminder](https://github.com/Zerthox/arcdps-food-reminder/releases) +and move the downloaded `.dll` file to +`gw2_root_directory/addons/arcdps/arcdps_food_reminder.dll`. +This extension can be opened with the hotkey `Alt-Shift-F`. + +#### killproof.me + +The [killproof.me extension](https://github.com/knoxfighter/arcdps-killproof.me-plugin) +provides an overview of the raid stats of squad members via the website +[killproof.me](https://killproof.me/). +For it to function in different instances [the unofficial_extras extension](#unofficialextras) is +needed. +Download the current version of +[arcdps-killproof.me-plugin](https://github.com/knoxfighter/arcdps-killproof.me-plugin/releases) +and move the downloaded `.dll` file to +`gw2_root_directory/addons/arcdps/d3d9_arcdps_killproof_me.dll`. +This extension can be opened via the extensions menu of the original arcdps +settings. + +#### know thy enemy + +The [know thy enemy extension](https://github.com/typedeck0/Know-thy-enemy) +provides an overview of the enemies of the last fight in WvW. +Download the current version of +[know-thy-enemy](https://github.com/typedeck0/Know-thy-enemy/releases) +and move the downloaded `.dll` file to +`gw2_root_directory/addons/arcdps/know_thy_enemy.dll`. +This extension can be opened via the extensions menu of the original arcdps +settings. #### mechanics -Another extension to the arcdps addon is a log of mechanics for various -strikes, fractals and raids. -For this download the current version of +The [mechanics extension](https://github.com/knoxfighter/GW2-ArcDPS-Mechanics-Log/) is a log of +mechanics for various strikes, fractals and raids. +Download the current version of [gw2-arcdps-mechanics-log](https://github.com/knoxfighter/GW2-ArcDPS-Mechanics-Log/releases) -and move the downloaded `.dll` file without changing its name to +and move the downloaded `.dll` file to `gw2_root_directory/addons/arcdps/d3d9_arcdps_mechanics.dll`. This extension can be opened via the extensions menu of the original arcdps settings. +#### unofficial_extras + +The [unofficial_extras extension](https://github.com/Krappa322/arcdps_unofficial_extras_releases) +provides additional infos to other arcdps extensions and is not useful by itself. +Download the current version of +[arcdps_unofficial_extras_releases](https://github.com/Krappa322/arcdps_unofficial_extras_releases/releases) +and move the downloaded `.dll` file to +`gw2_root_directory/addons/arcdps/arcdps_unofficial_extras.dll`. + +#### uploader + +The [uploader extension](https://github.com/nbarrios/arcdps-uploader) provides an easy way to upload +EVTC combat logs from inside the game. +Download the current version of the +[arcdps-uploader](https://github.com/nbarrios/arcdps-uploader/releases) +and move the downloaded `.dll` file to +`gw2_root_directory/addons/arcdps/d3d9_uploader.dll`. +This extension can be opened with the hotkey `Alt-Shift-U`. + ### gw2radial [gw2radial](https://github.com/Friendly0Fire/GW2Radial) is a add-on for Guild Wars 2 that allows faster access to markers, mounts and novelties. -It is accessible in-game via the hotkeys `Alt-Shift-M`. - Download the current version from the [releases page](https://github.com/gw2-addon-loader/GW2Radial/releases). -Then place the folder `gw2radial_d3d9` which contains the file -`gw2addon_gw2radial_d3d9.dll` in the add-on directory of Guild Wars 2 -`gw2_root_directory/addons`. +and move the downloaded `.dll` file to +`gw2_root_directory/addons/gw2radial/gw2addon_gw2radial.dll`. +This extension can be opened with the hotkey `Alt-Shift-M`. This add-on does not need to be updated often. Updates are only required to get new functions working for example when new diff --git a/wiki/games/league_of_legends.md b/wiki/games/league_of_legends.md index 97d59f5..292c489 100644 --- a/wiki/games/league_of_legends.md +++ b/wiki/games/league_of_legends.md @@ -1,27 +1,27 @@ # League of Legends [League of Legends](https://www.leagueoflegends.com/en-us) is a multiplayer -online battle arena game which is available as a standalone Launcher for -[Windows](/wiki/windows/windows.md). +online battle arena [game](/wiki/games.md) which is available as a standalone Launcher for +[Windows](/wiki/windows.md). It is developed and published by [Riot Games](https://www.riotgames.com/en). ## Setup League of Legends is available to download for -[Windows](/wiki/windows/windows.md) systems on +[Windows](/wiki/windows.md) systems on [the official website](https://signup.leagueoflegends.com/en-us/signup/index#/). -For [Linux](/wiki/linux/linux.md) distributions [Lutris](/wiki/games/lutris.md) +For [Linux](/wiki/linux.md) distributions [Lutris](/wiki/games/lutris.md) and [WINE](/wiki/linux/wine.md) can be used to run the game. The correct version can be downloaded using the [Lutris website](https://lutris.net/games/league-of-legends/). It is recommended that a custom version of [WINE GE](/wiki/linux/wine.md) is used named `Lutris-GE` which can be found on -[the Github page of WINE-GE-custom](https://github.com/GloriousEggroll/wine-ge-custom/releases?q=lol&expanded=true). +[the GitHub page of WINE-GE-custom](https://github.com/GloriousEggroll/wine-ge-custom/releases?q=lol&expanded=true). It is important to set up the game correctly for anti-cheat to work properly. By checking the right box at the launch of the games the anti-cheat can be enabled to persist through reboots on most Linux distributions. -For [Arch Linux](/wiki/linux/arch-linux/arch-linux.md) this has to be done +For [Arch Linux](/wiki/linux/arch-linux.md) this has to be done manually as explained by [QuinnBorn on Reddit](https://www.reddit.com/r/leagueoflinux/comments/eokiir/anticheat_popup_every_reboot/). For that the file `/etc/sysctl.d/vsyscall.conf` has to be created with the diff --git a/wiki/games/lutris.md b/wiki/games/lutris.md index 3b9696e..6062d2c 100644 --- a/wiki/games/lutris.md +++ b/wiki/games/lutris.md @@ -1,11 +1,11 @@ # Lutris -[Lutris](https://lutris.net/) is a free and open source video game platform for -[Linux](/wiki/linux/linux.md) systems. +[Lutris](https://lutris.net/) is a free and open source video [game](/wiki/games.md) platform for +[Linux](/wiki/linux.md) systems. It features compatibility with [GOG](https://www.gog.com/), [Humble Bundle](https://humblebundle.com/), [Epic Games](https://www.epicgames.com/), [Steam](/wiki/games/steam.md) and many -other [Windows](/wiki/windows/windows.md) games via its own installer that uses +other [Windows](/wiki/windows.md) games via its own installer that uses [WINE](/wiki/linux/wine.md). Lutris can also use [Proton](/wiki/games/proton.md) - a patched version of WINE developed by [Valve](https://www.valvesoftware.com/). @@ -16,15 +16,19 @@ For running both Windows applications aswell as games ## Usage +The following section describes the usage of Lutris. + ### Manually Add a Game By clicking on the `+` in the left upper corner of the Lutris application a new game can be manually added. -Mount `.iso` files first using the `mount -o loop ` -command. -Check the directory the media was mounted to afterwards to select the appropiate -Option. +Mount `.iso` files as explained in the [ISO image entry](/wiki/linux/iso_image.md#mounting). +Some installations require the swapping of discs during the installation. +An easy way around this is to mount the [ISO image](/wiki/linux/iso_image.md#mounting) and copy them +into another directory. +This way the files from two discs can be put in one folder. +Afterwards follow the installation as usual. If a setup executable is available select `Install a Windows game from media`. Then select the setup executable from the mounted path. @@ -115,20 +119,46 @@ be selected. ### Change WINE/Proton Version -[Windows](/wiki/windows/windows.md) games are handled by +[Windows](/wiki/windows.md) games are handled by [WINE](/wiki/linux/wine.md). After right-clicking a game and selecting `Configure` the `Wine version` can be changed under the `Runner options` tab. There are many different versions of WINE, WINE-fshack and various [Proton](/wiki/games/proton.md) and [Proton GE versions](/wiki/games/proton.md#ge-version) to select. -Using the default runner of [Bottles called Caffe](/wiki/games/bottles.md#caffe) -is also possible. +Using the default runner of [Bottles](/wiki/games/bottles.md) - called +[Caffe](/wiki/games/bottles.md#caffe) - is also possible. + +### Disable Networking for a Game + +For disabling networking for a command the program +[firejail](https://github.com/netblue30/firejail) can be used. +In Lutris after the installation of firejail right-click the game to disable networking on. +Select `Configure` and navigate to `System Options`. +Enable `Advanced` and insert `firejail --net=none --noprofile` into the `command prefix` field. +Afterwards all networking of the selected game is disabled. + +### Adding and Removing Runners and Sources + +Runners are ways to run [games](/wiki/games.md) on [Linux](/wiki/linux.md). +Examples for runners are [WINE](/wiki/linux/wine.md), [Steams Proton](/wiki/games/proton.md) or +[Flatpak](/wiki/linux/flatpak.md). +Sources are platforms for game distributions like [Steam](/wiki/games/steam.md) and Lutris itself. + +Both sources and runners can be added and removed as needed by entering `Preferences` through the +drop-down menu and toggling on or off sources aswell as installing or uninstalling runners. + +### Minimizing and System Tray + +Under `Interface` in the `Preferences` available by selecting the menu there are options available +to `minimize client when a game is launched`. +This can be useful to unclutter the workspace selected. +This option works best with `Show Tray Icon` checked because it will display Lutris inside the +system tray. ## Troubleshooting -This section explains ways of solving various problems that can occur when using -Lutris. +This section addresses various errors that can happen when using Lutris. ### DX12/DX13 is not Supported on Your System @@ -139,7 +169,7 @@ This can be easily fixed by inserting `-dx11` in `Arguments` under the ### Crashes for Windows Games -When it comes to crashes for [Windows](/wiki/windows/windows.md) games that get +When it comes to crashes for [Windows](/wiki/windows.md) games that get handled by [WINE](/wiki/linux/wine.md) one point of failure is the selected WINE version. Change the version used as explained in diff --git a/wiki/games/magic:_the_gathering.md b/wiki/games/magic:_the_gathering.md new file mode 100644 index 0000000..702dd23 --- /dev/null +++ b/wiki/games/magic:_the_gathering.md @@ -0,0 +1,263 @@ +# Magic: The Gathering + +[Magic: The Gathering](https://magic.wizards.com) - often shortened to MTG or Magic - is a tabletop +[collectible card game](/wiki/games/trading_card_games.md). +MTG is published by [Wizards of the Coast](https://company.wizards.com) - which are commonly +reffered to as Wizards. +In Magic: The Gathering there are many different formats that are all listed on +[the official website](https://magic.wizards.com/en/formats). +Rules can also be found on [Wizards website](https://magic.wizards.com/en/rules). + +## Playing Online + +There is a fully digital and online version of MTG called +[Magic: The Gathering Arena](https://magic.wizards.com/mtgarena) - or MTGA for short - that has +nearly the same rules as the tabletop variant. +Another alternative to playing fully digital is [Magic: The Gathering Online](https://www.mtgo.com). +This is also known as MTG Online or MTGO. + +It is also possible to remotely play with tabletop cards. +This is most easily done on [Spelltable](https://spelltable.wizards.com/) which is an official +website by Wizards. +For playing Spelltable a [webcam](/wiki/webcams.md) is needed to be set up with a bird's eye view +over the playing field. +An alternative to a normal webcam is [DroidCam](/wiki/android/droidcam.md) for +[Android](/wiki/android.md) which is supported by the website itself. + +Both Spelltable and MTGA use the same login credentials. + +## Resources + +There are many useful resources. +The this section provides a select few of them. +They are grouped by use case. + +The first group of websites and apps provide a management interface aswell as a deck building +functionality. +Many of them also feature public decks. + +- [deckbox](https://deckbox.org/) is a very clean deck builder website. +- [deckstats.net](https://deckstats.net/) gives the option to build and analyze MTG(A) decks. +- [Delver Lens](https://www.delverlab.com/) is an [Android](/wiki/android.md) application for + scanning cards and displaying its price. + Following scanning the cards can be exported to a CSV file. +- [Dragon Shield MTG Card Manager](https://mtg.dragonshield.com/) is a collection and deck manager + available both as an apple and [Android](/wiki/android.md) app and as a website. + It features a card scanner for easy population of the collection +- [MTG Desktop Companion](https://www.mtgcompanion.org/) is a collection manager for MTG that + includes prices, stats and a deck builder, aswell as the option to import and export to most of + the used MTG deck formats. + It is free and open-source. + Its source code can be looked at on their + [GitHub Page](https://github.com/nicho92/MtgDesktopCompanion). +- [Moxfield](https://www.moxfield.com/) is a popular deck building site. + It also displays public decks. +- [Archidekt](https://archidekt.com/) is another popular deck building site. + With the option to build commander decks based on a specific commander. + It additionally features the display of public decks. + +The second group is about giving resources for building decks. +This can be done by providing public decks or showing which decks or cards are popular in which +format. + +- [Tapped Out](https://tappedout.net/) is a website that among other things can suggest decks based + on owned cards. +- [MTGGOLDFISH](https://www.mtggoldfish.com/) is a website for different topics regarding MTG. + It features various decks including budget variants of it. + Additionally it lists tournaments with decks played which can be a useful resource to understand + the metagame. + +The following websites provide useful information on cards or rulings of MTG. + +- [EDHREC](https://edhrec.com/) is a website that can recommend cards based on an already existing + commander or improve existing commander decks. +- [Scryfall](https://scryfall.com/) is a website to search and display Magic cards in specific + printings. +- [What's in Standard?](https://whatsinstandard.com/) lists the sets that are currently legal in + the standard format. +- [Magic Judges](https://chat.magicjudges.org/mtgrules/) is a live chat with judges to clarify the + rules. + +This group of resources is used to organize and join MTG tabletop, MTGA and MTGO tournaments. + +- [Melee](https://melee.gg/) is a website that allows organization and joining of MTG and MTGA + tournaments. +- [Magic: The Gathering Companion](https://magic.wizards.com/de/products/companion-app) is a mobile + app that is officially made by Wizards. + It features a tool to join tabletop tournaments in licensed stores and locations. + +The following sites are focussed on analyzing decks and strategies for MTG Arena. + +- [17Lands](https://www.17lands.com/faq) is a website focused on improving the draft of players in + MTGA. +- [Untapped.gg](https://mtga.untapped.gg/) is a website and desktop app that analyzes MTGA decks and + strategies. + +This group of resources are websites on which MTG cards and supply can be bought. + +- [Card Kingdom](https://www.cardkingdom.com/) is a website to shop MTG cards and supply. + It ships from the united states of america. +- [cardmarket](https://www.cardmarket.com/) is a trading post for tabletop cards based in europe. +- [TCGPlayer](https://www.tcgplayer.com) is a trading post for tabletop cards that is used + world-wide. + +The following sites sell MTGO tix and rent cards. + +- [Cardhoarder](https://www.cardhoarder.com/) is a MTGO card renting service. +- [Mana Traders](https://www.manatraders.com/) is a renting service for MTGO cards, aswell as a way + to buy tix. + +Lastly [decklist.org](https://decklist.org/) can be used to neatly print out decklists. + +## Deck Building + +A central part of MTG is the composition of cards to a deck. +This section addresses the act of building a deck and important topics regarding deck composition. +Starting with the general topics of deck building this section will then split into multiple +subsections for building decks of different deck size. +This following general part is mainly based on a +[video by Pompeius IIb.](https://www.youtube.com/watch?v=a37dLTiV58o). + +It is generally recommended to stick with the minimum number of allowed cards in a format for a +deck. +This will assure that cards that are in the deck have a higher possibility to be drawn or in the +starting hand. + +The first step of building a deck is setting up a clear strategy. + +There are 3 main strategies. +Aggro decks are meant to build pressure and end the game fastly. +They are generally proactive and have minimal interaction with the opponent. +On the other side of the spectrum are control decks. +They counter the opponent and neutralize their strategy. +Due to this they are reactive. +These type of decks usually use a lot of card draw to get the advantage and find the correct counter +for a given opponent. +As a third theme combo decks use a combination of cards that are meant to finish the game. +They are based on finding these cards and performing the combo. +These kind of decks can use loops that can take a long time or even are infinite. + +There are also combination of these strategies. +Aggro and control decks are called tempo or midrange decks. +Control and combo decks use the combo as a finisher to the game but are generally similar to control +decks. +The combination of aggro and control are generally fast, non-interactive and are synergy based Aggro +decks. + +To find a strategy for your needs the following three questions are important to answer. + +- How to end the game? +- When to end the game? +- How many interactions with the opponent? + +The other big topic in deck building is card selection. + +For picking a card multiple things have to be considered. +The card has to be efficient mana-wise. +It should therefore always be compared to other cards that are played similarly. +For creatures without any bonus attributes it is said that 1 Power and 1 Toughness per Mana is a +good starting point. +Additionally cards should fit the strategy and shouldn't be too specific. +Modal spells (1 card with multiple options) can be useful to be prepared for different +situations without too specific cards +They shouldn't be "win-more"-card and play good on their own. +The cards selected should include some few good concepts and synergies between cards. + +Another thing to consider is the mana curve. +Mana curve describes the histogram of the mana values of the cards in a deck. +The curve should always begin at 1 and when the point is reached that wasspecified to end the game. +Using mana-acceleration a turn and its mana cost on the curve can be reduced or skipped. + +The mana base is the land cards that are in a deck. +The mana base should include the right colors in the right ratio. +This ration can be calculated by calculating the mean of all used mana colors. +Sometimes it can be useful to increase the mana color of cards that are needed very early in the +game to ensure they can be played. +In non-mono decks double lands are useful but their restrictions they come with should be noted. +Approximately 1/3 of a deck should be reserved for land cards. + +### Building a 60 Card Deck + +This section will focus on the building of a 60 card deck. +60 cards per deck is the minimum requirement for most formats like standard, modern and more. +For 100 card decks navigate to the [following section](#building-a-100-card-deck) +This section is also mainly based on a +[video by german YouTuber Pompeius IIb.](https://www.youtube.com/watch?v=a37dLTiV58o). + +All tipps that are in the [above section](#deck-building) are to be considered in this section too. + +As a rule of thumb the number of lands in a 60 card deck should be around +`18 + [cost of the most expensive card] (+- 1)`. + +It is recommended to use playsets (4 cards) of cards or use multiple cards that are similar to +reduce the possibilities of draws. + +### Building a 100 Card Deck + +This section will focus on the building of a 100 card deck. +100 cards per deck is most notably the minimum requirement for the commander format. +Therefor this section will mostly focus on commander +For 60 card decks navigate to the [previous section](#building-a-60-card-deck) + +All tipps that are in the [above section](#deck-building) are to be considered in this section too. + +For commander decks it is also important to select a commander to build the deck around. +Selecting the commander should be done in a step before choosing the strategy. + +There are four main templates to build a commander. +The first three templates are fairly similar and will be explained as one in the +[following section](#9x7-8x8-and-7x9-deck-templates). +The last in the [section thereafter](#the-command-zone-deck-template). + +#### 9x7, 8x8 and 7x9 Deck Templates + +This section is mainly based on a [EDH Wiki entry](https://edh.fandom.com/wiki/7_by_9). +These three templates are considered to be very flexible. +Each theory gives a number of categories and a number of cards in that category. +Those categories of cards are intended to use many cards with similar effects to make the deck more +robust and redundant to draw similar cards consistently. + +The categories are usually a combination of the following ones - though other categories are +possible. + +- Card Draw +- Ramp +- Board Wipes +- Spot Removal +- Protection +- Reanimation Spells +- Tutors +- Haste Enablers +- Counterspells +- Buffs +- Blink Spells +- Token Makers +- Lifegain +- Lifegain Payoffs +- Graveyard Hate +- Pet Cards +- Miscellaneous + +The three templates are the following: +The first is 7 categories by 9 cards (7x9) which will leave 36 cards for the mana base. +8 categories by 8 cards (8x8) which will leave 35 cards for the mana base. +9 categories by 7 cards (9x7) which will leave 36 cards for the mana base. + +The category number and sizes can be adjusted. +It is considered that 10 cards in a category will make 2 cards of that category appear in a game and +a good chance to draw one card of that category in the starting hand. +categories with 5 cards are considered to make 1 card of that category appear in a game. + +#### The Command Zone Deck Template + +The fourth template is a template made by [Command Zone](https://www.youtube.com/@commandcast). +This section is therefore based on the corresponding +[video by Command Zone](https://www.youtube.com/watch?v=3K9PEeLG_6M). + +It specifies the following categories and number cards in them. +The first card is the commander. +36 to 38 cards are used for the mana base. +10 cards are used for mana ramp. +10 cards are used for card draw. +5 cards each are used for targeted removal and board wipes. +The remaining 31 to 33 cards are used for the intended game strategy and deck plan. diff --git a/wiki/games/medieval_2_total_war.md b/wiki/games/medieval_2_total_war.md index fed9a9a..16d7717 100644 --- a/wiki/games/medieval_2_total_war.md +++ b/wiki/games/medieval_2_total_war.md @@ -1,6 +1,6 @@ # Medieval 2: Total War -Medieval 2: Total War is a game from the [Total War](https://www.totalwar.com) +Medieval 2: Total War is a [game](/wiki/games.md) from the [Total War](https://www.totalwar.com) series. ## Mods diff --git a/wiki/games/minecraft.md b/wiki/games/minecraft.md index 30fc5e2..4eae7fc 100644 --- a/wiki/games/minecraft.md +++ b/wiki/games/minecraft.md @@ -1,13 +1,17 @@ # Minecraft -[Minecraft](https://www.minecraft.net) is a sandbox video game created by "Notch". +[Minecraft](https://www.minecraft.net) is a sandbox [video game](/wiki/games.md) created by "Notch". -## Server +## Setup + +The following sections address the setup of both server and client software. + +### Server A server can be setup via docker with the -[itzg image](../docker-images/itzg_-_minecraft-server.md). +[itzg image](../docker/itzg_-_minecraft-server.md). -## Client +### Client There are different Minecraft Clients available: @@ -15,9 +19,9 @@ There are different Minecraft Clients available: - [MultiMC5](./multimc5.md) is a custom Minecraft launcher that allows multiple installations at once. -## DNS +### Usage -### Link Minecraft to a subdomain +#### Link Minecraft to a Subdomain To link Minecraft to one of your subdomains you need to add a [DNS](../dns.md) SRV-record: @@ -34,3 +38,13 @@ weight: 4 port: 25565 (or your minecraft port) target: mine.. ``` + +#### Adding Death Count to the Scoreboard + +Run the following commands inside the console of minecraft to add death count as a objective in the +scoreboard. + +```txt +/scoreboard objectives add Deaths deathCount +/scoreboard objectives setdisplay list Deaths +``` diff --git a/wiki/games/multimc5.md b/wiki/games/multimc5.md index d26fb0f..c5de963 100644 --- a/wiki/games/multimc5.md +++ b/wiki/games/multimc5.md @@ -1,7 +1,7 @@ # MultiMC5 -[MultiMC5](https://multimc.org) is a custom launcher that allows multiple -[Minecraft](./minecraft.md) instances installed at once. +[MultiMC5](https://multimc.org) is a custom launcher that allows multiple instances of the +[game](/wiki/games.md) [Minecraft](./minecraft.md) to be installed at once. ## Usage diff --git a/wiki/games/pokemon.md b/wiki/games/pokemon.md new file mode 100644 index 0000000..3a17724 --- /dev/null +++ b/wiki/games/pokemon.md @@ -0,0 +1,14 @@ +# Pokemon + +[Pokemon](https://www.pokemon.com/) is a multi-media franchise owned by Nintendo. +It consists of video games, animated series, films, a +[trading card game](/wiki/games/trading_card_games.md) and more. + +## Resources + +There are many useful resources. +The this section provides a select few of them. + +- [Dragon Shield Poke TCG Card Manager](https://poketcg.dragonshield.com/) is a collection and deck + manager available both as an apple and [Android](/wiki/android.md) app and as a website. + It features a card scanner for easy population of the collection diff --git a/wiki/games/proton.md b/wiki/games/proton.md index 62cc721..4d3bdb2 100644 --- a/wiki/games/proton.md +++ b/wiki/games/proton.md @@ -1,8 +1,9 @@ # Proton [Proton](https://github.com/ValveSoftware/Proton) is a compatibility tool for -[Steam](./steam.md) by its developers, [Valve](https://www.valvesoftware.com), -based on [WINE](../linux/wine.md). +[games](/wiki/games.md) made by the developers of [Steam](./steam.md), +[Valve](https://www.valvesoftware.com). +It is based on [WINE](../linux/wine.md). ## GE-Version @@ -46,4 +47,3 @@ You can remove `/steamapps/compatdata/` to reset the Wine prefix completely. It is recommended to keep a backup of the folder containing the old Wine prefix as it stores game saves and other important data, that can be useful. - diff --git a/wiki/games/sid_meier's_civilization_vi.md b/wiki/games/sid_meier's_civilization_vi.md index 9833215..cbe5288 100644 --- a/wiki/games/sid_meier's_civilization_vi.md +++ b/wiki/games/sid_meier's_civilization_vi.md @@ -1,11 +1,13 @@ # Sid Meier's Civilization VI [Sid Meier's Civilization VI](https://civilization.com/de-DE/) is a round-based -strategy game which is available as a standalone Launcher for Windows and on +strategy [game](/wiki/games.md) which is available as a standalone Launcher for Windows and on [Steam](./steam.md) and many other video game distribution services. ## Troubleshooting +This section addresses various errors that can happen when playing Sid Meier's Civilization VI. + ### Problems launching with [Proton](./steam.md) Due to the standalone launcher of Civilization VI being used in the startup @@ -16,4 +18,3 @@ steams game related settings: ```sh eval $( echo "%command%" | sed "s/2KLauncher\/LauncherPatcher.exe'.*/Base\/Binaries\/Win64Steam\/CivilizationVI'/" ) ``` - diff --git a/wiki/games/steam.md b/wiki/games/steam.md index 94fee1a..cfbf302 100644 --- a/wiki/games/steam.md +++ b/wiki/games/steam.md @@ -1,6 +1,6 @@ # Steam -[Steam](https://store.steampowered.com/) is a software for digital game +[Steam](https://store.steampowered.com/) is a software for digital [game](/wiki/games.md) destribution. It is developed by [Valve](https://www.valvesoftware.com). Steam uses its compatibility layer, [Proton](./proton.md) for running windows @@ -38,7 +38,7 @@ SteamGridDB in a package of the same name. Icons and Banners can then be changed by opening the menu after selecting a game and selecting `Change Artwork...`. -Images for games can be changed by downloading them and applying them manually. +[Images](/wiki/images.md) for games can be changed by downloading them and applying them manually. An easier route can be taken by using [SGDBoop](https://www.steamgriddb.com/boop). To use it, you first need to install it. @@ -63,16 +63,8 @@ The [Steam Cloud](https://partner.steamgames.com/doc/features/cloud) allows games and the platform to utilize cloud storage hosted by Steam. Games can use this to store data including game settings and saves. -By using [Syncthing](../syncthing.md) game saves can be synchronized without -the Steam Cloud. -First set up Syncthing as described in the -[Syncthing entry](../syncthing.md#setup). -If the [Steam Deck](./steam_deck.md) or another system with only user access is -used the -[user space configuration](../syncthing.md#user-space-configuration-for-linux) -is recommended. -Afterwards move the game saves to the directory set up by Syncthing and create -symbolic links to link them back to the original place. +Games can also be synchronized without the Steam Cloud by using [Syncthing](/wiki/syncthing.md) as +described in [the games entry](/wiki/games.md#syncing-game-saves-across-systems). ## Error Handling diff --git a/wiki/games/steam_deck.md b/wiki/games/steam_deck.md index 5a8efe7..c1b52c5 100644 --- a/wiki/games/steam_deck.md +++ b/wiki/games/steam_deck.md @@ -1,6 +1,6 @@ # Steam Deck -The [Steam Deck](https://store.steampowered.com/steamdeck) is a handheld gaming +The [Steam Deck](https://store.steampowered.com/steamdeck) is a handheld [gaming](/wiki/games.md) computer made by the same developers as [Steam](./steam.md), [Valve](https://www.valvesoftware.com). Due to its form factor it can be used especially well to play games that need a @@ -41,12 +41,12 @@ The Steam Deck features a wide variable of customization options. Some of these options can be accessed by installing [the plugin manager Decky](https://github.com/SteamDeckHomebrew/decky-loader). To install it download the setup file from the -[Github page](https://github.com/SteamDeckHomebrew/decky-loader) and run it. +[GitHub page](https://github.com/SteamDeckHomebrew/decky-loader) and run it. Afterwards the plugin manager will be available after pressing the `...` button on the Deck and navigating to the bottom of the menu. There plugins can be installed and removed aswell as managed. The following list includes some useful plugins. -- [SteamGridDB](/wiki/games/steam.md#setting-icons-and-banners-for-games): setting new images for - games +- [SteamGridDB](/wiki/games/steam.md#setting-icons-and-banners-for-games) can be used for setting + new and better [images](/wiki/images.md) for games. diff --git a/wiki/games/trading_card_games.md b/wiki/games/trading_card_games.md new file mode 100644 index 0000000..88251c2 --- /dev/null +++ b/wiki/games/trading_card_games.md @@ -0,0 +1,12 @@ +# Trading Card Games + +Trading card games - short TCG - sometimes also named collectible card game - short CCG - is a card +game that is based on strategic deck building but also features elements of trading cards. + +## Popular Trading Card Games + +The following is a list of popular TCGs. + +- [Magic: The Gathering](/wiki/games/magic%3A_the_gathering.md) is the oldest TCG. + It was introduced in 1993. +- [Pokemon TCG](/wiki/games/pokemon.md) is a TCG from the Pokemon franchise made by Nintendo. diff --git a/wiki/git.md b/wiki/git.md index 6cdb646..223f058 100644 --- a/wiki/git.md +++ b/wiki/git.md @@ -9,7 +9,7 @@ Git consists of two parts: [a client](#client) and [a server](#server). ### Client -The Git client for [Linux-based operating systems](/wiki/linux/linux.md) has a +The Git client for [Linux-based operating systems](/wiki/linux.md) has a separate article in this wiki which is called [Git client](/wiki/linux/git_\(client\).md). @@ -26,12 +26,12 @@ Web interfaces for git are quite useful for easily showing code to other people. Additionally it is easy to collaborate together. - [Gitea](gitea.md) is an open-source and selfhosted and can be dockerized. -- [Github](https://github.com) is the go to system for many people. Not +- [GitHub](https://github.com) is the go to system for many people. Not selfhosted, owned by microsoft ([cli-tool](https://github.com/github/hub)). #### Server without graphical interface If you don't need a bloated web-interface a more basic approach is more than enough. -- [git-server-docker](./docker-images/jkarlos_-_git-server-docker.md) is a pretty +- [git-server-docker](./docker/jkarlos_-_git-server-docker.md) is a pretty basic docker-container for git. diff --git a/wiki/gitea.md b/wiki/gitea.md index b9d6c0c..d6c5f8b 100644 --- a/wiki/gitea.md +++ b/wiki/gitea.md @@ -1,7 +1,7 @@ # Gitea Gitea is a selfhostable git server with a web interface. -It is similar to Github but opensource. +It is similar to GitHub but opensource. ## Setup @@ -11,7 +11,7 @@ Gitea as a [Git](./git.md) service consists of a [client](#client) and a ### Server The software can be setup via [Docker](/wiki/docker.md) with the -[gitea image](./docker-images/gitea_-_gitea.md). +[gitea image](./docker/gitea_-_gitea.md). Additionally to this a client is needed on the system that need access to the server software. diff --git a/wiki/golinks.md b/wiki/golinks.md index 988fc4f..101579a 100644 --- a/wiki/golinks.md +++ b/wiki/golinks.md @@ -6,7 +6,7 @@ use bookmarks and run different searches by prefixes. ## Server The software can be setup via [Docker](/wiki/docker.md) with the -[prologic image](./docker-images/prologic_-_golinks.md). +[prologic image](./docker/prologic_-_golinks.md). ## Usage diff --git a/wiki/gramps.md b/wiki/gramps.md new file mode 100644 index 0000000..9783231 --- /dev/null +++ b/wiki/gramps.md @@ -0,0 +1,8 @@ +# Gramps + +[Gramps](https://github.com/gramps-project/gramps) is a genealogical program. + +## Setup + +The software can be setup via [Docker](/wiki/docker.md) with the +[gramps-project image](/wiki/docker/gramps-project_-_grampsweb.md). diff --git a/wiki/handbrake.md b/wiki/handbrake.md new file mode 100644 index 0000000..b5415bd --- /dev/null +++ b/wiki/handbrake.md @@ -0,0 +1,289 @@ +# HandBrake + +[HandBrake](handbrake.md) is an open-source and multi-platform program that can compress video +files. + +## Setup + +Various ways to set up HandBrake can be found on +[their website](https://handbrake.fr/downloads.php). + +## Usage + +On [Windows](/wiki/windows.md) and Mac the program can be started by clicking the icon. +This way is also possible on [Linux based operating systems](/wiki/linux.md). +Additionally the command `ghb` can be called in the [Terminal](/wiki/linux/shell.md). + +### Presets + +Presets are used to store settings that specify the transcoding of video files. + +#### Importing and Exporting Presets + +Presets can be imported and exported from HandBrake by selecting `Presets`, `Actions` and then +`Import` or `Export`. + +#### Simple 1080p AC-3 Encoding + +The following is a preset that is a `.json` file which is used for the transcoding of movies to +1080p and AC-3 audio. +This can save some disc space. + +```json +{ + "PresetList": [ + { + "AlignAVStart": true, + "AudioCopyMask": [ + "copy:aac", + "copy:ac3" + ], + "AudioEncoderFallback": "av_aac", + "AudioLanguageList": [ + "any" + ], + "AudioList": [ + { + "AudioBitrate": 192, + "AudioCompressionLevel": -1.0, + "AudioDitherMethod": "auto", + "AudioEncoder": "av_aac", + "AudioMixdown": "7point1", + "AudioNormalizeMixLevel": false, + "AudioSamplerate": "auto", + "AudioTrackDRCSlider": 0.0, + "AudioTrackGainSlider": -20.0, + "AudioTrackQuality": 3.0, + "AudioTrackQualityEnable": false + } + ], + "AudioSecondaryEncoderMode": false, + "AudioTrackSelectionBehavior": "all", + "ChapterMarkers": true, + "ChildrenArray": [], + "Default": true, + "FileFormat": "av_mp4", + "Folder": false, + "FolderOpen": false, + "InlineParameterSets": false, + "MetadataPassthrough": true, + "Mp4HttpOptimize": false, + "Mp4iPodCompatible": false, + "PictureAllowUpscaling": false, + "PictureAutoCrop": true, + "PictureBottomCrop": 140, + "PictureChromaSmoothCustom": "", + "PictureChromaSmoothPreset": "off", + "PictureChromaSmoothTune": "none", + "PictureColorspaceCustom": "", + "PictureColorspacePreset": "off", + "PictureCombDetectCustom": "", + "PictureCombDetectPreset": "default", + "PictureCropMode": 0, + "PictureDARWidth": 1920, + "PictureDeblockCustom": "strength=strong:thresh=20:blocksize=8", + "PictureDeblockPreset": "off", + "PictureDeblockTune": "medium", + "PictureDeinterlaceCustom": "", + "PictureDeinterlaceFilter": "decomb", + "PictureDeinterlacePreset": "default", + "PictureDenoiseCustom": "", + "PictureDenoiseFilter": "off", + "PictureDenoisePreset": "", + "PictureDenoiseTune": "none", + "PictureDetelecine": "off", + "PictureDetelecineCustom": "", + "PictureForceHeight": 0, + "PictureForceWidth": 0, + "PictureHeight": 1080, + "PictureItuPAR": false, + "PictureKeepRatio": true, + "PictureLeftCrop": 0, + "PictureModulus": 2, + "PicturePAR": "auto", + "PicturePARHeight": 1, + "PicturePARWidth": 1, + "PicturePadBottom": 0, + "PicturePadColor": "black", + "PicturePadLeft": 0, + "PicturePadMode": "none", + "PicturePadRight": 0, + "PicturePadTop": 0, + "PictureRightCrop": 0, + "PictureRotate": "angle=0:hflip=0", + "PictureSharpenCustom": "", + "PictureSharpenFilter": "off", + "PictureSharpenPreset": "", + "PictureSharpenTune": "", + "PictureTopCrop": 138, + "PictureUseMaximumSize": true, + "PictureWidth": 1920, + "PresetDescription": "Super high quality H.264 video (up to 1080p30), AAC stereo audio, and Dolby Digital (AC-3) surround audio, in an MP4 container.", + "PresetDisabled": false, + "PresetName": "Film, H.264 1080p slow, AC-3", + "SubtitleAddCC": false, + "SubtitleAddForeignAudioSearch": true, + "SubtitleAddForeignAudioSubtitle": false, + "SubtitleBurnBDSub": false, + "SubtitleBurnBehavior": "none", + "SubtitleBurnDVDSub": false, + "SubtitleLanguageList": [], + "SubtitleTrackSelectionBehavior": "none", + "Type": 1, + "UsesPictureFilters": true, + "VideoAvgBitrate": 15000, + "VideoColorMatrixCodeOverride": 0, + "VideoEncoder": "x264", + "VideoFramerate": "auto", + "VideoFramerateMode": "vfr", + "VideoGrayScale": false, + "VideoHWDecode": 0, + "VideoLevel": "4.1", + "VideoOptionExtra": "ref=5:bframes=5", + "VideoPreset": "slower", + "VideoProfile": "high", + "VideoQSVDecode": false, + "VideoQualitySlider": 18.0, + "VideoQualityType": 2, + "VideoScaler": "swscale", + "VideoTune": "film", + "VideoTurboTwoPass": false, + "VideoTwoPass": true, + "x264Option": "", + "x264UseAdvancedOptions": false + } + ], + "VersionMajor": 50, + "VersionMicro": 0, + "VersionMinor": 0 +} +``` + +Another possible preset is the following. + +```json +{ + "PresetList": [ + { + "AlignAVStart": true, + "AudioCopyMask": [], + "AudioEncoderFallback": "none", + "AudioLanguageList": [ + "eng", + "deu" + ], + "AudioList": [ + { + "AudioBitrate": 512, + "AudioCompressionLevel": -1.0, + "AudioDitherMethod": "auto", + "AudioEncoder": "fdk_aac", + "AudioMixdown": "5point1", + "AudioNormalizeMixLevel": false, + "AudioSamplerate": "auto", + "AudioTrackDRCSlider": 0.0, + "AudioTrackGainSlider": 0.0, + "AudioTrackQuality": 3.0, + "AudioTrackQualityEnable": false + } + ], + "AudioSecondaryEncoderMode": true, + "AudioTrackSelectionBehavior": "first", + "ChapterMarkers": true, + "ChildrenArray": [], + "Default": true, + "FileFormat": "av_mp4", + "Folder": false, + "FolderOpen": false, + "InlineParameterSets": false, + "MetadataPassthrough": false, + "Mp4HttpOptimize": false, + "Mp4iPodCompatible": false, + "PictureAllowUpscaling": false, + "PictureAutoCrop": true, + "PictureBottomCrop": 18, + "PictureChromaSmoothCustom": "", + "PictureChromaSmoothPreset": "off", + "PictureChromaSmoothTune": "none", + "PictureColorspaceCustom": "", + "PictureColorspacePreset": "off", + "PictureCombDetectCustom": "", + "PictureCombDetectPreset": "default", + "PictureDARWidth": 1904, + "PictureDeblockCustom": "strength=strong:thresh=20:blocksize=8", + "PictureDeblockPreset": "off", + "PictureDeblockTune": "medium", + "PictureDeinterlaceCustom": "", + "PictureDeinterlaceFilter": "decomb", + "PictureDeinterlacePreset": "default", + "PictureDenoiseCustom": "", + "PictureDenoiseFilter": "off", + "PictureDenoisePreset": "", + "PictureDenoiseTune": "none", + "PictureDetelecine": "off", + "PictureDetelecineCustom": "", + "PictureForceHeight": 0, + "PictureForceWidth": 0, + "PictureHeight": 0, + "PictureItuPAR": false, + "PictureKeepRatio": true, + "PictureLeftCrop": 16, + "PictureLooseCrop": false, + "PictureModulus": 2, + "PicturePAR": "auto", + "PicturePARHeight": 1, + "PicturePARWidth": 1, + "PicturePadBottom": 0, + "PicturePadColor": "black", + "PicturePadLeft": 0, + "PicturePadMode": "none", + "PicturePadRight": 0, + "PicturePadTop": 0, + "PictureRightCrop": 0, + "PictureRotate": "angle=0:hflip=0", + "PictureSharpenCustom": "", + "PictureSharpenFilter": "off", + "PictureSharpenPreset": "", + "PictureSharpenTune": "", + "PictureTopCrop": 20, + "PictureUseMaximumSize": true, + "PictureWidth": 0, + "PresetDescription": "H.264 video (up to 1080p30) and AAC stereo audio, in an MP4 container.", + "PresetDisabled": false, + "PresetName": "Hohes Profil Universell 3.0 (u3)", + "SubtitleAddCC": false, + "SubtitleAddForeignAudioSearch": false, + "SubtitleAddForeignAudioSubtitle": false, + "SubtitleBurnBDSub": false, + "SubtitleBurnBehavior": "none", + "SubtitleBurnDVDSub": false, + "SubtitleLanguageList": [], + "SubtitleTrackSelectionBehavior": "none", + "Type": 1, + "UsesPictureFilters": true, + "VideoAvgBitrate": 6000, + "VideoColorMatrixCodeOverride": 0, + "VideoEncoder": "x264", + "VideoFramerate": "auto", + "VideoFramerateMode": "vfr", + "VideoGrayScale": false, + "VideoLevel": "4.1", + "VideoOptionExtra": "", + "VideoPreset": "slow", + "VideoProfile": "high", + "VideoQSVDecode": false, + "VideoQualitySlider": 18.0, + "VideoQualityType": 2, + "VideoScaler": "swscale", + "VideoTune": "", + "VideoTurboTwoPass": true, + "VideoTwoPass": true, + "x264Option": "", + "x264UseAdvancedOptions": false + } + ], + "VersionMajor": 47, + "VersionMicro": 0, + "VersionMinor": 0 +} +``` diff --git a/wiki/hauk.md b/wiki/hauk.md index df610fd..e9f8253 100644 --- a/wiki/hauk.md +++ b/wiki/hauk.md @@ -8,4 +8,4 @@ app that is available at ## Setup The server can be setup via [Docker](/wiki/docker.md) with the -[bilde2910 image](/wiki/docker-images/bilde2910_-_hauk.md). +[bilde2910 image](/wiki/docker/bilde2910_-_hauk.md). diff --git a/wiki/home_assistant.md b/wiki/home_assistant.md new file mode 100644 index 0000000..269d558 --- /dev/null +++ b/wiki/home_assistant.md @@ -0,0 +1,9 @@ +# Home Assistant + +[Home Assistant](https://www.home-assistant.io/) is a central control system for +[smart home](/wiki/smart_devices.md#smart-home) and other Internet of Things devices. + +## Setup + +The software can be setup via [Docker](/wiki/docker.md) with the +[homeassistant image](/wiki/docker/homeassistant_-_home-assistant.md). diff --git a/wiki/imagemagick.md b/wiki/imagemagick.md new file mode 100644 index 0000000..249c1d6 --- /dev/null +++ b/wiki/imagemagick.md @@ -0,0 +1,20 @@ +# ImageMagick + +[ImageMagick](https://imagemagick.org/) is a free and open-source, cross-platform software suite for +displaying, creating and editing (raster) images. + +## Usage + +The following section addresses different uses ImageMagick. +For most of ImageMagicks features the [command-line interface](/wiki/system_console.md) can be used. + +## Rotate an Image + +To rotate an image and save the edited copy of the image run the following command. +`origin.png` is the image to be rotated and `target.png` is the rotated image. +`90` is the degrees the image `origin.png` will be turned by. +Change these values as needed. + +```sh +convert origin.png -rotate 90 target.png +``` diff --git a/wiki/images.md b/wiki/images.md new file mode 100644 index 0000000..f292784 --- /dev/null +++ b/wiki/images.md @@ -0,0 +1,30 @@ +# Images + +An image is a visual representation of something. +In the computer context it is a file with an extension like `png`, `jpg`, `gif` among others. + +## Clients + +- [sxiv](https://github.com/xyb3rt/sxiv) is an image viewer for [Linux'](/wiki/linux.md) + [X window system](/wiki/linux/x_window_system.md). + +## Editing + +Editing images can be done by various image manipulation software. +A popular cross-platform program for this is [GIMP](https://www.gimp.org/). + +A second cross-platform software suite for displaying, creating and editing (raster) images is +[ImageMagick](/wiki/imagemagick.md). + +Another part of image manipulation is the upscaling of low resolution images. +This can be done by the cross-platform program [upscayl](https://github.com/upscayl/upscayl). + +### Getting Metadata + +Using [MediaInfo](https://github.com/MediaArea/MediaInfo) metadata of a file can be obtained. +A command for this looks like the following. +In this the file to obtain metadata to is assumed to be `image.png`. + +```sh +mediainfo image.png +``` diff --git a/wiki/invidious.md b/wiki/invidious.md index 323d36d..9961cc4 100644 --- a/wiki/invidious.md +++ b/wiki/invidious.md @@ -1,13 +1,13 @@ # Invidious [Invidious](https://github.com/iv-org/invidious) is an alternative frontend for -YouTube. +[YouTube](/wiki/youtube.md). It includes locally stored subscription management. ## Setup The software can be setup via [Docker](/wiki/docker.md) with the -[iv-org image](./docker-images/iv-org_-_invidious.md). +[iv-org image](./docker/iv-org_-_invidious.md). ## Usage @@ -20,12 +20,10 @@ invidious instance. For Firefox for example there is [invidious redirect](https://addons.mozilla.org/en-US/firefox/addon/invidious-redirect-2/) or [privacy redirect](https://addons.mozilla.org/en-US/firefox/addon/privacy-redirect/). -For Android there is +For [Android](/wiki/android.md) there is [the UntrackMe app](https://framagit.org/tom79/nitterizeme) (available at [f-droid](./android/f-droid.md)). -### Skip sponsorships in videos +### Automatically Skip Sponsorships -When using [Firefox](./firefox.md) SponsorBlock can be installed. -This will skip YouTube video sponsors in YouTube and in Invidious. -Further informations and links can be found in the -[Firefox entry of this wiki](./firefox.md#list-of-useful-firefox-addons). +[In the YouTube article](/wiki/youtube.md#automatically-skip-sponsorships) a section discusses the +skipping of sponsorships that is compatible with Invidious too. diff --git a/wiki/jackett.md b/wiki/jackett.md index c58a8e3..45382cb 100644 --- a/wiki/jackett.md +++ b/wiki/jackett.md @@ -8,7 +8,7 @@ One of its main usecases is in feeding indexers to the ## Setup The software can be setup via [Docker](/wiki/docker.md) with the -[DyonR image](/wiki/docker-images/dyonr_-_jackettvpn.md) which also features a +[DyonR image](/wiki/docker/dyonr_-_jackettvpn.md) which also features a VPN tunnel. ## Usage diff --git a/wiki/jellyfin.md b/wiki/jellyfin.md index 028a541..8d3fba8 100644 --- a/wiki/jellyfin.md +++ b/wiki/jellyfin.md @@ -2,12 +2,12 @@ [Jellyfin](https://jellyfin.ord) is a suite for multimedia streaming. It includes a web-interface and is mainly used for -[movies and tv shows](./movies_&_tv_shows.md). +[movies and tv shows](/wiki/video.md). ## Setup The software can be setup via [Docker](/wiki/docker.md) with the -[linuxserver image](./docker-images/linuxserver_-_jellyfin.md). +[linuxserver image](./docker/linuxserver_-_jellyfin.md). ## Usage diff --git a/wiki/kitchenowl.md b/wiki/kitchenowl.md new file mode 100644 index 0000000..970ef06 --- /dev/null +++ b/wiki/kitchenowl.md @@ -0,0 +1,9 @@ +# kitchenowl + +[kitchenowl](https://kitchenowl.org/) is an application for managing recipes, meals and +shop lists. + +## Setup + +The software can be setup via [Docker](/wiki/docker.md) with the +[tombursch image](/wiki/docker/tombursch_-_kitchenowl.md). diff --git a/wiki/libreddit.md b/wiki/libreddit.md index 5722e71..fe90f05 100644 --- a/wiki/libreddit.md +++ b/wiki/libreddit.md @@ -6,7 +6,7 @@ Reddit. ## Setup The software can be setup via [Docker](/wiki/docker.md) with the -[spikecodes image](./docker-images/spikecodes_-_libreddit.md). +[spikecodes image](./docker/spikecodes_-_libreddit.md). ## Usage @@ -18,5 +18,5 @@ There are various add-ons to redirect from Reddit links to your (or a public) libreddit instance. For Firefox for example there is [privacy redirect](https://addons.mozilla.org/en-US/firefox/addon/privacy-redirect/). -For Android there is [the UntrackMe app](https://framagit.org/tom79/nitterizeme) +For [Android](/wiki/android.md) there is [the UntrackMe app](https://framagit.org/tom79/nitterizeme) (available at [f-droid](./android/f-droid.md)). diff --git a/wiki/linkding.md b/wiki/linkding.md index 46bc561..e30f376 100644 --- a/wiki/linkding.md +++ b/wiki/linkding.md @@ -6,16 +6,22 @@ bookmarking and archiving service. ## Setup The software can be setup via [Docker](/wiki/docker.md) with the -[image by sissbrueckner](./docker-images/sissbrueckner_-_linkding.md). +[image by sissbrueckner](./docker/sissbrueckner_-_linkding.md). ## Usage This section addresses various features of Linkding. -### Browser add-on +### Browser Add-on [On the firefox add-on site](https://addons.mozilla.org/de/firefox/addon/linkding-extension/) you can find an add-on for linkding. You need to configure it by giving the URL for your linkding instance and the REST API token which can be found in the settings of linkding under the integrations tab. + +### Mobile Phone Integration + +For mobile phones the RSS-Feed of the service can be used. +The Feed can be found under the Integrations Tab inside the settings. +This feed can be used with an [RSS-Feed reader](/wiki/rss.md#clients). diff --git a/wiki/linux/linux.md b/wiki/linux.md similarity index 82% rename from wiki/linux/linux.md rename to wiki/linux.md index 03783cb..a7345c0 100644 --- a/wiki/linux/linux.md +++ b/wiki/linux.md @@ -9,6 +9,6 @@ Linux based operating systems are Unix-like. The different operating systems that are based on the Linux kernel are called distributions. -- [Arch Linux](/wiki/linux/arch-linux/arch-linux.md) is a rolling-release +- [Arch Linux](/wiki/linux/arch-linux.md) is a rolling-release distribution whose base system is as minimal and needs heavy user configuration. diff --git a/wiki/linux/7-zip.md b/wiki/linux/7-zip.md new file mode 100644 index 0000000..752e045 --- /dev/null +++ b/wiki/linux/7-zip.md @@ -0,0 +1,54 @@ +# 7-zip + +[7-zip](https://7-zip.org/) is a free and open-source file archiver. +It places files or directories in an archive and is able to compress them. + +## Setup + +7-zip can be installed by installing the packages `p7zip-full` and `p7zip-rar` on Ubuntu systems. +On [Arch Linux](/wiki/linux/arch-linux.md) it can be installed with the package `7-zip` +from the [AUR](/wiki/linux/package_manager.md#arch-linux-pacman-and-yay). + +## Usage + +### Compressing and Uncompressing a Directory + +For directories to be compressed the Lempel–Ziv–Markov chain algorithm is recommended. +It is fast with good compression results. + +As explained by +[kenorb on superuser.com](https://superuser.com/questions/281573/what-are-the-best-options-to-use-when-compressing-files-using-7-zip) +An effective way to compress a directory is the following command where `directory` is the directory +that is to be compressed. +The archive will be created by the same name as the directory but with the `.7z` extension. +This command uses [expansion](/wiki/linux/shell.md#expansion). +The directory is not deleted automatically afterwards. + +```sh +7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on directory{.7z,} +``` + +To uncompress it run the following command. + +```sh +7z x directory.7z +``` + +### Peek Contents of an Archive + +To list the content files of a 7-zip archive the following command can be used. +The name of the archive is assumed to be `directory.7z`. + +```sh +7z l directory.7z +``` + +### Remove a File from an Existing Archive + +To remove a file with the assumed name `file.ext` from an archive called `directory.7z` run the +following command as explained by +[user3409415 on stack overflow](https://stackoverflow.com/questions/22344587/how-to-delete-a-file-from-multiple-zip-archives-using-7-zip). + +```sh +7z d -r directory.7z file.ext +``` diff --git a/wiki/linux/arch-linux/arch-linux.md b/wiki/linux/arch-linux.md similarity index 98% rename from wiki/linux/arch-linux/arch-linux.md rename to wiki/linux/arch-linux.md index 58e454b..345ac56 100644 --- a/wiki/linux/arch-linux/arch-linux.md +++ b/wiki/linux/arch-linux.md @@ -1,7 +1,7 @@ # Arch Linux [Arch Linux](https://archlinux.org/) is a rolling-release, general-purpose -[Linux](/wiki/linux/linux.md) +[Linux](/wiki/linux.md) distribution. ## Package Manager and AUR diff --git a/wiki/linux/arch-linux/installation.md b/wiki/linux/arch-linux/installation.md index ae540f6..be004ac 100644 --- a/wiki/linux/arch-linux/installation.md +++ b/wiki/linux/arch-linux/installation.md @@ -1,7 +1,7 @@ # Arch installation with LUKS encryption and LVM This guide is based upon a -[german arch wiki article](https://wiki.archlinux.de/title/Moderne_Installation_mit_UEFI_und_Verschlüsselung). +[german arch wiki article](https://wiki.archlinux.de/title/Installation_mit_UEFI_und_Verschl%C3%BCsselung). For encryption [dm-crypt](../dm-crypt.md) is used. Inside the encrypted partition a logical volume will be created with [LVM](../lvm.md). @@ -11,7 +11,7 @@ At the end of this guide a fully functional Arch Linux will be installed. ## 1. Preparation Ahead of the installation an Arch boot-stick has to be created as described in -[the Arch Linux entry](/wiki/linux/arch-linux/arch-linux.md#installation-medium). +[the Arch Linux entry](/wiki/linux/arch-linux.md#installation-medium). After that the USB can be plugged in the system on which Arch should be installed. Boot the target system and select `Boot Arch Linux (x86_64)`. @@ -19,7 +19,7 @@ Boot the target system and select `Boot Arch Linux (x86_64)`. If you need to set the keyboard layout to anything other than english you can temporarily do so by using the `loadkeys` command. This has to be followed by your country id (for example a german keyboard layout -would be `de`,`de-latin1` or `de-latin1-nodeadkeys`. +would be `de`,`de-latin1` or `de-latin1-nodeadkeys`). ## 2. Formatting of the target drive @@ -33,10 +33,19 @@ be `/dev/sda`. This step can take quite a while especially for large drives. -- `dd status=progress if=/dev/zero of=/dev/sda` +```sh +dd status=progress if=/dev/zero of=/dev/sda +``` Now all partitions should be removed. +Alternatively the partition table can be cleared by running the following command. +This will leave old data possibly recoverable. + +```sh +wipefs -fa /dev/sda +``` + ### Create new partitions If you miss click during the progress of the following commands you can press @@ -66,12 +75,13 @@ Using `blkid | grep /dev/sda` all partitions we created get listed. The right partition has the label `Linux filesystem`. For this guide this partition is assumed to be `/dev/sda2`. -- `modprobe dm-crypt` - load kernelmodule for encryption -- `cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda2` - encryption -- confirm with `YES` -- Now you can assign a passphrase. - The passphrase has to be entered at boot to decrypt the system. - Recovering of this passphrase is **not** possible. +```sh +cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda2 +``` +Afterwards confirm with `YES`. +Now you can assign a passphrase. +The passphrase has to be entered at boot to decrypt the system. +Recovering of this passphrase is **not** possible. ## 4. Setup LVM @@ -139,14 +149,14 @@ en_US.UTF-8 UTF-8 - Search the line `MODULES=()` and change it to: `MODULES=(ext4)` - Search the line `HOOKS=([...])` and change it to: - `HOOKS=(base udev autodetect modconf block keyboard keymap encrypt lvm2 filesystems fsck shutdown)` + `HOOKS=(base udev autodetect modconf block kms keyboard keymap consolefont encrypt lvm2 filesystems fsck shutdown)` - `mkinitcpio -p linux` - generate Kernel-Image ## 9. Install and configure UEFI bootloader - `bootctl install` - Prepare bootloader -- `ls -l /dev/disk/by-uuid` - find out the UUID of your root partition +- `ls -l /dev/disk/by-uuid` - find out the UUID of your root partition. - `vim /boot/loader/entries/arch.conf` - Create configuration - Change the config to look similar to this: @@ -158,11 +168,18 @@ en_US.UTF-8 UTF-8 options cryptdevice=UUID=:lvm:allow-discards root=/dev/mapper/main-root resume=/dev/mapper/main-swap rw quiet ``` -- `cp /boot/loader/entries/arch.conf /boot/loader/entries/arch-fallback.conf` - - create a fallback -- `vim /boot/loader/loader.conf` - Create loader configuration +- `cp /boot/loader/entries/arch.conf /boot/loader/entries/arch-fallback.conf` - create a fallback. + Change it to the following. - - Insert the following text + ```txt + title Arch Linux Fallback + linux /vmlinuz-linux + initrd /initramfs-linux-fallback.img + options cryptdevice=UUID=:lvm:allow-discards root=/dev/mapper/main-root resume=/dev/mapper/main-swap rw quiet + ``` + +- `vim /boot/loader/loader.conf` - Create loader configuration. + Insert the following text ```txt timeout 0 @@ -188,13 +205,13 @@ UEFI, don't forget to enable the EFI option, otherwise the system won't boot. ## 12. Further steps and graphical environment Now you can follow the recommended larbs installation script of this wiki -(`curl -o larbs.sh https://raw.githubusercontent.com/tiyn/larbs/master/larbs.sh`) +(`curl -LO larbs.sh https://raw.githubusercontent.com/tiyn/larbs/master/larbs.sh`) this will install a bunch of useful base software including [a graphical environment](../x_window_system.md) and [a window manager](../suckless.md#programs). You can go on to other guides aswell. Especially the -[Recommended practices](/wiki/linux/arch-linux/arch-linux.md#recommended-practices) +[Recommended practices](/wiki/linux/arch-linux.md#recommended-practices) should be checked for further setups. Additionally if you have a NVidia Graphics Cards you should read @@ -203,3 +220,11 @@ Additionally if you have a NVidia Graphics Cards you should read If you are interested in automatic decryption of the dm-crypt encrypted partition, take a look at the according section in [the dm-crypt article](../dm-crypt.md). + +After installing [xorg windows system](/wiki/linux/x_window_system.md) the language of it will be +english by default. +To change it - in this example to german - run the following command. + +```sh +localectl --no-convert set-x11-keymap de pc105 deadgraveacute +``` diff --git a/wiki/linux/disk-management.md b/wiki/linux/disk-management.md index 233ff24..ffe12ae 100644 --- a/wiki/linux/disk-management.md +++ b/wiki/linux/disk-management.md @@ -49,6 +49,10 @@ The following is a command to unmount a device from a specified directory. umount ``` +A special case is the `.iso` format. +It can be mounted too. +A guide on how this is done can be found in the [ISO entry](/wiki/linux/iso_image.md#mounting). + ## Create Partition In the following it is assumed that the disk is `/dev/sda` diff --git a/wiki/linux/easyeffects.md b/wiki/linux/easyeffects.md index 0714e1e..2ad77c5 100644 --- a/wiki/linux/easyeffects.md +++ b/wiki/linux/easyeffects.md @@ -17,6 +17,7 @@ An installation via [Flatpak](./flatpak.md) is also possible. Easyeffects can apply `Effects` to input and output sound. ### Noise cancellation + Setup Noise cancellation can be achieved by installing Easyeffects. diff --git a/wiki/linux/fdupes.md b/wiki/linux/fdupes.md index 275e1c2..441797d 100644 --- a/wiki/linux/fdupes.md +++ b/wiki/linux/fdupes.md @@ -7,7 +7,7 @@ specified directories. ## Setup The fdupes program can be installed by going to the -[github page of it](https://github.com/adrianlopezroche/fdupes/releases). +[GitHub page of it](https://github.com/adrianlopezroche/fdupes/releases). Alternatively many linux package managers package fdupes in the `fdupes` package. diff --git a/wiki/linux/ffmpeg.md b/wiki/linux/ffmpeg.md index a488bcb..b7a9ce0 100644 --- a/wiki/linux/ffmpeg.md +++ b/wiki/linux/ffmpeg.md @@ -63,3 +63,20 @@ Note that the bitrate for videos is split amongst a bitrate for video and a bitrate for audio. The target bitrate has to be equal to or greater than the sum of both video bitrate and audio bitrate. + +### Create a Virtual Camera Using an IP Video Stream + +The following section will create a virtual [webcam](/wiki/webcams.md) from an IP video stream like +the one provided by [IP Webcam](/wiki/android/ip_webcam.md) [Android](/wiki/android.md) app. +For this a free [V4L2](/wiki/linux/v4l2.md) video device will be needed. +To information on how to create it navigate to the V4L2 entry and its sections on +[permanent](/wiki/linux/v4l2.md#create-permanent-v4l2-devices) and +[temporary creation of V4L2 video devices](/wiki/linux/v4l2.md#create-temporary-v4l2-devices). +The following command will create a video device using the pixel format planar YUV 4:2:0. +In this example it is assumed that the IP link is `http://192.168.178.66:8080/videofeed` and the +V4L2 video device that is not used but exists is `/dev/video8`. +If any of those differs on a given system adjustments are needed. + +```sh +ffmpeg -i http://192.168.178.66:8080/videofeed -f v4l2 -pix_fmt yuv420p /dev/video8 +``` diff --git a/wiki/linux/flac_(package).md b/wiki/linux/flac_(package).md index 62cbfcd..1ecff12 100644 --- a/wiki/linux/flac_(package).md +++ b/wiki/linux/flac_(package).md @@ -14,42 +14,5 @@ Another possible tagging software is [MusicBrainz Picard](../picard.md) ### Splitting Flac file according to cue file -An easy way to split flac files according to a [cue file](../cue_sheet.md) is -using `cuebreakpoints` and `shnsplit`. -On most distributions they are in a package with the same name. -The following line of shell command splits a flac file according to a cue file. -The `-o` tag specifies the output file format. - -```sh -cuebreakpoints '' | shnsplit -o flac '