Disable TUN mode in flatpak

Signed-off-by: Loren Eteval <loren.eteval@proton.me>
This commit is contained in:
Loren Eteval
2025-12-15 13:43:26 +08:00
parent 438cae1dfc
commit d7b011c674
3 changed files with 33 additions and 23 deletions
+5 -1
View File
@@ -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()
+16 -13
View File
@@ -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 = [
+12 -9
View File
@@ -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 = [