how to install a minimal wine?

Questions about Wine on Linux
Post Reply
desessarts
Level 3
Level 3
Posts: 67
Joined: Wed Oct 04, 2023 7:57 am

how to install a minimal wine?

Post by desessarts »

Hello

Debian12

if I install wine-devel 9.1, without suggested/recommended packages, I still get 2 004 MB installed.

Code: Select all

After this operation, 2004 MB of additional disk space will be used.
For example I am sure I will not need

Code: Select all

libgphoto2-6 libgphoto2-6:i386 libgphoto2-port12 libgphoto2-port12:i386
Is it possible to install a minimal wine?

Code: Select all

apt install --no-install-recommends --no-install-suggests winehq-devel
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  acl fontconfig fontconfig-config fonts-dejavu-core gcc-12-base:i386 iso-codes libabsl20220623 libabsl20220623:i386 libaom3 libaom3:i386 libasound2 libasound2:i386 libasound2-data libasound2-plugins
  libasound2-plugins:i386 libasyncns0 libasyncns0:i386 libavahi-client3 libavahi-client3:i386 libavahi-common-data libavahi-common-data:i386 libavahi-common3 libavahi-common3:i386 libavcodec59
  libavcodec59:i386 libavif15 libavif15:i386 libavutil57 libavutil57:i386 libblkid1:i386 libbrotli1 libbrotli1:i386 libbsd0 libbsd0:i386 libbz2-1.0:i386 libc6:i386 libcairo-gobject2 libcairo-gobject2:i386
  libcairo2 libcairo2:i386 libcap2:i386 libcap2-bin libcodec2-1.0 libcodec2-1.0:i386 libcom-err2:i386 libcrypt1:i386 libcurl3-gnutls libcurl3-gnutls:i386 libcurl4 libcurl4:i386 libdatrie1 libdatrie1:i386
  libdav1d6 libdav1d6:i386 libdb5.3:i386 libdbus-1-3 libdbus-1-3:i386 libde265-0 libde265-0:i386 libdeflate0 libdeflate0:i386 libdrm-common libdrm2 libdrm2:i386 libdw1 libdw1:i386 libelf1 libelf1:i386
  libexif12 libexif12:i386 libexpat1 libexpat1:i386 libffi8:i386 libflac12 libflac12:i386 libfontconfig1 libfontconfig1:i386 libfreetype6 libfreetype6:i386 libfribidi0 libfribidi0:i386 libgav1-1 libgav1-1:i386
  libgcc-s1:i386 libgcrypt20:i386 libgd3 libgd3:i386 libgdbm-compat4 libgdbm-compat4:i386 libgdbm6 libgdbm6:i386 libgdk-pixbuf-2.0-0 libgdk-pixbuf-2.0-0:i386 libgdk-pixbuf2.0-common libglib2.0-0
  libglib2.0-0:i386 libgmp10:i386 libgnutls30:i386 libgomp1 libgomp1:i386 libgpg-error0:i386 libgphoto2-6 libgphoto2-6:i386 libgphoto2-port12 libgphoto2-port12:i386 libgraphite2-3 libgraphite2-3:i386 libgsm1
  libgsm1:i386 libgssapi-krb5-2 libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0 libgstreamer-plugins-base1.0-0:i386 libgstreamer1.0-0 libgstreamer1.0-0:i386 libharfbuzz0b libharfbuzz0b:i386 libheif1
  libheif1:i386 libhogweed6:i386 libhwy1 libhwy1:i386 libicu72 libicu72:i386 libidn2-0:i386 libieee1284-3 libieee1284-3:i386 libjack-jackd2-0 libjack-jackd2-0:i386 libjbig0 libjbig0:i386 libjpeg62-turbo
  libjpeg62-turbo:i386 libjxl0.7 libjxl0.7:i386 libk5crypto3 libk5crypto3:i386 libkeyutils1 libkeyutils1:i386 libkmod2 libkrb5-3 libkrb5-3:i386 libkrb5support0 libkrb5support0:i386 liblcms2-2 liblcms2-2:i386
  libldap-2.5-0 libldap-2.5-0:i386 liblerc4 liblerc4:i386 libltdl7 libltdl7:i386 liblz4-1:i386 liblzma5:i386 libmd0:i386 libmfx1 libmount1:i386 libmp3lame0 libmp3lame0:i386 libmpg123-0 libmpg123-0:i386
  libncurses6 libncurses6:i386 libnettle8:i386 libnghttp2-14 libnghttp2-14:i386 libnsl2 libnsl2:i386 libnspr4 libnspr4:i386 libnss3 libnss3:i386 libnuma1 libnuma1:i386 libogg0 libogg0:i386 libopenjp2-7
  libopenjp2-7:i386 libopus0 libopus0:i386 liborc-0.4-0 liborc-0.4-0:i386 libp11-kit0:i386 libpango-1.0-0 libpango-1.0-0:i386 libpangocairo-1.0-0 libpangocairo-1.0-0:i386 libpangoft2-1.0-0
  libpangoft2-1.0-0:i386 libpcap0.8 libpcap0.8:i386 libpci3 libpci3:i386 libpcre2-8-0:i386 libpcsclite1 libpcsclite1:i386 libperl5.36 libperl5.36:i386 libpixman-1-0 libpixman-1-0:i386 libpng16-16
  libpng16-16:i386 libpoppler-glib8 libpoppler-glib8:i386 libpoppler126 libpoppler126:i386 libpsl5:i386 libpulse0 libpulse0:i386 librav1e0 librav1e0:i386 librsvg2-2 librsvg2-2:i386 librtmp1 librtmp1:i386
  libsamplerate0 libsamplerate0:i386 libsane-common libsane1 libsane1:i386 libsasl2-2 libsasl2-2:i386 libsasl2-modules-db libsasl2-modules-db:i386 libselinux1:i386 libsensors-config libsensors5
  libsensors5:i386 libshine3 libshine3:i386 libsnappy1v5 libsnappy1v5:i386 libsndfile1 libsndfile1:i386 libsnmp-base libsnmp40 libsnmp40:i386 libsoxr0 libsoxr0:i386 libspeex1 libspeex1:i386 libspeexdsp1
  libspeexdsp1:i386 libsqlite3-0 libsqlite3-0:i386 libssh2-1 libssh2-1:i386 libssl3:i386 libstdc++6:i386 libsvtav1enc1 libsvtav1enc1:i386 libswresample4 libswresample4:i386 libsystemd0:i386 libtasn1-6:i386
  libthai-data libthai0 libthai0:i386 libtheora0 libtheora0:i386 libtiff6 libtiff6:i386 libtinfo6:i386 libtirpc-common libtirpc3 libtirpc3:i386 libtwolame0 libtwolame0:i386 libudev1:i386 libunistring2:i386
  libunwind8 libunwind8:i386 libusb-1.0-0 libusb-1.0-0:i386 libva-drm2 libva-drm2:i386 libva-x11-2 libva-x11-2:i386 libva2 libva2:i386 libvdpau1 libvdpau1:i386 libvorbis0a libvorbis0a:i386 libvorbisenc2
  libvorbisenc2:i386 libvpx7 libvpx7:i386 libwayland-client0 libwayland-client0:i386 libwebp7 libwebp7:i386 libwebpmux3 libwebpmux3:i386 libwrap0 libwrap0:i386 libx11-6 libx11-6:i386 libx11-data libx11-xcb1
  libx11-xcb1:i386 libx264-164 libx264-164:i386 libx265-199 libx265-199:i386 libxau6 libxau6:i386 libxcb-dri3-0 libxcb-dri3-0:i386 libxcb-render0 libxcb-render0:i386 libxcb-shm0 libxcb-shm0:i386 libxcb1
  libxcb1:i386 libxdmcp6 libxdmcp6:i386 libxext6 libxext6:i386 libxfixes3 libxfixes3:i386 libxkbcommon0 libxkbcommon0:i386 libxkbregistry0 libxkbregistry0:i386 libxml2 libxml2:i386 libxpm4 libxpm4:i386
  libxrender1 libxrender1:i386 libxvidcore4 libxvidcore4:i386 libyuv0 libyuv0:i386 libzstd1:i386 libzvbi-common libzvbi0 libzvbi0:i386 ocl-icd-libopencl1 ocl-icd-libopencl1:i386 pci.ids perl-modules-5.36
  shared-mime-info udev wine-devel wine-devel-amd64 wine-devel-i386:i386 xkb-data zlib1g:i386
