tis-rust icon

Rust MSVC

Paquet d’installation silencieuse pour Rust MSVC

1.94.0-20
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-rust
  • name: Rust MSVC
  • version: 1.94.0-20
  • categories: Development
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ
  • licence: opensource_free,wapt_public
  • locale: all
  • target_os: windows
  • impacted_process: rustc,rustdoc,rust-lld,rust-analyzer-proc-macro-srv,cargo-credential-wincred,cargo-credential-1password,cargo
  • architecture: x64
  • signature_date:
  • size: 599.76 Mo
  • installed_size: 375.83 Mo

package           : tis-rust
version           : 1.94.0-20
architecture      : x64
section           : base
priority          : optional
name              : Rust MSVC
categories        : Development
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ
description       : Rust is a multi-paradigm compiled programming language designed and developed by Mozilla Research since 2010. It was designed to be "a reliable, concurrent, practical language"
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
sources           : https://forge.rust-lang.org/infra/other-installation-methods.html#standalone-installers
installed_size    : 375830794
impacted_process  : rustc,rustdoc,rust-lld,rust-analyzer-proc-macro-srv,cargo-credential-wincred,cargo-credential-1password,cargo
description_fr    : Rust est un langage de programmation compilé multi-paradigme conçu et développé par Mozilla Research depuis 2010. Il a été conçu pour être "un langage fiable, concurrent et pratique"
description_pl    : Rust to wieloparadygmatowy, kompilowany język programowania zaprojektowany i rozwijany przez Mozilla Research od 2010 roku. Został zaprojektowany jako "niezawodny, współbieżny, praktyczny język"
description_de    : Rust ist eine kompilierte Multi-Paradigma-Programmiersprache, die seit 2010 von Mozilla Research entworfen und entwickelt wird. Sie soll "eine zuverlässige, nebenläufige, praktische Sprache" sein
description_es    : Rust es un lenguaje de programación compilado multiparadigma diseñado y desarrollado por Mozilla Research desde 2010. Fue diseñado para ser "un lenguaje fiable, concurrente y práctico"
description_pt    : Rust é uma linguagem de programação compilada multiparadigma concebida e desenvolvida pela Mozilla Research desde 2010. Foi concebida para ser "uma linguagem fiável, concorrente e prática"
description_it    : Rust è un linguaggio di programmazione compilato multi-paradigma progettato e sviluppato da Mozilla Research a partire dal 2010. È stato progettato per essere "un linguaggio affidabile, concorrente e pratico"
description_nl    : Rust is een multi-paradigma gecompileerde programmeertaal, ontworpen en ontwikkeld door Mozilla Research sinds 2010. Het is ontworpen om "een betrouwbare, gelijktijdige, praktische taal" te zijn
description_ru    : Rust - это мультипарадигмальный компилируемый язык программирования, разработанный и развиваемый Mozilla Research с 2010 года. Он был задуман как "надежный, параллельный, практичный язык"
audit_schedule    : 
editor            : 
keywords          : 
licence           : opensource_free,wapt_public
homepage          : 
package_uuid      : 6900aed7-74c1-4995-807e-9416285a4f31
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://releases.rs/
min_os_version    : 
max_os_version    : 
icon_sha256sum    : fe914ad761fb21126e7ec721598b2397368d3d44a06e7569419adb608ae67efc
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2026-03-05T19:34:00.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         : k7GsaFeEe20+Oa8T46qw9o41MJVvt4Z7SJUzziHv40zQSAj+As0CyQ4RQ5Z8q48faMDKCHHWy4CluWW5ltWQp/yXYQmbYWqFxQ5pIGdVUhOjqSOdgYyZs0jaTLynVNo2PnUyYl2DP4wjAKVMkQKxGYpaP/wjyS8DHPKm3g/DhaSkdCaNYhavaueuN3mNmkBC2NtStL/BXSmgKzRf/5bSLlD3FrIVn9N7tZaRPwNK1QXltyfJNCuwvEOVdJhCYQLVcKdAILBS4qnaVF/fKuDZpsRdBGKnx1WS/pb1aSknQ+/YwI51EcULx6jwB+GWHZivzvG9+A3dimQgBFI58qItxw==

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

# https://rust-lang.github.io/rustup/installation/windows-msvc.html

