var exec = require('child_process').exec
var lsbRelease = /Release:\t(.*)/
var lsbCodename = /Codename:\t(.*)/
var releaseRegex = /(.*)/

module.exports = function(os,file,cb) {
  //first try lsb_release
  return lsbrelease(os,file,cb)
}

function lsbrelease(os,file,cb) {
  exec("lsb_release -a",function(e,stdout,stderr) {
    if(e) return releasefile(os,file,cb)
    var release = stdout.match(lsbRelease)
    if(release && release.length === 2) os.release = release[1]
    var codename = stdout.match(lsbCodename)
    if(codename && release.length === 2) os.codename = codename[1]
    cb(null,os)
  })
}

function releasefile(os,file,cb) {
  var release = file.match(releaseRegex)
  if(release && release.length === 2) os.release = release[1]
  cb(null,os)
}
