tis-notepadplusplus icon

Notepad++

Paquet d’installation silencieuse pour Notepad++

8.8.7-13
Office
Development
Office
Development

  • package: tis-notepadplusplus
  • name: Notepad++
  • version: 8.8.7-13
  • categories: Office,Development
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ,Gaëtan SEGAT
  • editor: Don Ho
  • licence: GPL
  • locale: all
  • target_os: windows
  • impacted_process: notepad++
  • architecture: x86
  • signature_date:
  • size: 6.69 Mo
  • installed_size: 2.53 Mo
  • homepage : https://notepad-plus-plus.org/

package           : tis-notepadplusplus
version           : 8.8.7-13
architecture      : x86
section           : base
priority          : optional
name              : Notepad++
categories        : Office,Development
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Gaëtan SEGAT
description       : Notepad++ is a text editor and source code editor for use with Microsoft Windows
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.0
sources           : https://notepad-plus-plus.org/downloads/
installed_size    : 2527232
impacted_process  : notepad++
description_fr    : Notepad++ est un éditeur de texte libre générique, fonctionnant sous Windows
description_pl    : Notepad++ jest edytorem tekstu i edytorem kodu źródłowego przeznaczonym do użytku w systemie Microsoft Windows
description_de    : Notepad++ ist ein Text- und Quellcode-Editor für die Verwendung mit Microsoft Windows
description_es    : Notepad++ es un editor de texto y de código fuente para usar con Microsoft Windows
description_pt    : Notepad+++ é um editor de texto e editor de código fonte para utilização com Microsoft Windows
description_it    : Notepad++ è un editor di testo e di codice sorgente da utilizzare con Microsoft Windows
description_nl    : Notepad++ is een tekst-editor en broncode-editor voor gebruik met Microsoft Windows
description_ru    : Notepad++ - это текстовый редактор и редактор исходного кода для использования в Microsoft Windows
audit_schedule    : 
editor            : Don Ho
keywords          : text,editor,notepad,++,note,pad
licence           : GPL
homepage          : https://notepad-plus-plus.org/
package_uuid      : 94dc41e3-6653-4e10-a7ae-30369e724df9
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://notepad-plus-plus.org/news/
min_os_version    : 5.1
max_os_version    : 
icon_sha256sum    : 416085afa2c9d514cd68126bd43084388b210a5f93da147c0a80db1821cf28a2
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-10-25T21:03:52.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         : v/v+e7RGIJe1zUffLaZmKV4TyHi3do4D6vFgcLS05xeyvWbBt8rB+2YYV2SWDQmwbr+jLDFnWlUPfzfFqe1jecxgffdEZtlhsc1GqiAL6hbw14W43bVDuUUHf7Rvyv13+D2STIQsUEdGElqvDWeHH+JqbYX3me68RinnF9lsezt8qj4hkZ2iki8cudbL4pyCvd4GtY2C2KQBsE2VgIkM1GDq97zlx+/A3P05N6/a3ftIltH0Per8vHamTHD2fop6VOT6xxygm+3btdBfViM7SpWaKYbqjFoERAa1G7HFxwEeuGbLCERmDTb+VUyp5qustk5cy4tYR1FGFeuWQbuAXw==

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


def install():
    # Declaring local variables
    bin_name = glob.glob("*npp*.exe")[0]

    # Installing the package
    print("Installing: %s" % bin_name)
    install_exe_if_needed(
        bin_name,
        silentflags="/S",
        key="Notepad++",
        min_version=control.get_software_version(),
    )


