tis-virtualbox6 icon

Oracle VM VirtualBox 6

Paquet d’installation silencieuse pour Oracle VM VirtualBox 6

6.1.50-29

  • package: tis-virtualbox6
  • name: Oracle VM VirtualBox 6
  • version: 6.1.50-29
  • categories: System and network
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau
  • editor: Oracle Corporation
  • licence: GPLv2
  • locale: all
  • target_os: debian-buster
  • impacted_process: VirtualBox,VBoxWebSrv,VBoxSVC,VBoxAutostartSvc,VBoxBalloonCtrl,VBoxBugReport,VBoxDTrace,VBoxManage,VBoxSDS,VBoxExtPackHelperApp,VBoxTestOGL,VBoxNetDHCP,VBoxNetNAT,VirtualBoxVM,VBoxHeadless,VBoxSDL,vbox-img
  • architecture: x64
  • signature_date:
  • size: 106.93 Mo
  • installed_size: 506.54 Mo
  • homepage : https://www.virtualbox.org/

package           : tis-virtualbox6
version           : 6.1.50-29
architecture      : x64
section           : base
priority          : optional
name              : Oracle VM VirtualBox 6
categories        : System and network
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau
description       : Oracle VM VirtualBox (formerly VirtualBox) is a free virtualization software published by Oracle
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : debian-buster
min_wapt_version  : 2.3
sources           : https://www.virtualbox.org/wiki/Downloads
installed_size    : 506540032
impacted_process  : VirtualBox,VBoxWebSrv,VBoxSVC,VBoxAutostartSvc,VBoxBalloonCtrl,VBoxBugReport,VBoxDTrace,VBoxManage,VBoxSDS,VBoxExtPackHelperApp,VBoxTestOGL,VBoxNetDHCP,VBoxNetNAT,VirtualBoxVM,VBoxHeadless,VBoxSDL,vbox-img
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    : Oracle VM VirtualBox (anteriormente VirtualBox) é um software de virtualização gratuito publicado pela Oracle
description_it    : Oracle VM VirtualBox (precedentemente VirtualBox) è un software di virtualizzazione gratuito pubblicato da Oracle
description_nl    : Oracle VM VirtualBox (voorheen VirtualBox) is een gratis virtualisatiesoftware, gepubliceerd door Oracle
description_ru    : Oracle VM VirtualBox (ранее VirtualBox) - это бесплатное программное обеспечение для виртуализации, опубликованное компанией Oracle
audit_schedule    : 
editor            : Oracle Corporation
keywords          : virtualization,host,vm,virtual,machine,hosts,oracle
licence           : GPLv2
homepage          : https://www.virtualbox.org/
package_uuid      : 4fa6be73-7a10-4de0-a940-3172f12b78d5
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://www.virtualbox.org/wiki/Changelog
min_os_version    : 
max_os_version    : 
icon_sha256sum    : e951bcceaa888dbfed95529b40efcbc483e9c9f0b6cc7b50efe93f9459030a36
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature         : x/oez+99yz6VgU/rpXlz58rFtDdMASWSet9T/BFL0QdumUN1Ysm/96IbAZPMyRrMxPxj1Lcl+qlyYNwmySZKJGdOLWmwBO6W+cXRuvCmPzwkZwVDn1LXOBQe2h4RU8bjuvpecxRGdI8g6KIfeOU1of/7x/DFQKL+Yqf0sVezi86881aC4AU85z2TUOlxo0Cvs2JVokNmaMF63xFoqnoh12jZWBlaF0f9NvkGPYlq6GLeYrHINGTcNY8H0mOaY2HSZwqQZiPB8QX4mM6dQ2EvVSyEdeOs7nGqCGcOMJdT5FlBLTa7QeogcMLBb9JFC6Fa1nvEJjk/q5rFteJkWwHTRw==
signature_date    : 2024-01-21T18:05:28.479028
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes

# -*- coding: utf-8 -*-
from setuphelpers import *

app_install_path = "/usr/lib/virtualbox/"
app_vbm = makepath(app_install_path, "VBoxManage")


def install():
    bin_name = glob.glob("virtualbox-*.deb")[0]

    # Avoid VMs to be shutted unexpectedly
    if isrunning("virtualbox") and not force:
        error("ERROR: VirtualBox is running")
    uninstall()
    update_apt()
    install_apt("linux-headers-amd64")
    install_deb(bin_name)

    # Remove all file extpack
    for file in glob.glob(makepath(app_install_path, "Oracle_VM_VirtualBox_Extension_Pack-*.vbox-extpack")):
        print("Removing: %s" % file)
        remove_file(file)

    # Copy new extpack
    for ext in glob.glob("Oracle_VM_VirtualBox_Extension_Pack-*.vbox-extpack"):
        print("Copying: %s to: %s" % (ext, app_install_path))
        filecopyto(ext, app_install_path)
        # Install new extpack
        try:
            print(
                run(
                    'echo y | "%s" extpack install --replace "%s" --accept-license=33d7284dc4a0ece381196fda3cfe2ed0e1e8e7ed7f27b9a9ebc4ee22e24bd23c'
                    % (app_vbm, ext)
                )
            )
        except:
            print(run('"%s" extpack cleanup' % (app_vbm)))
            print(
                run(
                    'echo y | "%s" extpack install --replace "%s" --accept-license=33d7284dc4a0ece381196fda3cfe2ed0e1e8e7ed7f27b9a9ebc4ee22e24bd23c'
                    % (app_vbm, ext)
                )
            )


