class nodo::laptop inherits nodo::personal { include utils::laptop include modprobe::laptop include sysctl::laptop include firewall::wifi include firewall::openvpn include firewall::ppp # fstab if $fstab != false { file { "/etc/fstab": source => "puppet://$server/modules/nodo/etc/fstab/laptop", owner => "root", group => "root", mode => 0644, ensure => present, notify => Exec['update-initramfs'], } } # crypttab if $crypttab != false { file { "/etc/crypttab": source => $hibernate ? { false => "puppet://$server/modules/nodo/etc/crypttab/laptop", default => "puppet://$server/modules/nodo/etc/crypttab/laptop.hibernate", }, owner => "root", group => "root", mode => 0644, ensure => present, notify => Exec['update-initramfs'], } # hibernation file { "/etc/initramfs-tools/conf.d/resume": owner => "root", group => "root", mode => 0644, content => "RESUME=/dev/mapper/cswap\n", notify => Exec['update-initramfs'], ensure => $hibernate ? { false => absent, default => present, }, } } # upgrade from lenny if $lsbdistcodename != 'lenny' { file { "/etc/modprobe.d/madwifi": ensure => absent, } } } class nodo::laptop::webdev inherits nodo::laptop { include websites::dev include database include utils::web backupninja::mysql { "all_databases": backupdir => '/var/backups/mysql', compress => true, sqldump => true, } } class nodo::laptop::dev { $apt_include_src = true $apt_use_next_release = false include nodo::laptop::webdev } class nodo::laptop::minimal { $fstab = false $crypttab = false $xorg = false $pam = false # Backups should happen when the box is likely to be online $backup_when = 'everyday at 12:00' # Desktop class include nodo::laptop }