Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package xdg-desktop-portal for 
openSUSE:Factory checked in at 2022-03-23 20:16:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xdg-desktop-portal (Old)
 and      /work/SRC/openSUSE:Factory/.xdg-desktop-portal.new.25692 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xdg-desktop-portal"

Wed Mar 23 20:16:59 2022 rev:25 rq:963643 version:1.14.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/xdg-desktop-portal/xdg-desktop-portal.changes    
2022-03-20 20:54:51.130466339 +0100
+++ 
/work/SRC/openSUSE:Factory/.xdg-desktop-portal.new.25692/xdg-desktop-portal.changes
 2022-03-23 20:18:14.882458336 +0100
@@ -1,0 +2,14 @@
+Sat Mar 19 09:41:29 UTC 2022 - Bj??rn Lie <bjorn....@gmail.com>
+
+- Update to version 1.14.1:
+  + Fix an issue in 1.14.0 where xdg-desktop-portal.service
+    starting before graphical-session-pre.target would cause the
+    GNOME session to deadlock by moving code to a new libexec
+    binary which handles deleting or migrating .desktop files (and
+    icons) from the dynamic launcher portal for apps which have
+    been uninstalled or renamed.
+  + Fix some bugs in the aforementioned launcher migration
+    implementation, "xdg-desktop-portal-rewrite-launchers".
+  + Fix build without libsystemd.
+
+-------------------------------------------------------------------

Old:
----
  xdg-desktop-portal-1.14.0.tar.xz

New:
----
  xdg-desktop-portal-1.14.1.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xdg-desktop-portal.spec ++++++
--- /var/tmp/diff_new_pack.tWFggk/_old  2022-03-23 20:18:15.430458646 +0100
+++ /var/tmp/diff_new_pack.tWFggk/_new  2022-03-23 20:18:15.438458650 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           xdg-desktop-portal
-Version:        1.14.0
+Version:        1.14.1
 Release:        0
 Summary:        A portal frontend service for Flatpak
 License:        LGPL-2.1-or-later
@@ -106,9 +106,11 @@
 %{_libexecdir}/xdg-desktop-portal-validate-icon
 %{_libexecdir}/xdg-document-portal
 %{_libexecdir}/xdg-permission-store
+%{_libexecdir}/xdg-desktop-portal-rewrite-launchers
 %{_userunitdir}/%{name}.service
 %{_userunitdir}/xdg-document-portal.service
 %{_userunitdir}/xdg-permission-store.service
+%{_userunitdir}/xdg-desktop-portal-rewrite-launchers.service
 
 %files devel
 %doc %{_defaultdocdir}/%{name}/

++++++ xdg-desktop-portal-1.14.0.tar.xz -> xdg-desktop-portal-1.14.1.tar.xz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/Makefile.in 
new/xdg-desktop-portal-1.14.1/Makefile.in
--- old/xdg-desktop-portal-1.14.0/Makefile.in   2022-03-17 18:58:30.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/Makefile.in   2022-03-18 21:30:37.000000000 
+0100
@@ -98,7 +98,8 @@
 libexec_PROGRAMS = $(am__EXEEXT_1) xdg-permission-store$(EXEEXT) \
        xdg-document-portal$(EXEEXT) $(am__EXEEXT_1) \
        xdg-desktop-portal$(EXEEXT) \
-       xdg-desktop-portal-validate-icon$(EXEEXT) $(am__EXEEXT_1)
+       xdg-desktop-portal-validate-icon$(EXEEXT) \
+       xdg-desktop-portal-rewrite-launchers$(EXEEXT) $(am__EXEEXT_1)
 TESTS = $(am__EXEEXT_2) $(am__EXEEXT_8)
 installed_test_PROGRAMS = $(am__EXEEXT_6)
 check_PROGRAMS = $(am__EXEEXT_5)
@@ -466,6 +467,17 @@
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
        $(xdg_desktop_portal_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
        $(LDFLAGS) -o $@
+am_xdg_desktop_portal_rewrite_launchers_OBJECTS = 
src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.$(OBJEXT)
+nodist_xdg_desktop_portal_rewrite_launchers_OBJECTS =
+xdg_desktop_portal_rewrite_launchers_OBJECTS =  \
+       $(am_xdg_desktop_portal_rewrite_launchers_OBJECTS) \
+       $(nodist_xdg_desktop_portal_rewrite_launchers_OBJECTS)
+xdg_desktop_portal_rewrite_launchers_DEPENDENCIES =  \
+       $(am__DEPENDENCIES_1)
+xdg_desktop_portal_rewrite_launchers_LINK = $(LIBTOOL) $(AM_V_lt) \
+       --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \
+       $(CCLD) $(xdg_desktop_portal_rewrite_launchers_CFLAGS) \
+       $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
 am_xdg_desktop_portal_validate_icon_OBJECTS =  \
        src/xdg_desktop_portal_validate_icon-validate-icon.$(OBJEXT)
 xdg_desktop_portal_validate_icon_OBJECTS =  \
@@ -608,6 +620,7 @@
        src/$(DEPDIR)/xdg_desktop_portal-xdp-dbus.Po \
        src/$(DEPDIR)/xdg_desktop_portal-xdp-impl-dbus.Po \
        src/$(DEPDIR)/xdg_desktop_portal-xdp-utils.Po \
+       src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Po 
\
        src/$(DEPDIR)/xdg_desktop_portal_validate_icon-validate-icon.Po \
        src/$(DEPDIR)/xdg_document_portal-sd-escape.Po \
        src/$(DEPDIR)/xdg_document_portal-xdp-utils.Po \
@@ -681,6 +694,8 @@
        $(nodist_tests_test_backends_SOURCES) \
        $(xdg_desktop_portal_SOURCES) \
        $(nodist_xdg_desktop_portal_SOURCES) \
+       $(xdg_desktop_portal_rewrite_launchers_SOURCES) \
+       $(nodist_xdg_desktop_portal_rewrite_launchers_SOURCES) \
        $(xdg_desktop_portal_validate_icon_SOURCES) \
        $(xdg_document_portal_SOURCES) \
        $(nodist_xdg_document_portal_SOURCES) \
@@ -691,6 +706,7 @@
        $(am__test_portals_SOURCES_DIST) $(test_xdp_utils_SOURCES) \
        $(testdb_SOURCES) $(tests_test_backends_SOURCES) \
        $(am__xdg_desktop_portal_SOURCES_DIST) \
+       $(xdg_desktop_portal_rewrite_launchers_SOURCES) \
        $(xdg_desktop_portal_validate_icon_SOURCES) \
        $(xdg_document_portal_SOURCES) $(xdg_permission_store_SOURCES)
 RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
@@ -1270,7 +1286,8 @@
        document-portal/org.freedesktop.impl.portal.PermissionStore.service.in \
        document-portal/org.freedesktop.portal.Documents.service.in \
        $(NULL) src/org.freedesktop.portal.Desktop.service.in \
-       src/xdg-desktop-portal.service.in ${NULL}
+       src/xdg-desktop-portal.service.in \
+       src/xdg-desktop-portal-rewrite-launchers.service.in ${NULL}
 dbus_service_DATA = $(NULL) \
        document-portal/org.freedesktop.impl.portal.PermissionStore.service \
        document-portal/org.freedesktop.portal.Documents.service \
@@ -1278,7 +1295,8 @@
 systemduserunit_DATA = $(NULL) \
        document-portal/xdg-permission-store.service \
        document-portal/xdg-document-portal.service $(NULL) \
-       src/xdg-desktop-portal.service
+       src/xdg-desktop-portal.service \
+       src/xdg-desktop-portal-rewrite-launchers.service
 ACLOCAL_AMFLAGS = --install -I m4 ${ACLOCAL_FLAGS}
 AM_CPPFLAGS = \
        -DG_LOG_DOMAIN=\"xdg-desktop-portal\"                   \
@@ -1401,6 +1419,10 @@
 xdg_desktop_portal_validate_icon_SOURCES = src/validate-icon.c
 xdg_desktop_portal_validate_icon_LDADD = $(GDK_PIXBUF_LIBS)
 xdg_desktop_portal_validate_icon_CFLAGS = $(GDK_PIXBUF_CFLAGS) 
-DHELPER=\"$(BWRAP)\" -D_GNU_SOURCE=1
+xdg_desktop_portal_rewrite_launchers_SOURCES = src/rewrite-launchers.c
+nodist_xdg_desktop_portal_rewrite_launchers_SOURCES = src/dynamic-launcher.h
+xdg_desktop_portal_rewrite_launchers_LDADD = $(BASE_LIBS)
+xdg_desktop_portal_rewrite_launchers_CFLAGS = $(BASE_CFLAGS)
 tests_test_backends_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS)
 tests_test_backends_LDADD = \
        $(AM_LDADD) \
