tis-keepass

2.47-32
KeePass Password Safe is a free and open-source password manager
26083 downloads
Download

  Description 

  • package : tis-keepass
  • version : 2.47-32
  • architecture : all
  • categories : Security,Utilities
  • maintainer : WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau
  • description : KeePass Password Safe is a free and open-source password manager
  • locale : all
  • target_os : windows
  • min_os_version :
  • max_os_version :
  • min_wapt_version : 1.7
  • 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 :
  • description_de :
  • description_es :
  • description_pt :
  • description_it :
  • description_nl :
  • description_ru :
  • editor : Dominik Reichl
  • licence : GPLv2
  • signature_date : 2021-01-15T09:57:45.514563
  • Homepage : https://keepass.info/

  Setup.py 

# -*- coding: utf-8 -*-
from setuphelpers import *
import time
import requests
import platform

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()


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-','').replace('.zip','')

    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)


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
}




										

  Changelog 


Changelog software url : https://keepass.info/news/news_all.html

No changelog
  manifest.sha256 
[["Arabic.lngx","7f2d2d3e8a68aa288cd283032f419d91193d71428065ac379f51f529c399e531"],["Basque.lngx","86535d4153d2ccd4b5f65630dfdd707d3fd9913eb3360d77c1fe6be5649b820a"],["Bulgarian.lngx","850c36320c3672fd62b1cf96803b86822cfbcbde94c5d52ecfc1b9a6773df0b4"],["Catalan.lngx","c71b0aec677e8d69f987f4bb3a2c950047660b875d39ffb72b322962a7f2ad6f"],["Chinese_Simplified.lngx","2ed53ae3a6ec55d1f402e02bc765b1171c21fbd41f090ae19b8f1917234731ba"],["Chinese_Traditional.lngx","30fefd20feb1673f5ee21b37f63a6aa1dc7dd40aad24d31cd83c3d7354612b2c"],["Croatian.lngx","eb958eca18e1d01c8537c4fd34ed1a1dac4d8e50983972be98a53fe11c30238f"],["Czech.lngx","1b6abfcff84cb5decb70a5357d40da7b181bf10e72187214fed0f9a5e904fce5"],["Danish.lngx","3648ffcf7fe6be12e18a8238f6615c012234ef5ad6061b9264e86283a9f22a89"],["Dutch.lngx","cddde61d574e257d7d41e9ec7ebdfb818d485e5ed2537bcf6d6a80406f3902f3"],["Estonian.lngx","c7cd1dd7628b787b7abef6d53f8ab81f014f65904a600ce13bb0fdcf5f3562f7"],["Finnish.lngx","2fdc8d40bb0277ce45acbe967ae5b710aefcb30102e3d194830e5b241d7b7186"],["French.lngx","9a9f1b21e06c2caad4dd6005ace8d511bdd9398fb2257c728eee642aee1015ef"],["German.lngx","04228a8ad5766a3138fb4ac2e9935dcc57986ee0205cd09ab1526eb355c26863"],["Greek.lngx","6d2bb0780ccfc698b702063a4be5779981bf8a9676a87ee63ac344a6da8c3f2a"],["Hebrew.lngx","816963442e02504b509d97061255ae7254532ba50e3f8ecceb849e064b21f062"],["Hungarian.lngx","a4138751e7f59cbc3568a9fa19620c257ae77bc14c49729de3fda3a1c9529a09"],["Icelandic.lngx","e207a38c6b2116af8a70b3e0d9517f6a76ebb590701236489f55068f724210ea"],["Indonesian.lngx","f2480ea0741985a553eeed0fa6be620f4101e9fe2c446d105df86e15a446a249"],["Italian.lngx","fc485fc8aae389638e92062ad178c56802df364122ee0a8bff26a063181553b1"],["Japanese.lngx","4002e74c62034c2e0e3d596dc20c31cec75be25f4125024314a8d6880f16a7f8"],["KeePass-2.47-Setup.exe","3eb2723ae5363c8400b494a5c2bb24d911e622ecbc15b20aaa32526a7bb45e42"],["Korean.lngx","18ab380adc4688ac0b7ef8e408b14e009c6bc3c8da3fda8f3b2eb224bcb4e2e8"],["Latin.lngx","1de9a47dddbb6d154d86a7fbd72df882d5fbe58f213639c1ed2615742fc2e570"],["Latvian.lngx","90e6348deea4f0afd4d25326a0e76b46635646efd416b1432800d640ae1e8f1d"],["Lithuanian.lngx","537e5a47f92c8c1bc03567a05473a33218d016a098f62ef35fa940f638e660e6"],["Norwegian_NB.lngx","1af9e609acef8102f44b302c8615e3b8dc026402cb3130f8a908de74747b6945"],["Pashto.lngx","1a77908455ff975ff57455c750f063e0a8de404d7c9af36df0724bc73e49ac9f"],["Persian.lngx","71a104f8c146802be164a7b2c562d1946d8eca33bde3cab355c1548274418077"],["Polish.lngx","ac06b5e5df4749c9734264fb44fa32cb0c88e2bdd0292bbd6a636eb1f85ad371"],["Portuguese_PT.lngx","7c067303f942a25af6929c936827a11b44b2ecac3028553688544894a69fe798"],["Romanian.lngx","930d5de1af9ee238465097b391bd928df442bd494ef6531ff570d488dc79ec0e"],["Russian.lngx","050a4103200125f018a53b1a2a15f0d088321e08b830ad7eb299b91c1735f1b0"],["Serbian_Cyrillic.lngx","f5b816df90c728826ee6648d0439bf4649f1edd8392247fb91f7775d0055a8b4"],["Serbian_Latin.lngx","3b99f52dfb9cca46fc9a1ab4ba4f4082956d5b19763b9930ac6d7d839f0c9215"],["setup.py","c8c45786b335ca6d232ab23ed630a89b87778179ea944ad11e7b51c6810acc6d"],["Slovak.lngx","b68d8dba0467beeb2d2c116a29b63cef6eafcee7474f37296e25c232ab50dd79"],["Slovenian.lngx","f77ebe5a42958e563ecab85a018fe8e6fa999a8d3cebf9f93c43634b3ed94796"],["Spanish.lngx","cc4aa7d4c19a5496e0b044acb62dce9e89d9e0cc0f75bba9151e6cc5a75ac860"],["Swedish.lngx","b07b01dbc6ddbdce6cf9c01132646ad610aa7cfe44181defccd1532146c678ec"],["Thai.lngx","a1498f4d330e6da4347b8ec7b48019df339dd8069036b5631616a2ee748f9169"],["Turkish.lngx","3a4446b8b51c02e448a446acfc1a35db5b90c2834caa08fa1ca17390a28ba587"],["Ukrainian.lngx","64885cbc1ee37a907a877e296f472ce87ab38220c76ae54fa4055ab80415bcc3"],["Vietnamese.lngx","4cfde0910cde8c37fcd622f2bfb855c83b2203503cc62ddb4555688ae416ba31"],["WAPT/certificate.crt","a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf"],["WAPT/icon.png","9855b4f581d2abce7c7418d436092535d7e01d4da9096bcdbae39edc9c7d9f1f"],["WAPT/control","053a7fa3eba9b7f89e80d2c8b326f854b370e518f66a6234e0fa873d5e19ace4"]]