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

Compare commits

...

15 Commits

Author SHA1 Message Date
93479aa78d x: added compose key 2025-12-23 08:24:28 +01:00
ac608e09b8 markup languages: included, linked and expanded LaTeX 2025-12-23 03:21:50 +01:00
3d8f4c11c9 fixed typos 2025-12-23 03:13:49 +01:00
866cad47e1 nim: added modules 2025-12-23 03:13:36 +01:00
f82ba017c1 hailo: explained setup better 2025-12-23 03:02:59 +01:00
3bcff627c5 python: added combining tf models 2025-12-23 02:57:02 +01:00
1aa98200dc raspberry pi: added ssh troubleshooting 2025-12-23 02:50:07 +01:00
f7d0ca7f64 hailo: changed structure added resources 2025-12-23 02:45:42 +01:00
1d45041588 fixed typos 2025-12-23 02:31:01 +01:00
68e29c7290 anki: added french a0/a1 grammar resource 2025-12-23 02:30:21 +01:00
8c4f95fd24 linux: added flac compression command 2025-12-23 02:25:40 +01:00
d6785f6694 added kiwix 2025-12-23 02:13:57 +01:00
eb2011ac30 added kiwix 2025-12-23 02:11:35 +01:00
db0822bb6c anki: added styling guide 2025-12-23 02:08:48 +01:00
beb5044107 fixed typo 2025-12-23 02:08:32 +01:00
17 changed files with 329 additions and 81 deletions

View File

