mirror of
https://github.com/kittywitch/nixfiles.git
synced 2026-02-09 04:19:19 -08:00
meep
This commit is contained in:
parent
e397317701
commit
dae0b6cbcd
8 changed files with 18 additions and 489 deletions
|
|
@ -1,324 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
buildFHSEnv,
|
||||
lutris-unwrapped,
|
||||
extraLinkLines ? '''',
|
||||
extraPkgs ? pkgs: [ ],
|
||||
extraLibraries ? pkgs: [ ],
|
||||
steamSupport ? true,
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
qt5Deps =
|
||||
pkgs: with pkgs.qt5; [
|
||||
qtbase
|
||||
qtmultimedia
|
||||
];
|
||||
qt6Deps = pkgs: with pkgs.qt6; [ qtbase ];
|
||||
gnomeDeps =
|
||||
pkgs: with pkgs; [
|
||||
zenity
|
||||
gtksourceview
|
||||
gnome-desktop
|
||||
libgnome-keyring
|
||||
webkitgtk_4_1
|
||||
];
|
||||
xorgDeps =
|
||||
pkgs: with pkgs.xorg; [
|
||||
libX11
|
||||
libXrender
|
||||
libXrandr
|
||||
libxcb
|
||||
libXmu
|
||||
libpthreadstubs
|
||||
libXext
|
||||
libXdmcp
|
||||
libXxf86vm
|
||||
libXinerama
|
||||
libSM
|
||||
libXv
|
||||
libXaw
|
||||
libXi
|
||||
libXcursor
|
||||
libXcomposite
|
||||
libXfixes
|
||||
libXtst
|
||||
libXScrnSaver
|
||||
libICE
|
||||
libXt
|
||||
];
|
||||
gstreamerDeps =
|
||||
pkgs: with pkgs.gst_all_1; [
|
||||
gstreamer
|
||||
gst-plugins-base
|
||||
gst-plugins-good
|
||||
gst-plugins-ugly
|
||||
gst-plugins-bad
|
||||
gst-libav
|
||||
];
|
||||
|
||||
in
|
||||
buildFHSEnv {
|
||||
pname = "lutris";
|
||||
inherit (lutris-unwrapped) version;
|
||||
|
||||
runScript = "lutris";
|
||||
|
||||
# Many native and WINE games need 32bit
|
||||
multiArch = true;
|
||||
|
||||
targetPkgs =
|
||||
pkgs:
|
||||
with pkgs;
|
||||
[
|
||||
lutris-unwrapped
|
||||
|
||||
# Appimages
|
||||
fuse
|
||||
|
||||
# Adventure Game Studio
|
||||
allegro
|
||||
dumb
|
||||
|
||||
# Battle.net
|
||||
jansson
|
||||
|
||||
# Curl
|
||||
libnghttp2
|
||||
|
||||
# Desmume
|
||||
lua
|
||||
agg
|
||||
soundtouch
|
||||
openal
|
||||
desktop-file-utils
|
||||
atk
|
||||
|
||||
# DGen // TODO: libarchive is broken
|
||||
|
||||
# Dolphin
|
||||
bluez
|
||||
ffmpeg_6
|
||||
gettext
|
||||
portaudio
|
||||
miniupnpc
|
||||
mbedtls_2
|
||||
lzo
|
||||
sfml
|
||||
gsm
|
||||
wavpack
|
||||
orc
|
||||
nettle
|
||||
gmp
|
||||
pcre
|
||||
vulkan-loader
|
||||
zstd
|
||||
|
||||
# DOSBox
|
||||
SDL_net
|
||||
SDL_sound
|
||||
|
||||
# GOG
|
||||
glib-networking
|
||||
|
||||
# Higan // TODO: "higan is not available for the x86_64 architecture"
|
||||
|
||||
# Libretro
|
||||
fluidsynth
|
||||
hidapi
|
||||
libgbm
|
||||
libdrm
|
||||
|
||||
# MAME
|
||||
fontconfig
|
||||
SDL2_ttf
|
||||
|
||||
# Mednafen
|
||||
libglut
|
||||
mesa_glu
|
||||
|
||||
# MESS
|
||||
expat
|
||||
|
||||
# Minecraft
|
||||
nss
|
||||
|
||||
# Mupen64Plus
|
||||
boost
|
||||
dash
|
||||
|
||||
# Overwatch 2
|
||||
libunwind
|
||||
|
||||
# PPSSPP
|
||||
glew
|
||||
snappy
|
||||
|
||||
# Redream // "redream is not available for the x86_64 architecture"
|
||||
|
||||
# RPCS3
|
||||
llvm
|
||||
e2fsprogs
|
||||
libgpg-error
|
||||
|
||||
# ScummVM
|
||||
nasm
|
||||
sndio
|
||||
|
||||
# ResidualVM is now merged with ScummVM and therefore does not exist anymore
|
||||
flac
|
||||
|
||||
# Snes9x
|
||||
libepoxy
|
||||
minizip
|
||||
|
||||
# Vice
|
||||
bison
|
||||
flex
|
||||
|
||||
# WINE
|
||||
xorg.xrandr
|
||||
perl
|
||||
which
|
||||
p7zip
|
||||
gnused
|
||||
gnugrep
|
||||
psmisc
|
||||
opencl-headers
|
||||
|
||||
# ZDOOM
|
||||
soundfont-fluid
|
||||
bzip2
|
||||
game-music-emu
|
||||
]
|
||||
++ qt5Deps pkgs
|
||||
++ qt6Deps pkgs
|
||||
++ gnomeDeps pkgs
|
||||
++ lib.optional steamSupport pkgs.steam
|
||||
++ extraPkgs pkgs;
|
||||
|
||||
multiPkgs =
|
||||
pkgs:
|
||||
with pkgs;
|
||||
[
|
||||
# Common
|
||||
libsndfile
|
||||
libtheora
|
||||
libogg
|
||||
libvorbis
|
||||
libopus
|
||||
libGLU
|
||||
libpcap
|
||||
libpulseaudio
|
||||
libao
|
||||
libevdev
|
||||
udev
|
||||
libgcrypt
|
||||
libxml2
|
||||
libusb1
|
||||
libpng
|
||||
libmpeg2
|
||||
libv4l
|
||||
libjpeg
|
||||
libxkbcommon
|
||||
libass
|
||||
libcdio
|
||||
libjack2
|
||||
libsamplerate
|
||||
libzip
|
||||
libmad
|
||||
libaio
|
||||
libcap
|
||||
libtiff
|
||||
libva
|
||||
libgphoto2
|
||||
libxslt
|
||||
libsndfile
|
||||
giflib
|
||||
zlib
|
||||
glib
|
||||
alsa-lib
|
||||
zziplib
|
||||
bash
|
||||
dbus
|
||||
keyutils
|
||||
zip
|
||||
cabextract
|
||||
freetype
|
||||
unzip
|
||||
coreutils
|
||||
readline
|
||||
gcc
|
||||
SDL
|
||||
SDL2
|
||||
curl
|
||||
graphite2
|
||||
gtk2
|
||||
gtk3
|
||||
udev
|
||||
ncurses
|
||||
wayland
|
||||
libglvnd
|
||||
vulkan-loader
|
||||
xdg-utils
|
||||
sqlite
|
||||
gnutls
|
||||
p11-kit
|
||||
libbsd
|
||||
harfbuzz
|
||||
|
||||
# PCSX2 // TODO: "libgobject-2.0.so.0: wrong ELF class: ELFCLASS64"
|
||||
|
||||
# WINE
|
||||
cups
|
||||
lcms2
|
||||
mpg123
|
||||
cairo
|
||||
unixODBC
|
||||
samba4
|
||||
sane-backends
|
||||
openldap
|
||||
ocl-icd
|
||||
util-linux
|
||||
libkrb5
|
||||
|
||||
# Proton
|
||||
libselinux
|
||||
|
||||
# Winetricks
|
||||
fribidi
|
||||
pango
|
||||
]
|
||||
++ xorgDeps pkgs
|
||||
++ gstreamerDeps pkgs
|
||||
++ extraLibraries pkgs;
|
||||
|
||||
extraInstallCommands = ''
|
||||
mkdir -p $out/share
|
||||
ln -sf ${lutris-unwrapped}/share/applications $out/share
|
||||
ln -sf ${lutris-unwrapped}/share/icons $out/share
|
||||
'' + extraLinkLines;
|
||||
|
||||
# allows for some gui applications to share IPC
|
||||
# this fixes certain issues where they don't render correctly
|
||||
unshareIpc = false;
|
||||
|
||||
# Some applications such as Natron need access to MIT-SHM or other
|
||||
# shared memory mechanisms. Unsharing the pid namespace
|
||||
# breaks the ability for application to reference shared memory.
|
||||
unsharePid = false;
|
||||
|
||||
meta = {
|
||||
inherit (lutris-unwrapped.meta)
|
||||
homepage
|
||||
description
|
||||
platforms
|
||||
license
|
||||
maintainers
|
||||
broken
|
||||
;
|
||||
|
||||
mainProgram = "lutris";
|
||||
};
|
||||
}
|
||||
|
|
@ -1,106 +0,0 @@
|
|||
{
|
||||
bash,
|
||||
cargo,
|
||||
fetchFromGitHub,
|
||||
hatch,
|
||||
lib,
|
||||
nix-update-script,
|
||||
python3Packages,
|
||||
rustPlatform,
|
||||
scdoc,
|
||||
writableTmpDirAsHomeHook,
|
||||
withTruststore ? true,
|
||||
withDeltaUpdates ? true,
|
||||
}:
|
||||
python3Packages.buildPythonPackage rec {
|
||||
pname = "umu-launcher-unwrapped";
|
||||
version = "1.2.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Open-Wine-Components";
|
||||
repo = "umu-launcher";
|
||||
tag = version;
|
||||
hash = "sha256-DkfB78XhK9CXgN/OpJZTjwHB7IcLC4h2HM/1JW42ZO0=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoVendor {
|
||||
inherit src;
|
||||
hash = "sha256-JhNErFDJsM20BhgIgJSUBeNzAst8f+s1NzpLfl2m2es=";
|
||||
};
|
||||
|
||||
nativeCheckInputs = [
|
||||
writableTmpDirAsHomeHook
|
||||
python3Packages.pytestCheckHook
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cargo
|
||||
hatch
|
||||
python3Packages.build
|
||||
python3Packages.installer
|
||||
rustPlatform.cargoSetupHook
|
||||
scdoc
|
||||
];
|
||||
|
||||
patches = [
|
||||
./umu-proton-cachyos.patch
|
||||
];
|
||||
|
||||
pythonPath =
|
||||
with python3Packages;
|
||||
[
|
||||
pyzstd
|
||||
urllib3
|
||||
xlib
|
||||
]
|
||||
++ lib.optionals withTruststore [
|
||||
truststore
|
||||
]
|
||||
++ lib.optionals withDeltaUpdates [
|
||||
cbor2
|
||||
xxhash
|
||||
];
|
||||
|
||||
pyproject = false;
|
||||
configureScript = "./configure.sh";
|
||||
|
||||
configureFlags = [
|
||||
"--use-system-pyzstd"
|
||||
"--use-system-urllib"
|
||||
];
|
||||
|
||||
makeFlags = [
|
||||
"PYTHONDIR=$(PREFIX)/${python3Packages.python.sitePackages}"
|
||||
"PYTHON_INTERPRETER=${lib.getExe python3Packages.python}"
|
||||
# Override RELEASEDIR to avoid running `git describe`
|
||||
"RELEASEDIR=${pname}-${version}"
|
||||
"SHELL_INTERPRETER=${lib.getExe bash}"
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# Broken? Asserts that $STEAM_RUNTIME_LIBRARY_PATH is non-empty
|
||||
# Fails with AssertionError: '' is not true : Expected two elements in STEAM_RUNTIME_LIBRARY_PATHS
|
||||
"test_game_drive_empty"
|
||||
"test_game_drive_libpath_empty"
|
||||
|
||||
# Broken? Tests parse_args with no options (./umu_run.py)
|
||||
# Fails with AssertionError: SystemExit not raised
|
||||
"test_parse_args_noopts"
|
||||
];
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Unified launcher for Windows games on Linux using the Steam Linux Runtime and Tools";
|
||||
changelog = "https://github.com/Open-Wine-Components/umu-launcher/releases/tag/${version}";
|
||||
homepage = "https://github.com/Open-Wine-Components/umu-launcher";
|
||||
license = lib.licenses.gpl3;
|
||||
mainProgram = "umu-run";
|
||||
maintainers = with lib.maintainers; [
|
||||
diniamo
|
||||
MattSturgeon
|
||||
fuzen
|
||||
];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue