

The line between what is a hack and what is basic performance optimisation is both subject to taste and use-case. Horses for courses, right?


The line between what is a hack and what is basic performance optimisation is both subject to taste and use-case. Horses for courses, right?


It does, I quite like mimalloc though I prefer to have programs compiled with their custom allocator rather than inserting them via LD_PRELOAD as I’ve found some issues when using it with programs like Firefox.


Saying musl is preferable if speed is important is a bit…loaded. It’s not always untrue, but it often is.
As a libc, musl has a much smaller footprint than glibc, so a computer which is short on memory capacity, memory bandwidth, or cache size could absolutely see a performance benefit. The flipside to this is that a lot of the ‘bloat’ in glibc are performance tricks including lots of architecture specific code.
As others have mentioned, the malloc implementation is less than ideal and can slow down highly threaded & memory intensive applications.
I work on a musl-based embedded distribution for my day-job, and also quite like using it personally for arm boards and my old ThinkPad. I wouldn’t really use it for my workstation though.
As far as applications working with musl, it’s not uncommon to see glibc-specific code which would need to be patched out of some applications (systemd comes to mind).


Start with a portable hard drive which only has one job “store a copy of your critical data”.
It’s a paranoid set of rules, but if this data is critical, this is a good idea. Even better is to have an additional copy of that data in cloud storage.
As far as operating system, you absolutely can use a Linux machine, but learning a new system risks you accidentally deleting data so be careful. Linux has ways of reading windows-formatted hard drives, so as much as I prefer Linux, I would say don’t try new things on the machine which hold critical data.


Fair enough, I also would have expected tailscale to set itself as the default route when those options are enabled.


What are your route & dns settings? I don’t remember if tailscale forces all DNS queries to go via it’s tunnel, but I remember that the mullvad client uses DNS hijacking to make sure the device uses the wireguard tunnel.
Is this on a fresh install, or have you installed a Wayland DE on an existing distro? If so, you may be missing some packages. What DE are you using for both X and Wayland?
I’m surprised wlr-randr is missing a display that xrandr can see, they should be looking at the same place for the display info. If you hunt through dmesg do you see any errors related to “EDID”?
The past is definitely not a guide for how to achieve a future society or how that society should look, but it does remind us that a society without a state can exist.
It’s not the hard part, but when we’re told that thoughts of a stateless society are fantastical it’s good to remember that it has been done before.
I use NixOS, but it is not for learning how Linux works; realistically it’s for when you already know how Linux typically works, so you can understand when it breaks some of those norms.
If you want to learn how containers etc work, use straight-up Debian.
I really don’t recommend arch for a server. On a desktop absolutely but what I want for a server is to be able to let it sit for 6 months, then update it and not have everything break; arch works best with frequent update hygiene.


I used nushell for a good 6 months, it was nice having structured data, but the syntax difference to bash which I use for my day job was just too jarring to stick with.
Fish was (for me) the right balance of nice syntactic sugar and being able to reasonably expect a bash idiom will work.
Browsers are one of the most important things to update on your computer.
We can talk about whether browsers should be as complicated as they are, but implying security updates are a intended as a vector of control is conspiricist thinking.
The reason you don’t get security updates backported to your older release of choice is simple: it is so much work.
Waterfox seems like a good choice, just don’t go around thinking that companies are making security updates in order to sneak in unwanted, they make security updates because they are terrified of being responsible for a major incident.
If any were it’s not like we would know, secrecy being rather important to that kind of activity.


Most GPUs will have fan spin & lights if only on pcie power (the pcie slot provides 75W without external connection), but then misbehave during display; I know it sounds stupid but make sure the 12V power connector on the top of the card is firmly plugged in, that connector in particular has a reputation for being unreliable.


I remember old Tesla and Firepro drivers had a jank, proprietary alternative to SR-IOV but didn’t think any vendor (except Intel with i915 GVT-g) had an implementation for their consumer devices.


Software to allow partitioning gpu resources among multiple virtual machines instead of just assigning the one PCIe device to a single VM. Very useful for having a single GPU do 3D acceleration on a host and multiple guests at the same time.
Your personal files e.g. ~/Documents are not recreated, you’ll still need backups of those.
caveats are you’ve got to use:
But all this can be written in the one flake, so yes nixos-install --flake <GIT URL>#<HOSTNAME>
Is sufficient for me to rebuild my desktop, laptop or server from the same repository.
I’ve never used Gentoo, and I’m sure there are other methods of achieving the same level of reproducibility but I don’t know what they are.
Nixos can be as modifiable as Gentoo with the caveat being it’s a massive pain in the ass to do some things. I have a flake for making aarch64-musl systems which has been an endeavour, and… It works? I have a running system that works on 2 different SoCs. I do have to compile everything quite often though.
There are efforts to recreate Nixos without systemd, but that’s a huge effort; because it’s very “infrastructure as code”, you have to change a lot of code where editing a build script would’ve sufficed on arch/Gentoo.
As for nix vs guix, guix was described to me as “if you only ever want to write in scheme”, whereas nix feels much more like a means to an end with practical compromises spattered throughout.
Perhaps, but when I accidentally nuked my system by dd’ing to one of the hard drives, being able to install the exact same system back onto it by pointing the installer to my git repository was an excellent experience.


Statically linking is absolutely a tool we should use far more often, and one we should get better at supporting.


Tailscale edits /etc/resolv.conf, since your DNS isn’t working start by making sure that file is how the archwiki suggests rather than what tailscale changes it to.
An uninstalled tailscale may still have left that file modified.
My cat will attempt to eat anything he thinks is intended to be food, so I have to wrestle him down. Be glad yours only sniffs.