lazygit
Paquet d’installation silencieuse pour lazygit
								
								0.56.0-1
								
							
							
                                    Les paquets PREPROD sont des paquets construits via LUTI.
                                    Ils restent généralement 5 jours en PREPROD, après quoi un scan VirusTotal est effectué.
                                    
                                    Si le paquet réussit ce dernier contrôle, il est promu en PROD et publié sur le store.
                                
- package: tis-lazygit-portable
 - name: lazygit
 - version: 0.56.0-1
 - maintainer: Amel FRADJ,Bertrand Lemoigne
 - licence: MIT license
 - target_os: linux
 - impacted_process: lazygit
 - architecture: x64
 - signature_date:
 - size: 7.97 Mo
 - homepage : https://donorbox.org/lazygit
 
package           : tis-lazygit-portable
version           : 0.56.0-1
architecture      : x64
section           : base
priority          : optional
name              : lazygit
categories        : 
maintainer        : Amel FRADJ,Bertrand Lemoigne
description       : A simple terminal UI for git commands, written in Go with the gocui library
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : 
target_os         : linux
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : lazygit
description_fr    : Une interface de terminal simple pour les commandes git, écrite en Go avec la bibliothèque gocui
description_pl    : Prosty interfejs terminala dla poleceń git, napisany w języku Go przy użyciu biblioteki gocui
description_de    : Eine einfache Terminal-Oberfläche für Git-Befehle, geschrieben in Go mit der gocui-Bibliothek
description_es    : Una sencilla interfaz de terminal para comandos git, escrita en Go con la biblioteca gocui
description_pt    : Uma interface de terminal simples para comandos git, escrita em Go com a biblioteca gocui
description_it    : Una semplice interfaccia terminale per i comandi di git, scritta in Go con la libreria gocui
description_nl    : Een eenvoudige terminal UI voor git commando's, geschreven in Go met de gocui bibliotheek
description_ru    : Простой терминальный пользовательский интерфейс для команд git, написанный на Go с использованием библиотеки gocui
audit_schedule    : 
editor            : 
keywords          : 
licence           : MIT license
homepage          : https://donorbox.org/lazygit
package_uuid      : e79be909-b512-4694-95cb-0bb1b6a2e5b0
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : e34d0e3c2ab4bd743db7dde335dba0c5de73c28ad51e6ffcf003ca15650be2ee
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2025-11-01T10:26:29.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         : oonPJ3Lb7ezBWwb5VaQv7rmP82Gmaicfa6hTO016esQ/bqN6k0nG/9l/2T69MSTCkbbdI3RKi2sgUfI8D05DbNV+KMVlFvrHlrCqTGaaUUGx1I3jax5KK2z7lrWR4ELsI3zvzBV6sD3rvWeCPQBCX11n/7rTNN/wcPW58KfJ11zoxwphe6lulqRrOrTuprAZyUOjBO9zda/LTJtkdq8R9tw2w7dhJsOg0WObGySUvoXB/92vBT7Z95JqNinf6pmLzXf12vgxnCyVcYnE6NiRmyhvzoetzLoHDrOfHUfoYf0dqu0qoeHeEys96KJNvJWOhSUviaLudJo75fkPbG+ILw==
                        # -*- coding: utf-8 -*-
from setuphelpers import *
import tarfile
from typing import List, Optional
app_name = "lazygit"
bin_name = "lazygit"
bin_path = "/usr/local/bin"
app_path = makepath("/opt", app_name)
bin_target = makepath(bin_path, bin_name)
app_target = makepath(app_path, bin_name)
def install():
    extract_path = glob.glob("lazygit_*_linux_x86_64.tar.gz")[0]
    mkdirs(app_path)
    extract_tar(extract_path, app_path)
    
    if isfile(bin_target):
        remove_file(bin_target)
    os.symlink(app_target, bin_target)
def uninstall():
    print(f"Removing {app_name}")
    if isfile(bin_target):
        remove_file(bin_target)
    if isdir(app_path):
        remove_tree(app_path)
def extract_tar(
    tar_path: str,
    extract_path: str = ".",
    exclude_list: Optional[List[str]] = None,
    include_list: Optional[List[str]] = None
) -> None:
    """
    Extracts a tar archive to the given directory, with optional inclusion or exclusion filtering.
    :param tar_path: Path to the .tar (or .tar.gz, .tar.bz2, etc.) archive.
    :param extract_path: Directory where files should be extracted.
    :param exclude_list: List of path prefixes to exclude from extraction.
    :param include_list: List of path prefixes to include exclusively. Overrides exclude_list if provided.
    """
    with tarfile.open(tar_path, 'r:*') as tar:
        all_members = tar.getmembers()
        if include_list:
            include_set = set(include_list)
            members = [
                m for m in all_members
                if any(m.name.startswith(inc) for inc in include_set)
            ]
        elif exclude_list:
            exclude_set = set(exclude_list)
            members = [
                m for m in all_members
                if not any(m.name.startswith(exc) for exc in exclude_set)
            ]
        else:
            members = all_members
        tar.extractall(path=extract_path, members=members)
                            # -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
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
    api_url = "https://api.github.com/repos/jesseduffield/lazygit/releases/latest"
    os_type = control.target_os + "-" + ensure_list(control.architecture)[0]
    releases_dict = wgets(api_url, proxies=proxies, as_json=True)
    version = releases_dict["tag_name"].replace("v", "")
    update_dict = {
        "linux-arm64": f"lazygit_{version}_linux_arm64.tar.gz",
        "linux-x64": f"lazygit_{version}_linux_x86_64.tar.gz"
    }
    for asset in releases_dict["assets"]:
        if asset["name"] == update_dict[os_type]:
            download_url = asset["browser_download_url"]
            latest_bin = download_url.rsplit("/", 1)[-1]
            latest_bin_extension =  latest_bin.rsplit(".", 1)[-1]
            break
    # 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
                            01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
ae2f02f3b51fe09df98417c00687009ee119837b786bac699fda89c52d78043a : WAPT/control
e34d0e3c2ab4bd743db7dde335dba0c5de73c28ad51e6ffcf003ca15650be2ee : WAPT/icon.png
ced13c2ae074bbf6c201bc700ee2971e193b811c3b2ae0ed4d00d6225c6c9ab7 : lazygit_0.56.0_linux_x86_64.tar.gz
f9d9b0e82d58dd984166e51f27289a20c1745d3b17e648ff6536eeec01f2dce5 : luti.json
bdd73c3cbc061c2c879740564ee9ff3334e2e82484d99466368f6e3a368b297c : setup.py
679aab414f17d5aa49c595cecd396e00105092cd61d81bd55821f98456a3a74c : update_package.py