tis-keepass
2.54-32
KeePass Password Safe is a free and open-source password manager
16180 downloads
See build result See VirusTotal scan
Description
- package : tis-keepass
- name : KeePass
- version : 2.54-32
- categories : Security,Utilities
- maintainer : WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau
- installed_size :
- editor : Dominik Reichl
- licence : GPLv2
- signature_date : 2023-06-09T00:01:56.135012
- size : 5.79 Mo
- locale : all
- target_os : windows
- impacted_process : KeePass
- architecture : all
- Homepage : https://keepass.info/
control
package : tis-keepass
version : 2.54-32
architecture : all
section : base
priority : optional
name : KeePass
categories : Security,Utilities
maintainer : WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau
description : KeePass Password Safe is a free and open-source password manager
depends :
conflicts :
maturity : PROD
locale : all
target_os : windows
min_wapt_version : 2.0
sources : https://sourceforge.net/projects/keepass/
installed_size :
impacted_process : KeePass
description_fr : KeePass Password Safe est un gestionnaire de mots de passe publié sous licence libre
description_pl : KeePass Password Safe to darmowy i open-source'owy menedżer haseł
description_de : KeePass Password Safe ist ein kostenloser und quelloffener Passwortmanager
description_es : KeePass Password Safe es un gestor de contraseñas gratuito y de código abierto
description_pt : KeePass Password Safe é um gestor de senhas gratuito e de código aberto
description_it : KeePass Password Safe è un gestore di password gratuito e open source
description_nl : KeePass Password Safe is een gratis en open-source wachtwoordmanager
description_ru : KeePass Password Safe - бесплатный менеджер паролей с открытым исходным кодом
audit_schedule :
editor : Dominik Reichl
keywords : password,manager,keepass,keep,pass,passwords
licence : GPLv2
homepage : https://keepass.info/
package_uuid : 1a8e7f88-b97e-40ec-901c-8d2599ceb3f5
valid_from :
valid_until :
forced_install_on :
changelog : https://keepass.info/news/news_all.html
min_os_version :
max_os_version :
icon_sha256sum : 9855b4f581d2abce7c7418d436092535d7e01d4da9096bcdbae39edc9c7d9f1f
signer : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature : khxcCWeg369qoMk4m8Bk+c1DBmbr92UzCRuMMd6prPa5Cm9duG0muNMaEaOJzIvb+nHvEnOuOMTQIUTcLP96yKTHOJL+lj4msn2tRoePzT1BWO9EZQmztRLU0HkgTEyVGTqNYSRyHGrTMaNofDanadiVkPuuqsiABM12t8rrUgwYyuTDrJK8l9Nls2ev1Dp3T4JUX3iSeUtQFXyuaFCoc85CjzJzm64tLtri/wKa5CzZ96BjGW5uXhqPu/aNFuhnT+zw0zGYp1O8VAgiXZyFvaNKAkcreGa1c8l3h1PiDtwsc88JeygLQGsOVeDZWzRL0KKsQSRTCJ9iVfYOgdnJLg==
signature_date : 2023-06-09T00:01:56.135012
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
Setup.py
# -*- coding: utf-8 -*-
from setuphelpers import *
uninstallkey = []
def install():
versionpaquet = control["version"].split("-", 1)[0]
install_exe_if_needed(
"KeePass-%s-Setup.exe" % versionpaquet,
silentflags="/VERYSILENT",
key="KeePassPasswordSafe2_is1",
min_version=versionpaquet,
killbefore=["KeePass.exe"],
)
keysoftinfo = installed_softwares("KeePassPasswordSafe2_is1")
for info in keysoftinfo:
installlocation = info["install_location"]
for lf in glob.glob("*.lngx"):
if isfile(makepath(installlocation, "Languages", lf)):
remove_file(makepath(installlocation, "Languages", lf))
filecopyto(lf, makepath(installlocation, "Languages"))
def session_setup():
if not isdir(makepath(application_data, "KeePass")):
mkdirs(makepath(application_data, "KeePass"))
config = makepath(application_data, "KeePass", "KeePass.config.xml")
loc = get_language().lower()
if loc in list_locales:
LanguageFile = r"""
<LanguageFile>%s</LanguageFile> """ % (
list_locales[loc]
)
else:
LanguageFile = ""
if not isfile(config):
data = (
r"""<?xml version="1.0" encoding="utf-8"?>
<Configuration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Meta>
<PreferUserConfiguration>false</PreferUserConfiguration>
<OmitItemsWithDefaultValues>true</OmitItemsWithDefaultValues>
</Meta>
<Application>%s
<LastUpdateCheck>2017-06-13T19:44:53Z</LastUpdateCheck>
<LastUsedFile>
<Path />
<CredProtMode>Obf</CredProtMode>
<CredSaveMode>NoSave</CredSaveMode>
</LastUsedFile>
<MostRecentlyUsed>
<MaxItemCount>12</MaxItemCount>
<Items />
</MostRecentlyUsed>
<WorkingDirectories />
<Start>
<CheckForUpdate>false</CheckForUpdate>
<CheckForUpdateConfigured>true</CheckForUpdateConfigured>
</Start>
<FileOpening />
<FileClosing />
<TriggerSystem>
<Triggers />
</TriggerSystem>
</Application>
<Logging />
<MainWindow>
<X>309</X>
<Y>81</Y>
<Width>662</Width>
<Height>513</Height>
<SplitterHorizontalFrac>0.8333</SplitterHorizontalFrac>
<SplitterVerticalFrac>0.25</SplitterVerticalFrac>
<Layout>Default</Layout>
<ToolBar />
<EntryView />
<TanView />
<EntryListColumnCollection>
<Column>
<Type>Title</Type>
<Width>90</Width>
</Column>
<Column>
<Type>UserName</Type>
<Width>90</Width>
</Column>
<Column>
<Type>Password</Type>
<Width>90</Width>
<HideWithAsterisks>true</HideWithAsterisks>
</Column>
<Column>
<Type>Url</Type>
<Width>90</Width>
</Column>
<Column>
<Type>Notes</Type>
<Width>90</Width>
</Column>
</EntryListColumnCollection>
<EntryListColumnDisplayOrder>0 1 2 3 4</EntryListColumnDisplayOrder>
<ListSorting>
<Order>Ascending</Order>
</ListSorting>
</MainWindow>
<UI>
<TrayIcon />
<Hiding />
<StandardFont>
<Family>Microsoft Sans Serif</Family>
<Size>8.25</Size>
<GraphicsUnit>Point</GraphicsUnit>
<Style>Regular</Style>
<OverrideUIDefault>false</OverrideUIDefault>
</StandardFont>
<PasswordFont>
<Family>Courier New</Family>
<Size>8.25</Size>
<GraphicsUnit>Point</GraphicsUnit>
<Style>Regular</Style>
<OverrideUIDefault>false</OverrideUIDefault>
</PasswordFont>
<BannerStyle>WinVistaBlack</BannerStyle>
<DataEditorFont>
<Family>Microsoft Sans Serif</Family>
<Size>8.25</Size>
<GraphicsUnit>Point</GraphicsUnit>
<Style>Regular</Style>
<OverrideUIDefault>false</OverrideUIDefault>
</DataEditorFont>
<UIFlags>0</UIFlags>
<KeyCreationFlags>0</KeyCreationFlags>
<KeyPromptFlags>0</KeyPromptFlags>
</UI>
<Security>
<WorkspaceLocking>
<LockAfterTime>0</LockAfterTime>
<LockAfterGlobalTime>0</LockAfterGlobalTime>
</WorkspaceLocking>
<Policy />
<MasterPassword>
<MinimumLength>0</MinimumLength>
<MinimumQuality>0</MinimumQuality>
</MasterPassword>
</Security>
<Native />
<PasswordGenerator>
<AutoGeneratedPasswordsProfile>
<GeneratorType>CharSet</GeneratorType>
<Length>20</Length>
<CharSetRanges>ULD_______</CharSetRanges>
</AutoGeneratedPasswordsProfile>
<LastUsedProfile>
<GeneratorType>CharSet</GeneratorType>
<Length>20</Length>
<CharSetRanges>ULD_______</CharSetRanges>
</LastUsedProfile>
<UserProfiles />
</PasswordGenerator>
<Defaults>
<OptionsTabIndex>4</OptionsTabIndex>
<SearchParameters>
<ComparisonMode>InvariantCultureIgnoreCase</ComparisonMode>
</SearchParameters>
<KeySources />
</Defaults>
<Integration>
<HotKeyGlobalAutoType>393281</HotKeyGlobalAutoType>
<HotKeySelectedAutoType>0</HotKeySelectedAutoType>
<HotKeyShowWindow>393291</HotKeyShowWindow>
<HotKeyEntryMenu>0</HotKeyEntryMenu>
<UrlSchemeOverrides>
<BuiltInOverridesEnabled>1</BuiltInOverridesEnabled>
<CustomOverrides />
</UrlSchemeOverrides>
<AutoTypeAbortOnWindows />
<ProxyType>System</ProxyType>
<ProxyAuthType>Auto</ProxyAuthType>
</Integration>
<Custom />
</Configuration>"""
% LanguageFile
)
else:
fichier = open(config, "r")
data = fichier.read()
fichier.close()
# force french
if not "<LanguageFile>" in data:
languagefile = r"""<Application>%s""" % LanguageFile
data = data.replace("<Application>", languagefile)
# disable update
if "<CheckForUpdate>true</CheckForUpdate>" in data:
data = data.replace("<CheckForUpdate>true</CheckForUpdate>", "<CheckForUpdate>false</CheckForUpdate>")
fichier = open(config, "w")
fichier.write(data)
fichier.close()
list_locales = {
"ar": "Arabic.lngx", # Arabic
"ca": "Catalan.lngx", # Catalan
"zh": "Chinese_Simplified.lngx", # Chinese - Simplified
"zh": "Chinese_Traditional.lngx", # Chinese - Traditional
"co": "French.lngx", # Corsican - France
"hr": "Croatian.lngx", # Croatian
"cs": "Czech.lngx", # Czech
"da": "Danish.lngx", # Danish
"nl": "Dutch.lngx", # Dutch
"et": "Estonian.lngx", # Estonian
"fi": "Finnish.lngx", # Finnish
"fr": "French.lngx", # French
"de": "German.lngx", # German - Germany
"el": "Greek.lngx", # Greek
"he": "Hebrew.lngx", # Hebrew
"hu": "Hungarian", # Hungarian
"is": "Icelandic.lngx", # Icelandic
"id": "Indonesian.lngx", # Indonesian
"it": "Italian.lngx", # Italian - Italy
"ja": "Japanese.lngx", # Japanese
"ko": "Korean.lngx", # Korean
"lv": "Latvian.lngx", # Latvian
"lt": "Lithuanian.lngx", # Lithuanian
"dsb": "German.lngx", # Lower Sorbian - Germany
"nb": "Norwegian_NB.lngx", # Norwegian - Bokmal
"nn": "Norwegian_NB.lngx", # Norwegian - Nynorsk
"ps": "Pashto.lngx", # Pashto - Afghanistan
"fa": "Persian.lngx", # Persian
"pl": "Polish.lngx", # Polish
"pt": "Portuguese_PT.lngx", # Portuguese - Brazil
"ro": "Romanian.lngx", # Romanian - Romania
"ru": "Russian.lngx", # Russian
"sr": "Serbian_Cyrillic.lngx", # Serbian
"sk": "Slovak.lngx", # Slovak
"sl": "Slovenian.lngx", # Slovenian
"es": "Spanish.lngx", # Spanish - Spain
"sv": "Swedish.lngx", # Swedish
"tr": "Turkish.lngx", # Turkish
"ug": "Arabic.lngx", # Arabic
"uk": "Ukrainian.lngx", # Ukrainian
"wen": "German.lngx", # Upper Sorbian - Germany
"vi": "Vietnamese.lngx", # Vietnamese
}
update_package.py
# -*- coding: utf-8 -*-
from setuphelpers import *
import platform
import requests
import time
def update_package():
print("Download/Update package content from upstream binary sources")
# Getting proxy informations from WAPT settings
proxy = {}
if platform.system() == "Windows" and isfile(makepath(user_local_appdata(), "waptconsole", "waptconsole.ini")):
proxywapt = inifile_readstring(makepath(user_local_appdata(), "waptconsole", "waptconsole.ini"), "global", "http_proxy")
if proxywapt:
proxy = {"http": proxywapt, "https": proxywapt}
url = requests.head("https://sourceforge.net/projects/keepass/files/latest/download?source=files", proxies=proxy).headers["Location"]
dstzip = requests.head(url, proxies=proxy).headers["Location"]
filename = dstzip.rsplit("/", 1)[1]
print(filename)
version = filename.replace("KeePass-", "").split(".zip")[0]
filenameexe = "KeePass-%s-Setup.exe" % version
dstexe = dstzip.replace(filename, filenameexe)
print("Latest Version : " + version)
exes = glob.glob("*.exe")
for fn in exes:
if fn != filenameexe:
remove_file(fn)
if not isfile(filenameexe):
print("Downloading %s " % (filenameexe))
wget(dstexe, filenameexe, proxies=proxy)
else:
print("Already up to date, skipped")
control.version = "%s-%s" % (version, int(control.version.split("-", 1)[1]) + 1)
control.save_control_to_wapt()
print("Changing version to " + control.version + " in WAPT\\control")
print("Update package done. You can now build-upload your package")
for lngx in glob.glob("*.lngx"):
remove_file(lngx)
for line in wgets("https://keepass.info/translations.html", proxies=proxy).splitlines():
if "KeePass-%s" % version[:2] in line:
lfd = line.replace('<td><a href="', "").replace('" target="_blank">', "")
if not "-Help-" in lfd.rsplit("/", 1)[1]:
# BUG
if not "Portuguese_BR" in lfd.rsplit("/", 1)[1]:
try:
print("Try Download %s" % lfd)
wget(lfd, lfd.rsplit("/", 1)[1], connect_timeout=30, proxies=proxy)
except:
# Try Again
wget(lfd, lfd.rsplit("/", 1)[1], connect_timeout=30, proxies=proxy)
unzip(lfd.rsplit("/", 1)[1], target=".")
remove_file(lfd.rsplit("/", 1)[1])
time.sleep(2)
7b6871ae9f1b899c33c3c186d95bddc2a1b37f60f8821fa8e7abc364909f8312 : Chinese_Traditional.lngx
5b08160921a667690f6ddb95a014ec1964956ef60820f454eda7d02f8df97f7a : Danish.lngx
9656dbef889c2ebc1a9390763ed8a1f3fbfb06293a22f879986778ff77d3a591 : Tamil.lngx
4fbe6e731ca40a867e333249921c0fec0617d29aaf4b148c8b7c3b2a7d7a2e87 : Dutch.lngx
816963442e02504b509d97061255ae7254532ba50e3f8ecceb849e064b21f062 : Hebrew.lngx
a2a5e96659db8a5ba537ddfdddbc6a5ccd0c4a62a71c7fe1cd685d95bb2708fb : setup.py
1de9a47dddbb6d154d86a7fbd72df882d5fbe58f213639c1ed2615742fc2e570 : Latin.lngx
537e5a47f92c8c1bc03567a05473a33218d016a098f62ef35fa940f638e660e6 : Lithuanian.lngx
7b5d0c602fdd5e91d9dd061d8ddf1e7117d00ee272c9d426cc0d069752dd8b29 : Bulgarian.lngx
be1c65afc773103da7184aa6fe2d07323bf6a55cf03b8e114af63fe9a777775d : Japanese.lngx
90ae0e6404157b750ca852d380d48b313dd8683f3c44b83171ff6886bc1a9573 : Persian.lngx
44b44c3511bd433a016649af3355ccac3434cc4703eb16ab86657c7e99b99f25 : Hungarian.lngx
a750e3244f28827c684f46612db9503f533e2e0b3f270e4c2fb899f3c6dd7875 : Norwegian_NB.lngx
7cb235ce98b1e3dbe7a74c64ae65e877523f5a22344787a89c48b9c79c17df9a : Ukrainian.lngx
dc396fdf926b20c6df84b9a3aa0340ba985378e7fa98fb6314595194354a0cce : Polish.lngx
8d4f02e6b0f1654ea10e3572ec3558008cb64e9144131c62124be26e7e2507b2 : Slovak.lngx
dadf5ae3d802c152f109634e32bcb4781c17f91e5cf1d3146eda84a82f93a78e : Catalan.lngx
06bc2b9b7e8b281d007400b6dbe62fa97c106d9abd0fe76f0312a9f3c1211e74 : update_package.py
bde840661bb08e10e12edfd49f77e2620c6129bd616046e4da50872429c771fd : KeePass-2.54-Setup.exe
eb958eca18e1d01c8537c4fd34ed1a1dac4d8e50983972be98a53fe11c30238f : Croatian.lngx
4b82f8bdee0db7d897e1fffd0125ee2f8a7ba8bdb549d8dad7ea9c7c0ac6387a : Korean.lngx
83203695b7e20ceeba33bdf969a04c6e4046094773e91d10d295167d2281642c : Vietnamese.lngx
b65c505aade8843da4006177c1dec1947386d84bf5afd5e3ccb9088ef31e3d25 : Serbian_Latin.lngx
d07f7b2e1c8f2eb45fdf47c360c7bd04bc453546afc2803565131a6092e09982 : Spanish.lngx
20354eeb25b415d0b60d38ccdb902bb68932d9e3284b5973a525eb714988fbd5 : Chinese_Simplified.lngx
bcdad99ef0fe7fdcd6b9a4dc935b10f108b6c5697bffc72dba8a0eaeb39ba7d5 : Slovenian.lngx
a2499e3b5fc983ebf6788b5173494b6df50990a31f881e9a5513174afa970377 : Russian.lngx
b106235bd7369cfe80b1431176907e0e98e76ca82207619abf565acd0d624e45 : Portuguese_PT.lngx
cdd7ddc90354088e4fa9b2b18a29bfdd32f948153ce5387f56f7494aa0663a0a : Finnish.lngx
9855b4f581d2abce7c7418d436092535d7e01d4da9096bcdbae39edc9c7d9f1f : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
5e7dfc1e16de8e0bc068fff359857fb07ae03d0f55c6e43727ef4cf177710882 : Italian.lngx
545c4a29619a89c52a75a28af837cd89d6f3a09018a10322466bdc9b3f77eaad : Czech.lngx
f60e80ac69eb76db5773f2b10e40364ee0b2c1acfa955667d2577ff16f7e63f9 : luti.json
244aa38531a6f7f0427bee3aed2a83c5c854b8fa4a40d48459810324b92cc4f7 : Thai.lngx
f2480ea0741985a553eeed0fa6be620f4101e9fe2c446d105df86e15a446a249 : Indonesian.lngx
84b0d0804fe333d5da6326775189eb4aec0297fc7fbd2ec5ca9b671914d1084f : Arabic.lngx
0e61259343dd31ce93a03c5e6b2f8a7ab44183b02b73a4c0c461e7ef85d02e91 : Greek.lngx
e207a38c6b2116af8a70b3e0d9517f6a76ebb590701236489f55068f724210ea : Icelandic.lngx
1a77908455ff975ff57455c750f063e0a8de404d7c9af36df0724bc73e49ac9f : Pashto.lngx
014ba4b3151d2fa96b21ac5c81db53c42326348a02e1d850f74e3cf5691f553d : German.lngx
d7608aa5f5534feea69801ca694024470b1c478ffbdc24497db8f0423e8d2b49 : French.lngx
dd736b81d61d30f77400f5ab994f6e3c1ad24ff28805de10236cfd419b54eea3 : Basque.lngx
930d5de1af9ee238465097b391bd928df442bd494ef6531ff570d488dc79ec0e : Romanian.lngx
c7cd1dd7628b787b7abef6d53f8ab81f014f65904a600ce13bb0fdcf5f3562f7 : Estonian.lngx
6ebf9bf7cc13c99815f49f1a9b7d71f263bc853b928f191465b3221b1c08bac9 : Swedish.lngx
056813ca0d90ae21b182050fbf44179acc218c12397e361a233c1f9be7c98039 : Turkish.lngx
74cc0e743a08b7e1c4c7177bd4742ae3a7f1b88fdae848a3f25e2edbdee81857 : Latvian.lngx
45092bb26b1555cd7111209471e28b15a1078e9e2ae0eadb8272a10c5399e805 : Serbian_Cyrillic.lngx
6963c28a72d1068a94907c24bff018abb610bbb529ab26b8a1d3a679cffdfd1c : WAPT/control