blob: 93f7f5761749b3bb96b8c9fb559d04fcbdf928c0 [file] [log] [blame]
Andrew Geissler9aee5002022-03-30 16:27:02 +00001DESCRIPTION = "gvfs is a userspace virtual filesystem"
2LICENSE = "LGPL-2.0-only"
3LIC_FILES_CHKSUM = "file://COPYING;md5=05df38dd77c35ec8431f212410a3329e"
4
5GNOMEBASEBUILDCLASS = "meson"
6inherit gnomebase gsettings bash-completion gettext upstream-version-is-even features_check useradd
7
8DEPENDS += "libsecret glib-2.0 glib-2.0-native libgudev shadow-native \
9 gsettings-desktop-schemas dbus"
10
11RDEPENDS:${PN} += "gsettings-desktop-schemas"
12
13SRC_URI = "https://download.gnome.org/sources/${BPN}/${@gnome_verdir("${PV}")}/${BPN}-${PV}.tar.xz;name=archive"
14
15SRC_URI[archive.sha256sum] = "cbc2f564d2e9f00c760673f42d6803bce3e081ab7ffb4456deffffba9339b4dd"
16
17# depends on gsettings-desktop-schemas->gcr->gtk+3-> x11
18REQUIRED_DISTRO_FEATURES = "x11"
19
20EXTRA_OEMESON = " \
21 -Dbluray=false \
22 -Dgoa=false \
23 -Dgoogle=false \
24 -Dnfs=false \
25"
26
27PACKAGES =+ "gvfsd-ftp gvfsd-sftp gvfsd-trash"
28
29FILES:${PN} += " \
30 ${datadir}/glib-2.0 \
31 ${datadir}/GConf \
32 ${datadir}/dbus-1/services \
33 ${libdir}/gio/modules/*.so \
34 ${libdir}/tmpfiles.d \
35 ${systemd_user_unitdir} \
36"
37
38FILES:${PN}-dbg += "${libdir}/gio/modules/.debug/*"
39FILES:${PN}-dev += "${libdir}/gio/modules/*.la"
40
41FILES:gvfsd-ftp = "${libexecdir}/gvfsd-ftp ${datadir}/gvfs/mounts/ftp.mount"
42FILES:gvfsd-sftp = "${libexecdir}/gvfsd-sftp ${datadir}/gvfs/mounts/sftp.mount"
43FILES:gvfsd-trash = "${libexecdir}/gvfsd-trash ${datadir}/gvfs/mounts/trash.mount"
44
45RRECOMMENDS:gvfsd-ftp += "openssh-sftp openssh-ssh"
46
47PACKAGECONFIG ?= "libgphoto2 \
48 ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
49 ${@bb.utils.contains('DISTRO_FEATURES','polkit','udisks2','',d)} \
50 ${@bb.utils.contains('DISTRO_FEATURES','polkit','admin','',d)} \
51 "
52
53PACKAGECONFIG[udisks2] = "-Dudisks2=true, -Dudisks2=false, udisks2, udisks2"
54PACKAGECONFIG[admin] = "-Dadmin=true, -Dadmin=false, libcap polkit"
55PACKAGECONFIG[afc] = "-Dafc=true, -Dafc=false, libimobiledevice libplist"
56PACKAGECONFIG[archive] = "-Darchive=true, -Darchive=false, libarchive"
57PACKAGECONFIG[dnssd] = "-Ddnssd=true, -Ddnssd=false, avahi"
58PACKAGECONFIG[gcr] = "-Dgcr=true, -Dgcr=false, gcr"
59PACKAGECONFIG[http] = "-Dhttp=true, -Dhttp=false, libsoup-2.4"
60PACKAGECONFIG[libmtp] = "-Dmtp=true, -Dmtp=false, libmtp"
61PACKAGECONFIG[logind] = "-Dlogind=true, -Dlogind=false, systemd"
62PACKAGECONFIG[libgphoto2] = "-Dgphoto2=true, -Dgphoto2=false, libgphoto2"
63PACKAGECONFIG[samba] = "-Dsmb=true, -Dsmb=false, samba"
64PACKAGECONFIG[systemd] = "-Dsystemduserunitdir=${systemd_user_unitdir} -Dtmpfilesdir=${libdir}/tmpfiles.d, -Dsystemduserunitdir=no -Dtmpfilesdir=no, systemd"
65
66# needs meta-filesystems
67PACKAGECONFIG[fuse] = "-Dfuse=true, -Dfuse=false, fuse3"
68
69# libcdio-paranoia recipe doesn't exist yet
70PACKAGECONFIG[cdda] = "-Dcdda=true, -Dcdda=false, libcdio-paranoia"
71
72USERADD_PACKAGES = "${PN}"
73USERADD_PARAM:${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/${BPN}-1 polkitd"
74
75do_install:append() {
76 if ${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'true', 'false', d)}; then
77 # Fix up permissions on polkit rules.d to work with rpm4 constraints
78 chmod 700 ${D}/${datadir}/polkit-1/rules.d
79 chown polkitd:root ${D}/${datadir}/polkit-1/rules.d
80 fi
81
82 # After rebuilds (not from scracth) it can happen that the executables in
83 # libexec ar missing executable permission flag. Not sure but it came up
84 # during transition to meson. Looked into build files and logs but could
85 # not find suspicious
86 for exe in `find ${D}/${libexecdir}`; do
87 chmod +x $exe
88 done
89}