diff --git a/app-admin/keepassx/additional-files/keepassx.rdef b/app-admin/keepassx/additional-files/keepassx.rdef new file mode 100644 index 000000000..b42fffa85 --- /dev/null +++ b/app-admin/keepassx/additional-files/keepassx.rdef @@ -0,0 +1,62 @@ + +resource app_flags B_SINGLE_LAUNCH | B_ARGV_ONLY; + +resource app_version { + major = 2, + middle = 0, + minor = 0, + + variety = B_APPV_ALPHA, + internal = 4, + + short_info = "Qt password manager", + long_info = "" +}; + +resource app_signature "application/x-vnd.keepassx"; + +resource file_types message; + +resource vector_icon { + $"6E6369660404007F050005FF0200060240810E3D757BBD7874408335CB76E94C" + $"216A00226E23FF63AB3A0A0216B40BCB63B40BCB63B40BCB63B46ECB70B46ECB" + $"70B4EFCB9DB548CB85B4D5CB85B548CB85B8DCCB80B8DCCB80B91ECB8130CAD0" + $"B932CB00BA04CA25BAE7C959BA57C9B3BAE7C959BD80C944BD80C944BE02C943" + $"BEC6C8BCBEC6C940BEC6C8BCBF65C858BF65C858BF65C858C219CB19C219CB19" + $"C245CB46C2BECB6CC280CB61C2BECB6CC339CB8CC339CB8CC483CB89C71DCB73" + $"C594CB75C79FCB73C809CAC9C7B9CB37C7EBC943C7EDC638C7FAC74CC7E4C5F6" + $"C79AC587C7C9C5B7C6DFC4C8C4D9C289C594C348C6C0C206C979C019C840C128" + $"CAB3BF0BCB8DBBC8CB8DBDBECB8D32CADBB78ECB7CB8C2CAD9B78BCAD7B786CA" + $"D9B788C8B0B76FB40BCB63AFA4CB42B40BCB63021CC3F6B334C3F6B334BFF3B3" + $"34BC9ABA9DBCA5B687BB4AB948B8B0B69CB9FAB7F2B882B66BB7FCB64FB83FB6" + $"4FB7FCB64FB430B64FB430B64FB3ADB64FB335B74FB335B6C9B335B74FB335BB" + $"36B335BB36B335BB7AB380BBEDB351BBBEB51ABD8AB848C0CCB6AFBF2BB848C0" + $"CCB37EC5ADB37EC5ADB350C5DCB335C660B335C61EB335C660B335CA3DB335CA" + $"3DB335CAC3B430CB3DB3ADCB3DB430CB3DB804CB3DB804CB3DB847CB3DB8B8CA" + $"F0B889CB21B95ECA43BAB457BA09C997BAB457BD5857BD5857BDDB57BE53C7EB" + $"BE53C871BE53C7EBBE53C6F3BE53C6F3BE53C6F3C23FCAF2C23FCAF2C26ECB21" + $"C2F1CB3DC2AFCB3DC2F1CB3DC6C3CB3DC6C3CB3DC747CB3DC7BECA3DC7BECAC3" + $"C7BECA3DC7BEC660C7BEC660C7BEC61EC775C5ADC7A3C5DCC652C484C40CC230" + $"C52FC35AC80D46CB4FBAB1CB4FBEC7CB4FB694C3F6B334C7FFB334C3F6B33406" + $"17FFF3F7F4FC3FC3F6B433C3F6B433C075B433BD93BAB1BD93B71EBD93BB54BD" + $"DEBC82BDB3BBEEBDDEBC82BD7ABCE9BD7ABCE9BBA7BB09B7FCB74FB9CCB931B7" + $"FCB74FB430B430BB36B430BB36B606BD10B9ABC0CAB7D8BEEEB7D8C2A7B430C6" + $"60B604C483B430C660CA3DB804CA3DB804CA3DB8C5C975BA4BC7EBB989C8B0BA" + $"4BC7EBBD58C4DDBDABC4DDBDABC4DDBF6DC6A8C2F1CA3DC12FC872C2F1CA3DC6" + $"C3C6C3C660C6C3C660C4F0C483C14AC0CAC31DC2A7C14AC0CAC16CC0A8C16CC0" + $"A8C234C100C3F6C133C310C133C778C133CA54BAB1CA54BE43CA54B71FC3F6B4" + $"33C776B433C3F6B4330603378000C34B8000C3488000C34BC34F8000C34F8000" + $"C34F8000C34C0603338000B0028000AD1E8000B00280008000AFFE8000AFFE80" + $"00AA520617BF928684E43FC3F6B591C3F6B591C12DB591BEEABAB1BEEAB7DBBE" + $"EABB79BF65BCE1BF17BC37BF65BCE1BD7ABED5B76EB8ACB587BAA5BB8FC0CAB5" + $"87C6EFC8E0B776B9BCC68FBC03C380BE38C37EC8E0C56DC6EFBF65C0CAC12BBE" + $"FBC12BBEFBC1F8BF85C3F6BFD6C2EEBFD6C6BEBFD6C8FEBAB1C8FEBD87C8FEB7" + $"DBC3F6B591C6BEB591C3F6B5910204C7AABA18C7AAB8D1C7AA35C582BC68C6B3" + $"BC68C451BC68C35ABA18C35A35C35AB8D1C5822CC4512CC6B32C0204C7AABA18" + $"C7AAB8D1C7AA35C582BC68C6B3BC68C451BC68C35ABA18C35A35C35AB8D1C582" + $"2CC4512CC6B32C0204C710B9C8C710B8DCC710BAB3C56BBB73C654BB73C482BB" + $"73C3C5B9C8C3C5BAB3C3C5B8DCC56BB81DC482B81DC654B81D0204C710B9C8C7" + $"10B8DCC710BAB3C56BBB73C654BB73C482BB73C3C5B9C8C3C5BAB3C3C5B8DCC5" + $"6BB81DC482B81DC654B81D080A000100000A010101000A0203020304000A0301" + $"05000A010106000A0101071001178000040A020108000A010109100117800004" +}; diff --git a/app-admin/keepassx/keepassx-2.0a4.git.recipe b/app-admin/keepassx/keepassx-2.0a4.git.recipe new file mode 100644 index 000000000..736ea893b --- /dev/null +++ b/app-admin/keepassx/keepassx-2.0a4.git.recipe @@ -0,0 +1,88 @@ +SUMMARY="Qt password manager" +DESCRIPTION=" +KeePassX is an application for people with extremly high demands on +secure personal data management. It has a light interface, is cross +platform and published under the terms of the GNU General Public +License. + +KeePassX saves many different information e.g. user names, passwords, +urls, attachments and comments in one single database. For a better +management user-defined titles and icons can be specified for each +single entry. Furthermore the entries are sorted in groups, which are +customizable as well. The integrated search function allows to search +in a single group or the complete database. + +KeePassX offers a little utility for secure password generation. The +password generator is very customizable, fast and easy to use. +Especially someone who generates passwords frequently will appreciate +this feature. +" +HOMEPAGE="http://www.keepassx.org/" +SRC_URI="git+https://github.com/keepassx/keepassx.git#755241df5c" +COPYRIGHT=" + 2010-2012, Felix Geyer + 2011-2012, Florian Geyer + 2012, Tobias Tangemann + 2007, Trolltech ASA + 2012, Intel Corporation + 2012, Nokia Corporation and/or its subsidiary(-ies) + 2000-2008, Tom Sato + " + +LICENSE="GNU GPL v2" +REVISION="1" +ARCHITECTURES="x86" + +PROVIDES=" + keepassx = $portVersion + cmd:keepassx = $portVersion + " + +REQUIRES=" + haiku >= $haikuVersion + lib:libgcrypt + lib:libQtCore + lib:libQtGui + lib:libz + " + +BUILD_REQUIRES=" + haiku_devel >= $haikuVersion + devel:libz + devel:libgcrypt + devel:libQtCore + devel:libQtGui + " + +BUILD_PREREQUIRES=" + cmd:cmake + cmd:make + cmd:g++ + cmd:qmake + cmd:moc + cmd:xres + " + +PATCHES="keepassx-2.0a4.git.patchset" + +BUILD() +{ + cmake -DCMAKE_INSTALL_PREFIX=$prefix \ + -DCMAKE_INSTALL_DATAROOTDIR=$dataDir \ + -DWITH_TESTS=off . + + make $jobArgs + + rc $portDir/additional-files/keepassx.rdef \ + -o $sourceDir/src/keepassx.rsrc + + xres -o $sourceDir/src/keepassx $sourceDir/src/keepassx.rsrc + mimeset -f $sourceDir/src/keepassx +} + +INSTALL() +{ + make install + + addAppDeskbarSymlink $binDir/keepassx KeePassX +} diff --git a/app-admin/keepassx/patches/keepassx-2.0a4.git.patchset b/app-admin/keepassx/patches/keepassx-2.0a4.git.patchset new file mode 100644 index 000000000..61eab5e36 --- /dev/null +++ b/app-admin/keepassx/patches/keepassx-2.0a4.git.patchset @@ -0,0 +1,103 @@ +From a31497e5c3979dcbe76dd3df98db191506f6f26e Mon Sep 17 00:00:00 2001 +From: Chris Roberts +Date: Thu, 28 Nov 2013 01:27:03 -0700 +Subject: Add Haiku support + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3ec6023..1acfb25 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -148,7 +148,7 @@ if(WITH_TESTS) + endif(WITH_TESTS) + + set(QT_REQUIRED_MODULES QtCore QtGui QtTest) +-if(UNIX AND NOT APPLE) ++if(UNIX AND NOT APPLE AND NOT HAIKU) + set(QT_REQUIRED_MODULES ${QT_REQUIRED_MODULES} QtDBus) + endif() + +diff --git a/share/CMakeLists.txt b/share/CMakeLists.txt +index 06b6a52..930a0cd 100644 +--- a/share/CMakeLists.txt ++++ b/share/CMakeLists.txt +@@ -17,11 +17,11 @@ file(GLOB DATABASE_ICONS icons/database/*.png) + + install(FILES ${DATABASE_ICONS} DESTINATION ${DATA_INSTALL_DIR}/icons/database) + +-if(UNIX AND NOT APPLE) ++if(UNIX AND NOT APPLE AND NOT HAIKU) + install(DIRECTORY icons/application/ DESTINATION share/icons/hicolor + FILES_MATCHING PATTERN "keepassx.png" PATTERN "keepassx.svgz") + install(FILES linux/keepassx.desktop DESTINATION share/applications) +-endif(UNIX AND NOT APPLE) ++endif(UNIX AND NOT APPLE AND NOT HAIKU) + + if(APPLE) + install(FILES macosx/keepassx.icns DESTINATION ${DATA_INSTALL_DIR}) +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 176ecb3..4facf63 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -216,7 +216,7 @@ target_link_libraries(${PROGNAME} + ${GCRYPT_LIBRARIES} + ${ZLIB_LIBRARIES}) + +-if(UNIX AND NOT APPLE) ++if(UNIX AND NOT APPLE AND NOT HAIKU) + target_link_libraries(${PROGNAME} ${QT_QTDBUS_LIBRARY}) + endif() + +diff --git a/src/config-keepassx.h.cmake b/src/config-keepassx.h.cmake +index 479a5f6..0841d21 100644 +--- a/src/config-keepassx.h.cmake ++++ b/src/config-keepassx.h.cmake +@@ -9,6 +9,8 @@ + + #define KEEPASSX_PLUGIN_DIR "${PLUGIN_INSTALL_DIR}" + ++#define KEEPASSX_DATA_DIR "${DATA_INSTALL_DIR}" ++ + #cmakedefine HAVE_PR_SET_DUMPABLE 1 + #cmakedefine HAVE_RLIMIT_CORE 1 + #cmakedefine HAVE_PT_DENY_ATTACH 1 +diff --git a/src/core/FilePath.cpp b/src/core/FilePath.cpp +index dd300ec..968269f 100644 +--- a/src/core/FilePath.cpp ++++ b/src/core/FilePath.cpp +@@ -137,6 +137,10 @@ FilePath::FilePath() + else if (testSetDir(QCoreApplication::applicationDirPath() + "/share")) { + } + #endif ++#ifdef KEEPASSX_DATA_DIR ++ else if (testSetDir(QString(KEEPASSX_DATA_DIR))) { ++ } ++#endif + + if (m_dataPath.isEmpty()) { + qWarning("FilePath::DataPath: can't find data dir"); +diff --git a/src/gui/Clipboard.cpp b/src/gui/Clipboard.cpp +index eb77d2b..958eacb 100644 +--- a/src/gui/Clipboard.cpp ++++ b/src/gui/Clipboard.cpp +@@ -21,7 +21,7 @@ + #include + #include + +-#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) ++#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) && !defined(Q_OS_HAIKU) + #include + #include + #endif +@@ -70,7 +70,7 @@ void Clipboard::clearClipboard() + clipboard->clear(QClipboard::Selection); + } + +-#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) ++#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) && !defined(Q_OS_HAIKU) + QDBusMessage message = QDBusMessage::createMethodCall("org.kde.klipper", "/klipper", "", "clearClipboardHistory"); + QDBusConnection::sessionBus().send(message); + #endif +-- +1.8.3.4 +