mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-04-16 06:19:11 +00:00
pkgs/tic-80-unstable: init at unstable-2025-03-27
Also updated it since there's another package of the same name with the latest stable release.
This commit is contained in:
parent
58c393dc1a
commit
6f659999d1
@ -50,7 +50,7 @@ in lib.makeScope pkgs.newScope (self: {
|
|||||||
#purrdata = callPackage ./purr-data { };
|
#purrdata = callPackage ./purr-data { };
|
||||||
speki = callPackage ./speki { };
|
speki = callPackage ./speki { };
|
||||||
sqlc-gen-from-template = callPackage ./sqlc-gen-from-template { };
|
sqlc-gen-from-template = callPackage ./sqlc-gen-from-template { };
|
||||||
tic-80 = callPackage ./tic-80 { };
|
tic-80-unstable = callPackage ./tic-80 { };
|
||||||
smile = callPackage ./smile { };
|
smile = callPackage ./smile { };
|
||||||
sessiond = callPackage ./sessiond { };
|
sessiond = callPackage ./sessiond { };
|
||||||
uwsm = callPackage ./uwsm { };
|
uwsm = callPackage ./uwsm { };
|
||||||
|
@ -1,63 +1,92 @@
|
|||||||
# Build the TIC-80 virtual computer console with the PRO version. The
|
# Build the TIC-80 virtual computer console with the PRO version. The
|
||||||
# developers are kind enough to make it easy to compile it if you know
|
# developers are kind enough to make it easy to compile it if you know
|
||||||
# how.
|
# how.
|
||||||
{ stdenv, lib, SDL2, SDL2_sound, alsa-lib, cmake, fetchFromGitHub, freeglut, git
|
{ stdenv, lib, giflib, SDL2, SDL2_sound, sdl2-compat, alsa-lib, argparse, curl
|
||||||
, gtk3, dbus, libGLU, libX11, libglvnd, libsamplerate, mesa, pkg-config, sndio
|
, cmake, fetchFromGitHub, freeglut, git, gtk3, dbus, libGLU, libX11, libglvnd
|
||||||
, zlib
|
, libsamplerate, mesa, pkg-config, sndio, zlib, lua54Packages
|
||||||
|
|
||||||
, pulseaudioSupport ? stdenv.isLinux, libpulseaudio
|
, pulseaudioSupport ? stdenv.isLinux, libpulseaudio
|
||||||
|
|
||||||
, waylandSupport ? true, wayland, libxkbcommon, libdecor
|
, jsSupport ? true, quickjs
|
||||||
|
|
||||||
|
, waylandSupport ? true, wayland, wayland-scanner, libxkbcommon, libdecor
|
||||||
|
|
||||||
, esoundSupport ? true, espeak
|
, esoundSupport ? true, espeak
|
||||||
|
|
||||||
, jackSupport ? true, jack2
|
, jackSupport ? true, jack2
|
||||||
|
|
||||||
# Ruby support requires compiling mruby so we'll skip it for now.
|
# As of 2025-03-26, it is basically required to have a very specific version of
|
||||||
, rubySupport ? false, ruby, rake
|
# mruby so no...
|
||||||
|
, rubySupport ? false, mruby
|
||||||
|
|
||||||
, pythonSupport ? true, python3
|
, pythonSupport ? true
|
||||||
|
|
||||||
|
, janetSupport ? true, janet
|
||||||
|
|
||||||
|
# This doesn't have the appropriate system library as of nixpkgs 2025-03-26, btw.
|
||||||
|
, wasmSupport ? true, wasm
|
||||||
|
|
||||||
, withPro ? true }:
|
, withPro ? true }:
|
||||||
|
|
||||||
# TODO: Fix the timestamp in the help section.
|
# TODO: Fix the timestamp in the help section.
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "tic-80";
|
pname = "tic-80";
|
||||||
version = "unstable-2023-07-18";
|
version = "unstable-2025-03-27";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "nesbox";
|
owner = "nesbox";
|
||||||
repo = "TIC-80";
|
repo = "TIC-80";
|
||||||
rev = "68b94ee596e1ac218b8b9685fd0485c7ee8d2f18";
|
rev = "5aa6c536607a5512ce1913acf3be7be8784fd8db";
|
||||||
hash = "sha256-S3LYuRRFMZYl6dENrV21bowzo7smm+zSHXt77/83oL0=";
|
hash = "sha256-oPubH/dPGDK/ZPY6NjycytAYY4PD2H9MbJg7jGBz3aI=";
|
||||||
fetchSubmodules = true;
|
fetchSubmodules = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake pkg-config ];
|
nativeBuildInputs = [ cmake pkg-config ];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
argparse
|
||||||
alsa-lib
|
alsa-lib
|
||||||
|
curl
|
||||||
freeglut
|
freeglut
|
||||||
gtk3
|
gtk3
|
||||||
|
giflib
|
||||||
libsamplerate
|
libsamplerate
|
||||||
libGLU
|
libGLU
|
||||||
libglvnd
|
libglvnd
|
||||||
|
lua54Packages.lua
|
||||||
mesa
|
mesa
|
||||||
git
|
git
|
||||||
|
sdl2-compat
|
||||||
SDL2
|
SDL2
|
||||||
SDL2_sound
|
SDL2_sound
|
||||||
zlib
|
zlib
|
||||||
sndio
|
sndio
|
||||||
] ++ lib.optional pulseaudioSupport libpulseaudio
|
] ++ lib.optionals pulseaudioSupport [ libpulseaudio ]
|
||||||
++ lib.optional jackSupport jack2 ++ lib.optional esoundSupport espeak
|
++ lib.optionals jackSupport [ jack2 ]
|
||||||
++ lib.optionals rubySupport [ ruby rake ]
|
++ lib.optionals jsSupport [ quickjs ]
|
||||||
++ lib.optional pythonSupport python3
|
++ lib.optionals esoundSupport [ espeak ]
|
||||||
|
++ lib.optionals rubySupport [ mruby ]
|
||||||
|
++ lib.optionals janetSupport [ janet ]
|
||||||
|
++ lib.optionals wasmSupport [ wasm ]
|
||||||
++ lib.optionals (stdenv.isLinux && waylandSupport) [
|
++ lib.optionals (stdenv.isLinux && waylandSupport) [
|
||||||
wayland
|
wayland
|
||||||
|
wayland-scanner
|
||||||
libxkbcommon
|
libxkbcommon
|
||||||
libdecor
|
libdecor
|
||||||
];
|
];
|
||||||
|
|
||||||
cmakeFlags = lib.optional withPro "-DBUILD_PRO=ON";
|
cmakeFlags =
|
||||||
|
# Just leave the tinier libraries alone for this.
|
||||||
|
[
|
||||||
|
"-DPREFER_SYSTEM_LIBRARIES=ON"
|
||||||
|
"-DBUILD_WITH_FENNEL=ON"
|
||||||
|
"-DBUILD_WITH_MOON=ON"
|
||||||
|
"-DBUILD_WITH_SCHEME=ON"
|
||||||
|
] ++ lib.optionals withPro [ "-DBUILD_PRO=ON" ]
|
||||||
|
++ lib.optionals jsSupport [ "-DBUILD_WITH_JS=ON" ]
|
||||||
|
++ lib.optionals rubySupport [ "-DBUILD_WITH_RUBY=ON" ]
|
||||||
|
++ lib.optionals pythonSupport [ "-DBUILD_WITH_PYTHON=ON" ]
|
||||||
|
++ lib.optionals wasmSupport [ "-DBUILD_WITH_WASM=ON" ]
|
||||||
|
++ lib.optionals janetSupport [ "-DBUILD_WITH_JANET=ON" ];
|
||||||
|
|
||||||
# Export all of the TIC-80-related utilities.
|
# Export all of the TIC-80-related utilities.
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" ];
|
||||||
|
Loading…
Reference in New Issue
Block a user