def session_setup():
    print("Disabling: Auto-update check")

    # C:\Users\user\AppData\Roaming\Notepad++
    user_conf_dir = makepath(application_data, "Notepad++")
    user_conf_file = makepath(user_conf_dir, "config.xml")
    config_xml_content = r"""<?xml version="1.0" encoding="UTF-8" ?>
<NotepadPlus>
    <ProjectPanels>
        <ProjectPanel id="0" workSpaceFile="" />
        <ProjectPanel id="1" workSpaceFile="" />
        <ProjectPanel id="2" workSpaceFile="" />
    </ProjectPanels>
    <GUIConfigs>
        <GUIConfig name="ToolBar" visible="yes">standard</GUIConfig>
        <GUIConfig name="StatusBar">show</GUIConfig>
        <GUIConfig name="TabBar" dragAndDrop="yes" drawTopBar="yes" drawInactiveTab="yes" reduce="yes" closeButton="yes" doubleClick2Close="no" vertical="no" multiLine="no" hide="no" quitOnEmpty="no" iconSetNumber="0" />
        <GUIConfig name="ScintillaViewsSplitter">vertical</GUIConfig>
        <GUIConfig name="UserDefineDlg" position="undocked">hide</GUIConfig>
        <GUIConfig name="TabSetting" replaceBySpace="no" size="4" />
        <GUIConfig name="AppPosition" x="55" y="77" width="1100" height="700" isMaximized="no" />
        <GUIConfig name="FindWindowPosition" left="0" top="0" right="0" bottom="0" />
        <GUIConfig name="FinderConfig" wrappedLines="no" purgeBeforeEverySearch="no" />
        <GUIConfig name="noUpdate" intervalDays="15" nextUpdateDate="20211029">yes</GUIConfig>
        <GUIConfig name="Auto-detection">yes</GUIConfig>
        <GUIConfig name="CheckHistoryFiles">no</GUIConfig>
        <GUIConfig name="TrayIcon">no</GUIConfig>
        <GUIConfig name="MaitainIndent">yes</GUIConfig>
        <GUIConfig name="TagsMatchHighLight" TagAttrHighLight="yes" HighLightNonHtmlZone="no">yes</GUIConfig>
        <GUIConfig name="RememberLastSession">yes</GUIConfig>
        <GUIConfig name="DetectEncoding">yes</GUIConfig>
        <GUIConfig name="SaveAllConfirm">yes</GUIConfig>
        <GUIConfig name="NewDocDefaultSettings" format="0" encoding="4" lang="0" codepage="-1" openAnsiAsUTF8="yes" />
        <GUIConfig name="langsExcluded" gr0="0" gr1="0" gr2="0" gr3="0" gr4="0" gr5="0" gr6="0" gr7="0" gr8="0" gr9="0" gr10="0" gr11="0" gr12="0" langMenuCompact="yes" />
        <GUIConfig name="Print" lineNumber="yes" printOption="3" headerLeft="" headerMiddle="" headerRight="" footerLeft="" footerMiddle="" footerRight="" headerFontName="" headerFontStyle="0" headerFontSize="0" footerFontName="" footerFontStyle="0" footerFontSize="0" margeLeft="0" margeRight="0" margeTop="0" margeBottom="0" />
        <GUIConfig name="Backup" action="0" useCustumDir="no" dir="" isSnapshotMode="yes" snapshotBackupTiming="7000" />
        <GUIConfig name="TaskList">yes</GUIConfig>
        <GUIConfig name="MRU">yes</GUIConfig>
        <GUIConfig name="URL">2</GUIConfig>
        <GUIConfig name="uriCustomizedSchemes">svn:// cvs:// git:// imap:// irc:// irc6:// ircs:// ldap:// ldaps:// news: telnet:// gopher:// ssh:// sftp:// smb:// skype: snmp:// spotify: steam:// sms: slack:// chrome:// bitcoin:</GUIConfig>
        <GUIConfig name="globalOverride" fg="no" bg="no" font="no" fontSize="no" bold="no" italic="no" underline="no" />
        <GUIConfig name="auto-completion" autoCAction="3" triggerFromNbChar="1" autoCIgnoreNumbers="yes" funcParams="yes" />
        <GUIConfig name="auto-insert" parentheses="no" brackets="no" curlyBrackets="no" quotes="no" doubleQuotes="no" htmlXmlTag="no" />
        <GUIConfig name="sessionExt"></GUIConfig>
        <GUIConfig name="workspaceExt"></GUIConfig>
        <GUIConfig name="MenuBar">show</GUIConfig>
        <GUIConfig name="Caret" width="1" blinkRate="600" />
        <GUIConfig name="ScintillaGlobalSettings" enableMultiSelection="no" />
        <GUIConfig name="openSaveDir" value="0" defaultDirPath="" />
        <GUIConfig name="titleBar" short="no" />
        <GUIConfig name="stylerTheme" path="C:\Users\jpadmin\AppData\Roaming\Notepad++\stylers.xml" />
        <GUIConfig name="insertDateTime" customizedFormat="yyyy-MM-dd HH:mm:ss" reverseDefaultOrder="no" />
        <GUIConfig name="wordCharList" useDefault="yes" charsAdded="" />
        <GUIConfig name="delimiterSelection" leftmostDelimiter="40" rightmostDelimiter="41" delimiterSelectionOnEntireDocument="no" />
        <GUIConfig name="multiInst" setting="0" />
        <GUIConfig name="MISC" fileSwitcherWithoutExtColumn="yes" fileSwitcherExtWidth="50" fileSwitcherWithoutPathColumn="yes" fileSwitcherPathWidth="50" backSlashIsEscapeCharacterForSql="yes" writeTechnologyEngine="0" isFolderDroppedOpenFiles="no" docPeekOnTab="no" docPeekOnMap="no" saveDlgExtFilterToAllTypes="no" muteSounds="no" />
        <GUIConfig name="Searching" monospacedFontFindDlg="no" stopFillingFindField="no" findDlgAlwaysVisible="no" confirmReplaceInAllOpenDocs="yes" replaceStopsWithoutFindingNext="no" />
        <GUIConfig name="searchEngine" searchEngineChoice="2" searchEngineCustom="" />
        <GUIConfig name="MarkAll" matchCase="no" wholeWordOnly="yes" />
        <GUIConfig name="SmartHighLight" matchCase="no" wholeWordOnly="yes" useFindSettings="no" onAnotherView="no">yes</GUIConfig>
        <GUIConfig name="DarkMode" enable="no" colorTone="0" customColorTop="2105376" customColorMenuHotTrack="4210752" customColorActive="4210752" customColorMain="2105376" customColorError="176" customColorText="14737632" customColorDarkText="12632256" customColorDisabledText="8421504" customColorEdge="6579300" />
        <GUIConfig name="ScintillaPrimaryView" lineNumberMargin="show" lineNumberDynamicWidth="yes" bookMarkMargin="show" indentGuideLine="show" folderMarkStyle="box" lineWrapMethod="aligned" currentLineHilitingShow="show" scrollBeyondLastLine="yes" rightClickKeepsSelection="no" disableAdvancedScrolling="no" wrapSymbolShow="hide" Wrap="no" borderEdge="yes" isEdgeBgMode="no" edgeMultiColumnPos="" zoom="0" zoom2="0" whiteSpaceShow="hide" eolShow="hide" borderWidth="2" smoothFont="no" paddingLeft="0" paddingRight="0" distractionFreeDivPart="4" />
        <GUIConfig name="DockingManager" leftWidth="200" rightWidth="200" topHeight="200" bottomHeight="200">
            <ActiveTabs cont="0" activeTab="-1" />
            <ActiveTabs cont="1" activeTab="-1" />
            <ActiveTabs cont="2" activeTab="-1" />
            <ActiveTabs cont="3" activeTab="-1" />
        </GUIConfig>
    </GUIConfigs>
    <FindHistory nbMaxFindHistoryPath="10" nbMaxFindHistoryFilter="10" nbMaxFindHistoryFind="10" nbMaxFindHistoryReplace="10" matchWord="no" matchCase="no" wrap="yes" directionDown="yes" fifRecuisive="yes" fifInHiddenFolder="no" fifProjectPanel1="no" fifProjectPanel2="no" fifProjectPanel3="no" fifFilterFollowsDoc="no" fifFolderFollowsDoc="no" searchMode="0" transparencyMode="1" transparency="150" dotMatchesNewline="no" isSearch2ButtonsMode="no" regexBackward4PowerUser="no" />
    <History nbMaxFile="10" inSubMenu="no" customLength="-1" />
</NotepadPlus>
"""

    if not isfile(user_conf_file):
        if not isdir(user_conf_dir):
            mkdirs(user_conf_dir)
        print("Creating: %s" % user_conf_file)
        file_open = open(user_conf_file, "w")
        file_open.write(config_xml_content)
        file_open.close()
    else:
        import xml.etree.ElementTree as ET

        xml_data_conf_tree = ET.parse(user_conf_file)
        xml_data_conf = xml_data_conf_tree.getroot()

        for GUIConfig in xml_data_conf.iter("GUIConfig"):
            if GUIConfig.get("name") == "noUpdate":
                if GUIConfig.text == "no":
                    GUIConfig.text = "yes"
                    print("Updating: %s" % user_conf_file)
                    xml_data_conf_tree.write(user_conf_file)

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