def session_setup():
    print("Disabling: Auto update checks")
    run('"%s" setextradata global GUI/UpdateDate never' % app_vbm)


def uninstall():
    for p in control.impacted_process.split(","):
        killalltasks(p)
    uninstall_apt("'virtualbox*'")
    autoremove_apt()
    if not installed_softwares("virtualbox"):
        if isdir(app_install_path):
            remove_tree(app_install_path)

# -*- coding: utf-8 -*-
from setuphelpers import *


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    url = "https://download.virtualbox.org/virtualbox/"
    vbox_fixed_version = "6"
    download_dict = {
        "windows-x64": "-Win.exe",
        "darwin-x64": "-OSX.dmg",
        "debian-stretch-x64": "stretch",
        "debian-buster-x64": "buster",
        "debian-bullseye-x64": "bullseye",
        "centos8,centos-8,almalinux-x64": "el8",
        "centos7-x64": "el7",
    }

    # Getting latest "vbox_fixed_version"'s version
    print("URL used is: %s" % url)
    url_dict = bs_index_of_to_dict(url, proxies=proxies)
    version = Version("0")
    for key in url_dict.keys():
        if key.startswith(vbox_fixed_version) and Version(key.strip("/")) > Version(version):
            version = key.strip("/")
    version_url = url_dict[version + "/"]

    binaries_dict = bs_index_of_to_dict(version_url, proxies=proxies)
    for elem in binaries_dict.values():
        # Getting Vbox binary download link
        if download_dict[control.target_os + "-" + ensure_list(control.architecture)[0]] in elem:
            download_url = elem
            latest_bin = download_url.split("/")[-1]
        # Getting Vbox extensions pack binary download link
        if ".vbox-extpack" in elem:
            download_ext_url = elem
            latest_ext_bin = download_ext_url.split("/")[-1]

    # Downloading latest binaries
    print("Latest %s version is: %s" % (control.name, version))
    print("Download URL is: %s" % download_url)
    if not isfile(latest_bin):
        print("Downloading: %s" % latest_bin)
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print("Binary is present: %s" % latest_bin)

    # Downloading extension pack
    print("Download Extension Pack URL is: %s" % download_ext_url)
    if not isfile(latest_ext_bin):
        print("Downloading: %s" % latest_ext_bin)
        wget(download_ext_url, latest_ext_bin, proxies=proxies)
    else:
        print("Extension pack binary is present: %s" % latest_ext_bin)

    # Deleting outdated binaries
    remove_outdated_binaries(version, list_extensions=[download_dict[control.target_os + "-" + ensure_list(control.architecture)[0]], "vbox-extpack"])

    # Checking version from file
    if get_os_version() == "Windows":
        version_from_file = get_version_from_binary(latest_bin)
        if Version(version_from_file, 4) != Version(version, 4) and version_from_file != "":
            print("ERROR: Binary file version do NOT corresponds to online version")
        else:
            print("INFO: Binary file version corresponds to online version")

    # Changing version of the package
    if Version(version, 4) > Version(control.get_software_version(), 4):
        print("Software version updated (from: %s to: %s)" % (control.get_software_version(), Version(version)))
        package_updated = True
    else:
        print("Software version up-to-date (%s)" % Version(version))
    control.set_software_version(version)
    control.save_control_to_wapt()

    # Validating or not update-package-sources
    return package_updated


def bs_index_of_to_dict(url, **kwargs):
    r"""Parse html "Index of" web page with BeautifulSoup and get a dict of the result

    Args:
        url (str): url of the web page to parse

    Return:
        result: a dict of the index URLs

    """
    result = {}
    if not url.endswith("/"):
        url = url + "/"

    for elem in bs_find_all(url, "a"):
        result[elem.text] = url + elem.get("href", "")

    return result

496090e9134ea1f00ae014447a0c93be431a7a56aa5329ed74ca6bb236c97248 : setup.py
ab84457fc09aa127badc4fa2a6618dca37ef16efad29231476c80c2baec896c8 : update_package.py
b42bceb358df8655920687654ad2e0b560cf91f885fbc6981187c3633f9d98d5 : virtualbox-6.1_6.1.50-161033~Debian~buster_amd64.deb
e951bcceaa888dbfed95529b40efcbc483e9c9f0b6cc7b50efe93f9459030a36 : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
bb86a2776f6409d850e2ef93795b8fc51e58e91400b7806da1d06d36459460f3 : WAPT/changelog.txt
07515348efb4f574007888afbf58bf60290530e52506ed8142b10e1745828e85 : Oracle_VM_VirtualBox_Extension_Pack-6.1.50.vbox-extpack
8a90ef9694a9e65057115d0279e5ec7c9e3b942414a582a983db771b8451b2aa : luti.json
01b48f3cc5a50c0626a8c74e3c76ea253ac0aeeb410f38525a46be449aa06a05 : WAPT/control

https://www.virtualbox.org/wiki/Changelog
6.1.38-26

Unix : now installing VirtualBox_Extension_Pack and disable update check like Windows
Debian : Fix binary name crashes ("~")
Windows : reducing variables