Bugfixed install noarch packages

This commit is contained in:
Dimitris Zlatanidis 2022-06-24 21:16:10 +03:00
parent bd699df5ab
commit 20c4b2a9a8
3 changed files with 18 additions and 6 deletions

View file

@ -1,3 +1,7 @@
4.1.2 - 24/06/2022
Bugfixed:
- Installing noarch packages
4.1.1 - 23/06/2022 4.1.1 - 23/06/2022
Updated: Updated:
- Cli menu view with colors - Cli menu view with colors

View file

@ -148,9 +148,13 @@ class Slackbuilds:
''' Creating a list with all the finished packages for ''' Creating a list with all the finished packages for
installation. installation.
''' '''
build_tag = self.utils.build_tag(self.build_path, name) build_tag, arch = self.utils.read_dot_slackbuild(self.build_path, name)
version = SBoQueries(name).version() version = SBoQueries(name).version()
return (f'{name}-{version}-{self.os_arch}-{build_tag[0]}'
if not arch:
arch = self.os_arch
return (f'{name}-{version}-{arch}-{build_tag[0]}'
f'{self.repo_tag}{self.pkg_suffix}') f'{self.repo_tag}{self.pkg_suffix}')
def execute_the_script(self, path: str, name: str): def execute_the_script(self, path: str, name: str):

View file

@ -16,18 +16,22 @@ from slpkg.configs import Configs
class Utilities: class Utilities:
log_packages: str = Configs.log_packages log_packages: str = Configs.log_packages
def build_tag(self, path: str, name: str): def read_dot_slackbuild(self, path: str, name: str):
''' Opens the .SlackBuild file and reads the BUILD TAG. ''' ''' Opens the .SlackBuild file and reads the BUILD TAG and ARCH. '''
folder = f'{path}/{name}' folder = f'{path}/{name}'
slackbuild = f'{name}.SlackBuild' slackbuild = f'{name}.SlackBuild'
if os.path.isfile(f'{folder}/{slackbuild}'): if os.path.isfile(f'{folder}/{slackbuild}'):
with open(f'{folder}/{slackbuild}', 'r', encoding='utf-8') as sbo: with open(f'{folder}/{slackbuild}', 'r', encoding='utf-8') as sbo:
lines = sbo.readlines() lines = sbo.read().splitlines()
build_tag = arch = ''
for line in lines: for line in lines:
if line.startswith('BUILD'): if line.startswith('BUILD'):
return re.findall(r'\d+', line) build_tag = re.findall(r'\d+', line)
if line.startswith('ARCH'):
arch = line.replace('ARCH=', '')
return build_tag, arch
def untar_archive(self, path: str, archive: str, ext_path: str): def untar_archive(self, path: str, archive: str, ext_path: str):
''' Untar the file to the build folder. ''' ''' Untar the file to the build folder. '''