Install this version:
emerge -a =games-engines/butterscotch-9999
If this version is masked, you can unmask it using the autounmask tool or standard emerge options:
autounmask =games-engines/butterscotch-9999
Or alternatively:
emerge --autounmask-write -a =games-engines/butterscotch-9999
| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 9999 | 8 | 0 |
# Copyright 2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake git-r3
DESCRIPTION="An open source re-implementation of GameMaker: Studio's runner (YoYo Runner)"
HOMEPAGE="https://github.com/ButterscotchRunner/Butterscotch"
EGIT_REPO_URI="https://github.com/ButterscotchRunner/Butterscotch.git"
# From android source: Apache-2.0 public-domain BZIP2 MIT MPL-2.0 RSA Unlicense
# From printf compat: MIT
# From vendor: BZIP2 public-domain MIT ZLIB
LICENSE="AGPL-3"
LICENSE+=" Apache-2.0 public-domain BZIP2 MIT MPL-2.0 RSA Unlicense ZLIB"
SLOT="0"
# TODO: system-miniaudio system-box2d system-stb system-bzip2 system-miniz
IUSE="+ffmpeg minimal asan sdl2 sdl3 +glfw3 +box2d +reproducible +wad14 +wad16 +wad17 fmod +tinyfd"
REQUIRED_USE="
minimal? ( !ffmpeg !fmod !sdl2 !sdl3 !glfw3 )
!minimal? ( ^^ ( sdl2 sdl3 glfw3 ) )
|| ( wad14 wad16 wad17 )
"
# TODO: system-box2d? ( games-engines/box2d ) system-miniaudio? ( dev-libs/miniaudio ) system-stb? ( dev-libs/stb ) system-bzip2? ( app-alternatives/bzip2 ) system-miniz? ( dev-libs/miniz )
DEPEND="
ffmpeg? ( media-video/ffmpeg )
sdl2? ( media-libs/libsdl2 )
sdl3? ( media-libs/libsdl3 )
glfw3? ( media-libs/glfw )
"
BDEPEND="${DEPEND}"
RDEPEND="${DEPEND}"
RESTRICT="test"
src_configure() {
# minimal
local my_backend="noop"
if use sdl2; then
my_backend="sdl2"
elif use sdl3; then
my_backend="sdl3"
elif use glfw3; then
my_backend="glfw3"
fi
local mycmakeargs=(
-DENABLE_NOOP_RENDERER=$(usex minimal)
-DVIDEO_BACKEND=$(usex ffmpeg ffmpeg none)
-DENABLE_ASAN=$(usex asan)
-DENABLE_PHYSICS=$(usex box2d)
-DENABLE_WAD14=$(usex wad14)
-DENABLE_WAD16=$(usex wad16)
-DENABLE_WAD17=$(usex wad17)
-DENABLE_FMOD=$(usex fmod)
-DENABLE_FILE_PICKER=$(usex tinyfd)
-DBACKEND="${my_backend}"
)
if use reproducible; then
mycmakeargs+=(
-DBUTTERSCOTCH_COMMIT_HASH="unknown"
-DBUTTERSCOTCH_COMMIT_DATE="unknown"
)
fi
cmake_src_configure
}
src_install() {
# ninja: error: unknown target 'install'
dobin "${BUILD_DIR}/butterscotch"
dodoc README.md
}
Manage flags for this package:
euse -i <flag> -p games-engines/butterscotch |
euse -E <flag> -p games-engines/butterscotch |
euse -D <flag> -p games-engines/butterscotch
ffmpeg? ( media-video/ffmpeg ) sdl2? ( media-libs/libsdl2 ) sdl3? ( media-libs/libsdl3 ) glfw3? ( media-libs/glfw )
ffmpeg? ( media-video/ffmpeg ) sdl2? ( media-libs/libsdl2 ) sdl3? ( media-libs/libsdl3 ) glfw3? ( media-libs/glfw )
ffmpeg? ( media-video/ffmpeg ) sdl2? ( media-libs/libsdl2 ) sdl3? ( media-libs/libsdl3 ) glfw3? ( media-libs/glfw )