def __init__(self, zip_path):
        self._zip_path = zip_path

        # Exe info
        temp_file = tempfile.NamedTemporaryFile(suffix='.exe', delete=False)
        try:
            with zipfile.ZipFile(zip_path, 'r') as z:
                for filename in z.namelist():
                    if filename.endswith('McXRayLite.exe'):
                        break
                temp_file.write(z.read(filename))
                temp_file.close()
            self.exe_info = extract_exe_info(temp_file.name)
        finally:
            os.remove(temp_file.name)

        _DebBuilder.__init__(self,
                             package='mcxray-lite',
                             fullname='MCX-Ray Lite',
                             version=self.exe_info['File version'], # dummy
                             maintainer='Raynald Gauvin <*****@*****.**>',
                             authors=['Raynald Gauvin', 'Pierre Michaud', 'Hendrix Demers'],
                             section='science',
                             short_description='Monte Carlo simulation of electron trajectory in solid',
                             long_description='MC X-Ray is a new Monte Carlo program that is an extension of the Monte Carlo programs Casino and Win X-Ray since it computes the complete x-ray spectra from the simulation of electron scattering in solids of various types of geometries. MC X-Ray allows up to 256 different regions in the materials having shape of spheres, cylinders and combinations of horizontal and vertical planes. All these regions can have a different composition. This program was written by Pierre Michaud under the supervision of Pr. Gauvin. Dr. Hendrix Demers improved and validated the x-ray spectrum computation of MC X-Ray.',
                             date=datetime.strptime(self.exe_info['Link date'], '%I:%M %p %d/%m/%Y'), # dummy
                             license='Private',
                             homepage='http://montecarlomodeling.mcgill.ca/software/mcxray/mcxray.html',
                             depends=['wine'])
    def __init__(self, zip_path):
        self._zip_path = zip_path

        # Exe info
        temp_file = tempfile.NamedTemporaryFile(suffix='.exe', delete=False)
        try:
            with zipfile.ZipFile(zip_path, 'r') as z:
                for filename in z.namelist():
                    if filename.endswith('WinXRay.exe'):
                        break
                temp_file.write(z.read(filename))
                temp_file.close()
            self.exe_info = extract_exe_info(temp_file.name)
        finally:
            os.remove(temp_file.name)

        _DebBuilder.__init__(self,
                             package='winxray',
                             fullname='WinXRay',
                             version=self.exe_info['File version'], # dummy
                             maintainer='Hendrix Demers <*****@*****.**>',
                             authors=['H. Demers', 'P. Horny', 'R. Gauvin', 'E. Lifshin'],
                             section='science',
                             short_description='Monte Carlo simulation of electron trajectory in solid',
                             long_description='This new Monte Carlo programs, Ray, is a extension of the well known Monte Carlo program CASINO, which includes statistical distributions for the backscattered electrons, trapped electrons, energy loss and phi rho z curves for X-ray. The new added features in Ray are: the complete simulation of the X-ray spectrum, the charging effect for insulating specimen.',
                             date=datetime.strptime(self.exe_info['Link date'], '%I:%M %p %d/%m/%Y'), # dummy
                             license='This program is for educational and scientific use only. All commercial applications concerning this program are prohibited without a written agreement with the authors. We claim no responsibility and liability concerning the technical predictions of this programs.\nIn all publications using the results of this program, the complete references to Win X-Ray and the authors must be include in the paper.  And if you send us the paper, we will be pleasure to see want use you have made of the program.',
                             homepage='http://montecarlomodeling.mcgill.ca/software/winxray/winxray.html',
                             depends=['wine'])
    def __init__(self, zip_path):
        self._zip_path = zip_path

        # Exe info
        temp_file = tempfile.NamedTemporaryFile(suffix='.exe', delete=False)
        try:
            with zipfile.ZipFile(zip_path, 'r') as z:
                for filename in z.namelist():
                    if filename.endswith('wincasino2.exe'):
                        break
                temp_file.write(z.read(filename))
                temp_file.close()
            self.exe_info = extract_exe_info(temp_file.name)
        finally:
            os.remove(temp_file.name)

        _DebBuilder.__init__(self,
                             package='casino2',
                             fullname='Casino 2',
                             version=self.exe_info['File version'], # dummy
                             maintainer='Hendrix Demers <*****@*****.**>',
                             authors=['D. Drouin', 'A.R. Couture', 'R. Gauvin',
                                      'P. Hovington', 'P. Horny', 'H. Demers',
                                      'D. Joly', 'P. Drouin', 'N. Poirier-Demers'],
                             section='science',
                             short_description='Monte Carlo simulation of electron trajectory in solid',
                             long_description='The CASINO acronym has been derived from the words "monte CArlo SImulation of electroN trajectory in sOlids". This program is a Monte Carlo simulation of electron trajectory in solid specially designed for low beam interaction in a bulk and thin foil. This complex single scattering Monte Carlo program is specifically designed for low energy beam interaction and can be used to generate many of the recorded signals (X-rays and backscattered electrons) in a scanning electron microscope. This program can also be efficiently used for all of the accelerated voltage found on a field emission scanning electron microscope(0.1 to 30 KeV).',
                             date=datetime.strptime(self.exe_info['Link date'], '%I:%M %p %d/%m/%Y'), # dummy
                             license='We clain no responsibility and liability concerning the technical predictions of this program. In all publications using the results of this program, the complete references to CASINO must be include in the paper.',
                             homepage='http://www.gel.usherbrooke.ca/casino/',
                             depends=['wine'])
    def __init__(self, zip_path):
        self._zip_path = zip_path

        # Exe info
        temp_file = tempfile.NamedTemporaryFile(suffix='.exe', delete=False)
        try:
            with zipfile.ZipFile(zip_path, 'r') as z:
                for filename in z.namelist():
                    if filename.endswith('Mclib32.exe'):
                        break
                temp_file.write(z.read(filename))
                temp_file.close()
            self.exe_info = extract_exe_info(temp_file.name)
        finally:
            os.remove(temp_file.name)

        _DebBuilder.__init__(self,
                             package='monaco',
                             fullname='MONACO',
                             version=self.exe_info['File version'], # dummy
                             maintainer='Silvia Richter <*****@*****.**>',
                             authors=['P. Karduck', 'R. Amman', 'S. Richter', 'and collaborators'],
                             section='science',
                             short_description='Monte Carlo simulation of electron trajectory in solid',
                             long_description='Monte Carlo simulation software package developed at the Gemeinschaftslabor fuer Elektronenmikroskopie, RWTH Aachen University',
                             date=datetime.strptime(self.exe_info['Link date'], '%I:%M %p %d/%m/%Y'), # dummy
                             license='Freeware',
                             homepage='http://www.gfe.rwth-aachen.de',
                             depends=['wine'])