Commit 557d795770f16415f208585875002563fc179eec
1 parent
ebe5a55a9c
Exists in
master
Ensure packages are latest
Showing 3 changed files with 7 additions and 3 deletions Inline Diff
Puppetfile
# This file manages Puppet module dependencies. | 1 | 1 | # This file manages Puppet module dependencies. | |
# | 2 | 2 | # | |
# It works a lot like Bundler. We provide some core modules by | 3 | 3 | # It works a lot like Bundler. We provide some core modules by | |
# default. This ensures at least the ability to construct a basic | 4 | 4 | # default. This ensures at least the ability to construct a basic | |
# environment. | 5 | 5 | # environment. | |
6 | 6 | |||
# Shortcut for a module from GitHub's boxen organization | 7 | 7 | # Shortcut for a module from GitHub's boxen organization | |
def github(name, *args) | 8 | 8 | def github(name, *args) | |
options ||= if args.last.is_a? Hash | 9 | 9 | options ||= if args.last.is_a? Hash | |
args.last | 10 | 10 | args.last | |
else | 11 | 11 | else | |
{} | 12 | 12 | {} | |
end | 13 | 13 | end | |
14 | 14 | |||
if path = options.delete(:path) | 15 | 15 | if path = options.delete(:path) | |
mod name, :path => path | 16 | 16 | mod name, :path => path | |
else | 17 | 17 | else | |
version = args.first | 18 | 18 | version = args.first | |
options[:repo] ||= "boxen/puppet-#{name}" | 19 | 19 | options[:repo] ||= "boxen/puppet-#{name}" | |
mod name, version, :github_tarball => options[:repo] | 20 | 20 | mod name, version, :github_tarball => options[:repo] | |
end | 21 | 21 | end | |
end | 22 | 22 | end | |
23 | 23 | |||
# Shortcut for a module under development | 24 | 24 | # Shortcut for a module under development | |
def dev(name, *args) | 25 | 25 | def dev(name, *args) | |
mod name, :path => "#{ENV['HOME']}/src/boxen/puppet-#{name}" | 26 | 26 | mod name, :path => "#{ENV['HOME']}/src/boxen/puppet-#{name}" | |
end | 27 | 27 | end | |
28 | 28 | |||
# Includes many of our custom types and providers, as well as global | 29 | 29 | # Includes many of our custom types and providers, as well as global | |
# config. Required. | 30 | 30 | # config. Required. | |
31 | 31 | |||
github "boxen", "3.6.3.rc", :repo => "hanjianwei/puppet-boxen" | 32 | 32 | github "boxen", "3.6.3.rc", :repo => "hanjianwei/puppet-boxen" | |
33 | 33 | |||
# Support for default hiera data in modules | 34 | 34 | # Support for default hiera data in modules | |
35 | 35 | |||
github "module-data", "0.0.3", :repo => "ripienaar/puppet-module-data" | 36 | 36 | github "module-data", "0.0.3", :repo => "ripienaar/puppet-module-data" | |
37 | 37 | |||
# Core modules for a basic development environment. You can replace | 38 | 38 | # Core modules for a basic development environment. You can replace | |
# some/most of these if you want, but it's not recommended. | 39 | 39 | # some/most of these if you want, but it's not recommended. | |
40 | 40 | |||
github "git", "2.5.0" | 41 | 41 | github "git", "2.5.0" | |
github "homebrew", "1.9.5.rc", :repo => "hanjianwei/puppet-homebrew" | 42 | 42 | github "homebrew", "1.9.5.rc2", :repo => "hanjianwei/puppet-homebrew" | |
github "hub", "1.3.0" | 43 | 43 | github "hub", "1.3.0" | |
github "inifile", "1.1.3", :repo => "puppetlabs/puppetlabs-inifile" | 44 | 44 | github "inifile", "1.1.3", :repo => "puppetlabs/puppetlabs-inifile" | |
github "nodejs", "3.8.1" | 45 | 45 | github "nodejs", "3.8.1" | |
github "openssl", "1.0.0" | 46 | 46 | github "openssl", "1.0.0" | |
github "pkgconfig", "1.0.0" | 47 | 47 | github "pkgconfig", "1.0.0" | |
github "repository", "2.3.0" | 48 | 48 | github "repository", "2.3.0" | |
github "ruby", "8.1.2" | 49 | 49 | github "ruby", "8.1.2" |
Puppetfile.lock
GITHUBTARBALL | 1 | 1 | GITHUBTARBALL | |
remote: boxen/puppet-git | 2 | 2 | remote: boxen/puppet-git | |
specs: | 3 | 3 | specs: | |
git (2.5.0) | 4 | 4 | git (2.5.0) | |
5 | 5 | |||
GITHUBTARBALL | 6 | 6 | GITHUBTARBALL | |
remote: boxen/puppet-hub | 7 | 7 | remote: boxen/puppet-hub | |
specs: | 8 | 8 | specs: | |
hub (1.3.0) | 9 | 9 | hub (1.3.0) | |
10 | 10 | |||
GITHUBTARBALL | 11 | 11 | GITHUBTARBALL | |
remote: boxen/puppet-nodejs | 12 | 12 | remote: boxen/puppet-nodejs | |
specs: | 13 | 13 | specs: | |
nodejs (3.8.1) | 14 | 14 | nodejs (3.8.1) | |
15 | 15 | |||
GITHUBTARBALL | 16 | 16 | GITHUBTARBALL | |
remote: boxen/puppet-openssl | 17 | 17 | remote: boxen/puppet-openssl | |
specs: | 18 | 18 | specs: | |
openssl (1.0.0) | 19 | 19 | openssl (1.0.0) | |
20 | 20 | |||
GITHUBTARBALL | 21 | 21 | GITHUBTARBALL | |
remote: boxen/puppet-osx | 22 | 22 | remote: boxen/puppet-osx | |
specs: | 23 | 23 | specs: | |
osx (2.7.0) | 24 | 24 | osx (2.7.0) | |
25 | 25 | |||
GITHUBTARBALL | 26 | 26 | GITHUBTARBALL | |
remote: boxen/puppet-pkgconfig | 27 | 27 | remote: boxen/puppet-pkgconfig | |
specs: | 28 | 28 | specs: | |
pkgconfig (1.0.0) | 29 | 29 | pkgconfig (1.0.0) | |
30 | 30 | |||
GITHUBTARBALL | 31 | 31 | GITHUBTARBALL | |
remote: boxen/puppet-repository | 32 | 32 | remote: boxen/puppet-repository | |
specs: | 33 | 33 | specs: | |
repository (2.3.0) | 34 | 34 | repository (2.3.0) | |
35 | 35 | |||
GITHUBTARBALL | 36 | 36 | GITHUBTARBALL | |
remote: boxen/puppet-ruby | 37 | 37 | remote: boxen/puppet-ruby | |
specs: | 38 | 38 | specs: | |
ruby (8.1.2) | 39 | 39 | ruby (8.1.2) | |
40 | 40 | |||
GITHUBTARBALL | 41 | 41 | GITHUBTARBALL | |
remote: boxen/puppet-sudo | 42 | 42 | remote: boxen/puppet-sudo | |
specs: | 43 | 43 | specs: | |
sudo (1.0.0) | 44 | 44 | sudo (1.0.0) | |
45 | 45 | |||
GITHUBTARBALL | 46 | 46 | GITHUBTARBALL | |
remote: boxen/puppet-xquartz | 47 | 47 | remote: boxen/puppet-xquartz | |
specs: | 48 | 48 | specs: | |
xquartz (1.2.0) | 49 | 49 | xquartz (1.2.0) | |
50 | 50 | |||
GITHUBTARBALL | 51 | 51 | GITHUBTARBALL | |
remote: hanjianwei/puppet-boxen | 52 | 52 | remote: hanjianwei/puppet-boxen | |
specs: | 53 | 53 | specs: | |
boxen (3.6.3.rc) | 54 | 54 | boxen (3.6.3.rc) | |
55 | 55 | |||
GITHUBTARBALL | 56 | 56 | GITHUBTARBALL | |
remote: hanjianwei/puppet-brewcask | 57 | 57 | remote: hanjianwei/puppet-brewcask | |
specs: | 58 | 58 | specs: | |
brewcask (0.0.4.rc2) | 59 | 59 | brewcask (0.0.4.rc2) | |
60 | 60 | |||
GITHUBTARBALL | 61 | 61 | GITHUBTARBALL | |
remote: hanjianwei/puppet-dotfiles | 62 | 62 | remote: hanjianwei/puppet-dotfiles | |
specs: | 63 | 63 | specs: | |
dotfiles (0.0.9) | 64 | 64 | dotfiles (0.0.9) | |
65 | 65 | |||
GITHUBTARBALL | 66 | 66 | GITHUBTARBALL | |
remote: hanjianwei/puppet-homebrew | 67 | 67 | remote: hanjianwei/puppet-homebrew | |
specs: | 68 | 68 | specs: | |
homebrew (1.9.5.rc) | 69 | 69 | homebrew (1.9.5.rc2) | |
70 | 70 | |||
GITHUBTARBALL | 71 | 71 | GITHUBTARBALL | |
remote: puppetlabs/puppetlabs-inifile | 72 | 72 | remote: puppetlabs/puppetlabs-inifile | |
specs: | 73 | 73 | specs: | |
inifile (1.1.3) | 74 | 74 | inifile (1.1.3) | |
75 | 75 | |||
GITHUBTARBALL | 76 | 76 | GITHUBTARBALL | |
remote: puppetlabs/puppetlabs-stdlib | 77 | 77 | remote: puppetlabs/puppetlabs-stdlib | |
specs: | 78 | 78 | specs: | |
stdlib (4.3.2) | 79 | 79 | stdlib (4.3.2) | |
80 | 80 | |||
GITHUBTARBALL | 81 | 81 | GITHUBTARBALL | |
remote: ripienaar/puppet-module-data | 82 | 82 | remote: ripienaar/puppet-module-data | |
specs: | 83 | 83 | specs: | |
module-data (0.0.3) | 84 | 84 | module-data (0.0.3) | |
85 | 85 | |||
DEPENDENCIES | 86 | 86 | DEPENDENCIES | |
boxen (= 3.6.3.rc) | 87 | 87 | boxen (= 3.6.3.rc) | |
brewcask (= 0.0.4.rc2) | 88 | 88 | brewcask (= 0.0.4.rc2) |
modules/people/manifests/hanjianwei/applications.pp
class people::hanjianwei::applications { | 1 | 1 | class people::hanjianwei::applications { | |
2 | 2 | |||
3 | Package { | |||
4 | ensure => 'latest' | |||
5 | } | |||
6 | ||||
# Declare all Homebrew packages | 3 | 7 | # Declare all Homebrew packages | |
package { ['ack', | 4 | 8 | package { ['ack', | |
'qt5', | 5 | 9 | 'qt5', | |
'reattach-to-user-namespace', | 6 | 10 | 'reattach-to-user-namespace', | |
'tmux', | 7 | 11 | 'tmux', | |
'wget']: | 8 | 12 | 'wget']: | |
} | 9 | 13 | } | |
10 | 14 | |||
package { 'vim': | 11 | 15 | package { 'vim': | |
install_options => ['--override-system-vi'], | 12 | 16 | install_options => ['--override-system-vi'], | |
} | 13 | 17 | } | |
14 | 18 | |||
homebrew::tap { 'homebrew/science': } | 15 | 19 | homebrew::tap { 'homebrew/science': } | |
-> | 16 | 20 | -> | |
package { 'opencv': } | 17 | 21 | package { 'opencv': } | |
18 | 22 | |||
# Declare all Homebrew Cask packages | 19 | 23 | # Declare all Homebrew Cask packages | |
include brewcask | 20 | 24 | include brewcask | |
21 | 25 | |||
package { ['acorn', | 22 | 26 | package { ['acorn', | |
'alfred', | 23 | 27 | 'alfred', | |
'atom', | 24 | 28 | 'atom', | |
'bettertouchtool', | 25 | 29 | 'bettertouchtool', | |
'caffeine', | 26 | 30 | 'caffeine', | |
'cleanmymac', | 27 | 31 | 'cleanmymac', | |
'dropbox', | 28 | 32 | 'dropbox', | |
'evernote', | 29 | 33 | 'evernote', | |
'fantastical', | 30 | 34 | 'fantastical', | |
'firefox', | 31 | 35 | 'firefox', | |
'google-chrome', | 32 | 36 | 'google-chrome', | |
'hazel', | 33 | 37 | 'hazel', | |
'iterm2', | 34 | 38 | 'iterm2', | |
'karabiner', | 35 | 39 | 'karabiner', | |
'keyboard-maestro', | 36 | 40 | 'keyboard-maestro', | |
'mactex', | 37 | 41 | 'mactex', | |
'omnifocus', | 38 | 42 | 'omnifocus', | |
'onepassword', | 39 | 43 | 'onepassword', | |
'parallels', | 40 | 44 | 'parallels', | |
'pycharm-ce', | 41 | 45 | 'pycharm-ce', | |
'scapple', | 42 | 46 | 'scapple', | |
'screenflow', | 43 | 47 | 'screenflow', | |
'scrivener', | 44 | 48 | 'scrivener', | |
'seil', | 45 | 49 | 'seil', | |
'shiori', | 46 | 50 | 'shiori', | |
'trim-enabler', | 47 | 51 | 'trim-enabler', | |
'qq', | 48 | 52 | 'qq', | |
'qt-creator', | 49 | 53 | 'qt-creator', | |
'vagrant', | 50 | 54 | 'vagrant', | |
'virtualbox', | 51 | 55 | 'virtualbox', | |
'welly', | 52 | 56 | 'welly', | |
'xmind']: | 53 | 57 | 'xmind']: | |
provider => 'brewcask' | 54 | 58 | provider => 'brewcask' | |
} | 55 | 59 | } | |
56 | 60 | |||
# Taps | 57 | 61 | # Taps | |
homebrew::tap { 'hanjianwei/apps': } | 58 | 62 | homebrew::tap { 'hanjianwei/apps': } | |
-> | 59 | 63 | -> | |
package { 'squirrel': | 60 | 64 | package { 'squirrel': | |
provider => 'brewcask' | 61 | 65 | provider => 'brewcask' | |
} | 62 | 66 | } | |
63 | 67 | |||
homebrew::tap { 'caskroom/fonts': } | 64 | 68 | homebrew::tap { 'caskroom/fonts': } | |
-> | 65 | 69 | -> | |
package { ['font-anonymous-pro', | 66 | 70 | package { ['font-anonymous-pro', | |
'font-dejavu-sans', | 67 | 71 | 'font-dejavu-sans', | |
'font-dejavu-sans-mono-for-powerline', | 68 | 72 | 'font-dejavu-sans-mono-for-powerline', | |
'font-inconsolata-dz-for-powerline', | 69 | 73 | 'font-inconsolata-dz-for-powerline', | |
'font-inconsolata-for-powerline', | 70 | 74 | 'font-inconsolata-for-powerline', | |
'font-noto-sans', | 71 | 75 | 'font-noto-sans', | |
'font-noto-sans-s-chinese', | 72 | 76 | 'font-noto-sans-s-chinese', | |
'font-noto-sans-t-chinese', | 73 | 77 | 'font-noto-sans-t-chinese', | |
'font-noto-sans-japanese', | 74 | 78 | 'font-noto-sans-japanese', | |
'font-noto-sans-korean', | 75 | 79 | 'font-noto-sans-korean', | |
'font-noto-serif', | 76 | 80 | 'font-noto-serif', | |
'font-roboto', | 77 | 81 | 'font-roboto', | |
'font-sauce-code-powerline', | 78 | 82 | 'font-sauce-code-powerline', | |
'font-source-code-pro', | 79 | 83 | 'font-source-code-pro', | |
'font-source-sans-pro', | 80 | 84 | 'font-source-sans-pro', | |
'font-source-serif-pro', | 81 | 85 | 'font-source-serif-pro', | |
'font-terminus', | 82 | 86 | 'font-terminus', | |
'font-ubuntu-mono-powerline']: | 83 | 87 | 'font-ubuntu-mono-powerline']: | |
provider => 'brewcask' | 84 | 88 | provider => 'brewcask' | |
} | 85 | 89 | } | |
86 | 90 | |||
homebrew::tap { 'caskroom/versions': } | 87 | 91 | homebrew::tap { 'caskroom/versions': } | |
-> | 88 | 92 | -> | |
package { 'intellij-idea-ultimate12': | 89 | 93 | package { 'intellij-idea-ultimate12': | |
provider => 'brewcask' | 90 | 94 | provider => 'brewcask' | |
} | 91 | 95 | } | |
92 | 96 | |||
homebrew::tap { 'railwaycat/emacsmacport': } | 93 | 97 | homebrew::tap { 'railwaycat/emacsmacport': } | |
-> | 94 | 98 | -> | |
package { 'emacs-mac': | 95 | 99 | package { 'emacs-mac': | |
provider => 'brewcask' | 96 | 100 | provider => 'brewcask' | |
} | 97 | 101 | } | |
98 | 102 | |||
# Apps configuration | 99 | 103 | # Apps configuration | |
Package <| |> -> Dotfiles::Deploy <| |> | 100 | 104 | Package <| |> -> Dotfiles::Deploy <| |> | |
101 | 105 | |||
osx_chsh { $boxen_user: | 102 | 106 | osx_chsh { $boxen_user: | |
shell => '/bin/zsh' | 103 | 107 | shell => '/bin/zsh' | |
} | 104 | 108 | } | |
105 | 109 | |||
dotfiles::deploy { ['atom', | 106 | 110 | dotfiles::deploy { ['atom', | |
'bettertouchtool', | 107 | 111 | 'bettertouchtool', | |
'emacs', | 108 | 112 | 'emacs', | |
'git', | 109 | 113 | 'git', |