puppet-wmdeit_install/manifests/init.pp

64 lines
1.3 KiB
Puppet

#
#
class wmdeit_install
(
)
{
file {'/opt/wikimedia':
ensure => directory
}
}
define wmdeit_install::program(
$program = $title,
$archfile = "${program}.zip",
$source = "puppet:///downloads/packages/${program}/${archfile}",
$svg = "${program}.svg",
$svg_source = "puppet:///downloads/packages/${program}/${svg}",
$desktop = "${program}.desktop",
$desktop_source = "puppet:///downloads/packages/${program}/${desktop}",
$extract_path = "/opt/wikimedia/$program",
$extract_dir = "$program",
$exec = "$extract_path/$extract_dir/$program",
$exec_path = "$extract_path/$extract_dir",
$generic_name = "$program",
$comment = "$program",
){
file {$extract_path:
ensure => directory
}->
file {"$extract_path/$svg":
ensure => file,
source => $svg_source,
}->
file {"$extract_path/$desktop":
ensure => file,
# source => $desktop_source,
content => template("wmdeit_install/program.desktop.erb"),
}->
archive {"/tmp/$archfile":
source => $source,
extract_path => $extract_path,
extract => true,
} ->
exec{'Install commonist':
command => "/usr/bin/desktop-file-install --rebuild-mime-info-cache ${extract_path}/${desktop}",
#creates => '/usr/share/applications/$desktop',
refreshonly => true,
subscribe => [
Archive["/tmp/$archfile"],
File["$extract_path/$desktop"]
]
}
}