case $operatingsystem { centos, redhat, fedora: { $pkgupdate = "yum clean all" $devsuffix = "-devel" } debian, ubuntu: { $pkgupdate = "apt-get update" $devsuffix = "-dev" package { "lintian": ensure => latest } } Archlinux: { $pkgupdate = "pacman -Syu --noconfirm --needed" $devsuffix = "dev" } } exec { "update-packages": command => $pkgupdate, path => [ "/bin", "/usr/bin", "/sbin", "/usr/sbin" ], timeout => 14400 } package { "git": ensure => latest; "bundler": provider => "gem", ensure => latest; "ruby$devsuffix": ensure => latest; } Exec["update-packages"] -> Package <| |>