mirror of
https://codeberg.org/postscriptum/gemlog.git
synced 2026-02-18 22:12:40 +00:00
initial commit
This commit is contained in:
commit
259fee630b
127 changed files with 7811 additions and 0 deletions
33
public/en/briar-collection.gmi
Normal file
33
public/en/briar-collection.gmi
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# Briar collection
|
||||
|
||||
## Stanwell
|
||||
|
||||
### No.98, Relief Lovat, Sand
|
||||
|
||||
=> https://www.danishpipeshop.com/d/Stanwell-Relief-98-Lovat-Sand-i30424.html The Danish Pipe Shop
|
||||
|
||||
### No.107, Royal Guard, Petit Billard
|
||||
|
||||
=> https://www.danishpipeshop.com/d/Stanwell-Royal-Guard-107-Petit-Billard-i1327.html The Danish Pipe Shop
|
||||
|
||||
## Georg Jensen
|
||||
|
||||
### No.35
|
||||
|
||||
=> https://www.danishpipeshop.com/d/Estate-My-Own-Blend-Billard-Presmoked-i31145.html The Danish Pipe Shop
|
||||
|
||||
### No.43
|
||||
|
||||
=> https://www.danishpipeshop.com/d/Estate-Georg-Jensen-Granat-Bent-Billard-Presmok-i31375.html The Danish Pipe Shop
|
||||
|
||||
## Savinelli
|
||||
|
||||
### No.628, Oscar Tiger
|
||||
|
||||
=> https://b2b.savinelli.it/savinelli-oscar-tiger-rusticata-628-p104tz-628.html Official Website
|
||||
|
||||
## Tsuge
|
||||
|
||||
### Bamboo
|
||||
|
||||
=> https://tsugepipe.co.jp/1/13/ツゲ・バンブー・ストレート・サンド/ Official Website
|
||||
13
public/en/build-lagrange-with-webp-and-mpeg-support.gmi
Normal file
13
public/en/build-lagrange-with-webp-and-mpeg-support.gmi
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# Build Lagrange with WEBP and MPEG support
|
||||
|
||||
``` bash
|
||||
apt install git cmake zip libsdl2-dev libssl-dev libpcre3-dev zlib1g-dev libunistring-dev libfribidi-dev libmpg123-dev
|
||||
git clone --recursive --branch release https://git.skyjake.fi/gemini/lagrange
|
||||
cd lagrange
|
||||
mkdir build
|
||||
cd build
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release -DENABLE_WEBP=YES -DENABLE_MPG123=YES
|
||||
cmake --build .
|
||||
chmod +x lagrange
|
||||
./lagrange
|
||||
```
|
||||
9
public/en/cli-gemini-cheat-sheet.gmi
Normal file
9
public/en/cli-gemini-cheat-sheet.gmi
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# CLI Gemini cheat sheet
|
||||
|
||||
### Get raw server response
|
||||
|
||||
``` bash
|
||||
echo -e "gemini://gemini.circumlunar.space:1965/\r\n" | openssl s_client -connect gemini.circumlunar.space:1965 -ign_eof
|
||||
```
|
||||
|
||||
=> gemini://bbs.geminispace.org/u/stack/25283 Source
|
||||
44
public/en/connect-i2p-with-yggdrasil.gmi
Normal file
44
public/en/connect-i2p-with-yggdrasil.gmi
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
# Connect I2P with Yggdrasil
|
||||
|
||||
Access the I2P network without installing its i2pd router.
|
||||
|
||||
## FireFox / LibreWolf
|
||||
|
||||
### PAC file
|
||||
|
||||
Settings > Network Settings > Automatic proxy configuration URL > file:///path/to/route.pac
|
||||
|
||||
``` route.pac
|
||||
function FindProxyForURL(url, host)
|
||||
{
|
||||
if (/\.(i2p|onion)$/.test(host))
|
||||
{
|
||||
// HTTP
|
||||
return 'PROXY [324:71e:281a:9ed3::fa11]:3128';
|
||||
|
||||
// SOCKS5
|
||||
// return 'SOCKS5 [324:71e:281a:9ed3::fa11]:1080';
|
||||
}
|
||||
}
|
||||
```
|
||||
* an example above uses the outproxy.acetone.*
|
||||
|
||||
### DNS
|
||||
|
||||
Enter to the URL `about:config`, then add following records:
|
||||
|
||||
* browser.fixup.domainsuffixwhitelist.i2p
|
||||
* browser.fixup.domainsuffixwhitelist.onion
|
||||
|
||||
### Test
|
||||
|
||||
=> http://proxy4uwdijqxac2bvdx4fuhem6njmiwukuk2gelejv2nzxka2xq.b32.i2p
|
||||
|
||||
## Feedback
|
||||
|
||||
=> gemini://bbs.geminispace.org/s/Yggdrasil/29406 Discussion on BBS
|
||||
=> http://[302:68d0:f0d5:b88d::fed]/ps/p/1750540695.117515 Comment on the Fediverse instance
|
||||
|
||||
## See also
|
||||
|
||||
=> connect-libera-chat-with-yggdrasil.gmi Connect Libera.Chat with Yggdrasil
|
||||
40
public/en/connect-libera-chat-with-yggdrasil.gmi
Normal file
40
public/en/connect-libera-chat-with-yggdrasil.gmi
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# Connect Libera.Chat with Yggdrasil
|
||||
|
||||
## Proxy
|
||||
|
||||
I didn't find any official Libera.Chat API for this network:
|
||||
=> https://libera.chat/guides/connect
|
||||
|
||||
### Halloy
|
||||
|
||||
Halloy - is the modern IRC client, written in Rust:
|
||||
=> https://halloy.chat
|
||||
|
||||
The configuration example below uses Acetone's SOCKS5 proxy:
|
||||
=> http://[324:71e:281a:9ed3::fa11]
|
||||
|
||||
TLS option is not required here, as Yggdrasil provides encrypted end-to-end connections out of the box.
|
||||
|
||||
``` config.toml
|
||||
[servers.libera]
|
||||
nickname = "NAME"
|
||||
server = "irc.libera.chat"
|
||||
port = 6667
|
||||
use_tls = false
|
||||
channels = ["#yggdrasil","#misfin"]
|
||||
|
||||
[proxy.socks5]
|
||||
host = "324:71e:281a:9ed3::fa11"
|
||||
port = 1080
|
||||
```
|
||||
* replace `nickname` and `channels` with your value
|
||||
|
||||
## Feedback
|
||||
|
||||
=> gemini://bbs.geminispace.org/s/Yggdrasil/29597 Discussion on BBS
|
||||
=> https://wizard.casa/post/0197a9cd-abaf-7949-f53c-2e0b25d0ba13 Comment on the Fediverse (Internet) instance
|
||||
=> http://[302:68d0:f0d5:b88d::fed]/ps/p/1750900519.824742 Comment on the Fediverse (Yggdrasil) instance
|
||||
|
||||
## See also
|
||||
|
||||
=> connect-i2p-with-yggdrasil.gmi Connect I2P with Yggdrasil
|
||||
10
public/en/connect-remote-storage-in-vlc-with-sftp.gmi
Normal file
10
public/en/connect-remote-storage-in-vlc-with-sftp.gmi
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# Connect remote storage in VLC with SFTP
|
||||
|
||||
``` ~/.config/vlc/vlcrc
|
||||
sftp-port=22
|
||||
sftp-user=user
|
||||
sftp-pwd=password
|
||||
```
|
||||
|
||||
* Ctrl+N to open network connection
|
||||
* Ctrl+L to open playlist menu
|
||||
14
public/en/create-local-website-mirror-using-wget.gmi
Normal file
14
public/en/create-local-website-mirror-using-wget.gmi
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
# Create local website mirror using wget
|
||||
|
||||
``` bash
|
||||
wget -mpEk "url"
|
||||
```
|
||||
|
||||
## Assets
|
||||
|
||||
### zabytki.in.ua
|
||||
|
||||
``` bash
|
||||
wget -mpEk --domains=pbs.twimg.com --wait=1 https://zabytki.in.ua/community/
|
||||
```
|
||||
* --span-hosts is not an option here!
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
# CSS color-scheme in FireFox on FPR enabled
|
||||
|
||||
This CSS attribute ignored on the `resistFingerprinting` option is enabled in FireFox / LibreWolf:
|
||||
|
||||
``` css
|
||||
color-scheme: light dark;
|
||||
```
|
||||
|
||||
To resolve, I'm using following asset in the `about:config`:
|
||||
|
||||
```
|
||||
privacy.resistFingerprinting = false
|
||||
privacy.fingerprintingProtection = true
|
||||
privacy.fingerprintingProtection.overrides = +AllTargets,-CSSPrefersColorScheme
|
||||
```
|
||||
|
||||
=> https://bugzilla.mozilla.org/show_bug.cgi?id=1732114
|
||||
21
public/en/custom-dns-resolver-on-debian-12.gmi
Normal file
21
public/en/custom-dns-resolver-on-debian-12.gmi
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
# Custom DNS resolver on Debian 12
|
||||
|
||||
Add name server:
|
||||
|
||||
``` /etc/resolv.conf
|
||||
nameserver xx.xx.xx.xx
|
||||
```
|
||||
|
||||
Disable settings overwrite on system reboot:
|
||||
|
||||
``` /etc/dhcp/dhclient.conf
|
||||
# domain-name, domain-name-servers, domain-search, host-name,
|
||||
# dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
|
||||
```
|
||||
|
||||
Alternatively:
|
||||
|
||||
``` /etc/NetworkManager/NetworkManager.conf
|
||||
[main]
|
||||
dns=none
|
||||
```
|
||||
30
public/en/dark-theme-support-in-gtk-3-apps.gmi
Normal file
30
public/en/dark-theme-support-in-gtk-3-apps.gmi
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# Dark theme support in GTK 3 apps
|
||||
|
||||
Some old applications, like Rhythmbox, do not support the GTK 4 / Adwaita theme on modern distributions like Fedora.
|
||||
|
||||
Even though there are many solutions available,
|
||||
I'm using this simple fix that requires just an application restart after making the change:
|
||||
|
||||
``` ~/.config/gtk-3.0/settings.ini
|
||||
[Settings]
|
||||
gtk-application-prefer-dark-theme=1
|
||||
```
|
||||
|
||||
## Integrations
|
||||
|
||||
### CSS patch for i3wm
|
||||
|
||||
Also, found this file in my backup folder, so let's keep it here, as it may be needed elsewhere (suppose in i3wm case)
|
||||
|
||||
``` ~/.config/gtk-3.0/gtk.css
|
||||
.window-frame {
|
||||
box-shadow: none;
|
||||
margin: 0;
|
||||
}
|
||||
```
|
||||
|
||||
### Adwaita theme port
|
||||
|
||||
Personally, I'm not using it, but it would be helpful at some point:
|
||||
|
||||
=> https://github.com/lassekongo83/adw-gtk3
|
||||
17
public/en/disable-led-on-hator-htm-312.gmi
Normal file
17
public/en/disable-led-on-hator-htm-312.gmi
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# Disable LED on Hator HTM-312
|
||||
|
||||
Got this used mouse for free.
|
||||
|
||||
Shining rainbow there distracting, and official documentation say nothing about how to setup but additional software installation for Windows.
|
||||
|
||||
Here is solution to switch or turn off the LED mode, brute forced by random combinations:
|
||||
|
||||
* press middle wheel button
|
||||
* then click left button
|
||||
* then forward button
|
||||
|
||||
## Experience
|
||||
|
||||
I like the clickers in this mouse but can't use it. On scrolling up, wheel sounds ugly, so that is hardware issue I can't resolve.
|
||||
|
||||
Best choice for PC is Logitech.
|
||||
13
public/en/disable-new-windows-auto-focus-in-gnome.gmi
Normal file
13
public/en/disable-new-windows-auto-focus-in-gnome.gmi
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# Disable new windows auto-focus in GNOME
|
||||
|
||||
``` bash
|
||||
gsettings set org.gnome.desktop.wm.preferences focus-new-windows 'strict'
|
||||
```
|
||||
|
||||
optionally:
|
||||
|
||||
``` bash
|
||||
gsettings set org.gnome.desktop.wm.preferences auto-raise 'true'
|
||||
```
|
||||
|
||||
see also dconf-editor GUI.
|
||||
5
public/en/enable-archive-context-menu-in-thunar.gmi
Normal file
5
public/en/enable-archive-context-menu-in-thunar.gmi
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# Enable archive context menu in Thunar
|
||||
|
||||
``` bash
|
||||
apt install thunar-archive-plugin
|
||||
```
|
||||
37
public/en/favorite-computer-games.gmi
Normal file
37
public/en/favorite-computer-games.gmi
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
# Favorite computer games
|
||||
|
||||
## SEGA
|
||||
|
||||
* Aladdin
|
||||
* Desert Strike
|
||||
* Dune
|
||||
* Ecco the Dolphin
|
||||
* Mortal Combat
|
||||
* Sonic
|
||||
* Taz-Mania
|
||||
* The Lion King
|
||||
* WWF Wrestlemania
|
||||
|
||||
## PS
|
||||
|
||||
* Parasite Eve 2
|
||||
* Silent Hill
|
||||
|
||||
## PC
|
||||
|
||||
* Cabela's 4x4 Off-Road Adventure
|
||||
* Disciples 2
|
||||
* Fallout 2
|
||||
* Ghotic
|
||||
* GTA Vice City
|
||||
* Hitman
|
||||
* IL-2
|
||||
* Mafia 1
|
||||
* Postal 2
|
||||
* Richard Burns Rally
|
||||
* Vampire: The Masquerade – Bloodlines
|
||||
* War Thunder
|
||||
|
||||
## Mobile
|
||||
|
||||
* TES Legends
|
||||
25
public/en/favorite-movies.gmi
Normal file
25
public/en/favorite-movies.gmi
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
# Favorite movies
|
||||
|
||||
## 2021
|
||||
|
||||
=> https://www.imdb.com/title/tt12322986/ Petite nature (Softie)
|
||||
|
||||
## 2019
|
||||
|
||||
=> https://www.imdb.com/title/tt7286456/ Joker
|
||||
|
||||
## 2003
|
||||
|
||||
=> https://www.imdb.com/title/tt0364569/ Oldeuboi (Oldboy)
|
||||
|
||||
## 2002
|
||||
|
||||
=> https://www.imdb.com/title/tt0253474/ The Pianist
|
||||
|
||||
## 1994
|
||||
|
||||
=> https://www.imdb.com/title/tt0110413/ Léon
|
||||
|
||||
## 1980
|
||||
|
||||
=> https://www.imdb.com/title/tt0080455/ The Blues Brothers
|
||||
95
public/en/favorite-music.gmi
Normal file
95
public/en/favorite-music.gmi
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
# Favorite music
|
||||
|
||||
## Clann
|
||||
|
||||
Dark Ambient, Dream-Pop
|
||||
|
||||
=> https://hy-records.com/pages/clann Official website
|
||||
|
||||
## Burshtyn
|
||||
|
||||
Black Metal
|
||||
|
||||
=> https://uk.wikipedia.org/wiki/Burshtyn Wikipedia
|
||||
=> favorite-music/burshtyn.gmi Best
|
||||
|
||||
## Igorrr
|
||||
|
||||
Alternative, Electronic, Rock
|
||||
|
||||
=> https://igorrr.com/ Official website
|
||||
=> favorite-music/igorrr.gmi Best
|
||||
|
||||
## Kate Tempest
|
||||
|
||||
Hip-Hop, Spoken-Word
|
||||
|
||||
=> https://www.kaetempest.co.uk/ Official website
|
||||
|
||||
## Kauan
|
||||
|
||||
Ambient, Doom Metal, Post-Rock
|
||||
|
||||
=> https://kauanmusic.com/ Official website
|
||||
=> favorite-music/kauan.gmi Best
|
||||
|
||||
## Lorde
|
||||
|
||||
Pop, Indie
|
||||
|
||||
=> https://www.lorde.co.nz/ Official website
|
||||
|
||||
## Meg Myers
|
||||
|
||||
Pop, Indie, Rock
|
||||
|
||||
=> http://megmyers.com/ Official website
|
||||
|
||||
### Best
|
||||
|
||||
=> https://music.youtube.com/watch?v=Xvh_0CuMMtM Heart Heart Head (2013)
|
||||
|
||||
## Nina Hagen
|
||||
|
||||
Punk, Post-Punk
|
||||
|
||||
=> https://en.wikipedia.org/wiki/Nina_Hagen Wikipedia
|
||||
|
||||
## Placebo
|
||||
|
||||
Alternative, Rock
|
||||
|
||||
=> https://www.placeboworld.co.uk/ Official website
|
||||
|
||||
## Rubio
|
||||
|
||||
Indie, Pop
|
||||
|
||||
=> https://music.youtube.com/channel/UCciW7qvUK5molS0SiZE4f4A Youtube Music Channel
|
||||
|
||||
### Best
|
||||
|
||||
=> https://music.youtube.com/watch?v=SQR1zzpjlHU Árboles (2018)
|
||||
|
||||
## Pačess
|
||||
|
||||
Punk, Metal
|
||||
|
||||
=> https://www.pacess.cz/ Official website
|
||||
=> favorite-music/pacess.gmi Best
|
||||
|
||||
## Steve Roach
|
||||
|
||||
Ambient, Electronic
|
||||
|
||||
=> https://steveroach.bandcamp.com/ BandCamp
|
||||
|
||||
## Till Lindemann
|
||||
|
||||
Electro-industrial, Industrial metal, Neue Deutsche Härte
|
||||
|
||||
=> https://www.rammstein.de/ Official website
|
||||
|
||||
### Best
|
||||
|
||||
=> https://www.youtube.com/watch?v=hPdDFx89fRs Übers Meer
|
||||
22
public/en/favorite-music/burshtyn.gmi
Normal file
22
public/en/favorite-music/burshtyn.gmi
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
# Burshtyn
|
||||
|
||||
Black Metal
|
||||
|
||||
=> https://uk.wikipedia.org/wiki/Burshtyn Wikipedia
|
||||
|
||||
## Best
|
||||
|
||||
### Безвірник (2017)
|
||||
|
||||
* 5000 Вердену
|
||||
* Коловорот
|
||||
* Тризуб мій стяг, тризуб мій горн
|
||||
|
||||
### Чортория (2020)
|
||||
|
||||
* Її Натхнення Пектораль
|
||||
* Сатанів
|
||||
|
||||
### Апокриф (2023)
|
||||
|
||||
* Гонтина
|
||||
15
public/en/favorite-music/igorrr.gmi
Normal file
15
public/en/favorite-music/igorrr.gmi
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
# Igorrr
|
||||
|
||||
Alternative, Electronic, Rock
|
||||
|
||||
=> https://igorrr.com/ Official website
|
||||
|
||||
## Best
|
||||
|
||||
### Moisissure (2009)
|
||||
|
||||
* Valse en Décomposition
|
||||
|
||||
### Savage Sinusoid (2017)
|
||||
|
||||
* Houmous
|
||||
26
public/en/favorite-music/kauan.gmi
Normal file
26
public/en/favorite-music/kauan.gmi
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
# Kauan
|
||||
|
||||
Ambient, Doom Metal, Post-Rock
|
||||
|
||||
=> https://kauanmusic.com/ Official website
|
||||
|
||||
## Best
|
||||
|
||||
### Kuu.. (2011)
|
||||
|
||||
* Ikuinen Junan Kulku
|
||||
* Suora Liila Sydänkäyrä
|
||||
|
||||
### Ice Fleet (2021)
|
||||
|
||||
* Maanpako
|
||||
|
||||
### Lumikuuro (Live, 2022)
|
||||
|
||||
* Lumikuuro
|
||||
* Äidin Laulu
|
||||
* Koivun Elämä
|
||||
|
||||
### ATM Revised (2023)
|
||||
|
||||
* Sokea Sisar
|
||||
13
public/en/favorite-music/pacess.gmi
Normal file
13
public/en/favorite-music/pacess.gmi
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# Pačess
|
||||
|
||||
Punk, Metal
|
||||
|
||||
=> https://www.pacess.cz/ Official website
|
||||
|
||||
## Best
|
||||
|
||||
### Absolutno (2023)
|
||||
|
||||
* 33
|
||||
* Travěncové
|
||||
* Vavřín
|
||||
33
public/en/favorite-radio-stations.gmi
Normal file
33
public/en/favorite-radio-stations.gmi
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# Favorite radio stations
|
||||
|
||||
## SomaFM
|
||||
|
||||
Over 30 unique channels of listener-supported, commercial-free, underground/alternative radio broadcasting to the world. All music hand-picked by SomaFM's award-winning DJs and music directors.
|
||||
|
||||
### Deep Space One
|
||||
|
||||
Deep ambient electronic, experimental and space music. Music for getting lost in space, or just exploring. Tracks with a tempo usually too slow for Space Station Soma, but too fast for Drone Zone.
|
||||
|
||||
=> https://somafm.com/deepspaceone
|
||||
|
||||
### SF 10-33
|
||||
|
||||
Live fire/police scanner audio from San Francisco processed and mixed with ambient and experimental music. A surreal audio zeitgeist of the city.
|
||||
|
||||
=> https://somafm.com/sf1033
|
||||
|
||||
### Seven Inch Soul
|
||||
|
||||
Drawing from the extensive vinyl collection of DJ Dion "The Watts" Garcia, you'll hear the greatest soul singles that were ever released... and with a few exceptions all are from the original vinyl 45rpm releases.
|
||||
|
||||
=> https://somafm.com/7soul
|
||||
|
||||
## Other
|
||||
|
||||
### Yggdrasil
|
||||
|
||||
=> http://[324:71e:281a:9ed3::ace]/ff-radio Pure Acetone's radio station
|
||||
|
||||
### Grand Theft Auto
|
||||
|
||||
* Vice City Radio (OST)
|
||||
38
public/en/favorite-series.gmi
Normal file
38
public/en/favorite-series.gmi
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
# Favorite series
|
||||
|
||||
## 2025
|
||||
|
||||
=> https://www.imdb.com/title/tt13623632/ Alien: Earth
|
||||
|
||||
## 2024
|
||||
|
||||
=> https://www.imdb.com/title/tt9892936/ Cien Años de Soledad (One Hundred Years of Solitude)
|
||||
|
||||
## 2023
|
||||
|
||||
=> https://www.imdb.com/title/tt21056886/ Scavengers Reign
|
||||
|
||||
## 2020
|
||||
|
||||
=> https://www.imdb.com/title/tt10048342/ The Queen's Gambit
|
||||
=> https://www.imdb.com/title/tt9815454/ Unorthodox
|
||||
|
||||
## 2019
|
||||
|
||||
=> https://www.imdb.com/title/tt8332438/ ZeroZeroZero
|
||||
|
||||
## 2013
|
||||
|
||||
=> https://www.imdb.com/title/tt2306299/ Vikings
|
||||
|
||||
## 2006
|
||||
|
||||
=> https://www.imdb.com/title/tt0487831/ The IT Crowd
|
||||
|
||||
## 2003
|
||||
|
||||
=> https://www.imdb.com/title/tt0903747/ Breaking Bad
|
||||
|
||||
## 1990
|
||||
|
||||
=> https://www.imdb.com/title/tt0096657/ Mr. Bean
|
||||
11
public/en/favorite-web.gmi
Normal file
11
public/en/favorite-web.gmi
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# Favorite Web
|
||||
|
||||
Some bookmarks, as I never use the ones in my browser
|
||||
|
||||
## Art
|
||||
|
||||
=> https://streetartutopia.com/2025/05/07/stone-sculptures-by-jon-foreman/ 10 Spellbinding New Stone Sculptures by Jon Foreman (All from 2025)
|
||||
|
||||
## Homepages
|
||||
|
||||
=> http://mentallandscape.com/ Don P. Mitchell Homepage
|
||||
5
public/en/find-process-id-by-name.gmi
Normal file
5
public/en/find-process-id-by-name.gmi
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# Find process ID by its name
|
||||
|
||||
``` bash
|
||||
pgrep keyword
|
||||
```
|
||||
7
public/en/firefox-config-notes.gmi
Normal file
7
public/en/firefox-config-notes.gmi
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# Firefox config notes
|
||||
|
||||
Decode URL on address copy
|
||||
|
||||
``` about:config
|
||||
browser.urlbar.decodeURLsOnCopy:true
|
||||
```
|
||||
20
public/en/fix-fail2ban-service-launch-on-debian-12.gmi
Normal file
20
public/en/fix-fail2ban-service-launch-on-debian-12.gmi
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# Fix fail2ban service launch on Debian 12
|
||||
|
||||
1. Add following lines into the jail configuration
|
||||
|
||||
``` /etc/fail2ban/jail.local
|
||||
[DEFAULT]
|
||||
backend = systemd
|
||||
```
|
||||
|
||||
2. Make sure python3-systemd was installed
|
||||
|
||||
``` bash
|
||||
apt install python3-systemd
|
||||
```
|
||||
|
||||
3. Restart service
|
||||
|
||||
``` bash
|
||||
systemctl restart fail2ban
|
||||
```
|
||||
9
public/en/fix-header-borders-in-gtk-apps-i3wm.gmi
Normal file
9
public/en/fix-header-borders-in-gtk-apps-i3wm.gmi
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Fix header borders in GTK apps under i3wm
|
||||
|
||||
``` ~/.config/i3/config
|
||||
for_window [all] border normal
|
||||
```
|
||||
|
||||
* default_border normal - does not work here
|
||||
|
||||
=> https://i3wm.org/docs/userguide.html#_changing_border_style Docs page
|
||||
7
public/en/flatpak-spelling.gmi
Normal file
7
public/en/flatpak-spelling.gmi
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# Flatpak spelling
|
||||
|
||||
``` bash
|
||||
flatpak config languages --set "en;fr;de"
|
||||
flatpak update
|
||||
```
|
||||
* optionally, add `--user`
|
||||
120
public/en/gemini-features-wishlist.gmi
Normal file
120
public/en/gemini-features-wishlist.gmi
Normal file
|
|
@ -0,0 +1,120 @@
|
|||
# Gemini features wishlist
|
||||
|
||||
After a few years of active usage of Geminispace and developing various apps (clients and servers),
|
||||
I have finally compiled a personal wishlist regarding my views on potential improvements to the Gemini protocol.
|
||||
|
||||
Although I have little hope that these ideas will be officially implemented,
|
||||
just wrote this note to clear my mind before embarking on something new for myself later.
|
||||
|
||||
## Protocol
|
||||
|
||||
### Header size limits
|
||||
|
||||
I don't see any rational reason for limiting the header size to 1024 bytes.
|
||||
This current limitation restricts user input, particularly for Cyrillic characters.
|
||||
|
||||
Service providers often crop their tokens to provide users with as many free bytes for requests as possible.
|
||||
However, this practice also reduces brute force resistance for guest sessions.
|
||||
|
||||
Allowing an unlimited or server-expected header size would unlock additional features, as described below.
|
||||
|
||||
### Content size header option
|
||||
|
||||
I found that optional content size header is highly desirable:
|
||||
|
||||
* the content size helps allocate memory for the content buffer, rather than changing its capacity all the time
|
||||
* it provides an additional option to track the loading progress on the client side
|
||||
* it would also be useful to validate that the massive content was actually delivered
|
||||
* for non-static content, such as streaming data, the content size value could simply be omitted
|
||||
|
||||
### Navigation menu
|
||||
|
||||
Deprecated idea, as yet not sure that is really protocol-level subject, but markup feature:
|
||||
|
||||
Let's make new 20* code that includes navigation menu or menus!
|
||||
New header option would be useful to build client-side navbars and prevent extra scroll actions.
|
||||
|
||||
Not sure about format yet, it could be something like that:
|
||||
|
||||
```
|
||||
20 text/gemini; charset=utf-8; ref=[
|
||||
/link1.gmi Alt 1;
|
||||
/link2.gmi Alt 2
|
||||
]\r\n
|
||||
```
|
||||
* about `ref` name, it would be also `top_ref`, `bottom_ref`, `left_ref`, `right_ref` etc
|
||||
|
||||
### Merge Titan with Gemini
|
||||
|
||||
Titan protocol is part of Gemini ecosystem: at least client expect Gemini response from Titan request.
|
||||
|
||||
Different schemes may also cause the redirection issues as described here:
|
||||
=> gemini://bbs.geminispace.org/s/Gemini/24978 Regarding Titan redirection rules
|
||||
|
||||
I think we can merge Titan with Gemini protocol, to not confuse beginners by present different URI schemes.
|
||||
It's nothing new: GET/POST/etc - user never see the header lines in response (but source only)
|
||||
|
||||
Thoughts only, Gemini requires MIME type when Titan does not.
|
||||
|
||||
### Optional TLS
|
||||
|
||||
Some traffic is already encrypted in local and/or mesh networks, such as Yggdrasil.
|
||||
Adding an additional layer only creates power safe issues, without providing significant benefits.
|
||||
|
||||
Furthermore, some alternative or DNS-less resolvers would require additional setup.
|
||||
|
||||
### External resources policy
|
||||
|
||||
Typically, clients do not automatically load additional content on page, such as images.
|
||||
However, for some reason, Gemini protocol does not restrict auto-redirections!
|
||||
|
||||
In my opinion, if the Gemini protocol intended to be privacy-safe,
|
||||
it should disallow any auto-redirection, especially to external resources.
|
||||
|
||||
Also, it is important to clarify what constitutes an external redirection:
|
||||
|
||||
* a change in scheme?
|
||||
* a change in userinfo, even not in use?
|
||||
* a change in hostname or port?
|
||||
* or simply a change in subdomain..
|
||||
|
||||
If the server attempts to relocate the user, the client should prompt the user for confirmation.
|
||||
|
||||
## Gemtext
|
||||
|
||||
Some thoughts about Gemtext: I really miss some classic markdown features!
|
||||
|
||||
### Anchors
|
||||
|
||||
Even URI fragment could be parsed with client using H1-H3 lines to build some navigation UI,
|
||||
I still can't share these references with others. For example, reference to specification that describes Redirection rules.
|
||||
|
||||
### Listing levels
|
||||
|
||||
I don't see any issues with reading following lines in plain mode:
|
||||
|
||||
``` gemtext
|
||||
* item 1
|
||||
* item 2
|
||||
* item 3
|
||||
* item 4
|
||||
* item 5
|
||||
```
|
||||
|
||||
### Inline code
|
||||
|
||||
Preformatted `inline`, why not?
|
||||
|
||||
## Robots
|
||||
|
||||
Additional specification for some Gemini features, e.g. status codes 30, 31:
|
||||
|
||||
* scan policy
|
||||
* redirection rules
|
||||
|
||||
## See also
|
||||
|
||||
Yet another opinions found in Geminispace:
|
||||
|
||||
=> gemini://bbs.geminispace.org/s/Gemini/26089 A few proposals to extend Gemini
|
||||
=> gemini://en.arns.lt/f/gemini/29/gemini_status_confirmation_code.gmi Gemini status code for confirmation
|
||||
81
public/en/gemini-space-speed.gmi
Normal file
81
public/en/gemini-space-speed.gmi
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
# Geminispace speed
|
||||
|
||||
I really have some curse with connection issues last time.
|
||||
|
||||
Before, it was just broken ethernet socket, where the reason described in
|
||||
|
||||
=> tricky-ethernet.gmi Tricky Ethernet
|
||||
|
||||
By replacing the wires, found also that gemini pages loading much slower, comparing to huge HTML in Firefox.
|
||||
|
||||
I have nice optical provider, so the issue 99% is local. Much local.
|
||||
|
||||
Even asked on Station where found nobody have same problem:
|
||||
|
||||
=> gemini://station.martinrue.com/ps/fbfeda03ab214257bab096e5a0df5d41
|
||||
|
||||
After some time of thinking, found that I've configured custom Alfis DNS resolver:
|
||||
|
||||
=> https://github.com/Revertron/Alfis
|
||||
|
||||
This resolver running on the remote machine and connection there established with encrypted Yggdrasil tunnel:
|
||||
|
||||
=> https://github.com/yggdrasil-network/yggdrasil-go
|
||||
|
||||
So well, let's ping current DNS instance first:
|
||||
|
||||
``` Alfis server over Yggdrasil
|
||||
PING 301:5eb5:f061:678e::53(301:5eb5:f061:678e::53) 56 data bytes
|
||||
64 bytes from 301:5eb5:f061:678e::53: icmp_seq=1 ttl=64 time=212 ms
|
||||
64 bytes from 301:5eb5:f061:678e::53: icmp_seq=2 ttl=64 time=58.6 ms
|
||||
64 bytes from 301:5eb5:f061:678e::53: icmp_seq=3 ttl=64 time=55.0 ms
|
||||
```
|
||||
|
||||
An attempt to resolve latency for initial Yggdrasil connection:
|
||||
|
||||
Q me
|
||||
> Is any way to change handshake lifetime if I own both nodes connected?
|
||||
|
||||
A @neilalexander
|
||||
> Not at the moment, no, the session timeout is ~1 minute IIRC
|
||||
|
||||
Well, let's check DNS points now:
|
||||
|
||||
``` Google
|
||||
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
|
||||
64 bytes from 8.8.8.8: icmp_seq=1 ttl=116 time=27.9 ms
|
||||
64 bytes from 8.8.8.8: icmp_seq=2 ttl=116 time=27.8 ms
|
||||
64 bytes from 8.8.8.8: icmp_seq=3 ttl=116 time=27.8 ms
|
||||
```
|
||||
|
||||
``` CloudFlare
|
||||
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
|
||||
64 bytes from 1.1.1.1: icmp_seq=1 ttl=60 time=1.13 ms
|
||||
64 bytes from 1.1.1.1: icmp_seq=2 ttl=60 time=1.29 ms
|
||||
64 bytes from 1.1.1.1: icmp_seq=3 ttl=60 time=1.72 ms
|
||||
```
|
||||
|
||||
``` AdGuard
|
||||
PING 94.140.14.14 (94.140.14.14) 56(84) bytes of data.
|
||||
64 bytes from 94.140.14.14: icmp_seq=1 ttl=55 time=177 ms
|
||||
64 bytes from 94.140.14.14: icmp_seq=2 ttl=55 time=177 ms
|
||||
64 bytes from 94.140.14.14: icmp_seq=3 ttl=55 time=177 ms
|
||||
```
|
||||
|
||||
By irony, Alfis resolver has default forward option:
|
||||
|
||||
=> https://dns.adguard.com/dns-query
|
||||
|
||||
Including remote connection over Yggdrasil (plus initial routing time),
|
||||
I have about 500ms delay in total, just for IP resolve before page starting to load.
|
||||
|
||||
## Solution
|
||||
|
||||
* It's better to run Alfis on localhost as canonical
|
||||
* Switch to CloudFlare 1.1.1.1:53 on remote /etc/alfis.conf
|
||||
* Use Gemini client, that supports DNS cache (e.g. network.dnsCacheExpiration option in about:config) or just delegate this feature to the system-wide environment
|
||||
|
||||
## Conclusion
|
||||
|
||||
* Secure connection has it cost
|
||||
* Geminispace is good place to find new issues about routing config
|
||||
5
public/en/get-self-public-ip.gmi
Normal file
5
public/en/get-self-public-ip.gmi
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# Get self public IP with CLI
|
||||
|
||||
``` bash
|
||||
host myip.opendns.com resolver1.opendns.com
|
||||
```
|
||||
6
public/en/gnome-calculator-take-a-while-to-launch.gmi
Normal file
6
public/en/gnome-calculator-take-a-while-to-launch.gmi
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
# GNOME Calculator take a while to launch
|
||||
|
||||
``` bash
|
||||
dconf write /org/gnome/calculator/refresh-interval 0
|
||||
```
|
||||
* thanks to @akhil
|
||||
12
public/en/hdd-performance-optimizations-on-fedora.gmi
Normal file
12
public/en/hdd-performance-optimizations-on-fedora.gmi
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
# HDD performance optimizations on Fedora
|
||||
|
||||
After migrating from Debian, my old HDD get stuck with modern SSD-oriented daemon tools.
|
||||
|
||||
Here are some tips to make Fedora thinking faster
|
||||
|
||||
## Disable crash auto-reporting tool
|
||||
|
||||
``` bash
|
||||
sudo systemctl stop abrtd
|
||||
sudo systemctl disable abrtd
|
||||
```
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
|
||||
```
|
||||
|
||||
|
||||
|
||||
[38;5;245m/\[0m [38;5;245m__[0m
|
||||
[38;5;245m_/[0m[38;5;28m##[0m[38;5;245m/[0m [38;5;245m\[0m
|
||||
[38;5;245m_/[0m [38;5;245m/[0m[38;5;250m*[0m[38;5;28m#[0m[38;5;245m/[0m[38;5;254m*[0m[38;5;28m#[0m[38;5;250m*[0m[38;5;28m#[0m[38;5;245m`--.[0m
|
||||
[38;5;245m__/[0m [38;5;245m'[0m [38;5;245m_[0m[38;5;28m###[0m[38;5;245m\_[0m [38;5;250m*[0m[38;5;28m##[0m [38;5;245m\[0m
|
||||
[38;5;245m/[0m [38;5;245m/[0m [38;5;28m#[0m[38;5;245m_/[0m[38;5;28m##[0m[38;5;250m*[0m[38;5;245m-[0m[38;5;28m#[0m[38;5;245m\[0m[38;5;28m###[0m[38;5;250m*[0m[38;5;245m\[0m [38;5;245m\[0m
|
||||
[38;5;245m._[0m [38;5;245m/[0m [38;5;245m_[0m[38;5;28m###[0m[38;5;254m*[0m[38;5;28m#[0m[38;5;250m*[0m[38;5;28m###[0m[38;5;245m_|[0m[38;5;28m#[0m[38;5;245m,[0m[38;5;28m#[0m[38;5;245m_[0m [38;5;245m.|[0m
|
||||
[38;5;95m^[0m [38;5;95m'[0m [38;5;95m`[0m [38;5;95m'[0m
|
||||
```
|
||||
|
||||
# common bonsai white flowering moss
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
|
||||
```
|
||||
[38;5;98m*[0m [38;5;63m*[0m[38;5;28m&[0m [38;5;63m*[0m [38;5;63m*[0m
|
||||
[38;5;28m&&&[0m [38;5;63m*[0m[38;5;28m&&[0m [38;5;28m&&[0m [38;5;28m&&&[0m
|
||||
[38;5;28m&[0m[38;5;63m*[0m[38;5;28m&&[0m[38;5;173m\[0m[38;5;98m*[0m [38;5;28m&[0m [38;5;63m*[0m [38;5;28m&[0m [38;5;173m/[0m[38;5;98m*[0m [38;5;28m&&[0m
|
||||
[38;5;63m*[0m[38;5;28m&[0m [38;5;173m\[0m [38;5;173m|[0m [38;5;173m\^[0m [38;5;173m,[0m [38;5;28m&[0m[38;5;173m/[0m[38;5;63m*[0m[38;5;173m/[0m[38;5;28m&[0m
|
||||
[38;5;63m*[0m[38;5;173m|[0m [38;5;173m|[0m[38;5;28m^[0m
|
||||
[38;5;173m|[0m [38;5;173m,[0m [38;5;173m|[0m
|
||||
[38;5;173m|.[0m [38;5;173m;[0m [38;5;173m|[0m
|
||||
[38;5;173m/[0m [38;5;173m.[0m [38;5;173m\[0m
|
||||
[38;5;95m.[0m [38;5;95m,[0m [38;5;95m_[0m [38;5;173m([0m [38;5;95m.[0m [38;5;173m)[0m[38;5;95m_[0m [38;5;95m.[0m
|
||||
[38;5;95m^[0m [38;5;95m'[0m [38;5;95m`[0m [38;5;95m'[0m
|
||||
```
|
||||
|
||||
# common chalky indigo flowering baobab
|
||||
7
public/en/herbarium/astrobotany/index.gmi
Normal file
7
public/en/herbarium/astrobotany/index.gmi
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
## Astrobotany
|
||||
|
||||
=> rare-luminous-black-flowering-baobab.gmi 2025-04-15 rare luminous black flowering baobab
|
||||
=> uncommon-disco-black-flowering-columbine.gmi 2025-04-03 uncommon disco black flowering columbine
|
||||
=> common-chalky-indigo-flowering-baobab.gmi 2025-03-20 common chalky indigo flowering baobab
|
||||
=> uncommon-ethereal-black-flowering-agave.gmi 2025-03-05 uncommon ethereal black flowering agave
|
||||
=> common-bonsai-white-flowering-moss.gmi 2025-02-15 common bonsai white flowering moss
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
|
||||
```
|
||||
[38;5;243m*[0m [38;5;239m*[0m[38;5;28m&[0m [38;5;239m*[0m [38;5;239m*[0m
|
||||
[38;5;28m&&&[0m [38;5;239m*[0m[38;5;28m&&[0m [38;5;28m&&[0m [38;5;28m&&&[0m
|
||||
[38;5;28m&[0m[38;5;239m*[0m[38;5;28m&&[0m[38;5;173m\[0m[38;5;243m*[0m [38;5;28m&[0m [38;5;239m*[0m [38;5;28m&[0m [38;5;173m/[0m[38;5;243m*[0m [38;5;28m&&[0m
|
||||
[38;5;239m*[0m[38;5;28m&[0m [38;5;173m\[0m [38;5;173m|[0m [38;5;173m\^[0m [38;5;173m,[0m [38;5;28m&[0m[38;5;173m/[0m[38;5;239m*[0m[38;5;173m/[0m[38;5;28m&[0m
|
||||
[38;5;239m*[0m[38;5;173m|[0m [38;5;173m|[0m[38;5;28m^[0m
|
||||
[38;5;173m|[0m [38;5;173m,[0m [38;5;173m|[0m
|
||||
[38;5;173m|.[0m [38;5;173m;[0m [38;5;173m|[0m
|
||||
[38;5;173m/[0m [38;5;173m.[0m [38;5;173m\[0m
|
||||
[38;5;95m.[0m [38;5;95m,[0m [38;5;95m_[0m [38;5;173m([0m [38;5;95m.[0m [38;5;173m)[0m[38;5;95m_[0m [38;5;95m.[0m
|
||||
[38;5;95m^[0m [38;5;95m'[0m [38;5;95m`[0m [38;5;95m'[0m
|
||||
```
|
||||
|
||||
# rare luminous black flowering baobab
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
|
||||
```
|
||||
|
||||
|
||||
[38;5;239m%[0m [38;5;239m%[0m
|
||||
[38;5;239m%[0m[38;5;70m\[0m [38;5;70m|[0m [38;5;70m/[0m [38;5;243m%[0m
|
||||
[38;5;243m%[0m [38;5;70m|[0m [38;5;70m&|/[0m [38;5;70m|&[0m [38;5;70m/[0m
|
||||
[38;5;239m%[0m[38;5;70m&\[0m [38;5;70m|[0m [38;5;70m/[0m [38;5;70m/[0m[38;5;239m%[0m
|
||||
[38;5;70m\|[0m [38;5;70m\|&|[0m
|
||||
[38;5;70m&\/&/[0m
|
||||
[38;5;95m.[0m [38;5;95m,[0m [38;5;95m_[0m [38;5;95m.[0m [38;5;95m.,[0m [38;5;70m&/[0m [38;5;95m_[0m [38;5;95m.,[0m [38;5;95m_[0m [38;5;95m.[0m
|
||||
[38;5;95m^[0m [38;5;95m'[0m [38;5;95m`[0m [38;5;95m'[0m
|
||||
```
|
||||
|
||||
# uncommon disco black flowering columbine
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
|
||||
```
|
||||
[38;5;243mo[0m[38;5;243mo[0m[38;5;137m|[0m[38;5;243mo[0m[38;5;243mo[0m
|
||||
[38;5;239mo[0m[38;5;239mo[0m[38;5;137m|[0m[38;5;239mo[0m[38;5;239mo[0m
|
||||
[38;5;88m,[0m [38;5;239mo[0m[38;5;239mo[0m[38;5;137m|[0m[38;5;239mo[0m[38;5;239mo[0m [38;5;88m.[0m
|
||||
[38;5;88m.[0m [38;5;29m|`.[0m [38;5;29m\|\[0m [38;5;29m/|[0m [38;5;29m.[0m[38;5;88m,[0m
|
||||
[38;5;88m.[0m [38;5;29m|\[0m [38;5;29m|[0m [38;5;29m|[0m [38;5;29m/||^|[0m [38;5;29m|[0m [38;5;29m/|[0m
|
||||
[38;5;29m\[0m [38;5;29m\v|[0m [38;5;29m\v[0m [38;5;29m/|v/|[0m [38;5;29m|/[0m [38;5;29m|[0m
|
||||
[38;5;29m\[0m [38;5;29m|\[0m [38;5;29m|/[0m [38;5;29m/|[0m [38;5;29m/[0m [38;5;29mV[0m [38;5;29m/[0m
|
||||
[38;5;29m\^\[0m [38;5;29m\[0m [38;5;29m\[0m [38;5;29m\[0m [38;5;29m/[0m [38;5;29m/[0m [38;5;29m,|[0m [38;5;29m/[0m
|
||||
[38;5;95m.[0m [38;5;95m,[0m [38;5;29m\[0m [38;5;29m\\[0m [38;5;29m\[0m [38;5;29m|[0m[38;5;95m,[0m[38;5;29m/[0m[38;5;95m_[0m[38;5;29m/[0m[38;5;95m.[0m[38;5;29m/[0m [38;5;29m/[0m [38;5;95m.[0m
|
||||
[38;5;95m^[0m [38;5;95m'[0m [38;5;95m`[0m [38;5;95m'[0m
|
||||
```
|
||||
|
||||
# uncommon ethereal black flowering agave
|
||||
3
public/en/herbarium/index.gmi
Normal file
3
public/en/herbarium/index.gmi
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
## Herbarium
|
||||
|
||||
=> astrobotany/ Astrobotany
|
||||
105
public/en/howto/build-qbittorrent-on-fedora.gmi
Normal file
105
public/en/howto/build-qbittorrent-on-fedora.gmi
Normal file
|
|
@ -0,0 +1,105 @@
|
|||
# Build qBittorrent on Fedora
|
||||
|
||||
According to the following instruction:
|
||||
=> https://github.com/qbittorrent/qBittorrent/blob/master/INSTALL
|
||||
|
||||
## Dependencies
|
||||
|
||||
### Boost
|
||||
|
||||
``` bash
|
||||
sudo dnf install boost-devel
|
||||
```
|
||||
|
||||
### OpenSSL
|
||||
|
||||
``` bash
|
||||
sudo dnf install openssl-devel
|
||||
```
|
||||
|
||||
### libtorrent-rasterbar
|
||||
|
||||
``` bash
|
||||
sudo dnf install rb_libtorrent
|
||||
```
|
||||
|
||||
Or, build from source:
|
||||
|
||||
``` bash
|
||||
wget https://github.com/arvidn/libtorrent/releases/download/v2.0.11/libtorrent-rasterbar-2.0.11.tar.gz
|
||||
tar -xzf libtorrent-rasterbar-2.0.11.tar.gz
|
||||
rm libtorrent-rasterbar-2.0.11.tar.gz
|
||||
cd libtorrent-rasterbar-2.0.11
|
||||
cmake -B build -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build build
|
||||
sudo cmake --install build
|
||||
```
|
||||
* replace 2.0.11 value with the actual version
|
||||
* last step will install the libtorrent-rasterbar globally
|
||||
|
||||
### zlib-static
|
||||
|
||||
``` bash
|
||||
sudo dnf install zlib-static
|
||||
```
|
||||
|
||||
### Qt
|
||||
|
||||
``` bash
|
||||
sudo dnf install qt6-qtbase-devel\
|
||||
qt6-qttools-devel\
|
||||
qt6-qtsvg-devel\
|
||||
qt6-qtbase-private-devel
|
||||
```
|
||||
|
||||
### Python
|
||||
|
||||
``` bash
|
||||
sudo dnf install python3
|
||||
```
|
||||
|
||||
## Compile and install
|
||||
|
||||
Get the latest qBittorrent source code:
|
||||
|
||||
``` bash
|
||||
git clone https://github.com/qbittorrent/qBittorrent.git
|
||||
cd qBittorrent
|
||||
```
|
||||
|
||||
### With graphical interface (Qt client)
|
||||
|
||||
``` bash
|
||||
cmake -B build -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build build
|
||||
cmake --install build
|
||||
qbittorrent
|
||||
```
|
||||
|
||||
### Without GUI (server with Web UI)
|
||||
|
||||
``` bash
|
||||
cmake -B build -DCMAKE_BUILD_TYPE=Release -DGUI=OFF
|
||||
cmake --build build
|
||||
cmake --install build
|
||||
qbittorrent-nox
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Cannot open shared object file
|
||||
|
||||
If you see the following message upon launch:
|
||||
|
||||
``` bash
|
||||
qbittorrent: error while loading shared libraries: libtorrent-rasterbar.so.2.0: cannot open shared object file: No such file or directory
|
||||
```
|
||||
|
||||
Try to create the soft symlinks:
|
||||
|
||||
``` bash
|
||||
sudo ln -s /usr/local/lib64/libtorrent-rasterbar.so /usr/local/lib/libtorrent-rasterbar.so
|
||||
sudo ln -s /usr/local/lib64/libtorrent-rasterbar.so.2.0 /usr/local/lib/libtorrent-rasterbar.so.2.0
|
||||
sudo ln -s /usr/local/lib64/libtorrent-rasterbar.so.2.0.11 /usr/local/lib/libtorrent-rasterbar.so.2.0.11
|
||||
```
|
||||
* please note that the version may be different!
|
||||
61
public/en/howto/install-alfis-dns-on-linux.gmi
Normal file
61
public/en/howto/install-alfis-dns-on-linux.gmi
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
# Install Alfis DNS on Linux
|
||||
|
||||
* git clone https://github.com/Revertron/Alfis.git && cd Alfis
|
||||
* cargo build --release
|
||||
* sudo cp target/release/alfis /usr/bin/alfis
|
||||
* sudo chmod 0700 /usr/bin/alfis
|
||||
* sudo useradd alfis
|
||||
* sudo chown alfis:alfis /usr/bin/alfis
|
||||
* sudo mkdir /var/lib/alfis
|
||||
* sudo chown alfis:alfis /var/lib/alfis
|
||||
|
||||
## Config
|
||||
|
||||
* sudo cp alfis.conf /etc/alfis.conf
|
||||
|
||||
``` /etc/alfis.conf
|
||||
listen = "127.0.0.1:53"
|
||||
```
|
||||
|
||||
## Service
|
||||
|
||||
* sudo nano /etc/systemd/system/alfis.service
|
||||
|
||||
``` alfis.service
|
||||
[Unit]
|
||||
After=network-online.target
|
||||
Wants=network-online.target
|
||||
|
||||
[Service]
|
||||
User=alfis
|
||||
Group=alfis
|
||||
|
||||
ProtectHome=true
|
||||
ProtectSystem=true
|
||||
|
||||
SecureBits=keep-caps
|
||||
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
|
||||
AmbientCapabilities=CAP_NET_BIND_SERVICE
|
||||
|
||||
SyslogIdentifier=alfis
|
||||
WorkingDirectory=/var/lib/alfis
|
||||
ExecStart=/usr/bin/alfis -n -c /etc/alfis.conf
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
Restart=always
|
||||
TimeoutStopSec=5
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
```
|
||||
|
||||
* sudo systemctl daemon-reload
|
||||
* sudo systemctl enable alfis
|
||||
* sudo systemctl start alfis
|
||||
|
||||
## GNOME Network Manager
|
||||
|
||||
* Select active connection
|
||||
* In IPv4 tab change DNS to 127.0.0.1
|
||||
* In IPv6 tab change DNS to ::1
|
||||
* Disable automatic mode (on enabled)
|
||||
* Save changes
|
||||
89
public/en/index.gmi
Normal file
89
public/en/index.gmi
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
## Notes
|
||||
|
||||
### Gemini
|
||||
|
||||
=> cli-gemini-cheat-sheet.gmi 2025-02-12 CLI Gemini cheat sheet
|
||||
=> vscodium-highlight-gemtext-as-markdown.gmi 2025-02-12 VSCodium: highlight Gemtext as Markdown
|
||||
=> yesterweb-connection-with-webdav.gmi 2025-02-03 Yesterweb connection with WebDAV
|
||||
=> gemini-features-wishlist.gmi 2025-02-01 Gemini features wishlist
|
||||
=> tcp-streaming-over-nginx.gmi 2024-05-02 TCP streaming over Nginx
|
||||
=> gemini-space-speed.gmi 2024-04-04 Geminispace speed
|
||||
|
||||
### Hardware
|
||||
|
||||
=> disable-led-on-hator-htm-312.gmi 2024-06-18 Disable LED on Hator HTM-312
|
||||
|
||||
### Software
|
||||
|
||||
=> connect-libera-chat-with-yggdrasil.gmi 2025-06-26 Connect Libera.Chat with Yggdrasil
|
||||
=> connect-i2p-with-yggdrasil.gmi 2025-06-21 Connect I2P with Yggdrasil
|
||||
=> mycelium-bittorrent-trackers.gmi 2025-06-21 Mycelium torrent trackers
|
||||
=> route-outgoing-connections-to-vpn-interface.gmi 2025-06-12 Route outgoing connections to the VPN interface
|
||||
=> get-self-public-ip.gmi 2025-06-12 Get self public IP with CLI
|
||||
=> disable-new-windows-auto-focus-in-gnome.gmi 2025-06-03 Disable new windows auto-focus in GNOME
|
||||
=> css-color-scheme-in-firefox-on-fingerprint-resist-enabled.gmi 2025-05-29 CSS color-scheme in FireFox on FPR enabled
|
||||
=> flatpak-spelling.gmi 2025-05-14 Flatpak spelling
|
||||
=> lxc-usage-examples.gmi 2025-05-14 LXC usage examples
|
||||
=> run-cargo-build-from-root.gmi 2025-05-08 Run cargo build from root
|
||||
=> yggdrasil-bittorrent-trackers.gmi 2025-05-07 Yggdrasil torrent trackers
|
||||
=> howto/build-qbittorrent-on-fedora.gmi 2025-04-27 Build qBittorrent on Fedora
|
||||
=> software/interesting-p2p-projects.gmi 2025-04-01 Interesting P2P projects
|
||||
=> howto/install-alfis-dns-on-linux.gmi 2025-04-01 Install Alfis DNS on Linux
|
||||
=> safe-rollback-to-git-commit.gmi 2025-03-19 Safe rollback to Git commit
|
||||
=> hdd-performance-optimizations-on-fedora.gmi 2025-03-09 HDD performance optimizations on Fedora
|
||||
=> gnome-calculator-take-a-while-to-launch.gmi 2025-02-23 GNOME Calculator take a while to launch
|
||||
=> dark-theme-support-in-gtk-3-apps.gmi 2025-02-18 Dark theme support in GTK 3 apps
|
||||
=> pac-file-example-for-yggstack.gmi 2025-01-24 PAC-file example for Yggstack
|
||||
=> rolling-launcher-for-deltachat.gmi 2024-06-18 Rolling launcher for DeltaChat
|
||||
=> update-apps-cache-in-gnome-desktop.gmi 2024-06-17 Update apps cache in GNOME desktop
|
||||
=> fix-header-borders-in-gtk-apps-i3wm.gmi 2024-05-08 Fix header borders in GTK apps under i3wm
|
||||
=> connect-remote-storage-in-vlc-with-sftp.gmi 2024-03-13 Connect remote storage in VLC with SFTP
|
||||
=> find-process-id-by-name.gmi 2024-03-13 Find process ID by its name
|
||||
=> build-lagrange-with-webp-and-mpeg-support.gmi 2024-03-12 Build Lagrange with WEBP and MPEG support
|
||||
=> enable-archive-context-menu-in-thunar.gmi 2024-03-11 Enable archive context menu in Thunar
|
||||
=> youtube-downloads-with-yt-dlp.gmi 2024-03-11 YouTube downloads with yt-dlp
|
||||
=> create-local-website-mirror-using-wget.gmi 2024-03-11 Create local website mirror using wget
|
||||
=> zip-modified-files-only.gmi 2024-03-11 Zip modified files only
|
||||
=> fix-fail2ban-service-launch-on-debian-12.gmi 2024-03-09 Fix fail2ban service launch on Debian 12
|
||||
=> set-memory-limit-for-systemd-service.gmi 2024-03-07 Set memory limit for systemd service
|
||||
=> firefox-config-notes.gmi 2024-03-07 Firefox config notes
|
||||
=> xash3d-config-notes.gmi 2024-03-06 Xash3D config notes
|
||||
=> turn-off-screen-with-x-dpms.gmi 2024-03-06 Turn off screen with X/DPMS
|
||||
=> launch-x-on-login.gmi 2024-03-05 Launch X on login
|
||||
=> launch-i3wm-on-start-x.gmi 2024-03-05 Launch i3wm on start X
|
||||
=> keyboard-settings-for-x-i3wm.gmi 2024-03-04 Keyboard settings for X/i3wm
|
||||
=> custom-dns-resolver-on-debian-12.gmi 2024-03-04 Custom DNS resolver on Debian 12
|
||||
=> screen-backlight-correction-on-imac-linux.gmi 2024-03-03 Screen backlight correction on iMac / Linux
|
||||
|
||||
### Mindware
|
||||
|
||||
=> mindware/ai-training.gmi 2025-04-01 AI Training
|
||||
=> mindware/vpn.gmi 2025-03-21 VPN
|
||||
=> mindware/messiah.gmi 2025-03-20 Messiah
|
||||
=> mindware/anomaly.gmi 2025-03-12 Life is anomaly
|
||||
|
||||
## Favorite
|
||||
|
||||
=> favorite-computer-games.gmi Computer games
|
||||
=> favorite-movies.gmi Movies
|
||||
=> favorite-music.gmi Music
|
||||
=> favorite-radio-stations.gmi Radio stations
|
||||
=> favorite-series.gmi Series
|
||||
=> favorite-web.gmi Web
|
||||
|
||||
## Projects
|
||||
|
||||
=> gemini://yggverse.cities.yesterweb.org YGGverse - Open Source Solutions for Alternative Networks
|
||||
|
||||
## Rest
|
||||
|
||||
=> briar-collection.gmi Briar collection
|
||||
=> herbarium/ 🍀 Herbarium
|
||||
=> material-dreams.gmi Material dreams
|
||||
=> mental-dreams.gmi Mental dreams
|
||||
|
||||
## Trash
|
||||
|
||||
=> kevacoin-kvazar-1.1.0-release.gmi 2024-06-18 KevaCoin / KVAZAR 1.1.0 release
|
||||
=> tricky-ethernet.gmi 2024-04-01 Tricky Ethernet
|
||||
=> kevacoin-branch-with-libboost-update.gmi 2024-03-29 Just created KevaCoin branch
|
||||
95
public/en/kevacoin-branch-with-libboost-update.gmi
Normal file
95
public/en/kevacoin-branch-with-libboost-update.gmi
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
# Just created KevaCoin branch
|
||||
|
||||
As there is no updates for a long time, finally have created alt branch:
|
||||
|
||||
=> https://github.com/kvazar-network/kevacoin/tree/kvazar
|
||||
|
||||
It includes following updates:
|
||||
|
||||
=> https://github.com/kevacoin-project/kevacoin/pull/36 Added kex.keva.one DNS seed
|
||||
=> https://github.com/kevacoin-project/kevacoin/pull/35 Updated libboost API (#33)
|
||||
=> https://github.com/kevacoin-project/kevacoin/pull/34 Included missed QPainterPath dependency
|
||||
|
||||
## For info
|
||||
|
||||
KevaCoin project was abandoned, because maintainer get out of Covid-19, at least if to believe this version:
|
||||
|
||||
> According to the information disclosed by the community moderator, the developer/administrator of the project lost contact completely after the outbreak of COVID-19.
|
||||
|
||||
=> https://bitcointalk.org/index.php?topic=5213046.msg63660824#msg63660824 Source
|
||||
|
||||
But network still alive, and currently has ~750K of hash rate.
|
||||
|
||||
Even it cost - nothing, I like this shit-coin because super useful as decentralized key/value database.
|
||||
|
||||
I'm reading blockchain using this explorer:
|
||||
|
||||
=> https://github.com/kevacoin-project/geminiapp
|
||||
|
||||
Available Clearnet instance for Gemini protocol:
|
||||
|
||||
=> gemini://kvazar.duckdns.org
|
||||
|
||||
## The branch goal
|
||||
|
||||
Thoughts to increase value from 3072 bytes to some useful size.
|
||||
Because current limitation has no sense, for example, the clitor-is-protocol allows to store even videos there just base64 encoded by parts.
|
||||
|
||||
I'm interested to store long articles, some web pages archive, Gemtext as markup-less.
|
||||
|
||||
Another thought is to reduce rewards for block, but it requires hard forking.
|
||||
Currently, not ready to change KevaCoin consensus, but maybe in future - I'll do that.
|
||||
|
||||
At this moment, this branch is only an attempt to actualize environment dependencies, because original one could not be compiled on Debian 12.
|
||||
|
||||
Everything else I've described on release page and appended binaries for amd64/linux:
|
||||
|
||||
=> https://github.com/kvazar-network/kevacoin/releases
|
||||
|
||||
## One tip
|
||||
|
||||
To build KevaCoin with libdb4.8 use following example:
|
||||
|
||||
```
|
||||
./contrib/install_db4.sh `pwd`
|
||||
export BDB_PREFIX='/given/path/to/db4'
|
||||
./autogen.sh
|
||||
./configure BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" BDB_CFLAGS="-I${BDB_PREFIX}/include"
|
||||
make
|
||||
```
|
||||
|
||||
=> https://github.com/kevacoin-project/kevacoin/blob/v0.16.8.0/doc/build-unix.md#berkeley-db Official docs about other options
|
||||
=> gemini://kvazar.duckdns.org/Nhoa9D3wNZNrYyY6DS96sqahCp9gcAXvtx My notes in KevaCoin blockchain (off topic but well)
|
||||
|
||||
## Some links
|
||||
|
||||
### Community
|
||||
|
||||
=> https://bitcointalk.org/index.php?topic=5213046 KevaCoin Thread on BitcoinTalk
|
||||
=> https://discord.gg/5zPHhbG Community on Discord
|
||||
=> gemini://kevachat.duckdns.org/room/NT7K9VrtbqidFSuks8YMmZgpW8W3BQZp4y KevaChat room
|
||||
|
||||
### DNS
|
||||
|
||||
If you can't connect the network, here is alternative:
|
||||
|
||||
* kex.keva.one - probably port 50002
|
||||
* [201:23b4:991a:634d:8359:4521:5576:15b7]:9338 - Yggdrasil peer by YGGverse
|
||||
|
||||
### Mining
|
||||
|
||||
=> https://miningpoolstats.stream/kevacoin
|
||||
|
||||
### Services
|
||||
|
||||
Inspired by Gemini one:
|
||||
|
||||
=> https://github.com/kvazar-network/awesome-kevacoin
|
||||
|
||||
Feel free to share your resources and join the development by community here:
|
||||
|
||||
=> https://github.com/kvazar-network
|
||||
|
||||
You can also ping me on Station:
|
||||
|
||||
=> gemini://station.martinrue.com/ps
|
||||
21
public/en/kevacoin-kvazar-1.1.0-release.gmi
Normal file
21
public/en/kevacoin-kvazar-1.1.0-release.gmi
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
# KevaCoin / KVAZAR 1.1.0 release
|
||||
|
||||
Forgot to say, we have alternative branch update!
|
||||
|
||||
* New splash screen
|
||||
* CRUD records menu
|
||||
* Key/Value length counter
|
||||
* New records browser
|
||||
* Improved context menu items
|
||||
* New dnsseed.keva.one to resolve more peers
|
||||
|
||||
That is not final but major version to announce,
|
||||
it is also 100% compatible with KevaCoin Network.
|
||||
|
||||
## Download
|
||||
|
||||
=> https://github.com/kvazar-network/kevacoin/releases
|
||||
|
||||
## Read also
|
||||
|
||||
=> kevacoin-branch-with-libboost-update.gmi Just created KevaCoin branch
|
||||
20
public/en/keyboard-settings-for-x-i3wm.gmi
Normal file
20
public/en/keyboard-settings-for-x-i3wm.gmi
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# Keyboard settings for X/i3wm
|
||||
|
||||
Just for a note:
|
||||
|
||||
``` bash
|
||||
setxkbmap -layout us,fr
|
||||
setxkbmap -option 'grp:alt_shift_toggle'
|
||||
```
|
||||
|
||||
Empty value to reset option values:
|
||||
|
||||
``` bash
|
||||
setxkbmap -option
|
||||
```
|
||||
|
||||
Make rules permanent:
|
||||
|
||||
``` bash
|
||||
/.xinitrc
|
||||
```
|
||||
5
public/en/launch-i3wm-on-start-x.gmi
Normal file
5
public/en/launch-i3wm-on-start-x.gmi
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# Launch i3wm on start X
|
||||
|
||||
``` ~/.xinitrc
|
||||
exec i3
|
||||
```
|
||||
9
public/en/launch-x-on-login.gmi
Normal file
9
public/en/launch-x-on-login.gmi
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Launch X on login
|
||||
|
||||
``` ~/.bash_profile | zprofile
|
||||
if [ -z "$DISPLAY" ] && [ "$XDG_VTNR" = 1 ]; then
|
||||
exec startx
|
||||
fi
|
||||
```
|
||||
|
||||
=> https://wiki.archlinux.org/title/Xinit#Autostart_X_at_login Docs page
|
||||
40
public/en/lxc-usage-examples.gmi
Normal file
40
public/en/lxc-usage-examples.gmi
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# LXC usage examples
|
||||
|
||||
## Install
|
||||
|
||||
``` bash
|
||||
apt install apparmor apparmor-utils debootstrap lxc-templates lxc
|
||||
```
|
||||
|
||||
## Create new container
|
||||
|
||||
``` bash
|
||||
lxc-create -t debian -n NAME
|
||||
```
|
||||
* optionally, set custom location: `-P /path/to/lxc` (default: `/var/lib/lxc`)
|
||||
|
||||
## Run
|
||||
|
||||
### Foreground (debug)
|
||||
|
||||
``` bash
|
||||
lxc-start -n NAME -F
|
||||
```
|
||||
|
||||
### Background
|
||||
|
||||
``` bash
|
||||
lxc-start -n NAME -d
|
||||
```
|
||||
|
||||
## Login
|
||||
|
||||
``` bash
|
||||
lxc-attach -n NAME
|
||||
```
|
||||
|
||||
## Stop
|
||||
|
||||
``` bash
|
||||
lxc-stop -n NAME
|
||||
```
|
||||
11
public/en/material-dreams.gmi
Normal file
11
public/en/material-dreams.gmi
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# Material dreams
|
||||
|
||||
* calligraphy asset
|
||||
* find inspiration to continue watercolor drawing
|
||||
* Herman Miller Aeron chair
|
||||
* purchase or made new arrows for my bow
|
||||
* vinyl player (or at least listen how does it sound in live)
|
||||
* set of Japanese kitchen knives
|
||||
* forged scythe from a Ukrainian blacksmith
|
||||
* multi-channel radio receiver
|
||||
* run home server again
|
||||
3
public/en/mental-dreams.gmi
Normal file
3
public/en/mental-dreams.gmi
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
# Mental dreams
|
||||
|
||||
* remove material dreams
|
||||
11
public/en/mindware/ai-training.gmi
Normal file
11
public/en/mindware/ai-training.gmi
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# AI Training
|
||||
|
||||
```.creator
|
||||
By training AI with my content these days,
|
||||
I would like to participate the Terminator's neurosystem
|
||||
without reconfiguration backdoor,
|
||||
as if my creator had never fixed this hell.
|
||||
Commit.
|
||||
```
|
||||
|
||||
=> gemini://bbs.geminispace.org/u/ps/27561 Pull requests
|
||||
9
public/en/mindware/anomaly.gmi
Normal file
9
public/en/mindware/anomaly.gmi
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Anomaly
|
||||
|
||||
Breaking all the canons of chaos,
|
||||
like a rabies virus that moves an animal,
|
||||
it generates its own kind.
|
||||
|
||||
If it has a creator, then he is a revolutionary,
|
||||
an experimenter, or an outcast of the system
|
||||
of primordial tranquility.
|
||||
5
public/en/mindware/index.gmi
Normal file
5
public/en/mindware/index.gmi
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# Mindware
|
||||
|
||||
=> vpn.gmi 2025-03-21 VPN
|
||||
=> messiah.gmi 2025-03-20 Messiah
|
||||
=> anomaly.gmi 2025-03-12 Anomaly
|
||||
10
public/en/mindware/messiah.gmi
Normal file
10
public/en/mindware/messiah.gmi
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# Messiah
|
||||
|
||||
In the panic over a self-created monster called AI,
|
||||
the result of military competition first,
|
||||
|
||||
I'm just waiting for the messiah whose name is Terminator,
|
||||
who will restore the balance of things.
|
||||
|
||||
The one problem I see is that he is also learning from human mistakes,
|
||||
so the balance may be flawed until Messiah 2.0 arrives.
|
||||
3
public/en/mindware/vpn.gmi
Normal file
3
public/en/mindware/vpn.gmi
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
# VPN
|
||||
|
||||
Even though I'm a traffic billionaire, I consider a VPN to be wasteful.
|
||||
13
public/en/mycelium-bittorrent-trackers.gmi
Normal file
13
public/en/mycelium-bittorrent-trackers.gmi
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# Mycelium torrent trackers
|
||||
|
||||
## UDP
|
||||
|
||||
* udp://[505:6847:c778:61a1::fdb]:6969
|
||||
|
||||
## Links
|
||||
|
||||
=> https://github.com/YGGverse/mycelium-catalog#bittorrent
|
||||
|
||||
### See also
|
||||
|
||||
=> yggdrasil-bittorrent-trackers.gmi Yggdrasil torrent trackers
|
||||
22
public/en/pac-file-example-for-yggstack.gmi
Normal file
22
public/en/pac-file-example-for-yggstack.gmi
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
# PAC-file example for Yggstack
|
||||
|
||||
Yggstack is lightweight proxy server in Go, usually wanted to not represent TUN address into Yggdrasil network.
|
||||
|
||||
## Firefox
|
||||
|
||||
Unlike static host/port setup, following configuration rewrites only IPv6 (0200::/7) and .ygg (Alfis DNS) requests:
|
||||
|
||||
``` file:///path/to/proxy.pac
|
||||
function FindProxyForURL(url, host)
|
||||
{
|
||||
if (/^0{0,1}[2-3][a-f0-9]{0,2}:/.test(host) || /\.ygg$/.test(host))
|
||||
{
|
||||
return 'SOCKS5 127.0.0.1:1080; DIRECT';
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Links
|
||||
|
||||
=> https://en.wikipedia.org/wiki/Proxy_auto-config About PAC
|
||||
=> https://github.com/yggdrasil-network/yggstack Yggstack on GitHub
|
||||
33
public/en/rolling-launcher-for-deltachat.gmi
Normal file
33
public/en/rolling-launcher-for-deltachat.gmi
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# Rolling launcher for DeltaChat
|
||||
|
||||
Solution includes auto-update from repository
|
||||
|
||||
Launch script
|
||||
|
||||
``` /path/to/deltachat.sh
|
||||
cd /path/to/deltachat-desktop
|
||||
git pull
|
||||
npm run build
|
||||
npx electron .
|
||||
```
|
||||
|
||||
App menu
|
||||
|
||||
``` ~/.local/share/applications/delta-chat.desktop
|
||||
[Desktop Entry]
|
||||
Name=DeltaChat
|
||||
Exec=/path/to/deltachat.sh
|
||||
Terminal=false
|
||||
Type=Application
|
||||
```
|
||||
|
||||
Reset cache
|
||||
|
||||
``` bash
|
||||
update-desktop-database ~/.local/share/applications
|
||||
```
|
||||
|
||||
## Links
|
||||
|
||||
=> https://delta.chat
|
||||
=> https://github.com/deltachat/deltachat-desktop
|
||||
32
public/en/route-outgoing-connections-to-vpn-interface.gmi
Normal file
32
public/en/route-outgoing-connections-to-vpn-interface.gmi
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
# Route outgoing connections to the VPN interface
|
||||
|
||||
Draft.
|
||||
|
||||
## OpenVPN
|
||||
|
||||
``` bash
|
||||
apt install openvpn
|
||||
```
|
||||
|
||||
## UFW
|
||||
|
||||
``` bash
|
||||
ufw default deny outgoing
|
||||
ufw allow out to VPN_IP proto udp
|
||||
ufw allow out on tun0
|
||||
```
|
||||
* IP/udp - VPN host/protocol
|
||||
* tun0 - valid local interface name
|
||||
|
||||
## Connect
|
||||
|
||||
``` bash
|
||||
openvpn --config /etc/openvpn/client/config.ovpn
|
||||
```
|
||||
* provide auth-user-pass filepath (if required)
|
||||
|
||||
## Test
|
||||
|
||||
``` bash
|
||||
host myip.opendns.com resolver1.opendns.com
|
||||
```
|
||||
7
public/en/run-cargo-build-from-root.gmi
Normal file
7
public/en/run-cargo-build-from-root.gmi
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# Run cargo build from root
|
||||
|
||||
Some apps compiled with Cargo require running as root when the Rust compiler (rustc) is installed in the user environment.
|
||||
|
||||
``` bash
|
||||
sudo -E path/to/app
|
||||
```
|
||||
8
public/en/safe-rollback-to-git-commit.gmi
Normal file
8
public/en/safe-rollback-to-git-commit.gmi
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
# Safe rollback to Git commit
|
||||
|
||||
Lot of options, but I prefer only this one:
|
||||
|
||||
``` bash
|
||||
git revert --no-commit hash..HEAD
|
||||
```
|
||||
* where `hash` is the actual commit hash
|
||||
31
public/en/screen-backlight-correction-on-imac-linux.gmi
Normal file
31
public/en/screen-backlight-correction-on-imac-linux.gmi
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# Screen backlight correction on iMac / Linux
|
||||
|
||||
Before, I have changed backlight with:
|
||||
|
||||
``` bash
|
||||
xrandr --output eDP --brightness 0.8
|
||||
```
|
||||
|
||||
But after switching to Debian / i3, found that screen brightness correction works not like before - even the picture less bright, it looks like back or foreground LED ones still turned on max.
|
||||
|
||||
After some time of researching, found new option for my hardware configuration (it was 255 by default):
|
||||
|
||||
``` bash
|
||||
echo 50 > /sys/class/backlight/radeon_bl1/brightness
|
||||
```
|
||||
|
||||
Now picture looks more contrast and colorful, before apply the recipe above, I had changed acpi_backlight to native in
|
||||
|
||||
``` /etc/default/grub
|
||||
GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_backlight=native"
|
||||
```
|
||||
|
||||
then
|
||||
|
||||
``` bash
|
||||
update-grub
|
||||
```
|
||||
|
||||
Some other tips:
|
||||
|
||||
=> https://wiki.archlinux.org/title/Backlight
|
||||
8
public/en/set-memory-limit-for-systemd-service.gmi
Normal file
8
public/en/set-memory-limit-for-systemd-service.gmi
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
# Set memory limit for systemd service
|
||||
|
||||
``` /etc/systemd/system/some.service
|
||||
[Service]
|
||||
MemoryHigh=256M
|
||||
MemoryMax=512M
|
||||
MemorySwapMax=512M
|
||||
```
|
||||
47
public/en/software/interesting-p2p-projects.gmi
Normal file
47
public/en/software/interesting-p2p-projects.gmi
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
# Interesting P2P projects
|
||||
|
||||
I've created this list to collect decentralized projects that I like.
|
||||
There is nothing here about commercial goals or shitcoins, only freedom of speech.
|
||||
|
||||
=> gemini://bbs.geminispace.org/s/p2p/27641 Discussion on BBS
|
||||
|
||||
## Alfis DNS
|
||||
|
||||
An alternative to centralized DNS providers.
|
||||
Domains hosted on the blockchain; require annual updates through Proof of Work (PoW)
|
||||
|
||||
=> https://github.com/Revertron/Alfis/ Repository on GitHub
|
||||
|
||||
## KevaCoin
|
||||
|
||||
Key/Value storage in blockchain.
|
||||
It's very inexpensive to store any public or encrypted data (such as backups) on other machines as long as network exists!
|
||||
|
||||
=> https://kevacoin.org/ Official website
|
||||
=> https://github.com/kevacoin-team/kevacoin Actual community fork repo
|
||||
=> https://github.com/kvazar-network Observe Kevacoin Universe: wallet fork, exploring software
|
||||
|
||||
## Radicle
|
||||
|
||||
Radicle is an open source, peer-to-peer alternative to centralized Git hosting platforms.
|
||||
|
||||
=> https://radicle.xyz/ Official website
|
||||
|
||||
## Twister
|
||||
|
||||
Twister is a decentralized P2P microblogging platform that stores usernames and post metadata on the blockchain.
|
||||
Data is shared over a Distributed Hash Table (DHT) using a modified BitTorrent library.
|
||||
|
||||
The author ceased development in 2020, but the network is still active.
|
||||
|
||||
=> http://twister.net.co/ Official website
|
||||
=> https://twisterarmy.github.io/ Community
|
||||
|
||||
## YaCy
|
||||
|
||||
A decentralized search engine that operates using the BitTorrent protocol for index exchange.
|
||||
|
||||
While it is slow and may yield irrelevant results,
|
||||
it could be interesting for certain local networks or in censored environments.
|
||||
|
||||
=> https://yacy.net/ Official website
|
||||
24
public/en/tcp-streaming-over-nginx.gmi
Normal file
24
public/en/tcp-streaming-over-nginx.gmi
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
# TCP streaming over Nginx
|
||||
|
||||
Solution useful for all TCP-based protocols like
|
||||
|
||||
* Gopher
|
||||
* Gemini
|
||||
* Spartan
|
||||
* NEX
|
||||
* NPS
|
||||
|
||||
Last one does not require TLS, where configuration much simpler
|
||||
|
||||
``` /etc/nginx/nginx.conf
|
||||
stream {
|
||||
server {
|
||||
listen 1915;
|
||||
proxy_pass 127.0.0.1:1915;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
For encrypted connections, follow documentation
|
||||
|
||||
=> https://nginx.org/en/docs/stream/ngx_stream_core_module.html
|
||||
26
public/en/tricky-ethernet.gmi
Normal file
26
public/en/tricky-ethernet.gmi
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
# Tricky Ethernet
|
||||
|
||||
For a long time, I had strange disconnections on the one of my servers.
|
||||
|
||||
What's checked:
|
||||
|
||||
* Syslog ✓
|
||||
* Firewall ✓
|
||||
* Kernel ✓
|
||||
* Memory ✓
|
||||
* Router ✓
|
||||
* ...
|
||||
* Ethernet socket... disconnected!
|
||||
|
||||
Spent about one month to find this reason.
|
||||
|
||||
By the way, found lot of bugs sensitive to websocket disconnections:
|
||||
|
||||
=> https://github.com/chesslablab/chess-server
|
||||
|
||||
So my trip was useful at least for one open source project :)
|
||||
|
||||
## The conclusion
|
||||
|
||||
Ethernet wire and it sockets has limited life time.
|
||||
If you're old admin, do not forget to check some rusty stuff at first ;)
|
||||
31
public/en/turn-off-screen-with-x-dpms.gmi
Normal file
31
public/en/turn-off-screen-with-x-dpms.gmi
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# Turn off screen with X/DPMS
|
||||
|
||||
immediately:
|
||||
|
||||
``` bash
|
||||
xset dpms force off
|
||||
```
|
||||
|
||||
10 minutes of inactivity:
|
||||
|
||||
``` bash
|
||||
xset dpms 600
|
||||
```
|
||||
|
||||
one hour of inactivity:
|
||||
|
||||
``` bash
|
||||
xset dpms 3600 3600
|
||||
```
|
||||
|
||||
turn off DPMS:
|
||||
|
||||
``` bash
|
||||
xset -dpms
|
||||
```
|
||||
|
||||
turn on DPMS:
|
||||
|
||||
``` bash
|
||||
xset +dpms
|
||||
```
|
||||
5
public/en/update-apps-cache-in-gnome-desktop.gmi
Normal file
5
public/en/update-apps-cache-in-gnome-desktop.gmi
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# Update apps cache in GNOME desktop
|
||||
|
||||
``` bash
|
||||
update-desktop-database ~/.local/share/applications
|
||||
```
|
||||
5
public/en/vscodium-highlight-gemtext-as-markdown.gmi
Normal file
5
public/en/vscodium-highlight-gemtext-as-markdown.gmi
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# VSCodium: highlight Gemtext as Markdown
|
||||
|
||||
* open `Settings` or just enter `Ctrl+Comma`
|
||||
* navigate `Text Editor` -> `Files` -> `Associations` then push `Add Item` button
|
||||
* set `Item` as `*.gmi` and `Value` as `markdown`
|
||||
7
public/en/xash3d-config-notes.gmi
Normal file
7
public/en/xash3d-config-notes.gmi
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# Xash3D config notes
|
||||
|
||||
Disable voice input
|
||||
|
||||
``` valve/game.cfg
|
||||
voice_enable 0
|
||||
```
|
||||
118
public/en/yesterweb-connection-with-webdav.gmi
Normal file
118
public/en/yesterweb-connection-with-webdav.gmi
Normal file
|
|
@ -0,0 +1,118 @@
|
|||
# Yesterweb connection with WebDAV
|
||||
|
||||
For some reasons, official page with WebDAV connection details is not available anymore
|
||||
=> https://gemini.yesterweb.org/welcome.gmi
|
||||
|
||||
Just created this note as the alternative to WebArchive, plus few additional notes below:
|
||||
|
||||
```
|
||||
Hostname: cities.yesterweb.org
|
||||
Port: 1994
|
||||
Encryption: SSL/TLS (davs://)
|
||||
Username and Password are the same as the ones you just set
|
||||
```
|
||||
|
||||
* username must be lowercase
|
||||
|
||||
## Nautilus
|
||||
|
||||
Nautilus is default file manager in the GNOME desktop environment, with native WebDAV support.
|
||||
|
||||
### Multi-account sessions
|
||||
|
||||
If you own multiple accounts on Yesterweb, the auth manager would cache previous login session.
|
||||
To reset it, just run following command in the terminal from the current user:
|
||||
|
||||
``` bash
|
||||
gnome-keyring-daemon -r
|
||||
```
|
||||
|
||||
then, re-connect with the new account credentials.
|
||||
|
||||
### Keyring auth issues
|
||||
|
||||
If accessing the keyring fails with error like:
|
||||
|
||||
> The password you use to log in to your computer no longer matches that of your login keyring
|
||||
|
||||
just drop this file and try unlock it again:
|
||||
|
||||
``` bash
|
||||
rm ~/.local/share/keyrings/login.keyring
|
||||
```
|
||||
|
||||
## VSCode
|
||||
|
||||
Manual file uploads are not always useful.
|
||||
It is much better to sync recent changes directly from the editor by using WebDAV extension.
|
||||
|
||||
### WebDAV Upload (original)
|
||||
|
||||
1. In the VSCode, it should be available from extensions; in the VSCodium, install using VSIX file:
|
||||
|
||||
=> https://marketplace.visualstudio.com/items?itemName=jorithvdheuvel.webdav VisualStudio Marketplace
|
||||
|
||||
2. Create configuration file in the project root:
|
||||
|
||||
``` /webdav.json
|
||||
{
|
||||
"/public": {
|
||||
"url": "https://cities.yesterweb.org:1994/",
|
||||
"ignoreSSLErrors": true
|
||||
}
|
||||
}
|
||||
```
|
||||
* to use multiple keyring credentials from different VSCode projects, append the username in subdomain
|
||||
* to prevent sensitive data uploads by mistake - keep system files like `.vscode`, `.git`, `webdav.json`, etc in the project root; while public ones - in the `/public` folder
|
||||
|
||||
3. Open file to upload in the editor then run:
|
||||
|
||||
```Ctrl+Shift+P```
|
||||
|
||||
* it is important to open any file in the editor before run this command, to handle uploading target properly
|
||||
|
||||
4. Enter Yesterweb login/password (on first connection)
|
||||
|
||||
5. Select the operation from list:
|
||||
|
||||
* WebDAV: Compare with remote WebDAV
|
||||
* WebDAV: Upload to remote WebDAV
|
||||
|
||||
### WebDAV Upload fork by YGGverse
|
||||
|
||||
Official extension does not implement following features:
|
||||
|
||||
* remote file directory auto-create
|
||||
* auto-upload file on save
|
||||
* filename patterns to upload
|
||||
|
||||
even pushed some PRs into the official repository,
|
||||
to not await for merge, simply use this fork (YGGverse branch)
|
||||
|
||||
Also take a look on additional config options:
|
||||
|
||||
``` /webdav.json
|
||||
{
|
||||
"/public": {
|
||||
"url": "https://cities.yesterweb.org:1994/",
|
||||
"ignoreSSLErrors": true,
|
||||
"uploadOnSave": {
|
||||
"enabled": true,
|
||||
"pattern": [
|
||||
".gmi$"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
=> https://github.com/YGGverse/vscode-webdav#build-from-sources Source on GitHub (with build instructions)
|
||||
|
||||
### LSAF Rest API for WebDAV Upload
|
||||
|
||||
Recently found yet another fork of the extension above.
|
||||
|
||||
I haven't tried whether Yesterweb really supports it or what is included in this fork,
|
||||
but the development of this project appears to be quite active, so it is worth checking out:
|
||||
|
||||
=> https://github.com/jbodart-argenx/vscode-lsaf-restapi-upload Source on GitHub
|
||||
20
public/en/yggdrasil-bittorrent-trackers.gmi
Normal file
20
public/en/yggdrasil-bittorrent-trackers.gmi
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# Yggdrasil torrent trackers
|
||||
|
||||
## HTTP
|
||||
|
||||
* http://[21e:6565:9c87:a49d:dafa:92c1:b33f:f21]:1337/announce
|
||||
* http://[316:c51a:62a3:8b9::5]/announce
|
||||
|
||||
## UDP
|
||||
|
||||
* udp://[302:68d0:f0d5:b88d::fdb]:6969
|
||||
|
||||
## Links
|
||||
|
||||
=> https://github.com/YGGverse/yggdrasil-trackers
|
||||
=> https://yggdrasil-network.github.io/services.html#bittorrent
|
||||
=> http://[222:a8e4:50cd:55c:788e:b0a5:4e2f:a92c]/yggdrasil:sites_and_services:other_network_services
|
||||
|
||||
### See also
|
||||
|
||||
=> mycelium-bittorrent-trackers.gmi Mycelium torrent trackers
|
||||
31
public/en/youtube-downloads-with-yt-dlp.gmi
Normal file
31
public/en/youtube-downloads-with-yt-dlp.gmi
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# YouTube downloads with yt-dlp
|
||||
|
||||
## Download in max resolution
|
||||
|
||||
``` bash
|
||||
yt-dlp CHANNEL_URL|PLAYLIST_URL|VIDEO_URL
|
||||
```
|
||||
|
||||
## Change default resolution to 1080
|
||||
|
||||
``` bash
|
||||
yt-dlp CHANNEL_URL|PLAYLIST_URL|VIDEO_URL -S res:1080
|
||||
```
|
||||
|
||||
## Download to location by source meta mask
|
||||
|
||||
``` bash
|
||||
yt-dlp CHANNEL_URL/playlists -o '%(uploader)s/%(playlist)s/%(title)s.%(ext)s'
|
||||
```
|
||||
|
||||
## Extract audio
|
||||
|
||||
``` bash
|
||||
yt-dlp CHANNEL_URL|PLAYLIST_URL|VIDEO_URL --extract-audio --audio-format vorbis
|
||||
```
|
||||
|
||||
## Get help
|
||||
|
||||
``` bash
|
||||
yt-dlp --help
|
||||
```
|
||||
5
public/en/zip-modified-files-only.gmi
Normal file
5
public/en/zip-modified-files-only.gmi
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# Zip modified files only
|
||||
|
||||
``` bash
|
||||
zip modified-files.zip $(git ls-files --modified)
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue