Skip to content

Commit b9d2b0f

Browse files
feat(Distro): add OpenSUSE support
Signed-off-by: Ahmed Al-Nassif <mr.ahmed.nassif@gmail.com>
1 parent 88da5f5 commit b9d2b0f

2 files changed

Lines changed: 22 additions & 3 deletions

File tree

Core/distro_manager.py

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -381,6 +381,22 @@ def supports_architecture(self, arch: str) -> bool:
381381
termux_arch = self._map_architecture(arch)
382382
return super().supports_architecture(termux_arch)
383383

384+
class OpenSUSE_Distribution(TermuxDistribution):
385+
def get_name(self) -> str:
386+
return "opensuse"
387+
388+
389+
def _map_architecture(self, arch: str) -> str:
390+
"""Map standard architecture to Termux-specific names"""
391+
termux_arch_map = {
392+
'arm64': 'aarch64',
393+
'x86_64': 'x86_64'
394+
}
395+
return termux_arch_map.get(arch, arch)
396+
397+
def supports_architecture(self, arch: str) -> bool:
398+
termux_arch = self._map_architecture(arch)
399+
return super().supports_architecture(termux_arch)
384400

385401
class AlpineDistribution(Distribution):
386402
"""Alpine Linux distribution"""
@@ -881,7 +897,8 @@ def __init__(self, fm: PyFManager, downloader: FileDownloader, console,
881897
"fedora",
882898
"void",
883899
"manjaro",
884-
"chimera"
900+
"chimera",
901+
"opensuse"
885902
]
886903
self.termux_distros_list = [
887904
DebianDistribution,
@@ -890,7 +907,8 @@ def __init__(self, fm: PyFManager, downloader: FileDownloader, console,
890907
FedoraDistribution,
891908
VoidDistribution,
892909
ManjaroDistribution,
893-
ChimeraDistribution
910+
ChimeraDistribution,
911+
OpenSUSE_Distribution
894912
]
895913

896914
self.distributions: Dict[str, Distribution] = self._initialize_distributions()

main.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,8 @@ def __init__(self):
9595
"fedora",
9696
"void",
9797
"manjaro",
98-
"chimera"
98+
"chimera",
99+
"opensuse"
99100
]
100101

101102

0 commit comments

Comments
 (0)