Add "transient" unlock
I was thinking a bit more recently about the "live" changes stuff https://github.com/coreos/rpm-ostree/issues/639 (particularly since https://github.com/coreos/rpm-ostree/pull/2060 ) and I realized reading the last debates in that issue that there's really a much simpler solution; do exactly the same thing we do for `ostree admin unlock`, except mount it read-only by default. Then, anything that wants to modify it does the same thing libostree does for `/sysroot` and `/boot` as of recently; create a new mount namespace and do the modifications there. The advantages of this are numerous. First, we already have all of the code, it's basically just plumbing through a new entry in the state enumeration and passing `MS_RDONLY` into the `mount()` system call. "live" changes here also naturally don't persist, unlike what we are currently doing in rpm-ostree.
This commit is contained in:
1 parent
621e1d7394
commit
f2773c1b55
6 files changed
+77
-9
No files matched your search
@@ -318,6 +318,8 @@ ostree_deployment_unlocked_state_to_string (OstreeDeploymentUnlockedState state)
|
||||
return "hotfix";
|
||||
case OSTREE_DEPLOYMENT_UNLOCKED_DEVELOPMENT:
|
||||
return "development";
|
||||
case OSTREE_DEPLOYMENT_UNLOCKED_TRANSIENT:
|
||||
return "transient";
|
||||
}
|
||||
g_assert_not_reached ();
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user