Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

File collisions and dependency hell #512

Closed
dangowrt opened this issue May 15, 2019 · 8 comments
Closed

File collisions and dependency hell #512

dangowrt opened this issue May 15, 2019 · 8 comments

Comments

@dangowrt
Copy link
Member

cooker failes complaining about both dnsmasq-lease-share and shared-state-dnsmasq_leases trying to install the same files:

 * check_data_file_clashes: Package dnsmasq-lease-share wants to install file /usr/src/lime-sdk/snapshot/ramips/mt7621/ib/build_dir/target-mipsel_24kc_musl/root-ramips/etc/uci-defaults/90_dnsmasq-lease-share
	But that file is already provided by package  * shared-state-dnsmasq_leases
 * check_data_file_clashes: Package dnsmasq-lease-share wants to install file /usr/src/lime-sdk/snapshot/ramips/mt7621/ib/build_dir/target-mipsel_24kc_musl/root-ramips/usr/bin/dnsmasq-lease-share.sh
	But that file is already provided by package  * shared-state-dnsmasq_leases
 * opkg_install_cmd: Cannot install package lime-full.

It wasn't that trivial for me to solve due to hard-dependencies introduced by the lime-full meta-package (which imho should be flattened-away and just use flavors instead, providing soft-dependencies instead).

@ilario
Copy link
Member

ilario commented May 15, 2019

[lime-full meta-package] should be flattened-away and just use flavors instead

Totally agree on that!!!

Just I have the doubt on what happens if we decide to support again the buildroot method (with make menuconfig) rather than lime-sdk: could we use flavors in that or we would need the meta-packages?

@dangowrt
Copy link
Member Author

@ilario we could easily provide a script to modify the buildroot's .config and select the packages of a flavor. The selection can then still be altered by the user using menuconfig.

@ilario
Copy link
Member

ilario commented May 16, 2019

Like that!
In case people using buildroot wanted to keep the meta-packages, we could still remove them from the flavors (replacing lime-full with the complete list of the packages it should pull).

@G10h4ck
Copy link
Member

G10h4ck commented May 16, 2019

I use the build-root but never liked those glue-packages, I am all to have them removed, the laziness to not read a list of packages in the documentation and select them depending on one needs, is not a good reason to keep that maintaining hell cruft around IMHO

@G10h4ck
Copy link
Member

G10h4ck commented May 16, 2019

also dnsmasq-lease-share and shared-state-dnsmasq_leases should never be installed together, IMHO the latter is the one that works out of the two

@ilario
Copy link
Member

ilario commented May 26, 2019

So, lime-full is gone.
Do we want to eliminate also lime-basic?
For each package we eliminate, we will have to remember to fix what was referencing to it.

@G10h4ck
Copy link
Member

G10h4ck commented May 26, 2019

Do we want to eliminate also lime-basic?

+1

@ilario
Copy link
Member

ilario commented Oct 3, 2019

We should update lime-basic (see #607) or delete it. Anyway the "dependency hell" is solved. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants