diff --git a/Makefile.am b/Makefile.am index b85ccaa6..99f944b5 100644 --- a/Makefile.am +++ b/Makefile.am @@ -161,13 +161,16 @@ if INSTALL_GDM_ENV_FILE env_DATA += flatpak.env endif -EXTRA_DIST += env.d/flatpak.env.in env.d/60-flatpak +EXTRA_DIST += env.d/flatpak.env.in env.d/60-flatpak env.d/60-flatpak-system-only DISTCLEANFILES += flatpak.env flatpak.env: env.d/flatpak.env.in $(AM_V_GEN) $(SED) -e "s|\@localstatedir\@|$(localstatedir)|" \ -e "s|\@sysconfdir\@|$(sysconfdir)|" $< > $@ +systemenvgendir = $(systemdsystemenvgendir) +systemenvgen_SCRIPTS = env.d/60-flatpak-system-only + userenvgendir = $(systemduserenvgendir) userenvgen_SCRIPTS = env.d/60-flatpak diff --git a/configure.ac b/configure.ac index bc6aaed6..a236ab8e 100644 --- a/configure.ac +++ b/configure.ac @@ -122,6 +122,15 @@ AC_ARG_WITH([systemdsystemunitdir], [with_systemdsystemunitdir='${prefix}/lib/systemd/system']) AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir]) +AC_ARG_WITH([systemdsystemenvgendir], + [AS_HELP_STRING([--with-systemdsystemenvgendir=DIR], + [Directory for systemd system environment generators (default=PREFIX/lib/systemd/system-environment-generators)])], + [], + dnl This is deliberately not ${libdir}: systemd units always go in + dnl .../lib, never .../lib64 or .../lib/x86_64-linux-gnu + [with_systemdsystemenvgendir='${prefix}/lib/systemd/system-environment-generators']) +AC_SUBST([systemdsystemenvgendir], [$with_systemdsystemenvgendir]) + AC_ARG_WITH([systemduserenvgendir], [AS_HELP_STRING([--with-systemduserenvgendir=DIR], [Directory for systemd user environment generators (default=PREFIX/lib/systemd/user-environment-generators)])], diff --git a/env.d/60-flatpak b/env.d/60-flatpak index c804e5a2..9b98ab57 100755 --- a/env.d/60-flatpak +++ b/env.d/60-flatpak @@ -1,15 +1,2 @@ -#!/bin/bash - -new_dirs= -while read -r install_path -do - share_path=$install_path/exports/share - case ":$XDG_DATA_DIRS:" in - *":$share_path:"*) :;; - *":$share_path/:"*) :;; - *) new_dirs=${new_dirs:+${new_dirs}:}$share_path;; - esac -done < <(echo "${XDG_DATA_HOME:-"$HOME/.local/share"}/flatpak"; flatpak --installations) - -XDG_DATA_DIRS="${new_dirs:+${new_dirs}:}${XDG_DATA_DIRS:-/usr/local/share:/usr/share}" -echo "XDG_DATA_DIRS=$XDG_DATA_DIRS" +#!/bin/sh +exec flatpak --print-updated-env diff --git a/env.d/60-flatpak-system-only b/env.d/60-flatpak-system-only new file mode 100755 index 00000000..0dfcc2d6 --- /dev/null +++ b/env.d/60-flatpak-system-only @@ -0,0 +1,2 @@ +#!/bin/sh +exec flatpak --print-updated-env --print-system-only