diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index b2aedba67d0a..1be16188a18b 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -1564,6 +1564,16 @@
githubId = 87764;
name = "Ben Ford";
};
+ boppyt = {
+ email = "boppy@nwcpz.com";
+ github = "boppyt";
+ githubId = 71049646;
+ name = "Zack A";
+ keys = [{
+ longkeyid = "rsa4096/0x6310C97DE31D1545";
+ fingerprint = "E8D7 5C19 9F65 269B 439D F77B 6310 C97D E31D 1545";
+ }];
+ };
borisbabic = {
email = "boris.ivan.babic@gmail.com";
github = "borisbabic";
@@ -7839,6 +7849,12 @@
githubId = 99988;
name = "Maarten Hoogendoorn";
};
+ MoritzBoehme = {
+ email = "mail@moritzboeh.me";
+ github = "MoritzBoehme";
+ githubId = 42215704;
+ name = "Moritz Böhme";
+ };
MostAwesomeDude = {
email = "cds@corbinsimpson.com";
github = "MostAwesomeDude";
@@ -8680,6 +8696,12 @@
githubId = 101514;
name = "Orivej Desh";
};
+ ornxka = {
+ email = "ornxka@littledevil.sh";
+ github = "ornxka";
+ githubId = 52086525;
+ name = "ornxka";
+ };
oro = {
email = "marco@orovecchia.at";
github = "oro";
@@ -9979,6 +10001,12 @@
githubId = 592876;
name = "Robert W. Pearce";
};
+ rprecenth = {
+ email = "rasmus@precenth.eu";
+ github = "Prillan";
+ githubId = 1675190;
+ name = "Rasmus Précenth";
+ };
rprospero = {
email = "rprospero+nix@gmail.com";
github = "rprospero";
diff --git a/nixos/modules/services/databases/hbase.nix b/nixos/modules/services/databases/hbase.nix
index ff01a1bcd98b..183c8a2f46d5 100644
--- a/nixos/modules/services/databases/hbase.nix
+++ b/nixos/modules/services/databases/hbase.nix
@@ -5,18 +5,24 @@ with lib;
let
cfg = config.services.hbase;
- configFile = pkgs.writeText "hbase-site.xml" ''
-
-
- hbase.rootdir
- file://${cfg.dataDir}/hbase
-
-
- hbase.zookeeper.property.dataDir
- ${cfg.dataDir}/zookeeper
-
-
- '';
+ defaultConfig = {
+ "hbase.rootdir" = "file://${cfg.dataDir}/hbase";
+ "hbase.zookeeper.property.dataDir" = "${cfg.dataDir}/zookeeper";
+ };
+
+ buildProperty = configAttr:
+ (builtins.concatStringsSep "\n"
+ (lib.mapAttrsToList
+ (name: value: ''
+
+ ${name}
+ ${builtins.toString value}
+
+ '')
+ configAttr));
+
+ configFile = pkgs.writeText "hbase-site.xml"
+ (buildProperty (defaultConfig // cfg.settings));
configDir = pkgs.runCommand "hbase-config-dir" { preferLocalBuild = true; } ''
mkdir -p $out
@@ -85,6 +91,14 @@ in {
'';
};
+ settings = mkOption {
+ type = with lib.types; attrsOf (oneOf [ str int bool ]);
+ default = defaultConfig;
+ description = ''
+ configurations in hbase-site.xml, see for details.
+ '';
+ };
+
};
};
diff --git a/nixos/modules/services/logging/logstash.nix b/nixos/modules/services/logging/logstash.nix
index 044d5330231e..a08203dffe78 100644
--- a/nixos/modules/services/logging/logstash.nix
+++ b/nixos/modules/services/logging/logstash.nix
@@ -23,12 +23,16 @@ let
logstashSettingsYml = pkgs.writeText "logstash.yml" cfg.extraSettings;
+ logstashJvmOptionsFile = pkgs.writeText "jvm.options" cfg.extraJvmOptions;
+
logstashSettingsDir = pkgs.runCommand "logstash-settings" {
+ inherit logstashJvmOptionsFile;
inherit logstashSettingsYml;
preferLocalBuild = true;
} ''
mkdir -p $out
ln -s $logstashSettingsYml $out/logstash.yml
+ ln -s $logstashJvmOptionsFile $out/jvm.options
'';
in
@@ -152,6 +156,15 @@ in
'';
};
+ extraJvmOptions = mkOption {
+ type = types.lines;
+ default = "";
+ description = "Extra JVM options, one per line (jvm.options format).";
+ example = ''
+ -Xms2g
+ -Xmx2g
+ '';
+ };
};
};
diff --git a/pkgs/applications/blockchains/chia/default.nix b/pkgs/applications/blockchains/chia/default.nix
index a62d7f95d606..207b42e5584e 100644
--- a/pkgs/applications/blockchains/chia/default.nix
+++ b/pkgs/applications/blockchains/chia/default.nix
@@ -6,14 +6,14 @@
let chia = python3Packages.buildPythonApplication rec {
pname = "chia";
- version = "1.2.10";
+ version = "1.2.11";
src = fetchFromGitHub {
owner = "Chia-Network";
repo = "chia-blockchain";
rev = version;
fetchSubmodules = true;
- sha256 = "sha256-TzSBGjgaE0IWaqJcCIoO/u+gDh17NtAqhE8ldbbjNIE=";
+ sha256 = "sha256-hRpZce8ydEsyq7htNfzlRSKPwMAOUurC3uiQpX6WiB8=";
};
postPatch = ''
@@ -46,7 +46,7 @@ let chia = python3Packages.buildPythonApplication rec {
colorlog
concurrent-log-handler
cryptography
- dnspython
+ dnspythonchia
fasteners
keyrings-cryptfile
pyyaml
diff --git a/pkgs/applications/editors/lite-xl/default.nix b/pkgs/applications/editors/lite-xl/default.nix
new file mode 100644
index 000000000000..3b38004eddba
--- /dev/null
+++ b/pkgs/applications/editors/lite-xl/default.nix
@@ -0,0 +1,65 @@
+{ agg
+, fetchFromGitHub
+, fetchpatch
+, Foundation
+, freetype
+, lib
+, lua5_2
+, meson
+, ninja
+, pcre2
+, pkg-config
+, reproc
+, SDL2
+, stdenv
+}:
+
+stdenv.mkDerivation rec {
+ pname = "lite-xl";
+ version = "2.0.1";
+
+ src = fetchFromGitHub {
+ owner = "lite-xl";
+ repo = "lite-xl";
+ rev = "v${version}";
+ sha256 = "sha256-+RbmT6H/5Ldhv3qOClxMjCSGMudbkGtkjo2SpGqExao=";
+ };
+
+ patches = [
+ # Fixes compatibility with Lua5.2, remove patch when PR merged
+ # https://github.com/lite-xl/lite-xl/pull/435
+ (fetchpatch {
+ name = "0001-replace-unpack-with-table.unpack.patch";
+ url = "https://github.com/lite-xl/lite-xl/commit/30ccde896d1ffe37cbd8990e9b8aaef275e18935.patch";
+ sha256 = "sha256-IAe3jIyD3OtZtu1V7MtPR4QzFKvU/aV/nLQ4U9nHyIQ=";
+ })
+ # Lets meson fallback to the system reproc if available.
+ # remove patch when 2.0.2 is proposed.
+ (fetchpatch {
+ name = "0002-use-dependency-fallbacks-use-system-reproc-if-available.patch";
+ url = "https://github.com/lite-xl/lite-xl/commit/973acb787aacb0164b2f4ae6fe335d250ba80a7b.patch";
+ sha256 = "sha256-GmgATsRlj1FePmw3+AoWEMZIo2eujHYewKQCx583qbU=";
+ })
+ ];
+
+ nativeBuildInputs = [ meson ninja pkg-config ];
+
+ buildInputs = [
+ agg
+ freetype
+ lua5_2
+ pcre2
+ reproc
+ SDL2
+ ] ++ lib.optionals stdenv.isDarwin [
+ Foundation
+ ];
+
+ meta = with lib; {
+ description = "A lightweight text editor written in Lua";
+ homepage = "https://github.com/lite-xl/lite-xl";
+ license = licenses.mit;
+ maintainers = with maintainers; [ boppyt ];
+ platforms = platforms.unix;
+ };
+}
diff --git a/pkgs/applications/misc/cloak/default.nix b/pkgs/applications/misc/cloak/default.nix
index cb33aa595a46..7b2501841262 100644
--- a/pkgs/applications/misc/cloak/default.nix
+++ b/pkgs/applications/misc/cloak/default.nix
@@ -1,4 +1,4 @@
-{ lib, rustPlatform, fetchFromGitHub }:
+{ lib, stdenv, rustPlatform, fetchFromGitHub, Security }:
rustPlatform.buildRustPackage rec {
pname = "cloak";
@@ -13,6 +13,8 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "0af38wgwmsamnx63dwfm2nrkd8wmky3ai7zwy0knmifgkn4b7yyj";
+ buildInputs = lib.optionals stdenv.isDarwin [ Security ];
+
meta = with lib; {
homepage = "https://github.com/evansmurithi/cloak";
description = "Command-line OTP authenticator application";
diff --git a/pkgs/applications/misc/osmscout-server/default.nix b/pkgs/applications/misc/osmscout-server/default.nix
index a3815dae00fc..d6041554705e 100644
--- a/pkgs/applications/misc/osmscout-server/default.nix
+++ b/pkgs/applications/misc/osmscout-server/default.nix
@@ -1,6 +1,6 @@
{ lib, mkDerivation, fetchFromGitHub, fetchpatch, pkg-config
, qmake, qttools, kirigami2, qtquickcontrols2, qtlocation
-, libosmscout, mapnik, valhalla, libpostal, osrm-backend, protobuf
+, libosmscout, valhalla, libpostal, osrm-backend, protobuf
, libmicrohttpd_0_9_70, sqlite, marisa, kyotocabinet, boost
}:
@@ -41,7 +41,7 @@ mkDerivation rec {
nativeBuildInputs = [ qmake pkg-config qttools ];
buildInputs = [
kirigami2 qtquickcontrols2 qtlocation
- mapnik valhalla libosmscout osrm-backend libmicrohttpd_0_9_70
+ valhalla libosmscout osrm-backend libmicrohttpd_0_9_70
libpostal sqlite marisa kyotocabinet boost protobuf date
];
@@ -52,8 +52,10 @@ mkDerivation rec {
mv data/valhalla.json-3.1 data/valhalla.json
'';
- # Choose to build the kirigami UI variant
- qmakeFlags = [ "SCOUT_FLAVOR=kirigami" ];
+ qmakeFlags = [
+ "SCOUT_FLAVOR=kirigami" # Choose to build the kirigami UI variant
+ "CONFIG+=disable_mapnik" # Disable the optional mapnik backend
+ ];
meta = with lib; {
description = "Maps server providing tiles, geocoder, and router";
diff --git a/pkgs/applications/networking/mailreaders/electron-mail/default.nix b/pkgs/applications/networking/mailreaders/electron-mail/default.nix
index 1f7d663cf8e5..b6dca7e70b6b 100644
--- a/pkgs/applications/networking/mailreaders/electron-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/electron-mail/default.nix
@@ -1,13 +1,13 @@
-{ appimageTools, lib, fetchurl }:
+{ appimageTools, lib, fetchurl, libsecret }:
let
pname = "electron-mail";
- version = "4.12.2";
+ version = "4.12.7";
name = "ElectronMail-${version}";
src = fetchurl {
url = "https://github.com/vladimiry/ElectronMail/releases/download/v${version}/electron-mail-${version}-linux-x86_64.AppImage";
- sha256 = "D+0qoIb0EwUVbgKOiKQpqoLDgm8l/UKDWm/BjhW4MYU=";
+ sha256 = "42d0b49a2feba628f4845940ffd9607739bd5fcdbe6ba37e15f993c511d21e46";
};
appimageContents = appimageTools.extract { inherit name src; };
@@ -16,13 +16,16 @@ in appimageTools.wrapType2 {
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
-
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
substituteInPlace $out/share/applications/${pname}.desktop \
--replace 'Exec=AppRun' 'Exec=${pname}'
cp -r ${appimageContents}/usr/share/icons $out/share
'';
+ extraPkgs = pkgs: with pkgs; [
+ libsecret
+ ];
+
meta = with lib; {
description = "ElectronMail is an Electron-based unofficial desktop client for ProtonMail";
homepage = "https://github.com/vladimiry/ElectronMail";
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
index 4bae5387255d..30770390e6cd 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
@@ -10,12 +10,12 @@ in
rec {
thunderbird = common rec {
pname = "thunderbird";
- version = "91.3.0";
+ version = "91.3.1";
application = "comm/mail";
binaryName = pname;
src = fetchurl {
url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
- sha512 = "938de817ed2cad90f665559da1dfc266f34b6ca2e688ee364112edfdb1167183a8225132ed50b672ceb14402be933be82fd1ef8b46f103cdf1534a403fb472d9";
+ sha512 = "4938f676ddeeba37da1f2086d76a2ef2c870738169f7e10b35b83e4ed772df634825ee25c28232df1ac1e3a18a9466e97dc7ee318abbf43f1f4ce6479a13975b";
};
patches = [
];
diff --git a/pkgs/applications/networking/mhost/default.nix b/pkgs/applications/networking/mhost/default.nix
index f6aad5eaa081..beed066e65e9 100644
--- a/pkgs/applications/networking/mhost/default.nix
+++ b/pkgs/applications/networking/mhost/default.nix
@@ -1,4 +1,4 @@
-{ fetchFromGitHub, rustPlatform, lib }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, Security }:
rustPlatform.buildRustPackage rec {
pname = "mhost";
@@ -13,6 +13,8 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "0gqrya0bpdd67k2sxib7f4npnrx84d9r4hjq2sg2xz4j8pmgs018";
+ buildInputs = lib.optional stdenv.isDarwin Security;
+
CARGO_CRATE_NAME = "mhost";
doCheck = false;
diff --git a/pkgs/applications/networking/p2p/ncdc/default.nix b/pkgs/applications/networking/p2p/ncdc/default.nix
index dd7f4a7bb60f..053f1d67882b 100644
--- a/pkgs/applications/networking/p2p/ncdc/default.nix
+++ b/pkgs/applications/networking/p2p/ncdc/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, ncurses, zlib, bzip2, sqlite, pkg-config, glib, gnutls }:
+{ lib, stdenv, fetchurl, fetchpatch, ncurses, zlib, bzip2, sqlite, pkg-config, glib, gnutls }:
stdenv.mkDerivation rec {
pname = "ncdc";
@@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
sha256 = "1bdgqd07f026qk6vpbxqsin536znd33931m3b4z44prlm9wd6pyi";
};
+ patches = [
+ # Upstream fix for ncurses-6.3 support:
+ (fetchpatch {
+ name = "ncurses-6.3.patch";
+ url = "https://g.blicky.net/ncdc.git/patch/?id=4126dd51e90deb9e22dfd139cc4518a7812fcad6";
+ sha256 = "13hqkmhmbazj6cllb5b2ccgf51vsn5lri7jqkqc5xwivgcisfrij";
+ })
+ ];
+
nativeBuildInputs = [ pkg-config ];
buildInputs = [ ncurses zlib bzip2 sqlite glib gnutls ];
diff --git a/pkgs/applications/networking/synology-drive/default.nix b/pkgs/applications/networking/synology-drive/default.nix
new file mode 100644
index 000000000000..20b0f1168cb3
--- /dev/null
+++ b/pkgs/applications/networking/synology-drive/default.nix
@@ -0,0 +1,45 @@
+{ lib, mkDerivation, fetchurl, autoPatchelfHook, dpkg, glibc, gnome }:
+
+mkDerivation rec {
+ pname = "synology-drive";
+ subVersion = "12674";
+ version = "3.0.1-${subVersion}";
+
+ src = fetchurl {
+ url = "https://global.download.synology.com/download/Utility/SynologyDriveClient/${version}/Ubuntu/Installer/x86_64/synology-drive-client-${subVersion}.x86_64.deb";
+ sha256 = "1yyv6zgszsym22kf4jvlan7n9lw09fw24fyrh7c8pzbb2029gp8a";
+ };
+
+ nativeBuildInputs = [ autoPatchelfHook dpkg ];
+
+ buildInputs = [ glibc gnome.nautilus ];
+
+ unpackPhase = ''
+ mkdir -p $out
+ dpkg -x $src $out
+ '';
+
+ installPhase = ''
+ # synology-drive executable
+ cp -av $out/usr/* $out
+ rm -rf $out/usr
+
+ runHook postInstall
+ '';
+
+ postInstall = ''
+ substituteInPlace $out/bin/synology-drive --replace /opt $out/opt
+ '';
+
+ meta = with lib; {
+ homepage = "https://www.synology.com/";
+ description = "Synchronize files between client and Synology NAS.";
+ longDescription = ''
+ Drive for PC, the desktop utility of the DSM add-on package.
+ Drive, allows you to sync and share files owned by you or shared by others between a centralized Synology NAS and multiple client computers.
+ '';
+ license = licenses.unfree;
+ maintainers = with maintainers; [ MoritzBoehme ];
+ platforms = [ "x86_64-linux" ];
+ };
+}
diff --git a/pkgs/applications/video/ccextractor/default.nix b/pkgs/applications/video/ccextractor/default.nix
index 5bb13e116174..905034091a29 100644
--- a/pkgs/applications/video/ccextractor/default.nix
+++ b/pkgs/applications/video/ccextractor/default.nix
@@ -23,7 +23,12 @@ stdenv.mkDerivation rec {
sha256 = "sha256-usVAKBkdd8uz9cD5eLd0hnwGonOJLscRdc+iWDlNXVc=";
};
- sourceRoot = "source/src";
+ postPatch = lib.optionalString stdenv.isDarwin ''
+ substituteInPlace src/CMakeLists.txt \
+ --replace 'add_definitions(-DGPAC_CONFIG_LINUX)' 'add_definitions(-DGPAC_CONFIG_DARWIN)'
+ '';
+
+ cmakeDir = "../src";
nativeBuildInputs = [ pkg-config cmake makeWrapper ];
diff --git a/pkgs/applications/video/streamlink/default.nix b/pkgs/applications/video/streamlink/default.nix
index 4abc2b6546aa..c82cfb47cc32 100644
--- a/pkgs/applications/video/streamlink/default.nix
+++ b/pkgs/applications/video/streamlink/default.nix
@@ -1,17 +1,16 @@
{ lib
, python3Packages
-, rtmpdump
, ffmpeg
, fetchpatch
}:
python3Packages.buildPythonApplication rec {
pname = "streamlink";
- version = "2.4.0";
+ version = "3.0.1";
src = python3Packages.fetchPypi {
inherit pname version;
- sha256 = "e95588e222d1a7bd51e3171cd4bce84fd6f646418537aff37993d40f597810af";
+ sha256 = "sha256-GDbUlu5tRL5mdT7KrIdmxCbeAtYL1xvZXyZFwiuvKXo=";
};
checkInputs = with python3Packages; [
@@ -22,26 +21,20 @@ python3Packages.buildPythonApplication rec {
];
propagatedBuildInputs = (with python3Packages; [
- pycryptodome
- requests
- iso-639
- iso3166
- websocket-client
isodate
lxml
+ pycountry
+ pycryptodome
+ pysocks
+ requests
+ websocket-client
]) ++ [
- rtmpdump
ffmpeg
];
- patches = [
- # Patch failing tests to expect correct Accept-Encoding as generated by Requests
- (fetchpatch {
- url = "https://github.com/streamlink/streamlink/commit/ae747a113199c119bced4613d33edcc67a222bb9.patch";
- includes = [ "tests/test_stream_json.py" ];
- sha256 = "sha256-KEgyWdh5DNgNktmLSvKQowUQO9p9Q7zP4NbCQJPNgKw=";
- })
- ];
+ postPatch = ''
+ substituteInPlace setup.cfg --replace 'lxml >=4.6.4,<5.0' 'lxml'
+ '';
meta = with lib; {
homepage = "https://streamlink.github.io/";
diff --git a/pkgs/applications/window-managers/ion-3/default.nix b/pkgs/applications/window-managers/ion-3/default.nix
index 4794de1d5f84..45d56194bede 100644
--- a/pkgs/applications/window-managers/ion-3/default.nix
+++ b/pkgs/applications/window-managers/ion-3/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
version = "3-20090110";
src = fetchurl {
- url = "http://tuomov.iki.fi/software/dl/ion-${version}.tar.gz";
+ url = "https://tuomov.iki.fi/software/ion/dl/ion-${version}.tar.gz";
sha256 = "1nkks5a95986nyfkxvg2rik6zmwx0lh7szd5fji7yizccwzc9xns";
};
@@ -13,6 +13,11 @@ stdenv.mkDerivation rec {
buildFlags = [ "LUA_DIR=${lua}" "X11_PREFIX=/no-such-path" "PREFIX=\${out}" ];
+ # Build system is missing depends for autogenerated export headers:
+ # luac -o mod_tiling.lc mod_tiling.lua
+ # main.c:21:10: fatal error: exports.h: No such file or directory
+ enableParallelBuilding = false;
+
installFlags = [ "PREFIX=\${out}" ];
meta = with lib; {
diff --git a/pkgs/development/interpreters/erlang/R24.nix b/pkgs/development/interpreters/erlang/R24.nix
index 589a836967c0..199189740c53 100644
--- a/pkgs/development/interpreters/erlang/R24.nix
+++ b/pkgs/development/interpreters/erlang/R24.nix
@@ -3,6 +3,6 @@
# How to obtain `sha256`:
# nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
mkDerivation {
- version = "24.1.4";
- sha256 = "sha256-QE2VRayIswVrAOv9/bq+ebv3xxIL3fFMnfm5u1Wh8j4=";
+ version = "24.1.5";
+ sha256 = "sha256-MSPoJpbL9WeERqCSh9fiw9jhJGssqolxudyURpiypb0=";
}
diff --git a/pkgs/development/libraries/agg/default.nix b/pkgs/development/libraries/agg/default.nix
index 39e27c909b50..e5ce7537f250 100644
--- a/pkgs/development/libraries/agg/default.nix
+++ b/pkgs/development/libraries/agg/default.nix
@@ -8,8 +8,18 @@ stdenv.mkDerivation rec {
url = "https://www.antigrain.com/${pname}-${version}.tar.gz";
sha256 = "07wii4i824vy9qsvjsgqxppgqmfdxq0xa87i5yk53fijriadq7mb";
};
- nativeBuildInputs = [ pkg-config ];
- buildInputs = [ autoconf automake libtool freetype SDL libX11 ];
+ nativeBuildInputs = [
+ pkg-config
+ autoconf
+ automake
+ libtool
+ ];
+ buildInputs = [
+ freetype
+ SDL
+ ] ++ lib.optionals stdenv.isLinux [
+ libX11
+ ];
postPatch = ''
substituteInPlace include/agg_renderer_outline_aa.h \
@@ -22,7 +32,11 @@ stdenv.mkDerivation rec {
sh autogen.sh
'';
- configureFlags = [ "--x-includes=${libX11.dev}/include" "--x-libraries=${libX11.out}/lib" "--enable-examples=no" ];
+ configureFlags = lib.optionals stdenv.isLinux [
+ "--x-includes=${lib.getDev libX11}/include"
+ "--x-libraries=${lib.getLib libX11}/lib"
+ "--enable-examples=no"
+ ];
# libtool --tag=CXX --mode=link g++ -g -O2 libexamples.la ../src/platform/X11/libaggplatformX11.la ../src/libagg.la -o alpha_mask2 alpha_mask2.o
# libtool: error: cannot find the library 'libexamples.la'
@@ -43,6 +57,6 @@ stdenv.mkDerivation rec {
license = lib.licenses.gpl2Plus;
homepage = "http://www.antigrain.com/";
- platforms = lib.platforms.linux;
+ platforms = lib.platforms.unix;
};
}
diff --git a/pkgs/development/libraries/faudio/default.nix b/pkgs/development/libraries/faudio/default.nix
index 4082ccfb1d0e..baf2b1024379 100644
--- a/pkgs/development/libraries/faudio/default.nix
+++ b/pkgs/development/libraries/faudio/default.nix
@@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "faudio";
- version = "21.09";
+ version = "21.10";
src = fetchFromGitHub {
owner = "FNA-XNA";
repo = "FAudio";
rev = version;
- sha256 = "sha256-/hc++LEqH7vg2IK/x6sVP5864QF+3xd++HK/tIp0IRA=";
+ sha256 = "sha256-gh/QYH25j9A+XalW6ajRjs+yOYEfkZmw11CHjR6LK1E=";
};
nativeBuildInputs = [cmake];
diff --git a/pkgs/development/libraries/iqueue/default.nix b/pkgs/development/libraries/iqueue/default.nix
new file mode 100644
index 000000000000..04fd7202d1d1
--- /dev/null
+++ b/pkgs/development/libraries/iqueue/default.nix
@@ -0,0 +1,22 @@
+{ lib, stdenv, fetchurl, pkg-config, libbsd, microsoft_gsl }:
+
+stdenv.mkDerivation rec {
+ pname = "iqueue";
+ version = "0.1.0";
+ src = fetchurl {
+ url = "https://github.com/twosigma/iqueue/releases/download/v${version}/iqueue-${version}.tar.gz";
+ sha256 = "0049fnr02k15gr21adav33swrwxrpbananilnrp63vp5zs5v9m4x";
+ };
+
+ doCheck = true;
+ nativeBuildInputs = [ pkg-config ];
+ buildInputs = [ libbsd microsoft_gsl ];
+
+ meta = with lib; {
+ homepage = "https://github.com/twosigma/iqueue";
+ description = "Indexed queue";
+ license = licenses.asl20;
+ platforms = [ "x86_64-linux" ];
+ maintainers = [ maintainers.catern ];
+ };
+}
diff --git a/pkgs/development/libraries/proj/default.nix b/pkgs/development/libraries/proj/default.nix
index 134532308c88..7ab64cf59c57 100644
--- a/pkgs/development/libraries/proj/default.nix
+++ b/pkgs/development/libraries/proj/default.nix
@@ -42,6 +42,11 @@ stdenv.mkDerivation rec {
"-DRUN_NETWORK_DEPENDENT_TESTS=OFF"
];
+ preCheck = ''
+ export HOME=$TMPDIR
+ export TMP=$TMPDIR
+ '';
+
doCheck = true;
meta = with lib; {
diff --git a/pkgs/development/python-modules/chiapos/default.nix b/pkgs/development/python-modules/chiapos/default.nix
index 587c2fbf3c70..42bf21dd5216 100644
--- a/pkgs/development/python-modules/chiapos/default.nix
+++ b/pkgs/development/python-modules/chiapos/default.nix
@@ -6,6 +6,7 @@
, cxxopts
, ghc_filesystem
, pybind11
+, pytestCheckHook
, pythonOlder
, psutil
, setuptools-scm
@@ -13,12 +14,12 @@
buildPythonPackage rec {
pname = "chiapos";
- version = "1.0.4";
+ version = "1.0.6";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-flI1vwtD0H28UDMcEEELECewkXZ6vf/XEYMqRKy5R6w=";
+ sha256 = "sha256-Zh5AULPgbG0oYPcBZMp/vm94MPyfdtYn4P5V+1LeMqA=";
};
patches = [
@@ -34,7 +35,11 @@ buildPythonPackage rec {
buildInputs = [ pybind11 ];
- checkInputs = [ psutil ];
+ checkInputs = [
+ psutil
+ pytestCheckHook
+ ];
+
# CMake needs to be run by setuptools rather than by its hook
dontConfigure = true;
diff --git a/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch b/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
index 251021169691..85b7560f5d0d 100644
--- a/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
+++ b/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch
@@ -1,13 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 9b4a2f5..86f849c 100644
+index b757b70..fcce055 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -18,22 +18,19 @@ include(FetchContent)
- else()
+@@ -21,23 +21,20 @@ include(${CMAKE_INSTALL_PREFIX}/share/cmake/pybind11/pybind11Config.cmake)
+ else()
FetchContent_Declare(
pybind11-src
- GIT_REPOSITORY https://github.com/pybind/pybind11.git
-- GIT_TAG v2.6.2
+- GIT_TAG v2.7.1
+ SOURCE_DIR @pybind11_src@
)
FetchContent_MakeAvailable(pybind11-src)
@@ -29,4 +29,3 @@ index 9b4a2f5..86f849c 100644
)
FetchContent_MakeAvailable(gulrak)
-
diff --git a/pkgs/development/python-modules/clvm-rs/bump-cargo-lock.patch b/pkgs/development/python-modules/clvm-rs/bump-cargo-lock.patch
new file mode 100644
index 000000000000..9939e6fb43a0
--- /dev/null
+++ b/pkgs/development/python-modules/clvm-rs/bump-cargo-lock.patch
@@ -0,0 +1,11 @@
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -80,7 +80,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+ [[package]]
+ name = "clvm_rs"
+-version = "0.1.14"
++version = "0.1.15"
+ dependencies = [
+ "bls12_381",
+ "hex",
diff --git a/pkgs/development/python-modules/clvm-rs/default.nix b/pkgs/development/python-modules/clvm-rs/default.nix
index 7cde70fd97f2..ec078970bc1a 100644
--- a/pkgs/development/python-modules/clvm-rs/default.nix
+++ b/pkgs/development/python-modules/clvm-rs/default.nix
@@ -9,20 +9,25 @@
buildPythonPackage rec {
pname = "clvm_rs";
- version = "0.1.14";
+ version = "0.1.15";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "Chia-Network";
repo = "clvm_rs";
rev = version;
- sha256 = "sha256-sQ+jzBiIZYVQj2rb170wLFEx2NzOj7kEL0k0gx/JOAc=";
+ sha256 = "sha256-4QFreQlRjKqGhPvuXU/pZpxMfF8LkIf6X7C3K2q77MI=";
};
+ patches = [
+ # upstream forgot to refresh the lock file
+ ./bump-cargo-lock.patch
+ ];
+
cargoDeps = rustPlatform.fetchCargoTarball {
- inherit src;
+ inherit src patches;
name = "${pname}-${version}";
- sha256 = "sha256-ZSu3bu0MfxZEFqBwdHH/RM4WTF/yx9ju1IqSVfu+Upo=";
+ sha256 = "sha256-jPNU+P6JgxTPL1GYUBE4VPU3p6cgL8u/+AIELr7r5Mk=";
};
format = "pyproject";
diff --git a/pkgs/development/python-modules/dnspythonchia/default.nix b/pkgs/development/python-modules/dnspythonchia/default.nix
new file mode 100644
index 000000000000..52243eac7d81
--- /dev/null
+++ b/pkgs/development/python-modules/dnspythonchia/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+ pname = "dnspythonchia";
+ version = "2.2.0";
+ disabled = pythonOlder "3.6";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "sha256-iYaPYqOZ33R2DUXgIHxsewLi79iB5ja0WHOGkamffZk=";
+ };
+
+ nativeBuildInputs = [ setuptools-scm ];
+
+ # needs networking for some tests
+ doCheck = false;
+ pythonImportsCheck = [ "dns" ];
+
+ meta = with lib; {
+ description = "A DNS toolkit for Python (Chia Network fork)";
+ homepage = "https://www.chia.net/";
+ license = with licenses; [ isc ];
+ maintainers = teams.chia.members;
+ };
+}
diff --git a/pkgs/development/python-modules/flask-wtf/default.nix b/pkgs/development/python-modules/flask-wtf/default.nix
index 36437ffafa91..2c7dd221e921 100644
--- a/pkgs/development/python-modules/flask-wtf/default.nix
+++ b/pkgs/development/python-modules/flask-wtf/default.nix
@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "Flask-WTF";
- version = "0.15.1";
+ version = "1.0.0";
src = fetchPypi {
inherit pname version;
- sha256 = "ff177185f891302dc253437fe63081e7a46a4e99aca61dfe086fb23e54fff2dc";
+ sha256 = "872fbb17b5888bfc734edbdcf45bc08fb365ca39f69d25dc752465a455517b28";
};
propagatedBuildInputs = [ flask wtforms nose ];
diff --git a/pkgs/development/python-modules/git-filter-repo/default.nix b/pkgs/development/python-modules/git-filter-repo/default.nix
index ac0ee8038582..e6a434c38bd3 100644
--- a/pkgs/development/python-modules/git-filter-repo/default.nix
+++ b/pkgs/development/python-modules/git-filter-repo/default.nix
@@ -7,14 +7,14 @@
buildPythonPackage rec {
pname = "git-filter-repo";
- version = "2.33.0";
+ version = "2.34.0";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchPypi {
inherit pname version;
- sha256 = "1nxfd5yv8ri7w5pzxclxs0yd317nsdcwvw87ancmdkh69xvx1f2f";
+ sha256 = "sha256-taCfODhl3goWSwa6F0Rh5V2RZ8xvuwbPKh5i2/DNumM=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/identify/default.nix b/pkgs/development/python-modules/identify/default.nix
index 926f84798ad0..0e7ec10981f4 100644
--- a/pkgs/development/python-modules/identify/default.nix
+++ b/pkgs/development/python-modules/identify/default.nix
@@ -3,18 +3,21 @@
, fetchFromGitHub
, pytestCheckHook
, editdistance-s
+, pythonOlder
}:
buildPythonPackage rec {
pname = "identify";
- version = "2.3.5";
+ version = "2.3.6";
+ format = "setuptools";
+ disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "pre-commit";
repo = pname;
rev = "v${version}";
- sha256 = "sha256-XEwZ6OUEocE4dSDLCLagKqmJruvb9beC0u93SScrOho=";
+ sha256 = "sha256-1+ILyqb0Ve+YmP9K+tin4iYIWUoRpi/+fbuyUFZOzBE=";
};
checkInputs = [
@@ -22,7 +25,9 @@ buildPythonPackage rec {
pytestCheckHook
];
- pythonImportsCheck = [ "identify" ];
+ pythonImportsCheck = [
+ "identify"
+ ];
meta = with lib; {
description = "File identification library for Python";
diff --git a/pkgs/development/python-modules/ihatemoney/default.nix b/pkgs/development/python-modules/ihatemoney/default.nix
index 5d768170d806..2c535ea79b57 100644
--- a/pkgs/development/python-modules/ihatemoney/default.nix
+++ b/pkgs/development/python-modules/ihatemoney/default.nix
@@ -132,6 +132,13 @@ buildPythonPackage rec {
debts
];
+ # upstream performed the update without needing to patch the code
+ # the original patch does not apply, sadly
+ # https://github.com/spiral-project/ihatemoney/pull/912
+ postPatch = ''
+ substituteInPlace setup.cfg --replace "Flask-WTF>=0.14.3,<1" "Flask-WTF>=0.14.3,<2"
+ '';
+
checkInputs = [
flask_testing
pytestCheckHook
diff --git a/pkgs/development/python-modules/ledgerwallet/default.nix b/pkgs/development/python-modules/ledgerwallet/default.nix
index 7650e375b41f..421a24e9ee12 100644
--- a/pkgs/development/python-modules/ledgerwallet/default.nix
+++ b/pkgs/development/python-modules/ledgerwallet/default.nix
@@ -25,6 +25,13 @@ buildPythonPackage rec {
sha256 = "0fb93h2wxm9as9rsywlgz2ng4wrlbjphn6mgbhj6nls2i86rrdxk";
};
+ patches = [
+ # Fix removed function in construct library
+ # https://github.com/LedgerHQ/ledgerctl/issues/17
+ # https://github.com/construct/construct/commit/8915512f53552b1493afdbce5bbf8bb6f2aa4411
+ ./remove-iterateints.patch
+ ];
+
buildInputs = lib.optionals stdenv.isDarwin [ AppKit ];
propagatedBuildInputs = [
cryptography click construct ecdsa hidapi intelhex pillow protobuf requests tabulate
diff --git a/pkgs/development/python-modules/ledgerwallet/remove-iterateints.patch b/pkgs/development/python-modules/ledgerwallet/remove-iterateints.patch
new file mode 100644
index 000000000000..c97785f1d04b
--- /dev/null
+++ b/pkgs/development/python-modules/ledgerwallet/remove-iterateints.patch
@@ -0,0 +1,19 @@
+--- a/ledgerwallet/params.py 2021-11-17 20:31:10.488954050 -0300
++++ b/ledgerwallet/params.py 2021-11-17 20:31:30.619477930 -0300
+@@ -19,7 +19,6 @@
+ )
+ from construct.core import (
+ byte2int,
+- iterateints,
+ singleton,
+ stream_read,
+ stream_write,
+@@ -40,7 +39,7 @@
+ num_bytes = byte & 0x80
+ encoded_len = stream_read(stream, num_bytes)
+ num = 0
+- for len_byte in iterateints(encoded_len):
++ for len_byte in encoded_len:
+ num = num << 8 + len_byte
+ return num
+
diff --git a/pkgs/development/python-modules/librouteros/default.nix b/pkgs/development/python-modules/librouteros/default.nix
index 32c9889681ca..6e9d3ebd5296 100644
--- a/pkgs/development/python-modules/librouteros/default.nix
+++ b/pkgs/development/python-modules/librouteros/default.nix
@@ -8,14 +8,16 @@
buildPythonPackage rec {
pname = "librouteros";
- version = "3.1.0";
+ version = "3.2.0";
+ format = "setuptools";
+
disabled = !isPy3k;
src = fetchFromGitHub {
owner = "luqasz";
repo = pname;
rev = version;
- sha256 = "1skjwnqa3vcpq9gzgpw93wdmisq15fp0q07kzyq3fgx4yg7b6sql";
+ sha256 = "sha256-Zo9HCjYe9cCkqXhikAjDQKQXGkrMni3f+9KoqhZskNk=";
};
checkInputs = [
@@ -33,7 +35,9 @@ buildPythonPackage rec {
"test_generator_ditch"
];
- pythonImportsCheck = [ "librouteros" ];
+ pythonImportsCheck = [
+ "librouteros"
+ ];
meta = with lib; {
description = "Python implementation of the MikroTik RouterOS API";
diff --git a/pkgs/development/python-modules/motioneye-client/default.nix b/pkgs/development/python-modules/motioneye-client/default.nix
index 35632e780e7e..c5a3a2cd4954 100644
--- a/pkgs/development/python-modules/motioneye-client/default.nix
+++ b/pkgs/development/python-modules/motioneye-client/default.nix
@@ -11,15 +11,16 @@
buildPythonPackage rec {
pname = "motioneye-client";
- version = "0.3.11";
+ version = "0.3.12";
format = "pyproject";
+
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "dermotduffy";
repo = pname;
rev = "v${version}";
- sha256 = "0f34ig8njyn7dzy8272m0b1nlnnhir58ar3vx4zps10i0dc32hb2";
+ sha256 = "sha256-vEB9ztz0RTGoolFUVQcMV7DUthCEAx1kpwkAS2186OU=";
};
nativeBuildInputs = [
@@ -41,7 +42,9 @@ buildPythonPackage rec {
--replace " --cov-report=html:htmlcov --cov-report=xml:coverage.xml --cov-report=term-missing --cov=motioneye_client --cov-fail-under=100" ""
'';
- pythonImportsCheck = [ "motioneye_client" ];
+ pythonImportsCheck = [
+ "motioneye_client"
+ ];
meta = with lib; {
description = "Python library for motionEye";
diff --git a/pkgs/development/python-modules/oocsi/default.nix b/pkgs/development/python-modules/oocsi/default.nix
new file mode 100644
index 000000000000..2f0ae510d018
--- /dev/null
+++ b/pkgs/development/python-modules/oocsi/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+ pname = "oocsi";
+ version = "0.4.2";
+ format = "setuptools";
+
+ disabled = pythonOlder "3.8";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "020xfjvcgicj81zl3z9wnb2f9bha75bjw512b0cc38w66bniinjq";
+ };
+
+ # Tests are not shipped
+ doCheck = false;
+
+ pythonImportsCheck = [
+ "oocsi"
+ ];
+
+ meta = with lib; {
+ description = "OOCSI library for Python";
+ homepage = "https://github.com/iddi/oocsi-python";
+ license = with licenses; [ mit ];
+ maintainers = with maintainers; [ fab ];
+ };
+}
diff --git a/pkgs/development/python-modules/pydyf/default.nix b/pkgs/development/python-modules/pydyf/default.nix
new file mode 100644
index 000000000000..d83034d25330
--- /dev/null
+++ b/pkgs/development/python-modules/pydyf/default.nix
@@ -0,0 +1,48 @@
+{ lib,
+ buildPythonPackage,
+ fetchPypi,
+ isPy3k,
+ pytestCheckHook,
+ coverage,
+ ghostscript,
+ pillow,
+ pytest,
+ pytest-cov,
+ pytest-flake8,
+ pytest-isort
+}:
+
+buildPythonPackage rec {
+ pname = "pydyf";
+ version = "0.1.2";
+ disabled = !isPy3k;
+
+ pytestFlagsArray = [
+ # setup.py is auto-generated and doesn't pass the flake8 check
+ "--ignore=setup.py"
+ ];
+
+ checkInputs = [
+ pytestCheckHook
+ coverage
+ ghostscript
+ pillow
+ pytest
+ pytest-cov
+ pytest-flake8
+ pytest-isort
+ ];
+
+ src = fetchPypi {
+ inherit version;
+ pname = "pydyf";
+ sha256 = "sha256-Hi9d5IF09QXeAlp9HnzwG73ZQiyoq5RReCvwDuF4YCw=";
+ };
+
+ meta = with lib; {
+ homepage = "https://doc.courtbouillon.org/pydyf/stable/";
+ description = "Low-level PDF generator written in Python and based on PDF specification 1.7";
+ license = licenses.bsd3;
+ maintainers = with maintainers; [ rprecenth ];
+ };
+}
diff --git a/pkgs/development/python-modules/pylitterbot/default.nix b/pkgs/development/python-modules/pylitterbot/default.nix
index 50afee3058cc..be6d71aed5d3 100644
--- a/pkgs/development/python-modules/pylitterbot/default.nix
+++ b/pkgs/development/python-modules/pylitterbot/default.nix
@@ -11,14 +11,16 @@
buildPythonPackage rec {
pname = "pylitterbot";
- version = "2021.10.1";
+ version = "2021.11.0";
+ format = "setuptools";
+
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "natekspencer";
repo = pname;
rev = version;
- sha256 = "sha256-xE+H23AZR1OXfuLMvSuI7IeYKX7k2iEATHq5VheMLn4=";
+ sha256 = "sha256-HdIxi6RfdXBYEYFEcv/f9wAqKZg/MsEZd6mDYwE45to=";
};
propagatedBuildInputs = [
@@ -32,7 +34,9 @@ buildPythonPackage rec {
pytestCheckHook
];
- pythonImportsCheck = [ "pylitterbot" ];
+ pythonImportsCheck = [
+ "pylitterbot"
+ ];
meta = with lib; {
description = "Python package for controlling a Litter-Robot";
diff --git a/pkgs/development/python-modules/pywizlight/default.nix b/pkgs/development/python-modules/pywizlight/default.nix
index 755e1555a431..9098bf80dc5e 100644
--- a/pkgs/development/python-modules/pywizlight/default.nix
+++ b/pkgs/development/python-modules/pywizlight/default.nix
@@ -5,16 +5,20 @@
, fetchFromGitHub
, pytest-asyncio
, pytestCheckHook
+, pythonOlder
}:
buildPythonPackage rec {
pname = "pywizlight";
- version = "0.4.10";
+ version = "0.4.13";
+ format = "setuptools";
+
+ disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "sbidy";
repo = pname;
- rev = "v${version}";
+ rev = version;
sha256 = "sha256-XO9KmsC3DXgVcGWr5ss3m2wB8rVboWyQUWBidynhkP8=";
};
@@ -28,14 +32,16 @@ buildPythonPackage rec {
pytestCheckHook
];
- # Tests requires network features (e. g., discovery testing)
disabledTests = [
+ # Tests requires network features (e. g., discovery testing)
"test_Bulb_Discovery"
"test_timeout"
"test_timeout_PilotBuilder"
];
- pythonImportsCheck = [ "pywizlight" ];
+ pythonImportsCheck = [
+ "pywizlight"
+ ];
meta = with lib; {
description = "Python connector for WiZ light bulbs";
diff --git a/pkgs/development/python-modules/velbus-aio/default.nix b/pkgs/development/python-modules/velbus-aio/default.nix
index 506f775abd31..db9721641cfd 100644
--- a/pkgs/development/python-modules/velbus-aio/default.nix
+++ b/pkgs/development/python-modules/velbus-aio/default.nix
@@ -3,13 +3,15 @@
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
+, pyserial
, pyserial-asyncio
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "velbus-aio";
- version = "2021.11.6";
+ version = "2021.11.7";
+ format = "setuptools";
disabled = pythonOlder "3.7";
@@ -17,11 +19,12 @@ buildPythonPackage rec {
owner = "Cereal2nd";
repo = pname;
rev = version;
- sha256 = "sha256-Vm/CgrSSCU76CzAxCtpMsE8/GtPE9SlfqDyzYp4Gc8E=";
+ sha256 = "sha256-itaYSfZm+/vF/tKRO2BW4qXrDXP0YfBrKiq9bMGFj0M=";
};
propagatedBuildInputs = [
backoff
+ pyserial
pyserial-asyncio
];
diff --git a/pkgs/development/python-modules/weasyprint/default.nix b/pkgs/development/python-modules/weasyprint/default.nix
index ecc13b1d6377..a3c8181cf7de 100644
--- a/pkgs/development/python-modules/weasyprint/default.nix
+++ b/pkgs/development/python-modules/weasyprint/default.nix
@@ -1,17 +1,24 @@
{ buildPythonPackage,
fetchPypi,
fetchpatch,
+ pytestCheckHook,
+ brotli,
cairosvg,
+ fonttools,
+ pydyf,
pyphen,
cffi,
cssselect,
lxml,
html5lib,
tinycss,
+ zopfli,
glib,
+ harfbuzz,
pango,
fontconfig,
lib, stdenv,
+ ghostscript,
pytest,
pytest-runner,
pytest-isort,
@@ -23,35 +30,48 @@
buildPythonPackage rec {
pname = "weasyprint";
- version = "52";
+ version = "53.4";
disabled = !isPy3k;
- # excluded test needs the Ahem font
- checkPhase = ''
- runHook preCheck
- pytest -k 'not test_font_stretch'
- runHook postCheck
- '';
+ pytestFlagsArray = [
+ # setup.py is auto-generated and doesn't pass the flake8 check
+ "--ignore=setup.py"
+ # ffi.py is patched by us and doesn't pass the flake8 check
+ "--ignore=weasyprint/text/ffi.py"
+ ];
- # ignore failing flake8-test
- prePatch = ''
- substituteInPlace setup.cfg \
- --replace '[tool:pytest]' '[tool:pytest]\nflake8-ignore = E501'
- '';
+ disabledTests = [
+ # test_font_stretch needs the Ahem font (fails on macOS)
+ "test_font_stretch"
+ ];
- checkInputs = [ pytest pytest-runner pytest-isort pytest-flake8 pytest-cov ];
+ checkInputs = [
+ pytestCheckHook
+ ghostscript
+ pytest
+ pytest-runner
+ pytest-isort
+ pytest-flake8
+ pytest-cov
+ ];
FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf";
- propagatedBuildInputs = [ cairosvg pyphen cffi cssselect lxml html5lib tinycss ];
+ propagatedBuildInputs = [
+ brotli
+ cairosvg
+ cffi
+ cssselect
+ fonttools
+ html5lib
+ lxml
+ pydyf
+ pyphen
+ tinycss
+ zopfli
+ ];
- # 47043a1fd7e50a892b9836466f521df85d597c4.patch can be removed after next release of weasyprint, see:
- # https://github.com/Kozea/WeasyPrint/issues/1333#issuecomment-818062970
patches = [
- (fetchpatch {
- url = "https://github.com/Kozea/WeasyPrint/commit/47043a1fd7e50a892b9836466f521df85d597c44.patch";
- sha256 = "0l9z0hrav3bcdajlg3vbzljq0lkw7hlj8ppzrq3v21hbj1il1nsb";
- })
(substituteAll {
src = ./library-paths.patch;
fontconfig = "${fontconfig.lib}/lib/libfontconfig${stdenv.hostPlatform.extensions.sharedLibrary}";
@@ -59,13 +79,14 @@ buildPythonPackage rec {
gobject = "${glib.out}/lib/libgobject-2.0${stdenv.hostPlatform.extensions.sharedLibrary}";
pango = "${pango.out}/lib/libpango-1.0${stdenv.hostPlatform.extensions.sharedLibrary}";
pangocairo = "${pango.out}/lib/libpangocairo-1.0${stdenv.hostPlatform.extensions.sharedLibrary}";
+ harfbuzz = "${harfbuzz.out}/lib/libharfbuzz${stdenv.hostPlatform.extensions.sharedLibrary}";
})
];
src = fetchPypi {
inherit version;
- pname = "WeasyPrint";
- sha256 = "0rwf43111ws74m8b1alkkxzz57g0np3vmd8as74adwnxslfcg4gs";
+ pname = "weasyprint";
+ sha256 = "sha256-EMyxfVXHMJa98e3T7+WMuFWwfkwwfZutTryaPxP/RYA=";
};
meta = with lib; {
diff --git a/pkgs/development/python-modules/weasyprint/library-paths.patch b/pkgs/development/python-modules/weasyprint/library-paths.patch
index c6eb87c94585..9a10990fd43f 100644
--- a/pkgs/development/python-modules/weasyprint/library-paths.patch
+++ b/pkgs/development/python-modules/weasyprint/library-paths.patch
@@ -1,38 +1,31 @@
-diff --git a/weasyprint/fonts.py b/weasyprint/fonts.py
-index 79e3b5b..4438eb4 100644
---- a/weasyprint/fonts.py
-+++ b/weasyprint/fonts.py
-@@ -45,11 +45,8 @@ else:
- # with OSError: dlopen() failed to load a library: cairo / cairo-2
- # So let's hope we find the same file as cairo already did ;)
- # Same applies to pangocairo requiring pangoft2
-- fontconfig = dlopen(ffi, 'fontconfig', 'libfontconfig',
-- 'libfontconfig-1.dll',
-- 'libfontconfig.so.1', 'libfontconfig-1.dylib')
-- pangoft2 = dlopen(ffi, 'pangoft2-1.0', 'libpangoft2-1.0-0',
-- 'libpangoft2-1.0.so.0', 'libpangoft2-1.0.dylib')
-+ fontconfig = dlopen(ffi, '@fontconfig@')
-+ pangoft2 = dlopen(ffi, '@pangoft2@')
-
- ffi.cdef('''
- // FontConfig
-diff --git a/weasyprint/text.py b/weasyprint/text.py
-index 1dc5e4d..b070bad 100644
---- a/weasyprint/text.py
-+++ b/weasyprint/text.py
-@@ -255,12 +255,9 @@ def dlopen(ffi, *names):
+diff --git a/weasyprint/text/ffi.py b/weasyprint/text/ffi.py
+index 0734cbea..22e31a5e 100644
+--- a/weasyprint/text/ffi.py
++++ b/weasyprint/text/ffi.py
+@@ -387,21 +387,11 @@ def _dlopen(ffi, *names):
return ffi.dlopen(names[0]) # pragma: no cover
--gobject = dlopen(ffi, 'gobject-2.0', 'libgobject-2.0-0', 'libgobject-2.0.so.0',
-- 'libgobject-2.0.dylib')
--pango = dlopen(ffi, 'pango-1.0', 'libpango-1.0-0', 'libpango-1.0.so.0',
-- 'libpango-1.0.dylib')
--pangocairo = dlopen(ffi, 'pangocairo-1.0', 'libpangocairo-1.0-0',
-- 'libpangocairo-1.0.so.0', 'libpangocairo-1.0.dylib')
-+gobject = dlopen(ffi, '@gobject@')
-+pango = dlopen(ffi, '@pango@')
-+pangocairo = dlopen(ffi, '@pangocairo@')
+-gobject = _dlopen(
+- ffi, 'gobject-2.0-0', 'gobject-2.0', 'libgobject-2.0-0',
+- 'libgobject-2.0.so.0', 'libgobject-2.0.dylib')
+-pango = _dlopen(
+- ffi, 'pango-1.0-0', 'pango-1.0', 'libpango-1.0-0', 'libpango-1.0.so.0',
+- 'libpango-1.0.dylib')
+-harfbuzz = _dlopen(
+- ffi, 'harfbuzz', 'harfbuzz-0.0', 'libharfbuzz-0',
+- 'libharfbuzz.so.0', 'libharfbuzz.so.0', 'libharfbuzz.0.dylib')
+-fontconfig = _dlopen(
+- ffi, 'fontconfig-1', 'fontconfig', 'libfontconfig', 'libfontconfig-1.dll',
+- 'libfontconfig.so.1', 'libfontconfig-1.dylib')
+-pangoft2 = _dlopen(
+- ffi, 'pangoft2-1.0-0', 'pangoft2-1.0', 'libpangoft2-1.0-0',
+- 'libpangoft2-1.0.so.0', 'libpangoft2-1.0.dylib')
++gobject = _dlopen(ffi, '@gobject@')
++pango = _dlopen(ffi, '@pango@')
++harfbuzz = _dlopen(ffi, '@harfbuzz@')
++fontconfig = _dlopen(ffi, '@fontconfig@')
++pangoft2 = _dlopen(ffi, '@pangoft2@')
gobject.g_type_init()
-
+
diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix
index 3fd81c749a42..3b70bd0ce6e9 100644
--- a/pkgs/development/tools/analysis/checkov/default.nix
+++ b/pkgs/development/tools/analysis/checkov/default.nix
@@ -56,13 +56,13 @@ with py.pkgs;
buildPythonApplication rec {
pname = "checkov";
- version = "2.0.580";
+ version = "2.0.582";
src = fetchFromGitHub {
owner = "bridgecrewio";
repo = pname;
rev = version;
- sha256 = "sha256-GnEXGXJCI9VIOKJbGjTppum6j/uwX4m4ytaZqvpfl7Q=";
+ sha256 = "sha256-25RT70HyOyfdg2jWLKMnEVgvNdlZuJ0e6eajlU486IQ=";
};
nativeBuildInputs = with py.pkgs; [
diff --git a/pkgs/development/tools/earthly/default.nix b/pkgs/development/tools/earthly/default.nix
index b44ef14c6cab..1cd5d9caf282 100644
--- a/pkgs/development/tools/earthly/default.nix
+++ b/pkgs/development/tools/earthly/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "earthly";
- version = "0.5.22";
+ version = "0.5.24";
src = fetchFromGitHub {
owner = "earthly";
repo = "earthly";
rev = "v${version}";
- sha256 = "sha256-mwyL0o+f7hPvVhWBE7k5a56kzDpeM4rw8h5oLkgsqgc=";
+ sha256 = "sha256-d4TCuFj7nbQDxTLCStrGj698iUYTH0mCqoCZeeOGNIE=";
};
- vendorSha256 = "sha256-pITTp9BqGfUFSF15pl5AM0npJuylJ+FcGw4xGaOi0/o=";
+ vendorSha256 = "sha256-3o+jizVVHcPZ6nNT2nCF8fLDynnFccI2Y50kbXp2qAI=";
ldflags = [
"-s" "-w"
@@ -24,6 +24,9 @@ buildGoModule rec {
makeFlagsArray+=(BUILD_TAGS="${BUILDTAGS}")
'';
+ # For some reasons the tests fail, but the program itself seems to work.
+ doCheck = false;
+
postInstall = ''
mv $out/bin/debugger $out/bin/earthly-debugger
mv $out/bin/shellrepeater $out/bin/earthly-shellrepeater
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index ff61c109b671..d3a62bf331bc 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -22,7 +22,7 @@ let
in
rec {
- electron = electron_15;
+ electron = electron_16;
electron_3 = mkElectron "3.1.13" {
x86_64-linux = "1psmbplz6jhnnf6hmfhxbmmhn4n1dpnhzbc12pxn645xhfpk9ark";
@@ -105,24 +105,24 @@ rec {
headers = "1zkdgpjrh1dc9j8qyrrrh49v24960yhvwi2c530qbpf2azgqj71b";
};
- electron_12 = mkElectron "12.2.2" {
- armv7l-linux = "aeee4acf40afa0397c10a4c76bc61ed2967433bab5c6f11de181fa33d0b168ff";
- aarch64-linux = "593a3fef97a7fed8e93b64d659af9c736dff445eedcbfd037f7d226a88d58862";
- x86_64-linux = "a8e88c67f375e41f3a6f8b8a8c3a1e41b8c0a46f1b731e05de21208caa005fb2";
- i686-linux = "5f0bdc9581237f2f87b5d34e232d711617bd8bf5ff5d7ebd66480779c13fba0a";
- x86_64-darwin = "8a33d2bed668e30a6d64856e01d2aa3b1f1d9efe4eb0e808e916694d32d5e8f2";
- aarch64-darwin = "256daa25a8375c565b32c3c2f0e12fbac8d5039a13a9edbb3673a863149b750a";
- headers = "1fvqkw08pync38ixi5cq4f8a108k2ajxpm1w2f8sn2hjph9kpbsd";
+ electron_12 = mkElectron "12.2.3" {
+ armv7l-linux = "4de83c34987ac7b3b2d0c8c84f27f9a34d9ea2764ae1e54fb609a95064e7e71a";
+ aarch64-linux = "d29d234c09ba810d89ed1fba9e405b6975916ea208d001348379f89b50d1835c";
+ x86_64-linux = "deae6d0941762147716b8298476080d961df2a32d0f6f57b244cbe3a2553cd24";
+ i686-linux = "11b4f159cd3b89d916cc05b5231c2cde53f0c6fb5be8e881824fde00daa5e8c2";
+ x86_64-darwin = "5af34f1198ce9fd17e9fa581f57a8ad2c9333187fb617fe943f30b8cde9e6231";
+ aarch64-darwin = "0db2c021a047a4cd5b28eea16490e16bc82592e3f8a4b96fbdc72a292ce13f50";
+ headers = "1idam1xirxqxqg4g7n33kdx2skk0r351m00g59a8yx9z82g06ah9";
};
- electron_13 = mkElectron "13.6.1" {
- armv7l-linux = "c8bba8da0baf5cde3eb4823c801c228abfa7943c69131b3701c74e2b342e1813";
- aarch64-linux = "09a1ff29c33a23f19cc702e0147dee03cfe2acedcff6bfb63c7911184b871a1a";
- x86_64-linux = "bfc09dd2d591ad614c8d598dad6e13b76c3baf4f48773e7819c493b524a0bb1a";
- i686-linux = "1ea7c7d19759fa0ee0ddef68c09bcc1c57265436d3f5dab37dad3567f117f317";
- x86_64-darwin = "ce45f17f875d72e791999eaf30a1af39b6e9143e57a653e7f06cfa0bee9b985d";
- aarch64-darwin = "e2f82720acae3a03d7d4b3e7dcc7697b84d5bb69a63d087a7420ace2412e7a28";
- headers = "1bd87c74863w0sjs8gfxl62kjjscc56dmmw85vhwz01s4niksr02";
+ electron_13 = mkElectron "13.6.2" {
+ armv7l-linux = "aeb037e24cbcc532b09a604c3421dd1e330afbc3c34b3fb692fcdafbe2d63097";
+ aarch64-linux = "c6014ac6842d81a612e907ce3655edde495f647784ba2bafebd2ada52c065702";
+ x86_64-linux = "529fb7ceb2646324e527a0d9472bbb608e89756a310a8fe1cd929e3a218b45ec";
+ i686-linux = "eeaec723f16adae8b6ba9375745cc143a038905cfa0a9e9ef59ea9026fe1a11b";
+ x86_64-darwin = "86f7f7270ebd36e4957f56c1ef38eecd7d1725f032810c7fef3476955914d6ff";
+ aarch64-darwin = "cc0a19b6ae73f953ce3a3f8d587da8220cd00a284aa705250e81be324b9271dd";
+ headers = "0a5nnj3bd8ly9shx7palaiy0q7n70x8zp1myshcg5pz1qqjjmlw9";
};
electron_14 = mkElectron "14.2.1" {
@@ -135,13 +135,23 @@ rec {
headers = "14yaw3kml2kmi7sns8z32kv4cd8anyj5nd7rfxcg74hj2pbl9dvp";
};
- electron_15 = mkElectron "15.3.1" {
- armv7l-linux = "b3e73ad174f692da36a4e1d2cd6b849080ee891027e37126868c88e6b89d82ac";
- aarch64-linux = "35ebfeeedcb71bd256c24550c75b9515fdda2db7a2ee1deb1097040480a26198";
- x86_64-linux = "941330103b9ab66a0195dd86e1503b5d2087f93a0b1e8453d8270d47cfe2bfc2";
- i686-linux = "1eeef6b189b4305845a0832b98efcba773c329e351181debe003562a7885afff";
- x86_64-darwin = "a91b089b5dc5b1279966511344b805ec84869b6cd60af44f800b363bba25b915";
- aarch64-darwin = "89fafef20426c0a3a2326172d222d29fc5d24d64c8910b7abddf61bd2c6a6700";
- headers = "0f665x7yp0xz1p1cl8c3vcw3k7g53c13rkbz8cz3phl6v3n1s1w0";
+ electron_15 = mkElectron "15.3.2" {
+ armv7l-linux = "40d2f83a3cd29350edfff442ec1d9a5a681358ad9a7a086adf0ed8d0afa4145e";
+ aarch64-linux = "c4c37b852a5576420d43c0a7d3b62be343fc0340134e9f0a7791c3c9285fe249";
+ x86_64-linux = "10b85813d5280f97125437c65a002aa783f204247d501fb58786ac2a7144bb7d";
+ i686-linux = "4a138dbf3d7e34915de73e0224c434666b0c9c5f335ed22e72014b20147378e6";
+ x86_64-darwin = "0bd7e44d41bcdd048a2ac5dc4e1eb6807e80165ce5c06f1a220b20f10579be75";
+ aarch64-darwin = "9eae07658b7d9a5eb318233a66c3933dba31661cf78b7b156d3d20ab7134f4c3";
+ headers = "0r1qxgkpcn03fd28zbz86ilhsqg0gzp9clbghr5w6gy5ak8y68hz";
+ };
+
+ electron_16 = mkElectron "16.0.0" {
+ armv7l-linux = "a3bec9664a17d3f8adc072f88d105601b5d25a42e339c73c26c3b59a0ab0f44a";
+ aarch64-linux = "f4dc4ba8ce14f2e64943838c85654766522c46bb8e02914d3fdf1894b6e5b2fa";
+ x86_64-linux = "a5c5c0547c989207ab63e0b06b46a04b545e4cc74e6fc8f94d7beda0c0bcb0b2";
+ i686-linux = "e93e5eaaf33e4c30d2ba613b67858ada311a6e28b5fd42893499b50ef97b3695";
+ x86_64-darwin = "f95847ea721cbf8632a72bec504137554aa262d111aaa5e2e30a74df66ff6c97";
+ aarch64-darwin = "0c71b070cf6bcfa7dc4dad65ee14af926d5dda73e4a2f96e68cff844df8aba1d";
+ headers = "1gr43w8pw9b7xl1bmpap8v1wp4ixmc2qkww02kbzfw53h6m4ccn3";
};
}
diff --git a/pkgs/games/pacvim/default.nix b/pkgs/games/pacvim/default.nix
index dc2c216b1bf1..a4347550c1d2 100644
--- a/pkgs/games/pacvim/default.nix
+++ b/pkgs/games/pacvim/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, ncurses }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, ncurses }:
stdenv.mkDerivation {
pname = "pacvim";
@@ -9,6 +9,15 @@ stdenv.mkDerivation {
rev = "ca7c8833c22c5fe97974ba5247ef1fcc00cedb8e";
sha256 = "1kq6j7xmsl5qfl1246lyglkb2rs9mnb2rhsdrp18965dpbj2mhx2";
};
+ patches = [
+ # Fix pending upstream inclusion for ncurses-6.3 support:
+ # https://github.com/jmoon018/PacVim/pull/53
+ (fetchpatch {
+ name = "ncurses-6.3.patch";
+ url = "https://github.com/jmoon018/PacVim/commit/760682824cdbb328af616ff43bf822ade23924f7.patch";
+ sha256 = "1y3928dc2nkfldqhpiqk0blbx7qj8ar35f1w7fb92qwxrj8p4i6g";
+ })
+ ];
buildInputs = [ ncurses ];
makeFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index 715f33421210..c7b94e29589a 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -1,293 +1,257 @@
-{ lib, stdenv, fetchgit, fetchFromGitHub, fetchpatch, cmake, pkg-config, makeWrapper, python27, python3, retroarch
-, alsa-lib, fluidsynth, curl, hidapi, libGLU, gettext, portaudio, SDL, SDL2, libGL
-, ffmpeg, pcre, libevdev, libpng, libjpeg, libzip, udev, libvorbis, snappy, which, hexdump
-, sfml, xorg, zlib, nasm, libpcap, boost, icu, openssl
-, buildPackages }:
+{ lib
+, stdenv
+, SDL
+, alsa-lib
+, boost
+, buildPackages
+, cmake
+, curl
+, fetchFromGitHub
+, fetchpatch
+, ffmpeg
+, fluidsynth
+, gettext
+, hexdump
+, hidapi
+, icu
+, libGL
+, libGLU
+, libevdev
+, libjpeg
+, libpcap
+, libpng
+, libvorbis
+, libzip
+, makeWrapper
+, nasm
+, openssl
+, pcre
+, pkg-config
+, portaudio
+, python27
+, python3
+, retroarch
+, sfml
+, snappy
+, udev
+, which
+, xorg
+, zlib
+}:
let
+ d2u = lib.replaceChars [ "-" ] [ "_" ];
- d2u = lib.replaceChars ["-"] ["_"];
+ hashesFile = builtins.fromJSON (builtins.readFile ./hashes.json);
- mkLibRetroCore = { core, src, description, license, broken ? false, version ? "2020-03-06", ... }@a:
- lib.makeOverridable stdenv.mkDerivation ((rec {
+ getCoreSrc = core:
+ fetchFromGitHub (builtins.getAttr core hashesFile);
- name = "libretro-${a.core}-${version}";
- inherit version;
- inherit (a) src;
+ mkLibRetroCore =
+ { core
+ , description
+ , license
+ , src ? null
+ , broken ? false
+ , version ? "unstable-2021-11-16"
+ , ...
+ }@args:
+ lib.makeOverridable stdenv.mkDerivation (
+ let
+ finalSrc = if src == null then getCoreSrc core else src;
+ in
+ (rec {
+ pname = "libretro-${core}";
+ inherit version;
+ src = finalSrc;
- buildInputs = [ zlib ] ++ a.extraBuildInputs or [];
- nativeBuildInputs = [ makeWrapper ] ++ a.extraNativeBuildInputs or [];
+ buildInputs = [ zlib ] ++ args.extraBuildInputs or [ ];
+ nativeBuildInputs = [ makeWrapper ] ++ args.extraNativeBuildInputs or [ ];
- makefile = "Makefile.libretro";
- makeFlags = [
- "platform=${{
- linux = "unix";
- darwin = "osx";
- windows = "win";
- }.${stdenv.hostPlatform.parsed.kernel.name} or stdenv.hostPlatform.parsed.kernel.name}"
- "ARCH=${{
- armv7l = "arm";
- armv6l = "arm";
- i686 = "x86";
- }.${stdenv.hostPlatform.parsed.cpu.name} or stdenv.hostPlatform.parsed.cpu.name}"
- ] ++ (a.makeFlags or []);
+ makefile = "Makefile.libretro";
+ makeFlags = [
+ "platform=${{
+ linux = "unix";
+ darwin = "osx";
+ windows = "win";
+ }.${stdenv.hostPlatform.parsed.kernel.name} or stdenv.hostPlatform.parsed.kernel.name}"
+ "ARCH=${{
+ armv7l = "arm";
+ armv6l = "arm";
+ i686 = "x86";
+ }.${stdenv.hostPlatform.parsed.cpu.name} or stdenv.hostPlatform.parsed.cpu.name}"
+ ] ++ (args.makeFlags or [ ]);
- installPhase = ''
- COREDIR="$out/lib/retroarch/cores"
- mkdir -p $out/bin
- mkdir -p $COREDIR
- mv ${d2u a.core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $COREDIR
- makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch-${core} \
- --add-flags "-L $COREDIR/${d2u core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $@"
- '';
+ installPhase = ''
+ COREDIR="$out/lib/retroarch/cores"
+ mkdir -p $out/bin
+ mkdir -p $COREDIR
+ mv ${d2u args.core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $COREDIR
+ makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch-${core} \
+ --add-flags "-L $COREDIR/${d2u core}_libretro${stdenv.hostPlatform.extensions.sharedLibrary} $@"
+ '';
- passthru = {
- inherit (a) core;
- libretroCore = "/lib/retroarch/cores";
- };
-
- meta = with lib; {
- inherit (a) description license;
- broken = a.broken or false;
- homepage = "https://www.libretro.com/";
- maintainers = with maintainers; [ edwtjo hrdinka MP2E ];
- platforms = platforms.unix;
- };
- }) // builtins.removeAttrs a ["core" "src" "description" "license" "makeFlags"]);
-
- fetchRetro = { repo, rev, sha256 }:
- fetchgit {
- inherit rev sha256;
- url = "https://github.com/libretro/${repo}.git";
- fetchSubmodules = true;
- };
-
-in with lib.licenses;
+ passthru = {
+ inherit core;
+ libretroCore = "/lib/retroarch/cores";
+ };
+ meta = with lib; {
+ inherit broken description license;
+ homepage = "https://www.libretro.com/";
+ maintainers = with maintainers; [ edwtjo hrdinka MP2E thiagokokada ];
+ platforms = platforms.unix;
+ };
+ }) // builtins.removeAttrs args [ "core" "src" "description" "license" "makeFlags" ]
+ );
+in
{
-
- atari800 = mkLibRetroCore rec {
+ atari800 = mkLibRetroCore {
core = "atari800";
- src = fetchRetro {
- repo = "libretro-" + core;
- rev = "f9bf53b864344b8bbe8d425ed2f3c628eb10519c";
- sha256 = "0sgk93zs423pwiqzvj0x1gfwcn9gacnlrrdq53ps395k64lig6lk";
- };
description = "Port of Atari800 to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
makeFlags = [ "GIT_VERSION=" ];
};
beetle-snes = mkLibRetroCore {
core = "mednafen-snes";
- src = fetchRetro {
- repo = "beetle-bsnes-libretro";
- rev = "de22d8420ea606f1b2f72afd4dda34619cf2cc20";
- sha256 = "1nd4f8frmlhp1lyxz9zpxvwwz70x0i0rrp560cn9qlm1jzdv3xvf";
- };
+ src = getCoreSrc "beetle-snes";
description = "Port of Mednafen's SNES core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
beetle-gba = mkLibRetroCore {
core = "mednafen-gba";
- src = fetchRetro {
- repo = "beetle-gba-libretro";
- rev = "135afdbb9591655a3e016b75abba07e481f6d406";
- sha256 = "0fc0x24qn4y7pz3mp1mm1ain31aj9pznp1irr0k7hvazyklzy9g3";
- };
+ src = getCoreSrc "beetle-gba";
description = "Port of Mednafen's GameBoy Advance core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
beetle-lynx = mkLibRetroCore {
core = "mednafen-lynx";
- src = fetchRetro {
- repo = "beetle-lynx-libretro";
- rev = "74dde204c0ec6c4bc4cd7821c14548387fbd9ce8";
- sha256 = "05kwibjr30laalqzazswvmn9smm3mwqsz1i0z1s0pj7idfdhjfw0";
- };
+ src = getCoreSrc "beetle-lynx";
description = "Port of Mednafen's Lynx core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
beetle-ngp = mkLibRetroCore {
core = "mednafen-ngp";
- src = fetchRetro {
- repo = "beetle-ngp-libretro";
- rev = "6f15532b6ad17a2d5eb9dc8241d6af62416e796b";
- sha256 = "05r8mk9rc19nzs3gpfsjr6i7pm6xx3gn3b4xs8ab7v4vcmfg4cn2";
- };
+ src = getCoreSrc "beetle-ngp";
description = "Port of Mednafen's NeoGeo Pocket core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- beetle-pce-fast = let der = mkLibRetroCore {
+ beetle-pce-fast = mkLibRetroCore {
core = "mednafen-pce-fast";
- src = fetchRetro {
- repo = "beetle-pce-fast-libretro";
- rev = "40a42b7f43f029760c92bf0b2097e7d4b90ed29c";
- sha256 = "1gr6wg4bd4chm4c39w0c1b5zfzr05zd7234vvlmr1imk0v6m0wj6";
- };
+ src = getCoreSrc "beetle-pce-fast";
description = "Port of Mednafen's PC Engine core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
- }; in der.override {
- name = "beetle-pce-fast-${der.version}";
};
- beetle-pcfx = mkLibRetroCore rec {
+ beetle-pcfx = mkLibRetroCore {
core = "mednafen-pcfx";
- src = fetchRetro {
- repo = "beetle-pcfx-libretro";
- rev = "7bba6699d6f903bd701b0aa525d845de8427fee6";
- sha256 = "1lh7dh96fyi005fcg3xaf7r4ssgkq840p6anldlqy52vfwmglw3p";
- };
+ src = getCoreSrc "beetle-pcfx";
description = "Port of Mednafen's PCFX core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- beetle-psx = let der = (mkLibRetroCore {
+ beetle-psx = mkLibRetroCore {
core = "mednafen-psx";
- src = fetchRetro {
- repo = "beetle-psx-libretro";
- rev = "0f1e7e60827cad49ebba628abdc83ad97652ab89";
- sha256 = "1j92jgddyl970v775d6gyb50l8md6yfym2fpqhfxcr4gj1b4ivwq";
- };
+ src = getCoreSrc "beetle-psx";
description = "Port of Mednafen's PSX Engine core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
makeFlags = [ "HAVE_HW=0" "HAVE_LIGHTREC=1" ];
- }); in der.override {
- name = "beetle-psx-${der.version}";
};
- beetle-psx-hw = let der = (mkLibRetroCore {
+ beetle-psx-hw = mkLibRetroCore {
core = "mednafen-psx-hw";
- src = fetchRetro {
- repo = "beetle-psx-libretro";
- rev = "0f1e7e60827cad49ebba628abdc83ad97652ab89";
- sha256 = "1j92jgddyl970v775d6gyb50l8md6yfym2fpqhfxcr4gj1b4ivwq";
- };
+ src = getCoreSrc "beetle-psx";
description = "Port of Mednafen's PSX Engine (with HW accel) core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
extraBuildInputs = [ libGL libGLU ];
makefile = "Makefile";
makeFlags = [ "HAVE_VULKAN=1" "HAVE_OPENGL=1" "HAVE_HW=1" "HAVE_LIGHTREC=1" ];
- }); in der.override {
- name = "beetle-psx-hw-${der.version}";
};
- beetle-saturn = let der = (mkLibRetroCore {
+ beetle-saturn = mkLibRetroCore {
core = "mednafen-saturn";
- src = fetchRetro {
- repo = "beetle-saturn-libretro";
- rev = "8a65943bb7bbc3183eeb0d57c4ac3e663f1bcc11";
- sha256 = "1f0cd9wmvarsmf4jw0p6h3lbzs6515aja7krrwapja7i4xmgbrnh";
- };
+ src = getCoreSrc "beetle-saturn";
description = "Port of Mednafen's Saturn core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
makeFlags = [ "HAVE_HW=0" ];
meta.platforms = [ "x86_64-linux" "aarch64-linux" ];
- }); in der.override {
- name = "beetle-saturn-${der.version}";
};
- beetle-saturn-hw = let der = (mkLibRetroCore {
+ beetle-saturn-hw = mkLibRetroCore {
core = "mednafen-saturn-hw";
- src = fetchRetro {
- repo = "beetle-saturn-libretro";
- rev = "8a65943bb7bbc3183eeb0d57c4ac3e663f1bcc11";
- sha256 = "1f0cd9wmvarsmf4jw0p6h3lbzs6515aja7krrwapja7i4xmgbrnh";
- };
+ src = getCoreSrc "beetle-saturn";
description = "Port of Mednafen's Saturn core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
extraBuildInputs = [ libGL libGLU ];
makefile = "Makefile";
makeFlags = [ "HAVE_OPENGL=1" "HAVE_HW=1" ];
meta.platforms = [ "x86_64-linux" "aarch64-linux" ];
- }); in der.override {
- name = "beetle-saturn-${der.version}";
};
- beetle-supergrafx = mkLibRetroCore rec {
+ beetle-supergrafx = mkLibRetroCore {
core = "mednafen-supergrafx";
- src = fetchRetro {
- repo = "beetle-supergrafx-libretro";
- rev = "fadef23d59fa5ec17bc99e1e722cfd9e10535695";
- sha256 = "15rm7p5q38qy3xpyvamhphjnna8h91fsbcqnl9vhzx9cmjg0wf54";
- };
+ src = getCoreSrc "beetle-supergrafx";
description = "Port of Mednafen's SuperGrafx core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- beetle-wswan = mkLibRetroCore rec {
+ beetle-wswan = mkLibRetroCore {
core = "mednafen-wswan";
- src = fetchRetro {
- repo = "beetle-wswan-libretro";
- rev = "5b03d1b09f70dc208387d3c8b59e12e1f0d2692f";
- sha256 = "1sm6ww3y9m85lhp74dpxbs05yxdhhqqmj2022j9s0m235z29iygc";
- };
+ src = getCoreSrc "beetle-wswan";
description = "Port of Mednafen's WonderSwan core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- beetle-vb = mkLibRetroCore rec {
+ beetle-vb = mkLibRetroCore {
core = "mednafen-vb";
- src = fetchRetro {
- repo = "beetle-vb-libretro";
- rev = "9a4e604a7320a3c6ed30601989fe0bc417fa9ad3";
- sha256 = "1gallwbqxn5qbmwxr1vxb41nncksai4rxc739a7vqvp65k5kl0qp";
- };
+ src = getCoreSrc "beetle-vb";
description = "Port of Mednafen's VirtualBoy core to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- bluemsx = mkLibRetroCore rec {
+ bluemsx = mkLibRetroCore {
core = "bluemsx";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "7a1d40e750860580ab7cc21fbc244b5bc6db6586";
- sha256 = "05hnkyr47djccspr8v438zimdfsgym7v0jn1hwpkqc4i5zf70981";
- };
description = "Port of BlueMSX to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
};
- bsnes-mercury = let bname = "bsnes-mercury"; in mkLibRetroCore {
- core = bname + "-accuracy";
- src = fetchRetro {
- repo = bname;
- rev = "4a382621da58ae6da850f1bb003ace8b5f67968c";
- sha256 = "0z8psz24nx8497vpk2wya9vs451rzzw915lkw3qiq9bzlzg9r2wv";
- };
+ bsnes-mercury = mkLibRetroCore {
+ core = "bsnes-mercury-accuracy";
+ src = getCoreSrc "bsnes-mercury";
description = "Fork of bsnes with HLE DSP emulation restored";
- license = gpl3;
+ license = lib.licenses.gpl3Only;
makefile = "Makefile";
- postBuild = "cd out";
+ makeFlags = [ "PROFILE=accuracy" ];
};
- citra = mkLibRetroCore rec {
+ citra = mkLibRetroCore {
core = "citra";
- src = fetchgit {
- url = "https://github.com/libretro/citra.git";
- rev = "84f31e95160b029e6d614053705054ed6a34bb38";
- sha256 = "0gkgxpwrh0q098cpx56hprvmazi5qi448c23svwa8ar1myh8p248";
- fetchSubmodules = true;
+ # `nix-prefetch-github` doesn't support `deepClone`, necessary for citra
+ # https://github.com/seppeljordan/nix-prefetch-github/issues/41
+ src = fetchFromGitHub {
+ inherit (hashesFile.citra) owner repo rev fetchSubmodules;
deepClone = true;
+ sha256 = "sha256-bwnYkMvbtRF5bGZRYVtMWxnCu9P45qeX4+ntOj9eRds=";
};
description = "Port of Citra to libretro";
- license = gpl2Plus;
+ license = lib.licenses.gpl2Plus;
extraNativeBuildInputs = [ cmake pkg-config ];
extraBuildInputs = [ libGLU libGL boost ];
makefile = "Makefile";
@@ -302,52 +266,41 @@ in with lib.licenses;
postBuild = "cd src/citra_libretro";
};
- desmume = mkLibRetroCore rec {
+ desmume = mkLibRetroCore {
core = "desmume";
- src = fetchRetro {
- repo = core;
- rev = "e8cf461f83eebb195f09e70090f57b07d1bcdd9f";
- sha256 = "0rc8s5226wn39jqs5yxi30jc1snc0p106sfym7kgi98hy5na8yab";
- };
description = "libretro wrapper for desmume NDS emulator";
- license = gpl2;
+ license = lib.licenses.gpl2Plus;
extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
preBuild = "cd desmume/src/frontend/libretro";
makeFlags = lib.optional stdenv.hostPlatform.isAarch32 "platform=armv-unix"
- ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
+ ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
};
- desmume2015 = mkLibRetroCore rec {
+ desmume2015 = mkLibRetroCore {
core = "desmume2015";
- src = fetchRetro {
- repo = core;
- rev = "93d5789d60f82436e20ccad05ce9cb43c6e3656e";
- sha256 = "12nii2pbnqgh7f7jkphbwjpr2hiy2mzbwpas3xyhpf9wpy3qiasg";
- };
description = "libretro wrapper for desmume NDS emulator from 2015";
- license = gpl2;
+ license = lib.licenses.gpl2Plus;
extraBuildInputs = [ libpcap libGLU libGL xorg.libX11 ];
makeFlags = lib.optional stdenv.hostPlatform.isAarch32 "platform=armv-unix"
- ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
+ ++ lib.optional (!stdenv.hostPlatform.isx86) "DESMUME_JIT=0";
preBuild = "cd desmume";
};
dolphin = mkLibRetroCore {
core = "dolphin";
- version = "2021-11-01";
- src = fetchRetro {
- repo = "dolphin";
- rev = "3370f7693be95c23ac779e5172ff52b7eb2861a7";
- sha256 = "0ylxi25kbv0h2p24aid7z4i0w6drf7h92q02hjdl3h3gni98lk9i";
- };
description = "Port of Dolphin to libretro";
- license = gpl2Plus;
+ license = lib.licenses.gpl2Plus;
extraNativeBuildInputs = [ cmake curl pkg-config ];
extraBuildInputs = [
- libGLU libGL pcre sfml
- gettext hidapi
- libevdev udev
+ libGLU
+ libGL
+ pcre
+ sfml
+ gettext
+ hidapi
+ libevdev
+ udev
] ++ (with xorg; [ libSM libX11 libXi libpthreadstubs libxcb xcbutil libXext libXrandr libXinerama libXxf86vm ]);
makefile = "Makefile";
cmakeFlags = [
@@ -362,48 +315,29 @@ in with lib.licenses;
dontUseCmakeBuildDir = true;
};
- dosbox = mkLibRetroCore rec {
+ dosbox = mkLibRetroCore {
core = "dosbox";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "e4ed503b14ed59d5d745396ef1cc7d52cf912328";
- sha256 = "13bx0ln9hwn6hy4sv0ivqmjgjbfq8svx15dsa24hwd8lkf0kakl4";
- };
description = "Port of DOSBox to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
};
- eightyone = mkLibRetroCore rec {
+ eightyone = mkLibRetroCore {
core = "81";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "4352130bd2363954262a804b086f86b9d13d97f9";
- sha256 = "057ynnv85imjqhgixrx7p28wn42v88vsm3fc1lp3mpcfi2bk266h";
- };
+ src = getCoreSrc "eightyone";
description = "Port of EightyOne to libretro";
- license = gpl3;
+ license = lib.licenses.gpl3Only;
};
- fbalpha2012 = mkLibRetroCore rec {
+ fbalpha2012 = mkLibRetroCore {
core = "fbalpha2012";
- src = fetchRetro {
- repo = core;
- rev = "fa97cd2784a337f8ac774c2ce8a136aee69b5f43";
- sha256 = "1i75k0r6838hl77bjjmzvan33ka5qjrdpirmclzj20g5j97lmas7";
- };
description = "Port of Final Burn Alpha ~2012 to libretro";
license = "Non-commercial";
makefile = "makefile.libretro";
preBuild = "cd svn-current/trunk";
};
- fbneo = mkLibRetroCore rec {
+ fbneo = mkLibRetroCore {
core = "fbneo";
- src = fetchRetro {
- repo = core;
- rev = "cf43fdb1755f9f5c886266e86ba40d339bc8f5d7";
- sha256 = "13g3c6mbwhcf0rp95ga4klszh8dab2d4ahh2vzzlmd57r69lf2lv";
- };
description = "Port of FBNeo to libretro";
license = "Non-commercial";
makefile = "Makefile";
@@ -414,123 +348,73 @@ in with lib.licenses;
makeFlags = [ "USE_EXPERIMENTAL_FLAGS=1" ];
};
- fceumm = mkLibRetroCore rec {
+ fceumm = mkLibRetroCore {
core = "fceumm";
- src = fetchRetro {
- repo = "libretro-" + core;
- rev = "9ed22e5a9a1360a7f599a64283af9fe24b858e3d";
- sha256 = "0rz6iy281jpybmsz5rh06k5xvmd9id9w2q2gd0qdv9a2ylwv7s2j";
- };
description = "FCEUmm libretro port";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
};
- flycast = mkLibRetroCore rec {
+ flycast = mkLibRetroCore {
core = "flycast";
- src = fetchRetro {
- repo = core;
- rev = "b12f3726d9093acb4e441b1cdcf6cd11403c8644";
- sha256 = "0nczjhdqr7svq9aflczf7rwz64bih1wqy9q0gyglb55xlslf5jqc";
- };
description = "Flycast libretro port";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
extraBuildInputs = [ libGL libGLU ];
makefile = "Makefile";
makeFlags = lib.optional stdenv.hostPlatform.isAarch64 [ "platform=arm64" ];
meta.platforms = [ "aarch64-linux" "x86_64-linux" ];
};
- fmsx = mkLibRetroCore rec {
+ fmsx = mkLibRetroCore {
core = "fmsx";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "3de916bbf15062de1ab322432d38a1fee29d5e68";
- sha256 = "1krr4lmdiv0d7bxk37fqz5y412znb5bmxapv9g7ci6fp87sr69jq";
- };
description = "FMSX libretro port";
license = "Non-commercial";
makefile = "Makefile";
};
- freeintv = mkLibRetroCore rec {
+ freeintv = mkLibRetroCore {
core = "freeintv";
- src = fetchRetro {
- repo = core;
- rev = "45030e10cc1a50cf7a80c5d921aa8cba0aeaca91";
- sha256 = "10lngk3p012bgrg752426701hfzsiy359h8i0vzsa64pgyjbqlag";
- };
description = "FreeIntv libretro port";
- license = gpl3;
+ license = lib.licenses.gpl3Only;
makefile = "Makefile";
};
- gambatte = mkLibRetroCore rec {
+ gambatte = mkLibRetroCore {
core = "gambatte";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "132f36e990dfc6effdafa6cf261373432464f9bf";
- sha256 = "19w5k9yc1cl99c5hiqbp6j54g6z06xcblpvd3x6nmhxij81yqxy7";
- };
description = "Gambatte libretro port";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
};
genesis-plus-gx = mkLibRetroCore {
core = "genesis-plus-gx";
- src = fetchRetro {
- repo = "Genesis-Plus-GX";
- rev = "50551066f71f8a5ea782ea3747891fd6d24ebe67";
- sha256 = "150lgdrv7idcq7jbd1jj7902rcsyixd7kfjs2m5xdinjvl22kihr";
- };
description = "Enhanced Genesis Plus libretro port";
license = "Non-commercial";
};
- gpsp = mkLibRetroCore rec {
+ gpsp = mkLibRetroCore {
core = "gpsp";
- src = fetchRetro {
- repo = core;
- rev = "3f2f57c982ffead643957db5b26931df4913596f";
- sha256 = "09fa1c623rmy1w9zx85r75viv8q1vknhbs8fn6xbss9rhpxhivwg";
- };
description = "Port of gpSP to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- gw = mkLibRetroCore rec {
+ gw = mkLibRetroCore {
core = "gw";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "819b1dde560013003eeac86c2069c5be7af25c6d";
- sha256 = "1jhgfys8hiipvbwq3gc48d7v6wq645d10rbr4w5m6px0fk6csshk";
- };
description = "Port of Game and Watch to libretro";
license = lib.licenses.zlib;
makefile = "Makefile";
};
- handy = mkLibRetroCore rec {
+ handy = mkLibRetroCore {
core = "handy";
- src = fetchRetro {
- repo = "libretro-" + core;
- rev = "c9fe65d1a2df454ee11404ac27bdc9be319dd9a2";
- sha256 = "1l1gi8z68mv2cpdy7a6wvhd86q55khj3mv3drf43ak4kj2ij8cvq";
- };
description = "Port of Handy to libretro";
- license = "Handy-License";
+ license = lib.licenses.zlib;
makefile = "Makefile";
};
- hatari = mkLibRetroCore rec {
+ hatari = mkLibRetroCore {
core = "hatari";
- src = fetchRetro {
- repo = core;
- rev = "ec1b59c4b6c7ca7d0d23d60cfe2cb61911b11173";
- sha256 = "1pm821s2cz93xr7qx7dv0imr44bi4pvdvlnjl486p83vff9yawfg";
- };
description = "Port of Hatari to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
extraBuildInputs = [ SDL zlib ];
extraNativeBuildInputs = [ cmake which ];
dontUseCmakeConfigure = true;
@@ -541,15 +425,10 @@ in with lib.licenses;
mame = mkLibRetroCore {
core = "mame";
- src = fetchRetro {
- repo = "mame";
- rev = "ed987ad07964a938351ff3cc1ad42e02ffd2af6d";
- sha256 = "0qc66mvraffx6ws972skx3wgblich17q6z42798qn13q1a264p4j";
- };
description = "Port of MAME to libretro";
- license = gpl2Plus;
+ license = with lib.licenses; [ bsd3 gpl2Plus ];
- extraBuildInputs = [ alsa-lib libGLU libGL portaudio python27 xorg.libX11 ];
+ extraBuildInputs = [ alsa-lib libGLU libGL portaudio python3 xorg.libX11 ];
postPatch = ''
# Prevent the failure during the parallel building of:
# make -C 3rdparty/genie/build/gmake.linux -f genie.make obj/Release/src/host/lua-5.3.0/src/lgc.o
@@ -558,77 +437,47 @@ in with lib.licenses;
makefile = "Makefile.libretro";
};
- mame2000 = mkLibRetroCore rec {
+ mame2000 = mkLibRetroCore {
core = "mame2000";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "e5d4a934c60adc6d42a3f87319312aad89595a15";
- sha256 = "1zn63yqyrsnsk196v5f3nm7cx41mvsm3icpis1yxbma2r3dk3f89";
- };
description = "Port of MAME ~2000 to libretro";
- license = gpl2Plus;
+ license = "MAME";
makefile = "Makefile";
makeFlags = lib.optional (!stdenv.hostPlatform.isx86) "IS_X86=0";
};
- mame2003 = mkLibRetroCore rec {
+ mame2003 = mkLibRetroCore {
core = "mame2003";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "82596014905ad38c80c9eb322ab08c625d1d92cd";
- sha256 = "17dp2rz6p7q7nr0lajn3vhk9ghngxz16f7c6c87r6wgsy4y3xw0m";
- };
description = "Port of MAME ~2003 to libretro";
- license = gpl2Plus;
+ license = "MAME";
makefile = "Makefile";
};
- mame2003-plus = mkLibRetroCore rec {
+ mame2003-plus = mkLibRetroCore {
core = "mame2003-plus";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "0134c428b75882aa474f78dbbf2c6ecde49b97b7";
- sha256 = "0jln2ys6v9hrsrkhqd87jfslwvkca425f40mf7866g6b4pz56mwc";
- };
description = "Port of MAME ~2003+ to libretro";
- license = gpl2Plus;
+ license = "MAME";
makefile = "Makefile";
};
- mame2010 = mkLibRetroCore rec {
+ mame2010 = mkLibRetroCore {
core = "mame2010";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "d3151837758eade73c85c28c20e7d2a8706f30c6";
- sha256 = "0hj0yhc8zs32fkzn8j341ybhvrsknv0k6x0z2fv3l9ic7swgb93i";
- };
description = "Port of MAME ~2010 to libretro";
- license = gpl2Plus;
+ license = "MAME";
makefile = "Makefile";
makeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [ "PTR64=1" "ARM_ENABLED=1" "X86_SH2DRC=0" "FORCE_DRC_C_BACKEND=1" ];
};
- mame2015 = mkLibRetroCore rec {
+ mame2015 = mkLibRetroCore {
core = "mame2015";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "37333ed6fda4c798a1d6b055fe4708f9f0dcf5a7";
- sha256 = "1asldlj1ywgmhabbhaagagg5hn0359122al07802q3l57ns41l64";
- };
description = "Port of MAME ~2015 to libretro";
- license = gpl2Plus;
+ license = "MAME";
extraNativeBuildInputs = [ python27 ];
extraBuildInputs = [ alsa-lib ];
makefile = "Makefile";
};
- mame2016 = mkLibRetroCore rec {
+ mame2016 = mkLibRetroCore {
core = "mame2016";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "02987af9b81a9c3294af8fb9d5a34f9826a2cf4d";
- sha256 = "0gl7irmn5d8lk7kf484vgw6kb325fq4ghwsni3il4nm5n2a8yglh";
- };
patches = [
(fetchpatch {
name = "fix_mame_build_on_make-4.3.patch";
@@ -637,7 +486,7 @@ in with lib.licenses;
})
];
description = "Port of MAME ~2016 to libretro";
- license = gpl2Plus;
+ license = with lib.licenses; [ bsd3 gpl2Plus ];
extraNativeBuildInputs = [ python27 ];
extraBuildInputs = [ alsa-lib ];
postPatch = ''
@@ -647,136 +496,86 @@ in with lib.licenses;
'';
};
- mesen = mkLibRetroCore rec {
+ mesen = mkLibRetroCore {
core = "mesen";
- src = fetchFromGitHub {
- owner = "SourMesen";
- repo = core;
- rev = "cfc5bf6976f62ebd42ea30d5a803c138fc357509";
- sha256 = "0ihlgvzvni1yqcyi5yxdvg36q20fsqd6n67zavwfb2ph09cqv7kz";
- };
description = "Port of Mesen to libretro";
- license = gpl3;
+ license = lib.licenses.gpl3Only;
makefile = "Makefile";
preBuild = "cd Libretro";
};
- meteor = mkLibRetroCore rec {
+ meteor = mkLibRetroCore {
core = "meteor";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "3d21e3b5a7596918bee0fcaca5752ae76624c05e";
- sha256 = "0fghnxxbdrkdz6zswkd06w2r3dvr4ikvcp8jbr7nb9fc5yzn0avw";
- };
description = "Port of Meteor to libretro";
- license = gpl3;
+ license = lib.licenses.gpl3Only;
makefile = "Makefile";
preBuild = "cd libretro";
};
- mgba = mkLibRetroCore rec {
+ mgba = mkLibRetroCore {
core = "mgba";
- src = fetchRetro {
- repo = core;
- rev = "f87f9ef6cb38537e07dcaedeb82aecac6537d42e";
- sha256 = "0yixvnzgk7qvcfz12r5y8i85czqxbxx6bvl1c7yms8riqn9ssvb7";
- };
description = "Port of mGBA to libretro";
- license = mpl20;
+ license = lib.licenses.mpl20;
};
mupen64plus = mkLibRetroCore {
core = "mupen64plus-next";
- src = fetchRetro {
- repo = "mupen64plus-libretro-nx";
- rev = "81a58df0263c90b10b7fc11b6deee04d47e3aa40";
- sha256 = "1brqyrsdzdq53a68q7ph01q2bx5y4m8b3ymvpp25229imm88lgkn";
- };
+ src = getCoreSrc "mupen64plus";
description = "Libretro port of Mupen64 Plus, GL only";
- license = gpl2;
+ license = lib.licenses.gpl3Only;
extraBuildInputs = [ libGLU libGL libpng nasm xorg.libX11 ];
makefile = "Makefile";
};
- neocd = mkLibRetroCore rec {
+ neocd = mkLibRetroCore {
core = "neocd";
- src = fetchRetro {
- repo = core + "_libretro";
- rev = "3825848fe7dd7e0ef859729eefcb29e2ea2956b7";
- sha256 = "018vfmjsx62zk45yx3pwisp4j133yxjbm7fnwwr244gnyms57711";
- };
description = "NeoCD libretro port";
- license = gpl3;
+ license = lib.licenses.lgpl3Only;
makefile = "Makefile";
};
- nestopia = mkLibRetroCore rec {
+ nestopia = mkLibRetroCore {
core = "nestopia";
- src = fetchRetro {
- repo = core;
- rev = "70c53f08c0cc92e90d095d6558ab737ce20431ac";
- sha256 = "1hlfqml66wy6fn40f1iiy892vq9y9fj20vv3ynd2s3b3qxhwfx73";
- };
description = "Nestopia libretro port";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
preBuild = "cd libretro";
};
np2kai = mkLibRetroCore rec {
core = "np2kai";
- src = fetchFromGitHub rec {
- owner = "AZO234";
- repo = "NP2kai";
- rev = "4a317747724669343e4c33ebdd34783fb7043221";
- sha256 = "0kxysxhx6jyk82mx30ni0ydzmwdcbnlxlnarrlq018rsnwb4md72";
- };
+ src = getCoreSrc core;
description = "Neko Project II kai libretro port";
- license = mit;
+ license = lib.licenses.mit;
makefile = "Makefile.libretro";
- preBuild = ''
- cd sdl2
- substituteInPlace ${makefile} \
- --replace 'GIT_VERSION :=' 'GIT_VERSION ?='
- export GIT_VERSION=${builtins.substring 0 7 src.rev}
- '';
+ makeFlags = [
+ # See https://github.com/AZO234/NP2kai/tags
+ "NP2KAI_VERSION=rev.22"
+ "NP2KAI_HASH=${src.rev}"
+ ];
+ preBuild = "cd sdl";
};
- o2em = mkLibRetroCore rec {
+ o2em = mkLibRetroCore {
core = "o2em";
- src = fetchRetro {
- repo = "libretro-" + core;
- rev = "b23a796dd3490e979ff43710317df6d43bd661e1";
- sha256 = "1pkbq7nig394zdjdic0mzdsvx8xhzamsh53xh2hzznipyj46b7z0";
- };
description = "Port of O2EM to libretro";
- license = artistic1;
+ license = lib.licenses.artistic1;
makefile = "Makefile";
};
- opera = mkLibRetroCore rec {
+ opera = mkLibRetroCore {
core = "opera";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "27bc2653ed469072a6a95102a8212a35fbb1e590";
- sha256 = "10cxjpsd35rb4fjc5ycs1h00gvshpn2mxxvwb6xzrfrzva0kjw1l";
- };
description = "Opera is a port of 4DO/libfreedo to libretro";
license = "Non-commercial";
makefile = "Makefile";
makeFlags = [ "CC_PREFIX=${stdenv.cc.targetPrefix}" ];
};
- parallel-n64 = mkLibRetroCore rec {
+ parallel-n64 = mkLibRetroCore {
core = "parallel-n64";
- src = fetchRetro {
- repo = core;
- rev = "8fe07c62a364d0af1e22b7f75e839d42872dae7f";
- sha256 = "0p3fpldw6w4n4l60bv55c17vhqwq4q39fp36h8iqmnj7c32c61kf";
- };
description = "Parallel Mupen64plus rewrite for libretro.";
- license = gpl2;
+ license = lib.licenses.gpl3Only;
extraBuildInputs = [ libGLU libGL libpng ];
makefile = "Makefile";
postPatch = lib.optionalString stdenv.hostPlatform.isAarch64 ''
@@ -785,44 +584,29 @@ in with lib.licenses;
'';
};
- pcsx_rearmed = mkLibRetroCore rec {
+ pcsx_rearmed = mkLibRetroCore {
core = "pcsx_rearmed";
- src = fetchRetro {
- repo = core;
- rev = "8fda5dd0e28fe46621fb1ab57781c316143017da";
- sha256 = "0k371d0xqzqwy8ishvxssgasm36q83qj7ksn2av110n879n4knwb";
- };
description = "Port of PCSX ReARMed with GNU lightning to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
dontConfigure = true;
};
- picodrive = mkLibRetroCore rec {
+ picodrive = mkLibRetroCore {
core = "picodrive";
- src = fetchRetro {
- repo = core;
- rev = "600894ec6eb657586a972a9ecd268f50907a279c";
- sha256 = "1bxphwnq4b80ssmairy8sfc5cp4m6jyvrcjcj63q1vk7cs6qls7p";
- };
description = "Fast MegaDrive/MegaCD/32X emulator";
license = "MAME";
extraBuildInputs = [ libpng SDL ];
SDL_CONFIG = "${SDL.dev}/bin/sdl-config";
dontAddPrefix = true;
- configurePlatforms = [];
+ configurePlatforms = [ ];
makeFlags = lib.optional stdenv.hostPlatform.isAarch64 [ "platform=aarch64" ];
};
play = mkLibRetroCore {
core = "play";
- src = fetchRetro {
- repo = "play-";
- rev = "884ae3b96c631f235cd18b2643d1f318fa6951fb";
- sha256 = "0m9pk20jh4y02visgzfw64bpbw93bzs15x3a3bnd19yivm34dbfc";
- };
description = "Port of Play! to libretro";
- license = bsd2;
+ license = lib.licenses.bsd2;
extraBuildInputs = [ boost ];
extraNativeBuildInputs = [ cmake openssl curl icu libGL libGLU xorg.libX11 ];
makefile = "Makefile";
@@ -832,22 +616,8 @@ in with lib.licenses;
ppsspp = mkLibRetroCore {
core = "ppsspp";
- src = fetchFromGitHub {
- owner = "hrydgard";
- repo = "ppsspp";
- rev = "v1.11";
- fetchSubmodules = true;
- sha256 = "sha256-vfp/vacIItlPP5dR7jzDT7oOUNFnjvvdR46yi79EJKU=";
- };
- patches = [
- (fetchpatch {
- name = "fix_ffmpeg_4.4.patch"; # to be removed with next release
- url = "https://patch-diff.githubusercontent.com/raw/hrydgard/ppsspp/pull/14176.patch";
- sha256 = "sha256-ecDoOydaLfL6+eFpahcO1TnRl866mZZVHlr6Qrib1mo=";
- })
- ];
description = "ppsspp libretro port";
- license = gpl2;
+ license = lib.licenses.gpl2Plus;
extraNativeBuildInputs = [ cmake pkg-config python3 ];
extraBuildInputs = [ libGLU libGL libzip ffmpeg snappy xorg.libX11 ];
makefile = "Makefile";
@@ -855,114 +625,69 @@ in with lib.licenses;
postBuild = "mv lib/ppsspp_libretro${stdenv.hostPlatform.extensions.sharedLibrary} ppsspp_libretro${stdenv.hostPlatform.extensions.sharedLibrary}";
};
- prboom = mkLibRetroCore rec {
+ prboom = mkLibRetroCore {
core = "prboom";
- src = fetchRetro {
- repo = "libretro-" + core;
- rev = "991016b3c7a9c8b0e49b2bc9c72f68c60800fc7b";
- sha256 = "1abv9qgfvh3x84shgyl3y90bjz77mjj17vibag7bg6i8hgjikjgq";
- };
description = "Prboom libretro port";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- prosystem = mkLibRetroCore rec {
+ prosystem = mkLibRetroCore {
core = "prosystem";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "6f7e34aea89db5ba2fbf674e5ff0ad6fc68a198e";
- sha256 = "0pqkb0f51s8ma0l4m9xk2y85z2kh3fgay9g4g8fingbgqq1klvzs";
- };
description = "Port of ProSystem to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
quicknes = mkLibRetroCore {
core = "quicknes";
- src = fetchRetro {
- repo = "QuickNES_Core";
- rev = "31654810b9ebf8b07f9c4dc27197af7714364ea7";
- sha256 = "15fr5a9hv7wgndb0fpmr6ws969him41jidzir2ix9xkb0mmvcm86";
- };
description = "QuickNES libretro port";
- license = lgpl21Plus;
+ license = lib.licenses.lgpl21Plus;
makefile = "Makefile";
};
- sameboy = mkLibRetroCore rec {
+ sameboy = mkLibRetroCore {
core = "sameboy";
- src = fetchRetro {
- repo = "sameboy";
- rev = "c9e547c1063fd62c40a4b7a86e7db99dc9089051";
- sha256 = "0bff6gicm24d7h270aqvgd8il6mi7j689nj5zl9ij0wc77hrrpmq";
- };
description = "SameBoy libretro port";
- license = mit;
+ license = lib.licenses.mit;
extraNativeBuildInputs = [ which hexdump ];
preBuild = "cd libretro";
makefile = "Makefile";
};
- scummvm = mkLibRetroCore rec {
+ scummvm = mkLibRetroCore {
core = "scummvm";
- src = fetchRetro {
- repo = core;
- rev = "de91bf9bcbf4449f91e2f50fde173496a2b52ee0";
- sha256 = "06h9xaf2b1cjk85nbslpjj0fm9iy9b2lxr1wf3i09hgs4sh6x464";
- };
description = "Libretro port of ScummVM";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
extraBuildInputs = [ fluidsynth libjpeg libvorbis libGLU libGL SDL ];
makefile = "Makefile";
preConfigure = "cd backends/platform/libretro/build";
};
- smsplus-gx = mkLibRetroCore rec {
+ smsplus-gx = mkLibRetroCore {
core = "smsplus";
- src = fetchRetro {
- repo = core + "-gx";
- rev = "36c82768c03d889f1cf4b66369edac2297acba32";
- sha256 = "1f9waikyp7kp2abb76wlv9hmf2jpc76zjmfqyc7wk2pc70ljm3l4";
- };
+ src = getCoreSrc "smsplus-gx";
description = "SMS Plus GX libretro port";
- license = gpl2Plus;
+ license = lib.licenses.gpl2Plus;
};
- snes9x = mkLibRetroCore rec {
+ snes9x = mkLibRetroCore {
core = "snes9x";
- src = fetchFromGitHub {
- owner = "snes9xgit";
- repo = core;
- rev = "bd9246ddd75a5e9f78d6189c8c57754d843630f7";
- sha256 = "10fm7ah3aha9lf4k9hgw0dlhdvshzpig2d0ylcb12gf9zz0i22ns";
- };
description = "Port of SNES9x git to libretro";
license = "Non-commercial";
makefile = "Makefile";
preBuild = "cd libretro";
};
- snes9x2002 = mkLibRetroCore rec {
+ snes9x2002 = mkLibRetroCore {
core = "snes9x2002";
- src = fetchRetro {
- repo = core;
- rev = "a869da7f22c63ee1cb316f79c6dd7691a369da3e";
- sha256 = "11lcwscnxg6sk9as2xlr4nai051qhidbsymyis4nz3r4dmgzf8j8";
- };
description = "Optimized port/rewrite of SNES9x 1.39 to Libretro";
license = "Non-commercial";
makefile = "Makefile";
};
- snes9x2005 = mkLibRetroCore rec {
+ snes9x2005 = mkLibRetroCore {
core = "snes9x2005";
- src = fetchRetro {
- repo = core;
- rev = "c216559b9e0dc3d7f059dcf31b813402ad47fea5";
- sha256 = "19b2rpj6i32c34ryvlna4yca84y5ypza78w4x9l17qlhp021h9pv";
- };
description = "Optimized port/rewrite of SNES9x 1.43 to Libretro";
license = "Non-commercial";
makefile = "Makefile";
@@ -970,66 +695,40 @@ in with lib.licenses;
postBuild = "mv snes9x2005_plus_libretro${stdenv.hostPlatform.extensions.sharedLibrary} snes9x2005_libretro${stdenv.hostPlatform.extensions.sharedLibrary}";
};
- snes9x2010 = mkLibRetroCore rec {
+ snes9x2010 = mkLibRetroCore {
core = "snes9x2010";
- src = fetchRetro {
- repo = core;
- rev = "ba9f2240360f8db270fb6ba5465c79c317070560";
- sha256 = "00y53sjrsp8sccpp1qqw88iawsz30g6d370cbqcxs4ya1r6awn5x";
- };
description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
license = "Non-commercial";
};
- stella = mkLibRetroCore rec {
+ stella = mkLibRetroCore {
core = "stella";
- src = fetchFromGitHub {
- owner = "stella-emu";
- repo = core;
- rev = "506bb0bd0618e676b1959931dcc00a9d0f5f0f3d";
- sha256 = "09nclx0ksixngnxkkjjcyhf3d0vl4ykm8fx7m307lvag8nxj7z03";
- };
description = "Port of Stella to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
extraBuildInputs = [ libpng pkg-config SDL ];
makefile = "Makefile";
preBuild = "cd src/libretro";
dontConfigure = true;
};
- stella2014 = mkLibRetroCore rec {
+ stella2014 = mkLibRetroCore {
core = "stella2014";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "fc87f2c78d3b177f4b9b19698557dce452ac3ce7";
- sha256 = "0yqzavk1w0d0ngpls32c4wlihii97fz2g6zsgadhm48apwjvn3xx";
- };
description = "Port of Stella to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- tgbdual = mkLibRetroCore rec {
+ tgbdual = mkLibRetroCore {
core = "tgbdual";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "9be31d373224cbf288db404afc785df41e61b213";
- sha256 = "19m3f3hj3jyg711z1xq8qn1hgsr593krl6s6hi0r6vf8p5x0zbzw";
- };
description = "Port of TGBDual to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
};
- thepowdertoy = mkLibRetroCore rec {
+ thepowdertoy = mkLibRetroCore {
core = "thepowdertoy";
- src = fetchRetro {
- repo = "ThePowderToy";
- rev = "0ff547e89ae9d6475b0226db76832daf03eec937";
- sha256 = "kDpmo/RPYRvROOX3AhsB5pIl0MfHbQmbyTMciLPDNew=";
- };
description = "Port of The Powder Toy to libretro";
- license = gpl3Only;
+ license = lib.licenses.gpl3Only;
extraNativeBuildInputs = [ cmake ];
makefile = "Makefile";
postBuild = "cd src/";
@@ -1037,14 +736,9 @@ in with lib.licenses;
tic80 = mkLibRetroCore {
core = "tic80";
- src = fetchRetro {
- repo = "tic-80";
- rev = "f43bad908d5f05f2a66d5cd1d6f21b234d4abd2c";
- sha256 = "0bp34r8qqyw52alws1z4ib9j7bs4d641q6nvqszd07snp9lpvwym";
- };
description = "Port of TIC-80 to libretro";
- license = mit;
- extraNativeBuildInputs = [ cmake pkg-config ];
+ license = lib.licenses.mit;
+ extraNativeBuildInputs = [ cmake pkg-config libGL libGLU ];
makefile = "Makefile";
cmakeFlags = [
"-DBUILD_LIBRETRO=ON"
@@ -1057,66 +751,42 @@ in with lib.licenses;
postBuild = "cd lib";
};
- vba-next = mkLibRetroCore rec {
+ vba-next = mkLibRetroCore {
core = "vba-next";
- src = fetchRetro {
- repo = core;
- rev = "019132daf41e33a9529036b8728891a221a8ce2e";
- sha256 = "0hab4rhvvcg30jifd9h9jq5q2vqk2hz5i1q456w6v2d10hl1lf15";
- };
description = "VBA-M libretro port with modifications for speed";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
};
- vba-m = mkLibRetroCore rec {
+ vba-m = mkLibRetroCore {
core = "vbam";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "7d88e045a2fe44e56b3f84846beec446b4c4b2d9";
- sha256 = "04f8adg99a36qkqhij54vkw5z18m5ld33p78lbmv8cxk7k7g7yhy";
- };
+ src = getCoreSrc "vba-m";
description = "vanilla VBA-M libretro port";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
preBuild = "cd src/libretro";
};
- vecx = mkLibRetroCore rec {
+ vecx = mkLibRetroCore {
core = "vecx";
- src = fetchRetro {
- repo = "libretro-" + core;
- rev = "321205271b1c6be5dbdb8d309097a5b5c2032dbd";
- sha256 = "1w54394yhf2yqmq1b8wi5y7lvixc5hpjxpyiancrdbjd0af7pdvd";
- };
description = "Port of Vecx to libretro";
- license = gpl3;
+ license = lib.licenses.gpl3Only;
+ extraBuildInputs = [ libGL libGLU ];
};
- virtualjaguar = mkLibRetroCore rec {
+ virtualjaguar = mkLibRetroCore {
core = "virtualjaguar";
- src = fetchRetro {
- repo = core + "-libretro";
- rev = "a162fb75926f5509f187e9bfc69958bced40b0a6";
- sha256 = "06k8xpn5y9rzmi2lwfw0v9v9pz4wvmpalycc608bw9cl39lmz10h";
- };
description = "Port of VirtualJaguar to libretro";
- license = gpl3;
+ license = lib.licenses.gpl3Only;
makefile = "Makefile";
};
- yabause = mkLibRetroCore rec {
+ yabause = mkLibRetroCore {
core = "yabause";
- src = fetchRetro {
- repo = core;
- rev = "9be109f9032afa793d2a79b837c4cc232cea5929";
- sha256 = "0aj862bs4dmnldy62wdssj5l63ibfkbzqvkxcqa3wyvdz4i367jc";
- };
description = "Port of Yabause to libretro";
- license = gpl2;
+ license = lib.licenses.gpl2Only;
makefile = "Makefile";
# Disable SSE for non-x86. DYNAREC doesn't build on either Aarch64 or x86_64.
makeFlags = lib.optional (!stdenv.hostPlatform.isx86) "HAVE_SSE=0";
preBuild = "cd yabause/src/libretro";
};
-
}
diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix
index f5db3d427f9e..e4c09c3c8f6c 100644
--- a/pkgs/misc/emulators/retroarch/default.nix
+++ b/pkgs/misc/emulators/retroarch/default.nix
@@ -22,12 +22,13 @@ with lib;
stdenv.mkDerivation rec {
pname = "retroarch-bare";
- version = "1.8.5";
+ # FIXME: retroarch >=1.9.3 doesn't load the cores
+ version = "1.9.2";
src = fetchFromGitHub {
owner = "libretro";
repo = "RetroArch";
- sha256 = "1pg8j9wvwgrzsv4xdai6i6jgdcc922v0m42rbqxvbghbksrc8la3";
+ sha256 = "sha256-Dwv0hl+d99FbVMG4KnkjO1aYfAw0m4x+zvrbyb/wOX8=";
rev = "v${version}";
};
@@ -55,8 +56,8 @@ stdenv.mkDerivation rec {
meta = {
homepage = "https://libretro.com";
description = "Multi-platform emulator frontend for libretro cores";
- license = licenses.gpl3;
+ license = licenses.gpl3Plus;
platforms = platforms.all;
- maintainers = with maintainers; [ MP2E edwtjo matthewbauer kolbycrouch ];
+ maintainers = with maintainers; [ MP2E edwtjo matthewbauer kolbycrouch thiagokokada ];
};
}
diff --git a/pkgs/misc/emulators/retroarch/hashes.json b/pkgs/misc/emulators/retroarch/hashes.json
new file mode 100644
index 000000000000..a849a37bfab4
--- /dev/null
+++ b/pkgs/misc/emulators/retroarch/hashes.json
@@ -0,0 +1,513 @@
+{
+ "atari800": {
+ "owner": "libretro",
+ "repo": "libretro-atari800",
+ "rev": "478a8ec99a7f8436a39d5ac193c5fe313233ee7b",
+ "sha256": "LJpRegJVR2+sS1UmTTpVest0rMrNDBMXmj/jRFVglWI=",
+ "fetchSubmodules": false
+ },
+ "beetle-snes": {
+ "owner": "libretro",
+ "repo": "beetle-bsnes-libretro",
+ "rev": "bc867656d7438aaffc6818b3b92350587bc78a47",
+ "sha256": "TyUCRGK+uyXowDjXW9/4m+zL8Vh/3GGsX1eznrTCbAg=",
+ "fetchSubmodules": false
+ },
+ "beetle-gba": {
+ "owner": "libretro",
+ "repo": "beetle-gba-libretro",
+ "rev": "38182572571a48cb58057cde64b915237c4e2d58",
+ "sha256": "4xnXWswozlcXBNI1lbGSNW/gAdIeLLO9Bf1SxOFLhSo=",
+ "fetchSubmodules": false
+ },
+ "beetle-lynx": {
+ "owner": "libretro",
+ "repo": "beetle-lynx-libretro",
+ "rev": "b84c79b2f185482f9cec2b10f33cbe1bc5732dd9",
+ "sha256": "pR3EsFN/Wf77gPoAnjf/nI0XlB2098qIrmbdjB4jmMQ=",
+ "fetchSubmodules": false
+ },
+ "beetle-ngp": {
+ "owner": "libretro",
+ "repo": "beetle-ngp-libretro",
+ "rev": "f969af2b52f20642aea7e800e3cfcce728f3aee9",
+ "sha256": "GIzLZ3iOJeHKdAowhM4S56iouaxX8v2XZgc/ZiCzCPk=",
+ "fetchSubmodules": false
+ },
+ "beetle-pce-fast": {
+ "owner": "libretro",
+ "repo": "beetle-pce-fast-libretro",
+ "rev": "81d4c9d07a76c89c32ad0e7450b69bde6403836f",
+ "sha256": "LhQbAEUMhoIF3VfwLbhtD7xxSddzdgwIHHnSabQPAvs=",
+ "fetchSubmodules": false
+ },
+ "beetle-pcfx": {
+ "owner": "libretro",
+ "repo": "beetle-pcfx-libretro",
+ "rev": "a1f1734509dd6acb11269f118d61f480ae8dbacf",
+ "sha256": "rvRDuYJLxb1TSwNXhp3ATJW0sQgWi8Cj4NR3hep/AJk=",
+ "fetchSubmodules": false
+ },
+ "beetle-psx": {
+ "owner": "libretro",
+ "repo": "beetle-psx-libretro",
+ "rev": "ccca81930a078c0efd77b00327d2ee212698f3b4",
+ "sha256": "Hy8Zrp0kTR+Mfbq0nVYerSarRCxZI+ykgDOscakDMiU=",
+ "fetchSubmodules": false
+ },
+ "beetle-saturn": {
+ "owner": "libretro",
+ "repo": "beetle-saturn-libretro",
+ "rev": "e1119e91a4e3f4b30971455aeb3c1a6f4cd05e59",
+ "sha256": "lKlNNAHK1ynFXY++Ya0m1Ax5YTZkd44eQjzuOLXfWa8=",
+ "fetchSubmodules": false
+ },
+ "beetle-supergrafx": {
+ "owner": "libretro",
+ "repo": "beetle-supergrafx-libretro",
+ "rev": "59062662d6e925ad512fcbb9c1a0db97d1592bc1",
+ "sha256": "kGyl5XJMFUALPAEZf4IynY6bmXWfqy0o65eO8zS0RTE=",
+ "fetchSubmodules": false
+ },
+ "beetle-wswan": {
+ "owner": "libretro",
+ "repo": "beetle-wswan-libretro",
+ "rev": "0c7faaf7f70b72ebb68e310530cd46a69e680d40",
+ "sha256": "UQyICcZe1DVotSFt0QVnGop+JG5NJwTBcGSZaFW0P0U=",
+ "fetchSubmodules": false
+ },
+ "beetle-vb": {
+ "owner": "libretro",
+ "repo": "beetle-vb-libretro",
+ "rev": "1bd0da71c8f6add253ad76e2b6e1357cd09fc304",
+ "sha256": "KguKbRK0uXE+brpF8HdRwi8Gt76AMa4wkh1MFvNCbN4=",
+ "fetchSubmodules": false
+ },
+ "bluemsx": {
+ "owner": "libretro",
+ "repo": "bluemsx-libretro",
+ "rev": "cfc1df4d026387883f21994bcce603c4a6be8730",
+ "sha256": "ix/AyYNer1R73ZJW1reXyj7geBr3ThrqXf5Ki5yrz9A=",
+ "fetchSubmodules": false
+ },
+ "bsnes-mercury": {
+ "owner": "libretro",
+ "repo": "bsnes-mercury",
+ "rev": "d232c6ea90552f5921fec33a06626f08d3e18b24",
+ "sha256": "fpl7hmqz+Ca+9ZeM6E1JSikbiu+NJUU8xXtyl6Dd9Gg=",
+ "fetchSubmodules": false
+ },
+ "citra": {
+ "owner": "libretro",
+ "repo": "citra",
+ "rev": "b1959d07a340bfd9af65ad464fd19eb6799a96ef",
+ "sha256": "Tw6Niba9gsZOMKGaXF9AZ5gdigB0mmFyqoRTMElM/Ps=",
+ "fetchSubmodules": true
+ },
+ "desmume": {
+ "owner": "libretro",
+ "repo": "desmume",
+ "rev": "7ea0fc96804fcd9c8d33e8f76cf64b1be50cc5ea",
+ "sha256": "4S/CirRVOBN6PVbato5X5fu0tBn3Fu5FEAbdf3TBqng=",
+ "fetchSubmodules": false
+ },
+ "desmume2015": {
+ "owner": "libretro",
+ "repo": "desmume2015",
+ "rev": "cd89fb7c48c735cb321311fbce7e6e9889dda1ce",
+ "sha256": "9Ou/n6pxRjJOp/Ybpyg4+Simosj2X26kLZCMEqeVL6U=",
+ "fetchSubmodules": false
+ },
+ "dolphin": {
+ "owner": "libretro",
+ "repo": "dolphin",
+ "rev": "82e617439b622af5d1189e9fec67e7f1376be099",
+ "sha256": "Q3a+0SYocX1hBGLs1K9r932NkiCDFINPhtHeyzUknJE=",
+ "fetchSubmodules": false
+ },
+ "dosbox": {
+ "owner": "libretro",
+ "repo": "dosbox-libretro",
+ "rev": "aa71b67d54eaaf9e41cdd3cb5153d9cff0ad116e",
+ "sha256": "L0Y67UROjldnXUlLQ+Xbd7RHLb96jDxlB/k+LR9Kbas=",
+ "fetchSubmodules": false
+ },
+ "eightyone": {
+ "owner": "libretro",
+ "repo": "81-libretro",
+ "rev": "30344d3499fdb301ee33de136f7b390bebe0756a",
+ "sha256": "kMwga9MkjV+dKxW3VLu+rxst6H20HhREoiNBsCLa1G0=",
+ "fetchSubmodules": false
+ },
+ "fbalpha2012": {
+ "owner": "libretro",
+ "repo": "fbalpha2012",
+ "rev": "23f98fc7cf4f2f216149c263cf5913d2e28be8d4",
+ "sha256": "dAInW6tTV7oXcPhKMnHWcmQaWQCTqRrYHD2yuaI1I1w=",
+ "fetchSubmodules": false
+ },
+ "fbneo": {
+ "owner": "libretro",
+ "repo": "fbneo",
+ "rev": "4d6387b7f3e3f1a9c25015789d751c6db1a9ae8c",
+ "sha256": "bIOmvhu9mOfOXoOTbwbjMHIZ3JkGz96yyFZALmqkOmk=",
+ "fetchSubmodules": false
+ },
+ "fceumm": {
+ "owner": "libretro",
+ "repo": "libretro-fceumm",
+ "rev": "a918869c18c9f30b84e04260b78b675b8a3c7be1",
+ "sha256": "nDYPrwIsvhWveDQDE0WEK7GO60iRE967p1XxXn+lNj4=",
+ "fetchSubmodules": false
+ },
+ "flycast": {
+ "owner": "libretro",
+ "repo": "flycast",
+ "rev": "ae670ea28fdbb9f08149cb598312a71a0970ca67",
+ "sha256": "jmSOfyak5mX04HgZOtCF9cz8HqAApxDXHJ6IqhqGILE=",
+ "fetchSubmodules": false
+ },
+ "fmsx": {
+ "owner": "libretro",
+ "repo": "fmsx-libretro",
+ "rev": "20c805409b8f6e1f9d61cb3dff0d5b28d82d1ee3",
+ "sha256": "uqqVF2+YpfWOKbe8aIreoImFb3/kL8ohslJkl+JivQI=",
+ "fetchSubmodules": false
+ },
+ "freeintv": {
+ "owner": "libretro",
+ "repo": "freeintv",
+ "rev": "0058a09492c5c17a4fa59ebb3601ce66844b3b25",
+ "sha256": "DA6eAl9ZR84Ow8rH9q/DVbEU83nmidwMy3kqk+hWWLQ=",
+ "fetchSubmodules": false
+ },
+ "gambatte": {
+ "owner": "libretro",
+ "repo": "gambatte-libretro",
+ "rev": "4b822bcf561856689e101dd5505d365de5ffcffe",
+ "sha256": "FsIQLd/UO5xs/aTpggSn8WLPgi83gsxRlwKR+UzH+TY=",
+ "fetchSubmodules": false
+ },
+ "genesis-plus-gx": {
+ "owner": "libretro",
+ "repo": "Genesis-Plus-GX",
+ "rev": "309a4aacfd582c312dcad61b7abfdffba4a0c66e",
+ "sha256": "jnbey1USldDZGXGXLLR5TgSJZgD+6ZFpwfIf6c8xvyM=",
+ "fetchSubmodules": false
+ },
+ "gpsp": {
+ "owner": "libretro",
+ "repo": "gpsp",
+ "rev": "a2aa78733d8daf1d550c9dc76c6ff94e8670b31c",
+ "sha256": "nKim7YkksUyZO97SvrW1TEYQlA+7Yi7xbLtyDPV4LWc=",
+ "fetchSubmodules": false
+ },
+ "gw": {
+ "owner": "libretro",
+ "repo": "gw-libretro",
+ "rev": "0f1ccca156388880bf4507ad44741f80945dfc6f",
+ "sha256": "BVpx8pL224J2u9W6UDrxzfEv4qIsh6wrf3bDdd1R850=",
+ "fetchSubmodules": false
+ },
+ "handy": {
+ "owner": "libretro",
+ "repo": "libretro-handy",
+ "rev": "e7b4e32d5f32d6e96630072072844a7dd16a02d9",
+ "sha256": "dQpEqxOcac7gdbmWu4HTvFx++us/spVMfroBlLTAgF0=",
+ "fetchSubmodules": false
+ },
+ "hatari": {
+ "owner": "libretro",
+ "repo": "hatari",
+ "rev": "cea06eebf695b078fadc0e78bb0f2b2baaca799f",
+ "sha256": "Z05IGubwdgg7X/e2ZG49zVfXuITM59HW/1gicdpDXls=",
+ "fetchSubmodules": false
+ },
+ "mame": {
+ "owner": "libretro",
+ "repo": "mame",
+ "rev": "031ac783585e7d5156a6f87a9ba20d88caf94ad6",
+ "sha256": "hLMQw5jvJTxojGwCY7iUDHcJdLZjcLzEDhW576TerJI=",
+ "fetchSubmodules": false
+ },
+ "mame2000": {
+ "owner": "libretro",
+ "repo": "mame2000-libretro",
+ "rev": "4793742b457945afb74053c8a895e6ff0b36b033",
+ "sha256": "DA9fZTic/jlYzSAIiOjfhohyEyQZiBNdIa8YCZoKZNs=",
+ "fetchSubmodules": false
+ },
+ "mame2003": {
+ "owner": "libretro",
+ "repo": "mame2003-libretro",
+ "rev": "d0ed1a565803cfada9f4088326eae616f6e5f8a3",
+ "sha256": "JGEy6Mp5qcZwaehzbj+qpdBfxHzqi6qIR7akxIj/WK8=",
+ "fetchSubmodules": false
+ },
+ "mame2003-plus": {
+ "owner": "libretro",
+ "repo": "mame2003-plus-libretro",
+ "rev": "841e44dff953a346127f15be53cb34778e20ce1c",
+ "sha256": "aCXyeDcz0uSObe4S2bQWCxIAF5aA3kne5v0HT+oXHuw=",
+ "fetchSubmodules": false
+ },
+ "mame2010": {
+ "owner": "libretro",
+ "repo": "mame2010-libretro",
+ "rev": "932e6f2c4f13b67b29ab33428a4037dee9a236a8",
+ "sha256": "HSZRSnc+0300UE9fPcUOMrXABlxHhTewkFPTqQ4Srxs=",
+ "fetchSubmodules": false
+ },
+ "mame2015": {
+ "owner": "libretro",
+ "repo": "mame2015-libretro",
+ "rev": "ef41361dc9c88172617f7bbf6cd0ead4516a3c3f",
+ "sha256": "HZrw9KKwYAJyU4NH1BEvuod/TK/nqjN03qJuSX8JP8o=",
+ "fetchSubmodules": false
+ },
+ "mame2016": {
+ "owner": "libretro",
+ "repo": "mame2016-libretro",
+ "rev": "d53c379892b0bd91b4a52fc2de491e1199f03e32",
+ "sha256": "GQ4Sdg/1nZRT4Z1Aqq1zPo96duqIGyt6sjghf9ap2Jg=",
+ "fetchSubmodules": false
+ },
+ "mesen": {
+ "owner": "SourMesen",
+ "repo": "mesen",
+ "rev": "86326e832974d984846ae078e568c023a5f76f1f",
+ "sha256": "At5rhlJ6rAnXaQrmRA1NtCCi+Ff/ytlt5dwsaXZhxXg=",
+ "fetchSubmodules": false
+ },
+ "meteor": {
+ "owner": "libretro",
+ "repo": "meteor-libretro",
+ "rev": "e533d300d0561564451bde55a2b73119c768453c",
+ "sha256": "zMkgzUz2rk0SD5ojY4AqaDlNM4k4QxuUxVBRBcn6TqQ=",
+ "fetchSubmodules": false
+ },
+ "mgba": {
+ "owner": "libretro",
+ "repo": "mgba",
+ "rev": "033e067285745909722df930deaeead80ea2d54a",
+ "sha256": "ZFmiVOf8H3PtSCWTtYc3XsIpiJI6XZ2v/HsusQsg7H8=",
+ "fetchSubmodules": false
+ },
+ "mupen64plus": {
+ "owner": "libretro",
+ "repo": "mupen64plus-libretro-nx",
+ "rev": "018ee72b4fe247b38ed161033ad12a19bb936f00",
+ "sha256": "vJz9S9lUgJp8O0NgJF6/EYymFqwZefvrT/HJLpMhgEk=",
+ "fetchSubmodules": false
+ },
+ "neocd": {
+ "owner": "libretro",
+ "repo": "neocd_libretro",
+ "rev": "83d10f3be10fff2f28aa56fc674c687528cb7f5c",
+ "sha256": "yYZGoMsUfE8cpU9i826UWQGi1l0zPJPcBDb2CINxGeQ=",
+ "fetchSubmodules": false
+ },
+ "nestopia": {
+ "owner": "libretro",
+ "repo": "nestopia",
+ "rev": "ea6f1c0631bb62bf15ab96493127dd9cfaf74d1c",
+ "sha256": "v+5000V1SR1sXWHryoZEi5sTgaRlVMrHmWKJX2stdSk=",
+ "fetchSubmodules": false
+ },
+ "np2kai": {
+ "owner": "AZO234",
+ "repo": "NP2kai",
+ "rev": "3e8fedc7c1c6f68faa26589187512474a766ee9e",
+ "sha256": "5bfh/aZOqfHz1x2s5AzZo4zq9qA4w10d9vYuuILdKJQ=",
+ "fetchSubmodules": true
+ },
+ "o2em": {
+ "owner": "libretro",
+ "repo": "libretro-o2em",
+ "rev": "c039e83f2589cb9d21b9aa5dc211954234ab8c97",
+ "sha256": "QQS4mS68C3aTZ4dw7ju6WyPlDjIBoDkIeQduCccAmDQ=",
+ "fetchSubmodules": false
+ },
+ "opera": {
+ "owner": "libretro",
+ "repo": "opera-libretro",
+ "rev": "d8aa7cecf96298bd7ee51718086f7b1bc8c57e2a",
+ "sha256": "1t+zwCVmqiPFFNCNq9XzVfRGbEA1q8v4jzhOb+wV/nA=",
+ "fetchSubmodules": false
+ },
+ "parallel-n64": {
+ "owner": "libretro",
+ "repo": "parallel-n64",
+ "rev": "0a67445ce63513584d92e5c57ea87efe0da9b3bd",
+ "sha256": "rms+T8JOp/TJ/T5a5uLj8lu1LLz/GAsJZ7UbK42C9yU=",
+ "fetchSubmodules": false
+ },
+ "pcsx_rearmed": {
+ "owner": "libretro",
+ "repo": "pcsx_rearmed",
+ "rev": "589bd99ba31de8216624dbf0cbbc016f0663ce3d",
+ "sha256": "6OtsWXTo6ca0M/cofpvWPEd0Tqy3XDa8vaa7OUTxnMU=",
+ "fetchSubmodules": false
+ },
+ "picodrive": {
+ "owner": "libretro",
+ "repo": "picodrive",
+ "rev": "9cb99ce36f93871b05c5adc2790b2e33e63b50b6",
+ "sha256": "hhdEuri1hSNLAkno8Rwd0Yls11Yh6Q7/+t4T2LH+BaE=",
+ "fetchSubmodules": true
+ },
+ "play": {
+ "owner": "jpd002",
+ "repo": "Play-",
+ "rev": "b8e16159734c2068db0f2f12b11bc16ef55058ce",
+ "sha256": "qjp1rEjmDAAB2wXITA3lAS+ERJuZinoneJToYiYRi/w=",
+ "fetchSubmodules": true
+ },
+ "ppsspp": {
+ "owner": "hrydgard",
+ "repo": "ppsspp",
+ "rev": "b6e7fe1aaf2bbb8f4faa1378bf14f434aea33cc1",
+ "sha256": "Kif6oF8Bjhgc02xKDivCG9RBxj5wxNFEwxl9nX3AZug=",
+ "fetchSubmodules": true
+ },
+ "prboom": {
+ "owner": "libretro",
+ "repo": "libretro-prboom",
+ "rev": "0f5927db4fb7e61f32bc9eccc5f809e54f71a371",
+ "sha256": "DFpDxEUHjuCcHQGxT+impj98vYITeok1SHrRN5Hba4M=",
+ "fetchSubmodules": false
+ },
+ "prosystem": {
+ "owner": "libretro",
+ "repo": "prosystem-libretro",
+ "rev": "f8652c7f2b0edc81685d03204d4963fc4ea9eccd",
+ "sha256": "Ki4Dyb//X8isP0tScqunA/qt2vkX6d2HH7rHhqk3D5k=",
+ "fetchSubmodules": false
+ },
+ "quicknes": {
+ "owner": "libretro",
+ "repo": "QuickNES_Core",
+ "rev": "71b8000b33daab8ed488f8707ccd8d5b623443f8",
+ "sha256": "Wx8nFWy0DQaZlhEMiI2KRwBK0earSVSke7/qXbs0bQ0=",
+ "fetchSubmodules": false
+ },
+ "sameboy": {
+ "owner": "libretro",
+ "repo": "sameboy",
+ "rev": "68f67b3db7747ba7aac84c5c253bc71d5a906525",
+ "sha256": "/4JQ1Tem3UgOUIcsLV0aLU+1R55hMTaT+wWElwj00Q4=",
+ "fetchSubmodules": false
+ },
+ "scummvm": {
+ "owner": "libretro",
+ "repo": "scummvm",
+ "rev": "63e57573a9ffe71a1083ff46d9cd210203b87afb",
+ "sha256": "LTFe8HIX9OSJuJj5YfPigrPAE8nrbSpDckh0hj3w52s=",
+ "fetchSubmodules": false
+ },
+ "smsplus-gx": {
+ "owner": "libretro",
+ "repo": "smsplus-gx",
+ "rev": "3f1ffede55bcfe0168caa484a00bf041ab591abf",
+ "sha256": "fD+grzMPk4uXvmzGf+f9Mor0eefBLHIumCydsSHUsck=",
+ "fetchSubmodules": false
+ },
+ "snes9x": {
+ "owner": "snes9xgit",
+ "repo": "snes9x",
+ "rev": "edc32fc0bd6aea6d5645a03f0f94b72f3cbfa43e",
+ "sha256": "Zeojdoykmk+lpG1z5EdZToGWYDQvSSQqaEr7F68iyk0=",
+ "fetchSubmodules": false
+ },
+ "snes9x2002": {
+ "owner": "libretro",
+ "repo": "snes9x2002",
+ "rev": "e16cb16efa00765b1bc3b8fee195680efb1542c7",
+ "sha256": "0dhLpNy+NUE3mE/ejEwbq3G28/a2HONS5NPslI5LOEc=",
+ "fetchSubmodules": false
+ },
+ "snes9x2005": {
+ "owner": "libretro",
+ "repo": "snes9x2005",
+ "rev": "88a46f7c085f6e2accc4c777e264b9b5cd41cf0e",
+ "sha256": "5wVKK3xhCXkvonwQRyVtd8Afggb0gv8Sv7PEYkDfKRE=",
+ "fetchSubmodules": false
+ },
+ "snes9x2010": {
+ "owner": "libretro",
+ "repo": "snes9x2010",
+ "rev": "714b1c8e08c7580430190119b07e793405773ac2",
+ "sha256": "yKSQEE+lT4V2V1XqemfziHuIt79TcvC0ranU9ounTXo=",
+ "fetchSubmodules": false
+ },
+ "stella": {
+ "owner": "stella-emu",
+ "repo": "stella",
+ "rev": "e1035b74fce26932078d00e8625688927efce34c",
+ "sha256": "+ZvSCnnoKGyToSFqUQOArolFdgUcBBFNjFw8aoVDkYI=",
+ "fetchSubmodules": false
+ },
+ "stella2014": {
+ "owner": "libretro",
+ "repo": "stella2014-libretro",
+ "rev": "934c7a2a44ef038af529b68950ddba4f7ea3478e",
+ "sha256": "s7LQ47sAPTyk4COONk4qnebxCq78zGLIjh3Y2+1fIak=",
+ "fetchSubmodules": false
+ },
+ "tgbdual": {
+ "owner": "libretro",
+ "repo": "tgbdual-libretro",
+ "rev": "1e0c4f931d8c5e859e6d3255d67247d7a2987434",
+ "sha256": "0wHv9DpKuzJ/q5vERqCo4GBLre2ggClBIWSjGnMLQq8=",
+ "fetchSubmodules": false
+ },
+ "thepowdertoy": {
+ "owner": "libretro",
+ "repo": "ThePowderToy",
+ "rev": "ac620c0a89a18774c3ad176a8a1bc596df23ff57",
+ "sha256": "C/X1DbmnucRddemEYml2zN3qr5yoXY3b+nvqfpboS0M=",
+ "fetchSubmodules": false
+ },
+ "tic80": {
+ "owner": "libretro",
+ "repo": "tic-80",
+ "rev": "bd03e6a548676745e81fa95e60b233b5a56420c2",
+ "sha256": "SXJvWX6Q3BrdajNnT4HIf6H2z7dXXvnXTJXf/TYRw4I=",
+ "fetchSubmodules": true
+ },
+ "vba-next": {
+ "owner": "libretro",
+ "repo": "vba-next",
+ "rev": "b218f48bb27b5d3885fa4076ff325922b5acd817",
+ "sha256": "idqGMbMA9mZlIh0QAba3BxpPDi/bFJJkUbnxV3xMOCo=",
+ "fetchSubmodules": false
+ },
+ "vba-m": {
+ "owner": "libretro",
+ "repo": "vbam-libretro",
+ "rev": "254f6effebe882b7d3d29d9e417c6aeeabc08026",
+ "sha256": "vJWjdqJ913NLGL4G15sRPqO/wp9xPsuhUMLUuAbDRKk=",
+ "fetchSubmodules": false
+ },
+ "vecx": {
+ "owner": "libretro",
+ "repo": "libretro-vecx",
+ "rev": "28d6efc8972313903d0802a736ff8c3bc115e78f",
+ "sha256": "VYa8s+HB8IYF+HS6SA+sO5DzpgCtnMGrh88KTVNGICY=",
+ "fetchSubmodules": false
+ },
+ "virtualjaguar": {
+ "owner": "libretro",
+ "repo": "virtualjaguar-libretro",
+ "rev": "d1b1b28a6ad2518b746e3f7537ec6d66db96ec57",
+ "sha256": "Io25dt80fqIqIxwzF2DK9J5UFz6YCUQoqThcIuxdEBo=",
+ "fetchSubmodules": false
+ },
+ "yabause": {
+ "owner": "libretro",
+ "repo": "yabause",
+ "rev": "811f9e81dbff4bed18644e19631fd4893e73e6ee",
+ "sha256": "VstPh0oMEZ7/ts58NjZxBYZZx/7dRTYePhDIQMu0WOo=",
+ "fetchSubmodules": false
+ }
+}
diff --git a/pkgs/misc/emulators/retroarch/update.py b/pkgs/misc/emulators/retroarch/update.py
new file mode 100755
index 000000000000..db43db13575f
--- /dev/null
+++ b/pkgs/misc/emulators/retroarch/update.py
@@ -0,0 +1,135 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i python3 -p "python3.withPackages (ps: with ps; [ requests nix-prefetch-github ])" -p "git"
+
+import json
+import sys
+from pathlib import Path
+
+from nix_prefetch_github import nix_prefetch_github
+
+SCRIPT_PATH = Path(__file__).absolute().parent
+HASHES_PATH = SCRIPT_PATH / "hashes.json"
+CORES = {
+ "atari800": {"repo": "libretro-atari800"},
+ "beetle-snes": {"repo": "beetle-bsnes-libretro"},
+ "beetle-gba": {"repo": "beetle-gba-libretro"},
+ "beetle-lynx": {"repo": "beetle-lynx-libretro"},
+ "beetle-ngp": {"repo": "beetle-ngp-libretro"},
+ "beetle-pce-fast": {"repo": "beetle-pce-fast-libretro"},
+ "beetle-pcfx": {"repo": "beetle-pcfx-libretro"},
+ "beetle-psx": {"repo": "beetle-psx-libretro"},
+ "beetle-saturn": {"repo": "beetle-saturn-libretro"},
+ "beetle-supergrafx": {"repo": "beetle-supergrafx-libretro"},
+ "beetle-wswan": {"repo": "beetle-wswan-libretro"},
+ "beetle-vb": {"repo": "beetle-vb-libretro"},
+ "bluemsx": {"repo": "bluemsx-libretro"},
+ "bsnes-mercury": {"repo": "bsnes-mercury"},
+ "citra": {"repo": "citra", "fetch_submodules": True},
+ "desmume": {"repo": "desmume"},
+ "desmume2015": {"repo": "desmume2015"},
+ "dolphin": {"repo": "dolphin"},
+ "dosbox": {"repo": "dosbox-libretro"},
+ "eightyone": {"repo": "81-libretro"},
+ "fbalpha2012": {"repo": "fbalpha2012"},
+ "fbneo": {"repo": "fbneo"},
+ "fceumm": {"repo": "libretro-fceumm"},
+ "flycast": {"repo": "flycast"},
+ "fmsx": {"repo": "fmsx-libretro"},
+ "freeintv": {"repo": "freeintv"},
+ "gambatte": {"repo": "gambatte-libretro"},
+ "genesis-plus-gx": {"repo": "Genesis-Plus-GX"},
+ "gpsp": {"repo": "gpsp"},
+ "gw": {"repo": "gw-libretro"},
+ "handy": {"repo": "libretro-handy"},
+ "hatari": {"repo": "hatari"},
+ "mame": {"repo": "mame"},
+ "mame2000": {"repo": "mame2000-libretro"},
+ "mame2003": {"repo": "mame2003-libretro"},
+ "mame2003-plus": {"repo": "mame2003-plus-libretro"},
+ "mame2010": {"repo": "mame2010-libretro"},
+ "mame2015": {"repo": "mame2015-libretro"},
+ "mame2016": {"repo": "mame2016-libretro"},
+ "mesen": {"repo": "mesen", "owner": "SourMesen"},
+ "meteor": {"repo": "meteor-libretro"},
+ "mgba": {"repo": "mgba"},
+ "mupen64plus": {"repo": "mupen64plus-libretro-nx"},
+ "neocd": {"repo": "neocd_libretro"},
+ "nestopia": {"repo": "nestopia"},
+ "np2kai": {"repo": "NP2kai", "owner": "AZO234", "fetch_submodules": True},
+ "o2em": {"repo": "libretro-o2em"},
+ "opera": {"repo": "opera-libretro"},
+ "parallel-n64": {"repo": "parallel-n64"},
+ "pcsx_rearmed": {"repo": "pcsx_rearmed"},
+ "picodrive": {"repo": "picodrive", "fetch_submodules": True},
+ "play": {"repo": "Play-", "owner": "jpd002", "fetch_submodules": True},
+ "ppsspp": {"repo": "ppsspp", "owner": "hrydgard", "fetch_submodules": True},
+ "prboom": {"repo": "libretro-prboom"},
+ "prosystem": {"repo": "prosystem-libretro"},
+ "quicknes": {"repo": "QuickNES_Core"},
+ "sameboy": {"repo": "sameboy"},
+ "scummvm": {"repo": "scummvm"},
+ "smsplus-gx": {"repo": "smsplus-gx"},
+ "snes9x": {"repo": "snes9x", "owner": "snes9xgit"},
+ "snes9x2002": {"repo": "snes9x2002"},
+ "snes9x2005": {"repo": "snes9x2005"},
+ "snes9x2010": {"repo": "snes9x2010"},
+ "stella": {"repo": "stella", "owner": "stella-emu"},
+ "stella2014": {"repo": "stella2014-libretro"},
+ "tgbdual": {"repo": "tgbdual-libretro"},
+ "thepowdertoy": {"repo": "ThePowderToy"},
+ "tic80": {"repo": "tic-80", "fetch_submodules": True},
+ "vba-next": {"repo": "vba-next"},
+ "vba-m": {"repo": "vbam-libretro"},
+ "vecx": {"repo": "libretro-vecx"},
+ "virtualjaguar": {"repo": "virtualjaguar-libretro"},
+ "yabause": {"repo": "yabause"},
+}
+
+
+def info(*msg):
+ print(*msg, file=sys.stderr)
+
+
+def get_repo_hash_fetchFromGitHub(repo, owner="libretro", fetch_submodules=False):
+ assert repo is not None, "Parameter 'repo' can't be None."
+
+ repo_hash = nix_prefetch_github(
+ owner=owner, repo=repo, fetch_submodules=fetch_submodules
+ )
+ return {
+ "owner": repo_hash.repository.owner,
+ "repo": repo_hash.repository.name,
+ "rev": repo_hash.rev,
+ "sha256": repo_hash.sha256,
+ "fetchSubmodules": repo_hash.fetch_submodules,
+ }
+
+
+def get_repo_hash(fetcher="fetchFromGitHub", **kwargs):
+ if fetcher == "fetchFromGitHub":
+ return get_repo_hash_fetchFromGitHub(**kwargs)
+ else:
+ raise ValueError(f"Unsupported fetcher: {fetcher}")
+
+
+def get_repo_hashes():
+ repo_hashes = {}
+
+ for core, repo in CORES.items():
+ info(f"Getting repo hash for '{core}'...")
+ repo_hashes[core] = get_repo_hash(**repo)
+
+ return repo_hashes
+
+
+def main():
+ repo_hashes = get_repo_hashes()
+ info(f"Generating '{HASHES_PATH}'...")
+ with open(HASHES_PATH, "w") as f:
+ f.write(json.dumps(repo_hashes, indent=4))
+ f.write("\n")
+ info("Finished!")
+
+
+if __name__ == "__main__":
+ main()
diff --git a/pkgs/misc/emulators/retroarch/wrapper.nix b/pkgs/misc/emulators/retroarch/wrapper.nix
index 4cc7ad404be0..b8fbd70ecc46 100644
--- a/pkgs/misc/emulators/retroarch/wrapper.nix
+++ b/pkgs/misc/emulators/retroarch/wrapper.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, makeWrapper, retroarch, cores }:
+{ stdenv, lib, makeWrapper, retroarch, cores ? [ ] }:
stdenv.mkDerivation {
pname = "retroarch";
@@ -8,10 +8,10 @@ stdenv.mkDerivation {
buildCommand = ''
mkdir -p $out/lib
- $(for coreDir in $cores
+ for coreDir in $cores
do
- $(ln -s $coreDir/* $out/lib/.)
- done)
+ ln -s $coreDir/* $out/lib/.
+ done
ln -s -t $out ${retroarch}/share
diff --git a/pkgs/misc/emulators/ryujinx/default.nix b/pkgs/misc/emulators/ryujinx/default.nix
index 43c98cbacac2..86716ed5d535 100644
--- a/pkgs/misc/emulators/ryujinx/default.nix
+++ b/pkgs/misc/emulators/ryujinx/default.nix
@@ -6,13 +6,13 @@
buildDotnetModule rec {
pname = "ryujinx";
- version = "1.0.7101"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
+ version = "1.0.7105"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
src = fetchFromGitHub {
owner = "Ryujinx";
repo = "Ryujinx";
- rev = "911ea38e939459c652c6e27a28599340a61267dc";
- sha256 = "0znn5bcjhajs26y2ykizpya11ism27zlpbsrf12a25ak4vj6pzvx";
+ rev = "b9d83cc97ee1cb8c60d9b01c162bab742567fe6e";
+ sha256 = "0plchh8f9xhhza1wfw3ys78f0pa1bh3898fqhfhcc0kxb39px9is";
};
projectFile = "Ryujinx.sln";
diff --git a/pkgs/os-specific/linux/ddcci/default.nix b/pkgs/os-specific/linux/ddcci/default.nix
index 27de98611006..086373f1ab5a 100644
--- a/pkgs/os-specific/linux/ddcci/default.nix
+++ b/pkgs/os-specific/linux/ddcci/default.nix
@@ -1,14 +1,17 @@
-{ lib, stdenv, fetchFromGitLab, kernel }:
+{ lib, stdenv, fetchpatch, fetchFromGitLab, kernel }:
stdenv.mkDerivation rec {
pname = "ddcci-driver";
- version = "0.4.1";
+ # XXX: We apply a patch for the upcoming version to the source of version 0.4.1
+ # XXX: When 0.4.2 is actually released, don't forget to remove this comment,
+ # XXX: fix the rev in fetchFromGitLab, and remove the patch.
+ version = "0.4.2";
name = "${pname}-${kernel.version}-${version}";
src = fetchFromGitLab {
owner = "${pname}-linux";
repo = "${pname}-linux";
- rev = "v${version}";
+ rev = "v0.4.1";
sha256 = "1qhsm0ccwfmwn0r6sbc6ms4lf4a3iqfcgqmbs6afr6hhxkqll3fg";
};
@@ -25,6 +28,13 @@ stdenv.mkDerivation rec {
--replace depmod \#
'';
+ patches = [
+ (fetchpatch {
+ url = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/commit/bf9d79852cbd0aa5c2e288ce51b8280f74a1f5d2.patch";
+ sha256 = "sha256-ShqVzkoRnlX4Y5ARY11YVYatFI1K7bAtLulP3/8/nwg=";
+ })
+ ];
+
makeFlags = kernel.makeFlags ++ [
"KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
"KVER=${kernel.modDirVersion}"
@@ -38,6 +48,6 @@ stdenv.mkDerivation rec {
license = licenses.gpl2Plus;
maintainers = with maintainers; [ ];
platforms = platforms.linux;
- broken = kernel.kernelOlder "5.1" || kernel.kernelAtLeast "5.15";
+ broken = kernel.kernelOlder "5.1";
};
}
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 9c6e3a22122a..0b7fb6f50fe7 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -51,8 +51,8 @@ in {
};
nextcloud22 = generic {
- version = "22.2.2";
- sha256 = "sha256-lDvn29N19Lhm3P2YIVM/85vr/U07qR+M8TkF/D/GTfA=";
+ version = "22.2.3";
+ sha256 = "sha256-ZqKaakkHOMCr7bZ3y2jHyR+rqz5kGaPJnYtAaJnrlCo=";
};
# tip: get she sha with:
# curl 'https://download.nextcloud.com/server/releases/nextcloud-${version}.tar.bz2.sha256'
diff --git a/pkgs/tools/admin/aliyun-cli/default.nix b/pkgs/tools/admin/aliyun-cli/default.nix
new file mode 100644
index 000000000000..3ff8ae3caa23
--- /dev/null
+++ b/pkgs/tools/admin/aliyun-cli/default.nix
@@ -0,0 +1,30 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+ pname = "aliyun-cli";
+ version = "3.0.94";
+
+ src = fetchFromGitHub {
+ rev = "v${version}";
+ owner = "aliyun";
+ repo = pname;
+ fetchSubmodules = true;
+ sha256 = "sha256:1l9rzdp9kxxicvp45pa7288zxa07xp7w6aj7d9k9xlzv8l96k6j3";
+ };
+ vendorSha256 = "sha256:0dklq78bqfidcda8pwd6qwaycah3gndmq9s90h1pqx1isw4frckk";
+
+ subPackages = ["aliyun-openapi-meta" "main"];
+
+ ldFlags = "-X 'github.com/aliyun/${pname}/cli.Version=${version}'";
+
+ postInstall = ''
+ mv $out/bin/main $out/bin/aliyun
+ '';
+
+ meta = with lib; {
+ description = "Tool to manage and use Alibaba Cloud resources through a command line interface.";
+ homepage = "https://github.com/aliyun/aliyun-cli";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ ornxka ];
+ };
+}
diff --git a/pkgs/tools/filesystems/kio-fuse/default.nix b/pkgs/tools/filesystems/kio-fuse/default.nix
new file mode 100644
index 000000000000..a68165956eb3
--- /dev/null
+++ b/pkgs/tools/filesystems/kio-fuse/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, mkDerivation
+, fetchgit
+, cmake
+, extra-cmake-modules
+, kio
+, fuse3
+}:
+
+mkDerivation rec {
+ pname = "kio-fuse";
+ version = "5.0.1";
+
+ src = fetchgit {
+ url = "https://invent.kde.org/system/kio-fuse.git";
+ sha256 = "sha256-LSFbFCaEPkQTk1Rg9xpueBOQpkbr/tgYxLD31F6i/qE=";
+ rev = "v${version}";
+ };
+
+ nativeBuildInputs = [ cmake extra-cmake-modules ];
+
+ buildInputs = [ kio fuse3 ];
+
+ meta = with lib; {
+ description = "FUSE Interface for KIO";
+ homepage = "https://invent.kde.org/system/kio-fuse";
+ license = licenses.gpl3Plus;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ _1000teslas ];
+ };
+}
diff --git a/pkgs/tools/graphics/svgcleaner/Cargo.lock b/pkgs/tools/graphics/svgcleaner/Cargo.lock
deleted file mode 100644
index 8daf4c4f83b5..000000000000
--- a/pkgs/tools/graphics/svgcleaner/Cargo.lock
+++ /dev/null
@@ -1,256 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "autocfg"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "chrono"
-version = "0.4.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
-dependencies = [
- "libc",
- "num-integer",
- "num-traits",
- "time",
- "winapi",
-]
-
-[[package]]
-name = "clap"
-version = "2.33.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
-dependencies = [
- "bitflags",
- "textwrap",
- "unicode-width",
-]
-
-[[package]]
-name = "error-chain"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3"
-
-[[package]]
-name = "fern"
-version = "0.5.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e69ab0d5aca163e388c3a49d284fed6c3d0810700e77c5ae2756a50ec1a4daaa"
-dependencies = [
- "chrono",
- "log",
-]
-
-[[package]]
-name = "float-cmp"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2be876712b52d3970d361df27210574630d8d44d6461f0b55745d56e88ac10b0"
-dependencies = [
- "num",
-]
-
-[[package]]
-name = "libc"
-version = "0.2.103"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8f7255a17a627354f321ef0055d63b898c6fb27eff628af4d1b66b7331edf6"
-
-[[package]]
-name = "log"
-version = "0.4.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "num"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4703ad64153382334aa8db57c637364c322d3372e097840c72000dabdcf6156e"
-dependencies = [
- "num-integer",
- "num-iter",
- "num-traits",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
-name = "num-iter"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "phf"
-version = "0.7.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18"
-dependencies = [
- "phf_shared",
-]
-
-[[package]]
-name = "phf_shared"
-version = "0.7.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0"
-dependencies = [
- "siphasher",
-]
-
-[[package]]
-name = "simplecss"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "135685097a85a64067df36e28a243e94a94f76d829087ce0be34eeb014260c0e"
-
-[[package]]
-name = "siphasher"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
-
-[[package]]
-name = "svgcleaner"
-version = "0.9.5"
-dependencies = [
- "clap",
- "error-chain",
- "fern",
- "log",
- "svgdom",
-]
-
-[[package]]
-name = "svgdom"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dac5d235d251b4266fb95bdf737fe0c546b26327a127e35ad33effdd78cb2e83"
-dependencies = [
- "error-chain",
- "float-cmp",
- "log",
- "simplecss",
- "svgparser",
-]
-
-[[package]]
-name = "svgparser"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90b2a4d5f7d25526c750e436fb5a224e06579f32581515bf511b37210007a3cb"
-dependencies = [
- "error-chain",
- "log",
- "phf",
- "xmlparser",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-dependencies = [
- "unicode-width",
-]
-
-[[package]]
-name = "time"
-version = "0.1.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255"
-dependencies = [
- "libc",
- "wasi",
- "winapi",
-]
-
-[[package]]
-name = "unicode-width"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
-
-[[package]]
-name = "wasi"
-version = "0.10.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "xmlparser"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4fb8cb7e78fcf5055e751eae348c81bba17b6c84c8ed9fc5f6cf60e3e15d4aa"
-dependencies = [
- "error-chain",
- "log",
-]
diff --git a/pkgs/tools/graphics/svgcleaner/default.nix b/pkgs/tools/graphics/svgcleaner/default.nix
deleted file mode 100644
index 48902f322e2f..000000000000
--- a/pkgs/tools/graphics/svgcleaner/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, rustPlatform, fetchFromGitHub }:
-
-rustPlatform.buildRustPackage rec {
- pname = "svgcleaner";
- version = "0.9.5";
-
- src = fetchFromGitHub {
- owner = "RazrFalcon";
- repo = "svgcleaner";
- rev = "v${version}";
- sha256 = "sha256-nc+lKL6CJZid0WidcBwILhn81VgmmFrutfKT5UffdHA=";
- };
-
- cargoLock.lockFile = ./Cargo.lock;
-
- postPatch = ''
- cp ${./Cargo.lock} Cargo.lock;
- '';
-
- meta = with lib; {
- description = "A tool for tidying and optimizing SVGs";
- homepage = "https://github.com/RazrFalcon/svgcleaner";
- changelog = "https://github.com/RazrFalcon/svgcleaner/blob/v${version}/CHANGELOG.md";
- license = licenses.gpl2Plus;
- maintainers = with maintainers; [ mehandes ];
- };
-}
diff --git a/pkgs/tools/misc/topicctl/default.nix b/pkgs/tools/misc/topicctl/default.nix
index 9ecbbcba37af..0a51eda48570 100644
--- a/pkgs/tools/misc/topicctl/default.nix
+++ b/pkgs/tools/misc/topicctl/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "topicctl";
- version = "1.1.1";
+ version = "1.2.0";
src = fetchFromGitHub {
owner = "segmentio";
repo = "topicctl";
rev = "v${version}";
- sha256 = "sha256-LsMt2BHfO0I5N2C247fmoOgQ5EXMgk/3Kj/lI+vTRV0=";
+ sha256 = "sha256-bCTlKhYmMe89dYuLiZ58CPpYZiXSGqbddxugsZS5/Cs=";
};
- vendorSha256 = "sha256-ur7qMm7l1CocQwX58fTL1PpdgIEJyRAzSlNJM1WTvM0=";
+ vendorSha256 = "sha256-1VRK8tmsbOuP5t5uJ1h+KPcS4K9D+y6UQKeUP2HPXrQ=";
ldflags = [
"-X main.BuildVersion=${version}"
diff --git a/pkgs/tools/networking/ookla-speedtest/default.nix b/pkgs/tools/networking/ookla-speedtest/default.nix
index 200b488cf714..6f377a0a4bf7 100644
--- a/pkgs/tools/networking/ookla-speedtest/default.nix
+++ b/pkgs/tools/networking/ookla-speedtest/default.nix
@@ -2,16 +2,16 @@
let
pname = "ookla-speedtest";
- version = "1.0.0";
+ version = "1.1.0";
srcs = {
x86_64-linux = fetchurl {
url = "https://install.speedtest.net/app/cli/${pname}-${version}-x86_64-linux.tgz";
- sha256 = "sha256-X+ICjw1EJ+T0Ix2fnPcOZpG7iQpwY211Iy/k2XBjMWg=";
+ sha256 = "sha256-/NWN8G6uqokjchSnNcC3FU1qDsOjt4Jh2kCnZc5B9H8=";
};
aarch64-linux = fetchurl {
url = "https://install.speedtest.net/app/cli/${pname}-${version}-aarch64-linux.tgz";
- sha256 = "sha256-BzaE3DSQUIygGwTFhV4Ez9eX/tM/bqam7cJt+8b2qp4=";
+ sha256 = "sha256-kyOrChC3S8kn4ArO5IylFIstS/N3pXxBVx4ZWI600oU=";
};
};
in
diff --git a/pkgs/tools/security/gau/default.nix b/pkgs/tools/security/gau/default.nix
index fec4e4e013b5..95d5f228c803 100644
--- a/pkgs/tools/security/gau/default.nix
+++ b/pkgs/tools/security/gau/default.nix
@@ -5,16 +5,16 @@
buildGoModule rec {
pname = "gau";
- version = "1.2.0";
+ version = "2.0.6";
src = fetchFromGitHub {
owner = "lc";
repo = pname;
rev = "v${version}";
- sha256 = "sha256-hUIUDDP9NtMmJXj5GCD/ISUUcx5prKCVVFztff9txoU=";
+ sha256 = "sha256-d9Cfd2KD+ymGnzOjlVQkSm3XBamoJIUKQLnRZzSDBtk=";
};
- vendorSha256 = "sha256-WMoFbqtBMcjTWX51mEMzpgDEAndCElldNqjG27yXd2w=";
+ vendorSha256 = "sha256-u5ketxHPwZN2mV0uTgwJbY+ImusGZ9GTTmFAGvdH5yA=";
meta = with lib; {
description = "Tool to fetch known URLs";
diff --git a/pkgs/tools/system/plan9port/default.nix b/pkgs/tools/system/plan9port/default.nix
index 7e4ce71ec547..6b22dd5fe5ce 100644
--- a/pkgs/tools/system/plan9port/default.nix
+++ b/pkgs/tools/system/plan9port/default.nix
@@ -14,7 +14,7 @@
stdenv.mkDerivation {
pname = "plan9port";
- version = "0.pre+date=2021-10-19";
+ version = "2021-10-19";
src = fetchFromGitHub {
owner = "9fans";
@@ -101,6 +101,7 @@ stdenv.mkDerivation {
kovirobi
];
platforms = platforms.unix;
+ broken = stdenv.isDarwin;
};
}
# TODO: investigate the mouse chording support patch
diff --git a/pkgs/tools/text/tidy-viewer/default.nix b/pkgs/tools/text/tidy-viewer/default.nix
index 29d243a65042..43b38d06b928 100644
--- a/pkgs/tools/text/tidy-viewer/default.nix
+++ b/pkgs/tools/text/tidy-viewer/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "tidy-viewer";
- version = "1.4.2";
+ version = "1.4.3";
src = fetchFromGitHub {
owner = "alexhallam";
repo = "tv";
rev = version;
- sha256 = "sha256-YXYz+SvL6YRwnZ7frmmx4NevNTh0rJcW7e4jSuX3TNs=";
+ sha256 = "sha256-onLu4XNe3sLfZ273Hq9IvgZEV9ir8oEXX7tQG75K2Hw=";
};
- cargoSha256 = "sha256-KwnnoVacTMw7kHLQynv9557zUq8aFZfzBD+Zc9Q6XBs=";
+ cargoSha256 = "sha256-CYiRi6ny0wzTddpjdnnMHGqcWRM9wVjF34RmETgLH5A=";
# this test parses command line arguments
# error: Found argument '--test-threads' which wasn't expected, or isn't valid in this context
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 6fac1340ff04..a35a53b420e6 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -892,6 +892,7 @@ mapAliases ({
stanchion = throw "Stanchion was part of riak-cs which is not maintained anymore"; # added 2020-10-14
stumpwm-git = throw "stumpwm-git has been broken for a long time and lispPackages.stumpwm follows Quicklisp that is close to git version"; # added 2021-05-09
surf-webkit2 = surf; # added 2017-04-02
+ svgcleaner = throw "svgcleaner has been removed."; # added 2021-11-17
swec = throw "swec has been removed; broken and abandoned upstream."; # added 2021-10-14
swfdec = throw "swfdec has been removed as broken and unmaintained."; # added 2020-08-23
swtpm-tpm2 = swtpm; # added 2021-02-26
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 99197cb90550..988e1154429d 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -259,7 +259,9 @@ with pkgs;
clj-kondo = callPackage ../development/tools/clj-kondo { };
- cloak = callPackage ../applications/misc/cloak { };
+ cloak = callPackage ../applications/misc/cloak {
+ inherit (darwin.apple_sdk.frameworks) Security;
+ };
cmark = callPackage ../development/libraries/cmark { };
@@ -1044,6 +1046,8 @@ with pkgs;
hyper = callPackage ../applications/terminal-emulators/hyper { };
+ iqueue = callPackage ../development/libraries/iqueue {};
+
iterm2 = callPackage ../applications/terminal-emulators/iterm2 {};
kitty = callPackage ../applications/terminal-emulators/kitty {
@@ -1335,6 +1339,8 @@ with pkgs;
avfs = callPackage ../tools/filesystems/avfs { };
+ aliyun-cli = callPackage ../tools/admin/aliyun-cli { };
+
aws-iam-authenticator = callPackage ../tools/security/aws-iam-authenticator {};
awscli = callPackage ../tools/admin/awscli { };
@@ -3220,6 +3226,10 @@ with pkgs;
lite = callPackage ../applications/editors/lite { };
+ lite-xl = callPackage ../applications/editors/lite-xl {
+ inherit (darwin.apple_sdk.frameworks) Foundation;
+ };
+
loadwatch = callPackage ../tools/system/loadwatch { };
loccount = callPackage ../development/tools/misc/loccount { };
@@ -6739,6 +6749,8 @@ with pkgs;
kibi = callPackage ../applications/editors/kibi { };
+ kio-fuse = libsForQt5.callPackage ../tools/filesystems/kio-fuse { };
+
kismet = callPackage ../applications/networking/sniffers/kismet { };
kiterunner = callPackage ../tools/security/kiterunner { };
@@ -7662,7 +7674,9 @@ with pkgs;
metasploit = callPackage ../tools/security/metasploit { };
- mhost = callPackage ../applications/networking/mhost { };
+ mhost = callPackage ../applications/networking/mhost {
+ inherit (darwin.apple_sdk.frameworks) Security;
+ };
ms-sys = callPackage ../tools/misc/ms-sys { };
@@ -9692,8 +9706,6 @@ with pkgs;
svgbob = callPackage ../tools/graphics/svgbob { };
- svgcleaner = callPackage ../tools/graphics/svgcleaner { };
-
ssb = callPackage ../tools/security/ssb { };
ssb-patchwork = callPackage ../applications/networking/ssb-patchwork { };
@@ -13910,7 +13922,8 @@ with pkgs;
electron_12
electron_13
electron_14
- electron_15;
+ electron_15
+ electron_16;
autobuild = callPackage ../development/tools/misc/autobuild { };
@@ -27115,6 +27128,8 @@ with pkgs;
mlt-qt5 = libsForQt514.mlt;
};
+ synology-drive = libsForQt5.callPackage ../applications/networking/synology-drive { };
+
taxi = callPackage ../applications/networking/ftp/taxi { };
librep = callPackage ../development/libraries/librep { };
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index b33949f62cca..a5fcb42fbd64 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -2259,6 +2259,8 @@ in {
dnspython = callPackage ../development/python-modules/dnspython { };
+ dnspythonchia = callPackage ../development/python-modules/dnspythonchia { };
+
doc8 = callPackage ../development/python-modules/doc8 { };
docker = callPackage ../development/python-modules/docker { };
@@ -5299,6 +5301,8 @@ in {
onnx = callPackage ../development/python-modules/onnx { };
+ oocsi = callPackage ../development/python-modules/oocsi { };
+
open-garage = callPackage ../development/python-modules/open-garage { };
openant = callPackage ../development/python-modules/openant { };
@@ -6360,6 +6364,8 @@ in {
pydy = callPackage ../development/python-modules/pydy { };
+ pydyf = callPackage ../development/python-modules/pydyf { };
+
pyechonest = callPackage ../development/python-modules/pyechonest { };
pyeclib = callPackage ../development/python-modules/pyeclib { };