tis-r-project icon

R Project

Paquet d’installation silencieuse pour R Project

4.2.2-1

  • package: tis-r-project
  • name: R Project
  • version: 4.2.2-1
  • categories: Utilities
  • maintainer: WAPT Team,Tranquil IT,Pierre Cosson,Jimmy PELE
  • locale: all
  • target_os: darwin
  • impacted_process: R,Rscript,R,Rcmd,Rfe,Rgui,Rscript,RSetReg,Rterm
  • architecture: x64
  • signature_date:
  • size: 92.44 Mo
  • installed_size: 172.45 Mo

package           : tis-r-project
version           : 4.2.2-1
architecture      : x64
section           : base
priority          : optional
name              : R Project
categories        : Utilities
maintainer        : WAPT Team,Tranquil IT,Pierre Cosson,Jimmy PELE
description       : R is a free software environment for statistical computing and graphics
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : darwin
min_wapt_version  : 2.0
sources           : https://cloud.r-project.org/
installed_size    : 172450090
impacted_process  : R,Rscript,R,Rcmd,Rfe,Rgui,Rscript,RSetReg,Rterm
description_fr    : R est un environnement logiciel libre pour le calcul statistique et les graphiques
description_pl    : R to darmowe środowisko programistyczne do obliczeń statystycznych i grafiki
description_de    : R ist eine freie Softwareumgebung für statistische Berechnungen und Grafiken
description_es    : R es un entorno de software libre para el cálculo estadístico y los gráficos
description_pt    : R é um ambiente de software livre para computação estatística e gráfica
description_it    : R è un ambiente di software libero per il calcolo statistico e la grafica
description_nl    : R is een vrije softwareomgeving voor statistische berekeningen en grafieken
description_ru    : R - это свободная программная среда для статистических вычислений и графики
audit_schedule    : 
editor            : 
keywords          : 
licence           : 
homepage          : 
package_uuid      : e3393487-8def-46ea-bea4-acd5900c0ee1
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 887962500a833b24cf37935a44f8a01589b66cf1e464e1d2b4909dd17c52ab8d
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature         : RVmN+7He1nesc1AR5NVngYbS2PgG1DxW1nLah35sFn4DNqnHABN4cPyLMp8dvoaVUKrjNt/RfHiq36CJXd/4n4GakMvVyYH7sJtKjjyuRV6F8T6FZUIUBprLOCqgK+ecep3ewJtQNX0xzTu4DsRNGz/Hs1TJf6qP000ECPeZQ+3ZOZbuffNcsUjMHzolAeZgFTI2AxBh0z07utL8bOOV6UzxeO/7SqVM8487ULoTAVSUX/ME3u4LfbM6OuoYjfnEXTw/Wv8GXAEs/YCWoLnl4bvtkWXSIdTQ4ninKunXaAPfpuuT4Ed66lAUz4CGbEki51qje+FjWpUjHI417iRp5A==
signature_date    : 2023-03-22T10:00:34.359927
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 *

bin_contains = "R-"
app_path = "/Applications/R.app"


def install():
    # Declaring local variables
    package_version = control.get_software_version()
    bin_name = glob.glob("*%s*.pkg" % bin_contains)[0]

    # check if app is already installed
    if isdir(app_path):
        if is_local_app_installed(app_path, check_version=package_version):
            print("App already installed or newer version present")
        else:
            # remove previous version
            print("Removing old app")
            remove_tree(app_path)
            # Installing the package
            print("Installing: %s" % bin_name)
            install_pkg(bin_name, re)

    else:
        # Installing the package
        print("Installing: %s" % bin_name)
        install_pkg(bin_name)


def uninstall():
    # Uninstalling package
    print("Uninstalling: %s" % app_path)
    remove_tree(app_path)
    uninstall_pkg("org.R-project.R.GUI.pkg")
    uninstall_pkg("org.r-project.x86_64.texinfo")
    uninstall_pkg("org.R-project.R.fw.pkg")
    uninstall_pkg("org.r-project.x86_64.tcltk")


def audit():
    package_version = control.get_software_version()
    if isdir(app_path):
        if is_local_app_installed(app_path, check_version=package_version):
            print("%s is present with proper version" % app_path)
            return "OK"
        else:
            print("%s version is outdated " % app_path)
            return "WARNING"
    else:
        print("%s is missing " % app_path)
        return "ERROR"

# -*- 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://cloud.r-project.org/bin/macosx/"

    # Getting latest version from official sources
    print("URL used is: %s" % url)
    for bs_search in bs_find_all(url, "a", proxies=proxies):
        if not "arm64" in bs_search["href"] and ".pkg" in bs_search["href"]:
            version = bs_search["href"].split("-")[1].split(".pkg")[0]
            latest_bin = bs_search["href"].split("/")[1]
            download_url = url + bs_search["href"]
            break

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

    # Changing version of the package
    if Version(version) > Version(control.get_software_version()):
        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()

    # Deleting outdated binaries
    remove_outdated_binaries(version)

    # Validating or not update-package-sources
    return package_updated

4fdaef1c395e9bf9df0abf74e11221ecc8b33cf8c9682bda496b663a30703e8d : setup.py
5c0122f66bf042f2c1356a0747b8e68d3fe05e8d568ba6eacf15d44382e6681a : update_package.py
df8db457fcc8aafbe1b084f87ec9fa8763fbcf909f9a252d05c28eb4c2aff0ff : R-4.2.2.pkg
887962500a833b24cf37935a44f8a01589b66cf1e464e1d2b4909dd17c52ab8d : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
17d40d45ac4b2cf46500909f4391b70d01d220e68599ef6da4d1e8f44476115a : luti.json
657a330bb81bfaf4a9e17f1dc958458f5468cde6f158a53a5ba1ae6e276c530d : WAPT/control