tis-librecad icon

LibreCAD

Paquet d’installation silencieuse pour LibreCAD

2.2.1.2-13

  • package: tis-librecad
  • name: LibreCAD
  • version: 2.2.1.2-13
  • categories: Utilities,Media
  • maintainer: WAPT Team,Tranquil IT,Simon Fonteneau,Gaëtan SEGAT
  • editor: LibreCAD
  • licence: GPLv2
  • locale: all
  • target_os: windows
  • impacted_process: LibreCAD
  • architecture: all
  • signature_date:
  • size: 26.74 Mo
  • installed_size: 149.20 Mo
  • homepage : https://librecad.org

package           : tis-librecad
version           : 2.2.1.2-13
architecture      : all
section           : base
priority          : optional
name              : LibreCAD
categories        : Utilities,Media
maintainer        : WAPT Team,Tranquil IT,Simon Fonteneau,Gaëtan SEGAT
description       : LibreCAD is a free computer-assisted design software. It allows two-dimensional drawing such as technical drawings, construction documentation, or instructions for use.
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.0
sources           : https://librecad.org/#download
installed_size    : 149204992
impacted_process  : LibreCAD
description_fr    : LibreCAD est un logiciel libre de dessin assisté par ordinateur. Il permet le dessin en deux dimensions comme des plans techniques, des documentations de construction, ou encore des modes d’emploi.
description_pl    : LibreCAD to darmowy program do komputerowego wspomagania projektowania. Umożliwia on dwuwymiarowe rysowanie, takie jak rysunki techniczne, dokumentacja budowlana czy instrukcje obsługi
description_de    : LibreCAD ist eine kostenlose Software für computergestütztes Zeichnen. Sie ermöglicht zweidimensionales Zeichnen wie technische Zeichnungen, Konstruktionsunterlagen oder Gebrauchsanweisungen
description_es    : LibreCAD es un software gratuito de diseño asistido por ordenador. Permite realizar dibujos bidimensionales, como dibujos técnicos, documentación de construcción o instrucciones de uso
description_pt    : O LibreCAD é um software de desenho assistido por computador gratuito. Permite o desenho bidimensional tal como desenhos técnicos, documentação de construção, ou instruções de utilização
description_it    : LibreCAD è un software gratuito di progettazione assistita da computer. Consente di realizzare disegni bidimensionali come disegni tecnici, documentazione di costruzione o istruzioni per l’uso
description_nl    : LibreCAD is een gratis computerondersteunde ontwerpsoftware. Er kunnen tweedimensionale tekeningen mee worden gemaakt, zoals technische tekeningen, constructiedocumentatie of gebruiksaanwijzingen
description_ru    : LibreCAD - это бесплатное программное обеспечение для компьютерного проектирования. Она позволяет выполнять двухмерные чертежи, такие как технические чертежи, строительная документация или инструкции по эксплуатации
audit_schedule    : 
editor            : LibreCAD
keywords          : 
licence           : GPLv2
homepage          : https://librecad.org
package_uuid      : 6decc909-72e3-4c7e-bfa5-cc889dc30c0b
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : dd9fbdd1f420a7b8601800a9573bbb73a2803aec623ae75458babe4d42518d9d
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-07-20T08:07:34.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         : B7RyEycee1M7D/VisuWHItGFCpAmNsYRr2RdE/Xv2pG60Lb72R71yUJqYQPpbWmC59uweaVDJdTl00HCP9yEvCZNpcjqHTu/rLZUJvuxReCmOUTjYpV4e3Wkmh0t3bbOtKEsodiP0zNdNe88DoU4VA6ApIdW/C90av7E/KQsa4Up/n1UR1n9dOagRui0y1tQVNeKu8ldbMvs3Ks06F9iccMlU9RQZX/AUM/ZNHSYhRhK/5IJStrTStrniVnmp/307HFZb1e6eXo8NmTVB06gi0gjgCNLMdfBfkjfV6Hl+6eGlrtF2mosL6mKyOZ8nP09UlSHRQnd4WWANOJIrmyDCw==

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

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

"""

def get_version(app_registry_dict):
    return app_registry_dict["version"].split("v")[1]

# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
bin_contains = "LibreCAD"
silentflags = "/S"
app_uninstallkey = "LibreCAD (x64)"


def install():

    # #Uninstalling other version of LibreCAD
    for to_uninstall in installed_softwares("LibreCAD"):
        print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
        killalltasks(ensure_list(control.impacted_process))
        run(uninstall_cmd(to_uninstall["key"]))
        wait_uninstallkey_absent(to_uninstall["key"])

    # Declaring local variables
    bin_name = glob.glob("*%s*.exe" % bin_contains)[0]

    # Installing the software
    print("Installing: %s" % bin_name)
    install_exe_if_needed(
        bin_name,
        silentflags=silentflags,
        key=app_uninstallkey,
        min_version = control.get_software_version(),
        get_version = get_version,
    )
    remove_desktop_shortcut(bin_contains)
    create_programs_menu_shortcut(bin_contains, makepath(programfiles, "LibreCAD", "LibreCAD.exe"))


def uninstall():
    remove_programs_menu_shortcut(bin_contains)

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


def update_package():
    # Declaring local variables
    result = False
    proxies = get_proxies()
    bin_contains = "LibreCAD"
    bin_end = ".exe"

    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name
    api_url = "https://api.github.com/repos/LibreCAD/LibreCAD/releases/latest"

    # Getting latest version information from official sources
    print("API used is: %s" % api_url)
    json_load = json.loads(wgets(api_url, proxies=proxies))
    for download in json_load["assets"]:
        if bin_contains in download["name"] and bin_end in download["name"]:
            download_url = download["browser_download_url"]
            version = json_load["tag_name"].replace("v", "")
            latest_bin = download["name"]
            break

    print("Latest %s version is: %s" % (app_name, version))
    print("Download URL is: %s" % download_url)

    # Downloading latest binaries
    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)))
        result = True
    else:
        print("Software version up-to-date (%s)" % Version(version))
    control.version = "%s-%s" % (Version(version), control.version.split("-", 1)[-1])
    # control.set_software_version(version)
    control.save_control_to_wapt()

    # Deleting outdated binaries
    remove_outdated_binaries(version)

    # Validating update-package-sources
    return result

fbc072ff0e59a9175563821b69fb791a3e8f8d97f60d10984ae4f7da6ca406b8 : LibreCAD-v2.2.1.2-win64.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
5da3a8487a5b2f6ca0bae48a6c2a239b9d8eaf77e73ad77fc518b4ce7c2f7c68 : WAPT/changelog.txt
b31c01f58d2f4b1c01960f80f519af5ca7929ea18386d82578fe6c09fa9d049e : WAPT/control
dd9fbdd1f420a7b8601800a9573bbb73a2803aec623ae75458babe4d42518d9d : WAPT/icon.png
c6246be77fa0d87cb8860fc9de433dfc02b56edaaca368712d5b6267141eeee4 : WAPT/wapt.psproj
033c356cce12801522dd5a5da12167bdf1257c58b34c1d4b488b7f4787911bfe : luti.json
1da3fe71e3ade99d27a673d3cdaff964ffa8fb43d761250d9d95d8068e2473fd : setup.py
1f0c5f5c230ece9f78fa9d86ab166184483085e12fd855295246d97146137aa9 : update_package.py

2.1.3
===
improve code
slipt update package