To make the desktop experience bearable: AltTab, Forklift, Rectangle, Ukelele, DisplayControl, Amphetamine, Firefox, Thunderbird, qView and duti to set the latter three up as the defaults.
As a package manager I'm pretty happy with nix-darwin, now I get all the CLI tools there, and what isn't packaged, like wireshark for example, I get through my nix-controlled homebrew.
Coming from a Linux userland you might want to replace some coreutil packages with their GNU variants. I ran into one case where the GNU grep was much faster than the BSD version preinstalled in macOS for example.
What I haven't found a good solution to yet is Filesystem support. Both NTFS and ext4 are missing. I currently have a Linux VM just for that. I think Paragon sells a driver, have been meaning to look into it more, but haven't.
Edit: To be fair to macOS the App called Preview is a pretty good PDF reader in my view.
PS: If you ever need to use dd on macOS, be aware that there are /dev/rdisk handles instead of /dev/disk for the un-buffered access. Its significantly faster for dd shoveling.
PPS: You will probably have to turn off what they call "natural" scroll. macOS inverts the default for some reason.