[HN Gopher] Rotz: Cross platform dotfile manager written in Rust
___________________________________________________________________
Rotz: Cross platform dotfile manager written in Rust
Author : thunderbong
Score : 56 points
Date : 2024-04-08 17:01 UTC (5 hours ago)
(HTM) web link (volllly.github.io)
(TXT) w3m dump (volllly.github.io)
| syslog wrote:
| This is really an unfortunate name - literally ,,snot" in German.
| ranaexmachina wrote:
| I'm pretty sure that's intentional. ;)
| Gualdrapo wrote:
| It seems they're fully aware of it - the logo in the website is
| a nose emoji.
| tauchunfall wrote:
| Also repository owner seems to be from Austria.
| rrr_oh_man wrote:
| Related: Wix (Website Builder) --
| https://www.youtube.com/watch?v=v2L4G1_eVOk
| kekebo wrote:
| You may be seeing a feature as a bug
| VMG wrote:
| Means snot in German
| rrr_oh_man wrote:
| I guess that's where the nose comes from
| _the_inflator wrote:
| Yes, kind of my first thought, and it reminded me of similar
| fun stuff like Wix, Mitsubishi Pajero, etc.
|
| The developer seems to be from Austria, so yeah, he knew what
| he was doing.
| williadc wrote:
| To the folks who missed the nose next to the name of the app, I
| needed a second look.
| alkh wrote:
| Is there any specific benefit of using this instead of GNU stow
| besides the Windows support(for Linux/OS X only folks)?
| baublet wrote:
| Oh neat. It seems useful to manage this through a CLI tool! I
| wonder if something like this can build in protections for common
| dot file mistakes like accidentally committing API keys in one's
| dot files?
|
| Nice idea!
| mksybr wrote:
| You can put something like detect-secrets[1] in a commit hook.
| no_secrets=$(git diff --staged --name-only -z | xargs -0
| detect-secrets-hook --baseline .secrets.baseline) test -z
| $no_secrets && exit $no_secrets
|
| 1: https://github.com/Yelp/detect-secrets
| rawkode wrote:
| Reminds me of my own project, Comtrya
|
| One of our goals is to run anywhere too, we have support for BSD
| as well as Windows, macOS, and Linux; as well as first class
| variant support for "define once, run everywhere" functionality.
|
| Our core lib is available and built to support other dot file
| managers, perhaps it could be useful to you.
|
| https://github.com/comtrya/comtrya
| stndef wrote:
| I'm yet to look at your project, but I can't say Comtrya
| without thinking about Stargate, so I'm kinda sold already.
| CapeTheory wrote:
| "This is...better?" :-)
| hkwerf wrote:
| Comtraaaya! :)
| nuphonenuacc wrote:
| I don't get those dotfile managers. I just have a git repo with a
| branch for every machine. And my dotfiles are in many formats,
| not just yaml toml and JSON...
| __float wrote:
| Are your per-machine branches mostly distinct, or do they share
| a lot?
|
| I use https://github.com/thoughtbot/rcm and I find my dotfiles
| share _quite a bit_ in some respects (e.g. neovim config) but
| are drastically different in others (SSH config as one example)
| -- keeping things synced _across_ branches sounds very
| difficult. rcm handles this well, without branches, IMO.
| MuffinFlavored wrote:
| > I just have a git repo with a branch for every machine.
|
| Aren't you supposed to "not" commit secrets/sensitive values to
| git repos as "best practice"?
| dark-star wrote:
| I guess it's a private repo...
| pvorb wrote:
| Perhaps SSH/GPG private keys are .gitignored?
| kaashif wrote:
| Where does their comment indicate they commit secrets?
| Ugohcet wrote:
| I also don't get these, but for another reason: why write a
| dotfiles-specific configuration management tool with
| templating, conditions and all of that when we already have
| proper SCMs like salt or ansible that perfectly scale down to a
| single user and a small number of configs, but are still orders
| of magnitude more powerful when you need it.
| throwaway894345 wrote:
| I will do a lot of work to avoid having to touch ansible and
| friends. Fortunately, I don't have to do a lot of work
| because I spent 10 minutes writing a 50 line Go program a
| decade ago that has done everything I've needed it to do in
| the interim (IIRC the only change I made to it was supporting
| Go modules back in ~2015).
| beaugunderson wrote:
| > not just yaml toml and JSON
|
| those are the formats available for configuring rotz itself;
| it's agnostic to the content of your actual dotfiles
| hysan wrote:
| How's this compare to other dotfile managers? The docs are very
| barebones and don't explain the benefits to using this, or really
| what this is doing under the hood.
| djaouen wrote:
| I just wrote my own dotfiles manager in Ruby [1]. Not too hard,
| imo.
|
| [1] https://github.com/danieljaouen/dotfiles/blob/main/Rakefile
|
| Edit: I agree that the path/old_path/new_path naming is
| confusing, I just never got around to refactoring it. :/
| dilawar wrote:
| What a coincidence. I was looking at awesome dotfiles on GitHub.
| I started thinking of jumping onto the "manage dotfile" bandwagon
| after reading today's LWN note on the GNU Stow release. I
| shortlisted Chezmoi and Comtrya to play with. Then I saw this.
| HumanOstrich wrote:
| Been using chezmoi for a while now and mostly happy with it.
| Managing most of my work and personal configs/dotfiles for
| PowerShell Core, bash, and zsh across Windows, Mac, and Linux.
|
| The only problem I've run into is that while chezmoi supports
| tracking files/directories as read-only, once they are created
| they can't be updated anymore because chezmoi isn't smart
| enough to swap them to writable and back.
| sigmonsays wrote:
| shameless plug, I wrote my own too called dotbot. I modeled it
| after the python version.
|
| https://github.com/sigmonsays/dotbot
| dark-star wrote:
| Hm, I don't think I understand how this is supposed to work. The
| documentation is very barebones and doesn't explain much.
|
| It talks about symlinking your dotfiles from somewhere else on
| your system, so is this only useful if you have multiple users
| and they share dotfiles? How does that help if you want to sync
| dotfiles between machines?
|
| Then it talks about YAML and toml formats but it's not very clear
| to me if that is the format of the dotfiles that it manages, or
| if that is only the config file for Rotz itself?
|
| Also it looks like you have to write a config file for every dot
| file you manage?
|
| This seems overly complicated to, say, a simple git repo. A
| simple example would have been helpful in the documentation I
| guess....
| gregwebs wrote:
| [chezmoi](https://github.com/twpayne/chezmoi) works okay for me.
| I like that it can add files and push them to GitHub in a single
| command
| jemmyw wrote:
| Chezmoi is great, and very fully featured. But this is one of
| those itches we're doomed to see reinvented constantly, in
| every language that is the favourite of the author, with ever
| so minor variations.
| otterpro wrote:
| I've been looking for a cross-platform dotfile management tool
| and I had some hope for this but it seems a little too complex,
| and I don't like that I would end up with lots of yaml/toml/json
| files. I use Mac, Windows, and Linux and I want to have a single
| configuration for all. I've been using
| https://github.com/rhysd/dotfiles and it is the only thing that
| really works well for me.
___________________________________________________________________
(page generated 2024-04-08 23:01 UTC)