commit 3470b542d50c7d6eca3ad07ed2af704c0009d2eb Author: Jan Kremer Date: Tue Mar 26 15:40:28 2024 +0100 Init: neue Webseite diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..3550a30 --- /dev/null +++ b/.envrc @@ -0,0 +1 @@ +use flake diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1597dfe --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.hugo_build.lock +.direnv diff --git a/README.md b/README.md new file mode 100644 index 0000000..98c4f7b --- /dev/null +++ b/README.md @@ -0,0 +1,10 @@ +# Links + +- [Webseite](https://jankremer.eu) +- [Spiegel](https://kremer.codeberg.page) +- [Repositorium](https://codeberg.org/kremer/jankremer.eu) +- [Repo Spiegel](https://https://git.disroot.org/kremer/jankremer.eu) + +# Lizenz + +CC-BY-SA 4.0 \| Jan Kremer \| 2021–2024 diff --git a/archetypes/blog.md b/archetypes/blog.md new file mode 100644 index 0000000..4ede716 --- /dev/null +++ b/archetypes/blog.md @@ -0,0 +1,8 @@ +--- +title: {{ replace .Name "-" " " | title }} +date: {{ .Date }} +description: +tags: +showComments: false +draft: true +--- diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..29346c2 --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,5 @@ +--- +title: {{ replace .Name "-" " " | title }} +date: {{ .Date }} +draft: true +--- diff --git a/archetypes/micro.md b/archetypes/micro.md new file mode 100644 index 0000000..adffdc6 --- /dev/null +++ b/archetypes/micro.md @@ -0,0 +1,8 @@ +--- +title: {{ replace .Name "-" " " | title }} +date: {{ .Date }} +tags: + - micro +showComments: false +draft: true +--- diff --git a/archetypes/photos.md b/archetypes/photos.md new file mode 100644 index 0000000..4352cc8 --- /dev/null +++ b/archetypes/photos.md @@ -0,0 +1,10 @@ +--- +title: {{ replace .Name "-" " " | title }} +date: {{ .Date }} +description: +feature: +tags: + - photos +showComments: false +draft: true +--- diff --git a/assets/css/main.css b/assets/css/main.css new file mode 100644 index 0000000..fd5ec63 --- /dev/null +++ b/assets/css/main.css @@ -0,0 +1,185 @@ +@font-face { + font-family: "EB Garamond"; + src: + /* local("EB Garamond"), */ + url("/fonts/EBGaramond-VariableFont_wght.ttf"); + /* font-weight: normal; */ + /* font-style: normal; */ + /* font-display: swap; */ +} + +:root { + font-size: calc(1rem + 0.25vw); + --red: #FC361D; + --blue1: #116080; + --blue2: #105099; + --light-gray: #F0F0F0; + --white: white; + --beige: #FCF9EC; + --text1: #1a1a1a; + --text2: #6f6f6f; + --text3: #999999; +} + +body { + color: var(--text); + background: var(--background); + font-family: "eb garamond", serif; + font-variant-numeric: oldstyle-nums; + /* font-variant-ligatures: common-ligatures; */ + line-height: 1.5; + margin: auto; + padding: 1rem; + max-width: 70ch; + font-weight: normal; +} + +header { + border-bottom: 1px solid var(--text3); + margin-bottom: 1rem; + + nav { + + ul { + + font-size: 1.25rem; + list-style: none; + display: flex; + justify-content: space-between; + padding: 0; + + .active { + text-decoration: underline; + } + + } + } +} + +p { + padding: 0; + margin-top: 0; + text-align: justify; + text-justify: inter-word; +} + +article>p:nth-of-type(2)::first-letter { + font-size: 3rem; + float: left; + line-height: 2.9rem; + padding-right: 0.2rem; +} + +a { + color: var(--red); + text-decoration: none; +} + +h1 { + padding: 0; + margin: 0; + font-size: 2rem; + font-weight: normal; + text-align: center; +} + +h2 { + padding: 0; + margin: 0; + font-size: 1.75rem; + font-weight: normal; +} + +h3 { + padding: 0; + margin: 0; + font-size: 1.5rem; + font-weight: normal; +} + +time { + font-size: 1rem; + float: right; + color: var(--blue2); +} + +table { + border-collapse: collapse; + width: 100%; + + th { + text-align: left; + border-bottom: 1px solid var(--text1); + } +} + +hr { + border: 0.1px solid var(--text2); +} + +img { + max-width: 100%; +} + +footer { + border-top: 1px solid var(--text3); + margin-top: 1rem; + + p { + font-size: 0.75rem; + padding: 1rem; + text-align: center; + color: var(--text2); + + a { + color: var(--text2); + } + } +} + +.list { + + h2 { + margin-top: 2rem; + margin-bottom: 0; + + a { + color: var(--text1); + } + + } + + .lead { + margin: 0; + font-size: 1rem; + text-align: left; + } + +} + +.tags { + ul { + list-style: none; + display: flex; + justify-content: space-between; + padding: 0 1rem; + font-size: 0.75rem; + + li { + padding: 0rem 0.3rem; + border: 1px solid var(--text1); + border-radius: 0.3rem; + } + } +} + +.title { + font-size: 2rem; + margin-bottom: 0.5rem; +} + +.lead { + text-align: center; + font-size: 1.5rem; + margin-bottom: 1rem; +} diff --git a/assets/img/btc.png b/assets/img/btc.png new file mode 100644 index 0000000..529fe75 Binary files /dev/null and b/assets/img/btc.png differ diff --git a/assets/img/eth.png b/assets/img/eth.png new file mode 100644 index 0000000..4da54fd Binary files /dev/null and b/assets/img/eth.png differ diff --git a/assets/img/pharmacist-0.png b/assets/img/pharmacist-0.png new file mode 100644 index 0000000..dec2d66 Binary files /dev/null and b/assets/img/pharmacist-0.png differ diff --git a/assets/img/pharmacist-0.webp b/assets/img/pharmacist-0.webp new file mode 100644 index 0000000..a86eebb Binary files /dev/null and b/assets/img/pharmacist-0.webp differ diff --git a/assets/img/pharmacist-1-blue.png b/assets/img/pharmacist-1-blue.png new file mode 100644 index 0000000..ff841be Binary files /dev/null and b/assets/img/pharmacist-1-blue.png differ diff --git a/assets/img/pharmacist-1-bluegray.png b/assets/img/pharmacist-1-bluegray.png new file mode 100644 index 0000000..1305e24 Binary files /dev/null and b/assets/img/pharmacist-1-bluegray.png differ diff --git a/assets/img/pharmacist-1-darkblue.png b/assets/img/pharmacist-1-darkblue.png new file mode 100644 index 0000000..35c1f8c Binary files /dev/null and b/assets/img/pharmacist-1-darkblue.png differ diff --git a/assets/img/pharmacist-1-darkgreen.png b/assets/img/pharmacist-1-darkgreen.png new file mode 100644 index 0000000..8787dac Binary files /dev/null and b/assets/img/pharmacist-1-darkgreen.png differ diff --git a/assets/img/pharmacist-1-green.png b/assets/img/pharmacist-1-green.png new file mode 100644 index 0000000..660f597 Binary files /dev/null and b/assets/img/pharmacist-1-green.png differ diff --git a/assets/img/pharmacist-1-lightblue.png b/assets/img/pharmacist-1-lightblue.png new file mode 100644 index 0000000..35e140d Binary files /dev/null and b/assets/img/pharmacist-1-lightblue.png differ diff --git a/assets/img/pharmacist-1-lightgreen.png b/assets/img/pharmacist-1-lightgreen.png new file mode 100644 index 0000000..79b133f Binary files /dev/null and b/assets/img/pharmacist-1-lightgreen.png differ diff --git a/assets/img/pharmacist-1-lightviolet.png b/assets/img/pharmacist-1-lightviolet.png new file mode 100644 index 0000000..6d63272 Binary files /dev/null and b/assets/img/pharmacist-1-lightviolet.png differ diff --git a/assets/img/pharmacist-1-orange.png b/assets/img/pharmacist-1-orange.png new file mode 100644 index 0000000..6dcb006 Binary files /dev/null and b/assets/img/pharmacist-1-orange.png differ diff --git a/assets/img/pharmacist-1-pink.png b/assets/img/pharmacist-1-pink.png new file mode 100644 index 0000000..7604d61 Binary files /dev/null and b/assets/img/pharmacist-1-pink.png differ diff --git a/assets/img/pharmacist-1-red.png b/assets/img/pharmacist-1-red.png new file mode 100644 index 0000000..455f794 Binary files /dev/null and b/assets/img/pharmacist-1-red.png differ diff --git a/assets/img/pharmacist-1-violet.png b/assets/img/pharmacist-1-violet.png new file mode 100644 index 0000000..f3338e8 Binary files /dev/null and b/assets/img/pharmacist-1-violet.png differ diff --git a/assets/img/pharmacist-1-yellow.png b/assets/img/pharmacist-1-yellow.png new file mode 100644 index 0000000..8aa3e4a Binary files /dev/null and b/assets/img/pharmacist-1-yellow.png differ diff --git a/assets/img/pharmacist-1-yellow.webp b/assets/img/pharmacist-1-yellow.webp new file mode 100644 index 0000000..b7258b4 Binary files /dev/null and b/assets/img/pharmacist-1-yellow.webp differ diff --git a/assets/img/qr.png b/assets/img/qr.png new file mode 100644 index 0000000..fb204e0 Binary files /dev/null and b/assets/img/qr.png differ diff --git a/assets/img/skier-1-1.png b/assets/img/skier-1-1.png new file mode 100644 index 0000000..085eb45 Binary files /dev/null and b/assets/img/skier-1-1.png differ diff --git a/assets/img/skier-1-2.png b/assets/img/skier-1-2.png new file mode 100644 index 0000000..8addb74 Binary files /dev/null and b/assets/img/skier-1-2.png differ diff --git a/assets/img/skier-1-3.png b/assets/img/skier-1-3.png new file mode 100644 index 0000000..b907cfa Binary files /dev/null and b/assets/img/skier-1-3.png differ diff --git a/assets/img/xmr.png b/assets/img/xmr.png new file mode 100644 index 0000000..fe7d7d2 Binary files /dev/null and b/assets/img/xmr.png differ diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..a845151 --- /dev/null +++ b/content/_index.md @@ -0,0 +1,2 @@ +--- +--- diff --git a/content/about.md b/content/about.md new file mode 100644 index 0000000..f2379e4 --- /dev/null +++ b/content/about.md @@ -0,0 +1,22 @@ +--- +title: Über mich +date: 2022-12-10 +showDate: false +draft: false +showPagination: false +--- +Mein Name ist Jan Kremer. Ich bin 27 Jahre alt und studiere Pharmazie an der Uni Regensburg. Manchmal schreibe ich über Technik und Software [die ich benutze](/uses) oder [was ich gerade mache](/now). + +Wenn ich nicht gerade lerne, mache ich gerne Sport, vor allem Joggen, Kraftsport und Skifahren. + +## Kontakt + +### Matrix + +[@jankremer:matrix.org](https://matrix.to/#/@jankremer:matrix.org) + +## IPFS + +```txt +QmfPgBDRMVsAcdZuK26v5fxGBcUixyYqeibArBf5YYguz2 +``` diff --git a/content/blog/_index.md b/content/blog/_index.md new file mode 100644 index 0000000..7fa06c3 --- /dev/null +++ b/content/blog/_index.md @@ -0,0 +1,4 @@ +--- +title: Blog +date: 2022-12-10 +--- diff --git a/content/blog/easter-eggs.md b/content/blog/easter-eggs.md new file mode 100644 index 0000000..dc793e4 --- /dev/null +++ b/content/blog/easter-eggs.md @@ -0,0 +1,45 @@ +--- +title: "Easter eggs of this Websites" +date: 2023-09-19 +description: "What you can't see is what you GET." +tags: [meta] +showComments: true +draft: true +--- +## .well_known + +As of [RFC ...]() + +### OpenID + +### Nostr + +## `curl` easter eggs + +There are famously [no easter eggs](https://daniel.haxx.se/blog/2021/12/06/no-easter-eggs-in-curl/) built into `curl`. That doesn't mean I can't make my own. + +I set up `txt` files to display QR codes, which you can access via `curl`.There is one for the homepage, which is kind of stupid because you have to type in the URL to get a QR code for that URL. + +```shell +curl https://jankremer.eu/qr.txt +``` + +I also set up codes for my [crypto](/tags/crypto) addresses. Just add `.txt` to the URL. Same for my [avatar](/pharmacist-0.webp). Fun fact: the `.png` file is only half the size of the `.txt` version. + +```shell +curl https://jankremer.eu/xmr.txt +``` + +```shell +curl https://jankremer.eu/pharmacist-0.txt +``` + +I think you need to use a [nerd font](https://nerdfonts.com) for the QR code to show correctly. + +> Why? + +Just for fun. + +## More? + +What am I missing? Tell me in the comments or via [email](/about#kontakt). diff --git a/content/blog/geheime-botschaften.md b/content/blog/geheime-botschaften.md new file mode 100644 index 0000000..ec8a3b8 --- /dev/null +++ b/content/blog/geheime-botschaften.md @@ -0,0 +1,19 @@ +--- +title: Geheime Botschaften – Simon Singh +date: 2023-09-09 +description: "Buchvorstellung" +tags: [bücher] +--- +Ich las vor kurzem das Buch *Geheime Botschaften. Die Kunst der Verschlüsselung von der Antike bis in die Zeiten des Internet*[^1] von [Simon Singh](https://simonsingh.net). +Es stellt eine Einführung in die Geschichte der Verschlüsselung dar und ist für jeden, den das Thema interessiert, äußerst empfehlenswert. +Daneben geht der Autor auch auf die "Entschlüsselung" antiker Sprachen wie der [Hieroglyphen](https://de.wikipedia.org/wiki/Hieroglyphen) und Schriften wie [Linear B](https://de.wikipedia.org/wiki/Linearschrift_B) ein. + +In den letzten Kapiteln des Buchs erklärt Singh zudem "moderne" Verschlüsselungsmethoden wie [RSA](https://de.wikipedia.org/wiki/RSA-Kryptosystem) und den [Diffie-Hellmann-Schlüsselaustausch](https://de.wikipedia.org/wiki/Diffie-Hellman-Schlüsselaustausch). +Nur leider zeigt sich hier deutlich, dass das Buch bereit 1999 publiziert wurde und somit die letzten 24 Jahre der Kryptographie nicht erwähnt werden konnten. +Dadurch finden sich Themen wie zum Beispiel das [Signal-Protokoll](https://www.signal.org/docs/), die damit einhergehende massive Verbreitung starker Verschlüsselung und Krypto-Währungen hier nicht wieder. + +Zum Glück kann man vieles davon selbst im Internet recherchieren. + +Update: Signal wird in Zukunft [quantumresistente Verschlüsselung](https://signal.org/blog/pqxdh) benutzen. + +[^1]: Originaltitel: *The Code Book. The Science of Secrecy from Ancient Egypt to Quantum Cryptography* diff --git a/content/blog/genesis.md b/content/blog/genesis.md new file mode 100644 index 0000000..b236634 --- /dev/null +++ b/content/blog/genesis.md @@ -0,0 +1,18 @@ +--- +title: Genesis +date: 2022-12-10 +description: Über das Erstellen einer Webseite. +tags: [meta] +draft: false +--- +Als ich vor ca. einem Jahr diese Domain kaufte, wusste ich noch nicht was ich damit anstellen will. Ich wusste nur: **Ich will endlich eine eigene Webseite haben.** + +In meinen ersten Stunden Informatik in der Schule (vor über 10 Jahren) lernten wir die Grundlagen des Webdesigns mit *HTML* und *CSS*, und da ich zunächst nicht viel Zeit hatte erstellte ich genau mit diesen Tools eine kleine Startseite. Mehr schlecht als recht aber immerhin hatte ich etwas. + +Im März diesen Jahres hatte ich dann ein wenig Zeit mich genauer mit dem Thema zu beschäftigen und fand dabei den sogenannten [Jamstack](https://jamstack.org). Jamstack sind Tools zur schnellen und einfachen Aufstellen von Webseite. Dies können große Projekte sein oder wie in meinem Fall ein kleiner Blog. Zuerst probierte ich [Jekyll](https://jekyllrb.com/) was mir jedoch nicht so gut taugte und stieß dann auf [Hugo](https://gohugo.io/). Mit einer Vielzahl an modernen Designs und einer klinderleichten Handhaben konnte ich schnell überzeugt werden. + +Heute weiß ich zwar immer noch nicht, was ich hiermit in Zukunft machen werde, aber ich denke es ist wichtiger den je ein Sprachrohr zu haben, das unabhängig ist von der Willkür großer Plattformen. + +Bis bald und viel Spaß! + +P.S.: Dieses wunderschöne *Theme*, das ich hier benutze, heißt [Congo](https://git.io/hugo-congo). diff --git a/content/blog/git-deploy.md b/content/blog/git-deploy.md new file mode 100644 index 0000000..fcf7864 --- /dev/null +++ b/content/blog/git-deploy.md @@ -0,0 +1,35 @@ +--- +title: Deploy a website using Git +date: 2023-09-25 +description: "" +tags: [meta, git] +showComments: true +--- +## Git-ftp + +I tested a lot of different FTP programs including GUIs, TUIs and CLIs. +There might be a problem with the FTP server but I don't control that unfortunately. +The only program working flawlessly so far is [git-ftp](https://git-ftp.github.io/), a plugin for Git. +Not only is this perfectly integrated into git, which I am using anyway. +Also no errors occurred so far. +Plus I can automate the upload using [hooks](#git-hooks). + +## Git hooks + +The real MVP however is [Git Hooks](https://git-scm.com/docs/githooks). +Hooks are scripts that run automatically on certain Git events. + +I did, for example, create a hook to automacally build the website after commiting a change. +Yes, this could introduce problems such as breaking changes and I end up with a broken website, but as I test it regularly this should not become a problem. + +The second hook I created pushes the website to the FTP server whenever I push to the remote repository. + +## Git submodule + +I recently discovered that I can use `git submodule` to add the `public` folder created by Hugo. +This allows me to upload the repository to my pages repository on Codeberg and have the site mirrored there. +Secoundly, it allows me to upload the website with git-ftp without uploading everything else. + +--- + +What awesome features of Git are you using? diff --git a/content/blog/git.md b/content/blog/git.md new file mode 100644 index 0000000..e5e01a7 --- /dev/null +++ b/content/blog/git.md @@ -0,0 +1,53 @@ +--- +title: git +date: 2023-03-22T16:47:15+01:00 +description: "Warum jeder git lernen sollte." +tags: [git] +--- +Ursprünglich sollte es in diesem Post um [git](https://git-scm.com), jedoch ist mir bei Brainstorming aufgefallen, dass das Thema eigentlich deutlich umfangreicher sein sollte. + +Meine Reise begann, als ich beschloss, diesen Blog zu starten. +Da ich bis dahin Webseiten nur in reinem HTML und CSS geschrieben hatte, versuchte ich es zunächst damit. +Schnell stellten sich dabei aber mehrere Probleme heraus: + +1. Ich bin nicht gut in CSS. +2. Einen RSS-Feed von Hand zu erstellen ist umständlich und nicht sinnvoll. +3. Mehrere Seiten mit einheitlichem Design in HTML zu schreiben ist kompliziert. +4. Ich mag die HTML Syntax nicht. + +Ich war überzeugt, dass ich eine bessere Lösung dafür brauche. +Nach kurzer und intensiver Recherche fand ich heraus, dass die Lösung meine Problems *"static site generator"* heißt. +Darüber hatte ich bereits [hier](/blog/genesis) geschrieben. + +Im Zuge dessen lernte ich auch *git* kennen. +Ich hatte zwar schon früher von *git* gehört, bis dato aber nur zum herunterladen von Software benutzt. +Und damit sind wir schon im Kern meines Problems gelandet: + +## Warum kannte ich *git* nicht? + +Meine ersten Erfahrungen mit dem Programmieren machte ich damals in der Schule, angefangen mit HTML und CSS, später mit Python und Java. +Aber ohne *git*. +An der Uni (4 Semester Wirtschaftsinformatik) ging es dann weiter mit Java, aber weiterhin ohne *git*. + +Erst beim erstellen dieses Blogs kam ich auf die Idee mich mal ein wenig mit [Versionsverwaltung](https://de.wikipedia.org/wiki/Versionsverwaltung) auseinander zu setzen. +Und seitdem bin ich verliebt. + +Inzwischen denke ich, dass jeder von *git* profitieren könnte. +Das einfache Zurückspringen zu früheren Versionen, falls mal was kaputt geht, oder das Auslagern und Zusammenführen von *Branches* sind einfach großartig. +Zudem ermutigt wird man ermutigt, an logisch sinnvollen Stellen zu *commiten* und somit den bisherigen Stand zu speichern. + +Es wäre meiner Meinung nach auch sinnvoll, Texte, wie zum Beispiel Projektarbeiten, nicht in *Microsoft Word* zu verfassen sondern besser in Textdokumenten und diese dann mit *git* zu verwalten und zusammenzufügen (merge). +Diese könnten dann ganz leicht in [LaTeX-Dokumente](/blog/latex) umgewandelt werden oder auch in *Word* formatiert werden. +Darüber hinaus würde dies den Autoren die Möglichkeit geben, einen Texteditor der Wahl zu nutzen. +Gerade auf älteren Maschinen, wie meinem *MacBook Pro* von 2015 braucht *Word* inzwischen einiges an Ressourcen. +Dies könnte aber auch damit zusammen hängen, dass *Word* auf meinem Computer stolze 2.3 GB schwer ist. +Zum Vergleich: Das **gesamte** *LibreOffice* braucht keine 800 MB. + +Ich verstehe auch, dass nicht jeder auf der Kommandozeile zu Hause ist, jedoch gibt es ja auch Tools wie GitHub oder Programme mit grafischer Oberfläche, es sollte also für jeden was dabei sein. + +Ich kratze hier gerade mal an der Oberfläche der Möglichkeiten, das meiste ist mir selbst noch nicht bekannt. +Ich kann nur jedem, der *git* noch nicht nutzt es nur wärmstens empfehlen, es mal auszuprobieren. +Schaden kann es nicht! + +P.S.: Ja ich weiß, *git* ist kein Geheimtipp. + diff --git a/content/blog/hosting.md b/content/blog/hosting.md new file mode 100644 index 0000000..8ffb7a1 --- /dev/null +++ b/content/blog/hosting.md @@ -0,0 +1,38 @@ +--- +title: "12 cent blog" +date: 2023-08-27 +description: "Hosting a website at (almost) no cost." +tags: [meta, money] +showComments: true +showTableOfContents: false +--- +Yes, the title is correct. +[Well, actually](https://knowyourmeme.com/photos/1191035) it is 0.119 € per +month or 14.28 € for 10 years. + +To be fair, it was a special offer and only covers the domain. +Fortunately, my provider, [Netim](https://www.netim.com/en) has a free hosting plan with fits my needs. +I even get email hosting with my own domain. +There are also services like [Neocities](https://neocities.org) where you can host your website for free if you are willing to live with a subdomain. + +## Why should I? XYZ is free! + +Yes, you can post wherever you want. +𝕏 (formerly known as Twitter) is free[^1], Mastodon is free, Facebook, Instagram, Threads, Reddit, you name them, are all free, but you are giving up your freedoms. +Mastodon might be a little better than the rest, but ultimately you depend on the host to let you post there. +And they can block you and delete all your data without even giving you any notice. +I hope you have a backup. + +[^1]: Or is it? I'm not in the loop. + +Hosting this blog allows me to write whatever I want. +Sure, Netim could also block me and delete my data, but since I use [Hugo](https://gohugo.io) I always have everything backed up on my system anyways. +In a matter of hours I could be up and running on another hosting provider. + +I can also use any format I want and have nearly endless possibilities to customize my blog. +The sky is the limit. +For example am I hosting my own [photos](/fotos) instead of using Instagram and my own [microblog](/micro) instead of using Twitter/Mastodon. +Whatever media I plan to share in the future, there is a solution out there. +Want comments? I'm trying [Cactus Comments](https://cactus.chat) at the moment. + +Let me know what you think! diff --git a/content/blog/latex.md b/content/blog/latex.md new file mode 100644 index 0000000..bd4b2ad --- /dev/null +++ b/content/blog/latex.md @@ -0,0 +1,51 @@ +--- +title: LaTeX +date: 2023-01-12T15:35:23+01:00 +description: "Wie ich Word durch LaTeX ersetzte." +tags: [git, latex, uni] +draft: false +--- +Im Rahmen meines Wahlpflichtpraktikums schreibe ich aktuell an meiner zweiten größeren Projektarbeit. Die einzige andere Projektarbeit war bisher die für das Praktikum Pharmazeutische Technologie, welche, Stand jetzt, noch nicht vollständig abgeschlossen ist. + +Für diese Arbeit entschieden wir uns jedoch für *Microsoft Word*. Also im Grunde wurde uns diese Entscheidung fast abgenommen, da die Universität Regensburg uns das *Office 365* zur Verfügung stellt und es damit auch bei uns Studenten den De-Facto-Standard darstellt. Zudem erleichtert es das Arbeiten im Team doch sehr. + +Formatierungen sind jedoch immer ein Kampf. Daher wollte ich versuchen, [LaTeX](https://www.latex-project.org) für diese Arbeit einzusetzen. Ich kannte *LaTeX* vor allem aus mathematischen Kursen an der Uni und hatte schon oft gehört, dass es Setzen (von [Satz](https://de.wikipedia.org/wiki/Satz_(Druck))) deutlich vereinfachen soll. Aber nicht nur das Schreiben mathematischer Arbeiten macht es deutlich angenehmer, durch das einbinden einiger zusätzlicher Pakete werden wissenschaftliche Texte zum Kinderspiel. + +## Über LaTeX + +> **LaTeX** [ˈlaːtɛç] ist ein Softwarepaket, das die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht. *LaTeX* wurde Anfang der 1980er Jahre von *Leslie Lamport* entwickelt.Der Name bedeutet so viel wie *Lamport TeX*. Die Entwicklung wurde seit den 1990er Jahren von einer Anzahl Entwicklern weitergeführt. Heute ist *LaTeX* die populärste Methode, *TeX* zu verwenden. + +— [Wikipedia: LaTeX](https://de.wikipedia.org/wiki/LaTeX) + +*LaTeX* funktioniert ähnlich wie *HTML* oder *Markdown*: Zunächst wird die Formatierung von Text getrennt. Bei WYSIWYG[^1]-Textverarbeitungsprogrammen wie *Word* sieht man direkt, wie das gedruckte Dokument hinterher aussehen wird. Das macht es für viele Nutzer einfacher, zwingt sie aber auch dazu, sich direkt und unmittelbar mit der Formatierung zu beschäftigen. *LaTeX* trennt dies zunächst, gibt aber dennoch eine übersichtliche Struktur vor. Zudem sind die Standard Formatvorlagen deutlich schlichter und zumindest für mich wesentlich ansprechender als die von *Word* (Warum ist alles blau und wieso *Calibri*?!). Ja, die Voreinstellungen von *Word* lassen sich überschreiben, aber das muss man auch erstmal machen. + +[^1]: What you see is what you get. + +Funktionen wie ein Inhalts- oder Literaturvrezeichnis lassen sich in *Word* zwar auch realisieren, sind in *LaTeX* wesentlich simpler. Zudem lässt sich *LaTeX* durch Pakete nahezu unendlich erweitern und deckt dadruch auch jeden noch so speziellen Fall ab. + +Ein weiterer Punkt, warum ich *LaTeX* bevorzuge ist, dass ich jeden Texteditor benutzen kann. Ich nutze am liebsten *VS Code*, aber natürlich kann jeder beliebige Editor verwendet werden. + +Das einzige, was mit *Word* sicher einfacher wäre ist das einbinden und beschriften von Grafiken. Da ich einige davor in meine Projektarbeit verwende, brauchte ich hierfür eine Lösung. Diese habe ich mit [Inkscape](https://inkscape.org/de/) gefunden. Hiermir lassen sich Bilder bearbeiten und beschriften und anschließend als *LaTeX*-Dokument speichern. Diese lassen sich dann ganz einfach einbinden. + +## Fazit + +Für wen *Word* und ähnliches schon immer eine Qual war oder wer Vorerfahrung mit Texteditoren und Skriptsprachen hat, dem kann ich *LaTeX* nur ans Herz legen. Ganz einfach lassen sich wunderschöne Dokumente herzaubern. Vor allem der Font *Computer Modern* hat es mir sehr angetan. Eventuell werde ich die Projektarbeit demnächst hier hochladen. + +--- + +## Technische Spezifikationen + +Kurzer Nachtrag über meine Arbeitsweise mit *LaTeX*: Als Texteditor benutze ich [VS Code](https://code.visualstudio.com), da ich diesen super übersichtlich finde und vor allem die Erweiterungsmöglichkeiten sehr schätze. Für *LaTeX* sind dies vor allem [LaTeX Workshop](https://github.com/James-Yu/LaTeX-Workshop) und natürlich [git](https://git-scm.com) (vorinstalliert). Des Weiteren benutze ich die [MacTeX-Distribution](https://www.tug.org/mactex/), welche ich über [Homebrew](https://brew.sh) installiert habe. + +### Verwendete Pakete + +* **babel**: Sorgt für die Unterstützung verschiedener Sprachen. Ich schreibe die Projektarbeit zwar auf Englisch, jedoch brauche ich ab und zu mal Deutsche Begriffe und damiteinhergehend Umlaute etc. +* **biblatex**: Verbessertes Literaturverzeichnis, alternative zu **bibtex**. +* **booktabs**: Verschönert und vereinfacht Tabellen in *LaTeX*. +* **chemformula**: Erleichtert das Setzen von chemischen Formeln enorm und sorgt dafür, dass diese auch richtig angezeigt werden. +* **hyperref**: Für Links und Metadaten. +* **longtable**: Die verwendeten Materialien habe ich alle in riesigen Listen. *LaTeX* kann standardmäßig nicht besonders gut mit großen Tabellen umgehen, dieses Paket hilft dabei. +* **microtype**: Lässt alles schöner aussehen, praktisch schwarze Magie. +* **siunitx**: Das wahrscheinlich beste Paket überhaupt, simple aber hat Power. Sorgt für perfektes setzen von Einheiten, mit oder ohne vorangehenden Wert. Zudem enthält es eine Funktion, die Werte in Tabellen um den Dezimalpunkt anordnen kann. Ein Traum. +* **textgreek**: Erleichtert das verwenden von griechischen Buchstaben im Text. +* Zusätzliche Pakete die ich an der Stelle nicht weiter erleutern werden: **color**, **csquotes**, **fontenc**, **glossaries**, **graphicx**, **tikz** und **tocbibind**. diff --git a/content/blog/nix.md b/content/blog/nix.md new file mode 100644 index 0000000..7abcd4b --- /dev/null +++ b/content/blog/nix.md @@ -0,0 +1,41 @@ +--- +title: Nix on macOS +date: 2024-03-14 +description: Moving from Homebrew to Nix. Mostly. +tags: +- nix +showComments: false +--- +For about a year, I've been fascinated by [Nix and NixOS](https://nixos.org). I don't remember exactly what fascinated me at first, probably the possibility to setup and configure my system using a single file. A few weeks ago, I decided to give it a serious try. + +## Installation + +To be honest this is not my first time installing Nix on my machine. I tried the official Nix installer and the "old" way to use Nix which is basically the same as any other package manager. I didn't see the point of having two package managers so I uninstalled Nix quickly after. + +Then, a few weeks ago, I came across [this guide](https://nixcademy.com/2024/01/15/nix-on-macos/) and it instantly clicked with me. Having a single file in which I declare my complete system and then have it set up in a few minutes without rebooting is just infinitely cool. In Nix, this feature is called *flake*. The guide uses the [Determinate systems installer](https://github.com/DeterminateSystems/nix-installer) which sets up flakes by default. It also explains how to install Nix Darwin. + +## Nix Darwin + +Nix Darwin is a set of Nix modules that brings declarative configuration to macOS. It includes a bunch of options such as for the dock, Finder or the keyboard for example. It also gives the user basic configuration options for various programs. However I prefer to set up terminal based programs using [Home Manager](#home-manager) instead, because it supports even more programs. + +What I do use extensively is the [Homebrew](https://brew.sh/) module to install not only GUI (graphical user interface) apps from Homebrew, but also from the App Store. + +## Home Manager + +For everything else, from terminal based programs to their configuration, I use [Home Manager](https://github.com/nix-community/home-manager?tab=readme-ov-file). It includes a huge set of modules and allows me to setup every non-GUI program in a declarative way. Still, sometimes you have to configure the "traditional way", meaning in the original configuration language. But still, I much prefer this over my cluttered `.config` directory. + +## Nixvim + +In the process of writing my Nix configuration, I became unsatisfied with my Neovim setup. I used to use [LazyVim](https://www.lazyvim.org) but it felt more and more bloated and slow on my 9 year old machine. For some time I used [Helix](https://helix-editor.com/) which has great defaults, such as language server protocol (LSP) and fuzzy finder integration. I really think Neovim should go in this direction. Unfortunately it lacks some features to make it my main editor, mostly support for [Typst](https://typst.app/) which is already added to the `master` branch. It also lacks a plugin system, but given such great defaults, there isn't that big of a need for it. Helix also features its own set of motions, and although I think they are not bad, maybe even better than Vim motions, the latter are so ubiquitously implemented that I would essentially use both all the time. + +That's when I saw a video by *ThePrimeagen* in which he recommended [Kickstart](https://github.com/nvim-lua/kickstart.nvim/tree/master), a minimal Neovim starter configuration mainly written by *TJ DeVries*. It almost everything you need to get started and has insanely great documentation. + +The only thing that bothered me was the use of [Mason](https://github.com/williamboman/mason.nvim) as a LSP package manager. For some people this might be the best way to install LSPs, but I don't understand why I would use a second package manager when I can just use Nix for everything. Helix has a list of supported LSPs and all you have to do is make sure they are in your `$PATH`. + +Luckily, others already had the same issues and decided to write [Nixvim](https://github.com/nix-community/nixvim). Nixvim is a NixOS / Nix Darwin / Home manager module that lets you configure Neovim (almost) entirely using Nix. It uses Nix as the plugin manager and has great defaults and documentation. + +I basically recreated Kickstart using Nixvim with some minor tweaks. It feels just as snappy as Helix and I love it. + +## Conclusion + +This is just the tip of the tip of the iceberg of what is possible with Nix. Next, I want to learn to write my own flakes to set up development environments. I should probably learn a bit of Nix language too. But to sum it up so far, I'm really happy and excited about this "new" way to manage my computer. diff --git a/content/blog/obsidian.md b/content/blog/obsidian.md new file mode 100644 index 0000000..d408885 --- /dev/null +++ b/content/blog/obsidian.md @@ -0,0 +1,8 @@ +--- +title: Obsidian +date: 2023-12-25T11:34:38+01:00 +description: Friendship ended with Emacs, now Obsidian is my best friend. +tags: +showComments: false +draft: true +--- diff --git a/content/blog/rss.md b/content/blog/rss.md new file mode 100644 index 0000000..09c1c4a --- /dev/null +++ b/content/blog/rss.md @@ -0,0 +1,61 @@ +--- +title: RSS +date: 2023-09-01 +description: "Feeds without fuzz." +tags: [rss, meta] +--- +## What is RSS? + +Originally, RSS stood for "RDF/Rich Site Summary" but was later changed to "Really Simple Syndication" + +RSS is a way to subscribe to a website. +Whenever that website updates it writes its changes to a `XML` file. +You can then read this XML file and see what changed at a glance. + +Many websites use RSS including YouTube, ~~Reddit~~ Lemmy, ~~Twitter~~ Mastodon, most news sites, and almost any blog out there. +For many blogs, RSS is the main way to distribute new posts. + +RSS is experiencing a Renaissance at the moment: +Many people are now seeing the damages done by algorithmic feeds and want to go back to purely chronological feeds. +RSS provides a perfect infrastructure for this. + +## How to read RSS? + +First, you need a feed reader. On macOS and iOS I highly recommend [NetNewsWire](https://netnewswire.com). +For terminal fans [Newsboat](https://newsboat.org) is the way to go. +[Thunderbird](https://www.thunderbird.net/) is also a good choice but there are tons of programs that can read RSS feeds. + +That's bascially it. Now you need to add some feeds and you are ready. + +I recommend picking a reader that can also fetch the article without opening the browser and loading a ton of ads. + +Pro tip: You can export your subscibtions to a `OPML` file and import them into any RSS reader. + +## How to distribute RSS? + +This is the hardest question to answer about RSS as there are endless possibilities. + +The easiest way would probably be to use a service such as Mastodon that generates the feed automatically. +If that platform isn't for you, WordPress is a good way to host a blog. +I read about people setting up their own scripts that automatically update the feed for new posts. + +I use [Hugo](https://gohugo.io) which is a *static site generator*. +It generates feeds automatically but lies somewhere between WordPress and writing your own scripts in terms of how tech savvy you should be. + +## How to find RSS? + +Go to a website you like, copy the URL and paste it into your RSS reader. +Modern feed readers can find RSS feed on their own, you just have to provide a link to the site you want to subscribe to. +If that is not the case, you could try adding `/index.xml` to the URL. + +Some sites, like this one, also link to their RSS feeds. +Often those links are a the bottom of the website and are either marked as `RSS`, `Feed`, or just use the RSS logo. +I additionally provide links to my subprojects such as my [microblog](/micro) or my [photos](/fotos). +Feel free to add them to your reader. + +## Conclusion + +I think RSS is on the rise. +It's an old protocol that survived numerous challenges +It provides an escape from the algorithms and large social media companies. +It also provides a way for content creators to distribute their content on their own without any middleman. diff --git a/content/btc.md b/content/btc.md new file mode 100644 index 0000000..830965a --- /dev/null +++ b/content/btc.md @@ -0,0 +1,30 @@ +--- +title: Bitcoin +date: 2022-12-10 +showDate: false +showDateUpdated: false +showSummary: false +draft: false +tags: [crypto] +searchHidden: true +showPagination: false +--- +## Address + +```txt +bc1qf8qjt4gut2la8k4v3emfv7wrj6f3pfcjrj3slplnwrldkz7hqmaqaju7ym +``` + +## QR + +![BTC](/btc.png) + +## OpenAlias + +```txt +jankremer.eu +``` + +```txt +btc.jankremer.eu +``` diff --git a/content/eth.md b/content/eth.md new file mode 100644 index 0000000..0025e8f --- /dev/null +++ b/content/eth.md @@ -0,0 +1,29 @@ +--- +title: Ethereum +date: 2022-12-10 +showDate: false +showDateUpdated: false +showSummary: false +tags: [crypto] +searchHidden: true +showPagination: false +--- +## Address + +```txt +0xc4cBDf9f57cb0229d19d885D5E4033a6223EDef7 +``` + +## QR + +![ETH](/eth.png) + +## ENS + +```txt +jankremer.eu +``` + +## OpenSea + +[Echinacea](https://opensea.io/Echinacea) diff --git a/content/micro/_index.md b/content/micro/_index.md new file mode 100644 index 0000000..daba657 --- /dev/null +++ b/content/micro/_index.md @@ -0,0 +1,3 @@ +--- +title: Microblog +--- diff --git a/content/micro/markdown-tables.md b/content/micro/markdown-tables.md new file mode 100644 index 0000000..1c2b828 --- /dev/null +++ b/content/micro/markdown-tables.md @@ -0,0 +1,15 @@ +--- +title: Markdown Tables Suck +date: 2023-12-25T16:28:52+01:00 +tags: + - micro +showComments: false +--- +Tables are arguably the worst part of Markdown. +No horizontal lines except for the mandatory one at the top. +The only feature is the possibility to align cells. + +Org Mode does much better, but isn't perfect either. + +Don't get me wrong. It's nice to have a simple tool for simple tables. +But sometimes I need more customizability. diff --git a/content/micro/reader.md b/content/micro/reader.md new file mode 100644 index 0000000..e4aeb78 --- /dev/null +++ b/content/micro/reader.md @@ -0,0 +1,6 @@ +--- +title: Reader mode is the antidote to bad website design. +date: 2023-07-19T10:14:44+02:00 +tags: [micro] +draft: false +--- diff --git a/content/micro/timestamps.org b/content/micro/timestamps.org new file mode 100644 index 0000000..ad2aff6 --- /dev/null +++ b/content/micro/timestamps.org @@ -0,0 +1,13 @@ +#+TITLE: Use Timestamps +#+DATE: 2023-11-15T10:12:30+01:00 +#+TAGS[]: micro + +Every blog post should include a timestamp. +In fact, this extends to almost anything online and even offline. + +Also, don't make me look for the date. +Put the date as obvious as possible, preferably at the beginning of the post. + +I was reading [[https://jvns.ca/blog/2023/02/28/some-notes-on-using-nix/][Julia Evans post about nix]] and it was not immediately clear to me if this was a recent post. +Only when I copied the URL to complain about it I discovered the date there. +Safari hides most of the URL by default. diff --git a/content/micro/twitter.md b/content/micro/twitter.md new file mode 100644 index 0000000..0d18dff --- /dev/null +++ b/content/micro/twitter.md @@ -0,0 +1,6 @@ +--- +title: Stop using Twitter. +date: 2023-07-22T15:57:59+02:00 +tags: [micro] +draft: false +--- diff --git a/content/now.md b/content/now.md new file mode 100644 index 0000000..5a66a6a --- /dev/null +++ b/content/now.md @@ -0,0 +1,28 @@ +--- +title: What I'm currently doing +date: 2023-12-30T08:34:14+01:00 +showDate: false +showSummary: false +showPagination: false +description: "Nobody ever asked me what I'm currently doing, but I decided to tell you anyway." +tags: +- meta +--- +## Learning + +- Pharmazeutische Technologie + +## Reading + +- Kaffee und Zigaretten – Ferdinand von Schirach + +## Watching + +- Germany's next topmodel +- Rosins Restaurants +- Batman – The animated series +- Band of Brothers + +## Listening + +- Kölsche Karnevalsmusik (yeah I know Karneval is over) diff --git a/content/photos/_index.md b/content/photos/_index.md new file mode 100644 index 0000000..7d90b79 --- /dev/null +++ b/content/photos/_index.md @@ -0,0 +1,3 @@ +--- +title: Fotos +--- diff --git a/content/photos/evening-cloud/evening-cloud.webp b/content/photos/evening-cloud/evening-cloud.webp new file mode 100644 index 0000000..029311e Binary files /dev/null and b/content/photos/evening-cloud/evening-cloud.webp differ diff --git a/content/photos/evening-cloud/index.md b/content/photos/evening-cloud/index.md new file mode 100644 index 0000000..58be442 --- /dev/null +++ b/content/photos/evening-cloud/index.md @@ -0,0 +1,9 @@ +--- +title: Evening Cloud +date: 2023-07-19T10:48:33+02:00 +description: "Evening cloud over Regensburg." +tags: [fotos, regensburg] +thumbnail: "evening-cloud.webp" +draft: false +--- +![Evening cloud over Regensburg.](evening-cloud.webp) diff --git a/content/uses.md b/content/uses.md new file mode 100644 index 0000000..a90307b --- /dev/null +++ b/content/uses.md @@ -0,0 +1,31 @@ +--- +title: What I use +date: 2023-12-30T08:03:20+01:00 +showDate: false +showTOC: false +showPagination: false +description: "Nobody ever asked me what I'm currently using, but I decided to tell you anyway." +tags: + - meta +--- +## Hardware + +- MacBook Pro 2015 +- iPhone X +- Apple Watch SE +- AirPods Pro +- Logitech MX Master 3 (rarely) + +## Software + +| Category | Software | +| ----------------------- | -------------------------------------------------------------- | +| Unless otherwise stated | Apple default apps | +| RSS reader | [NetNewsWire](https://netnewswire.com) | +| Notes | [Obsidian](https://obsidian.md) | +| To-Do list | [Things](https://culturedcode.com/things) | +| Text editor | [Neovim](https://neovim.io), [Helix](https://helix-editor.com) | +| Word processing | [Typst](https://typst.app) | +| Window manager | [Amethyst](https://github.com/ianyh/Amethyst) | +| Terminal emulator | [Kitty](https://sw.kovidgoyal.net/kitty) | +| Package manager | [Nix](https://nixos.org), [Homebrew](https://brew.sh) | diff --git a/content/xmr.md b/content/xmr.md new file mode 100644 index 0000000..ca20f8e --- /dev/null +++ b/content/xmr.md @@ -0,0 +1,30 @@ +--- +title: Monero +date: 2022-12-10 +showDate: false +showDateUpdated: false +draft: false +showSummary: false +tags: [crypto] +searchHidden: true +showPagination: false +--- +## Address + +```txt +83ZtE7cBnsyTmBb5A79aDm637mCKWKuhGZZ3ZaQvjmpA5qwL6sejWEcKQnXF5Qd3N4XNCp4fbouTi9kUi8vNgPrfDQaEBMZ +``` + +## QR + +![XMR](/xmr.png) + +## OpenAlias + +```txt +jankremer.eu +```` + +```txt +xmr.jankremer.eu +```` diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..89d88b3 --- /dev/null +++ b/flake.lock @@ -0,0 +1,61 @@ +{ + "nodes": { + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1710534455, + "narHash": "sha256-huQT4Xs0y4EeFKn2BTBVYgEwJSv8SDlm82uWgMnCMmI=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "9af9c1c87ed3e3ed271934cb896e0cdd33dae212", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..23dc9bd --- /dev/null +++ b/flake.nix @@ -0,0 +1,22 @@ +{ + description = "Hugo website"; + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; + inputs.flake-utils.url = "github:numtide/flake-utils"; + + outputs = + { nixpkgs, flake-utils, ... }: + flake-utils.lib.eachDefaultSystem ( + system: + let + pkgs = nixpkgs.legacyPackages.${system}; + in + { + devShells.default = pkgs.mkShell { + packages = [ + pkgs.go + pkgs.hugo + ]; + }; + } + ); +} diff --git a/hugo.toml b/hugo.toml new file mode 100644 index 0000000..7c82d1c --- /dev/null +++ b/hugo.toml @@ -0,0 +1,31 @@ +baseURL = 'https://jankremer.eu/' +languageCode = 'de' +title = 'Jan Kremer' + +[[menus.main]] +name = 'Home' +pageRef = '/' +weight = 10 + +[[menus.main]] +name = 'Blog' +pageRef = '/blog' +weight = 20 + +[[menus.main]] +name = 'Microblog' +pageRef = '/micro' +weight = 30 + +[[menus.main]] +name = 'Fotos' +pageRef = '/photos' +weight = 40 + +[[menus.main]] +name = 'Über mich' +pageRef = '/about' +weight = 50 + +[outputs] +home = ["HTML", "RSS", "JSON"] diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html new file mode 100644 index 0000000..928e7ec --- /dev/null +++ b/layouts/_default/baseof.html @@ -0,0 +1,21 @@ + + + + + {{ partial "head.html" . }} + + + +
+ {{ partial "header.html" . }} +
+
+ {{ block "main" . }}{{ end }} +
+ + + + diff --git a/layouts/_default/home.html b/layouts/_default/home.html new file mode 100644 index 0000000..6cff89f --- /dev/null +++ b/layouts/_default/home.html @@ -0,0 +1,16 @@ +{{ define "main" }} +{{ .Content }} +

