A Rust GitOps/symlinkfarm orchestrator inspired by GNU Stow.
Find a file
Christina Sørensen c9b00adb57 chore(version): bump to v0.2.0
** [0.2.0] - 2023-07-07

*** Bug Fixes

- Made categories with only links possible

*** Features

- [**breaking**] Put links in categories

*** Miscellaneous Tasks

- Filled out Cargo.toml
- Added test.yaml to gitignore
- Fixed up code, roadmap for bump

*** Refactor

- Simple code quality changes

*** Testing

- Refactored testing, added tests dir

** [0.1.2] - 2023-07-03

*** Features

- Implemented quiet flag

*** Miscellaneous Tasks

- Bump to v0.1.2

Signed-off-by: Christina Sørensen <christina@cafkafk.com>
2023-07-07 04:13:59 +00:00
bin feat(git): made SUCCESS/FAILURE emoji const 2023-07-03 11:34:22 +02:00
doc chore: fixed up code, roadmap for bump 2023-07-07 04:13:59 +00:00
src chore: fixed up code, roadmap for bump 2023-07-07 04:13:59 +00:00
tests test: refactored testing, added tests dir 2023-07-07 04:13:59 +00:00
.gitignore chore(git): added test.yaml to gitignore 2023-07-07 04:13:59 +00:00
Cargo.lock chore(version): bump to v0.2.0 2023-07-07 04:13:59 +00:00
Cargo.toml chore(version): bump to v0.2.0 2023-07-07 04:13:59 +00:00
CHANGELOG.md chore(version): bump to v0.2.0 2023-07-07 04:13:59 +00:00
cliff.toml doc(git-cliff): added git cliff config 2023-07-02 10:45:39 +02:00
CODE_Of_CONDUCT.md initial commit 2023-06-08 18:50:09 +02:00
flake.lock refactor: removed unused code from flake 2023-06-18 19:34:51 +02:00
flake.nix refactor: removed unused code from flake 2023-06-18 19:34:51 +02:00
LICENSE initial commit 2023-06-08 18:50:09 +02:00
README.org doc(readme): added asciinema demo 2023-07-03 16:22:48 +00: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 (hardly, but eventually) testing helps ensure regressions aren't introduced.

That said, we're in 0.Y.Z, here be dragons for now (although a little less each commit).

Installation

$ git clone https://github.com/cafkafk/gg
$ cd gg
$ cargo install --path .

Configuration

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

$ mkdir -p ~/.config/gg/
$ cp src/test/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.