Module: LinuxAdmin::Distros

Defined in:
lib/linux_admin/distro.rb

Defined Under Namespace

Classes: Distro

Class Method Summary collapse

Class Method Details

.allObject



21
22
23
# File 'lib/linux_admin/distro.rb', line 21

def self.all
  @distros ||= [rhel, fedora, ubuntu, generic]
end

.fedoraObject



13
14
15
# File 'lib/linux_admin/distro.rb', line 13

def self.fedora
  @fedora ||= Distro.new(:fedora, "/etc/fedora-release", ['Fedora'], LinuxAdmin::Rpm)
end

.genericObject



5
6
7
# File 'lib/linux_admin/distro.rb', line 5

def self.generic
  @generic ||= Distro.new(:generic)
end

.localObject



25
26
27
28
29
# File 'lib/linux_admin/distro.rb', line 25

def self.local
  @local ||= begin
    Distros.all.detect(&:detected?) || Distros.generic
  end
end

.rhelObject



9
10
11
# File 'lib/linux_admin/distro.rb', line 9

def self.rhel
  @rhel ||= Distro.new(:rhel, '/etc/redhat-release', ['red hat', 'centos'], LinuxAdmin::Rpm)
end

.ubuntuObject



17
18
19
# File 'lib/linux_admin/distro.rb', line 17

def self.ubuntu
  @ubuntu ||= Distro.new(:ubuntu, nil, ['ubuntu'], LinuxAdmin::Deb)
end