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

[Linux] deb/dpkg package should not depend on libmpv-dev #387

Open
psychonaut opened this issue Jan 6, 2023 · 6 comments
Open

[Linux] deb/dpkg package should not depend on libmpv-dev #387

psychonaut opened this issue Jan 6, 2023 · 6 comments
Assignees
Labels
bug Something isn't working

Comments

@psychonaut
Copy link

Describe the bug
DEB package should not depend on libmpv-dev but on libmpv2. Packages that are not development libraries should not depend on -dev packages because it creates huge, necessary dependencies.

Expected behavior

libmpv2 is a sufficient dependency.

@psychonaut psychonaut added the bug Something isn't working label Jan 6, 2023
@alexmercerind alexmercerind changed the title deb/dpkg package should not depend on libmpv-dev [Linux] deb/dpkg package should not depend on libmpv-dev Jan 6, 2023
@alexmercerind
Copy link
Member

So, does that mean I should only depend on libmpv2 & not mpv & libmpv-dev like I've done right now?
Celluloid also seems to only depend on libmpv2.

Thanks a lot!
I will get this over the line quicky along few other urgent changes.

@psychonaut
Copy link
Author

Exactly, unless you directly use mpv as binary libmpv2 is enough.

@alexmercerind
Copy link
Member

So... It seems that libmpv2 isn't available on my distribution (& likely many others) & it's called libmpv1.

This situation creates ambiguity. While depending directly upon libmpv-dev automatically transitively resolves the correct shared library package i.e. libmpv2 or libmpv1. I think it's the safest move for now.

Additionally, AFAIK libmpv-dev only adds additional headers for download (which I believe is fine; few KBs).

@psychonaut
Copy link
Author

Not really,

apt install libmpv-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libass-dev libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev libbluray-dev libcaca-dev libcdio-cdda-dev libcdio-dev libcdio-paranoia-dev libdecor-0-dev libdvdnav-dev
  libdvdread-dev libepoxy-dev libffmpeg-nvenc-dev libfribidi-dev libgraphite2-dev libharfbuzz-dev libharfbuzz-gobject0 libharfbuzz-subset0 libibus-1.0-dev libice-dev liblcms2-dev liblua5.2-dev libmpv2
  libmujs-dev libpipewire-0.3-dev libplacebo-dev libpostproc-dev libpulse-dev librubberband-dev libsamplerate0-dev libsdl2-dev libset-scalar-perl libsixel-dev libslang2-dev libsm-dev libsndio-dev
  libspa-0.2-dev libspirv-cross-c-shared-dev libspirv-cross-c-shared0 libswresample-dev libswscale-dev libtool-bin libuchardet-dev libudfread-dev libva-dev libva-glx2 libvdpau-dev libvulkan-dev
  libxcursor-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbcommon-dev libxpresent-dev libxrandr-dev libxrender-dev libxss-dev libxt-dev libxv-dev libxxf86vm-dev libzimg-dev
  wayland-protocols
Suggested packages:
  libdvdcss-dev libgraphite2-utils libice-doc pipewire-doc libsm-doc libvdpau-doc libxext-doc libxt-doc
The following NEW packages will be installed:
  libass-dev libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev libbluray-dev libcaca-dev libcdio-cdda-dev libcdio-dev libcdio-paranoia-dev libdecor-0-dev libdvdnav-dev
  libdvdread-dev libepoxy-dev libffmpeg-nvenc-dev libfribidi-dev libgraphite2-dev libharfbuzz-dev libharfbuzz-gobject0 libharfbuzz-subset0 libibus-1.0-dev libice-dev liblcms2-dev liblua5.2-dev libmpv-dev
  libmpv2 libmujs-dev libpipewire-0.3-dev libplacebo-dev libpostproc-dev libpulse-dev librubberband-dev libsamplerate0-dev libsdl2-dev libset-scalar-perl libsixel-dev libslang2-dev libsm-dev libsndio-dev
  libspa-0.2-dev libspirv-cross-c-shared-dev libspirv-cross-c-shared0 libswresample-dev libswscale-dev libtool-bin libuchardet-dev libudfread-dev libva-dev libva-glx2 libvdpau-dev libvulkan-dev
  libxcursor-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbcommon-dev libxpresent-dev libxrandr-dev libxrender-dev libxss-dev libxt-dev libxv-dev libxxf86vm-dev libzimg-dev
  wayland-protocols
0 upgraded, 67 newly installed, 0 to remove and 0 not upgraded.
Need to get 28.3 MB of archives.
After this operation, 120 MB of additional disk space will be used.
Do you want to continue? [Y/n] 

it actually means that many packages and 28.3MB

I can see that libmpv2 is in Debian unstable/testing so it will be released in the next stable ubuntu and derivatives.

I think it's possible that actually it should be libmpv1 which is also available but it would need some investigation to check.

@alexmercerind
Copy link
Member

I thought about getting this out with today's update, but I kind of lost it when I couldn't locate libmpv2. 😄
libmpv-dev seemed the safest approach for now. Let's see what can be done.

@psychonaut
Copy link
Author

I think a usable package with not perfect dependencies is still better than no package at all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants