tis-gimp icon

GIMP

Silent install package for GIMP

3.0.6.1-3
Media
Media

  • package: tis-gimp
  • name: GIMP
  • version: 3.0.6.1-3
  • categories: Media
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELE,Simon Fonteneau
  • editor: The GIMP Development Team
  • licence: GPLv3+
  • locale: all
  • target_os: windows
  • impacted_process: gimp
  • architecture: all
  • signature_date:
  • size: 309.88 Mo
  • homepage : https://www.gimp.org/

package           : tis-gimp
version           : 3.0.6.1-3
architecture      : all
section           : base
priority          : optional
name              : GIMP
categories        : Media
maintainer        : WAPT Team,Tranquil IT,Jimmy PELE,Simon Fonteneau
description       : GIMP (GNU Image Manipulation Program) is a free and open-source raster graphics editor used for image retouching and editing, free-form drawing, converting between different image formats, and more specialized tasks.
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.5
sources           : https://gimp.org/downloads/
installed_size    : 
impacted_process  : gimp
description_fr    : GIMP (GNU Image Manipulation Program) est un outil d'édition et de retouche d'image
description_pl    : GIMP (GNU Image Manipulation Program) to darmowy i open-source'owy edytor grafiki rastrowej wykorzystywany do retuszu i edycji obrazów, rysowania dowolnych form, konwersji pomiędzy różnymi formatami obrazów oraz bardziej specjalistycznych zadań
description_de    : GIMP (GNU Image Manipulation Program) ist ein freier und quelloffener Editor für Rastergrafiken, der für Bildretuschen und -bearbeitung, Freiformzeichnungen, Konvertierung zwischen verschiedenen Bildformaten und weitere spezielle Aufgaben verwendet wird
description_es    : GIMP (GNU Image Manipulation Program) es un editor de gráficos rasterizados gratuito y de código abierto que se utiliza para el retoque y la edición de imágenes, el dibujo de forma libre, la conversión entre diferentes formatos de imagen y otras tareas más especializadas
description_pt    : GIMP (GNU Image Manipulation Program) é um editor gráfico raster gratuito e de código aberto utilizado para retoque e edição de imagens, desenho de formas livres, conversão entre diferentes formatos de imagem, e tarefas mais especializadas
description_it    : GIMP (GNU Image Manipulation Program) è un editor di grafica raster gratuito e open-source utilizzato per il ritocco e la modifica delle immagini, per il disegno a forma libera, per la conversione tra diversi formati di immagine e per compiti più specializzati
description_nl    : GIMP (GNU Image Manipulation Program) is een vrije en open-source grafische bewerker voor rasterafbeeldingen die wordt gebruikt voor het retoucheren en bewerken van afbeeldingen, tekenen in vrije vorm, converteren tussen verschillende afbeeldingsformaten, en meer gespecialiseerde taken
description_ru    : GIMP (GNU Image Manipulation Program) - это бесплатный редактор растровой графики с открытым исходным кодом, используемый для ретуширования и редактирования изображений, рисования в свободной форме, преобразования между различными форматами изображений и других специализированных задач
audit_schedule    : 
editor            : The GIMP Development Team
keywords          : gimp,gnu,image,manipulation,program,raster,graphic,graphics,editor,retouching,editing,drawing
licence           : GPLv3+
homepage          : https://www.gimp.org/
package_uuid      : b8449717-898e-44d4-826d-d8cdfeac1de4
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://www.gimp.org/release-notes/
min_os_version    : 10
max_os_version    : 
icon_sha256sum    : 8c35540fff46fd75507afc4849687b9846c269e59a681d95d0873ae073a169fc
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-10-27T12:00:24.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         : LVvxAtBxdL2QS0bEhjtlziNnt6NerKmGt4jLOiBAdT/uvqGN00mh0oF0idpXP3o2FcaFyxLEDygegphtgrjPDCAPGzQOpHt0Anf/ZiRz2vgKBMK1rmqCQo2kDANfkSt6wCKY2+uxwcc3JbVPnlZdmGGUiYI+dPM3p1w1bQ3UU+W7ZxrDVVtfxUviZS5+REL9QHsMoBxKYUDYPw4FB1e0Ud4n1ENJdEeBsKEm24ZFT8CCNzCdQBKw+/dBC+0j3FaVNXMI1eSy5PvY7lsgNDBulWN3ini4jAw1g1nSBmeZub9aHv3gwqVex9Cjyxz8B13hUZnX4kMMEwszXURvP9oBcA==

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


