Crates.io | chezmoi_modify_manager |
lib.rs | chezmoi_modify_manager |
version | 3.5.0 |
source | src |
created_at | 2023-04-07 13:19:06.302425 |
updated_at | 2024-09-06 20:21:36.14751 |
description | Chezmoi addon to patch ini files with mixed settings and state (experimental rust branch) |
homepage | |
repository | https://github.com/VorpalBlade/chezmoi_modify_manager |
max_upload_size | |
id | 832926 |
size | 287,428 |
[ User Manual ] [ lib.rs ] [ crates.io ] [ AUR ]
Addon for chezmoi that deals with settings files that contain a mix of settings and state. So far handling INI-style files are supported.
A typical example of this is KDE settings files. These contain (apart from settings) state like recently opened files and positions of windows and dialog boxes. Other programs (such as PrusaSlicer) also do the same thing.
The program in this repository allows you to ignore certain sections of those INI files when managing the configuration files with chezmoi.
See the user manual for the full documentation on how to use
chezmoi_modify_manager
.
This is the main mode and reason for the existance of this tool.
chezmoi_modify_manager
allows you to:
key=a,b,c,d
)For detailed usage instructions see the user manual.
The command can also be used to add files (see chezmoi_modify_manager --help
for details):
.src.ini
if they are already
managed, otherwise add with plain chezmoi)..src.ini
).chezmoi_modify_manager
also allows filtering the added files when re-adding
them after they changed:
add:hide
directive), useful in case of passwords
that comes from keyrings.add:remove
directive (useful in
combination with set
and a templated modify script).For detailed usage instructions see the user manual.
The binary is self-contained with no non-optional system dependencies apart from the platform provided basic libraries (typically libc & libm on Linux).
Requirements to build (if there is no native binary for your platform):
Platforms:
Platform | Architecture | Continuous Integration | Tested manually |
---|---|---|---|
Linux with Glibc | All major | Yes | Yes (x86-64, ARM64) |
Linux with Musl | All major | Yes | Yes (x86-64) |
Windows | x86-64 | Yes | No |
MacOS | x86-64 | Yes | No |
The above table is limited to what I myself have access to (and use) as well as what works in GitHub CI. Other Unixes are likely to work, if Rust has support.
The current Minimum Supported Rust Version (MSRV) is documented in the previous
section. The MSRV may be bumped as needed.
It is guaranteed that chezmoi_modify_manager
will at least build on the current
and previous stable Rust release. An MSRV change is not considered a breaking
change and as such may change even in a patch version.