+
+(define-public feedbackd
+ (package
+ (name "feedbackd")
+ (version "0.0.0+git20200527")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://source.puri.sm/Librem5/feedbackd.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1wbkzxnqjydfgjvp7vz4ghczcz740zcb1yn90cb6gb5md4n6qx2y"))))
+ (build-system meson-build-system)
+ (native-inputs
+ `(("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("pkg-config" ,pkg-config)
+ ("vala" ,vala)))
+ (inputs
+ `(("dbus" ,dbus)
+ ("gsound" ,gsound)
+ ("json-glib" ,json-glib)
+ ("libgudev" ,libgudev)))
+ (propagated-inputs
+ `(("glib" ,glib))) ; in Requires of libfeedback-0.0.pc
+ (synopsis "Haptic/visual/audio feedback via DBus")
+ (description "Feedbackd provides a DBus daemon to act on events to provide
+haptic, visual and audio feedback. It offers the libfeedbackd library and
+GObject introspection bindings.")
+ (home-page "https://source.puri.sm/Librem5/feedbackd")
+ (license (list license:lgpl2.1+ ; libfeedbackd
+ license:lgpl3+)))) ; the rest
+
+(define-public sysprof
+ (package
+ (name "sysprof")
+ (version "3.34.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1l4kr1av7933vb4zql9c5lgzivlw64hyky4nr8xin1v5if6vnjw4"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:configure-flags
+ (list (string-append "-Dsystemdunitdir="
+ %output
+ "/share/systemd"))
+ #:tests? #f ; 3/4 test-model-filter barfs some dbus nonsense
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-install-script
+ (lambda _
+ (substitute* "build-aux/meson/post_install.sh"
+ (("gtk-update-icon-cache") "true")
+ (("update-desktop-database") "true"))
+ #t)))))
+ (inputs
+ `(("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libdazzle" ,libdazzle)
+ ("polkit" ,polkit)))
+ (native-inputs
+ `(("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
+ ("itstool" ,itstool)
+ ("pkg-config" ,pkg-config)
+ ("xmllint" ,libxml2)))
+ (home-page "http://www.sysprof.com/")
+ (synopsis "System-wide performance profiler")
+ (description "Sysprof is a sampling profiler that uses a kernel module
+to generate stacktraces which are then interpreted by the userspace program
+@command{sysprof}.")
+ (license license:gpl3+)))
+
+(define-public gnome-builder
+ (package
+ (name "gnome-builder")
+ (version "3.36.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "17pvmd5jypar8dkr6w56hvf7jnq4l1wih2wwgkrv7sblr7rkkar2"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:configure-flags (list "-Dnetwork_tests=false"
+ ;; TODO: Enable all plugins...
+ "-Dplugin_clang=false"
+ "-Dplugin_flatpak=false"
+ "-Dplugin_glade=false"
+ ;; ... except this one.
+ "-Dplugin_update_manager=false")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-meson
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "build-aux/meson/post_install.py"
+ (("gtk-update-icon-cache") "true")
+ (("update-desktop-database") "true"))
+ (substitute* "src/libide/meson.build"
+ (("/usr/lib")
+ (string-append (assoc-ref inputs "python-pygobject")
+ "/lib")))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (inputs
+ `(("devhelp" ,devhelp)
+ ("gspell" ,gspell)
+ ("gtk+" ,gtk+)
+ ("json-glib" ,json-glib)
+ ("jsonrpc-glib" ,jsonrpc-glib)
+ ("libdazzle" ,libdazzle)
+ ("libgit2-glib" ,libgit2-glib)
+ ("libpeas" ,libpeas)
+ ("python-pygobject" ,python-pygobject)
+ ("sysprof" ,sysprof)
+ ("template-glib" ,template-glib)
+ ("vte" ,vte)
+ ("webkitgtk" ,webkitgtk)))
+ (propagated-inputs
+ `(("gtksourceview" ,gtksourceview))) ;needed for settings
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils) ;for desktop-file-validate
+ ("glib:bin" ,glib "bin")
+ ("gettext" ,gettext-minimal)
+ ("pkg-config" ,pkg-config)
+ ("vala" ,vala)
+ ("xorg-server" ,xorg-server-for-tests)))
+ (home-page "https://wiki.gnome.org/Apps/Builder")
+ (synopsis "Toolsmith for GNOME-based applications")
+ (description "Builder aims to be an integrated development
+environment (IDE) for writing GNOME-based software. It features fuzzy search,
+auto-completion, a mini code map, documentation browsing, Git integration, an
+integrated profiler via Sysprof, debugging support, and more.")
+ (license license:gpl3+)))