diff --git a/app-admin/keepassxc/additional-files/keepassxc.rdef b/app-admin/keepassxc/additional-files/keepassxc.rdef new file mode 100644 index 000000000..9a1d2b0f5 --- /dev/null +++ b/app-admin/keepassxc/additional-files/keepassxc.rdef @@ -0,0 +1,62 @@ + +resource app_flags B_SINGLE_LAUNCH | B_ARGV_ONLY; + +resource app_version { + major = 2, + middle = 1, + minor = 0, + + variety = B_APPV_FINAL, + internal = 1, + + short_info = "Qt password manager", + long_info = "" +}; + +resource app_signature "application/x-vnd.qt5-keepassxc"; + +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/keepassxc/keepassxc-2.1.0.recipe b/app-admin/keepassxc/keepassxc-2.1.0.recipe new file mode 100644 index 000000000..11342f52e --- /dev/null +++ b/app-admin/keepassxc/keepassxc-2.1.0.recipe @@ -0,0 +1,106 @@ +SUMMARY="Qt password manager" +DESCRIPTION=" +KeePassXC 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. +KeePassXC 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. +KeePassXC 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. +KeePassXC is a community fork of KeePassX which aims to incorporate stalled \ +pull requests, features, and bug fixes that have never made it into the main \ +KeePassX repository." +HOMEPAGE="https://keepassxc.org/" +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" +SOURCE_URI="https://github.com/keepassxreboot/keepassxc/releases/download/$portVersion/keepassxc-$portVersion-src.tar.bz2" +CHECKSUM_SHA256="23a39aeda8f2e6263b0821826cfb8735275fba104712748c7a5e41e1f87fb0a6" +PATCHES="keepassxc-2.1.0.patchset" +ADDITIONAL_FILES="keepassxc.rdef" + +ARCHITECTURES="x86 ?x86_64" + +PROVIDES=" + keepassxc = $portVersion + app:keepassxc = $portVersion + " +REQUIRES=" + haiku + lib:libgcrypt + lib:libmicrohttpd + lib:libQt5Concurrent + lib:libQt5Core + lib:libQt5Network + lib:libQt5Test + lib:libQt5Widgets + lib:libz + " + +BUILD_REQUIRES=" + haiku_devel + devel:libz + devel:libgcrypt + devel:libgpg_error + devel:libmicrohttpd + devel:libQt5Concurrent + devel:libQt5Core + devel:libQt5Network + devel:libQt5Test + devel:libQt5Widgets + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:make + cmd:g++ + cmd:qmake + cmd:moc + cmd:xres + " + +BUILD() +{ + cmake -DCMAKE_INSTALL_PREFIX=$prefix \ + -DCMAKE_INSTALL_DATAROOTDIR=$dataDir \ + -DCMAKE_BUILD_TYPE=Release \ + -DWITH_TESTS=on -DWITH_XC_AUTOTYPE=on. + + make $jobArgs + + rc $portDir/additional-files/keepassxc.rdef \ + -o $sourceDir/src/keepassxc.rsrc + + xres -o $sourceDir/src/keepassxc $sourceDir/src/keepassxc.rsrc + mimeset -f $sourceDir/src/keepassxc +} + +INSTALL() +{ + make install + appIconsDir=$dataDir/keepassxc/icons/application + rm -rf $appIconsDir/scalable + rm -rf $appIconsDir/16x16/apps + rm -rf $appIconsDir/*/mimetypes + for i in 24 32 48 64 128 256; do + rm -rf $appIconsDir/${i}x${i} + done + mkdir -p $appsDir + mv $binDir/keepassxc $appsDir/KeePassXC + addAppDeskbarSymlink $appsDir/KeePassXC KeePassXC +} + +TEST() +{ + make test +} diff --git a/app-admin/keepassxc/patches/keepassxc-2.1.0.patchset b/app-admin/keepassxc/patches/keepassxc-2.1.0.patchset new file mode 100644 index 000000000..23a3def4d --- /dev/null +++ b/app-admin/keepassxc/patches/keepassxc-2.1.0.patchset @@ -0,0 +1,43 @@ +From 6afc6a829705866dca58ec9e076256bcdeccb475 Mon Sep 17 00:00:00 2001 +From: Kacper Kasper +Date: Thu, 26 Jan 2017 21:24:52 +0100 +Subject: Haiku support + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3914049..916a27c 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -68,7 +68,7 @@ endmacro(add_gcc_compiler_flags) + + add_definitions(-DQT_NO_EXCEPTIONS -DQT_STRICT_ITERATORS -DQT_NO_CAST_TO_ASCII) + +-add_gcc_compiler_flags("-fno-common -fstack-protector --param=ssp-buffer-size=4") ++add_gcc_compiler_flags("-fno-common") + add_gcc_compiler_flags("-Wall -Wextra -Wundef -Wpointer-arith -Wno-long-long") + add_gcc_compiler_flags("-Wformat=2 -Wmissing-format-attribute") + add_gcc_compiler_flags("-fvisibility=hidden") +diff --git a/share/CMakeLists.txt b/share/CMakeLists.txt +index a77f80a..a688f0a 100644 +--- a/share/CMakeLists.txt ++++ b/share/CMakeLists.txt +@@ -19,14 +19,14 @@ 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 ${CMAKE_INSTALL_DATADIR}/icons/hicolor + FILES_MATCHING PATTERN "keepassx*.png" PATTERN "keepassx*.svgz") + install(DIRECTORY icons/application/ DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor + FILES_MATCHING PATTERN "application-x-keepassxc.png" PATTERN "application-x-keepassxc.svgz") + install(FILES linux/keepassxc.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications) + install(FILES linux/keepassxc.xml DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages) +-endif(UNIX AND NOT APPLE) ++endif(UNIX AND NOT APPLE AND NOT HAIKU) + + if(APPLE) + install(FILES macosx/keepassxc.icns DESTINATION ${DATA_INSTALL_DIR}) +-- +2.2.2 +