mirror of
https://gitlab.com/dslackw/slpkg.git
synced 2025-01-19 10:27:07 +01:00
Updated for view
This commit is contained in:
parent
9e88a4b4c6
commit
3010692861
1 changed files with 73 additions and 51 deletions
|
@ -41,64 +41,20 @@ class ViewMessage(Configs):
|
||||||
self.option_for_yes: bool = self.utils.is_option(
|
self.option_for_yes: bool = self.utils.is_option(
|
||||||
['-y', '--yes'], flags)
|
['-y', '--yes'], flags)
|
||||||
|
|
||||||
def view_packages(self, package: str, mode: str) -> None:
|
|
||||||
size: str = str()
|
|
||||||
color: str = self.endc
|
|
||||||
repository: str = self.repository
|
|
||||||
|
|
||||||
if mode == 'remove':
|
|
||||||
installed = self.utils.is_package_installed(package)
|
|
||||||
pkg: list = self.utils.split_binary_pkg(installed)
|
|
||||||
version: str = pkg[1]
|
|
||||||
repo_tag: str = pkg[4]
|
|
||||||
size: str = self.utils.get_file_size(Path(self.log_packages, installed))
|
|
||||||
repository = repo_tag.lower().replace('_', '')
|
|
||||||
|
|
||||||
elif self.is_binary:
|
|
||||||
version: str = self.data[package][0]
|
|
||||||
# size: str = self.utils.convert_file_sizes(int(self.data[package][4])) <- It's going to replace with this
|
|
||||||
size: str = self.utils.convert_file_sizes(
|
|
||||||
int(''.join(re.findall(r'\d+', self.data[package][4]))))
|
|
||||||
else:
|
|
||||||
version: str = self.data[package][2]
|
|
||||||
|
|
||||||
# Default highlight colors for all modes
|
|
||||||
if mode == 'remove':
|
|
||||||
color: str = self.red
|
|
||||||
if mode in ['install', 'download']:
|
|
||||||
color: str = self.cyan
|
|
||||||
if mode == 'build':
|
|
||||||
color: str = self.yellow
|
|
||||||
if mode == 'upgrade':
|
|
||||||
color: str = self.violet
|
|
||||||
package: str = self.build_package_and_version(package)
|
|
||||||
|
|
||||||
if mode == 'install':
|
|
||||||
# Change the colors for install mode
|
|
||||||
if self.utils.is_package_installed(package):
|
|
||||||
color: str = self.grey
|
|
||||||
if self.upgrade.is_package_upgradeable(package):
|
|
||||||
color: str = self.violet
|
|
||||||
if self.utils.is_package_installed(package) and self.option_for_reinstall:
|
|
||||||
color: str = self.violet
|
|
||||||
package: str = self.build_package_and_version(package)
|
|
||||||
|
|
||||||
self.ascii.draw_view_package(package, version, size, color, repository)
|
|
||||||
|
|
||||||
def build_packages(self, slackbuilds: list, dependencies: list) -> None:
|
def build_packages(self, slackbuilds: list, dependencies: list) -> None:
|
||||||
""" View packages for build only. """
|
""" View packages for build only. """
|
||||||
mode = 'build'
|
mode = 'build'
|
||||||
self.ascii.draw_package_title_box('The following packages will be build:', 'slpkg build packages')
|
self.ascii.draw_package_title_box('The following packages will be build:', 'slpkg build packages')
|
||||||
|
|
||||||
for sbo in slackbuilds:
|
for sbo in slackbuilds:
|
||||||
self.view_packages(sbo, mode=mode)
|
self.view_build_package(sbo)
|
||||||
|
|
||||||
if dependencies:
|
if dependencies:
|
||||||
self.ascii.draw_middle_line()
|
self.ascii.draw_middle_line()
|
||||||
self.ascii.draw_dependency_line()
|
self.ascii.draw_dependency_line()
|
||||||
|
|
||||||
for sbo in dependencies:
|
for sbo in dependencies:
|
||||||
self.view_packages(sbo, mode=mode)
|
self.view_build_package(sbo)
|
||||||
|
|
||||||
self.summary(slackbuilds, dependencies, option=mode)
|
self.summary(slackbuilds, dependencies, option=mode)
|
||||||
|
|
||||||
|
@ -111,14 +67,14 @@ class ViewMessage(Configs):
|
||||||
self.ascii.draw_package_title_box('The following packages will be installed or upgraded:', title)
|
self.ascii.draw_package_title_box('The following packages will be installed or upgraded:', title)
|
||||||
|
|
||||||
for pkg in packages:
|
for pkg in packages:
|
||||||
self.view_packages(pkg, mode)
|
self.view_install_upgrade_package(pkg, mode)
|
||||||
|
|
||||||
if dependencies:
|
if dependencies:
|
||||||
self.ascii.draw_middle_line()
|
self.ascii.draw_middle_line()
|
||||||
self.ascii.draw_dependency_line()
|
self.ascii.draw_dependency_line()
|
||||||
|
|
||||||
for pkg in dependencies:
|
for pkg in dependencies:
|
||||||
self.view_packages(pkg, mode)
|
self.view_install_upgrade_package(pkg, mode)
|
||||||
|
|
||||||
self.summary(packages, dependencies, option=mode)
|
self.summary(packages, dependencies, option=mode)
|
||||||
|
|
||||||
|
@ -130,7 +86,7 @@ class ViewMessage(Configs):
|
||||||
'slpkg download packages')
|
'slpkg download packages')
|
||||||
|
|
||||||
for sbo in slackbuilds:
|
for sbo in slackbuilds:
|
||||||
self.view_packages(sbo, mode)
|
self.view_download_package(sbo)
|
||||||
|
|
||||||
self.summary(slackbuilds, dependencies=[], option=mode)
|
self.summary(slackbuilds, dependencies=[], option=mode)
|
||||||
|
|
||||||
|
@ -140,17 +96,83 @@ class ViewMessage(Configs):
|
||||||
self.ascii.draw_package_title_box('The following packages will be removed:',
|
self.ascii.draw_package_title_box('The following packages will be removed:',
|
||||||
'slpkg remove packages')
|
'slpkg remove packages')
|
||||||
for pkg in packages:
|
for pkg in packages:
|
||||||
self.view_packages(pkg, mode)
|
self.view_remove_package(pkg)
|
||||||
|
|
||||||
if dependencies:
|
if dependencies:
|
||||||
self.ascii.draw_middle_line()
|
self.ascii.draw_middle_line()
|
||||||
self.ascii.draw_dependency_line()
|
self.ascii.draw_dependency_line()
|
||||||
|
|
||||||
for pkg in dependencies:
|
for pkg in dependencies:
|
||||||
self.view_packages(pkg, mode)
|
self.view_remove_package(pkg)
|
||||||
|
|
||||||
self.summary(packages, dependencies, option=mode)
|
self.summary(packages, dependencies, option=mode)
|
||||||
|
|
||||||
|
def view_build_package(self, package):
|
||||||
|
size: str = str()
|
||||||
|
color: str = self.yellow
|
||||||
|
|
||||||
|
if self.is_binary:
|
||||||
|
version: str = self.data[package][0]
|
||||||
|
# size: str = self.utils.convert_file_sizes(int(self.data[package][4])) <- It's going to replace with this
|
||||||
|
size: str = self.utils.convert_file_sizes(
|
||||||
|
int(''.join(re.findall(r'\d+', self.data[package][4]))))
|
||||||
|
else:
|
||||||
|
version: str = self.data[package][2]
|
||||||
|
|
||||||
|
self.ascii.draw_view_package(package, version, size, color, self.repository)
|
||||||
|
|
||||||
|
def view_install_upgrade_package(self, package, mode):
|
||||||
|
size: str = str()
|
||||||
|
color: str = self.cyan
|
||||||
|
installed: str = self.utils.is_package_installed(package)
|
||||||
|
upgradable: bool = self.upgrade.is_package_upgradeable(package)
|
||||||
|
|
||||||
|
if self.is_binary:
|
||||||
|
version: str = self.data[package][0]
|
||||||
|
# size: str = self.utils.convert_file_sizes(int(self.data[package][4])) <- It's going to replace with this
|
||||||
|
size: str = self.utils.convert_file_sizes(
|
||||||
|
int(''.join(re.findall(r'\d+', self.data[package][4]))))
|
||||||
|
else:
|
||||||
|
version: str = self.data[package][2]
|
||||||
|
|
||||||
|
if mode == 'upgrade':
|
||||||
|
color: str = self.violet
|
||||||
|
package: str = self.build_package_and_version(package)
|
||||||
|
|
||||||
|
if installed:
|
||||||
|
color: str = self.grey
|
||||||
|
if upgradable:
|
||||||
|
color: str = self.violet
|
||||||
|
if installed and self.option_for_reinstall:
|
||||||
|
color: str = self.violet
|
||||||
|
package: str = self.build_package_and_version(package)
|
||||||
|
|
||||||
|
self.ascii.draw_view_package(package, version, size, color, self.repository)
|
||||||
|
|
||||||
|
def view_download_package(self, package):
|
||||||
|
size: str = str()
|
||||||
|
color: str = self.cyan
|
||||||
|
|
||||||
|
if self.is_binary:
|
||||||
|
version: str = self.data[package][0]
|
||||||
|
# size: str = self.utils.convert_file_sizes(int(self.data[package][4])) <- It's going to replace with this
|
||||||
|
size: str = self.utils.convert_file_sizes(
|
||||||
|
int(''.join(re.findall(r'\d+', self.data[package][4]))))
|
||||||
|
else:
|
||||||
|
version: str = self.data[package][2]
|
||||||
|
|
||||||
|
self.ascii.draw_view_package(package, version, size, color, self.repository)
|
||||||
|
|
||||||
|
def view_remove_package(self, package):
|
||||||
|
installed = self.utils.is_package_installed(package)
|
||||||
|
pkg: list = self.utils.split_binary_pkg(installed)
|
||||||
|
version: str = pkg[1]
|
||||||
|
repo_tag: str = pkg[4]
|
||||||
|
size: str = self.utils.get_file_size(Path(self.log_packages, installed))
|
||||||
|
repository = repo_tag.lower().replace('_', '')
|
||||||
|
|
||||||
|
self.ascii.draw_view_package(package, version, size, self.red, repository)
|
||||||
|
|
||||||
def logs_packages(self, dependencies: list) -> None:
|
def logs_packages(self, dependencies: list) -> None:
|
||||||
""" View the logging packages. """
|
""" View the logging packages. """
|
||||||
print('The following logs will be removed:\n')
|
print('The following logs will be removed:\n')
|
||||||
|
|
Loading…
Reference in a new issue