st - use another font instead of font-liberation
Is there a way an end-user can forcefully remove a package even though it is listed as a dependency?
This very sensible commit here has just showed me I've been living in blissful ignorance with regards to st
hardcoding font-liberation
in its default config.
Up until that commit, font-liberation
was not included as a dependency of the st
package, so I've been using font-freefont
(the good old ttf-font
actually :) ) all this time and I was quite happy with it. But now it seems there is no way of using that font anymore, other than recompiling st
myself. And that would be extremely annoying - I use Alpine as both my main system and also as VMs and I always install alpine from scratch, bootstrapping the whole system from zero by downloading apk-static
and continuing from there. In 5 seconds I have a fully working Alpine with dwm
and st
.
If I have to compile st
every time I want to boot a new VM, those 5 seconds would become minutes, since now I would also have to install gcc, make etc, and not only compile st
, but also dwm
, because dwm
will pull st
as a dependency and install font-liberation
. I could, of course, patch st
, but there is no escaping of having font-liberation
being installed in the system unless I build dwm
too. And worse of all, now my super-lightweight VMs running live Alpine Linux would require way more RAM than the couple of MBs I usually alloc to them!
I totally understand why font-liberation
was added as a dependency - if upstream hardcodes the darn thing, there is nothing you can do. So I'm not asking for you to remove that dependency (even though it would make things way easier :) ), but I'm asking for ideas of how I one could circumvent it.
Workarounds I came up with
1 - keep a pre-compiled version of st and dwm somewhere and use it on the VMs
The problem here is that the likelihood of me forgetting to check for security updates is extremely high.
2 - manually wipe up font-liberation
from the system
The good old # rm -r
seems to do the trick, but sounds very hacky and technically leaves me with a broken system, since apk
will still think the package is there.
Any other ideas? Would some sort of virtual st
package without the font-liberation
dependency be out of the question?