Description
Summary of the new feature / enhancement
Different OS/distros have different pkgmgrs: yum, apt, winget, brew, etc...
It makes sense to have individual resources for each pkgmgr to leverage their unique capabilities. However, it may also make sense to have a higher abstraction resource that provides only the common capabilities to allow for configurations that work across OS or distros.
For example, the winget configure
scenario to bootstrap a user's profile to install dependencies/tools necessary to contribute to a particular repo. In this case, the user may be running Windows, Linux, or macOS. It would be ideal to have a single yaml configuration declaring the required tooling and the appropriate pkgmgr specific resource does the install or audit.
Proposed technical implementation details (optional)
We would define a schema for the minimum common capability for audit and install scenarios. Resources that are compatible would have a well defined tag
so they are discoverable along with some additional metadata on what systems are supported. This Package Manager Resource
would then just call the appropriate implemented resource to perform the work.