INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Info on MC32 builds  (Read 2624 times)

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13875
Info on MC32 builds
« on: January 19, 2024, 11:10:11 am »

We are continuing with debian Bullseye as the development environment so there are no changes for the required libraries from MC31.

This means that for Debian users, Bullseye is minimum required distribution. Bookworm works fine as well.
For non-Debian users, it mainly depends on the version of libc, which will now be 2.31 at a minimum.

Here are the basic required package versions:

libc6: 2.31
libasound2: 1.24
libuuid1: 2.33
libx11-6: 2:1.6
libxext6: 2:1.3
libxcb1: 1.2.162
libxdmcp6: 1:1.2.162
libstdc++6: 10.2.1
libgtk-3-0: 3.24
libgl1
libpango-1.0-0: 1.42 or libpango1.0-0: 1.42
libpangoft2-1.0-0: 1.42 or libpango-cairo-1.0-0: 1.42
libnss3: 2:3.61
libnspr4: 2:4.29
python: 2.7 or python2: 2.7 or python3
xdg-utils
libgomp1: 10.2.1
libfribidi0: 1.0.8
libfontconfig1: 2.13
libfreetype6: 2.10.4
libharfbuzz0b: 2.7.4
libgbm1: 20.3.5
libva2: 2.10.0
liblcms2-2: 2.12
libvulkan1: 1.2.162
mesa-vulkan-drivers
vulkan-icd
libwebkit2gtk-4.0-37

New for MC32 GTKWebKit is alternate browser choice in Options. This means all architectures will require libwebkit2gtk-4.0-37 to be installed.
Since Chromium no longer supports i386, GTKWebKit is the only choice on i386 distros.
Logged

max096

  • MC Beta Team
  • Galactic Citizen
  • *****
  • Posts: 363
Re: Info on MC32 builds
« Reply #1 on: January 20, 2024, 07:33:04 pm »

New for MC32 GTKWebKit is alternate browser choice in Options. This means all architectures will require libwebkit2gtk-4.0-37 to be installed.
Since Chromium no longer supports i386, GTKWebKit is the only choice on i386 distros.

My guess would have been you did that because of googles "3rd party" cookie deprecation (very easy to get into a situation where your own cookies are considered 3rd party by the browser). Not sure that applies to chromium aswell or just chrome, but Iīd imagine it would apply to both sooner or later. Would not have thought itīs because of i386. Are there people using such systems?

Does 'alternate browser choice' mean you still support both? Not entierly clear. In my docker container I have now removed all the things to make chromium work and installed libwebkit instead (for mc32 and up). Should I install both instead?
Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10944
Re: Info on MC32 builds
« Reply #2 on: January 21, 2024, 03:18:38 am »

Chromium remains the favored choice, its overall more featureful and up to date. They just stopped supporting 32-bit x86 Linux a long time ago. As should everyone, really.
Logged
~ nevcairiel
~ Author of LAV Filters

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13875
Re: Info on MC32 builds
« Reply #3 on: January 21, 2024, 10:00:52 am »

That said the GTKWebKit will work for most everything.
Chromium remains the default and will be downloaded even if it's not used since the JRWeb executable is linked against it and will not load unless libcef.so is present.
Logged

max096

  • MC Beta Team
  • Galactic Citizen
  • *****
  • Posts: 363
Re: Info on MC32 builds
« Reply #4 on: January 21, 2024, 10:28:20 pm »

Would be great if we did not need to install libwebkit2gtk then. Not building 32bit images anyways. The browser did not work on amd64 without it and now it appears it does not work on arm64. So gonna need to put back the dependencies for chromium. Not sure why libwebkit2gtk is needed when itīs not used anywhere. Would be better to load that in at runtime when needed.
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13875
Re: Info on MC32 builds
« Reply #5 on: January 22, 2024, 02:52:38 pm »

Would be great if we did not need to install libwebkit2gtk then. Not building 32bit images anyways. The browser did not work on amd64 without it and now it appears it does not work on arm64. So gonna need to put back the dependencies for chromium. Not sure why libwebkit2gtk is needed when itīs not used anywhere. Would be better to load that in at runtime when needed.
Same thing as Chromium. As long as the single JRWeb executable is allowed to provide either choice the shared libraries for both need to exist. It's not an issue for any standard distro because libwebkitgtk is always included.
Logged

max096

  • MC Beta Team
  • Galactic Citizen
  • *****
  • Posts: 363
Re: Info on MC32 builds
« Reply #6 on: January 22, 2024, 11:33:24 pm »

Same thing as Chromium. As long as the single JRWeb executable is allowed to provide either choice the shared libraries for both need to exist. It's not an issue for any standard distro because libwebkitgtk is always included.

Itīs not included in the debian-slim image by default. libwebkitgtk adds roughly 60mb to the image size. Mostly matters for download / unpack speed.

It might be included by default in the debian image without the -slim tag, but if you care about image size at all your only real choice is to start with a more minimal image and install stuff as needed. Uninstalling things after the fact will not make the image size any smaller because every run command in docker images is stored in itīs own layer. Those get sorta unpacked on top of each other when you deploy the image as a container. From a image size perspective you can hardly ever get rid of things, itīs much easier to add missing pieces starting from less. You will end up having it uninstalled in the container you deployed but still have the package use up space in the image you had to download and extract to deploy the container.

Thatīs just a quick aside as to why use the debian-slim image. I think itīs no big deal to have to install packages when required. This one just seems a little unnecessary. If there are a lot of architectural changes required on your part to make this work, itīs not the end of the world ofc.
Logged
Pages: [1]   Go Up