Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create missing directories and support relative source paths #268

Open
wants to merge 115 commits into
base: main
Choose a base branch
from

Conversation

kwiesmueller
Copy link

I created this for my own benefit, but thought it might be useful to others.
Let me know if you'd like to do this differently.

My goal was to separate my dofiles into directories a bit more, like one for my zsh files, etc.
But it's a bit annoying to replicate all the paths, so this change will (if the setting is true) prefix the source path for every dot with the relative import path.
Also duplicate keys are prefixed with their import path and there is an error message when they are found.

Additionally I create directories when missing (based on #253).

I might need/do some more tweaks based on my usage (just started onboarding to this on a new system).
For example, I'd like to have some defaulting for a dot target path too.
Most of my files are 1-1 the same name or path from source to target, so it should be possible to infer the target path based on a per-import-file prefix or based on the source path.
I'd also like to support directories as sources a bit differently. I already link some entire directories (for example for zsh plugins I checkout via a prehook), but it would be nice if a dot could specify that it's a directory that should be walked and it generates a dot for every file in the tree automagically.
Might look at that next, let me know what you think.

Also it would be nice to bump all deps, but I ran into too many issues.

mrkajetanp and others added 30 commits May 25, 2021 09:58
oknozor and others added 23 commits July 15, 2022 12:10
Since we now modify .dots generated files instead of recreating them
detecting changes this way is not an issue anymore. This allow to track
changes when profile variables get updated.
Bumps [speculoos](https://github.com/oknozor/speculoos) from 0.9.0 to 0.10.0.
- [Release notes](https://github.com/oknozor/speculoos/releases)
- [Commits](oknozor/speculoos@0.9.0...0.10.0)

---
updated-dependencies:
- dependency-name: speculoos
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
* Add privilege elevation on demand (using sudo) to allow managing system files
* Add optional hook execution in the dotfiles path (vs. bombadil cwd)
* Add an env var to hook execution providing the dotfiles dir (`BOMBADIL_DOTFILES_PATH`)
* Prefix command/hook output lines with the command
* Improve error detail for in a few places (needs more work, right now it's too hard to tell whether an error happened)
…c permissions

This is used to put files into places for tools that don't follow symlinks.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.