[gnome-builder] build: setup app-id dynamically from version



commit 6221fd8ca0b2f9b2500c7fefc071fb6f3c654c30
Author: Christian Hergert <chergert redhat com>
Date:   Tue Jul 12 16:18:00 2022 -0700

    build: setup app-id dynamically from version

 data/meson.build                     | 30 +++++++++++++++++-------------
 data/org.gnome.Builder.desktop.in.in |  2 +-
 data/org.gnome.Builder.service.in    |  2 +-
 meson.build                          |  6 ++++++
 4 files changed, 25 insertions(+), 15 deletions(-)
---
diff --git a/data/meson.build b/data/meson.build
index a5eea109a..ffe85249d 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -5,29 +5,33 @@ subdir('icons')
 subdir('styles')
 
 # Desktop launcher and description file.
+desktop_file_in = configure_file(
+          input: 'org.gnome.Builder.desktop.in.in',
+         output: 'org.gnome.Builder.desktop.in',
+  configuration: config_h,
+)
 desktop_file = i18n.merge_file(
-  input: 'org.gnome.Builder.desktop.in.in',
-  output: 'org.gnome.Builder.desktop',
-  type: 'desktop',
-  po_dir: '../po',
-  install: true,
+        input: desktop_file_in,
+       output: '@0@.desktop'.format(app_id),
+         type: 'desktop',
+       po_dir: '../po',
+      install: true,
   install_dir: join_paths(get_option('datadir'), 'applications'),
 )
 
 desktop_utils = find_program('desktop-file-validate', required: false)
 if desktop_utils.found()
-  test('Validate desktop file', desktop_utils,
-    args: [desktop_file]
-  )
+  test('Validate desktop file', desktop_utils, args: [desktop_file])
 endif
 
 # D-Bus service file.
 dbusconf = configuration_data()
+dbusconf.set('APP_ID', app_id)
 dbusconf.set('bindir', join_paths(get_option('prefix'), get_option('bindir')))
 configure_file(
-       input: 'org.gnome.Builder.service.in',
-       output: 'org.gnome.Builder.service',
-       configuration: dbusconf,
-       install: true,
-       install_dir: join_paths(get_option('datadir'), 'dbus-1', 'services'),
+          input: 'org.gnome.Builder.service.in',
+         output: '@0@.service'.format(app_id),
+  configuration: dbusconf,
+        install: true,
+    install_dir: join_paths(get_option('datadir'), 'dbus-1', 'services'),
 )
diff --git a/data/org.gnome.Builder.desktop.in.in b/data/org.gnome.Builder.desktop.in.in
index 9289958a1..171d517d4 100644
--- a/data/org.gnome.Builder.desktop.in.in
+++ b/data/org.gnome.Builder.desktop.in.in
@@ -3,7 +3,7 @@ Name=Builder
 Comment=Build software for GNOME
 Exec=gnome-builder %U
 # Translators: Do NOT translate or transliterate this text (this is an icon file name)!
-Icon=org.gnome.Builder
+Icon=@APP_ID@
 DBusActivatable=true
 StartupNotify=true
 Terminal=false
diff --git a/data/org.gnome.Builder.service.in b/data/org.gnome.Builder.service.in
index 474206882..917dbfafc 100644
--- a/data/org.gnome.Builder.service.in
+++ b/data/org.gnome.Builder.service.in
@@ -1,4 +1,4 @@
 [D-BUS Service]
-Name=org.gnome.Builder
+Name=@APP_ID@
 Exec=@bindir@/gnome-builder --gapplication-service
 
diff --git a/meson.build b/meson.build
index bf39e2e4a..4b0e8e81c 100644
--- a/meson.build
+++ b/meson.build
@@ -12,6 +12,11 @@ project('gnome-builder', 'c',
 version_split = meson.project_version().split('.')
 MAJOR_VERSION = version_split[0]
 
+app_id = 'org.gnome.Builder'
+if version_split[1][0] in ['a', 'b', 'r']
+  app_id = 'org.gnome.Builder.Devel'
+endif
+
 libide_api_version = '@0@'.format(MAJOR_VERSION)
 
 pkgdocdir_abs = join_paths(get_option('prefix'), get_option('datadir'), 'doc', 'gnome-builder')
@@ -72,6 +77,7 @@ status = [
 ]
 
 config_h = configuration_data()
+config_h.set_quoted('APP_ID', app_id)
 
 # Message of doom
 if version_split[1][0] in ['a', 'b', 'r']


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]