I think offering code as open source and then charging for support is very typical. E.g. MySQL, Red Hat, etc. But that is probably only profitable after a ton of people are using the software in question.
If you are releasing a new thing, you won't have an existing install base, so probably better to charge for licenses. After you get a fanbase, you can crowdfund your version 2.0 or related material.