Navigation
Content
Lennart J. Kurzweg in

NixOS is the End

Featured image: .page.Title
When I started dabbling my feet in the Linux World 5 Years ago, it felt magical. Why? Well, before, it felt like I hit a ceiling with windows customization. Back then I had used a secondary keyboard with hotkeys akin to Taran Van Hermets. But it was clunky and unreliable. I tired to make windows prettier with tools like TranslucentTB or faster with tools similar to PowerToys Run, but these always just felt patched on and not like they *should* be there. So I installed I believe, Lubuntu, and while that install didn't last a day, seeing the bootup screen and something new, something unused to on the screen I had previously looked at day in day out was amazing. I quickly moved on to Arco Linux because my favorite YouTuber at the time was using it. When I got frustrated with every Arch guide only working 90%, because after all Arco was only based on Arch, I went full base Arch (btw). This allowed me to learn by reading the wiki for everything. Every time I came across something I didn't know or understand, I wrote it down to read at a later date. Then, I don't even fully remember why, I installed NixOS on a secondary (tertiary?) partition to try it out. The next 3 weeks were spent trying to recreate my arch setup. At some point, when they were equal, I deleted Arch. Then step by step I went deeper into the Nix rabbit hole: Flakes, Home-Manager, Git-Crypt, Sops, This site (moving away from docker), Nix-Shells, Nix-On-Droid, NixOS-WSL...
Lennart J. Kurzweg in

The Holy TUI Trinity

I’ve been “terminal-only”, for about two years now. This is technically a lie, since I obviously still use a normal Webbrowser and things like GIMP for photo manipulation, but the main things I do for work etc. are more or less doable with just these 3 main TUI Programs: Helix. I am writing this text here right now in Helix. The Helix editor is a vim like editor, with a couple of differences: 1. It is Motion Action, not Action Motion. 2. It is already setup with LSP, Highlighting, Tressitter etc. right out of the box. (which means it doesn’t break every update) 3. It has native multicursor support, which you can then use in combination with all the vim features like macros, registers, jumplists etc. It’s superfast and can somehow perform whole-file text searching in my home directory in seconds. The one thing it can’t really do is Debugging. In theory, it has debugging support, but its experimental, and I can’t seem to get it to work. So when I need to figure out why some library doesn’t work I still need to bust out the ol’ VS-Code. They are working on a plugin system, which supposedly would fix thing like this, but there have been no news about that in almost 2 years. It’s also easily configurable which will play a part in
Lennart J. Kurzweg in

Monochrome Dithered Wallpapers

Featured image: .page.Title
As you might have guessed from nx2sites appearance, I like bold design. The look I chose, monochrome black-red with white for readability, can be incooperated in images such as wallpapers with for example the following technique. First gather images as base of what you want. This could be a "finished" wallpaper or multiple parts you fuse together. This is what I am gonna do here. Why? Because it is easy. The "true black" plus the pixelation can hide most imperfections in fusing when done correctly. The "parts" I usually steal, so online, or via AI generation (which is stealing). Here are the parts I chose this time: And yes, sometimes I even choose stuff less edgy, but not today. Then you put them together in a way you like. Here some tricks are helpful. Since you will make the whole thing monochrome in the end anyway, you can "delete color" here in this step to make easing the background easier. Let color>Posterize be your friend! Also, if you want the dither effect you should choose a smaller canvas size. Make sure you can easily multiply that size to your desired size. I went with a 1280x720 canvas size for my 2560x1440 monitor. Once you got your layout ready, next worry about colors. Everything that is not red (in my case here, you could choose any other color) will be black. Because in the end on top of the rest you put a darken-only with pure red, this will "only let through" the red channel. So "master" with that in mind. Also you probably want to black out the dark areas totally and brighten the bright with the Color>Curves tool, otherwise you'll have end up with a dither result that is very messy.
Lennart J. Kurzweg in

Emotional Hardship

