Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2024-02-06 00:12:25 +00:00 committed by GitHub
commit 0e09aea96c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
255 changed files with 14592 additions and 2506 deletions

View file

@ -1256,7 +1256,7 @@ let
(opt.highestPrio or defaultOverridePriority)
(f opt.value);
doRename = { from, to, visible, warn, use, withPriority ? true }:
doRename = { from, to, visible, warn, use, withPriority ? true, condition ? true }:
{ config, options, ... }:
let
fromOpt = getAttrFromPath from options;
@ -1272,7 +1272,7 @@ let
} // optionalAttrs (toType != null) {
type = toType;
});
config = mkMerge [
config = mkIf condition (mkMerge [
(optionalAttrs (options ? warnings) {
warnings = optional (warn && fromOpt.isDefined)
"The option `${showOption from}' defined in ${showFiles fromOpt.files} has been renamed to `${showOption to}'.";
@ -1280,7 +1280,7 @@ let
(if withPriority
then mkAliasAndWrapDefsWithPriority (setAttrByPath to) fromOpt
else mkAliasAndWrapDefinitions (setAttrByPath to) fromOpt)
];
]);
};
/* Use this function to import a JSON file as NixOS configuration.

View file

@ -465,6 +465,9 @@ checkConfigOutput '^1234$' config.c.d.e ./doRename-basic.nix
checkConfigOutput '^"The option `a\.b. defined in `.*/doRename-warnings\.nix. has been renamed to `c\.d\.e.\."$' \
config.result \
./doRename-warnings.nix
checkConfigOutput "^true$" config.result ./doRename-condition.nix ./doRename-condition-enable.nix
checkConfigOutput "^true$" config.result ./doRename-condition.nix ./doRename-condition-no-enable.nix
checkConfigOutput "^true$" config.result ./doRename-condition.nix ./doRename-condition-migrated.nix
# Anonymous modules get deduplicated by key
checkConfigOutput '^"pear"$' config.once.raw ./merge-module-with-key.nix

View file

@ -0,0 +1,10 @@
{ config, lib, ... }:
{
config = {
services.foo.enable = true;
services.foo.bar = "baz";
result =
assert config.services.foos == { "" = { bar = "baz"; }; };
true;
};
}

View file

@ -0,0 +1,10 @@
{ config, lib, ... }:
{
config = {
services.foos."".bar = "baz";
result =
assert config.services.foos == { "" = { bar = "baz"; }; };
assert config.services.foo.bar == "baz";
true;
};
}

View file

@ -0,0 +1,9 @@
{ config, lib, options, ... }:
{
config = {
result =
assert config.services.foos == { };
assert ! options.services.foo.bar.isDefined;
true;
};
}

View file

@ -0,0 +1,42 @@
/*
Simulate a migration from a single-instance `services.foo` to a multi instance
`services.foos.<name>` module, where `name = ""` serves as the legacy /
compatibility instance.
- No instances must exist, unless one is defined in the multi-instance module,
or if the legacy enable option is set to true.
- The legacy instance options must be renamed to the new instance, if it exists.
The relevant scenarios are tested in separate files:
- ./doRename-condition-enable.nix
- ./doRename-condition-no-enable.nix
*/
{ config, lib, ... }:
let
inherit (lib) mkOption mkEnableOption types doRename;
in
{
options = {
services.foo.enable = mkEnableOption "foo";
services.foos = mkOption {
type = types.attrsOf (types.submodule {
options = {
bar = mkOption { type = types.str; };
};
});
default = { };
};
result = mkOption {};
};
imports = [
(doRename {
from = [ "services" "foo" "bar" ];
to = [ "services" "foos" "" "bar" ];
visible = true;
warn = false;
use = x: x;
withPriority = true;
condition = config.services.foo.enable;
})
];
}

View file

@ -4657,6 +4657,12 @@
githubId = 30475873;
name = "Andrei Hava";
};
devplayer0 = {
email = "dev@nul.ie";
github = "devplayer0";
githubId = 1427254;
name = "Jack O'Sullivan";
};
devusb = {
email = "mhelton@devusb.us";
github = "devusb";
@ -9661,6 +9667,11 @@
matrix = "@katexochen:matrix.org";
name = "Paul Meyer";
};
katrinafyi = {
name = "katrinafyi";
github = "katrinafyi";
githubId = 39479354;
};
kayhide = {
email = "kayhide@gmail.com";
github = "kayhide";
@ -14631,6 +14642,11 @@
github = "pennae";
githubId = 82953136;
};
peret = {
name = "Peter Retzlaff";
github = "peret";
githubId = 617977;
};
periklis = {
email = "theopompos@gmail.com";
github = "periklis";
@ -15885,6 +15901,12 @@
githubId = 801525;
name = "rembo10";
};
remexre = {
email = "nathan+nixpkgs@remexre.com";
github = "remexre";
githubId = 4196789;
name = "Nathan Ringo";
};
renatoGarcia = {
email = "fgarcia.renato@gmail.com";
github = "renatoGarcia";
@ -18101,6 +18123,12 @@
githubId = 38893265;
name = "StrikerLulu";
};
struan = {
email = "contact@struanrobertson.co.uk";
github = "struan-robertson";
githubId = 7543617;
name = "Struan Robertson";
};
stteague = {
email = "stteague505@yahoo.com";
github = "stteague";

View file

@ -100,9 +100,11 @@ moonscript,https://github.com/leafo/moonscript.git,dev-1,,,,arobyn
nlua,,,,,,teto
nui.nvim,,,,,,mrcjkb
nvim-cmp,https://github.com/hrsh7th/nvim-cmp,,,,,
nvim-nio,,,,,,mrcjkb
penlight,https://github.com/lunarmodules/Penlight.git,,,,,alerque
plenary.nvim,https://github.com/nvim-lua/plenary.nvim.git,,,,5.1,
rapidjson,https://github.com/xpol/lua-rapidjson.git,,,,,
rocks.nvim,,,,,5.1,teto mrcjkb
rest.nvim,,,,,5.1,teto
rustaceanvim,,,,,,mrcjkb
say,https://github.com/Olivine-Labs/say.git,,,,,

1 name src ref server version luaversion maintainers
100 nlua teto
101 nui.nvim mrcjkb
102 nvim-cmp https://github.com/hrsh7th/nvim-cmp
103 nvim-nio mrcjkb
104 penlight https://github.com/lunarmodules/Penlight.git alerque
105 plenary.nvim https://github.com/nvim-lua/plenary.nvim.git 5.1
106 rapidjson https://github.com/xpol/lua-rapidjson.git
107 rocks.nvim 5.1 teto mrcjkb
108 rest.nvim 5.1 teto
109 rustaceanvim mrcjkb
110 say https://github.com/Olivine-Labs/say.git

View file

@ -277,6 +277,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- New options were added to the dnsdist module to enable and configure a DNSCrypt endpoint (see `services.dnsdist.dnscrypt.enable`, etc.).
The module can generate the DNSCrypt provider key pair, certificates and also performs their rotation automatically with no downtime.
- With a bump to `sonarr` v4, existing config database files will be upgraded automatically, but note that some old apparently-working configs [might actually be corrupt and fail to upgrade cleanly](https://forums.sonarr.tv/t/sonarr-v4-released/33089).
- The Yama LSM is now enabled by default in the kernel, which prevents ptracing
non-child processes. This means you will not be able to attach gdb to an
existing process, but will need to start that process from gdb (so it is a

View file

@ -30,6 +30,7 @@ with lib;
beam = super.beam_nox;
cairo = super.cairo.override { x11Support = false; };
dbus = super.dbus.override { x11Support = false; };
fastfetch = super.fastfetch.override { vulkanSupport = false; waylandSupport = false; x11Support = false; };
ffmpeg_4 = super.ffmpeg_4.override { ffmpegVariant = "headless"; };
ffmpeg_5 = super.ffmpeg_5.override { ffmpegVariant = "headless"; };
# dep of graphviz, libXpm is optional for Xpm support

View file

@ -14,6 +14,15 @@ let
in
{
imports = [
(mkRemovedOptionModule [ "services" "rabbitmq" "cookie" ] ''
This option wrote the Erlang cookie to the store, while it should be kept secret.
Please remove it from your NixOS configuration and deploy a cookie securely instead.
The renamed `unsafeCookie` must ONLY be used in isolated non-production environments such as NixOS VM tests.
'')
];
###### interface
options = {
services.rabbitmq = {
@ -62,13 +71,18 @@ in
'';
};
cookie = mkOption {
unsafeCookie = mkOption {
default = "";
type = types.str;
description = lib.mdDoc ''
Erlang cookie is a string of arbitrary length which must
be the same for several nodes to be allowed to communicate.
Leave empty to generate automatically.
Setting the cookie via this option exposes the cookie to the store, which
is not recommended for security reasons.
Only use this option in an isolated non-production environment such as
NixOS VM tests.
'';
};
@ -209,9 +223,8 @@ in
};
preStart = ''
${optionalString (cfg.cookie != "") ''
echo -n ${cfg.cookie} > ${cfg.dataDir}/.erlang.cookie
chmod 600 ${cfg.dataDir}/.erlang.cookie
${optionalString (cfg.unsafeCookie != "") ''
install -m 600 <(echo -n ${cfg.unsafeCookie}) ${cfg.dataDir}/.erlang.cookie
''}
'';
};

View file

@ -20,10 +20,11 @@ let
mkBot = n: c:
format.generate "${n}.json" (c.settings // {
SteamLogin = if c.username == "" then n else c.username;
Enabled = c.enabled;
} // lib.optionalAttrs (c.passwordFile != null) {
SteamPassword = c.passwordFile;
# sets the password format to file (https://github.com/JustArchiNET/ArchiSteamFarm/wiki/Security#file)
PasswordFormat = 4;
Enabled = c.enabled;
});
in
{
@ -127,8 +128,12 @@ in
default = "";
};
passwordFile = lib.mkOption {
type = lib.types.path;
description = lib.mdDoc "Path to a file containing the password. The file must be readable by the `archisteamfarm` user/group.";
type = with lib.types; nullOr path;
default = null;
description = lib.mdDoc ''
Path to a file containing the password. The file must be readable by the `archisteamfarm` user/group.
Omit or set to null to provide the password a different way, such as through the web-ui.
'';
};
enabled = lib.mkOption {
type = lib.types.bool;

View file

@ -137,7 +137,7 @@ in
config = lib.mkIf cfg.enable {
warnings = lib.optional (lib.versions.major cfg.package.version <= "2022")
"YouTrack 2022.x is deprecated. See https://nixos.org/manual/nixos/unstable/index.html#module-services-youtrack for details on how to upgrade."
++ lib.optional (cfg.extraParams != "" && (lib.versions.major cfg.package.version >= "2023"))
++ lib.optional (cfg.extraParams != {} && (lib.versions.major cfg.package.version >= "2023"))
"'services.youtrack.extraParams' is deprecated and has no effect on YouTrack 2023.x and newer. Please migrate to 'services.youtrack.generalParameters'"
++ lib.optional (cfg.jvmOpts != "" && (lib.versions.major cfg.package.version >= "2023"))
"'services.youtrack.jvmOpts' is deprecated and has no effect on YouTrack 2023.x and newer. Please migrate to 'services.youtrack.generalParameters'";
@ -231,7 +231,7 @@ in
users.groups.youtrack = {};
services.nginx = lib.mkIf (cfg.virtualHost != null) {
upstreams.youtrack.servers."${cfg.address}:${toString cfg.port}" = {};
upstreams.youtrack.servers."${cfg.address}:${toString cfg.environmentalParameters.listen-port}" = {};
virtualHosts.${cfg.virtualHost}.locations = {
"/" = {
proxyPass = "http://youtrack";

View file

@ -466,6 +466,7 @@ in
Type = "notify";
KillMode = "process"; # when stopping, leave the VMs alone
Restart = "no";
OOMScoreAdjust = "-999";
};
restartIfChanged = false;
};

View file

@ -934,6 +934,7 @@ in {
upnp.nftables = handleTest ./upnp.nix { useNftables = true; };
uptermd = handleTest ./uptermd.nix {};
uptime-kuma = handleTest ./uptime-kuma.nix {};
urn-timer = handleTest ./urn-timer.nix {};
usbguard = handleTest ./usbguard.nix {};
user-activation-scripts = handleTest ./user-activation-scripts.nix {};
user-expiry = runTest ./user-expiry.nix;

View file

@ -29,6 +29,7 @@ in {
packages = with pkgs; [
ayatana-indicator-datetime
ayatana-indicator-messages
ayatana-indicator-session
] ++ (with pkgs.lomiri; [
lomiri-indicator-network
telephony-service

View file

@ -18,8 +18,6 @@ import ../make-test-python.nix (
nodes.machine =
{ lib, ... }:
{
environment.systemPackages = [ pkgs.lxd-to-incus ];
virtualisation = {
diskSize = 6144;
cores = 2;

View file

@ -23,7 +23,7 @@ let
assert "${linuxPackages.kernel.modDirVersion}" in machine.succeed("uname -a")
'';
}) args);
kernels = pkgs.linuxKernel.vanillaPackages // {
kernels = (removeAttrs pkgs.linuxKernel.vanillaPackages ["__attrsFailEvaluation"]) // {
inherit (pkgs.linuxKernel.packages)
linux_4_19_hardened
linux_5_4_hardened

26
nixos/tests/urn-timer.nix Normal file
View file

@ -0,0 +1,26 @@
import ./make-test-python.nix ({ pkgs, ... }: {
name = "urn-timer";
meta = with pkgs.lib.maintainers; {
maintainers = [ fgaz ];
};
nodes.machine = { config, pkgs, ... }: {
imports = [
./common/x11.nix
];
services.xserver.enable = true;
environment.systemPackages = [ pkgs.urn-timer ];
};
enableOCR = true;
testScript =
''
machine.wait_for_x()
machine.execute("urn-gtk ${pkgs.urn-timer.src}/splits_examples/sotn.json >&2 &")
machine.wait_for_window("urn")
machine.wait_for_text(r"(Mist|Bat|Reverse|Dracula)")
machine.screenshot("screen")
'';
})

View file

@ -27,14 +27,14 @@
stdenv.mkDerivation rec {
pname = "furnace";
version = "0.6";
version = "0.6.1";
src = fetchFromGitHub {
owner = "tildearrow";
repo = "furnace";
rev = "v${version}";
fetchSubmodules = true;
hash = "sha256-8we7vKyGWjM9Rx0MJjSKLJcKBHiHt5vjuy17HHx/pP8=";
hash = "sha256-QUOZGUyZp20ls7rtDK+cmg3Smbd+hl1m9aMhHQmMMbY=";
};
postPatch = lib.optionalString stdenv.hostPlatform.isLinux ''

View file

@ -1,32 +1,32 @@
{ lib
, python3
, fetchPypi
, fetchFromGitHub
, mopidy
}:
let
python = python3.override {
packageOverrides = self: super: {
ytmusicapi = super.ytmusicapi.overridePythonAttrs (old: rec {
version = "0.25.1";
src = fetchPypi {
inherit (old) pname;
inherit version;
hash = "sha256-uc/fgDetSYaCRzff0SzfbRhs3TaKrfE2h6roWkkj8yQ=";
};
});
};
};
python = python3;
in python.pkgs.buildPythonApplication rec {
pname = "mopidy-ytmusic";
version = "0.3.8";
version = "0.3.9";
pyproject = true;
src = fetchPypi {
inherit version;
pname = "mopidy_ytmusic";
sha256 = "6b4d8ff9c477dbdd30d0259a009494ebe104cad3f8b37241ae503e5bce4ec2e8";
src = fetchFromGitHub {
owner = "jmcdo29";
repo = "mopidy-ytmusic";
rev = "v${version}";
hash = "sha256-2o4fDtaIxRDvIiAGV/9qK/00BmYXasBUwW03fxFcDAU=";
};
postPatch = ''
# only setup.py has up to date dependencies
rm pyproject.toml
'';
nativeBuildInputs = with python.pkgs; [
setuptools
];
propagatedBuildInputs = [
(mopidy.override { pythonPackages = python.pkgs; })
python.pkgs.ytmusicapi
@ -39,9 +39,9 @@ in python.pkgs.buildPythonApplication rec {
doCheck = false;
meta = with lib; {
changelog = "https://github.com/OzymandiasTheGreat/mopidy-ytmusic/blob/v${version}/CHANGELOG.rst";
changelog = "https://github.com/jmcdo29/mopidy-ytmusic/releases/tag/${src.rev}";
description = "Mopidy extension for playing music from YouTube Music";
homepage = "https://github.com/OzymandiasTheGreat/mopidy-ytmusic";
homepage = "https://github.com/jmcdo29/mopidy-ytmusic";
license = licenses.asl20;
maintainers = [ maintainers.nickhu ];
};

View file

@ -2,7 +2,6 @@
, stdenv
, buildDotnetModule
, fetchFromGitHub
, fetchpatch
, dotnetCorePackages
, dbus
, fontconfig
@ -14,28 +13,15 @@
buildDotnetModule rec {
pname = "OpenUtau";
version = "0.1.158";
version = "0.1.327";
src = fetchFromGitHub {
owner = "stakira";
repo = "OpenUtau";
rev = "build/${version}";
hash = "sha256-/+hlL2sj/juzWrDcb5dELp8Zdg688XK8OnjKz20rx/M=";
hash = "sha256-Bss32Fk4yBEFqaIxT2dfdvWXz09sO6akiitDQBXoSvY=";
};
patches = [
# Needed until stakira/OpenUtau#836 is merged and released to fix crashing issues. See stakira/OpenUtau#822
(fetchpatch {
name = "openutau-update-avalonia-to-11.0.4.patch";
url = "https://github.com/stakira/OpenUtau/commit/0130d7387fb626a72850305dc61d7c175caccc0f.diff";
hash = "sha256-w9PLnfiUtiKY/8+y4qqINeEul4kP72nKEVc5c8p2g7c=";
# It looks like fetched files use CRLF but patch comes back with LF
decode = "sed -e 's/$/\\r/'";
})
];
# Needs binary for above patch due to CRLF shenanigans otherwise being ignored
patchFlags = [ "-p1" "--binary" ];
dotnet-sdk = dotnetCorePackages.sdk_7_0;
dotnet-runtime = dotnetCorePackages.runtime_7_0;
@ -58,11 +44,15 @@ buildDotnetModule rec {
# socket cannot bind to localhost on darwin for tests
doCheck = !stdenv.isDarwin;
# needed until upstream bumps to dotnet 7
# net7.0 replacement needed until upstream bumps to dotnet 7
postPatch = ''
substituteInPlace OpenUtau/OpenUtau.csproj OpenUtau.Test/OpenUtau.Test.csproj --replace \
'<TargetFramework>net6.0</TargetFramework>' \
'<TargetFramework>net7.0</TargetFramework>'
substituteInPlace OpenUtau/Program.cs --replace \
'/usr/bin/fc-match' \
'${lib.getExe' fontconfig "fc-match"}'
'';
# need to make sure proprietary worldline resampler is copied

View file

@ -41,18 +41,18 @@
(fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp"; version = "3.8.0"; sha256 = "1kmry65csvfn72zzc16vj1nfbfwam28wcmlrk3m5rzb8ydbzgylb"; })
(fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp.Scripting"; version = "3.8.0"; sha256 = "0w0yx0lpg54iw5jazqk46h48gx43ij32gwac8iywdj6kxfxm03vw"; })
(fetchNuGet { pname = "Microsoft.CodeAnalysis.Scripting.Common"; version = "3.8.0"; sha256 = "0hjgxcsj5zy27lqk0986m59n5dbplx2vjjla2lsvg4bwg8qa7bpk"; })
(fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.6.2"; sha256 = "1wwmg6hn4dp2mvwn2bm81wccdw149lq17xdnpz17mvg4zcwmax7g"; })
(fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.8.0"; sha256 = "173wjadp3gan4x2jfjchngnc4ca4mb95h1sbb28jydfkfw0z1zvj"; })
(fetchNuGet { pname = "Microsoft.CSharp"; version = "4.3.0"; sha256 = "0gw297dgkh0al1zxvgvncqs0j15lsna9l1wpqas4rflmys440xvb"; })
(fetchNuGet { pname = "Microsoft.Extensions.ObjectPool"; version = "5.0.10"; sha256 = "07fk669pjydkcg6bxxv7aj548fzab4yb7ba8370d719lgi9y425l"; })
(fetchNuGet { pname = "Microsoft.ML.OnnxRuntime"; version = "1.15.0"; sha256 = "1wjafpn0fgxxyl5kw427ypc8c2gwha286sf96mv3fivdk3qyysxw"; })
(fetchNuGet { pname = "Microsoft.ML.OnnxRuntime.Managed"; version = "1.15.0"; sha256 = "06hnsx0a81gbz5zr4qqij2c518wqdn3hg784zvkj0jlkwi5z2hr8"; })
(fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.6.2"; sha256 = "1a658bnh5q3lfkrr81h3lyx1mc3hggnjr1bpmim71rr2s42ad70v"; })
(fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.8.0"; sha256 = "1syvl3g0hbrcgfi9rq6pld8s8hqqww4dflf1lxn59ccddyyx0gmv"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.1.2"; sha256 = "1507hnpr9my3z4w1r6xk5n0s1j3y6a2c2cnynj76za7cphxi1141"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.6.2"; sha256 = "0asbrbdyyig1p034smf79lszzbfv1cn6q181i7d4p2vsiqpjp9sj"; })
(fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.6.2"; sha256 = "0lcj8kkcnxbwiaw6j0xf4fxqpa6z0s41nq52spvckfg4367lg4fg"; })
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.8.0"; sha256 = "0b0i7lmkrcfvim8i3l93gwqvkhhhfzd53fqfnygdqvkg6np0cg7m"; })
(fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.8.0"; sha256 = "0f5jah93kjkvxwmhwb78lw11m9pkkq9fvf135hpymmmpxqbdh97q"; })
(fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "5.0.0"; sha256 = "0sja4ba0mrvdamn0r9mhq38b9dxi08yb3c1hzh29n1z6ws1hlrcq"; })
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "6.0.0"; sha256 = "0c6pcj088g1yd1vs529q3ybgsd2vjlk5y1ic6dkmbhvrp5jibl9p"; })
@ -227,21 +227,19 @@
(fetchNuGet { pname = "System.Windows.Extensions"; version = "5.0.0"; sha256 = "0q776jpacfjmps4sc6gjvqj89w1ynj41hb0lvqmfl3j221lsfdbz"; })
(fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.3.0"; sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1"; })
(fetchNuGet { pname = "System.Xml.XDocument"; version = "4.3.0"; sha256 = "08h8fm4l77n0nd4i4fk2386y809bfbwqb7ih9d7564ifcxr5ssxd"; })
(fetchNuGet { pname = "TinyPinyin.Net"; version = "1.0.2"; sha256 = "1f71xv8891gq5fsw89zq0n85hhxpc5pkh5ykwvigqpwb1s4zpx3w"; })
(fetchNuGet { pname = "Tmds.DBus.Protocol"; version = "0.15.0"; sha256 = "0d99kcs7r9cp6gpyc7z230czkkyx4164x86dhy0mca73f2ykc2g2"; })
(fetchNuGet { pname = "ToolGood.Words.Pinyin"; version = "3.1.0"; sha256 = "19jpdbwclknc7wxpdrazq4pjgspzkzkzj0s9hxqksajx6pzgawhx"; })
(fetchNuGet { pname = "UTF.Unknown"; version = "2.5.1"; sha256 = "0giks1ww539m4r5kzdyzkq0cvfi5k50va9idjz93rclgljl96gpl"; })
(fetchNuGet { pname = "Vortice.DirectX"; version = "2.4.2"; sha256 = "11yjyvyz922z1ygl8gxmdym3918df12nl7xxry4pdjpl8is33qic"; })
(fetchNuGet { pname = "Vortice.DXGI"; version = "2.4.2"; sha256 = "17vsnm9ca6nqk3f1dfpfvd6i6fp8x8v41bn65rchrzwcv1zzi6pz"; })
(fetchNuGet { pname = "Vortice.Mathematics"; version = "1.4.25"; sha256 = "0vl6g087disxyzskvkbnwym74s47lkza0ly3nk4y0y88zibcggrj"; })
(fetchNuGet { pname = "WanaKana-net"; version = "1.0.0"; sha256 = "197qklph8hzrihalpi0kx4n9sf94xnhywzscisnlsxybxxdjz79z"; })
(fetchNuGet { pname = "xunit"; version = "2.4.2"; sha256 = "0barl6x1qwx9srjxnanw9z0jik7lv1fp6cvmgqhk10aiv57dgqxm"; })
(fetchNuGet { pname = "xunit"; version = "2.6.2"; sha256 = "0g5j0xwrv9cwrx91cjb9gas3wnkcwwk8krhdzsv50vlyp71pqqgz"; })
(fetchNuGet { pname = "xunit.abstractions"; version = "2.0.3"; sha256 = "00wl8qksgkxld76fgir3ycc5rjqv1sqds6x8yx40927q5py74gfh"; })
(fetchNuGet { pname = "xunit.analyzers"; version = "1.0.0"; sha256 = "0p4f24c462z49gvbh3k4z5ksa8ffa6p8abdgysqbbladl96im4c5"; })
(fetchNuGet { pname = "xunit.assert"; version = "2.4.2"; sha256 = "0ifdry9qq3yaw2lfxdll30ljx1jkyhwwy3ydw6gd97y3kifr3k60"; })
(fetchNuGet { pname = "xunit.core"; version = "2.4.2"; sha256 = "1ir029igwm6b571lcm6585v5yxagy66rwrg26v4a1fnjq9dnh4cd"; })
(fetchNuGet { pname = "xunit.extensibility.core"; version = "2.4.2"; sha256 = "1h0a62xddsd82lljfjldn1nqy17imga905jb7j0ddr10wi8cqm62"; })
(fetchNuGet { pname = "xunit.extensibility.execution"; version = "2.4.2"; sha256 = "0r9gczqz4bc59cwl6d6wali6pvlw210i97chc1nlwn2qh383m54p"; })
(fetchNuGet { pname = "xunit.runner.visualstudio"; version = "2.4.5"; sha256 = "0y8w33ci80z8k580pp24mfnaw1r8ji0w3az543xxcz6aagax9zhs"; })
(fetchNuGet { pname = "xunit.analyzers"; version = "1.6.0"; sha256 = "1nwrz0mxk2hk2rwwabgr0a4wa3j22qwm94xvrzci39l58hmzxpbi"; })
(fetchNuGet { pname = "xunit.assert"; version = "2.6.2"; sha256 = "1nxg9m8qhh05i9linap7a8bdhxnr7x2pg7piw8hh76cshx0402ql"; })
(fetchNuGet { pname = "xunit.core"; version = "2.6.2"; sha256 = "0q0kzjdb0hxq4bajl11pvnwl1dp47b2adqx47j30bi2llj21ihj6"; })
(fetchNuGet { pname = "xunit.extensibility.core"; version = "2.6.2"; sha256 = "1a27ng02piwjr3ggff4mg0r92b6rabd1339clnxzqxwcyf620q2c"; })
(fetchNuGet { pname = "xunit.extensibility.execution"; version = "2.6.2"; sha256 = "1lhhlrq6lzd4w61x78dhxjz1453lnipjgph8sc52izgwq9d5xp1n"; })
(fetchNuGet { pname = "xunit.runner.visualstudio"; version = "2.5.4"; sha256 = "0mp3z8m5l4q09lr17142hff6p05zl189cwz3iavfqk8dpspyjgvd"; })
(fetchNuGet { pname = "YamlDotNet"; version = "13.1.0"; sha256 = "1mqgg0m1mr8vmcz24miagmf1s2b4mmm5mbsf1p0d7cippficiiaz"; })
]

View file

@ -1373,6 +1373,18 @@ final: prev:
meta.homepage = "https://github.com/ekickx/clipboard-image.nvim/";
};
cloak-nvim = buildVimPlugin {
pname = "cloak.nvim";
version = "2024-02-02";
src = fetchFromGitHub {
owner = "laytan";
repo = "cloak.nvim";
rev = "9abe4e986e924fc54a972c1b0ff52b65a0622624";
sha256 = "0jnhxxq2c7bprkicqxqi17fybfgpzv0z1jxrqm346hmnmm8amgvw";
};
meta.homepage = "https://github.com/laytan/cloak.nvim/";
};
close-buffers-vim = buildVimPlugin {
pname = "close-buffers.vim";
version = "2020-09-23";

View file

@ -17,15 +17,6 @@ version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
[[package]]
name = "aho-corasick"
version = "0.7.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
dependencies = [
"memchr",
]
[[package]]
name = "aho-corasick"
version = "1.1.2"
@ -163,6 +154,12 @@ version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "bitflags"
version = "2.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
[[package]]
name = "block"
version = "0.1.6"
@ -355,6 +352,7 @@ dependencies = [
"printer",
"rayon",
"regex",
"serde",
"serde_json",
"subprocess",
"tokio",
@ -568,6 +566,12 @@ dependencies = [
"serde_json",
]
[[package]]
name = "dunce"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b"
[[package]]
name = "either"
version = "1.9.0"
@ -604,6 +608,16 @@ version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
[[package]]
name = "errno"
version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
dependencies = [
"libc",
"windows-sys 0.52.0",
]
[[package]]
name = "extracted_fzy"
version = "0.1.0"
@ -783,7 +797,7 @@ version = "0.17.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7b989d6a7ca95a362cf2cfc5ad688b3a467be1f87e480b8dad07fee8c79b0044"
dependencies = [
"bitflags",
"bitflags 1.3.2",
"libc",
"libgit2-sys",
"log",
@ -796,7 +810,7 @@ version = "0.4.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d"
dependencies = [
"aho-corasick 1.1.2",
"aho-corasick",
"bstr",
"fnv",
"log",
@ -805,40 +819,38 @@ dependencies = [
[[package]]
name = "grep-matcher"
version = "0.1.6"
version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3902ca28f26945fe35cad349d776f163981d777fee382ccd6ef451126f51b319"
checksum = "47a3141a10a43acfedc7c98a60a834d7ba00dfe7bec9071cbfc19b55b292ac02"
dependencies = [
"memchr",
]
[[package]]
name = "grep-regex"
version = "0.1.11"
version = "0.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "997598b41d53a37a2e3fc5300d5c11d825368c054420a9c65125b8fe1078463f"
checksum = "f748bb135ca835da5cbc67ca0e6955f968db9c5df74ca4f56b18e1ddbc68230d"
dependencies = [
"aho-corasick 0.7.20",
"bstr",
"grep-matcher",
"log",
"regex",
"regex-syntax 0.6.29",
"thread_local",
"regex-automata 0.4.3",
"regex-syntax 0.8.2",
]
[[package]]
name = "grep-searcher"
version = "0.1.11"
version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5601c4b9f480f0c9ebb40b1f6cbf447b8a50c5369223937a6c5214368c58779f"
checksum = "ba536ae4f69bec62d8839584dd3153d3028ef31bb229f04e09fb5a9e5a193c54"
dependencies = [
"bstr",
"bytecount",
"encoding_rs",
"encoding_rs_io",
"grep-matcher",
"log",
"memchr",
"memmap2",
]
@ -1203,6 +1215,12 @@ version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
[[package]]
name = "linux-raw-sys"
version = "0.4.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
[[package]]
name = "lock_api"
version = "0.4.11"
@ -1219,6 +1237,19 @@ version = "0.4.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
[[package]]
name = "lsp-types"
version = "0.94.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c66bfd44a06ae10647fe3f8214762e9369fd4248df1350924b4ef9e770a85ea1"
dependencies = [
"bitflags 1.3.2",
"serde",
"serde_json",
"serde_repr",
"url",
]
[[package]]
name = "malloc_buf"
version = "0.0.6"
@ -1230,7 +1261,7 @@ dependencies = [
[[package]]
name = "maple"
version = "0.1.49"
version = "0.1.50"
dependencies = [
"built",
"chrono",
@ -1263,6 +1294,7 @@ dependencies = [
"ignore",
"itertools",
"maple_derive",
"maple_lsp",
"matcher",
"once_cell",
"parking_lot",
@ -1276,6 +1308,7 @@ dependencies = [
"rpc",
"serde",
"serde_json",
"strsim",
"sublime_syntax",
"subprocess",
"thiserror",
@ -1301,6 +1334,23 @@ dependencies = [
"types",
]
[[package]]
name = "maple_lsp"
version = "0.1.0"
dependencies = [
"futures-util",
"lsp-types",
"parking_lot",
"paths",
"rpc",
"serde",
"serde_json",
"thiserror",
"tokio",
"tracing",
"which",
]
[[package]]
name = "matcher"
version = "0.1.0"
@ -1331,9 +1381,9 @@ checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
[[package]]
name = "memmap2"
version = "0.5.10"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327"
checksum = "deaba38d7abf1d4cca21cc89e932e542ba2b9258664d2a9ef0e61512039c9375"
dependencies = [
"libc",
]
@ -1394,7 +1444,7 @@ version = "0.26.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
dependencies = [
"bitflags",
"bitflags 1.3.2",
"cfg-if",
"libc",
"memoffset 0.7.1",
@ -1485,7 +1535,7 @@ version = "6.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8c4b31c8722ad9171c6d77d3557db078cab2bd50afcc9d09c8b315c59df8ca4f"
dependencies = [
"bitflags",
"bitflags 1.3.2",
"libc",
"once_cell",
"onig_sys",
@ -1535,6 +1585,7 @@ name = "paths"
version = "0.1.0"
dependencies = [
"dirs",
"dunce",
"itertools",
"serde",
]
@ -1663,7 +1714,7 @@ version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
dependencies = [
"bitflags",
"bitflags 1.3.2",
]
[[package]]
@ -1672,7 +1723,7 @@ version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
dependencies = [
"bitflags",
"bitflags 1.3.2",
]
[[package]]
@ -1692,7 +1743,7 @@ version = "1.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
dependencies = [
"aho-corasick 1.1.2",
"aho-corasick",
"memchr",
"regex-automata 0.4.3",
"regex-syntax 0.8.2",
@ -1713,7 +1764,7 @@ version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
dependencies = [
"aho-corasick 1.1.2",
"aho-corasick",
"memchr",
"regex-syntax 0.8.2",
]
@ -1813,6 +1864,19 @@ version = "0.1.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
[[package]]
name = "rustix"
version = "0.38.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"
dependencies = [
"bitflags 2.4.1",
"errno",
"libc",
"linux-raw-sys",
"windows-sys 0.48.0",
]
[[package]]
name = "rustls"
version = "0.21.8"
@ -1921,6 +1985,17 @@ dependencies = [
"serde",
]
[[package]]
name = "serde_repr"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "serde_spanned"
version = "0.6.4"
@ -2053,7 +2128,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e02b4b303bf8d08bfeb0445cba5068a3d306b6baece1d5582171a9bf49188f91"
dependencies = [
"bincode",
"bitflags",
"bitflags 1.3.2",
"flate2",
"fnv",
"once_cell",
@ -2073,7 +2148,7 @@ version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
dependencies = [
"bitflags",
"bitflags 1.3.2",
"core-foundation",
"system-configuration-sys",
]
@ -2471,6 +2546,9 @@ name = "tree_sitter"
version = "0.1.0"
dependencies = [
"cc",
"once_cell",
"serde",
"toml 0.5.11",
"tree-sitter",
"tree-sitter-bash",
"tree-sitter-c",
@ -2553,6 +2631,7 @@ dependencies = [
"form_urlencoded",
"idna",
"percent-encoding",
"serde",
]
[[package]]
@ -2707,6 +2786,19 @@ version = "0.25.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc"
[[package]]
name = "which"
version = "5.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9bf3ea8596f3a0dd5980b46430f2058dfe2c36a27ccfbb1845d6fbfcd9ba6e14"
dependencies = [
"either",
"home",
"once_cell",
"rustix",
"windows-sys 0.48.0",
]
[[package]]
name = "winapi"
version = "0.3.9"
@ -2774,6 +2866,15 @@ dependencies = [
"windows-targets 0.48.5",
]
[[package]]
name = "windows-sys"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
dependencies = [
"windows-targets 0.52.0",
]
[[package]]
name = "windows-targets"
version = "0.42.2"
@ -2804,6 +2905,21 @@ dependencies = [
"windows_x86_64_msvc 0.48.5",
]
[[package]]
name = "windows-targets"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
dependencies = [
"windows_aarch64_gnullvm 0.52.0",
"windows_aarch64_msvc 0.52.0",
"windows_i686_gnu 0.52.0",
"windows_i686_msvc 0.52.0",
"windows_x86_64_gnu 0.52.0",
"windows_x86_64_gnullvm 0.52.0",
"windows_x86_64_msvc 0.52.0",
]
[[package]]
name = "windows_aarch64_gnullvm"
version = "0.42.2"
@ -2816,6 +2932,12 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
[[package]]
name = "windows_aarch64_gnullvm"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
[[package]]
name = "windows_aarch64_msvc"
version = "0.42.2"
@ -2828,6 +2950,12 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
[[package]]
name = "windows_aarch64_msvc"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
[[package]]
name = "windows_i686_gnu"
version = "0.42.2"
@ -2840,6 +2968,12 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
[[package]]
name = "windows_i686_gnu"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
[[package]]
name = "windows_i686_msvc"
version = "0.42.2"
@ -2852,6 +2986,12 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
[[package]]
name = "windows_i686_msvc"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
[[package]]
name = "windows_x86_64_gnu"
version = "0.42.2"
@ -2864,6 +3004,12 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
[[package]]
name = "windows_x86_64_gnu"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
[[package]]
name = "windows_x86_64_gnullvm"
version = "0.42.2"
@ -2876,6 +3022,12 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
[[package]]
name = "windows_x86_64_gnullvm"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
[[package]]
name = "windows_x86_64_msvc"
version = "0.42.2"
@ -2888,6 +3040,12 @@ version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
[[package]]
name = "windows_x86_64_msvc"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
[[package]]
name = "winnow"
version = "0.5.18"

View file

@ -11,13 +11,13 @@
}:
let
version = "0.49";
version = "0.50";
src = fetchFromGitHub {
owner = "liuchengxu";
repo = "vim-clap";
rev = "v${version}";
hash = "sha256-xir0v3SzfkxNXKR6N7Rso0QFtVQIRfu0TIPGWSEwsHM=";
hash = "sha256-EYAylATdtwDzM92tN4OlzbQ1XqErRwT9mCNpzj63oxk=";
};
meta = with lib; {

View file

@ -114,6 +114,7 @@ https://github.com/p00f/clangd_extensions.nvim/,HEAD,
https://github.com/rhysd/clever-f.vim/,,
https://github.com/bbchung/clighter8/,,
https://github.com/ekickx/clipboard-image.nvim/,,
https://github.com/laytan/cloak.nvim/,HEAD,
https://github.com/asheq/close-buffers.vim/,HEAD,
https://github.com/winston0410/cmd-parser.nvim/,,
https://github.com/FelipeLema/cmp-async-path/,HEAD,

View file

@ -3279,6 +3279,19 @@ let
};
};
shopify.ruby-lsp = buildVscodeMarketplaceExtension {
mktplcRef = {
publisher = "shopify";
name = "ruby-lsp";
version = "0.5.8";
sha256 = "sha256-1FfBnw98SagHf1P7udWzMU6BS5dBihpeRj4qv9S4ZHw=";
};
meta = {
description = "VS Code plugin for connecting with the Ruby LSP";
license = lib.licenses.mit;
};
};
shyykoserhiy.vscode-spotify = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "vscode-spotify";

View file

@ -1,43 +0,0 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook
, zlib, SDL, readline, libGLU, libGL, libX11 }:
with lib;
stdenv.mkDerivation rec {
pname = "atari800";
version = "5.0.0";
src = fetchFromGitHub {
owner = "atari800";
repo = "atari800";
rev = "ATARI800_${replaceStrings ["."] ["_"] version}";
sha256 = "sha256-+eJXhqPyU0GhmzF7DbteTXzEnn5klCor9Io/UgXQfQg=";
};
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ zlib SDL readline libGLU libGL libX11 ];
configureFlags = [
"--target=default"
"--with-video=sdl"
"--with-sound=sdl"
"--with-readline"
"--with-opengl"
"--with-x"
"--enable-riodevice"
];
meta = {
homepage = "https://atari800.github.io/";
description = "An Atari 8-bit emulator";
longDescription = ''
Atari800 is the emulator of Atari 8-bit computer systems and
5200 game console for Unix, Linux, Amiga, MS-DOS, Atari
TT/Falcon, MS-Windows, MS WinCE, Sega Dreamcast, Android and
other systems supported by the SDL library.
'';
maintainers = [ maintainers.AndersonTorres ];
license = licenses.gpl2Plus;
platforms = lib.platforms.linux;
};
}

View file

@ -1,24 +1,16 @@
{ stdenv, fetchFromGitHub, fetchpatch, lib }:
{ stdenv, fetchFromGitHub, lib }:
stdenv.mkDerivation (finalAttrs: {
pname = "blink";
version = "1.0.0";
version = "1.1.0";
src = fetchFromGitHub {
owner = "jart";
repo = "blink";
rev = finalAttrs.version;
hash = "sha256-W7yL7Ut3MRygJhFGr+GIj/CK57MkuDTcenft8IvH7jU=";
hash = "sha256-4wgDftXOYm2fMP+/aTRljDi38EzbbwAJlQkuxjAMl3I=";
};
# Drop after next release
patches = [
(fetchpatch {
url = "https://github.com/jart/blink/commit/b31fed832b10d32eadaec885fb20dacbb0eb6986.patch";
hash = "sha256-DfZxW/H58qXAjkQz31YS4SPMz7152ZzNHK7wHopgnQA=";
})
];
# Do not include --enable-static and --disable-shared flags during static compilation
dontAddStaticConfigureFlags = true;

View file

@ -1,33 +0,0 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, curl, boost, eigen
, freeimage, freetype, libGLU, libGL, rapidjson, SDL2, alsa-lib
, vlc }:
stdenv.mkDerivation {
pname = "emulationstation";
version = "2.11.2";
src = fetchFromGitHub {
fetchSubmodules = true;
owner = "RetroPie";
repo = "EmulationStation";
rev = "cda7de687924c4c1ab83d6b0ceb88aa734fe6cfe";
hash = "sha256-J5h/578FVe4DXJx/AvpRnCIUpqBeFtmvFhUDYH5SErQ=";
};
nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [ alsa-lib boost curl eigen freeimage freetype libGLU libGL rapidjson SDL2 vlc ];
installPhase = ''
install -D ../emulationstation $out/bin/emulationstation
cp -r ../resources/ $out/bin/resources/
'';
meta = {
description = "A flexible emulator front-end supporting keyboardless navigation and custom system themes";
homepage = "https://emulationstation.org";
maintainers = [ lib.maintainers.edwtjo ];
license = lib.licenses.mit;
platforms = lib.platforms.linux;
mainProgram = "emulationstation";
};
}

View file

@ -1,18 +0,0 @@
diff -wbBur rdanbrook-nestopia-f1dde9b/Makefile rdanbrook-nestopia-f1dde9b.my/Makefile
--- rdanbrook-nestopia-f1dde9b/Makefile 2013-01-20 20:10:25.000000000 +0400
+++ rdanbrook-nestopia-f1dde9b.my/Makefile 2013-01-21 15:18:54.727577673 +0400
@@ -197,11 +197,11 @@
install -m 0644 NstDatabase.xml $(DATADIR)
install -m 0644 source/unix/icons/*.png $(DATADIR)/icons
install -m 0644 source/unix/icons/*.svg $(DATADIR)/icons
- install -m 0644 source/unix/icons/nestopia.svg $(PREFIX)/share/pixmaps
- xdg-desktop-menu install --novendor $(DATADIR)/nestopia.desktop
+ install -m 0644 source/unix/icons/nestopia.svg $(PREFIX)/share/pixmaps/nestopia.svg
+ install -Dm0644 $(DATADIR)/nestopia.desktop $(PREFIX)/share/applications/nestopia.desktop
uninstall:
- xdg-desktop-menu uninstall $(DATADIR)/nestopia.desktop
+ rm $(PREFIX)/share/applications/nestopia.desktop
rm $(PREFIX)/share/pixmaps/nestopia.svg
rm $(BINDIR)/$(BIN)
rm -rf $(DATADIR)

View file

@ -1,73 +0,0 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, SDL2, alsa-lib, gtk3
, makeWrapper, libGLU, libGL, libarchive, libao, unzip, xdg-utils
, libepoxy, gdk-pixbuf, gnome, wrapGAppsHook
}:
stdenv.mkDerivation rec {
version = "1.47";
pname = "nestopia";
src = fetchFromGitHub {
owner = "rdanbrook";
repo = "nestopia";
rev = version;
sha256 = "0frr0gvjh5mxzdhj0ii3sh671slgnzlm8naqlc4h87rx4p4sz2y2";
};
# nondeterministic failures when creating directories
enableParallelBuilding = false;
hardeningDisable = [ "format" ];
buildInputs = [
SDL2
alsa-lib
libepoxy
gtk3
gdk-pixbuf
libGLU libGL
libarchive
libao
xdg-utils
gnome.adwaita-icon-theme
];
nativeBuildInputs = [
pkg-config
makeWrapper
wrapGAppsHook
unzip
];
installPhase = ''
mkdir -p $out/{bin,share/nestopia}
make install PREFIX=$out
'';
preFixup = ''
for f in $out/bin/*; do
wrapProgram $f \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share"
done
'';
patches = [
#(fetchpatch {
# url = "https://github.com/rdanbrook/nestopia/commit/f4bc74ac4954328b25e961e7afb7337377084079.patch";
# name = "gcc6.patch";
# sha256 = "1jy0c85xsfk9hrv5a6v0kk48d94864qb62yyni9fp93kyl33y2p4";
#})
./gcc6.patch
./build-fix.patch
];
meta = {
homepage = "http://0ldsk00l.ca/nestopia/";
description = "NES emulator with a focus on accuracy";
license = lib.licenses.gpl2;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ MP2E ];
mainProgram = "nestopia";
};
}

View file

@ -1,92 +0,0 @@
From f4bc74ac4954328b25e961e7afb7337377084079 Mon Sep 17 00:00:00 2001
From: David Seifert <soap@gentoo.org>
Date: Sat, 31 Dec 2016 18:21:18 +0200
Subject: [PATCH] Fix compiling in C++14 mode
* Left shifting a negative signed is undefined behaviour
* Fix incorrect printf() specifiers found with -Wformat
---
source/core/NstCore.hpp | 4 ++--
source/unix/gtkui/gtkui.cpp | 2 +-
source/unix/gtkui/gtkui.h | 1 -
source/unix/gtkui/gtkui_cheats.cpp | 8 ++++----
source/unix/video.cpp | 2 +-
5 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/source/core/NstCore.hpp b/source/core/NstCore.hpp
index 50e20f6..420cc4a 100644
--- a/source/core/NstCore.hpp
+++ b/source/core/NstCore.hpp
@@ -279,14 +279,14 @@ namespace Nes
template<typename T>
inline long signed_shl(T v,uint c)
{
- enum {NATIVE = T(-7) << 1 == -14};
+ enum {NATIVE = -(T(7) << 1) == -14};
return Helper::ShiftSigned<T,NATIVE>::Left( v, c );
}
template<typename T>
inline long signed_shr(T v,uint c)
{
- enum {NATIVE = T(-7) >> 1 == -4 || T(-7) >> 1 == -3};
+ enum {NATIVE = -(T(7) >> 1) == -4 || -(T(7) >> 1) == -3};
return Helper::ShiftSigned<T,NATIVE>::Right( v, c );
}
diff --git a/source/unix/gtkui/gtkui.cpp b/source/unix/gtkui/gtkui.cpp
index 3cfeeab..d4a5e2d 100644
--- a/source/unix/gtkui/gtkui.cpp
+++ b/source/unix/gtkui/gtkui.cpp
@@ -438,7 +438,7 @@ void gtkui_message(const char* message) {
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_OK,
- message);
+ "%s", message);
gtk_dialog_run(GTK_DIALOG(messagewindow));
gtk_widget_destroy(messagewindow);
}
diff --git a/source/unix/gtkui/gtkui_cheats.cpp b/source/unix/gtkui/gtkui_cheats.cpp
index afc01b0..e7b691a 100644
--- a/source/unix/gtkui/gtkui_cheats.cpp
+++ b/source/unix/gtkui/gtkui_cheats.cpp
@@ -373,7 +373,7 @@ void gtkui_cheats_fill_tree(char *filename) {
else if (node.GetChild(L"address")) { // Raw
char rawbuf[11];
snprintf(rawbuf, sizeof(rawbuf),
- "%04x %02x %02x",
+ "%04lu %02lu %02lu",
node.GetChild(L"address").GetUnsignedValue(),
node.GetChild(L"value").GetUnsignedValue(),
node.GetChild(L"compare").GetUnsignedValue());
@@ -545,13 +545,13 @@ gboolean gtkui_cheats_scan_list(GtkTreeModel *model, GtkTreePath *path, GtkTreeI
int addr, value, compare;
char buf[5];
- snprintf(buf, sizeof(buf), "%c%c%c%c\0", rawcode[0], rawcode[1], rawcode[2], rawcode[3]);
+ snprintf(buf, sizeof(buf), "%c%c%c%c", rawcode[0], rawcode[1], rawcode[2], rawcode[3]);
sscanf(buf, "%x", &addr);
- snprintf(buf, sizeof(buf), "%c%c\0", rawcode[5], rawcode[6]);
+ snprintf(buf, sizeof(buf), "%c%c", rawcode[5], rawcode[6]);
sscanf(buf, "%x", &value);
- snprintf(buf, sizeof(buf), "%c%c\0", rawcode[8], rawcode[9]);
+ snprintf(buf, sizeof(buf), "%c%c", rawcode[8], rawcode[9]);
sscanf(buf, "%x", &compare);
code.address = addr;
diff --git a/source/unix/video.cpp b/source/unix/video.cpp
index 3eff19d..c34bb22 100644
--- a/source/unix/video.cpp
+++ b/source/unix/video.cpp
@@ -757,7 +757,7 @@ void video_screenshot(const char* filename) {
if (filename == NULL) {
// Set the filename
char sshotpath[512];
- snprintf(sshotpath, sizeof(sshotpath), "%sscreenshots/%s-%d-%d.png", nstpaths.nstdir, nstpaths.gamename, time(NULL), rand() % 899 + 100);
+ snprintf(sshotpath, sizeof(sshotpath), "%sscreenshots/%s-%ld-%d.png", nstpaths.nstdir, nstpaths.gamename, time(NULL), rand() % 899 + 100);
// Save the file
lodepng_encode32_file(sshotpath, (const unsigned char*)pixels, rendersize.w, rendersize.h);

View file

@ -1,5 +1,6 @@
{ lib
, stdenv
, gcc12Stdenv
, alsa-lib
, boost
, bzip2
@ -44,17 +45,33 @@
let
hashesFile = lib.importJSON ./hashes.json;
getCoreSrc = core:
fetchFromGitHub (builtins.getAttr core hashesFile);
getCore = repo: (lib.getAttr repo hashesFile);
getCoreSrc = repo:
(lib.pipe repo [
getCore
(x: builtins.removeAttrs x [ "date" ])
fetchFromGitHub
]);
getCoreDate = repo: (getCore repo).date or "unstable-1970-01-01";
mkLibretroCore =
# Sometimes core name != repo name, so you may need to set them differently
# when necessary:
# - core: used by the resulting core library name, e.g.:
# `${core}_libretro.so`. Needs to match their respectful core info file
# (see https://github.com/libretro/libretro-core-info/)
# - repo: the repository name on GitHub
# See `update_cores.py` for instruction on how to add a new core.
{ core
, src ? (getCoreSrc core)
, version ? "unstable-2023-09-24"
, repo ? core
, src ? (getCoreSrc repo)
, version ? (getCoreDate repo)
, ...
}@args:
import ./mkLibretroCore.nix ({
inherit lib stdenv core src version makeWrapper retroarch zlib;
inherit lib stdenv core repo src version makeWrapper retroarch zlib;
} // args);
in
{
@ -72,7 +89,7 @@ in
beetle-gba = mkLibretroCore {
core = "mednafen-gba";
src = getCoreSrc "beetle-gba";
repo = "beetle-gba";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's GameBoy Advance core to libretro";
@ -82,7 +99,7 @@ in
beetle-lynx = mkLibretroCore {
core = "mednafen-lynx";
src = getCoreSrc "beetle-lynx";
repo = "beetle-lynx";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's Lynx core to libretro";
@ -92,7 +109,7 @@ in
beetle-ngp = mkLibretroCore {
core = "mednafen-ngp";
src = getCoreSrc "beetle-ngp";
repo = "beetle-ngp";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's NeoGeo Pocket core to libretro";
@ -102,7 +119,7 @@ in
beetle-pce = mkLibretroCore {
core = "mednafen-pce";
src = getCoreSrc "beetle-pce";
repo = "beetle-pce";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's PC Engine core to libretro";
@ -112,7 +129,7 @@ in
beetle-pce-fast = mkLibretroCore {
core = "mednafen-pce-fast";
src = getCoreSrc "beetle-pce-fast";
repo = "beetle-pce-fast";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's PC Engine fast core to libretro";
@ -122,7 +139,7 @@ in
beetle-pcfx = mkLibretroCore {
core = "mednafen-pcfx";
src = getCoreSrc "beetle-pcfx";
repo = "beetle-pcfx";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's PCFX core to libretro";
@ -132,7 +149,7 @@ in
beetle-psx = mkLibretroCore {
core = "mednafen-psx";
src = getCoreSrc "beetle-psx";
repo = "beetle-psx";
makefile = "Makefile";
makeFlags = [ "HAVE_HW=0" "HAVE_LIGHTREC=1" ];
meta = {
@ -143,7 +160,7 @@ in
beetle-psx-hw = mkLibretroCore {
core = "mednafen-psx-hw";
src = getCoreSrc "beetle-psx";
repo = "beetle-psx";
extraBuildInputs = [ libGL libGLU ];
makefile = "Makefile";
makeFlags = [ "HAVE_VULKAN=1" "HAVE_OPENGL=1" "HAVE_HW=1" "HAVE_LIGHTREC=1" ];
@ -155,7 +172,7 @@ in
beetle-saturn = mkLibretroCore {
core = "mednafen-saturn";
src = getCoreSrc "beetle-saturn";
repo = "beetle-saturn";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's Saturn core to libretro";
@ -166,7 +183,7 @@ in
beetle-supafaust = mkLibretroCore {
core = "mednafen-supafaust";
src = getCoreSrc "beetle-supafaust";
repo = "beetle-supafaust";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's experimental snes_faust core to libretro";
@ -176,7 +193,7 @@ in
beetle-supergrafx = mkLibretroCore {
core = "mednafen-supergrafx";
src = getCoreSrc "beetle-supergrafx";
repo = "beetle-supergrafx";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's SuperGrafx core to libretro";
@ -186,7 +203,7 @@ in
beetle-vb = mkLibretroCore {
core = "mednafen-vb";
src = getCoreSrc "beetle-vb";
repo = "beetle-vb";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's VirtualBoy core to libretro";
@ -196,7 +213,7 @@ in
beetle-wswan = mkLibretroCore {
core = "mednafen-wswan";
src = getCoreSrc "beetle-wswan";
repo = "beetle-wswan";
makefile = "Makefile";
meta = {
description = "Port of Mednafen's WonderSwan core to libretro";
@ -232,7 +249,7 @@ in
bsnes-hd = mkLibretroCore {
core = "bsnes-hd-beta";
src = getCoreSrc "bsnes-hd";
repo = "bsnes-hd";
makefile = "GNUmakefile";
makeFlags =
let
@ -256,7 +273,7 @@ in
bsnes-mercury = mkLibretroCore {
core = "bsnes-mercury-accuracy";
src = getCoreSrc "bsnes-mercury";
repo = "bsnes-mercury";
makefile = "Makefile";
makeFlags = [ "PROFILE=accuracy" ];
meta = {
@ -267,7 +284,7 @@ in
bsnes-mercury-balanced = mkLibretroCore {
core = "bsnes-mercury-balanced";
src = getCoreSrc "bsnes-mercury";
repo = "bsnes-mercury";
makefile = "Makefile";
makeFlags = [ "PROFILE=balanced" ];
meta = {
@ -278,7 +295,7 @@ in
bsnes-mercury-performance = mkLibretroCore {
core = "bsnes-mercury-performance";
src = getCoreSrc "bsnes-mercury";
repo = "bsnes-mercury";
makefile = "Makefile";
makeFlags = [ "PROFILE=performance" ];
meta = {
@ -287,15 +304,21 @@ in
};
};
citra = mkLibretroCore {
citra = mkLibretroCore rec {
core = "citra";
extraBuildInputs = [ libGLU libGL boost ffmpeg nasm ];
makefile = "Makefile";
makeFlags = [
"HAVE_FFMPEG_STATIC=0"
# https://github.com/libretro/citra/blob/1a66174355b5ed948de48ef13c0ed508b6d6169f/Makefile#L90
# https://github.com/libretro/citra/blob/1a66174355b5ed948de48ef13c0ed508b6d6169f/Makefile#L87-L90
"GIT_REV=${(getCoreSrc core).rev}"
"GIT_DESC=${lib.substring 0 8 (getCoreSrc core).rev}"
"GIT_BRANCH=master"
"BUILD_DATE=01/01/1970_00:00"
];
# FIXME: build fail with GCC13:
# error: 'mic_device_name' has incomplete type
stdenv = gcc12Stdenv;
meta = {
description = "Port of Citra to libretro";
license = lib.licenses.gpl2Plus;
@ -377,7 +400,7 @@ in
eightyone = mkLibretroCore {
core = "81";
src = getCoreSrc "eightyone";
repo = "eightyone";
meta = {
description = "Port of EightyOne to libretro";
license = lib.licenses.gpl3Only;
@ -571,7 +594,8 @@ in
extraNativeBuildInputs = [ python3 ];
extraBuildInputs = [ alsa-lib ];
makefile = "Makefile";
enableParallelBuilding = false;
# Build failures when this is set to a bigger number
NIX_BUILD_CORES = 8;
meta = {
description = "Port of MAME ~2015 to libretro, compatible with MAME 0.160 sets";
# MAME license, non-commercial clause
@ -585,7 +609,10 @@ in
extraNativeBuildInputs = [ python3 ];
extraBuildInputs = [ alsa-lib ];
makeFlags = [ "PYTHON_EXECUTABLE=python3" ];
enableParallelBuilding = false;
# Build failures when this is set to a bigger number
NIX_BUILD_CORES = 8;
# Fix build errors in GCC13
NIX_CFLAGS_COMPILE = "-Wno-error -fpermissive";
meta = {
description = "Port of MAME ~2016 to libretro, compatible with MAME 0.174 sets";
license = with lib.licenses; [ bsd3 gpl2Plus ];
@ -652,7 +679,7 @@ in
mupen64plus = mkLibretroCore {
core = "mupen64plus-next";
src = getCoreSrc "mupen64plus";
repo = "mupen64plus";
extraBuildInputs = [ libGLU libGL libpng nasm xorg.libX11 ];
makefile = "Makefile";
makeFlags = [
@ -662,11 +689,6 @@ in
"LLE=1"
"WITH_DYNAREC=${stdenv.hostPlatform.parsed.cpu.name}"
];
# This CXXFLAGS hack works around the GCC 13 error:
# 'uint32_t' was not declared in this scope
# It can be removed if the issue filed upstream is resolved:
# https://github.com/libretro/mupen64plus-libretro-nx/issues/515
env.CXXFLAGS = "-include cstdint";
meta = {
description = "Libretro port of Mupen64 Plus, GL only";
license = lib.licenses.gpl3Only;
@ -703,11 +725,10 @@ in
np2kai = mkLibretroCore rec {
core = "np2kai";
src = getCoreSrc core;
makeFlags = [
# See https://github.com/AZO234/NP2kai/tags
"NP2KAI_VERSION=rev.22"
"NP2KAI_HASH=${src.rev}"
"NP2KAI_HASH=${(getCoreSrc core).rev}"
];
preBuild = "cd sdl";
meta = {
@ -773,18 +794,18 @@ in
xxd
];
makefile = "Makefile";
cmakeFlags = [
"-DLIBRETRO=ON"
];
cmakeFlags = [ "-DLIBRETRO=ON" ];
# remove ccache
postPatch = ''
# remove ccache
substituteInPlace CMakeLists.txt --replace "ccache" ""
'';
postBuild = "cd pcsx2";
# causes redefinition of _FORTIFY_SOURCE
hardeningDisable = [ "fortify3" ];
postBuild = "cd pcsx2";
# FIXME: multiple build errors with GCC13.
# Unlikely to be fixed until we switch to libretro/pcsx2 that is a more
# up-to-date port (but still WIP).
stdenv = gcc12Stdenv;
meta = {
description = "Port of PCSX2 to libretro";
license = lib.licenses.gpl3Plus;
@ -818,6 +839,9 @@ in
makefile = "Makefile";
cmakeFlags = [ "-DBUILD_PLAY=OFF" "-DBUILD_LIBRETRO_CORE=ON" ];
postBuild = "cd Source/ui_libretro";
# FIXME: workaround the following GCC 13 error:
# error: 'printf' was not declared in this scop
CXXFLAGS = "-include cstdio";
meta = {
description = "Port of Play! to libretro";
license = lib.licenses.bsd2;
@ -894,6 +918,9 @@ in
core = "same_cdi";
extraNativeBuildInputs = [ python3 ];
extraBuildInputs = [ alsa-lib libGLU libGL portaudio xorg.libX11 ];
# FIXME: build fail with GCC13:
# error: 'uint8_t' in namespace 'std' does not name a type; did you mean 'wint_t'?
stdenv = gcc12Stdenv;
meta = {
description = "SAME_CDI is a libretro core to play CD-i games";
license = with lib.licenses; [ bsd3 gpl2Plus ];
@ -913,7 +940,7 @@ in
smsplus-gx = mkLibretroCore {
core = "smsplus";
src = getCoreSrc "smsplus-gx";
repo = "smsplus-gx";
meta = {
description = "SMS Plus GX libretro port";
license = lib.licenses.gpl2Plus;
@ -953,7 +980,7 @@ in
snes9x2005-plus = mkLibretroCore {
core = "snes9x2005-plus";
src = getCoreSrc "snes9x2005";
repo = "snes9x2005";
makefile = "Makefile";
makeFlags = [ "USE_BLARGG_APU=1" ];
meta = {
@ -1055,7 +1082,7 @@ in
vba-m = mkLibretroCore {
core = "vbam";
src = getCoreSrc "vba-m";
repo = "vba-m";
makefile = "Makefile";
preBuild = "cd src/libretro";
meta = {

View file

@ -12,6 +12,7 @@
, flac
, freetype
, gamemode
, gitUpdater
, libdrm
, libGL
, libGLU
@ -46,12 +47,12 @@ let
in
stdenv.mkDerivation rec {
pname = "retroarch-bare";
version = "1.16.0.3";
version = "1.17.0";
src = fetchFromGitHub {
owner = "libretro";
repo = "RetroArch";
hash = "sha256-BT+LzRDoQF03aNT2Kg7YaSWhK74CvOOiHUeHDtFpe9s=";
hash = "sha256-8Y8ZYZFNK7zk0bQRiWwoQbu6q3r25bN3EvLOA3kIxdU=";
rev = "v${version}";
};
@ -122,7 +123,12 @@ stdenv.mkDerivation rec {
rm $out/share/man/man6/retroarch-cg2glsl.6*
'';
passthru.tests = nixosTests.retroarch;
passthru = {
tests = nixosTests.retroarch;
updateScript = gitUpdater {
rev-prefix = "v";
};
};
meta = with lib; {
homepage = "https://libretro.com";

View file

@ -3,536 +3,624 @@
"owner": "libretro",
"repo": "libretro-2048",
"rev": "331c1de588ed8f8c370dcbc488e5434a3c09f0f2",
"hash": "sha256-gPrAmoBnfuTnW6t699pqS43vE6t0ca3jZcqTNRaJipA="
"hash": "sha256-gPrAmoBnfuTnW6t699pqS43vE6t0ca3jZcqTNRaJipA=",
"date": "unstable-2023-02-20"
},
"atari800": {
"owner": "libretro",
"repo": "libretro-atari800",
"rev": "20d59afb3f19065749549732f20845c3be82e68c",
"hash": "sha256-5cxBubhw60Jmp1p5TQ/L6RLaLANctG0TdpzGnpCadIM="
"rev": "410d7bf0c215f3444793a9cec51c129e7b67c400",
"hash": "sha256-mUhAraZrmElB6rxQziQG6I2sCdkiX5wYBJhkZgpMSa0=",
"date": "unstable-2023-11-14"
},
"beetle-gba": {
"owner": "libretro",
"repo": "beetle-gba-libretro",
"rev": "38182572571a48cb58057cde64b915237c4e2d58",
"hash": "sha256-4xnXWswozlcXBNI1lbGSNW/gAdIeLLO9Bf1SxOFLhSo="
"hash": "sha256-4xnXWswozlcXBNI1lbGSNW/gAdIeLLO9Bf1SxOFLhSo=",
"date": "unstable-2021-09-18"
},
"beetle-lynx": {
"owner": "libretro",
"repo": "beetle-lynx-libretro",
"rev": "fab3ac02d5622eb53a707bd392cc037282e9d8b4",
"hash": "sha256-+MKH8LmqDqznDIca/Q129zIXYI23V7s38sCD6rKiZlk="
"rev": "48909ddd1aba4de034d9c1da70c460b1724daa3b",
"hash": "sha256-aAS9N54kA2st1+3BodiXDR4sbUDSvoFHpa28D9sohx4=",
"date": "unstable-2023-11-01"
},
"beetle-ngp": {
"owner": "libretro",
"repo": "beetle-ngp-libretro",
"rev": "65460e3a9ad529f6901caf669abbda11f437ab55",
"hash": "sha256-+xfD1ZMKtbv5Lp12+5RM7Vl3eEF38kykKW8wj/2EN5w="
"rev": "673c3d924ff33d71c6a342b170eff5359244df1f",
"hash": "sha256-V3zcbEwqay3eXwXzXZkmHj3+rx9KY4r0WkzAYFZXlgY=",
"date": "unstable-2023-11-01"
},
"beetle-pce": {
"owner": "libretro",
"repo": "beetle-pce-libretro",
"rev": "541463bd937dad175aec09c2a0c8d6a52d175386",
"hash": "sha256-wWS9reb6aN71Q7OlGst+32T8XX1yMCSOHUKHkXht3hg="
"rev": "e8870b170ad4135bf5738c7206d7a27488d388ab",
"hash": "sha256-c+LsfuX/3HxJTaIlZeGkGif+D1c7OpIhRUVbWuT8Kc0=",
"date": "unstable-2024-02-02"
},
"beetle-pce-fast": {
"owner": "libretro",
"repo": "beetle-pce-fast-libretro",
"rev": "f2ff19e56fb33361793f9fdaf44c1ea28bce1da3",
"hash": "sha256-w7weSz8HR4YNPiBPqa81s3/8b9oFijr6DxNeQ/+I9OE="
"rev": "cfb9362fd0de38141d40266725829f25f574162a",
"hash": "sha256-D/qAFFKe0mI/W4RnLwcB5lpwI+AlPjTfyo0SH6IZZkU=",
"date": "unstable-2024-02-02"
},
"beetle-pcfx": {
"owner": "libretro",
"repo": "beetle-pcfx-libretro",
"rev": "47c355b6a515aef6dc57f57df1535570108a0e21",
"hash": "sha256-ylFo/wmLQpQGYSrv9PF2DBmr/8rklmHF9R+3y8v93Rs="
"hash": "sha256-ylFo/wmLQpQGYSrv9PF2DBmr/8rklmHF9R+3y8v93Rs=",
"date": "unstable-2023-05-28"
},
"beetle-psx": {
"owner": "libretro",
"repo": "beetle-psx-libretro",
"rev": "f256cc3dc3ec2f6017f7088f056996f8f155db64",
"hash": "sha256-McMV5p1qEvqkeTjqOaD+xHNRQly+CNen9YUJxqLpJzk="
"rev": "fb579de80d7b9ca09940602c14e657f6317dd046",
"hash": "sha256-NRnznhvmgOQdNuEYyi0HIeVPzPz7ILEQ3vsYTZY8AbE=",
"date": "unstable-2024-02-02"
},
"beetle-saturn": {
"owner": "libretro",
"repo": "beetle-saturn-libretro",
"rev": "cd395e9e3ee407608450ebc565e871b24e7ffed6",
"hash": "sha256-EIZRv1EydfLWFoBb8TzvAY3kkL9Qr2OrwrljOnnM92A="
"hash": "sha256-EIZRv1EydfLWFoBb8TzvAY3kkL9Qr2OrwrljOnnM92A=",
"date": "unstable-2023-05-28"
},
"beetle-supafaust": {
"owner": "libretro",
"repo": "supafaust",
"rev": "6b639c98372d1c9bac885c55d772c812d2a9d525",
"hash": "sha256-EVXwjrxooZm1JqG4HswUe8zwN81Rm7SPB5Fr4WfpTnc="
"hash": "sha256-EVXwjrxooZm1JqG4HswUe8zwN81Rm7SPB5Fr4WfpTnc=",
"date": "unstable-2023-06-19"
},
"beetle-supergrafx": {
"owner": "libretro",
"repo": "beetle-supergrafx-libretro",
"rev": "56261ccd56f576a42a2d22190c09eb326a4331da",
"hash": "sha256-aoEq4o9uZIAsjQQsN+tJNhOuFA9SNb7RKIUwqUGPhJQ="
"rev": "d24d383f88ff892e9f8dce7c1f3ce491f2f7731a",
"hash": "sha256-Cbol57jpDpkMnfKCULw6DgJwcnfTNexZ1hSw817z+E8=",
"date": "unstable-2024-02-02"
},
"beetle-vb": {
"owner": "libretro",
"repo": "beetle-vb-libretro",
"rev": "732a8f701e671bf032165730fdf8bd96fb5ca7bb",
"hash": "sha256-M19+ZidqqDdohuAVPxGVFQDQqoMl2QYM+K1WToqeOWM="
"rev": "9d1bd03f21dac7897f65269e1095496331efce8b",
"hash": "sha256-CT6CfRe8TOgXuJoUA0TKl71m10XeocUCTUjh88eCenU=",
"date": "unstable-2023-11-01"
},
"beetle-wswan": {
"owner": "libretro",
"repo": "beetle-wswan-libretro",
"rev": "a0ddcd3f084f5b4eb06acb6e03b8c4707a2f6123",
"hash": "sha256-FJfznSo/3YKecVSU9mZW6yzd4/8vf2qrX4xhWjptd+A="
"rev": "32bf70a3032a138baa969c22445f4b7821632c30",
"hash": "sha256-dDph7LNlvzVMVTzkUfGErMEb/tALpCADgTjnzjUHYJU=",
"date": "unstable-2023-11-01"
},
"blastem": {
"owner": "libretro",
"repo": "blastem",
"rev": "277e4a62668597d4f59cadda1cbafb844f981d45",
"hash": "sha256-EHvKElPw8V5Z6LnMaQXBCdM4niLIlF3aBm8dRbeYXHs="
"hash": "sha256-EHvKElPw8V5Z6LnMaQXBCdM4niLIlF3aBm8dRbeYXHs=",
"date": "unstable-2022-07-26"
},
"bluemsx": {
"owner": "libretro",
"repo": "bluemsx-libretro",
"rev": "e21bf74bddb79ad1bbe20b4d964e7515269c669b",
"hash": "sha256-U58zJd7txOyd9jymVmogQMIH5Av2kjO5MOn49T2FmqQ="
"rev": "e8a4280bcbd149d1e020adcd9469ad9d8bd67412",
"hash": "sha256-uh4lMOCN1WXKVJybFkkGxIRWAlde74yPH5eaB1/1qsk=",
"date": "unstable-2023-11-10"
},
"bsnes": {
"owner": "libretro",
"repo": "bsnes-libretro",
"rev": "3fe4f9049f99ac71d038b3cb684ebfc8e6cef15a",
"hash": "sha256-fUcJQGkLGTgxEGwWVoZ4Hys9kOKAft7CDTTdQ8j4+Do="
"rev": "dda5b43ed6a552310528509af59bed26af2527f5",
"hash": "sha256-7AXHq6ASQ+42yef/jQ74kZtpW9SUuXpmWZbtO84/COg=",
"date": "unstable-2024-02-02"
},
"bsnes-hd": {
"owner": "DerKoun",
"repo": "bsnes-hd",
"rev": "f46b6d6368ea93943a30b5d4e79e8ed51c2da5e8",
"hash": "sha256-Y3FhGtcz7BzwUSBy1SGMuylJdZti/JB8qQnabIkG/dI="
"hash": "sha256-Y3FhGtcz7BzwUSBy1SGMuylJdZti/JB8qQnabIkG/dI=",
"date": "unstable-2023-04-26"
},
"bsnes-mercury": {
"owner": "libretro",
"repo": "bsnes-mercury",
"rev": "fb9a41fe9bc230a07c4506cad3cbf21d3fa635b4",
"hash": "sha256-gBOxKSv3j229IVdtffqFV/zSSacEs8UsBERnQgdFw4Y="
"rev": "60c204ca17941704110885a815a65c740572326f",
"hash": "sha256-eJ0lac1I7E4YdsVVrIuXx31UL9w3OR6QTVHq5YBgnJU=",
"date": "unstable-2023-11-01"
},
"citra": {
"owner": "libretro",
"repo": "citra",
"rev": "d7e1612c17b1acb5d5eb68bb046820db49aeea5e",
"rev": "2d67658e85de4767c0eefeb2829d710401c5c802",
"hash": "sha256-u2XwAudFgI7j/k6Bq5fk874aI6KpZawlBoIs2+M+eZY=",
"fetchSubmodules": true
"fetchSubmodules": true,
"date": "unstable-2024-01-24"
},
"desmume": {
"owner": "libretro",
"repo": "desmume",
"rev": "cf0fcc6ea4a85b7491bdf9adc7bf09748b4be7da",
"hash": "sha256-ne4Tu8U/WSB4vlwBQMK7Ss3UEpDxsOFltpMk2hIx23M="
"rev": "b518fec54b79f2f71a7536715efcdcd7f60638a8",
"hash": "sha256-X6ZL+XdsrdPoOU5zqNsUraMrlPU/HmKWUolrWjFcbDQ=",
"date": "unstable-2024-01-11"
},
"desmume2015": {
"owner": "libretro",
"repo": "desmume2015",
"rev": "af397ff3d1f208c27f3922cc8f2b8e08884ba893",
"hash": "sha256-kEb+og4g7rJvCinBZKcb42geZO6W8ynGsTG9yqYgI+U="
"hash": "sha256-kEb+og4g7rJvCinBZKcb42geZO6W8ynGsTG9yqYgI+U=",
"date": "unstable-2022-04-05"
},
"dolphin": {
"owner": "libretro",
"repo": "dolphin",
"rev": "2f4b0f7902257d40a054f60b2c670d6e314f2a04",
"hash": "sha256-9WYWbLehExYbPmGJpguhVFXqFJ9aR6VxzFVChd4QOEg="
"hash": "sha256-9WYWbLehExYbPmGJpguhVFXqFJ9aR6VxzFVChd4QOEg=",
"date": "unstable-2022-12-17"
},
"dosbox": {
"owner": "libretro",
"repo": "dosbox-libretro",
"rev": "b7b24262c282c0caef2368c87323ff8c381b3102",
"hash": "sha256-PG2eElenlEpu0U/NIh53p0uLqewnEdaq6Aoak5E1P3I="
"hash": "sha256-PG2eElenlEpu0U/NIh53p0uLqewnEdaq6Aoak5E1P3I=",
"date": "unstable-2022-07-18"
},
"dosbox-pure": {
"owner": "schellingb",
"repo": "dosbox-pure",
"rev": "e8396b8564ed88d87702ee40b935dec6384c0e5a",
"hash": "sha256-rD7b1uX/Wsu2ik06IiHKbUHT05IllCoBcPMN9OJ0+X4="
"rev": "87bf6365158325b76ff238c1ad8daf16a859bbe8",
"hash": "sha256-IU5AnOEuwZm/bJ9NuxhTQ8Tb5ngmjysLj/om/6P730s=",
"date": "unstable-2023-12-29"
},
"eightyone": {
"owner": "libretro",
"repo": "81-libretro",
"rev": "6d1b4d26aa9870133616fcfb5a763ca138ae25d1",
"hash": "sha256-KCtJvYWcS3DjAZfyP4sG496X9fOHji/ZwpjiZD0OFDY="
"rev": "525d5c18f1ff3fc54c37e083a475225d9179d59d",
"hash": "sha256-H0w9hcAUVOGr0PtNLVdFQScxd3ildZZ68w+TL7vG4jk=",
"date": "unstable-2023-11-01"
},
"fbalpha2012": {
"owner": "libretro",
"repo": "fbalpha2012",
"rev": "7f8860543a81ba79c0e1ce1aa219af44568c628a",
"hash": "sha256-r1lH+CR+nVRCPkVo0XwLi35/ven/FEkNhWUTA6cUVxc="
"rev": "b7ac554c53561d41640372f23dab15cd6fc4f0c4",
"hash": "sha256-BaeMLej2MLc4uipqTD2z2sHUeOsc50Q1c+PEiPD1cks=",
"date": "unstable-2023-11-01"
},
"fbneo": {
"owner": "libretro",
"repo": "fbneo",
"rev": "9e22c4c7ac42d5f1e5ffacdecb26acae60c663eb",
"hash": "sha256-obzPz5lPqcQzLbB7cFGI50W1rFnF8tqZkpocETSAH0Q="
"rev": "e8cd9f81bc974f7427d9cff9ffc1d2f3a8d15f1f",
"hash": "sha256-XR/pLOvQ8L2dLguC1I2C7z8FoBid6oFSudnQNY3ub7c=",
"date": "unstable-2024-01-30"
},
"fceumm": {
"owner": "libretro",
"repo": "libretro-fceumm",
"rev": "7fad08e5522e5396a1196055fc106be9b5d5de77",
"hash": "sha256-XHutsAc2PD8INP2u8WTmr2+rxuklXjBruH/mNl5Ro34="
"rev": "63643ba02c8eaea15dbe167ef907f3da7a3e6fd7",
"hash": "sha256-xy8hzZ7nt2hHjRJmsty/w/cPzEtdlSkmNAsog3+h5YU=",
"date": "unstable-2024-01-25"
},
"flycast": {
"owner": "flyinghead",
"repo": "flycast",
"rev": "39a212140a159e7e7a183a40a201863c0560a945",
"hash": "sha256-lvagJRedkh9m48yHo7ErsIyW9W2QXs6wnEjSgtrHE74=",
"fetchSubmodules": true
"rev": "c146a92f83ae2cba8df8970e21efc54301b9ade1",
"hash": "sha256-+ZED9pLfPr4uNNMNTmsrQWUgbKLW3DnPBdniwQ1fr9U=",
"fetchSubmodules": true,
"date": "unstable-2024-02-03"
},
"fmsx": {
"owner": "libretro",
"repo": "fmsx-libretro",
"rev": "1806eed4376fbe2fad82fa19271ea298cfbb7795",
"hash": "sha256-nX0H/+iEq7eBN4tm1+dT6/3BYLCpoyiE/L6waDPmUZI="
"hash": "sha256-nX0H/+iEq7eBN4tm1+dT6/3BYLCpoyiE/L6waDPmUZI=",
"date": "unstable-2023-04-17"
},
"freeintv": {
"owner": "libretro",
"repo": "freeintv",
"rev": "85bf25a39a34bbc39fe36677175d87c2b597dbe7",
"hash": "sha256-4cU/YRZZb7EWNBJX8M91Lb+bCCIlks6xX2Cf6Iq/g9g="
"hash": "sha256-4cU/YRZZb7EWNBJX8M91Lb+bCCIlks6xX2Cf6Iq/g9g=",
"date": "unstable-2023-04-17"
},
"fuse": {
"owner": "libretro",
"repo": "fuse-libretro",
"rev": "847dbbd6f787823ac9a5dfacdd68ab181063374e",
"hash": "sha256-jzS7SFALV/YjI77ST+IWHwUsuhT+Zr5w4t6C7O8yzFM="
"hash": "sha256-jzS7SFALV/YjI77ST+IWHwUsuhT+Zr5w4t6C7O8yzFM=",
"date": "unstable-2023-06-23"
},
"gambatte": {
"owner": "libretro",
"repo": "gambatte-libretro",
"rev": "64561b7e1b21dfa42eecb94963c1c495ba332466",
"hash": "sha256-BRh357MGHlglGSs48LhhRNTTyAUD9O0QmGeqLnyYap0="
"rev": "c9a07107f121498a158762116d47d7068a247d3c",
"hash": "sha256-U4FR794/hB3tHsdbtnC7qL0qr1oi1ZF4PYFTu+sVMVI=",
"date": "unstable-2024-02-02"
},
"genesis-plus-gx": {
"owner": "libretro",
"repo": "Genesis-Plus-GX",
"rev": "141257e1e2104c4e4a49dc771d9f3c06e00292ec",
"hash": "sha256-voNDwfwBIzuq9peNJ2CtF6UBnaJCDpiWmqPgtrPZplU="
"rev": "59cdc560e21eeddfa4d5a5c935413cdaa9d660f3",
"hash": "sha256-FB0znNFG6T67V63jm7WprhGRw9rHNJgH4SZ/BtgAyFg=",
"date": "unstable-2024-02-02"
},
"gpsp": {
"owner": "libretro",
"repo": "gpsp",
"rev": "c0d8ffaa384f724e1a0743e18cb042c29dd48f7f",
"hash": "sha256-KKO0bBV+5+8UcSspZHfinntp/mxukcf6/P4kIi6doUs="
"rev": "9fc117ef5c719047818513c7e394c24371cb1dbd",
"hash": "sha256-6dPuj+uzqSYA2+Jm+G3u0HEeBFW2i+KmWd3PYbSxBu8=",
"date": "unstable-2024-01-15"
},
"gw": {
"owner": "libretro",
"repo": "gw-libretro",
"rev": "0ecff52b11c327af52b22ea94b268c90472b6732",
"hash": "sha256-N/nZoo+duk7XhRtNdV1paWzxYUhv8nLUcnnOs2gbZuQ="
"hash": "sha256-N/nZoo+duk7XhRtNdV1paWzxYUhv8nLUcnnOs2gbZuQ=",
"date": "unstable-2023-05-28"
},
"handy": {
"owner": "libretro",
"repo": "libretro-handy",
"rev": "0559d3397f689ea453b986311aeac8dbd33afb0b",
"hash": "sha256-Nsp0jiOLWjTGJRURkwx8mj7bBG8nM5fRqE93Lo9n4ac="
"rev": "65d6b865544cd441ef2bd18cde7bd834c23d0e48",
"hash": "sha256-F4WyiZBNTh8hjuCooZXQkzov0vcHNni6d5mbAMgzAiA=",
"date": "unstable-2024-01-01"
},
"hatari": {
"owner": "libretro",
"repo": "hatari",
"rev": "d0903a9447323e647ed9756238ba1550cac92940",
"hash": "sha256-kSdK7rkORgTkMg8kL56pNb+wU+m2413shEt7UQ9SCjM="
"rev": "a4c9eb0bb79e47a2870c12b04566c1f8d25e4bf3",
"hash": "sha256-mHz2nB9Vr/PVifd6w+kz7ZCH+N8igmcS8InvevZoSpE=",
"date": "unstable-2023-09-29"
},
"mame": {
"owner": "libretro",
"repo": "mame",
"rev": "3d612fb19eb95c0ae322c3cab343857b14a65a9c",
"hash": "sha256-ibd8HEKQJo7hrhzqYDu6LzMmIFncXCafod9VXBx9OU0="
"rev": "68520cf9defd1c2762bca7f266f13ad593b7b3f3",
"hash": "sha256-moYxyoa6QUCvxVPTr4NpRiEC+7bPETohVSYu4EYegFA=",
"date": "unstable-2024-01-03"
},
"mame2000": {
"owner": "libretro",
"repo": "mame2000-libretro",
"rev": "720b8ad4cbd76abd57b9aeced9ba541dc8476f7f",
"hash": "sha256-3HnDsZQRjp7PqUdYTAEGsroP1paoTAcTBb1fd7/LBJA="
"rev": "1472da3a39ab14fff8325b1f51a1dfdb8eabb5c8",
"hash": "sha256-Nd5OqkoMJZ8TzEZGqDT0YX6lHK/H3I5EqJ841PteLi8=",
"date": "unstable-2023-10-31"
},
"mame2003": {
"owner": "libretro",
"repo": "mame2003-libretro",
"rev": "105ca02fb85e92b9dd5d6ee43f7152d1199eb149",
"hash": "sha256-zYv3OIgapglsyjWs69IhSJGVQ7CkviKJjKnVom5f9/c="
"rev": "be247427a8a68f8401ce40c830e2d8767d000f84",
"hash": "sha256-ZQ0DWok6EmVEDOhcN7LsK5T4XXHpH9Cyd22KP/UjMok=",
"date": "unstable-2023-11-22"
},
"mame2003-plus": {
"owner": "libretro",
"repo": "mame2003-plus-libretro",
"rev": "a1ff7485de011926ab21309ad1766f9cad3af58e",
"hash": "sha256-Amp+Fcl2dWS1qDMaa/QL0X5loXRYmnByUjUzliQmLvY="
"rev": "53c6083a2044c3529a436b51c5206cd9a896d12c",
"hash": "sha256-k4jl3cN18HQya3F4DXHN/Hoq7UXKVmJg5Lgp08n6M/M=",
"date": "unstable-2024-02-03"
},
"mame2010": {
"owner": "libretro",
"repo": "mame2010-libretro",
"rev": "5f524dd5fca63ec1dcf5cca63885286109937587",
"hash": "sha256-OmJgDdlan/niGQfajv0KNG8NJfEKn7Nfe6GRQD+TZ8M="
"hash": "sha256-OmJgDdlan/niGQfajv0KNG8NJfEKn7Nfe6GRQD+TZ8M=",
"date": "unstable-2022-06-14"
},
"mame2015": {
"owner": "libretro",
"repo": "mame2015-libretro",
"rev": "2599c8aeaf84f62fe16ea00daa460a19298c121c",
"hash": "sha256-TURTX0XrvqwqKG3O3aCttDAdicBdge5F1thVvYgEHaw="
"rev": "316cd06349f2b34b4719f04f7c0d07569a74c764",
"hash": "sha256-CBN04Jf26SIk8mKWlui5spQGokBvgFUCvFiC8NoBGw0=",
"date": "unstable-2023-11-01"
},
"mame2016": {
"owner": "libretro",
"repo": "mame2016-libretro",
"rev": "01058613a0109424c4e7211e49ed83ac950d3993",
"hash": "sha256-IsM7f/zlzvomVOYlinJVqZllUhDfy4NNTeTPtNmdVak="
"hash": "sha256-IsM7f/zlzvomVOYlinJVqZllUhDfy4NNTeTPtNmdVak=",
"date": "unstable-2022-04-06"
},
"melonds": {
"owner": "libretro",
"repo": "melonds",
"rev": "c6488c88cb4c7583dbcd61609e0eef441572fae8",
"hash": "sha256-kU0xPM6WBqK6UpMNMotHc3jRFTodahPJRrfbcjdCJTI="
"hash": "sha256-kU0xPM6WBqK6UpMNMotHc3jRFTodahPJRrfbcjdCJTI=",
"date": "unstable-2023-04-13"
},
"mesen": {
"owner": "libretro",
"repo": "mesen",
"rev": "d25d60fc190f3f7603a1113ef1e11d9da65b7583",
"hash": "sha256-C/05mkPHJ8Bsj+uZOqY6rhMc0qx33kSxAT5SNDUPRUU="
"rev": "d6f2f1797694f87e698c737b068f621889e96fa9",
"hash": "sha256-iLX9UvrjYjGjyaLD4sC10gntWUvgZrwiUqTS7S7YDdc=",
"date": "unstable-2024-01-30"
},
"mesen-s": {
"owner": "libretro",
"repo": "mesen-s",
"rev": "32a7adfb4edb029324253cb3632dfc6599ad1aa8",
"hash": "sha256-/OOMH7kt9Pmkdmy5m+I8FMvog5mqZHyrZvfjHccz8oo="
"hash": "sha256-/OOMH7kt9Pmkdmy5m+I8FMvog5mqZHyrZvfjHccz8oo=",
"date": "unstable-2022-07-25"
},
"meteor": {
"owner": "libretro",
"repo": "meteor-libretro",
"rev": "e533d300d0561564451bde55a2b73119c768453c",
"hash": "sha256-zMkgzUz2rk0SD5ojY4AqaDlNM4k4QxuUxVBRBcn6TqQ="
"hash": "sha256-zMkgzUz2rk0SD5ojY4AqaDlNM4k4QxuUxVBRBcn6TqQ=",
"date": "unstable-2020-12-28"
},
"mgba": {
"owner": "libretro",
"repo": "mgba",
"rev": "314bf7b676f5b820f396209eb0c7d6fbe8103486",
"hash": "sha256-Rk+glDgSa1J1IIe5NrJElX9zr59+LQynfDXuHWyZcEM="
"hash": "sha256-Rk+glDgSa1J1IIe5NrJElX9zr59+LQynfDXuHWyZcEM=",
"date": "unstable-2023-05-28"
},
"mrboom": {
"owner": "Javanaise",
"repo": "mrboom-libretro",
"rev": "c4ec620424fe79f0d6db719d73628f23ae285ada",
"hash": "sha256-twocTyayV79a4757Yfoz/P3wnQPgiwsbrBbLmT4EZKQ=",
"fetchSubmodules": true
"fetchSubmodules": true,
"date": "unstable-2024-01-23"
},
"mupen64plus": {
"owner": "libretro",
"repo": "mupen64plus-libretro-nx",
"rev": "26fd1edd640ff3db49dd5ebb7e54f0de6600fc45",
"hash": "sha256-JueRR2PheAz8sPG8OIpjp1Xih6z2Xp8f7WD+2MuBPo4="
"rev": "0e1dc5abacf91f1640206d32d18735e82071681e",
"hash": "sha256-gt9oVJunDCdhHbaqL9xaGlztxdT1D2UvYETqCXogIwU=",
"date": "unstable-2024-01-30"
},
"neocd": {
"owner": "libretro",
"repo": "neocd_libretro",
"rev": "2070f5258c9d3feee15962f9db8c8ef20072ece8",
"hash": "sha256-X+lS1zW5oTzp7wwurM5xjVqIBwEOCIdj/NX/+33K2qg="
"rev": "71ebe5044639b825e5bd1bd590fef3e918133b80",
"hash": "sha256-YVxt3bJ54DD91VHkeQyYdo/BEq//lnBKd9Y42Vby3qc=",
"date": "unstable-2024-02-01"
},
"nestopia": {
"owner": "libretro",
"repo": "nestopia",
"rev": "3dcbec4682e079312d6943e1357487645ec608c7",
"hash": "sha256-+jWedFwuFwZzdYEyKR77AhEBoW6ecY7HAIYEKt9PRg8="
"rev": "8050c38e5a1db6927b03510651809e8ef932b888",
"hash": "sha256-Vlz69ZpXwawdE+bfjlKNrQNmFHhB53FOKhfMgq4viE0=",
"date": "unstable-2024-02-03"
},
"np2kai": {
"owner": "AZO234",
"repo": "NP2kai",
"rev": "6089943a80a45b6c18d765765f7f31d7a5c0d9c6",
"hash": "sha256-tdF0Qb+smWAVoPmI0dd5s51cnYxMmqM36rQNMiEjU9A=",
"fetchSubmodules": true
"rev": "c2ca4046860264cb307e768f529f180caee5e224",
"hash": "sha256-RizN+NpVp0paXvdt7OudX9/5GJms1YvJ+NVe9iV3nnw=",
"fetchSubmodules": true,
"date": "unstable-2024-01-10"
},
"nxengine": {
"owner": "libretro",
"repo": "nxengine-libretro",
"rev": "1f371e51c7a19049e00f4364cbe9c68ca08b303a",
"hash": "sha256-4XBNTzgN8pLyrK9KsVxTRR1I8CQaZCnVR4gMryYpWW0="
"hash": "sha256-4XBNTzgN8pLyrK9KsVxTRR1I8CQaZCnVR4gMryYpWW0=",
"date": "unstable-2023-02-21"
},
"o2em": {
"owner": "libretro",
"repo": "libretro-o2em",
"rev": "a2a12472fde910b6089ac3ca6de805bd58a9c999",
"hash": "sha256-0cZYw3rrnaR+PfwReRXadLV8RVLblYqlZxJue6OZncg="
"rev": "44fe5f306033242f7d74144105e19a7d4939477e",
"hash": "sha256-zg8wplVTKRzqa47mmWlqribg+JU4Nap4Ar/iR7y87xs=",
"date": "unstable-2023-10-19"
},
"opera": {
"owner": "libretro",
"repo": "opera-libretro",
"rev": "100ae1e7decefe1f17d98cfcb9f2af4ff8452691",
"hash": "sha256-GOabGs5JP4hg4y5xEATZMEWuqQxFxdc6ZMnO4oLC2yk="
"rev": "35e16483be900ea8aa20e87d2710b677437f73ce",
"hash": "sha256-ZNHSxI8l0KGJ6uAvOsEhNpB0IkBxtb9Imj3tA/LiOto=",
"date": "unstable-2024-01-13"
},
"parallel-n64": {
"owner": "libretro",
"repo": "parallel-n64",
"rev": "49eadb4da85f7e3bd59b60f61e8fd5dbfb9f07d5",
"hash": "sha256-S8gsPOgxdq0SwoYFua4ouT7XjT45d/mwCYmI3VVahdI="
"rev": "1b57f9199b1f8a4510f7f89f14afa9cabf9b3bdd",
"hash": "sha256-L20RGav0FJfydOICCNhAMGxIuIvPABDtCs5tWzrh768=",
"date": "unstable-2024-01-15"
},
"pcsx2": {
"owner": "libretro",
"repo": "lrps2",
"rev": "f3c8743d6a42fe429f703b476fecfdb5655a98a9",
"hash": "sha256-0piCNWX7QbZ58KyTlWp4h1qLxXpi1z6ML8sBHMTvCY4="
"hash": "sha256-0piCNWX7QbZ58KyTlWp4h1qLxXpi1z6ML8sBHMTvCY4=",
"date": "unstable-2023-01-30"
},
"pcsx_rearmed": {
"owner": "libretro",
"repo": "pcsx_rearmed",
"rev": "ead6fd751369f6fe50cb5092ab5530fbf1d66b67",
"hash": "sha256-JzvcM8T/xMP7MDn/58TDNrHN8bjU63/PBtj7JJYYiVo="
"rev": "06cdf83a3a30bfb8cafee768dbe83bbaef6c8ddd",
"hash": "sha256-E/+dAcJwfaUMjYJUjfAcn98SIh61BiS5YpcZg99lg+Q=",
"date": "unstable-2024-02-04"
},
"picodrive": {
"owner": "libretro",
"repo": "picodrive",
"rev": "570319349588288f64c676123244acdb0be33881",
"hash": "sha256-KG5A5NBWi5jKpJOSdSQxjn+wm2F198AINKIU+figoqs=",
"fetchSubmodules": true
"rev": "d907d65692a45e126d0c7d6685cc8792b52bc577",
"hash": "sha256-CJJcWVueg3dbBT4r6W1y8Qj7iRwH7PupvFp+CKEII7o=",
"fetchSubmodules": true,
"date": "unstable-2024-01-23"
},
"play": {
"owner": "jpd002",
"repo": "Play-",
"rev": "f50566ffdf6a2f1d0cedfb900f1ee24b9c80fd8e",
"hash": "sha256-G45UMzNh5I7beO8sBtwc80HPioB907UEPtfB1NSS4OY=",
"fetchSubmodules": true
"rev": "c0da95cf596834620169173dc12b3f32ca092404",
"hash": "sha256-q6ApOsyNS5to+KBYgz+CZJOfNAcII6Eyv0MhcB4Q1bU=",
"fetchSubmodules": true,
"date": "unstable-2024-01-26"
},
"ppsspp": {
"owner": "hrydgard",
"repo": "ppsspp",
"rev": "638192b0245e73a602c5f0d60e80dc7b78ff0793",
"hash": "sha256-Ls9k563j8yEasu6dBs2cmWR+9twBKTolqTLkr3Nt7Uk=",
"fetchSubmodules": true
"rev": "d479b74ed9c3e321bc3735da29bc125a2ac3b9b2",
"hash": "sha256-I84zJqEE1X/eo/ukeGA2iZe3lWKvilk+RNGUzl2wZXY=",
"fetchSubmodules": true,
"date": "unstable-2024-02-04"
},
"prboom": {
"owner": "libretro",
"repo": "libretro-prboom",
"rev": "6ec854969fd9dec33bb2cab350f05675d1158969",
"hash": "sha256-y0qZwYNwcO4ofWDZ7UXN9ZVMPFxjCnLDDZKBMdZLxEY="
"hash": "sha256-y0qZwYNwcO4ofWDZ7UXN9ZVMPFxjCnLDDZKBMdZLxEY=",
"date": "unstable-2023-05-28"
},
"prosystem": {
"owner": "libretro",
"repo": "prosystem-libretro",
"rev": "4202ac5bdb2ce1a21f84efc0e26d75bb5aa7e248",
"hash": "sha256-BR0DTWcB5g0rEoNSxBx+OxBmLELjdR2fgsmdPU7cK68="
"hash": "sha256-BR0DTWcB5g0rEoNSxBx+OxBmLELjdR2fgsmdPU7cK68=",
"date": "unstable-2023-08-17"
},
"puae": {
"owner": "libretro",
"repo": "libretro-uae",
"rev": "7bdd798ef14dccafe283588cbf8eb303832a1858",
"hash": "sha256-ML3hRYujyh7WPm9Sx6RzQAxaTqlhneVLDi6qcNJ+hi8="
"rev": "2cad13f98aa4df272decf2ab99d95aa582cd4cfb",
"hash": "sha256-8iGsQJcImL7hUK14X+u2BSq4W9BkosiLImCmzf63o4Q=",
"date": "unstable-2024-02-03"
},
"quicknes": {
"owner": "libretro",
"repo": "QuickNES_Core",
"rev": "058d66516ed3f1260b69e5b71cd454eb7e9234a3",
"hash": "sha256-eWnbx4NsxanvSls8lguKBijYZ4+uF97d9es9Yn+3PKs="
"rev": "cd73f021be7dd5b1a21b71155a320364c02de4ac",
"hash": "sha256-fmTAK32ASA8M5nxUUUilm/yMNkmqSAG/gauB7fy1Kbc=",
"date": "unstable-2024-02-01"
},
"same_cdi": {
"owner": "libretro",
"repo": "same_cdi",
"rev": "54cf493c2dee4c46666059c452f8aaaa0bd7c8e0",
"hash": "sha256-/+4coMzj/o82Q04Z65DQiPaykK6N56W6PRQLtyJOd8E="
"hash": "sha256-/+4coMzj/o82Q04Z65DQiPaykK6N56W6PRQLtyJOd8E=",
"date": "unstable-2023-02-28"
},
"sameboy": {
"owner": "libretro",
"repo": "sameboy",
"rev": "09138330990da32362246c7034cf4de2ea0a2a2b",
"hash": "sha256-hQWIuNwCykkJR+6naNarR50kUvIFNny+bbZHR6/GA/4="
"hash": "sha256-hQWIuNwCykkJR+6naNarR50kUvIFNny+bbZHR6/GA/4=",
"date": "unstable-2022-08-19"
},
"scummvm": {
"owner": "libretro-mirrors",
"repo": "scummvm",
"rev": "2fb2e4c551c9c1510c56f6e890ee0300b7b3fca3",
"hash": "sha256-wrlFqu+ONbYH4xMFDByOgySobGrkhVc7kYWI4JzA4ew="
"hash": "sha256-wrlFqu+ONbYH4xMFDByOgySobGrkhVc7kYWI4JzA4ew=",
"date": "unstable-2022-04-06"
},
"smsplus-gx": {
"owner": "libretro",
"repo": "smsplus-gx",
"rev": "60af17ddb2231ba98f4ed1203e2a2f58d08ea088",
"hash": "sha256-2SZR9BOTYLmtjEF4Bdl49H2pFNEIaU68VqlA7ll5TqU="
"rev": "96fa9bc65aa27a5ab2779f9f2ff0439fec7cf513",
"hash": "sha256-tlxlI0+5QFgu2IRB4Cpz9XItbhprLNlq1YdCFGXGyIE=",
"date": "unstable-2023-10-31"
},
"snes9x": {
"owner": "snes9xgit",
"repo": "snes9x",
"rev": "0e03a36847c2ab14d84963b0263e653aa4087ff4",
"hash": "sha256-wRkBT80HBE1JXqNSvm0LhhUSjHe1DP3uMy3fKW71uZA="
"rev": "e76abdc4ef8f961ea0f8e87c160cf59cc6d44e42",
"hash": "sha256-JERfp69UB/PC2iIjbepOKpPdmZJbrzWbXhaLMJfOaXY=",
"date": "unstable-2024-01-28"
},
"snes9x2002": {
"owner": "libretro",
"repo": "snes9x2002",
"rev": "540baad622d9833bba7e0696193cb06f5f02f564",
"hash": "sha256-WJh8Qf1/uFaL9f9d28qXsbpeAZfYGPgjoty3G6XAKSs="
"hash": "sha256-WJh8Qf1/uFaL9f9d28qXsbpeAZfYGPgjoty3G6XAKSs=",
"date": "unstable-2022-08-06"
},
"snes9x2005": {
"owner": "libretro",
"repo": "snes9x2005",
"rev": "fd45b0e055bce6cff3acde77414558784e93e7d0",
"hash": "sha256-zjA/G62V38/hj+WjJDGAs48AcTUIiMWL8feCqLsCRnI="
"hash": "sha256-zjA/G62V38/hj+WjJDGAs48AcTUIiMWL8feCqLsCRnI=",
"date": "unstable-2022-07-25"
},
"snes9x2010": {
"owner": "libretro",
"repo": "snes9x2010",
"rev": "d8b10c4cd7606ed58f9c562864c986bc960faaaf",
"hash": "sha256-7FmteYrAYr+pGNXGg9CBC4NFlijGRf7GdtJfiNjmonU="
"hash": "sha256-7FmteYrAYr+pGNXGg9CBC4NFlijGRf7GdtJfiNjmonU=",
"date": "unstable-2023-02-20"
},
"stella": {
"owner": "stella-emu",
"repo": "stella",
"rev": "85f23044437a5da35d68f96045d363d0e339f872",
"hash": "sha256-b/3cq+CdQ6MLFzzF/cFTbL0XCSqZFc0Rj9e+bNiN3WY="
"rev": "4557099e5d7a0c0b02424ea85d2a4b093911e048",
"hash": "sha256-wyJExpIIScgLTALgvqW5f/QgIsMC19JU8Meh3mV4d2c=",
"date": "unstable-2024-02-02"
},
"stella2014": {
"owner": "libretro",
"repo": "stella2014-libretro",
"rev": "8ab051edd4816f33a5631d230d54059eeed52c5f",
"hash": "sha256-wqssB8WXXF2Lu9heII8nWLLOvI38cIfHSMA7OOd6jx0="
"hash": "sha256-wqssB8WXXF2Lu9heII8nWLLOvI38cIfHSMA7OOd6jx0=",
"date": "unstable-2023-02-20"
},
"swanstation": {
"owner": "libretro",
"repo": "swanstation",
"rev": "376744746a6880b5eec7ac48b5c006c9ae8c6770",
"hash": "sha256-5mKNypA0x/FkDZvWhuEr/J5WP7saR7cKo0DQ2DZ36ZE="
"rev": "77aeeea58a45cccae7a8be37645f8f5a27ff101b",
"hash": "sha256-z+9Y9hoQ832caip5U+siQXh9GFxLMnX0HcmLa93B/lc=",
"date": "unstable-2024-01-26"
},
"tgbdual": {
"owner": "libretro",
"repo": "tgbdual-libretro",
"rev": "a6f3018e6a23030afc1873845ee54d4b2d8ec9d3",
"hash": "sha256-MBUgYXX/Pc+TkwoS7OwbXSPssKUf6lwWx/bKhvwDkHs="
"hash": "sha256-MBUgYXX/Pc+TkwoS7OwbXSPssKUf6lwWx/bKhvwDkHs=",
"date": "unstable-2022-08-06"
},
"thepowdertoy": {
"owner": "libretro",
"repo": "ThePowderToy",
"rev": "f644498193c4c8be689d8a1d2a70e37e4eff4243",
"hash": "sha256-aPUqrrrH2Ia56A3Kx6ClMcZO9nbHGJIcEQ6nFyIMamo="
"hash": "sha256-aPUqrrrH2Ia56A3Kx6ClMcZO9nbHGJIcEQ6nFyIMamo=",
"date": "unstable-2023-01-17"
},
"tic80": {
"owner": "libretro",
"repo": "tic-80",
"rev": "bd6ce86174fc7c9d7d3a86263acf3a7de1b62c11",
"hash": "sha256-RFp8sTSRwD+cgW3EYk3nBeY+zVKgZVQI5mjtfe2a64Q=",
"fetchSubmodules": true
"fetchSubmodules": true,
"date": "unstable-2022-06-11"
},
"vba-m": {
"owner": "libretro",
"repo": "vbam-libretro",
"rev": "a2378f05f600a5a9cf450c60a87976b80d6a895a",
"hash": "sha256-vWm28cSEGex5h7JkJjzNPqEGtQWHK0dpK2gVDlQ3NbM="
"hash": "sha256-vWm28cSEGex5h7JkJjzNPqEGtQWHK0dpK2gVDlQ3NbM=",
"date": "unstable-2023-08-18"
},
"vba-next": {
"owner": "libretro",
"repo": "vba-next",
"rev": "ee92625d2f1666496be4f5662508a2430e846b00",
"hash": "sha256-r3FKBD4GUUkobMJ33VceseyTyqxm/Wsa5Er6XcfGL2Q="
"hash": "sha256-r3FKBD4GUUkobMJ33VceseyTyqxm/Wsa5Er6XcfGL2Q=",
"date": "unstable-2023-06-03"
},
"vecx": {
"owner": "libretro",
"repo": "libretro-vecx",
"rev": "a401c268e425dc8ae6a301e7fdb9a9e96f39b8ea",
"hash": "sha256-24/bcQ5mgLl7zKvpnnSYr5SoLG02al6dP27KoOtnua4="
"hash": "sha256-24/bcQ5mgLl7zKvpnnSYr5SoLG02al6dP27KoOtnua4=",
"date": "unstable-2023-06-01"
},
"virtualjaguar": {
"owner": "libretro",
"repo": "virtualjaguar-libretro",
"rev": "8126e5c504ac7217a638f38e4cd9190822c8abdd",
"hash": "sha256-U/qdKApE0OU3jc6ekfgEZ7VCaIqCc2h+Y+IHe7PIRY0="
"hash": "sha256-U/qdKApE0OU3jc6ekfgEZ7VCaIqCc2h+Y+IHe7PIRY0=",
"date": "unstable-2023-06-01"
},
"yabause": {
"owner": "libretro",
"repo": "yabause",
"rev": "4c96b96f7fbe07223627c469ff33376b2a634748",
"hash": "sha256-7hEpGh2EcrlUoRiUNntaMZEQtStglYAY1MeCub5p8f8="
"hash": "sha256-7hEpGh2EcrlUoRiUNntaMZEQtStglYAY1MeCub5p8f8=",
"date": "unstable-2023-01-03"
}
}

View file

@ -1,17 +1,18 @@
{ lib
, stdenvNoCC
, fetchFromGitHub
, gitUpdater
}:
stdenvNoCC.mkDerivation rec {
pname = "libretro-core-info";
version = "unstable-2023-07-31";
version = "1.17.0";
src = fetchFromGitHub {
owner = "libretro";
repo = "libretro-core-info";
hash = "sha256-VdFsrLiJ+Wu1OKvwX9fMI96CxTareOTK8x6OfksBuYs=";
rev = "dacae85b406131feb12395a415fdf57fc4745201";
rev = "v${version}";
hash = "sha256-iJteyqD7hUtBxj+Y2nQZXDJVM4k+TDIKLaLP3IFDOGo=";
};
makeFlags = [
@ -23,6 +24,10 @@ stdenvNoCC.mkDerivation rec {
dontBuild = true;
passthru.updateScript = gitUpdater {
rev-prefix = "v";
};
meta = with lib; {
description = "Libretro's core info files";
homepage = "https://libretro.com";

View file

@ -1,6 +1,7 @@
{ lib
, stdenv
, core
, repo
, makeWrapper
, retroarch
, zlib
@ -70,7 +71,10 @@ stdenv.mkDerivation ({
enableParallelBuilding = true;
passthru = { inherit core libretroCore; };
passthru = {
inherit core libretroCore;
updateScript = [ ./update_cores.py repo ];
};
meta = with lib; {
inherit mainProgram;

View file

@ -1,17 +1,18 @@
{ lib
, stdenvNoCC
, fetchFromGitHub
, unstableGitUpdater
}:
stdenvNoCC.mkDerivation rec {
stdenvNoCC.mkDerivation {
pname = "retroarch-assets";
version = "unstable-2023-09-11";
version = "unstable-2024-01-02";
src = fetchFromGitHub {
owner = "libretro";
repo = "retroarch-assets";
rev = "7b735ef18bcc6508b1c9a626eb237779ff787179";
hash = "sha256-S9wWag9fNpCTMKY8yQaF7jFuX1P5XLy/Z4vjtVDK7lg=";
rev = "923b711dc6772a168d83dc8915e9260730fcf3a1";
hash = "sha256-Hwgga2hCJEdf/j2mU+hLGAsWdYcfuzjCycxSF37I4qk=";
};
makeFlags = [
@ -23,6 +24,8 @@ stdenvNoCC.mkDerivation rec {
dontBuild = true;
passthru.updateScript = unstableGitUpdater { };
meta = with lib; {
description = "Assets needed for RetroArch";
homepage = "https://libretro.com";

View file

@ -1,23 +1,28 @@
{ lib
, stdenvNoCC
, fetchFromGitHub
, gitUpdater
}:
stdenvNoCC.mkDerivation rec {
pname = "retroarch-joypad-autoconfig";
version = "unstable-2023-08-01";
version = "1.17.0";
src = fetchFromGitHub {
owner = "libretro";
repo = "retroarch-joypad-autoconfig";
rev = "5666e46bb89caf4e9af358fdb97a2b384cb62f36";
hash = "sha256-5Po0v0E/dc+nVHnHlJRZzv66B/DKYarwqTkS9+/ktC4=";
rev = "v${version}";
hash = "sha256-rmbZxXxHwIPb/zVBQiWTRPLVS+DXTrsw8d6t9nTg/ng=";
};
makeFlags = [
"PREFIX=$(out)"
];
passthru.updateScript = gitUpdater {
rev-prefix = "v";
};
meta = with lib; {
description = "Joypad autoconfig files";
homepage = "https://www.libretro.com/";

View file

@ -1,16 +1,28 @@
#!/usr/bin/env nix-shell
#!nix-shell -I nixpkgs=../../../../ -i python3 -p "python3.withPackages (ps: with ps; [ nix-prefetch-github ])" -p "git"
#!nix-shell -I nixpkgs=./ -i python3 -p "python3.withPackages (ps: with ps; [ requests ])" -p git -p nix-prefetch-github
import json
import os
import subprocess
import sys
from pathlib import Path
from concurrent.futures import ThreadPoolExecutor
from pathlib import Path
import requests
SCRIPT_PATH = Path(__file__).absolute().parent
HASHES_PATH = SCRIPT_PATH / "hashes.json"
GET_REPO_THREADS = int(os.environ.get("GET_REPO_THREADS", 8))
# To add a new core, add it to the dictionary below. You need to set at least
# `repo`, that is the repository name if the owner of the repository is
# `libretro` itself, otherwise also set `owner`.
# You may set `deep_clone`, `fetch_submodules` or `leave_dot_git` options to
# `True` and they're similar to `fetchgit` options. Also if for some reason you
# need to pin a specific revision, set `rev` to a commit.
# To generate the hash file for your new core, you can run `update_cores.py
# <core>`. The script needs to be run from the root of your `nixpkgs` clone.
# Do not forget to add your core to `cores.nix` file with the proper overrides
# so the core can be build.
CORES = {
"2048": {"repo": "libretro-2048"},
"atari800": {"repo": "libretro-atari800"},
@ -73,8 +85,9 @@ CORES = {
"opera": {"repo": "opera-libretro"},
"parallel-n64": {"repo": "parallel-n64"},
# libretro/lrps2 is a hard-fork of pcsx2 with simplified code to target
# only libretro, while libretro/pcsx2 is supposedly closer to upstream.
# TODO: switch to libretro/pcsx2 since this is more up-to-date
# only libretro, while libretro/pcsx2 is supposedly closer to upstream but
# it is a WIP.
# TODO: switch to libretro/pcsx2 when upstream switches to it.
"pcsx2": {"repo": "lrps2"},
"pcsx_rearmed": {"repo": "pcsx_rearmed"},
"picodrive": {"repo": "picodrive", "fetch_submodules": True},
@ -115,6 +128,30 @@ def info(*msg):
print(*msg, file=sys.stderr)
def get_rev_date_fetchFromGitHub(repo, owner, rev):
# https://docs.github.com/en/rest/commits/commits?apiVersion=2022-11-28#get-a-commit
url = f"https://api.github.com/repos/{owner}/{repo}/commits/{rev}"
headers = {
"Accept": "application/vnd.github+json",
"X-GitHub-Api-Version": "2022-11-28",
}
if token := os.environ.get("GITHUB_TOKEN"):
headers["Authorization"] = f"Bearer {token}"
r = requests.get(url, headers=headers)
try:
j = r.json()
except requests.exceptions.JSONDecodeError:
return None
date = j.get("commit", {}).get("committer", {}).get("date")
if date:
# Date format returned by API: 2023-01-30T06:29:13Z
return f"unstable-{date[:10]}"
else:
return None
def get_repo_hash_fetchFromGitHub(
repo,
owner="libretro",
@ -146,6 +183,9 @@ def get_repo_hash_fetchFromGitHub(
text=True,
)
j = json.loads(result.stdout)
date = get_rev_date_fetchFromGitHub(repo, owner, j["rev"])
if date:
j["date"] = date
# Remove False values
return {k: v for k, v in j.items() if v}

View file

@ -1,5 +1,4 @@
{ lib
, stdenv
, makeWrapper
, retroarch
, symlinkJoin

View file

@ -18,12 +18,12 @@
stdenv.mkDerivation rec {
pname = "visualboyadvance-m";
version = "2.1.8";
version = "2.1.9";
src = fetchFromGitHub {
owner = "visualboyadvance-m";
repo = "visualboyadvance-m";
rev = "v${version}";
sha256 = "sha256-r/LF9mYwKPwkIidMAb4k4B6Q2UYjW0TucKI5LJ2gjl0=";
sha256 = "sha256-t5/CM5KXDG0OCByu7mUyuC5NkYmB3BFmEHHgnMY05nE=";
};
nativeBuildInputs = [ cmake pkg-config ];

View file

@ -1,13 +1,13 @@
{ stdenv, fetchFromGitHub, unstableGitUpdater }:
stdenv.mkDerivation {
pname = "yuzu-compatibility-list";
version = "unstable-2024-01-30";
version = "unstable-2024-02-04";
src = fetchFromGitHub {
owner = "flathub";
repo = "org.yuzu_emu.yuzu";
rev = "82194fa23ec35545ade47cc3dc2035b2b07badcb";
hash = "sha256-LsQZml8I43fZDFACtVZpc76/62Pv11Z6bm8w/9hTHdI=";
rev = "963c657c2f852d96b5f203fbb6fafe6c56197ac9";
hash = "sha256-TNvAonMoGpJXjrkBFrBlYoTlwdPEMwiF/YhsOTYEB4k=";
};
buildCommand = ''

View file

@ -1,7 +1,7 @@
# Generated by ./update.sh - do not update manually!
# Last updated: 2024-01-28
# Last updated: 2024-02-05
{
version = "4093";
distHash = "sha256:0f6ffs0qvq516vcc6w132p9lg888cy6id9cgkdmzc6039aymdgki";
fullHash = "sha256:1scn06anfjvy4ysxmv8qq7p5dzkfqyxbm6h6lpywy3nkpyx1cz15";
version = "4115";
distHash = "sha256:16dfqlgz7lw909jqa505d69kx9jm0l3hxrfikkqpnvfr2fywkfng";
fullHash = "sha256:1506435pbpb1m8i6qz717wxbinxqbs6c8pq6ymw5zs9dnfh765ms";
}

View file

@ -1,10 +1,9 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, nix-update-script
, wrapQtAppsHook
, alsa-lib
, autoconf
, boost
, catch2_3
, cmake
@ -12,58 +11,46 @@
, cpp-jwt
, cubeb
, discord-rpc
, doxygen
, enet
, ffmpeg
, fmt
, glslang
, httplib
, inih
, libjack2
, libopus
, libpulseaudio
, libusb1
, libva
, libzip
, lz4
, nlohmann_json
, nv-codec-headers-12
, nx_tzdb
, perl
, pkg-config
, python3
, qtbase
, qtmultimedia
, qttools
, qtwayland
, qtwebengine
, rapidjson
, SDL2
, sndio
, speexdsp
, udev
, vulkan-headers
, vulkan-loader
, yasm
, zlib
, zstd
}:
stdenv.mkDerivation(finalAttrs: {
pname = "yuzu";
version = "1696";
version = "1704";
src = fetchFromGitHub {
owner = "yuzu-emu";
repo = "yuzu-mainline";
rev = "mainline-0-${finalAttrs.version}";
hash = "sha256-9xIhOA8hA7rsjtO0sgg1ucqghSzaOtkuTAHyQvmT+y4=";
hash = "sha256-8vIwWahl5JmFlOfMRuec1LiYz4F6mPEH4+p2e1IRBdU=";
fetchSubmodules = true;
};
nativeBuildInputs = [
cmake
doxygen
perl
glslang
pkg-config
python3
qttools
wrapQtAppsHook
];
@ -72,7 +59,6 @@ stdenv.mkDerivation(finalAttrs: {
# don't get picked up by accident
vulkan-headers
alsa-lib
boost
catch2_3
cpp-jwt
@ -80,30 +66,31 @@ stdenv.mkDerivation(finalAttrs: {
discord-rpc
# intentionally omitted: dynarmic - prefer vendored version for compatibility
enet
ffmpeg
# vendored ffmpeg deps
autoconf
yasm
libva # for accelerated video decode on non-nvidia
nv-codec-headers-12 # for accelerated video decode on nvidia
# end vendored ffmpeg deps
fmt
glslang
httplib
inih
libjack2
# intentionally omitted: gamemode - loaded dynamically at runtime
# intentionally omitted: httplib - upstream requires an older version than what we have
libopus
libpulseaudio
libusb1
libva
libzip
# intentionally omitted: LLVM - heavy, only used for stack traces in the debugger
lz4
nlohmann_json
qtbase
qtmultimedia
qttools
qtwayland
qtwebengine
rapidjson
# intentionally omitted: renderdoc - heavy, developer only
SDL2
sndio
speexdsp
udev
# not packaged in nixpkgs: simpleini
# intentionally omitted: stb - header only libraries, vendor uses git snapshot
# not packaged in nixpkgs: vulkan-memory-allocator
# intentionally omitted: xbyak - prefer vendored version for compatibility
zlib
zstd
@ -127,6 +114,9 @@ stdenv.mkDerivation(finalAttrs: {
"-DYUZU_USE_EXTERNAL_SDL2=OFF"
"-DYUZU_USE_EXTERNAL_VULKAN_HEADERS=OFF"
# don't use system ffmpeg, yuzu uses internal APIs
"-DYUZU_USE_BUNDLED_FFMPEG=ON"
# don't check for missing submodules
"-DYUZU_CHECK_SUBMODULES=OFF"
@ -140,6 +130,9 @@ stdenv.mkDerivation(finalAttrs: {
"-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF" # We provide this deterministically
];
# Does some handrolled SIMD
env.NIX_CFLAGS_COMPILE = "-msse4.1";
# Fixes vulkan detection.
# FIXME: patchelf --add-rpath corrupts the binary for some reason, investigate
qtWrapperArgs = [

View file

@ -11,6 +11,7 @@
, ki18n
, kirigami2
, kirigami-addons
, kpurpose
, qcoro
, qtimageformats
, qtmultimedia
@ -35,6 +36,7 @@ mkDerivation rec {
ki18n
kirigami2
kirigami-addons
kpurpose
qcoro
qtimageformats
qtmultimedia

View file

@ -1,9 +1,9 @@
{ blueprint-compiler
{ lib
, blueprint-compiler
, desktop-file-utils
, fetchFromSourcehut
, gobject-introspection
, gtk4
, lib
, libadwaita
, libnotify
, meson
@ -14,25 +14,25 @@
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "confy";
version = "0.7.0";
version = "0.7.1";
src = fetchFromSourcehut {
owner = "~fabrixxm";
repo = "confy";
rev = version;
hash = "sha256-q8WASTNbiBuKb2tPQBmUL9ji60PRAPnYOTYxnUn0MAw=";
rev = finalAttrs.version;
hash = "sha256-BXQDnRRt2Kuqc1Gwx6Ba6BoEWhICTCsWWkGlBsStyT8=";
};
nativeBuildInputs = [
blueprint-compiler
desktop-file-utils
gobject-introspection
meson
ninja
pkg-config
wrapGAppsHook
gobject-introspection
];
buildInputs = [
@ -50,10 +50,11 @@ stdenv.mkDerivation rec {
'';
meta = with lib; {
changelog = "https://git.sr.ht/~fabrixxm/confy/refs/${finalAttrs.version}";
description = "Conferences schedule viewer";
homepage = "https://confy.kirgroup.net/";
changelog = "https://git.sr.ht/~fabrixxm/confy/refs/${version}";
license = licenses.gpl3;
license = licenses.gpl3Plus;
mainProgram = "confy";
maintainers = with maintainers; [ michaelgrahamevans ];
};
}
})

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "ff2mpv";
version = "5.0.1";
version = "5.1.0";
src = fetchFromGitHub {
owner = "woodruffw";
repo = pname;
rev = "v${version}";
hash = "sha256-unSnySEhaaLIW/6R+vmNONb5xMSgQLtSsOLGcfuW0RY=";
hash = "sha256-Xx18EX/MxLrnwZGwMFZJxJURUpjU2P01CQue5XbZ3fw=";
};
buildInputs = [ python3 mpv ];

View file

@ -233,13 +233,13 @@ in
printtimegenius = buildPlugin rec {
pname = "printtimegenius";
version = "2.2.8";
version = "2.3.1";
src = fetchFromGitHub {
owner = "eyal0";
repo = "OctoPrint-PrintTimeGenius";
rev = version;
sha256 = "sha256-Bbpm7y4flzEbUb6Sgkp6hIIHs455A0IsbmzvZwlkbh0=";
sha256 = "sha256-2lxaTcmPBSdfMmViIfLEbeYWfXZpNVAO4i5Z678gWy0=";
};
propagatedBuildInputs = with super; [

View file

@ -18,14 +18,14 @@
mkDerivation rec {
pname = "qcad";
version = "3.29.2.0";
version = "3.29.3.1";
src = fetchFromGitHub {
name = "qcad-${version}-src";
owner = "qcad";
repo = "qcad";
rev = "v${version}";
sha256 = "sha256-7SX0hBSySY8AgmIwVjuszrfdfVKZ8axQzkpON9mjHgg=";
sha256 = "sha256-QPBiEoOseNUzAWQHPEBq6O0jg8ed5dH+8xlyRCct0g4=";
};
patches = [

View file

@ -1,20 +1,20 @@
{
stable = import ./browser.nix {
channel = "stable";
version = "121.0.2277.83";
version = "121.0.2277.98";
revision = "1";
hash = "sha256-WuDu44elNlkYZEtol+TZNpcRAkAq8HHATYCc9Or/bvU=";
hash = "sha256-vm0aBWiGtjdSu55nCNuhbqn4XVI6l/BxwmpTlTHWt/M=";
};
beta = import ./browser.nix {
channel = "beta";
version = "121.0.2277.83";
version = "122.0.2365.8";
revision = "1";
hash = "sha256-eW8Bpcjw1aY5lMqsGCJ3hORVLhzW8Fmaio+kpSOzPeU=";
hash = "sha256-1qM61lO7LyX7CuLrKsEuciud7BuDxRKNyQahdFJhq+g=";
};
dev = import ./browser.nix {
channel = "dev";
version = "122.0.2353.0";
version = "122.0.2365.3";
revision = "1";
hash = "sha256-llLaq13SU4ZpqhOYK0hy6ZD6amAqijStk8TIHX3gydQ=";
hash = "sha256-O2SxGzcvNloxLbexDjA0C28w7EJi1Fl9IUnI1zc1S6Y=";
};
}

View file

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "cloudflared";
version = "2024.1.5";
version = "2023.10.0";
src = fetchFromGitHub {
owner = "cloudflare";
repo = "cloudflared";
rev = "refs/tags/${version}";
hash = "sha256-g7FUwEs/wEcX1vRgfoQZw+uMzx6ng3j4vFwhlHs6WKg=";
hash = "sha256-T+hxNvsckL8PAVb4GjXhnkVi3rXMErTjRgGxCUypwVA=";
};
vendorHash = null;

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "atmos";
version = "1.55.0";
version = "1.57.0";
src = fetchFromGitHub {
owner = "cloudposse";
repo = pname;
rev = "v${version}";
sha256 = "sha256-JRvPRlq4H9PcELozlvIE065LSNIxrh/Ej+2GXO8s2x4=";
sha256 = "sha256-saOEMGZKtlMDZjkzac3j5hu5j0rKCNnDKV3aRnP5TWc=";
};
vendorHash = "sha256-YBcVsuBL5n5ycaY1a0uxlDKX7YyrtF16gi17wCK1Jio=";
vendorHash = "sha256-Gjff8341MrUal3fVTDXE6nP9RwxaHYTjhPImaEv/9RU=";
ldflags = [ "-s" "-w" "-X github.com/cloudposse/atmos/cmd.Version=v${version}" ];

View file

@ -61,8 +61,8 @@ rec {
};
kops_1_28 = mkKops rec {
version = "1.28.3";
sha256 = "sha256-pkHTVAssNDjMHpdRxqPCNwG2of8TKIzZN0uqk+hPZSA=";
version = "1.28.4";
sha256 = "sha256-nknsrLdV7tQKLOir5RM3LRhTS+dyiAc1GjbByJzjwCo=";
rev = "v${version}";
};
}

View file

@ -2,7 +2,7 @@
(callPackage ./generic.nix { }) {
channel = "edge";
version = "24.1.2";
sha256 = "1rwdjlf20k84g94ca724wcpykpd9z0q8ymi0mdyz86kfry6hr5sz";
vendorHash = "sha256-8fNse2ZuyWqZsHSUh+buEIYPf8JsEL+0Z8tkbxfiCwA=";
version = "24.2.1";
sha256 = "1flbjsa2wj35zgiq4vgb2bqvjvxmpla6fnrlkwnh2l10w4i2n5sl";
vendorHash = "sha256-1DyqtUSMzVahy8yzX8HAnCe3UI5Z1Pht5XQaMS2i9mw=";
}

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "starboard";
version = "0.15.19";
version = "0.15.20";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
sha256 = "sha256-99YxScZNSNBiqFb7vsus7yJ99oGf+e2AjWn8aqnuQso=";
sha256 = "sha256-oOz7Dt+j2EmBL/aJUjqRST90wYpXkyREnKCcmNBQX18=";
# populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true;

View file

@ -2,14 +2,14 @@
buildGoModule rec {
pname = "velero";
version = "1.12.3";
version = "1.13.0";
src = fetchFromGitHub {
owner = "vmware-tanzu";
repo = "velero";
rev = "v${version}";
sha256 = "sha256-bMl6OYsKG7RR2a0N4RK+3ySSPk1RNbQ4WSQVz3lS9TU=";
sha256 = "sha256-R9iZpib8hoU9EC6B6Kaj2dWDOkb5qFw1UzsxMBClCso=";
};
ldflags = [
@ -20,7 +20,7 @@ buildGoModule rec {
"-X github.com/vmware-tanzu/velero/pkg/buildinfo.GitSHA=none"
];
vendorHash = "sha256-kPs7N3N7E1IiBqBIYFwXlNIrGtFnaRJiTFR4eCOc1mo=";
vendorHash = "sha256-Fu4T2VEW5s/KCdgJLk3bf0wIUhKULK6QuNEmL99MUCI=";
excludedPackages = [ "issue-template-gen" "release-tools" "v1" "velero-restic-restore-helper" ];

View file

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "werf";
version = "1.2.284";
version = "1.2.287";
src = fetchFromGitHub {
owner = "werf";
repo = "werf";
rev = "v${version}";
hash = "sha256-02dvkz8lgvbiTZ194pv5UruKgB5+BtDbogAkEOfzpaA=";
hash = "sha256-+xilQ9By8cbH/CDCxAocm2OlVnvh7efqcB/3cMZhc1w=";
};
vendorHash = "sha256-u7E+4VK3D36ipAqQVPeIyAhv/1JvgMHEuUUiQH/43ME=";
vendorHash = "sha256-uzIUjG3Hv7wdsbX75wHZ8Z8fy/EPgRKH74VXUhThycE=";
proxyVendor = true;

View file

@ -13,20 +13,26 @@
# Not native
, gst_all_1
, gsettings-desktop-schemas
, gtk3
, gtk4
, avahi
, glib
, networkmanager
, json-glib
, libadwaita
, libportal-gtk4
, libpulseaudio
, libsoup_3
, pipewire
, protobufc
}:
stdenv.mkDerivation (finalAttrs: {
pname = "gnome-network-displays";
version = "0.90.5";
version = "0.92.1";
src = fetchurl {
url = "mirror://gnome/sources/${finalAttrs.pname}/${lib.versions.majorMinor finalAttrs.version}/${finalAttrs.pname}-${finalAttrs.version}.tar.xz";
sha256 = "sha256-2SBVQK4fJeK8Y2UrrL0g5vQIerDdGE1nhFc6ke4oIpI=";
sha256 = "sha256-aoH9SpD7AfM6c6moMCCuQ1igkcrKgqAf1iLlpuXtaic=";
};
nativeBuildInputs = [
@ -41,7 +47,8 @@ stdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
gtk3
avahi
gtk4
glib
gsettings-desktop-schemas
gst_all_1.gstreamer
@ -53,9 +60,24 @@ stdenv.mkDerivation (finalAttrs: {
gst_all_1.gst-vaapi
pipewire
networkmanager
json-glib
libadwaita
libportal-gtk4
libpulseaudio
libsoup_3
protobufc
];
/* Without this flag, we get this include error:
/nix/store/...-gst-rtsp-server-1.22.8-dev/include/gstreamer-1.0/gst/rtsp-server/rtsp-media-factory.h:21:10: fatal error: gst/rtsp/gstrtspurl.h: No such file or directory
21 | #include <gst/rtsp/gstrtspurl.h>
Hence, this is not necessarily an upstream issue, but could be something
wrong with how our gst_all_1 depend on each other.
*/
CFLAGS = "-I${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0";
preConfigure = ''
patchShebangs ./build-aux/meson/postinstall.py
'';

View file

@ -11,11 +11,11 @@
}:
let
pname = "beeper";
version = "3.93.36";
version = "3.94.20";
name = "${pname}-${version}";
src = fetchurl {
url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.93.36-build-2401269p8vcb695-x86_64.AppImage";
hash = "sha256-3pOOAI4/BWdbWfPweRx5I2KRi9VOgJ5vcQ89FTJhPak=";
url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.94.20-build-240202yjfv5ggow-x86_64.AppImage";
hash = "sha256-bpGZk0fkul5hPBO3Wmvwzjxw6j2KK90Xbk7HeeggZBs=";
};
appimage = appimageTools.wrapType2 {
inherit version pname src;

View file

@ -78,6 +78,7 @@ rustPlatform.buildRustPackage rec {
comment = meta.description;
genericName = "Remote Desktop";
categories = [ "Network" ];
mimeTypes = [ "x-scheme-handler/rustdesk" ];
})
];

View file

@ -11,18 +11,18 @@
buildGoModule rec {
pname = "shellhub-agent";
version = "0.14.2";
version = "0.14.3";
src = fetchFromGitHub {
owner = "shellhub-io";
repo = "shellhub";
rev = "v${version}";
hash = "sha256-VP1U5JSVsAcGeV/xUrToJfrdw0TWbHhmi2Y/tM5bHpQ=";
hash = "sha256-XnkU/I41x6JqrH5D6JGw1fgdiNfiMOBy9DUUXzKwkGg=";
};
modRoot = "./agent";
vendorHash = "sha256-ISFnljpdOcvhNTM4jMGmi2xArjWSmjJj7dCnlcSfkVI=";
vendorHash = "sha256-nuFgJc1xQU4X86ojdFzs+9Gp3HDLsw3tkMcprlXCrko=";
ldflags = [ "-s" "-w" "-X main.AgentVersion=v${version}" ];

View file

@ -13,11 +13,11 @@
stdenv.mkDerivation rec {
pname = "appflowy";
version = "0.4.3";
version = "0.4.6";
src = fetchzip {
url = "https://github.com/AppFlowy-IO/appflowy/releases/download/${version}/AppFlowy-${version}-linux-x86_64.tar.gz";
hash = "sha256-JrcqVPlFr8zD9ZSBxk9WqN7KCLKq+yCjMfA4QbIfDZE=";
hash = "sha256-496uXlJ/3ID8fnW/LKwk0Waca4gSQBuKIFMJ4EJGcsA=";
stripRoot = false;
};

View file

@ -2,12 +2,12 @@
python3.pkgs.buildPythonApplication rec {
pname = "fava";
version = "1.27.1";
version = "1.27.2";
format = "pyproject";
src = fetchPypi {
inherit pname version;
hash = "sha256-W/uxzk+/4tDVOL+nVUJfyBAE5sI9/pYq1zu42GCGjSk=";
hash = "sha256-kLQAWFHDmzsBjVMm/ZUn+TFkM52W0h0jg0wSp1tmPZQ=";
};
nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];

View file

@ -2,7 +2,6 @@
, stdenv
, fetchurl
, fetchFromGitHub
, fetchpatch
, wrapGAppsHook
, makeDesktopItem
, copyDesktopItems
@ -22,16 +21,20 @@ let
pin = "2.2.1-20230117.075740-16";
};
};
jackson-datatype-jsr310 = fetchurl {
url = "https://repo1.maven.org/maven2/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.15.3/jackson-datatype-jsr310-2.15.3.jar";
hash = "sha256-vqHXgAnrxOXVSRij967F2p+9CfZiwZGiF//PN+hSfF4=";
};
in
stdenv.mkDerivation rec {
version = "5.11";
version = "5.12";
pname = "jabref";
src = fetchFromGitHub {
owner = "JabRef";
repo = "jabref";
rev = "v${version}";
hash = "sha256-MTnM4QHTFXJt/T8SOWwHlZ1CuegSGjpT3qDaMRi5n18=";
hash = "sha256-+ltd9hItmMkEpKzX6TFfFy5fiOkLBK/tQNsh8OVDeoc=";
fetchSubmodules = true;
};
@ -51,7 +54,7 @@ stdenv.mkDerivation rec {
deps = stdenv.mkDerivation {
pname = "${pname}-deps";
inherit src version patches postPatch;
inherit src version postPatch;
nativeBuildInputs = [ gradle perl ];
buildPhase = ''
@ -61,26 +64,20 @@ stdenv.mkDerivation rec {
'';
# perl code mavenizes pathes (com.squareup.okio/okio/1.13.0/a9283170b7305c8d92d25aff02a6ab7e45d06cbe/okio-1.13.0.jar -> com/squareup/okio/okio/1.13.0/okio-1.13.0.jar)
installPhase = ''
find $GRADLE_USER_HOME/caches/modules-2 -type f -regex '.*\.\(jar\|pom\)' \
find $GRADLE_USER_HOME/caches/modules-2/ -type f -regex '.*\.\(jar\|pom\)' \
| perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/$x/$3/$4/''${\($5 =~ s/-jvm//r)}" #e' \
| sh
mv $out/com/tobiasdiez/easybind/${versionReplace.easybind.pin} \
$out/com/tobiasdiez/easybind/${versionReplace.easybind.snapshot}
# This is used but not cached by Gradle.
cp ${jackson-datatype-jsr310} $out/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.15.3/jackson-datatype-jsr310-2.15.3.jar
'';
# Don't move info to share/
forceShare = [ "dummy" ];
outputHashMode = "recursive";
outputHash = "sha256-sMbAv122EcLPOqbEVKowfxp9B71iJaccLRlKS75b3Xc=";
outputHash = "sha256-baP/zNgcc6oYwwbWvT7ontULcKKCw0rTQRkdZMgcWfY=";
};
patches = [
# Use JavaFX 21
(fetchpatch {
url = "https://github.com/JabRef/jabref/commit/2afd1f622a3ab85fc2cf5fa879c5a4d41c245eca.patch";
hash = "sha256-cs7TSSnEY4Yf5xrqMOpfIA4jVdzM3OQQV/anQxJyy64=";
})
];
postPatch = ''
# Pin the version
substituteInPlace build.gradle \
@ -92,6 +89,13 @@ stdenv.mkDerivation rec {
--replace 'VERSION_CHECK_ENABLED, Boolean.TRUE' \
'VERSION_CHECK_ENABLED, Boolean.FALSE'
# Find OpenOffice/LibreOffice binary
substituteInPlace src/main/java/org/jabref/logic/openoffice/OpenOfficePreferences.java \
--replace '/usr' '/run/current-system/sw'
# Don't fetch predatory sources. These source are fetched from online webpages.
sed -i -e '/new PJSource/,/);/c);' src/main/java/org/jabref/logic/journals/predatory/PredatoryJournalListCrawler.java
# Add back downloadDependencies task for deps download which is removed upstream in https://github.com/JabRef/jabref/pull/10326
cat <<EOF >> build.gradle
task downloadDependencies {
@ -152,7 +156,7 @@ stdenv.mkDerivation rec {
runHook preInstall
install -dm755 $out/share/java/jabref
install -Dm644 LICENSE.md $out/share/licenses/jabref/LICENSE.md
install -Dm644 LICENSE $out/share/licenses/jabref/LICENSE
install -Dm644 src/main/resources/icons/jabref.svg $out/share/pixmaps/jabref.svg
# script to support browser extensions

View file

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
pname = "gnuastro";
version = "0.21";
version = "0.22";
src = fetchurl {
url = "mirror://gnu/gnuastro/gnuastro-${version}.tar.gz";
sha256 = "sha256-L7qZPYQiORUXtV9+tRF4iUbXqIaqFYSYT9Rni90nU38=";
sha256 = "sha256-f9fxaga95VrtliggkM2SITW+6pAjaeWvgUOJ6rnMcwg=";
};
nativeBuildInputs = [ libtool ];
@ -29,6 +29,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "GNU astronomy utilities and library";
homepage = "https://www.gnu.org/software/gnuastro/";
changelog = "https://git.savannah.gnu.org/cgit/gnuastro.git/plain/NEWS?id=gnuastro_v${version}";
license = licenses.gpl3Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ sikmir ];

View file

@ -12,13 +12,13 @@
stdenv.mkDerivation (finalAttrs:{
pname = "wxmaxima";
version = "23.12.0";
version = "24.02.0";
src = fetchFromGitHub {
owner = "wxMaxima-developers";
repo = "wxmaxima";
rev = "Version-${finalAttrs.version}";
sha256 = "sha256-5MOj4loZsD1Fhy+D7V6ZL4QFyVkWyIaxTcHe7R2xypo=";
hash = "sha256-X4nx8zARToogQS4bfkv3CbsS2qU2uL9BBYw0Lw7QC18=";
};
buildInputs = [

View file

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "git-codereview";
version = "1.8.0";
version = "1.9.0";
src = fetchFromGitHub {
owner = "golang";
repo = "review";
rev = "v${version}";
hash = "sha256-E6KgFSlWa/MKG6R2P+K4T+P/JOqaIfxdWpsSFGHbihg=";
hash = "sha256-Nnjo4MwkpFp1OTJZ+eeiJKboBGiRW520iWcJbu8cBnE=";
};
vendorHash = null;

View file

@ -40,5 +40,7 @@ python3Packages.buildPythonApplication rec {
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.linux;
maintainers = [ lib.maintainers.mathnerd314 ];
# ModuleNotFoundError: No module named 'rabbitvcs'
broken = true; # Added 2024-01-28
};
}

View file

@ -18,15 +18,15 @@
rustPlatform.buildRustPackage rec {
pname = "stgit";
version = "2.4.2";
version = "2.4.3";
src = fetchFromGitHub {
owner = "stacked-git";
repo = "stgit";
rev = "v${version}";
hash = "sha256-Rdpi20FRtSYQtYfBvLr+2hghpHKSSDoUZBQqm2nxZxk=";
hash = "sha256-4DYuNWQ/C6/HuApmD36myUb92CkBp/3lrjYpDc9s450=";
};
cargoHash = "sha256-vd2y6XYBlFU9gxd8hNj0srWqEuJAuXTOzt9GPD9q0yc=";
cargoHash = "sha256-B/aeSPYyoAmXgqZu+Onjh32sXKdkmDs2UdyoNRsFPcg=";
nativeBuildInputs = [
pkg-config installShellFiles makeWrapper asciidoc xmlto docbook_xsl

View file

@ -20,13 +20,13 @@
}:
stdenv.mkDerivation rec {
pname = "shotcut";
version = "24.01.13";
version = "24.01.31";
src = fetchFromGitHub {
owner = "mltframework";
repo = "shotcut";
rev = "v${version}";
hash = "sha256-a/PgwxD8MXItkxT4LTdEJrrExD3r9CUkxr/uhgJicD8=";
hash = "sha256-3Itlv9Jc4xl9pB4WDUwc3f7iP7NHyZ6yr5NZuH8M2Jo=";
};
nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook ];

View file

@ -62,13 +62,13 @@ let
in
buildGoModule rec {
pname = "podman";
version = "4.9.1";
version = "4.9.2";
src = fetchFromGitHub {
owner = "containers";
repo = "podman";
rev = "v${version}";
hash = "sha256-G5LTxBzBn+JFQzhzpsphqTcqq5bi+WjmjsOtJvSxO3k=";
hash = "sha256-6E6Qobkvv6y+Jx+X6Z9wJsGIuP7MXoc+cXRiajj0ojw=";
};
patches = [

View file

@ -0,0 +1,60 @@
{ lib
, stdenv
, SDL
, autoreconfHook
, fetchFromGitHub
, libGL
, libGLU
, libX11
, readline
, zlib
}:
stdenv.mkDerivation (finalAttrs: {
pname = "atari800";
version = "5.1.0";
src = fetchFromGitHub {
owner = "atari800";
repo = "atari800";
rev = "ATARI800_${lib.replaceStrings ["."] ["_"] finalAttrs.version}";
hash = "sha256-OZj0x9+M3jkiXUWgB93JTQzi4OUSBCZ3KtniwcZeVB0=";
};
nativeBuildInputs = [
autoreconfHook
];
buildInputs = [
SDL
libGL
libGLU
libX11
readline
zlib
];
configureFlags = [
"--target=default"
(lib.enableFeature true "riodevice")
(lib.withFeature true "opengl")
(lib.withFeature true "readline")
(lib.withFeature true "x")
(lib.withFeatureAs true "sound" "sdl")
(lib.withFeatureAs true "video" "sdl")
];
meta = {
homepage = "https://atari800.github.io/";
description = "An Atari 8-bit emulator";
longDescription = ''
Atari800 is the emulator of Atari 8-bit computer systems and 5200 game
console for Unix, Linux, Amiga, MS-DOS, Atari TT/Falcon, MS-Windows, MS
WinCE, Sega Dreamcast, Android and other systems supported by the SDL
library.
'';
license = with lib.licenses; [ gpl2Plus ];
maintainers = with lib.maintainers; [ AndersonTorres ];
platforms = lib.platforms.linux;
};
})

View file

@ -1,8 +1,8 @@
{ lib
, stdenv
, fetchurl
, SDL
, alsa-lib
, fetchurl
, gcc-unwrapped
, libICE
, libSM
@ -30,10 +30,12 @@ stdenv.mkDerivation (finalAttrs: {
];
postFixup = ''
patchelf --set-rpath ${lib.makeLibraryPath finalAttrs.buildInputs} "$out/bin/atari++"
patchelf \
--set-rpath ${lib.makeLibraryPath finalAttrs.buildInputs} \
"$out/bin/atari++"
'';
meta = with lib; {
meta = {
homepage = "http://www.xl-project.com/";
description = "An enhanced, cycle-accurated Atari emulator";
longDescription = ''
@ -42,8 +44,8 @@ stdenv.mkDerivation (finalAttrs: {
and the Atari 5200 game console. The emulator is auto-configurable and
will compile on a variety of systems (Linux, Solaris, Irix).
'';
maintainers = [ maintainers.AndersonTorres ];
license = licenses.gpl2Plus;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ AndersonTorres ];
license = with lib.licenses; [ gpl2Plus ];
platforms = lib.platforms.unix;
};
})

View file

@ -0,0 +1,112 @@
{ stdenv
, lib
, fetchFromGitHub
, gitUpdater
, nixosTests
, cmake
, dbus
, glib
, gnome
, gsettings-desktop-schemas
, gtest
, intltool
, libayatana-common
, librda
, lomiri
, mate
, pkg-config
, systemd
, wrapGAppsHook
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ayatana-indicator-session";
version = "23.10.3";
src = fetchFromGitHub {
owner = "AyatanaIndicators";
repo = "ayatana-indicator-session";
rev = finalAttrs.version;
hash = "sha256-m2+qZxBrarenR41M41mCteFRXIEGkVDavRWQwM3G4tk=";
};
postPatch = ''
# Queries systemd user unit dir via pkg_get_variable, can't override prefix
substituteInPlace data/CMakeLists.txt \
--replace-fail 'pkg_get_variable(SYSTEMD_USER_DIR systemd systemduserunitdir)' 'set(SYSTEMD_USER_DIR "''${CMAKE_INSTALL_PREFIX}/lib/systemd/user")' \
--replace-fail '/etc' "\''${CMAKE_INSTALL_SYSCONFDIR}"
'';
strictDeps = true;
nativeBuildInputs = [
cmake
intltool
pkg-config
wrapGAppsHook
];
buildInputs = [
lomiri.cmake-extras
glib
gsettings-desktop-schemas
libayatana-common
librda
systemd
# TODO these bloat the closure size alot, just so the indicator doesn't have the potential to crash.
# is there a better way to give it access to DE-specific schemas as needed?
# https://github.com/AyatanaIndicators/ayatana-indicator-session/blob/88846bad7ee0aa8e0bb122816d06f9bc887eb464/src/service.c#L1387-L1413
gnome.gnome-settings-daemon
mate.mate-settings-daemon
];
nativeCheckInputs = [
dbus
];
checkInputs = [
gtest
];
cmakeFlags = [
(lib.cmakeBool "ENABLE_TESTS" finalAttrs.finalPackage.doCheck)
(lib.cmakeBool "GSETTINGS_LOCALINSTALL" true)
(lib.cmakeBool "GSETTINGS_COMPILE" true)
(lib.cmakeFeature "CMAKE_CTEST_ARGUMENTS" (lib.concatStringsSep ";" [
# Exclude tests
"-E" (lib.strings.escapeShellArg "(${lib.concatStringsSep "|" [
# Currently broken: https://github.com/AyatanaIndicators/ayatana-indicator-session/issues/90
"^test-service"
]})")
]))
];
doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
# DBus communication
enableParallelChecking = false;
passthru = {
ayatana-indicators = [ "ayatana-indicator-session" ];
tests.vm = nixosTests.ayatana-indicators;
updateScript = gitUpdater { };
};
meta = with lib; {
description = "Ayatana Indicator showing session management, status and user switching";
longDescription = ''
This Ayatana Indicator is designed to be placed on the right side of a
panel and give the user easy control for
- changing their instant message status,
- switching to another user,
- starting a guest session, or
- controlling the status of their own session.
'';
homepage = "https://github.com/AyatanaIndicators/ayatana-indicator-session";
changelog = "https://github.com/AyatanaIndicators/ayatana-indicator-session/blob/${finalAttrs.version}/ChangeLog";
license = licenses.gpl3Only;
maintainers = with maintainers; [ OPNA2608 ];
platforms = platforms.linux;
};
})

View file

@ -0,0 +1,54 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
}:
stdenv.mkDerivation (finalAttrs: {
pname = "cronutils";
version = "1.10";
outputs = [ "out" "man" ];
src = fetchFromGitHub {
owner = "google";
repo = "cronutils";
rev = "version/${finalAttrs.version}";
hash = "sha256-XJksfX4jqE32l4HipvO26iv9W4c0Iss6DenlEatdL1k=";
};
patches = [
# Add missing libgen.h include. Backported from https://github.com/google/cronutils/pull/11.
(fetchpatch {
url = "https://github.com/google/cronutils/commit/5d742fc154fc1adcfebc646dca0c45b0f0060844.patch";
hash = "sha256-o1ylZ+fKL1fQYSKSOkujDsh4CUQya0wJ47uGNNC6mVQ=";
})
# Fix function declaration without a prototype. Backported from https://github.com/google/cronutils/pull/11.
(fetchpatch {
url = "https://github.com/google/cronutils/commit/c39df37c6c280e3f73ea57cfa598b8447e5a58fe.patch";
hash = "sha256-og/xEWn0M7+mkbLGY14nkYpV3ckr7eYrb0X22Zxmq8w=";
})
# Remove `LDLIBS+=-lrt` from Makefile. Backported from https://github.com/google/cronutils/pull/11.
(fetchpatch {
url = "https://github.com/google/cronutils/commit/de72c648d12d102b79d4e3bb57830f2d79f5702a.patch";
hash = "sha256-njftI3RbrjRtXpXKFHNE9HroIZr5tqVnEK77lu4+/sI=";
})
];
makeFlags = [ "prefix=$(out)" ];
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin (toString [
"-D_DARWIN_C_SOURCE"
# runstat.c:81:81: error: format string is not a string literal
"-Wno-format-nonliteral"
]);
meta = with lib; {
changelog = "https://github.com/google/cronutils/releases/tag/version%2F${finalAttrs.version}";
description = "Utilities to assist running periodic batch processing jobs";
homepage = "https://github.com/google/cronutils";
license = licenses.asl20;
maintainers = with maintainers; [ katexochen ];
platforms = platforms.all;
};
})

View file

@ -2,10 +2,10 @@
buildDotnetGlobalTool {
pname = "csharpier";
version = "0.27.0";
version = "0.27.2";
executables = "dotnet-csharpier";
nugetSha256 = "sha256-aI8sZoUXAA/bOn7ITMkBFXHeTVRm9O/qX+bWfOKwRDs=";
nugetSha256 = "sha256-P4v4h09FuisIry9B/6batrG0CpLqnrkxnlk1yEd1JbY=";
meta = with lib; {
description = "An opinionated code formatter for C#";

View file

@ -0,0 +1,84 @@
{ lib
, stdenv
, appstream
, cargo
, desktop-file-utils
, fetchFromGitea
, gitUpdater
, gtk4
, libadwaita
, libepoxy
, libglvnd
, meson
, mpv
, ninja
, openssl
, pkg-config
, rustPlatform
, rustc
, wrapGAppsHook4
}:
stdenv.mkDerivation rec {
pname = "delfin";
version = "0.3.0";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "avery42";
repo = "delfin";
rev = "v${version}";
hash = "sha256-1Q3Aywf80CCXxorWSymwxJwMU1I4k7juDoWG5J18AXY=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
hash = "sha256-/RZD4b7hrbC1Z5MtHDdib5TFEmxAh9odjNPo4m+FqK4=";
};
# upstream pinned the linker to clang/mold through 0.3.0, unnecessarily.
# remove this patch for version > 0.3.0.
# see: <https://codeberg.org/avery42/delfin/commit/e6deee77e9a6a6ba2425d1cc88dcbdeb471d1fdc>
postPatch = ''
rm .cargo/config.toml
'';
nativeBuildInputs = [
appstream
desktop-file-utils
meson
ninja
pkg-config
rustPlatform.cargoSetupHook
cargo
rustc
wrapGAppsHook4
];
buildInputs = [
gtk4
libadwaita
libglvnd
libepoxy
mpv
openssl
];
mesonFlags = [
(lib.mesonOption "profile" "release")
];
passthru.updateScript = gitUpdater {
rev-prefix = "v";
};
meta = with lib; {
description = "Stream movies and TV shows from Jellyfin";
homepage = "https://www.delfin.avery.cafe/";
license = licenses.gpl3Only;
maintainers = with maintainers; [ colinsane ];
mainProgram = "delfin";
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,13 @@
diff --git a/src/Makefile.am b/src/Makefile.am
index 4b0c466..ce008fa 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -54,7 +54,7 @@
@chgrp games ${DOPEBIN} || chgrp wheel ${DOPEBIN} || \
( echo "WARNING: Cannot change group of dopewars binary - the high"; \
echo "score file may be unreadable or unwriteable by some users" )
- chmod 2755 ${DOPEBIN}
+ chmod 755 ${DOPEBIN}
install-data-local:
${mkinstalldirs} ${PIXDIR}

View file

@ -0,0 +1,54 @@
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, makeWrapper
, curl
, ncurses
, gtk3
, pkg-config
, scoreDirectory ? "$HOME/.local/share"
}:
stdenv.mkDerivation (finalAttrs: {
pname = "dopewars";
version = "1.6.2";
src = fetchFromGitHub {
owner = "benmwebb";
repo = "dopewars";
rev = "v${finalAttrs.version}";
hash = "sha256-CpgqRYmrfOFxhC7yAS2OqRBi4r3Vesq3+7a0q5rc3vM=";
};
nativeBuildInputs = [
autoreconfHook
makeWrapper
pkg-config
];
buildInputs = [
curl
gtk3
ncurses
];
# remove the denied setting of setuid bit permission
patches = [ ./0001-remove_setuid.patch ];
# run dopewars with -f so that it finds its scoreboard file in ~/.local/share
postInstall = ''
wrapProgram $out/bin/dopewars \
--run 'mkdir -p ${scoreDirectory}' \
--add-flags '-f ${scoreDirectory}/dopewars.sco'
'';
meta = with lib; {
description = "Game simulating the life of a drug dealer in New York";
homepage = "https://dopewars.sourceforge.io";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ geri1701 ];
mainProgram = "dopewars";
platforms = platforms.unix;
};
})

View file

@ -14,7 +14,7 @@
}:
let
version = "3.0";
version = "3.0.1";
in
stdenv.mkDerivation {
inherit version;
@ -25,7 +25,7 @@ stdenv.mkDerivation {
owner = "dagargo";
repo = "elektroid";
rev = version;
sha256 = "sha256-77bsFB6hOxiW5f9bZ7IQIiwWd3MgtJUD37E6IXBfv/E=";
sha256 = "sha256-Qv4jvk6N0IMgYGCPWNYGDZJKGA+UPzhHeYfSrkq5hy4=";
};
nativeBuildInputs = [

View file

@ -0,0 +1,81 @@
{ lib
, SDL2
, alsa-lib
, boost
, cmake
, curl
, fetchFromGitHub
, freeimage
, freetype
, libGL
, libGLU
, libvlc
, pkg-config
, rapidjson
, stdenv
}:
stdenv.mkDerivation (finalAttrs: {
pname = "emulationstation";
version = "2.11.2";
src = fetchFromGitHub {
owner = "RetroPie";
repo = "EmulationStation";
rev = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-J5h/578FVe4DXJx/AvpRnCIUpqBeFtmvFhUDYH5SErQ=";
};
nativeBuildInputs = [
SDL2
cmake
pkg-config
];
buildInputs = [
SDL2
alsa-lib
boost
curl
freeimage
freetype
libGL
libGLU
libvlc
rapidjson
];
strictDeps = true;
cmakeFlags = [
(lib.cmakeBool "GL" true)
];
installPhase = ''
runHook preInstall
install -Dm755 ../emulationstation $out/bin/emulationstation
mkdir -p $out/share/emulationstation/
cp -r ../resources $out/share/emulationstation/
runHook preInstall
'';
# es-core/src/resources/ResourceManager.cpp: resources are searched at the
# same place of binaries.
postFixup = ''
pushd $out
ln -s $out/share/emulationstation/resources $out/bin/
popd
'';
meta = {
homepage = "https://github.com/RetroPie/EmulationStation";
description = "A flexible emulator front-end supporting keyboardless navigation and custom system themes (forked by RetroPie)";
license = with lib.licenses; [ mit ];
mainProgram = "emulationstation";
maintainers = with lib.maintainers; [ AndersonTorres edwtjo ];
platforms = lib.platforms.linux;
};
})

View file

@ -7,16 +7,16 @@
buildGoModule rec {
pname = "files-cli";
version = "2.12.27";
version = "2.12.28";
src = fetchFromGitHub {
repo = "files-cli";
owner = "files-com";
rev = "v${version}";
hash = "sha256-MKW5jvdSd41nuz9oTP6sMzBo+TnNxE/+86KoPHRogBM=";
hash = "sha256-4YW261qQtbfbX08zuGzr3qH470DaWUDIVaex7qYe2tI=";
};
vendorHash = "sha256-rJtcocjH6GFmiDs7IizCMt/51RbHmvXdIIlWRETg6tg=";
vendorHash = "sha256-w5R7eVrnpcKu0/V2gAeZ7RL6VyA57INcOU31Jhwf1so=";
ldflags = [
"-s"

View file

@ -0,0 +1,44 @@
{ lib
, stdenv
, fetchurl
, cfitsio
}:
stdenv.mkDerivation (finalAttrs: {
pname = "fitsverify";
version = "4.22";
src = fetchurl {
url = "https://heasarc.gsfc.nasa.gov/docs/software/ftools/fitsverify/fitsverify-${finalAttrs.version}.tar.gz";
hash = "sha256-bEXoA6fg7by30TkYYVuuY2HSszPCkrhJxQnsm+vbGLQ=";
};
buildInputs = [
cfitsio
];
# See build instructions in the README file in src.
buildPhase = ''
$CC -o fitsverify ftverify.c fvrf_data.c fvrf_file.c fvrf_head.c \
fvrf_key.c fvrf_misc.c -DSTANDALONE \
$NIX_CFLAGS_COMPILE \
-lcfitsio
'';
installPhase = ''
install -D fitsverify $out/bin/fitsverify
'';
meta = with lib; {
description = "FITS File Format-Verification Tool";
longDescription = ''
Fitsverify is a computer program that rigorously checks whether a FITS
(Flexible Image Transport System) data file conforms to all the
requirements defined in Version 3.0 of the FITS Standard document.
'';
homepage = "https://heasarc.gsfc.nasa.gov/docs/software/ftools/fitsverify/";
license = licenses.mit;
platforms = with platforms; linux;
maintainers = with maintainers; [ panicgh ];
};
})

View file

@ -3,6 +3,7 @@
, buildGoModule
, fetchFromGitHub
, php
, brotli
, testers
, frankenphp
, darwin
@ -25,13 +26,13 @@ let
pieBuild = stdenv.hostPlatform.isMusl;
in buildGoModule rec {
pname = "frankenphp";
version = "1.0.3";
version = "1.1.0";
src = fetchFromGitHub {
owner = "dunglas";
repo = "frankenphp";
rev = "v${version}";
hash = "sha256-DNU127IZ+lw2+NqzrU07ioJKCjjCsnqgS+cqUlX7TUw=";
hash = "sha256-tQ35GZuw7Ag1YfmOUarVY45yk4yugNLJetEV4m2w3GE=";
};
sourceRoot = "source/caddy";
@ -39,9 +40,9 @@ in buildGoModule rec {
# frankenphp requires C code that would be removed with `go mod tidy`
# https://github.com/golang/go/issues/26366
proxyVendor = true;
vendorHash = "sha256-ZkbhpY8+BSTSdzQGsvXUfTBdTPUvQ8tHjbnr0lYho5I=";
vendorHash = "sha256-sv3IcNj1rjolgF0HZZnJ3dLV9+QeRw3ItRguz6Un9CY=";
buildInputs = [ phpUnwrapped ] ++ phpUnwrapped.buildInputs;
buildInputs = [ phpUnwrapped brotli ] ++ phpUnwrapped.buildInputs;
nativeBuildInputs = [ makeBinaryWrapper ] ++ lib.optionals stdenv.isDarwin [ pkg-config darwin.cctools darwin.autoSignDarwinBinariesHook ];
subPackages = [ "frankenphp" ];

View file

@ -64,6 +64,14 @@ stdenv.mkDerivation (finalAttrs: {
patch = "revert_buggy_gtk3_change_in_12.1.patch";
hash = "sha256-eqush3zXxypQUxtO5110GoOJ30F5LZcF8XIC/Y8/fgM=";
})
# Disable update patch
(fetchDebianPatch {
pname = "freefilesync";
version = "13.3";
debianRevision = "1";
patch = "ffs_no_check_updates.patch";
hash = "sha256-lPyHpxhZz8BSnDI8QfAzKpKwVkp2jiF49RWjKNuZGII=";
})
];
nativeBuildInputs = [

View file

@ -5,19 +5,22 @@
python3.pkgs.buildPythonApplication rec {
pname = "gcp-scanner";
version = "1.3.0";
version = "1.4.0";
pyproject = true;
src = fetchFromGitHub {
owner = "google";
repo = "gcp_scanner";
rev = "refs/tags/v${version}";
hash = "sha256-mMvAoqwptCA73JiUl8HIhFBO198NnUmvCbf8Rk9dWxA=";
hash = "sha256-6bIrSaTqpXQjB64YWAI64DlgQBD2XD+zMvKymMtwpDk=";
};
pythonRelaxDeps = true;
nativeBuildInputs = with python3.pkgs; [
setuptools
setuptools-git-versioning
pythonRelaxDepsHook
];
propagatedBuildInputs = with python3.pkgs; [

View file

@ -8,6 +8,7 @@
, scdoc
, tzdata
, substituteAll
, unstableGitUpdater
, callPackage
, enableCrossCompilation ? (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.is64bit)
, pkgsCross
@ -16,7 +17,7 @@
, riscv64PkgsCrossToolchain ? pkgsCross.riscv64
}:
# There's no support for `aarch64-freebsd` or `riscv64-freebsd` on nix.
# There's no support for `aarch64` or `riscv64` for freebsd nor for openbsd on nix.
# See `lib.systems.doubles.aarch64` and `lib.systems.doubles.riscv64`.
assert let
inherit (stdenv.hostPlatform) isLinux is64bit;
@ -33,7 +34,6 @@ let
# We use harec's override of qbe until 1.2 is released, but the `qbe` argument
# is kept to avoid breakage.
qbe = harec.qbeUnstable;
# https://harelang.org/platforms/
arch = stdenv.hostPlatform.uname.processor;
platform = lib.toLower stdenv.hostPlatform.uname.system;
embeddedOnBinaryTools =
@ -60,15 +60,15 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "hare";
version = "unstable-2023-11-27";
version = "0-unstable-2024-02-01";
outputs = [ "out" "man" ];
src = fetchFromSourcehut {
owner = "~sircmpwn";
repo = "hare";
rev = "d94f355481a320fb2aec13ef62cb3bfe2416f5e4";
hash = "sha256-Mpl3VO4xvLCKHeYr/FPuS6jl8CkyeqDz18mQ6Zv05oc=";
rev = "4d387ed61968f468e43571d15485b498e28acaec";
hash = "sha256-vVL8e+P/lnp0/jO+lQ/q0CehwxAvXh+FPOMJ8r+2Ftk=";
};
patches = [
@ -96,7 +96,6 @@ stdenv.mkDerivation (finalAttrs: {
makeFlags = [
"HARECACHE=.harecache"
"PREFIX=${builtins.placeholder "out"}"
"PLATFORM=${platform}"
"ARCH=${arch}"
# Strip the variable of an empty $(SRCDIR)/hare/third-party, since nix does
# not follow the FHS.
@ -122,8 +121,8 @@ stdenv.mkDerivation (finalAttrs: {
doCheck = true;
preConfigure = ''
ln -s config.example.mk config.mk
postConfigure = ''
ln -s configs/${platform}.mk config.mk
'';
postFixup = ''
@ -134,6 +133,7 @@ stdenv.mkDerivation (finalAttrs: {
setupHook = ./setup-hook.sh;
passthru = {
updateScript = unstableGitUpdater { };
tests = lib.optionalAttrs enableCrossCompilation {
crossCompilation = callPackage ./cross-compilation-tests.nix {
hare = finalAttrs.finalPackage;

View file

@ -3,29 +3,33 @@
, fetchFromSourcehut
, qbe
, fetchgit
, unstableGitUpdater
}:
let
# harec needs the dbgfile and dbgloc features implemented up to this commit.
# This can be dropped once 1.2 is released, for a possible release date see:
# This can be dropped once 1.2 is released. For a possible release date, see:
# https://lists.sr.ht/~mpu/qbe/%3CZPkmHE9KLohoEohE%40cloudsdale.the-delta.net.eu.org%3E
qbe' = qbe.overrideAttrs (_old: {
version = "1.1-unstable-2023-08-18";
version = "1.1-unstable-2024-01-12";
src = fetchgit {
url = "git://c9x.me/qbe.git";
rev = "36946a5142c40b733d25ea5ca469f7949ee03439";
hash = "sha256-bqxWFP3/aw7kRoD6ictbFcjzijktHvh4AgWAXBIODW8=";
rev = "85287081c4a25785dec1ec48c488a5879b3c37ac";
hash = "sha256-7bVbxUU/HXJXLtAxhoK0URmPtjGwMSZrPkx8WKl52Mg=";
};
});
platform = lib.toLower stdenv.hostPlatform.uname.system;
arch = stdenv.hostPlatform.uname.processor;
in
stdenv.mkDerivation (finalAttrs: {
pname = "harec";
version = "unstable-2023-11-29";
version = "0-unstable-2024-01-29";
src = fetchFromSourcehut {
owner = "~sircmpwn";
repo = "harec";
rev = "ec3193e3870436180b0f3df82b769adc57a1c099";
hash = "sha256-HXQIgFC4YVDJjo5xbyg1ea3jWYKLEwKkD1KFzWFz9UI= ";
rev = "f9e17e633845d8d38566b4ea32db0a29ac85d96e";
hash = "sha256-Xy9VOcDtbJUz3z6Vk8bqH41VbAFKtJ9fzPGEwVz8KQM=";
};
nativeBuildInputs = [
@ -36,15 +40,26 @@ stdenv.mkDerivation (finalAttrs: {
qbe'
];
makeFlags = [
"PREFIX=${builtins.placeholder "out"}"
"ARCH=${arch}"
];
strictDeps = true;
enableParallelBuilding = true;
doCheck = true;
postConfigure = ''
ln -s configs/${platform}.mk config.mk
'';
passthru = {
# We create this attribute so that the `hare` package can access the
# overwritten `qbe`.
qbeUnstable = qbe';
updateScript = unstableGitUpdater { };
};
meta = {
@ -57,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
# https://harelang.org/platforms/
# UPDATE: https://github.com/hshq/harelang provides a MacOS port
platforms = with lib.platforms;
lib.intersectLists (freebsd ++ linux) (aarch64 ++ x86_64 ++ riscv64);
lib.intersectLists (freebsd ++ openbsd ++ linux) (aarch64 ++ x86_64 ++ riscv64);
badPlatforms = lib.platforms.darwin;
};
})

View file

@ -0,0 +1,53 @@
{
lts ? false,
lib,
buildGoModule,
fetchFromGitHub,
installShellFiles,
}:
let
releaseFile = if lts then ./lts.nix else ./latest.nix;
inherit (import releaseFile) version hash vendorHash;
in
buildGoModule rec {
pname = "incus-client";
inherit vendorHash version;
src = fetchFromGitHub {
owner = "lxc";
repo = "incus";
rev = "refs/tags/v${version}";
inherit hash;
};
CGO_ENABLED = 0;
nativeBuildInputs = [ installShellFiles ];
subPackages = [ "cmd/incus" ];
postInstall = ''
# use custom bash completion as it has extra logic for e.g. instance names
installShellCompletion --bash --name incus ./scripts/bash/incus
installShellCompletion --cmd incus \
--fish <($out/bin/incus completion fish) \
--zsh <($out/bin/incus completion zsh)
'';
# don't run the full incus test suite
doCheck = false;
meta = {
description = "Powerful system container and virtual machine manager";
homepage = "https://linuxcontainers.org/incus";
changelog = "https://github.com/lxc/incus/releases/tag/v${version}";
license = lib.licenses.asl20;
maintainers = lib.teams.lxc.members;
platforms = lib.platforms.unix;
mainProgram = "incus";
};
}

View file

@ -0,0 +1,5 @@
{
hash = "sha256-3eWkQT2P69ZfN62H9B4WLnmlUOGkpzRR0rctgchP+6A=";
version = "0.5.1";
vendorHash = "sha256-2ZJU7WshN4UIbJv55bFeo9qiAQ/wxu182mnz7pE60xA=";
}

View file

@ -0,0 +1,3 @@
# this release doesn't exist yet, but satisfay the by-name checks
# will be added as incus-lts in all-packages.nix once ready
{ }

View file

@ -1,42 +1,49 @@
{ lib
, incus-unwrapped
, linkFarm
, makeWrapper
, stdenv
, symlinkJoin
, writeShellScriptBin
, acl
, apparmor-parser
, apparmor-profiles
, attr
, bash
, btrfs-progs
, cdrkit
, criu
, dnsmasq
, e2fsprogs
, getent
, gnutar
, gptfdisk
, gzip
, iproute2
, iptables
, kmod
, lvm2
, minio
, nftables
, OVMF
, qemu_kvm
, qemu-utils
, rsync
, spice-gtk
, squashfsTools
, thin-provisioning-tools
, util-linux
, virtiofsd
, xz
{
lts ? false,
lib,
callPackage,
linkFarm,
makeWrapper,
stdenv,
symlinkJoin,
writeShellScriptBin,
acl,
apparmor-parser,
apparmor-profiles,
attr,
bash,
btrfs-progs,
cdrkit,
criu,
dnsmasq,
e2fsprogs,
getent,
gnutar,
gptfdisk,
gzip,
iproute2,
iptables,
kmod,
lvm2,
minio,
nftables,
OVMF,
qemu_kvm,
qemu-utils,
rsync,
spice-gtk,
squashfsTools,
thin-provisioning-tools,
util-linux,
virtiofsd,
xz,
}:
let
unwrapped = callPackage ./unwrapped.nix { inherit lts; };
client = callPackage ./client.nix { inherit lts; };
name = "incus${lib.optionalString lts "-lts"}";
binPath = lib.makeBinPath [
acl
attr
@ -70,9 +77,7 @@ let
'')
];
clientBinPath = [
spice-gtk
];
clientBinPath = [ spice-gtk ];
ovmf-2mb = OVMF.override {
secureBoot = true;
@ -98,24 +103,57 @@ let
# mimic ovmf from https://github.com/canonical/incus-pkg-snap/blob/3abebe1dfeb20f9b7729556960c7e9fe6ad5e17c/snapcraft.yaml#L378
# also found in /snap/incus/current/share/qemu/ on a snap install
ovmf = linkFarm "incus-ovmf" [
{ name = "OVMF_CODE.2MB.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_CODE.fd"; }
{ name = "OVMF_CODE.4MB.CSM.fd"; path = "${ovmf-4mb-csm.fd}/FV/${ovmf-prefix}_CODE.fd"; }
{ name = "OVMF_CODE.4MB.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_CODE.fd"; }
{ name = "OVMF_CODE.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_CODE.fd"; }
{
name = "OVMF_CODE.2MB.fd";
path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_CODE.fd";
}
{
name = "OVMF_CODE.4MB.CSM.fd";
path = "${ovmf-4mb-csm.fd}/FV/${ovmf-prefix}_CODE.fd";
}
{
name = "OVMF_CODE.4MB.fd";
path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_CODE.fd";
}
{
name = "OVMF_CODE.fd";
path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_CODE.fd";
}
{ name = "OVMF_VARS.2MB.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; }
{ name = "OVMF_VARS.2MB.ms.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; }
{ name = "OVMF_VARS.4MB.CSM.fd"; path = "${ovmf-4mb-csm.fd}/FV/${ovmf-prefix}_VARS.fd"; }
{ name = "OVMF_VARS.4MB.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_VARS.fd"; }
{ name = "OVMF_VARS.4MB.ms.fd"; path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_VARS.fd"; }
{ name = "OVMF_VARS.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; }
{ name = "OVMF_VARS.ms.fd"; path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd"; }
{
name = "OVMF_VARS.2MB.fd";
path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd";
}
{
name = "OVMF_VARS.2MB.ms.fd";
path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd";
}
{
name = "OVMF_VARS.4MB.CSM.fd";
path = "${ovmf-4mb-csm.fd}/FV/${ovmf-prefix}_VARS.fd";
}
{
name = "OVMF_VARS.4MB.fd";
path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_VARS.fd";
}
{
name = "OVMF_VARS.4MB.ms.fd";
path = "${ovmf-4mb.fd}/FV/${ovmf-prefix}_VARS.fd";
}
{
name = "OVMF_VARS.fd";
path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd";
}
{
name = "OVMF_VARS.ms.fd";
path = "${ovmf-2mb.fd}/FV/${ovmf-prefix}_VARS.fd";
}
];
in
symlinkJoin {
name = "incus-${incus-unwrapped.version}";
name = "${name}-${unwrapped.version}";
paths = [ incus-unwrapped ];
paths = [ unwrapped ];
nativeBuildInputs = [ makeWrapper ];
@ -126,8 +164,10 @@ symlinkJoin {
'';
passthru = {
inherit (incus-unwrapped) tests;
inherit client unwrapped;
inherit (unwrapped) tests;
};
inherit (incus-unwrapped) meta pname version;
inherit (unwrapped) meta pname version;
}

View file

@ -1,41 +1,51 @@
{ lib
, buildGoModule
, fetchFromGitHub
, acl
, cowsql
, hwdata
, libcap
, lxc
, pkg-config
, sqlite
, udev
, installShellFiles
, nix-update-script
, nixosTests
{
lts ? false,
lib,
buildGoModule,
fetchFromGitHub,
writeShellScript,
acl,
cowsql,
hwdata,
libcap,
lxc,
pkg-config,
sqlite,
udev,
installShellFiles,
nixosTests,
}:
let
releaseFile = if lts then ./lts.nix else ./latest.nix;
inherit (import releaseFile) version hash vendorHash;
name = "incus${lib.optionalString lts "-lts"}";
in
buildGoModule rec {
pname = "incus-unwrapped";
version = "0.5.1";
pname = "${name}-unwrapped";
inherit vendorHash version;
src = fetchFromGitHub {
owner = "lxc";
repo = "incus";
rev = "refs/tags/v${version}";
hash = "sha256-3eWkQT2P69ZfN62H9B4WLnmlUOGkpzRR0rctgchP+6A=";
rev = "v${version}";
inherit hash;
};
vendorHash = "sha256-2ZJU7WshN4UIbJv55bFeo9qiAQ/wxu182mnz7pE60xA=";
postPatch = ''
substituteInPlace internal/usbid/load.go \
--replace "/usr/share/misc/usb.ids" "${hwdata}/share/hwdata/usb.ids"
'';
excludedPackages = [
# statically compile these
"cmd/incus-agent"
"cmd/incus-migrate"
"cmd/lxd-to-incus"
# oidc test requires network
"test/mini-oidc"
];
@ -53,7 +63,10 @@ buildGoModule rec {
udev.dev
];
ldflags = [ "-s" "-w" ];
ldflags = [
"-s"
"-w"
];
tags = [ "libsqlite3" ];
# required for go-cowsql.
@ -64,13 +77,15 @@ buildGoModule rec {
'';
preCheck =
let skippedTests = [
"TestValidateConfig"
"TestConvertNetworkConfig"
"TestConvertStorageConfig"
"TestSnapshotCommon"
"TestContainerTestSuite"
]; in
let
skippedTests = [
"TestValidateConfig"
"TestConvertNetworkConfig"
"TestConvertStorageConfig"
"TestSnapshotCommon"
"TestContainerTestSuite"
];
in
''
# Disable tests requiring local operations
buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
@ -85,15 +100,14 @@ buildGoModule rec {
--zsh <($out/bin/incus completion zsh)
'';
passthru = {
tests.incus = nixosTests.incus;
updateScript = nix-update-script {
extraArgs = [
"-vr" "v\(.*\)"
];
};
updateScript = writeShellScript "update-incus" ''
nix-update ${name}.unwrapped -vr 'v(.*)' --override-filename pkgs/by-name/in/incus/${
if lts then "lts" else "latest"
}.nix
'';
};
meta = {

View file

@ -6,16 +6,16 @@
let
pname = "lefthook";
version = "1.5.7";
version = "1.6.1";
in
buildGoModule rec {
buildGoModule {
inherit pname version;
src = fetchFromGitHub {
owner = "evilmartians";
repo = "lefthook";
rev = "v${version}";
hash = "sha256-0z4hTx9ClGh20Ncf23SbwuPBdGoFz80FQUx7s77l7y8=";
hash = "sha256-015tIgu9L62uZm4ae1JzU/GAK6fwX8BI9HGYhc+4jQQ=";
};
vendorHash = "sha256-/VLS7+nPERjIU7V2CzqXH69Z3/y+GKZbAFn+KcRKRuA=";

View file

@ -0,0 +1,29 @@
{ stdenv, fetchurl, boost, gdk-pixbuf, glib, libjpeg, libxml2, lib, pkg-config
, cargo, rustc }:
stdenv.mkDerivation rec {
pname = "libopenraw";
version = "0.3.7";
src = fetchurl {
url = "https://libopenraw.freedesktop.org/download/libopenraw-${version}.tar.bz2";
hash = "sha256-VRWyYQNh7zRYC2uXZjURn23ttPCnnVRmL6X+YYakXtU=";
};
nativeBuildInputs = [ pkg-config cargo rustc ];
buildInputs = [ boost gdk-pixbuf glib libjpeg libxml2 ];
postPatch = ''
sed -i configure{,.ac} \
-e "s,GDK_PIXBUF_DIR=.*,GDK_PIXBUF_DIR=$out/lib/gdk-pixbuf-2.0/2.10.0/loaders,"
'';
meta = with lib; {
description = "RAW camerafile decoding library";
homepage = "https://libopenraw.freedesktop.org";
license = licenses.lgpl3Plus;
platforms = [ "x86_64-linux" "aarch64-linux" ];
maintainers = [ maintainers.struan ];
};
}

Some files were not shown because too many files have changed in this diff Show more