The important key is : the easier it's to access donations, the more there will be.
GrapheneOS should have a "donation" section in the settings as does Signal. It is not intrusive and makes it easier to donate. That's the first step to take in my opinion.
To stay on Signal, having a special badge that shows you are a donor is also a good thing to do. This is what Twitch does as well. The badge would be visible on the profiles of this forum, and to activate it I can see on the receipt a kind of code to put. And there should be a "donate" button on the forum that redirects to the section donate.
In a third step, have a pop up after an update that explains the different changes, without having to go through release, with a donation request at the end. This would inform the user directly what the changes are, and thus what the developers have been working on. This transparency encourages even more donations. To avoid this being too painful for users, just give the option to disable it (but it's enabled by default).
In the same idea, have a pop-up when GrapheneOs first starts up, with links to the usages & features, to the social media (forum, twitter, matrix etc) and an incentive to donate. An one time pop-up.
I'm personally against subscription ideas, making users' lives harder if they don't pay and other more extreme ideas. I think the goal of developers is to be able to share as much of their work as possible, to expand the number of users, and these measures will have the opposite effect. And more users means more potential donors.
Yes, we all want GrapheneOs to survive over time. But in my opinion doing more radical solutions is not the answer. We need to make it easier to donate, explain to users how the money is used, and give bonuses to donors without making the lives of non-donors more miserable.