Elektrine
Log in Register
Paige Chat Timeline Gallery Friends Email Drive DNS Private DNS Domains VPN Kairo Nerve
Remote

Alexander Dunkel

@alex@himself.alexanderdunkel.com
mastodon 4.7.3
  • Open on himself.alexanderdunkel.com

Problem Solver, Data Engineer, Landscape & Urban Planner, Programmer, Windsurfer, Photographer, Father; not always in this order

Works @ioer@wisskomm.social

63 Followers
193 Following
35 Posts
Joined April 26, 2023
Homepage:
https://alexanderdunkel.com
Dev Blog:
https://du.nkel.dev
Github:
https://github.com/Sieboldianus
Follow me from Bluesky:
https://bsky.app/profile/alex.himself.alexanderdunkel.com.ap.brid.gy
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 1w ago

Herbsternte!

1
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 1mo ago

Das hat wirklich Spaß gemacht: Teil 2 meiner Batterie-Automatisierungs Serie ist draußen. Diesmal mit Update für zwei Batterien und vielen interessanten Feintunings der Regelung. Keine Plugins notwendig - vollständig in Home Assistant's nativem yaml Syntax. 1:1 für Balkonkraftwerke nutzbar.

https://du.nkel.dev/blog/2026-07-26_dual_battery_automation/

@balkonsolar@freiburg.social

#pv #batterie #solar #homeassistant #homelab

du.nkel.dev
14
0
10
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago

Parenting kids often requires tricky compromises. When his friends started getting gaming consoles, we wanted to give our son the same opportunity so he wouldn't feel left out. However, we have a small apartment, no TV, and I wasn't keen on buying hot, loud hardware or getting locked into walled gardens. Working in sustainability sciences, I also try to avoid unnecessary resource consumption. I wanted to see if I could build a viable alternative to buying a dedicated console.

I ended up buying a used 4U Supermicro server on eBay (I lucked out and broke even by selling the included Tesla V100S GPU) and installed a 24GB RTX 4000 Blackwell. This machine sits 130km away, running on remote PV-solar power. I set up a cloaked Windows 11 VM with GPU passthrough, streaming via Sunshine over a rock-solid IPsec (IKEv2) tunnel.

For his device, I rescued an old 2017 Galaxy Tab S3. I flashed a clean ROM, set up TimeLimit via F-Droid (allowing 30 mins/day, 2 hrs on weekends), and attached a GameSir G8 controller.

I also wanted him to be somewhat independent, so I created a simple Home Assistant dashboard. When he wants to play, he taps a single button that sends an IPMI Redfish command to boot the remote server. A minute later, he opens Moonlight and is playing Forza Horizon 5 fluidly. A 2024 game running flawlessly on a 9-year-old tablet!

