tis-vscode icon

Visual Studio Code

Paquet d’installation silencieuse pour Visual Studio Code

1.108.2-44
Development
Development

Les paquets PREPROD sont des paquets construits via LUTI. Ils restent généralement 5 jours en PREPROD, après quoi un deuxième scan VirusTotal est effectué pour vérifier que le status n'a pas changé.
Si le paquet réussit ce dernier contrôle, il est promu en PROD et publié sur le store.

  • package: tis-vscode
  • name: Visual Studio Code
  • version: 1.108.2-44
  • categories: Development
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ,Jordan ARNAUD
  • editor: Microsoft
  • licence: MIT,TypeScript
  • locale: all
  • target_os: darwin
  • impacted_process: Code,code
  • architecture: x64
  • signature_date:
  • size: 165.30 Mo
  • installed_size: 415.31 Mo
  • homepage : https://code.visualstudio.com/

package           : tis-vscode
version           : 1.108.2-44
architecture      : x64
section           : base
priority          : optional
name              : Visual Studio Code
categories        : Development
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Jordan ARNAUD
description       : Visual Studio Code is a source-code editor developed by Microsoft
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : all
target_os         : darwin
min_wapt_version  : 2.3
sources           : https://code.visualstudio.com/Download
installed_size    : 415312378
impacted_process  : Code,code
description_fr    : Visual Studio Code est un éditeur de code extensible développé par Microsoft
description_pl    : Visual Studio Code to edytor kodu źródłowego opracowany przez firmę Microsoft
description_de    : Visual Studio Code ist ein von Microsoft entwickelter Quellcode-Editor
description_es    : Visual Studio Code es un editor de código fuente desarrollado por Microsoft
description_pt    : Visual Studio Code é um editor de código-fonte desenvolvido pela Microsoft
description_it    : Visual Studio Code è un editor di codice sorgente sviluppato da Microsoft
description_nl    : Visual Studio Code is een broncode-editor ontwikkeld door Microsoft
description_ru    : Visual Studio Code - это редактор исходного кода, разработанный компанией Microsoft
audit_schedule    : 
editor            : Microsoft
keywords          : visual,studio,code,vs,vscode,editor,debugger
licence           : MIT,TypeScript
homepage          : https://code.visualstudio.com/
package_uuid      : 795caabb-cef4-46d3-b3c2-1adb4825617f
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://code.visualstudio.com/updates
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 50b90b0ed98d91261db603bf1d2f762c0912d9f615961b92af1e483fbd129aa7
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2026-01-23T22:30:30.000000
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
signature         : bXBB5Q91DG/gF+WWoUb6S0LeMYscn8NAB+9jq+eS3Hrx1uiStyxmaL+QDtncA1UAI4WZNKVHebjDYYMlv7f3Z/+6c2uBgksmUeq1tiIK2ZO+hZqiE6VBq2P2nYbJW3T+AZDQI+YpHiErfLAA7qg8MBsuL0cYbCQYTncG88hApxbX7a8jLKkUqm79kTgaAYo20qo4jhWBURruF5TvRn3ooE6pzgoigEYFaVvVi/nNyH9L8BSoAu8+oaVPam/pvdBVm2L2k9lXLcOgEEYbrszLUn4VKA5wctgWhZfefeukFFWY1b2gddQ2DbCRls7xdnrDQyGGDpmyokgzGQeY5fstsQ==

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


def install():
    app_dir = "/Applications/Visual Studio Code.app"
    bin_name = glob.glob("VSCode-darwin*.zip")[0]

    # Installing the package
    if isdir(app_dir):
        remove_tree(app_dir)

    run("unzip %s -d /Applications/" % bin_name)
    run('chmod -R 755 "%s"' % app_dir)
    run('chown -R root:wheel "%s"' % app_dir)

    # Removing the quarantine bit on the file (set by safari when downloaded from internet)
    run('xattr -d -r com.apple.quarantine "%s"' % app_dir)

    try:
        os.symlink("/Applications/Visual Studio Code.app/Contents/Resources/app/bin/code", "/usr/local/bin/code")
    except:
        print("code is already in PATH")


