Package Details: yuzu-mainline-git r13387.fd606531e-1

Git Clone URL: https://aur.archlinux.org/yuzu-mainline-git.git (read-only, click to copy)
Package Base: yuzu-mainline-git
Description: An experimental open-source Nintendo Switch emulator/debugger
Upstream URL: https://github.com/yuzu-emu/yuzu-mainline
Keywords: emulator game qt switch
Licenses: GPL2
Conflicts: yuzu-canary-git, yuzu-git
Provides: yuzu, yuzu-cmd
Submitter: bscubed
Maintainer: bscubed
Last Packager: bscubed
Votes: 9
Popularity: 1.27
First Submitted: 2019-11-24 04:03
Last Updated: 2020-01-06 20:51

Pinned Comments

bscubed commented on 2019-11-24 17:42

If you're wondering what happened to yuzu-canary-git, read more here https://yuzu-emu.org/entry/yuzu-migration/ TL;DR: yuzu canary and yuzu nightly are being replaced by a single package, yuzu-mainline. This is the mainline build and contains untested, bleeding-edge features over yuzu stable.

bscubed commented on 2018-11-12 01:49

Some things to note: This is an unofficial package, thus is not officially supported by the Yuzu team. Please don't ask for help on their forums or discord if you run into issues with this build, as it might devote import development resources to a bug that might have to do with running Yuzu on an unofficial platform. If you encounter an issue, feel free to comment on this package and I'll try to point you in the right direction.

Also, this build is in active development. Builds might break every once in a while.

If you're looking for the QT version of this package, it has now been merged in this package. No need for two packages anymore, and no need to compile everything twice.

Thanks for using my package and have a nice day! :)

Latest Comments

1 2 3 Next › Last »

Terence commented on 2019-12-31 01:54

Hey I made a draft to include the submodules within makepkg so they do not get downloaded each time src is cleared: (Also please unset the executable bit of the PKGBUILD)

# Maintainer: Brendan Szymanski <bscubed@pm.me>

_pkgname=yuzu
pkgname=$_pkgname-mainline-git
pkgver=r13317.d2e5e38e5
pkgrel=1
pkgdesc="An experimental open-source Nintendo Switch emulator/debugger"
arch=('i686' 'x86_64')
url="https://github.com/yuzu-emu/yuzu-mainline"
license=('GPL2')
provides=('yuzu' 'yuzu-cmd')
conflicts=('yuzu-git' 'yuzu-canary-git')
depends=('shared-mime-info' 'desktop-file-utils' 'sdl2' 'qt5-base' 'qt5-multimedia' 'qt5-tools' 'libxkbcommon-x11' 'libfdk-aac')
makedepends=('git' 'cmake' 'python2')
optdepends=('qt5-wayland: for Wayland support')
source=("$_pkgname::git+git+https://github.com/yuzu-emu/yuzu-mainline"
                "inih::git+https://github.com/svn2github/inih"
                "boost::git+https://github.com/yuzu-emu/ext-boost"
                "catch::git+https://github.com/philsquared/Catch"
                "cubeb::git+https://github.com/kinetiknz/cubeb"
                "dynarmic::git+https://github.com/MerryMage/dynarmic"
                "fmt::git+https://github.com/fmtlib/fmt"
                "lz4::git+https://github.com/lz4/lz4"
                "unicorn::git+https://github.com/yuzu-emu/unicorn"
                "mbedtls::git+https://github.com/DarkLordZach/mbedtls"
                "opus::git+https://github.com/xiph/opus"
                "soundtouch::git+https://github.com/citra-emu/ext-soundtouch"
                "libressl::git+https://github.com/citra-emu/ext-libressl-portable"
                "discord-rpc::git+https://github.com/discordapp/discord-rpc"
                "Vulkan-Headers::git+https://github.com/KhronosGroup/Vulkan-Headers"
                "zstd::git+https://github.com/facebook/zstd"
                "sirit::git+https://github.com/ReinUsesLisp/sirit"
                "libzip::git+https://github.com/nih-at/libzip"
                "zlib::git+https://github.com/madler/zlib"
                )