The flexibility is absolutely great. Whether we are traveling with an old laptop, using my Pixel phone (greetings #Graphene), or visiting his grandmother's TV, the setup just works. Best of all, I only have one central OS to maintain. The Xeon CPU has 72 cores and barely hits 9% usage during gameplay, so I'm planning to add a second GPU to share the server with a friend's family.

I am aware that having the technical capacity to build this is a unique privilege. I still wanted to share this to show that alternatives to constant hardware consumption exist. By pooling resources and reusing old tech, we can escape walled gardens without sacrificing the experience.

#HomeLab #Parenting #ScreenTime #Upcycling #SolarPunk #CloudGaming #Moonlight #Sustainability

himself.alexanderdunkel.com
63
8
19
1
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 3w ago

@zendis@social.bund.de Grist (https://www.getgrist.com/) ist eine unglaublich ausgereifte, souveräne Software. Der Französische Staat hat kritische Komponenten finanziert (z.B. SSO). Die kleine Firma mit wenigen Angestellten strauchelt (oder "kämpft"?) trotzdem gerade und sucht nach Möglichkeiten, sich zu finanzieren. Wäre das nicht ein tolles Kooperations-Projekt (mit der franzsösischen DINUM oder ANCT), um souveräne Europäische Software auch weiterhin unabhängig zu halten? Ich weiß, Ihr habt genauso viele Probleme. Aber es wäre aus meiner Sicht wichtig, sich mit den Nachbarn zusammen zu tun, um langfristig die nötige kritische Masse für solch wichtige Infrastruktur-Komponenten zu haben.

@grist@fosstodon.org

Spreadsheet Software to End Data Chaos | Grist
Grist

Spreadsheet Software to End Data Chaos | Grist

Grist is a relational spreadsheet-database that empowers you to organize your data, your way. Get started with a free trial.

1
0
1
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 3w ago

(After a brief moment..) ... I really like the new Funkwhale 2.0.0 Layout/Colors! Many thanks @funkwhale@social.funkwhale.audio!

The update from 1.4.0 to 2.0.10 required more preparation, but overall it was a smooth experience. I only had to fix my nginx Content-Security-Policy list and a few .env updates.

There was a minor UI bug showing a horizontal scroll bar, but I was able to quick-fix it [1].

[1]: https://dev.funkwhale.audio/funkwhale/funkwhale/-/work_items/2763

#funkwhale #self-hosted

dev.funkwhale.audio
1
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 4mo ago

Beautiful routing alternative: #Organicmaps on #grapheneos. I had to look up on how to add intermediate stops. Everything else is very intuitive. Refreshing to see a viable alternative to gmaps!

himself.alexanderdunkel.com

Alex himself

6
0
2
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 8mo ago

Was für ein spaßiges, kleines Projekt! Ich habe meinen Blog Post zur Open Source Automatisierung des Marstek Batteriespeichers jetzt doch noch auf Deutsch übersetzt:

https://du.nkel.dev/blog/de/2026-01-11_marstek-batterie-homeassistant/

@balkonsolar@freiburg.social @energy_charts_d@wisskomm.social @eeMag@mastodon.no2nd.earth @AgoraEW@mastodon.energy
@ccc@chaos.social

#batterie #pv #eeg #energiewende #opensource #automatisierung #devops

du.nkel.dev
17
2
10
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 2mo ago

Norway is really uncomplicated as far as the word goes. We are on a camping/car trip. Camping registration is just pay & stay. I don't need to provide my name, Id, or address. WiFi? Free guest sign in everywhere, no acceptance of ToS or anything. All things appear thought through. Thirsty? The next public tap water is likely just metres away. Everyone cleans up after staying in public places. It is just easy and worry free, especially when traveling with small kids. Awesome first time, #Norway!

himself.alexanderdunkel.com
2
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago

Wir hatten immer Probleme die Handys im VW T4 beim langen Stehen auf Stellplätzen zu laden.

Heute habe ich eine 12 Volt Steckdose und ein USB Ladegerät eingebaut, versteckt unten hinter dem Fahrersitz. Die Stromversorgung läuft über die Zweitbatterie (unter dem Fahrersitz). Um das System abzusichern, habe ich einen kleinen Sicherungskasten genommen. Die Steckdose ist dauerhaft mit 15 Ampere abgesichert. Das USB Ladegerät wird über einen eigenen Schalter bedient und ist separat mit 5 Ampere gesichert. Das Verlegen und Crimpen der Kabel war eine kleine Herausforderung, wenn man vorher nur PV-Anlagen gecrimpt hat - Fummelarbeit!

Nachdem der Stromkreis erfolgreich getestet war, habe ich die freiliegenden Kontakte am Sicherungskasten isoliert und den Kasten mit Kabelbindern fixiert. Einem Kurzschluss durch Vibrationen ist damit vorgebeugt.

Die nächste Reise kann kommen!

#t4 #bulli #camperausbau #kfzelektrik #diy #vanlife

himself.alexanderdunkel.com

Alex himself

4
2
3
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago

I wanted to add a button to Home Assistant that would turn on my remote server via IPMI. I also did not want to add the ipmitool dependencies to my #HASS container. Since IPMI supports redfish, a simple rest command in home assistant is enough. Add this to your `configuration.yaml`:

```yaml
rest_command:
# Command to turn the server ON
server_power_on:
url: "https://192.168.100.111/redfish/v1/Systems/1/Actions/ComputerSystem.Reset"
method: post
username: "hass"
password: "eX4mP13p455w0Rd"
verify_ssl: false
headers:
Content-Type: "application/json"
payload: '{"ResetType": "On"}'

# Command to gracefully shut down the OS via IPMI (ACPI signal)
server_power_off:
url: "https://192.168.100.111/redfish/v1/Systems/1/Actions/ComputerSystem.Reset"
method: post
username: "hass"
password: "eX4mP13p455w0Rd"
verify_ssl: false
headers:
Content-Type: "application/json"
payload: '{"ResetType": "GracefulShutdown"}'

sensor:
- platform: rest
name: "Server Power State"
resource: "https://192.168.100.111/redfish/v1/Systems/1"
method: GET
username: "hass"
password: "eX4mP13p455w0Rd"
verify_ssl: false
scan_interval: 10 # Checks every 10 seconds
value_template: "{{ value_json.PowerState }}"

template:
- switch:
- name: "Server"
state: "{{ is_state('sensor.server_power_state', 'On') }}"
icon: >-
{% if is_state('sensor.server_power_state', 'On') %}
mdi:server-network
{% else %}
mdi:server-network-off
{% endif %}
turn_on:
action: rest_command.server_power_on
turn_off:
action: rest_command.server_power_off

```

Make sure to create a separate IPMI user with "Operator" privileges (allowed to start/shutdown, but not to modify settings). If you have e.g. #Proxmox on the server, it will receive the IPMI Graceful Shutdown command and cleanly stop all VMs before exiting.

Works great!

#hass #homeassistant #redfish #api #ipmi #supermicro #homelab

himself.alexanderdunkel.com
5
2
8
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 2mo ago

@grapheneos_de@mastodon.social Allein das wäre ein Hauptgrund, keinen VW zu kaufen. Im Vergleich dazu: Ich habe zwei chinesische Produkte (Marstek Hausbatterie, Huawei Wechselrichter). Beide haben vollen support für standardisierte, lokale Schnittstellen (Modbus TCP). Keine Netzwerkverbindung oder Internet notwendig. Alle Daten abrufbar, alles frei einstellbar über die Software, die ich möchte (Home Assistant). So muss das sein, #VW.

himself.alexanderdunkel.com
1
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago

We’re rethinking the conference #Hackathon format by launching a HaCLAthon (C=Collaborative, L=Long-term, A=Asynchronous) [1] for the #IOER 2026 conference. [2]

The goal is a living #JupyterBook that becomes a citable publication with a DOI. Here is the stack I built to make it actually work:

1. The Problem: Jupyter Notebooks are great for #DataScience, but a difficult for collaborative #Git diffs and non-technical domain experts. Solution: We use #Jupytext to maintain a bidirectional sync between .ipynb (for code) and .md (for text stories).

2. The Problem: Inviting external contributions usually means a security/privacy black box if you use 3rd-party CMS brokers to link into Github/Gitlabs. Solution: I deployed a self-hosted #Golang OAuth broker to handle the GitHub handshake on our servers as a microsservice. 100% #DSGVO compliant and sovereign. [3]

3. The Problem: We want domain experts to write, but we don't want to force them to learn Git. Solution: Integrated a browser-based visual editor (#DecapCMS/#SveltiaCMS). Edits enter a Kanban-style editorial workflow as PRs. We review/merge on Github, and our #GitLab CI/CD builds the book.

4. The Result: Developers get #Jupyter4NFDI or local #Docker environments. Writers get a WYSIWYG browser editor. Everyone gets listed as an author on a persistent scientific artifact.

Documentation is also about building inclusive pipelines!

Want to contribute a "hack" or spatial data story?
We are looking for contributions on urban resilience, circularity, and land-use change. 🌍

Github: https://github.com/ioer-dresden/ioer-conference-2026-haclathon
Book: https://hack.conference.ioer.info/
Background: https://ad.vgiscience.org/links/posts/2026-05-07-haclathon/
Slides: https://slides.ad.ioer.info/haclathon/

#OpenScience #OpenData #Sustainability #Jupyter #DevOps #GIS #Infrastructure #HaCLAthon

@ioer@wisskomm.social @diegorybski.bsky.social

[1]: https://hack.conference.ioer.info/
[2]: https://conference.ioer.info/
[3]: https://gitlab.hrz.tu-chemnitz.de/ioer/fdz/tools/cms-auth
[4]: https://slides.ad.ioer.info/haclathon/

himself.alexanderdunkel.com
3
0
4
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago
Replying to
@KIT_Karlsruhe @team Sehr gut! Noch besser wäre gewesen, wenn Ihr eure Kolleg:innen davon hättet abraten können, all in on MS Teams (& co.) zu gehen.. seitdem ist es so mühsam mit Kolleginnen an der KIT zusammen zu arbeiten, weil Microsoft ein walled garden ist.
3
2
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago
Replying to
@aeblyve@mastodon.social I think more or less curiosity. Ipsec can do the same, with just more options. I also tried to prefer stable, tested solutions over brand new technology. The ipsec site2site connection has never lost me in the past 10years, with two dynamic WANs these days. Wrote a blog post about this here: https://du.nkel.dev/blog/2021-11-19_pfsense_opnsense_ipsec_cgnat/ [Edit] forgot: policy based routing. Without this, my packets on each side wouldn't know where to go with 10+ vlans ^^
du.nkel.dev
2
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago

Finally installed 9 nesting boxes for the common swift! / Endlich haben wir 9 Mauersegler Nistkästen installiert.

If you look to the right, you will see a stove vent hole. For about six years, this hole has served as a nest for a pair of common swifts. The same pair has returned from Africa every year since then. Their nest was very small, so we bought them a couple of luxury apartments. The first swifts are expected to arrive from Africa on or after 15 April. I'm excited to see their reaction!

---

Auf der rechten Seite seht ihr ein Loch einer E-Herd-Entlüftung. Seit etwa sechs Jahren diente diese Loch einem Paar Mauerseglern als Nistplatz. Seitdem kehrt dasselbe Paar jedes Jahr aus Afrika zurück. Da das Nest sehr klein war, haben wir ein paar Luxuswohnungen besorgt. Die ersten von den Mauerseglern kehren ab dem 15. April aus Afrika zurück. Ich bin gespannt auf die Reaktion!

#mauersegler #swift #avifauna #birdlife

himself.alexanderdunkel.com

Alex himself

2
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 7mo ago

I added an #S3-compatible Storage backend to a #selfhosted #Grist [1] instance. This allows creating forms with "Attachements" in Grist (e.g. users can upload photos). I experimented with several and settled on Zenko Scality #CloudServer [2]:

- #MinIO [3] is somewhat deprecated and not really open source anymore. Its future is unsure.
- #GarageHQ [4] looks pretty great and I wished I could have used this, but it is not yet feature-complete with S3 protocol and specifically missing the versioning feature (I reported this [5])
- #Zenko Scality works out of the box; it is a bit too "big" for my context (aimed at thousands of parallel users) and uses 500MB memory; but it does the job for now.

The S3 Storage protocol is needed in many situations for data infrastructure and allows to decouple persistend data from ephemeral base images (I am considering adding this to my #Mastodon instance, too).

I posted my compose here [6].

[1]: https://github.com/gristlabs/grist-core
[2]: https://github.com/scality/cloudserver
[3]: https://www.min.io/
[4]: https://garagehq.deuxfleurs.fr/
[5]: https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/166
[6]: https://github.com/scality/Zenko/discussions/1779#discussioncomment-15869532

himself.alexanderdunkel.com

Alex himself

3
0
2
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 6mo ago

A happy cat. (I never posted cat pictures, so this was on my list..)

#cat #happy

himself.alexanderdunkel.com
2
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 4mo ago

IOER FDZ Carto-Lab Docker v1.1.0 is released [1].

The main addition in this version is the integration of #JupyterGIS. It is a stunning project that brings a full web-based GIS suite directly into the Jupyter environment, complete with real-time collaborative editing for team projects [2].

I also expanded the documentation to cover advanced developer workflows. This includes new guides on persistent SSH client authentication for Git [3] and the templates I use for setting up automated, reproducible research pipelines [4].

Available via our Gitlab Chemnitz Registry (internal) and publicly via Quay.io:
https://quay.io/repository/ioer-fdz/carto-lab-docker?tab=info

#GIS #Jupyter #SpatialDataScience #ReproducibleResearch #Docker #RDM

@ioer@wisskomm.social

[1]: https://github.com/ioer-dresden/carto-lab-docker/releases/tag/v1.1.0
[2]: https://cartolab.fdz.ioer.info/jupytergis/
[3]: https://cartolab.fdz.ioer.info/use-cases/ssh-client-auth/
[4]: https://cartolab.fdz.ioer.info/use-cases/automated-research-setup/

@ioer

himself.alexanderdunkel.com

Alex himself

1
1
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago
Replying to
@mariejulien@mastodon.social Ha! Yes thinking about it.. You may be right. But I would probably do it again exactly as I did.. As is expected from an engineer working on problems 😂
1
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago
Replying to
@team @KIT_Karlsruhe Vielen Dank: Das leite ich gleich mal weiter.. wir waren bisher über Matrix unterwegs, aber kürzlich sind die meisten meiner Kontakte beim KIT mit Verweis auf Teams gewechselt.
1
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 8mo ago
Replying to
@bagder@mastodon.social I've just read about what you have to endure with AI Slop [1], [2]. Just came to say: Don't give up and don't loose your motivation! [1]: https://gist.github.com/bagder/07f7581f6e3d78ef37dfbfc81fd1d1cd [2]: https://hackerone.com/reports/2199174
AI slop security reports submitted to curl
Gist

AI slop security reports submitted to curl

AI slop security reports submitted to curl. GitHub Gist: instantly share code, notes, and snippets.

2
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago

Two things happened yesterday. First, I found a broken MC4-Connector on my 5-year-old solar panel installation. I noticed this last week when looking at pv string volatages/current, where one of the five strings was suddenly dropping under load. I used a thermal imaging camera to check on pv modules and found two hotspots. One was directly above the broken connector.

This is no sign of aging! The installer likely caused this from the beginning. I could identify the missing string current in all my logs going backward to the date of installation in 2020.

Shoddy construction! From now on, I will crimp all my PV cables myself. It is apparently impossible to trust construction companies with this. I will replace the broken MC4-Connector next week...

@balkonsolar@freiburg.social
#pv #energie #electricity

himself.alexanderdunkel.com
1
2
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 6mo ago

Giscus [1] is awesome for adding comments to static sites using the Github discussion feature. However, relying on GitHub always felt like a double-edged sword.

I just saw BeBlog that allows comments to be integrated with self-hosted Gitlab instances. Nice! Here's a blog post [3]. I haven't tried it. Anyone?

[1]: https://github.com/giscus/giscus
[2]: https://gitlab.com/antonbelev/beblob
[3]: https://belev.me/2025/02/20/Introducing-BeBlob-A-GitLab-Powered-Comment-Section-for-Static-Websites/

#comments #static #pages #blog #integration #community #feature

GitHub

GitHub - giscus/giscus: A commenting system powered by GitHub Discussions. :speech_balloon: :gem:

A commenting system powered by GitHub Discussions. :octocat: :speech_balloon: :gem: - giscus/giscus

1
0
1
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 7mo ago
Replying to

@radim@mastodon.social Danke für die Aufklärung! Interessant:

Wer die Tracer-Flüssigkeit freigesetzt hatte, wird noch von der Stadtentwässerung nachgeprüft: Das muss vorab bei der Unteren Wasserbehörde angemeldet werden. In diesem Fall war das nicht geschehen.

1
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 7mo ago

Heute früh gesehen am Kaitzbach in Dresden an der 71. Grundschule. Ist bekannt, was die Ursache für die Grünfärbung ist?

@lfulg@social.sachsen.de @BitsUndBaeumeDresden@dresden.network

#dresden #kaitzbach #umwelt #wasser

himself.alexanderdunkel.com
1
2
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 1mo ago

Mal wieder ein "Digitalisierungs-Moment": Um sich bei huk24.de mit Keepass Auto-type einzuloggen, lautet das Muster (nach einigem probieren) so:

```
{USERNAME}{TAB}{TAB}{TAB}{TAB}{TAB}{ENTER}{DELAY 3000}{PASSWORD}{ENTER}
```
Liebe @huk24: Denkt doch bitte an die Menschen, die nicht nur mit der Maus unterwegs sind.

Danach muss man natürlich noch auf den sms code warten, weil TOTP nicht unterstützt wird.

0
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago
Replying to
@mariejulien@mastodon.social What made you think so?!
0
2
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5d ago
0
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 8mo ago
Replying to
@ekorn@chaos.social Danke! Die Steuerungsautomatik sollte bei jedem Speicher ähnlich funktionieren. Was geändert werden muss sind die sensoren/register. Cool, berichte gern (in den kommentaren auf dem blog post oder so), wie es lief. Ich habe schon eine weitere Version der automatik am laufen, die basierend auf dem Sonnenstand/Jahresverlauf mittels cosine-Funktion die Parameter justiert (Sommer: Mehr Energie, höhere Puffer möglich; Winter, weniger, d.. geringere Startwerte besser etc.). Werde ich bei Gelegenheit im Blog post mal hinzufügen, wenn ausgiebig getestet.. Mit der aktuellen Automatik bin ich aber schon sehr zufrieden. Das war gestern
0
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 1mo ago

At #IOER_FDz we faced a common challenge: as our technical workflows, data publication guidelines, and infrastructure grows, we realized colleagues rarely read through our extensive documentation. Attention is limited, and when someone needs to solve a specific problem, large guides are rarely read. We needed a communication agent that could bridge the gap between individual questions and our shared internal knowledge base.

To address this, we now have an embedded #AnythingLLM assistant into our Material for MkDocs documentation. It works great! Here are a few interesting technical infos:

- To keep internal data locally and avoid commercial APIs, the inference is handled on university HPC hardware via ScaDS.AI API (TU Dresden). We paired `meta-llama/Llama-3.3-70B-Instruct` with `Qwen/Qwen3-Embedding-4B` to bypass the context window bottlenecks of smaller default embedders.

Feeding raw documentation into a RAG vector database was not _so_ trivial:

1. Ingesting raw repository Markdown caused the LLM to hallucinate URLs. It outputted broken relative `.md` paths, lacked awareness of the actual navigation hierarchy, and character-based chunking cut long tables off from metadata headers.
2. We rely on a number of mkdocs plugins (macros, live database tables pulled in CI&CD, `gen-files`). This meant that the raw repository files do not contain the final compiled text, so the LLM was first missing part of the information.

I added a native MkDocs build hook (`mkdocs_llm_hook.py`). The hook intercepts the compiled Markdown after macros are executed, resolves internal relative links to absolute production URLs, semantically pre-chunks content along Markdown headings (`#`, `##`, `###`), and produces hash-anchored links for the LLM. Metadata (`Canonical_URL` and `Document_Hierarchy`) is added to each chunk before syncing with the AnythingLLM API during `mkdocs build`.

I documented the hook script, system prompt, model parameters, and UI fixes in a Gist for those interested here:

https://gist.github.com/Sieboldianus/8c14da1370891ba2fcdf09882bd78daf

It is a nice way to help colleagues find needed information faster and with better relevance filtering. Accessibility bonus: You can ask it in any language!

#MkDocs #AnythingLLM #RAG #ScaDS #Python #DevOps #OpenSource

himself.alexanderdunkel.com
0
0
1
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 1mo ago

A very minimal member count growth svg, generated via CI&CD in plain python [1] from Keycloak API (read-only, limited scope). See it in action: https://lausitzer-surfer.de/#mitglieder

🤙 Hang Loose!

[1]: https://framagit.org/lausitzer-surfer-eV/website/-/blob/main/scripts/update_member_count.py?ref_type=heads#L116

#python #cicd #visualization #web #minimal #keycloak

lausitzer-surfer.de
0
0
1
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago
Replying to
@maexchen1@nrw.social Danke! Hatte ich mir dann auch gedacht, aber beim Sicherungskasten haben die dann nicht mehr gepasst. Sitzt aber alles Bombenfest und kommt nicht in die Nähe von Metall.
0
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 2mo ago

I've updated the documentation for Carto-Lab Docker [1]. Maintaining open source software in spatial data science requires documenting reliable research workflows. I find this even more important than package and feature updates.

New sections cover specific setups for reproducible spatial data processing, such as connecting VS Code to remote Jupyter containers [2], managing long-running spatial jobs in the background [3], and configuring SSH agent support for automated Git authentication [4].

#SpatialDataScience #OpenScience #Reproducibility #JupyterLab

[1]: https://cartolab.fdz.ioer.info/
[2]: https://cartolab.fdz.ioer.info/use-cases/vscode-remote/
[3]: https://cartolab.fdz.ioer.info/use-cases/long-running-jobs/
[4]: https://cartolab.fdz.ioer.info/use-cases/ssh-client-auth/

himself.alexanderdunkel.com
0
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 5mo ago
Replying to

@dalai@toots.ch Good catch! Luckily this one is about as real as foo and bar. It’s just a leet-speak example password.

0
0
0
0
Open post
Alexander Dunkel @alex@himself.alexanderdunkel.com
· 6mo ago

Artemis II picture of earth (left) compared to an image from 1972 (right). I am not sure if the dusty look for today’s image is a deliberate photo settings choice (e.g. night side) or partly explained by physical changes? Anyway, great pictures.

0
0
0
0
Back
313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

I2P eepsite

j6b6cyk6gjmepjih7jjadxgxvvf3lzzujljuu2v4biemzpg3naya.b32.i2p

Platform

  • Email
  • Chat
  • Timeline
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ
  • Lite (no JS)

Legal

  • Terms of Service
  • Privacy Policy
  • Transparency Report
  • Report Abuse
  • Warrant Canary
  • VPN Policy

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 10:16:19 UTC