[gnome-session: 1/2] data: use absolute paths in desktop files
- From: Ray Strode <halfline src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-session: 1/2] data: use absolute paths in desktop files
- Date: Tue, 28 Aug 2018 20:43:52 +0000 (UTC)
commit ebe5a2ef3e67a15a45a54dbe4c23c8990a93f898
Author: Jan Tojnar <jtojnar gmail com>
Date: Mon Jul 23 20:42:30 2018 +0200
data: use absolute paths in desktop files
data/gnome-custom-session.desktop.in | 5 --
data/gnome-custom-session.desktop.in.in | 5 ++
...me-xorg.desktop.in => gnome-xorg.desktop.in.in} | 4 +-
data/{gnome.desktop.in => gnome.desktop.in.in} | 4 +-
data/meson.build | 82 +++++++++++-----------
5 files changed, 51 insertions(+), 49 deletions(-)
---
diff --git a/data/gnome-custom-session.desktop.in.in b/data/gnome-custom-session.desktop.in.in
new file mode 100644
index 00000000..5fadaa09
--- /dev/null
+++ b/data/gnome-custom-session.desktop.in.in
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Name=Custom
+Comment=This entry lets you select a saved session
+Exec=@bindir@/gnome-session-custom-session
+TryExec=@bindir@/gnome-session-custom-session
diff --git a/data/gnome-xorg.desktop.in b/data/gnome-xorg.desktop.in.in
similarity index 65%
rename from data/gnome-xorg.desktop.in
rename to data/gnome-xorg.desktop.in.in
index 8ddeb851..ff4d35c9 100644
--- a/data/gnome-xorg.desktop.in
+++ b/data/gnome-xorg.desktop.in.in
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=GNOME on Xorg
Comment=This session logs you into GNOME
-Exec=gnome-session
-TryExec=gnome-session
+Exec=@bindir@/gnome-session
+TryExec=@bindir@/gnome-session
Type=Application
DesktopNames=GNOME
diff --git a/data/gnome.desktop.in b/data/gnome.desktop.in.in
similarity index 63%
rename from data/gnome.desktop.in
rename to data/gnome.desktop.in.in
index 7b78e940..516c211e 100644
--- a/data/gnome.desktop.in
+++ b/data/gnome.desktop.in.in
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=GNOME
Comment=This session logs you into GNOME
-Exec=gnome-session
-TryExec=gnome-session
+Exec=@bindir@/gnome-session
+TryExec=@bindir@/gnome-session
Type=Application
DesktopNames=GNOME
diff --git a/data/meson.build b/data/meson.build
index 89af98f8..b976e739 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -1,33 +1,47 @@
-desktop = 'gnome.desktop'
-
-# FIXME: The same target can not be copied into two directories.
-# There is a workaround in meson_post_install.py until proper solution arises:
-# https://groups.google.com/forum/#!topic/mesonbuild/3iIoYPrN4P0
-i18n.merge_file(
- desktop,
- type: 'desktop',
- input: desktop + '.in',
- output: desktop,
- po_dir: po_dir,
- install: true,
- #install_dir: [
- # join_paths(session_datadir, 'xsessions'),
- # join_paths(session_datadir, 'wayland-sessions')
- #]
- install_dir: join_paths(session_datadir, 'xsessions')
-)
+desktop_plain = 'gnome'
-desktop = 'gnome-xorg.desktop'
+desktops = [
+ desktop_plain,
+ 'gnome-xorg'
+]
-i18n.merge_file(
- desktop,
- type: 'desktop',
- input: desktop + '.in',
- output: desktop,
- po_dir: po_dir,
- install: true,
- install_dir: join_paths(session_datadir, 'xsessions')
-)
+if enable_session_selector
+ desktops += 'gnome-custom-session'
+endif
+
+foreach name: desktops
+ desktop_conf = configuration_data()
+ desktop_conf.set('bindir', session_bindir)
+
+ desktop = name + '.desktop'
+
+ desktop_in = configure_file(
+ input: desktop + '.in.in',
+ output: desktop + '.in',
+ configuration: desktop_conf
+ )
+
+ install_dir = join_paths(session_datadir, 'xsessions')
+ # FIXME: The same target can not be copied into two directories.
+ # There is a workaround in meson_post_install.py until proper solution arises:
+ # https://groups.google.com/forum/#!topic/mesonbuild/3iIoYPrN4P0
+ if name == desktop_plain
+ #install_dir: [
+ # join_paths(session_datadir, 'xsessions'),
+ # join_paths(session_datadir, 'wayland-sessions')
+ #]
+ endif
+
+ desktop_target = i18n.merge_file(
+ desktop,
+ type: 'desktop',
+ input: desktop_in,
+ output: desktop,
+ po_dir: po_dir,
+ install: true,
+ install_dir: install_dir
+ )
+endforeach
sessions = [
'gnome.session',
@@ -78,18 +92,6 @@ data = files('hardware-compatibility')
if enable_session_selector
data += files('session-selector.ui')
-
- desktop = 'gnome-custom-session.desktop'
-
- i18n.merge_file(
- desktop,
- type: 'desktop',
- input: desktop + '.in',
- output: desktop,
- po_dir: po_dir,
- install: true,
- install_dir: join_paths(session_datadir, 'xsessions')
- )
endif
install_data(
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]