diff --git a/py2pack/__init__.py b/py2pack/__init__.py index 0ab29c4..d90aea9 100755 --- a/py2pack/__init__.py +++ b/py2pack/__init__.py @@ -41,6 +41,18 @@ import libarchive except ModuleNotFoundError: libarchive = None + +DEFAULT_TEMPLATE = 'opensuse.spec' +try: + import distro + DEFAULT_TEMPLATE = { + 'fedora' : 'fedora.spec', + 'debian' : 'opensuse.dsc', + 'mageia' : 'mageia.spec' + }.get(distro.id(), DEFAULT_TEMPLATE) +except ModuleNotFoundError: + pass + import io @@ -530,7 +542,7 @@ def main(): parser_generate.add_argument('--source-glob', help='source glob template') parser_generate.add_argument('--local', action='store_true', help='build from local package') parser_generate.add_argument('--localfile', default='', help='path to the local PKG-INFO or json metadata') - parser_generate.add_argument('-t', '--template', choices=file_template_list(), default='opensuse.spec', help='file template') + parser_generate.add_argument('-t', '--template', choices=file_template_list(), default=DEFAULT_TEMPLATE, help='file template') parser_generate.add_argument('-f', '--filename', help='spec filename (optional)') # TODO (toabctl): remove this is a later release parser_generate.add_argument( diff --git a/pyproject.toml b/pyproject.toml index fe090ff..ce3b706 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -28,6 +28,8 @@ classifiers = [ ] dependencies = [ "Jinja2", + "distro", + "libarchive-c", "backports.entry_points_selectable", "build", "setuptools", @@ -38,6 +40,7 @@ dependencies = [ "requests", "tomli; python_version < '3.11'", ] + requires-python = ">=3.6" dynamic = ['version'] @@ -45,6 +48,12 @@ dynamic = ['version'] [project.urls] homepage = "http://github.com/openSUSE/py2pack" +[project.optional-dependencies] +service = [ + "libarchive-c", + "distro", +] + [project.scripts] py2pack = "py2pack:main"