There's no technical reason the font couldn't be shipped in/with the binary. The main reasons this doesn't happen are probably:
- this is what a package manager is for
- installing the font/s (from the application?) would be a bit of a dick move and also presents a technical challenge (in other words: that's what a package manager is for)
- concerns about the efficiency of many applications all shipping duplicate assets (package manager again)
- concerns about distribution rights
- not all users will want to use the same font and this is an unsolvable problem -- do you ship: no fonts | one unwanted font | the user's preferred font that they already have installed plus all the other user's fonts
My first experience running a cool-looking TUI file manager yesterday (I actually ended up trying yazi first) was that I got a lot of blank squares in place of missing icons and emojis due to missing fonts. I had to spend 20 minutes figuring that out before I got a good experience.
Interestingly, I also tried wezterm[1] in the process. It actually ships with the required fonts as fallback, but the version from my distro's package manager didn't work (the AppImage did). I'm guessing my distro removed them, maybe for some of the reasons you cited. I started installing the nerd-fonts group for my distro. 6.5GB... no thanks. After manually poking through them and some googling I finally installed a couple and it's working now.
My overall point is that it's possible for app developers to provide good defaults like wezterm does. It's also possible for distro's to break those defaults.
> not all users will want to use the same font and this is an unsolvable problem -- do you ship: no fonts | one unwanted font | the user's preferred font that they already have installed plus all the other user's fonts
For me, I would absolutely prefer one unwanted font instead of losing those 20 minutes. If I don't like the font it ships with I should be able to override it. If size is a concern then don't ship the font, but detect that I don't have a working one and offer to download a default for me.
- this is what a package manager is for
- installing the font/s (from the application?) would be a bit of a dick move and also presents a technical challenge (in other words: that's what a package manager is for)
- concerns about the efficiency of many applications all shipping duplicate assets (package manager again)
- concerns about distribution rights
- not all users will want to use the same font and this is an unsolvable problem -- do you ship: no fonts | one unwanted font | the user's preferred font that they already have installed plus all the other user's fonts