Suggested packages:
  isoquery alsa-utils libcuda1 libnvcuvid1 libnvidia-encode1 libcuda1:i386 libnvcuvid1:i386 libnvidia-encode1:i386 glibc-doc:i386 libc-l10n:i386 locales:i386 libnss-nis:i386 libnss-nisplus:i386 rng-tools:i386
  libgd-tools libgd-tools:i386 gdbm-l10n gdbm-l10n:i386 low-memory-monitor low-memory-monitor:i386 gnutls-bin:i386 gphoto2 gphoto2:i386 krb5-doc krb5-user krb5-doc:i386 krb5-user:i386 libvisual-0.4-plugins
  libvisual-0.4-plugins:i386 gstreamer1.0-tools gstreamer1.0-tools:i386 jackd2 jackd2:i386 liblcms2-utils liblcms2-utils:i386 cryptsetup-bin:i386 opus-tools opus-tools:i386 pcscd pcscd:i386 sensible-utils
  sensible-utils:i386 pulseaudio pulseaudio:i386 librsvg2-bin librsvg2-bin:i386 avahi-daemon hplip avahi-daemon:i386 hplip:i386 lm-sensors lm-sensors:i386 snmp-mibs-downloader speex speex:i386 opencl-icd
  opencl-icd:i386
Recommended packages:
  alsa-ucm-conf alsa-topology-conf libpam-cap dbus dbus:i386 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-bin:i386 libglib2.0-data xdg-user-dirs libglib2.0-data:i386 xdg-user-dirs:i386 libgpg-error-l10n:i386
  libgphoto2-l10n libgphoto2-l10n:i386 gstreamer1.0-plugins-base gstreamer1.0-plugins-base:i386 krb5-locales krb5-locales:i386 libldap-common libldap-common:i386 libgpm2 libgpm2:i386 poppler-data
  poppler-data:i386 librsvg2-common librsvg2-common:i386 sane-airscan sane-utils ipp-usb sane-airscan:i386 sane-utils:i386 ipp-usb:i386 libsasl2-modules libsasl2-modules:i386 va-driver-all | va-driver
  va-driver-all:i386 | va-driver:i386 vdpau-driver-all | vdpau-driver vdpau-driver-all:i386 | vdpau-driver:i386 perl libcups2 libglu1-mesa | libglu1 libodbc2 | libodbc1 libosmesa6 libsdl2-2.0-0 libv4l-0
  libxcomposite1 libxcursor1 libxi6 libxinerama1 libxrandr2 libxxf86vm1 libcups2:i386 libglu1-mesa:i386 | libglu1:i386 libodbc2:i386 | libodbc1:i386 libosmesa6:i386 libsdl2-2.0-0:i386 libv4l-0:i386
  libxcomposite1:i386 libxcursor1:i386 libxi6:i386 libxinerama1:i386 libxrandr2:i386 libxxf86vm1:i386
