Allow Users to Set Linux App Category (#59)
diff --git a/bin/templates/cordova/lib/build.js b/bin/templates/cordova/lib/build.js
index a7baabf..abb5925 100644
--- a/bin/templates/cordova/lib/build.js
+++ b/bin/templates/cordova/lib/build.js
@@ -106,6 +106,9 @@
// eslint-disable-next-line no-template-curly-in-string
if (platform === 'mac') userBuildSettings.config[platform].type = '${BUILD_TYPE}';
+ // Only Linux has an application category (String). Default value - Utility.
+ if (platform === 'linux' && platformConfigs.category) userBuildSettings.config[platform].category = platformConfigs.category;
+
if (platformConfigs.package) {
platformConfigs.package.forEach((target) => {
if (target === 'mas') {
diff --git a/tests/spec/unit/templates/cordova/lib/build.spec.js b/tests/spec/unit/templates/cordova/lib/build.spec.js
index 8d25bec..eab406f 100644
--- a/tests/spec/unit/templates/cordova/lib/build.spec.js
+++ b/tests/spec/unit/templates/cordova/lib/build.spec.js
@@ -191,7 +191,7 @@
const platformConfig = {
mac: { package: ['package', 'package2'], arch: 'arch', signing: { debug: 'debug', release: 'release', store: 'store' } },
win: { package: ['package', 'package2'], arch: 'arch', signing: { debug: 'debug', release: 'release' } },
- linux: { package: ['package', 'package2'], arch: 'arch' },
+ linux: { package: ['package', 'package2'], arch: 'arch', category: 'Game' },
darwin: {}
};
const buildConfig = {
@@ -233,7 +233,8 @@
{ target: 'package', arch: 'arch' },
{ target: 'package2', arch: 'arch' }
],
- icon: '${APP_INSTALLER_ICON}'
+ icon: '${APP_INSTALLER_ICON}',
+ category: 'Game'
};
expect(electronBuilder.userBuildSettings.config.mac).toEqual(expectedMac);