# MSI (c) (54:F8) [11:35:05:822]: Switching to server: INSTALLDIR_USER="C:\Users\jpadmin\AppData\Local\Programs\Rust stable MSVC 1.70" INSTALLDIR_MACHINE="C:\Program Files (x86)\Rust stable MSVC 1.70" TARGETDIR="C:\" ALLUSERS="1" INSTALLDIR="C:\Program Files (x86)\Rust stable MSVC 1.70" CURRENTDIRECTORY="C:\waptdev\wapt-packages\rust\windows\all" CLIENTUILEVEL="0" CLIENTPROCESSID="5972" USERNAME="superadmin" SOURCEDIR="C:\waptdev\wapt-packages\rust\windows\all\" ACTION="INSTALL" EXECUTEACTION="INSTALL" SECONDSEQUENCE="1" ROOTDRIVE="C:\" INSTALLLEVEL="1" WIXUI_INSTALLDIR_VALID="1"  ADDLOCAL=Rustc,Path

properties = {
    "ALLUSERS": "1",
    # "ADDLOCAL": "Rustc,Docs,Cargo,Std,Path",
    # "ADDLOCAL": "Rustc,Cargo,Std,Path",
    "ADDLOCAL": "Rustc,Cargo,Std,Path",
}


def install():

    for soft in installed_softwares('rust '):
        if not "The Rust Project Developers" == soft['publisher']:
            continue
        if Version(soft['version']) < Version(control.get_software_version()):
            run(uninstall_cmd(soft['key']))

    bin_names = glob.glob("rust-*.msi")

    for bin_name in bin_names:
        install_msi_if_needed(
            bin_name,
            properties=properties,
            timeout=1200,
        )

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


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


    git_repo = "rust-lang/rust"
    url_api = "https://api.github.com/repos/%s/releases/latest" % git_repo

    # Getting latest informations from Github API
    json_load = json.loads(wgets(url_api, proxies=proxies))

    version = json_load["tag_name"]
    #version = '1.65.0'

    download_dict = {
        "windows-x64": f"https://static.rust-lang.org/dist/rust-{version}-x86_64-pc-windows-msvc.msi",
        "windows-x86": f"https://static.rust-lang.org/dist/rust-{version}-i686-pc-windows-msvc.msi",
        "linux-x64": f"https://static.rust-lang.org/dist/rust-{version}-x86_64-unknown-linux-gnu.tar.gz",
        "linux-arm64": f"https://static.rust-lang.org/dist/rust-{version}-aarch64-unknown-linux-gnu.tar.gz",
        "darwin-x64": f"https://static.rust-lang.org/dist/rust-{version}-x86_64-apple-darwin.tar.gz",
        "darwin-arm": f"https://static.rust-lang.org/dist/rust-{version}-aarch64-apple-darwin.tar.gz",
        "linux-arm": f"https://static.rust-lang.org/dist/rust-{version}-armv7-unknown-linux-gnueabihf.tar.gz"
    }
    download_url = download_dict[control.target_os + "-" + ensure_list(control.architecture)[0]]
    download_url2 = download_dict['windows-x86']

    latest_bin = download_url.split("/")[-1]
    latest_bin2 = download_url2.split("/")[-1]

    # Downloading latest binaries
    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 latest binaries
    print("Download URL is: %s" % download_url2)
    if not isfile(latest_bin2):
        print("Downloading: %s" % latest_bin2)
        wget(download_url2, latest_bin2, proxies=proxies)
    else:
        print("Binary is present: %s" % latest_bin)

    # 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))

    for f in glob.glob('*.exe'):
        if f != latest_bin and f != latest_bin2:
            remove_file(f)

    control.set_software_version(version)
    control.save_control_to_wapt()

    # Validating or not update-package-sources
    return package_updated

01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
87f7e95c3f44938f1389415089a112d089bac086c084114d7cdc39a65933730f : WAPT/control
fe914ad761fb21126e7ec721598b2397368d3d44a06e7569419adb608ae67efc : WAPT/icon.png
6ac1354e53247df54e60a10d1e41912908021dbc3f9787335db78793bf10a6cd : luti.json
d75cc47621767dd39ca6c9caf0df3dcb4055376fba804d4edd8e28fad29e8e22 : rust-1.94.0-i686-pc-windows-msvc.msi
09ce8b5bb81f477211d5192eea240ce3982fc945e09eda9697ae787d59bfaaba : rust-1.94.0-x86_64-pc-windows-msvc.msi
98df41bc0fedb6058d24769b5aeacacbd93583ff3c932c31591381e0fa53d023 : setup.py
610f4bc7de2c0aa403707375a63f806e903e92c539affecb2cb2ef20ce399c20 : update_package.py