Version information
This version is compatible with:
- Puppet Enterprise 2023.8.x, 2023.7.x, 2023.6.x, 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x
- Puppet >= 7.0.0 < 9.0.0
- , , , ,
Start using this module
Add this module to your Puppetfile:
mod 'ghoneycutt-vim', '4.0.0'
Learn more about managing modules with a PuppetfileDocumentation
vim
Table of Contents
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with vim
- Usage - Configuration options and additional functionality
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
Description
This is a very simple module to manage Vim. It manages the packages, the
.vimrc
configuration file and populates a few syntax files for Puppet.
This is meant to make vim useful on servers with some basic, sane
settings. It is not meant to manage a developer's workstation where you
would be managing a ton of plugins and configuration.
Documented with Puppet Strings at http://ghoneycutt.github.io/puppet-module-vim/.
Setup
What vim affects
This module manages the /root/.vimrc
file and /root/.vim
directory,
which gets some plugins installed. It also manages the related vim
packages for the platform.
Beginning with vim
Declare the vim
class.
Usage
The normal use case.
include vim
To specify the package list.
class { 'vim':
package_list => ['vim', 'vim-whatever'],
}
Limitations
This module officially supports the platforms listed in the
metadata.json
. It does not fail on unsupported platforms and has been
known to work on many, many platforms since its creation in 2010.
Development
See CONTRIBUTING.md
License
See LICENSE file.
Reference
Table of Contents
Classes
vim
: This module manages Vim
Classes
vim
This module manages Vim
Examples
include vim
Parameters
The following parameters are available in the vim
class:
package_provider
package_list
root_vimrc_source
root_vimrc_path
root_vimrc_owner
root_vimrc_group
root_vimrc_mode
root_vim_dir_source
root_vim_dir_path
root_vim_dir_owner
root_vim_dir_group
root_vim_dir_mode
package_provider
Data type: Optional[String[1]]
The puppet provider to be used for the package resources.
Default value: undef
package_list
Data type: Array[String[1]]
List of vim packages to be present.
Default value: ['vim-common', 'vim-enhanced']
root_vimrc_source
Data type: String[1]
Value of the source parameter used in the file resource for managing
.vimrc
.
Default value: 'vim/vimrc'
root_vimrc_path
Data type: Stdlib::Absolutepath
Path to the .vimrc
configuration file.
Default value: '/root/.vimrc'
root_vimrc_owner
Data type: String[1]
Owner of the .vimrc
file.
Default value: 'root'
root_vimrc_group
Data type: String[1]
Group of the .vimrc
file.
Default value: 'root'
root_vimrc_mode
Data type: Stdlib::Filemode
Mode of the .vimrc
file.
Default value: '0644'
root_vim_dir_source
Data type: String[1]
Value of the source parameter used in the file resource for managing the
.vim
directory.
Default value: 'vim/vim'
root_vim_dir_path
Data type: Stdlib::Absolutepath
Path to the .vim
directory.
Default value: '/root/.vim'
root_vim_dir_owner
Data type: String[1]
Owner of the .vim
directory.
Default value: 'root'
root_vim_dir_group
Data type: String[1]
Group of the .vim
directory.
Default value: 'root'
root_vim_dir_mode
Data type: Stdlib::Filemode
Mode of the .vim
directory.
Default value: '0644'
Change log
All notable changes to this project will be documented in this file. The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
v4.0.0 (2023-11-15)
Merged pull requests:
v3.0.0 (2022-09-17)
Added
- Use PDK and support Puppet 7 #40 (ghoneycutt)
v2.13.0 (2019-01-04)
Merged pull requests:
- Add support for Puppet 5 & 6 #37 (Phil-Friderici)
- Support Puppet >= 4.10 #36 (Phil-Friderici)
v2.12.0 (2016-11-03)
Merged pull requests:
- Support Ruby 2.3.1 and fix dependencies #35 (ghoneycutt)
v2.11.0 (2015-10-31)
Merged pull requests:
- Turn on hlsearch which highlights search results #34 (ghoneycutt)
- Fix Travis-ci matrix so that each feature release is tested #33 (ghoneycutt)
- Test against latest bugfix of each feature release #32 (ghoneycutt)
v2.10.0 (2015-05-21)
Merged pull requests:
- Support puppetv4 #31 (ghoneycutt)
- Add support for the future parser in Puppet v3 #30 (ghoneycutt)
- Stdlib 460 #29 (ghoneycutt)
v2.9.1 (2014-11-05)
Merged pull requests:
- Don't manage package vim-base for Suse 11, 12 #27 (anders-larsson)
v2.9.0 (2014-10-16)
Merged pull requests:
- Specify provider #26 (ghoneycutt)
v2.8.0 (2014-09-29)
Merged pull requests:
- Support Ubuntu 12.04 and 14.04 #24 (ghoneycutt)
v2.7.0 (2014-09-27)
Merged pull requests:
- Support solaris 10 and 11 #23 (ghoneycutt)
v2.6.0 (2014-09-27)
Merged pull requests:
- El7 #22 (ghoneycutt)
v2.5.0 (2014-09-09)
Merged pull requests:
- Add SUSE 12 support #20 (eabecho)
- Add spec tests for passing an array as the package name #19 (ghoneycutt)
v2.4.1 (2014-01-30)
Merged pull requests:
- Support Puppet v3.4.x and Ruby v2.0.0 #18 (ghoneycutt)
v2.4.0 (2014-01-25)
Merged pull requests:
- Travis #16 (ghoneycutt)
- Remove Travis work around for ruby v1.8.7 #15 (ghoneycutt)
v2.3.0 (2014-01-16)
Merged pull requests:
- Support suse 10 #14 (ghoneycutt)
- Update spec tests for rspec-puppet v1.0.0 #12 (ghoneycutt)
v2.2.0 (2013-11-21)
Merged pull requests:
- Test Puppet v2.7, since we say it is supported #11 (ghoneycutt)
- Add support for Debian 6 #10 (ghoneycutt)
v2.1.0 (2013-11-20)
Merged pull requests:
- Added SLES support, fixed file permissions #9 (Phil-Friderici)
- Normalize travis testing #7 (narf-)
- Travis testing #6 (ghoneycutt)
- Spec tests with ebrdann #5 (ghoneycutt)
- Provided documentation #3 (MWinther)
2.0.0 - 2013-05-16 Garrett Honeycutt code@garretthoneycutt.com
- Rebirth
* This Changelog was automatically generated by github_changelog_generator
Dependencies
- puppetlabs/stdlib (>= 8.0.0 < 10.0.0)
Copyright (C) 2010-2023 Garrett Honeycutt <code@garretthoneycutt.com> Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.