Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Permantently disable RECENT_LIST_ENABLED #10929

Closed
joncamfield opened this issue Feb 8, 2022 · 17 comments
Closed

Permantently disable RECENT_LIST_ENABLED #10929

joncamfield opened this issue Feb 8, 2022 · 17 comments
Labels
feature-request Issue which suggest an idea, enhancement or feature to implement stale

Comments

@joncamfield
Copy link

Is your feature request related to a problem you are facing?

In running a small server for higher-risk users, the recent meeting list option can reveal recurring meeting rooms and/or operational details if anyone who sets up the room name is not careful. Thankfully, this can be disabled by setting RECENT_LIST_ENABLED to false in interface_config.js - but that setting is reset on every software upgrade.

Describe the solution you'd like

There are a variety of solutions which could help with this:

  • Not overwriting changed configs (or offering a diff/merge process)
  • Add in a separate config file that isn't overwritten in upgrading that overrides and is permanent across upgrades
  • Disabling the recent rooms list as the default option.

Describe alternatives you've considered

We currently manually re-set our preferred settings after updating, but ideally this could be streamlined.

@joncamfield joncamfield added the feature-request Issue which suggest an idea, enhancement or feature to implement label Feb 8, 2022
@saghul
Copy link
Member

saghul commented Feb 8, 2022

We have deprecated interface_config.js (which gets overwritten on every install) so all configuration should move to config.js. Moving this one options should be simple enough. Would you like to send a PR? I'm happy to provide some guidance.

@joncamfield
Copy link
Author

Sure - I can take a crack at it but guidance would be very appreciated/needed. Is there a matrix/irc/etc. chat channel?

@saghul
Copy link
Member

saghul commented Feb 9, 2022

We do have a forum, but we can do it right here :-)

You can look at this commit: cd4c940 it moves several options from interface_config.js to config.js.

@nodiscc
Copy link

nodiscc commented Oct 9, 2022

I could not figure out from the linked commit what needs to be done to migrate RECENT_LIST_ENABLED to config.js. There seems to be unrelated modifications in this commit. Would 1e9f599 be a better example? If so I could take another shot.

In the mean time I need to re-apply my configuration/ansible role [1] every time jitsi packages are updated.

@saghul
Copy link
Member

saghul commented Oct 9, 2022

I could not figure out from the linked commit what needs to be done to migrate RECENT_LIST_ENABLED to config.js. There seems to be unrelated modifications in this commit. Would 1e9f599 be a better example? If so I could take another shot.

In the mean time I need to re-apply my configuration/ansible role [1] every time jitsi packages are updated.

Yep that commit is a si oler example!

@nodiscc
Copy link

nodiscc commented Oct 11, 2022

Thank you, I have prepared a small patch based on this commit, but I have no idea yet of how to build and test these changes. Can you tell me if at least the changes look correct?

From bc78c03d8ee81ab1e0f2033e09f8c78781946399 Mon Sep 17 00:00:00 2001
From: nodiscc <[email protected]>
Date: Tue, 11 Oct 2022 17:00:22 +0200
Subject: [PATCH] WIP: migrate RECENT_LIST_ENABLED to
 config.js/recentListEnable - allows the setting to persist across upgrades -
 ref.
 https://github.com/jitsi/jitsi-meet/commit/1e9f599a3526be45889f29c7700ddda571647991
 - fixes https://github.com/jitsi/jitsi-meet/issues/10929

---
 config.js                                              | 3 +++
 interface_config.js                                    | 9 +++------
 react/features/base/config/configType.ts               | 1 +
 react/features/base/config/interfaceConfigWhitelist.ts | 1 -
 react/features/recent-list/functions.web.js            | 3 ++-
 5 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/config.js b/config.js
