A Rust GitOps/symlinkfarm orchestrator inspired by GNU Stow.
Find a file
Christina Sørensen c8ea855451
Implemented the flag arms for license, warranty
Implemented the flag arms for license, warranty in main,
but this will not work before we make the clap Parser able
to be run without a subcommand, by wrapping the subcommand
field of the Parser struct in an Option<Command>.

Signed-off-by: Christina Sørensen <christina@cafkafk.com>
2023-06-09 18:14:06 +02:00
src Implemented the flag arms for license, warranty 2023-06-09 18:14:06 +02:00
tst initial commit 2023-06-08 18:50:09 +02:00
.gitignore initial commit 2023-06-08 18:50:09 +02:00
Cargo.lock initial commit 2023-06-08 18:50:09 +02:00
Cargo.toml initial commit 2023-06-08 18:50:09 +02:00
CODE_Of_CONDUCT.md initial commit 2023-06-08 18:50:09 +02:00
install initial commit 2023-06-08 18:50:09 +02:00
install_debug initial commit 2023-06-08 18:50:09 +02:00
LICENSE initial commit 2023-06-08 18:50:09 +02:00
README.org initial commit 2023-06-08 18:50:09 +02:00
shell.nix initial commit 2023-06-08 18:50:09 +02:00

gg - git gut

A Rust GitOps/symlinkfarm orchestrator inspired by GNU Stow. Useful for dealing with "dotfiles", and with git support as a first class feature. Configuration is done throug a single yaml file, giving it a paradigm that should bring joy to those that use declarative operating systems and package managers.

Although this isn't really a case where it matters that much for performance, being written in rust instead of e.g. janky scripting languages does also mean it is snappy and reliable, and the extensive testing helps ensure regressions aren't introduced.

That said, we're in 0.0.Z, here be dragons for now.

Installation

$ git clone https://github.com/cafkafk/git
$ ./install

Configuration

If you want a template, you can copy the file from tst/config.yaml:

$ cp tst/config.yaml ~/.config/gg/config.yaml

You should seriously change this file before running any commands.

The configuration format will likely break regularly in versions 0.Y.Z.