def update_package():
    # Declaring local variables
    bin_contains = "npp"
    result = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    if control.architecture == "x64":
        bin_search = "Installer.x64.exe"
        bin_name_sub = "npp.%s.Installer.x64.exe"
    else:
        bin_search = "Installer.exe"
        bin_name_sub = "npp.%s.Installer.exe"
    app_name = control.name
    git_repo = "notepad-plus-plus/notepad-plus-plus"
    url_api = "https://api.github.com/repos/%s/releases/latest" % git_repo

    # Getting latest version information from official sources
    print("API used is: %s" % url_api)
    json_load = json.loads(wgets(url_api, proxies=proxies))
    for download in json_load["assets"]:
        if bin_search in download["name"]:
            url_dl = download["browser_download_url"]
            version = json_load["tag_name"].replace("v", "")
            latest_bin = download["name"]
            break

    print("Latest %s version is: %s" % (app_name, version))
    print("Download URL is: %s" % url_dl)

    # Downloading latest binaries
    if not isfile(latest_bin):
        print("Downloading: %s" % latest_bin)
        wget(url_dl, latest_bin, proxies=proxies)

        # Checking version from file
        version_from_file = get_version_from_binary(latest_bin, "FileVersion")
        if not version_from_file.startswith(version):
            # remove additional .0 at the end of the version from file
            ".".join(get_version_from_binary(latest_bin, "FileVersion").split(".")[:3])
            print("Changing version to the version number of the binary")
            version = version_from_file
            os.rename(latest_bin, bin_name_sub % version)
    # Changing version of the package
    if Version(version) > Version(control.get_software_version()):
        print("Software version updated (from: %s to: %s)" % (control.get_software_version(), Version(version)))
        result = True
    control.version = "%s-%s" % (Version(version), control.version.split("-", 1)[-1])
    # control.set_software_version(Version(version))
    control.save_control_to_wapt()

    # Deleting outdated binaries
    remove_outdated_binaries(version)

    # Validating update-package-sources
    return result

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
a41a173d1627a458c63a7aa28cbd22622dde8bbda9cf27f2415ffe523e87789d : WAPT/control
416085afa2c9d514cd68126bd43084388b210a5f93da147c0a80db1821cf28a2 : WAPT/icon.png
84b6fe3ee275555a47879a3eb20e5cca8fde238f2955c4959b9a3ab42d27cf93 : luti.json
61c3077b989e272117167c90fc35e7f06bea4f992f3395b40ccee083d7258082 : npp.8.8.7.Installer.exe
098a0a22ed75db0d5f688b05a815b8aebb820f2eec0cfb4d5923e9b6166ceb0f : setup.py
8ce2883cffbbfbf8b92251a8df125e5cfb59257e940d0f2a1469421fb966a4ef : update_package.py