index d61461ba7..c1f93a380 100644
--- a/config.js
+++ b/config.js
@@ -1110,6 +1110,9 @@ var config = {
     // the room is never stored in the recents list.
     // doNotStoreRoom: true,
 
+    // If false, disables showing the recent rooms list on the welcome page
+    // recentListEnabled: false,
+
     // Deployment specific URLs.
     // deploymentUrls: {
     //    // If specified a 'Help' button will be displayed in the overflow menu with a link to the specified URL for
diff --git a/interface_config.js b/interface_config.js
index 9d0e357f6..6ea02624a 100644
--- a/interface_config.js
+++ b/interface_config.js
@@ -134,12 +134,6 @@ var interfaceConfig = {
     POLICY_LOGO: null,
     PROVIDER_NAME: 'Jitsi',
 
-    /**
-     * If true, will display recent list
-     *
-     * @type {boolean}
-     */
-    RECENT_LIST_ENABLED: true,
     REMOTE_THUMBNAIL_RATIO: 1, // 1:1
 
     SETTINGS_SECTIONS: [ 'devices', 'language', 'moderator', 'profile', 'calendar', 'sounds', 'more' ],
@@ -262,6 +256,9 @@ var interfaceConfig = {
     // Moved to config.js as `toolbarConfig.timeout`.
     // TOOLBAR_TIMEOUT: 4000,
 
+    // This config was moved to config.js as `recentListEnabled`.
+    // RECENT_LIST_ENABLED: true,
+
     // Allow all above example options to include a trailing comma and
     // prevent fear when commenting out the last value.
     // eslint-disable-next-line sort-keys
diff --git a/react/features/base/config/configType.ts b/react/features/base/config/configType.ts
index 92e993e5a..ae7003c1d 100644
--- a/react/features/base/config/configType.ts
+++ b/react/features/base/config/configType.ts
@@ -401,6 +401,7 @@ export interface IConfig {
     };
     prejoinPageEnabled?: boolean;
     readOnlyName?: boolean;
+    recentListEnabled?: boolean;
     recordingLimit?: {
         appName?: string;
         appURL?: string;
diff --git a/react/features/base/config/interfaceConfigWhitelist.ts b/react/features/base/config/interfaceConfigWhitelist.ts
index 3c48cd28e..4d8caa94e 100644
--- a/react/features/base/config/interfaceConfigWhitelist.ts
+++ b/react/features/base/config/interfaceConfigWhitelist.ts
@@ -39,7 +39,6 @@ export default [
     'OPTIMAL_BROWSERS',
     'PHONE_NUMBER_REGEX',
     'PROVIDER_NAME',
-    'RECENT_LIST_ENABLED',
     'REMOTE_THUMBNAIL_RATIO',
     'SETTINGS_SECTIONS',
     'SHARING_FEATURES',
diff --git a/react/features/recent-list/functions.web.js b/react/features/recent-list/functions.web.js
index 19e020871..50ee21e50 100644
--- a/react/features/recent-list/functions.web.js
+++ b/react/features/recent-list/functions.web.js
@@ -30,6 +30,7 @@ export function toDisplayableList(recentList) {
  * @returns {boolean} <tt>true</tt> if recent list is enabled and <tt>false</tt>
  * otherwise.
  */
+const { recentListEnabled } = state['features/base/config'];
 export function isRecentListEnabled() {
-    return interfaceConfig.RECENT_LIST_ENABLED;
+    return recentListEnabled;
 }
-- 
2.30.2

@damencho
Copy link
Member

@saghul This will disable it for everyone that updates the debian packages, as the config is removed from the interface config with its default value and as we do not update config.js on deployments it will stay disabled.

@saghul
Copy link
Member

saghul commented Oct 11, 2022

Yep, we need to negate this and add a "disabled" flag instead, since it needs to default to ON.

Also the backwards compat code seems to be missing.

You can test it with "make dev"

@nodiscc
Copy link

nodiscc commented Dec 1, 2022

make dev

The process gets OOM-killed every time I try...

Out of memory: Killed process 81815 (webpack) total-vm:3065700kB, anon-rss:2318284kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:35420kB oom_score_adj:0

Also the backwards compat code seems to be missing.

It looks more complicated than initially planned. I will leave this to more experienced people.

I'd still very much like to see this fixed.

@damencho
Copy link
Member

damencho commented Dec 1, 2022

You need 8GB of RAM to be able to compile.

Copy link

github-actions bot commented Jan 8, 2024

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Jan 8, 2024
@nodiscc
Copy link

nodiscc commented Jan 9, 2024

not stale

@github-actions github-actions bot removed the stale label Jan 10, 2024
Copy link

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Mar 11, 2024
@nodiscc
Copy link

nodiscc commented Mar 12, 2024

not stale

@github-actions github-actions bot removed the stale label Mar 12, 2024
Copy link

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label May 11, 2024
@nodiscc
Copy link

nodiscc commented May 12, 2024

not stale

@github-actions github-actions bot removed the stale label May 13, 2024
Copy link

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Jul 12, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jul 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Issue which suggest an idea, enhancement or feature to implement stale
Projects
None yet
Development

No branches or pull requests

4 participants