mirror of
https://gitlab.com/dslackw/slpkg.git
synced 2025-02-07 08:46:21 +01:00
Merged is_installed method
Signed-off-by: Dimitris Zlatanidis <d.zlatanidis@gmail.com>
This commit is contained in:
parent
80afbdcd42
commit
01454c8093
4 changed files with 29 additions and 21 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
4.3.7 - 09/12/2022
|
||||||
|
Updated:
|
||||||
|
- Merge method is_installed in utilities
|
||||||
|
|
||||||
4.3.6 - 08/12/2022
|
4.3.6 - 08/12/2022
|
||||||
Fixed:
|
Fixed:
|
||||||
- Remove packages
|
- Remove packages
|
||||||
|
|
|
@ -6,6 +6,7 @@ import os
|
||||||
from slpkg.configs import Configs
|
from slpkg.configs import Configs
|
||||||
from slpkg.queries import SBoQueries
|
from slpkg.queries import SBoQueries
|
||||||
from slpkg.blacklist import Blacklist
|
from slpkg.blacklist import Blacklist
|
||||||
|
from slpkg.utilities import Utilities
|
||||||
|
|
||||||
|
|
||||||
class Check:
|
class Check:
|
||||||
|
@ -36,15 +37,14 @@ class Check:
|
||||||
if 'UNSUPPORTED' in sources:
|
if 'UNSUPPORTED' in sources:
|
||||||
raise SystemExit(f"\nPackage '{sbo}' unsupported by arch.\n")
|
raise SystemExit(f"\nPackage '{sbo}' unsupported by arch.\n")
|
||||||
|
|
||||||
def installed(self, slackbuilds: list):
|
@staticmethod
|
||||||
|
def installed(slackbuilds: list):
|
||||||
""" Checking for installed packages. """
|
""" Checking for installed packages. """
|
||||||
found, not_found = [], []
|
found, not_found = [], []
|
||||||
|
utils = Utilities()
|
||||||
|
|
||||||
for sbo in slackbuilds:
|
for sbo in slackbuilds:
|
||||||
for package in os.listdir(self.configs.log_packages):
|
found.append((utils.is_installed(sbo)))
|
||||||
pkg = '-'.join(package.split('-')[:-3])
|
|
||||||
if sbo == pkg and package.endswith(self.configs.sbo_repo_tag):
|
|
||||||
found.append(sbo)
|
|
||||||
|
|
||||||
for sbo in slackbuilds:
|
for sbo in slackbuilds:
|
||||||
if sbo not in found:
|
if sbo not in found:
|
||||||
|
|
|
@ -8,17 +8,20 @@ import tarfile
|
||||||
|
|
||||||
|
|
||||||
from slpkg.configs import Configs
|
from slpkg.configs import Configs
|
||||||
|
from slpkg.blacklist import Blacklist
|
||||||
|
|
||||||
|
|
||||||
class Utilities:
|
class Utilities:
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.configs = Configs
|
self.configs = Configs
|
||||||
|
self.black = Blacklist()
|
||||||
|
|
||||||
def is_installed(self, package: str):
|
def is_installed(self, name: str):
|
||||||
""" Returns True if a package is installed. """
|
""" Returns the installed package name. """
|
||||||
for pkg in os.listdir(self.configs.log_packages):
|
for package in os.listdir(self.configs.log_packages):
|
||||||
if package in pkg:
|
pkg = '-'.join(package.split('-')[:-3])
|
||||||
|
if pkg == name and self.configs.sbo_repo_tag in package and pkg not in self.black.get():
|
||||||
return pkg
|
return pkg
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
|
|
|
@ -68,7 +68,7 @@ class ViewMessage:
|
||||||
print('The following packages will be removed:\n')
|
print('The following packages will be removed:\n')
|
||||||
slackbuilds, dependencies, deps = [], [], []
|
slackbuilds, dependencies, deps = [], [], []
|
||||||
for pkg in packages:
|
for pkg in packages:
|
||||||
self._view_installed_packages(pkg)
|
self._view_removed(pkg)
|
||||||
slackbuilds.append(pkg)
|
slackbuilds.append(pkg)
|
||||||
|
|
||||||
requires = self.session.query(
|
requires = self.session.query(
|
||||||
|
@ -83,7 +83,7 @@ class ViewMessage:
|
||||||
|
|
||||||
for i in range(0, len(deps)):
|
for i in range(0, len(deps)):
|
||||||
for dep in deps[i][0].split():
|
for dep in deps[i][0].split():
|
||||||
self._view_installed_packages(dep)
|
self._view_removed(dep)
|
||||||
dependencies.append(dep)
|
dependencies.append(dep)
|
||||||
|
|
||||||
self._view_total(slackbuilds, dependencies, option='remove')
|
self._view_total(slackbuilds, dependencies, option='remove')
|
||||||
|
@ -94,7 +94,7 @@ class ViewMessage:
|
||||||
""" View packages for download only. """
|
""" View packages for download only. """
|
||||||
color = self.colors()
|
color = self.colors()
|
||||||
|
|
||||||
if self.utils.is_installed(f'{sbo}-'):
|
if self.utils.is_installed(sbo):
|
||||||
print(f'[{color["yellow"]} download {color["endc"]}] -> '
|
print(f'[{color["yellow"]} download {color["endc"]}] -> '
|
||||||
f'{sbo}-{version}')
|
f'{sbo}-{version}')
|
||||||
else:
|
else:
|
||||||
|
@ -105,7 +105,7 @@ class ViewMessage:
|
||||||
""" View packages for build. """
|
""" View packages for build. """
|
||||||
color = self.colors()
|
color = self.colors()
|
||||||
|
|
||||||
if self.utils.is_installed(f'{sbo}-'):
|
if self.utils.is_installed(sbo):
|
||||||
print(f'[{color["yellow"]} build {color["endc"]}] -> '
|
print(f'[{color["yellow"]} build {color["endc"]}] -> '
|
||||||
f'{sbo}-{version}')
|
f'{sbo}-{version}')
|
||||||
else:
|
else:
|
||||||
|
@ -116,7 +116,7 @@ class ViewMessage:
|
||||||
""" View the packages for install. """
|
""" View the packages for install. """
|
||||||
color = self.colors()
|
color = self.colors()
|
||||||
|
|
||||||
installed = self.utils.is_installed(f'{sbo}-')
|
installed = self.utils.is_installed(sbo)
|
||||||
install, set_color = 'install', color['red']
|
install, set_color = 'install', color['red']
|
||||||
|
|
||||||
if '--reinstall' in self.flags:
|
if '--reinstall' in self.flags:
|
||||||
|
@ -138,14 +138,15 @@ class ViewMessage:
|
||||||
print(f'[{color["cyan"]} install {color["endc"]}] -> '
|
print(f'[{color["cyan"]} install {color["endc"]}] -> '
|
||||||
f'{sbo}-{version}')
|
f'{sbo}-{version}')
|
||||||
|
|
||||||
def _view_installed_packages(self, name: str):
|
def _view_removed(self, name: str):
|
||||||
""" View and creates list with packages for remove. """
|
""" View and creates list with packages for remove. """
|
||||||
installed = os.listdir(self.configs.log_packages)
|
installed = os.listdir(self.configs.log_packages)
|
||||||
color = self.colors()
|
color = self.colors()
|
||||||
|
|
||||||
|
if self.utils.is_installed(name):
|
||||||
for package in installed:
|
for package in installed:
|
||||||
pkg = '-'.join(package.split('-')[:-3])
|
pkg = '-'.join(package.split('-')[:-3])
|
||||||
if pkg == name and self.configs.sbo_repo_tag in package and pkg not in self.black.get():
|
if pkg == name:
|
||||||
self.installed_packages.append(package)
|
self.installed_packages.append(package)
|
||||||
print(f'[{color["red"]} delete {color["endc"]}] -> {package}')
|
print(f'[{color["red"]} delete {color["endc"]}] -> {package}')
|
||||||
|
|
||||||
|
@ -157,7 +158,7 @@ class ViewMessage:
|
||||||
installed = upgraded = 0
|
installed = upgraded = 0
|
||||||
|
|
||||||
for sbo in slackbuilds:
|
for sbo in slackbuilds:
|
||||||
if self.utils.is_installed(f'{sbo}-'):
|
if self.utils.is_installed(sbo):
|
||||||
upgraded += 1
|
upgraded += 1
|
||||||
else:
|
else:
|
||||||
installed += 1
|
installed += 1
|
||||||
|
|
Loading…
Add table
Reference in a new issue