Good practice, at least on Ubuntu and Debian, is to have a metapackage that then depends on the actual package(s). That would also work for us as a metapackage can be easily replaced but my gut feeling tells me this isn’t wanted either as it is probably perceived as overkill…
Why do you fear that this could be confusing? At least on Debian and Ubuntu apt will silently ignore recommended packages that aren’t available. I don’t know though how this is handled by yum/dnf and pacman. So maybe this would be indeed confusing on these other distros.
Furthermore “Just let users do it themselves” is exactly what we are trying to improve for A LOT of users. What we want to achieve is to make the setup as easy, quick and unified as possible while still allowing customizations by the users. Ideally users will install the sublime-text package and with that they will already receive a license, sane defaults and additional Sublime Text packages (Package Control). If you have a better idea how to achieve this without a config package then please let me know. Maybe I’m attacking this problem from the wrong angle…
What we don’t want though is to use software management tools like Puppet, Chef, Salt, … as we don’t know beforehand on which machines we want/need Sublime Text. We would rather leave the choice by the users if they want to install sublime-text.
With other editors/IDEs we typically have a fleet wide installed stub/minimal UI with the same name as the original and that then just asks if the respective editor/IDE should be installed on first launch. We would like to avoid that though if possible and would rather prefer a solution on the package management level.