Merge staging-next into staging
This commit is contained in:
@@ -29,6 +29,8 @@
|
||||
|
||||
- `iroh` has been removed and split up into `iroh-dns-server` and `iroh-relay`.
|
||||
|
||||
- `python3Packages.pygame` has been been renamed to `python3Packages.pygame-original`, the attribute `python3Packages.pygame` will from python 3.14 default to the more actively maintained `python3Packages.pygame-ce`
|
||||
|
||||
- `python3Packages.gradio` has been updated to version 6. See upstream's migration guide at https://www.gradio.app/main/guides/gradio-6-migration-guide.
|
||||
|
||||
- `vicinae` has been updated to v0.17. Version 0.17 contains a complete overhaul of the configuration system. For update instructions, see the [release notes for v0.17.0](https://github.com/vicinaehq/vicinae/releases/tag/v0.17.0) and the [upstream configuration documentation](https://docs.vicinae.com/config).
|
||||
|
||||
@@ -5,8 +5,14 @@
|
||||
...
|
||||
}:
|
||||
let
|
||||
inherit (lib)
|
||||
mkRemovedOptionModule
|
||||
mkRenamedOptionModule
|
||||
;
|
||||
|
||||
cfg = config.services.icecast;
|
||||
configFile = pkgs.writeText "icecast.xml" ''
|
||||
<?xml version="1.0"?>
|
||||
<icecast>
|
||||
<hostname>${cfg.hostname}</hostname>
|
||||
|
||||
@@ -16,7 +22,7 @@ let
|
||||
</authentication>
|
||||
|
||||
<paths>
|
||||
<logdir>${cfg.logDir}</logdir>
|
||||
<logdir>/var/log/icecast</logdir>
|
||||
<adminroot>${pkgs.icecast}/share/icecast/admin</adminroot>
|
||||
<webroot>${pkgs.icecast}/share/icecast/web</webroot>
|
||||
<alias source="/" dest="/status.xsl"/>
|
||||
@@ -29,18 +35,27 @@ let
|
||||
|
||||
<security>
|
||||
<chroot>0</chroot>
|
||||
<changeowner>
|
||||
<user>${cfg.user}</user>
|
||||
<group>${cfg.group}</group>
|
||||
</changeowner>
|
||||
</security>
|
||||
|
||||
${cfg.extraConf}
|
||||
${cfg.extraConfig}
|
||||
</icecast>
|
||||
'';
|
||||
in
|
||||
{
|
||||
|
||||
imports = [
|
||||
(mkRemovedOptionModule [ "services" "icecast" "logDir" ] ''
|
||||
The log directory is now managed by systemd's LogsDirectory= directive.
|
||||
'')
|
||||
(mkRemovedOptionModule [ "services" "icecast" "user" ] ''
|
||||
The service now runs under the dynamically allocated `icecast` user.
|
||||
'')
|
||||
(mkRemovedOptionModule [ "services" "icecast" "group" ] ''
|
||||
The service now runs under the dynamically allocated `icecast` group.
|
||||
'')
|
||||
(mkRenamedOptionModule [ "services" "icecast" "extraConf" ] [ "services" "icecast" "extraConfig" ])
|
||||
];
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
@@ -69,12 +84,6 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
logDir = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
description = "Base directory used for logging.";
|
||||
default = "/var/log/icecast";
|
||||
};
|
||||
|
||||
listen = {
|
||||
port = lib.mkOption {
|
||||
type = lib.types.port;
|
||||
@@ -89,22 +98,12 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
user = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
description = "User privileges for the server.";
|
||||
default = "nobody";
|
||||
};
|
||||
|
||||
group = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
description = "Group privileges for the server.";
|
||||
default = "nogroup";
|
||||
};
|
||||
|
||||
extraConf = lib.mkOption {
|
||||
extraConfig = lib.mkOption {
|
||||
type = lib.types.lines;
|
||||
description = "icecast.xml content.";
|
||||
default = "";
|
||||
description = ''
|
||||
Extra configuration added to {file}`icecast.xml` inside the `<icecast>` element.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
@@ -120,11 +119,20 @@ in
|
||||
description = "Icecast Network Audio Streaming Server";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
preStart = "mkdir -p ${cfg.logDir} && chown ${cfg.user}:${cfg.group} ${cfg.logDir}";
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.icecast}/bin/icecast -c ${configFile}";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
DynamicUser = true;
|
||||
ExecStart = toString [
|
||||
(lib.getExe pkgs.icecast)
|
||||
"-c"
|
||||
configFile
|
||||
];
|
||||
ExecReload = toString [
|
||||
(lib.getExe' pkgs.coreutils "kill")
|
||||
"-HUP"
|
||||
"$MAINPID"
|
||||
];
|
||||
LogsDirectory = "icecast";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -394,7 +394,7 @@ in
|
||||
instanceUrl = mkOption {
|
||||
description = "The instance url to which the provisioning tool should connect.";
|
||||
default = "https://localhost:${serverPort}";
|
||||
defaultText = ''"https://localhost:<port from serverSettings.bindaddress>"'';
|
||||
defaultText = "https://localhost:<port from serverSettings.bindaddress>";
|
||||
type = types.str;
|
||||
};
|
||||
|
||||
|
||||
@@ -74,7 +74,7 @@ in
|
||||
''
|
||||
cp ${activationScript} $out/activate
|
||||
cp ${dryActivationScript} $out/dry-activate
|
||||
${lib.getExe pkgs.gnused} --in-place --expression "s|@out@|''${!toplevelVar}|g" $out/activate $out/dry-activate
|
||||
${lib.getExe pkgs.buildPackages.gnused} --in-place --expression "s|@out@|''${!toplevelVar}|g" $out/activate $out/dry-activate
|
||||
'';
|
||||
|
||||
system.systemBuilderCommands = lib.mkIf config.system.activatable config.system.activatableSystemBuilderCommands;
|
||||
|
||||
@@ -748,6 +748,7 @@ in
|
||||
hydra = runTest ./hydra;
|
||||
i18n = runTest ./i18n.nix;
|
||||
i3wm = runTest ./i3wm.nix;
|
||||
icecast = runTest ./icecast.nix;
|
||||
icingaweb2 = runTest ./icingaweb2.nix;
|
||||
ifm = runTest ./ifm.nix;
|
||||
ifstate = import ./ifstate { inherit runTest; };
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
name = "icecast";
|
||||
meta = {
|
||||
inherit (pkgs.icecast.meta) maintainers;
|
||||
};
|
||||
|
||||
nodes.machine = {
|
||||
services.icecast = {
|
||||
enable = true;
|
||||
hostname = "nixos.test";
|
||||
admin.password = "test";
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("icecast.service")
|
||||
machine.wait_for_open_port(8000)
|
||||
machine.succeed("curl -fail http://localhost:8000 | grep -q 'DO NOT ATTEMPT TO PARSE ICECAST HTML OUTPUT'")
|
||||
'';
|
||||
}
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromSourcehut,
|
||||
python3Packages,
|
||||
python312Packages,
|
||||
}:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
python312Packages.buildPythonApplication rec {
|
||||
pname = "brutalmaze";
|
||||
version = "1.1.1";
|
||||
format = "pyproject";
|
||||
disabled = python3Packages.pythonOlder "3.7";
|
||||
disabled = python312Packages.pythonOlder "3.7";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~cnx";
|
||||
@@ -17,14 +17,19 @@ python3Packages.buildPythonApplication rec {
|
||||
sha256 = "1m105iq378mypj64syw59aldbm6bj4ma4ynhc50gafl656fabg4y";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python3Packages; [
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail "pygame" "pygame-ce"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = with python312Packages; [
|
||||
flit-core
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
propagatedBuildInputs = with python312Packages; [
|
||||
loca
|
||||
palace
|
||||
pygame
|
||||
pygame-ce
|
||||
];
|
||||
|
||||
doCheck = false; # there's no test
|
||||
|
||||
@@ -4,30 +4,31 @@
|
||||
fetchFromGitHub,
|
||||
lib,
|
||||
makeBinaryWrapper,
|
||||
nodejs_24,
|
||||
pnpm_9,
|
||||
nodejs_20,
|
||||
pnpm_10,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
versionCheckHook,
|
||||
}:
|
||||
let
|
||||
buildNpmPackage' = buildNpmPackage.override { nodejs = nodejs_24; };
|
||||
pnpm' = pnpm_9.override { nodejs = nodejs_24; };
|
||||
nodejs = nodejs_20;
|
||||
buildNpmPackage' = buildNpmPackage.override { inherit nodejs; };
|
||||
pnpm' = pnpm_10.override { inherit nodejs; };
|
||||
in
|
||||
buildNpmPackage' (finalAttrs: {
|
||||
pname = "claude-code-router";
|
||||
version = "1.0.64";
|
||||
version = "1.0.73";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "musistudio";
|
||||
repo = "claude-code-router";
|
||||
rev = "1a4462a92362e8c41d4539dc1a79fb85fccf9559";
|
||||
hash = "sha256-q818e8PcKjdBqYk6WfGLKQ8pybXWVxmNV8KX7GjEQq0=";
|
||||
rev = "a7e20325dbb2a8827db0c9ee12924bdecfa19fd9";
|
||||
hash = "sha256-E5m5DiuCaZy8ac4bejpnyooaJ+YKc0ZqMIOhI2aOclk=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/cli.ts \
|
||||
--replace-fail '"node"' '"${lib.getExe nodejs_24}"'
|
||||
--replace-fail '"node"' '"${lib.getExe nodejs}"'
|
||||
'';
|
||||
|
||||
npmDeps = null;
|
||||
@@ -35,7 +36,7 @@ buildNpmPackage' (finalAttrs: {
|
||||
inherit (finalAttrs) pname src;
|
||||
pnpm = pnpm';
|
||||
fetcherVersion = 2;
|
||||
hash = "sha256-BLPGTbDvvI40kuXfE/p3+s9hkE0reXr7OJA6UGXN4ys=";
|
||||
hash = "sha256-xvbw0+w6LxiQj2CpF+diVTsoKrxT8HXub1ASrGrlXR4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -63,7 +64,7 @@ buildNpmPackage' (finalAttrs: {
|
||||
cp ${finalAttrs.passthru.ui}/index.html $out/lib/claude-code-router/dist/
|
||||
|
||||
mkdir -p $out/bin
|
||||
makeBinaryWrapper ${lib.getExe nodejs_24} $out/bin/ccr \
|
||||
makeBinaryWrapper ${lib.getExe nodejs} $out/bin/ccr \
|
||||
--add-flags "$out/lib/claude-code-router/dist/cli.js"
|
||||
|
||||
runHook postInstall
|
||||
@@ -84,7 +85,7 @@ buildNpmPackage' (finalAttrs: {
|
||||
inherit (finalAttrs') pname src sourceRoot;
|
||||
pnpm = pnpm';
|
||||
fetcherVersion = 2;
|
||||
hash = "sha256-ZjYLUec9EADQmKfju8hMbq0y4f1TDVwjbe3yw8Gh4Ac=";
|
||||
hash = "sha256-YtOcuqhJLJYg0C8J0/THA7UfKMVHE8oN5BcJQ2zSpWQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -35,6 +35,8 @@ replaceVarsWith {
|
||||
"Darwin" # darwin isn't in host-os.m4 so where does this come from?
|
||||
else if forPlatform.isFreeBSD then
|
||||
"FreeBSD"
|
||||
else if forPlatform.isCygwin then
|
||||
"Cygwin"
|
||||
else
|
||||
"unknown";
|
||||
|
||||
|
||||
@@ -9,16 +9,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "doggo";
|
||||
version = "1.1.2";
|
||||
version = "1.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mr-karan";
|
||||
repo = "doggo";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-OKzsxYQYgMhTfdFebETHC+3Fm6A8bIOkYN5F9OZk1pc=";
|
||||
hash = "sha256-wraqaztGZHkldWL3tesclqQzOy4B7T/Vg18A1guFvOc=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-T6fNOX4XzUuD9eYqC9jCeAE7+8KMyg0UVbsmy9u+BP0=";
|
||||
vendorHash = "sha256-+tuMDQnbW3kjpVhck3aSMw1+Rv8aCzdOqD4KD7KX3G8=";
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
subPackages = [ "cmd/doggo" ];
|
||||
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
|
||||
# nativeBuildInputs
|
||||
cmake,
|
||||
@@ -19,6 +18,7 @@
|
||||
enet,
|
||||
ffmpeg,
|
||||
fmt,
|
||||
glslang,
|
||||
gtest,
|
||||
hidapi,
|
||||
libXdmcp,
|
||||
@@ -27,7 +27,6 @@
|
||||
libusb1,
|
||||
lz4,
|
||||
lzo,
|
||||
mbedtls,
|
||||
miniupnpc,
|
||||
minizip-ng,
|
||||
openal,
|
||||
@@ -36,6 +35,7 @@
|
||||
sfml,
|
||||
xxHash,
|
||||
xz,
|
||||
zlib-ng,
|
||||
# linux-only
|
||||
alsa-lib,
|
||||
bluez,
|
||||
@@ -55,13 +55,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "dolphin-emu";
|
||||
version = "2509";
|
||||
version = "2512";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dolphin-emu";
|
||||
repo = "dolphin";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-ZTNg8DRgtC1jS3MoYK1wwzjJbMkLNdkRub+KOg3NmYM=";
|
||||
hash = "sha256-VmDhYZfYyzf08FXZTeBYmdEp9P8AugUpiOxNj8aEJqw=";
|
||||
fetchSubmodules = true;
|
||||
leaveDotGit = true;
|
||||
postFetch = ''
|
||||
@@ -72,13 +72,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
'';
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/dolphin-emu/dolphin/commit/8edef722ce1aae65d5a39faf58753044de48b6e0.patch?full_index=1";
|
||||
hash = "sha256-QEG0p+AzrExWrOxL0qRPa+60GlL0DlLyVBrbG6pGuog=";
|
||||
})
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -98,6 +91,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
enet
|
||||
ffmpeg
|
||||
fmt
|
||||
glslang
|
||||
gtest
|
||||
hidapi
|
||||
libXdmcp
|
||||
@@ -106,7 +100,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
libusb1
|
||||
lz4
|
||||
lzo
|
||||
mbedtls
|
||||
#mbedtls_2 # Use vendored, as using nixpkgs' would mark the package unsafe
|
||||
miniupnpc
|
||||
minizip-ng
|
||||
openal
|
||||
@@ -117,8 +111,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
sfml
|
||||
xxHash
|
||||
xz
|
||||
# Causes linker errors with minizip-ng, prefer vendored. Possible reason why: https://github.com/dolphin-emu/dolphin/pull/12070#issuecomment-1677311838
|
||||
#zlib-ng
|
||||
zlib-ng
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [
|
||||
alsa-lib
|
||||
|
||||
@@ -1,15 +1,61 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
buildNpmPackage,
|
||||
buildDotnetModule,
|
||||
fetchFromGitHub,
|
||||
autoPatchelfHook,
|
||||
dotnetCorePackages,
|
||||
bun,
|
||||
icu,
|
||||
openssl,
|
||||
krb5,
|
||||
}:
|
||||
|
||||
let
|
||||
# for update.sh easy to handle
|
||||
ngclientVersion = "0.0.163";
|
||||
ngclientRev = "2546891ad116cb0a7a8df1c2bcf8a11fc17d58a4";
|
||||
ngclientHash = "sha256-MQOJHr3JBceO7qZRQvCcR4NNxpc77oRRjBQkmMv9RUA=";
|
||||
|
||||
# from Duplicati/Server/webroot/ngclient/package.json
|
||||
ngclient = buildNpmPackage {
|
||||
pname = "ngclient";
|
||||
version = ngclientVersion;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "duplicati";
|
||||
repo = "ngclient";
|
||||
rev = ngclientRev;
|
||||
hash = ngclientHash;
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-HYKzf7JaoOYvYlVZgMZ0jvYHf96be6abTZNtefgy59Y=";
|
||||
|
||||
nativeBuildInputs = [ bun ];
|
||||
|
||||
npmBuildScript = "build:prod";
|
||||
|
||||
env = {
|
||||
NG_CLI_ANALYTICS = "false";
|
||||
CI = "true";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out
|
||||
cp -r dist/ngclient/* $out/
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
substituteInPlace $out/browser/index.html \
|
||||
--replace-fail '<base href="/">' '<base href="/ngclient/">'
|
||||
'';
|
||||
};
|
||||
in
|
||||
buildDotnetModule rec {
|
||||
pname = "duplicati";
|
||||
version = "2.2.0.1";
|
||||
@@ -66,6 +112,11 @@ buildDotnetModule rec {
|
||||
"Duplicati.Service"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
rm -rf Duplicati/Server/webroot/ngclient
|
||||
ln -s ${ngclient}/browser Duplicati/Server/webroot/ngclient
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
mv $out/bin/Duplicati.Agent $out/bin/duplicati-agent
|
||||
mv $out/bin/Duplicati.GUI.TrayIcon $out/bin/duplicati
|
||||
|
||||
@@ -9,6 +9,9 @@ REPO="duplicati"
|
||||
SCRIPT_DIR=$(dirname "$(readlink -f "$0")")
|
||||
TARGET="$SCRIPT_DIR/package.nix"
|
||||
|
||||
TMP=$(mktemp -d)
|
||||
trap 'rm -rf "$TMP"' EXIT
|
||||
|
||||
TAG=$(curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s "https://api.github.com/repos/$OWNNER/$REPO/tags" |
|
||||
jq -r '.[].name' |
|
||||
grep -E '^v[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+_stable_' |
|
||||
@@ -22,7 +25,35 @@ DATE=$(echo "$TAG" | cut -d_ -f3)
|
||||
HASH=$(nix-prefetch-github $OWNNER $REPO --rev "$TAG" |
|
||||
jq -r '.hash')
|
||||
|
||||
curl -sL "https://raw.githubusercontent.com/$OWNNER/$REPO/$TAG/Duplicati/Server/webroot/ngclient/package.json" \
|
||||
-o "$TMP/package.json"
|
||||
|
||||
NGCLIENT_VERSION=$(
|
||||
jq -r '.dependencies["@duplicati/ngclient"]' \
|
||||
"$TMP/package.json" |
|
||||
sed 's/^[^0-9]*//'
|
||||
)
|
||||
|
||||
git clone --no-tags https://github.com/duplicati/ngclient.git "$TMP/ngclient"
|
||||
NGCLIENT_REV=$(cd "$TMP/ngclient" && git log --format="%H %s" | grep "$NGCLIENT_VERSION" | awk '{print $1}')
|
||||
|
||||
NGCLIENT_HASH=$(
|
||||
nix-prefetch-github $OWNNER ngclient --rev "$NGCLIENT_REV" |
|
||||
jq -r .hash
|
||||
)
|
||||
|
||||
echo "version=$VERSION"
|
||||
echo "channel=$CHANNEL"
|
||||
echo "date=$DATE"
|
||||
|
||||
echo "ngclientVersion=$NGCLIENT_VERSION"
|
||||
echo "ngclientRev=$NGCLIENT_REV"
|
||||
echo "ngclientHash=$NGCLIENT_HASH"
|
||||
|
||||
sed -i \
|
||||
-e "/ngclientVersion = /c\ ngclientVersion = \"$NGCLIENT_VERSION\";" \
|
||||
-e "/ngclientRev = /c\ ngclientRev = \"$NGCLIENT_REV\";" \
|
||||
-e "/ngclientHash = /c\ ngclientHash = \"$NGCLIENT_HASH\";" \
|
||||
-e "/version = \"/c\ version = \"$VERSION\";" \
|
||||
-e "/channel = \"/c\ channel = \"$CHANNEL\";" \
|
||||
-e "/buildDate = \"/c\ buildDate = \"$DATE\";" \
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "elementary-xfce-icon-theme";
|
||||
version = "0.21";
|
||||
version = "0.22";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "shimmerproject";
|
||||
repo = "elementary-xfce";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ncPL76HCC9n4wTciGeqb+YAUcCE9EeOpWGM5DRYUCYg=";
|
||||
hash = "sha256-snNh6883YUmzU1OG8jLf41/0NrEzfwFikyVtX1JeNdw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -31,6 +31,11 @@ python3.pkgs.buildPythonApplication {
|
||||
srcs = [ main_src ] ++ lib.optional enableDefaultMusicPack music_src;
|
||||
sourceRoot = main_src.name;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace-fail "pygame>=2.5.2" "pygame-ce"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ unzip ]; # The music is zipped
|
||||
|
||||
build-system = with python3.pkgs; [
|
||||
@@ -38,7 +43,7 @@ python3.pkgs.buildPythonApplication {
|
||||
];
|
||||
|
||||
dependencies = with python3.pkgs; [
|
||||
pygame
|
||||
pygame-ce
|
||||
numpy
|
||||
polib
|
||||
];
|
||||
|
||||
@@ -0,0 +1,250 @@
|
||||
From a1f4fa1607249b0356c2cd2c54134cb3dc2dc231 Mon Sep 17 00:00:00 2001
|
||||
From: Stanislas Marquis <stan@astrorigin.com>
|
||||
Date: Fri, 3 Mar 2023 12:44:09 +0100
|
||||
Subject: [PATCH] Update cmake minimum version >= 3.16.3 (ubuntu FF)
|
||||
|
||||
---
|
||||
CMakeLists.txt | 2 +-
|
||||
apps/faldoc/CMakeLists.txt | 2 +-
|
||||
clt/falcon/editline/CMakeLists.txt | 4 ++--
|
||||
dist/nsis/CMakeLists.txt | 2 +-
|
||||
modules/native/MP/CMakeLists.txt | 2 +-
|
||||
modules/native/conio/CMakeLists.txt | 2 +-
|
||||
modules/native/curl/CMakeLists.txt | 2 +-
|
||||
modules/native/dbi/CMakeLists.txt | 2 +-
|
||||
modules/native/dbus/CMakeLists.txt | 2 +-
|
||||
modules/native/dynlib/CMakeLists.txt | 2 +-
|
||||
modules/native/feathers/CMakeLists.txt | 2 +-
|
||||
modules/native/gd2/CMakeLists.txt | 2 +-
|
||||
modules/native/gtk/CMakeLists.txt | 2 +-
|
||||
modules/native/hpdf/CMakeLists.txt | 2 +-
|
||||
modules/native/sdl/CMakeLists.txt | 2 +-
|
||||
modules/native/wopi/CMakeLists.txt | 2 +-
|
||||
tests/native/dynlib/CMakeLists.txt | 2 +-
|
||||
17 files changed, 18 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 81c404677..de2125e3d 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -34,7 +34,7 @@
|
||||
# List of available modules: CURL DBI DBUS DYNLIB GD2 GTK PDF SDL
|
||||
#
|
||||
|
||||
-cmake_minimum_required(VERSION 2.6.2)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project(Falcon)
|
||||
|
||||
|
||||
diff --git a/apps/faldoc/CMakeLists.txt b/apps/faldoc/CMakeLists.txt
|
||||
index 3e0867f63..7ef40d7b3 100644
|
||||
--- a/apps/faldoc/CMakeLists.txt
|
||||
+++ b/apps/faldoc/CMakeLists.txt
|
||||
@@ -4,7 +4,7 @@
|
||||
# CMake configuration file for Feather modules
|
||||
####################################################################
|
||||
|
||||
-cmake_minimum_required(VERSION 2.6.2)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project(falcon-app-faldoc)
|
||||
|
||||
set(FALDOC_DIR "${FALCON_APP_DIR}/faldoc" )
|
||||
diff --git a/clt/falcon/editline/CMakeLists.txt b/clt/falcon/editline/CMakeLists.txt
|
||||
index 8b51862ad..933ef0a13 100644
|
||||
--- a/clt/falcon/editline/CMakeLists.txt
|
||||
+++ b/clt/falcon/editline/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project(Editline)
|
||||
|
||||
find_package(Curses REQUIRED)
|
||||
@@ -23,4 +23,4 @@ configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake
|
||||
${CMAKE_CURRENT_BINARY_DIR}/config.h
|
||||
)
|
||||
-
|
||||
\ No newline at end of file
|
||||
+
|
||||
diff --git a/dist/nsis/CMakeLists.txt b/dist/nsis/CMakeLists.txt
|
||||
index c6e0110bb..996ce5436 100644
|
||||
--- a/dist/nsis/CMakeLists.txt
|
||||
+++ b/dist/nsis/CMakeLists.txt
|
||||
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# Configurator for NSIS installer
|
||||
#
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
|
||||
#
|
||||
# Files to be configured
|
||||
diff --git a/modules/native/MP/CMakeLists.txt b/modules/native/MP/CMakeLists.txt
|
||||
index 2b86107e0..f8eba5c40 100644
|
||||
--- a/modules/native/MP/CMakeLists.txt
|
||||
+++ b/modules/native/MP/CMakeLists.txt
|
||||
@@ -5,7 +5,7 @@
|
||||
####################################################################
|
||||
|
||||
PROJECT(MP)
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
|
||||
# Set here project-wide options
|
||||
# OPTION( WITH_OPT "An poption" OFF)
|
||||
diff --git a/modules/native/conio/CMakeLists.txt b/modules/native/conio/CMakeLists.txt
|
||||
index 104c9bcec..d828d7e09 100644
|
||||
--- a/modules/native/conio/CMakeLists.txt
|
||||
+++ b/modules/native/conio/CMakeLists.txt
|
||||
@@ -4,7 +4,7 @@
|
||||
# CMake configuration file for @PROJECT_NAME@
|
||||
####################################################################
|
||||
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project(conio)
|
||||
|
||||
# find the falcon installation. Set CMAKE_INSTALL_PREFIX to the falcon root
|
||||
diff --git a/modules/native/curl/CMakeLists.txt b/modules/native/curl/CMakeLists.txt
|
||||
index 2f1e908e7..7d7a2377c 100644
|
||||
--- a/modules/native/curl/CMakeLists.txt
|
||||
+++ b/modules/native/curl/CMakeLists.txt
|
||||
@@ -4,7 +4,7 @@
|
||||
# CMake configuration file for curl
|
||||
####################################################################
|
||||
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project(Falcon_curl)
|
||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
||||
|
||||
diff --git a/modules/native/dbi/CMakeLists.txt b/modules/native/dbi/CMakeLists.txt
|
||||
index 3a3f72c5f..20dbee902 100644
|
||||
--- a/modules/native/dbi/CMakeLists.txt
|
||||
+++ b/modules/native/dbi/CMakeLists.txt
|
||||
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# CMake configuration file for DBI
|
||||
####################################################################
|
||||
-cmake_minimum_required(VERSION 2.6.2)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project(Falcon_DBI)
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
||||
diff --git a/modules/native/dbus/CMakeLists.txt b/modules/native/dbus/CMakeLists.txt
|
||||
index 4bd76ce38..09f575fa7 100644
|
||||
--- a/modules/native/dbus/CMakeLists.txt
|
||||
+++ b/modules/native/dbus/CMakeLists.txt
|
||||
@@ -5,7 +5,7 @@
|
||||
####################################################################
|
||||
|
||||
PROJECT(dbus)
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
|
||||
INCLUDE( ${CMAKE_ROOT}/Modules/FindPkgConfig.cmake)
|
||||
|
||||
diff --git a/modules/native/dynlib/CMakeLists.txt b/modules/native/dynlib/CMakeLists.txt
|
||||
index 92bc09e59..6e1f31ec9 100644
|
||||
--- a/modules/native/dynlib/CMakeLists.txt
|
||||
+++ b/modules/native/dynlib/CMakeLists.txt
|
||||
@@ -4,7 +4,7 @@
|
||||
# CMake configuration file for dynlib
|
||||
####################################################################
|
||||
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project(Falcon_dynlib)
|
||||
|
||||
find_package(Falcon REQUIRED)
|
||||
diff --git a/modules/native/feathers/CMakeLists.txt b/modules/native/feathers/CMakeLists.txt
|
||||
index 7be6dca12..3591a4b9a 100644
|
||||
--- a/modules/native/feathers/CMakeLists.txt
|
||||
+++ b/modules/native/feathers/CMakeLists.txt
|
||||
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# CMake configuration file for Feather modules
|
||||
####################################################################
|
||||
-cmake_minimum_required(VERSION 2.6.2)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
PROJECT(Falcon_Feathers)
|
||||
|
||||
# Find our Find*.cmake files
|
||||
diff --git a/modules/native/gd2/CMakeLists.txt b/modules/native/gd2/CMakeLists.txt
|
||||
index 7d775d1e7..73692d4fd 100644
|
||||
--- a/modules/native/gd2/CMakeLists.txt
|
||||
+++ b/modules/native/gd2/CMakeLists.txt
|
||||
@@ -5,7 +5,7 @@
|
||||
####################################################################
|
||||
|
||||
PROJECT(gd2)
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
MESSAGE(STATUS "Building GD2 module" )
|
||||
|
||||
|
||||
diff --git a/modules/native/gtk/CMakeLists.txt b/modules/native/gtk/CMakeLists.txt
|
||||
index 0f08e4bb3..f1bc647e9 100644
|
||||
--- a/modules/native/gtk/CMakeLists.txt
|
||||
+++ b/modules/native/gtk/CMakeLists.txt
|
||||
@@ -3,7 +3,7 @@
|
||||
#
|
||||
project( gtk )
|
||||
|
||||
-cmake_minimum_required( VERSION 2.6.3 )
|
||||
+cmake_minimum_required( VERSION 3.16.3 )
|
||||
|
||||
list( APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake )
|
||||
|
||||
diff --git a/modules/native/hpdf/CMakeLists.txt b/modules/native/hpdf/CMakeLists.txt
|
||||
index 679444146..cf86e9392 100644
|
||||
--- a/modules/native/hpdf/CMakeLists.txt
|
||||
+++ b/modules/native/hpdf/CMakeLists.txt
|
||||
@@ -4,7 +4,7 @@
|
||||
# CMake configuration file for Feather modules
|
||||
####################################################################
|
||||
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project(falcon-module-hpdf)
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
|
||||
diff --git a/modules/native/sdl/CMakeLists.txt b/modules/native/sdl/CMakeLists.txt
|
||||
index 32a07dfd5..7d46ae513 100644
|
||||
--- a/modules/native/sdl/CMakeLists.txt
|
||||
+++ b/modules/native/sdl/CMakeLists.txt
|
||||
@@ -6,7 +6,7 @@
|
||||
if(COMMAND cmake_policy)
|
||||
cmake_policy(SET CMP0003 OLD)
|
||||
endif(COMMAND cmake_policy)
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
PROJECT(Falcon_SDL)
|
||||
|
||||
|
||||
diff --git a/modules/native/wopi/CMakeLists.txt b/modules/native/wopi/CMakeLists.txt
|
||||
index 3f711cd6d..56e6c539b 100644
|
||||
--- a/modules/native/wopi/CMakeLists.txt
|
||||
+++ b/modules/native/wopi/CMakeLists.txt
|
||||
@@ -3,7 +3,7 @@
|
||||
# Falcon Web Oriented Programming Interface
|
||||
#
|
||||
|
||||
-cmake_minimum_required(VERSION 2.6.2)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
project( falcon_wopi )
|
||||
|
||||
######################################################################
|
||||
diff --git a/tests/native/dynlib/CMakeLists.txt b/tests/native/dynlib/CMakeLists.txt
|
||||
index 1781380d9..ed3f1e99f 100644
|
||||
--- a/tests/native/dynlib/CMakeLists.txt
|
||||
+++ b/tests/native/dynlib/CMakeLists.txt
|
||||
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# CMake configuration file for dynlib - TESTS
|
||||
####################################################################
|
||||
-cmake_minimum_required(VERSION 2.6)
|
||||
+cmake_minimum_required(VERSION 3.16.3)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
cmake,
|
||||
pkg-config,
|
||||
pcre,
|
||||
@@ -22,12 +21,8 @@ stdenv.mkDerivation {
|
||||
};
|
||||
|
||||
patches = [
|
||||
# part of https://github.com/falconpl/falcon/pull/11
|
||||
(fetchpatch {
|
||||
name = "bump-minimum-cmake-required-version.patch";
|
||||
url = "https://github.com/falconpl/falcon/commit/a1f4fa1607249b0356c2cd2c54134cb3dc2dc231.patch";
|
||||
hash = "sha256-oYLB+71/oan2MOyHTr/IpgDwik+T8ToP1q7AroaBq1g=";
|
||||
})
|
||||
# https://github.com/falconpl/falcon/pull/11
|
||||
./bump-minimum-cmake-required-version.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -28,6 +28,14 @@ stdenv.mkDerivation rec {
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
# The CMakeLists.txt is actually 3.10 compatible, but it specifies 3.5 as `CMAKE_VERSION_MINIMUM`
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.10"
|
||||
];
|
||||
|
||||
# Workaround for "error: ... class std::__cxx11::wstring_convert' is deprecated [-Werror=deprecated-declarations]"
|
||||
env.NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
|
||||
|
||||
buildInputs = [
|
||||
libX11
|
||||
libxcb
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gmobile";
|
||||
version = "0.5.0";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
@@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
owner = "Phosh";
|
||||
repo = "gmobile";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-VBtZU3AM+Off8bHYyW50y3+PY9u7D+xzChlnBlae+ns=";
|
||||
hash = "sha256-+IRKGkqDgSRAWbK30R2eGA3mI393ARdzYNKBA75AyyY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gollama";
|
||||
version = "v2.0.1";
|
||||
version = "v2.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sammcj";
|
||||
repo = "gollama";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-6r0mAimyFxQ/cJyB9vMJeP6S5cEdzzfb5axXfeOE1nU=";
|
||||
hash = "sha256-unvnFKkEWJnyzuNz8zekB8ZSXP/dUqv24qgyhkP3kkY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-eOxEq+4JQCCWpnVy7aKM9GiZ29bzvfsrqXD4Op8+/K4=";
|
||||
vendorHash = "sha256-t7Kl6WnS8vvLyvKzkDswv0yOaeTE3IgZCNAC3dD8euU=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
gobject-introspection,
|
||||
vala,
|
||||
glib,
|
||||
libsoup_3,
|
||||
json-glib,
|
||||
libxml2,
|
||||
gst_all_1,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "gtuber";
|
||||
version = "0-unstable-2025-01-19";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Rafostar";
|
||||
repo = "gtuber";
|
||||
rev = "446e26668a4e01fc2ca9c261a7f1c281577e566d";
|
||||
hash = "sha256-5Z6sID7Alm4FWl1qCQV1w5DmGsmor2vbnZUJi3Is650=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
gobject-introspection # For g-ir-scanner
|
||||
vala # For vapigen
|
||||
];
|
||||
buildInputs = [
|
||||
glib
|
||||
libsoup_3
|
||||
json-glib
|
||||
libxml2
|
||||
gst_all_1.gstreamer
|
||||
gst_all_1.gst-plugins-base
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = unstableGitUpdater { };
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "GStreamer plugin for streaming videos from websites";
|
||||
homepage = "https://rafostar.github.io/gtuber/";
|
||||
license = lib.licenses.lgpl21Plus;
|
||||
maintainers = with lib.maintainers; [ chuangzhu ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
@@ -19,8 +19,8 @@ let
|
||||
lens-profiles = fetchFromGitHub {
|
||||
owner = "gyroflow";
|
||||
repo = "lens_profiles";
|
||||
tag = "v19";
|
||||
hash = "sha256-8R2mMqKxzoa5Sfqxs8pcfwUfo1PQKSrnM+60Ri3wiXY=";
|
||||
tag = "v36";
|
||||
hash = "sha256-JjH7cGT9hzB9pv0W6FUPaejkiUj357IM2siJNrSHiYY=";
|
||||
};
|
||||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-blastem";
|
||||
version = "0-unstable-2025-06-28";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "blastem-highscore";
|
||||
rev = "d19e9a8ddd0accf017f44dcc81bdd2661f63f25f";
|
||||
hash = "sha256-KetitwqL4S0T4GayeTdwR5hG/LVUF+mJ8oGIN6XPLfU=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/highscore";
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs gen-db.sh
|
||||
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty').stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of BlastEm to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/blastem-highscore";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
badPlatforms = lib.platforms.aarch64;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-bsnes";
|
||||
version = "0-unstable-2025-12-23";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "bsnes";
|
||||
rev = "df88234e314f97a2ca124df1982e4bd39f6fcea0";
|
||||
hash = "sha256-QI9mRvcsPkVBhUZlhchgGVPROj7HAqgtHHnbHVzIIBI=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/bsnes";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
];
|
||||
|
||||
makeFlags = [
|
||||
"target=highscore"
|
||||
"binary=library"
|
||||
"build=performance"
|
||||
"local=false"
|
||||
"platform=linux"
|
||||
];
|
||||
|
||||
installFlags = [
|
||||
"libdir=${placeholder "out"}/lib"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
url = finalAttrs.src.gitRepoUrl;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of bsnes to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/bsnes";
|
||||
license = with lib.licenses; [
|
||||
gpl2Plus
|
||||
mit
|
||||
];
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
libGL,
|
||||
libX11,
|
||||
SDL2,
|
||||
libpcap,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-desmume";
|
||||
version = "0-unstable-2025-09-21";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "desmume";
|
||||
rev = "7d80d2a70850a5595ac8160e6dee5dea8b2fe293";
|
||||
hash = "sha256-wpW8Y68qzuu6J51snw2slbD6cnceFzONG4kutBOeB8I=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/desmume/src/frontend/highscore";
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty').stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
libGL
|
||||
libX11
|
||||
SDL2
|
||||
libpcap
|
||||
];
|
||||
|
||||
# cc1plus: error: '-Wformat-security' ignored without '-Wformat' [-Werror=format-security]
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of DeSmuME to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/desmume";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
inherit (libhighscore.meta) platforms maintainers;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-gearsystem";
|
||||
version = "0-unstable-2026-01-02";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "gearsystem";
|
||||
rev = "7a2cd21c54f1487ec255b71eaf629d1e48d4bbf1";
|
||||
hash = "sha256-y4ZSw2yXBNg49X4aB1TE79ydu3EVqvtb73eB2QBKLEk=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty', '--match', ''', check: false).stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/platforms/highscore";
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of Gearsystem to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/Gearsystem";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,57 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
zstd,
|
||||
libchdr,
|
||||
libvorbis,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-mednafen";
|
||||
version = "0-unstable-2025-12-28";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "mednafen-highscore";
|
||||
rev = "58404782e3f69186c7be821a880cf1442b240f2f";
|
||||
hash = "sha256-FXSfBAPpi+Ch9vuPQf6nqLMKxvrbXG+6F5HHaU9fs2s=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/highscore";
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty', check: false).stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
zstd
|
||||
libchdr
|
||||
libvorbis
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of Mednafen to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/mednafen-highscore";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,68 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
cmake,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "highscore-mgba";
|
||||
version = "0-unstable-2026-01-02";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "mgba";
|
||||
rev = "a6d684ff03b91d219b861b85791f4069df698562";
|
||||
hash = "sha256-Ur7BG+AJ6KQ+XX2qKoj13w556VNnHtxULXd1d+gHUig=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"dev"
|
||||
"doc"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "ENABLE_DEBUGGERS" false)
|
||||
(lib.cmakeBool "USE_EDITLINE" false)
|
||||
(lib.cmakeBool "ENABLE_GDB_STUB" false)
|
||||
(lib.cmakeBool "USE_ZLIB" false)
|
||||
(lib.cmakeBool "USE_MINIZIP" false)
|
||||
(lib.cmakeBool "USE_PNG" false)
|
||||
(lib.cmakeBool "USE_LIBZIP" false)
|
||||
(lib.cmakeBool "USE_SQLITE3" false)
|
||||
(lib.cmakeBool "USE_ELF" false)
|
||||
(lib.cmakeBool "USE_LUA" false)
|
||||
(lib.cmakeBool "USE_JSON_C" false)
|
||||
(lib.cmakeBool "USE_LZMA" false)
|
||||
(lib.cmakeBool "USE_DISCORD_RPC" false)
|
||||
(lib.cmakeBool "ENABLE_SCRIPTING" false)
|
||||
(lib.cmakeBool "BUILD_QT" false)
|
||||
(lib.cmakeBool "BUILD_SDL" false)
|
||||
(lib.cmakeBool "BUILD_HIGHSCORE" true)
|
||||
(lib.cmakeBool "SKIP_LIBRARY" true)
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of mGBA to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/mednafen-highscore";
|
||||
license = lib.licenses.mpl20;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
mupen64plus,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-mupen64plus";
|
||||
version = "0-unstable-2025-12-28";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "mupen64plus-highscore";
|
||||
rev = "94ab5644e5363cf359b334ac057f3f36d24910be";
|
||||
hash = "sha256-Q+6iL7DGr62C2fVEP0EWCgm7S7AYAW1C2X1GPKbI7aY=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty', check: false).stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
mupen64plus
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of Mupen64Plus to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/mupen64plus-highscore";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
inherit (libhighscore.meta) maintainers;
|
||||
inherit (mupen64plus.meta) platforms broken;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-nestopia";
|
||||
version = "0-unstable-2025-12-30";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "highscore-emu";
|
||||
repo = "nestopia";
|
||||
rev = "529e69b6e577f42a246c8fa44ef7f3095647adaf";
|
||||
hash = "sha256-2aBEtut6AShP1Nz0BqNTFD3/gN2cj5PY8JL8WbLE7XE=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/highscore";
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty', '--match', ''', check: false).stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of Nestopia to Highscore";
|
||||
homepage = "https://gitlab.com/highscore-emu/nestopia";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-prosystem";
|
||||
version = "0-unstable-2025-12-27";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "highscore-emu";
|
||||
repo = "prosystem";
|
||||
rev = "44d86957d9377fdc1650c8cdaafbf7e2e2671827";
|
||||
hash = "sha256-vxgh819XwI6rjoI7WwUEPx0PVpb58+MIOhCINQKom0Q=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/highscore";
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty', '--match', ''', check: false).stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of ProSystem to Highscore";
|
||||
homepage = "https://gitlab.com/highscore-emu/prosystem";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,53 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
rgbds,
|
||||
libhighscore,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-sameboy";
|
||||
version = "0-unstable-2025-12-31";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "SameBoy";
|
||||
rev = "80e1d0b5aef4098539979a4670882d590ac9a1ca";
|
||||
hash = "sha256-Fp9GODDu0170NoCHCfX5+vs8hQccS/P1N4jM+L784+o=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/highscore";
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty', '--match', ''', check: false).stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
rgbds
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of SameBoy to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/SameBoy";
|
||||
license = lib.licenses.mit;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
libhighscore,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-stella";
|
||||
version = "0-unstable-2026-01-02";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "highscore-emu";
|
||||
repo = "stella";
|
||||
rev = "a8d92c100e83ae2249c5b30afcaa4b4ed31fcc46";
|
||||
hash = "sha256-QfKtAIMCqniF15vCuWKz/pwb0FuE6xDp6/rfeUWpMgQ=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/src/os/highscore";
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build \
|
||||
--replace-fail "run_command('git', 'describe', '--always', '--dirty', check: false).stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libhighscore
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Port of Stella to Highscore";
|
||||
homepage = "https://github.com/highscore-emu/stella";
|
||||
license = lib.licenses.gpl2Only;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,25 @@
|
||||
diff --git a/shared/config.vapi b/shared/config.vapi
|
||||
index 1b0d8d7..e25bfbc 100644
|
||||
--- a/shared/config.vapi
|
||||
+++ b/shared/config.vapi
|
||||
@@ -9,7 +9,6 @@ namespace Config {
|
||||
public const string VERSION_SUFFIX;
|
||||
public const string VCS_TAG;
|
||||
public const string PROFILE;
|
||||
- public const string CORES_DIR;
|
||||
public const string DATA_DIR;
|
||||
public const string RUNNER_PATH;
|
||||
}
|
||||
diff --git a/src/core-register.vala b/src/core-register.vala
|
||||
index 892aca7..2485cc7 100644
|
||||
--- a/src/core-register.vala
|
||||
+++ b/src/core-register.vala
|
||||
@@ -15,7 +15,7 @@ public class Highscore.CoreRegister : Object {
|
||||
suggested_cores = new HashTable<string, SuggestedCore?> (str_hash, str_equal);
|
||||
|
||||
try {
|
||||
- scan_directory (File.new_for_path (Config.CORES_DIR));
|
||||
+ scan_directory (File.new_for_path (Environment.get_variable ("HIGHSCORE_CORES_DIR")));
|
||||
} catch (Error e) {
|
||||
critical ("Failed to scan cores: %s", e.message);
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
blueprint-compiler,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
vala,
|
||||
glib,
|
||||
gtk4,
|
||||
desktop-file-utils,
|
||||
itstool,
|
||||
python3,
|
||||
json-glib,
|
||||
libgee,
|
||||
libadwaita,
|
||||
libarchive,
|
||||
libglycin,
|
||||
libhighscore,
|
||||
libmanette,
|
||||
sqlite,
|
||||
libGL,
|
||||
libepoxy,
|
||||
libpulseaudio,
|
||||
SDL2,
|
||||
librsvg,
|
||||
libmirage,
|
||||
feedbackd,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
let
|
||||
libmanette-1-alpha = libmanette.overrideAttrs (prev: {
|
||||
version = "0.2.13-unstable-2025-10-10";
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "GNOME";
|
||||
repo = "libmanette";
|
||||
rev = "9b1b45e2aa3221938cd23e5f87a79b69e1996f64";
|
||||
hash = "sha256-4Vinc3sBU2PJmOZUOrod6AJbRq6W2nNLcC//FVHGuhg=";
|
||||
};
|
||||
|
||||
buildInputs = prev.buildInputs ++ [ libadwaita ];
|
||||
});
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "highscore-unwrapped";
|
||||
version = "0-unstable-2026-01-01";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "World";
|
||||
repo = "highscore";
|
||||
rev = "c9f537e06414a32632e9f9d7a73d9028b788f275";
|
||||
hash = "sha256-6sBfjVFIFg0w3apzJBYMYEIjTavnOAE0YK3ayzoyDks=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Highscore finds cores under $out/lib/highscore/cores/
|
||||
# Allow the wrapper to override it with $HIGHSCORE_CORES_DIR
|
||||
./cores-dir-from-envvar.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace meson.build --replace-fail \
|
||||
"run_command('git', 'rev-parse', '--short', 'HEAD').stdout().strip()" \
|
||||
"'${finalAttrs.src.rev}'"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
blueprint-compiler
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
vala
|
||||
glib # For glib-compile-resources
|
||||
gtk4 # For gtk4-update-icon-cache
|
||||
desktop-file-utils
|
||||
itstool
|
||||
# Used in build time, detected by meson
|
||||
(python3.withPackages (ps: [ ps.pygobject3 ]))
|
||||
# To prevent double wrapping, not wrapping it here
|
||||
# wrapGAppsHook4
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
libgee
|
||||
gtk4
|
||||
json-glib
|
||||
libadwaita
|
||||
libarchive
|
||||
libglycin
|
||||
libhighscore
|
||||
libmanette-1-alpha
|
||||
sqlite
|
||||
libGL
|
||||
libepoxy
|
||||
libpulseaudio
|
||||
SDL2
|
||||
librsvg
|
||||
libmirage
|
||||
feedbackd
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Rewrite of Highscore, formerly gnome-games";
|
||||
homepage = "https://gitlab.gnome.org/World/highscore/";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
inherit (libhighscore.meta) maintainers platforms;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,73 @@
|
||||
{
|
||||
symlinkJoin,
|
||||
wrapGAppsHook4,
|
||||
gtk4,
|
||||
feedbackd,
|
||||
librsvg,
|
||||
glycin-loaders,
|
||||
highscore-unwrapped,
|
||||
highscore-blastem,
|
||||
highscore-bsnes,
|
||||
highscore-desmume,
|
||||
highscore-gearsystem,
|
||||
highscore-mednafen,
|
||||
highscore-mgba,
|
||||
highscore-mupen64plus,
|
||||
highscore-nestopia,
|
||||
highscore-prosystem,
|
||||
highscore-sameboy,
|
||||
highscore-stella,
|
||||
|
||||
# Allow users to override
|
||||
cores ? builtins.filter (p: p.meta.available) [
|
||||
highscore-blastem
|
||||
highscore-bsnes
|
||||
highscore-desmume
|
||||
highscore-gearsystem
|
||||
highscore-mednafen
|
||||
highscore-mgba
|
||||
highscore-mupen64plus
|
||||
highscore-nestopia
|
||||
highscore-prosystem
|
||||
highscore-sameboy
|
||||
highscore-stella
|
||||
],
|
||||
}:
|
||||
|
||||
symlinkJoin {
|
||||
pname = "highscore";
|
||||
inherit (highscore-unwrapped) version meta;
|
||||
|
||||
paths = [ highscore-unwrapped ] ++ cores;
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapGAppsHook4
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
# For gsettings-schemas
|
||||
highscore-unwrapped
|
||||
gtk4
|
||||
feedbackd
|
||||
# For GDK_PIXBUF_MODULE_FILE
|
||||
librsvg
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
|
||||
# symlinkJoin doesn't run other build phases
|
||||
postBuild = ''
|
||||
rm $out/share/dbus-1/services/app.drey.Highscore{,.SearchProvider}.service
|
||||
cp {${highscore-unwrapped},$out}/share/dbus-1/services/app.drey.Highscore.service
|
||||
cp {${highscore-unwrapped},$out}/share/dbus-1/services/app.drey.Highscore.SearchProvider.service
|
||||
substituteInPlace $out/share/dbus-1/services/app.drey.Highscore{,.SearchProvider}.service \
|
||||
--replace-fail "${highscore-unwrapped}" "$out"
|
||||
|
||||
gappsWrapperArgsHook
|
||||
|
||||
makeWrapper ${highscore-unwrapped}/bin/highscore $out/bin/highscore \
|
||||
"''${gappsWrapperArgs[@]}" \
|
||||
--prefix XDG_DATA_DIRS : "${glycin-loaders}/share" \
|
||||
--set HIGHSCORE_CORES_DIR $out/lib/highscore/cores
|
||||
'';
|
||||
}
|
||||
@@ -2,36 +2,48 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
libxml2,
|
||||
libxslt,
|
||||
pkg-config,
|
||||
curl,
|
||||
libvorbis,
|
||||
libtheora,
|
||||
speex,
|
||||
libigloo,
|
||||
libkate,
|
||||
libopus,
|
||||
libtheora,
|
||||
libvorbis,
|
||||
libxml2,
|
||||
libxslt,
|
||||
rhash,
|
||||
speex,
|
||||
nixosTests,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "icecast";
|
||||
version = "2.4.4";
|
||||
version = "2.5.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://downloads.xiph.org/releases/icecast/icecast-${version}.tar.gz";
|
||||
sha256 = "0i2d9rhav0x6js2qhjf5iy6j2a7f0d11ail0lfv40hb1kygrgda9";
|
||||
url = "http://downloads.xiph.org/releases/icecast/icecast-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-2aoHx0Ka7BnZUP9v1CXDcfdxWM00/yIPwZGywYbGfHo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
buildInputs = [
|
||||
libxml2
|
||||
libxslt
|
||||
curl
|
||||
libvorbis
|
||||
libtheora
|
||||
speex
|
||||
libigloo
|
||||
libkate
|
||||
libopus
|
||||
libtheora
|
||||
libvorbis
|
||||
libxml2
|
||||
libxslt
|
||||
rhash
|
||||
speex
|
||||
];
|
||||
|
||||
passthru.tests = {
|
||||
inherit (nixosTests) icecast;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Server software for streaming multimedia";
|
||||
mainProgram = "icecast";
|
||||
@@ -50,4 +62,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = with lib.maintainers; [ jcumming ];
|
||||
platforms = with lib.platforms; unix;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -3,23 +3,23 @@
|
||||
{
|
||||
"kicad" = {
|
||||
kicadVersion = {
|
||||
version = "9.0.6";
|
||||
version = "9.0.7";
|
||||
src = {
|
||||
rev = "878335d000462f1498adc4267854bb594a21bd36";
|
||||
sha256 = "0mfnlx0dlpk3jz1b8pard6b7ax1ycyv069k4vg89ph2bia1a9d98";
|
||||
rev = "45f01a94961af4dfa9a179d25bcf642cd8c80b92";
|
||||
sha256 = "0glsdq5c54d2sif0jmpym79i6vham5w3kzcvcr0yq5nimqig7h0q";
|
||||
};
|
||||
};
|
||||
libVersion = {
|
||||
version = "9.0.6";
|
||||
version = "9.0.7";
|
||||
libSources = {
|
||||
symbols.rev = "e92aabf81dc1af151fa452a33679dcb42b93fcbd";
|
||||
symbols.sha256 = "03k3y86mgc10ir5l1gdzc0r7w1gg7iavb1zl31kgfh9hnfmgv06w";
|
||||
templates.rev = "710c895e2f3be0ec366139bf33c9ca711c990630";
|
||||
symbols.rev = "65d897cc92950ff2af888eb67e527ba7a2b99fe8";
|
||||
symbols.sha256 = "08qb4rqxsyhrcvj1k200m2c06jjy7jwjmf9n1qkcm0biqqc5dba4";
|
||||
templates.rev = "cdf507d0373b5bfd8161b45f6fb86a49b56c4694";
|
||||
templates.sha256 = "0zs29zn8qjgxv0w1vyr8yxmj02m8752zagn4vcraqgik46dwg2id";
|
||||
footprints.rev = "0836ca140b415055e373de97c466961088d8972a";
|
||||
footprints.sha256 = "0jzkrmzkxv3kqqmkpq5dpp3shy9ajfg1b1yzhk4ddzvy8l05qym4";
|
||||
packages3d.rev = "1e24671163ce0f44bf57b46445c7e7be1a95977d";
|
||||
packages3d.sha256 = "04hw6b4hyl2plfgynin3dv7siqml4341264wz2wngddszq8z32ki";
|
||||
footprints.rev = "084757e0326f98c10943b8ffe5be284fe912a160";
|
||||
footprints.sha256 = "1w7dkb93s84ymi1syxpzacbmkxlnlh0k4z1c62nabspb901nn524";
|
||||
packages3d.rev = "123ddef066ce40e20443e678c5baf6a7d4a04399";
|
||||
packages3d.sha256 = "1bv1k8i01x7gyayrlkzl3d2nsf7mcdmzx8gjwx1i2va9557rgli9";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,78 @@
|
||||
diff --git a/package.json b/package.json
|
||||
index 3a001b5..c6ba849 100644
|
||||
--- a/package.json
|
||||
+++ b/package.json
|
||||
@@ -14,6 +14,8 @@
|
||||
"repository": "https://github.com/koodo-reader/koodo-reader",
|
||||
"private": false,
|
||||
"resolutions": {
|
||||
+ "nan": "2.24.0",
|
||||
+ "node-abi": "3.85.0",
|
||||
"//": "See https://github.com/facebook/create-react-app/issues/11773",
|
||||
"react-error-overlay": "6.0.9"
|
||||
},
|
||||
@@ -22,7 +24,7 @@
|
||||
"adm-zip": "^0.5.2",
|
||||
"axios": "^0.19.2",
|
||||
"basic-ftp": "^5.0.5",
|
||||
- "better-sqlite3": "^11.6.0",
|
||||
+ "better-sqlite3": "^12.4.5",
|
||||
"buffer": "^6.0.3",
|
||||
"chardet": "^2.0.0",
|
||||
"copy-text-to-clipboard": "^2.2.0",
|
||||
diff --git a/yarn.lock b/yarn.lock
|
||||
index 83cf080..0dda6d2 100644
|
||||
--- a/yarn.lock
|
||||
+++ b/yarn.lock
|
||||
@@ -5358,10 +5358,10 @@ bcrypt-pbkdf@^1.0.0, bcrypt-pbkdf@^1.0.2:
|
||||
dependencies:
|
||||
tweetnacl "^0.14.3"
|
||||
|
||||
-better-sqlite3@^11.6.0:
|
||||
- version "11.6.0"
|
||||
- resolved "https://registry.yarnpkg.com/better-sqlite3/-/better-sqlite3-11.6.0.tgz#e50736956e6fe1c30dc94f1bc94a9c15d63b7b6b"
|
||||
- integrity sha512-2J6k/eVxcFYY2SsTxsXrj6XylzHWPxveCn4fKPKZFv/Vqn/Cd7lOuX4d7rGQXT5zL+97MkNL3nSbCrIoe3LkgA==
|
||||
+better-sqlite3@^12.4.5:
|
||||
+ version "12.5.0"
|
||||
+ resolved "https://registry.yarnpkg.com/better-sqlite3/-/better-sqlite3-12.5.0.tgz#c570873d9635b5d56baa52f7e72634c2c589f35f"
|
||||
+ integrity sha512-WwCZ/5Diz7rsF29o27o0Gcc1Du+l7Zsv7SYtVPG0X3G/uUI1LqdxrQI7c9Hs2FWpqXXERjW9hp6g3/tH7DlVKg==
|
||||
dependencies:
|
||||
bindings "^1.5.0"
|
||||
prebuild-install "^7.1.1"
|
||||
@@ -10853,10 +10853,10 @@ mz@^2.7.0:
|
||||
object-assign "^4.0.1"
|
||||
thenify-all "^1.0.0"
|
||||
|
||||
-nan@^2.19.0, nan@^2.20.0:
|
||||
- version "2.22.0"
|
||||
- resolved "https://registry.yarnpkg.com/nan/-/nan-2.22.0.tgz#31bc433fc33213c97bad36404bb68063de604de3"
|
||||
- integrity sha512-nbajikzWTMwsW+eSsNm3QwlOs7het9gGJU5dDZzRTQGk03vyBOauxgI4VakDzE0PtsGTmXPsXTbbjVhRwR5mpw==
|
||||
+nan@2.24.0, nan@^2.19.0, nan@^2.20.0:
|
||||
+ version "2.24.0"
|
||||
+ resolved "https://registry.yarnpkg.com/nan/-/nan-2.24.0.tgz#a8919b36e692aa5b260831910e4f81419fc0a283"
|
||||
+ integrity sha512-Vpf9qnVW1RaDkoNKFUvfxqAbtI8ncb8OJlqZ9wwpXzWPEsvsB1nvdUi6oYrHIkQ1Y/tMDnr1h4nczS0VB9Xykg==
|
||||
|
||||
nanoid@^3.3.6:
|
||||
version "3.3.6"
|
||||
@@ -10906,17 +10906,10 @@ no-case@^3.0.4:
|
||||
lower-case "^2.0.2"
|
||||
tslib "^2.0.3"
|
||||
|
||||
-node-abi@^3.0.0, node-abi@^3.3.0:
|
||||
- version "3.71.0"
|
||||
- resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.71.0.tgz#52d84bbcd8575efb71468fbaa1f9a49b2c242038"
|
||||
- integrity sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw==
|
||||
- dependencies:
|
||||
- semver "^7.3.5"
|
||||
-
|
||||
-node-abi@^3.45.0:
|
||||
- version "3.74.0"
|
||||
- resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.74.0.tgz#5bfb4424264eaeb91432d2adb9da23c63a301ed0"
|
||||
- integrity sha512-c5XK0MjkGBrQPGYG24GBADZud0NCbznxNx0ZkS+ebUTrmV1qTDxPxSL8zEAPURXSbLRWVexxmP4986BziahL5w==
|
||||
+node-abi@3.85.0, node-abi@^3.0.0, node-abi@^3.3.0, node-abi@^3.45.0:
|
||||
+ version "3.85.0"
|
||||
+ resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.85.0.tgz#b115d575e52b2495ef08372b058e13d202875a7d"
|
||||
+ integrity sha512-zsFhmbkAzwhTft6nd3VxcG0cvJsT70rL+BIGHWVq5fi6MwGrHwzqKaxXE+Hl2GmnGItnDKPPkO5/LQqjVkIdFg==
|
||||
dependencies:
|
||||
semver "^7.3.5"
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
diff --git a/yarn.lock b/yarn.lock
|
||||
index 83cf080..8bee81e 100644
|
||||
--- a/yarn.lock
|
||||
+++ b/yarn.lock
|
||||
@@ -10914,9 +10914,9 @@ node-abi@^3.0.0, node-abi@^3.3.0:
|
||||
semver "^7.3.5"
|
||||
|
||||
node-abi@^3.45.0:
|
||||
- version "3.74.0"
|
||||
- resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.74.0.tgz#5bfb4424264eaeb91432d2adb9da23c63a301ed0"
|
||||
- integrity sha512-c5XK0MjkGBrQPGYG24GBADZud0NCbznxNx0ZkS+ebUTrmV1qTDxPxSL8zEAPURXSbLRWVexxmP4986BziahL5w==
|
||||
+ version "3.77.0"
|
||||
+ resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.77.0.tgz#3ad90d5c9d45663420e5aa4ff58dbf4e3625419a"
|
||||
+ integrity sha512-DSmt0OEcLoK4i3NuscSbGjOf3bqiDEutejqENSplMSFA/gmB8mkED9G4pKWnPl7MDU4rSHebKPHeitpDfyH0cQ==
|
||||
dependencies:
|
||||
semver "^7.3.5"
|
||||
|
||||
@@ -14,32 +14,32 @@
|
||||
wrapGAppsHook3,
|
||||
xcbuild,
|
||||
|
||||
electron_37,
|
||||
electron_39,
|
||||
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
let
|
||||
electron = electron_37; # don't use latest electron to avoid going over the supported abi numbers
|
||||
electron = electron_39; # don't use latest electron to avoid going over the supported abi numbers
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "koodo-reader";
|
||||
version = "2.2.3";
|
||||
version = "2.2.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "troyeguo";
|
||||
repo = "koodo-reader";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-VQC1xvFw6TDw6P3UcQ4Y++UpjSgEGiRh0M+i1Z8O+N4=";
|
||||
hash = "sha256-KUcI+0+ICMdwAF30CLM3QdS+X8UnYiHhcYkvEQ6WgS8=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./bump-node-abi.patch
|
||||
./bump-abi-compat.patch
|
||||
];
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
yarnOfflineCache = fetchYarnDeps {
|
||||
inherit (finalAttrs) src patches;
|
||||
hash = "sha256-gRaHVWSTBwjVcswy6DVk5yLympudbDcKkvWDry4rsvI=";
|
||||
hash = "sha256-XyFcY0XeNdNzLuqfv9Z2/41875Nl5OrAT/QVyI/+OQc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
cmake,
|
||||
pkg-config,
|
||||
zlib,
|
||||
zstd,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "libchdr";
|
||||
version = "0-unstable-2025-12-27";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rtissera";
|
||||
repo = "libchdr";
|
||||
rev = "07a7dad23378b001f4ab174ef51bd6553f883edd";
|
||||
hash = "sha256-FCZ442mDF/pO5sNHNcPtWxSOB8o3I0YwwNXzu1B2vVQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
zlib
|
||||
zstd
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic))
|
||||
(lib.cmakeBool "INSTALL_STATIC_LIBS" stdenv.hostPlatform.isStatic)
|
||||
(lib.cmakeBool "WITH_SYSTEM_ZLIB" true)
|
||||
(lib.cmakeBool "WITH_SYSTEM_ZSTD" true)
|
||||
(lib.cmakeFeature "CMAKE_INSTALL_LIBDIR" "lib")
|
||||
(lib.cmakeFeature "CMAKE_INSTALL_INCLUDEDIR" "include")
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Standalone library for reading MAME's CHDv1-v5 formats";
|
||||
homepage = "https://github.com/rtissera/libchdr";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ aleksana ];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
glib,
|
||||
vala,
|
||||
gobject-introspection,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "libhighscore";
|
||||
version = "0-unstable-2025-12-06";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "alicem";
|
||||
repo = "libhighscore";
|
||||
rev = "6920d96b440ccfc070fc87c39c51beab8ac053bd";
|
||||
hash = "sha256-JXfPLPHA3HwXRG6sT/5TSMbtU+BqBh/+ZVrzJxW0xLg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
glib # For glib-mkenums
|
||||
gobject-introspection # For g-ir-scanner
|
||||
vala # For vapigen
|
||||
];
|
||||
|
||||
# In highscore-1.pc
|
||||
propagatedBuildInputs = [
|
||||
glib
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
hardcodeZeroVersion = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Interface for porting emulators to Highscore";
|
||||
homepage = "https://gitlab.gnome.org/alicem/libhighscore";
|
||||
license = lib.licenses.lgpl21Plus;
|
||||
maintainers = with lib.maintainers; [
|
||||
chuangzhu
|
||||
aleksana
|
||||
];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
rhash,
|
||||
icecast,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libigloo";
|
||||
version = "0.9.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloads.xiph.org/releases/igloo/libigloo-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-6iLpEZ96IYiBD5kQDFFVxnYtRZWuITuawp5ptPC4cok=";
|
||||
};
|
||||
|
||||
buildInputs = [ rhash ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = {
|
||||
description = "Generic C framework used and developed by the Icecast project";
|
||||
license = lib.licenses.gpl2Only;
|
||||
inherit (icecast.meta) maintainers;
|
||||
};
|
||||
})
|
||||
@@ -24,6 +24,10 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = lib.optionals useGTK [ gtk2 ];
|
||||
|
||||
# temporary workaround for compile error with GCC 15
|
||||
# https://github.com/openlink/iODBC/issues/113
|
||||
env.NIX_CFLAGS_COMPILE = "-std=gnu17";
|
||||
|
||||
preBuild = ''
|
||||
export NIX_LDFLAGS_BEFORE="-rpath $out/lib"
|
||||
'';
|
||||
|
||||
@@ -37,7 +37,7 @@ let
|
||||
|
||||
pname = "librewolf-bin-unwrapped";
|
||||
|
||||
version = "143.0.4-1";
|
||||
version = "146.0.1-1";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
@@ -47,9 +47,9 @@ stdenv.mkDerivation {
|
||||
url = "https://gitlab.com/api/v4/projects/44042130/packages/generic/librewolf/${version}/librewolf-${version}-${arch}-package.tar.xz";
|
||||
hash =
|
||||
{
|
||||
i686-linux = "sha256-GKdnsh7nkXlZh8QYBUhmB003IqfPI1+KxogZCxmyiUY=";
|
||||
x86_64-linux = "sha256-1ZwXfE13K8X/fhBs0ibFaM7A/bRDNbU4hpEGdZIjIRk=";
|
||||
aarch64-linux = "sha256-ICxN/7gqFlqH910DTo+cbrM1AoioY2Jbp2U8AfNxGUg=";
|
||||
i686-linux = "sha256-Z8dQhYH3PuKI2vXQ2nQ4CmyNyDxtAirX0YVxI0r5n3w=";
|
||||
x86_64-linux = "sha256-pRpSHAkLQpg80pOfUBvGBujr4fDDg4wpltVIw9wrlBE=";
|
||||
aarch64-linux = "sha256-BTqzBAohy+kcWou2WKStoAykcqV1DYfLRNbjUF/TTIY=";
|
||||
}
|
||||
.${stdenv.hostPlatform.system} or throwSystem;
|
||||
};
|
||||
|
||||
@@ -46,7 +46,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out
|
||||
install -Dm644 ltspice.png $out/share/pixmaps/ltspice.png
|
||||
install -Dm644 ltspice.png $out/share/icons/hicolor/256x256/apps/ltspice.png
|
||||
|
||||
install -m755 -d $out/libexec/ltspice
|
||||
install -m755 *.exe $out/libexec/ltspice
|
||||
|
||||
@@ -47,14 +47,14 @@ assert
|
||||
|
||||
python.pkgs.buildPythonApplication rec {
|
||||
pname = "music-assistant";
|
||||
version = "2.7.2";
|
||||
version = "2.7.3";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "music-assistant";
|
||||
repo = "server";
|
||||
tag = version;
|
||||
hash = "sha256-JOS7t4vXkxHXvcI0tCAw3KfcrohUD4NV4w6oYIncQv4=";
|
||||
hash = "sha256-6D3B88wjfVHvNhNrTDOu77eAkherOqdBVafUhht7okA=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Do not edit manually, run ./update-providers.py
|
||||
|
||||
{
|
||||
version = "2.7.2";
|
||||
version = "2.7.3";
|
||||
providers = {
|
||||
airplay = ps: [
|
||||
];
|
||||
|
||||
@@ -20,6 +20,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
readline
|
||||
];
|
||||
|
||||
# Build fails with C standard newer than C17
|
||||
env.NIX_CFLAGS_COMPILE = "-std=gnu17";
|
||||
|
||||
configureScript = "./configure-alt";
|
||||
|
||||
doCheck = true;
|
||||
|
||||
@@ -13,16 +13,18 @@
|
||||
pkg-config,
|
||||
wrapGAppsHook4,
|
||||
glib,
|
||||
appstream-glib,
|
||||
appstream,
|
||||
desktop-file-utils,
|
||||
blueprint-compiler,
|
||||
sqlite,
|
||||
clapper-unwrapped,
|
||||
clapper-enhancers,
|
||||
gettext,
|
||||
gst_all_1,
|
||||
gtuber,
|
||||
glib-networking,
|
||||
gnome,
|
||||
libjxl,
|
||||
libheif,
|
||||
webp-pixbuf-loader,
|
||||
librsvg,
|
||||
nix-update-script,
|
||||
@@ -35,12 +37,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
src = fetchFromGitLab {
|
||||
owner = "schmiddi-on-mobile";
|
||||
repo = "pipeline";
|
||||
rev = finalAttrs.version;
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-iMBdyjN6fMDOSE110tA9i6+D4UaNGG2aBoq+4s0YyJI=";
|
||||
};
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoVendor {
|
||||
inherit (finalAttrs) src;
|
||||
inherit (finalAttrs) src pname version;
|
||||
hash = "sha256-w+q90i6FQRPFceniUfwouU2p673O4sVnsRfowCu2fWY=";
|
||||
};
|
||||
|
||||
@@ -48,12 +50,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
meson
|
||||
ninja
|
||||
cargo
|
||||
gettext
|
||||
rustPlatform.cargoSetupHook
|
||||
rustc
|
||||
pkg-config
|
||||
wrapGAppsHook4
|
||||
glib
|
||||
appstream-glib
|
||||
appstream
|
||||
desktop-file-utils
|
||||
blueprint-compiler
|
||||
];
|
||||
@@ -64,38 +67,46 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
openssl
|
||||
sqlite
|
||||
clapper-unwrapped
|
||||
|
||||
clapper-enhancers
|
||||
gst_all_1.gstreamer
|
||||
gst_all_1.gst-libav
|
||||
gst_all_1.gst-plugins-base
|
||||
(gst_all_1.gst-plugins-good.override { gtkSupport = true; })
|
||||
gst_all_1.gst-plugins-good
|
||||
gst_all_1.gst-plugins-bad
|
||||
gettext
|
||||
gtuber
|
||||
gst_all_1.gst-plugins-ugly
|
||||
gst_all_1.gst-vaapi
|
||||
glib-networking # For GIO_EXTRA_MODULES. Fixes "TLS support is not available"
|
||||
];
|
||||
|
||||
# Pull in WebP support for YouTube avatars.
|
||||
# In postInstall to run before gappsWrapperArgsHook.
|
||||
postInstall = ''
|
||||
export GDK_PIXBUF_MODULE_FILE="${
|
||||
gnome._gdkPixbufCacheBuilder_DO_NOT_USE {
|
||||
extraLoaders = [
|
||||
webp-pixbuf-loader
|
||||
librsvg
|
||||
];
|
||||
}
|
||||
}"
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--set GDK_PIXBUF_MODULE_FILE ${
|
||||
gnome._gdkPixbufCacheBuilder_DO_NOT_USE {
|
||||
extraLoaders = [
|
||||
libjxl
|
||||
librsvg
|
||||
webp-pixbuf-loader
|
||||
libheif.lib
|
||||
];
|
||||
}
|
||||
}
|
||||
--set CLAPPER_ENHANCERS_PATH ${clapper-enhancers}/${clapper-enhancers.passthru.pluginPath}
|
||||
)
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { attrPath = finalAttrs.pname; };
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Watch YouTube and PeerTube videos in one place";
|
||||
homepage = "https://mobile.schmidhuberj.de/pipeline";
|
||||
mainProgram = "tubefeeder";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
maintainers = with lib.maintainers; [ chuangzhu ];
|
||||
maintainers = with lib.maintainers; [
|
||||
chuangzhu
|
||||
normalcea
|
||||
];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
})
|
||||
|
||||
@@ -2,10 +2,12 @@
|
||||
buildPackages,
|
||||
cmake,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
lib,
|
||||
ninja,
|
||||
stdenv,
|
||||
versionCheckHook,
|
||||
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -53,6 +55,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "quick-lint-js";
|
||||
inherit version src;
|
||||
|
||||
patches = [
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/quick-lint/quick-lint-js/commit/a2798b35021f34bc798e2b70ec703075dd5eb7f6.patch";
|
||||
hash = "sha256-jEzFFntk94HQPNYLqU1XlwCnhaqt95Kk3TXmfqBGxBc=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
ninja
|
||||
|
||||
@@ -28,6 +28,9 @@ stdenv.mkDerivation rec {
|
||||
--replace "ls_program = xstrdup(\"ls\")" "ls_program = xstrdup(\"${coreutils}/bin/ls\")"
|
||||
'';
|
||||
|
||||
# Fix build with gcc 15
|
||||
env.NIX_CFLAGS_COMPILE = "-std=gnu17";
|
||||
|
||||
nativeBuildInputs = [ readline ];
|
||||
|
||||
preConfigure = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) ''
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "reproxy";
|
||||
version = "1.3.0";
|
||||
version = "1.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "umputun";
|
||||
repo = "reproxy";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-zpfgwlGYXe7I3yO8Cc53ZrPDpXn8hk6cOcXwWyxub+A=";
|
||||
hash = "sha256-pnmm/JEMcQ5UQUwUqGdzC/BphrH4tBz79Bq3c13GqbA=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
@@ -19,12 +19,12 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "safeeyes";
|
||||
version = "3.2.0";
|
||||
version = "3.3.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-t8PMQxQjfyW3t0bamo8kAlminAMfUe0ThtzrgUc33Xo=";
|
||||
hash = "sha256-11nw13AAqupSIZRrhmDaViO3V/yYK8/xsVF8ylS49Rw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -85,6 +85,7 @@ python.pkgs.toPythonModule (
|
||||
whitenoise
|
||||
]
|
||||
++ httpx.optional-dependencies.http2
|
||||
++ httpx.optional-dependencies.socks
|
||||
++ httpx-socks.optional-dependencies.asyncio;
|
||||
|
||||
# tests try to connect to network
|
||||
|
||||
@@ -22,13 +22,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "stellarium";
|
||||
version = "25.3";
|
||||
version = "25.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Stellarium";
|
||||
repo = "stellarium";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-9uQ6u1+dSszmKG8eY6kSXhqsCPRGw6tulCTCrLByIxc=";
|
||||
hash = "sha256-DA4VuVTVGTTzZA9ml+sh6R2qUU+QhHD9k1qOb8C5sSA=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
pkg-config,
|
||||
gdk-pixbuf,
|
||||
gtk2,
|
||||
fetchpatch,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@@ -22,6 +23,15 @@ stdenv.mkDerivation rec {
|
||||
patchShebangs configure
|
||||
'';
|
||||
|
||||
patches = [
|
||||
# Adding missing arg in function decleration
|
||||
(fetchpatch {
|
||||
name = "fix_function_dec.patch";
|
||||
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/x11-misc/trayer-srg/files/trayer-srg-1.1.8-fix-define.patch?id=94ae89d1b044c24138d5c8903df68e9654a5462f";
|
||||
hash = "sha256-LighVaBDePheBO+dWG6JHhm/Y6sxdtvTrBar8VrPRH4=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
From 3a63063a5722947e8089d33ebdaf3ef6b293e2b3 Mon Sep 17 00:00:00 2001
|
||||
From: Moraxyc <i@qaq.li>
|
||||
Date: Sat, 3 Jan 2026 13:24:27 +0800
|
||||
Subject: [PATCH] fix: match ugtk_setting_dialog_new declaration with
|
||||
definition
|
||||
|
||||
---
|
||||
ui-gtk/UgtkSettingDialog.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/ui-gtk/UgtkSettingDialog.h b/ui-gtk/UgtkSettingDialog.h
|
||||
index 750949e..0e82638 100644
|
||||
--- a/ui-gtk/UgtkSettingDialog.h
|
||||
+++ b/ui-gtk/UgtkSettingDialog.h
|
||||
@@ -75,7 +75,7 @@ struct UgtkSettingDialog
|
||||
struct UgtkMediaWebsiteForm media_website;
|
||||
};
|
||||
|
||||
-UgtkSettingDialog* ugtk_setting_dialog_new ();
|
||||
+UgtkSettingDialog* ugtk_setting_dialog_new (const gchar* title, GtkWindow* parent);
|
||||
void ugtk_setting_dialog_free (UgtkSettingDialog* sdialog);
|
||||
|
||||
void ugtk_setting_dialog_run (UgtkSettingDialog* dialog, UgtkApp* app);
|
||||
--
|
||||
2.52.0
|
||||
|
||||
@@ -26,6 +26,13 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0jchvgkkphhwp2z7vd4axxr9ns8b6vqc22b2z8a906qm8916wd8i";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fix build with gcc15
|
||||
# UgtkMenubar.c:188:19: error: too many arguments to function 'ugtk_setting_dialog_new'; expected 0, have 2
|
||||
# UgtkSettingDialog.c:50:21: error: conflicting types for 'ugtk_setting_dialog_new'; have 'UgtkSettingDialog *(const gchar *, GtkWindow *)' {aka 'UgtkSettingDialog *(const char *, struct _GtkWindow *)'}
|
||||
./fix-match-ugtk_setting_dialog_new-declaration-with-d.patch
|
||||
];
|
||||
|
||||
# Apply upstream fix for -fno-common toolchains.
|
||||
postPatch = ''
|
||||
# TODO: remove the replace once upstream fix is released:
|
||||
|
||||
@@ -88,11 +88,16 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
export CSC_IDENTITY_AUTO_DISCOVERY=false
|
||||
'';
|
||||
|
||||
# electron builds must be writable on darwin
|
||||
preBuild = lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
cp -r ${electron.dist}/Electron.app .
|
||||
chmod -R u+w Electron.app
|
||||
'';
|
||||
# electron builds must be writable
|
||||
preBuild =
|
||||
lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
cp -r ${electron.dist}/Electron.app .
|
||||
chmod -R u+w Electron.app
|
||||
''
|
||||
+ lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||
cp -r ${electron.dist} electron-dist
|
||||
chmod -R u+w electron-dist
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
@@ -101,7 +106,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pnpm exec electron-builder \
|
||||
--dir \
|
||||
-c.asarUnpack="**/*.node" \
|
||||
-c.electronDist=${if stdenv.hostPlatform.isDarwin then "." else electron.dist} \
|
||||
-c.electronDist=${if stdenv.hostPlatform.isDarwin then "." else "electron-dist"} \
|
||||
-c.electronVersion=${electron.version}
|
||||
|
||||
runHook postBuild
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchpatch,
|
||||
makeWrapper,
|
||||
imagemagick,
|
||||
libXpm,
|
||||
@@ -38,6 +39,18 @@ stdenv.mkDerivation rec {
|
||||
libXft
|
||||
];
|
||||
|
||||
# Upstream-accepted patches for C23 compatibility from Gentoo and Debian
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
url = "https://www-user.tu-chemnitz.de/~hamari/distfiles/xfig-3.2.9a-modern-c.patch";
|
||||
hash = "sha256-brUonsrWP97QnIkHnAHa2PSAiV9JUVOzmu0kvuLNFGw=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://sources.debian.org/data/main/x/xfig/1%3A3.2.9a-4/debian/patches/19_boolean.patch";
|
||||
hash = "sha256-cMUyp/93bCva4gT349IThhuYmOGZBd0EZ38Y4JrxZn8=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/main.c --replace-fail '"fig2dev"' '"${fig2dev}/bin/fig2dev"'
|
||||
'';
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
From faa694a7171a06f83034fd869adc4cffa2ae0c18 Mon Sep 17 00:00:00 2001
|
||||
From: laurensmiers <laurensmiers@protonmail.com>
|
||||
Date: Wed, 22 Oct 2025 14:50:23 +0200
|
||||
Subject: [PATCH] fix: mb_init does not accept any parameter
|
||||
|
||||
Defined in mbchar.c:114 :
|
||||
```c
|
||||
void mb_init()
|
||||
/*
|
||||
* Initialize multi-byte character settings.
|
||||
* First called prior to setting the 'mcpp_mode'.
|
||||
* Will be called again each time the multibyte character encoding is changed.
|
||||
*/
|
||||
{
|
||||
```
|
||||
|
||||
It does not expect any parameters.
|
||||
---
|
||||
mcpp_main.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/mcpp_main.c b/mcpp_main.c
|
||||
index 54a62b2..44265ad 100644
|
||||
--- a/mcpp_main.c
|
||||
+++ b/mcpp_main.c
|
||||
@@ -302,7 +302,7 @@ int mcpp_lib_main
|
||||
inc_dirp = &null; /* Initialize to current (null) directory */
|
||||
cur_fname = cur_fullname = "(predefined)"; /* For predefined macros */
|
||||
init_defines(); /* Predefine macros */
|
||||
- mb_init(TRUE); /* Should be initialized prior to get options */
|
||||
+ mb_init(); /* Should be initialized prior to get options */
|
||||
do_options( argc, argv, &in_file, &out_file); /* Command line options */
|
||||
|
||||
/* Open input file, "-" means stdin. */
|
||||
@@ -0,0 +1,55 @@
|
||||
From bd5ddbde9e4ed24101cdc86007f26e95f38dd5b1 Mon Sep 17 00:00:00 2001
|
||||
From: laurensmiers <laurensmiers@protonmail.com>
|
||||
Date: Wed, 22 Oct 2025 14:52:30 +0200
|
||||
Subject: [PATCH] fix: don't use reserved keyword for goto statement
|
||||
|
||||
Rename:
|
||||
- 'true' to 'exit_success'
|
||||
- 'false' to 'exit_fail'
|
||||
|
||||
Chose not to change the flow of the code by removing the goto's to
|
||||
avoid regressions.
|
||||
---
|
||||
system.c | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/system.c b/system.c
|
||||
index 646caf6..0a15aec 100644
|
||||
--- a/system.c
|
||||
+++ b/system.c
|
||||
@@ -1738,7 +1738,7 @@ static int open_file(
|
||||
if (! fullname) /* Non-existent or directory */
|
||||
return FALSE;
|
||||
if (included( fullname)) /* Once included */
|
||||
- goto true;
|
||||
+ goto exit_success;
|
||||
|
||||
if ((max_open != 0 && max_open <= include_nest)
|
||||
/* Exceed the known limit of open files */
|
||||
@@ -1765,12 +1765,12 @@ static int open_file(
|
||||
if ((fp = mcpp_fopen( fullname, "r")) == NULL) {
|
||||
file->fp = mcpp_fopen( cur_fullname, "r");
|
||||
fseek( file->fp, file->pos, SEEK_SET);
|
||||
- goto false;
|
||||
+ goto exit_fail;
|
||||
}
|
||||
if (max_open == 0) /* Remember the limit of the system */
|
||||
max_open = include_nest;
|
||||
} else if (fp == NULL) /* No read permission */
|
||||
- goto false;
|
||||
+ goto exit_fail;
|
||||
/* Truncate buffer of the includer to save memory */
|
||||
len = (int) (file->bptr - file->buffer);
|
||||
if (len) {
|
||||
@@ -1802,9 +1802,9 @@ static int open_file(
|
||||
if (mkdep && ((mkdep & MD_SYSHEADER) || ! infile->sys_header))
|
||||
put_depend( fullname); /* Output dependency line */
|
||||
|
||||
-true:
|
||||
+exit_success:
|
||||
return TRUE;
|
||||
-false:
|
||||
+exit_fail:
|
||||
free( fullname);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -6,6 +6,7 @@
|
||||
expat,
|
||||
libedit,
|
||||
lmdb,
|
||||
mcpp,
|
||||
openssl,
|
||||
libxcrypt,
|
||||
python3, # for tests only
|
||||
@@ -13,21 +14,26 @@
|
||||
}:
|
||||
|
||||
let
|
||||
zeroc_mcpp = stdenv.mkDerivation rec {
|
||||
pname = "zeroc-mcpp";
|
||||
version = "2.7.2.14";
|
||||
mcpp' = mcpp.overrideAttrs (prevAttrs: rec {
|
||||
pname = "mcpp-zeroc-ice";
|
||||
version = "2.7.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zeroc-ice";
|
||||
repo = "mcpp";
|
||||
rev = "v${version}";
|
||||
sha256 = "1psryc2ql1cp91xd3f8jz84mdaqvwzkdq2pr96nwn03ds4cd88wh";
|
||||
hash = "sha256-hZGU5mqMRTTHV2bR9uzM6ALj1sypjPxO5Ajg8aKzLxc=";
|
||||
};
|
||||
|
||||
configureFlags = [ "--enable-mcpplib" ];
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
};
|
||||
# zeroc-ice's fork diverges quite a bit from upstream mcpp, so prevAttrs.patches is not used here
|
||||
patches = [
|
||||
# See https://github.com/zeroc-ice/mcpp/pull/12
|
||||
./fix-mb_init.patch
|
||||
./fix-reserved-keywords.patch
|
||||
];
|
||||
|
||||
installFlags = prevAttrs.installFlags or [ ] ++ [ "PREFIX=$(out)" ];
|
||||
});
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "zeroc-ice";
|
||||
@@ -41,7 +47,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
zeroc_mcpp
|
||||
mcpp'
|
||||
bzip2
|
||||
expat
|
||||
libedit
|
||||
|
||||
@@ -56,6 +56,8 @@ stdenv.mkDerivation rec {
|
||||
url = "https://raw.githubusercontent.com/sagemath/sage/9.2/build/pkgs/ecl/patches/write_error.patch";
|
||||
sha256 = "0hfxacpgn4919hg0mn4wf4m8r7y592r4gw7aqfnva7sckxi6w089";
|
||||
})
|
||||
]
|
||||
++ lib.optionals stdenv.cc.isGNU [
|
||||
# Fix gcc15 compat for downstream packages e.g. sage
|
||||
# error: ‘bool’ cannot be defined via ‘typedef’
|
||||
(fetchpatch {
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aioslimproto";
|
||||
version = "3.1.2";
|
||||
version = "3.1.4";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||
owner = "home-assistant-libs";
|
||||
repo = "aioslimproto";
|
||||
tag = version;
|
||||
hash = "sha256-NrMcM3pIzTw9FkfVDptIIdIya7jHtwwzT7RRJTmB40c=";
|
||||
hash = "sha256-9WPlVAj/Bo7k/oWHI3xDkn07OrQdvNruou2s/zxB61Q=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -26,6 +26,14 @@ buildPythonPackage rec {
|
||||
|
||||
sourceRoot = "${src.name}/sdk/python";
|
||||
|
||||
postPatch = ''
|
||||
# We need the version of pulumi-aws in its package metadata to be accurate
|
||||
# as this seems to be used to determine which version of the
|
||||
# pulumi-resource-aws plugin to be dynamically downloaded by the pulumi CLI
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail "7.0.0a0+dev" "${version}"
|
||||
'';
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
|
||||
+4
-1
@@ -6,6 +6,7 @@
|
||||
replaceVars,
|
||||
fontconfig,
|
||||
python,
|
||||
pythonAtLeast,
|
||||
|
||||
# build-system
|
||||
cython,
|
||||
@@ -128,11 +129,13 @@ buildPythonPackage rec {
|
||||
pythonImportsCheck = [ "pygame" ];
|
||||
|
||||
meta = {
|
||||
description = "Python library for games";
|
||||
description = "Python library for games (original distribution)";
|
||||
homepage = "https://www.pygame.org/";
|
||||
changelog = "https://github.com/pygame/pygame/releases/tag/${src.tag}";
|
||||
license = lib.licenses.lgpl21Plus;
|
||||
maintainers = with lib.maintainers; [ emilytrau ];
|
||||
platforms = lib.platforms.unix;
|
||||
# https://github.com/pygame/pygame/issues/4706
|
||||
broken = pythonAtLeast "3.14";
|
||||
};
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
fetchDebianPatch,
|
||||
pythonOlder,
|
||||
|
||||
flit-core,
|
||||
@@ -30,6 +31,17 @@ buildPythonPackage rec {
|
||||
hash = "sha256-Wu079THK1mHVilD2Fx9dIzuIOOYOXpo/EMxVczNutCI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# compatibility with astroid 4, see: https://github.com/sphinx-extensions2/sphinx-autodoc2/pull/93
|
||||
(fetchDebianPatch {
|
||||
pname = "python-sphinx-autodoc2";
|
||||
inherit version;
|
||||
debianRevision = "9";
|
||||
patch = "astroid-4.patch";
|
||||
hash = "sha256-tRWDee30GSQ+AobCAHdtw65B6YyRpzn7kW5rzK7/QOk=";
|
||||
})
|
||||
];
|
||||
|
||||
build-system = [ flit-core ];
|
||||
|
||||
dependencies = [
|
||||
|
||||
@@ -423,6 +423,11 @@ let
|
||||
url = "https://github.com/godotengine/godot/commit/6ce71f0fb0a091cffb6adb4af8ab3f716ad8930b.patch";
|
||||
hash = "sha256-hgAtAtCghF5InyGLdE9M+9PjPS1BWXWGKgIAyeuqkoU=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "thorvg-header-fix.patch";
|
||||
url = "https://github.com/godotengine/godot/commit/1823460787a6c1bb8e4eaf21ac2a3f90d24d5ee0.patch";
|
||||
hash = "sha256-PcHEMXd0v2c3j6Eitxt5uWi6cD+OmsBAn3TNMNRNPog=";
|
||||
})
|
||||
# Fix a crash in the mono test project build. It no longer seems to
|
||||
# happen in 4.4, but an existing fix couldn't be identified.
|
||||
./CSharpLanguage-fix-crash-in-reload_assemblies-after-.patch
|
||||
|
||||
@@ -19,7 +19,9 @@ in
|
||||
|
||||
enableGold ? withGold stdenv.targetPlatform,
|
||||
enableGoldDefault ? false,
|
||||
enableShared ? !stdenv.hostPlatform.isStatic,
|
||||
# shared lib linking fails on cygwin due to multiple definitions
|
||||
# https://cygwin.com/cgit/cygwin-packages/binutils/blame/binutils.cygport
|
||||
enableShared ? (!stdenv.hostPlatform.isStatic && !stdenv.hostPlatform.isCygwin),
|
||||
# WARN: Enabling all targets increases output size to a multiple.
|
||||
withAllTargets ? false,
|
||||
}:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
lib,
|
||||
nodejs_22,
|
||||
buildNpmPackage,
|
||||
buildGoModule,
|
||||
fetchFromGitHub,
|
||||
@@ -24,7 +25,7 @@ let
|
||||
};
|
||||
in
|
||||
|
||||
buildNpmPackage rec {
|
||||
buildNpmPackage.override { nodejs = nodejs_22; } rec {
|
||||
pname = "plotly-graph-card";
|
||||
version = "3.3.5";
|
||||
|
||||
|
||||
@@ -529,8 +529,8 @@ let
|
||||
src = fetchFromGitHub {
|
||||
owner = "nginx";
|
||||
repo = "njs";
|
||||
rev = "0.8.9";
|
||||
hash = "sha256-TalS9EJP+vB1o3BKaTvXXnudjKhNOcob3kDAyeKej3c=";
|
||||
tag = "0.9.4";
|
||||
hash = "sha256-Ee55QKaeZ0mYGKUroKr/AYGoOCakEonU483qkhmZdzU=";
|
||||
};
|
||||
|
||||
# njs module sources have to be writable during nginx build, so we copy them
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "klipper";
|
||||
version = "0.13.0-unstable-2025-11-17";
|
||||
version = "0.13.0-unstable-2026-01-02";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KevinOConnor";
|
||||
repo = "klipper";
|
||||
rev = "b4c7cf4a3365a7bdc05b1ac146f8f48b5666ce8d";
|
||||
sha256 = "sha256-R4WHzRGz+0Tv/bGlTplARuIOlajrIlJjP6wmPMonDEY=";
|
||||
rev = "e60fe3d99b545d7e42ff2f5278efa5822668a57c";
|
||||
sha256 = "sha256-ab3Z+J3wR/j5j6GS7vwcH42isn7xVPm+eH1pWQ2J8D0=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/klippy";
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchpatch2,
|
||||
buildPackages,
|
||||
pcre,
|
||||
pcre2,
|
||||
jemalloc,
|
||||
@@ -24,7 +25,6 @@ let
|
||||
{
|
||||
version,
|
||||
hash,
|
||||
extraNativeBuildInputs ? [ ],
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "varnish";
|
||||
@@ -35,12 +35,15 @@ let
|
||||
inherit hash;
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = with python3.pkgs; [
|
||||
pkg-config
|
||||
docutils
|
||||
sphinx
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libxslt
|
||||
groff
|
||||
@@ -54,6 +57,14 @@ let
|
||||
++ lib.optional stdenv.hostPlatform.isDarwin libunwind
|
||||
++ lib.optional stdenv.hostPlatform.isLinux jemalloc;
|
||||
|
||||
configureFlags = [
|
||||
# the checks behind those to not work when doing cross but for simplicity we always define them
|
||||
"ac_cv_have_tcp_fastopen=yes"
|
||||
"ac_cv_have_tcp_keep=yes"
|
||||
"ac_cv_have_working_close_range=yes"
|
||||
"PYTHON=${buildPackages.python3.interpreter}"
|
||||
];
|
||||
|
||||
buildFlags = [ "localstatedir=/var/run" ];
|
||||
|
||||
patches =
|
||||
@@ -75,11 +86,32 @@ let
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace bin/varnishtest/vtc_main.c --replace /bin/rm "${coreutils}/bin/rm"
|
||||
substituteInPlace bin/varnishtest/vtc_main.c --replace-fail /bin/rm "${coreutils}/bin/rm"
|
||||
'';
|
||||
|
||||
postConfigure = lib.optionalString (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
|
||||
# prevent cache invalidation
|
||||
substituteInPlace bin/varnishd/Makefile \
|
||||
--replace-fail "vhp_hufdec.h: vhp_gen_hufdec" "vhp_hufdec.h:"
|
||||
|
||||
ln -s "${buildPackages.varnish.vhp_hufdec_h}" bin/varnishd/vhp_hufdec.h
|
||||
|
||||
substituteInPlace bin/varnishstat/Makefile \
|
||||
--replace-fail "varnishstat_curses_help.c: varnishstat_help_gen" "varnishstat_curses_help.c:" \
|
||||
--replace-fail "./varnishstat_help_gen" "${buildPackages.varnish}/bin/varnishstat_help_gen"
|
||||
|
||||
# the docs execute lots of commands to gather options and flags
|
||||
substituteInPlace doc/Makefile \
|
||||
--replace-fail "SUBDIRS = graphviz sphinx" "SUBDIRS = graphviz"
|
||||
substituteInPlace Makefile \
|
||||
--replace-fail "include lib bin vmod etc doc man contrib" "include lib bin vmod etc doc contrib"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram "$out/sbin/varnishd" --prefix PATH : "${lib.makeBinPath [ stdenv.cc ]}"
|
||||
''
|
||||
+ lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
|
||||
cp bin/varnishd/vhp_hufdec.h $vhp_hufdec_h
|
||||
'';
|
||||
|
||||
# https://github.com/varnishcache/varnish-cache/issues/1875
|
||||
@@ -88,7 +120,10 @@ let
|
||||
outputs = [
|
||||
"out"
|
||||
"dev"
|
||||
]
|
||||
++ lib.optionals (stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
|
||||
"man"
|
||||
"vhp_hufdec_h" # only used for cross compilation
|
||||
];
|
||||
|
||||
passthru = {
|
||||
|
||||
@@ -734,6 +734,7 @@ mapAliases {
|
||||
gsettings-qt = lomiri.gsettings-qt; # Added 2025-12-06
|
||||
gtkcord4 = throw "'gtkcord4' has been renamed to/replaced by 'dissent'"; # Converted to throw 2025-10-27
|
||||
gtkextra = throw "'gtkextra' has been removed due to lack of maintenance upstream."; # Added 2025-06-10
|
||||
gtuber = throw "'gtuber' has been removed due to being discontinued by upstream."; # Added 2025-12-12
|
||||
guile-disarchive = throw "'guile-disarchive' has been renamed to/replaced by 'disarchive'"; # Converted to throw 2025-10-27
|
||||
guile-sdl = throw "guile-sdl has been removed, as it was broken"; # Added 2025-08-25
|
||||
gutenprintBin = gutenprint-bin; # Added 2025-08-21
|
||||
|
||||
@@ -13443,12 +13443,15 @@ self: super: with self; {
|
||||
|
||||
pygal = callPackage ../development/python-modules/pygal { };
|
||||
|
||||
pygame = callPackage ../development/python-modules/pygame { };
|
||||
# pygame-ce is better maintained upstream, the breaking point was https://github.com/NixOS/nixpkgs/pull/475917#issuecomment-3706940043
|
||||
pygame = if pythonAtLeast "3.14" then pygame-ce else pygame-original;
|
||||
|
||||
pygame-ce = callPackage ../development/python-modules/pygame-ce { };
|
||||
|
||||
pygame-gui = callPackage ../development/python-modules/pygame-gui { };
|
||||
|
||||
pygame-original = callPackage ../development/python-modules/pygame-original { };
|
||||
|
||||
pygame-sdl2 = callPackage ../development/python-modules/pygame-sdl2 { };
|
||||
|
||||
pygatt = callPackage ../development/python-modules/pygatt { };
|
||||
|
||||
Reference in New Issue
Block a user