@@ -2127,6 +2149,12 @@
 xdg-desktop-portal$(EXEEXT): $(xdg_desktop_portal_OBJECTS) 
$(xdg_desktop_portal_DEPENDENCIES) $(EXTRA_xdg_desktop_portal_DEPENDENCIES) 
        @rm -f xdg-desktop-portal$(EXEEXT)
        $(AM_V_CCLD)$(xdg_desktop_portal_LINK) $(xdg_desktop_portal_OBJECTS) 
$(xdg_desktop_portal_LDADD) $(LIBS)
+src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.$(OBJEXT):  \
+       src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
+
+xdg-desktop-portal-rewrite-launchers$(EXEEXT): 
$(xdg_desktop_portal_rewrite_launchers_OBJECTS) 
$(xdg_desktop_portal_rewrite_launchers_DEPENDENCIES) 
$(EXTRA_xdg_desktop_portal_rewrite_launchers_DEPENDENCIES) 
+       @rm -f xdg-desktop-portal-rewrite-launchers$(EXEEXT)
+       $(AM_V_CCLD)$(xdg_desktop_portal_rewrite_launchers_LINK) 
$(xdg_desktop_portal_rewrite_launchers_OBJECTS) 
$(xdg_desktop_portal_rewrite_launchers_LDADD) $(LIBS)
 src/xdg_desktop_portal_validate_icon-validate-icon.$(OBJEXT):  \
        src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 
@@ -2311,6 +2339,7 @@
 @AMDEP_TRUE@@am__include@ 
@am__quote@src/$(DEPDIR)/xdg_desktop_portal-xdp-dbus.Po@am__quote@ # 
am--include-marker
 @AMDEP_TRUE@@am__include@ 
@am__quote@src/$(DEPDIR)/xdg_desktop_portal-xdp-impl-dbus.Po@am__quote@ # 
am--include-marker
 @AMDEP_TRUE@@am__include@ 
@am__quote@src/$(DEPDIR)/xdg_desktop_portal-xdp-utils.Po@am__quote@ # 
am--include-marker
+@AMDEP_TRUE@@am__include@ 
@am__quote@src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Po@am__quote@
 # am--include-marker
 @AMDEP_TRUE@@am__include@ 
@am__quote@src/$(DEPDIR)/xdg_desktop_portal_validate_icon-validate-icon.Po@am__quote@
 # am--include-marker
 @AMDEP_TRUE@@am__include@ 
@am__quote@src/$(DEPDIR)/xdg_document_portal-sd-escape.Po@am__quote@ # 
am--include-marker
 @AMDEP_TRUE@@am__include@ 
@am__quote@src/$(DEPDIR)/xdg_document_portal-xdp-utils.Po@am__quote@ # 
am--include-marker
@@ -3717,6 +3746,20 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) 
$(INCLUDES) $(xdg_desktop_portal_CPPFLAGS) $(CPPFLAGS) 
$(xdg_desktop_portal_CFLAGS) $(CFLAGS) -c -o 
src/xdg_desktop_portal-xdg-desktop-resources.obj `if test -f 
'src/xdg-desktop-resources.c'; then $(CYGPATH_W) 'src/xdg-desktop-resources.c'; 
else $(CYGPATH_W) '$(srcdir)/src/xdg-desktop-resources.c'; fi`
 
