Forge Home


Puppet module to configure Vundle.


1,789 latest version

5.0 quality score

Version information

  • 0.1.4 (latest)
  • 0.1.3 (deleted)
  • 0.1.2
  • 0.1.1
  • 0.1.0 (deleted)
released Feb 3rd 2020
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2016.4.x
  • Puppet >= 4.10.0 < 7.0.0
  • Darwin

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'frozenfoxx-vundle', '0.1.4'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add frozenfoxx-vundle
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install frozenfoxx-vundle --version 0.1.4

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



frozenfoxx/vundle — version 0.1.4 Feb 3rd 2020


Table of Contents

  1. Description
  2. Setup
  3. Usage
  4. Reference
  5. Limitations
  6. Contribute


This is a module designed to configure and install Vundle, the plug-in manager for Vim. It has been designed with Linux and Unix systems in mind for Puppet 4+. Separate installations of Vundle for every user are easily handled which gives a great degree of flexibility.

While not required due to the complexity of some of the options Hiera's usage is strongly encouraged.


Setup Requirements

  • Git
  • Vim
  • Puppet >= 4.0
  • Facter >= 5.0

Beginning with vundle

Getting started with Vundle is as simple as including the module with the name of the user desired:

vundle::installation { 'username': }

Additional options can be attached easily:

vundle::installation { 'username:'
  plugins => [ 'someuser/someplugin', 'otheruser/someplugin'],

If using Hiera which is highly recommended you'll end up with this:

puppet code

$vundleusers = lookup('vundleusers', { ‘merge’ => ‘hash’ })
create_resources('vundle::installation', $vundleusers)


      - 'vundlemaker/vundleplugin'
      - 'vundlemaker2/vundleplugin'


Vundle is installed and configured on a per-user basis. You're going to want to as a result use the defined type, vundle::installation { 'username': }. To create many, it's recommend to use a hash in Hiera and use a create_resources call to do this, like so: puppet code:

$userList = lookup('vundle-users', { ‘merge’ => ‘hash’ })
create_resources('vundle::installation', $userList)

hiera file:

      - 'vundlemaker3/vim-someplugin'
    path:     '/home/notnormal/user2'
      - 'vundlemaker4/vim-otherplugin'
      - 'L9'

If desired, this plugin can also install Vim easily by setting viminstall => true.


  • name: used as the username to install Vundle under.
  • path: path to the user's home. Default: /home/${name}
  • plugins: array of strings for Plugin lines in the .vimrc. Default: []
  • viminstall: allows installing Vim directly. Default: false


This module has only been tested on Ubuntu systems. It will likely work with others but has not been tested at this time.


  • Fork it
  • Create a topic branch
  • Improve/fix
  • Push new topic branch
  • Submit a MR