diff --git a/README.md b/README.md
index 528516cf..e83f07c6 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,7 @@ Persepolis is a download manager & a GUI for [Aria2](https://github.com/aria2/ar
- Multi-segment downloading
- Scheduling downloads
- Download queuing
+- Download video from youtube and ...
- and many more!
### **FAQ**
diff --git a/man/persepolis.1 b/man/persepolis.1
index 7a35e990..f6b5af8a 100644
--- a/man/persepolis.1
+++ b/man/persepolis.1
@@ -1,4 +1,4 @@
-.TH "Persepolis" "1" "September 16, 2019" "3.2.0" "persepolis"
+.TH "Persepolis" "1" "February 9, 2024" "4.0.0" "persepolis"
.SH NAME
persepolis \- Persepolis Download Manager
.
diff --git a/persepolis/gui/about_ui.py b/persepolis/gui/about_ui.py
index 142429af..d5e40c4c 100644
--- a/persepolis/gui/about_ui.py
+++ b/persepolis/gui/about_ui.py
@@ -204,7 +204,7 @@ def __init__(self, persepolis_setting):
# about_tab
self.title_label.setText(QCoreApplication.translate("about_ui_tr", "Persepolis Download Manager"))
- self.version_label.setText(QCoreApplication.translate("about_ui_tr", "Version 3.2.0"))
+ self.version_label.setText(QCoreApplication.translate("about_ui_tr", "Version 4.0.0"))
self.site2_label.setText(QCoreApplication.translate("about_ui_tr",
"https://persepolisdm.github.io",
"TRANSLATORS NOTE: YOU REALLY DON'T NEED TO TRANSLATE THIS PART!"))
diff --git a/persepolis/scripts/initialization.py b/persepolis/scripts/initialization.py
index 7075a181..ac98b6f8 100644
--- a/persepolis/scripts/initialization.py
+++ b/persepolis/scripts/initialization.py
@@ -225,7 +225,7 @@
persepolis_version = 3.1
-if persepolis_version < 3.2:
+if persepolis_version < 4.0:
persepolis_setting.beginGroup('settings')
for key in default_setting_dict.keys():
@@ -235,6 +235,6 @@
persepolis_setting.endGroup()
- persepolis_setting.setValue('version/version', 3.2)
+ persepolis_setting.setValue('version/version', 4.0)
persepolis_setting.sync()
diff --git a/persepolis/scripts/persepolis.py b/persepolis/scripts/persepolis.py
index 114bcf1a..597f1a65 100644
--- a/persepolis/scripts/persepolis.py
+++ b/persepolis/scripts/persepolis.py
@@ -167,7 +167,7 @@ def setPersepolisColorScheme(self, color_scheme):
help="Persepolis is starting in tray icon. It's useful when you want to put persepolis in system's startup.")
parser.add_argument('--parent-window', action='store', nargs=1,
help='this switch is used for chrome native messaging in Windows')
-parser.add_argument('--version', action='version', version='Persepolis Download Manager 3.2.0')
+parser.add_argument('--version', action='version', version='Persepolis Download Manager 4.0.0')
# Clears unwanted args ( like args from Browers via NHM )
diff --git a/persepolis/scripts/update.py b/persepolis/scripts/update.py
index 3a114f84..3058346c 100644
--- a/persepolis/scripts/update.py
+++ b/persepolis/scripts/update.py
@@ -55,7 +55,7 @@ def __init__(self, persepolis_setting):
self.setWindowTitle(QCoreApplication.translate("update_src_ui_tr", 'Checking for newer version'))
# installed version
- self.client_version = '3.20'
+ self.client_version = '4.00'
# first line text
self.update_label = QLabel(QCoreApplication.translate(
@@ -65,7 +65,7 @@ def __init__(self, persepolis_setting):
# second line text
self.version_label = QLabel(QCoreApplication.translate(
- "update_src_ui_tr", 'This is Persepolis Download Manager version 3.2.0'))
+ "update_src_ui_tr", 'This is Persepolis Download Manager version 4.0.0'))
self.version_label.setAlignment(QtCore.Qt.AlignCenter)
# release link
diff --git a/persepolis/scripts/useful_tools.py b/persepolis/scripts/useful_tools.py
index a6ab8036..deb57895 100644
--- a/persepolis/scripts/useful_tools.py
+++ b/persepolis/scripts/useful_tools.py
@@ -12,10 +12,6 @@
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
-try:
- from PySide6.QtWidgets import QStyleFactory
-except:
- from PyQt5.QtWidgets import QStyleFactory
from persepolis.constants.Os import OS
import urllib.parse
@@ -162,71 +158,11 @@ def returnDefaultSettings():
# user download folder path
download_path = os.path.join(home_address, 'Downloads', 'Persepolis')
- # find available styles(It's depends on operating system and desktop environments).
- available_styles = QStyleFactory.keys()
+ # set dark fusion for default style settings.
style = 'Fusion'
color_scheme = 'Dark Fusion'
icons = 'Breeze-Dark'
- if os_type in OS.UNIX_LIKE:
- if desktop_env == 'KDE':
- if 'Breeze' in available_styles:
- style = 'Breeze'
- color_scheme = 'System'
- else:
- # finout user prefers dark theme or light theme :)
- # read this links for more information:
- # https://wiki.archlinux.org/index.php/GTK%2B#Basic_theme_configuration
- # https://wiki.archlinux.org/index.php/GTK%2B#Dark_theme_variant
-
- # find user gtk3 config file path.
- gtk3_confing_file_path = os.path.join(home_address, '.config', 'gtk-3.0', 'settings.ini')
- if not(os.path.isfile(gtk3_confing_file_path)):
- if os.path.isfile('/etc/gtk-3.0/settings.ini'):
- gtk3_confing_file_path = '/etc/gtk-3.0/settings.ini'
- else:
- gtk3_confing_file_path = None
-
- # read this for more information:
- dark_theme = False
- if gtk3_confing_file_path:
- with open(gtk3_confing_file_path) as f:
- for line in f:
- if "gtk-application-prefer-dark-theme" in line:
- if 'true' in line:
- dark_theme = True
- else:
- dark_theme = False
-
- if dark_theme:
- icons = 'Breeze-Dark'
- if 'Adwaita-Dark' in available_styles:
- style = 'Adwaita-Dark'
- color_scheme = 'System'
-
- else:
- icons = 'Breeze'
- if 'Adwaita' in available_styles:
- style = 'Adwaita'
- color_scheme = 'System'
- else:
- style = 'Fusion'
- color_scheme = 'Light Fusion'
-
- elif os_type == OS.OSX:
- if 'macintosh' in available_styles:
- style = 'macintosh'
- color_scheme = 'System'
- icons = 'Breeze'
-
- elif os_type == OS.WINDOWS:
- style = 'Fusion'
- color_scheme = 'Dark Fusion'
- icons = 'Breeze-Dark'
-
- else:
- style = 'Fusion'
- color_scheme = 'Dark Fusion'
- icons = 'Breeze-Dark'
+ style = 'Fusion'
# keyboard shortcuts
delete_shortcut = "Ctrl+D"
diff --git a/setup.py b/setup.py
index 5ddb44c1..a79f513e 100755
--- a/setup.py
+++ b/setup.py
@@ -80,7 +80,7 @@
import yt_dlp as youtube_dl
print('youtube-dl is found')
except:
- print('Warning: youtube-dl is not installed!')
+ print('Warning: yt-dlp is not installed!')
not_installed = not_installed + 'youtube-dl, '
# aria2
@@ -191,7 +191,7 @@
setup(
name='persepolis',
- version='3.2.0',
+ version='4.0.0',
license='GPL3',
description=DESCRIPTION,
long_description=DESCRIPTION,
diff --git a/uninstall.py b/uninstall.py
index d20ba638..e781717c 100755
--- a/uninstall.py
+++ b/uninstall.py
@@ -46,7 +46,7 @@
# finding persepolis directories in /usr/lib/python3.6/site-packages/
-python_version_list = ['python3.5','python3.6', 'python3.7', 'python3.8', 'python3.9']
+python_version_list = ['python3.5','python3.6', 'python3.7', 'python3.8', 'python3.9', 'python3.10', 'python3.11']
for python_version in python_version_list:
# for BSD
diff --git a/xdg/com.github.persepolisdm.persepolis.appdata.xml b/xdg/com.github.persepolisdm.persepolis.appdata.xml
index 62ac8fbe..dba751db 100644
--- a/xdg/com.github.persepolisdm.persepolis.appdata.xml
+++ b/xdg/com.github.persepolisdm.persepolis.appdata.xml
@@ -30,6 +30,7 @@
https://www.transifex.com/persepolis/persepolis-translations/
AliReza AmirSamimi
+