feat: Add Snap package manager backend
This PR adds support for the Snap package manager to pacdef.
Changes
- Add Snap backend implementation for basic package management
- Document Snap implementation details in README
- Add Snap to supported backends table
- Fix clippy warning in get_version_string()
Implementation Details
The Snap backend provides basic package management functionality while respecting Snap's unique characteristics:
- No distinction between auto/manual packages (unlike apt)
- All packages treated as explicitly installed
- No dependency management support
Documentation
- Added Snap to the supported backends table
- Added detailed documentation about how pacdef handles Snap packages
- Explained differences between Snap and other package managers (particularly apt)
Testing
Tested basic operations:
- Package installation
- Package removal
- Package listing
- Unmanaged package detection
Closes #94
Can someone tell me if the checks failing is my fault or the fault of the build system. Hate to say the words, but "it works on my machine". Seriously though clippy passes locally and the package builds, I have no idea what's going on.
I think it's a similar issue to #90 but for the apt dependency.
If you wanted to submit this PR to metapac too that would be awesome. We've already added two more backends winget and brew.
pacdef is archived, closing