Un petit billet pour détailler l'installation de la version SUN de java.

2 problématiques quant à l'installation de la version officielle (SUN) de java :

  • tout d'abord il faut ajouter le dépôt dans apt
  • ensuite il faut accepter la licence

Pour ce dernier point, on va utiliser "set-selections" de debconf avec un fichier preseed, ce qui permettra d'accepter automatiquement la licence et donc l'install java via puppet.

Voici un petit exemple de classe qui permet d'installer le tout :

class java::install {

        file{"/etc/apt/sources.list.d/java.list":
                ensure => present,
                mode => 644,
                content => "deb http://archive.canonical.com/ lucid partner",
                notify => Exec ["apt-get update"],
        }

        file { "/var/cache/debconf/jre6.seeds":
                source => "puppet:///java/jre6.seeds",
                ensure => present;
        }

        exec{"apt-get update":
                refreshonly => true,
        }

        package {"sun-java6-jre" :
                ensure => latest,
                responsefile => "/var/cache/debconf/jre6.seeds",
                require => [Exec["apt-get update"],File["/var/cache/debconf/jre6.seeds"]]
        }

}

Le fichier jre6.seeds contient les lignes suivantes :

sun-java6-bin   shared/accepted-sun-dlj-v1-1    boolean true
sun-java6-jdk   shared/accepted-sun-dlj-v1-1    boolean true
sun-java6-jre   shared/accepted-sun-dlj-v1-1    boolean true