• 0 Posts
  • 5 Comments
Joined 8 months ago
cake
Cake day: June 10th, 2024

help-circle
  • Have you ever tried to use one of those superapps? It’s still a clunky experience overburdened with dozens of useless UI elements eating up screen estate of what I actually care about, and then whenever I wanted to do something for which there’s no sub-app in the super-app it would be difficult due to lack of integrations with “the outside”. That’s even before we question the idea of putting all the eggs functionality in one basket centralized app with one developer entity, allowing them to ultimately control all aspects of one’s online life.

    And more philosophically, I’m surprised that as a functional dev you prefer one big tightly coupled combine to a collection of small but useful on their own utilities lightly coupled to produce more than the sum of their parts.



  • You can try out Nix. It can be installed right there on your Kubuntu box, without any conflicts with apt or other package managers.

    It’s somewhat similar to portage with its ebuilds in that it’s source-first and allows you to set up complex dependency trees and configure every package in them. In your case it would allow you to avoid manual rebuilds and just build&install all your custom software with one command from one directory containing some .nix files that describe how to fetch, configure and compile every package. (Actually, for your dependencies those files are likely to be in nixpkgs already - you can check at https://search.nixos.org/packages. In that case, you don’t have to write any packaging instructions or even build everything, as Nix will intelligently download the binary versions which are helpfully provided by the Nix community).

    It’s quite different from most other package managers/build systems, though, being much “simpler” (it can be described as lambda calculus on files with syntax sugar) but much “harder” (the learning curve is actually a learning wall with the first section requiring mountain climbing experience and covered in barbed wire). If you’ve been maintaining builds for multiple packages by hand for years, though, it shouldn’t be too bad.