+src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.o: 
src/rewrite-launchers.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(xdg_desktop_portal_rewrite_launchers_CFLAGS) 
$(CFLAGS) -MT src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.o -MD 
-MP -MF 
src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Tpo -c -o 
src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.o `test -f 
'src/rewrite-launchers.c' || echo '$(srcdir)/'`src/rewrite-launchers.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) 
src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Tpo 
src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      
$(AM_V_CC)source='src/rewrite-launchers.c' 
object='src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.o' 
libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) 
$(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) 
$(xdg_desktop_portal_rewrite_launchers_CFLAGS) $(CFLAGS) -c -o 
src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.o `test -f 
'src/rewrite-launchers.c' || echo '$(srcdir)/'`src/rewrite-launchers.c
+
+src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.obj: 
src/rewrite-launchers.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(xdg_desktop_portal_rewrite_launchers_CFLAGS) 
$(CFLAGS) -MT src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.obj 
-MD -MP -MF 
src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Tpo -c -o 
src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.obj `if test -f 
'src/rewrite-launchers.c'; then $(CYGPATH_W) 'src/rewrite-launchers.c'; else 
$(CYGPATH_W) '$(srcdir)/src/rewrite-launchers.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) 
src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Tpo 
src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      
$(AM_V_CC)source='src/rewrite-launchers.c' 
object='src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.obj' 
libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) 
$(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) 
$(xdg_desktop_portal_rewrite_launchers_CFLAGS) $(CFLAGS) -c -o 
src/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.obj `if test -f 
'src/rewrite-launchers.c'; then $(CYGPATH_W) 'src/rewrite-launchers.c'; else 
$(CYGPATH_W) '$(srcdir)/src/rewrite-launchers.c'; fi`
+
 src/xdg_desktop_portal_validate_icon-validate-icon.o: src/validate-icon.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) 
$(AM_CPPFLAGS) $(CPPFLAGS) $(xdg_desktop_portal_validate_icon_CFLAGS) $(CFLAGS) 
-MT src/xdg_desktop_portal_validate_icon-validate-icon.o -MD -MP -MF 
src/$(DEPDIR)/xdg_desktop_portal_validate_icon-validate-icon.Tpo -c -o 
src/xdg_desktop_portal_validate_icon-validate-icon.o `test -f 
'src/validate-icon.c' || echo '$(srcdir)/'`src/validate-icon.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) 
src/$(DEPDIR)/xdg_desktop_portal_validate_icon-validate-icon.Tpo 
src/$(DEPDIR)/xdg_desktop_portal_validate_icon-validate-icon.Po
@@ -4841,6 +4884,7 @@
        -rm -f src/$(DEPDIR)/xdg_desktop_portal-xdp-dbus.Po
        -rm -f src/$(DEPDIR)/xdg_desktop_portal-xdp-impl-dbus.Po
        -rm -f src/$(DEPDIR)/xdg_desktop_portal-xdp-utils.Po
+       -rm -f 
src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Po
        -rm -f src/$(DEPDIR)/xdg_desktop_portal_validate_icon-validate-icon.Po
        -rm -f src/$(DEPDIR)/xdg_document_portal-sd-escape.Po
        -rm -f src/$(DEPDIR)/xdg_document_portal-xdp-utils.Po
@@ -5014,6 +5058,7 @@
        -rm -f src/$(DEPDIR)/xdg_desktop_portal-xdp-dbus.Po
        -rm -f src/$(DEPDIR)/xdg_desktop_portal-xdp-impl-dbus.Po
        -rm -f src/$(DEPDIR)/xdg_desktop_portal-xdp-utils.Po
+       -rm -f 
src/$(DEPDIR)/xdg_desktop_portal_rewrite_launchers-rewrite-launchers.Po
        -rm -f src/$(DEPDIR)/xdg_desktop_portal_validate_icon-validate-icon.Po
        -rm -f src/$(DEPDIR)/xdg_document_portal-sd-escape.Po
        -rm -f src/$(DEPDIR)/xdg_document_portal-xdp-utils.Po
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/NEWS 
new/xdg-desktop-portal-1.14.1/NEWS
--- old/xdg-desktop-portal-1.14.0/NEWS  2022-03-17 18:58:12.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/NEWS  2022-03-18 21:30:17.000000000 +0100
@@ -1,3 +1,16 @@
+Changes in 1.14.1
+=================
+Released: 2022-03-18
+
+- Fix an issue in 1.14.0 where xdg-desktop-portal.service starting before
+  graphical-session-pre.target would cause the GNOME session to deadlock by
+  moving code to a new libexec binary which handles deleting or migrating
+  .desktop files (and icons) from the dynamic launcher portal for apps which
+  have been uninstalled or renamed.
+- Fix some bugs in the aforementioned launcher migration implementation,
+  "xdg-desktop-portal-rewrite-launchers".
+- Fix build without libsystemd
+
 Changes in 1.14.0
 =================
 Released: 2022-03-17
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/configure 
new/xdg-desktop-portal-1.14.1/configure
--- old/xdg-desktop-portal-1.14.0/configure     2022-03-17 18:58:29.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/configure     2022-03-18 21:30:36.000000000 
+0100
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for xdg-desktop-portal 1.14.0.
+# Generated by GNU Autoconf 2.69 for xdg-desktop-portal 1.14.1.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -587,8 +587,8 @@
 # Identity of this package.
 PACKAGE_NAME='xdg-desktop-portal'
 PACKAGE_TARNAME='xdg-desktop-portal'
-PACKAGE_VERSION='1.14.0'
-PACKAGE_STRING='xdg-desktop-portal 1.14.0'
+PACKAGE_VERSION='1.14.1'
+PACKAGE_STRING='xdg-desktop-portal 1.14.1'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1431,7 +1431,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures xdg-desktop-portal 1.14.0 to adapt to many kinds of 
systems.
+\`configure' configures xdg-desktop-portal 1.14.1 to adapt to many kinds of 
systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1503,7 +1503,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of xdg-desktop-portal 1.14.0:";;
+     short | recursive ) echo "Configuration of xdg-desktop-portal 1.14.1:";;
    esac
   cat <<\_ACEOF
 
@@ -1687,7 +1687,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-xdg-desktop-portal configure 1.14.0
+xdg-desktop-portal configure 1.14.1
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2052,7 +2052,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by xdg-desktop-portal $as_me 1.14.0, which was
+It was created by xdg-desktop-portal $as_me 1.14.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -12795,7 +12795,7 @@
 
 # Define the identity of the package.
  PACKAGE='xdg-desktop-portal'
- VERSION='1.14.0'
+ VERSION='1.14.1'
 
 
 # Some tools Automake needs.
@@ -17253,7 +17253,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by xdg-desktop-portal $as_me 1.14.0, which was
+This file was extended by xdg-desktop-portal $as_me 1.14.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -17319,7 +17319,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-xdg-desktop-portal config.status 1.14.0
+xdg-desktop-portal config.status 1.14.1
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/configure.ac 
new/xdg-desktop-portal-1.14.1/configure.ac
--- old/xdg-desktop-portal-1.14.0/configure.ac  2022-03-17 18:23:37.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/configure.ac  2022-03-18 21:30:17.000000000 
+0100
@@ -1,6 +1,6 @@
 AC_PREREQ([2.63])
 
-AC_INIT([xdg-desktop-portal],[1.14.0])
+AC_INIT([xdg-desktop-portal],[1.14.1])
 
 AC_USE_SYSTEM_EXTENSIONS
 AC_SYS_LARGEFILE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/cs.po 
new/xdg-desktop-portal-1.14.1/po/cs.po
--- old/xdg-desktop-portal-1.14.0/po/cs.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/cs.po      2022-03-18 21:31:02.000000000 
+0100
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2019-10-24 16:06+0200\n"
 "Last-Translator: Daniel Rusek <m...@asciiwolf.com>\n"
 "Language-Team: Czech <gnome-cs-l...@gnome.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/da.po 
new/xdg-desktop-portal-1.14.1/po/da.po
--- old/xdg-desktop-portal-1.14.0/po/da.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/da.po      2022-03-18 21:31:02.000000000 
+0100
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-10-12 01:25+0200\n"
 "Last-Translator: scootergrisen\n"
 "Language-Team: Danish\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/de.po 
new/xdg-desktop-portal-1.14.1/po/de.po
--- old/xdg-desktop-portal-1.14.0/po/de.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/de.po      2022-03-18 21:31:02.000000000 
+0100
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2016-09-23 19:17+0200\n"
 "Last-Translator: Mario Bl??ttermann <mario.blaetterm...@gmail.com>\n"
 "Language-Team: German <gnome...@gnome.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/en_GB.po 
new/xdg-desktop-portal-1.14.1/po/en_GB.po
--- old/xdg-desktop-portal-1.14.0/po/en_GB.po   2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/en_GB.po   2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2019-08-24 23:48+0100\n"
 "Last-Translator: Zander Brown <zbr...@gnome.org>\n"
 "Language-Team: English - United Kingdom <en...@li.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/es.po 
new/xdg-desktop-portal-1.14.1/po/es.po
--- old/xdg-desktop-portal-1.14.0/po/es.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/es.po      2022-03-18 21:31:02.000000000 
+0100
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2021-12-04 14:52+0100\n"
 "Last-Translator: Adolfo Jayme Barrientos <fit...@ubuntu.com>\n"
 "Language-Team: Spanish\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/fr.po 
new/xdg-desktop-portal-1.14.1/po/fr.po
--- old/xdg-desktop-portal-1.14.0/po/fr.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/fr.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2017-03-02 11:34+0100\n"
 "Last-Translator: Nicolas Cuffia <cuffia.cuceg...@vivaldi.net>\n"
 "Language-Team: French <gnom...@traduc.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/gl.po 
new/xdg-desktop-portal-1.14.1/po/gl.po
--- old/xdg-desktop-portal-1.14.0/po/gl.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/gl.po      2022-03-18 21:31:02.000000000 
+0100
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-01-06 00:03+0100\n"
 "Last-Translator: Fran Di??guez <frandieg...@gnome.org>\n"
 "Language-Team: Galician\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/hi.po 
new/xdg-desktop-portal-1.14.1/po/hi.po
--- old/xdg-desktop-portal-1.14.0/po/hi.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/hi.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal 1.8.1\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2021-09-09 00:42+0700\n"
 "Last-Translator: Dmitry <dmitrydmitry...@gmail.com>\n"
 "Language-Team: Hindi <kde-i18n-...@kde.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/hr.po 
new/xdg-desktop-portal-1.14.1/po/hr.po
--- old/xdg-desktop-portal-1.14.0/po/hr.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/hr.po      2022-03-18 21:31:02.000000000 
+0100
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-01-25 16:44+0100\n"
 "Last-Translator: Milo Ivir <m...@milotype.de>\n"
 "Language-Team: \n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/hu.po 
new/xdg-desktop-portal-1.14.1/po/hu.po
--- old/xdg-desktop-portal-1.14.0/po/hu.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/hu.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2019-02-12 21:18+0100\n"
 "Last-Translator: Bal??zs ??r <ur.balazs at fsf dot hu>\n"
 "Language-Team: Hungarian <gnome-hu-list at gnome dot org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/id.po 
new/xdg-desktop-portal-1.14.1/po/id.po
--- old/xdg-desktop-portal-1.14.0/po/id.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/id.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-01-26 17:23+0700\n"
 "Last-Translator: Kukuh Syafaat <kukuhsyaf...@gnome.org>\n"
 "Language-Team: Indonesian <gnome-l10n...@googlegroups.com>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/it.po 
new/xdg-desktop-portal-1.14.1/po/it.po
--- old/xdg-desktop-portal-1.14.0/po/it.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/it.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-02-10 16:11+0100\n"
 "Last-Translator: Milo Casagrande <m...@milo.name>\n"
 "Language-Team: Italian <gnome-it-l...@gnome.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/lt.po 
new/xdg-desktop-portal-1.14.1/po/lt.po
--- old/xdg-desktop-portal-1.14.0/po/lt.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/lt.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-03-07 20:26+0200\n"
 "Last-Translator: Moo\n"
 "Language-Team: Lithuanian <gnome...@lists.akl.lt>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/nl.po 
new/xdg-desktop-portal-1.14.1/po/nl.po
--- old/xdg-desktop-portal-1.14.0/po/nl.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/nl.po      2022-03-18 21:31:02.000000000 
+0100
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2021-07-18 14:05+0200\n"
 "Last-Translator: Heimen Stoffels <vistau...@fastmail.com>\n"
 "Language-Team: Dutch\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/pl.po 
new/xdg-desktop-portal-1.14.1/po/pl.po
--- old/xdg-desktop-portal-1.14.0/po/pl.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/pl.po      2022-03-18 21:31:02.000000000 
+0100
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2019-10-24 16:30+0200\n"
 "Last-Translator: Piotr Dr??g <piotrd...@gmail.com>\n"
 "Language-Team: Polish <community-pol...@mozilla.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/pt.po 
new/xdg-desktop-portal-1.14.1/po/pt.po
--- old/xdg-desktop-portal-1.14.0/po/pt.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/pt.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2022-01-20 10:40-0300\n"
 "Last-Translator: Juliano de Souza Camargo <julian...@protonmail.com>\n"
 "Language-Team: Portuguese < https://l10n.gnome.org/teams/pt/>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/pt_BR.po 
new/xdg-desktop-portal-1.14.1/po/pt_BR.po
--- old/xdg-desktop-portal-1.14.0/po/pt_BR.po   2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/pt_BR.po   2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2019-11-24 22:29-0300\n"
 "Last-Translator: Rafael Fontenelle <rafae...@gnome.org>\n"
 "Language-Team: Brazilian Portuguese <gnome-pt_br-l...@gnome.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/ro.po 
new/xdg-desktop-portal-1.14.1/po/ro.po
--- old/xdg-desktop-portal-1.14.0/po/ro.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/ro.po      2022-03-18 21:31:02.000000000 
+0100
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2022-02-18 10:51+0000\n"
 "Last-Translator: Sergiu Bivol <ser...@cip.md>\n"
 "Language-Team: Romanian\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/ru.po 
new/xdg-desktop-portal-1.14.1/po/ru.po
--- old/xdg-desktop-portal-1.14.0/po/ru.po      2022-03-17 18:59:06.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/ru.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-04-04 06:13+0300\n"
 "Last-Translator: ?????????????? ?????????????? <finz...@yandex.ru>\n"
 "Language-Team: Russian <gnome-...@gnome.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/sk.po 
new/xdg-desktop-portal-1.14.1/po/sk.po
--- old/xdg-desktop-portal-1.14.0/po/sk.po      2022-03-17 18:59:07.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/sk.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-09-22 14:32+0200\n"
 "Last-Translator: Du??an Kazik <prescot...@gmail.com>\n"
 "Language-Team: Slovak <gnome-sk-l...@gnome.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/sr.po 
new/xdg-desktop-portal-1.14.1/po/sr.po
--- old/xdg-desktop-portal-1.14.0/po/sr.po      2022-03-17 18:59:07.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/sr.po      2022-03-18 21:31:02.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2016-09-14 12:54+0200\n"
 "Last-Translator: ???????????????? ?????????????? 
<miroslavniko...@rocketmail.com>\n"
 "Language-Team: ???????????? <gnome...@googlegroups.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/sv.po 
new/xdg-desktop-portal-1.14.1/po/sv.po
--- old/xdg-desktop-portal-1.14.0/po/sv.po      2022-03-17 18:59:07.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/sv.po      2022-03-18 21:31:03.000000000 
+0100
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-09-20 00:11+0200\n"
 "Last-Translator: Anders Jonsson <anders.jons...@norsjovallen.se>\n"
 "Language-Team: Swedish <tp...@listor.tp-sv.se>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/tr.po 
new/xdg-desktop-portal-1.14.1/po/tr.po
--- old/xdg-desktop-portal-1.14.0/po/tr.po      2022-03-17 18:59:07.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/tr.po      2022-03-18 21:31:03.000000000 
+0100
@@ -11,7 +11,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-02-27 21:57+0300\n"
 "Last-Translator: Sabri ??nal <libreaj...@gmail.com>\n"
 "Language-Team: T??rk??e <gnome-t...@gnome.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/uk.po 
new/xdg-desktop-portal-1.14.1/po/uk.po
--- old/xdg-desktop-portal-1.14.0/po/uk.po      2022-03-17 18:59:07.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/uk.po      2022-03-18 21:31:03.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2019-11-10 13:03+0200\n"
 "Last-Translator: Yuri Chornoivan <yurc...@ukr.net>\n"
 "Language-Team: Ukrainian <trans...@lists.fedoraproject.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/xdg-desktop-portal.pot 
new/xdg-desktop-portal-1.14.1/po/xdg-desktop-portal.pot
--- old/xdg-desktop-portal-1.14.0/po/xdg-desktop-portal.pot     2022-03-17 
18:58:46.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/po/xdg-desktop-portal.pot     2022-03-18 
21:30:48.000000000 +0100
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: xdg-desktop-portal 1.14.0\n"
+"Project-Id-Version: xdg-desktop-portal 1.14.1\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <l...@li.org>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/zh_CN.po 
new/xdg-desktop-portal-1.14.1/po/zh_CN.po
--- old/xdg-desktop-portal-1.14.0/po/zh_CN.po   2022-03-17 18:59:07.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/zh_CN.po   2022-03-18 21:31:03.000000000 
+0100
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2020-10-09 00:19+0800\n"
 "Last-Translator: Dingzhong Chen <wsxy...@gmail.com>\n"
 "Language-Team: Chinese - China <i18n...@googlegroups.com>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/po/zh_TW.po 
new/xdg-desktop-portal-1.14.1/po/zh_TW.po
--- old/xdg-desktop-portal-1.14.0/po/zh_TW.po   2022-03-17 18:59:07.000000000 
+0100
+++ new/xdg-desktop-portal-1.14.1/po/zh_TW.po   2022-03-18 21:31:03.000000000 
+0100
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal master\n"
 "Report-Msgid-Bugs-To: https://github.com/flatpak/xdg-desktop-portal/issues\n";
-"POT-Creation-Date: 2022-03-17 10:58-0700\n"
+"POT-Creation-Date: 2022-03-18 13:30-0700\n"
 "PO-Revision-Date: 2021-10-01 23:52+0700\n"
 "Last-Translator: Dmitry <dmitrydmitry...@gmail.com>\n"
 "Language-Team: Chinese (Taiwan) <chinese-l...@googlegroups.com>\n"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/src/Makefile.am.inc 
new/xdg-desktop-portal-1.14.1/src/Makefile.am.inc
--- old/xdg-desktop-portal-1.14.0/src/Makefile.am.inc   2022-03-17 
18:23:12.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/src/Makefile.am.inc   2022-03-18 
20:06:50.000000000 +0100
@@ -1,15 +1,18 @@
 libexec_PROGRAMS += \
        xdg-desktop-portal \
        xdg-desktop-portal-validate-icon \
+       xdg-desktop-portal-rewrite-launchers \
        $(NULL)
 
 service_in_files += \
        src/org.freedesktop.portal.Desktop.service.in \
        src/xdg-desktop-portal.service.in \
+       src/xdg-desktop-portal-rewrite-launchers.service.in \
        ${NULL}
 
 dbus_service_DATA += src/org.freedesktop.portal.Desktop.service
 systemduserunit_DATA += src/xdg-desktop-portal.service
+systemduserunit_DATA += src/xdg-desktop-portal-rewrite-launchers.service
 
 xdp_dbus_built_sources = src/xdp-dbus.c src/xdp-dbus.h
 xdp_impl_dbus_built_sources = src/xdp-impl-dbus.c src/xdp-impl-dbus.h
@@ -180,3 +183,8 @@
 xdg_desktop_portal_validate_icon_SOURCES = src/validate-icon.c
 xdg_desktop_portal_validate_icon_LDADD = $(GDK_PIXBUF_LIBS)
 xdg_desktop_portal_validate_icon_CFLAGS = $(GDK_PIXBUF_CFLAGS) 
-DHELPER=\"$(BWRAP)\" -D_GNU_SOURCE=1
+
+xdg_desktop_portal_rewrite_launchers_SOURCES = src/rewrite-launchers.c
+nodist_xdg_desktop_portal_rewrite_launchers_SOURCES = src/dynamic-launcher.h
+xdg_desktop_portal_rewrite_launchers_LDADD = $(BASE_LIBS)
+xdg_desktop_portal_rewrite_launchers_CFLAGS = $(BASE_CFLAGS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/src/dynamic-launcher.c 
new/xdg-desktop-portal-1.14.1/src/dynamic-launcher.c
--- old/xdg-desktop-portal-1.14.0/src/dynamic-launcher.c        2022-03-17 
18:23:12.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/src/dynamic-launcher.c        2022-03-18 
20:13:44.000000000 +0100
@@ -243,7 +243,7 @@
     else
       subdir = g_strdup_printf ("%sx%s", icon_size, icon_size);
 
-    icon_subdir = g_build_filename (g_get_user_data_dir (), 
"xdg-desktop-portal", "icons", subdir, NULL);
+    icon_subdir = g_build_filename (g_get_user_data_dir (), 
XDG_PORTAL_ICONS_DIR, subdir, NULL);
     icon_path = g_build_filename (icon_subdir, icon_name, NULL);
 
     g_key_file_set_string (key_file, G_KEY_FILE_DESKTOP_GROUP, "Icon", 
icon_path);
@@ -375,7 +375,7 @@
   /* Put the desktop file in ~/.local/share/xdg-desktop-portal/applications/ so
    * there's no ambiguity about which launchers were created by this portal.
    */
-  desktop_dir = g_build_filename (g_get_user_data_dir (), 
"xdg-desktop-portal", "applications", NULL);
+  desktop_dir = g_build_filename (g_get_user_data_dir (), 
XDG_PORTAL_APPLICATIONS_DIR, NULL);
   g_mkdir_with_parents (desktop_dir, 0700);
   desktop_path = g_build_filename (desktop_dir, arg_desktop_file_id, NULL);
   if (!g_key_file_save_to_file (desktop_keyfile, desktop_path, &error))
@@ -386,7 +386,7 @@
    */
   link_path = g_build_filename (g_get_user_data_dir (), "applications", 
arg_desktop_file_id, NULL);
   link_file = g_file_new_for_path (link_path);
-  relative_path = g_build_filename ("..", "xdg-desktop-portal", 
"applications", arg_desktop_file_id, NULL);
+  relative_path = g_build_filename ("..", XDG_PORTAL_APPLICATIONS_DIR, 
arg_desktop_file_id, NULL);
   g_file_delete (link_file, NULL, NULL);
   if (!g_file_make_symbolic_link (link_file, relative_path, NULL, &error))
     goto error;
@@ -751,8 +751,8 @@
       return G_DBUS_METHOD_INVOCATION_HANDLED;
     }
 
-  icon_dir = g_build_filename (g_get_user_data_dir (), "xdg-desktop-portal", 
"icons", NULL);
-  desktop_dir = g_build_filename (g_get_user_data_dir (), 
"xdg-desktop-portal", "applications", NULL);
+  icon_dir = g_build_filename (g_get_user_data_dir (), XDG_PORTAL_ICONS_DIR, 
NULL);
+  desktop_dir = g_build_filename (g_get_user_data_dir (), 
XDG_PORTAL_APPLICATIONS_DIR, NULL);
 
   link_file = g_file_new_build_filename (g_get_user_data_dir (), 
"applications", arg_desktop_file_id, NULL);
   if (!g_file_delete (link_file, NULL, &error))
@@ -803,7 +803,7 @@
   if (!validate_desktop_file_id (app_id, arg_desktop_file_id, &error))
     goto error;
 
-  desktop_dir = g_build_filename (g_get_user_data_dir (), 
"xdg-desktop-portal", "applications", NULL);
+  desktop_dir = g_build_filename (g_get_user_data_dir (), 
XDG_PORTAL_APPLICATIONS_DIR, NULL);
 
   desktop_path = g_build_filename (desktop_dir, arg_desktop_file_id, NULL);
   if (!g_file_get_contents (desktop_path, &contents, &length, &error))
@@ -852,8 +852,8 @@
   if (!validate_desktop_file_id (app_id, arg_desktop_file_id, &error))
     goto error;
 
-  desktop_dir = g_build_filename (g_get_user_data_dir (), 
"xdg-desktop-portal", "applications", NULL);
-  icon_dir = g_build_filename (g_get_user_data_dir (), "xdg-desktop-portal", 
"icons", NULL);
+  desktop_dir = g_build_filename (g_get_user_data_dir (), 
XDG_PORTAL_APPLICATIONS_DIR, NULL);
+  icon_dir = g_build_filename (g_get_user_data_dir (), XDG_PORTAL_ICONS_DIR, 
NULL);
 
   desktop_path = g_build_filename (desktop_dir, arg_desktop_file_id, NULL);
   if (!g_file_get_contents (desktop_path, &contents, &length, &error))
@@ -957,7 +957,7 @@
   if (!validate_desktop_file_id (app_id, arg_desktop_file_id, &error))
     goto error;
 
-  desktop_dir = g_build_filename (g_get_user_data_dir (), 
"xdg-desktop-portal", "applications", NULL);
+  desktop_dir = g_build_filename (g_get_user_data_dir (), 
XDG_PORTAL_APPLICATIONS_DIR, NULL);
 
   desktop_path = g_build_filename (desktop_dir, arg_desktop_file_id, NULL);
   if (!g_file_test (desktop_path, G_FILE_TEST_EXISTS))
@@ -999,219 +999,6 @@
   return G_DBUS_METHOD_INVOCATION_HANDLED;
 }
 
-static char *
-find_renamed_app_id (const char *old_app_id)
-{
-  g_autofree char *renamed_to = NULL;
-  GList *app_infos = g_app_info_get_all ();
-  for (GList *l = app_infos; l; l = l->next)
-    {
-      GDesktopAppInfo *info = l->data;
-      g_auto(GStrv) renamed_from = NULL;
-      renamed_from = g_desktop_app_info_get_string_list (info, 
"X-Flatpak-RenamedFrom", NULL);
-      if (renamed_from == NULL)
-        continue;
-      if (!g_strv_contains ((const char * const *)renamed_from, old_app_id))
-        continue;
-
-      renamed_to = g_desktop_app_info_get_string (info, "X-Flatpak");
-      break;
-    }
-
-  g_list_free_full (app_infos, g_object_unref);
-  return g_steal_pointer (&renamed_to);
-}
-
-/*
- * It's possible an app was renamed using Flatpak's end-of-life-rebase
- * mechanism, and either (a) the app was installed system-wide and the update
- * was applied by another user, so the migration for this user has to happen
- * when x-d-p launches at the start of the session, or (b) the version of
- * Flatpak is not new enough for the migration of the launchers to be handled
- * by Flatpak, so x-d-p has to do it.
- *
- * This function also handles deleting the launchers in case the parent app has
- * been uninstalled.
- */
-static void
-migrate_renamed_app_launchers (void)
-{
-  g_autoptr(GFile) desktop_dir = NULL;
-  g_autoptr(GFileEnumerator) children = NULL;
-  g_autoptr(GError) error = NULL;
-  g_autofree char *icon_dir = NULL;
-
-  desktop_dir = g_file_new_build_filename (g_get_user_data_dir (), 
"xdg-desktop-portal", "applications", NULL);
-  children = g_file_enumerate_children (desktop_dir, "standard::name", 
G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS, NULL, &error);
-  if (children == NULL)
-    {
-      if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND))
-        g_warning ("Error encountered enumerating launchers: %s", 
error->message);
-      return;
-    }
-
-  icon_dir = g_build_filename (g_get_user_data_dir (), "xdg-desktop-portal", 
"icons", NULL);
-  for (;;)
-    {
-      g_autoptr(GFileInfo) info = g_file_enumerator_next_file (children, NULL, 
NULL);
-      const char *desktop_name;
-      g_autofree char *desktop_path = NULL;
-      g_autofree char *icon_path = NULL;
-      g_autofree char *tryexec_path = NULL;
-      g_autofree char *app_id = NULL;
-      g_autofree char *renamed_to = NULL;
-      g_autoptr(GKeyFile) key_file = NULL;
-      g_autoptr(GFile) icon_file = NULL;
-      g_autoptr(GFile) desktop_file = NULL;
-
-      if (info == NULL)
-        return;
-
-      desktop_name = g_file_info_get_name (info);
-      if (!g_str_has_suffix (desktop_name, ".desktop"))
-        continue;
-
-      desktop_path = g_build_filename (g_file_peek_path (desktop_dir), 
desktop_name, NULL);
-      key_file = g_key_file_new ();
-      if (!g_key_file_load_from_file (key_file, desktop_path,
-                                      G_KEY_FILE_KEEP_COMMENTS | 
G_KEY_FILE_KEEP_TRANSLATIONS,
-                                      &error))
-        {
-          g_warning ("Error encountered loading key file %s: %s", 
desktop_path, error->message);
-          continue;
-        }
-
-      tryexec_path = g_key_file_get_string (key_file, 
G_KEY_FILE_DESKTOP_GROUP, "TryExec", NULL);
-      if (tryexec_path == NULL)
-        continue;
-      if (!g_path_is_absolute (tryexec_path))
-        {
-          /* Here we're just checking for existence not a renamed binary */
-          renamed_to = g_find_program_in_path (tryexec_path);
-          if (renamed_to)
-            continue;
-        }
-      else if (g_file_test (tryexec_path, G_FILE_TEST_IS_EXECUTABLE))
-        {
-          continue;
-        }
-      else if (g_key_file_has_key (key_file, G_KEY_FILE_DESKTOP_GROUP, 
"X-Flatpak", NULL))
-        {
-          app_id = g_path_get_basename (tryexec_path);
-          if (strlen(app_id) < 2 ||
-              !g_dbus_is_name (app_id) ||
-              !g_str_has_prefix (desktop_name, app_id))
-            {
-              g_warning ("Unable to determine app id for %s", desktop_name);
-              continue;
-            }
-          renamed_to = find_renamed_app_id (app_id);
-        }
-
-      icon_path = g_key_file_get_string (key_file, G_KEY_FILE_DESKTOP_GROUP, 
"Icon", NULL);
-      if (g_str_has_prefix (icon_path, icon_dir))
-        icon_file = g_file_new_for_path (icon_path);
-
-      desktop_file = g_file_new_for_path (desktop_path);
-
-      if (renamed_to == NULL)
-        {
-          g_autoptr(GFile) link_file = NULL;
-
-          link_file = g_file_new_build_filename (g_get_user_data_dir (), 
"applications", desktop_name, NULL);
-          if (!g_file_delete (link_file, NULL, &error))
-            {
-              g_warning ("Couldn't delete sym link %s: %s", g_file_peek_path 
(link_file), error->message);
-              g_clear_error (&error);
-            }
-
-          if (!g_file_delete (desktop_file, NULL, &error))
-            {
-              g_warning ("Couldn't delete desktop file %s: %s", 
g_file_peek_path (desktop_file), error->message);
-              g_clear_error (&error);
-            }
-
-          if (icon_file && !g_file_delete (icon_file, NULL, &error))
-            {
-              g_warning ("Couldn't delete icon file %s: %s", g_file_peek_path 
(icon_file), error->message);
-              g_clear_error (&error);
-            }
-        }
-      else /* renamed_to != NULL */
-        {
-          g_autoptr(GFile) link_file = NULL;
-          g_autoptr(GString) data_string = NULL;
-          g_autoptr(GKeyFile) new_key_file = NULL;
-          g_autofree char *new_desktop = NULL;
-          g_autofree char *new_icon = NULL;
-          g_autofree char *icon_basename = NULL;
-          g_autofree char *link_path = NULL;
-          g_autofree char *relative_path = NULL;
-          g_autofree char *old_data = NULL;
-          const gchar *desktop_suffix;
-          gchar *icon_suffix;
-
-          if (!g_key_file_has_key (key_file, G_KEY_FILE_DESKTOP_GROUP, 
"X-Flatpak", NULL))
-            g_assert_not_reached ();
-
-          /* Fix paths in desktop file with a find-and-replace. */
-          old_data = g_key_file_to_data (key_file, NULL, NULL);
-          data_string = g_string_new ((const char *)old_data);
-          g_string_replace (data_string, app_id, renamed_to, 0);
-          new_key_file = g_key_file_new ();
-          if (!g_key_file_load_from_data (new_key_file, data_string->str, -1,
-                                          G_KEY_FILE_KEEP_COMMENTS | 
G_KEY_FILE_KEEP_TRANSLATIONS,
-                                          &error))
-            {
-              g_warning ("Cannot load desktop file %s after rewrite: %s", 
desktop_path, error->message);
-              g_warning ("Key file contents:\n%s\n", (const char 
*)data_string->str);
-              continue;
-            }
-          if (!g_key_file_save_to_file (new_key_file, desktop_path, &error))
-            {
-              g_warning ("Couldn't rewrite desktop file %s: %s", desktop_path, 
error->message);
-              continue;
-            }
-
-          /* Rename desktop file */
-          desktop_suffix = desktop_name + strlen (app_id);
-          new_desktop = g_strconcat (renamed_to, desktop_suffix, NULL);
-          if (!g_file_set_display_name (desktop_file, new_desktop, NULL, 
&error))
-            {
-              g_warning ("Unable to rename desktop file %s -> %s: %s", 
desktop_name, new_desktop, error->message);
-              continue;
-            }
-
-          /* Fix symlink */
-          link_path = g_build_filename (g_get_user_data_dir (), 
"applications", desktop_name, NULL);
-          link_file = g_file_new_for_path (link_path);
-          relative_path = g_build_filename ("..", "xdg-desktop-portal", 
"applications", new_desktop, NULL);
-          g_file_delete (link_file, NULL, NULL);
-          if (!g_file_make_symbolic_link (link_file, relative_path, NULL, 
&error))
-            {
-              g_warning ("Unable to rename desktop file %s -> %s: %s", 
desktop_name, new_desktop, error->message);
-              continue;
-            }
-
-          /* And rename the icon */
-          if (icon_file)
-            {
-              icon_basename = g_path_get_basename (icon_path);
-              if (!g_str_has_prefix (icon_basename, app_id))
-                continue;
-
-              icon_suffix = icon_basename + strlen (app_id);
-              new_icon = g_strconcat (renamed_to, icon_suffix, NULL);
-              if (!g_file_set_display_name (icon_file, new_icon, NULL, &error))
-                {
-                  g_warning ("Unable to rename icon file %s -> %s: %s", 
icon_basename, new_icon, error->message);
-                  continue;
-                }
-            }
-        }
-    }
-}
-
 static void
 dynamic_launcher_iface_init (XdpDynamicLauncherIface *iface)
 {
@@ -1231,7 +1018,6 @@
   g_object_bind_property (G_OBJECT (impl), "supported-launcher-types",
                           G_OBJECT (dl), "supported-launcher-types",
                           G_BINDING_SYNC_CREATE);
-  migrate_renamed_app_launchers ();
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/src/dynamic-launcher.h 
new/xdg-desktop-portal-1.14.1/src/dynamic-launcher.h
--- old/xdg-desktop-portal-1.14.0/src/dynamic-launcher.h        2022-03-17 
18:23:12.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/src/dynamic-launcher.h        2022-03-18 
20:13:44.000000000 +0100
@@ -26,6 +26,9 @@
 
 #include <gio/gio.h>
 
+#define XDG_PORTAL_APPLICATIONS_DIR "xdg-desktop-portal" G_DIR_SEPARATOR_S 
"applications"
+#define XDG_PORTAL_ICONS_DIR "xdg-desktop-portal" G_DIR_SEPARATOR_S "icons"
+
 GDBusInterfaceSkeleton * dynamic_launcher_create (GDBusConnection *connection,
                                                   const char      *dbus_name);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/src/rewrite-launchers.c 
new/xdg-desktop-portal-1.14.1/src/rewrite-launchers.c
--- old/xdg-desktop-portal-1.14.0/src/rewrite-launchers.c       1970-01-01 
01:00:00.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/src/rewrite-launchers.c       2022-03-18 
21:30:17.000000000 +0100
@@ -0,0 +1,285 @@
+/*
+ * Copyright ?? 2022 Matthew Leeds
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * Authors:
+ *       Matthew Leeds <mwle...@protonmail.com>
+ */
+
+#include "config.h"
+
+#ifdef HAVE_GLIB_2_66
+
+#include <glib.h>
+#include <gio/gdesktopappinfo.h>
+
+#include "dynamic-launcher.h"
+
+static char *
+find_renamed_app_id (const char *old_app_id)
+{
+  g_autofree char *renamed_to = NULL;
+  g_autofree char *desktop_id = NULL;
+
+  desktop_id = g_strconcat (old_app_id, ".desktop", NULL);
+
+  GList *app_infos = g_app_info_get_all ();
+  for (GList *l = app_infos; l; l = l->next)
+    {
+      GDesktopAppInfo *info = l->data;
+      g_auto(GStrv) renamed_from = NULL;
+      renamed_from = g_desktop_app_info_get_string_list (info, 
"X-Flatpak-RenamedFrom", NULL);
+      if (renamed_from == NULL)
+        continue;
+      if (!g_strv_contains ((const char * const *)renamed_from, desktop_id))
+        continue;
+
+      renamed_to = g_desktop_app_info_get_string (info, "X-Flatpak");
+      break;
+    }
+
+  g_list_free_full (app_infos, g_object_unref);
+  return g_steal_pointer (&renamed_to);
+}
+
+/*
+ * It's possible an app was renamed using Flatpak's end-of-life-rebase
+ * mechanism, and either (a) the app was installed system-wide and the update
+ * was applied by another user, so the migration for this user has to happen
+ * when this binary runs at the start of the session, or (b) the version of
+ * Flatpak is not new enough for the migration of the launchers to be handled
+ * by Flatpak, so x-d-p has to do it.
+ *
+ * This function also handles deleting the launchers in case the parent app has
+ * been uninstalled.
+ */
+static gboolean
+migrate_renamed_app_launchers (void)
+{
+  g_autoptr(GFile) desktop_dir = NULL;
+  g_autoptr(GFileEnumerator) children = NULL;
+  g_autoptr(GError) error = NULL;
+  g_autofree char *icon_dir_path = NULL;
+  g_autofree char *desktop_dir_path = NULL;
+  gboolean success = TRUE;
+
+  desktop_dir_path = g_build_filename (g_get_user_data_dir (), 
XDG_PORTAL_APPLICATIONS_DIR, NULL);
+  desktop_dir = g_file_new_for_path (desktop_dir_path);
+  children = g_file_enumerate_children (desktop_dir, "standard::name", 
G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS, NULL, &error);
+  if (children == NULL)
+    {
+      if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND))
+        {
+          g_warning ("Error encountered enumerating launchers: %s", 
error->message);
+          success = FALSE;
+        }
+      return success;
+    }
+
+  icon_dir_path = g_build_filename (g_get_user_data_dir (), 
XDG_PORTAL_ICONS_DIR, NULL);
+  for (;;)
+    {
+      g_autoptr(GFileInfo) info = g_file_enumerator_next_file (children, NULL, 
NULL);
+      const char *desktop_name;
+      g_autofree char *desktop_path = NULL;
+      g_autofree char *icon_path = NULL;
+      g_autofree char *tryexec_path = NULL;
+      g_autofree char *app_id = NULL;
+      g_autofree char *renamed_to = NULL;
+      g_autoptr(GKeyFile) key_file = NULL;
+      g_autoptr(GFile) icon_file = NULL;
+      g_autoptr(GFile) desktop_file = NULL;
+
+      if (info == NULL)
+        return success;
+
+      desktop_name = g_file_info_get_name (info);
+      if (!g_str_has_suffix (desktop_name, ".desktop"))
+        continue;
+
+      desktop_path = g_build_filename (g_file_peek_path (desktop_dir), 
desktop_name, NULL);
+      key_file = g_key_file_new ();
+      if (!g_key_file_load_from_file (key_file, desktop_path,
+                                      G_KEY_FILE_KEEP_COMMENTS | 
G_KEY_FILE_KEEP_TRANSLATIONS,
+                                      &error))
+        {
+          g_warning ("Error encountered loading key file %s: %s", 
desktop_path, error->message);
+          g_clear_error (&error);
+          success = FALSE;
+          continue;
+        }
+
+      tryexec_path = g_key_file_get_string (key_file, 
G_KEY_FILE_DESKTOP_GROUP, "TryExec", NULL);
+      if (tryexec_path == NULL)
+        continue;
+      if (!g_path_is_absolute (tryexec_path))
+        {
+          /* Here we're just checking for existence not a renamed binary */
+          renamed_to = g_find_program_in_path (tryexec_path);
+          if (renamed_to)
+            continue;
+        }
+      else if (g_file_test (tryexec_path, G_FILE_TEST_IS_EXECUTABLE))
+        {
+          continue;
+        }
+      else if (g_key_file_has_key (key_file, G_KEY_FILE_DESKTOP_GROUP, 
"X-Flatpak", NULL))
+        {
+          app_id = g_path_get_basename (tryexec_path);
+          if (strlen(app_id) < 2 ||
+              !g_dbus_is_name (app_id) ||
+              !g_str_has_prefix (desktop_name, app_id))
+            {
+              g_warning ("Unable to determine app id for %s", desktop_name);
+              success = FALSE;
+              continue;
+            }
+          renamed_to = find_renamed_app_id (app_id);
+        }
+
+      icon_path = g_key_file_get_string (key_file, G_KEY_FILE_DESKTOP_GROUP, 
"Icon", NULL);
+      if (g_str_has_prefix (icon_path, icon_dir_path))
+        icon_file = g_file_new_for_path (icon_path);
+
+      desktop_file = g_file_new_for_path (desktop_path);
+
+      if (renamed_to == NULL)
+        {
+          g_autoptr(GFile) link_file = NULL;
+
+          link_file = g_file_new_build_filename (g_get_user_data_dir (), 
"applications", desktop_name, NULL);
+          if (!g_file_delete (link_file, NULL, &error))
+            {
+              g_warning ("Couldn't delete sym link %s: %s", g_file_peek_path 
(link_file), error->message);
+              g_clear_error (&error);
+              success = FALSE;
+            }
+
+          if (!g_file_delete (desktop_file, NULL, &error))
+            {
+              g_warning ("Couldn't delete desktop file %s: %s", 
g_file_peek_path (desktop_file), error->message);
+              g_clear_error (&error);
+              success = FALSE;
+            }
+
+          if (icon_file && !g_file_delete (icon_file, NULL, &error))
+            {
+              g_warning ("Couldn't delete icon file %s: %s", g_file_peek_path 
(icon_file), error->message);
+              g_clear_error (&error);
+              success = FALSE;
+            }
+        }
+      else /* renamed_to != NULL */
+        {
+          g_autoptr(GFile) link_file = NULL;
+          g_autoptr(GFile) new_link_file = NULL;
+          g_autoptr(GString) data_string = NULL;
+          g_autoptr(GKeyFile) new_key_file = NULL;
+          g_autofree char *new_desktop = NULL;
+          g_autofree char *new_desktop_path = NULL;
+          g_autofree char *new_icon = NULL;
+          g_autofree char *icon_basename = NULL;
+          g_autofree char *link_path = NULL;
+          g_autofree char *relative_path = NULL;
+          g_autofree char *old_data = NULL;
+          const gchar *desktop_suffix;
+          gchar *icon_suffix;
+
+          if (!g_key_file_has_key (key_file, G_KEY_FILE_DESKTOP_GROUP, 
"X-Flatpak", NULL))
+            g_assert_not_reached ();
+
+          /* Fix paths in desktop file with a find-and-replace. */
+          old_data = g_key_file_to_data (key_file, NULL, NULL);
+          data_string = g_string_new ((const char *)old_data);
+          g_string_replace (data_string, app_id, renamed_to, 0);
+          new_key_file = g_key_file_new ();
+          if (!g_key_file_load_from_data (new_key_file, data_string->str, -1,
+                                          G_KEY_FILE_KEEP_COMMENTS | 
G_KEY_FILE_KEEP_TRANSLATIONS,
+                                          &error))
+            {
+              g_warning ("Cannot load desktop file %s after rewrite: %s", 
desktop_path, error->message);
+              g_warning ("Key file contents:\n%s\n", (const char 
*)data_string->str);
+              g_clear_error (&error);
+              success = FALSE;
+              continue;
+            }
+
+          /* Write it out at the new path */
+          g_assert (g_str_has_prefix (desktop_name, app_id));
+          desktop_suffix = desktop_name + strlen (app_id);
+          new_desktop = g_strconcat (renamed_to, desktop_suffix, NULL);
+          new_desktop_path = g_build_filename (desktop_dir_path, new_desktop, 
NULL);
+          if (!g_key_file_save_to_file (new_key_file, new_desktop_path, 
&error))
+            {
+              g_warning ("Couldn't rewrite desktop file %s to %s: %s",
+                         desktop_path, new_desktop_path, error->message);
+              g_clear_error (&error);
+              success = FALSE;
+              continue;
+            }
+
+          /* Fix symlink */
+          link_path = g_build_filename (g_get_user_data_dir (), 
"applications", desktop_name, NULL);
+          link_file = g_file_new_for_path (link_path);
+          relative_path = g_build_filename ("..", XDG_PORTAL_APPLICATIONS_DIR, 
new_desktop, NULL);
+          g_file_delete (link_file, NULL, NULL);
+          new_link_file = g_file_new_build_filename (g_get_user_data_dir (), 
"applications", new_desktop, NULL);
+          if (!g_file_make_symbolic_link (new_link_file, relative_path, NULL, 
&error))
+            {
+              g_warning ("Unable to rename desktop file link %s -> %s: %s",
+                         desktop_name, new_desktop, error->message);
+              g_clear_error (&error);
+              success = FALSE;
+              continue;
+            }
+
+          /* Delete the old desktop file */
+          unlink (desktop_path);
+
+          /* And rename the icon */
+          if (icon_file)
+            {
+              icon_basename = g_path_get_basename (icon_path);
+              if (!g_str_has_prefix (icon_basename, app_id))
+                continue;
+
+              icon_suffix = icon_basename + strlen (app_id);
+              new_icon = g_strconcat (renamed_to, icon_suffix, NULL);
+              if (!g_file_set_display_name (icon_file, new_icon, NULL, &error))
+                {
+                  g_warning ("Unable to rename icon file %s -> %s: %s",
+                             icon_basename, new_icon, error->message);
+                  g_clear_error (&error);
+                  success = FALSE;
+                  continue;
+                }
+            }
+        }
+    }
+
+  return success;
+}
+#endif /* HAVE_GLIB_2_66 */
+
+int
+main (int argc, char *argv[])
+{
+/* The dynamic launcher portal is only compiled against GLib >= 2.66 */
+#ifdef HAVE_GLIB_2_66
+  if (!migrate_renamed_app_launchers ())
+    return 1;
+#endif
+  return 0;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/xdg-desktop-portal-1.14.0/src/xdg-desktop-portal-rewrite-launchers.service.in
 
new/xdg-desktop-portal-1.14.1/src/xdg-desktop-portal-rewrite-launchers.service.in
--- 
old/xdg-desktop-portal-1.14.0/src/xdg-desktop-portal-rewrite-launchers.service.in
   1970-01-01 01:00:00.000000000 +0100
+++ 
new/xdg-desktop-portal-1.14.1/src/xdg-desktop-portal-rewrite-launchers.service.in
   2022-03-18 20:06:50.000000000 +0100
@@ -0,0 +1,13 @@
+[Unit]
+Description=Rewrite dynamic launcher portal entries
+# Do it before the graphical session in case the launchers we need to rewrite
+# are configured to launch automatically
+PartOf=graphical-session-pre.target
+
+[Service]
+Type=oneshot
+ExecStart=@libexecdir@/xdg-desktop-portal-rewrite-launchers
+Slice=session.slice
+
+[Install]
+WantedBy=graphical-session-pre.target
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/xdg-desktop-portal-1.14.0/src/xdg-desktop-portal.service.in 
new/xdg-desktop-portal-1.14.1/src/xdg-desktop-portal.service.in
--- old/xdg-desktop-portal-1.14.0/src/xdg-desktop-portal.service.in     
2022-03-17 18:23:12.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/src/xdg-desktop-portal.service.in     
2022-03-17 19:41:59.000000000 +0100
@@ -1,12 +1,8 @@
 [Unit]
 Description=Portal service
-PartOf=graphical-session-pre.target
 
 [Service]
 Type=dbus
 BusName=org.freedesktop.portal.Desktop
 ExecStart=@libexecdir@/xdg-desktop-portal
 Slice=session.slice
-
-[Install]
-WantedBy=graphical-session-pre.target
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/src/xdp-utils.c 
new/xdg-desktop-portal-1.14.1/src/xdp-utils.c
--- old/xdg-desktop-portal-1.14.0/src/xdp-utils.c       2022-03-17 
18:23:12.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/src/xdp-utils.c       2022-03-18 
21:30:17.000000000 +0100
@@ -144,6 +144,7 @@
   return app_info;
 }
 
+#ifdef HAVE_LIBSYSTEMD
 char *
 _xdp_parse_app_id_from_unit_name (const char *unit)
 {
@@ -183,6 +184,7 @@
 
   return g_steal_pointer (&app_id);
 }
+#endif /* HAVE_LIBSYSTEMD */
 
 void
 set_appid_from_pid (XdpAppInfo *app_info, pid_t pid)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/src/xdp-utils.h 
new/xdg-desktop-portal-1.14.1/src/xdp-utils.h
--- old/xdg-desktop-portal-1.14.0/src/xdp-utils.h       2022-03-17 
18:23:12.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/src/xdp-utils.h       2022-03-18 
21:30:17.000000000 +0100
@@ -199,7 +199,9 @@
 /* exposed for the benefit of tests */
 int _xdp_parse_cgroup_file (FILE     *f,
                             gboolean *is_snap);
+#ifdef HAVE_LIBSYSTEMD
 char *_xdp_parse_app_id_from_unit_name (const char *unit);
+#endif
 
 #if !GLIB_CHECK_VERSION (2, 58, 0)
 static inline gboolean
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-1.14.0/tests/test-xdp-utils.c 
new/xdg-desktop-portal-1.14.1/tests/test-xdp-utils.c
--- old/xdg-desktop-portal-1.14.0/tests/test-xdp-utils.c        2022-03-17 
18:23:12.000000000 +0100
+++ new/xdg-desktop-portal-1.14.1/tests/test-xdp-utils.c        2022-03-18 
21:30:17.000000000 +0100
@@ -127,6 +127,7 @@
   xdp_set_documents_mountpoint (NULL);
 }
 
+#ifdef HAVE_LIBSYSTEMD
 static void
 test_app_id_via_systemd_unit (void)
 {
@@ -166,6 +167,7 @@
   g_assert_cmpstr (app_id, ==, "org.gnome.Terminal");
   g_clear_pointer (&app_id, g_free);
 }
+#endif /* HAVE_LIBSYSTEMD */
 
 int main (int argc, char **argv)
 {

Reply via email to