LINUX.ORG.RU

Как написать dotfiles?

 


0

3

Здравствуйте! Как создаются dotfiles, и как научится лепить dotfil'ы? Просто, иногда приходиться устанавливать образы на разных компах, и настраивать всякие плюшки, и на все это тратится время очень долго и муторно. В гитхабе, смотрю в основном опытные линуксоиды, всегда создают свои точечные файлы, для следующих установок на разных железах. Как всему этому научится? Вы сами пользуетесь dotfiles в GitHub'е?



Последнее исправление: Hufoc (всего исправлений: 4)
Ответ на: комментарий от E

Сюда уже смотрел?

Да! Там, только готовые решения в основном. Но, мне нужно, именно как научится создавать свои точечные файлы, со своими запилеными конфигами?

Hufoc
() автор топика
Ответ на: комментарий от Hufoc

Ну вот и возьми его install.sh за основу. Сама идея очень простая: у тебя в dotfiles-repo есть директория vim. Скрипт убеждается, что ~/.vim не существует и создаёт симлинк на dotfiles/vim.

E ★★★
()
Ответ на: комментарий от E

То есть как я понял, это и есть по сути линкирование на dotfiles? Без bash программировании это трудно осилить, так?

Hufoc
() автор топика

ну вот создай директорию dotfiles, в ней

git/hg init

Туда скопируй нужные файлы, допустим .zshrc->zshrc .config/mc/ini -> ini .vimrc -> vimrc и т.д.

потом git/hg add + commit + push в свой удаленный репо

На другой машине git/hg clone и уже делаешь

ln -s ~/dotfiles/vimrc ~/.vimrc
ln -s ~/dotfiles/vim ~/.vim
ln -s ~/dotfiles/zshrc ~/.zshrc

я как то так накидал, но еще нужно править

https://github.com/xggrnx/dotfiles

ggrn ★★★★★
()
Последнее исправление: ggrn (всего исправлений: 1)
Ответ на: комментарий от Hufoc

То есть как я понял, это и есть по сути линкирование на dotfiles?

Да. Возможно, продвинутые менеджеры типа homesick ещё какие-то настройки имеют, но основа - это создание ссылок. Это главный минус такого подхода, но он самый простой.

Есть ещё вариант bare dotfiles: в git загоняется вся домашняя директория. Ссылки создавать не надо, потому что все файлы естественно хранятся, но минусы там тоже свои есть, и настройка тоже будет нужна.

Я у себя перенёс все конфиг-файлы в ~/.config, понадобились дополнительные настройки для приложений, которые не умеют в .config. В git теперь можно класть сам .config и почти не делать ссылок, но в первоначальной настройке сложнее остальных.

Без bash программировании это трудно осилить, так?

Можно на любом языке, я делал на python. Если не хочется программирования вообще - возьми существующий менеджер или чужой скрипт как пример, ничего сложного там нет.

А если синхронизировать конфиги между машинами не обязательно, а нужно один раз при установке накатить какой-то дефолтный образ - лучше rsync возьми.

E ★★★
()

https://www.gnu.org/software/stow/
В интернете валом просто ссылок по запросу dotfiles stow.
Без необходимости ковыряться вручную с ln или переносить всё в ~/.config.
А велосипеды не нужны.

d_a ★★★★★
()
Последнее исправление: d_a (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.