tis-intellij-idea-community icon

IntelliJ IDEA Community

Silent install package for IntelliJ IDEA Community

2025.2.6-2
Development
Development

Preprod packages are packages built on LUTI. They remain in PREPROD usually for 5 days, after which a new VirusTotal scan is performed.
If the package passes this last check, it is promoted to PROD and published on the store.

  • package: tis-intellij-idea-community
  • name: IntelliJ IDEA Community
  • version: 2025.2.6-2
  • categories: Development
  • maintainer: WAPT Team,Tranquil IT,Flavien SCHELFAUT
  • editor: JetBrains
  • licence: Freemium
  • locale: all
  • target_os: windows
  • impacted_process: idea64,idea,jetbrains_client64,jetbrains_client
  • architecture: arm
  • signature_date:
  • size: 842.78 Mo
  • installed_size: 3.37 Go
  • homepage : https://www.jetbrains.com/webstorm/

package           : tis-intellij-idea-community
version           : 2025.2.6-2
architecture      : arm
section           : base
priority          : optional
name              : IntelliJ IDEA Community
categories        : Development
maintainer        : WAPT Team,Tranquil IT,Flavien SCHELFAUT
description       : IntelliJ IDEA Community is an integrated development environment (IDE) written in Java for developing computer software written in Java, Kotlin, Groovy, and other JVM-based languages
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : all
target_os         : windows
min_wapt_version  : 2.4
sources           : 
installed_size    : 3366191772
impacted_process  : idea64,idea,jetbrains_client64,jetbrains_client
description_fr    : IntelliJ IDEA Community est un environnement de développement intégré (IDE) écrit en Java pour développer des logiciels écrits en Java, Kotlin, Groovy et autres langages basés sur la JVM
description_pl    : IntelliJ IDEA Community to zintegrowane środowisko programistyczne (IDE) napisane w języku Java do tworzenia oprogramowania komputerowego napisanego w językach Java, Kotlin, Groovy i innych językach opartych na JVM
description_de    : IntelliJ IDEA Community ist eine in Java geschriebene integrierte Entwicklungsumgebung (IDE) für die Entwicklung von Computersoftware, die in Java, Kotlin, Groovy und anderen JVM-basierten Sprachen geschrieben wurde
description_es    : IntelliJ IDEA Community es un entorno de desarrollo integrado (IDE) escrito en Java para desarrollar software informático escrito en Java, Kotlin, Groovy y otros lenguajes basados en JVM
description_pt    : O IntelliJ IDEA Community é um ambiente de desenvolvimento integrado (IDE) escrito em Java para desenvolver software de computador escrito em Java, Kotlin, Groovy e outras linguagens baseadas em JVM
description_it    : IntelliJ IDEA Community è un ambiente di sviluppo integrato (IDE) scritto in Java per lo sviluppo di software informatico scritto in Java, Kotlin, Groovy e altri linguaggi basati su JVM
description_nl    : IntelliJ IDEA Community is een geïntegreerde ontwikkelomgeving (IDE) geschreven in Java voor het ontwikkelen van computersoftware geschreven in Java, Kotlin, Groovy en andere JVM-gebaseerde talen
description_ru    : IntelliJ IDEA Community - это интегрированная среда разработки (IDE), написанная на Java и предназначенная для разработки программного обеспечения на Java, Kotlin, Groovy и других языках, основанных на JVM
audit_schedule    : 
editor            : JetBrains
keywords          : intellij,idea,ide,integrated,development,environment
licence           : Freemium
homepage          : https://www.jetbrains.com/webstorm/
package_uuid      : 015a6e18-55d3-40d0-ba92-82c2c0ddd7a6
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 10
max_os_version    : 
icon_sha256sum    : 9f31eb1ae0060823265242b972a22055f243876f8a1740fbe88dcce3afc70a73
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2025-12-11T09:20: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         : HwlHEwJSd8AwU7idj+Z/cftRyRfxsycuuYKt645lYxTHU+KkGvY8b0yvG6IstYLs3t/vfcJ4+W2u11hmCQFMJR0yTIV2HpUjYpBZEOUy3yfAGa/b08RiNaLwD8EzLYdfeb0JN5OTFhzk5jdN0lxUjGSBwglMBwndWTeylFwwR7lvEhPinvmyKAdeXQEP1tPJflsxQxi6MCopdPEYvq1mWrrm1eZpEChTZ3NGxD9za7GwHzWRC6oXrbyj/jMfS/w/mD0JqkRwdvaR1a36GOSB7HdKXtFr2hn214dM7wZ3vxUDNcBKO5j35tuWwn6S8rQXpVz/o0qaqH2M7R9UQYY1nw==

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

#
# Silent Conf: https://www.jetbrains.com/help/idea/installation-guide.html#silent-config
#

def install():
    # Specific app values
    bin_name = glob.glob("ideaIC-*.exe")[0]

    # Uninstalling older versions of the software
    for to_uninstall in installed_softwares("IntelliJ IDEA Community Edition"):
        if Version(to_uninstall["name"].split(" ")[-1]) < 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"])

    # Installing the package
    install_exe_if_needed(
        bin_name,
        silentflags="/S /CONFIG=silent.conf",
        name="IntelliJ IDEA Community Edition %s" % control.get_software_version(),
        accept_returncodes=[0, 3010, 1223],
        min_version=control.get_software_version(),
        timeout=2000,
        get_version=get_installed_version
    )


def get_installed_version(key):
    return key["name"].split(" ")[-1]

# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers 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 = wgets("https://data.services.jetbrains.com/products/releases?code=IIC&latest=true&type=release", proxies=proxies, as_json=True)['IIC'][0]
    version = releases['version']
    downloads = releases['downloads']

    download_dict = {
        'windows-arm': downloads['windowsARM64']['link'],
        'windows-x64': downloads['windows']['link'],
        'debian_based-x64': downloads['linux']['link'],
        'debian_based-arm64': downloads['linuxARM64']['link'],
        'darwin-x64': downloads['mac']['link'],
        'darwin-arm': downloads['macM1']['link']
    }

    os_type = control.target_os + "-" + ensure_list(control.architecture)[0]
    download_url = download_dict[os_type]
    latest_bin = download_url.rsplit("/", 1)[-1]
    latest_bin_extension = latest_bin.rsplit(".", 1)[-1]

    # 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 = "JetBrains s.r.o."
    sign_name = waptlicences.check_msi_signature(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

01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
9b5d5ba41d96e2040d8a39dcf5bce5c59bc036247b0b77f812638bcff9422819 : WAPT/control
9f31eb1ae0060823265242b972a22055f243876f8a1740fbe88dcce3afc70a73 : WAPT/icon.png
17f1c5346a435cc80938401eb92ba63e02b6746abf1fdd619deac8e75898bb24 : ideaIC-2025.2.6-aarch64.exe
189f9de944222079924253246277e062a15faf3faa2a7899609d097d288cb572 : luti.json
fed850bb212d938691a32124ccca9acb6155cc40f1490647ae945a7d829cc7c6 : setup.py
532b16a6dbae61b78273adbe74e8ccd8b0cc89081d58b2cc146a22ce19cc88cb : silent.conf
960c64d9968ad63efe1b7381c72d7807199398a0ff7e3aad61248ccd52d82dd0 : update_package.py