Rename to Federated Calendar
Ship as Federated Calendar, with the application ID computer.federated.FederatedCalendar and the executable federated-calendar, so it can be installed and run alongside GNOME Calendar. The settings schema follows the application ID too, so the two don't share settings or install the same schema. The project name sets the executable, gettext domain and data directory; the desktop file, D-Bus service, search provider, metainfo and icons follow the application ID. Internal resource paths and the template file names are unchanged, to keep merging from GNOME Calendar simple. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"app-id" : "org.gnome.Calendar.Devel",
|
||||
"app-id" : "computer.federated.FederatedCalendar.Devel",
|
||||
"runtime" : "org.gnome.Platform",
|
||||
"runtime-version" : "master",
|
||||
"sdk" : "org.gnome.Sdk",
|
||||
"command" : "gnome-calendar",
|
||||
"command" : "federated-calendar",
|
||||
"tags" : [
|
||||
"devel"
|
||||
],
|
||||
|
||||
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 433 B After Width: | Height: | Size: 433 B |
|
Before Width: | Height: | Size: 433 B After Width: | Height: | Size: 433 B |
@@ -3,11 +3,11 @@ subdir('icons')
|
||||
enum_headers = files(src_dir / 'gcal-enums.h')
|
||||
|
||||
enums_xml = gnome.mkenums(
|
||||
'org.gnome.calendar.enums.xml',
|
||||
'@0@.enums.xml'.format(settings_schema_id),
|
||||
sources: enum_headers,
|
||||
comments: '<!-- @comment@ -->',
|
||||
fhead: '<schemalist>',
|
||||
vhead: ' <@type@ id="org.gnome.calendar.@EnumName@">',
|
||||
vhead: ' <@type@ id="@0@.@EnumName@">'.format(settings_schema_id),
|
||||
vprod: ' <value nick="@valuenick@" value="@valuenum@"/>',
|
||||
vtail: ' </@type@>',
|
||||
ftail: '</schemalist>',
|
||||
@@ -19,6 +19,7 @@ enums_xml = gnome.mkenums(
|
||||
# Note: This name is registered in gcal-weather-service.c.
|
||||
desktop_conf = configuration_data()
|
||||
desktop_conf.set('icon', application_id)
|
||||
desktop_conf.set('binary', meson.project_name())
|
||||
desktop = i18n.merge_file(
|
||||
type: 'desktop',
|
||||
input: configure_file(
|
||||
@@ -36,6 +37,7 @@ desktop = i18n.merge_file(
|
||||
search_provider_conf = configuration_data()
|
||||
search_provider_conf.set('appid', application_id)
|
||||
search_provider_conf.set('profile', profile)
|
||||
search_provider_conf.set('objectpath', '/' + application_id.replace('.', '/'))
|
||||
configure_file(
|
||||
configuration: search_provider_conf,
|
||||
input: files('org.gnome.Calendar.search-provider.ini.in'),
|
||||
@@ -46,12 +48,12 @@ configure_file(
|
||||
# GSettings schema
|
||||
schema_conf = configuration_data()
|
||||
schema_conf.set('GETTEXT_PACKAGE', meson.project_name())
|
||||
|
||||
schema = 'org.gnome.calendar.gschema.xml'
|
||||
schema_conf.set('SCHEMA_ID', settings_schema_id)
|
||||
schema_conf.set('SCHEMA_PATH', settings_schema_path)
|
||||
|
||||
schema_xml = configure_file(
|
||||
input: schema + '.in',
|
||||
output: schema,
|
||||
input: 'org.gnome.calendar.gschema.xml.in',
|
||||
output: '@0@.gschema.xml'.format(settings_schema_id),
|
||||
install: true,
|
||||
install_dir: calendar_schemadir,
|
||||
configuration: schema_conf
|
||||
@@ -72,6 +74,7 @@ compiled_schemas = custom_target(
|
||||
service_conf = configuration_data()
|
||||
service_conf.set('appid', application_id)
|
||||
service_conf.set('bindir', calendar_bindir)
|
||||
service_conf.set('binary', meson.project_name())
|
||||
service = 'org.gnome.Calendar.service'
|
||||
|
||||
configure_file(
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[Desktop Entry]
|
||||
Name=Calendar
|
||||
Name=Federated Calendar
|
||||
Comment=Access and manage your calendars
|
||||
Exec=gnome-calendar %U
|
||||
Exec=@binary@ %U
|
||||
# Translators: Do NOT translate or transliterate this text (this is an icon file name)!
|
||||
Icon=@icon@
|
||||
Terminal=false
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[Shell Search Provider]
|
||||
Icon=gnome-calendar
|
||||
Icon=@appid@
|
||||
DesktopId=@appid@.desktop
|
||||
BusName=@appid@
|
||||
ObjectPath=/org/gnome/Calendar@profile@/SearchProvider
|
||||
ObjectPath=@objectpath@@profile@/SearchProvider
|
||||
Version=2
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
[D-BUS Service]
|
||||
Name=@appid@
|
||||
Exec=@bindir@/gnome-calendar --gapplication-service
|
||||
Exec=@bindir@/@binary@ --gapplication-service
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<schemalist gettext-domain="@GETTEXT_PACKAGE@">
|
||||
<schema id="org.gnome.calendar" path="/org/gnome/calendar/">
|
||||
<schema id="@SCHEMA_ID@" path="@SCHEMA_PATH@">
|
||||
<key name="window-maximized" type="b">
|
||||
<default>true</default>
|
||||
<summary>Window maximized</summary>
|
||||
@@ -11,7 +11,7 @@
|
||||
<summary>Window size</summary>
|
||||
<description>Window size (width and height).</description>
|
||||
</key>
|
||||
<key name="active-view" enum="org.gnome.calendar.GcalWindowView">
|
||||
<key name="active-view" enum="@SCHEMA_ID@.GcalWindowView">
|
||||
<default>'month'</default>
|
||||
<summary>Type of the active view</summary>
|
||||
<description>Type of the active window view, default value is: monthly view</description>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
project(
|
||||
'gnome-calendar',
|
||||
'federated-calendar',
|
||||
'c',
|
||||
version: '52.alpha',
|
||||
license: 'GPL3+',
|
||||
@@ -45,11 +45,16 @@ else
|
||||
rev = ''
|
||||
endif
|
||||
|
||||
base_application_id = 'computer.federated.FederatedCalendar'
|
||||
if profile == ''
|
||||
application_id = 'org.gnome.Calendar'
|
||||
application_id = base_application_id
|
||||
else
|
||||
application_id = 'org.gnome.Calendar.@0@'.format(profile)
|
||||
application_id = '@0@.@1@'.format(base_application_id, profile)
|
||||
endif
|
||||
|
||||
# Settings are shared between profiles, but not with GNOME Calendar
|
||||
settings_schema_id = base_application_id
|
||||
settings_schema_path = '/' + settings_schema_id.replace('.', '/') + '/'
|
||||
calendar_buildtype = get_option('buildtype')
|
||||
development_release = calendar_minor_version.startswith('alpha') or \
|
||||
calendar_minor_version.startswith('beta') or \
|
||||
@@ -85,7 +90,8 @@ set_defines = [
|
||||
['GETTEXT_PACKAGE', meson.project_name()],
|
||||
['PROFILE', profile],
|
||||
['NAME_SUFFIX', name_suffix],
|
||||
['APPLICATION_ID', application_id]
|
||||
['APPLICATION_ID', application_id],
|
||||
['SETTINGS_SCHEMA_ID', settings_schema_id],
|
||||
]
|
||||
|
||||
foreach define: set_defines
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
appdata_conf = configuration_data()
|
||||
appdata_conf.set('appid', application_id)
|
||||
appdata_conf.set('binary', meson.project_name())
|
||||
appdata = i18n.merge_file(
|
||||
input: configure_file(
|
||||
input: files('org.gnome.Calendar.metainfo.xml.in.in'),
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<name>The GNOME Project</name>
|
||||
</developer>
|
||||
|
||||
<name>Calendar</name>
|
||||
<name>Federated Calendar</name>
|
||||
<summary>Manage your schedule</summary>
|
||||
|
||||
<description>
|
||||
@@ -104,10 +104,10 @@
|
||||
<control>touch</control>
|
||||
</supports>
|
||||
|
||||
<translation type="gettext">gnome-calendar</translation>
|
||||
<translation type="gettext">@binary@</translation>
|
||||
<launchable type="desktop-id">@appid@.desktop</launchable>
|
||||
<provides>
|
||||
<binary>gnome-calendar</binary>
|
||||
<binary>@binary@</binary>
|
||||
</provides>
|
||||
|
||||
<content_rating type="oars-1.1" />
|
||||
|
||||
@@ -20,6 +20,8 @@
|
||||
|
||||
#define G_LOG_DOMAIN "GcalContext"
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include "gcal-context.h"
|
||||
#include "gcal-time-zone-monitor.h"
|
||||
|
||||
@@ -412,7 +414,7 @@ gcal_context_init (GcalContext *self)
|
||||
g_autoptr (GError) error = NULL;
|
||||
|
||||
self->clock = gcal_clock_new ();
|
||||
self->settings = g_settings_new ("org.gnome.calendar");
|
||||
self->settings = g_settings_new (SETTINGS_SCHEMA_ID);
|
||||
self->weather_service = gcal_weather_service_new ();
|
||||
self->time_format = GCAL_TIME_FORMAT_24H;
|
||||
|
||||
|
||||
@@ -519,7 +519,7 @@ gcal_application_handle_local_options (GApplication *app,
|
||||
{
|
||||
if (show_version)
|
||||
{
|
||||
g_print ("gnome-calendar: Version %s\n", PACKAGE_VERSION);
|
||||
g_print ("%s: Version %s\n", PACKAGE_NAME, PACKAGE_VERSION);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ using Gtk 4.0;
|
||||
using Adw 1;
|
||||
|
||||
template $GcalWindow: Adw.ApplicationWindow {
|
||||
title: _("Calendar");
|
||||
title: _("Federated Calendar");
|
||||
default-width: 800;
|
||||
default-height: 600;
|
||||
width-request: 360;
|
||||
|
||||
@@ -418,7 +418,7 @@ content_title (GcalWindow *self,
|
||||
return g_strdup (_("Agenda"));
|
||||
|
||||
default:
|
||||
return g_strdup (_("Calendar"));
|
||||
return g_strdup (_("Federated Calendar"));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ main (gint argc,
|
||||
bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
|
||||
textdomain (GETTEXT_PACKAGE);
|
||||
|
||||
g_set_application_name (_("Calendar"));
|
||||
g_set_application_name (_("Federated Calendar"));
|
||||
|
||||
gcal_log_init ();
|
||||
|
||||
|
||||