Neueste Beiträge

+{{ $pages := .Paginate (where .Site.RegularPages "Type" "ne" "page") }} +{{ range $pages.Pages }} +
+ {{ $dateMachine := .Date | time.Format "2006-01-02T15:04:05-07:00" }} + {{ $dateHuman := .Date | time.Format "2006-01-02" }} + + +

{{ .LinkTitle }}

+ +

{{ .Description }}

+
+{{ end }} +{{ end }} diff --git a/layouts/_default/list.html b/layouts/_default/list.html new file mode 100644 index 0000000..ed36f5c --- /dev/null +++ b/layouts/_default/list.html @@ -0,0 +1,14 @@ +{{ define "main" }} +{{ .Content }} +{{ range .Pages }} +
+ {{ $dateMachine := .Date | time.Format "2006-01-02T15:04:05-07:00" }} + {{ $dateHuman := .Date | time.Format "2006-01-02" }} + + +

{{ .LinkTitle }}

+ +

{{ .Description }}

+
+{{ end }} +{{ end }} diff --git a/layouts/_default/rss.xml b/layouts/_default/rss.xml new file mode 100644 index 0000000..adb01c2 --- /dev/null +++ b/layouts/_default/rss.xml @@ -0,0 +1,40 @@ +{{- $pctx := . -}} +{{- if .IsHome -}}{{ $pctx = .Site }}{{- end -}} +{{- $pages := slice -}} +{{- if or $.IsHome $.IsSection -}} +{{- $pages = $pctx.RegularPages -}} +{{- else -}} +{{- $pages = $pctx.Pages -}} +{{- end -}} +{{- $limit := .Site.Config.Services.RSS.Limit -}} +{{- if ge $limit 1 -}} +{{- $pages = $pages | first $limit -}} +{{- end -}} +{{- printf "" | safeHTML }} +{{- printf "" | safeHTML }} + + + {{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }} + {{ .Permalink }} + Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }} + Hugo -- gohugo.io + {{ site.Language.LanguageCode }}{{ with .Site.Author.email }} + {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Author.email }} + {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Copyright }} + {{.}}{{end}}{{ if not .Date.IsZero }} + {{ .Date.Format "2006-01-02 15:04" | safeHTML }}{{ end }} + {{- with .OutputFormats.Get "RSS" -}} + {{ printf "" .Permalink .MediaType | safeHTML }} + {{- end -}} + {{ range $pages }} + + {{ .Title }} + {{ .Permalink }} + {{ .Date.Format "2006-01-02 15:04" | safeHTML }} + {{ with .Site.Author.email }}{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}} + {{ .Permalink }} + {{ .Content | html }} + + {{ end }} + + diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..081801f --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,15 @@ +{{ define "main" }} +
+ {{ $dateMachine := .Lastmod | time.Format "2006-01-02T15:04:05-07:00" }} + {{ $dateHuman := .Lastmod | time.Format "2006-01-02" }} + +
+ +

{{ .Title }}

+ +

{{ .Description }}

+ + {{ .Content }} +
+{{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }} +{{ end }} diff --git a/layouts/partials/analytics.html b/layouts/partials/analytics.html new file mode 100644 index 0000000..26544db --- /dev/null +++ b/layouts/partials/analytics.html @@ -0,0 +1,3 @@ +{{ if hugo.IsProduction }} + +{{ end }} diff --git a/layouts/partials/comments.html b/layouts/partials/comments.html new file mode 100644 index 0000000..b0ea160 --- /dev/null +++ b/layouts/partials/comments.html @@ -0,0 +1,12 @@ + + +
+ diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html new file mode 100644 index 0000000..d47af98 --- /dev/null +++ b/layouts/partials/footer.html @@ -0,0 +1,2 @@ +

BY-SA 4.0   ☙   {{ site.Title }}   ❧ +   2021–{{ now.Year }}

diff --git a/layouts/partials/head.html b/layouts/partials/head.html new file mode 100644 index 0000000..05a1aa2 --- /dev/null +++ b/layouts/partials/head.html @@ -0,0 +1,6 @@ + + +{{ if .IsHome }}{{ site.Title }}{{ else }}{{ printf "%s | %s" .Title site.Title }}{{ end }} +{{ partialCached "head/css.html" . }} +{{ partialCached "head/js.html" . }} +{{ partial "analytics.html" . }} diff --git a/layouts/partials/head/css.html b/layouts/partials/head/css.html new file mode 100644 index 0000000..d104e28 --- /dev/null +++ b/layouts/partials/head/css.html @@ -0,0 +1,9 @@ +{{- with resources.Get "css/main.css" }} +{{- if eq hugo.Environment "development" }} + +{{- else }} +{{- with . | minify | fingerprint }} + +{{- end }} +{{- end }} +{{- end }} diff --git a/layouts/partials/head/js.html b/layouts/partials/head/js.html new file mode 100644 index 0000000..18fe842 --- /dev/null +++ b/layouts/partials/head/js.html @@ -0,0 +1,12 @@ +{{- with resources.Get "js/main.js" }} + {{- if eq hugo.Environment "development" }} + {{- with . | js.Build }} + + {{- end }} + {{- else }} + {{- $opts := dict "minify" true }} + {{- with . | js.Build $opts | fingerprint }} + + {{- end }} + {{- end }} +{{- end }} diff --git a/layouts/partials/header.html b/layouts/partials/header.html new file mode 100644 index 0000000..8e728f1 --- /dev/null +++ b/layouts/partials/header.html @@ -0,0 +1,2 @@ +

{{ site.Title }}

