Thanks for looking into this.
There are quite a few other git
-like tools which also require classic confinement.
dvc
uses git
(amongst other things) under-the-hood (which as-is requires classic
confinement: see the git-ubuntu
snap), but also does git
-like things in and of its own regard.
This includes a core feature of allowing users to save and re-run any arbitrary command involving external binaries (not just python
). Unlike git config alias NAME '!ARBITRARY_BINARY'
, though, running external binaries is a commonly used core feature of dvc
. This includes dvc run
and dvc repro
. The former feature is important enough to be listed on the landing page (https://dvc.org/):
$ dvc add images
$ dvc run -d images -o model.p cnn.py
$ dvc remote add myrepo s3://mybucket
$ dvc push
We really did try to use classic
(https://github.com/iterative/dvc/compare/537d51b5351926732566256369189ed7a63e4208..f6e92184e389f95ed39b109f40fbe41de1f3cf9f) but even if we could fix the other issues, dvc run
would not work.
Note that dvc
is OSS-approved Apache 2.0 licensed with full source code and automatic CI snap building online, so it’s also clear that it’s not abusing classic
privileges.