Commit graph

21 commits

Author SHA1 Message Date
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
lat9nq
4439b95fb1 linux-fresh: add avcodec, avutil, and swscale library headers 2020-09-27 15:24:40 -04:00
Morph
6e5efdd94a
Add qttools5-dev and qttools5-dev-tools for translation support (#13)
* Add qttools5-dev and qttools5-dev-tools for translation support

* Remove qttools5-dev-tools as it's already a dependency of qttools5-dev
2020-07-19 13:26:50 +02:00
James Rowe
2f78410b2b Update the docker images to run as yuzu user (UID 1027) 2020-05-07 21:12:25 -06:00
James Rowe
58cb2114b5 Use the libstdc++11 libcxx for conan and include libzip in the base image 2020-05-06 00:28:32 -06:00
James Rowe
4fe0ebbd8f Add new system libraries and install some additional libraries through conan 2020-05-06 00:11:36 -06:00
James Rowe
48dc64253f Combine RUN statements into one and remove shell expansion 2020-04-30 22:39:10 -06:00
James Rowe
affcece6a6 Remove any leftover apt caches 2020-04-24 21:52:57 -06:00
James Rowe
4bf0830796 Update build envs to ubunto 20.04. Change mingw build env to arch 2020-04-24 18:12:02 -06:00
chris062689
8a43699577 Initial addition of build-environment files. 2019-03-22 20:27:11 -04:00