It must:
1. Support mediaapi - not be confused about where Whatsapp puts its images.
2. Allow management of files.
3. Be able to provide basic organization (folders/sorting[per folder]/cover images)
4. Support all modern image formats used by phones and the web.
5. Not crash.
6. Not delete/corrupt files by accident.
7. Be able to play modern video/audio files (pick top 20 popular codecs)
Is the source open and with a OSS-compatible licence? Then it's open source, not freeware nor shareware.
Red Hat has nagging too.
The _goal_ of open source is to provide free software. Software that is free to _use_ now, and in the future, not _just_ free to get the source, free to use. If you don't provide free software (and free build processes) it's not compliant with Open Source licences.
Paid binaries are permitted but you must be _willing_ to to give away your software free of cost.
Aguably nagware is a deliberate annoyance and time cost to the user that makes it not "free to use". Adding crippleware (making it not work after a period of time) is certainly forbidden.
If your are writing nagware with oss license no-one will take you to court, because they can fix it, but it's certainly deceptive. It imies you don't want your software to be free to use.
OS licenses were not designed as a marketing tool for individual developers to get you a foot in the door. You can do that, but don't be surprised if you get called out for it. That is not the _purpose_ of OS.
That's the purpose of a free tier.
As a RedHat customer I don't find any of the software use daily to be suffering from nagware.
If grep had nagware in it, I'd bitch about it on HN.
No, the goal of Open Source is to provide a user with ability access the source and do things to it. That's the difference between the Open Source and Free Software championed by FSF. FSF flopped. That's why we are still waiting for the Hurd to be useful.
Source: Sat in the room with Bruce Perens when this was happening.
Don't enter your license key and you'll see
Why does CentOS exist?
My point is that if you want to make money for your code, either get a job writing software or create a business around the software you wrote.
I think open source should be created by people not trying to make money from it. I understand that not everyone feels this way, and I sometimes agree with the arguments. However, my overall feeling is that supporting open source work should come in the form of companies supporting their employees to work on open source work that is valuable for the company employing those people. They contribute to open source not because they are trying to make money from that work, but because they use that software to support their main money making work, and get more value by sharing the work than keeping it fully internal.