def uninstall():
    # Uninstalling the package
    uninstall_app("Visual Studio Code.app")


def session_setup():
    print("Disabling: Telemetry, automatic updates, surveys")

    # Configuration procedure: https://supunkavinda.blog/vscode-editing-settings-json
    # C:\Users\username\AppData\Roaming\Code\User\settings.json

    # Initializing variables
    user_conf_dir = makepath(user_home_directory(), "Library", "Application Support", "Code", "User")
    user_conf_file = makepath(user_conf_dir, "settings.json")
    user_conf_content = r"""{
    "update.mode": "none",
    "update.enableWindowsBackgroundUpdates": false,
    "update.showReleaseNotes": false,
    "telemetry.telemetryLevel": "off",
    "typescript.surveys.enabled": false,
    "extensions.autoCheckUpdates": false,
    "extensions.autoUpdate": false
}"""

    user_conf_data = json.loads(user_conf_content.strip(","))
    if not isdir(user_conf_dir):
        mkdirs(user_conf_dir)
    if not isfile(user_conf_file):
        print("Creating: %s" % user_conf_file)
        json_write_file(user_conf_file, user_conf_data)
    else:
        new_user_conf_data = json_load_file(user_conf_file)
        new_user_conf_data.update(user_conf_data)
        print("Updating: %s" % user_conf_file)
        json_write_file(user_conf_file, new_user_conf_data)

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


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name

    os_dict = {
        "windows-x64": "win32-x64",
        "windows-arm": "win32-arm64",
        "redhat_based-x64": "linux-rpm-x64",
        "debian(>=12),ubuntu(>=20)-x64": "linux-deb-x64",
        "debian(>=12),ubuntu(>=20)-arm64": "linux-deb-arm64",
        "darwin-x64": "darwin",
        "darwin-arm": "darwin-arm64",
    }

    os_type = control.target_os + "-" + ensure_list(control.architecture)[0]

    api_url = "https://api.github.com/repos/microsoft/vscode/releases/latest"

    # Getting latest version information from official sources
    print("API used is: %s" % api_url)
    json_load = wgets(api_url, proxies=proxies, as_json=True)
    version = json_load["tag_name"]
    download_url = f"https://update.code.visualstudio.com/{version}/{os_dict[os_type]}/stable"
    download_url = requests.head(download_url, proxies=proxies).headers['Location']
    latest_bin = download_url.rsplit('/', 1)[-1]
    latest_bin_extension = latest_bin.rsplit('.', 1)[-1]

    # Downloading latest binaries
    print(f"Latest {app_name} version is: {version}")
    print(f"Download URL is: {download_url}")
    if not isfile(latest_bin):
        print(f"Downloading: {latest_bin}")
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print(f"Binary is present: {latest_bin}")

    # Changing version of the package
    if Version(version) > Version(control.get_software_version()):
        print(f"Software version updated (from: {control.get_software_version()} to: {Version(version)})")
        package_updated = True
    else:
        print(f"Software version up-to-date ({Version(version)})")

    for f in glob.glob(f'*.{latest_bin_extension}'):
        if f != latest_bin:
            remove_file(f)

    control.set_software_version(version)
    control.save_control_to_wapt()

    return package_updated

dcdef164826c8103d7ea2cda1fc6685f2dd22dc6d708dc09bc4f1a845c157c5f : VSCode-darwin.zip
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
0ca321746ad0573347ac527317e023e1650dec3d1908e3d6c6cfe887f344ec3b : WAPT/control
50b90b0ed98d91261db603bf1d2f762c0912d9f615961b92af1e483fbd129aa7 : WAPT/icon.png
9b2735b86e922c1033f41b06d33ae6190d9ff5efe51a8830fabf82b5794aaef2 : luti.json
062f1245116b6a2ee67ab1ff6f75b7f77a26203b11dd6c593f514d8d2c793ae8 : setup.py
5c776bd9e4ce48cbae905abc72ee960d7066435247f84999df850c055bd0ca58 : update_package.py