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

stop using repo2solv #534

Open
dcermak opened this issue Mar 18, 2024 · 4 comments
Open

stop using repo2solv #534

dcermak opened this issue Mar 18, 2024 · 4 comments

Comments

@dcermak
Copy link

dcermak commented Mar 18, 2024

libzypp depends on libsolv-tools due to a single line of code where repo2solv is invoked:

cmd.push_back( PathInfo( "/usr/bin/repo2solv" ).isFile() ? "repo2solv" : "repo2solv.sh" );

Would it be possible to drop this external call and use parts of libsolv directly? I know that https://github.com/openSUSE/libsolv/blob/master/tools/repo2solv.c is not exactly small, but maybe not all of its functionality is absolutely required?

This would allow us to make our containers a bit smaller by dropping the libsolv-tools dependency entirely.

@bzeller
Copy link
Contributor

bzeller commented Mar 19, 2024

Since we are currently rewriting code to be executed async we'd need to build our own repo2solv binary ( libsolv has no thread support )... which probably would not be smaller than the one we are currently shipping..

@bzeller
Copy link
Contributor

bzeller commented Mar 19, 2024

Once we are there we can try and build a binary that only does what we want and links libsolv directly and see if its smaller.

@mlandres
Copy link
Member

We're currently using repo2solv and rpmdb2solv. And we wan't dumpsolv to be available on the system.
(we may depend on mergesolv in the future)

Maybe @mlschroe likes to split a few things into a basic libsolv-tools and move the stuff also covered by repo2solv into an extra package (updateinfoxml2solv, susetags2solv, rpmmd2solv, rpms2solv, helix2solv, deltainfoxml2solv..)

@lnussel
Copy link
Member

lnussel commented Mar 27, 2024

libsolv could also expose those features as library function

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

4 participants