tis-rust icon

Rust MSVC

Paquet d’installation silencieuse pour Rust MSVC

1.95.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.95.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: 618.19 Mo
  • installed_size: 375.83 Mo

package           : tis-rust
version           : 1.95.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      : 854e6acf-0655-4157-84f7-ae1507a98a6f
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-04-16T19:07:22.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         : EWxLtFDdVHZSVKA/naDDdYFO5GqRfAriKm4Wh5P+KoDMbD9QnmqEWlQzoukvqHiLKgupvIQjAMYneUaINi73VgKdM2nZuiDZ9TPRerxKIHck2GQwcJim+8id6RdEw2aOjizSQcLtqhwVxvpHX88/dTSmByB35rOy/9y5X/XsL7RFdFZj5Kg+mmZr5LWGeF1Avo+Nmx/d0Gs5DJq0TXRI64H/wceku0FdkuPTWaNS3jacHG7y5QtHvZ2s+TY6UIgZHxi0o4Jkl347gSY0nUAQwHmCIL2T4DIBeUC2veMEHryYV8LtB37iGkDh+St82KC+Pa4L17F4YVN2dXvlZzxfvA==

# -*- 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
5035d163f7dc7be01daf5ef22c7ff0f82cf94eaed248ecc257f3e048206c18c3 : WAPT/control
fe914ad761fb21126e7ec721598b2397368d3d44a06e7569419adb608ae67efc : WAPT/icon.png
4c714fb3faffe8194c4b6028c84bd3c3842d82ac6d3e07732d7dd5ca82d44aaf : luti.json
afcc1bbf9283b92f82590f42e7a87bf4f455381e51c760f524848055ac789e79 : rust-1.95.0-i686-pc-windows-msvc.msi
08d228850565cfe421da6faeac029fb1f0c8341219d0dd9490d42a8355aa0703 : rust-1.95.0-x86_64-pc-windows-msvc.msi
98df41bc0fedb6058d24769b5aeacacbd93583ff3c932c31591381e0fa53d023 : setup.py
610f4bc7de2c0aa403707375a63f806e903e92c539affecb2cb2ef20ce399c20 : update_package.py