PyCharm
Silent install package for PyCharm
2025.2.4-4
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-pycharm
- name: PyCharm
- version: 2025.2.4-4
- categories: Development
- maintainer: WAPT Team,Jimmy PELÉ,Pierre COSSON,Tranquil IT
- editor: JetBrains
- licence: Freemium
- locale: all
- target_os: windows
- impacted_process: pycharm64,pycharm
- architecture: arm
- signature_date:
- size: 886.25 Mo
- installed_size: 697.25 Mo
- homepage : https://www.jetbrains.com/pycharm/
- conflicts :
package : tis-pycharm
version : 2025.2.4-4
architecture : arm
section : base
priority : optional
name : PyCharm
categories : Development
maintainer : WAPT Team,Jimmy PELÉ,Pierre COSSON,Tranquil IT
description : PyCharm is an integrated development environment (IDE) used in computer programming, specifically for the Python language
depends :
conflicts : tis-pycharm-community,tis-pycharm-professional
maturity : PREPROD
locale : all
target_os : windows
min_wapt_version : 2.1
sources :
installed_size : 697249792
impacted_process : pycharm64,pycharm
description_fr : PyCharm est un environnement de développement intégré utilisé pour programmer en Python
description_pl : PyCharm jest zintegrowanym środowiskiem programistycznym (IDE) używanym w programowaniu komputerowym, w szczególności dla języka Python
description_de : PyCharm ist eine integrierte Entwicklungsumgebung (IDE) für die Computerprogrammierung, insbesondere für die Sprache Python
description_es : PyCharm es un entorno de desarrollo integrado (IDE) utilizado en la programación informática, específicamente para el lenguaje Python
description_pt : PyCharm é um ambiente de desenvolvimento integrado (IDE) utilizado na programação de computadores, especificamente para a linguagem Python
description_it : PyCharm è un ambiente di sviluppo integrato (IDE) utilizzato nella programmazione informatica, in particolare per il linguaggio Python
description_nl : PyCharm is een geïntegreerde ontwikkelingsomgeving (IDE) die wordt gebruikt bij computerprogrammering, specifiek voor de taal Python
description_ru : PyCharm - это интегрированная среда разработки (IDE), используемая в компьютерном программировании, в частности, для языка Python
audit_schedule :
editor : JetBrains
keywords : pycharm,ide,integrated,development,environment
licence : Freemium
homepage : https://www.jetbrains.com/pycharm/
package_uuid : 85f65efb-b4c1-47fb-ad9a-0c4eb0b2b253
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version : 10
max_os_version :
icon_sha256sum : d8e61e0d3d8c4e15ebb79b689f55a3239d4e1d6fde9f867acb9c0b3d2ccee678
signer : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date : 2025-11-24T14:33:21.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 : G5nLkEeWOnBSUaNnNLPk0WSSCJgL8fiJViQxB0P8jKnirEMFSCY6aLa762EumC1dHyz1f3pmI/1YN9f/jyqQwb6dbkPysDugWLgJ7Zjq1eEG3F33LS02eKeuLstNNywbKsAL6Fxw38zAtH3Q45kevkBvQfvRunvqKwAIJgZykciZ9Q3BnpWGLuzdi+ZBJj7hJUJD/3mRsRYYiWqx3ROG4FlbXFIPWcG7HlPH9Bi7nhFVGKaqFYiyky6uLsRgts5tuoVwl6v7SVGNZ2McloenKPMtKyyak1HmtdjxdVR+fd0qyu6cETA722PiZor6if19lgqeKJhRWosiWWQMMAMPXg==
# -*- coding: utf-8 -*-
from setuphelpers import *
#
# Silent Conf: https://www.jetbrains.com/help/pycharm/installation-guide.html#silent-config
#
def install():
# Specific app values
bin_name = glob.glob("pycharm-*.exe")[0]
# Uninstalling older versions of the software
for to_uninstall in installed_softwares("PyCharm"):
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="PyCharm %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=PC&latest=true&type=release",proxies=proxies, as_json=True)['PCP'][0]
version = releases['version']
downloads = releases['downloads']
download_dict = {
'windows-x64': downloads['windows']['link'],
'windows-arm': downloads['windowsARM64']['link'],
'debian_based-x64': downloads['linux']['link'],
'debian_based-arm6464': 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
be5f4072ab0a809e75274004846b960034ba78d2ebec009e966cff1f1d647b78 : WAPT/control
d8e61e0d3d8c4e15ebb79b689f55a3239d4e1d6fde9f867acb9c0b3d2ccee678 : WAPT/icon.png
28f176e78ff540588e0f4e7f68ea36f434927869d6e91a8bcd1eef3a05598cb6 : luti.json
64ae501b639004b341c0440ac4f0f40899024f62c462764968cc775394fba6d2 : pycharm-2025.2.4-aarch64.exe
dec201f6d3356b150aeb5f2af00df4fb7b2117c032cbab0d2b3438c9a27e84ca : setup.py
9f47e2e77d5eab88cf78ca92f74c9861019a8c477c7dc25fd72aff52a3f5ce3c : silent.conf
71d8d8fccacaa4df241c6bc4952cc43a9ebdd54d6963ce493369d0c394108ec2 : update_package.py