gnu: akonadi: Enable tests.
* gnu/packages/kde-pim.scm (akonadi)[arguments]: Enable tests and use gexp. [inputs]: Add LIBACCOUNTS-QT and SIGNOND. Co-authored-by: Marius Bakke <marius@gnu.org>
This commit is contained in:
parent
2c6b4872fc
commit
98fd85c032
1 changed files with 47 additions and 36 deletions
|
@ -23,6 +23,7 @@
|
||||||
(define-module (gnu packages kde-pim)
|
(define-module (gnu packages kde-pim)
|
||||||
#:use-module (guix build-system qt)
|
#:use-module (guix build-system qt)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix gexp)
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
|
@ -47,22 +48,26 @@
|
||||||
(package
|
(package
|
||||||
(name "akonadi")
|
(name "akonadi")
|
||||||
(version "22.08.1")
|
(version "22.08.1")
|
||||||
(source
|
(source (origin
|
||||||
(origin
|
(method url-fetch)
|
||||||
(method url-fetch)
|
(uri (string-append "mirror://kde/stable/release-service/"
|
||||||
(uri (string-append "mirror://kde/stable/release-service/" version
|
version "/src/akonadi-" version ".tar.xz"))
|
||||||
"/src/akonadi-" version ".tar.xz"))
|
(sha256
|
||||||
(sha256
|
(base32
|
||||||
(base32 "1yfy0b6kyiq82zkfkx9ldgjlbwg3lgg4di53fqjllmqhzaj1xy91"))
|
"1yfy0b6kyiq82zkfkx9ldgjlbwg3lgg4di53fqjllmqhzaj1xy91"))
|
||||||
(patches (search-patches
|
(patches (search-patches "akonadi-paths.patch"
|
||||||
"akonadi-paths.patch"
|
"akonadi-timestamps.patch"
|
||||||
"akonadi-timestamps.patch"
|
"akonadi-not-relocatable.patch"))))
|
||||||
"akonadi-not-relocatable.patch"))))
|
|
||||||
(build-system qt-build-system)
|
(build-system qt-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list dbus extra-cmake-modules qttools-5 shared-mime-info pkg-config))
|
(list dbus
|
||||||
|
extra-cmake-modules
|
||||||
|
qttools-5
|
||||||
|
shared-mime-info
|
||||||
|
pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
(list boost
|
(list boost
|
||||||
|
libaccounts-qt
|
||||||
kconfig
|
kconfig
|
||||||
kconfigwidgets
|
kconfigwidgets
|
||||||
kcoreaddons
|
kcoreaddons
|
||||||
|
@ -80,33 +85,39 @@
|
||||||
;; Do NOT add mysql or postgresql to the inputs. Otherwise the binaries
|
;; Do NOT add mysql or postgresql to the inputs. Otherwise the binaries
|
||||||
;; and wrapped files will refer to them, even if the user choices none
|
;; and wrapped files will refer to them, even if the user choices none
|
||||||
;; of these. Executables are searched on $PATH then.
|
;; of these. Executables are searched on $PATH then.
|
||||||
qtbase-5
|
signond
|
||||||
sqlite))
|
qtbase-5))
|
||||||
|
(propagated-inputs (list sqlite kaccounts-integration))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ;; TODO 135/167 tests fail
|
(list #:tests? #f
|
||||||
#:configure-flags '("-DDATABASE_BACKEND=SQLITE") ; lightweight
|
#:configure-flags #~'("-DDATABASE_BACKEND=SQLITE") ;lightweight
|
||||||
#:modules ((ice-9 textual-ports)
|
#:modules `((ice-9 textual-ports)
|
||||||
,@%qt-build-system-modules)
|
,@%qt-build-system-modules)
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases (@ (guix build qt-build-system) %standard-phases)
|
#~(modify-phases (@ (guix build qt-build-system) %standard-phases)
|
||||||
(add-before 'configure 'add-definitions
|
(replace 'check
|
||||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
(lambda* (#:key tests? #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(when tests?
|
||||||
(with-output-to-file "CMakeLists.txt.new"
|
(setenv "PATH"
|
||||||
(lambda _
|
(string-append (getcwd) "/bin" ":"
|
||||||
(display
|
(getenv "PATH")))
|
||||||
(string-append
|
(invoke "dbus-launch" "ctest" "-E"
|
||||||
"add_compile_definitions(\n"
|
"(AkonadiServer-dbconfigtest|mimetypecheckertest|entitytreemodeltest|akonadi-sqlite-testenvironmenttest|akonadi-sqlite-autoincrementtest|akonadi-sqlite-attributefactorytest|akonadi-sqlite-collectionpathresolvertest|akonadi-sqlite-collectionattributetest|akonadi-sqlite-itemfetchtest|akonadi-sqlite-itemappendtest|akonadi-sqlite-itemstoretest|akonadi-sqlite-itemdeletetest|akonadi-sqlite-entitycachetest|akonadi-sqlite-monitortest|akonadi-sqlite-changerecordertest|akonadi-sqlite-resourcetest|akonadi-sqlite-subscriptiontest|akonadi-sqlite-transactiontest|akonadi-sqlite-itemcopytest|akonadi-sqlite-itemmovetest|akonadi-sqlite-invalidatecachejobtest|akonadi-sqlite-collectioncreatetest|akonadi-sqlite-collectioncopytest|akonadi-sqlite-collectionmovetest|akonadi-sqlite-collectionsynctest|akonadi-sqlite-itemsynctest)"))))
|
||||||
"NIX_OUT=\"" out "\"\n"
|
(add-before 'configure 'add-definitions
|
||||||
;; pin binaries for mysql backend
|
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||||
")\n\n"))
|
(with-output-to-file "CMakeLists.txt.new"
|
||||||
(display
|
(lambda _
|
||||||
(call-with-input-file "CMakeLists.txt"
|
(display (string-append
|
||||||
get-string-all))))
|
"add_compile_definitions(\n"
|
||||||
(rename-file "CMakeLists.txt.new" "CMakeLists.txt")))))))
|
"NIX_OUT=\""
|
||||||
|
#$output "\"\n" ")\n\n"))
|
||||||
|
(display (call-with-input-file "CMakeLists.txt"
|
||||||
|
get-string-all))))
|
||||||
|
(rename-file "CMakeLists.txt.new" "CMakeLists.txt"))))))
|
||||||
(home-page "https://kontact.kde.org/components/akonadi/")
|
(home-page "https://kontact.kde.org/components/akonadi/")
|
||||||
(synopsis "Extensible cross-desktop storage service for PIM")
|
(synopsis "Extensible cross-desktop storage service for PIM")
|
||||||
(description "Akonadi is an extensible cross-desktop Personal Information
|
(description
|
||||||
|
"Akonadi is an extensible cross-desktop Personal Information
|
||||||
Management (PIM) storage service. It provides a common framework for
|
Management (PIM) storage service. It provides a common framework for
|
||||||
applications to store and access mail, calendars, addressbooks, and other PIM
|
applications to store and access mail, calendars, addressbooks, and other PIM
|
||||||
data.
|
data.
|
||||||
|
|
Reference in a new issue