Bump to 0.27 accepted/tizen_unified accepted/tizen_unified_riscv sandbox/desktop-file-utils_0.27 tizen accepted/tizen/unified/20231220.165053 accepted/tizen/unified/riscv/20231226.210938
authorTizenOpenSource <tizenopensrc@samsung.com>
Thu, 7 Dec 2023 07:18:51 +0000 (16:18 +0900)
committerTizenOpenSource <tizenopensrc@samsung.com>
Thu, 7 Dec 2023 07:18:51 +0000 (16:18 +0900)
Signed-off-by: TizenOpenSource <tizenopensrc@samsung.com>
packaging/desktop-file-utils.manifest [new file with mode: 0644]
packaging/desktop-file-utils.spec [new file with mode: 0644]
packaging/macros.desktop-file-utils [new file with mode: 0644]

diff --git a/packaging/desktop-file-utils.manifest b/packaging/desktop-file-utils.manifest
new file mode 100644 (file)
index 0000000..017d22d
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+    <domain name="_"/>
+ </request>
+</manifest>
diff --git a/packaging/desktop-file-utils.spec b/packaging/desktop-file-utils.spec
new file mode 100644 (file)
index 0000000..1b295f8
--- /dev/null
@@ -0,0 +1,65 @@
+Name:           desktop-file-utils
+Version:        0.27
+Release:        0
+Summary:        Utilities for Manipulating Desktop Files
+License:        GPL-2.0+
+Group:          Development/Tools/Other
+Url:            http://www.freedesktop.org/wiki/Software/desktop-file-utils
+Source0:        http://www.freedesktop.org/software/desktop-file-utils/releases/%{name}-%{version}.tar.xz
+Source2:        macros.desktop-file-utils
+Source1001:     desktop-file-utils.manifest
+BuildRequires:  glib2-devel
+BuildRequires:  pkg-config
+BuildRequires:  meson
+BuildRequires:  ninja
+# Only needed because we don't (and won't) support building xz tarballs by default... See bnc#697467
+BuildRequires:  xz
+
+%description
+This packages contains a couple of command line utilities for
+working with desktop files.
+
+More information about desktop files can be found at:
+http://freedesktop.org/wiki/Specifications/desktop-entry-spec
+
+%prep
+%setup -q
+cp %{SOURCE1001} .
+
+%build
+export CFLAGS+=" -fPIC"
+
+mkdir -p builddir
+meson --prefix /usr --libdir %{_libdir} builddir
+
+%install
+DESTDIR=%{buildroot} ninja -C builddir install
+# Install rpm macros
+install -D -m644 %{S:2} %{buildroot}%{_sysconfdir}/rpm/macros.desktop-file-utils
+# Create ghosts based on default $XDG_DATA_DIRS:
+mkdir -p %{buildroot}%{_datadir}/applications
+touch %{buildroot}%{_datadir}/applications/mimeinfo.cache
+
+%post
+%{_bindir}/update-desktop-database --quiet %{_datadir}/applications || true
+
+%files
+%manifest %{name}.manifest
+%defattr(-, root, root)
+%license COPYING
+%doc AUTHORS ChangeLog NEWS README
+%{_bindir}/desktop-file-edit
+%{_bindir}/desktop-file-install
+%{_bindir}/desktop-file-validate
+%{_bindir}/update-desktop-database
+%ghost %{_datadir}/applications/mimeinfo.cache
+%{_mandir}/man1/desktop-file-edit.1*
+%{_mandir}/man1/desktop-file-install.1*
+%{_mandir}/man1/desktop-file-validate.1*
+%{_mandir}/man1/update-desktop-database.1*
+# Own directories to not require emacs installed.
+%dir %{_datadir}/emacs
+%dir %{_datadir}/emacs/site-lisp
+%{_datadir}/emacs/site-lisp/*.el*
+%{_sysconfdir}/rpm/macros.desktop-file-utils
+
diff --git a/packaging/macros.desktop-file-utils b/packaging/macros.desktop-file-utils
new file mode 100644 (file)
index 0000000..19266d4
--- /dev/null
@@ -0,0 +1,38 @@
+# RPM macros for packages installing desktop files
+#
+###
+#
+# When a package installs a desktop file, it should use both macros:
+#
+#  - %desktop_database_post in %post
+#  - %desktop_database_postun in %postun
+#
+# Note that these macros can optionally take as argument the directory
+# where the desktop file is installed. If no argument is passed, then
+# %{_datadir}/applications will be used (which is where applications
+# usually install their desktop file).
+#
+###
+
+# On install, update the desktop database
+%desktop_database_post()                                                          \
+if test -x %{_bindir}/update-desktop-database; then                               \
+%if "x%1" != "x%%1"                                                               \
+  %{_bindir}/update-desktop-database --quiet "%1" || true                         \
+%else                                                                             \
+  %{_bindir}/update-desktop-database --quiet "%{_datadir}/applications" || true   \
+%endif                                                                            \
+fi
+
+# On uninstall, update the desktop database. Note: we ignore upgrades (already
+# handled in %post of the new package).
+%desktop_database_postun()                                                        \
+if [ $1 -eq 0 ]; then                                                             \
+  if test -x %{_bindir}/update-desktop-database; then                             \
+%if "x%1" != "x%%1"                                                               \
+    %{_bindir}/update-desktop-database --quiet "%1" || true                       \
+%else                                                                             \
+    %{_bindir}/update-desktop-database --quiet "%{_datadir}/applications" || true \
+%endif                                                                            \
+  fi                                                                              \
+fi