def install():


    # Uninstalling the software
    for to_uninstall in installed_softwares("Gimp"):
        if Version(to_uninstall["version"]) < Version(control.get_software_version()) or force:
            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"])

    # Specific app values
    version = control.get_software_version().rsplit(".",2)[0]
    short_version = version.split(".")[0] 
    sys_conf_file = makepath(programfiles, f"GIMP {short_version}", "etc", "gimp", f"{version}", "gimprc")
    package_version = control.version.split("-")[0]
    bin_name = "gimp-%s-setup.exe" % package_version
    bin_name_glob = glob.glob(bin_name.split(".")[0] + "*")[0]

    # Installing the package
    install_exe_if_needed(bin_name_glob, silentflags="/VERYSILENT /NORESTART /RESTARTEXITCODE=3010 /SUPPRESSMSGBOXES /SP- --disable-check-update /ALLUSERS", key=f"GIMP-{short_version}_is1", min_version=package_version, timeout=1200)

    # Disabling update check
    if isfile(sys_conf_file):
        fichier = open(sys_conf_file, "r")
        data = fichier.read()
        fichier.close()

        if "# (check-updates yes)" in data:
            data = data.replace("# (check-updates yes)", "(check-updates no)")
        if "(check-updates yes)" in data:
            data = data.replace("(check-updates yes)", "(check-updates no)")

        fichier = open(sys_conf_file, "w")
        fichier.write(data)
        fichier.close()


def get_version_from_binary(filename, property_name="ProductVersion"):
    r"""Get installer version from file informations, for now, only exe and msi files are compatibles

    Args:
        filename (str): path to the file
        property_name (str): selected property

    Returns:
        str: version number

    """
    if filename.endswith(".msi"):
        return get_msi_properties(filename)[property_name]
    else:
        return get_file_properties(filename)[property_name]


def uninstall(): 
    
    # Uninstalling the software
    for to_uninstall in installed_softwares("Gimp"):
        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"])

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


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

    releases_stable = wgets("https://www.gimp.org/gimp_versions.json", as_json=True)["STABLE"]
    latest_release = max(releases_stable, key=lambda r: Version(r['version']))

    build_dict = {
        'windows-all': ('windows', 'org.gimp.GIMP_official'),
        'linux-x64': ('appimage', 'org.gimp.GIMP_official.AppImage.x86_64'),
        'linux-arm64': ('appimage', 'org.gimp.GIMP_official.AppImage.aarch64'),
        'macos-x64': ('macos', 'org.gimp.GIMP_official.x86_64'),
        'macos-arm': ('macos', 'org.gimp.GIMP_official.arm64'),
    }

    os_type = control.target_os + "-" + ensure_list(control.architecture)[0]
    target_os, build = build_dict[os_type]

    latest_filename = max(
        (release for release in latest_release[target_os] if release['build-id'] == build),
        key=lambda r: r['date']
    )

    version = f"{latest_release['version']}.{latest_filename['revision']}" if latest_filename.get('revision') else latest_release["version"]
    latest_bin = latest_filename['filename']
    latest_bin_extension = latest_bin.rsplit('.', 1)[-1]

    download_url = f"https://download.gimp.org/gimp/v{Version(version, 2)}/{target_os}/{latest_filename['filename']}"

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

    expected_issuer = "Jernej Simoncic"
    sign_name = waptlicences.check_exe_signing_certificate(latest_bin)[0]
    if sign_name != expected_issuer:
        error(f'Bad issuer {sign_name} != {expected_issuer} ')

    # 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

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
ca3b2b3292ac1ac28b31a069b4b5e072a1c11a0986b8e992fc5de13c814e2444 : WAPT/control
8c35540fff46fd75507afc4849687b9846c269e59a681d95d0873ae073a169fc : WAPT/icon.png
1521ae318ff176d3d428279d52ff5abdf328ddf8644b48de75684e55e1057167 : gimp-3.0.6-setup-1.exe
29cccfdc2ab39a0aa24000524fdfce9ba42433b1a8109361465b3654a0f19f33 : luti.json
b1450706de1f3e8cc6ffee3733dd580d4b91ed5890fcdd3dd29551122cfdea05 : setup.py
d6d32e8e2e27de03332bba67a9bda8bd0c1792518c8f798d39557855ff1965de : update_package.py