md5sums=('SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP'
         'SKIP')

pkgver() {
    cd "$srcdir/$_pkgname"
    echo "r$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
}

prepare() {
    cd "$srcdir/$_pkgname"

    git submodule init
    for mod_url in ${source[@]:2}
    do
        mod_name=${mod_url%%:*}
        git config submodule.$mod_name.url $srcdir/$mod_name
    done

    git submodule update --init --recursive 

}

build() {
    # Trick the compiler into thinking we're building from a continuous
    # integration tool so the build number is correctly shown in the title
    cd "$srcdir/$_pkgname"
    export CI=true
    export TRAVIS=true
    export TRAVIS_REPO_SLUG=yuzu-emu/yuzu-mainline
    export TRAVIS_TAG=$(git describe --tags)

    # Hopefully temporary fix for a compilation error involving fmt
    CXXFLAGS+=" -DFMT_USE_USER_DEFINED_LITERALS=0"

    mkdir -p build && cd build
    cmake .. \
      -DCMAKE_INSTALL_PREFIX=/usr \
      -DCMAKE_BUILD_TYPE=Release \
      -DYUZU_USE_BUNDLED_UNICORN=ON \
      -DYUZU_ENABLE_COMPATIBILITY_REPORTING=ON \
      -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON \
      -DUSE_DISCORD_PRESENCE=ON \
    -DENABLE_VULKAN=ON
    make
}

check() {
    cd "$srcdir/$_pkgname/build"
    make test
}

package() {
    cd "$srcdir/$_pkgname/build"
    make DESTDIR="$pkgdir/" install

    # Temporary fix until yuzu fixes the zlib and libzip patch
    cd "$pkgdir/usr"
    rm -rf include lib lib64 share/man share/pkgconfig
}

gee commented on 2019-11-27 06:46

Actually it did not install because of yuzu-canary-git, so I guess replaces is not enough it needs to conflict with it too.

gee commented on 2019-11-27 05:23

Sorry for the wrong idea, I indeed had to manually switch packages. :/

bscubed commented on 2019-11-27 05:20

@gee A good idea! Unfortunately, the replaces keyword doesn't work for AUR packages. I think the only solution is to have users manually upgrade. If there's another workaround, I'd be happy to hear it. https://bbs.archlinux.org/viewtopic.php?id=213750

gee commented on 2019-11-25 02:54

I wonder if a provides/replaces in the PKGBUILD would be a good idea, as it is people not following yuzu will just stay on the old package for ever and might be confused why it is not available anymore.

bscubed commented on 2019-11-24 17:42

If you're wondering what happened to yuzu-canary-git, read more here https://yuzu-emu.org/entry/yuzu-migration/ TL;DR: yuzu canary and yuzu nightly are being replaced by a single package, yuzu-mainline. This is the mainline build and contains untested, bleeding-edge features over yuzu stable.

gee commented on 2019-11-24 04:39

That makes sense, thank you for the explanation!

bscubed commented on 2019-11-24 03:16

@gee To be honest, it confuses me as well. From what the yuzu devs told me, yuzu canary and yuzu nightly are being replaced by a single package, yuzu-mainline. I am told that the canary branch is still being updated to provide a fallback while the migration to mainline occurs. That being said, I converted this package to mainline for the time being, but I plan on renaming this package to yuzu-mainline-git in the future.

gee commented on 2019-11-20 03:02

Hello,

I'm utterly confused. Which git is now the correct for the previous canary one? yuzu-canary, used here, is still seeing commits, but so is yuzu-mainline linked on the blog.

CyberConan commented on 2019-11-01 11:18

Hi! Only report than compilation fails if boost package from extra repository is installed.