1
0
mirror of https://github.com/tiyn/wiki.git synced 2026-03-09 16:44:46 +01:00

Compare commits

..

8 Commits

Author SHA1 Message Date
dcb6698530 speech recognition: added alternative list 2026-02-28 11:04:28 +01:00
467b28c797 added speech recognition and synthesis 2026-02-28 10:10:16 +01:00
2af682fbc7 networkmanager: added prioritization 2026-02-28 09:54:25 +01:00
162781d14d removed html files 2026-02-28 09:50:07 +01:00
803be69021 linux: added appimage 2026-02-28 09:49:46 +01:00
34d31024f2 linux/easyeffects: added new noise suppression 2026-02-28 08:48:31 +01:00
f3ea6e7f04 audio: added spotiflac 2026-02-28 06:01:10 +01:00
cfcb0f24f6 android/grapheneos: added comparison and backup 2026-02-28 05:58:57 +01:00
9 changed files with 100 additions and 293 deletions

View File

@@ -96,13 +96,16 @@ This app is available at [F-Droid](/wiki/android/f-droid.md) as
[Google Play Store](#app-store) by the [Google Play Store](#app-store) by the
[same name](https://f-droid.org/de/packages/org.liberty.android.freeotpplus/). [same name](https://f-droid.org/de/packages/org.liberty.android.freeotpplus/).
### Custom ROMs ### Android-based Operating Systems
Besides the stock-firmware of vendors there are also custom ROMs. Besides the stock-firmware of vendors there are also so called custom ROMs.
These are alternative firmware variants made by third party providers. These are alternative firmware variants made by third party providers.
Well known custom ROMs [LineageOS](/wiki/android/lineageos.md) and Well known custom ROMs [LineageOS](/wiki/android/lineageos.md) and
[GrapheneOS](/wiki/android/grapheneos.md). [GrapheneOS](/wiki/android/grapheneos.md).
A general comparison of different operating systems based on Android can be found in a
[table by eylenburg](https://eylenburg.github.io/android_comparison.htm).
It is possible that some custom ROMs require the user to It is possible that some custom ROMs require the user to
[unlock the bootloader](#unlocking-the-bootloader) before the installation can happen. [unlock the bootloader](#unlocking-the-bootloader) before the installation can happen.

View File

@@ -21,3 +21,12 @@ This section addresses the usage of GrapheneOS.
GrapheneOS features various settings and possibilities for configurations. GrapheneOS features various settings and possibilities for configurations.
A general overview of this was give in a A general overview of this was give in a
[Reddit post by Tryptamine9](https://www.reddit.com/r/GrapheneOS/comments/18te8no/my_ride_through_grapheneos_what_works_and_guide/). [Reddit post by Tryptamine9](https://www.reddit.com/r/GrapheneOS/comments/18te8no/my_ride_through_grapheneos_what_works_and_guide/).
Another recommendation on settings for GrapheneOS can be found in
[a post by ventral digital](https://ventral.digital/posts/2024/12/9/practical-grapheneos-for-the-paranoid/).
### Backup
GrapheneOS features a built-in backup utility.
It can be found in the settings under `System` and `Backup`.
When enabled a recovery code made up by mutliple words have to be stored to be able to restore the
backed up data.

View File

@@ -15,6 +15,11 @@ For voice based communication, social platforms or messengers navigate to the
[section](/wiki/communication.md#social-platforms-messengers-and-voip-services). [section](/wiki/communication.md#social-platforms-messengers-and-voip-services).
For headphones navigate to the [headphones article](/wiki/headphones.md): For headphones navigate to the [headphones article](/wiki/headphones.md):
## Speech Recognition and Synthesis
[Speech recognition and synthesis](/wiki/speech_recognition_and_synthesis.md) describe processes to
understand and convert spoken language to text aswell as the reverse process.
## Technical Specifications ## Technical Specifications
This section aswell as its subsections address all technical things about audio, like connections, This section aswell as its subsections address all technical things about audio, like connections,
@@ -128,6 +133,10 @@ Another option is to use [OpenAudible](/wiki/openaudible.md).
This program features various functions to manage Audible audiobooks that include download, This program features various functions to manage Audible audiobooks that include download,
converting and splitting. converting and splitting.
[SpotiFLAC](https://github.com/afkarxyz/SpotiFLAC) is a software that is able to download Spotify
tracks, albums, artists and playlists as `.flac`-files from Tidal, Qobuz, Amazon Music and Deezer.
An account on any of these services - or any account at all - is not required.
## Digitalizing and Analyzing Physical Mediums ## Digitalizing and Analyzing Physical Mediums
This section focusses on physical audio mediums like CDs, their digitalization to a digital audio This section focusses on physical audio mediums like CDs, their digitalization to a digital audio

21
wiki/linux/appimage.md Normal file
View File

@@ -0,0 +1,21 @@
# AppImage
[AppImage](https://appimage.org/) is a portable Linux application format that allows programs to
run without being installed through a traditional package manager.
## Usage
This section addresses the usage of AppImage files.
### Running and Installing AppImage Files
This section is based on an
[article by Sujit Kumar](https://dev.to/sujit-shrc/install-appimages-on-arch-based-linux-lm2).
AppImages are executed directly as standalone binaries.
To start an application make the AppImage executable using the following command.
`<appimage-path>` is the path to the AppImage file.
```sh
chmod +x <appimage-path>
```

View File

@@ -1,271 +0,0 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>bluez</title>
<style>
/* Default styles provided by pandoc.
** See https://pandoc.org/MANUAL.html#variables-for-html for config info.
*/
html {
color: #1a1a1a;
background-color: #fdfdfd;
}
body {
margin: 0 auto;
max-width: 36em;
padding-left: 50px;
padding-right: 50px;
padding-top: 50px;
padding-bottom: 50px;
hyphens: auto;
overflow-wrap: break-word;
text-rendering: optimizeLegibility;
font-kerning: normal;
}
@media (max-width: 600px) {
body {
font-size: 0.9em;
padding: 12px;
}
h1 {
font-size: 1.8em;
}
}
@media print {
html {
background-color: white;
}
body {
background-color: transparent;
color: black;
font-size: 12pt;
}
p, h2, h3 {
orphans: 3;
widows: 3;
}
h2, h3, h4 {
page-break-after: avoid;
}
}
p {
margin: 1em 0;
}
a {
color: #1a1a1a;
}
a:visited {
color: #1a1a1a;
}
img {
max-width: 100%;
}
svg {
height: auto;
max-width: 100%;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 1.4em;
}
h5, h6 {
font-size: 1em;
font-style: italic;
}
h6 {
font-weight: normal;
}
ol, ul {
padding-left: 1.7em;
margin-top: 1em;
}
li > ol, li > ul {
margin-top: 0;
}
blockquote {
margin: 1em 0 1em 1.7em;
padding-left: 1em;
border-left: 2px solid #e6e6e6;
color: #606060;
}
code {
font-family: Menlo, Monaco, Consolas, 'Lucida Console', monospace;
font-size: 85%;
margin: 0;
hyphens: manual;
}
pre {
margin: 1em 0;
overflow: auto;
}
pre code {
padding: 0;
overflow: visible;
overflow-wrap: normal;
}
.sourceCode {
background-color: transparent;
overflow: visible;
}
hr {
border: none;
border-top: 1px solid #1a1a1a;
height: 1px;
margin: 1em 0;
}
table {
margin: 1em 0;
border-collapse: collapse;
width: 100%;
overflow-x: auto;
display: block;
font-variant-numeric: lining-nums tabular-nums;
}
table caption {
margin-bottom: 0.75em;
}
tbody {
margin-top: 0.5em;
border-top: 1px solid #1a1a1a;
border-bottom: 1px solid #1a1a1a;
}
th {
border-top: 1px solid #1a1a1a;
padding: 0.25em 0.5em 0.25em 0.5em;
}
td {
padding: 0.125em 0.5em 0.25em 0.5em;
}
header {
margin-bottom: 4em;
text-align: center;
}
#TOC li {
list-style: none;
}
#TOC ul {
padding-left: 1.3em;
}
#TOC > ul {
padding-left: 0;
}
#TOC a:not(:hover) {
text-decoration: none;
}
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
div.columns{display: flex; gap: min(4vw, 1.5em);}
div.column{flex: auto; overflow-x: auto;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
/* The extra [class] is a hack that increases specificity enough to
override a similar rule in reveal.js */
ul.task-list[class]{list-style: none;}
ul.task-list li input[type="checkbox"] {
font-size: inherit;
width: 0.8em;
margin: 0 0.8em 0.2em -1.6em;
vertical-align: middle;
}
.display.math{display: block; text-align: center; margin: 0.5rem auto;}
/* CSS for syntax highlighting */
html { -webkit-text-size-adjust: 100%; }
pre > code.sourceCode { white-space: pre; position: relative; }
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
pre > code.sourceCode > span:empty { height: 1.2em; }
.sourceCode { overflow: visible; }
code.sourceCode > span { color: inherit; text-decoration: inherit; }
div.sourceCode { margin: 1em 0; }
pre.sourceCode { margin: 0; }
@media screen {
div.sourceCode { overflow: auto; }
}
@media print {
pre > code.sourceCode { white-space: pre-wrap; }
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
}
pre.numberSource code
{ counter-reset: source-line 0; }
pre.numberSource code > span
{ position: relative; left: -4em; counter-increment: source-line; }
pre.numberSource code > span > a:first-child::before
{ content: counter(source-line);
position: relative; left: -1em; text-align: right; vertical-align: baseline;
border: none; display: inline-block;
-webkit-touch-callout: none; -webkit-user-select: none;
-khtml-user-select: none; -moz-user-select: none;
-ms-user-select: none; user-select: none;
padding: 0 4px; width: 4em;
color: #aaaaaa;
}
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
div.sourceCode
{ }
@media screen {
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
}
code span.al { color: #ff0000; font-weight: bold; } /* Alert */
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
code span.at { color: #7d9029; } /* Attribute */
code span.bn { color: #40a070; } /* BaseN */
code span.bu { color: #008000; } /* BuiltIn */
code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
code span.ch { color: #4070a0; } /* Char */
code span.cn { color: #880000; } /* Constant */
code span.co { color: #60a0b0; font-style: italic; } /* Comment */
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
code span.do { color: #ba2121; font-style: italic; } /* Documentation */
code span.dt { color: #902000; } /* DataType */
code span.dv { color: #40a070; } /* DecVal */
code span.er { color: #ff0000; font-weight: bold; } /* Error */
code span.ex { } /* Extension */
code span.fl { color: #40a070; } /* Float */
code span.fu { color: #06287e; } /* Function */
code span.im { color: #008000; font-weight: bold; } /* Import */
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
code span.kw { color: #007020; font-weight: bold; } /* Keyword */
code span.op { color: #666666; } /* Operator */
code span.ot { color: #007020; } /* Other */
code span.pp { color: #bc7a00; } /* Preprocessor */
code span.sc { color: #4070a0; } /* SpecialChar */
code span.ss { color: #bb6688; } /* SpecialString */
code span.st { color: #4070a0; } /* String */
code span.va { color: #19177c; } /* Variable */
code span.vs { color: #4070a0; } /* VerbatimString */
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
</style>
</head>
<body>
<h1 id="bluez">BlueZ</h1>
<p><a href="http://www.bluez.org/">BlueZ</a> is an implementation of the
<a href="/wiki/bluetooth.md">Bluetooth</a> standard. This entry features
the BlueZ package and all software that is based on it.</p>
<h2 id="setup">Setup</h2>
<p>On most <a href="/wiki/linux.md">Linux</a> distributions BlueZ can be
installed with the <code>bluez</code> package. Additionally the
<code>bluez-utils</code> package needs to be installed. To load the
kernel module <code>modprobe btusb</code> needs to be run. Afterwards
the <a
href="/wiki/linux/systemd.md#startstopenabledisable-a-service">service</a>
can be started and enabled by running the following commands.</p>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="ex">systemctl</span> start bluetooth.service</span>
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a><span class="ex">systemctl</span> enable bluetooth.service</span></code></pre></div>
<h2 id="usage">Usage</h2>
<p>The Bluetooth features can be managed by different types of
front-ends.</p>
<ul>
<li><code>bluetoothctl</code> is a command-line interface included in
the <code>bluez-utils</code> package</li>
<li><code>bluetuith</code> can be used as a bluetooth manager with a <a
href="/wiki/linux/system_console.md">terminal</a> user interface. It is
included in a package of the same name, that needs to be installed
before usage. Using <code>bluetuith</code> the <a
href="/wiki/bluetooth.md">Bluetooth</a> can be turned on (or off) by
pressing <code>o</code>, devices can be searched for by pressing
<code>s</code>, a selected device can be paired by pressing
<code>p</code> and finally connected by pressing <code>c</code> before
<code>bluetuith</code> can be left with <code>Q</code>.</li>
</ul>
</body>
</html>

View File

@@ -1,15 +1,12 @@
# Easyeffects # Easyeffects
[Easyeffects](https://github.com/wwmm/easyeffects) is a free and open-source [Easyeffects](https://github.com/wwmm/easyeffects) is a free and open-source GUI-software for
GUI-software for applying sound effects and filters on input and output audio applying sound effects and filters on input and output audio streams.
streams. Easyeffects uses [Pipewire](./pipewire.md) as [sound server](/wiki/linux/audio.md#sound-server).
Easyeffects uses [Pipewire](./pipewire.md) as
[sound server](/wiki/linux/audio.md#sound-server).
## Setup ## Setup
Easyeffects can be installed on most distributions by installing the Easyeffects can be installed on most distributions by installing the `easyeffects` package.
`easyeffects` package.
An installation via [Flatpak](./flatpak.md) is also possible. An installation via [Flatpak](./flatpak.md) is also possible.
## Usage ## Usage
@@ -19,27 +16,29 @@ Easyeffects can apply `Effects` to input and output sound.
### Noise cancellation ### Noise cancellation
Setup Setup
Noise cancellation can be achieved by installing Noise cancellation can be achieved by installing Easyeffects.
Easyeffects. Make sure to check the box `Process all Inputs` and `Process all Outputs` to route everything
Make sure to check the box `Process all Inputs` and `Process all Outputs` to through `easyeffects`.
route everything through `easyeffects`.
Make log out of your system afterwards. Make log out of your system afterwards.
To enable noise cancellation navigate `Inputs` and click `Plugins`. To enable noise cancellation navigate `Inputs` and click `Plugins`.
After that click `Add Plugin` and select `Noise Reduction`. After that click `Add Plugin` and select `Noise Reduction`.
An alternative way to achieve noise cancellation is using the the `Deep Noise Remover` plugin.
There is a
[guide by Adam Gradzki](https://adamgradzki.com/adding-deepfilternet-noise-reduction-to-easy-effects-on-arch-linux.html)
which describes the setup.
### Presets ### Presets
Presets can be created by selecting `Presets`, setting the name and clicking the Presets can be created by selecting `Presets`, setting the name and clicking the `+` to save it.
`+` to save it.
It is then displayed in the list below from where it can be loaded or deleted. It is then displayed in the list below from where it can be loaded or deleted.
Presets are saved in the directory `~/.config/easyeffects/input` and Presets are saved in the directory `~/.config/easyeffects/input` and
`~/.config/easyeffects/output`. `~/.config/easyeffects/output`.
#### Recommended Presets #### Recommended Presets
The following is a list of presets that have been tested and only need slight The following is a list of presets that have been tested and only need slight configuration to
configuration to adjust them to the specific system. adjust them to the specific system.
- [tiyns voice input preset](https://github.com/tiyn/dotfiles/blob/master/.config/easyeffects/input/voice.json) - [tiyns voice input preset](https://github.com/tiyn/dotfiles/blob/master/.config/easyeffects/input/voice.json)
is a list of different effects to achieve an enhanced quality of microphone is a list of different effects to achieve an enhanced quality of microphone sound for speach.
sound for speach.

View File

@@ -19,7 +19,7 @@ After installation `networkmanager.service` has to be enabled by the used
[init-system](/wiki/linux/init.md) (for example [init-system](/wiki/linux/init.md) (for example
[systemD](/wiki/linux/systemd.md#startstopenabledisable-a-service)). [systemD](/wiki/linux/systemd.md#startstopenabledisable-a-service)).
### OpenVPN ### OpenVPN Integration
NetworkManager needs a plugin to work with openvpn configurations. NetworkManager needs a plugin to work with openvpn configurations.
This plugin can be installed with the `networkmanager-openvpn` package. This plugin can be installed with the `networkmanager-openvpn` package.
@@ -28,6 +28,14 @@ OpenVPNs `.ovpn` files can then be imported by running
`nmcli connection import type openvpn file <openvpn-file>`. `nmcli connection import type openvpn file <openvpn-file>`.
Afterwards they can be modified accordingly. Afterwards they can be modified accordingly.
### Prioritize Connections
Connections can be prioritized making NetworkManager chose specific ones over others.
This can be done using `nm-connection-editor`.
Select the connection and navigate to `General`.
Then set the priority under `Connect automaticcally with priority` where `0` is the highest
priority, `1` being the next highest and so on.
## Troubleshooting ## Troubleshooting
This section focusses on the troubleshooting of situations where the system does not connect This section focusses on the troubleshooting of situations where the system does not connect

View File

@@ -1,6 +1,8 @@
# Package Manager # Package Manager
Package managers are important programs to get software onto your system. Package managers are used to handle the installation and management of programs on systems.
## List of Package Managers
The following is a list of package managers and the corresponding [Linux](/wiki/linux.md) The following is a list of package managers and the corresponding [Linux](/wiki/linux.md)
distributions. distributions.
@@ -9,4 +11,14 @@ distributions.
[Proxmox](/wiki/linux/proxmox.md) use the [APT](/wiki/linux/package_manager/apt.md) package [Proxmox](/wiki/linux/proxmox.md) use the [APT](/wiki/linux/package_manager/apt.md) package
manager. manager.
- [Arch Linux](/wiki/linux/arch-linux.md) and Arch-based distributions use - [Arch Linux](/wiki/linux/arch-linux.md) and Arch-based distributions use
[Pacman]() and various managers for the AUR. [Pacman](/wiki/linux/package_manager/pacman_and_aur.md) and various managers for the AUR.
## Alternative Software Distribution Formats
Besides traditional package managers, there are portable or universal application formats that work
across distributions.
These formats are not package managers.
They distribute standalone applications that can run independently of the system package database.
- [AppImage](/wiki/linux/appimage.md)
- [Flatpak](/wiki/linux/flatpak.md)

View File

@@ -0,0 +1,17 @@
# Speech Recognition and Synthesis
Speech recognition describes the process of understanding and interpreting spoken language.
The most common form of this is speech-to-text (STT) programs, that convert spoken language into
text.
On the other hand speech synthesis describes the artificial production of human speech.
A Text-to-speech (TTS) program is one, that converts an input text to speech.
## Speech-to-Text Programs
The following is a list of STT programs.
- [Nerd Dictation](https://github.com/ideasman42/nerd-dictation/) is an offline speech recognition
software for [Linux](/wiki/linux.md)-based operating systems.
Some alternatives mostly for Linux systems were listed in a
[Reddit post by tuananh_org](https://www.reddit.com/r/archlinux/comments/1j77921/speech_to_text_app/).