Featured image: .page.Title
I had just finished writing 10h+ a day for my bachelor's thesis, so I had no "holidays" or anything similar for quite some time. Then arriving here in Darmstadt, and everything being dramatically worse than I hoped for (regarding the living conditions), obviously was a mental hit. Then the OPhase (getting-to-know phase) of the Uni was for someone like me, really not helping. I went in again with too high expectations - I didn't like how things were at my previous Uni, with everyone doing their own things alone, so I wanted to make good friends fast. But the phase started with everyone mixed, and not in the groups we would be in during our studies, so any friends you made in the beginning would become at most acquaintances really quick. Unfortunately, I overestimated my social battery again, so when It actually came to being in "our" groups, I was already grasping at straws. The thing is, I usually realize too late that I am grasping at straws, so my battery doesn't end up on 0 but on -1. Which means that the next day, I am already done with everything mentally before anything even starts. But because I wanted things to be different from my previous university, I forced myself to go again. So -1 became -10. Why so bad? Forced social interaction with strangers is hard, but it gets harder if you have to speak English all the time (I am German after all) and especially if you have to speak English 1. realy loudly because the environment is loud and 2. your conversation partner cannot speak English as well as you can. So you have to rephrase your sentences all the time to not include "complicated" words and still end up worrying that the person you were talking to didn't understand. Then add some cute girls to the mix (not allowing you a break ("What would they think of you?")), and you got the perfect recipe to go from -10 to -100. Having to recover from a -100 in a room with a floor that is so dirty that clothes that fall on the ground then carry visible stains; with basically no working shower; with only mobile Internet; a way smaller bed than you are used to, close to a wall you are not sure you want to touch; a stove not really working; a floor so sticky that walking sounds funny; a bunch of normal house-hold items missing; a fridge with no space and mold (?) all over it; and probably most importantly noone else you trust there, turns out to be pretty hard. (Who would have guessed right?) So I ended up calling my parents a bunch, it helped. But when they didn't pick up (they were busy being stuck in a foreign country themselves), it just hit me like a truck. I basically instantly started crying again. The thing is, I am doing this because I wanted to. Masters is even more voluntary than Bachelors. I worked so hard to get accepted here, I researched for days, I wrote emails; I called the university and the Studentenwerk a million times. All this work for this? I *hate* it here. I could be home right now with my nice room, nice kitchen and nice bathroom. I could watch all the series on my list, play all the games I have no time for usually. I could maybe visit a foreign country, like my brother does all the time. All I ever do is work or study. Why? What hit me even more was the realization, if I were to quit here and now, I would be even more lost. Like what, am I supposed to go and find work now? Who the fuck wants some bachelors with no real work experience in their company? Also, wherever this work would be, it would not be close to my parents home, so I would have to move again, and then go through all this again in a different city. But then there wouldn't even be a OPhase where I could meet new friends.
Lennart J. Kurzweg in

Eduroam on NixOS

