diff --git a/data/X-GNOME-Shell-System.directory.desktop.in b/data/X-GNOME-Shell-System.directory.desktop.in new file mode 100644 index 000000000..ccf93dea0 --- /dev/null +++ b/data/X-GNOME-Shell-System.directory.desktop.in @@ -0,0 +1,3 @@ +[Desktop Entry] +Name=System +Type=Directory diff --git a/data/default-apps/system-folder.txt b/data/default-apps/system-folder.txt new file mode 100644 index 000000000..e69de29bb diff --git a/data/meson.build b/data/meson.build index 338ea7053..114dd2010 100644 --- a/data/meson.build +++ b/data/meson.build @@ -32,15 +32,20 @@ foreach desktop_file : desktop_files ) endforeach -desktop_directory = 'X-GNOME-Shell-Utilities.directory' -i18n.merge_file( - input: f'@desktop_directory@.desktop.in', - output: desktop_directory, - po_dir: po_dir, - install: true, - install_dir: join_paths(datadir, 'desktop-directories'), - type: 'desktop', -) +desktop_directories = [ + 'X-GNOME-Shell-Utilities.directory', + 'X-GNOME-Shell-System.directory', +] +foreach desktop_directory : desktop_directories + i18n.merge_file( + input: f'@desktop_directory@.desktop.in', + output: desktop_directory, + po_dir: po_dir, + install: true, + install_dir: join_paths(datadir, 'desktop-directories'), + type: 'desktop', + ) +endforeach serviceconf = configuration_data() serviceconf.set('libexecdir', libexecdir) diff --git a/js/misc/config.js.in b/js/misc/config.js.in index 6485d614f..781cc8372 100644 --- a/js/misc/config.js.in +++ b/js/misc/config.js.in @@ -22,3 +22,4 @@ export const HAVE_BLUETOOTH = pkg.checkSymbol('GnomeBluetooth', '3.0', 'Client.default_adapter_state'); export const UTILITIES_FOLDER_APPS = @UTILS_FOLDER_APPS@; +export const SYSTEM_FOLDER_APPS = @SYSTEM_FOLDER_APPS@; diff --git a/js/misc/meson.build b/js/misc/meson.build index 4b137ef3e..0b547d2d6 100644 --- a/js/misc/meson.build +++ b/js/misc/meson.build @@ -9,6 +9,10 @@ jsconf.set('UTILS_FOLDER_APPS', run_command( generate_app_list, '../../data/default-apps/utilities-folder.txt', check: true, ).stdout()) +jsconf.set('SYSTEM_FOLDER_APPS', run_command( + generate_app_list, '../../data/default-apps/system-folder.txt', + check: true, +).stdout()) jsconf.set('datadir', datadir) jsconf.set('libexecdir', libexecdir) diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index b08d9af5d..c1a9e13ce 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -24,7 +24,7 @@ import * as SystemActions from '../misc/systemActions.js'; import * as Main from './main.js'; -import {UTILITIES_FOLDER_APPS} from '../misc/config.js'; +import * as Config from '../misc/config.js'; const MENU_POPUP_TIMEOUT = 600; const POPDOWN_DIALOG_TIMEOUT = 500; @@ -59,9 +59,13 @@ const DIALOG_SHADE_NORMAL = new Cogl.Color({red: 0, green: 0, blue: 0, alpha: 20 const DIALOG_SHADE_HIGHLIGHT = new Cogl.Color({red: 0, green: 0, blue: 0, alpha: 85}); const DEFAULT_FOLDERS = { + 'System': { + name: 'X-GNOME-Shell-System.directory', + apps: Config.SYSTEM_FOLDER_APPS, + }, 'Utilities': { name: 'X-GNOME-Shell-Utilities.directory', - apps: UTILITIES_FOLDER_APPS, + apps: Config.UTILITIES_FOLDER_APPS, }, 'YaST': { name: 'suse-yast.directory', diff --git a/po/POTFILES.in b/po/POTFILES.in index c3cfaaf4b..7df17181f 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -7,6 +7,7 @@ data/org.gnome.Shell.desktop.in.in data/org.gnome.shell.gschema.xml.in data/org.gnome.Shell.Extensions.desktop.in.in data/org.gnome.Shell.PortalHelper.desktop.in.in +data/X-GNOME-Shell-System.directory.desktop.in data/X-GNOME-Shell-Utilities.directory.desktop.in js/dbusServices/extensions/ui/extension-error-page.ui js/gdm/authPrompt.js