Comments (3)
While aconfmgr looks awesome, as a new user i want to be rather careful with attempting my first few "apply" commands onto my live system.
aconfmgr will prompt for a confirmation before every system modification. With --paranoid
, it will ask twice for some operations, or ask for individual items for batch operations.
Is it possible to restore/apply into a separate directory or chroot?
Not at the moment.
That would make it pretty easy to run apply "safely" and then compare it against the real system, to see how correct apply was, and to find any issues with permissions, files not being restored properly etc, without breaking the main system.
Not to dismiss your concern, but I feel fairly confident in aconfmgr's capability to apply the specified configuration as it is specified. There is a very thorough test suite as well as matrix tests which test every possible combination of configuration/system state.
If this is not supported, I suppose the next best thing would be to restore into a VM, which brings another question: what needs to be in place, at a minimum, in order for aconfmgr to operate? A blockdevice? A filesystem? A full arch linux installation ?
A full Arch Linux installation capable of running pacman
and bash
. There are some other dependencies, which aconfmgr will install if they're missing as part of its execution.
You may find the integration test suite mode of aconfmgr useful, as it tests aconfmgr against a real Arch Linux installation in a Docker container.
from aconfmgr.
this is looking promising. I didn't look at the tests yet in depth but I decided to gave a full save-check-apply cycle a run, and nothing seems to have broken :) i compared against and older backup and nothing particular stood out. nice work.
I still think restoring into a separate directory could be useful, e.g. when building a VM or building a new system on a locally mounted hard drive. Note that pacman has a --root
flag which allows to install packages in dirs other than /
which should make this easy. (assuming package post/pre-install scripts don't have bugs).
Either way it's not a feature I really need, so if no one else asks for it, then let's forget about it and close this.
from aconfmgr.
I still think restoring into a separate directory could be useful
I agree. Another use case would be using aconfmgr
to scrub and repair another system without booting or chrooting into it (because perhaps e.g. it is completely broken, or is suspected of being compromised).
from aconfmgr.
Related Issues (20)
- Shell Script Syntax HOT 3
- package `expect` gets installed and uninstalled on every run of `aconfmgr apply` HOT 2
- Getting prompted about `Restoring a52dec file /usr/bin...` HOT 14
- Inline fstab entry without saving or overwriting genfstab-generated portion? HOT 3
- documentation for IgnorePath syntax HOT 2
- factoring out base group? HOT 1
- [Bug]: Inconsistent ownership of /usr/lib/node_modules HOT 3
- [Bug]: Changed file duplicates `CopyFile` in 99-unsorted HOT 2
- [Bug]: Insecure permissions for file copies HOT 1
- Glitches out with --yes HOT 6
- Duplicate "provides" packages are not uninstalled HOT 1
- [Bug]: Some symlinks don't work HOT 2
- Weird behaviour on Arch Linux 32: Asking for overwriting files with no changes HOT 10
- Inline editing with `CopyFile` ?
- Incorrect modes on files after change
- first run does not work with a swapfile HOT 7
- aconfmgr snags after finishing backup - never returns to command line HOT 2
- Fatal error on first run, "Copying file <file> to temporary storage would exhaust free space" HOT 2
- PKGDEST modification prevents to update the configuration HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aconfmgr.