The following NEW packages will be installed:
  acl fontconfig fontconfig-config fonts-dejavu-core gcc-12-base:i386 iso-codes libabsl20220623 libabsl20220623:i386 libaom3 libaom3:i386 libasound2 libasound2:i386 libasound2-data libasound2-plugins
  libasound2-plugins:i386 libasyncns0 libasyncns0:i386 libavahi-client3 libavahi-client3:i386 libavahi-common-data libavahi-common-data:i386 libavahi-common3 libavahi-common3:i386 libavcodec59
  libavcodec59:i386 libavif15 libavif15:i386 libavutil57 libavutil57:i386 libblkid1:i386 libbrotli1 libbrotli1:i386 libbsd0 libbsd0:i386 libbz2-1.0:i386 libc6:i386 libcairo-gobject2 libcairo-gobject2:i386
  libcairo2 libcairo2:i386 libcap2:i386 libcap2-bin libcodec2-1.0 libcodec2-1.0:i386 libcom-err2:i386 libcrypt1:i386 libcurl3-gnutls libcurl3-gnutls:i386 libcurl4 libcurl4:i386 libdatrie1 libdatrie1:i386
  libdav1d6 libdav1d6:i386 libdb5.3:i386 libdbus-1-3 libdbus-1-3:i386 libde265-0 libde265-0:i386 libdeflate0 libdeflate0:i386 libdrm-common libdrm2 libdrm2:i386 libdw1 libdw1:i386 libelf1 libelf1:i386
  libexif12 libexif12:i386 libexpat1 libexpat1:i386 libffi8:i386 libflac12 libflac12:i386 libfontconfig1 libfontconfig1:i386 libfreetype6 libfreetype6:i386 libfribidi0 libfribidi0:i386 libgav1-1 libgav1-1:i386
  libgcc-s1:i386 libgcrypt20:i386 libgd3 libgd3:i386 libgdbm-compat4 libgdbm-compat4:i386 libgdbm6 libgdbm6:i386 libgdk-pixbuf-2.0-0 libgdk-pixbuf-2.0-0:i386 libgdk-pixbuf2.0-common libglib2.0-0
  libglib2.0-0:i386 libgmp10:i386 libgnutls30:i386 libgomp1 libgomp1:i386 libgpg-error0:i386 libgphoto2-6 libgphoto2-6:i386 libgphoto2-port12 libgphoto2-port12:i386 libgraphite2-3 libgraphite2-3:i386 libgsm1
  libgsm1:i386 libgssapi-krb5-2 libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0 libgstreamer-plugins-base1.0-0:i386 libgstreamer1.0-0 libgstreamer1.0-0:i386 libharfbuzz0b libharfbuzz0b:i386 libheif1
  libheif1:i386 libhogweed6:i386 libhwy1 libhwy1:i386 libicu72 libicu72:i386 libidn2-0:i386 libieee1284-3 libieee1284-3:i386 libjack-jackd2-0 libjack-jackd2-0:i386 libjbig0 libjbig0:i386 libjpeg62-turbo
  libjpeg62-turbo:i386 libjxl0.7 libjxl0.7:i386 libk5crypto3 libk5crypto3:i386 libkeyutils1 libkeyutils1:i386 libkmod2 libkrb5-3 libkrb5-3:i386 libkrb5support0 libkrb5support0:i386 liblcms2-2 liblcms2-2:i386
  libldap-2.5-0 libldap-2.5-0:i386 liblerc4 liblerc4:i386 libltdl7 libltdl7:i386 liblz4-1:i386 liblzma5:i386 libmd0:i386 libmfx1 libmount1:i386 libmp3lame0 libmp3lame0:i386 libmpg123-0 libmpg123-0:i386
  libncurses6 libncurses6:i386 libnettle8:i386 libnghttp2-14 libnghttp2-14:i386 libnsl2 libnsl2:i386 libnspr4 libnspr4:i386 libnss3 libnss3:i386 libnuma1 libnuma1:i386 libogg0 libogg0:i386 libopenjp2-7
  libopenjp2-7:i386 libopus0 libopus0:i386 liborc-0.4-0 liborc-0.4-0:i386 libp11-kit0:i386 libpango-1.0-0 libpango-1.0-0:i386 libpangocairo-1.0-0 libpangocairo-1.0-0:i386 libpangoft2-1.0-0
  libpangoft2-1.0-0:i386 libpcap0.8 libpcap0.8:i386 libpci3 libpci3:i386 libpcre2-8-0:i386 libpcsclite1 libpcsclite1:i386 libperl5.36 libperl5.36:i386 libpixman-1-0 libpixman-1-0:i386 libpng16-16
  libpng16-16:i386 libpoppler-glib8 libpoppler-glib8:i386 libpoppler126 libpoppler126:i386 libpsl5:i386 libpulse0 libpulse0:i386 librav1e0 librav1e0:i386 librsvg2-2 librsvg2-2:i386 librtmp1 librtmp1:i386
  libsamplerate0 libsamplerate0:i386 libsane-common libsane1 libsane1:i386 libsasl2-2 libsasl2-2:i386 libsasl2-modules-db libsasl2-modules-db:i386 libselinux1:i386 libsensors-config libsensors5
  libsensors5:i386 libshine3 libshine3:i386 libsnappy1v5 libsnappy1v5:i386 libsndfile1 libsndfile1:i386 libsnmp-base libsnmp40 libsnmp40:i386 libsoxr0 libsoxr0:i386 libspeex1 libspeex1:i386 libspeexdsp1
  libspeexdsp1:i386 libsqlite3-0 libsqlite3-0:i386 libssh2-1 libssh2-1:i386 libssl3:i386 libstdc++6:i386 libsvtav1enc1 libsvtav1enc1:i386 libswresample4 libswresample4:i386 libsystemd0:i386 libtasn1-6:i386
  libthai-data libthai0 libthai0:i386 libtheora0 libtheora0:i386 libtiff6 libtiff6:i386 libtinfo6:i386 libtirpc-common libtirpc3 libtirpc3:i386 libtwolame0 libtwolame0:i386 libudev1:i386 libunistring2:i386
  libunwind8 libunwind8:i386 libusb-1.0-0 libusb-1.0-0:i386 libva-drm2 libva-drm2:i386 libva-x11-2 libva-x11-2:i386 libva2 libva2:i386 libvdpau1 libvdpau1:i386 libvorbis0a libvorbis0a:i386 libvorbisenc2
  libvorbisenc2:i386 libvpx7 libvpx7:i386 libwayland-client0 libwayland-client0:i386 libwebp7 libwebp7:i386 libwebpmux3 libwebpmux3:i386 libwrap0 libwrap0:i386 libx11-6 libx11-6:i386 libx11-data libx11-xcb1
  libx11-xcb1:i386 libx264-164 libx264-164:i386 libx265-199 libx265-199:i386 libxau6 libxau6:i386 libxcb-dri3-0 libxcb-dri3-0:i386 libxcb-render0 libxcb-render0:i386 libxcb-shm0 libxcb-shm0:i386 libxcb1
  libxcb1:i386 libxdmcp6 libxdmcp6:i386 libxext6 libxext6:i386 libxfixes3 libxfixes3:i386 libxkbcommon0 libxkbcommon0:i386 libxkbregistry0 libxkbregistry0:i386 libxml2 libxml2:i386 libxpm4 libxpm4:i386
  libxrender1 libxrender1:i386 libxvidcore4 libxvidcore4:i386 libyuv0 libyuv0:i386 libzstd1:i386 libzvbi-common libzvbi0 libzvbi0:i386 ocl-icd-libopencl1 ocl-icd-libopencl1:i386 pci.ids perl-modules-5.36
  shared-mime-info udev wine-devel wine-devel-amd64 wine-devel-i386:i386 winehq-devel xkb-data zlib1g:i386
0 upgraded, 351 newly installed, 0 to remove and 0 not upgraded.
Need to get 374 MB of archives.
After this operation, 2004 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
desessarts
Level 3
Level 3
Posts: 67
Joined: Wed Oct 04, 2023 7:57 am

Re: how to install a minimal wine?

Post by desessarts »

before you ask, yes the idea is to have wine in a docker container launching Captvty

https://captvty.fr/
jkfloris
Level 12
Level 12
Posts: 3141
Joined: Thu Aug 14, 2014 10:10 am

Re: how to install a minimal wine?

Post by jkfloris »

You can try creating a dummy package for the dependencies you don't need.
https://wiki.debian.org/Packaging/HackingDependencies

Or you can compile Wine with only the parts you need.
https://wiki.winehq.org/Building_Wine
desessarts
Level 3
Level 3
Posts: 67
Joined: Wed Oct 04, 2023 7:57 am

Re: how to install a minimal wine?

Post by desessarts »

2 interesting ideas, thanks JK Floris
Post Reply