Featured image: .page.Title
If you run esoteric Linux distributions like NixOS you know that if places do not provide tutorials that go down to the files - it can be hard to get things working. Unfortunately, this was (is? 2024) the case at my Uni. This is how you can gain access to an Easy-Roam Eduroam (Like it is/was the case for my Uni HSMW). For how to get access to an Eduroam Eduroam read below (last heading). Here is how I got everything working. Go to cat.eduroam.org, click on download, sign choose your University, sign in if necessary. You should land on www.easyroam.de/User/Generate, where it only offers a .deb package for Linux. There, click on Manual options below the main window. There, choose PKCS12 give it a name (doesn't matter what) and download the .12 file.
Lennart J. Kurzweg in

Why I dont selfhost my E-Mail

Since I selfhost many things on my Server and use open source whenever I can, why is main email a Gmail address? Well I'd love to indulge in the OG thing to selfhost - that being an Email Server, there is just one problem: Why we can't have nice things It being very easy to buy a random domain and send emails from it, makes it so, that people obviously misuse this opportunity to send spam - and scam people. And to be clear: I don't mean that I'd be spammed if I were to use an email like `[email protected]`, I mean that the big players like Google, Microsoft or Proton would just block the email, or sort everything that comes originates from it, straight into spam. Which would obviously defeat the reason to use email in the first place. There are guides from Google and so on that list things to do so that your email gets accepted, but the common knowledge is, that it just doesn't *really* work.
Lennart J. Kurzweg in

Android Theming

Featured image: .page.Title
One of the reasons why I will probably never use an iPhone is because I like to cutomize my phones viusals next to the functionality aswell. Something in which Android just wins incredibly hard over iOS. Here are some screenshots of my phones homescreen and ui over from over the last ~3 years. Design Goals: OLED black (#000000) in as many places as possible, because black pixels turn off on my phone. Continuing the OneUI-Idea of making everything usable with one hand. That means having "apps" down low, for one thumb to reach. Color independence, so you can change wallpapers and accent colors without having to redo your whole setup. Minimal Interaction. I am not going to swipe 50 times to get to an app. I use Nova Launcher Prime 8.0.6 Beta (or the newest one there is). I even bought it with *cash money*, but if you are not into that, the free version also offers a lot. There are of course other way to get the pro version, but I of course don't recommend that. ( ͡° ͜ʖ ͡°) The main reason for the launcher over, for example Lawnchair 2, is that you can set an action for swipe up AND down on an app. So for example the message bubble on the main screen above Google Translator, is Signal on press, WhatsApp on swipe up, and down for SMS/RCS messages. It's like having modifier keys like Ctrl or Alt on a Computer. Swipe down on white-(black)-space will open novas fuzzy app search, which lets me access everything that isn't there otherwise.
Lennart J. Kurzweg in

ASCII-Art Grub Theme

Featured image: .page.Title
The image above is my grub screen. The face and the stuff around is not a background image. Instead, these are individual lines of characters. In the bottom right you can see my Boot menu. To prove this: here is the ascii art itself: 1. Set a theme in /etc/default/grub for example. 2. Add this to your theme.txt file. Or change it to your preferred design. Things to consider You can add more than just the boot menu. See 7.3.5. of the GNU Theme-file-format Manual for more. You do not have to specify the font in the theme.txt file. It is probably easier to just specify the GRUB_FONT parameter in the /etc/default/grub file once. You will want to know how wide your screen is if you either want to use your own design, or your screen is different from mine. For me, it was 193 characters long. To find out just put in a string like so and see where it cuts off: You may read this, if you want to know how I make my ASCII-Art. You may use this python script to convert your ASCII-Art to the label { ... } stuff. It'll just print it, you then can copy it and paste it into your theme.txt If you just copied my code, make sure that you have Terminus-32.pf2 in your /boot/grub/fonts/ directory If your custom theme doesn't appear even though you specified it through setting GRUB_THEME in /etc/defaults/grub and then ran sudo update-grub, you might want to check that all the files and folders have the right permissions (sudo chmod 664 and sudo chown root:root) I use this theme on my NixOS based Laptop. Refer to the highlighted lines here on how to do it. Also, yes, you apparently do need to make it a git repository for this to work. If you find a way to do this "gitless" message me [email protected].
Lennart J. Kurzweg in

My ASCII-Art

Featured image: .page.Title
Well, it started with a Gemini capsule. If you don’t know "Gemini" is an alternative protocol to http(s), it is 100% text based, so there are no Images and no CSS styling. I made that `gemini://nx2.site` capsule before I made this website here, so when I shut that capsule down (It was just for fun) and moved to the “normal” web, I just kept the general design language. Now I wear it like a banner – a unique point that sets nx2.site apart from other sites. It also has the advantage that you just have to load Text files, which are smaller than big images. I make ASCII art in “binary”, that means no shading as in “greys”. With my style there are a area is either Black or white. I choose "round" characters if I can. With just these you can do some amazing things for example your own little terminal greeters A great alternative are the Braille Unicode Characters in which you can do something like this
Lennart J. Kurzweg in

Fandom wall-art

Featured image: .page.Title
So, when I moved to my dorm room here for university, it was a box with 4 white walls. Not very welcoming. So, I decided to draw once again, or rather paint canvases for my walls. Since I wanted to stay on a budget, I decided to go for a style which only requires 4 colors of acrylic paint. Bonus Points: It all looks it belongs together. I start by finding a nice image I want to work on - or in some cases I make the Image myself *(like with the photomode in CP2077)*. I focus on shows, movies, and games I love - so there is a lot of material. Then I edit the image in GIMP - Background removal, color adjustments, and finally a self-defined filter, that basically posterizes the image (It's more complicated than that, but this is not a GIMP-scripting tutorial). I usually have to tweak parameters and in the end I fuse different ones together so I have "multiple different parameter-versions" in one (For example eyes usually require more contrast to look good). When I'm happy with the image, I grid it and paint it. I'm not a good painter so I have to take it slow and do so much work digitally. Because for me at least, it's way easier to correct mistakes digitally (and I make lot of ~~mistakes~~ [Happy little accidents]) than revising the painting.

Pagination