Activity

janekmusin

Sorry for early devlog.

I did metric ton of things. Around half the time since last devlog was spent in the loop: 1. Install 2. Test 3. Note issues 4. Fix 5. Back to 1.

This took way, way more time than the 6h logged in this devlog, if I had to guess, I would aim in the low 30s or high 20s. From an outsider perspective I haven’t accomplished much. The end is even further than it was last devlog. I might have to ship version without mobile nixos, but we will see.

The only* small win I got is the CI/CD pipeline. I can’t recall many nixos configs with CI/CD, so this, despite not being hard at all, is somehow an achievement.

On screenshot: Proof of automated checks working

Attachment
0
janekmusin

I’ve got first “real” machine running the config, it’s using the “Server” config. I run it as my server. I have few problems with it, but those should be resolved by the end of the week.

Also, by today evening (UTC +1) I should have second machine running the config - my laptop, I’m doing final corrections to the config, but according to my best knowledge it works now.

Since last devlog I have been mainly fixing things, but there’s more to be fixed.

I can see the end now. There’re few issues I need to resolve, I need to setup CI/CD management of flake.lock, create documentation and install script, and, somehow install NixOS mobile without destroying my phone.

Attachment
0
janekmusin

It seems like my assumptions about nixos-anywhere were wrong and it can’t be used to install nixos on localhost. I spent most of those 5 hours troubleshooting that, before I realized I can’t do what I wanted to do.

I’ve deleted the ‘Desktop’ host, I won’t be installing NixOS on my main machine before trying everything up on a laptop.

I’ve also added the ‘Server’ host for my server, but setting it up is harder than I thought, mainly because of the quality of the docs.

I hope to finish this config in less than 20 hours, but I don’t think I will be able to. Not only I have to create the installation guide, but also fix few things, add the server host and few little thing, but I also “have to” fight final boss of declarative operating systems: Mobile NixOS

Attachment
0
janekmusin

I’ve done 2 things: Added a README to pypi (much easier than you could expect) and improved the docs by adding the example section+clarifying some things.

I think that’s it for this project.

Attachment
0
janekmusin

I’ve added the AGENTS.md and made a few minor fixes.

Even if you don’t use AI in your project (like I do with this project), you should add AGENTS.md to it. There’s no guarantee potential contributors won’t use AI and even if you don’t like it, it’s better to get meh AI PR than bad AI PR, at least in my opinion.

My AGENTS.md is very minimal, but just that is enough to dramatically improve quality of vibe coded PRs (tested with Gemini CLI).

Attachment
0
janekmusin

Shipped this project!

Hours: 7.47
Cookies: 🍪 68
Multiplier: 9.15 cookies/hr

I’m really happy how that turned up.

I might want to revisit this project to implement better division and other arithmetical operations (Logarithms for example), but that doesn’t seems fun nor easy enough.

I’m absolutely sure I commit lots of horrible mistakes, but “If It’s Stupid and It Works, It’s Not Stupid”

janekmusin

The package is on pypi and ready. Creating it was much funnier than I thought it would be, it was a great experience.

Attachment
0
janekmusin

Multiplication is massively improved. Complexity went from O(n1n2) where n1 and n2 are components, to O(L1L2*(L1+L2)^2) where L1 and L2 are the lengths of input strings.

In the process, I also improved addition from O(max(L1, L2)L) to O(L1L2) where L1 and L2 are the lengths of input strings.

On the first picture there is new function, on the second is the old one. New was running for little less than one second, old was running for 5 seconds.

Attachment
Attachment
0
janekmusin

Basic arithmetic is working! However, the multiplication is quite slow, so that’s a thing to be fixed.

I also need to implement more operations, +-*/ is not enough for me.

Besides that, I also want it packaged in pypi, so that’s another thing to worry about.

Attachment
0
janekmusin

The config is ready to be installed!!!

Or at least I think so.

Most of the time logged in this devlog was spent on adding the documentation, going through existing files and fixing them.

Now I only have to install, check what isn’t working , fix that and I’m done (for the desktop config, I also have 3 servers and a phone).

This is the last time the screenshot isn’t related to the actual computers I will be deploying the config to.

Attachment
0
janekmusin

The configuration should be fully working by now. I’ve finished the desktop environment config, and while I wouldn’t want to share the project, at least for now, I will begin the early tests.

Because screenshots of code are banned and I have nothing else to show, on the screenshot I have a proof that my system builds and I’ve eliminated all internal evaluation errors.

Attachment
0
janekmusin

I’ve added the example stack. It took way much work than it needed to take, but I got it done. I just have realized this is probably not the sexiest thing I could do, but I can’t really do much with that now.

Attachment
0
janekmusin

I’ve been to hell and beyond.

It’s a lot harder to partition the drive with ZFS and using tmpfs as a root, when you know nothing about those things. Doing this declaratively…

Deciding which files and directories to persist was also a hard task.

From your perspective, it appears I’ve coded for only 2 hours since the last devlog. It isn’t true. I’ve spent at least 6 hours searching configurations and surfing the internet to find what parts of the FS can’t be erased.

Attachment
Attachment
0
janekmusin

Easy parts done.

Honestly, the whole project is easy. Nix is a pretty easy language and I don’t implement any hard logic. (I might regret those words).

Attachment
0
janekmusin

Theming done!!!

I’m very proud of myself for the image svg to png block.

I also made few smaller changes and created few smaller modules

Attachment
0
janekmusin

I haven’t finished any worth mentioning. Despite that, I made lots of progress, mostly regarding smaller things. From now I will put the code of my main machine, unless I made changes to only one part.

I’m pretty happy with my AI usage with this project. Almost all of the code is still mine, which was unheard of in my previous projects.

Attachment
0
janekmusin

I finally finished the secrets config. It was harder than I expected. At least 100% of the code is mine

Attachment
0
janekmusin

I finally got balatro to open with my mod. I should’ve use the steam version from the start.

If you’re wondering what took me that long, I was troubleshooting the game not knowing where the mod directory is supposed to be.

Attachment
0
janekmusin

I created this bash script. It took me much longer than I expected, but it works.

Attachment
0