Skip to content

Commit

Permalink
support /etc/machine-id
Browse files Browse the repository at this point in the history
  • Loading branch information
quark-zju committed Nov 18, 2012
1 parent bc62bdd commit 48c4ba3
Showing 1 changed file with 12 additions and 7 deletions.
19 changes: 12 additions & 7 deletions lib/dbus/bus.rb
Expand Up @@ -735,17 +735,22 @@ def initialize
end

def address_from_file
f = File.new("/var/lib/dbus/machine-id")
machine_id = f.readline.chomp
f.close
display = ENV["DISPLAY"].gsub(/.*:([0-9]*).*/, '\1')
File.open(ENV["HOME"] + "/.dbus/session-bus/#{machine_id}-#{display}").each do |line|
# systemd uses /etc/machine-id
# traditional dbus uses /var/lib/dbus/machine-id
machine_id_path = Dir['{/etc,/var/lib/dbus}/machine-id'].first
return nil unless machine_id_path
machine_id = File.read(machine_id_path).chomp

display = ENV["DISPLAY"].gsub(/.*:([0-9]*)\.*/, '\1')

bus_file_path = File.join(ENV["HOME"], "/.dbus/session-bus/#{machine_id}-#{display}")
return nil unless File.exists?(bus_file_path)

File.open(bus_file_path).lines do |line|
if line =~ /^DBUS_SESSION_BUS_ADDRESS=(.*)/
return $1
end
end
rescue Errno::ENOENT
nil
end
end

Expand Down

0 comments on commit 48c4ba3

Please sign in to comment.