💾 Archived View for remyabel.flounder.online › 2020-01-04-more-manual-labor.gmi captured on 2021-11-30 at 20:18:30. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

More manual labor

With a distributed workflow with `git-annex` comes manual labor and more edge-cases.

I discovered that `chcon -R` does not work the way I thought it would. You'd think that it would recursively set the context for each file/directory, but instead it takes the context of what you're referencing and applies that to each file/directory. In other words, instead of:

chcon -R --reference=foo a

We need to do:

chcon -R --reference=foo a
chcon -R --reference=foo/b baz/b

The `diff` command does not seem to take ACLs/contexts into account, so I need to check it manually. Although I'm sure I'm simply ignorant on a better way of doing things.

When double-checking each `git-annex` repo of mine, I also found a couple of other quirks:

Furthermore, there is no way that I know of to automatically copy the remotes of one repo to another. Fortunately, they exist in `.git/config` and since the UUID's do not differ you can copy them safely from one config to another.

I should probably edit `.etckeeper`'s store metadata script to do ACL's as well to overcome the `chcon` limitation. I should probably also look into automating checking that all the repos are consistent with one another and sending an e-mail if there's any oddities.