# Workstation setup, for non graphical environmentns class profiles::workstation ( ) { $os_name = $facts['os']['name'].downcase() if defined($os_name) { include "::profiles::workstation::name::${os_name}" } $os_fam = $facts['os']['family'].downcase() if defined($os_fam) { include "::profiles::workstation::family::${os_fam}" } include ::profiles::group_profile include ::profiles::repo if ($facts['systemd']) { file { 'User ssh-agent service': path => '/etc/systemd/user/ssh-agent.service', source => "puppet:///modules/profiles/ssh-agent.service", } } # NOTE Hard coding checksums here kind of defeats the point of # pulling in data from above (since we no longer get updates), # but since GitHub doesn't send checksum headers the files gets # updated every time otherwise, which creates noise. file { 'Dvorak A6 TTY keyboard layout': ensure => file, path => '/usr/share/kbd/keymaps/i386/dvorak/dvorak-sv-a6.map', checksum => 'md5', checksum_value => '96be6c1aa81522db46673c0f68e3336a', source => 'https://raw.githubusercontent.com/HugoNikanor/keymaps/master/linux-tty/dvorak-sv-a6.map', } file { 'Setup console': ensure => file, path => '/etc/vconsole.conf', content => epp('profiles/keyvalue.epp', { 'values' => { 'KEYMAP' => 'dvorak-sv-a6', 'FONT' => 'lat9v-12', }}), } # Packages I almost certainly want ensure_packages([ 'bash-completion', 'cloc', 'ctags', 'ed', 'git', 'htop', 'moreutils', 'vi', 'wget', 'curl', ]) # Packages I want for most system ensure_packages([ 'direnv', 'elinks', 'ghc-libs', 'highlight', 'isync', 'mpc', 'mutt', 'ncmpc', 'nmap', 'pass', 'pass-otp', 'python-pip', # version depending on system? 'ranger', 'sshuttle', 'valgrind', 'weechat', ]) include ::profiles::imagemagick include ::profiles::cowsay include ::profiles::tex include ::profiles::sudo include ::profiles::mounts }