Commit Graph
20 Commits
Author SHA1 Message Date
lat9nq 8b8acfb24b fresh: Add patchelf
Required for lat9nq/deploy linux deploy script.
2022-09-24 16:17:36 -04:00
lat9nq 1fbb7a6a68 mingw: Use a variable to target ext libraries
Also modifies a comment. This is all to make it more readable, and also
force Docker to give the container new commit tags and rebuild it, since
the root certificates have expired.
2021-09-30 20:01:22 -04:00
lat9nq bd491190e7 fresh: Update to Qt 5.15.2
This also installs everything in one command so as to make pulling the
image download less data.

Primarily this was started to refresh the container, since the root
certificates for connecting to the internet (for things such as Conan)
have expired.
2021-09-30 19:40:04 -04:00
lat9nq 4210e1e613 mingw: Use ext-linux-bin for select packages
Defers to our own repo for MinGW libraries. Required to build yuzu in a
manner that does not crash.
2021-09-23 20:11:23 -04:00
lat9nq 87c73e5b5d mingw: Patch GLIBC due to running in an old environment
Dockerhub appears to use either an old version of docker or something,
and it is incompatible with an Arch Linux guest.
2021-05-31 04:13:50 -04:00
lat9nq ce32fc5a16 mingw: Delete 32 bit binaries
We don't use them, no reason to keep them. Removes mingw-w64-ffmpeg --
it never worked, and we no longer use it. And we don't use python2 any
more.
2021-05-31 03:59:42 -04:00
lat9nq af5acc630c linux-mingw: Remove Conan packages
This opts to not install the yuzu dependencies from Conan, since this
happens again at build time regardless of installing them here.

Also prevents removing the /tmp directory, to not break building
packages later.
2021-05-30 22:05:42 -04:00
lat9nq 3146cfd659 fresh: Add hidapi 0.10.1 from ext-linux-bin
libhidapi-dev from Bionic repositories is too old for our needs.
Download and install a binary package for hidapi manually from
yuzu-emu/ext-linux-bin.

This also adds a number of packages required to compile hidapi. Needed
for producing new hidapi packages in the future.
2021-05-10 13:53:22 -04:00
lat9nq 63316f3e0a fresh: Remove Conan usage
Installing packages here does nothing: the container just re-downloads
them at CMake configure time. So skip installing them altogether.
2021-05-09 23:48:29 -04:00
lat9nq 627de07f96 linux-fresh: Install Boost manually
Manually install Boost using a pre-built package. Works around an issue
with the zlib Conan package failing to build with Clang.
2021-03-25 20:32:39 -04:00
lat9nq 670d16de7c fresh: Add package qt(512)wayland
Adds the qt[version]wayland package to linux-fresh. Required to run the
AppImage on Wayland.
2021-02-23 01:18:45 -05:00
lat9nq 1c37df5677 linux-fresh: Set DEBIAN_FRONTEND as environment variable
Prevents repeating the same code text over and over each time apt-get is
used. This is a required variable to use apt-get in a non-interactive
container, so it should be set globally, anyways.
2021-02-18 01:22:58 -05:00
lat9nq 63478434b8 linux-fresh: Add Clang 12 from llvm.org
Adds the Clang compiler from apt.llvm.org to linux-fresh. The intention
is to run two instances of linux-fresh when checking CI on yuzu, one
compiles with GCC and the other with Clang.

This includes a workaround in Conan where the default configuration file
is not set up to permit using Clang 12. settings.yml is there to allow
using Clang 12.
2021-02-18 01:16:18 -05:00
lat9nq c47cdf2ee8 linux-fresh: Add package nasm
Adds nasm to linux-fresh so that FFmpeg can be compiled.
2021-02-05 22:34:25 -05:00
lat9nq 6f0ed60b4d linux-fresh: Add package 'zsync'
Soft-requirement to embed update information into AppImages. Requirement
to create the actual update files.
2021-01-06 12:40:09 -05:00
lat9nq 8d8fddaf4e linux-fresh: Downgrade to Bionic Beaver
This is in preparation to have a legal AppImage when Ubuntu 16.04 is
deprecated in April 2021. As stated in [AppImage's
documentation](https://docs.appimage.org/packaging-guide/distribution.html#appimagehub),
to distribute yuzu on AppImageHub, an AppImage needs to compatible with
the oldest still supported release of Ubuntu, which will be 18.04 in
April.

Beyond making AppImages, this brings a number of other changes:
- The needed CMake, GCC, and Qt versions are now variables at the top of
  the Dockerfile.
- The dependencies list is sorted lexicographically.
- Added package `file`, required for the Qt linuxdeploy plugin, thus
  superseding #23.
- Added package `software-properties-common`, required to use
  `add-apt-repository`.
- Added package `python3-setuptools`, a dependency of `python3-pip` that
  somehow isn't installed with it by default.
- Removed package `python` as yuzu no longer uses Unicorn, thus Python 2
  was no longer required.
- Moved installing GCC, Qt, FFmpeg, and SDL2 from the main Ubuntu
  repositories to updated launchpad repositories.
- Removed packages `cmake` and `glslang-tools`, instead opting to
  download and install them from their upstream repositories.
  - In the case of `glslang-tools`, Ubuntu does not have any equivalent
    package for Bionic.

This does not upgrade any package versions. This only brings Ubuntu
18.04 roughly to parity with the current 20.04 container. Once an
AppImage is in action, we can upgrade the GCC and Qt versions to our
heart's content (up to GCC 11 and Qt 5.15.2). Until then, it should be
said **Mainline builds are not compatible with Ubuntu versions below
20.04 despite using 18.04 to build yuzu**. We need an AppImage to make
yuzu compatible with older distro releases, and we need an AppImage to
make yuzu compatible with current releases if we upgrade Qt and/or GCC.

Another note is that the Qt version here is being downgraded from 5.12.8
to 5.12.6. The Qt launchpad PPA used here did not release usable
`qt512webengine` packages for 5.12.8 nor 5.12.7, and since upgrading to
5.12.10 would break compatibility with wild Ubuntu 20.04 installs, a
downgrade is necessary. Hopefully this is a temporary change during our
transition to 5.15.2.

Massive thank you to @AniLeo from RPCS3 for telling me about updated GCC
and Qt launchpad PPAs.
2020-12-29 18:54:48 -05:00
lat9nq cbbee60824 linux-fresh: Install Boost through Conan
Ubuntu 20.04's version of Boost (1.71.0) is older than yuzu's minimum requirement
(1.73.0). Thus the container was downloading Boost through conan each
time it builds yuzu.

Instead, install Boost through Conan ahead of time, as opposed to
installed effectively garbage.
2020-12-08 17:48:32 -05:00
lat9nq 0a9e0ecccc linux: Add glslang and glslang-utils to mingw and fresh containers
...respectively. Required for TCR.
2020-11-19 19:57:56 -05:00
lat9nq 9854161ae7 linux-fresh: Remove unneeded rapidjson dependency.
Raptor client leftover that is no longer needed.
2020-11-18 01:20:28 -05:00
lat9nq 6a14e3f5d0 linux-fresh: Update to GCC 10.2
While we're at it, also update conan packages.
Required for texture cache updates.
2020-11-18 01:18:38 -05:00