https://wiki.archlinux.org/api.php?action=feedcontributions&user=JDevlieghere&feedformat=atom
ArchWiki - User contributions [en]
2024-03-28T23:05:21Z
User contributions
MediaWiki 1.41.0
https://wiki.archlinux.org/index.php?title=Dotfiles&diff=439277
Dotfiles
2016-06-28T22:24:16Z
<p>JDevlieghere: /* Repositories */ Added my dotfiles</p>
<hr />
<div>{{Lowercase title}}<br />
[[Category:Dotfiles]]<br />
{{Related articles start}}<br />
{{Related|XDG Base Directory support}}<br />
{{Related articles end}}<br />
This article collects user repositories with custom configuration files, commonly known as ''dotfiles''.<br />
<br />
== Version control ==<br />
<br />
Managing dotfiles with version control software such as [[Git]] helps to keep track of changes, share with others, and synchronize dotfiles across various hosts.<br />
<br />
=== Using gitignore ===<br />
<br />
Keeping a [https://git-scm.com/blog/2010/04/11/environment.html git directory] inside the home folder allows to directly keep track of changes. It is recommended to selectively add file contents to the index with [http://git-scm.com/docs/git-add git add]. <br />
<br />
To prevent untracked files (appearing in commits and removed by [http://git-scm.com/docs/git-clean git clean]), first exclude all files with [http://git-scm.com/docs/gitignore gitignore]:<br />
<br />
{{hc|~/.git/info/exclude|<br />
*}}<br />
<br />
Then use {{ic|git add -f}}, for example:<br />
<br />
$ git add -f ~/.config/*<br />
<br />
And [http://git-scm.com/docs/git-commit commit] the changes:<br />
<br />
$ git commit -a<br />
<br />
=== Other tools ===<br />
* {{App|etckeeper|Intended to version-control system-wide configuration in /etc. Works by keeping track of permissions and modes which version-control software often ignores. Can use various SCM systems as a backend. Hooks can auto-commit changes to the repository before a system-upgrade; for pacman, these hooks currently have to be triggered manually.|http://joeyh.name/code/etckeeper/|{{Pkg|etckeeper}}}}<br />
* {{App|GNU Stow|Can be used to symlink dotfiles from a repository into the $HOME tree. See [http://brandon.invergo.net/news/2012-05-26-using-gnu-stow-to-manage-your-dotfiles.html] for more information.|http://www.gnu.org/software/stow/|{{Pkg|stow}}}}<br />
* {{App|Pearl|Package manager for dotfiles, plugins, programs and any form of code accessible via git. Allow to easily share and sync packages across systems and have them ready to work out of the box.|https://github.com/pearl-core/pearl|{{AUR|pearl-git}}}}<br />
* {{App|vcsh|Allows separating differents modules (e.g., Emacs config vs. zsh config) into individual repositories which can be maintained separately, as opposed to keeping all dotfiles in a single repository. Works with git only.|https://github.com/RichiH/vcsh|{{AUR|vcsh}}}}<br />
* {{App|yadm|Manages files across systems using a single Git repository. Provides a way to use alternate files on a specific OS or host. Supplies a method of encrypting confidential data so it can safely be stored in your repository.|https://github.com/TheLocehiliosan/yadm|{{AUR|yadm}}}}<br />
* {{App|homeshick|git dotfiles synchronizer written in bash|https://github.com/andsens/homeshick|{{AUR|homeshick-git}}}}<br />
<br />
=== Maintaining dotfiles across multiple machines ===<br />
<br />
{{Style|This and the section below need a rewrite}}<br />
<br />
One way of maintaining dotfiles across various machines across various hosts while still allowing for per-host customizations, is by maintaining a master-branch for all shared configuration, while each individual machine has a machine-specific branch checked out. Host-specific configuration can be committed to the machine-specific branch; as shared configuration is added to the master-branch, the per-machine branches are then rebased on top of the updated master.<br />
<br />
=== Confidential information ===<br />
<br />
Occasionally, software may keep plain-text passwords in configuration files, as opposed to hooking into a keyring. In these cases, git clean-filters may be handy to avoid accidentally commiting confidential information. E. g., the following .gitattributes file assigns a filter to the file “some-dotfile”:<br />
<br />
<pre><br />
# .gitattributes<br />
some-dotfile filter=remove-pass<br />
</pre><br />
<br />
Whenever the file “some-dotfile” is checked into git, git will invoke the filter “remove-pass” on the file before checking it in. The filter must be defined in .git/config, e. g.:<br />
<br />
<pre><br />
[filter "remove-pass"]<br />
clean = "sed -e 's/^password=.*/#password=TODO/'"<br />
</pre><br />
<br />
== Repositories ==<br />
<br />
{| class="wikitable sortable"<br />
! scope="col" | Author<br />
! scope="col" | Shell<br />
! scope="col" | WM / DE<br />
! scope="col" | Editor<br />
! scope="col" | Terminal<br />
! scope="col" | Multiplexer<br />
! scope="col" | Audio<br />
! scope="col" | Monitor<br />
! scope="col" | Mail<br />
! scope="col" | IRC<br />
|-<br />
! [https://bitbucket.org/ambrevar/dotfiles Ambrevar]<br />
| zsh || awesome || emacs || rxvt-unicode || || cmus || htop/vicious || mutt ||<br />
|-<br />
! [https://github.com/bamos/dotfiles bamos]<br />
| zsh || i3/xmonad || vim/emacs || rxvt-unicode || tmux || mpv/cmus || conky/xmobar || mutt || ERC<br />
|-<br />
! [https://github.com/pbrisbin/dotfiles brisbin33]<br />
| [https://github.com/pbrisbin/oh-my-zsh zsh] || [https://github.com/pbrisbin/xmonad-config xmonad] || [https://github.com/pbrisbin/vim-config vim] || rxvt-unicode || screen || || dzen || [https://github.com/pbrisbin/mutt-config mutt] || [https://github.com/pbrisbin/irssi-config irssi]<br />
|-<br />
! [https://github.com/cinelli/dotfiles cinelli]<br />
| zsh || dwm || vim || termite-git || || pianobar || htop || mutt-kz || weechat<br />
|-<br />
! [https://github.com/drkh5h/dotfiles drkhsh]<br />
| zsh || dwm || vim || st || screen || cmus || conky || mutt || weechat<br />
|-<br />
! [https://github.com/Earnestly/dotfiles Earnestly]<br />
| zsh || i3/orbment || vim/emacs || termite || tmux || mpd || conky || mutt || weechat<br />
|-<br />
! [https://github.com/ErikBjare/dotfiles ErikBjare]<br />
| zsh || xmonad/xfce4 || vim || terminator || tmux || || xfce4-panel || || weechat<br />
|-<br />
! [https://github.com/falconindy/dotfiles falconindy]<br />
| bash || i3 || vim || rxvt-unicode || || ncmpcpp || conky || mutt ||<br />
|-<br />
! [https://github.com/graysky2/configs/tree/master/dotfiles graysky]<br />
| zsh || xfce4 || vim || terminal || || ncmpcpp || custom || thunderbird ||<br />
|-<br />
! [http://code.gtmanfred.com/cgit/dotfiles.git/tree/?h=tower gtmanfred]<br />
| zsh || dwm || vim || termite-git || tmux || mpd || conky || mutt || weechat<br />
|-<br />
! [https://github.com/insanum/dotfiles insanum]<br />
| bash || herbstluftwm || vim || evilvte || tmux || || dzen || mutt-kz ||<br />
|-<br />
! [https://github.com/izmntuk/archiso/tree/testing/configs/alter/airootfs/ izmntuk]<br />
| zsh || xfce4 || vim || rxvt-unicode/yaft || tmux || cmus || xfce4-panel || || irssi<br />
|-<br />
! [https://bitbucket.org/jasonwryan/shiv/src jasonwryan]<br />
| bash/zsh || dwm || vim || rxvt-unicode || tmux || ncmpcpp || custom || mutt || irrsi<br />
|-<br />
! [https://github.com/JDevlieghere/dotfiles/ jdevlieghere]<br />
| zsh || xmonad || vim || terminal || tmux || || htop || mutt || weechat<br />
|-<br />
! [https://github.com/jelly/Dotfiles jelly]<br />
| zsh || i3 || vim || termite || tmux || ncmpcpp || || mutt-kz-git || weechat<br />
|-<br />
! [https://github.com/meskarune/.dotfiles meskarune]<br />
| bash || herbstluftwm || vim || rxvt-unicode || screen || || conky || || weechat<br />
|-<br />
! [https://github.com/neersighted/dotfiles neersighted]<br />
| zsh || i3 || vim || rxvt-unicode || tmux || ncmpcpp || htop || mutt || irssi<br />
|-<br />
! [https://github.com/ok100/configs OK100]<br />
| bash || dwm || vim || rxvt-unicode || || cmus || conky, dzen || mutt || weechat<br />
|-<br />
! [https://github.com/pid1/dotfiles pid1]<br />
| zsh || dwm || neovim || termite || tmux || || custom || mutt || weechat<br />
|-<br />
! [http://hg.subtle.de/dotfiles/file unexist]<br />
| zsh || subtle || vim || rxvt-unicode || || ncmpcpp || || mutt || irssi<br />
|-<br />
! [https://github.com/vodik/dotfiles vodik]<br />
| zsh || xmonad || vim || termite-git || tmux || ncmpcpp || custom || mutt || weechat<br />
|-<br />
! [https://github.com/w0ng/dotfiles w0ng]<br />
| zsh || dwm || vim || rxvt-unicode || tmux || ncmpcpp || custom || mutt || irssi<br />
|-<br />
! [https://github.com/Wintervenom/Configuration Wintervenom]<br />
| bash || herbstluftwm ||vim || rxvt-unicode || screen ||mpd ([https://github.com/Wintervenom/Scripts/tree/master/audio/mpd mpc-utils]) || [https://github.com/Wintervenom/Scripts/blob/master/wm/herbstluftwm/hlwm-dzen2https://github.com/wolfcore/dotfiles hlwm-dzen2] || mutt || weechat<br />
|-<br />
! [https://github.com/wolfcore/dotfiles wolfcore] <br />
| bash || dwm || vim || rxvt-unicode || tmux || cmus || custom || || weechat<br />
|-<br />
! [https://github.com/xfausto/dotfiles xfausto]<br />
| zsh || dwm || vim || st || || ncmpcpp || conky || ||<br />
|-<br />
! [https://github.com/thiagowfx/dotfiles thiagowfx]<br />
| bash/zsh || i3 || vim/emacs || rxvt-unicode || || ncmpcpp || i3blocks || ||<br />
|-<br />
! [https://github.com/zendeavor zendeavor]<br />
| [https://github.com/zendeavor/config-stuff/tree/sandbag/zsh zsh] || [https://github.com/zendeavor/config-stuff/blob/sandbag/i3/config i3] || [https://github.com/zendeavor/dotvim/tree/sandbag vim] || [https://github.com/zendeavor/config-stuff/blob/sandbag/X11/Xresources#L14 rxvt-unicode] || [https://github.com/zendeavor/config-stuff/tree/sandbag/tmux tmux] || [https://github.com/zendeavor/config-stuff/blob/sandbag/ncmpcpp/config ncmpcpp] || [https://github.com/zendeavor/config-stuff/blob/sandbag/i3/i3status.conf i3status] || || [https://github.com/zendeavor/config-stuff/tree/kiwi/weechat weechat]<br />
|-<br />
! [https://github.com/bstaletic bstaletic]<br />
| [https://github.com/bstaletic/dotfiles/blob/master/.zshrc zsh] || [https://github.com/bstaletic/dotfiles/blob/master/dwm/config.h dwm] || [https://github.com/bstaletic/dotfiles/blob/master/.vimrc vim] || terminator || screen || [https://github.com/bstaletic/blob/master/.ncmpcpp/config ncmpcpp] || [https://github.com/bstaletic/dotfiles/blob/master/.conkyrc conky] || ||<br />
|-<br />
! [https://bitbucket.org/swalladge/dotfiles swalladge]<br />
| zsh/bash || i3 || neovim/vim || termite || tmux || || i3status || || ||<br />
|-<br />
! [https://github.com/awalGarg/dotfiles awal]<br />
| fish || i3 || vim || sakura || tmux || || i3status || || The Lounge ||<br />
|}<br />
<br />
== See also ==<br />
<br />
* [http://mywiki.wooledge.org/DotFiles Dotfiles - Greg's Wiki]<br />
* [http://wiki.haskell.org/Xmonad/Config_archive XMonad Config Archive]<br />
* [http://dotshare.it dotshare.it]<br />
* [http://dotfiles.org dotfiles.org]{{dead link|2015|08|16}} - [http://techie.cat/all-contents-from-dotfiles-org/ Copy of contents]{{dead link|2015|08|16}}<br />
* [https://dotfiles.github.io/ dotfiles.github.io]</div>
JDevlieghere