diff --git a/Furious/Library/UserRoutings.py b/Furious/Library/UserRoutings.py index 30b1691..f88792d 100644 --- a/Furious/Library/UserRoutings.py +++ b/Furious/Library/UserRoutings.py @@ -1,4 +1,4 @@ -# Copyright (C) 2024-present Loren Eteval & contributors +# Copyright (C) 2024–present Loren Eteval & contributors # # This file is part of Furious. # diff --git a/Furious/Plugins/API.py b/Furious/Plugins/API.py index 7731545..9e3170d 100644 --- a/Furious/Plugins/API.py +++ b/Furious/Plugins/API.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Define the public contract implemented by Furious core plugins.""" from __future__ import annotations diff --git a/Furious/Plugins/Configuration.py b/Furious/Plugins/Configuration.py index 8fc5e85..70ad104 100644 --- a/Furious/Plugins/Configuration.py +++ b/Furious/Plugins/Configuration.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Dispatch configuration creation through the process-wide plugin registry.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/Hysteria1/Plugin.py b/Furious/Plugins/Official/Hysteria1/Plugin.py index b1bd106..0f6425a 100644 --- a/Furious/Plugins/Official/Hysteria1/Plugin.py +++ b/Furious/Plugins/Official/Hysteria1/Plugin.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Integrate Hysteria 1 configuration, editor, routing, and startup.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/Hysteria1/__init__.py b/Furious/Plugins/Official/Hysteria1/__init__.py index 792549b..9b0aeba 100644 --- a/Furious/Plugins/Official/Hysteria1/__init__.py +++ b/Furious/Plugins/Official/Hysteria1/__init__.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Expose the official Hysteria 1 plugin implementation.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/Hysteria2/Plugin.py b/Furious/Plugins/Official/Hysteria2/Plugin.py index 6820256..bda6417 100644 --- a/Furious/Plugins/Official/Hysteria2/Plugin.py +++ b/Furious/Plugins/Official/Hysteria2/Plugin.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Integrate Hysteria 2 configuration, editor, and process startup.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/Hysteria2/__init__.py b/Furious/Plugins/Official/Hysteria2/__init__.py index b369223..0ed069d 100644 --- a/Furious/Plugins/Official/Hysteria2/__init__.py +++ b/Furious/Plugins/Official/Hysteria2/__init__.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Expose the official Hysteria 2 plugin implementation.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/Xray/GuiTUNSettings.py b/Furious/Plugins/Official/Xray/GuiTUNSettings.py index a128a00..3245527 100644 --- a/Furious/Plugins/Official/Xray/GuiTUNSettings.py +++ b/Furious/Plugins/Official/Xray/GuiTUNSettings.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Provide the editor for Xray-core native TUN settings.""" from __future__ import annotations @@ -6,12 +23,12 @@ from Furious.Frozenlib import * from Furious.Qt import * from Furious.Qt import gettext as _ +from PySide6.QtGui import QDesktopServices from PySide6.QtWidgets import * import copy import functools import logging -import re from .TUN import getXrayTUNSettings, saveXrayTUNSettings @@ -51,10 +68,8 @@ class GuiXrayTUNItemList(GuiXrayTUNItemText): """Edit one list-valued Xray TUN setting as comma-separated text.""" def inputToFactory(self, config: dict) -> bool: - """Store comma- or line-separated values in the settings mapping.""" - value = [ - item.strip() for item in re.split(r'[,\n]', self.text()) if item.strip() - ] + """Store comma-separated values in the settings mapping.""" + value = [item.strip() for item in self.text().split(',') if item.strip()] if config.get(self.key, []) == value: return False diff --git a/Furious/Plugins/Official/Xray/Plugin.py b/Furious/Plugins/Official/Xray/Plugin.py index fbbd396..f5549e1 100644 --- a/Furious/Plugins/Official/Xray/Plugin.py +++ b/Furious/Plugins/Official/Xray/Plugin.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Integrate Xray configuration, editors, routing, and process startup.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/Xray/Routing.py b/Furious/Plugins/Official/Xray/Routing.py index def0565..8653a65 100644 --- a/Furious/Plugins/Official/Xray/Routing.py +++ b/Furious/Plugins/Official/Xray/Routing.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Build and load Xray-specific routing rules and profiles.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/Xray/TUN.py b/Furious/Plugins/Official/Xray/TUN.py index 3ffd896..772cab7 100644 --- a/Furious/Plugins/Official/Xray/TUN.py +++ b/Furious/Plugins/Official/Xray/TUN.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Store and apply Xray-core native TUN settings.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/Xray/UserRoutingWindow.py b/Furious/Plugins/Official/Xray/UserRoutingWindow.py index 2364002..ef0883a 100644 --- a/Furious/Plugins/Official/Xray/UserRoutingWindow.py +++ b/Furious/Plugins/Official/Xray/UserRoutingWindow.py @@ -1,4 +1,4 @@ -# Copyright (C) 2024-present Loren Eteval & contributors +# Copyright (C) 2024–present Loren Eteval & contributors # # This file is part of Furious. # diff --git a/Furious/Plugins/Official/Xray/__init__.py b/Furious/Plugins/Official/Xray/__init__.py index e4e7239..7308c6c 100644 --- a/Furious/Plugins/Official/Xray/__init__.py +++ b/Furious/Plugins/Official/Xray/__init__.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Expose the official Xray plugin implementation.""" from __future__ import annotations diff --git a/Furious/Plugins/Official/__init__.py b/Furious/Plugins/Official/__init__.py index a3872a4..6747dfd 100644 --- a/Furious/Plugins/Official/__init__.py +++ b/Furious/Plugins/Official/__init__.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Register the core plugins maintained with Furious itself.""" from __future__ import annotations diff --git a/Furious/Plugins/Registry.py b/Furious/Plugins/Registry.py index 2e5c127..95dd61c 100644 --- a/Furious/Plugins/Registry.py +++ b/Furious/Plugins/Registry.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Register official plugins and discover third-party Furious plugins.""" from __future__ import annotations diff --git a/Furious/Plugins/__init__.py b/Furious/Plugins/__init__.py index 520da8e..5f33d74 100644 --- a/Furious/Plugins/__init__.py +++ b/Furious/Plugins/__init__.py @@ -1,3 +1,20 @@ +# Copyright (C) 2024–present Loren Eteval & contributors +# +# This file is part of Furious. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + """Expose the Furious plugin API and process-wide plugin registry.""" from __future__ import annotations diff --git a/Furious/Qt/AppStyleSheet.py b/Furious/Qt/AppStyleSheet.py index d5a64ac..048d056 100644 --- a/Furious/Qt/AppStyleSheet.py +++ b/Furious/Qt/AppStyleSheet.py @@ -1,4 +1,4 @@ -# Copyright (C) 2024-present Loren Eteval & contributors +# Copyright (C) 2024–present Loren Eteval & contributors # # This file is part of Furious. # diff --git a/Furious/Widget/UserSubsQTableView.py b/Furious/Widget/UserSubsQTableView.py index 218e01c..c1063b9 100644 --- a/Furious/Widget/UserSubsQTableView.py +++ b/Furious/Widget/UserSubsQTableView.py @@ -1,4 +1,4 @@ -# Copyright (C) 2024-present Loren Eteval & contributors +# Copyright (C) 2024–present Loren Eteval & contributors # # This file is part of Furious. #