tis-virtualbox
6.1.16-1
Oracle VM VirtualBox (formerly VirtualBox) is a free virtualization software published by Oracle.
94090 downloads

Description
- package : tis-virtualbox
- version : 6.1.16-1
- architecture : x64
- categories : System and network
- maintainer : WAPT Team,Jimmy PELÉ,Simon Fonteneau
- description : Oracle VM VirtualBox (formerly VirtualBox) is a free virtualization software published by Oracle.
- locale : all
- target_os : windows
- min_wapt_version : 1.5
- sources : https://www.virtualbox.org/wiki/Downloads
- installed_size : 396652544
- impacted_process : VirtualBox.exe,VBoxManage.exe,VBoxSVC.exe,VBoxSDS.exe
- description_fr : Oracle VM VirtualBox (anciennement VirtualBox) est un logiciel libre de virtualisation publié par Oracle.
- description_pl : Oracle VM VirtualBox (dawniej VirtualBox) to darmowe oprogramowanie do wirtualizacji opublikowane przez Oracle.
- description_de : Oracle VM VirtualBox (ehemals VirtualBox) ist eine von Oracle veröffentlichte kostenlose Virtualisierungssoftware.
- description_es : Oracle VM VirtualBox (antes VirtualBox) es un software de virtualización libre publicado por Oracle.
- description_pt :
- description_it :
- description_nl :
- description_ru :
- editor : Oracle Corporation
- licence : GPLv2
- signature_date : 2020-10-22T10:19:02.808056
- Homepage : https://www.virtualbox.org/
Setup.py
# -*- coding: utf-8 -*-
from setuphelpers import *
try:
import bs4 as BeautifulSoup
except:
import BeautifulSoup
import platform
import json
import requests
uninstallkey = []
# Declaring specific app values (TO CHANGE)
bin_name_string = 'VirtualBox-%s-Win.exe'
bin_ext_name_string = 'Oracle_VM_VirtualBox_Extension_Pack-%s.vbox-extpack'
bin_ext_name_joker = '*.vbox-extpack'
silent_args = '--silent --msiparams REBOOT=ReallySuppress ALLUSERS=2 VBOX_INSTALLDESKTOPSHORTCUT=0 VBOX_START=0 VBOX_INSTALLQUICKLAUNCHSHORTCUT=0'
app_uninstallkey = '{4FA0A6EA-79EF-40D4-AD48-08D9A6A163AA}'
app_install_path = makepath(programfiles,'Oracle','VirtualBox')
app_vbm = makepath(app_install_path,'VBoxManage.exe')
def install():
# Specific app values
package_version = control.version.split('-',1)[0]
# Getting the used storage on programfiles before installation (place it on the top)
get_disk_free_space_before = get_disk_free_space(programfiles)
# Installing the package
if not installed_softwares('Oracle VM VirtualBox ' + package_version) or force:
if isrunning('virtualbox.exe') and not force:
error('VirtualBOX is running !')
run(r'"%s" %s' % (bin_name_string % package_version,silent_args),accept_returncodes=[0,3010],timeout=300)
else:
print('Exe setup %s already installed. Skipping' % bin_name_string % package_version)
if not installed_softwares('Oracle VM VirtualBox ' + package_version):
error('Setup %s has been and uninstall but %s not found' % (bin_name_string % package_version,'Oracle VM VirtualBox ' + package_version))
# Remove all file extpack
for file in glob.glob(makepath(app_install_path,bin_ext_name_joker)):
remove_file(file)
# Copy new extpack
for ext in glob.glob(bin_ext_name_joker):
filecopyto(ext,app_install_path)
# Install new extpack
try:
run('echo y | "%s" extpack install --replace "%s"' % (app_vbm,ext))
except:
run('"%s" extpack cleanup ' % (app_vbm))
run('echo y | "%s" extpack install --replace "%s"' % (app_vbm,ext))
# Disable update check
run('"%s" setextradata global GUI/UpdateDate never' % app_vbm)
# Return used storage of the program. (place it on the bottom)
get_disk_free_space_after = get_disk_free_space(programfiles)
free_space_after_diff = get_disk_free_space_before - get_disk_free_space_after
print("Storage used: " + str(free_space_after_diff))
def uninstall():
if isdir(app_install_path):
remove_tree(app_install_path)
def update_package():
print('Download/Update package content from upstream binary sources')
# Getting proxy informations from WAPT settings
proxy = {}
if platform.system()=='Windows' and isfile(makepath(user_local_appdata(),'waptconsole','waptconsole.ini')):
proxywapt = inifile_readstring(makepath(user_local_appdata(),'waptconsole','waptconsole.ini'),'global','http_proxy')
if proxywapt :
proxy = {'http':proxywapt,'https':proxywapt}
# Specific app values
app_name = control.name
url = control.sources
# Getting latest version from official website
page = requests.get(url,headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64)'}).text
bs = BeautifulSoup.BeautifulSoup(page)
#bs = BeautifulSoup.BeautifulSoup(page,features="html.parser") # For bs4 only
bs_raw_string = bs.find('a',{'class':'ext-link'})
url_dl = bs_raw_string['href']
real_latest_bin = url_dl.split('/')[-1]
version = real_latest_bin.split('-')[1]
latest_bin = bin_name_string % version
latest_bin_ext = bin_ext_name_string % version
url_dl_ext = url_dl.replace(real_latest_bin,latest_bin_ext)
print('Latest ' + app_name + ' version is: ' + version)
print('Download url is: ' + url_dl)
print('Download url for the Extension Pack is: ' + url_dl_ext)
# Downloading latest binaries
if not isfile(latest_bin):
print('Downloading: ' + latest_bin)
wget(url_dl,latest_bin,proxies=proxy)
if not isfile(latest_bin_ext):
print('Downloading: ' + latest_bin_ext)
wget(url_dl_ext,latest_bin_ext,proxies=proxy)
# Change version of the package
print('Writing ' + version + '-0 in WAPT\\control')
pe = PackageEntry()
pe.load_control_from_wapt(os.getcwd())
pe.version = version + '-0'
pe.save_control_to_wapt(os.getcwd())
print('Update package done. You can now build-upload your package')
else:
print('This package is already up-to-date')
# Deleting outdated binaries
for bin_in_dir in glob.glob('*.exe') or glob.glob('*.msi'):
if bin_in_dir != latest_bin :
print('Outdated binary: ' + bin_in_dir + ' Deleted')
remove_file(bin_in_dir)
for ext_in_dir in glob.glob('*.vbox-extpack'):
if ext_in_dir != latest_bin_ext :
print('Outdated binary: ' + ext_in_dir + ' Deleted')
remove_file(ext_in_dir)
Changelog
Changelog software url : https://www.virtualbox.org/wiki/Changelog
No changelog.txt.