Fix gpg key checking warings after f588f26
[puppet-modules/puppetlabs-apt.git] / manifests / backports.pp
index 9cfa1c01130c55fd4ce25939f7656b2134744795..ff8cb44b972d56e145d7a6cb0cf8bd0878dc77b5 100644 (file)
@@ -6,6 +6,12 @@
 #   The ubuntu/debian release name. Defaults to $lsbdistcodename. Setting this
 #   manually can cause undefined behavior. (Read: universe exploding)
 #
+# [*pin_priority*]
+#   _default_: 200
+#
+#   The priority that should be awarded by default to all packages coming from
+#   the Debian Backports project.
+#
 # == Examples
 #
 #   include apt::backports
 #
 # Copyright 2011 Puppet Labs Inc, unless otherwise noted.
 class apt::backports(
-  $release  = $::lsbdistcodename,
-  $location = $apt::params::backports_location
+  $release      = $::lsbdistcodename,
+  $location     = $::apt::params::backports_location,
+  $pin_priority = 200,
 ) inherits apt::params {
 
-  $release_real = downcase($release)
-  $key = $::lsbdistid ? {
-    'debian' => '46925553',
-    'ubuntu' => '437D05B5',
+  if ! is_integer($pin_priority) {
+    fail('$pin_priority must be an integer')
+  }
+
+  if $::lsbdistid == 'LinuxMint' {
+    if $::lsbdistcodename == 'debian' {
+      $distid = 'debian'
+      $release_real = 'wheezy'
+    } else {
+      $distid = 'ubuntu'
+      $release_real = $::lsbdistcodename ? {
+        'qiana'  => 'trusty',
+        'petra'  => 'saucy',
+        'olivia' => 'raring',
+        'nadia'  => 'quantal',
+        'maya'   => 'precise',
+      }
+    }
+  } else {
+    $distid = $::lsbdistid
+    $release_real = downcase($release)
   }
-  $repos = $::lsbdistid ? {
+
+  $key = $distid ? {
+    'debian' => 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553',
+    'ubuntu' => '630239CC130E1A7FD81A27B140976EAF437D05B5',
+  }
+  $repos = $distid ? {
     'debian' => 'main contrib non-free',
     'ubuntu' => 'main universe multiverse restricted',
   }
 
+  apt::pin { 'backports':
+    before   => Apt::Source['backports'],
+    release  => "${release_real}-backports",
+    priority => $pin_priority,
+  }
+
   apt::source { 'backports':
     location   => $location,
     release    => "${release_real}-backports",
     repos      => $repos,
     key        => $key,
     key_server => 'pgp.mit.edu',
-    pin        => '200',
   }
 }