16.48. cdist-type__dot_file(7)¶
16.48.1. NAME¶
cdist-type__dot_file - install file under user's home directory
16.48.2. DESCRIPTION¶
This type installs a file (=__object_id) under user's home directory, providing a way to install per-user configuration files. File owner and group is deduced from user, for who file is installed.
Unlike regular __file type, you do not need make any assumptions, where user's home directory is.
16.48.3. REQUIRED PARAMETERS¶
- user
User, for who file is installed
16.48.4. OPTIONAL PARAMETERS¶
- dirmode
forwarded to __directory type as mode
- mode
forwarded to __file type
- state
forwarded to __file type
- source
forwarded to __file type
- file
forwarded to __file type This can be used if multiple users need to have a dotfile updated, which will result in duplicate object id errors. When using the file parameter the object id can be some unique value.
16.48.5. MESSAGES¶
This type inherits all messages from file type, and do not add any new.
16.48.6. EXAMPLES¶
# Install .forward file for user 'alice'. Since state is 'present',
# user is not meant to edit this file, all changes will be overridden.
# It is good idea to put warning about it in file itself.
__dot_file .forward --user alice --source "$__files/forward"
# Install .muttrc for user 'bob', if not already present. User can safely
# edit it, his changes will not be overwritten.
__dot_file .muttrc --user bob --source "$__files/recommended_mutt_config" --state exists
# Install default xmonad config for user 'eve'. Parent directory is created automatically.
__dot_file .xmonad/xmonad.hs --user eve --state exists --source "$__files/xmonad.hs"
# install .vimrc for root and some users
for user in root userx usery userz; do
__dot_file "${user}_dot_vimrc" \
--user $user \
--file .vimrc \
--state exists \
--source "$__files/$user/.vimrc"
done
16.48.7. SEE ALSO¶
cdist-type__file(7)
16.48.8. COPYING¶
Copyright (C) 2015 Dmitry Bogatov. Free use of this software is granted under the terms of the GNU General Public License version 3 or later (GPLv3+).