diff --git a/Furious/Frozenlib/SystemRuntime.py b/Furious/Frozenlib/SystemRuntime.py index 1d92a08..ce184e9 100644 --- a/Furious/Frozenlib/SystemRuntime.py +++ b/Furious/Frozenlib/SystemRuntime.py @@ -93,7 +93,11 @@ class SystemRuntime: @staticmethod def isTUNMode() -> bool: if PLATFORM == 'Linux': - return AppSettings.isStateON_('VPNMode') + if SystemRuntime.flatpakID(): + # TUN Mode disabled in flatpak + return False + else: + return AppSettings.isStateON_('VPNMode') else: return AppSettings.isStateON_('VPNMode') and SystemRuntime.isAdmin() diff --git a/Furious/TrayActions/Settings.py b/Furious/TrayActions/Settings.py index ef8bdfe..d7d95b2 100644 --- a/Furious/TrayActions/Settings.py +++ b/Furious/TrayActions/Settings.py @@ -159,19 +159,22 @@ class SettingsChildAction(AppQAction): class SettingsAction(AppQAction): def __init__(self, **kwargs): - tunActions = [ - TUNModeAction( - checkable=True, - checked=AppSettings.isStateON_('VPNMode'), - ), - AppQAction( - _('Customize TUN Settings...'), - icon=bootstrapIcon('diagram-3.svg'), - checkable=False, - callback=lambda: APP().mainWindow.getGuiTUNSettings().open(), - ), - AppQSeperator(), - ] + if SystemRuntime.flatpakID(): + tunActions = [] + else: + tunActions = [ + TUNModeAction( + checkable=True, + checked=AppSettings.isStateON_('VPNMode'), + ), + AppQAction( + _('Customize TUN Settings...'), + icon=bootstrapIcon('diagram-3.svg'), + checkable=False, + callback=lambda: APP().mainWindow.getGuiTUNSettings().open(), + ), + AppQSeperator(), + ] if PLATFORM == 'Darwin': hideDockIconAction = [ diff --git a/Furious/Window/AppMainWindow.py b/Furious/Window/AppMainWindow.py index 3d1a1f2..e682a40 100644 --- a/Furious/Window/AppMainWindow.py +++ b/Furious/Window/AppMainWindow.py @@ -238,15 +238,18 @@ class AppMainWindow(AppQMainWindow): ), ] - customizeTUNSettingsAction = [ - AppQAction( - _('Customize TUN Settings...'), - icon=bootstrapIcon('diagram-3.svg'), - checkable=False, - callback=lambda: self.getGuiTUNSettings().open(), - ), - AppQSeperator(), - ] + if SystemRuntime.flatpakID(): + customizeTUNSettingsAction = [] + else: + customizeTUNSettingsAction = [ + AppQAction( + _('Customize TUN Settings...'), + icon=bootstrapIcon('diagram-3.svg'), + checkable=False, + callback=lambda: self.getGuiTUNSettings().open(), + ), + AppQSeperator(), + ] if PLATFORM == 'Windows' or PLATFORM == 'Darwin': _TRANSLATABLE_RESTART_AS_ADMIN = [