This.
At first, org-mode in emacs (https://orgmode.org) seems like a needlessly quirky way just to keep nested lists of notes. Then you wish it could also act as a TODO list, tracking status of TODO, DONE, WORKING, and whatever other arbitrary states you like (and it does). Then you want checkboxes with some notes (and there they are). Then you decide o split your monolithic notefile into multiple files but search across them all (which you can). You realize you want part of the notes in a table (and it resizes automatically and there it is). You decide you hate the default selection of hierarchical bullets, so of course you change them. Etc.
You can start simply (and it won't be compellingly good yet). But as you begin to want just one more feature, one more tweak, one more... you just keep layering them in. Soon you realize there's nothing else out there that can cover your personally-developed set of features.
And it runs on pretty much anything, is free (both in cost and in modifiability), is plain-text internally (so you can always get at the essentials in a software desert situation), and has a deep user base to query for help. Use an external sync and backup system to put updated copies wherever you'll need them (parent post here uses git, I use my file server's sync system [Synology Drive]).
Try it.