Class: Sekt::Wine

Inherits:
Object
  • Object
show all
Defined in:
lib/sekt/wine.rb

Instance Method Summary collapse

Constructor Details

#initialize(prefix = '', architecture = 'win32') ⇒ Wine

Returns a new instance of Wine.



5
6
7
8
9
10
11
# File 'lib/sekt/wine.rb', line 5

def initialize(prefix='', architecture='win32')
  @prefix = prefix
  @architecture = architecture
  @version = `wine --version`.strip
  raise '\'wine\' is not installed' unless $?.success?
  logger.debug { "'wine' found, version: #{@version}" }
end

Instance Method Details

#execute(file) ⇒ Object



13
14
15
16
17
18
# File 'lib/sekt/wine.rb', line 13

def execute(file)
  command = "WINEPREFIX=#{@prefix} WINEDLLOVERRIDES=winemenubuilder.exe=d WINEARCH=#{@architecture} wine '#{file}'"
  logger.debug { "Executing command: `#{command}`" }
  stdout, stderr, status = Open3.capture3(command)
  raise '\'wine.execute\' failed' unless status.success?
end