@@ -53,3 +53,23 @@ for example.
To change this navigate to the `Options` of a deck and then change `New card sort order` to
`Random` to randomize them before showing them without gathering them randomly.
To change this the `New card gather order` can also be set to `Random notes` or `Random cards`.
### Change Card Style
The layout and the style of the cards can be changed using CSS and HTML.
There are various resources that can be used for this.
One of them is [anki-prettify](https://github.com/pranavdeshai/anki-prettify).
The exact CSS an HTML has to be changed on a per-note base under `Tools`, `Manage Note Types`, and
`Cards` after selecting the corresponding note.
### Resources
The following are useful resources and (shared) decks for learning various languages with Anki.
#### French Resources
The following is a list of French resources.
- [French A0/A1 Anki Deck + Images/Audio/Explanations](https://ankiweb.net/shared/info/1070709392)
is a shared deck for various French grammar and idioms.
It is especially useful since it contains a practical note type for grammar questions.

View File

@@ -6,4 +6,5 @@ It produces citations for the stored records that are used in scholarly research
## Software Solutions
- [Papis](/wiki/linux/papis.md) is a [command-line based](/wiki/linux/shell.md) for
[Linux](/wiki/linux.md) bibliography manager that can be used for LaTeX using the BibTeX format.
[Linux](/wiki/linux.md) bibliography manager that can be used for
[LaTeX](/wiki/markup_language.md#latex) using the BibTeX format.

View File

@@ -0,0 +1,41 @@
# /maintainer/ - /name/
This is a [Docker](/wiki/docker.md) container for a [Kiwix](/wiki/kiwix.md) server.
The official container and documentation was made by
[kiwix](https://github.com/kiwix/kiwix-tools/pkgs/container/kiwix-serve).
## Set-up
Create the file `rebuild.sh`.
Make sure to place the `.zim` files inside the volume.
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 |
| -------------- | ------------------------ | --------- | ------------- |
| `80` | `80` | TCP | WebUI |
## Volumes
Set the following volumes with the -v tag.
| Outside mount/volume name | Container mount | Description |
| ------------------------- | --------------- | -------------- |
| `kiwix_data` | `/data` | Data directory |
## rebuild.sh
```sh
docker stop kiwix-serve
docker rm kiwix-serve
docker pull ghcr.io/kiwix/kiwix-serve
docker run --name kiwix-serve \
--restart unless-stopped \
-v kiwix_data:/data \
-p 80:80 \
-d ghcr.io/kiwix/kiwix-serve \
*.zim
```

View File

@@ -258,14 +258,14 @@ The following are recommended client-side graphical mods.
redstone level of a music disc in game.
- "Rename 'Stem' to 'Log'" from Vanilla Tweaks is a resource pack that changes the Nether woods to
use 'Stem' instead of 'Log'.
- "Icons" is a ressource pack that adds icons into the menu and game.
Additionally "Icons Advertisement Removal" removes the logo of the "Icons" ressource pack.
- "Hoffen's Minimal Armor" is a ressource pack that minimizes the look of armor.
- "Vertical Nuggets" is a ressource pack that flips all nuggets to be vertical.
- "Colorful Canines" is a ressource pack that makes dog armor more colorful.
- "Colorful Sheared Sheep" is a ressource pack that makes the color of sheep wool visible even
- "Icons" is a resource pack that adds icons into the menu and game.
Additionally "Icons Advertisement Removal" removes the logo of the "Icons" resource pack.
- "Hoffen's Minimal Armor" is a resource pack that minimizes the look of armor.
- "Vertical Nuggets" is a resource pack that flips all nuggets to be vertical.
- "Colorful Canines" is a resource pack that makes dog armor more colorful.
- "Colorful Sheared Sheep" is a resource pack that makes the color of sheep wool visible even
after the shearing.
- "Real Arrrow Tip" is a ressource pack that makes the look of arrows correct ingame.
- "Real Arrrow Tip" is a resource pack that makes the look of arrows correct ingame.
The following are recommended client-side audio mods.
@@ -313,8 +313,8 @@ The following are recommended client-side HUD and other UI modifications
- "Scribble" is a mod that makes editing books easier by adding buttons for color, bold font and
more.
- "Chat Patches" is a mod that extends the chat history and adds some more tweaks.
- "Armor Chroma for Fabric" is a ressource pack that shows the type of armor in the bar.
- "Colorful Ping" is a ressource pack that shows the ping symbol in color.
- "Armor Chroma for Fabric" is a resource pack that shows the type of armor in the bar.
- "Colorful Ping" is a resource pack that shows the ping symbol in color.
The following are possible client-side mods that change the gameplay or give other information in
the game.

72
wiki/hailo.md Normal file
View File

@@ -0,0 +1,72 @@
# Hailo
[Hailo](https://hailo.ai) produces AI accelerator chips which are used for deep learning.
An example for a system that uses it is
[Raspberry Pi's AI Hat +](/wiki/linux/raspberry_pi.md#ai-hat).
## Setup
Depending on the system and the type of access various things may have to be setup.
For Ubuntu systems like the [Raspberry Pi](/wiki/linux/raspberry_pi.md) these are often named
`hailort-pcie-driver` and `hailort`.
When using the [Python prorgamming language](/wiki/programming_language/python.md) refer to the
[Hailo section](/wiki/programming_language/python.md#hailo).
## Usage
This section addresses various usages of the Hailo software.
### Preparing TensorFlow Models for the AI HAT+
For [neural networks](/wiki/neural_network.md) to run on the Hailo AI module and the AI HAT+ they
have to be converted to the `.hef` format.
This section assumes the neural network is using
[TensorFlow](/wiki/programming_language/python.md#tensorflow) and is available as a `.tf` or
`.tflite` file.
To convert TensorFlow models first the Hailo 8 Software Suite needs to be downloaded.
This can be done from the [official website](https://hailo.ai/developer-zone/software-downloads/)
altough an account is needed for it.
After downloading, extracting and then navigating into the folder a heavily customized
[Docker](/wiki/docker.md) container can be started by running the following command.
However it is recommended to slightly modify this file.
Add a volume that contains the TensorFlow model, that is to be converted, to the environment
variable `DOCKER_ARGS` which is set in the file `hailo_ai_sw_suite_docker_run.sh`.
```sh
./hailo_ai_sw_suite_docker_run.sh
```
Using the tools which come in this container a `.tf` or `.tflite` model can be converted to the
`.hef` format.
For this to work run the following commands inside the Docker container.
The first command takes the path to the tensorflow model (`<path-to-tf-model>`) and will output a
`.har` model.
The second command is optional but recommended and takes the path to this `.har` model
(`<path-to-har-model`) and returns an optimized `.har` model.
The third and final command compiles the (optimized) `.har` model, which is given as the input, and
outputs the final `.hre` model, which then can be used with the Hailo AI module.
```sh
hailo parser tf <path-to-tf-model>
hailo optimize --use-random-calib-set <path-to-har-model>
hailo compiler <path-to-optimized-har-model>
```
Note that the user in the Docker container usually uses anothr UID and GID.
To make the volume and files accessible inside the container the IDs of the files in the volume
should be changed accordingly - for example as shown in the following example.
`<volume-path>` is the path that points to the volume
`<uid>` is the UID of the Docker user - which can be found using `id -u` (for example `10642`) -
and `<gid>` the GID of the Docker user - which can be found using `id -g` (for example `10600`).
```sh
chown -R <uid>:<gid> <volume-path>
```
After the models have been converted it can be reversed using the systems user UID and GID.
The converted models can than be run using the Python programming language as described in the
[Python article](/wiki/programming_language/python.md#hailo).

24
wiki/kiwix.md Normal file
View File

@@ -0,0 +1,24 @@
# Kiwix
[Kiwix](https://kiwix.org) is a open-source software that allows to save web content like Wikipedia
or Stack Overflow locally and for offline usage.
## Setup
Kiwix is available for different operating systems and can be installed as described
[on the official website](https://kiwix.org/en/applications).
The software can also be setup via [Docker](/wiki/docker.md) with the
[kiwix image](/wiki/docker/kiwix_-_kiwix-serve.md).
## Usage
This section addresses the usage of Kiwix.
### Download content
The content to display using Kiwix has to be acquired as a `.zim` file.
The official collection of these files can be found on the
[official website](https://library.kiwix.org/).
For [Docker](/wiki/docker.md) the `.zim` files need to be placed accordingly to the
[corresponding article](/wiki/docker/kiwix_-_kiwix-serve.md).
After the downloading the files, Kiwix may have to be restarted.

View File

@@ -12,7 +12,41 @@ Another possible tagging software is [MusicBrainz Picard](../picard.md)
## Usage
This section addresses the usage of the flac package.
### Splitting Flac file according to cue file
`shnsplit` can be used to split flac files.
In the [shnsplit article](/wiki/linux/shntool.md) an explanation on this is given.
### Compress or Recompress `.wav` and `.flac` files
`.flac` and `.wav` files can be compressed with the following command.
In this `<wav-flac-file>` is the path to the music file but can also use wildcards (for example
`*.wav`).
`<compression>` is the compression rate.
The highest compression preset is `8`.
```sh
flac -<compression> <wav-flac-file>
```
When recompressing `.flac` files the file does not have to be decoded to encode it again but can be
recompressed in one command.
According to a
[Reddit comment by berdmayne](https://www.reddit.com/r/foobar2000/comments1m3634l/best_way_to_reduce_flac_file_size_without_losing)
the compression rates of the different levels are the following.
| Level | Saving to level 0 | Saving to previous level |
| ---------------- | ------------------- | ------------------------ |
| 0 (uncompressed) | 0.0% | |
| 1 | 0.5% | 0.5% |
| 2 | 0.9% | 0.4% |
| 3 | 5.3% | 4.4% |
| 4 | 6.0% | 0.7% |
| 5 | 6.4% | 0.4% |
| 6 | 6.7% | 0.4% |
| 7 | 6.9% | 0.2% |
| 8 | 7.0% | 0.1% |

View File

@@ -2,7 +2,7 @@
[Papis](/wiki/linux/papis.md) is a [command-line based](/wiki/linux/shell.md) for
[Linux](/wiki/linux.md) [bibliography manager](/wiki/bibliographic_software.md) that can be used
for LaTeX using the BibTeX format.
for [LaTeX](/wiki/markup_language.md#latex) using the BibTeX format.
## Setup

View File

@@ -33,62 +33,15 @@ This section addresses them.
### AI HAT+
The [AI HAT](https://www.raspberrypi.com/documentation/accessories/ai-hat-plus.html) is an
extension which uses the Hailo AI module for use with the [Raspberry Pi
5](https://www.raspberrypi.com/products/raspberry-pi-5).
extension which uses the [Hailo AI module](/wiki/hailo.md) for use with the
[Raspberry Pi 5](https://www.raspberrypi.com/products/raspberry-pi-5).
#### AI HAT+ Usage
## Troubleshooting
This section addresses the usage of the
[AI HAT](https://www.raspberrypi.com/documentation/accessories/ai-hat-plus.html).
This section addresses the usage of Raspberry Pi systems.
#### Preparing TensorFlow Models for the AI HAT+
### SSH Servera Not Starting for Imager Setups
For [neural networks](/wiki/neural_network.md) to run on the Hailo AI module and the AI HAT+ they
have to be converted to the `.hef` format.
This section assumes the neural network is using
[TensorFlow](/wiki/programming_language/python.md#tensorflow) and is available as a `.tf` or
`.tflite` file.
To convert TensorFlow models first the Hailo 8 Software Suite needs to be downloaded.
This can be done from the [official website](https://hailo.ai/developer-zone/software-downloads/)
altough an account is needed for it.
After downloading, extracting and then navigating into the folder a heavily customized
[Docker](/wiki/docker.md) container can be started by running the following command.
However it is recommended to slightly modify this file.
Add a volume that contains the TensorFlow model, that is to be converted, to the environment
variable `DOCKER_ARGS` which is set in the file `hailo_ai_sw_suite_docker_run.sh`.
```sh
./hailo_ai_sw_suite_docker_run.sh
```
Using the tools which come in this container a `.tf` or `.tflite` model can be converted to the
`.hef` format.
For this to work run the following commands inside the Docker container.
The first command takes the path to the tensorflow model (`<path-to-tf-model>`) and will output a
`.har` model.
The second command is optional but recommended and takes the path to this `.har` model
(`<path-to-har-model`) and returns an optimized `.har` model.
The third and final command compiles the (optimized) `.har` model, which is given as the input, and
outputs the final `.hre` model, which then can be used with the Hailo AI module.
```sh
hailo parser tf <path-to-tf-model>
hailo optimize --use-random-calib-set <path-to-har-model>
hailo compiler <path-to-optimized-har-model>
```
Note that the user in the Docker container usually uses anothr UID and GID.
To make the volume and files accessible inside the container the IDs of the files in the volume
should be changed accordingly - for example as shown in the following example.
`<volume-path>` is the path that points to the volume
`<uid>` is the UID of the Docker user - which can be found using `id -u` (for example `10642`) -
and `<gid>` the GID of the Docker user - which can be found using `id -g` (for example `10600`).
```sh
chown -R <uid>:<gid> <volume-path>
```
After the models have been converted it can be reversed using the systems user UID and GID.
Sometimes the [imager](#setup) can run into errors which does not set up the
[SSH](/wiki/linux/openssh.md) server on the Pi correctly.
In this case the SSH server needs to be started manually by display and keyboard.

View File

@@ -23,14 +23,14 @@ One of them is `slock` by [suckless](/wiki/linux/suckless.md).
This will stand in as a screen locker for this section.
The screen can be run by simply running the following command.
```sh
```sh
slock
```
By default this will not be run automatically when the computer goes into sleep.
This can be changed by installing and using `xss-lock` like the following example shows.
```sh
```sh
xss-lock -- slock &
```
@@ -74,7 +74,7 @@ can be used that uses `synclient TouchpadOff=1` or `synclient TouchpadOff=0`.
This requires `xf86-input-synaptics` which is a synaptics driver for
notebook touchpads.
##### Enable Tap to Click
##### Enable Tap to Click
On Touchpads the tap to click option can be enabled by adding the following lines to the config
file `/etc/X11/xorg.conf.d/99-synaptics-overrides.conf`.
@@ -108,6 +108,25 @@ setxkbmap -query | grep -q '<layout 1>' && setxkbmap <layout 2> || setxkbmap <la
Using [SXHKD](/wiki/linux/sxhkd.md) a hotkey can be setup to seamlessly transition between the two
layouts.
##### Write Diacritics and Ligatures
In many languages there are ligatures (for example `œ`) and diacritics (for example `ç`).
An easy way to write them is by using the compose button.
Using the compose button these special symbols can be composed from their parts.
The `ç` can be written by chaining compose with `,` and `c`.
The `œ` can be written by chaining compose with `o` and `e`.
There are many other diacritics and ligatures that can be written this way.
To temporarily set up a compose key the following command can be used.
It will set the given key `<compose>` (for example the right control key with `rctrl`) to act as
the compose key when tapped.
`<layout>` specifies the layout of the keymap (for example german with `de`).
If it is omitted the english `en` layout will be set.
```sh
setxkbmap -layout <layout> -option compose:<compose>
```
#### Display
This section describes the handling of displays by X.
@@ -135,7 +154,7 @@ EndSection
This can be disabled temporarily by running `xset s off`.
The screen can also be turned off instantly with the command `xset dpms force off`.
If `OffTime` does not work add the following to the file `/etc/X11/xorg.conf.d/dpms.conf.
If `OffTime` does not work add the following to the file `/etc/X11/xorg.conf.d/dpms.conf`.
```txt
Section "ServerFlags"
@@ -147,8 +166,8 @@ Another option to do this is by using the command `xset`.
An example for this are the follwing commands which will enable the screensaver to act upon 10
minutes of inactivity.
```sh
xset s on
```sh
xset s on
xset s 600
```
@@ -236,7 +255,7 @@ an [Arch Linux](/wiki/linux/arch-linux.md)
[forum post](https://bbs.archlinux.org/viewtopic.php?id=294808).
To fix this you can run the following commands to temporarily make the file picker work.
```sh
```sh
systemctl --user import-environment DISPLAY XAUTHORITY
systemctl --user restart xdg-desktop-portal
```

View File

@@ -2,7 +2,8 @@
[LTeX](https://valentjn.github.io/ltex/index.html) is an offline grammar checking tool that can use
the Language Server Protocol - short LSP.
It is supports various [Markup languages](/wiki/markup_language.md) like LaTeX and Markdown.
It is supports various [Markup languages](/wiki/markup_language.md) like
[LaTeX](/wiki/markup_language.md#latex) and Markdown.
## Setup
@@ -48,8 +49,8 @@ onwards.
```
However this can be difficult when only using a few words.
Another easy and generally recommended way to change the language inside LaTeX documents is using
the babel package.
Another easy and generally recommended way to change the language inside
[LaTeX](/wiki/markup_language.md#latex) documents is using the babel package.
In the following examples `<language>` is the language indicator that babel uses (for example
`english`, `american`, `ngerman`).

View File

@@ -1,7 +1,7 @@
# Markup Language
A markup Language is way to encode text so that it has great amounts of structure and formatting.
The most common markup languages are [HTML](#html), Markdown, LaTeX and [XML](#xml).
The most common markup languages are [HTML](#html), Markdown, [LaTeX](#latex) and [XML](#xml).
Markup languages can be used for [note-taking](/wiki/note-taking.md).
Adding to normal markdown files, there are also `.mdx` files which allows the usage of JavaScripts
JSX in the markdown content for displaying charts and more.
@@ -28,3 +28,15 @@ One of the most used ones is the
### XML
XML is a markup language often used together with [RSS Feeds](/wiki/rss.md).
### LaTeX
LaTeX provides a high-level, descriptive markup language.
It is mostly used in the scientific community but can be used for many things and as an alternative
to [Microsoft Word](/wiki/office_suite.md#programs).
LaTeX also features many different packages.
The following list contains some examples of it.
- [ZUGFeRD](https://ctan.org/pkg/zugferd) is a package for creating invoices.
- [Awesome-CV](https://github.com/posquit0/Awesome-CV) is a package for creating job applications.

View File

@@ -10,6 +10,7 @@ The following list shows various ways of digital note-taking.
- [saber](https://github.com/saber-notes/saber) is a cross-platform app - available for
[Android](/wiki/android.md), [Windows](/wiki/windows.md), MacOS and [Linux](/wiki/linux.md).
It is mainly used for handwriting notes and annotating PDFs and images.
- [Markup](/wiki/markup_language.md) languages like Markdown or LaTeX can be used to type notes.
- [Markup](/wiki/markup_language.md) languages like Markdown or
[LaTeX](/wiki/markup_language.md#latex) can be used to type notes.
An easy template that combines the simplicity of Markdown and the features of LaTeX is
[the Eisvogel Panoc-Latex-Template](https://github.com/Wandmalfarbe/pandoc-latex-template).

View File

@@ -10,7 +10,8 @@ This section focusses on the usage of Pandoc.
### Converting MS Word to LaTeX
By using the following command a proprietary Microsoft Word document (named `input.docx` in this
example) can be converted to a file in LaTeX-Format (in this example named `output.tex`).
example) can be converted to a file in [LaTeX](/wiki/markup_language.md#latex)-Format (in this
example named `output.tex`).
```sh
pandoc input.docx -o output.tex

View File

@@ -11,7 +11,7 @@ The following is a list of these tools.
It can be used on dual screen setup to give the presenter an additional slide for comments.
- PDF files can easily be used for presenting cross-platform but often used for
[Linux-based operating systems](/wiki/linux.md).
They can easily be generated by LaTeX.
They can easily be generated by [LaTeX](/wiki/markup_language.md#latex).
- [pympress](https://github.com/Cimbali/pympress) is a cross-platform tool for the presentation via
PDF files.
It is also usable for dual screen setups.

View File

@@ -8,3 +8,39 @@ language.
You can install nim using choosenim with
`curl https://nim-lang.org/choosenim/init.sh -sSf | sh`.
If you're on an arch-based machine you can also run `yay -S choosenim` (install `yay` if necessary).
## Usage
This section addresses the usage of Nim.
### Use Python Packages
[Python modules](/wiki/programming_language/python.md#modules) can easily be used in Nim using the
module [nimpy](#nimpy).
## Modules
There are various modules for Nim.
As package manager `nimble` is used most of the time.
This section addresses various different modules.
### Arraymancer
[Arraymancer](https://github.com/mratsim/Arraymancer) is a tensor library for Nim which can be used
to run deep learning on CPUs, GPUs and embedded devices.
### nimpy
[nimpy](https://github.com/yglukhov/nimpy) is a [Python](/wiki/programming_language/python.md)
bridge for the Nim programming languages.
With it [Python modules](/wiki/programming_language/python.md#modules) can be used easily inside
Nim.
### SciNim
[SciNim](https://github.com/SciNim) is a collection of modules more than a single one.
It features various tools for scientific purposes from curve fitting to data visualization.
An overview of it can be achieved on the
[getting-started repository](https://github.com/SciNim/getting-started/blob/main/book/overview/index.md).

View File

@@ -147,7 +147,7 @@ directory.
## Modules
There are various modules and package managers to install these for python like
There are various modules and package managers to install these for Python like
`pip`.
For this usually a virtual environment is needed - as it is described in
[the setup section](#setup).
@@ -159,6 +159,8 @@ If it doesnt work the packages can be installed globally using `pip` together wi
`--break-system-packages` flag.
This flag is to be used with care.
This section addresses various different modules.
### PyTorch
This section addresses the [PyTorch module](https://pytorch.org/).
@@ -189,6 +191,22 @@ torch.cuda.is_available()
This should give back `True`.
### Hailo
The package for [Hailo chips](/wiki/hailo.md) has to be downloaded from the
[official website](https://hailo.ai/developer-zone/software-downloads).
Additionally additional setup may be required as explained in the
[Hailo article](/wiki/hailo.md#setup)
Hailo chips can be used to run converted [TensorFlow](#tensorflow) models.
The conversion process is explained in the
[Hailo article](/wiki/hailo.md#preparing-tensorflow-models-for-the-ai-hat)
To run the inference using Python on ARM boards like the
[Raspberry Pi AI Hat +](/wiki/linux/raspberry_pi.md#ai-hat)
[zlodeibaal's article in Medium](https://medium.com/@zlodeibaal/how-to-run-hailo-on-arm-boards-d2ad599311fa)
can be referenced.
### TensorFlow
This section addresses the [TensorFlow module](https://www.tensorflow.org/).
@@ -204,3 +222,18 @@ Additionally it is noted that the dataset may have to be shuffled manually as de
Finally
[a Medium blog post](https://medium.com/@danielonugha0/how-to-change-the-learning-rate-of-tensorflow-b5d854819050)
describes how to easily change the learning rate.
#### Combining Models
Models that are normally run in sequence but trained and saved separately can be easily be combined
into a single model.
This can have some advantages, for example when using inteference for deep learning on Edge TPUs
like the [Hailo chips](/wiki/hailo.md) or the [EPS32S3](/wiki/microcontroller.md#esp32).
A simple example for the combination of two models (`model1` and `model2`) into a new model
(`combined_model`) is the following code.
```sh
output = model2(model1.output)
combined_model = tf.keras.models.Model(inputs=model1.input, outputs=output)
```