tis-cursor icon

Cursor

Silent install package for Cursor

2.0.54-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-cursor
  • name: Cursor
  • version: 2.0.54-2
  • categories: Development
  • maintainer: WAPT Team,Tranquil IT,Flavien SCHELFAUT
  • editor: Anysphere
  • locale: all
  • target_os: darwin
  • impacted_process: Cursor
  • architecture: arm
  • signature_date:
  • size: 202.15 Mo
  • homepage : https://cursor.com/

package           : tis-cursor
version           : 2.0.54-2
architecture      : arm
section           : base
priority          : optional
name              : Cursor
categories        : Development
maintainer        : WAPT Team,Tranquil IT,Flavien SCHELFAUT
description       : Cursor is a modern IDE built on VS Code, integrating AI to generate, explain, and fix code. It boosts development speed with smart, context-aware assistance.
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : all
target_os         : darwin
min_wapt_version  : 2.5
sources           : 
installed_size    : 
impacted_process  : Cursor
description_fr    : Cursor est un IDE moderne basé sur VS Code, intégrant une IA pour générer, expliquer et corriger le code. Il accélère le développement grâce à une assistance intelligente et contextuelle.
description_pl    : Cursor to nowoczesne IDE oparte na VS Code, integrujące sztuczną inteligencję do generowania, wyjaśniania i naprawiania kodu. Przyspiesza rozwój dzięki inteligentnej i kontekstowej pomocy.
description_de    : Cursor ist eine moderne IDE auf Basis von VS Code, die KI integriert, um Code zu generieren, zu erklären und zu korrigieren. Sie beschleunigt die Entwicklung durch intelligente, kontextbezogene Unterstützung.
description_es    : Cursor es un IDE moderno basado en VS Code que integra IA para generar, explicar y corregir código. Acelera el desarrollo con asistencia inteligente y contextual.
description_pt    : Cursor é um IDE moderno baseado no VS Code, integrando IA para gerar, explicar e corrigir código. Ele acelera o desenvolvimento com assistência inteligente e contextual.
description_it    : Cursor è un IDE moderno basato su VS Code che integra l'IA per generare, spiegare e correggere il codice. Accelera lo sviluppo grazie a un'assistenza intelligente e contestuale.
description_nl    : Cursor is een moderne IDE gebaseerd op VS Code, met geïntegreerde AI om code te genereren, uitleggen en corrigeren. Het versnelt de ontwikkeling met slimme, contextuele assistentie.
description_ru    : Cursor — это современная IDE на основе VS Code, интегрирующая ИИ для генерации, объяснения и исправления кода. Она ускоряет разработку благодаря умной и контекстной помощи.
audit_schedule    : 
editor            : Anysphere
keywords          : cursor,ide,integrated,development,environment
licence           : 
homepage          : https://cursor.com/
package_uuid      : c7ec5b1b-bd08-4fa9-abff-98adaba820a9
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://cursor.com/changelog
min_os_version    : 11.0
max_os_version    : 
icon_sha256sum    : 9cba6454810418fa31660e69ced09aa546f75bcfd3d873a4414f250694fa623c
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2025-11-04T02:09:07.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         : qDrl+2lGmzy5mDp7UsZMXM9fYkH1KSxJSL0UurHC8a9DZgZcAOc6QyWH4bB6JX5GO2uQBpYboN0PNOKE3KGUMzfxrfop+NYqx+pOWyNlWteClfqJVaHkcxq8XFXn9orUA/UCSu8n2QEINNZxXEZLBQWovJajCAEz4mXBV7yS8eKXQcDQnqXTJSVRMeCJlZEOl9x2cNybFOZtR9fIfvVdi68Zc3iyDfrSUhlB8CexXwma3iJkee+MOObQu2JFhHjZPfCErtwuvxFW78YBDPHHRV93vzbbFPQf+iidYSIddQ0Ol8TnPgKXAl/0bd8cqJFcvtlrPbyszcGcXpF+8fb2RA==

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


def install():
    unzip(glob.glob("Cursor-darwin-arm64*.zip")[0], basedir, filenames="Cursor.app/*")
    install_app(
        "Cursor.app",
        key="/Applications/Cursor.app",
        min_version=control.get_software_version()
    )


def uninstall():
    uninstall_app("Cursor.app")

# -*- 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

    os_dict = {
        'windows-x64': 'win32-x64',
        'windows-arm64': 'win32-arm64',
        'darwin-arm': 'darwin-arm64',
        'darwin-x64': 'darwin-x64',
        'linux-x64': 'linux-x64',
        'linux-arm64': 'linux-arm64',
    }

    os_type = control.target_os + "-" + ensure_list(control.architecture)[0]
    latest_version_api = f"https://api2.cursor.sh/updates/api/update/{os_dict[os_type]}/cursor/1.6.46/d98ca2ac6e4858851d5ea1c327187dbd1d8aeed3550bd8d4c73fffbaffb21a4b/stable"
    user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Cursor/1.7.43 Chrome/132.0.6834.210 Electron/34.5.8 Safari/537.36"

    json_latest_version = wgets(latest_version_api, proxies=proxies, user_agent=user_agent, as_json=True)
    version, download_url = json_latest_version['name'], json_latest_version['url']
    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}")

    # 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

d7eb75750bfc8d6a10646d1ab9112710f4f542f2e40a6127b0841ff5eabada9c : Cursor-darwin-arm64.zip
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
e53b9f83fc0ad9f1691e9e9c3612ce93cab3eb20de34567cd806a30d75a74c26 : WAPT/control
9cba6454810418fa31660e69ced09aa546f75bcfd3d873a4414f250694fa623c : WAPT/icon.png
a7aabf2cf651e94ae827ff0650cf464b2bb7b31db55c584ecc2eb313f80eb6c3 : luti.json
d03cfb76031a6d20cbf7c74c169f3de751b274d7e85bbccba4a299a66ed829d4 : setup.py
602f39c81d2d76f97af10f1cda68bf53a84e3ec6bed09684073ae5ddc8f23d86 : update_package.py