Skip to content

cascade of metapackages kills modularity #331

@dangowrt

Description

@dangowrt

I'm trying to use lime with something else than the usual combination of bmx6+batman-adv.
However, this is currently nearly impossible because of a cascade of meta-packages which pull-in a lot of packages via their dependencies. I tried crafting a flavor with bmx7-only and failed because the current approach of meta-packages and flavors was left behind in the past when we were still always building everything from source. When using the ImageBuilder, things like

DEPENDS:=+PACKAGE_lime-proto-bmx6:luci-app-bmx6

won't work because CONFIG_PACKAGE_lime-proto-bmx6=m no matter if the user actually intended to use bmx6 at all.

Hence I suggest to entirely drop all optional things from the lime-basic, lime-full, lime-mini, lime-webui, ... packages. Those packages can then be pulled in via the dependencies of a community-profile-package of a community which makes use of them. In that way, modularity can be restored and selecting lime-basic or lime-webui won't automatically pull-in potentially unwanted packages.
I'm not only talking about routing protocols and autogw stuff, but also things like lime-hwd-openwrt-wan which I went through difficult loops only in order to finally get rid of it.

What do you think?
@aparcar @p4u @nicoechaniz @altergui @G10h4ck

If you agree, I'll start working on a PR to remove all protocol-specific or somehow optional dependencies from the meta-packages.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions