From 9aefa3e4a808d0e49040ea16ebd3660e75133121 Mon Sep 17 00:00:00 2001 From: Petr Hodina Date: Wed, 17 Nov 2021 11:14:15 +0100 Subject: [PATCH v3] WIP: gnu: Add phosh. * gnu/packages/gnome.scm (phosh): New variable. diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 9348cf356e..a0d4e90927 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -83,6 +83,7 @@ (define-module (gnu packages gnome) #:use-module (gnu packages admin) #:use-module (gnu packages aidc) #:use-module (gnu packages aspell) + #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) #:use-module (gnu packages backup) @@ -1278,6 +1279,102 @@ (define-public phodav (home-page "https://wiki.gnome.org/phodav") (license license:lgpl2.1+))) +(define-public phosh + (package + (name "phosh") + (version "0.14.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.gnome.org/World/Phosh/phosh") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0fhp2jmwjzzxd66b4figc2wdpzdjycpq3cf4lx3z04dzl9vmw65a")))) + (build-system meson-build-system) + (arguments + `(#:meson ,meson-next + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'get-libgnome-volume-control + (lambda* (#:key inputs #:allow-other-keys) + (copy-recursively (assoc-ref inputs "libgnome-volume-control-source") + "subprojects/gvc"))) + (add-after 'unpack 'get-libcall-ui + (lambda* (#:key inputs #:allow-other-keys) + (copy-recursively (assoc-ref inputs "libcall-ui") + "subprojects/libcall-ui"))) + ;; we use elogind instead of systemd + (add-after 'unpack 'patch-systemd + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "meson.build" + (("libsystemd") "libelogind")) + (substitute* "src/meson.build" + (("libsystemd_dep") "libelogind_dep")) + (substitute* "src/util.c" + (("systemd/sd-login.h") "elogind/sd-login.h")) + (substitute* "src/main.c" + (("systemd/sd-daemon.h") "elogind/sd-daemon.h")))) + (add-before 'configure 'fix-phoc-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "data/phosh.in" + (("@bindir@") (string-append (assoc-ref inputs "phoc") "/bin"))))) + (delete 'check) ; TODO: needs a running wayland compositor + ))) + (native-inputs + `(("elogind" ,elogind) + ("gcr" ,gcr) + ("gettext" ,gettext-minimal) + ("git" ,git) + ("glib:bin" ,glib "bin") + ("gnome-desktop" ,gnome-desktop) + ("gtk+:bin" ,gtk+ "bin") + ("libgnome-volume-control-source" ; needs to be present in subprojects/gvc folder + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.gnome.org/GNOME/libgnome-volume-control.git") + (commit "ae1a34aafce7026b8c0f65a43c9192d756fe1057"))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0a4qh5pgyjki904qf7qmvqz2ksxb0p8xhgl2aixfbhixn0pw6saw")))) + ("libcall-ui" ; needs to be present in subprojects/libcall-ui folder + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.gnome.org/World/Phosh/libcall-ui") + (commit "465f6add090b623fb80c6c5cbb9ab2880ff531a4"))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1as857npl2yra4zh4bfph9wvhvjck53i2qp3zzbv3mbpi36nscfr")))) + ("callaudiod" ,callaudiod) + ("libsecret" ,libsecret) + ("linux-pam" ,linux-pam) + ("network-manager" ,network-manager) + ("pkg-config" ,pkg-config) + ("polkit" ,polkit) + ("upower" ,upower))) + (inputs + `(("feedbackd" ,feedbackd) + ("libhandy" ,libhandy) + ("libgudev" ,libgudev) + ("pulseaudio" ,pulseaudio))) + (propagated-inputs + ;; "missing" schema files + ;; org.gnome.DejaDup.File org.guido-berhoerster.code.package-update-indicator org.blueberry + `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ;org.gnome.desktop.wm.keybindings + ("gnome-session" ,gnome-session) + ("mutter" ,mutter) ;org.gnome.mutter.keybindings + ("network-manager-applet" ,network-manager-applet) ;org.gnome.nm-applet + ("phoc" ,phoc))) ;sm.puri.phoc + (synopsis "Wayland shell for GNOME on mobile devices") + (description "Phosh is a pure Wayland prototype intended for mobile devices.") + (home-page "https://gitlab.gnome.org/World/Phosh/phosh") + (license license:gpl3+))) + (define-public gnome-color-manager (package (name "gnome-color-manager") -- 2.33.0