+{{ partial "menu.html" (dict "menuID" "main" "page" .) }} diff --git a/layouts/partials/menu.html b/layouts/partials/menu.html new file mode 100644 index 0000000..7183180 --- /dev/null +++ b/layouts/partials/menu.html @@ -0,0 +1,51 @@ +{{- /* +Renders a menu for the given menu ID. + +@context {page} page The current page. +@context {string} menuID The menu ID. + +@example: {{ partial "menu.html" (dict "menuID" "main" "page" .) }} +*/}} + +{{- $page := .page }} +{{- $menuID := .menuID }} + +{{- with index site.Menus $menuID }} + +{{- end }} + +{{- define "partials/inline/menu/walk.html" }} + {{- $page := .page }} + {{- range .menuEntries }} + {{- $attrs := dict "href" .URL }} + {{- if $page.IsMenuCurrent .Menu . }} + {{- $attrs = merge $attrs (dict "class" "active" "aria-current" "page") }} + {{- else if $page.HasMenuCurrent .Menu .}} + {{- $attrs = merge $attrs (dict "class" "ancestor" "aria-current" "true") }} + {{- end }} + {{- $name := .Name }} + {{- with .Identifier }} + {{- with T . }} + {{- $name = . }} + {{- end }} + {{- end }} +
  • + {{ $name }} + {{- with .Children }} + + {{- end }} +
  • + {{- end }} +{{- end }} diff --git a/layouts/partials/terms.html b/layouts/partials/terms.html new file mode 100644 index 0000000..a1a4dd2 --- /dev/null +++ b/layouts/partials/terms.html @@ -0,0 +1,23 @@ +{{- /* +For a given taxonomy, renders a list of terms assigned to the page. + +@context {page} page The current page. +@context {string} taxonomy The taxonony. + +@example: {{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }} +*/}} + +{{- $page := .page }} +{{- $taxonomy := .taxonomy }} + +{{- with $page.GetTerms $taxonomy }} +{{- $label := (index . 0).Parent.LinkTitle }} +
    +
    + +
    +{{- end }} diff --git a/public/about/index.html b/public/about/index.html new file mode 100644 index 0000000..266ea62 --- /dev/null +++ b/public/about/index.html @@ -0,0 +1,79 @@ + + + + + + +Über mich | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Über mich

    + +

    + +

    Mein Name ist Jan Kremer. Ich bin 27 Jahre alt und studiere Pharmazie an der Uni Regensburg. Manchmal schreibe ich über Technik und Software die ich benutze oder was ich gerade mache.

    +

    Wenn ich nicht gerade lerne, mache ich gerne Sport, vor allem Joggen, Kraftsport und Skifahren.

    +

    Kontakt

    +

    Matrix

    +

    @jankremer:matrix.org

    +

    IPFS

    +
    QmfPgBDRMVsAcdZuK26v5fxGBcUixyYqeibArBf5YYguz2
    +
    +
    + + + +
    + + + + diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png new file mode 100644 index 0000000..a75479d Binary files /dev/null and b/public/android-chrome-192x192.png differ diff --git a/public/android-chrome-512x512.png b/public/android-chrome-512x512.png new file mode 100644 index 0000000..f2d6983 Binary files /dev/null and b/public/android-chrome-512x512.png differ diff --git a/public/apple-touch-icon.png b/public/apple-touch-icon.png new file mode 100644 index 0000000..3a0d069 Binary files /dev/null and b/public/apple-touch-icon.png differ diff --git a/public/blog/geheime-botschaften/index.html b/public/blog/geheime-botschaften/index.html new file mode 100644 index 0000000..07baa4c --- /dev/null +++ b/public/blog/geheime-botschaften/index.html @@ -0,0 +1,94 @@ + + + + + + +Geheime Botschaften – Simon Singh | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Geheime Botschaften – Simon Singh

    + +

    Buchvorstellung

    + +

    Ich las vor kurzem das Buch Geheime Botschaften. Die Kunst der Verschlüsselung von der Antike bis in die Zeiten des Internet1 von Simon Singh. +Es stellt eine Einführung in die Geschichte der Verschlüsselung dar und ist für jeden, den das Thema interessiert, äußerst empfehlenswert. +Daneben geht der Autor auch auf die “Entschlüsselung” antiker Sprachen wie der Hieroglyphen und Schriften wie Linear B ein.

    +

    In den letzten Kapiteln des Buchs erklärt Singh zudem “moderne” Verschlüsselungsmethoden wie RSA und den Diffie-Hellmann-Schlüsselaustausch. +Nur leider zeigt sich hier deutlich, dass das Buch bereit 1999 publiziert wurde und somit die letzten 24 Jahre der Kryptographie nicht erwähnt werden konnten. +Dadurch finden sich Themen wie zum Beispiel das Signal-Protokoll, die damit einhergehende massive Verbreitung starker Verschlüsselung und Krypto-Währungen hier nicht wieder.

    +

    Zum Glück kann man vieles davon selbst im Internet recherchieren.

    +

    Update: Signal wird in Zukunft quantumresistente Verschlüsselung benutzen.

    +
    +
    +
      +
    1. +

      Originaltitel: The Code Book. The Science of Secrecy from Ancient Egypt to Quantum Cryptography ↩︎

      +
    2. +
    +
    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/blog/genesis/index.html b/public/blog/genesis/index.html new file mode 100644 index 0000000..50c7d03 --- /dev/null +++ b/public/blog/genesis/index.html @@ -0,0 +1,84 @@ + + + + + + +Genesis | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Genesis

    + +

    Über das Erstellen einer Webseite.

    + +

    Als ich vor ca. einem Jahr diese Domain kaufte, wusste ich noch nicht was ich damit anstellen will. Ich wusste nur: Ich will endlich eine eigene Webseite haben.

    +

    In meinen ersten Stunden Informatik in der Schule (vor über 10 Jahren) lernten wir die Grundlagen des Webdesigns mit HTML und CSS, und da ich zunächst nicht viel Zeit hatte erstellte ich genau mit diesen Tools eine kleine Startseite. Mehr schlecht als recht aber immerhin hatte ich etwas.

    +

    Im März diesen Jahres hatte ich dann ein wenig Zeit mich genauer mit dem Thema zu beschäftigen und fand dabei den sogenannten Jamstack. Jamstack sind Tools zur schnellen und einfachen Aufstellen von Webseite. Dies können große Projekte sein oder wie in meinem Fall ein kleiner Blog. Zuerst probierte ich Jekyll was mir jedoch nicht so gut taugte und stieß dann auf Hugo. Mit einer Vielzahl an modernen Designs und einer klinderleichten Handhaben konnte ich schnell überzeugt werden.

    +

    Heute weiß ich zwar immer noch nicht, was ich hiermit in Zukunft machen werde, aber ich denke es ist wichtiger den je ein Sprachrohr zu haben, das unabhängig ist von der Willkür großer Plattformen.

    +

    Bis bald und viel Spaß!

    +

    P.S.: Dieses wunderschöne Theme, das ich hier benutze, heißt Congo.

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/blog/git-deploy/index.html b/public/blog/git-deploy/index.html new file mode 100644 index 0000000..8615745 --- /dev/null +++ b/public/blog/git-deploy/index.html @@ -0,0 +1,98 @@ + + + + + + +Deploy a website using Git | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Deploy a website using Git

    + +

    + +

    Git-ftp

    +

    I tested a lot of different FTP programs including GUIs, TUIs and CLIs. +There might be a problem with the FTP server but I don’t control that unfortunately. +The only program working flawlessly so far is git-ftp, a plugin for Git. +Not only is this perfectly integrated into git, which I am using anyway. +Also no errors occurred so far. +Plus I can automate the upload using hooks.

    +

    Git hooks

    +

    The real MVP however is Git Hooks. +Hooks are scripts that run automatically on certain Git events.

    +

    I did, for example, create a hook to automacally build the website after commiting a change. +Yes, this could introduce problems such as breaking changes and I end up with a broken website, but as I test it regularly this should not become a problem.

    +

    The second hook I created pushes the website to the FTP server whenever I push to the remote repository.

    +

    Git submodule

    +

    I recently discovered that I can use git submodule to add the public folder created by Hugo. +This allows me to upload the repository to my pages repository on Codeberg and have the site mirrored there. +Secoundly, it allows me to upload the website with git-ftp without uploading everything else.

    +
    +

    What awesome features of Git are you using?

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/blog/git/index.html b/public/blog/git/index.html new file mode 100644 index 0000000..b68694a --- /dev/null +++ b/public/blog/git/index.html @@ -0,0 +1,114 @@ + + + + + + +git | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    git

    + +

    Warum jeder git lernen sollte.

    + +

    Ursprünglich sollte es in diesem Post um git, jedoch ist mir bei Brainstorming aufgefallen, dass das Thema eigentlich deutlich umfangreicher sein sollte.

    +

    Meine Reise begann, als ich beschloss, diesen Blog zu starten. +Da ich bis dahin Webseiten nur in reinem HTML und CSS geschrieben hatte, versuchte ich es zunächst damit. +Schnell stellten sich dabei aber mehrere Probleme heraus:

    +
      +
    1. Ich bin nicht gut in CSS.
    2. +
    3. Einen RSS-Feed von Hand zu erstellen ist umständlich und nicht sinnvoll.
    4. +
    5. Mehrere Seiten mit einheitlichem Design in HTML zu schreiben ist kompliziert.
    6. +
    7. Ich mag die HTML Syntax nicht.
    8. +
    +

    Ich war überzeugt, dass ich eine bessere Lösung dafür brauche. +Nach kurzer und intensiver Recherche fand ich heraus, dass die Lösung meine Problems “static site generator” heißt. +Darüber hatte ich bereits hier geschrieben.

    +

    Im Zuge dessen lernte ich auch git kennen. +Ich hatte zwar schon früher von git gehört, bis dato aber nur zum herunterladen von Software benutzt. +Und damit sind wir schon im Kern meines Problems gelandet:

    +

    Warum kannte ich git nicht?

    +

    Meine ersten Erfahrungen mit dem Programmieren machte ich damals in der Schule, angefangen mit HTML und CSS, später mit Python und Java. +Aber ohne git. +An der Uni (4 Semester Wirtschaftsinformatik) ging es dann weiter mit Java, aber weiterhin ohne git.

    +

    Erst beim erstellen dieses Blogs kam ich auf die Idee mich mal ein wenig mit Versionsverwaltung auseinander zu setzen. +Und seitdem bin ich verliebt.

    +

    Inzwischen denke ich, dass jeder von git profitieren könnte. +Das einfache Zurückspringen zu früheren Versionen, falls mal was kaputt geht, oder das Auslagern und Zusammenführen von Branches sind einfach großartig. +Zudem ermutigt wird man ermutigt, an logisch sinnvollen Stellen zu commiten und somit den bisherigen Stand zu speichern.

    +

    Es wäre meiner Meinung nach auch sinnvoll, Texte, wie zum Beispiel Projektarbeiten, nicht in Microsoft Word zu verfassen sondern besser in Textdokumenten und diese dann mit git zu verwalten und zusammenzufügen (merge). +Diese könnten dann ganz leicht in LaTeX-Dokumente umgewandelt werden oder auch in Word formatiert werden. +Darüber hinaus würde dies den Autoren die Möglichkeit geben, einen Texteditor der Wahl zu nutzen. +Gerade auf älteren Maschinen, wie meinem MacBook Pro von 2015 braucht Word inzwischen einiges an Ressourcen. +Dies könnte aber auch damit zusammen hängen, dass Word auf meinem Computer stolze 2.3 GB schwer ist. +Zum Vergleich: Das gesamte LibreOffice braucht keine 800 MB.

    +

    Ich verstehe auch, dass nicht jeder auf der Kommandozeile zu Hause ist, jedoch gibt es ja auch Tools wie GitHub oder Programme mit grafischer Oberfläche, es sollte also für jeden was dabei sein.

    +

    Ich kratze hier gerade mal an der Oberfläche der Möglichkeiten, das meiste ist mir selbst noch nicht bekannt. +Ich kann nur jedem, der git noch nicht nutzt es nur wärmstens empfehlen, es mal auszuprobieren. +Schaden kann es nicht!

    +

    P.S.: Ja ich weiß, git ist kein Geheimtipp.

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/blog/hosting/index.html b/public/blog/hosting/index.html new file mode 100644 index 0000000..92d8c3b --- /dev/null +++ b/public/blog/hosting/index.html @@ -0,0 +1,109 @@ + + + + + + +12 cent blog | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    12 cent blog

    + +

    Hosting a website at (almost) no cost.

    + +

    Yes, the title is correct. +Well, actually it is 0.119 € per +month or 14.28 € for 10 years.

    +

    To be fair, it was a special offer and only covers the domain. +Fortunately, my provider, Netim has a free hosting plan with fits my needs. +I even get email hosting with my own domain. +There are also services like Neocities where you can host your website for free if you are willing to live with a subdomain.

    +

    Why should I? XYZ is free!

    +

    Yes, you can post wherever you want. +𝕏 (formerly known as Twitter) is free1, Mastodon is free, Facebook, Instagram, Threads, Reddit, you name them, are all free, but you are giving up your freedoms. +Mastodon might be a little better than the rest, but ultimately you depend on the host to let you post there. +And they can block you and delete all your data without even giving you any notice. +I hope you have a backup.

    +

    Hosting this blog allows me to write whatever I want. +Sure, Netim could also block me and delete my data, but since I use Hugo I always have everything backed up on my system anyways. +In a matter of hours I could be up and running on another hosting provider.

    +

    I can also use any format I want and have nearly endless possibilities to customize my blog. +The sky is the limit. +For example am I hosting my own photos instead of using Instagram and my own microblog instead of using Twitter/Mastodon. +Whatever media I plan to share in the future, there is a solution out there. +Want comments? I’m trying Cactus Comments at the moment.

    +

    Let me know what you think!

    +
    +
    +
      +
    1. +

      Or is it? I’m not in the loop. ↩︎

      +
    2. +
    +
    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/blog/index.html b/public/blog/index.html new file mode 100644 index 0000000..ec3ce6d --- /dev/null +++ b/public/blog/index.html @@ -0,0 +1,140 @@ + + + + + + +Blog | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Nix on macOS

    + +

    Moving from Homebrew to Nix. Mostly.

    +
    + +
    + + + + +

    Deploy a website using Git

    + +

    +
    + +
    + + + + +

    Geheime Botschaften – Simon Singh

    + +

    Buchvorstellung

    +
    + +
    + + + + +

    RSS

    + +

    Feeds without fuzz.

    +
    + +
    + + + + +

    12 cent blog

    + +

    Hosting a website at (almost) no cost.

    +
    + +
    + + + + +

    git

    + +

    Warum jeder git lernen sollte.

    +
    + +
    + + + + +

    LaTeX

    + +

    Wie ich Word durch LaTeX ersetzte.

    +
    + +
    + + + + +

    Genesis

    + +

    Über das Erstellen einer Webseite.

    +
    + + +
    + + + + diff --git a/public/blog/index.xml b/public/blog/index.xml new file mode 100644 index 0000000..3416f00 --- /dev/null +++ b/public/blog/index.xml @@ -0,0 +1,282 @@ + + + + Blog on Jan Kremer + https://jankremer.eu/blog/ + Recent content in Blog on Jan Kremer + Hugo -- gohugo.io + de + 2022-12-10 00:00 + + Nix on macOS + https://jankremer.eu/blog/nix/ + 2024-03-14 00:00 + + https://jankremer.eu/blog/nix/ + <p>For about a year, I&rsquo;ve been fascinated by <a href="https://nixos.org">Nix and NixOS</a>. I don&rsquo;t remember exactly what fascinated me at first, probably the possibility to setup and configure my system using a single file. A few weeks ago, I decided to give it a serious try.</p> +<h2 id="installation">Installation</h2> +<p>To be honest this is not my first time installing Nix on my machine. I tried the official Nix installer and the &ldquo;old&rdquo; way to use Nix which is basically the same as any other package manager. I didn&rsquo;t see the point of having two package managers so I uninstalled Nix quickly after.</p> +<p>Then, a few weeks ago, I came across <a href="https://nixcademy.com/2024/01/15/nix-on-macos/">this guide</a> and it instantly clicked with me. Having a single file in which I declare my complete system and then have it set up in a few minutes without rebooting is just infinitely cool. In Nix, this feature is called <em>flake</em>. The guide uses the <a href="https://github.com/DeterminateSystems/nix-installer">Determinate systems installer</a> which sets up flakes by default. It also explains how to install Nix Darwin.</p> +<h2 id="nix-darwin">Nix Darwin</h2> +<p>Nix Darwin is a set of Nix modules that brings declarative configuration to macOS. It includes a bunch of options such as for the dock, Finder or the keyboard for example. It also gives the user basic configuration options for various programs. However I prefer to set up terminal based programs using <a href="#home-manager">Home Manager</a> instead, because it supports even more programs.</p> +<p>What I do use extensively is the <a href="https://brew.sh/">Homebrew</a> module to install not only GUI (graphical user interface) apps from Homebrew, but also from the App Store.</p> +<h2 id="home-manager">Home Manager</h2> +<p>For everything else, from terminal based programs to their configuration, I use <a href="https://github.com/nix-community/home-manager?tab=readme-ov-file">Home Manager</a>. It includes a huge set of modules and allows me to setup every non-GUI program in a declarative way. Still, sometimes you have to configure the &ldquo;traditional way&rdquo;, meaning in the original configuration language. But still, I much prefer this over my cluttered <code>.config</code> directory.</p> +<h2 id="nixvim">Nixvim</h2> +<p>In the process of writing my Nix configuration, I became unsatisfied with my Neovim setup. I used to use <a href="https://www.lazyvim.org">LazyVim</a> but it felt more and more bloated and slow on my 9 year old machine. For some time I used <a href="https://helix-editor.com/">Helix</a> which has great defaults, such as language server protocol (LSP) and fuzzy finder integration. I really think Neovim should go in this direction. Unfortunately it lacks some features to make it my main editor, mostly support for <a href="https://typst.app/">Typst</a> which is already added to the <code>master</code> branch. It also lacks a plugin system, but given such great defaults, there isn&rsquo;t that big of a need for it. Helix also features its own set of motions, and although I think they are not bad, maybe even better than Vim motions, the latter are so ubiquitously implemented that I would essentially use both all the time.</p> +<p>That&rsquo;s when I saw a video by <em>ThePrimeagen</em> in which he recommended <a href="https://github.com/nvim-lua/kickstart.nvim/tree/master">Kickstart</a>, a minimal Neovim starter configuration mainly written by <em>TJ DeVries</em>. It almost everything you need to get started and has insanely great documentation.</p> +<p>The only thing that bothered me was the use of <a href="https://github.com/williamboman/mason.nvim">Mason</a> as a LSP package manager. For some people this might be the best way to install LSPs, but I don&rsquo;t understand why I would use a second package manager when I can just use Nix for everything. Helix has a list of supported LSPs and all you have to do is make sure they are in your <code>$PATH</code>.</p> +<p>Luckily, others already had the same issues and decided to write <a href="https://github.com/nix-community/nixvim">Nixvim</a>. Nixvim is a NixOS / Nix Darwin / Home manager module that lets you configure Neovim (almost) entirely using Nix. It uses Nix as the plugin manager and has great defaults and documentation.</p> +<p>I basically recreated Kickstart using Nixvim with some minor tweaks. It feels just as snappy as Helix and I love it.</p> +<h2 id="conclusion">Conclusion</h2> +<p>This is just the tip of the tip of the iceberg of what is possible with Nix. Next, I want to learn to write my own flakes to set up development environments. I should probably learn a bit of Nix language too. But to sum it up so far, I&rsquo;m really happy and excited about this &ldquo;new&rdquo; way to manage my computer.</p> + + + + + Deploy a website using Git + https://jankremer.eu/blog/git-deploy/ + 2023-09-25 00:00 + + https://jankremer.eu/blog/git-deploy/ + <h2 id="git-ftp">Git-ftp</h2> +<p>I tested a lot of different FTP programs including GUIs, TUIs and CLIs. +There might be a problem with the FTP server but I don&rsquo;t control that unfortunately. +The only program working flawlessly so far is <a href="https://git-ftp.github.io/">git-ftp</a>, a plugin for Git. +Not only is this perfectly integrated into git, which I am using anyway. +Also no errors occurred so far. +Plus I can automate the upload using <a href="#git-hooks">hooks</a>.</p> +<h2 id="git-hooks">Git hooks</h2> +<p>The real MVP however is <a href="https://git-scm.com/docs/githooks">Git Hooks</a>. +Hooks are scripts that run automatically on certain Git events.</p> +<p>I did, for example, create a hook to automacally build the website after commiting a change. +Yes, this could introduce problems such as breaking changes and I end up with a broken website, but as I test it regularly this should not become a problem.</p> +<p>The second hook I created pushes the website to the FTP server whenever I push to the remote repository.</p> +<h2 id="git-submodule">Git submodule</h2> +<p>I recently discovered that I can use <code>git submodule</code> to add the <code>public</code> folder created by Hugo. +This allows me to upload the repository to my pages repository on Codeberg and have the site mirrored there. +Secoundly, it allows me to upload the website with git-ftp without uploading everything else.</p> +<hr> +<p>What awesome features of Git are you using?</p> + + + + + Geheime Botschaften – Simon Singh + https://jankremer.eu/blog/geheime-botschaften/ + 2023-09-09 00:00 + + https://jankremer.eu/blog/geheime-botschaften/ + <p>Ich las vor kurzem das Buch <em>Geheime Botschaften. Die Kunst der Verschlüsselung von der Antike bis in die Zeiten des Internet</em><sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup> von <a href="https://simonsingh.net">Simon Singh</a>. +Es stellt eine Einführung in die Geschichte der Verschlüsselung dar und ist für jeden, den das Thema interessiert, äußerst empfehlenswert. +Daneben geht der Autor auch auf die &ldquo;Entschlüsselung&rdquo; antiker Sprachen wie der <a href="https://de.wikipedia.org/wiki/Hieroglyphen">Hieroglyphen</a> und Schriften wie <a href="https://de.wikipedia.org/wiki/Linearschrift_B">Linear B</a> ein.</p> +<p>In den letzten Kapiteln des Buchs erklärt Singh zudem &ldquo;moderne&rdquo; Verschlüsselungsmethoden wie <a href="https://de.wikipedia.org/wiki/RSA-Kryptosystem">RSA</a> und den <a href="https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch">Diffie-Hellmann-Schlüsselaustausch</a>. +Nur leider zeigt sich hier deutlich, dass das Buch bereit 1999 publiziert wurde und somit die letzten 24 Jahre der Kryptographie nicht erwähnt werden konnten. +Dadurch finden sich Themen wie zum Beispiel das <a href="https://www.signal.org/docs/">Signal-Protokoll</a>, die damit einhergehende massive Verbreitung starker Verschlüsselung und Krypto-Währungen hier nicht wieder.</p> +<p>Zum Glück kann man vieles davon selbst im Internet recherchieren.</p> +<p>Update: Signal wird in Zukunft <a href="https://signal.org/blog/pqxdh">quantumresistente Verschlüsselung</a> benutzen.</p> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>Originaltitel: <em>The Code Book. The Science of Secrecy from Ancient Egypt to Quantum Cryptography</em>&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + RSS + https://jankremer.eu/blog/rss/ + 2023-09-01 00:00 + + https://jankremer.eu/blog/rss/ + <h2 id="what-is-rss">What is RSS?</h2> +<p>Originally, RSS stood for &ldquo;RDF/Rich Site Summary&rdquo; but was later changed to &ldquo;Really Simple Syndication&rdquo;</p> +<p>RSS is a way to subscribe to a website. +Whenever that website updates it writes its changes to a <code>XML</code> file. +You can then read this XML file and see what changed at a glance.</p> +<p>Many websites use RSS including YouTube, <del>Reddit</del> Lemmy, <del>Twitter</del> Mastodon, most news sites, and almost any blog out there. +For many blogs, RSS is the main way to distribute new posts.</p> +<p>RSS is experiencing a Renaissance at the moment: +Many people are now seeing the damages done by algorithmic feeds and want to go back to purely chronological feeds. +RSS provides a perfect infrastructure for this.</p> +<h2 id="how-to-read-rss">How to read RSS?</h2> +<p>First, you need a feed reader. On macOS and iOS I highly recommend <a href="https://netnewswire.com">NetNewsWire</a>. +For terminal fans <a href="https://newsboat.org">Newsboat</a> is the way to go. +<a href="https://www.thunderbird.net/">Thunderbird</a> is also a good choice but there are tons of programs that can read RSS feeds.</p> +<p>That&rsquo;s bascially it. Now you need to add some feeds and you are ready.</p> +<p>I recommend picking a reader that can also fetch the article without opening the browser and loading a ton of ads.</p> +<p>Pro tip: You can export your subscibtions to a <code>OPML</code> file and import them into any RSS reader.</p> +<h2 id="how-to-distribute-rss">How to distribute RSS?</h2> +<p>This is the hardest question to answer about RSS as there are endless possibilities.</p> +<p>The easiest way would probably be to use a service such as Mastodon that generates the feed automatically. +If that platform isn&rsquo;t for you, WordPress is a good way to host a blog. +I read about people setting up their own scripts that automatically update the feed for new posts.</p> +<p>I use <a href="https://gohugo.io">Hugo</a> which is a <em>static site generator</em>. +It generates feeds automatically but lies somewhere between WordPress and writing your own scripts in terms of how tech savvy you should be.</p> +<h2 id="how-to-find-rss">How to find RSS?</h2> +<p>Go to a website you like, copy the URL and paste it into your RSS reader. +Modern feed readers can find RSS feed on their own, you just have to provide a link to the site you want to subscribe to. +If that is not the case, you could try adding <code>/index.xml</code> to the URL.</p> +<p>Some sites, like this one, also link to their RSS feeds. +Often those links are a the bottom of the website and are either marked as <code>RSS</code>, <code>Feed</code>, or just use the RSS logo. +I additionally provide links to my subprojects such as my <a href="https://jankremer.eu/micro">microblog</a> or my <a href="https://jankremer.eu/fotos">photos</a>. +Feel free to add them to your reader.</p> +<h2 id="conclusion">Conclusion</h2> +<p>I think RSS is on the rise. +It&rsquo;s an old protocol that survived numerous challenges +It provides an escape from the algorithms and large social media companies. +It also provides a way for content creators to distribute their content on their own without any middleman.</p> + + + + + 12 cent blog + https://jankremer.eu/blog/hosting/ + 2023-08-27 00:00 + + https://jankremer.eu/blog/hosting/ + <p>Yes, the title is correct. +<a href="https://knowyourmeme.com/photos/1191035">Well, actually</a> it is 0.119 € per +month or 14.28 € for 10 years.</p> +<p>To be fair, it was a special offer and only covers the domain. +Fortunately, my provider, <a href="https://www.netim.com/en">Netim</a> has a free hosting plan with fits my needs. +I even get email hosting with my own domain. +There are also services like <a href="https://neocities.org">Neocities</a> where you can host your website for free if you are willing to live with a subdomain.</p> +<h2 id="why-should-i-xyz-is-free">Why should I? XYZ is free!</h2> +<p>Yes, you can post wherever you want. +𝕏 (formerly known as Twitter) is free<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>, Mastodon is free, Facebook, Instagram, Threads, Reddit, you name them, are all free, but you are giving up your freedoms. +Mastodon might be a little better than the rest, but ultimately you depend on the host to let you post there. +And they can block you and delete all your data without even giving you any notice. +I hope you have a backup.</p> +<p>Hosting this blog allows me to write whatever I want. +Sure, Netim could also block me and delete my data, but since I use <a href="https://gohugo.io">Hugo</a> I always have everything backed up on my system anyways. +In a matter of hours I could be up and running on another hosting provider.</p> +<p>I can also use any format I want and have nearly endless possibilities to customize my blog. +The sky is the limit. +For example am I hosting my own <a href="https://jankremer.eu/fotos">photos</a> instead of using Instagram and my own <a href="https://jankremer.eu/micro">microblog</a> instead of using Twitter/Mastodon. +Whatever media I plan to share in the future, there is a solution out there. +Want comments? I&rsquo;m trying <a href="https://cactus.chat">Cactus Comments</a> at the moment.</p> +<p>Let me know what you think!</p> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>Or is it? I&rsquo;m not in the loop.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + git + https://jankremer.eu/blog/git/ + 2023-03-22 16:47 + + https://jankremer.eu/blog/git/ + <p>Ursprünglich sollte es in diesem Post um <a href="https://git-scm.com">git</a>, jedoch ist mir bei Brainstorming aufgefallen, dass das Thema eigentlich deutlich umfangreicher sein sollte.</p> +<p>Meine Reise begann, als ich beschloss, diesen Blog zu starten. +Da ich bis dahin Webseiten nur in reinem HTML und CSS geschrieben hatte, versuchte ich es zunächst damit. +Schnell stellten sich dabei aber mehrere Probleme heraus:</p> +<ol> +<li>Ich bin nicht gut in CSS.</li> +<li>Einen RSS-Feed von Hand zu erstellen ist umständlich und nicht sinnvoll.</li> +<li>Mehrere Seiten mit einheitlichem Design in HTML zu schreiben ist kompliziert.</li> +<li>Ich mag die HTML Syntax nicht.</li> +</ol> +<p>Ich war überzeugt, dass ich eine bessere Lösung dafür brauche. +Nach kurzer und intensiver Recherche fand ich heraus, dass die Lösung meine Problems <em>&ldquo;static site generator&rdquo;</em> heißt. +Darüber hatte ich bereits <a href="https://jankremer.eu/blog/genesis">hier</a> geschrieben.</p> +<p>Im Zuge dessen lernte ich auch <em>git</em> kennen. +Ich hatte zwar schon früher von <em>git</em> gehört, bis dato aber nur zum herunterladen von Software benutzt. +Und damit sind wir schon im Kern meines Problems gelandet:</p> +<h2 id="warum-kannte-ich-git-nicht">Warum kannte ich <em>git</em> nicht?</h2> +<p>Meine ersten Erfahrungen mit dem Programmieren machte ich damals in der Schule, angefangen mit HTML und CSS, später mit Python und Java. +Aber ohne <em>git</em>. +An der Uni (4 Semester Wirtschaftsinformatik) ging es dann weiter mit Java, aber weiterhin ohne <em>git</em>.</p> +<p>Erst beim erstellen dieses Blogs kam ich auf die Idee mich mal ein wenig mit <a href="https://de.wikipedia.org/wiki/Versionsverwaltung">Versionsverwaltung</a> auseinander zu setzen. +Und seitdem bin ich verliebt.</p> +<p>Inzwischen denke ich, dass jeder von <em>git</em> profitieren könnte. +Das einfache Zurückspringen zu früheren Versionen, falls mal was kaputt geht, oder das Auslagern und Zusammenführen von <em>Branches</em> sind einfach großartig. +Zudem ermutigt wird man ermutigt, an logisch sinnvollen Stellen zu <em>commiten</em> und somit den bisherigen Stand zu speichern.</p> +<p>Es wäre meiner Meinung nach auch sinnvoll, Texte, wie zum Beispiel Projektarbeiten, nicht in <em>Microsoft Word</em> zu verfassen sondern besser in Textdokumenten und diese dann mit <em>git</em> zu verwalten und zusammenzufügen (merge). +Diese könnten dann ganz leicht in <a href="https://jankremer.eu/blog/latex">LaTeX-Dokumente</a> umgewandelt werden oder auch in <em>Word</em> formatiert werden. +Darüber hinaus würde dies den Autoren die Möglichkeit geben, einen Texteditor der Wahl zu nutzen. +Gerade auf älteren Maschinen, wie meinem <em>MacBook Pro</em> von 2015 braucht <em>Word</em> inzwischen einiges an Ressourcen. +Dies könnte aber auch damit zusammen hängen, dass <em>Word</em> auf meinem Computer stolze 2.3 GB schwer ist. +Zum Vergleich: Das <strong>gesamte</strong> <em>LibreOffice</em> braucht keine 800 MB.</p> +<p>Ich verstehe auch, dass nicht jeder auf der Kommandozeile zu Hause ist, jedoch gibt es ja auch Tools wie GitHub oder Programme mit grafischer Oberfläche, es sollte also für jeden was dabei sein.</p> +<p>Ich kratze hier gerade mal an der Oberfläche der Möglichkeiten, das meiste ist mir selbst noch nicht bekannt. +Ich kann nur jedem, der <em>git</em> noch nicht nutzt es nur wärmstens empfehlen, es mal auszuprobieren. +Schaden kann es nicht!</p> +<p>P.S.: Ja ich weiß, <em>git</em> ist kein Geheimtipp.</p> + + + + + LaTeX + https://jankremer.eu/blog/latex/ + 2023-01-12 15:35 + + https://jankremer.eu/blog/latex/ + <p>Im Rahmen meines Wahlpflichtpraktikums schreibe ich aktuell an meiner zweiten größeren Projektarbeit. Die einzige andere Projektarbeit war bisher die für das Praktikum Pharmazeutische Technologie, welche, Stand jetzt, noch nicht vollständig abgeschlossen ist.</p> +<p>Für diese Arbeit entschieden wir uns jedoch für <em>Microsoft Word</em>. Also im Grunde wurde uns diese Entscheidung fast abgenommen, da die Universität Regensburg uns das <em>Office 365</em> zur Verfügung stellt und es damit auch bei uns Studenten den De-Facto-Standard darstellt. Zudem erleichtert es das Arbeiten im Team doch sehr.</p> +<p>Formatierungen sind jedoch immer ein Kampf. Daher wollte ich versuchen, <a href="https://www.latex-project.org">LaTeX</a> für diese Arbeit einzusetzen. Ich kannte <em>LaTeX</em> vor allem aus mathematischen Kursen an der Uni und hatte schon oft gehört, dass es Setzen (von <a href="https://de.wikipedia.org/wiki/Satz_(Druck)">Satz</a>) deutlich vereinfachen soll. Aber nicht nur das Schreiben mathematischer Arbeiten macht es deutlich angenehmer, durch das einbinden einiger zusätzlicher Pakete werden wissenschaftliche Texte zum Kinderspiel.</p> +<h2 id="über-latex">Über LaTeX</h2> +<blockquote> +<p><strong>LaTeX</strong> [ˈlaːtɛç] ist ein Softwarepaket, das die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht. <em>LaTeX</em> wurde Anfang der 1980er Jahre von <em>Leslie Lamport</em> entwickelt.Der Name bedeutet so viel wie <em>Lamport TeX</em>. Die Entwicklung wurde seit den 1990er Jahren von einer Anzahl Entwicklern weitergeführt. Heute ist <em>LaTeX</em> die populärste Methode, <em>TeX</em> zu verwenden.</p> +</blockquote> +<p>— <!-- raw HTML omitted --><a href="https://de.wikipedia.org/wiki/LaTeX">Wikipedia: LaTeX</a><!-- raw HTML omitted --></p> +<p><em>LaTeX</em> funktioniert ähnlich wie <em>HTML</em> oder <em>Markdown</em>: Zunächst wird die Formatierung von Text getrennt. Bei WYSIWYG<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>-Textverarbeitungsprogrammen wie <em>Word</em> sieht man direkt, wie das gedruckte Dokument hinterher aussehen wird. Das macht es für viele Nutzer einfacher, zwingt sie aber auch dazu, sich direkt und unmittelbar mit der Formatierung zu beschäftigen. <em>LaTeX</em> trennt dies zunächst, gibt aber dennoch eine übersichtliche Struktur vor. Zudem sind die Standard Formatvorlagen deutlich schlichter und zumindest für mich wesentlich ansprechender als die von <em>Word</em> (Warum ist alles blau und wieso <em>Calibri</em>?!). Ja, die Voreinstellungen von <em>Word</em> lassen sich überschreiben, aber das muss man auch erstmal machen.</p> +<p>Funktionen wie ein Inhalts- oder Literaturvrezeichnis lassen sich in <em>Word</em> zwar auch realisieren, sind in <em>LaTeX</em> wesentlich simpler. Zudem lässt sich <em>LaTeX</em> durch Pakete nahezu unendlich erweitern und deckt dadruch auch jeden noch so speziellen Fall ab.</p> +<p>Ein weiterer Punkt, warum ich <em>LaTeX</em> bevorzuge ist, dass ich jeden Texteditor benutzen kann. Ich nutze am liebsten <em>VS Code</em>, aber natürlich kann jeder beliebige Editor verwendet werden.</p> +<p>Das einzige, was mit <em>Word</em> sicher einfacher wäre ist das einbinden und beschriften von Grafiken. Da ich einige davor in meine Projektarbeit verwende, brauchte ich hierfür eine Lösung. Diese habe ich mit <a href="https://inkscape.org/de/">Inkscape</a> gefunden. Hiermir lassen sich Bilder bearbeiten und beschriften und anschließend als <em>LaTeX</em>-Dokument speichern. Diese lassen sich dann ganz einfach einbinden.</p> +<h2 id="fazit">Fazit</h2> +<p>Für wen <em>Word</em> und ähnliches schon immer eine Qual war oder wer Vorerfahrung mit Texteditoren und Skriptsprachen hat, dem kann ich <em>LaTeX</em> nur ans Herz legen. Ganz einfach lassen sich wunderschöne Dokumente herzaubern. Vor allem der Font <em>Computer Modern</em> hat es mir sehr angetan. Eventuell werde ich die Projektarbeit demnächst hier hochladen.</p> +<hr> +<h2 id="technische-spezifikationen">Technische Spezifikationen</h2> +<p>Kurzer Nachtrag über meine Arbeitsweise mit <em>LaTeX</em>: Als Texteditor benutze ich <a href="https://code.visualstudio.com">VS Code</a>, da ich diesen super übersichtlich finde und vor allem die Erweiterungsmöglichkeiten sehr schätze. Für <em>LaTeX</em> sind dies vor allem <a href="https://github.com/James-Yu/LaTeX-Workshop">LaTeX Workshop</a> und natürlich <a href="https://git-scm.com">git</a> (vorinstalliert). Des Weiteren benutze ich die <a href="https://www.tug.org/mactex/">MacTeX-Distribution</a>, welche ich über <a href="https://brew.sh">Homebrew</a> installiert habe.</p> +<h3 id="verwendete-pakete">Verwendete Pakete</h3> +<ul> +<li><strong>babel</strong>: Sorgt für die Unterstützung verschiedener Sprachen. Ich schreibe die Projektarbeit zwar auf Englisch, jedoch brauche ich ab und zu mal Deutsche Begriffe und damiteinhergehend Umlaute etc.</li> +<li><strong>biblatex</strong>: Verbessertes Literaturverzeichnis, alternative zu <strong>bibtex</strong>.</li> +<li><strong>booktabs</strong>: Verschönert und vereinfacht Tabellen in <em>LaTeX</em>.</li> +<li><strong>chemformula</strong>: Erleichtert das Setzen von chemischen Formeln enorm und sorgt dafür, dass diese auch richtig angezeigt werden.</li> +<li><strong>hyperref</strong>: Für Links und Metadaten.</li> +<li><strong>longtable</strong>: Die verwendeten Materialien habe ich alle in riesigen Listen. <em>LaTeX</em> kann standardmäßig nicht besonders gut mit großen Tabellen umgehen, dieses Paket hilft dabei.</li> +<li><strong>microtype</strong>: Lässt alles schöner aussehen, praktisch schwarze Magie.</li> +<li><strong>siunitx</strong>: Das wahrscheinlich beste Paket überhaupt, simple aber hat Power. Sorgt für perfektes setzen von Einheiten, mit oder ohne vorangehenden Wert. Zudem enthält es eine Funktion, die Werte in Tabellen um den Dezimalpunkt anordnen kann. Ein Traum.</li> +<li><strong>textgreek</strong>: Erleichtert das verwenden von griechischen Buchstaben im Text.</li> +<li>Zusätzliche Pakete die ich an der Stelle nicht weiter erleutern werden: <strong>color</strong>, <strong>csquotes</strong>, <strong>fontenc</strong>, <strong>glossaries</strong>, <strong>graphicx</strong>, <strong>tikz</strong> und <strong>tocbibind</strong>.</li> +</ul> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>What you see is what you get.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + Genesis + https://jankremer.eu/blog/genesis/ + 2022-12-10 00:00 + + https://jankremer.eu/blog/genesis/ + <p>Als ich vor ca. einem Jahr diese Domain kaufte, wusste ich noch nicht was ich damit anstellen will. Ich wusste nur: <strong>Ich will endlich eine eigene Webseite haben.</strong></p> +<p>In meinen ersten Stunden Informatik in der Schule (vor über 10 Jahren) lernten wir die Grundlagen des Webdesigns mit <em>HTML</em> und <em>CSS</em>, und da ich zunächst nicht viel Zeit hatte erstellte ich genau mit diesen Tools eine kleine Startseite. Mehr schlecht als recht aber immerhin hatte ich etwas.</p> +<p>Im März diesen Jahres hatte ich dann ein wenig Zeit mich genauer mit dem Thema zu beschäftigen und fand dabei den sogenannten <a href="https://jamstack.org">Jamstack</a>. Jamstack sind Tools zur schnellen und einfachen Aufstellen von Webseite. Dies können große Projekte sein oder wie in meinem Fall ein kleiner Blog. Zuerst probierte ich <a href="https://jekyllrb.com/">Jekyll</a> was mir jedoch nicht so gut taugte und stieß dann auf <a href="https://gohugo.io/">Hugo</a>. Mit einer Vielzahl an modernen Designs und einer klinderleichten Handhaben konnte ich schnell überzeugt werden.</p> +<p>Heute weiß ich zwar immer noch nicht, was ich hiermit in Zukunft machen werde, aber ich denke es ist wichtiger den je ein Sprachrohr zu haben, das unabhängig ist von der Willkür großer Plattformen.</p> +<p>Bis bald und viel Spaß!</p> +<p>P.S.: Dieses wunderschöne <em>Theme</em>, das ich hier benutze, heißt <a href="https://git.io/hugo-congo">Congo</a>.</p> + + + + + diff --git a/public/blog/latex/index.html b/public/blog/latex/index.html new file mode 100644 index 0000000..47c8a18 --- /dev/null +++ b/public/blog/latex/index.html @@ -0,0 +1,118 @@ + + + + + + +LaTeX | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    LaTeX

    + +

    Wie ich Word durch LaTeX ersetzte.

    + +

    Im Rahmen meines Wahlpflichtpraktikums schreibe ich aktuell an meiner zweiten größeren Projektarbeit. Die einzige andere Projektarbeit war bisher die für das Praktikum Pharmazeutische Technologie, welche, Stand jetzt, noch nicht vollständig abgeschlossen ist.

    +

    Für diese Arbeit entschieden wir uns jedoch für Microsoft Word. Also im Grunde wurde uns diese Entscheidung fast abgenommen, da die Universität Regensburg uns das Office 365 zur Verfügung stellt und es damit auch bei uns Studenten den De-Facto-Standard darstellt. Zudem erleichtert es das Arbeiten im Team doch sehr.

    +

    Formatierungen sind jedoch immer ein Kampf. Daher wollte ich versuchen, LaTeX für diese Arbeit einzusetzen. Ich kannte LaTeX vor allem aus mathematischen Kursen an der Uni und hatte schon oft gehört, dass es Setzen (von Satz) deutlich vereinfachen soll. Aber nicht nur das Schreiben mathematischer Arbeiten macht es deutlich angenehmer, durch das einbinden einiger zusätzlicher Pakete werden wissenschaftliche Texte zum Kinderspiel.

    +

    Über LaTeX

    +
    +

    LaTeX [ˈlaːtɛç] ist ein Softwarepaket, das die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht. LaTeX wurde Anfang der 1980er Jahre von Leslie Lamport entwickelt.Der Name bedeutet so viel wie Lamport TeX. Die Entwicklung wurde seit den 1990er Jahren von einer Anzahl Entwicklern weitergeführt. Heute ist LaTeX die populärste Methode, TeX zu verwenden.

    +
    +

    Wikipedia: LaTeX

    +

    LaTeX funktioniert ähnlich wie HTML oder Markdown: Zunächst wird die Formatierung von Text getrennt. Bei WYSIWYG1-Textverarbeitungsprogrammen wie Word sieht man direkt, wie das gedruckte Dokument hinterher aussehen wird. Das macht es für viele Nutzer einfacher, zwingt sie aber auch dazu, sich direkt und unmittelbar mit der Formatierung zu beschäftigen. LaTeX trennt dies zunächst, gibt aber dennoch eine übersichtliche Struktur vor. Zudem sind die Standard Formatvorlagen deutlich schlichter und zumindest für mich wesentlich ansprechender als die von Word (Warum ist alles blau und wieso Calibri?!). Ja, die Voreinstellungen von Word lassen sich überschreiben, aber das muss man auch erstmal machen.

    +

    Funktionen wie ein Inhalts- oder Literaturvrezeichnis lassen sich in Word zwar auch realisieren, sind in LaTeX wesentlich simpler. Zudem lässt sich LaTeX durch Pakete nahezu unendlich erweitern und deckt dadruch auch jeden noch so speziellen Fall ab.

    +

    Ein weiterer Punkt, warum ich LaTeX bevorzuge ist, dass ich jeden Texteditor benutzen kann. Ich nutze am liebsten VS Code, aber natürlich kann jeder beliebige Editor verwendet werden.

    +

    Das einzige, was mit Word sicher einfacher wäre ist das einbinden und beschriften von Grafiken. Da ich einige davor in meine Projektarbeit verwende, brauchte ich hierfür eine Lösung. Diese habe ich mit Inkscape gefunden. Hiermir lassen sich Bilder bearbeiten und beschriften und anschließend als LaTeX-Dokument speichern. Diese lassen sich dann ganz einfach einbinden.

    +

    Fazit

    +

    Für wen Word und ähnliches schon immer eine Qual war oder wer Vorerfahrung mit Texteditoren und Skriptsprachen hat, dem kann ich LaTeX nur ans Herz legen. Ganz einfach lassen sich wunderschöne Dokumente herzaubern. Vor allem der Font Computer Modern hat es mir sehr angetan. Eventuell werde ich die Projektarbeit demnächst hier hochladen.

    +
    +

    Technische Spezifikationen

    +

    Kurzer Nachtrag über meine Arbeitsweise mit LaTeX: Als Texteditor benutze ich VS Code, da ich diesen super übersichtlich finde und vor allem die Erweiterungsmöglichkeiten sehr schätze. Für LaTeX sind dies vor allem LaTeX Workshop und natürlich git (vorinstalliert). Des Weiteren benutze ich die MacTeX-Distribution, welche ich über Homebrew installiert habe.

    +

    Verwendete Pakete

    +
      +
    • babel: Sorgt für die Unterstützung verschiedener Sprachen. Ich schreibe die Projektarbeit zwar auf Englisch, jedoch brauche ich ab und zu mal Deutsche Begriffe und damiteinhergehend Umlaute etc.
    • +
    • biblatex: Verbessertes Literaturverzeichnis, alternative zu bibtex.
    • +
    • booktabs: Verschönert und vereinfacht Tabellen in LaTeX.
    • +
    • chemformula: Erleichtert das Setzen von chemischen Formeln enorm und sorgt dafür, dass diese auch richtig angezeigt werden.
    • +
    • hyperref: Für Links und Metadaten.
    • +
    • longtable: Die verwendeten Materialien habe ich alle in riesigen Listen. LaTeX kann standardmäßig nicht besonders gut mit großen Tabellen umgehen, dieses Paket hilft dabei.
    • +
    • microtype: Lässt alles schöner aussehen, praktisch schwarze Magie.
    • +
    • siunitx: Das wahrscheinlich beste Paket überhaupt, simple aber hat Power. Sorgt für perfektes setzen von Einheiten, mit oder ohne vorangehenden Wert. Zudem enthält es eine Funktion, die Werte in Tabellen um den Dezimalpunkt anordnen kann. Ein Traum.
    • +
    • textgreek: Erleichtert das verwenden von griechischen Buchstaben im Text.
    • +
    • Zusätzliche Pakete die ich an der Stelle nicht weiter erleutern werden: color, csquotes, fontenc, glossaries, graphicx, tikz und tocbibind.
    • +
    +
    +
    +
      +
    1. +

      What you see is what you get. ↩︎

      +
    2. +
    +
    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/blog/nix/index.html b/public/blog/nix/index.html new file mode 100644 index 0000000..8e5de6c --- /dev/null +++ b/public/blog/nix/index.html @@ -0,0 +1,95 @@ + + + + + + +Nix on macOS | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Nix on macOS

    + +

    Moving from Homebrew to Nix. Mostly.

    + +

    For about a year, I’ve been fascinated by Nix and NixOS. I don’t remember exactly what fascinated me at first, probably the possibility to setup and configure my system using a single file. A few weeks ago, I decided to give it a serious try.

    +

    Installation

    +

    To be honest this is not my first time installing Nix on my machine. I tried the official Nix installer and the “old” way to use Nix which is basically the same as any other package manager. I didn’t see the point of having two package managers so I uninstalled Nix quickly after.

    +

    Then, a few weeks ago, I came across this guide and it instantly clicked with me. Having a single file in which I declare my complete system and then have it set up in a few minutes without rebooting is just infinitely cool. In Nix, this feature is called flake. The guide uses the Determinate systems installer which sets up flakes by default. It also explains how to install Nix Darwin.

    +

    Nix Darwin

    +

    Nix Darwin is a set of Nix modules that brings declarative configuration to macOS. It includes a bunch of options such as for the dock, Finder or the keyboard for example. It also gives the user basic configuration options for various programs. However I prefer to set up terminal based programs using Home Manager instead, because it supports even more programs.

    +

    What I do use extensively is the Homebrew module to install not only GUI (graphical user interface) apps from Homebrew, but also from the App Store.

    +

    Home Manager

    +

    For everything else, from terminal based programs to their configuration, I use Home Manager. It includes a huge set of modules and allows me to setup every non-GUI program in a declarative way. Still, sometimes you have to configure the “traditional way”, meaning in the original configuration language. But still, I much prefer this over my cluttered .config directory.

    +

    Nixvim

    +

    In the process of writing my Nix configuration, I became unsatisfied with my Neovim setup. I used to use LazyVim but it felt more and more bloated and slow on my 9 year old machine. For some time I used Helix which has great defaults, such as language server protocol (LSP) and fuzzy finder integration. I really think Neovim should go in this direction. Unfortunately it lacks some features to make it my main editor, mostly support for Typst which is already added to the master branch. It also lacks a plugin system, but given such great defaults, there isn’t that big of a need for it. Helix also features its own set of motions, and although I think they are not bad, maybe even better than Vim motions, the latter are so ubiquitously implemented that I would essentially use both all the time.

    +

    That’s when I saw a video by ThePrimeagen in which he recommended Kickstart, a minimal Neovim starter configuration mainly written by TJ DeVries. It almost everything you need to get started and has insanely great documentation.

    +

    The only thing that bothered me was the use of Mason as a LSP package manager. For some people this might be the best way to install LSPs, but I don’t understand why I would use a second package manager when I can just use Nix for everything. Helix has a list of supported LSPs and all you have to do is make sure they are in your $PATH.

    +

    Luckily, others already had the same issues and decided to write Nixvim. Nixvim is a NixOS / Nix Darwin / Home manager module that lets you configure Neovim (almost) entirely using Nix. It uses Nix as the plugin manager and has great defaults and documentation.

    +

    I basically recreated Kickstart using Nixvim with some minor tweaks. It feels just as snappy as Helix and I love it.

    +

    Conclusion

    +

    This is just the tip of the tip of the iceberg of what is possible with Nix. Next, I want to learn to write my own flakes to set up development environments. I should probably learn a bit of Nix language too. But to sum it up so far, I’m really happy and excited about this “new” way to manage my computer.

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/blog/rss/index.html b/public/blog/rss/index.html new file mode 100644 index 0000000..97d42ec --- /dev/null +++ b/public/blog/rss/index.html @@ -0,0 +1,116 @@ + + + + + + +RSS | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    RSS

    + +

    Feeds without fuzz.

    + +

    What is RSS?

    +

    Originally, RSS stood for “RDF/Rich Site Summary” but was later changed to “Really Simple Syndication”

    +

    RSS is a way to subscribe to a website. +Whenever that website updates it writes its changes to a XML file. +You can then read this XML file and see what changed at a glance.

    +

    Many websites use RSS including YouTube, Reddit Lemmy, Twitter Mastodon, most news sites, and almost any blog out there. +For many blogs, RSS is the main way to distribute new posts.

    +

    RSS is experiencing a Renaissance at the moment: +Many people are now seeing the damages done by algorithmic feeds and want to go back to purely chronological feeds. +RSS provides a perfect infrastructure for this.

    +

    How to read RSS?

    +

    First, you need a feed reader. On macOS and iOS I highly recommend NetNewsWire. +For terminal fans Newsboat is the way to go. +Thunderbird is also a good choice but there are tons of programs that can read RSS feeds.

    +

    That’s bascially it. Now you need to add some feeds and you are ready.

    +

    I recommend picking a reader that can also fetch the article without opening the browser and loading a ton of ads.

    +

    Pro tip: You can export your subscibtions to a OPML file and import them into any RSS reader.

    +

    How to distribute RSS?

    +

    This is the hardest question to answer about RSS as there are endless possibilities.

    +

    The easiest way would probably be to use a service such as Mastodon that generates the feed automatically. +If that platform isn’t for you, WordPress is a good way to host a blog. +I read about people setting up their own scripts that automatically update the feed for new posts.

    +

    I use Hugo which is a static site generator. +It generates feeds automatically but lies somewhere between WordPress and writing your own scripts in terms of how tech savvy you should be.

    +

    How to find RSS?

    +

    Go to a website you like, copy the URL and paste it into your RSS reader. +Modern feed readers can find RSS feed on their own, you just have to provide a link to the site you want to subscribe to. +If that is not the case, you could try adding /index.xml to the URL.

    +

    Some sites, like this one, also link to their RSS feeds. +Often those links are a the bottom of the website and are either marked as RSS, Feed, or just use the RSS logo. +I additionally provide links to my subprojects such as my microblog or my photos. +Feel free to add them to your reader.

    +

    Conclusion

    +

    I think RSS is on the rise. +It’s an old protocol that survived numerous challenges +It provides an escape from the algorithms and large social media companies. +It also provides a way for content creators to distribute their content on their own without any middleman.

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/btc.txt b/public/btc.txt new file mode 100644 index 0000000..513b8a9 --- /dev/null +++ b/public/btc.txt @@ -0,0 +1,24 @@ + + + █▀▀▀▀▀█ ▄█ ▄▄▄█▄▄█▀▀▀▀▀▀ █▀▀▀▀▀█ + █ ███ █ ▄█▀█ ▄███▄▀▄▀▀▄▀ █ ███ █ + █ ▀▀▀ █ ▄ █ ▀▀▀▄▀▄ ▀▀ ▀ █ ▀▀▀ █ + ▀▀▀▀▀▀▀ ▀ ▀ █ █ ▀ ▀ ▀▄▀▄▀ ▀▀▀▀▀▀▀ + █▀███▄▀███▀ ▀█▀ ▄▀ ▄█▄▄▄▄▀▄▀ █▄▀▄ + ▀▄▄▄██▀▀▄█▄█▀ ██▀▀█ ▄▄▀▄▀▄ ▀▄ ▄█ + ▄██▄ █▀ ▀█▄▀▄▄ ▀▄█▄█▄▄▀▄ ▄▄▀▀▀ ▄▄ + ▄██ ▀ ▀▀▀ ▀ ▄█▀█▀ ▄▄▀▄▀▄▀ ▀█▀▄██ + ▄███▄ ▀▄ ██ ▀ ▀▀█▀▄▄█▄▄▄▀▀▄▄▀▀▄▄▄ + █▀ ██▀▀ ██▀█▀ ▄█▀ ▄▄▀▄▄ ▄█▀ ██▄▄ + █▄▄ █▄▀ ▀▄▀▄▄▄▀▄█▄▄▀▄██▀▄▄ ▀ ▄ + █ ██▀▀▀▀▄▄ ▄█▀██▀▀▄ █ ▀ ▄▄▀▄ + ▀ ▀ ▀▀ █▄█ ▀ ▀ ▄█ █▄▄▀ █▀▀▀██▄ ▄ + █▀▀▀▀▀█ ▀█ █▀ ▄█▀▀█▄ ▄▀██ ▀ █ █▀▄ + █ ███ █ █ ▄▀▄▄▄▀█▀▀▄█▄▀▄▀█▀▀██▄██ + █ ▀▀▀ █ █ ▀ ▄█▀█ ▀ ▄ ▄▄▄▀█▀ ▄▄█ + ▀▀▀▀▀▀▀ ▀▀▀ ▀ ▀ ▀ ▀ ▀ ▀ ▀ ▀ + + +bc1qf8qjt4gut2la8k4v3emfv7wrj6f3pfcjrj3slplnwrldkz7hqmaqaju7ym + + diff --git a/public/btc/index.html b/public/btc/index.html new file mode 100644 index 0000000..fad3a41 --- /dev/null +++ b/public/btc/index.html @@ -0,0 +1,85 @@ + + + + + + +Bitcoin | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Bitcoin

    + +

    + +

    Address

    +
    bc1qf8qjt4gut2la8k4v3emfv7wrj6f3pfcjrj3slplnwrldkz7hqmaqaju7ym
    +

    QR

    +

    BTC

    +

    OpenAlias

    +
    jankremer.eu
    +
    btc.jankremer.eu
    +
    +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/categories/index.html b/public/categories/index.html new file mode 100644 index 0000000..27d494c --- /dev/null +++ b/public/categories/index.html @@ -0,0 +1,60 @@ + + + + + + +Categories | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + + +
    + + + + diff --git a/public/categories/index.xml b/public/categories/index.xml new file mode 100644 index 0000000..fde139c --- /dev/null +++ b/public/categories/index.xml @@ -0,0 +1,10 @@ + + + + Categories on Jan Kremer + https://jankremer.eu/categories/ + Recent content in Categories on Jan Kremer + Hugo -- gohugo.io + de + + diff --git a/public/css/main.min.44d337144c40b1101874ef25bbc4d48bb4bb38e7cdd285c9396c8dfa51b92d03.css b/public/css/main.min.44d337144c40b1101874ef25bbc4d48bb4bb38e7cdd285c9396c8dfa51b92d03.css new file mode 100644 index 0000000..57a4636 --- /dev/null +++ b/public/css/main.min.44d337144c40b1101874ef25bbc4d48bb4bb38e7cdd285c9396c8dfa51b92d03.css @@ -0,0 +1 @@ +@font-face{font-family:eb garamond;src:url(/fonts/EBGaramond-VariableFont_wght.ttf)}:root{font-size:calc(1rem + .25vw);--red:#FC361D;--blue1:#116080;--blue2:#105099;--light-gray:#F0F0F0;--white:white;--beige:#FCF9EC;--text1:#1a1a1a;--text2:#6f6f6f;--text3:#999999}body{color:var(--text);background:var(--background);font-family:eb garamond,serif;font-variant-numeric:oldstyle-nums;line-height:1.5;margin:auto;padding:1rem;max-width:70ch;font-weight:400}header{border-bottom:1px solid var(--text3);margin-bottom:1rem;nav { ul { font-size: 1.25rem; list-style: none; display: flex; justify-content: space-between; padding: 0; .active { text-decoration: underline; } } }}p{padding:0;margin-top:0;text-align:justify;text-justify:inter-word}article>p:nth-of-type(2)::first-letter{font-size:3rem;float:left;line-height:2.9rem;padding-right:.2rem}a{color:var(--red);text-decoration:none}h1{padding:0;margin:0;font-size:2rem;font-weight:400;text-align:center}h2{padding:0;margin:0;font-size:1.75rem;font-weight:400}h3{padding:0;margin:0;font-size:1.5rem;font-weight:400}time{font-size:1rem;float:right;color:var(--blue2)}table{border-collapse:collapse;width:100%;th { text-align: left; border-bottom: 1px solid var(--text1); }}hr{border:.1px solid var(--text2)}img{max-width:100%}footer{border-top:1px solid var(--text3);margin-top:1rem;p { font-size: 0.75rem; padding: 1rem; text-align: center; color: var(--text2); a { color: var(--text2); } }}.list{h2 { margin-top: 2rem; margin-bottom: 0; a { color: var(--text1); } } .lead { margin: 0; font-size: 1rem; text-align: left; }}.tags{ul { list-style: none; display: flex; justify-content: space-between; padding: 0 1rem; font-size: 0.75rem; li { padding: 0rem 0.3rem; border: 1px solid var(--text1); border-radius: 0.3rem; } }}.title{font-size:2rem;margin-bottom:.5rem}.lead{text-align:center;font-size:1.5rem;margin-bottom:1rem} \ No newline at end of file diff --git a/public/eth.txt b/public/eth.txt new file mode 100644 index 0000000..dced83d --- /dev/null +++ b/public/eth.txt @@ -0,0 +1,22 @@ + + + █▀▀▀▀▀█ ▄▀ ▄██▀▄██ ▀▀ █▀▀▀▀▀█ + █ ███ █ ▀███▀▀▀▄█▀▀▄▀ █ ███ █ + █ ▀▀▀ █ █▄ ▄ █▄▄▀ ▄ █ ▀▀▀ █ + ▀▀▀▀▀▀▀ █▄▀ █ ▀▄█▄▀ ▀ ▀▀▀▀▀▀▀ + ▀▀▄█ ▄▀█▄ █▄ ▄█▀▀▄█▀▀ ▀▀▄ + ▀█ ▄▄▀▀█▄▀▀ █ ▄ ▄█▄ ▄█ ▀█ ▄ + ▄ ████▀ ▄▄▄▄█ ▀ █▄ ▄ █▀█ ▄▀ + █▀▀ ▀█▀ █ ▀ █ ▄ █ ▄▄▄█ ▀▀▀█▀ + ▄ ▄█▄▀▀▀█▄▀ ▀ ▄▀█▀▀ ▄▀ ██ █ + ▀ ▀▄ ▀▀█▀▄▄▄ █ ▄▄▄ ▄█ ▄ ██ + ▀ ▀▀ ▀ █▄▄██ █ █ ▀█▀▀▀█ █ + █▀▀▀▀▀█ ▀▀▄██▀▀ ▀ ▄▄█ ▀ █▀█ + █ ███ █ ▄███▀▄▀ ▄██ █████▄ ▄▀ + █ ▀▀▀ █ ▄ ▄█▀ █▄▀█ ▄█ ▀▄▀▄▀ + ▀▀▀▀▀▀▀ ▀ ▀ ▀▀ ▀▀▀▀▀ ▀ ▀ + + +0xc4cBDf9f57cb0229d19d885D5E4033a6223EDef7 + + diff --git a/public/eth/index.html b/public/eth/index.html new file mode 100644 index 0000000..f4b9942 --- /dev/null +++ b/public/eth/index.html @@ -0,0 +1,86 @@ + + + + + + +Ethereum | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Ethereum

    + +

    + +

    Address

    +
    0xc4cBDf9f57cb0229d19d885D5E4033a6223EDef7
    +

    QR

    +

    ETH

    +

    ENS

    +
    jankremer.eu
    +

    OpenSea

    +

    Echinacea

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000..da2e954 Binary files /dev/null and b/public/favicon-16x16.png differ diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png new file mode 100644 index 0000000..be43825 Binary files /dev/null and b/public/favicon-32x32.png differ diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000..7e3df9c Binary files /dev/null and b/public/favicon.ico differ diff --git a/public/fonts/EBGaramond-Italic-VariableFont_wght.ttf b/public/fonts/EBGaramond-Italic-VariableFont_wght.ttf new file mode 100644 index 0000000..60d3c5a Binary files /dev/null and b/public/fonts/EBGaramond-Italic-VariableFont_wght.ttf differ diff --git a/public/fonts/EBGaramond-VariableFont_wght.ttf b/public/fonts/EBGaramond-VariableFont_wght.ttf new file mode 100644 index 0000000..fded838 Binary files /dev/null and b/public/fonts/EBGaramond-VariableFont_wght.ttf differ diff --git a/public/fonts/static/EBGaramond-Bold.ttf b/public/fonts/static/EBGaramond-Bold.ttf new file mode 100644 index 0000000..b73dee0 Binary files /dev/null and b/public/fonts/static/EBGaramond-Bold.ttf differ diff --git a/public/fonts/static/EBGaramond-BoldItalic.ttf b/public/fonts/static/EBGaramond-BoldItalic.ttf new file mode 100644 index 0000000..852be7c Binary files /dev/null and b/public/fonts/static/EBGaramond-BoldItalic.ttf differ diff --git a/public/fonts/static/EBGaramond-ExtraBold.ttf b/public/fonts/static/EBGaramond-ExtraBold.ttf new file mode 100644 index 0000000..ec163f4 Binary files /dev/null and b/public/fonts/static/EBGaramond-ExtraBold.ttf differ diff --git a/public/fonts/static/EBGaramond-ExtraBoldItalic.ttf b/public/fonts/static/EBGaramond-ExtraBoldItalic.ttf new file mode 100644 index 0000000..ae09f36 Binary files /dev/null and b/public/fonts/static/EBGaramond-ExtraBoldItalic.ttf differ diff --git a/public/fonts/static/EBGaramond-Italic.ttf b/public/fonts/static/EBGaramond-Italic.ttf new file mode 100644 index 0000000..0f76a8e Binary files /dev/null and b/public/fonts/static/EBGaramond-Italic.ttf differ diff --git a/public/fonts/static/EBGaramond-Medium.ttf b/public/fonts/static/EBGaramond-Medium.ttf new file mode 100644 index 0000000..fd40af3 Binary files /dev/null and b/public/fonts/static/EBGaramond-Medium.ttf differ diff --git a/public/fonts/static/EBGaramond-MediumItalic.ttf b/public/fonts/static/EBGaramond-MediumItalic.ttf new file mode 100644 index 0000000..8e580f5 Binary files /dev/null and b/public/fonts/static/EBGaramond-MediumItalic.ttf differ diff --git a/public/fonts/static/EBGaramond-Regular.ttf b/public/fonts/static/EBGaramond-Regular.ttf new file mode 100644 index 0000000..d3d6f3f Binary files /dev/null and b/public/fonts/static/EBGaramond-Regular.ttf differ diff --git a/public/fonts/static/EBGaramond-SemiBold.ttf b/public/fonts/static/EBGaramond-SemiBold.ttf new file mode 100644 index 0000000..bd724ce Binary files /dev/null and b/public/fonts/static/EBGaramond-SemiBold.ttf differ diff --git a/public/fonts/static/EBGaramond-SemiBoldItalic.ttf b/public/fonts/static/EBGaramond-SemiBoldItalic.ttf new file mode 100644 index 0000000..c0efa36 Binary files /dev/null and b/public/fonts/static/EBGaramond-SemiBoldItalic.ttf differ diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..bf47302 --- /dev/null +++ b/public/index.html @@ -0,0 +1,163 @@ + + + + + + + +Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + +

    Neueste Beiträge

    + + +
    + + + + +

    Nix on macOS

    + +

    Moving from Homebrew to Nix. Mostly.

    +
    + +
    + + + + +

    Markdown Tables Suck

    + +

    +
    + +
    + + + + +

    Use Timestamps

    + +

    +
    + +
    + + + + +

    Deploy a website using Git

    + +

    +
    + +
    + + + + +

    Geheime Botschaften – Simon Singh

    + +

    Buchvorstellung

    +
    + +
    + + + + +

    RSS

    + +

    Feeds without fuzz.

    +
    + +
    + + + + +

    12 cent blog

    + +

    Hosting a website at (almost) no cost.

    +
    + +
    + + + + +

    Stop using Twitter.

    + +

    +
    + +
    + + + + +

    Evening Cloud

    + +

    Evening cloud over Regensburg.

    +
    + + + + +
    + + + + diff --git a/public/index.xml b/public/index.xml new file mode 100644 index 0000000..c2143ef --- /dev/null +++ b/public/index.xml @@ -0,0 +1,501 @@ + + + + Jan Kremer + https://jankremer.eu/ + Recent content on Jan Kremer + Hugo -- gohugo.io + de + 2024-03-14 00:00 + + Nix on macOS + https://jankremer.eu/blog/nix/ + 2024-03-14 00:00 + + https://jankremer.eu/blog/nix/ + <p>For about a year, I&rsquo;ve been fascinated by <a href="https://nixos.org">Nix and NixOS</a>. I don&rsquo;t remember exactly what fascinated me at first, probably the possibility to setup and configure my system using a single file. A few weeks ago, I decided to give it a serious try.</p> +<h2 id="installation">Installation</h2> +<p>To be honest this is not my first time installing Nix on my machine. I tried the official Nix installer and the &ldquo;old&rdquo; way to use Nix which is basically the same as any other package manager. I didn&rsquo;t see the point of having two package managers so I uninstalled Nix quickly after.</p> +<p>Then, a few weeks ago, I came across <a href="https://nixcademy.com/2024/01/15/nix-on-macos/">this guide</a> and it instantly clicked with me. Having a single file in which I declare my complete system and then have it set up in a few minutes without rebooting is just infinitely cool. In Nix, this feature is called <em>flake</em>. The guide uses the <a href="https://github.com/DeterminateSystems/nix-installer">Determinate systems installer</a> which sets up flakes by default. It also explains how to install Nix Darwin.</p> +<h2 id="nix-darwin">Nix Darwin</h2> +<p>Nix Darwin is a set of Nix modules that brings declarative configuration to macOS. It includes a bunch of options such as for the dock, Finder or the keyboard for example. It also gives the user basic configuration options for various programs. However I prefer to set up terminal based programs using <a href="#home-manager">Home Manager</a> instead, because it supports even more programs.</p> +<p>What I do use extensively is the <a href="https://brew.sh/">Homebrew</a> module to install not only GUI (graphical user interface) apps from Homebrew, but also from the App Store.</p> +<h2 id="home-manager">Home Manager</h2> +<p>For everything else, from terminal based programs to their configuration, I use <a href="https://github.com/nix-community/home-manager?tab=readme-ov-file">Home Manager</a>. It includes a huge set of modules and allows me to setup every non-GUI program in a declarative way. Still, sometimes you have to configure the &ldquo;traditional way&rdquo;, meaning in the original configuration language. But still, I much prefer this over my cluttered <code>.config</code> directory.</p> +<h2 id="nixvim">Nixvim</h2> +<p>In the process of writing my Nix configuration, I became unsatisfied with my Neovim setup. I used to use <a href="https://www.lazyvim.org">LazyVim</a> but it felt more and more bloated and slow on my 9 year old machine. For some time I used <a href="https://helix-editor.com/">Helix</a> which has great defaults, such as language server protocol (LSP) and fuzzy finder integration. I really think Neovim should go in this direction. Unfortunately it lacks some features to make it my main editor, mostly support for <a href="https://typst.app/">Typst</a> which is already added to the <code>master</code> branch. It also lacks a plugin system, but given such great defaults, there isn&rsquo;t that big of a need for it. Helix also features its own set of motions, and although I think they are not bad, maybe even better than Vim motions, the latter are so ubiquitously implemented that I would essentially use both all the time.</p> +<p>That&rsquo;s when I saw a video by <em>ThePrimeagen</em> in which he recommended <a href="https://github.com/nvim-lua/kickstart.nvim/tree/master">Kickstart</a>, a minimal Neovim starter configuration mainly written by <em>TJ DeVries</em>. It almost everything you need to get started and has insanely great documentation.</p> +<p>The only thing that bothered me was the use of <a href="https://github.com/williamboman/mason.nvim">Mason</a> as a LSP package manager. For some people this might be the best way to install LSPs, but I don&rsquo;t understand why I would use a second package manager when I can just use Nix for everything. Helix has a list of supported LSPs and all you have to do is make sure they are in your <code>$PATH</code>.</p> +<p>Luckily, others already had the same issues and decided to write <a href="https://github.com/nix-community/nixvim">Nixvim</a>. Nixvim is a NixOS / Nix Darwin / Home manager module that lets you configure Neovim (almost) entirely using Nix. It uses Nix as the plugin manager and has great defaults and documentation.</p> +<p>I basically recreated Kickstart using Nixvim with some minor tweaks. It feels just as snappy as Helix and I love it.</p> +<h2 id="conclusion">Conclusion</h2> +<p>This is just the tip of the tip of the iceberg of what is possible with Nix. Next, I want to learn to write my own flakes to set up development environments. I should probably learn a bit of Nix language too. But to sum it up so far, I&rsquo;m really happy and excited about this &ldquo;new&rdquo; way to manage my computer.</p> + + + + + What I'm currently doing + https://jankremer.eu/now/ + 2023-12-30 08:34 + + https://jankremer.eu/now/ + <h2 id="learning">Learning</h2> +<ul> +<li>Pharmazeutische Technologie</li> +</ul> +<h2 id="reading">Reading</h2> +<ul> +<li>Kaffee und Zigaretten – Ferdinand von Schirach</li> +</ul> +<h2 id="watching">Watching</h2> +<ul> +<li>Germany&rsquo;s next topmodel</li> +<li>Rosins Restaurants</li> +<li>Batman – The animated series</li> +<li>Band of Brothers</li> +</ul> +<h2 id="listening">Listening</h2> +<ul> +<li>Kölsche Karnevalsmusik (yeah I know Karneval is over)</li> +</ul> + + + + + What I use + https://jankremer.eu/uses/ + 2023-12-30 08:03 + + https://jankremer.eu/uses/ + <h2 id="hardware">Hardware</h2> +<ul> +<li>MacBook Pro 2015</li> +<li>iPhone X</li> +<li>Apple Watch SE</li> +<li>AirPods Pro</li> +<li>Logitech MX Master 3 (rarely)</li> +</ul> +<h2 id="software">Software</h2> +<table> +<thead> +<tr> +<th>Category</th> +<th>Software</th> +</tr> +</thead> +<tbody> +<tr> +<td>Unless otherwise stated</td> +<td>Apple default apps</td> +</tr> +<tr> +<td>RSS reader</td> +<td><a href="https://netnewswire.com">NetNewsWire</a></td> +</tr> +<tr> +<td>Notes</td> +<td><a href="https://obsidian.md">Obsidian</a></td> +</tr> +<tr> +<td>To-Do list</td> +<td><a href="https://culturedcode.com/things">Things</a></td> +</tr> +<tr> +<td>Text editor</td> +<td><a href="https://neovim.io">Neovim</a>, <a href="https://helix-editor.com">Helix</a></td> +</tr> +<tr> +<td>Word processing</td> +<td><a href="https://typst.app">Typst</a></td> +</tr> +<tr> +<td>Window manager</td> +<td><a href="https://github.com/ianyh/Amethyst">Amethyst</a></td> +</tr> +<tr> +<td>Terminal emulator</td> +<td><a href="https://sw.kovidgoyal.net/kitty">Kitty</a></td> +</tr> +<tr> +<td>Package manager</td> +<td><a href="https://nixos.org">Nix</a>, <a href="https://brew.sh">Homebrew</a></td> +</tr> +</tbody> +</table> + + + + + Markdown Tables Suck + https://jankremer.eu/micro/markdown-tables/ + 2023-12-25 16:28 + + https://jankremer.eu/micro/markdown-tables/ + <p>Tables are arguably the worst part of Markdown. +No horizontal lines except for the mandatory one at the top. +The only feature is the possibility to align cells.</p> +<p>Org Mode does much better, but isn&rsquo;t perfect either.</p> +<p>Don&rsquo;t get me wrong. It&rsquo;s nice to have a simple tool for simple tables. +But sometimes I need more customizability.</p> + + + + + Use Timestamps + https://jankremer.eu/micro/timestamps/ + 2023-11-15 10:12 + + https://jankremer.eu/micro/timestamps/ + <p> +Every blog post should include a timestamp. +In fact, this extends to almost anything online and even offline.</p> +<p> +Also, don&#39;t make me look for the date. +Put the date as obvious as possible, preferably at the beginning of the post.</p> +<p> +I was reading <a href="https://jvns.ca/blog/2023/02/28/some-notes-on-using-nix/">Julia Evans post about nix</a> and it was not immediately clear to me if this was a recent post. +Only when I copied the URL to complain about it I discovered the date there. +Safari hides most of the URL by default.</p> + + + + + Deploy a website using Git + https://jankremer.eu/blog/git-deploy/ + 2023-09-25 00:00 + + https://jankremer.eu/blog/git-deploy/ + <h2 id="git-ftp">Git-ftp</h2> +<p>I tested a lot of different FTP programs including GUIs, TUIs and CLIs. +There might be a problem with the FTP server but I don&rsquo;t control that unfortunately. +The only program working flawlessly so far is <a href="https://git-ftp.github.io/">git-ftp</a>, a plugin for Git. +Not only is this perfectly integrated into git, which I am using anyway. +Also no errors occurred so far. +Plus I can automate the upload using <a href="#git-hooks">hooks</a>.</p> +<h2 id="git-hooks">Git hooks</h2> +<p>The real MVP however is <a href="https://git-scm.com/docs/githooks">Git Hooks</a>. +Hooks are scripts that run automatically on certain Git events.</p> +<p>I did, for example, create a hook to automacally build the website after commiting a change. +Yes, this could introduce problems such as breaking changes and I end up with a broken website, but as I test it regularly this should not become a problem.</p> +<p>The second hook I created pushes the website to the FTP server whenever I push to the remote repository.</p> +<h2 id="git-submodule">Git submodule</h2> +<p>I recently discovered that I can use <code>git submodule</code> to add the <code>public</code> folder created by Hugo. +This allows me to upload the repository to my pages repository on Codeberg and have the site mirrored there. +Secoundly, it allows me to upload the website with git-ftp without uploading everything else.</p> +<hr> +<p>What awesome features of Git are you using?</p> + + + + + Geheime Botschaften – Simon Singh + https://jankremer.eu/blog/geheime-botschaften/ + 2023-09-09 00:00 + + https://jankremer.eu/blog/geheime-botschaften/ + <p>Ich las vor kurzem das Buch <em>Geheime Botschaften. Die Kunst der Verschlüsselung von der Antike bis in die Zeiten des Internet</em><sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup> von <a href="https://simonsingh.net">Simon Singh</a>. +Es stellt eine Einführung in die Geschichte der Verschlüsselung dar und ist für jeden, den das Thema interessiert, äußerst empfehlenswert. +Daneben geht der Autor auch auf die &ldquo;Entschlüsselung&rdquo; antiker Sprachen wie der <a href="https://de.wikipedia.org/wiki/Hieroglyphen">Hieroglyphen</a> und Schriften wie <a href="https://de.wikipedia.org/wiki/Linearschrift_B">Linear B</a> ein.</p> +<p>In den letzten Kapiteln des Buchs erklärt Singh zudem &ldquo;moderne&rdquo; Verschlüsselungsmethoden wie <a href="https://de.wikipedia.org/wiki/RSA-Kryptosystem">RSA</a> und den <a href="https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch">Diffie-Hellmann-Schlüsselaustausch</a>. +Nur leider zeigt sich hier deutlich, dass das Buch bereit 1999 publiziert wurde und somit die letzten 24 Jahre der Kryptographie nicht erwähnt werden konnten. +Dadurch finden sich Themen wie zum Beispiel das <a href="https://www.signal.org/docs/">Signal-Protokoll</a>, die damit einhergehende massive Verbreitung starker Verschlüsselung und Krypto-Währungen hier nicht wieder.</p> +<p>Zum Glück kann man vieles davon selbst im Internet recherchieren.</p> +<p>Update: Signal wird in Zukunft <a href="https://signal.org/blog/pqxdh">quantumresistente Verschlüsselung</a> benutzen.</p> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>Originaltitel: <em>The Code Book. The Science of Secrecy from Ancient Egypt to Quantum Cryptography</em>&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + RSS + https://jankremer.eu/blog/rss/ + 2023-09-01 00:00 + + https://jankremer.eu/blog/rss/ + <h2 id="what-is-rss">What is RSS?</h2> +<p>Originally, RSS stood for &ldquo;RDF/Rich Site Summary&rdquo; but was later changed to &ldquo;Really Simple Syndication&rdquo;</p> +<p>RSS is a way to subscribe to a website. +Whenever that website updates it writes its changes to a <code>XML</code> file. +You can then read this XML file and see what changed at a glance.</p> +<p>Many websites use RSS including YouTube, <del>Reddit</del> Lemmy, <del>Twitter</del> Mastodon, most news sites, and almost any blog out there. +For many blogs, RSS is the main way to distribute new posts.</p> +<p>RSS is experiencing a Renaissance at the moment: +Many people are now seeing the damages done by algorithmic feeds and want to go back to purely chronological feeds. +RSS provides a perfect infrastructure for this.</p> +<h2 id="how-to-read-rss">How to read RSS?</h2> +<p>First, you need a feed reader. On macOS and iOS I highly recommend <a href="https://netnewswire.com">NetNewsWire</a>. +For terminal fans <a href="https://newsboat.org">Newsboat</a> is the way to go. +<a href="https://www.thunderbird.net/">Thunderbird</a> is also a good choice but there are tons of programs that can read RSS feeds.</p> +<p>That&rsquo;s bascially it. Now you need to add some feeds and you are ready.</p> +<p>I recommend picking a reader that can also fetch the article without opening the browser and loading a ton of ads.</p> +<p>Pro tip: You can export your subscibtions to a <code>OPML</code> file and import them into any RSS reader.</p> +<h2 id="how-to-distribute-rss">How to distribute RSS?</h2> +<p>This is the hardest question to answer about RSS as there are endless possibilities.</p> +<p>The easiest way would probably be to use a service such as Mastodon that generates the feed automatically. +If that platform isn&rsquo;t for you, WordPress is a good way to host a blog. +I read about people setting up their own scripts that automatically update the feed for new posts.</p> +<p>I use <a href="https://gohugo.io">Hugo</a> which is a <em>static site generator</em>. +It generates feeds automatically but lies somewhere between WordPress and writing your own scripts in terms of how tech savvy you should be.</p> +<h2 id="how-to-find-rss">How to find RSS?</h2> +<p>Go to a website you like, copy the URL and paste it into your RSS reader. +Modern feed readers can find RSS feed on their own, you just have to provide a link to the site you want to subscribe to. +If that is not the case, you could try adding <code>/index.xml</code> to the URL.</p> +<p>Some sites, like this one, also link to their RSS feeds. +Often those links are a the bottom of the website and are either marked as <code>RSS</code>, <code>Feed</code>, or just use the RSS logo. +I additionally provide links to my subprojects such as my <a href="https://jankremer.eu/micro">microblog</a> or my <a href="https://jankremer.eu/fotos">photos</a>. +Feel free to add them to your reader.</p> +<h2 id="conclusion">Conclusion</h2> +<p>I think RSS is on the rise. +It&rsquo;s an old protocol that survived numerous challenges +It provides an escape from the algorithms and large social media companies. +It also provides a way for content creators to distribute their content on their own without any middleman.</p> + + + + + 12 cent blog + https://jankremer.eu/blog/hosting/ + 2023-08-27 00:00 + + https://jankremer.eu/blog/hosting/ + <p>Yes, the title is correct. +<a href="https://knowyourmeme.com/photos/1191035">Well, actually</a> it is 0.119 € per +month or 14.28 € for 10 years.</p> +<p>To be fair, it was a special offer and only covers the domain. +Fortunately, my provider, <a href="https://www.netim.com/en">Netim</a> has a free hosting plan with fits my needs. +I even get email hosting with my own domain. +There are also services like <a href="https://neocities.org">Neocities</a> where you can host your website for free if you are willing to live with a subdomain.</p> +<h2 id="why-should-i-xyz-is-free">Why should I? XYZ is free!</h2> +<p>Yes, you can post wherever you want. +𝕏 (formerly known as Twitter) is free<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>, Mastodon is free, Facebook, Instagram, Threads, Reddit, you name them, are all free, but you are giving up your freedoms. +Mastodon might be a little better than the rest, but ultimately you depend on the host to let you post there. +And they can block you and delete all your data without even giving you any notice. +I hope you have a backup.</p> +<p>Hosting this blog allows me to write whatever I want. +Sure, Netim could also block me and delete my data, but since I use <a href="https://gohugo.io">Hugo</a> I always have everything backed up on my system anyways. +In a matter of hours I could be up and running on another hosting provider.</p> +<p>I can also use any format I want and have nearly endless possibilities to customize my blog. +The sky is the limit. +For example am I hosting my own <a href="https://jankremer.eu/fotos">photos</a> instead of using Instagram and my own <a href="https://jankremer.eu/micro">microblog</a> instead of using Twitter/Mastodon. +Whatever media I plan to share in the future, there is a solution out there. +Want comments? I&rsquo;m trying <a href="https://cactus.chat">Cactus Comments</a> at the moment.</p> +<p>Let me know what you think!</p> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>Or is it? I&rsquo;m not in the loop.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + Stop using Twitter. + https://jankremer.eu/micro/twitter/ + 2023-07-22 15:57 + + https://jankremer.eu/micro/twitter/ + + + + + Evening Cloud + https://jankremer.eu/photos/evening-cloud/ + 2023-07-19 10:48 + + https://jankremer.eu/photos/evening-cloud/ + <p><img src="evening-cloud.webp" alt="Evening cloud over Regensburg."></p> + + + + + Reader mode is the antidote to bad website design. + https://jankremer.eu/micro/reader/ + 2023-07-19 10:14 + + https://jankremer.eu/micro/reader/ + + + + + git + https://jankremer.eu/blog/git/ + 2023-03-22 16:47 + + https://jankremer.eu/blog/git/ + <p>Ursprünglich sollte es in diesem Post um <a href="https://git-scm.com">git</a>, jedoch ist mir bei Brainstorming aufgefallen, dass das Thema eigentlich deutlich umfangreicher sein sollte.</p> +<p>Meine Reise begann, als ich beschloss, diesen Blog zu starten. +Da ich bis dahin Webseiten nur in reinem HTML und CSS geschrieben hatte, versuchte ich es zunächst damit. +Schnell stellten sich dabei aber mehrere Probleme heraus:</p> +<ol> +<li>Ich bin nicht gut in CSS.</li> +<li>Einen RSS-Feed von Hand zu erstellen ist umständlich und nicht sinnvoll.</li> +<li>Mehrere Seiten mit einheitlichem Design in HTML zu schreiben ist kompliziert.</li> +<li>Ich mag die HTML Syntax nicht.</li> +</ol> +<p>Ich war überzeugt, dass ich eine bessere Lösung dafür brauche. +Nach kurzer und intensiver Recherche fand ich heraus, dass die Lösung meine Problems <em>&ldquo;static site generator&rdquo;</em> heißt. +Darüber hatte ich bereits <a href="https://jankremer.eu/blog/genesis">hier</a> geschrieben.</p> +<p>Im Zuge dessen lernte ich auch <em>git</em> kennen. +Ich hatte zwar schon früher von <em>git</em> gehört, bis dato aber nur zum herunterladen von Software benutzt. +Und damit sind wir schon im Kern meines Problems gelandet:</p> +<h2 id="warum-kannte-ich-git-nicht">Warum kannte ich <em>git</em> nicht?</h2> +<p>Meine ersten Erfahrungen mit dem Programmieren machte ich damals in der Schule, angefangen mit HTML und CSS, später mit Python und Java. +Aber ohne <em>git</em>. +An der Uni (4 Semester Wirtschaftsinformatik) ging es dann weiter mit Java, aber weiterhin ohne <em>git</em>.</p> +<p>Erst beim erstellen dieses Blogs kam ich auf die Idee mich mal ein wenig mit <a href="https://de.wikipedia.org/wiki/Versionsverwaltung">Versionsverwaltung</a> auseinander zu setzen. +Und seitdem bin ich verliebt.</p> +<p>Inzwischen denke ich, dass jeder von <em>git</em> profitieren könnte. +Das einfache Zurückspringen zu früheren Versionen, falls mal was kaputt geht, oder das Auslagern und Zusammenführen von <em>Branches</em> sind einfach großartig. +Zudem ermutigt wird man ermutigt, an logisch sinnvollen Stellen zu <em>commiten</em> und somit den bisherigen Stand zu speichern.</p> +<p>Es wäre meiner Meinung nach auch sinnvoll, Texte, wie zum Beispiel Projektarbeiten, nicht in <em>Microsoft Word</em> zu verfassen sondern besser in Textdokumenten und diese dann mit <em>git</em> zu verwalten und zusammenzufügen (merge). +Diese könnten dann ganz leicht in <a href="https://jankremer.eu/blog/latex">LaTeX-Dokumente</a> umgewandelt werden oder auch in <em>Word</em> formatiert werden. +Darüber hinaus würde dies den Autoren die Möglichkeit geben, einen Texteditor der Wahl zu nutzen. +Gerade auf älteren Maschinen, wie meinem <em>MacBook Pro</em> von 2015 braucht <em>Word</em> inzwischen einiges an Ressourcen. +Dies könnte aber auch damit zusammen hängen, dass <em>Word</em> auf meinem Computer stolze 2.3 GB schwer ist. +Zum Vergleich: Das <strong>gesamte</strong> <em>LibreOffice</em> braucht keine 800 MB.</p> +<p>Ich verstehe auch, dass nicht jeder auf der Kommandozeile zu Hause ist, jedoch gibt es ja auch Tools wie GitHub oder Programme mit grafischer Oberfläche, es sollte also für jeden was dabei sein.</p> +<p>Ich kratze hier gerade mal an der Oberfläche der Möglichkeiten, das meiste ist mir selbst noch nicht bekannt. +Ich kann nur jedem, der <em>git</em> noch nicht nutzt es nur wärmstens empfehlen, es mal auszuprobieren. +Schaden kann es nicht!</p> +<p>P.S.: Ja ich weiß, <em>git</em> ist kein Geheimtipp.</p> + + + + + LaTeX + https://jankremer.eu/blog/latex/ + 2023-01-12 15:35 + + https://jankremer.eu/blog/latex/ + <p>Im Rahmen meines Wahlpflichtpraktikums schreibe ich aktuell an meiner zweiten größeren Projektarbeit. Die einzige andere Projektarbeit war bisher die für das Praktikum Pharmazeutische Technologie, welche, Stand jetzt, noch nicht vollständig abgeschlossen ist.</p> +<p>Für diese Arbeit entschieden wir uns jedoch für <em>Microsoft Word</em>. Also im Grunde wurde uns diese Entscheidung fast abgenommen, da die Universität Regensburg uns das <em>Office 365</em> zur Verfügung stellt und es damit auch bei uns Studenten den De-Facto-Standard darstellt. Zudem erleichtert es das Arbeiten im Team doch sehr.</p> +<p>Formatierungen sind jedoch immer ein Kampf. Daher wollte ich versuchen, <a href="https://www.latex-project.org">LaTeX</a> für diese Arbeit einzusetzen. Ich kannte <em>LaTeX</em> vor allem aus mathematischen Kursen an der Uni und hatte schon oft gehört, dass es Setzen (von <a href="https://de.wikipedia.org/wiki/Satz_(Druck)">Satz</a>) deutlich vereinfachen soll. Aber nicht nur das Schreiben mathematischer Arbeiten macht es deutlich angenehmer, durch das einbinden einiger zusätzlicher Pakete werden wissenschaftliche Texte zum Kinderspiel.</p> +<h2 id="über-latex">Über LaTeX</h2> +<blockquote> +<p><strong>LaTeX</strong> [ˈlaːtɛç] ist ein Softwarepaket, das die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht. <em>LaTeX</em> wurde Anfang der 1980er Jahre von <em>Leslie Lamport</em> entwickelt.Der Name bedeutet so viel wie <em>Lamport TeX</em>. Die Entwicklung wurde seit den 1990er Jahren von einer Anzahl Entwicklern weitergeführt. Heute ist <em>LaTeX</em> die populärste Methode, <em>TeX</em> zu verwenden.</p> +</blockquote> +<p>— <!-- raw HTML omitted --><a href="https://de.wikipedia.org/wiki/LaTeX">Wikipedia: LaTeX</a><!-- raw HTML omitted --></p> +<p><em>LaTeX</em> funktioniert ähnlich wie <em>HTML</em> oder <em>Markdown</em>: Zunächst wird die Formatierung von Text getrennt. Bei WYSIWYG<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>-Textverarbeitungsprogrammen wie <em>Word</em> sieht man direkt, wie das gedruckte Dokument hinterher aussehen wird. Das macht es für viele Nutzer einfacher, zwingt sie aber auch dazu, sich direkt und unmittelbar mit der Formatierung zu beschäftigen. <em>LaTeX</em> trennt dies zunächst, gibt aber dennoch eine übersichtliche Struktur vor. Zudem sind die Standard Formatvorlagen deutlich schlichter und zumindest für mich wesentlich ansprechender als die von <em>Word</em> (Warum ist alles blau und wieso <em>Calibri</em>?!). Ja, die Voreinstellungen von <em>Word</em> lassen sich überschreiben, aber das muss man auch erstmal machen.</p> +<p>Funktionen wie ein Inhalts- oder Literaturvrezeichnis lassen sich in <em>Word</em> zwar auch realisieren, sind in <em>LaTeX</em> wesentlich simpler. Zudem lässt sich <em>LaTeX</em> durch Pakete nahezu unendlich erweitern und deckt dadruch auch jeden noch so speziellen Fall ab.</p> +<p>Ein weiterer Punkt, warum ich <em>LaTeX</em> bevorzuge ist, dass ich jeden Texteditor benutzen kann. Ich nutze am liebsten <em>VS Code</em>, aber natürlich kann jeder beliebige Editor verwendet werden.</p> +<p>Das einzige, was mit <em>Word</em> sicher einfacher wäre ist das einbinden und beschriften von Grafiken. Da ich einige davor in meine Projektarbeit verwende, brauchte ich hierfür eine Lösung. Diese habe ich mit <a href="https://inkscape.org/de/">Inkscape</a> gefunden. Hiermir lassen sich Bilder bearbeiten und beschriften und anschließend als <em>LaTeX</em>-Dokument speichern. Diese lassen sich dann ganz einfach einbinden.</p> +<h2 id="fazit">Fazit</h2> +<p>Für wen <em>Word</em> und ähnliches schon immer eine Qual war oder wer Vorerfahrung mit Texteditoren und Skriptsprachen hat, dem kann ich <em>LaTeX</em> nur ans Herz legen. Ganz einfach lassen sich wunderschöne Dokumente herzaubern. Vor allem der Font <em>Computer Modern</em> hat es mir sehr angetan. Eventuell werde ich die Projektarbeit demnächst hier hochladen.</p> +<hr> +<h2 id="technische-spezifikationen">Technische Spezifikationen</h2> +<p>Kurzer Nachtrag über meine Arbeitsweise mit <em>LaTeX</em>: Als Texteditor benutze ich <a href="https://code.visualstudio.com">VS Code</a>, da ich diesen super übersichtlich finde und vor allem die Erweiterungsmöglichkeiten sehr schätze. Für <em>LaTeX</em> sind dies vor allem <a href="https://github.com/James-Yu/LaTeX-Workshop">LaTeX Workshop</a> und natürlich <a href="https://git-scm.com">git</a> (vorinstalliert). Des Weiteren benutze ich die <a href="https://www.tug.org/mactex/">MacTeX-Distribution</a>, welche ich über <a href="https://brew.sh">Homebrew</a> installiert habe.</p> +<h3 id="verwendete-pakete">Verwendete Pakete</h3> +<ul> +<li><strong>babel</strong>: Sorgt für die Unterstützung verschiedener Sprachen. Ich schreibe die Projektarbeit zwar auf Englisch, jedoch brauche ich ab und zu mal Deutsche Begriffe und damiteinhergehend Umlaute etc.</li> +<li><strong>biblatex</strong>: Verbessertes Literaturverzeichnis, alternative zu <strong>bibtex</strong>.</li> +<li><strong>booktabs</strong>: Verschönert und vereinfacht Tabellen in <em>LaTeX</em>.</li> +<li><strong>chemformula</strong>: Erleichtert das Setzen von chemischen Formeln enorm und sorgt dafür, dass diese auch richtig angezeigt werden.</li> +<li><strong>hyperref</strong>: Für Links und Metadaten.</li> +<li><strong>longtable</strong>: Die verwendeten Materialien habe ich alle in riesigen Listen. <em>LaTeX</em> kann standardmäßig nicht besonders gut mit großen Tabellen umgehen, dieses Paket hilft dabei.</li> +<li><strong>microtype</strong>: Lässt alles schöner aussehen, praktisch schwarze Magie.</li> +<li><strong>siunitx</strong>: Das wahrscheinlich beste Paket überhaupt, simple aber hat Power. Sorgt für perfektes setzen von Einheiten, mit oder ohne vorangehenden Wert. Zudem enthält es eine Funktion, die Werte in Tabellen um den Dezimalpunkt anordnen kann. Ein Traum.</li> +<li><strong>textgreek</strong>: Erleichtert das verwenden von griechischen Buchstaben im Text.</li> +<li>Zusätzliche Pakete die ich an der Stelle nicht weiter erleutern werden: <strong>color</strong>, <strong>csquotes</strong>, <strong>fontenc</strong>, <strong>glossaries</strong>, <strong>graphicx</strong>, <strong>tikz</strong> und <strong>tocbibind</strong>.</li> +</ul> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>What you see is what you get.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + Bitcoin + https://jankremer.eu/btc/ + 2022-12-10 00:00 + + https://jankremer.eu/btc/ + <h2 id="address">Address</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>bc1qf8qjt4gut2la8k4v3emfv7wrj6f3pfcjrj3slplnwrldkz7hqmaqaju7ym +</span></span></code></pre></div><h2 id="qr">QR</h2> +<p><img src="https://jankremer.eu/btc.png" alt="BTC"></p> +<h2 id="openalias">OpenAlias</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>jankremer.eu +</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>btc.jankremer.eu +</span></span></code></pre></div> + + + + Ethereum + https://jankremer.eu/eth/ + 2022-12-10 00:00 + + https://jankremer.eu/eth/ + <h2 id="address">Address</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>0xc4cBDf9f57cb0229d19d885D5E4033a6223EDef7 +</span></span></code></pre></div><h2 id="qr">QR</h2> +<p><img src="https://jankremer.eu/eth.png" alt="ETH"></p> +<h2 id="ens">ENS</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>jankremer.eu +</span></span></code></pre></div><h2 id="opensea">OpenSea</h2> +<p><a href="https://opensea.io/Echinacea">Echinacea</a></p> + + + + + Genesis + https://jankremer.eu/blog/genesis/ + 2022-12-10 00:00 + + https://jankremer.eu/blog/genesis/ + <p>Als ich vor ca. einem Jahr diese Domain kaufte, wusste ich noch nicht was ich damit anstellen will. Ich wusste nur: <strong>Ich will endlich eine eigene Webseite haben.</strong></p> +<p>In meinen ersten Stunden Informatik in der Schule (vor über 10 Jahren) lernten wir die Grundlagen des Webdesigns mit <em>HTML</em> und <em>CSS</em>, und da ich zunächst nicht viel Zeit hatte erstellte ich genau mit diesen Tools eine kleine Startseite. Mehr schlecht als recht aber immerhin hatte ich etwas.</p> +<p>Im März diesen Jahres hatte ich dann ein wenig Zeit mich genauer mit dem Thema zu beschäftigen und fand dabei den sogenannten <a href="https://jamstack.org">Jamstack</a>. Jamstack sind Tools zur schnellen und einfachen Aufstellen von Webseite. Dies können große Projekte sein oder wie in meinem Fall ein kleiner Blog. Zuerst probierte ich <a href="https://jekyllrb.com/">Jekyll</a> was mir jedoch nicht so gut taugte und stieß dann auf <a href="https://gohugo.io/">Hugo</a>. Mit einer Vielzahl an modernen Designs und einer klinderleichten Handhaben konnte ich schnell überzeugt werden.</p> +<p>Heute weiß ich zwar immer noch nicht, was ich hiermit in Zukunft machen werde, aber ich denke es ist wichtiger den je ein Sprachrohr zu haben, das unabhängig ist von der Willkür großer Plattformen.</p> +<p>Bis bald und viel Spaß!</p> +<p>P.S.: Dieses wunderschöne <em>Theme</em>, das ich hier benutze, heißt <a href="https://git.io/hugo-congo">Congo</a>.</p> + + + + + Monero + https://jankremer.eu/xmr/ + 2022-12-10 00:00 + + https://jankremer.eu/xmr/ + <h2 id="address">Address</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>83ZtE7cBnsyTmBb5A79aDm637mCKWKuhGZZ3ZaQvjmpA5qwL6sejWEcKQnXF5Qd3N4XNCp4fbouTi9kUi8vNgPrfDQaEBMZ +</span></span></code></pre></div><h2 id="qr">QR</h2> +<p><img src="https://jankremer.eu/xmr.png" alt="XMR"></p> +<h2 id="openalias">OpenAlias</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>jankremer.eu +</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>xmr.jankremer.eu +</span></span></code></pre></div> + + + + Über mich + https://jankremer.eu/about/ + 2022-12-10 00:00 + + https://jankremer.eu/about/ + <p>Mein Name ist Jan Kremer. Ich bin 27 Jahre alt und studiere Pharmazie an der Uni Regensburg. Manchmal schreibe ich über Technik und Software <a href="https://jankremer.eu/uses">die ich benutze</a> oder <a href="https://jankremer.eu/now">was ich gerade mache</a>.</p> +<p>Wenn ich nicht gerade lerne, mache ich gerne Sport, vor allem Joggen, Kraftsport und Skifahren.</p> +<h2 id="kontakt">Kontakt</h2> +<h3 id="matrix">Matrix</h3> +<p><a href="https://matrix.to/#/@jankremer:matrix.org">@jankremer:matrix.org</a></p> +<h2 id="ipfs">IPFS</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>QmfPgBDRMVsAcdZuK26v5fxGBcUixyYqeibArBf5YYguz2 +</span></span></code></pre></div> + + + + diff --git a/public/jankremer.asc b/public/jankremer.asc new file mode 100644 index 0000000..3f8ad4a --- /dev/null +++ b/public/jankremer.asc @@ -0,0 +1,13 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEZPMs8hYJKwYBBAHaRw8BAQdAX0e5nbopqP7IfFY1pKKiMsUC35TJfjgblEkW +MyHWP9+0HkphbiBLcmVtZXIgPG1haWxAamFua3JlbWVyLmV1PoiZBBMWCgBBFiEE +IK8KZZ8rk62RhBXRp9ponLOweOwFAmTzLPICGwMFCQWjmoAFCwkIBwICIgIGFQoJ +CAsCBBYCAwECHgcCF4AACgkQp9ponLOweOwldwEAkrOJkWKWD5xb1tyjxsN7xv3Z +/+f2jfwjOpSvzSilFxABAKfg+5uwB3VkQkVLR1FQw4n8+0601q1YPMwvEgZBoBcM +uDgEZPMs8hIKKwYBBAGXVQEFAQEHQEAe8yDKs9UQtv9R9wZSlpYcZaB8O2Bq/vF/ +cvJg7QlpAwEIB4h+BBgWCgAmFiEEIK8KZZ8rk62RhBXRp9ponLOweOwFAmTzLPIC +GwwFCQWjmoAACgkQp9ponLOweOyAvAD9GfldBbFfo00DuPKN6vkYUlPWvR4Et9Lx +GLzhh3dPeVEBAI400aRQCqSNtr40aRiuPDZWOXFfVa6lCfYpiXAE4eYF +=A2Jw +-----END PGP PUBLIC KEY BLOCK----- diff --git a/public/micro/index.html b/public/micro/index.html new file mode 100644 index 0000000..b0f2d18 --- /dev/null +++ b/public/micro/index.html @@ -0,0 +1,100 @@ + + + + + + +Microblog | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Markdown Tables Suck

    + +

    +
    + +
    + + + + +

    Use Timestamps

    + +

    +
    + +
    + + + + +

    Stop using Twitter.

    + +

    +
    + + + + +
    + + + + diff --git a/public/micro/index.xml b/public/micro/index.xml new file mode 100644 index 0000000..88e9a9e --- /dev/null +++ b/public/micro/index.xml @@ -0,0 +1,63 @@ + + + + Microblog on Jan Kremer + https://jankremer.eu/micro/ + Recent content in Microblog on Jan Kremer + Hugo -- gohugo.io + de + 2023-12-25 16:28 + + Markdown Tables Suck + https://jankremer.eu/micro/markdown-tables/ + 2023-12-25 16:28 + + https://jankremer.eu/micro/markdown-tables/ + <p>Tables are arguably the worst part of Markdown. +No horizontal lines except for the mandatory one at the top. +The only feature is the possibility to align cells.</p> +<p>Org Mode does much better, but isn&rsquo;t perfect either.</p> +<p>Don&rsquo;t get me wrong. It&rsquo;s nice to have a simple tool for simple tables. +But sometimes I need more customizability.</p> + + + + + Use Timestamps + https://jankremer.eu/micro/timestamps/ + 2023-11-15 10:12 + + https://jankremer.eu/micro/timestamps/ + <p> +Every blog post should include a timestamp. +In fact, this extends to almost anything online and even offline.</p> +<p> +Also, don&#39;t make me look for the date. +Put the date as obvious as possible, preferably at the beginning of the post.</p> +<p> +I was reading <a href="https://jvns.ca/blog/2023/02/28/some-notes-on-using-nix/">Julia Evans post about nix</a> and it was not immediately clear to me if this was a recent post. +Only when I copied the URL to complain about it I discovered the date there. +Safari hides most of the URL by default.</p> + + + + + Stop using Twitter. + https://jankremer.eu/micro/twitter/ + 2023-07-22 15:57 + + https://jankremer.eu/micro/twitter/ + + + + + Reader mode is the antidote to bad website design. + https://jankremer.eu/micro/reader/ + 2023-07-19 10:14 + + https://jankremer.eu/micro/reader/ + + + + + diff --git a/public/micro/markdown-tables/index.html b/public/micro/markdown-tables/index.html new file mode 100644 index 0000000..a78e689 --- /dev/null +++ b/public/micro/markdown-tables/index.html @@ -0,0 +1,84 @@ + + + + + + +Markdown Tables Suck | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Markdown Tables Suck

    + +

    + +

    Tables are arguably the worst part of Markdown. +No horizontal lines except for the mandatory one at the top. +The only feature is the possibility to align cells.

    +

    Org Mode does much better, but isn’t perfect either.

    +

    Don’t get me wrong. It’s nice to have a simple tool for simple tables. +But sometimes I need more customizability.

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/micro/reader/index.html b/public/micro/reader/index.html new file mode 100644 index 0000000..f487550 --- /dev/null +++ b/public/micro/reader/index.html @@ -0,0 +1,78 @@ + + + + + + +Reader mode is the antidote to bad website design. | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Reader mode is the antidote to bad website design.

    + +

    + + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/micro/timestamps/index.html b/public/micro/timestamps/index.html new file mode 100644 index 0000000..4d95242 --- /dev/null +++ b/public/micro/timestamps/index.html @@ -0,0 +1,88 @@ + + + + + + +Use Timestamps | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Use Timestamps

    + +

    + +

    +Every blog post should include a timestamp. +In fact, this extends to almost anything online and even offline.

    +

    +Also, don't make me look for the date. +Put the date as obvious as possible, preferably at the beginning of the post.

    +

    +I was reading Julia Evans post about nix and it was not immediately clear to me if this was a recent post. +Only when I copied the URL to complain about it I discovered the date there. +Safari hides most of the URL by default.

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/micro/twitter/index.html b/public/micro/twitter/index.html new file mode 100644 index 0000000..5deb226 --- /dev/null +++ b/public/micro/twitter/index.html @@ -0,0 +1,78 @@ + + + + + + +Stop using Twitter. | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Stop using Twitter.

    + +

    + + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/now/index.html b/public/now/index.html new file mode 100644 index 0000000..c10f6c9 --- /dev/null +++ b/public/now/index.html @@ -0,0 +1,97 @@ + + + + + + +What I'm currently doing | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    What I'm currently doing

    + +

    Nobody ever asked me what I'm currently doing, but I decided to tell you anyway.

    + +

    Learning

    +
      +
    • Pharmazeutische Technologie
    • +
    +

    Reading

    +
      +
    • Kaffee und Zigaretten – Ferdinand von Schirach
    • +
    +

    Watching

    +
      +
    • Germany’s next topmodel
    • +
    • Rosins Restaurants
    • +
    • Batman – The animated series
    • +
    • Band of Brothers
    • +
    +

    Listening

    +
      +
    • Kölsche Karnevalsmusik (yeah I know Karneval is over)
    • +
    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/page/1/index.html b/public/page/1/index.html new file mode 100644 index 0000000..709dfc7 --- /dev/null +++ b/public/page/1/index.html @@ -0,0 +1,10 @@ + + + + https://jankremer.eu/ + + + + + + diff --git a/public/page/2/index.html b/public/page/2/index.html new file mode 100644 index 0000000..01b259b --- /dev/null +++ b/public/page/2/index.html @@ -0,0 +1,93 @@ + + + + + + + +Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + +

    Neueste Beiträge

    + + +
    + + + + +

    git

    + +

    Warum jeder git lernen sollte.

    +
    + +
    + + + + +

    LaTeX

    + +

    Wie ich Word durch LaTeX ersetzte.

    +
    + +
    + + + + +

    Genesis

    + +

    Über das Erstellen einer Webseite.

    +
    + + +
    + + + + diff --git a/public/pharmacist-0.txt b/public/pharmacist-0.txt new file mode 100644 index 0000000..a9f5d1d --- /dev/null +++ b/public/pharmacist-0.txt @@ -0,0 +1,15 @@ + ▄▄▀▀▄▀▀▀▀▀▀▀▀▄▄ + ▄▀ █ + ▄▀ ▄▄▄ █ + █ ▄▀▀▀ ▀▀▀▀▀▀▀█▀ + ▀▄▄█▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄ + █ █ █ + ▀█▀▄ ▄▀▄ ▄▀ + █ ▀▀▀▀▀ ▀▀▀▀█ + █ █ + █ ▀▀▀▀ █ + █ ▄▀ + █ █▀▀▀▀▀▀ +▄▀▀▀▄ ▄▀▀▀▄ +█ ▀▄▀ █ +█ █ ▀▀ █ diff --git a/public/photos/evening-cloud/evening-cloud.webp b/public/photos/evening-cloud/evening-cloud.webp new file mode 100644 index 0000000..029311e Binary files /dev/null and b/public/photos/evening-cloud/evening-cloud.webp differ diff --git a/public/photos/evening-cloud/index.html b/public/photos/evening-cloud/index.html new file mode 100644 index 0000000..f257aae --- /dev/null +++ b/public/photos/evening-cloud/index.html @@ -0,0 +1,80 @@ + + + + + + +Evening Cloud | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Evening Cloud

    + +

    Evening cloud over Regensburg.

    + +

    Evening cloud over Regensburg.

    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/photos/index.html b/public/photos/index.html new file mode 100644 index 0000000..8f7ea73 --- /dev/null +++ b/public/photos/index.html @@ -0,0 +1,70 @@ + + + + + + +Fotos | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Evening Cloud

    + +

    Evening cloud over Regensburg.

    +
    + + +
    + + + + diff --git a/public/photos/index.xml b/public/photos/index.xml new file mode 100644 index 0000000..61428d6 --- /dev/null +++ b/public/photos/index.xml @@ -0,0 +1,21 @@ + + + + Fotos on Jan Kremer + https://jankremer.eu/photos/ + Recent content in Fotos on Jan Kremer + Hugo -- gohugo.io + de + 2023-07-19 10:48 + + Evening Cloud + https://jankremer.eu/photos/evening-cloud/ + 2023-07-19 10:48 + + https://jankremer.eu/photos/evening-cloud/ + <p><img src="evening-cloud.webp" alt="Evening cloud over Regensburg."></p> + + + + + diff --git a/public/qr.txt b/public/qr.txt new file mode 100644 index 0000000..c87f921 --- /dev/null +++ b/public/qr.txt @@ -0,0 +1,15 @@ + + + █▀▀▀▀▀█ ▄ █ █ █▀▀▀▀▀█ + █ ███ █ ▀ ▀▀▄ █ ███ █ + █ ▀▀▀ █ ███▀▀ █ ▀▀▀ █ + ▀▀▀▀▀▀▀ █ ▀ ▀ ▀▀▀▀▀▀▀ + ▀█▄█▄ ▀█▄ ▀█▀ ▀██▄▀█▄ + ███▄▄▀▀▀▄ ▀▀▄ █▀ █▀▄▀ + ▀▀▀▀ ▀▀▄▀ █ ▀ █ ▄ ▄ + █▀▀▀▀▀█ ▀██▀▀▄▀▀▀▀ █ + █ ███ █ ▄▄▄██▀ █▄ ▄▄▄ + █ ▀▀▀ █ ▄▀ ▀▀▄ █▀▀ ▀ + ▀▀▀▀▀▀▀ ▀ ▀ ▀ ▀ ▀ + + diff --git a/public/rss.xsl b/public/rss.xsl new file mode 100644 index 0000000..760ee40 --- /dev/null +++ b/public/rss.xsl @@ -0,0 +1,144 @@ + + + + + + + + <xsl:value-of select="/rss/channel/title"/> Web Feed + + + + + + +
    +
    +

    + + + + + + + + + + + + + + + + + + + Web Feed Preview +

    +

    +

    + + + + + Visit Website → + +
    +

    Recent Items

    + +
    +

    + + + + + + +

    + + Published: + +
    +
    +
    + + +
    +
    diff --git a/public/safari-pinned-tab.svg b/public/safari-pinned-tab.svg new file mode 100644 index 0000000..c26c0f2 --- /dev/null +++ b/public/safari-pinned-tab.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + diff --git a/public/site.webmanifest b/public/site.webmanifest new file mode 100644 index 0000000..45dc8a2 --- /dev/null +++ b/public/site.webmanifest @@ -0,0 +1 @@ +{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file diff --git a/public/sitemap.xml b/public/sitemap.xml new file mode 100644 index 0000000..8b7d4a3 --- /dev/null +++ b/public/sitemap.xml @@ -0,0 +1,115 @@ + + + + https://jankremer.eu/ + 2024-03-14T00:00:00+00:00 + + https://jankremer.eu/tags/nix/ + 2024-03-14T00:00:00+00:00 + + https://jankremer.eu/blog/nix/ + 2024-03-14T00:00:00+00:00 + + https://jankremer.eu/tags/ + 2024-03-14T00:00:00+00:00 + + https://jankremer.eu/tags/meta/ + 2023-12-30T08:34:14+01:00 + + https://jankremer.eu/now/ + 2023-12-30T08:34:14+01:00 + + https://jankremer.eu/uses/ + 2023-12-30T08:03:20+01:00 + + https://jankremer.eu/micro/markdown-tables/ + 2023-12-25T16:28:52+01:00 + + https://jankremer.eu/tags/micro/ + 2023-12-25T16:28:52+01:00 + + https://jankremer.eu/micro/ + 2023-12-25T16:28:52+01:00 + + https://jankremer.eu/micro/timestamps/ + 2023-11-15T10:12:30+01:00 + + https://jankremer.eu/blog/git-deploy/ + 2023-09-25T00:00:00+00:00 + + https://jankremer.eu/tags/git/ + 2023-09-25T00:00:00+00:00 + + https://jankremer.eu/tags/b%C3%BCcher/ + 2023-09-09T00:00:00+00:00 + + https://jankremer.eu/blog/geheime-botschaften/ + 2023-09-09T00:00:00+00:00 + + https://jankremer.eu/tags/rss/ + 2023-09-01T00:00:00+00:00 + + https://jankremer.eu/blog/rss/ + 2023-09-01T00:00:00+00:00 + + https://jankremer.eu/blog/hosting/ + 2023-08-27T00:00:00+00:00 + + https://jankremer.eu/tags/money/ + 2023-08-27T00:00:00+00:00 + + https://jankremer.eu/micro/twitter/ + 2023-07-22T15:57:59+02:00 + + https://jankremer.eu/photos/evening-cloud/ + 2023-07-19T10:48:33+02:00 + + https://jankremer.eu/tags/fotos/ + 2023-07-19T10:48:33+02:00 + + https://jankremer.eu/photos/ + 2023-07-19T10:48:33+02:00 + + https://jankremer.eu/tags/regensburg/ + 2023-07-19T10:48:33+02:00 + + https://jankremer.eu/micro/reader/ + 2023-07-19T10:14:44+02:00 + + https://jankremer.eu/blog/git/ + 2023-03-22T16:47:15+01:00 + + https://jankremer.eu/tags/latex/ + 2023-01-12T15:35:23+01:00 + + https://jankremer.eu/blog/latex/ + 2023-01-12T15:35:23+01:00 + + https://jankremer.eu/tags/uni/ + 2023-01-12T15:35:23+01:00 + + https://jankremer.eu/btc/ + 2022-12-10T00:00:00+00:00 + + https://jankremer.eu/blog/ + 2022-12-10T00:00:00+00:00 + + https://jankremer.eu/tags/crypto/ + 2022-12-10T00:00:00+00:00 + + https://jankremer.eu/eth/ + 2022-12-10T00:00:00+00:00 + + https://jankremer.eu/blog/genesis/ + 2022-12-10T00:00:00+00:00 + + https://jankremer.eu/xmr/ + 2022-12-10T00:00:00+00:00 + + https://jankremer.eu/about/ + 2022-12-10T00:00:00+00:00 + + https://jankremer.eu/categories/ + + diff --git a/public/tags/bücher/index.html b/public/tags/bücher/index.html new file mode 100644 index 0000000..dd41350 --- /dev/null +++ b/public/tags/bücher/index.html @@ -0,0 +1,70 @@ + + + + + + +Bücher | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Geheime Botschaften – Simon Singh

    + +

    Buchvorstellung

    +
    + + +
    + + + + diff --git a/public/tags/bücher/index.xml b/public/tags/bücher/index.xml new file mode 100644 index 0000000..f32167a --- /dev/null +++ b/public/tags/bücher/index.xml @@ -0,0 +1,36 @@ + + + + Bücher on Jan Kremer + https://jankremer.eu/tags/b%C3%BCcher/ + Recent content in Bücher on Jan Kremer + Hugo -- gohugo.io + de + 2023-09-09 00:00 + + Geheime Botschaften – Simon Singh + https://jankremer.eu/blog/geheime-botschaften/ + 2023-09-09 00:00 + + https://jankremer.eu/blog/geheime-botschaften/ + <p>Ich las vor kurzem das Buch <em>Geheime Botschaften. Die Kunst der Verschlüsselung von der Antike bis in die Zeiten des Internet</em><sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup> von <a href="https://simonsingh.net">Simon Singh</a>. +Es stellt eine Einführung in die Geschichte der Verschlüsselung dar und ist für jeden, den das Thema interessiert, äußerst empfehlenswert. +Daneben geht der Autor auch auf die &ldquo;Entschlüsselung&rdquo; antiker Sprachen wie der <a href="https://de.wikipedia.org/wiki/Hieroglyphen">Hieroglyphen</a> und Schriften wie <a href="https://de.wikipedia.org/wiki/Linearschrift_B">Linear B</a> ein.</p> +<p>In den letzten Kapiteln des Buchs erklärt Singh zudem &ldquo;moderne&rdquo; Verschlüsselungsmethoden wie <a href="https://de.wikipedia.org/wiki/RSA-Kryptosystem">RSA</a> und den <a href="https://de.wikipedia.org/wiki/Diffie-Hellman-Schl%C3%BCsselaustausch">Diffie-Hellmann-Schlüsselaustausch</a>. +Nur leider zeigt sich hier deutlich, dass das Buch bereit 1999 publiziert wurde und somit die letzten 24 Jahre der Kryptographie nicht erwähnt werden konnten. +Dadurch finden sich Themen wie zum Beispiel das <a href="https://www.signal.org/docs/">Signal-Protokoll</a>, die damit einhergehende massive Verbreitung starker Verschlüsselung und Krypto-Währungen hier nicht wieder.</p> +<p>Zum Glück kann man vieles davon selbst im Internet recherchieren.</p> +<p>Update: Signal wird in Zukunft <a href="https://signal.org/blog/pqxdh">quantumresistente Verschlüsselung</a> benutzen.</p> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>Originaltitel: <em>The Code Book. The Science of Secrecy from Ancient Egypt to Quantum Cryptography</em>&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + diff --git a/public/tags/crypto/index.html b/public/tags/crypto/index.html new file mode 100644 index 0000000..aa9cffb --- /dev/null +++ b/public/tags/crypto/index.html @@ -0,0 +1,90 @@ + + + + + + +Crypto | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Bitcoin

    + +

    +
    + +
    + + + + +

    Ethereum

    + +

    +
    + +
    + + + + +

    Monero

    + +

    +
    + + +
    + + + + diff --git a/public/tags/crypto/index.xml b/public/tags/crypto/index.xml new file mode 100644 index 0000000..9785dc1 --- /dev/null +++ b/public/tags/crypto/index.xml @@ -0,0 +1,60 @@ + + + + Crypto on Jan Kremer + https://jankremer.eu/tags/crypto/ + Recent content in Crypto on Jan Kremer + Hugo -- gohugo.io + de + 2022-12-10 00:00 + + Bitcoin + https://jankremer.eu/btc/ + 2022-12-10 00:00 + + https://jankremer.eu/btc/ + <h2 id="address">Address</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>bc1qf8qjt4gut2la8k4v3emfv7wrj6f3pfcjrj3slplnwrldkz7hqmaqaju7ym +</span></span></code></pre></div><h2 id="qr">QR</h2> +<p><img src="https://jankremer.eu/btc.png" alt="BTC"></p> +<h2 id="openalias">OpenAlias</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>jankremer.eu +</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>btc.jankremer.eu +</span></span></code></pre></div> + + + + Ethereum + https://jankremer.eu/eth/ + 2022-12-10 00:00 + + https://jankremer.eu/eth/ + <h2 id="address">Address</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>0xc4cBDf9f57cb0229d19d885D5E4033a6223EDef7 +</span></span></code></pre></div><h2 id="qr">QR</h2> +<p><img src="https://jankremer.eu/eth.png" alt="ETH"></p> +<h2 id="ens">ENS</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>jankremer.eu +</span></span></code></pre></div><h2 id="opensea">OpenSea</h2> +<p><a href="https://opensea.io/Echinacea">Echinacea</a></p> + + + + + Monero + https://jankremer.eu/xmr/ + 2022-12-10 00:00 + + https://jankremer.eu/xmr/ + <h2 id="address">Address</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>83ZtE7cBnsyTmBb5A79aDm637mCKWKuhGZZ3ZaQvjmpA5qwL6sejWEcKQnXF5Qd3N4XNCp4fbouTi9kUi8vNgPrfDQaEBMZ +</span></span></code></pre></div><h2 id="qr">QR</h2> +<p><img src="https://jankremer.eu/xmr.png" alt="XMR"></p> +<h2 id="openalias">OpenAlias</h2> +<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>jankremer.eu +</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-txt" data-lang="txt"><span style="display:flex;"><span>xmr.jankremer.eu +</span></span></code></pre></div> + + + + diff --git a/public/tags/fotos/index.html b/public/tags/fotos/index.html new file mode 100644 index 0000000..0d0d93c --- /dev/null +++ b/public/tags/fotos/index.html @@ -0,0 +1,70 @@ + + + + + + +Fotos | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Evening Cloud

    + +

    Evening cloud over Regensburg.

    +
    + + +
    + + + + diff --git a/public/tags/fotos/index.xml b/public/tags/fotos/index.xml new file mode 100644 index 0000000..a62df9f --- /dev/null +++ b/public/tags/fotos/index.xml @@ -0,0 +1,21 @@ + + + + Fotos on Jan Kremer + https://jankremer.eu/tags/fotos/ + Recent content in Fotos on Jan Kremer + Hugo -- gohugo.io + de + 2023-07-19 10:48 + + Evening Cloud + https://jankremer.eu/photos/evening-cloud/ + 2023-07-19 10:48 + + https://jankremer.eu/photos/evening-cloud/ + <p><img src="evening-cloud.webp" alt="Evening cloud over Regensburg."></p> + + + + + diff --git a/public/tags/git/index.html b/public/tags/git/index.html new file mode 100644 index 0000000..e053e49 --- /dev/null +++ b/public/tags/git/index.html @@ -0,0 +1,90 @@ + + + + + + +Git | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Deploy a website using Git

    + +

    +
    + +
    + + + + +

    git

    + +

    Warum jeder git lernen sollte.

    +
    + +
    + + + + +

    LaTeX

    + +

    Wie ich Word durch LaTeX ersetzte.

    +
    + + +
    + + + + diff --git a/public/tags/git/index.xml b/public/tags/git/index.xml new file mode 100644 index 0000000..08400d1 --- /dev/null +++ b/public/tags/git/index.xml @@ -0,0 +1,131 @@ + + + + Git on Jan Kremer + https://jankremer.eu/tags/git/ + Recent content in Git on Jan Kremer + Hugo -- gohugo.io + de + 2023-09-25 00:00 + + Deploy a website using Git + https://jankremer.eu/blog/git-deploy/ + 2023-09-25 00:00 + + https://jankremer.eu/blog/git-deploy/ + <h2 id="git-ftp">Git-ftp</h2> +<p>I tested a lot of different FTP programs including GUIs, TUIs and CLIs. +There might be a problem with the FTP server but I don&rsquo;t control that unfortunately. +The only program working flawlessly so far is <a href="https://git-ftp.github.io/">git-ftp</a>, a plugin for Git. +Not only is this perfectly integrated into git, which I am using anyway. +Also no errors occurred so far. +Plus I can automate the upload using <a href="#git-hooks">hooks</a>.</p> +<h2 id="git-hooks">Git hooks</h2> +<p>The real MVP however is <a href="https://git-scm.com/docs/githooks">Git Hooks</a>. +Hooks are scripts that run automatically on certain Git events.</p> +<p>I did, for example, create a hook to automacally build the website after commiting a change. +Yes, this could introduce problems such as breaking changes and I end up with a broken website, but as I test it regularly this should not become a problem.</p> +<p>The second hook I created pushes the website to the FTP server whenever I push to the remote repository.</p> +<h2 id="git-submodule">Git submodule</h2> +<p>I recently discovered that I can use <code>git submodule</code> to add the <code>public</code> folder created by Hugo. +This allows me to upload the repository to my pages repository on Codeberg and have the site mirrored there. +Secoundly, it allows me to upload the website with git-ftp without uploading everything else.</p> +<hr> +<p>What awesome features of Git are you using?</p> + + + + + git + https://jankremer.eu/blog/git/ + 2023-03-22 16:47 + + https://jankremer.eu/blog/git/ + <p>Ursprünglich sollte es in diesem Post um <a href="https://git-scm.com">git</a>, jedoch ist mir bei Brainstorming aufgefallen, dass das Thema eigentlich deutlich umfangreicher sein sollte.</p> +<p>Meine Reise begann, als ich beschloss, diesen Blog zu starten. +Da ich bis dahin Webseiten nur in reinem HTML und CSS geschrieben hatte, versuchte ich es zunächst damit. +Schnell stellten sich dabei aber mehrere Probleme heraus:</p> +<ol> +<li>Ich bin nicht gut in CSS.</li> +<li>Einen RSS-Feed von Hand zu erstellen ist umständlich und nicht sinnvoll.</li> +<li>Mehrere Seiten mit einheitlichem Design in HTML zu schreiben ist kompliziert.</li> +<li>Ich mag die HTML Syntax nicht.</li> +</ol> +<p>Ich war überzeugt, dass ich eine bessere Lösung dafür brauche. +Nach kurzer und intensiver Recherche fand ich heraus, dass die Lösung meine Problems <em>&ldquo;static site generator&rdquo;</em> heißt. +Darüber hatte ich bereits <a href="https://jankremer.eu/blog/genesis">hier</a> geschrieben.</p> +<p>Im Zuge dessen lernte ich auch <em>git</em> kennen. +Ich hatte zwar schon früher von <em>git</em> gehört, bis dato aber nur zum herunterladen von Software benutzt. +Und damit sind wir schon im Kern meines Problems gelandet:</p> +<h2 id="warum-kannte-ich-git-nicht">Warum kannte ich <em>git</em> nicht?</h2> +<p>Meine ersten Erfahrungen mit dem Programmieren machte ich damals in der Schule, angefangen mit HTML und CSS, später mit Python und Java. +Aber ohne <em>git</em>. +An der Uni (4 Semester Wirtschaftsinformatik) ging es dann weiter mit Java, aber weiterhin ohne <em>git</em>.</p> +<p>Erst beim erstellen dieses Blogs kam ich auf die Idee mich mal ein wenig mit <a href="https://de.wikipedia.org/wiki/Versionsverwaltung">Versionsverwaltung</a> auseinander zu setzen. +Und seitdem bin ich verliebt.</p> +<p>Inzwischen denke ich, dass jeder von <em>git</em> profitieren könnte. +Das einfache Zurückspringen zu früheren Versionen, falls mal was kaputt geht, oder das Auslagern und Zusammenführen von <em>Branches</em> sind einfach großartig. +Zudem ermutigt wird man ermutigt, an logisch sinnvollen Stellen zu <em>commiten</em> und somit den bisherigen Stand zu speichern.</p> +<p>Es wäre meiner Meinung nach auch sinnvoll, Texte, wie zum Beispiel Projektarbeiten, nicht in <em>Microsoft Word</em> zu verfassen sondern besser in Textdokumenten und diese dann mit <em>git</em> zu verwalten und zusammenzufügen (merge). +Diese könnten dann ganz leicht in <a href="https://jankremer.eu/blog/latex">LaTeX-Dokumente</a> umgewandelt werden oder auch in <em>Word</em> formatiert werden. +Darüber hinaus würde dies den Autoren die Möglichkeit geben, einen Texteditor der Wahl zu nutzen. +Gerade auf älteren Maschinen, wie meinem <em>MacBook Pro</em> von 2015 braucht <em>Word</em> inzwischen einiges an Ressourcen. +Dies könnte aber auch damit zusammen hängen, dass <em>Word</em> auf meinem Computer stolze 2.3 GB schwer ist. +Zum Vergleich: Das <strong>gesamte</strong> <em>LibreOffice</em> braucht keine 800 MB.</p> +<p>Ich verstehe auch, dass nicht jeder auf der Kommandozeile zu Hause ist, jedoch gibt es ja auch Tools wie GitHub oder Programme mit grafischer Oberfläche, es sollte also für jeden was dabei sein.</p> +<p>Ich kratze hier gerade mal an der Oberfläche der Möglichkeiten, das meiste ist mir selbst noch nicht bekannt. +Ich kann nur jedem, der <em>git</em> noch nicht nutzt es nur wärmstens empfehlen, es mal auszuprobieren. +Schaden kann es nicht!</p> +<p>P.S.: Ja ich weiß, <em>git</em> ist kein Geheimtipp.</p> + + + + + LaTeX + https://jankremer.eu/blog/latex/ + 2023-01-12 15:35 + + https://jankremer.eu/blog/latex/ + <p>Im Rahmen meines Wahlpflichtpraktikums schreibe ich aktuell an meiner zweiten größeren Projektarbeit. Die einzige andere Projektarbeit war bisher die für das Praktikum Pharmazeutische Technologie, welche, Stand jetzt, noch nicht vollständig abgeschlossen ist.</p> +<p>Für diese Arbeit entschieden wir uns jedoch für <em>Microsoft Word</em>. Also im Grunde wurde uns diese Entscheidung fast abgenommen, da die Universität Regensburg uns das <em>Office 365</em> zur Verfügung stellt und es damit auch bei uns Studenten den De-Facto-Standard darstellt. Zudem erleichtert es das Arbeiten im Team doch sehr.</p> +<p>Formatierungen sind jedoch immer ein Kampf. Daher wollte ich versuchen, <a href="https://www.latex-project.org">LaTeX</a> für diese Arbeit einzusetzen. Ich kannte <em>LaTeX</em> vor allem aus mathematischen Kursen an der Uni und hatte schon oft gehört, dass es Setzen (von <a href="https://de.wikipedia.org/wiki/Satz_(Druck)">Satz</a>) deutlich vereinfachen soll. Aber nicht nur das Schreiben mathematischer Arbeiten macht es deutlich angenehmer, durch das einbinden einiger zusätzlicher Pakete werden wissenschaftliche Texte zum Kinderspiel.</p> +<h2 id="über-latex">Über LaTeX</h2> +<blockquote> +<p><strong>LaTeX</strong> [ˈlaːtɛç] ist ein Softwarepaket, das die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht. <em>LaTeX</em> wurde Anfang der 1980er Jahre von <em>Leslie Lamport</em> entwickelt.Der Name bedeutet so viel wie <em>Lamport TeX</em>. Die Entwicklung wurde seit den 1990er Jahren von einer Anzahl Entwicklern weitergeführt. Heute ist <em>LaTeX</em> die populärste Methode, <em>TeX</em> zu verwenden.</p> +</blockquote> +<p>— <!-- raw HTML omitted --><a href="https://de.wikipedia.org/wiki/LaTeX">Wikipedia: LaTeX</a><!-- raw HTML omitted --></p> +<p><em>LaTeX</em> funktioniert ähnlich wie <em>HTML</em> oder <em>Markdown</em>: Zunächst wird die Formatierung von Text getrennt. Bei WYSIWYG<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>-Textverarbeitungsprogrammen wie <em>Word</em> sieht man direkt, wie das gedruckte Dokument hinterher aussehen wird. Das macht es für viele Nutzer einfacher, zwingt sie aber auch dazu, sich direkt und unmittelbar mit der Formatierung zu beschäftigen. <em>LaTeX</em> trennt dies zunächst, gibt aber dennoch eine übersichtliche Struktur vor. Zudem sind die Standard Formatvorlagen deutlich schlichter und zumindest für mich wesentlich ansprechender als die von <em>Word</em> (Warum ist alles blau und wieso <em>Calibri</em>?!). Ja, die Voreinstellungen von <em>Word</em> lassen sich überschreiben, aber das muss man auch erstmal machen.</p> +<p>Funktionen wie ein Inhalts- oder Literaturvrezeichnis lassen sich in <em>Word</em> zwar auch realisieren, sind in <em>LaTeX</em> wesentlich simpler. Zudem lässt sich <em>LaTeX</em> durch Pakete nahezu unendlich erweitern und deckt dadruch auch jeden noch so speziellen Fall ab.</p> +<p>Ein weiterer Punkt, warum ich <em>LaTeX</em> bevorzuge ist, dass ich jeden Texteditor benutzen kann. Ich nutze am liebsten <em>VS Code</em>, aber natürlich kann jeder beliebige Editor verwendet werden.</p> +<p>Das einzige, was mit <em>Word</em> sicher einfacher wäre ist das einbinden und beschriften von Grafiken. Da ich einige davor in meine Projektarbeit verwende, brauchte ich hierfür eine Lösung. Diese habe ich mit <a href="https://inkscape.org/de/">Inkscape</a> gefunden. Hiermir lassen sich Bilder bearbeiten und beschriften und anschließend als <em>LaTeX</em>-Dokument speichern. Diese lassen sich dann ganz einfach einbinden.</p> +<h2 id="fazit">Fazit</h2> +<p>Für wen <em>Word</em> und ähnliches schon immer eine Qual war oder wer Vorerfahrung mit Texteditoren und Skriptsprachen hat, dem kann ich <em>LaTeX</em> nur ans Herz legen. Ganz einfach lassen sich wunderschöne Dokumente herzaubern. Vor allem der Font <em>Computer Modern</em> hat es mir sehr angetan. Eventuell werde ich die Projektarbeit demnächst hier hochladen.</p> +<hr> +<h2 id="technische-spezifikationen">Technische Spezifikationen</h2> +<p>Kurzer Nachtrag über meine Arbeitsweise mit <em>LaTeX</em>: Als Texteditor benutze ich <a href="https://code.visualstudio.com">VS Code</a>, da ich diesen super übersichtlich finde und vor allem die Erweiterungsmöglichkeiten sehr schätze. Für <em>LaTeX</em> sind dies vor allem <a href="https://github.com/James-Yu/LaTeX-Workshop">LaTeX Workshop</a> und natürlich <a href="https://git-scm.com">git</a> (vorinstalliert). Des Weiteren benutze ich die <a href="https://www.tug.org/mactex/">MacTeX-Distribution</a>, welche ich über <a href="https://brew.sh">Homebrew</a> installiert habe.</p> +<h3 id="verwendete-pakete">Verwendete Pakete</h3> +<ul> +<li><strong>babel</strong>: Sorgt für die Unterstützung verschiedener Sprachen. Ich schreibe die Projektarbeit zwar auf Englisch, jedoch brauche ich ab und zu mal Deutsche Begriffe und damiteinhergehend Umlaute etc.</li> +<li><strong>biblatex</strong>: Verbessertes Literaturverzeichnis, alternative zu <strong>bibtex</strong>.</li> +<li><strong>booktabs</strong>: Verschönert und vereinfacht Tabellen in <em>LaTeX</em>.</li> +<li><strong>chemformula</strong>: Erleichtert das Setzen von chemischen Formeln enorm und sorgt dafür, dass diese auch richtig angezeigt werden.</li> +<li><strong>hyperref</strong>: Für Links und Metadaten.</li> +<li><strong>longtable</strong>: Die verwendeten Materialien habe ich alle in riesigen Listen. <em>LaTeX</em> kann standardmäßig nicht besonders gut mit großen Tabellen umgehen, dieses Paket hilft dabei.</li> +<li><strong>microtype</strong>: Lässt alles schöner aussehen, praktisch schwarze Magie.</li> +<li><strong>siunitx</strong>: Das wahrscheinlich beste Paket überhaupt, simple aber hat Power. Sorgt für perfektes setzen von Einheiten, mit oder ohne vorangehenden Wert. Zudem enthält es eine Funktion, die Werte in Tabellen um den Dezimalpunkt anordnen kann. Ein Traum.</li> +<li><strong>textgreek</strong>: Erleichtert das verwenden von griechischen Buchstaben im Text.</li> +<li>Zusätzliche Pakete die ich an der Stelle nicht weiter erleutern werden: <strong>color</strong>, <strong>csquotes</strong>, <strong>fontenc</strong>, <strong>glossaries</strong>, <strong>graphicx</strong>, <strong>tikz</strong> und <strong>tocbibind</strong>.</li> +</ul> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>What you see is what you get.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + diff --git a/public/tags/index.html b/public/tags/index.html new file mode 100644 index 0000000..8fb7001 --- /dev/null +++ b/public/tags/index.html @@ -0,0 +1,180 @@ + + + + + + +Tags | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Nix

    + +

    +
    + +
    + + + + +

    Meta

    + +

    +
    + +
    + + + + +

    Micro

    + +

    +
    + +
    + + + + +

    Git

    + +

    +
    + +
    + + + + +

    Bücher

    + +

    +
    + +
    + + + + +

    Rss

    + +

    +
    + +
    + + + + +

    Money

    + +

    +
    + +
    + + + + +

    Fotos

    + +

    +
    + +
    + + + + +

    Regensburg

    + +

    +
    + +
    + + + + +

    Latex

    + +

    +
    + +
    + + + + +

    Uni

    + +

    +
    + +
    + + + + +

    Crypto

    + +

    +
    + + +
    + + + + diff --git a/public/tags/index.xml b/public/tags/index.xml new file mode 100644 index 0000000..f4a0891 --- /dev/null +++ b/public/tags/index.xml @@ -0,0 +1,119 @@ + + + + Tags on Jan Kremer + https://jankremer.eu/tags/ + Recent content in Tags on Jan Kremer + Hugo -- gohugo.io + de + 2024-03-14 00:00 + + Nix + https://jankremer.eu/tags/nix/ + 2024-03-14 00:00 + + https://jankremer.eu/tags/nix/ + + + + + Meta + https://jankremer.eu/tags/meta/ + 2023-12-30 08:34 + + https://jankremer.eu/tags/meta/ + + + + + Micro + https://jankremer.eu/tags/micro/ + 2023-12-25 16:28 + + https://jankremer.eu/tags/micro/ + + + + + Git + https://jankremer.eu/tags/git/ + 2023-09-25 00:00 + + https://jankremer.eu/tags/git/ + + + + + Bücher + https://jankremer.eu/tags/b%C3%BCcher/ + 2023-09-09 00:00 + + https://jankremer.eu/tags/b%C3%BCcher/ + + + + + Rss + https://jankremer.eu/tags/rss/ + 2023-09-01 00:00 + + https://jankremer.eu/tags/rss/ + + + + + Money + https://jankremer.eu/tags/money/ + 2023-08-27 00:00 + + https://jankremer.eu/tags/money/ + + + + + Fotos + https://jankremer.eu/tags/fotos/ + 2023-07-19 10:48 + + https://jankremer.eu/tags/fotos/ + + + + + Regensburg + https://jankremer.eu/tags/regensburg/ + 2023-07-19 10:48 + + https://jankremer.eu/tags/regensburg/ + + + + + Latex + https://jankremer.eu/tags/latex/ + 2023-01-12 15:35 + + https://jankremer.eu/tags/latex/ + + + + + Uni + https://jankremer.eu/tags/uni/ + 2023-01-12 15:35 + + https://jankremer.eu/tags/uni/ + + + + + Crypto + https://jankremer.eu/tags/crypto/ + 2022-12-10 00:00 + + https://jankremer.eu/tags/crypto/ + + + + + diff --git a/public/tags/latex/index.html b/public/tags/latex/index.html new file mode 100644 index 0000000..215556a --- /dev/null +++ b/public/tags/latex/index.html @@ -0,0 +1,70 @@ + + + + + + +Latex | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    LaTeX

    + +

    Wie ich Word durch LaTeX ersetzte.

    +
    + + +
    + + + + diff --git a/public/tags/latex/index.xml b/public/tags/latex/index.xml new file mode 100644 index 0000000..8345643 --- /dev/null +++ b/public/tags/latex/index.xml @@ -0,0 +1,58 @@ + + + + Latex on Jan Kremer + https://jankremer.eu/tags/latex/ + Recent content in Latex on Jan Kremer + Hugo -- gohugo.io + de + 2023-01-12 15:35 + + LaTeX + https://jankremer.eu/blog/latex/ + 2023-01-12 15:35 + + https://jankremer.eu/blog/latex/ + <p>Im Rahmen meines Wahlpflichtpraktikums schreibe ich aktuell an meiner zweiten größeren Projektarbeit. Die einzige andere Projektarbeit war bisher die für das Praktikum Pharmazeutische Technologie, welche, Stand jetzt, noch nicht vollständig abgeschlossen ist.</p> +<p>Für diese Arbeit entschieden wir uns jedoch für <em>Microsoft Word</em>. Also im Grunde wurde uns diese Entscheidung fast abgenommen, da die Universität Regensburg uns das <em>Office 365</em> zur Verfügung stellt und es damit auch bei uns Studenten den De-Facto-Standard darstellt. Zudem erleichtert es das Arbeiten im Team doch sehr.</p> +<p>Formatierungen sind jedoch immer ein Kampf. Daher wollte ich versuchen, <a href="https://www.latex-project.org">LaTeX</a> für diese Arbeit einzusetzen. Ich kannte <em>LaTeX</em> vor allem aus mathematischen Kursen an der Uni und hatte schon oft gehört, dass es Setzen (von <a href="https://de.wikipedia.org/wiki/Satz_(Druck)">Satz</a>) deutlich vereinfachen soll. Aber nicht nur das Schreiben mathematischer Arbeiten macht es deutlich angenehmer, durch das einbinden einiger zusätzlicher Pakete werden wissenschaftliche Texte zum Kinderspiel.</p> +<h2 id="über-latex">Über LaTeX</h2> +<blockquote> +<p><strong>LaTeX</strong> [ˈlaːtɛç] ist ein Softwarepaket, das die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht. <em>LaTeX</em> wurde Anfang der 1980er Jahre von <em>Leslie Lamport</em> entwickelt.Der Name bedeutet so viel wie <em>Lamport TeX</em>. Die Entwicklung wurde seit den 1990er Jahren von einer Anzahl Entwicklern weitergeführt. Heute ist <em>LaTeX</em> die populärste Methode, <em>TeX</em> zu verwenden.</p> +</blockquote> +<p>— <!-- raw HTML omitted --><a href="https://de.wikipedia.org/wiki/LaTeX">Wikipedia: LaTeX</a><!-- raw HTML omitted --></p> +<p><em>LaTeX</em> funktioniert ähnlich wie <em>HTML</em> oder <em>Markdown</em>: Zunächst wird die Formatierung von Text getrennt. Bei WYSIWYG<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>-Textverarbeitungsprogrammen wie <em>Word</em> sieht man direkt, wie das gedruckte Dokument hinterher aussehen wird. Das macht es für viele Nutzer einfacher, zwingt sie aber auch dazu, sich direkt und unmittelbar mit der Formatierung zu beschäftigen. <em>LaTeX</em> trennt dies zunächst, gibt aber dennoch eine übersichtliche Struktur vor. Zudem sind die Standard Formatvorlagen deutlich schlichter und zumindest für mich wesentlich ansprechender als die von <em>Word</em> (Warum ist alles blau und wieso <em>Calibri</em>?!). Ja, die Voreinstellungen von <em>Word</em> lassen sich überschreiben, aber das muss man auch erstmal machen.</p> +<p>Funktionen wie ein Inhalts- oder Literaturvrezeichnis lassen sich in <em>Word</em> zwar auch realisieren, sind in <em>LaTeX</em> wesentlich simpler. Zudem lässt sich <em>LaTeX</em> durch Pakete nahezu unendlich erweitern und deckt dadruch auch jeden noch so speziellen Fall ab.</p> +<p>Ein weiterer Punkt, warum ich <em>LaTeX</em> bevorzuge ist, dass ich jeden Texteditor benutzen kann. Ich nutze am liebsten <em>VS Code</em>, aber natürlich kann jeder beliebige Editor verwendet werden.</p> +<p>Das einzige, was mit <em>Word</em> sicher einfacher wäre ist das einbinden und beschriften von Grafiken. Da ich einige davor in meine Projektarbeit verwende, brauchte ich hierfür eine Lösung. Diese habe ich mit <a href="https://inkscape.org/de/">Inkscape</a> gefunden. Hiermir lassen sich Bilder bearbeiten und beschriften und anschließend als <em>LaTeX</em>-Dokument speichern. Diese lassen sich dann ganz einfach einbinden.</p> +<h2 id="fazit">Fazit</h2> +<p>Für wen <em>Word</em> und ähnliches schon immer eine Qual war oder wer Vorerfahrung mit Texteditoren und Skriptsprachen hat, dem kann ich <em>LaTeX</em> nur ans Herz legen. Ganz einfach lassen sich wunderschöne Dokumente herzaubern. Vor allem der Font <em>Computer Modern</em> hat es mir sehr angetan. Eventuell werde ich die Projektarbeit demnächst hier hochladen.</p> +<hr> +<h2 id="technische-spezifikationen">Technische Spezifikationen</h2> +<p>Kurzer Nachtrag über meine Arbeitsweise mit <em>LaTeX</em>: Als Texteditor benutze ich <a href="https://code.visualstudio.com">VS Code</a>, da ich diesen super übersichtlich finde und vor allem die Erweiterungsmöglichkeiten sehr schätze. Für <em>LaTeX</em> sind dies vor allem <a href="https://github.com/James-Yu/LaTeX-Workshop">LaTeX Workshop</a> und natürlich <a href="https://git-scm.com">git</a> (vorinstalliert). Des Weiteren benutze ich die <a href="https://www.tug.org/mactex/">MacTeX-Distribution</a>, welche ich über <a href="https://brew.sh">Homebrew</a> installiert habe.</p> +<h3 id="verwendete-pakete">Verwendete Pakete</h3> +<ul> +<li><strong>babel</strong>: Sorgt für die Unterstützung verschiedener Sprachen. Ich schreibe die Projektarbeit zwar auf Englisch, jedoch brauche ich ab und zu mal Deutsche Begriffe und damiteinhergehend Umlaute etc.</li> +<li><strong>biblatex</strong>: Verbessertes Literaturverzeichnis, alternative zu <strong>bibtex</strong>.</li> +<li><strong>booktabs</strong>: Verschönert und vereinfacht Tabellen in <em>LaTeX</em>.</li> +<li><strong>chemformula</strong>: Erleichtert das Setzen von chemischen Formeln enorm und sorgt dafür, dass diese auch richtig angezeigt werden.</li> +<li><strong>hyperref</strong>: Für Links und Metadaten.</li> +<li><strong>longtable</strong>: Die verwendeten Materialien habe ich alle in riesigen Listen. <em>LaTeX</em> kann standardmäßig nicht besonders gut mit großen Tabellen umgehen, dieses Paket hilft dabei.</li> +<li><strong>microtype</strong>: Lässt alles schöner aussehen, praktisch schwarze Magie.</li> +<li><strong>siunitx</strong>: Das wahrscheinlich beste Paket überhaupt, simple aber hat Power. Sorgt für perfektes setzen von Einheiten, mit oder ohne vorangehenden Wert. Zudem enthält es eine Funktion, die Werte in Tabellen um den Dezimalpunkt anordnen kann. Ein Traum.</li> +<li><strong>textgreek</strong>: Erleichtert das verwenden von griechischen Buchstaben im Text.</li> +<li>Zusätzliche Pakete die ich an der Stelle nicht weiter erleutern werden: <strong>color</strong>, <strong>csquotes</strong>, <strong>fontenc</strong>, <strong>glossaries</strong>, <strong>graphicx</strong>, <strong>tikz</strong> und <strong>tocbibind</strong>.</li> +</ul> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>What you see is what you get.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + diff --git a/public/tags/meta/index.html b/public/tags/meta/index.html new file mode 100644 index 0000000..43958a9 --- /dev/null +++ b/public/tags/meta/index.html @@ -0,0 +1,120 @@ + + + + + + +Meta | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    What I'm currently doing

    + +

    Nobody ever asked me what I'm currently doing, but I decided to tell you anyway.

    +
    + +
    + + + + +

    What I use

    + +

    Nobody ever asked me what I'm currently using, but I decided to tell you anyway.

    +
    + +
    + + + + +

    Deploy a website using Git

    + +

    +
    + +
    + + + + +

    RSS

    + +

    Feeds without fuzz.

    +
    + +
    + + + + +

    12 cent blog

    + +

    Hosting a website at (almost) no cost.

    +
    + +
    + + + + +

    Genesis

    + +

    Über das Erstellen einer Webseite.

    +
    + + +
    + + + + diff --git a/public/tags/meta/index.xml b/public/tags/meta/index.xml new file mode 100644 index 0000000..36d8384 --- /dev/null +++ b/public/tags/meta/index.xml @@ -0,0 +1,231 @@ + + + + Meta on Jan Kremer + https://jankremer.eu/tags/meta/ + Recent content in Meta on Jan Kremer + Hugo -- gohugo.io + de + 2023-12-30 08:34 + + What I'm currently doing + https://jankremer.eu/now/ + 2023-12-30 08:34 + + https://jankremer.eu/now/ + <h2 id="learning">Learning</h2> +<ul> +<li>Pharmazeutische Technologie</li> +</ul> +<h2 id="reading">Reading</h2> +<ul> +<li>Kaffee und Zigaretten – Ferdinand von Schirach</li> +</ul> +<h2 id="watching">Watching</h2> +<ul> +<li>Germany&rsquo;s next topmodel</li> +<li>Rosins Restaurants</li> +<li>Batman – The animated series</li> +<li>Band of Brothers</li> +</ul> +<h2 id="listening">Listening</h2> +<ul> +<li>Kölsche Karnevalsmusik (yeah I know Karneval is over)</li> +</ul> + + + + + What I use + https://jankremer.eu/uses/ + 2023-12-30 08:03 + + https://jankremer.eu/uses/ + <h2 id="hardware">Hardware</h2> +<ul> +<li>MacBook Pro 2015</li> +<li>iPhone X</li> +<li>Apple Watch SE</li> +<li>AirPods Pro</li> +<li>Logitech MX Master 3 (rarely)</li> +</ul> +<h2 id="software">Software</h2> +<table> +<thead> +<tr> +<th>Category</th> +<th>Software</th> +</tr> +</thead> +<tbody> +<tr> +<td>Unless otherwise stated</td> +<td>Apple default apps</td> +</tr> +<tr> +<td>RSS reader</td> +<td><a href="https://netnewswire.com">NetNewsWire</a></td> +</tr> +<tr> +<td>Notes</td> +<td><a href="https://obsidian.md">Obsidian</a></td> +</tr> +<tr> +<td>To-Do list</td> +<td><a href="https://culturedcode.com/things">Things</a></td> +</tr> +<tr> +<td>Text editor</td> +<td><a href="https://neovim.io">Neovim</a>, <a href="https://helix-editor.com">Helix</a></td> +</tr> +<tr> +<td>Word processing</td> +<td><a href="https://typst.app">Typst</a></td> +</tr> +<tr> +<td>Window manager</td> +<td><a href="https://github.com/ianyh/Amethyst">Amethyst</a></td> +</tr> +<tr> +<td>Terminal emulator</td> +<td><a href="https://sw.kovidgoyal.net/kitty">Kitty</a></td> +</tr> +<tr> +<td>Package manager</td> +<td><a href="https://nixos.org">Nix</a>, <a href="https://brew.sh">Homebrew</a></td> +</tr> +</tbody> +</table> + + + + + Deploy a website using Git + https://jankremer.eu/blog/git-deploy/ + 2023-09-25 00:00 + + https://jankremer.eu/blog/git-deploy/ + <h2 id="git-ftp">Git-ftp</h2> +<p>I tested a lot of different FTP programs including GUIs, TUIs and CLIs. +There might be a problem with the FTP server but I don&rsquo;t control that unfortunately. +The only program working flawlessly so far is <a href="https://git-ftp.github.io/">git-ftp</a>, a plugin for Git. +Not only is this perfectly integrated into git, which I am using anyway. +Also no errors occurred so far. +Plus I can automate the upload using <a href="#git-hooks">hooks</a>.</p> +<h2 id="git-hooks">Git hooks</h2> +<p>The real MVP however is <a href="https://git-scm.com/docs/githooks">Git Hooks</a>. +Hooks are scripts that run automatically on certain Git events.</p> +<p>I did, for example, create a hook to automacally build the website after commiting a change. +Yes, this could introduce problems such as breaking changes and I end up with a broken website, but as I test it regularly this should not become a problem.</p> +<p>The second hook I created pushes the website to the FTP server whenever I push to the remote repository.</p> +<h2 id="git-submodule">Git submodule</h2> +<p>I recently discovered that I can use <code>git submodule</code> to add the <code>public</code> folder created by Hugo. +This allows me to upload the repository to my pages repository on Codeberg and have the site mirrored there. +Secoundly, it allows me to upload the website with git-ftp without uploading everything else.</p> +<hr> +<p>What awesome features of Git are you using?</p> + + + + + RSS + https://jankremer.eu/blog/rss/ + 2023-09-01 00:00 + + https://jankremer.eu/blog/rss/ + <h2 id="what-is-rss">What is RSS?</h2> +<p>Originally, RSS stood for &ldquo;RDF/Rich Site Summary&rdquo; but was later changed to &ldquo;Really Simple Syndication&rdquo;</p> +<p>RSS is a way to subscribe to a website. +Whenever that website updates it writes its changes to a <code>XML</code> file. +You can then read this XML file and see what changed at a glance.</p> +<p>Many websites use RSS including YouTube, <del>Reddit</del> Lemmy, <del>Twitter</del> Mastodon, most news sites, and almost any blog out there. +For many blogs, RSS is the main way to distribute new posts.</p> +<p>RSS is experiencing a Renaissance at the moment: +Many people are now seeing the damages done by algorithmic feeds and want to go back to purely chronological feeds. +RSS provides a perfect infrastructure for this.</p> +<h2 id="how-to-read-rss">How to read RSS?</h2> +<p>First, you need a feed reader. On macOS and iOS I highly recommend <a href="https://netnewswire.com">NetNewsWire</a>. +For terminal fans <a href="https://newsboat.org">Newsboat</a> is the way to go. +<a href="https://www.thunderbird.net/">Thunderbird</a> is also a good choice but there are tons of programs that can read RSS feeds.</p> +<p>That&rsquo;s bascially it. Now you need to add some feeds and you are ready.</p> +<p>I recommend picking a reader that can also fetch the article without opening the browser and loading a ton of ads.</p> +<p>Pro tip: You can export your subscibtions to a <code>OPML</code> file and import them into any RSS reader.</p> +<h2 id="how-to-distribute-rss">How to distribute RSS?</h2> +<p>This is the hardest question to answer about RSS as there are endless possibilities.</p> +<p>The easiest way would probably be to use a service such as Mastodon that generates the feed automatically. +If that platform isn&rsquo;t for you, WordPress is a good way to host a blog. +I read about people setting up their own scripts that automatically update the feed for new posts.</p> +<p>I use <a href="https://gohugo.io">Hugo</a> which is a <em>static site generator</em>. +It generates feeds automatically but lies somewhere between WordPress and writing your own scripts in terms of how tech savvy you should be.</p> +<h2 id="how-to-find-rss">How to find RSS?</h2> +<p>Go to a website you like, copy the URL and paste it into your RSS reader. +Modern feed readers can find RSS feed on their own, you just have to provide a link to the site you want to subscribe to. +If that is not the case, you could try adding <code>/index.xml</code> to the URL.</p> +<p>Some sites, like this one, also link to their RSS feeds. +Often those links are a the bottom of the website and are either marked as <code>RSS</code>, <code>Feed</code>, or just use the RSS logo. +I additionally provide links to my subprojects such as my <a href="https://jankremer.eu/micro">microblog</a> or my <a href="https://jankremer.eu/fotos">photos</a>. +Feel free to add them to your reader.</p> +<h2 id="conclusion">Conclusion</h2> +<p>I think RSS is on the rise. +It&rsquo;s an old protocol that survived numerous challenges +It provides an escape from the algorithms and large social media companies. +It also provides a way for content creators to distribute their content on their own without any middleman.</p> + + + + + 12 cent blog + https://jankremer.eu/blog/hosting/ + 2023-08-27 00:00 + + https://jankremer.eu/blog/hosting/ + <p>Yes, the title is correct. +<a href="https://knowyourmeme.com/photos/1191035">Well, actually</a> it is 0.119 € per +month or 14.28 € for 10 years.</p> +<p>To be fair, it was a special offer and only covers the domain. +Fortunately, my provider, <a href="https://www.netim.com/en">Netim</a> has a free hosting plan with fits my needs. +I even get email hosting with my own domain. +There are also services like <a href="https://neocities.org">Neocities</a> where you can host your website for free if you are willing to live with a subdomain.</p> +<h2 id="why-should-i-xyz-is-free">Why should I? XYZ is free!</h2> +<p>Yes, you can post wherever you want. +𝕏 (formerly known as Twitter) is free<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>, Mastodon is free, Facebook, Instagram, Threads, Reddit, you name them, are all free, but you are giving up your freedoms. +Mastodon might be a little better than the rest, but ultimately you depend on the host to let you post there. +And they can block you and delete all your data without even giving you any notice. +I hope you have a backup.</p> +<p>Hosting this blog allows me to write whatever I want. +Sure, Netim could also block me and delete my data, but since I use <a href="https://gohugo.io">Hugo</a> I always have everything backed up on my system anyways. +In a matter of hours I could be up and running on another hosting provider.</p> +<p>I can also use any format I want and have nearly endless possibilities to customize my blog. +The sky is the limit. +For example am I hosting my own <a href="https://jankremer.eu/fotos">photos</a> instead of using Instagram and my own <a href="https://jankremer.eu/micro">microblog</a> instead of using Twitter/Mastodon. +Whatever media I plan to share in the future, there is a solution out there. +Want comments? I&rsquo;m trying <a href="https://cactus.chat">Cactus Comments</a> at the moment.</p> +<p>Let me know what you think!</p> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>Or is it? I&rsquo;m not in the loop.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + Genesis + https://jankremer.eu/blog/genesis/ + 2022-12-10 00:00 + + https://jankremer.eu/blog/genesis/ + <p>Als ich vor ca. einem Jahr diese Domain kaufte, wusste ich noch nicht was ich damit anstellen will. Ich wusste nur: <strong>Ich will endlich eine eigene Webseite haben.</strong></p> +<p>In meinen ersten Stunden Informatik in der Schule (vor über 10 Jahren) lernten wir die Grundlagen des Webdesigns mit <em>HTML</em> und <em>CSS</em>, und da ich zunächst nicht viel Zeit hatte erstellte ich genau mit diesen Tools eine kleine Startseite. Mehr schlecht als recht aber immerhin hatte ich etwas.</p> +<p>Im März diesen Jahres hatte ich dann ein wenig Zeit mich genauer mit dem Thema zu beschäftigen und fand dabei den sogenannten <a href="https://jamstack.org">Jamstack</a>. Jamstack sind Tools zur schnellen und einfachen Aufstellen von Webseite. Dies können große Projekte sein oder wie in meinem Fall ein kleiner Blog. Zuerst probierte ich <a href="https://jekyllrb.com/">Jekyll</a> was mir jedoch nicht so gut taugte und stieß dann auf <a href="https://gohugo.io/">Hugo</a>. Mit einer Vielzahl an modernen Designs und einer klinderleichten Handhaben konnte ich schnell überzeugt werden.</p> +<p>Heute weiß ich zwar immer noch nicht, was ich hiermit in Zukunft machen werde, aber ich denke es ist wichtiger den je ein Sprachrohr zu haben, das unabhängig ist von der Willkür großer Plattformen.</p> +<p>Bis bald und viel Spaß!</p> +<p>P.S.: Dieses wunderschöne <em>Theme</em>, das ich hier benutze, heißt <a href="https://git.io/hugo-congo">Congo</a>.</p> + + + + + diff --git a/public/tags/micro/index.html b/public/tags/micro/index.html new file mode 100644 index 0000000..cd5011e --- /dev/null +++ b/public/tags/micro/index.html @@ -0,0 +1,100 @@ + + + + + + +Micro | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Markdown Tables Suck

    + +

    +
    + +
    + + + + +

    Use Timestamps

    + +

    +
    + +
    + + + + +

    Stop using Twitter.

    + +

    +
    + + + + +
    + + + + diff --git a/public/tags/micro/index.xml b/public/tags/micro/index.xml new file mode 100644 index 0000000..93e0d39 --- /dev/null +++ b/public/tags/micro/index.xml @@ -0,0 +1,63 @@ + + + + Micro on Jan Kremer + https://jankremer.eu/tags/micro/ + Recent content in Micro on Jan Kremer + Hugo -- gohugo.io + de + 2023-12-25 16:28 + + Markdown Tables Suck + https://jankremer.eu/micro/markdown-tables/ + 2023-12-25 16:28 + + https://jankremer.eu/micro/markdown-tables/ + <p>Tables are arguably the worst part of Markdown. +No horizontal lines except for the mandatory one at the top. +The only feature is the possibility to align cells.</p> +<p>Org Mode does much better, but isn&rsquo;t perfect either.</p> +<p>Don&rsquo;t get me wrong. It&rsquo;s nice to have a simple tool for simple tables. +But sometimes I need more customizability.</p> + + + + + Use Timestamps + https://jankremer.eu/micro/timestamps/ + 2023-11-15 10:12 + + https://jankremer.eu/micro/timestamps/ + <p> +Every blog post should include a timestamp. +In fact, this extends to almost anything online and even offline.</p> +<p> +Also, don&#39;t make me look for the date. +Put the date as obvious as possible, preferably at the beginning of the post.</p> +<p> +I was reading <a href="https://jvns.ca/blog/2023/02/28/some-notes-on-using-nix/">Julia Evans post about nix</a> and it was not immediately clear to me if this was a recent post. +Only when I copied the URL to complain about it I discovered the date there. +Safari hides most of the URL by default.</p> + + + + + Stop using Twitter. + https://jankremer.eu/micro/twitter/ + 2023-07-22 15:57 + + https://jankremer.eu/micro/twitter/ + + + + + Reader mode is the antidote to bad website design. + https://jankremer.eu/micro/reader/ + 2023-07-19 10:14 + + https://jankremer.eu/micro/reader/ + + + + + diff --git a/public/tags/money/index.html b/public/tags/money/index.html new file mode 100644 index 0000000..eeee04e --- /dev/null +++ b/public/tags/money/index.html @@ -0,0 +1,70 @@ + + + + + + +Money | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    12 cent blog

    + +

    Hosting a website at (almost) no cost.

    +
    + + +
    + + + + diff --git a/public/tags/money/index.xml b/public/tags/money/index.xml new file mode 100644 index 0000000..b35f495 --- /dev/null +++ b/public/tags/money/index.xml @@ -0,0 +1,50 @@ + + + + Money on Jan Kremer + https://jankremer.eu/tags/money/ + Recent content in Money on Jan Kremer + Hugo -- gohugo.io + de + 2023-08-27 00:00 + + 12 cent blog + https://jankremer.eu/blog/hosting/ + 2023-08-27 00:00 + + https://jankremer.eu/blog/hosting/ + <p>Yes, the title is correct. +<a href="https://knowyourmeme.com/photos/1191035">Well, actually</a> it is 0.119 € per +month or 14.28 € for 10 years.</p> +<p>To be fair, it was a special offer and only covers the domain. +Fortunately, my provider, <a href="https://www.netim.com/en">Netim</a> has a free hosting plan with fits my needs. +I even get email hosting with my own domain. +There are also services like <a href="https://neocities.org">Neocities</a> where you can host your website for free if you are willing to live with a subdomain.</p> +<h2 id="why-should-i-xyz-is-free">Why should I? XYZ is free!</h2> +<p>Yes, you can post wherever you want. +𝕏 (formerly known as Twitter) is free<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>, Mastodon is free, Facebook, Instagram, Threads, Reddit, you name them, are all free, but you are giving up your freedoms. +Mastodon might be a little better than the rest, but ultimately you depend on the host to let you post there. +And they can block you and delete all your data without even giving you any notice. +I hope you have a backup.</p> +<p>Hosting this blog allows me to write whatever I want. +Sure, Netim could also block me and delete my data, but since I use <a href="https://gohugo.io">Hugo</a> I always have everything backed up on my system anyways. +In a matter of hours I could be up and running on another hosting provider.</p> +<p>I can also use any format I want and have nearly endless possibilities to customize my blog. +The sky is the limit. +For example am I hosting my own <a href="https://jankremer.eu/fotos">photos</a> instead of using Instagram and my own <a href="https://jankremer.eu/micro">microblog</a> instead of using Twitter/Mastodon. +Whatever media I plan to share in the future, there is a solution out there. +Want comments? I&rsquo;m trying <a href="https://cactus.chat">Cactus Comments</a> at the moment.</p> +<p>Let me know what you think!</p> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>Or is it? I&rsquo;m not in the loop.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + diff --git a/public/tags/nix/index.html b/public/tags/nix/index.html new file mode 100644 index 0000000..57ff0aa --- /dev/null +++ b/public/tags/nix/index.html @@ -0,0 +1,70 @@ + + + + + + +Nix | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Nix on macOS

    + +

    Moving from Homebrew to Nix. Mostly.

    +
    + + +
    + + + + diff --git a/public/tags/nix/index.xml b/public/tags/nix/index.xml new file mode 100644 index 0000000..ebaac2c --- /dev/null +++ b/public/tags/nix/index.xml @@ -0,0 +1,37 @@ + + + + Nix on Jan Kremer + https://jankremer.eu/tags/nix/ + Recent content in Nix on Jan Kremer + Hugo -- gohugo.io + de + 2024-03-14 00:00 + + Nix on macOS + https://jankremer.eu/blog/nix/ + 2024-03-14 00:00 + + https://jankremer.eu/blog/nix/ + <p>For about a year, I&rsquo;ve been fascinated by <a href="https://nixos.org">Nix and NixOS</a>. I don&rsquo;t remember exactly what fascinated me at first, probably the possibility to setup and configure my system using a single file. A few weeks ago, I decided to give it a serious try.</p> +<h2 id="installation">Installation</h2> +<p>To be honest this is not my first time installing Nix on my machine. I tried the official Nix installer and the &ldquo;old&rdquo; way to use Nix which is basically the same as any other package manager. I didn&rsquo;t see the point of having two package managers so I uninstalled Nix quickly after.</p> +<p>Then, a few weeks ago, I came across <a href="https://nixcademy.com/2024/01/15/nix-on-macos/">this guide</a> and it instantly clicked with me. Having a single file in which I declare my complete system and then have it set up in a few minutes without rebooting is just infinitely cool. In Nix, this feature is called <em>flake</em>. The guide uses the <a href="https://github.com/DeterminateSystems/nix-installer">Determinate systems installer</a> which sets up flakes by default. It also explains how to install Nix Darwin.</p> +<h2 id="nix-darwin">Nix Darwin</h2> +<p>Nix Darwin is a set of Nix modules that brings declarative configuration to macOS. It includes a bunch of options such as for the dock, Finder or the keyboard for example. It also gives the user basic configuration options for various programs. However I prefer to set up terminal based programs using <a href="#home-manager">Home Manager</a> instead, because it supports even more programs.</p> +<p>What I do use extensively is the <a href="https://brew.sh/">Homebrew</a> module to install not only GUI (graphical user interface) apps from Homebrew, but also from the App Store.</p> +<h2 id="home-manager">Home Manager</h2> +<p>For everything else, from terminal based programs to their configuration, I use <a href="https://github.com/nix-community/home-manager?tab=readme-ov-file">Home Manager</a>. It includes a huge set of modules and allows me to setup every non-GUI program in a declarative way. Still, sometimes you have to configure the &ldquo;traditional way&rdquo;, meaning in the original configuration language. But still, I much prefer this over my cluttered <code>.config</code> directory.</p> +<h2 id="nixvim">Nixvim</h2> +<p>In the process of writing my Nix configuration, I became unsatisfied with my Neovim setup. I used to use <a href="https://www.lazyvim.org">LazyVim</a> but it felt more and more bloated and slow on my 9 year old machine. For some time I used <a href="https://helix-editor.com/">Helix</a> which has great defaults, such as language server protocol (LSP) and fuzzy finder integration. I really think Neovim should go in this direction. Unfortunately it lacks some features to make it my main editor, mostly support for <a href="https://typst.app/">Typst</a> which is already added to the <code>master</code> branch. It also lacks a plugin system, but given such great defaults, there isn&rsquo;t that big of a need for it. Helix also features its own set of motions, and although I think they are not bad, maybe even better than Vim motions, the latter are so ubiquitously implemented that I would essentially use both all the time.</p> +<p>That&rsquo;s when I saw a video by <em>ThePrimeagen</em> in which he recommended <a href="https://github.com/nvim-lua/kickstart.nvim/tree/master">Kickstart</a>, a minimal Neovim starter configuration mainly written by <em>TJ DeVries</em>. It almost everything you need to get started and has insanely great documentation.</p> +<p>The only thing that bothered me was the use of <a href="https://github.com/williamboman/mason.nvim">Mason</a> as a LSP package manager. For some people this might be the best way to install LSPs, but I don&rsquo;t understand why I would use a second package manager when I can just use Nix for everything. Helix has a list of supported LSPs and all you have to do is make sure they are in your <code>$PATH</code>.</p> +<p>Luckily, others already had the same issues and decided to write <a href="https://github.com/nix-community/nixvim">Nixvim</a>. Nixvim is a NixOS / Nix Darwin / Home manager module that lets you configure Neovim (almost) entirely using Nix. It uses Nix as the plugin manager and has great defaults and documentation.</p> +<p>I basically recreated Kickstart using Nixvim with some minor tweaks. It feels just as snappy as Helix and I love it.</p> +<h2 id="conclusion">Conclusion</h2> +<p>This is just the tip of the tip of the iceberg of what is possible with Nix. Next, I want to learn to write my own flakes to set up development environments. I should probably learn a bit of Nix language too. But to sum it up so far, I&rsquo;m really happy and excited about this &ldquo;new&rdquo; way to manage my computer.</p> + + + + + diff --git a/public/tags/regensburg/index.html b/public/tags/regensburg/index.html new file mode 100644 index 0000000..be779da --- /dev/null +++ b/public/tags/regensburg/index.html @@ -0,0 +1,70 @@ + + + + + + +Regensburg | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    Evening Cloud

    + +

    Evening cloud over Regensburg.

    +
    + + +
    + + + + diff --git a/public/tags/regensburg/index.xml b/public/tags/regensburg/index.xml new file mode 100644 index 0000000..e9c1f70 --- /dev/null +++ b/public/tags/regensburg/index.xml @@ -0,0 +1,21 @@ + + + + Regensburg on Jan Kremer + https://jankremer.eu/tags/regensburg/ + Recent content in Regensburg on Jan Kremer + Hugo -- gohugo.io + de + 2023-07-19 10:48 + + Evening Cloud + https://jankremer.eu/photos/evening-cloud/ + 2023-07-19 10:48 + + https://jankremer.eu/photos/evening-cloud/ + <p><img src="evening-cloud.webp" alt="Evening cloud over Regensburg."></p> + + + + + diff --git a/public/tags/rss/index.html b/public/tags/rss/index.html new file mode 100644 index 0000000..5bcaba9 --- /dev/null +++ b/public/tags/rss/index.html @@ -0,0 +1,70 @@ + + + + + + +Rss | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    RSS

    + +

    Feeds without fuzz.

    +
    + + +
    + + + + diff --git a/public/tags/rss/index.xml b/public/tags/rss/index.xml new file mode 100644 index 0000000..c03a83b --- /dev/null +++ b/public/tags/rss/index.xml @@ -0,0 +1,57 @@ + + + + Rss on Jan Kremer + https://jankremer.eu/tags/rss/ + Recent content in Rss on Jan Kremer + Hugo -- gohugo.io + de + 2023-09-01 00:00 + + RSS + https://jankremer.eu/blog/rss/ + 2023-09-01 00:00 + + https://jankremer.eu/blog/rss/ + <h2 id="what-is-rss">What is RSS?</h2> +<p>Originally, RSS stood for &ldquo;RDF/Rich Site Summary&rdquo; but was later changed to &ldquo;Really Simple Syndication&rdquo;</p> +<p>RSS is a way to subscribe to a website. +Whenever that website updates it writes its changes to a <code>XML</code> file. +You can then read this XML file and see what changed at a glance.</p> +<p>Many websites use RSS including YouTube, <del>Reddit</del> Lemmy, <del>Twitter</del> Mastodon, most news sites, and almost any blog out there. +For many blogs, RSS is the main way to distribute new posts.</p> +<p>RSS is experiencing a Renaissance at the moment: +Many people are now seeing the damages done by algorithmic feeds and want to go back to purely chronological feeds. +RSS provides a perfect infrastructure for this.</p> +<h2 id="how-to-read-rss">How to read RSS?</h2> +<p>First, you need a feed reader. On macOS and iOS I highly recommend <a href="https://netnewswire.com">NetNewsWire</a>. +For terminal fans <a href="https://newsboat.org">Newsboat</a> is the way to go. +<a href="https://www.thunderbird.net/">Thunderbird</a> is also a good choice but there are tons of programs that can read RSS feeds.</p> +<p>That&rsquo;s bascially it. Now you need to add some feeds and you are ready.</p> +<p>I recommend picking a reader that can also fetch the article without opening the browser and loading a ton of ads.</p> +<p>Pro tip: You can export your subscibtions to a <code>OPML</code> file and import them into any RSS reader.</p> +<h2 id="how-to-distribute-rss">How to distribute RSS?</h2> +<p>This is the hardest question to answer about RSS as there are endless possibilities.</p> +<p>The easiest way would probably be to use a service such as Mastodon that generates the feed automatically. +If that platform isn&rsquo;t for you, WordPress is a good way to host a blog. +I read about people setting up their own scripts that automatically update the feed for new posts.</p> +<p>I use <a href="https://gohugo.io">Hugo</a> which is a <em>static site generator</em>. +It generates feeds automatically but lies somewhere between WordPress and writing your own scripts in terms of how tech savvy you should be.</p> +<h2 id="how-to-find-rss">How to find RSS?</h2> +<p>Go to a website you like, copy the URL and paste it into your RSS reader. +Modern feed readers can find RSS feed on their own, you just have to provide a link to the site you want to subscribe to. +If that is not the case, you could try adding <code>/index.xml</code> to the URL.</p> +<p>Some sites, like this one, also link to their RSS feeds. +Often those links are a the bottom of the website and are either marked as <code>RSS</code>, <code>Feed</code>, or just use the RSS logo. +I additionally provide links to my subprojects such as my <a href="https://jankremer.eu/micro">microblog</a> or my <a href="https://jankremer.eu/fotos">photos</a>. +Feel free to add them to your reader.</p> +<h2 id="conclusion">Conclusion</h2> +<p>I think RSS is on the rise. +It&rsquo;s an old protocol that survived numerous challenges +It provides an escape from the algorithms and large social media companies. +It also provides a way for content creators to distribute their content on their own without any middleman.</p> + + + + + diff --git a/public/tags/uni/index.html b/public/tags/uni/index.html new file mode 100644 index 0000000..4ee18dd --- /dev/null +++ b/public/tags/uni/index.html @@ -0,0 +1,70 @@ + + + + + + +Uni | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + + + +
    + + + + +

    LaTeX

    + +

    Wie ich Word durch LaTeX ersetzte.

    +
    + + +
    + + + + diff --git a/public/tags/uni/index.xml b/public/tags/uni/index.xml new file mode 100644 index 0000000..34515c9 --- /dev/null +++ b/public/tags/uni/index.xml @@ -0,0 +1,58 @@ + + + + Uni on Jan Kremer + https://jankremer.eu/tags/uni/ + Recent content in Uni on Jan Kremer + Hugo -- gohugo.io + de + 2023-01-12 15:35 + + LaTeX + https://jankremer.eu/blog/latex/ + 2023-01-12 15:35 + + https://jankremer.eu/blog/latex/ + <p>Im Rahmen meines Wahlpflichtpraktikums schreibe ich aktuell an meiner zweiten größeren Projektarbeit. Die einzige andere Projektarbeit war bisher die für das Praktikum Pharmazeutische Technologie, welche, Stand jetzt, noch nicht vollständig abgeschlossen ist.</p> +<p>Für diese Arbeit entschieden wir uns jedoch für <em>Microsoft Word</em>. Also im Grunde wurde uns diese Entscheidung fast abgenommen, da die Universität Regensburg uns das <em>Office 365</em> zur Verfügung stellt und es damit auch bei uns Studenten den De-Facto-Standard darstellt. Zudem erleichtert es das Arbeiten im Team doch sehr.</p> +<p>Formatierungen sind jedoch immer ein Kampf. Daher wollte ich versuchen, <a href="https://www.latex-project.org">LaTeX</a> für diese Arbeit einzusetzen. Ich kannte <em>LaTeX</em> vor allem aus mathematischen Kursen an der Uni und hatte schon oft gehört, dass es Setzen (von <a href="https://de.wikipedia.org/wiki/Satz_(Druck)">Satz</a>) deutlich vereinfachen soll. Aber nicht nur das Schreiben mathematischer Arbeiten macht es deutlich angenehmer, durch das einbinden einiger zusätzlicher Pakete werden wissenschaftliche Texte zum Kinderspiel.</p> +<h2 id="über-latex">Über LaTeX</h2> +<blockquote> +<p><strong>LaTeX</strong> [ˈlaːtɛç] ist ein Softwarepaket, das die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht. <em>LaTeX</em> wurde Anfang der 1980er Jahre von <em>Leslie Lamport</em> entwickelt.Der Name bedeutet so viel wie <em>Lamport TeX</em>. Die Entwicklung wurde seit den 1990er Jahren von einer Anzahl Entwicklern weitergeführt. Heute ist <em>LaTeX</em> die populärste Methode, <em>TeX</em> zu verwenden.</p> +</blockquote> +<p>— <!-- raw HTML omitted --><a href="https://de.wikipedia.org/wiki/LaTeX">Wikipedia: LaTeX</a><!-- raw HTML omitted --></p> +<p><em>LaTeX</em> funktioniert ähnlich wie <em>HTML</em> oder <em>Markdown</em>: Zunächst wird die Formatierung von Text getrennt. Bei WYSIWYG<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>-Textverarbeitungsprogrammen wie <em>Word</em> sieht man direkt, wie das gedruckte Dokument hinterher aussehen wird. Das macht es für viele Nutzer einfacher, zwingt sie aber auch dazu, sich direkt und unmittelbar mit der Formatierung zu beschäftigen. <em>LaTeX</em> trennt dies zunächst, gibt aber dennoch eine übersichtliche Struktur vor. Zudem sind die Standard Formatvorlagen deutlich schlichter und zumindest für mich wesentlich ansprechender als die von <em>Word</em> (Warum ist alles blau und wieso <em>Calibri</em>?!). Ja, die Voreinstellungen von <em>Word</em> lassen sich überschreiben, aber das muss man auch erstmal machen.</p> +<p>Funktionen wie ein Inhalts- oder Literaturvrezeichnis lassen sich in <em>Word</em> zwar auch realisieren, sind in <em>LaTeX</em> wesentlich simpler. Zudem lässt sich <em>LaTeX</em> durch Pakete nahezu unendlich erweitern und deckt dadruch auch jeden noch so speziellen Fall ab.</p> +<p>Ein weiterer Punkt, warum ich <em>LaTeX</em> bevorzuge ist, dass ich jeden Texteditor benutzen kann. Ich nutze am liebsten <em>VS Code</em>, aber natürlich kann jeder beliebige Editor verwendet werden.</p> +<p>Das einzige, was mit <em>Word</em> sicher einfacher wäre ist das einbinden und beschriften von Grafiken. Da ich einige davor in meine Projektarbeit verwende, brauchte ich hierfür eine Lösung. Diese habe ich mit <a href="https://inkscape.org/de/">Inkscape</a> gefunden. Hiermir lassen sich Bilder bearbeiten und beschriften und anschließend als <em>LaTeX</em>-Dokument speichern. Diese lassen sich dann ganz einfach einbinden.</p> +<h2 id="fazit">Fazit</h2> +<p>Für wen <em>Word</em> und ähnliches schon immer eine Qual war oder wer Vorerfahrung mit Texteditoren und Skriptsprachen hat, dem kann ich <em>LaTeX</em> nur ans Herz legen. Ganz einfach lassen sich wunderschöne Dokumente herzaubern. Vor allem der Font <em>Computer Modern</em> hat es mir sehr angetan. Eventuell werde ich die Projektarbeit demnächst hier hochladen.</p> +<hr> +<h2 id="technische-spezifikationen">Technische Spezifikationen</h2> +<p>Kurzer Nachtrag über meine Arbeitsweise mit <em>LaTeX</em>: Als Texteditor benutze ich <a href="https://code.visualstudio.com">VS Code</a>, da ich diesen super übersichtlich finde und vor allem die Erweiterungsmöglichkeiten sehr schätze. Für <em>LaTeX</em> sind dies vor allem <a href="https://github.com/James-Yu/LaTeX-Workshop">LaTeX Workshop</a> und natürlich <a href="https://git-scm.com">git</a> (vorinstalliert). Des Weiteren benutze ich die <a href="https://www.tug.org/mactex/">MacTeX-Distribution</a>, welche ich über <a href="https://brew.sh">Homebrew</a> installiert habe.</p> +<h3 id="verwendete-pakete">Verwendete Pakete</h3> +<ul> +<li><strong>babel</strong>: Sorgt für die Unterstützung verschiedener Sprachen. Ich schreibe die Projektarbeit zwar auf Englisch, jedoch brauche ich ab und zu mal Deutsche Begriffe und damiteinhergehend Umlaute etc.</li> +<li><strong>biblatex</strong>: Verbessertes Literaturverzeichnis, alternative zu <strong>bibtex</strong>.</li> +<li><strong>booktabs</strong>: Verschönert und vereinfacht Tabellen in <em>LaTeX</em>.</li> +<li><strong>chemformula</strong>: Erleichtert das Setzen von chemischen Formeln enorm und sorgt dafür, dass diese auch richtig angezeigt werden.</li> +<li><strong>hyperref</strong>: Für Links und Metadaten.</li> +<li><strong>longtable</strong>: Die verwendeten Materialien habe ich alle in riesigen Listen. <em>LaTeX</em> kann standardmäßig nicht besonders gut mit großen Tabellen umgehen, dieses Paket hilft dabei.</li> +<li><strong>microtype</strong>: Lässt alles schöner aussehen, praktisch schwarze Magie.</li> +<li><strong>siunitx</strong>: Das wahrscheinlich beste Paket überhaupt, simple aber hat Power. Sorgt für perfektes setzen von Einheiten, mit oder ohne vorangehenden Wert. Zudem enthält es eine Funktion, die Werte in Tabellen um den Dezimalpunkt anordnen kann. Ein Traum.</li> +<li><strong>textgreek</strong>: Erleichtert das verwenden von griechischen Buchstaben im Text.</li> +<li>Zusätzliche Pakete die ich an der Stelle nicht weiter erleutern werden: <strong>color</strong>, <strong>csquotes</strong>, <strong>fontenc</strong>, <strong>glossaries</strong>, <strong>graphicx</strong>, <strong>tikz</strong> und <strong>tocbibind</strong>.</li> +</ul> +<div class="footnotes" role="doc-endnotes"> +<hr> +<ol> +<li id="fn:1"> +<p>What you see is what you get.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p> +</li> +</ol> +</div> + + + + + diff --git a/public/uses/index.html b/public/uses/index.html new file mode 100644 index 0000000..af97c42 --- /dev/null +++ b/public/uses/index.html @@ -0,0 +1,133 @@ + + + + + + +What I use | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    What I use

    + +

    Nobody ever asked me what I'm currently using, but I decided to tell you anyway.

    + +

    Hardware

    +
      +
    • MacBook Pro 2015
    • +
    • iPhone X
    • +
    • Apple Watch SE
    • +
    • AirPods Pro
    • +
    • Logitech MX Master 3 (rarely)
    • +
    +

    Software

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    CategorySoftware
    Unless otherwise statedApple default apps
    RSS readerNetNewsWire
    NotesObsidian
    To-Do listThings
    Text editorNeovim, Helix
    Word processingTypst
    Window managerAmethyst
    Terminal emulatorKitty
    Package managerNix, Homebrew
    + +
    + +
    +
    + +
    + + +
    + + + + diff --git a/public/xmr.txt b/public/xmr.txt new file mode 100644 index 0000000..ce346eb --- /dev/null +++ b/public/xmr.txt @@ -0,0 +1,26 @@ + + + █▀▀▀▀▀█ ▄▄█ ▄ █▄ ▀ ▄▀█▄▄█▄▄ █▀▀▀▀▀█ + █ ███ █ ▀▄ ▄ ▄▄█▀▄▀▀ ▄▄█▄█ ▀ █ ███ █ + █ ▀▀▀ █ █▀█ █▀▀▄█ █▄▀ ▀ ▄██ █ ▀▀▀ █ + ▀▀▀▀▀▀▀ █ █▄▀ ▀ ▀▄▀ ▀▄█ █ ▀▄▀ ▀▀▀▀▀▀▀ + ▀█ ▀▄ ▀█ ▄ ██▄▀ █▄███▄▄▀ █ ▄ ██▀ ▀▀▄ + ▀ █▄▀█ ████▄ ▄ █▀██ █▄█ ▀▄ ▄▀▀▄▀ + ███ ▀▀▀██▀ █ ▄█▀█ ▄ ▄▄██▀██▀██▀ ▄▄█▀ + ▄██▀█ ▀▄ ▄▀█ ▄▄ █▄ ▄▄▄▀▄█▄ ▄▀▀█ ▀ ▄▀ + ▀▄ ▄▀█▀▄▄ █ █▄▄ █▀ ▄▀█▀▄▄▀ ▄█▀▀▀█▄ ██ + ▄▀▄ ▀█▀▀▄▀█ █▄██▀▄ █▀▄ ▀▀ ▄█▀█▀ ▄██ + ▀▄▄█▄ ▀▄▄▄▀▄ ▄▀▀ ▀ ▀▄█▀██▄██▀ ▄▀ + ▄▄▀█▄ ▀█▄ ▀ █ ▄▀▀▄█▀█▄ ▄█▀ ▀█ █▄ ▀██ + ▄▀█▄▄▀ ▄█▀▄█ ▀▀█▄▄█▄ ▄▄▀ █▄ █▄ █ + ▀▄ ██▀▀ ▀ ▄ ██ ▄▄█▄▄▀▄██ ▄▄▄▄▄█▄▀▀ █▀ + ▀▀▀ ▀ ▄▀ ▀ ▀▄▄█ ▄█ ▀▀ █▄ ██▀▀▀███▄▄ + █▀▀▀▀▀█ ▀▄▄▄ ▄ ▄▄ ▄█▄▄▀▀ ▀█ ▀ █▀█ █ + █ ███ █ ▄ ▀██ █▀█ ▀ ▄▀▄▀▀ ██▀█▀▀▀ + █ ▀▀▀ █ ▄█▀██▄█▄▀ █▀▀▄ ▄▄█▀▄▀ █ ▀▀ + ▀▀▀▀▀▀▀ ▀▀▀▀▀ ▀▀ ▀▀ ▀ ▀▀▀ ▀▀ ▀ ▀▀ + + +83ZtE7cBnsyTmBb5A79aDm637mCKWKuhGZZ3ZaQvjmpA5qwL6sejWEcKQnXF5Qd3N4XNCp4fbouTi9kUi8vNgPrfDQaEBMZ + + diff --git a/public/xmr/index.html b/public/xmr/index.html new file mode 100644 index 0000000..986ab1d --- /dev/null +++ b/public/xmr/index.html @@ -0,0 +1,85 @@ + + + + + + +Monero | Jan Kremer + + + + + + + + + + + + + +
    +

    Jan Kremer

    + + + + +
    +
    + +
    + + + +
    + +

    Monero

    + +

    + +

    Address

    +
    83ZtE7cBnsyTmBb5A79aDm637mCKWKuhGZZ3ZaQvjmpA5qwL6sejWEcKQnXF5Qd3N4XNCp4fbouTi9kUi8vNgPrfDQaEBMZ
    +

    QR

    +

    XMR

    +

    OpenAlias

    +
    jankremer.eu
    +
    xmr.jankremer.eu
    +
    +
    + +
    +
    + +
    + + +
    + + + + diff --git a/static/android-chrome-192x192.png b/static/android-chrome-192x192.png new file mode 100644 index 0000000..a75479d Binary files /dev/null and b/static/android-chrome-192x192.png differ diff --git a/static/android-chrome-512x512.png b/static/android-chrome-512x512.png new file mode 100644 index 0000000..f2d6983 Binary files /dev/null and b/static/android-chrome-512x512.png differ diff --git a/static/apple-touch-icon.png b/static/apple-touch-icon.png new file mode 100644 index 0000000..3a0d069 Binary files /dev/null and b/static/apple-touch-icon.png differ diff --git a/static/btc.txt b/static/btc.txt new file mode 100644 index 0000000..513b8a9 --- /dev/null +++ b/static/btc.txt @@ -0,0 +1,24 @@ + + + █▀▀▀▀▀█ ▄█ ▄▄▄█▄▄█▀▀▀▀▀▀ █▀▀▀▀▀█ + █ ███ █ ▄█▀█ ▄███▄▀▄▀▀▄▀ █ ███ █ + █ ▀▀▀ █ ▄ █ ▀▀▀▄▀▄ ▀▀ ▀ █ ▀▀▀ █ + ▀▀▀▀▀▀▀ ▀ ▀ █ █ ▀ ▀ ▀▄▀▄▀ ▀▀▀▀▀▀▀ + █▀███▄▀███▀ ▀█▀ ▄▀ ▄█▄▄▄▄▀▄▀ █▄▀▄ + ▀▄▄▄██▀▀▄█▄█▀ ██▀▀█ ▄▄▀▄▀▄ ▀▄ ▄█ + ▄██▄ █▀ ▀█▄▀▄▄ ▀▄█▄█▄▄▀▄ ▄▄▀▀▀ ▄▄ + ▄██ ▀ ▀▀▀ ▀ ▄█▀█▀ ▄▄▀▄▀▄▀ ▀█▀▄██ + ▄███▄ ▀▄ ██ ▀ ▀▀█▀▄▄█▄▄▄▀▀▄▄▀▀▄▄▄ + █▀ ██▀▀ ██▀█▀ ▄█▀ ▄▄▀▄▄ ▄█▀ ██▄▄ + █▄▄ █▄▀ ▀▄▀▄▄▄▀▄█▄▄▀▄██▀▄▄ ▀ ▄ + █ ██▀▀▀▀▄▄ ▄█▀██▀▀▄ █ ▀ ▄▄▀▄ + ▀ ▀ ▀▀ █▄█ ▀ ▀ ▄█ █▄▄▀ █▀▀▀██▄ ▄ + █▀▀▀▀▀█ ▀█ █▀ ▄█▀▀█▄ ▄▀██ ▀ █ █▀▄ + █ ███ █ █ ▄▀▄▄▄▀█▀▀▄█▄▀▄▀█▀▀██▄██ + █ ▀▀▀ █ █ ▀ ▄█▀█ ▀ ▄ ▄▄▄▀█▀ ▄▄█ + ▀▀▀▀▀▀▀ ▀▀▀ ▀ ▀ ▀ ▀ ▀ ▀ ▀ ▀ + + +bc1qf8qjt4gut2la8k4v3emfv7wrj6f3pfcjrj3slplnwrldkz7hqmaqaju7ym + + diff --git a/static/eth.txt b/static/eth.txt new file mode 100644 index 0000000..dced83d --- /dev/null +++ b/static/eth.txt @@ -0,0 +1,22 @@ + + + █▀▀▀▀▀█ ▄▀ ▄██▀▄██ ▀▀ █▀▀▀▀▀█ + █ ███ █ ▀███▀▀▀▄█▀▀▄▀ █ ███ █ + █ ▀▀▀ █ █▄ ▄ █▄▄▀ ▄ █ ▀▀▀ █ + ▀▀▀▀▀▀▀ █▄▀ █ ▀▄█▄▀ ▀ ▀▀▀▀▀▀▀ + ▀▀▄█ ▄▀█▄ █▄ ▄█▀▀▄█▀▀ ▀▀▄ + ▀█ ▄▄▀▀█▄▀▀ █ ▄ ▄█▄ ▄█ ▀█ ▄ + ▄ ████▀ ▄▄▄▄█ ▀ █▄ ▄ █▀█ ▄▀ + █▀▀ ▀█▀ █ ▀ █ ▄ █ ▄▄▄█ ▀▀▀█▀ + ▄ ▄█▄▀▀▀█▄▀ ▀ ▄▀█▀▀ ▄▀ ██ █ + ▀ ▀▄ ▀▀█▀▄▄▄ █ ▄▄▄ ▄█ ▄ ██ + ▀ ▀▀ ▀ █▄▄██ █ █ ▀█▀▀▀█ █ + █▀▀▀▀▀█ ▀▀▄██▀▀ ▀ ▄▄█ ▀ █▀█ + █ ███ █ ▄███▀▄▀ ▄██ █████▄ ▄▀ + █ ▀▀▀ █ ▄ ▄█▀ █▄▀█ ▄█ ▀▄▀▄▀ + ▀▀▀▀▀▀▀ ▀ ▀ ▀▀ ▀▀▀▀▀ ▀ ▀ + + +0xc4cBDf9f57cb0229d19d885D5E4033a6223EDef7 + + diff --git a/static/favicon-16x16.png b/static/favicon-16x16.png new file mode 100644 index 0000000..da2e954 Binary files /dev/null and b/static/favicon-16x16.png differ diff --git a/static/favicon-32x32.png b/static/favicon-32x32.png new file mode 100644 index 0000000..be43825 Binary files /dev/null and b/static/favicon-32x32.png differ diff --git a/static/favicon.ico b/static/favicon.ico new file mode 100644 index 0000000..7e3df9c Binary files /dev/null and b/static/favicon.ico differ diff --git a/static/fonts/EBGaramond-Italic-VariableFont_wght.ttf b/static/fonts/EBGaramond-Italic-VariableFont_wght.ttf new file mode 100644 index 0000000..60d3c5a Binary files /dev/null and b/static/fonts/EBGaramond-Italic-VariableFont_wght.ttf differ diff --git a/static/fonts/EBGaramond-VariableFont_wght.ttf b/static/fonts/EBGaramond-VariableFont_wght.ttf new file mode 100644 index 0000000..fded838 Binary files /dev/null and b/static/fonts/EBGaramond-VariableFont_wght.ttf differ diff --git a/static/fonts/static/EBGaramond-Bold.ttf b/static/fonts/static/EBGaramond-Bold.ttf new file mode 100644 index 0000000..b73dee0 Binary files /dev/null and b/static/fonts/static/EBGaramond-Bold.ttf differ diff --git a/static/fonts/static/EBGaramond-BoldItalic.ttf b/static/fonts/static/EBGaramond-BoldItalic.ttf new file mode 100644 index 0000000..852be7c Binary files /dev/null and b/static/fonts/static/EBGaramond-BoldItalic.ttf differ diff --git a/static/fonts/static/EBGaramond-ExtraBold.ttf b/static/fonts/static/EBGaramond-ExtraBold.ttf new file mode 100644 index 0000000..ec163f4 Binary files /dev/null and b/static/fonts/static/EBGaramond-ExtraBold.ttf differ diff --git a/static/fonts/static/EBGaramond-ExtraBoldItalic.ttf b/static/fonts/static/EBGaramond-ExtraBoldItalic.ttf new file mode 100644 index 0000000..ae09f36 Binary files /dev/null and b/static/fonts/static/EBGaramond-ExtraBoldItalic.ttf differ diff --git a/static/fonts/static/EBGaramond-Italic.ttf b/static/fonts/static/EBGaramond-Italic.ttf new file mode 100644 index 0000000..0f76a8e Binary files /dev/null and b/static/fonts/static/EBGaramond-Italic.ttf differ diff --git a/static/fonts/static/EBGaramond-Medium.ttf b/static/fonts/static/EBGaramond-Medium.ttf new file mode 100644 index 0000000..fd40af3 Binary files /dev/null and b/static/fonts/static/EBGaramond-Medium.ttf differ diff --git a/static/fonts/static/EBGaramond-MediumItalic.ttf b/static/fonts/static/EBGaramond-MediumItalic.ttf new file mode 100644 index 0000000..8e580f5 Binary files /dev/null and b/static/fonts/static/EBGaramond-MediumItalic.ttf differ diff --git a/static/fonts/static/EBGaramond-Regular.ttf b/static/fonts/static/EBGaramond-Regular.ttf new file mode 100644 index 0000000..d3d6f3f Binary files /dev/null and b/static/fonts/static/EBGaramond-Regular.ttf differ diff --git a/static/fonts/static/EBGaramond-SemiBold.ttf b/static/fonts/static/EBGaramond-SemiBold.ttf new file mode 100644 index 0000000..bd724ce Binary files /dev/null and b/static/fonts/static/EBGaramond-SemiBold.ttf differ diff --git a/static/fonts/static/EBGaramond-SemiBoldItalic.ttf b/static/fonts/static/EBGaramond-SemiBoldItalic.ttf new file mode 100644 index 0000000..c0efa36 Binary files /dev/null and b/static/fonts/static/EBGaramond-SemiBoldItalic.ttf differ diff --git a/static/jankremer.asc b/static/jankremer.asc new file mode 100644 index 0000000..3f8ad4a --- /dev/null +++ b/static/jankremer.asc @@ -0,0 +1,13 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEZPMs8hYJKwYBBAHaRw8BAQdAX0e5nbopqP7IfFY1pKKiMsUC35TJfjgblEkW +MyHWP9+0HkphbiBLcmVtZXIgPG1haWxAamFua3JlbWVyLmV1PoiZBBMWCgBBFiEE +IK8KZZ8rk62RhBXRp9ponLOweOwFAmTzLPICGwMFCQWjmoAFCwkIBwICIgIGFQoJ +CAsCBBYCAwECHgcCF4AACgkQp9ponLOweOwldwEAkrOJkWKWD5xb1tyjxsN7xv3Z +/+f2jfwjOpSvzSilFxABAKfg+5uwB3VkQkVLR1FQw4n8+0601q1YPMwvEgZBoBcM +uDgEZPMs8hIKKwYBBAGXVQEFAQEHQEAe8yDKs9UQtv9R9wZSlpYcZaB8O2Bq/vF/ +cvJg7QlpAwEIB4h+BBgWCgAmFiEEIK8KZZ8rk62RhBXRp9ponLOweOwFAmTzLPIC +GwwFCQWjmoAACgkQp9ponLOweOyAvAD9GfldBbFfo00DuPKN6vkYUlPWvR4Et9Lx +GLzhh3dPeVEBAI400aRQCqSNtr40aRiuPDZWOXFfVa6lCfYpiXAE4eYF +=A2Jw +-----END PGP PUBLIC KEY BLOCK----- diff --git a/static/pharmacist-0.txt b/static/pharmacist-0.txt new file mode 100644 index 0000000..a9f5d1d --- /dev/null +++ b/static/pharmacist-0.txt @@ -0,0 +1,15 @@ + ▄▄▀▀▄▀▀▀▀▀▀▀▀▄▄ + ▄▀ █ + ▄▀ ▄▄▄ █ + █ ▄▀▀▀ ▀▀▀▀▀▀▀█▀ + ▀▄▄█▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄ + █ █ █ + ▀█▀▄ ▄▀▄ ▄▀ + █ ▀▀▀▀▀ ▀▀▀▀█ + █ █ + █ ▀▀▀▀ █ + █ ▄▀ + █ █▀▀▀▀▀▀ +▄▀▀▀▄ ▄▀▀▀▄ +█ ▀▄▀ █ +█ █ ▀▀ █ diff --git a/static/qr.txt b/static/qr.txt new file mode 100644 index 0000000..c87f921 --- /dev/null +++ b/static/qr.txt @@ -0,0 +1,15 @@ + + + █▀▀▀▀▀█ ▄ █ █ █▀▀▀▀▀█ + █ ███ █ ▀ ▀▀▄ █ ███ █ + █ ▀▀▀ █ ███▀▀ █ ▀▀▀ █ + ▀▀▀▀▀▀▀ █ ▀ ▀ ▀▀▀▀▀▀▀ + ▀█▄█▄ ▀█▄ ▀█▀ ▀██▄▀█▄ + ███▄▄▀▀▀▄ ▀▀▄ █▀ █▀▄▀ + ▀▀▀▀ ▀▀▄▀ █ ▀ █ ▄ ▄ + █▀▀▀▀▀█ ▀██▀▀▄▀▀▀▀ █ + █ ███ █ ▄▄▄██▀ █▄ ▄▄▄ + █ ▀▀▀ █ ▄▀ ▀▀▄ █▀▀ ▀ + ▀▀▀▀▀▀▀ ▀ ▀ ▀ ▀ ▀ + + diff --git a/static/rss.xsl b/static/rss.xsl new file mode 100644 index 0000000..760ee40 --- /dev/null +++ b/static/rss.xsl @@ -0,0 +1,144 @@ + + + + + + + + <xsl:value-of select="/rss/channel/title"/> Web Feed + + + + + + +
    +
    +

    + + + + + + + + + + + + + + + + + + + Web Feed Preview +

    +

    +

    + + + + + Visit Website → + +
    +

    Recent Items

    + +
    +

    + + + + + + +

    + + Published: + +
    +
    +
    + + +
    +
    diff --git a/static/safari-pinned-tab.svg b/static/safari-pinned-tab.svg new file mode 100644 index 0000000..c26c0f2 --- /dev/null +++ b/static/safari-pinned-tab.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + diff --git a/static/site.webmanifest b/static/site.webmanifest new file mode 100644 index 0000000..45dc8a2 --- /dev/null +++ b/static/site.webmanifest @@ -0,0 +1 @@ +{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file diff --git a/static/xmr.txt b/static/xmr.txt new file mode 100644 index 0000000..ce346eb --- /dev/null +++ b/static/xmr.txt @@ -0,0 +1,26 @@ + + + █▀▀▀▀▀█ ▄▄█ ▄ █▄ ▀ ▄▀█▄▄█▄▄ █▀▀▀▀▀█ + █ ███ █ ▀▄ ▄ ▄▄█▀▄▀▀ ▄▄█▄█ ▀ █ ███ █ + █ ▀▀▀ █ █▀█ █▀▀▄█ █▄▀ ▀ ▄██ █ ▀▀▀ █ + ▀▀▀▀▀▀▀ █ █▄▀ ▀ ▀▄▀ ▀▄█ █ ▀▄▀ ▀▀▀▀▀▀▀ + ▀█ ▀▄ ▀█ ▄ ██▄▀ █▄███▄▄▀ █ ▄ ██▀ ▀▀▄ + ▀ █▄▀█ ████▄ ▄ █▀██ █▄█ ▀▄ ▄▀▀▄▀ + ███ ▀▀▀██▀ █ ▄█▀█ ▄ ▄▄██▀██▀██▀ ▄▄█▀ + ▄██▀█ ▀▄ ▄▀█ ▄▄ █▄ ▄▄▄▀▄█▄ ▄▀▀█ ▀ ▄▀ + ▀▄ ▄▀█▀▄▄ █ █▄▄ █▀ ▄▀█▀▄▄▀ ▄█▀▀▀█▄ ██ + ▄▀▄ ▀█▀▀▄▀█ █▄██▀▄ █▀▄ ▀▀ ▄█▀█▀ ▄██ + ▀▄▄█▄ ▀▄▄▄▀▄ ▄▀▀ ▀ ▀▄█▀██▄██▀ ▄▀ + ▄▄▀█▄ ▀█▄ ▀ █ ▄▀▀▄█▀█▄ ▄█▀ ▀█ █▄ ▀██ + ▄▀█▄▄▀ ▄█▀▄█ ▀▀█▄▄█▄ ▄▄▀ █▄ █▄ █ + ▀▄ ██▀▀ ▀ ▄ ██ ▄▄█▄▄▀▄██ ▄▄▄▄▄█▄▀▀ █▀ + ▀▀▀ ▀ ▄▀ ▀ ▀▄▄█ ▄█ ▀▀ █▄ ██▀▀▀███▄▄ + █▀▀▀▀▀█ ▀▄▄▄ ▄ ▄▄ ▄█▄▄▀▀ ▀█ ▀ █▀█ █ + █ ███ █ ▄ ▀██ █▀█ ▀ ▄▀▄▀▀ ██▀█▀▀▀ + █ ▀▀▀ █ ▄█▀██▄█▄▀ █▀▀▄ ▄▄█▀▄▀ █ ▀▀ + ▀▀▀▀▀▀▀ ▀▀▀▀▀ ▀▀ ▀▀ ▀ ▀▀▀ ▀▀ ▀ ▀▀ + + +83ZtE7cBnsyTmBb5A79aDm637mCKWKuhGZZ3ZaQvjmpA5qwL6sejWEcKQnXF5Qd3N4XNCp4fbouTi9kUi8vNgPrfDQaEBMZ + +