GNU stow. Только файлы симлинков, не каталоги

GNU stow. Только файлы симлинков, не каталоги

Я хотел бы управлять своими dotfiles с помощью репозитория Git и stow.Вот мой текущий репозиторийкоторый включает файлы/каталоги, которые я хотел бы сохранить, и Makefileкоманду, которую я использую make stow.

К сожалению, я столкнулся с проблемой, когда stow обнаруживает несуществующие каталоги. Например, если я удалю свой ~/.config/yabai/каталог (чтобы сымитировать его отсутствие в новой установке) и запущу, make stowон создаст символическую ссылку на весь каталог:

$ ls -l
[...]
lrwxr-xr-x   1 adam staff   26 Mar 12 19:28 yabai -> ../.dotfiles/.config/yabai
[...]

Это вызывает проблему, поскольку если я или программа создадим дополнительные файлы в этом каталоге, они ~/.dotfiles/также появятся в моем каталоге.


Эта проблема не возникает, если каталог уже существует, поскольку в этом случае ссылки на файлы внутри него, а не на сам каталог:

$ ls -l
drwxr-xr-x   3 adam staff   96 Mar 12 19:43 yabai
$ ls -l
lrwxr-xr-x  1 adam staff  37 Mar 12 19:43 yabairc -> ../../.dotfiles/.config/yabai/yabairc

Исходя из количества людей, использующих stowдля управления dotfiles, я полагаю, что есть способ обойти это поведение. Возможно, когда сначала пересоздается структура каталогов, а затем создаются ссылки.

Связанный контент