Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-04-08 12:01:15 +00:00 committed by GitHub
commit 5d62f56bce
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
58 changed files with 1293 additions and 284 deletions

View File

@ -26,8 +26,8 @@ To create a new key without a passphrase you can do:
```ShellSession
$ ssh-keygen -t ed25519 -P '' -f example-key
Generating public/private ed25519 key pair.
Your identification has been saved in test-key
Your public key has been saved in test-key.pub
Your identification has been saved in example-key
Your public key has been saved in example-key.pub
The key fingerprint is:
SHA256:yjxl3UbTn31fLWeyLYTAKYJPRmzknjQZoyG8gSNEoIE my-user@workstation
```

View File

@ -513,6 +513,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- The `krb5` module has been rewritten and moved to `security.krb5`, moving all options but `security.krb5.enable` and `security.krb5.package` into `security.krb5.settings`.
- `services.soju` now has a wrapper for the `sojuctl` command, pointed at the service config file. It also has the new option `adminSocket.enable`, which creates a unix admin socket at `/run/soju/admin`.
- Gitea 1.21 upgrade has several breaking changes, including:
- Custom themes and other assets that were previously stored in `custom/public/*` now belong in `custom/public/assets/*`
- New instances of Gitea using MySQL now ignore the `[database].CHARSET` config option and always use the `utf8mb4` charset, existing instances should migrate via the `gitea doctor convert` CLI command.

View File

@ -40,6 +40,7 @@ in
"--"
cfg.lockerCommand
]);
serviceConfig.Restart = "always";
};
};
}

View File

@ -170,7 +170,7 @@ in {
breeze.qt5
plasma-integration.qt5
pkgs.plasma5Packages.kwayland-integration
pkgs.plasma5Packages.kio
(pkgs.plasma5Packages.kio.override { withKcms = false; })
kio-extras-kf5
]
# Optional hardware support features

View File

@ -5,7 +5,10 @@ with lib;
let
cfg = config.services.soju;
stateDir = "/var/lib/soju";
listenCfg = concatMapStringsSep "\n" (l: "listen ${l}") cfg.listen;
runtimeDir = "/run/soju";
listen = cfg.listen
++ optional cfg.adminSocket.enable "unix+admin://${runtimeDir}/admin";
listenCfg = concatMapStringsSep "\n" (l: "listen ${l}") listen;
tlsCfg = optionalString (cfg.tlsCertificate != null)
"tls ${cfg.tlsCertificate} ${cfg.tlsCertificateKey}";
logCfg = optionalString cfg.enableMessageLogging
@ -22,6 +25,10 @@ let
${cfg.extraConfig}
'';
sojuctl = pkgs.writeShellScriptBin "sojuctl" ''
exec ${cfg.package}/bin/sojuctl --config ${configFile} "$@"
'';
in
{
###### interface
@ -29,6 +36,8 @@ in
options.services.soju = {
enable = mkEnableOption (lib.mdDoc "soju");
package = mkPackageOption pkgs "soju" { };
listen = mkOption {
type = types.listOf types.str;
default = [ ":6697" ];
@ -66,6 +75,14 @@ in
description = lib.mdDoc "Whether to enable message logging.";
};
adminSocket.enable = mkOption {
type = types.bool;
default = true;
description = lib.mdDoc ''
Listen for admin connections from sojuctl at /run/soju/admin.
'';
};
httpOrigins = mkOption {
type = types.listOf types.str;
default = [];
@ -107,6 +124,8 @@ in
}
];
environment.systemPackages = [ sojuctl ];
systemd.services.soju = {
description = "soju IRC bouncer";
wantedBy = [ "multi-user.target" ];
@ -115,8 +134,9 @@ in
serviceConfig = {
DynamicUser = true;
Restart = "always";
ExecStart = "${pkgs.soju}/bin/soju -config ${configFile}";
ExecStart = "${cfg.package}/bin/soju -config ${configFile}";
StateDirectory = "soju";
RuntimeDirectory = "soju";
};
};
};

View File

@ -826,6 +826,7 @@ in {
soapui = handleTest ./soapui.nix {};
soft-serve = handleTest ./soft-serve.nix {};
sogo = handleTest ./sogo.nix {};
soju = handleTest ./soju.nix {};
solanum = handleTest ./solanum.nix {};
sonarr = handleTest ./sonarr.nix {};
sonic-server = handleTest ./sonic-server.nix {};

View File

@ -178,6 +178,14 @@ in {
"docker load --input='${examples.bashUncompressed}'",
"docker rmi ${examples.bashUncompressed.imageName}",
)
docker.succeed(
"docker load --input='${examples.bashLayeredUncompressed}'",
"docker rmi ${examples.bashLayeredUncompressed.imageName}",
)
docker.succeed(
"docker load --input='${examples.bashLayeredZstdCompressed}'",
"docker rmi ${examples.bashLayeredZstdCompressed.imageName}",
)
with subtest(
"Check if the nix store is correctly initialized by listing "

31
nixos/tests/soju.nix Normal file
View File

@ -0,0 +1,31 @@
import ./make-test-python.nix ({ pkgs, lib, ... }:
let
certs = import ./common/acme/server/snakeoil-certs.nix;
domain = certs.domain;
user = "testuser";
pass = "hunter2";
in
{
name = "soju";
meta.maintainers = with lib.maintainers; [ Benjamin-L ];
nodes.machine = { ... }: {
services.soju = {
enable = true;
adminSocket.enable = true;
hostName = domain;
tlsCertificate = certs.${domain}.cert;
tlsCertificateKey = certs.${domain}.key;
};
};
testScript = ''
start_all()
machine.wait_for_unit("soju")
machine.wait_for_file("/run/soju/admin")
machine.succeed("sojuctl user create -username ${user} -password ${pass}")
'';
})

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "openvi";
version = "7.4.27";
version = "7.5.28";
src = fetchFromGitHub {
owner = "johnsonjh";
repo = "OpenVi";
rev = version;
hash = "sha256-3cqe6woJvJt0ckI3aOhF0gARKy8VMCfWxIiiglkHBTo=";
hash = "sha256-6FP56tlPQXbphyJBDct5hBK81XsU6TJjKDZM4eHqitQ=";
};
buildInputs = [ ncurses perl ];

View File

@ -1,23 +1,41 @@
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config, makeWrapper, freetype, SDL2
, glib, pcre2, openal, rtmidi, fluidsynth, jack2, alsa-lib, qt5, libvncserver
, discord-gamesdk, libpcap, libslirp
{
stdenv,
lib,
fetchFromGitHub,
cmake,
pkg-config,
makeWrapper,
freetype,
SDL2,
glib,
pcre2,
openal,
rtmidi,
fluidsynth,
jack2,
alsa-lib,
qt5,
libvncserver,
discord-gamesdk,
libpcap,
libslirp,
, enableDynarec ? with stdenv.hostPlatform; isx86 || isAarch
, enableNewDynarec ? enableDynarec && stdenv.hostPlatform.isAarch
, enableVncRenderer ? false
, unfreeEnableDiscord ? false
, unfreeEnableRoms ? false
enableDynarec ? with stdenv.hostPlatform; isx86 || isAarch,
enableNewDynarec ? enableDynarec && stdenv.hostPlatform.isAarch,
enableVncRenderer ? false,
unfreeEnableDiscord ? false,
unfreeEnableRoms ? false,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "86Box";
version = "4.1";
version = "4.1.1";
src = fetchFromGitHub {
owner = "86Box";
repo = "86Box";
rev = "v${finalAttrs.version}";
hash = "sha256-JYOJFXiUTLRs6AEMYNx88PwcVw13ChQzV1ZE5OtX6Ds=";
hash = "sha256-ioE0EVIXv/biXXvLqwhmtZ/RJM0nLqcE+i+CU+WXBY4=";
};
nativeBuildInputs = [
@ -40,54 +58,54 @@ stdenv.mkDerivation (finalAttrs: {
libslirp
qt5.qtbase
qt5.qttools
] ++ lib.optional stdenv.isLinux alsa-lib
++ lib.optional enableVncRenderer libvncserver;
] ++ lib.optional stdenv.isLinux alsa-lib ++ lib.optional enableVncRenderer libvncserver;
cmakeFlags = lib.optional stdenv.isDarwin "-DCMAKE_MACOSX_BUNDLE=OFF"
cmakeFlags =
lib.optional stdenv.isDarwin "-DCMAKE_MACOSX_BUNDLE=OFF"
++ lib.optional enableNewDynarec "-DNEW_DYNAREC=ON"
++ lib.optional enableVncRenderer "-DVNC=ON"
++ lib.optional (!enableDynarec) "-DDYNAREC=OFF"
++ lib.optional (!unfreeEnableDiscord) "-DDISCORD=OFF";
postInstall = lib.optionalString stdenv.isLinux ''
install -Dm644 -t $out/share/applications $src/src/unix/assets/net.86box.86Box.desktop
postInstall =
lib.optionalString stdenv.isLinux ''
install -Dm644 -t $out/share/applications $src/src/unix/assets/net.86box.86Box.desktop
for size in 48 64 72 96 128 192 256 512; do
install -Dm644 -t $out/share/icons/hicolor/"$size"x"$size"/apps \
$src/src/unix/assets/"$size"x"$size"/net.86box.86Box.png
done;
''
+ lib.optionalString unfreeEnableRoms ''
mkdir -p $out/share/86Box
ln -s ${finalAttrs.passthru.roms} $out/share/86Box/roms
'';
for size in 48 64 72 96 128 192 256 512; do
install -Dm644 -t $out/share/icons/hicolor/"$size"x"$size"/apps \
$src/src/unix/assets/"$size"x"$size"/net.86box.86Box.png
done;
''
+ lib.optionalString unfreeEnableRoms ''
mkdir -p $out/share/86Box
ln -s ${finalAttrs.passthru.roms} $out/share/86Box/roms
'';
passthru = {
roms = fetchFromGitHub {
owner = "86Box";
repo = "roms";
rev = "v${finalAttrs.version}";
hash = "sha256-1HtoizO0QIGNjQTW0clzRp40h1ulw55+iTYz12UJSms=";
hash = "sha256-58nNTOLund/KeDlNwzwwihjFVigs/P0K8SN07zExE2c=";
};
};
# Some libraries are loaded dynamically, but QLibrary doesn't seem to search
# the runpath, so use a wrapper instead.
preFixup = let
libPath = lib.makeLibraryPath ([
libpcap
] ++ lib.optional unfreeEnableDiscord discord-gamesdk);
libPathVar = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
in ''
makeWrapperArgs+=(--prefix ${libPathVar} : "${libPath}")
'';
preFixup =
let
libPath = lib.makeLibraryPath ([ libpcap ] ++ lib.optional unfreeEnableDiscord discord-gamesdk);
libPathVar = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
in
''
makeWrapperArgs+=(--prefix ${libPathVar} : "${libPath}")
'';
meta = with lib; {
description = "Emulator of x86-based machines based on PCem.";
mainProgram = "86Box";
homepage = "https://86box.net/";
license = with licenses; [ gpl2Only ]
++ optional (unfreeEnableDiscord || unfreeEnableRoms) unfree;
license = with licenses; [ gpl2Only ] ++ optional (unfreeEnableDiscord || unfreeEnableRoms) unfree;
maintainers = [ maintainers.jchw ];
platforms = platforms.linux;
};

View File

@ -1,13 +1,13 @@
{ buildGoModule, lib, fetchFromGitHub }:
buildGoModule rec {
pname = "tfswitch";
version = "1.0.0";
version = "1.0.2";
src = fetchFromGitHub {
owner = "warrensbox";
repo = "terraform-switcher";
rev = version;
sha256 = "sha256-zUFnJCYh6XM0HiET45ZRa/ESS/n3XdYKkUJuLiDDRAg=";
sha256 = "sha256-Gp7+TEE7rmlabZhley/crpYZiqiKcc6uqSr6leZsmgU=";
};
vendorHash = "sha256-DsC9djgt7Er2m2TacUldpJP43jC0IBklPnu41Saf4DY=";

View File

@ -31,7 +31,23 @@ let
hash = "sha256-k19dQeXuPwggTfrsxL4oesExAz4tkT/GN6lt7sLU3Nk=";
};
python = python3;
# subpath installation is broken with uvicorn >= 0.26
# https://github.com/NixOS/nixpkgs/issues/298719
# https://github.com/paperless-ngx/paperless-ngx/issues/5494
python = python3.override {
packageOverrides = self: super: {
uvicorn = super.uvicorn.overridePythonAttrs (oldAttrs: {
version = "0.25.0";
src = fetchFromGitHub {
owner = "encode";
repo = "uvicorn";
rev = "0.25.0";
hash = "sha256-ng98DTw49zyFjrPnEwfnPfONyjKKZYuLl0qduxSppYk=";
};
});
};
};
path = lib.makeBinPath [
ghostscript

View File

@ -14,14 +14,11 @@
, ninja
, ant
, openjdk
, perl536Packages
, perl
, perlPackages
, makeWrapper
}:
let
# log says: polymake does not work with perl 5.37 or newer;
perlPackages = perl536Packages;
inherit (perlPackages) perl;
in
# polymake compiles its own version of sympol and atint because we
# don't have those packages. other missing optional dependencies:
# javaview, libnormaliz, scip, soplex, jreality.

View File

@ -517,7 +517,7 @@ rec {
buildLayeredImage = lib.makeOverridable ({ name, compressor ? "gz", ... }@args:
let
stream = streamLayeredImage args;
stream = streamLayeredImage (builtins.removeAttrs args ["compressor"]);
compress = compressorForImage compressor name;
in
runCommand "${baseNameOf name}.tar${compress.ext}"
@ -1287,7 +1287,7 @@ rec {
# Wrapper around streamNixShellImage to build an image from the result
buildNixShellImage = { drv, compressor ? "gz", ... }@args:
let
stream = streamNixShellImage args;
stream = streamNixShellImage (builtins.removeAttrs args ["compressor"]);
compress = compressorForImage compressor drv.name;
in
runCommand "${drv.name}-env.tar${compress.ext}"

View File

@ -509,7 +509,23 @@ rec {
contents = pkgs.bashInteractive;
};
# buildImage without explicit tag
# buildLayeredImage without compression
bashLayeredUncompressed = pkgs.dockerTools.buildLayeredImage {
name = "bash-layered-uncompressed";
tag = "latest";
compressor = "none";
contents = pkgs.bashInteractive;
};
# buildLayeredImage with zstd compression
bashLayeredZstdCompressed = pkgs.dockerTools.buildLayeredImage {
name = "bash-layered-zstd";
tag = "latest";
compressor = "zstd";
contents = pkgs.bashInteractive;
};
# streamLayeredImage without explicit tag
bashNoTagStreamLayered = pkgs.dockerTools.streamLayeredImage {
name = "bash-no-tag-stream-layered";
contents = pkgs.bashInteractive;

View File

@ -0,0 +1,26 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "charm-freeze";
version = "0.1.4";
src = fetchFromGitHub {
owner = "charmbracelet";
repo = "freeze";
rev = "v${version}";
hash = "sha256-ItcdgQUPrz2hpWS6nDYfnZaCdfocR3QgJTQ4TXzPQOw=";
};
vendorHash = "sha256-01tTr5NSyg52KGspYh9Rw98uQld6U+31Fy7jnyBoPx8=";
ldflags = [ "-s" "-w" "-X=main.Version=${version}" ];
meta = with lib; {
description = "A tool to generate images of code and terminal output";
mainProgram = "freeze";
homepage = "https://github.com/charmbracelet/freeze";
changelog = "https://github.com/charmbracelet/freeze/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ caarlos0 maaslalani ];
};
}

View File

@ -0,0 +1,50 @@
--- a/CMakeLists.txt 2023-02-01 23:55:18.171758209 +0100
+++ b/CMakeLists.txt 2023-02-02 19:32:16.574426531 +0100
@@ -23,25 +23,11 @@
set (VCFEVAL_AVAILABLE 0)
endif()
-execute_process(
- COMMAND ${CMAKE_SOURCE_DIR}/external/make_dependencies.sh
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
- RESULT_VARIABLE EXTERNAL_SUCCESS)
-if(NOT "${EXTERNAL_SUCCESS}" STREQUAL "0")
- message(FATAL_ERROR "Building external dependencies has failed")
-endif()
-
-set(Boost_USE_STATIC_LIBS ON) # only find static libs
set(Boost_USE_MULTITHREADED ON)
-set(Boost_USE_STATIC_RUNTIME ON)
# un-break library finding
-set(Boost_NO_BOOST_CMAKE ON)
-set(Boost_NO_SYSTEM_PATHS ON)
-set(BOOST_ROOT ${CMAKE_BINARY_DIR})
-message("Using our own Boost, which was built at ${HAPLOTYPES_SOURCE_DIR}/external/boost_install")
find_package(Boost 1.55.0 COMPONENTS thread iostreams regex unit_test_framework filesystem system program_options REQUIRED)
include_directories(${Boost_INCLUDE_DIRS})
@@ -51,7 +51,8 @@
link_directories (${CMAKE_BINARY_DIR}/lib)
# make sure we use the bundled zlib version
-set(ZLIB_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libz.a)
+# Additional flags for nix, found by trial and error
+set(ZLIB_LIBRARIES -lz -lbz2 -lcurl -lcrypto -llzma)
include_directories (${HAPLOTYPES_SOURCE_DIR}/external/klib)
include_directories (${HAPLOTYPES_SOURCE_DIR}/external/intervaltree)
@@ -84,11 +86,6 @@
${CMAKE_THREAD_LIBS_INIT})
-execute_process(COMMAND git describe --tags --always
- OUTPUT_VARIABLE HAPLOTYPES_VERSION
- WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
- OUTPUT_STRIP_TRAILING_WHITESPACE
-)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/src/c++/include/Version.hh.in"
"${CMAKE_BINARY_DIR}/include/Version.hh")

View File

@ -0,0 +1,92 @@
{
autoconf,
bcftools,
boost,
bzip2,
cmake,
curl,
fetchFromGitHub,
htslib,
lib,
makeWrapper,
perl,
python3,
rtg-tools,
samtools,
stdenv,
xz,
zlib,
}:
let
# Bcftools needs perl
runtime = [
bcftools
htslib
my-python
perl
samtools
];
my-python-packages =
p: with p; [
bx-python
pysam
pandas
psutil
scipy
];
my-python = python3.withPackages my-python-packages;
in
stdenv.mkDerivation rec {
pname = "hap.py";
version = "0.3.15";
src = fetchFromGitHub {
owner = "Illumina";
repo = pname;
rev = "v${version}";
sha256 = "sha256-K8XXhioMGMHw56MKvp0Eo8S6R36JczBzGRaBz035zRQ=";
};
# For illumina script
BOOST_ROOT = "${boost.out}";
ZLIBSTATIC = "${zlib.static}";
# For cmake : boost lib and includedir are in differernt location
BOOST_LIBRARYDIR = "${boost.out}/lib";
BOOST_INCLUDEDIR = "${boost.dev}/include";
patches = [
# Compatibility with nix for boost and library flags : zlib, bzip2, curl, crypto, lzma
./boost-library-flags.patch
# Update to python3
./python3.patch
];
nativeBuildInputs = [
autoconf
cmake
makeWrapper
];
buildInputs = [
boost
bzip2
curl
htslib
my-python
rtg-tools
xz
zlib
];
postFixup = ''
wrapProgram $out/bin/hap.py \
--set PATH ${lib.makeBinPath runtime} \
--add-flags "--engine-vcfeval-path=${rtg-tools}/bin/rtg"
'';
meta = with lib; {
description = "Compare genetics variants against a gold dataset";
homepage = "https://github.com/Illumina/hap.py";
license = licenses.bsd2;
maintainers = with maintainers; [ apraga ];
mainProgram = "hap.py";
};
}

View File

@ -0,0 +1,342 @@
diff --git a/src/c++/lib/tools/Roc.cpp b/src/c++/lib/tools/Roc.cpp
index fabe2be..2c6bb49 100644
--- a/src/c++/lib/tools/Roc.cpp
+++ b/src/c++/lib/tools/Roc.cpp
@@ -34,6 +34,9 @@
*/
#include "helpers/Roc.hh"
+#include <stdexcept>
+#include <limits>
+
#include <algorithm>
#include <cmath>
diff --git a/src/cmake/cxx.cmake b/src/cmake/cxx.cmake
old mode 100755
new mode 100644
diff --git a/src/python/Haplo/happyroc.py b/src/python/Haplo/happyroc.py
index 152bd18..e439957 100644
--- a/src/python/Haplo/happyroc.py
+++ b/src/python/Haplo/happyroc.py
@@ -97,7 +97,7 @@ def roc(roc_table, output_path,
header = l.split("\t")
else:
rec = {}
- for k, v in itertools.izip(header, l.split("\t")):
+ for k, v in zip(header, l.split("\t")):
rec[k] = v
if filter_handling:
@@ -160,11 +160,11 @@ def roc(roc_table, output_path,
if "all" not in result:
# minimal empty DF
- minidata = [{"Type": "SNP", "Subtype": "*", "Filter": "ALL", "Genotype": "*", "Subset": "*", "QQ": "*"} for _ in xrange(2)]
+ minidata = [{"Type": "SNP", "Subtype": "*", "Filter": "ALL", "Genotype": "*", "Subset": "*", "QQ": "*"} for _ in range(2)]
minidata[1]["Type"] = "INDEL"
result["all"] = pandas.DataFrame(minidata, columns=RESULT_ALLCOLUMNS)
for i, c in enumerate(RESULT_ALLCOLUMNS):
- result["all"][c] = result["all"][c].astype(RESULT_ALLDTYPES[i], raise_on_error=False)
+ result["all"][c] = result["all"][c].astype(RESULT_ALLDTYPES[i], errors="ignore")
for k, v in result.items():
result[k] = _postprocessRocData(pandas.DataFrame(v, columns=RESULT_ALLCOLUMNS))
diff --git a/src/python/Haplo/partialcredit.py b/src/python/Haplo/partialcredit.py
index d9e22bb..0f2b2cf 100644
--- a/src/python/Haplo/partialcredit.py
+++ b/src/python/Haplo/partialcredit.py
@@ -202,7 +202,7 @@ def partialCredit(vcfname,
try:
res = runParallel(pool,
preprocessWrapper,
- itertools.izip(itertools.repeat(vcfname), locations),
+ zip(itertools.repeat(vcfname), locations),
{"reference": reference,
"decompose": decompose,
"leftshift": leftshift,
diff --git a/src/python/Haplo/quantify.py b/src/python/Haplo/quantify.py
index 042d13e..b1d362e 100755
--- a/src/python/Haplo/quantify.py
+++ b/src/python/Haplo/quantify.py
@@ -152,7 +152,7 @@ def run_quantify(filename,
run_str += " -v %s" % pipes.quote(write_vcf)
if regions:
- for k, v in regions.iteritems():
+ for k, v in regions.items():
run_str += " -R '%s:%s'" % (k, v)
if roc_regions:
diff --git a/src/python/Somatic/Mutect.py b/src/python/Somatic/Mutect.py
index 7ac923c..81f08b5 100755
--- a/src/python/Somatic/Mutect.py
+++ b/src/python/Somatic/Mutect.py
@@ -148,7 +148,7 @@ def extractMutectSNVFeatures(vcfname, tag, avg_depth=None):
n_allele_alt_count = 0
else:
n_allele_alt_count = 0
- for a in xrange(0, len(alleles_alt)):
+ for a in range(0, len(alleles_alt)):
n_allele_alt_count += float(rec[n_sample + "AD"][a + 1])
if n_allele_alt_count + n_allele_ref_count == 0:
@@ -163,7 +163,7 @@ def extractMutectSNVFeatures(vcfname, tag, avg_depth=None):
t_allele_alt_count = 0
else:
t_allele_alt_count = 0
- for a in xrange(0, len(alleles_alt)):
+ for a in range(0, len(alleles_alt)):
t_allele_alt_count += float(rec[t_sample + "AD"][a + 1])
if t_allele_alt_count + t_allele_ref_count == 0:
@@ -344,7 +344,7 @@ def extractMutectIndelFeatures(vcfname, tag, avg_depth=None):
n_allele_alt_count = 0
else:
n_allele_alt_count = 0
- for a in xrange(0, len(alleles_alt)):
+ for a in range(0, len(alleles_alt)):
n_allele_alt_count += float(rec[n_sample + "AD"][a + 1])
if n_allele_alt_count + n_allele_ref_count == 0:
@@ -359,7 +359,7 @@ def extractMutectIndelFeatures(vcfname, tag, avg_depth=None):
t_allele_alt_count = 0
else:
t_allele_alt_count = 0
- for a in xrange(0, len(alleles_alt)):
+ for a in range(0, len(alleles_alt)):
t_allele_alt_count += float(rec[t_sample + "AD"][a + 1])
if t_allele_alt_count + t_allele_ref_count == 0:
diff --git a/src/python/Tools/bcftools.py b/src/python/Tools/bcftools.py
index 6146b7a..6d80d14 100755
--- a/src/python/Tools/bcftools.py
+++ b/src/python/Tools/bcftools.py
@@ -128,8 +128,8 @@ def concatenateParts(output, *args):
to_delete.append(tf2.name)
to_delete.append(tf1.name + ".csi")
to_delete.append(tf2.name + ".csi")
- half1 = [tf1.name] + list(args[:len(args)/2])
- half2 = [tf2.name] + list(args[len(args)/2:])
+ half1 = [tf1.name] + list(args[:len(args)//2])
+ half2 = [tf2.name] + list(args[len(args)//2:])
concatenateParts(*half1)
runBcftools("index", tf1.name)
concatenateParts(*half2)
diff --git a/src/python/Tools/metric.py b/src/python/Tools/metric.py
index 71ccc99..372626d 100755
--- a/src/python/Tools/metric.py
+++ b/src/python/Tools/metric.py
@@ -115,7 +115,7 @@ def replaceNaNs(xobject):
if type(xobject[k]) is dict or type(xobject[k]) is list or type(xobject[k]) is float:
xobject[k] = replaceNaNs(xobject[k])
elif type(xobject) is list:
- for k in xrange(0, len(xobject)):
+ for k in range(0, len(xobject)):
if type(xobject[k]) is dict or type(xobject[k]) is list or type(xobject[k]) is float:
xobject[k] = replaceNaNs(xobject[k])
elif type(xobject) is float:
diff --git a/src/python/Tools/parallel.py b/src/python/Tools/parallel.py
index 9d49760..5fcb37e 100755
--- a/src/python/Tools/parallel.py
+++ b/src/python/Tools/parallel.py
@@ -17,9 +17,9 @@ import logging
import traceback
import subprocess
import multiprocessing
-import cPickle
+import pickle
import tempfile
-from itertools import islice, izip, repeat
+from itertools import islice, repeat
from . import LoggingWriter
@@ -93,7 +93,7 @@ def runParallel(pool, fun, par, *args, **kwargs):
"""
if pool:
- result = pool.map(parMapper, izip(par, repeat( { "fun": fun, "args": args, "kwargs": kwargs } )))
+ result = pool.map(parMapper, zip(par, repeat( { "fun": fun, "args": args, "kwargs": kwargs } )))
else:
result = []
for c in par:
diff --git a/src/python/Tools/sessioninfo.py b/src/python/Tools/sessioninfo.py
index 75650ec..b49bf59 100644
--- a/src/python/Tools/sessioninfo.py
+++ b/src/python/Tools/sessioninfo.py
@@ -34,7 +34,6 @@ def sessionInfo():
'version': version,
'runInfo': [{"key": "commandline", "value": " ".join(sys.argv)}],
'uname': " / ".join(platform.uname()),
- 'dist': " / ".join(platform.dist()),
'mac_ver': " / ".join([platform.mac_ver()[0], platform.mac_ver()[2]]),
'python_implementation': platform.python_implementation(),
'python_version': platform.python_version(),
diff --git a/src/python/Tools/vcfcallerinfo.py b/src/python/Tools/vcfcallerinfo.py
index eb7e86e..947f2c4 100755
--- a/src/python/Tools/vcfcallerinfo.py
+++ b/src/python/Tools/vcfcallerinfo.py
@@ -33,8 +33,8 @@ class CallerInfo(object):
def asDict(self):
kvd = ["name", "version", "parameters"]
- return {"aligners": [dict(y for y in itertools.izip(kvd, x)) for x in self.aligners],
- "callers": [dict(y for y in itertools.izip(kvd, x)) for x in self.callers]}
+ return {"aligners": [dict(y for y in zip(kvd, x)) for x in self.aligners],
+ "callers": [dict(y for y in zip(kvd, x)) for x in self.callers]}
def addVCF(self, vcfname):
""" Add caller versions from a VCF
diff --git a/src/python/hap.py b/src/python/hap.py
index 8045936..93279a4 100755
--- a/src/python/hap.py
+++ b/src/python/hap.py
@@ -188,7 +188,7 @@ def main():
parser.print_help()
exit(1)
- print "Hap.py %s" % Tools.version
+ print("Hap.py %s" % Tools.version)
if args.version:
exit(0)
diff --git a/src/python/ovc.py b/src/python/ovc.py
index 2837255..20b4442 100755
--- a/src/python/ovc.py
+++ b/src/python/ovc.py
@@ -34,7 +34,7 @@ lines = 1
for line in f:
l = line.split("\t")
if len(l) > 3 and (last-1) > int(l[1]):
- print "Overlap at %s:%i (line %i)" % (l[0], int(l[1]), lines)
+ print(Overlap at %s:%i (line %i)) % (l[0], int(l[1]), lines)
exit(1)
elif len(l) > 3:
last = int(l[2])
diff --git a/src/python/pre.py b/src/python/pre.py
index 5ca1644..a37a4b2 100755
--- a/src/python/pre.py
+++ b/src/python/pre.py
@@ -47,8 +47,8 @@ import Haplo.partialcredit
def hasChrPrefix(chrlist):
""" returns if list of chr names has a chr prefix or not """
- noprefix = map(str, range(23)) + ["X", "Y", "MT"]
- withprefix = ["chr" + x for x in map(str, range(23)) + ["X", "Y", "M"]]
+ noprefix = [str(x) for x in range(23)] + ["X", "Y", "MT"]
+ withprefix = ["chr" + str(x) for x in range(23)] + ["X", "Y", "M"]
count_noprefix = len(list(set(noprefix) & set(chrlist)))
count_prefix = len(list(set(withprefix) & set(chrlist)))
@@ -126,7 +126,7 @@ def preprocess(vcf_input,
if gender == "auto":
logging.info(mf)
- if "female" in mf:
+ if b"female" in mf:
gender = "female"
else:
gender = "male"
@@ -392,7 +392,7 @@ def main():
exit(0)
if args.version:
- print "pre.py %s" % Tools.version # noqa:E999
+ print(pre.py %s) % Tools.version # noqa:E999
exit(0)
args.input = args.input[0]
diff --git a/src/python/qfy.py b/src/python/qfy.py
index 4f247ee..59ed68a 100755
--- a/src/python/qfy.py
+++ b/src/python/qfy.py
@@ -203,8 +203,8 @@ def quantify(args):
# in default mode, print result summary to stdout
if not args.quiet and not args.verbose:
- print "Benchmarking Summary:"
- print essential_numbers.to_string(index=False)
+ print("Benchmarking Summary:")
+ print(essential_numbers.to_string(index=False))
# keep this for verbose output
if not args.verbose:
@@ -213,12 +213,12 @@ def quantify(args):
except:
pass
- for t in res.iterkeys():
+ for t in res.keys():
metrics_output["metrics"].append(dataframeToMetricsTable("roc." + t, res[t]))
# gzip JSON output
if args.write_json:
with gzip.open(args.reports_prefix + ".metrics.json.gz", "w") as fp:
- json.dump(metrics_output, fp)
+ fp.write(json.dumps(metrics_output, default=np_encoder).encode('ascii'))
@@ -362,7 +363,7 @@ def main():
exit(0)
if args.version:
- print "qfy.py %s" % Tools.version
+ print(qfy.py %s) % Tools.version
exit(0)
if args.fp_bedfile and args.preprocessing_truth_confregions:
diff --git a/src/python/som.py b/src/python/som.py
index e942351..c01d522 100755
--- a/src/python/som.py
+++ b/src/python/som.py
@@ -640,7 +640,7 @@ def main():
"overlap):\n" + ambie.to_string(index=False))
# in default mode, print result summary to stdout
if not args.quiet and not args.verbose:
- print "FP/ambiguity classes with info (multiple classes can " \
+ print(FP/ambiguity classes with info (multiple classes can ) \
"overlap):\n" + ambie.to_string(index=False)
ambie.to_csv(args.output + ".ambiclasses.csv")
metrics_output["metrics"].append(dataframeToMetricsTable("ambiclasses", ambie))
@@ -659,7 +659,7 @@ def main():
formatters={'reason': '{{:<{}s}}'.format(ambie['reason'].str.len().max()).format}, index=False))
# in default mode, print result summary to stdout
if not args.quiet and not args.verbose:
- print "Reasons for defining as ambiguous (multiple reasons can overlap):\n" + ambie.to_string(
+ print(Reasons for defining as ambiguous (multiple reasons can overlap):\n) + ambie.to_string(
formatters={'reason': '{{:<{}s}}'.format(ambie['reason'].str.len().max()).format}, index=False)
ambie.to_csv(args.output + ".ambireasons.csv")
metrics_output["metrics"].append(dataframeToMetricsTable("ambireasons", ambie))
@@ -936,7 +936,7 @@ def main():
logging.info("\n" + res.to_string())
# in default mode, print result summary to stdout
if not args.quiet and not args.verbose:
- print "\n" + res.to_string()
+ print(\n) + res.to_string()
res["sompyversion"] = vstring
diff --git a/src/python/qfy.py b/src/python/qfy.py
index 59ed68a..be8d7e1 100755
--- a/src/python/qfy.py
+++ b/src/python/qfy.py
@@ -33,6 +33,7 @@ import pandas
import json
import tempfile
import gzip
+import numpy as np
scriptDir = os.path.abspath(os.path.dirname(os.path.realpath(__file__)))
sys.path.append(os.path.abspath(os.path.join(scriptDir, '..', 'lib', 'python27')))
@@ -45,6 +46,10 @@ import Haplo.happyroc
import Haplo.gvcf2bed
from Tools import fastasize
+# Cannot convert data to json without a custom enconder
+def np_encoder(object):
+ if isinstance(object, np.generic):
+ return object.item()
def quantify(args):
""" Run quantify and write tables """

View File

@ -11,12 +11,12 @@
}:
flutter.buildFlutterApplication rec {
pname = "intiface-central";
version = "2.5.3";
version = "2.5.6";
src = fetchFromGitHub {
owner = "intiface";
repo = pname;
rev = "v${version}";
hash = "sha256-i0G3wCfJ9Q7DEmVMrQv2K6fy4YRWsEMNns9zMZkJxvY=";
hash = "sha256-EcOFiaWqljNZIvsCkhuCEChEC51ERxM74EYE6u7Q4U8=";
};
patches = [
./corrosion.patch
@ -28,7 +28,7 @@ flutter.buildFlutterApplication rec {
name = "${pname}-${version}-cargo-deps";
inherit src;
sourceRoot = "${src.name}/intiface-engine-flutter-bridge";
hash = "sha256-0sCHa3rMaLYaUG3E3fmsLi0dSdb9vGyv7qNR3JQkXuU=";
hash = "sha256-tkJcwT2lt8+FT9GZ0ROrm1jkOxoq875O3wZkgZl22r4=";
};
cargoRoot = "intiface-engine-flutter-bridge";

View File

@ -24,11 +24,11 @@
"dependency": "transitive",
"description": {
"name": "archive",
"sha256": "7e0d52067d05f2e0324268097ba723b71cb41ac8a6a2b24d1edf9c536b987b03",
"sha256": "7b875fd4a20b165a3084bd2d210439b22ebc653f21cea4842729c0c30c82596b",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.4.6"
"version": "3.4.9"
},
"args": {
"dependency": "transitive",
@ -54,11 +54,11 @@
"dependency": "direct main",
"description": {
"name": "bloc",
"sha256": "3820f15f502372d979121de1f6b97bfcf1630ebff8fe1d52fb2b0bfa49be5b49",
"sha256": "f53a110e3b48dcd78136c10daa5d51512443cea5e1348c9d80a320095fa2db9e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "8.1.2"
"version": "8.1.3"
},
"boolean_selector": {
"dependency": "transitive",
@ -104,11 +104,11 @@
"dependency": "transitive",
"description": {
"name": "build_daemon",
"sha256": "5f02d73eb2ba16483e693f80bee4f088563a820e47d1027d4cdfe62b5bb43e65",
"sha256": "0343061a33da9c5810b2d6cee51945127d8f4c060b7fbdd9d54917f0a3feaaa1",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "4.0.0"
"version": "4.0.1"
},
"build_resolvers": {
"dependency": "transitive",
@ -154,11 +154,11 @@
"dependency": "transitive",
"description": {
"name": "built_value",
"sha256": "a8de5955205b4d1dbbbc267daddf2178bd737e4bab8987c04a500478c9651e74",
"sha256": "723b4021e903217dfc445ec4cf5b42e27975aece1fc4ebbc1ca6329c2d9fb54e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "8.6.3"
"version": "8.7.0"
},
"buttplug": {
"dependency": "direct main",
@ -274,11 +274,11 @@
"dependency": "transitive",
"description": {
"name": "dbus",
"sha256": "6f07cba3f7b3448d42d015bfd3d53fe12e5b36da2423f23838efc1d5fb31a263",
"sha256": "365c771ac3b0e58845f39ec6deebc76e3276aa9922b0cc60840712094d9047ac",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.7.8"
"version": "0.7.10"
},
"device_info_plus": {
"dependency": "direct main",
@ -410,11 +410,11 @@
"dependency": "direct dev",
"description": {
"name": "flutter_lints",
"sha256": "ad76540d21c066228ee3f9d1dad64a9f7e46530e8bb7c85011a88bc1fd874bc5",
"sha256": "e2a421b7e59244faef694ba7b30562e489c2b489866e505074eb005cd7060db7",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.0"
"version": "3.0.1"
},
"flutter_local_notifications": {
"dependency": "direct main",
@ -460,21 +460,31 @@
"dependency": "direct main",
"description": {
"name": "flutter_markdown",
"sha256": "8afc9a6aa6d8e8063523192ba837149dbf3d377a37c0b0fc579149a1fbd4a619",
"sha256": "35108526a233cc0755664d445f8a6b4b61e6f8fe993b3658b80b4a26827fc196",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.6.18"
"version": "0.6.18+2"
},
"flutter_rust_bridge": {
"dependency": "direct main",
"description": {
"name": "flutter_rust_bridge",
"sha256": "e12415c3bce49bcbc3fed383f0ea41ad7d828f6cf0eccba0588ffa5a812fe522",
"sha256": "02720226035257ad0b571c1256f43df3e1556a499f6bcb004849a0faaa0e87f0",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.82.1"
"version": "1.82.6"
},
"flutter_spinkit": {
"dependency": "direct main",
"description": {
"name": "flutter_spinkit",
"sha256": "b39c753e909d4796906c5696a14daf33639a76e017136c8d82bf3e620ce5bb8e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "5.2.0"
},
"flutter_test": {
"dependency": "direct dev",
@ -502,11 +512,11 @@
"dependency": "direct main",
"description": {
"name": "github",
"sha256": "e20582edb07b859cc226ab2fd64fd246f7cdcbfc7098f46e241c03deb81b5682",
"sha256": "45d7ffc34f4958b8f9910175e10fc00f976ad0b44ca5ee06fcfd7269a2dbb77f",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "9.19.0"
"version": "9.20.0"
},
"glob": {
"dependency": "transitive",
@ -618,6 +628,36 @@
"source": "hosted",
"version": "6.7.1"
},
"leak_tracker": {
"dependency": "transitive",
"description": {
"name": "leak_tracker",
"sha256": "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "10.0.0"
},
"leak_tracker_flutter_testing": {
"dependency": "transitive",
"description": {
"name": "leak_tracker_flutter_testing",
"sha256": "b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.1"
},
"leak_tracker_testing": {
"dependency": "transitive",
"description": {
"name": "leak_tracker_testing",
"sha256": "a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.1"
},
"lints": {
"dependency": "transitive",
"description": {
@ -662,31 +702,31 @@
"dependency": "transitive",
"description": {
"name": "matcher",
"sha256": "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e",
"sha256": "d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.12.16"
"version": "0.12.16+1"
},
"material_color_utilities": {
"dependency": "transitive",
"description": {
"name": "material_color_utilities",
"sha256": "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41",
"sha256": "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.5.0"
"version": "0.8.0"
},
"meta": {
"dependency": "transitive",
"description": {
"name": "meta",
"sha256": "a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e",
"sha256": "d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.10.0"
"version": "1.11.0"
},
"mime": {
"dependency": "transitive",
@ -698,6 +738,16 @@
"source": "hosted",
"version": "1.0.4"
},
"multicast_dns": {
"dependency": "direct main",
"description": {
"name": "multicast_dns",
"sha256": "316cc47a958d4bd3c67bd238fe8b44fdfb6133bad89cb191c0c3bd3edb14e296",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.3.2+6"
},
"nested": {
"dependency": "transitive",
"description": {
@ -752,11 +802,11 @@
"dependency": "direct main",
"description": {
"name": "package_info_plus",
"sha256": "7e76fad405b3e4016cd39d08f455a4eb5199723cf594cd1b8916d47140d93017",
"sha256": "88bc797f44a94814f2213db1c9bd5badebafdfb8290ca9f78d4b9ee2a3db4d79",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "4.2.0"
"version": "5.0.1"
},
"package_info_plus_platform_interface": {
"dependency": "transitive",
@ -772,11 +822,11 @@
"dependency": "direct main",
"description": {
"name": "path",
"sha256": "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917",
"sha256": "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.8.3"
"version": "1.9.0"
},
"path_provider": {
"dependency": "direct main",
@ -792,11 +842,11 @@
"dependency": "transitive",
"description": {
"name": "path_provider_android",
"sha256": "6b8b19bd80da4f11ce91b2d1fb931f3006911477cec227cce23d3253d80df3f1",
"sha256": "e595b98692943b4881b219f0a9e3945118d3c16bd7e2813f98ec6e532d905f72",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.2.0"
"version": "2.2.1"
},
"path_provider_foundation": {
"dependency": "transitive",
@ -902,11 +952,11 @@
"dependency": "transitive",
"description": {
"name": "petitparser",
"sha256": "cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750",
"sha256": "eeb2d1428ee7f4170e2bd498827296a18d4e7fc462b71727d111c0ac7707cfa6",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "5.4.0"
"version": "6.0.1"
},
"platform": {
"dependency": "transitive",
@ -922,11 +972,11 @@
"dependency": "direct main",
"description": {
"name": "plugin_platform_interface",
"sha256": "da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d",
"sha256": "f4f88d4a900933e7267e2b353594774fc0d07fb072b47eedcd5b54e1ea3269f8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.1.6"
"version": "2.1.7"
},
"pointycastle": {
"dependency": "transitive",
@ -952,11 +1002,11 @@
"dependency": "transitive",
"description": {
"name": "provider",
"sha256": "cdbe7530b12ecd9eb455bdaa2fcb8d4dad22e80b8afb4798b41479d5ce26847f",
"sha256": "9a96a0a19b594dbc5bf0f1f27d2bc67d5f95957359b461cd9feb44ed6ae75096",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.0.5"
"version": "6.1.1"
},
"pub_semver": {
"dependency": "transitive",
@ -982,11 +1032,11 @@
"dependency": "transitive",
"description": {
"name": "puppeteer",
"sha256": "59e723cc5b69537159a7c34efd645dc08a6a1ac4647d7d7823606802c0f93cdb",
"sha256": "eedeaae6ec5d2e54f9ae22ab4d6b3dda2e8791c356cc783046d06c287ffe11d8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.2.0"
"version": "3.6.0"
},
"quiver": {
"dependency": "transitive",
@ -1022,21 +1072,21 @@
"dependency": "direct main",
"description": {
"name": "sentry",
"sha256": "830667eadc0398fea3a3424ed1b74568e2db603a42758d0922e2f2974ce55a60",
"sha256": "a460aa48568d47140dd0557410b624d344ffb8c05555107ac65035c1097cf1ad",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "7.10.1"
"version": "7.18.0"
},
"sentry_flutter": {
"dependency": "direct main",
"description": {
"name": "sentry_flutter",
"sha256": "6730f41b304c6fb0fa590dacccaf73ba11082fc64b274cfe8a79776f2b95309c",
"sha256": "3d0d1d4e0e407d276ae8128d123263ccbc37e988bae906765efd6f37d544f4c6",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "7.10.1"
"version": "7.18.0"
},
"settings_ui": {
"dependency": "direct main",
@ -1102,11 +1152,11 @@
"dependency": "transitive",
"description": {
"name": "shared_preferences_web",
"sha256": "d762709c2bbe80626ecc819143013cc820fa49ca5e363620ee20a8b15a3e3daf",
"sha256": "7b15ffb9387ea3e237bb7a66b8a23d2147663d391cafc5c8f37b2e7b4bde5d21",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.2.1"
"version": "2.2.2"
},
"shared_preferences_windows": {
"dependency": "transitive",
@ -1184,6 +1234,16 @@
"source": "hosted",
"version": "1.10.0"
},
"sprintf": {
"dependency": "transitive",
"description": {
"name": "sprintf",
"sha256": "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "7.0.0"
},
"stack_trace": {
"dependency": "transitive",
"description": {
@ -1288,91 +1348,91 @@
"dependency": "direct main",
"description": {
"name": "url_launcher",
"sha256": "47e208a6711459d813ba18af120d9663c20bdf6985d6ad39fe165d2538378d27",
"sha256": "b1c9e98774adf8820c96fbc7ae3601231d324a7d5ebd8babe27b6dfac91357ba",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.1.14"
"version": "6.2.1"
},
"url_launcher_android": {
"dependency": "transitive",
"description": {
"name": "url_launcher_android",
"sha256": "b04af59516ab45762b2ca6da40fa830d72d0f6045cd97744450b73493fa76330",
"sha256": "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.1.0"
"version": "6.2.0"
},
"url_launcher_ios": {
"dependency": "transitive",
"description": {
"name": "url_launcher_ios",
"sha256": "7c65021d5dee51813d652357bc65b8dd4a6177082a9966bc8ba6ee477baa795f",
"sha256": "bba3373219b7abb6b5e0d071b0fe66dfbe005d07517a68e38d4fc3638f35c6d3",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.1.5"
"version": "6.2.1"
},
"url_launcher_linux": {
"dependency": "transitive",
"description": {
"name": "url_launcher_linux",
"sha256": "b651aad005e0cb06a01dbd84b428a301916dc75f0e7ea6165f80057fee2d8e8e",
"sha256": "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.6"
"version": "3.1.0"
},
"url_launcher_macos": {
"dependency": "transitive",
"description": {
"name": "url_launcher_macos",
"sha256": "b55486791f666e62e0e8ff825e58a023fd6b1f71c49926483f1128d3bbd8fe88",
"sha256": "b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.7"
"version": "3.1.0"
},
"url_launcher_platform_interface": {
"dependency": "transitive",
"description": {
"name": "url_launcher_platform_interface",
"sha256": "95465b39f83bfe95fcb9d174829d6476216f2d548b79c38ab2506e0458787618",
"sha256": "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.1.5"
"version": "2.2.0"
},
"url_launcher_web": {
"dependency": "transitive",
"description": {
"name": "url_launcher_web",
"sha256": "2942294a500b4fa0b918685aff406773ba0a4cd34b7f42198742a94083020ce5",
"sha256": "7fd2f55fe86cea2897b963e864dc01a7eb0719ecc65fcef4c1cc3d686d718bb2",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.20"
"version": "2.2.0"
},
"url_launcher_windows": {
"dependency": "transitive",
"description": {
"name": "url_launcher_windows",
"sha256": "95fef3129dc7cfaba2bc3d5ba2e16063bb561fc6d78e63eee16162bc70029069",
"sha256": "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.8"
"version": "3.1.0"
},
"uuid": {
"dependency": "transitive",
"description": {
"name": "uuid",
"sha256": "648e103079f7c64a36dc7d39369cabb358d377078a051d6ae2ad3aa539519313",
"sha256": "cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.7"
"version": "4.3.3"
},
"vector_math": {
"dependency": "transitive",
@ -1394,6 +1454,16 @@
"source": "hosted",
"version": "3.0.2"
},
"vm_service": {
"dependency": "transitive",
"description": {
"name": "vm_service",
"sha256": "b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "13.0.0"
},
"watcher": {
"dependency": "transitive",
"description": {
@ -1428,11 +1498,11 @@
"dependency": "transitive",
"description": {
"name": "win32",
"sha256": "350a11abd2d1d97e0cc7a28a81b781c08002aa2864d9e3f192ca0ffa18b06ed3",
"sha256": "7c99c0e1e2fa190b48d25c81ca5e42036d5cac81430ef249027d97b0935c553f",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "5.0.9"
"version": "5.1.0"
},
"win32_registry": {
"dependency": "transitive",
@ -1468,11 +1538,11 @@
"dependency": "transitive",
"description": {
"name": "xml",
"sha256": "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84",
"sha256": "af5e77e9b83f2f4adc5d3f0a4ece1c7f45a2467b695c2540381bac793e34e556",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.3.0"
"version": "6.4.2"
},
"yaml": {
"dependency": "transitive",
@ -1496,7 +1566,7 @@
}
},
"sdks": {
"dart": ">=3.2.0-194.0.dev <4.0.0",
"flutter": ">=3.13.0"
"dart": ">=3.2.0 <4.0.0",
"flutter": ">=3.16.0"
}
}

View File

@ -6,6 +6,59 @@
(fetchNuGet { pname = "ConsoleMenu-simple"; version = "2.6.1"; sha256 = "1vbi77schslq3nsardm4v8mrk0zi0phczwm2np1bl9z7c84h5cym"; })
(fetchNuGet { pname = "Crc32.NET"; version = "1.2.0"; sha256 = "0qaj3192k1vfji87zf50rhydn5mrzyzybrs2k4v7ap29k8i0vi5h"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
(fetchNuGet { pname = "NETStandard.Library"; version = "2.0.0"; sha256 = "1bc4ba8ahgk15m8k4nd7x406nhi0kwqzbgjk2dmw52ss553xz7iy"; })
(fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.3"; sha256 = "0xrwysmrn4midrjal8g2hr1bbg38iyisl0svamb11arqws4w2bw7"; })
(fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
(fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "00j6nv2xgmd3bi347k00m7wr542wjlig53rmj28pmw7ddcn97jbn"; })
(fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x"; })
(fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x"; })
(fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly"; })
(fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf"; })
(fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl"; })
(fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b"; })
(fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x"; })
(fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19"; })
(fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3"; })
(fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "0lqhgqi0i8194ryqq6v2gqx0fb86db2gqknbm0aq31wb378j7ip8"; })
(fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va"; })
(fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
(fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
(fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa"; })
(fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4"; })
(fetchNuGet { pname = "runtime.native.System.IO.Compression"; version = "4.3.0"; sha256 = "1vvivbqsk6y4hzcid27pqpm5bsi6sc50hvqwbcx8aap5ifrxfs8d"; })
(fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97"; })
(fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3"; })
(fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf"; })
(fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3"; })
(fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn"; })
(fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; })
(fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; })
(fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
(fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5"; })
(fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.3.0"; sha256 = "14nbkhvs7sji5r1saj2x8daz82rnf9kx28d3v2qss34qbr32dzix"; })
(fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
(fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
(fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
(fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
(fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
(fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
(fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
(fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
(fetchNuGet { pname = "System.IO.Compression"; version = "4.3.0"; sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz"; })
(fetchNuGet { pname = "System.IO.Compression.ZipFile"; version = "4.3.0"; sha256 = "1yxy5pq4dnsm9hlkg9ysh5f6bf3fahqqb6p8668ndy5c0lk7w2ar"; })
(fetchNuGet { pname = "System.IO.FileSystem"; version = "4.3.0"; sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw"; })
(fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.3.0"; sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c"; })
(fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; })
(fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
(fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; })
(fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
(fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
(fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
(fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
(fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
(fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
(fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
(fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
(fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
]

View File

@ -12,13 +12,13 @@
buildDotnetModule rec {
pname = "pupdate";
version = "3.9.1";
version = "3.10.1";
src = fetchFromGitHub {
owner = "mattpannella";
repo = "${pname}";
rev = "${version}";
hash = "sha256-3Bts/jTyivZ+ch7UjFo3oGVRmVK2QhCYh8NkeQhDYDY=";
hash = "sha256-xr5XD0V3kt4fDm8GNotGuttAeWwwlAr2iFA/RezvC4w=";
};
buildInputs = [

View File

@ -0,0 +1,58 @@
{ lib
, stdenv
, python3
, fetchFromGitHub
, makeWrapper
, gdb
}:
let
pwndbg-py = python3.pkgs.pwndbg;
pythonPath = python3.pkgs.makePythonPath [ pwndbg-py ];
binPath = lib.makeBinPath ([
python3.pkgs.pwntools # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/wrappers/checksec.py#L8
] ++ lib.optionals stdenv.isLinux [
python3.pkgs.ropper # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/commands/ropper.py#L30
python3.pkgs.ropgadget # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/commands/rop.py#L32
]);
in
stdenv.mkDerivation rec {
pname = "pwndbg";
version = lib.getVersion pwndbg-py;
format = "other";
inherit (pwndbg-py) src;
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
runHook preInstall
mkdir -p $out/share/pwndbg
cp gdbinit.py $out/share/pwndbg
chmod +x $out/share/pwndbg/gdbinit.py
# Don't require an in-package venv
touch $out/share/pwndbg/.skip-venv
makeWrapper ${gdb}/bin/gdb $out/bin/pwndbg \
--add-flags "-q -x $out/share/pwndbg/gdbinit.py" \
--prefix PATH : ${binPath} \
--set PYTHONPATH ${pythonPath} \
runHook postInstall
'';
meta = with lib; {
description = "Exploit Development and Reverse Engineering with GDB Made Easy";
mainProgram = "pwndbg";
homepage = "https://github.com/pwndbg/pwndbg";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ mic92 patryk4815 msanft ];
# not supported on aarch64-darwin see: https://inbox.sourceware.org/gdb/3185c3b8-8a91-4beb-a5d5-9db6afb93713@Spark/
broken = stdenv.isDarwin && stdenv.isAarch64;
};
}

View File

@ -0,0 +1,46 @@
{
stdenv,
lib,
autoreconfHook,
fetchFromGitHub,
autoconf-archive,
pkg-config,
openssl,
tpm2-tss,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "tpm2-openssl";
version = "1.2.0";
src = fetchFromGitHub {
owner = "tpm2-software";
repo = "tpm2-openssl";
rev = finalAttrs.version;
hash = "sha256-mZ4Z/GxJFwwfyFd1SAiVlQqOjkFSzsZePeuEZtq8Mcg=";
};
nativeBuildInputs = [
autoreconfHook
autoconf-archive
pkg-config
];
buildInputs = [
openssl
tpm2-tss
];
configureFlags = [ "--with-modulesdir=$$out/lib/ossl-modules" ];
postPatch = ''
echo ${finalAttrs.version} > VERSION
'';
meta = with lib; {
description = "OpenSSL Provider for TPM2 integration";
homepage = "https://github.com/tpm2-software/tpm2-openssl";
license = licenses.bsd3;
maintainers = with maintainers; [ stv0g ];
platforms = platforms.linux;
};
})

View File

@ -32,6 +32,7 @@ let
"mips" = "mips";
"mips64el" = "mips64le";
"mipsel" = "mipsle";
"powerpc64" = "ppc64";
"powerpc64le" = "ppc64le";
"riscv64" = "riscv64";
"s390x" = "s390x";

View File

@ -32,6 +32,7 @@ let
"mips" = "mips";
"mips64el" = "mips64le";
"mipsel" = "mipsle";
"powerpc64" = "ppc64";
"powerpc64le" = "ppc64le";
"riscv64" = "riscv64";
"s390x" = "s390x";

View File

@ -0,0 +1,35 @@
{ lib
, stdenv
, cmake
, fetchFromGitHub
, fixDarwinDylibNames
}:
stdenv.mkDerivation rec {
pname = "capstone";
version = "4.0.2";
src = fetchFromGitHub {
owner = "capstone-engine";
repo = "capstone";
rev = version;
sha256 = "sha256-XMwQ7UaPC8YYu4yxsE4bbR3leYPfBHu5iixSLz05r3g=";
};
nativeBuildInputs = [
cmake
] ++ lib.optionals stdenv.isDarwin [
fixDarwinDylibNames
];
doCheck = true;
meta = {
description = "Advanced disassembly library";
homepage = "http://www.capstone-engine.org";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ thoughtpolice ris ];
mainProgram = "cstool";
platforms = lib.platforms.unix;
};
}

View File

@ -7,15 +7,17 @@
stdenv.mkDerivation rec {
pname = "capstone";
version = "4.0.2";
version = "5.0.1";
src = fetchFromGitHub {
owner = "aquynh";
owner = "capstone-engine";
repo = "capstone";
rev = version;
sha256 = "sha256-XMwQ7UaPC8YYu4yxsE4bbR3leYPfBHu5iixSLz05r3g=";
sha256 = "sha256-kKmL5sae9ruWGu1gas1mel9qM52qQOD+zLj8cRE3isg=";
};
cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
nativeBuildInputs = [
cmake
] ++ lib.optionals stdenv.isDarwin [

View File

@ -80,13 +80,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "gdal";
version = "3.8.4";
version = "3.8.5";
src = fetchFromGitHub {
owner = "OSGeo";
repo = "gdal";
rev = "v${finalAttrs.version}";
hash = "sha256-R9VLof13OXPbWGHOG1Q4WZWSPoF739C6WuNWxoIwKTw=";
hash = "sha256-Z+mYlyOX9vJ772qwZMQfCbD/V7RL6+9JLHTzoZ55ot0=";
};
patches = [

View File

@ -1,11 +1,12 @@
{
stdenv, lib, mkDerivation, fetchpatch,
stdenv, lib, mkDerivation,
extra-cmake-modules, kdoctools, qttools,
acl, attr, libkrb5, util-linux,
karchive, kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons,
kdbusaddons, ki18n, kiconthemes, kitemviews, kjobwidgets, knotifications,
kservice, ktextwidgets, kwallet, kwidgetsaddons, kwindowsystem, kxmlgui,
qtbase, qtscript, qtx11extras, solid, kcrash, kded
qtbase, qtscript, qtx11extras, solid, kcrash, kded,
withKcms ? true
}:
mkDerivation {
@ -29,7 +30,11 @@ mkDerivation {
separateDebugInfo = true;
patches = [
./0001-Remove-impure-smbd-search-path.patch
];
];
postPatch = lib.optionalString (!withKcms) ''
substituteInPlace src/CMakeLists.txt \
--replace-fail "add_subdirectory(kcms)" ""
'';
meta = {
homepage = "https://api.kde.org/frameworks/kio/html/";
};

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "axis";
version = "60";
version = "61";
pyproject = true;
disabled = pythonOlder "3.11";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "Kane610";
repo = "axis";
rev = "refs/tags/v${version}";
hash = "sha256-MBiifETNfWq3TYCGPETDreiMZsrUdb79QvTG5wbVMJU=";
hash = "sha256-YiEY+Eu1j42bBzM4f5Ku5mAE2/tY9f+Hyb2DS6LIW7c=";
};
postPatch = ''

View File

@ -0,0 +1,40 @@
{ lib
, buildPythonPackage
, capstone_4
, stdenv
, setuptools
, pythonAtLeast
}:
buildPythonPackage {
pname = "capstone";
inherit (capstone_4) version src;
sourceRoot = "source/bindings/python";
postPatch = ''
ln -s ${capstone_4}/lib/libcapstone${stdenv.targetPlatform.extensions.sharedLibrary} prebuilt/
ln -s ${capstone_4}/lib/libcapstone${stdenv.targetPlatform.extensions.staticLibrary} prebuilt/
substituteInPlace setup.py --replace manylinux1 manylinux2014
'';
# aarch64 only available from MacOS SDK 11 onwards, so fix the version tag.
# otherwise, bdist_wheel may detect "macosx_10_6_arm64" which doesn't make sense.
setupPyBuildFlags = lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ "--plat-name" "macosx_11_0" ];
propagatedBuildInputs = [ setuptools ];
checkPhase = ''
mv capstone capstone.hidden
patchShebangs test_*
make check
'';
meta = with lib; {
homepage = "http://www.capstone-engine.org/";
license = licenses.bsdOriginal;
description = "Python bindings for Capstone disassembly engine";
maintainers = with maintainers; [ bennofs ris ];
broken = pythonAtLeast "3.12"; # uses distutils
};
}

View File

@ -17,9 +17,11 @@ buildPythonPackage rec {
src = capstone.src;
sourceRoot = "${src.name}/bindings/python";
# libcapstone.a is not built with BUILD_SHARED_LIBS. For some reason setup.py
# checks if it exists but it is not really needed. Most likely a bug in setup.py.
postPatch = ''
ln -s ${capstone}/lib/libcapstone${stdenv.targetPlatform.extensions.sharedLibrary} prebuilt/
ln -s ${capstone}/lib/libcapstone.a prebuilt/
touch prebuilt/libcapstone${stdenv.targetPlatform.extensions.staticLibrary}
substituteInPlace setup.py --replace manylinux1 manylinux2014
'';

View File

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "crytic-compile";
version = "0.3.6";
version = "0.3.7";
format = "setuptools";
disabled = pythonOlder "3.8";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "crytic";
repo = "crytic-compile";
rev = "refs/tags/${version}";
hash = "sha256-dQynnILHt6YO5qtvVVwcxRwtBJgokyfsQ5ubH15dkuA=";
hash = "sha256-SMkFzGZg/6akclQ0XLUvjK3uoypsHfRru+B4VurjOrM=";
};
propagatedBuildInputs = [

View File

@ -7,7 +7,7 @@
buildPythonPackage rec {
pname = "django-vite";
version = "3.0.3";
version = "3.0.4";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -16,7 +16,7 @@ buildPythonPackage rec {
owner = "MrBin99";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-FH42auBm/YRfGgjL9TGQLed/p0P8POb7DOLmpUK1d9c=";
hash = "sha256-rIT4WA45v353vSV56fBOa0euiuwnXWmhbxniAWPAkMo=";
};
propagatedBuildInputs = [

View File

@ -0,0 +1,29 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, poetry-core
}:
buildPythonPackage rec {
pname = "gdb-pt-dump";
version = "0-unstable-2024-04-01";
pyproject = true;
src = fetchFromGitHub {
owner = "martinradev";
repo = "gdb-pt-dump";
rev = "50227bda0b6332e94027f811a15879588de6d5cb";
hash = "sha256-yiP3KY1oDwhy9DmNQEht/ryys9vpgkFS+EJcSA6R+cI=";
};
build-system = [ poetry-core ];
pythonImportsCheck = [ "pt" ];
meta = with lib; {
description = "GDB script to enhance debugging of a QEMU-based virtual machine";
homepage = "https://github.com/martinradev/gdb-pt-dump";
license = licenses.mit;
maintainers = with maintainers; [ msanft ];
};
}

View File

@ -0,0 +1,80 @@
{ lib
, stdenv
, buildPythonPackage
, fetchFromGitHub
, capstone
, future
, ipython
, psutil
, pwntools
, pycparser
, pyelftools
, pygments
, requests
, rpyc
, sortedcontainers
, tabulate
, typing-extensions
, unicorn
, gdb-pt-dump
, poetry-core
, pythonRelaxDepsHook
}:
let
# The newest gdb-pt-dump is incompatible with pwndbg 2024.02.14.
# See https://github.com/martinradev/gdb-pt-dump/issues/29
gdb-pt-dump' = gdb-pt-dump.overrideAttrs (oldAttrs: {
version = "0-unstable-2023-11-11";
src = fetchFromGitHub {
inherit (oldAttrs.src) owner repo;
rev = "89ea252f6efc5d75eacca16fc17ff8966a389690";
hash = "sha256-i+SAcZ/kgfKstJnkyCVMh/lWtrJJOHTYoJH4tVfYHrE=";
};
# This revision relies on the package being imported from within GDB, which
# won't work with pythonImportsCheck.
pythonImportsCheck = [ ];
});
in
buildPythonPackage rec {
pname = "pwndbg";
version = "2024.02.14";
pyproject = true;
src = fetchFromGitHub {
owner = "pwndbg";
repo = "pwndbg";
rev = version;
hash = "sha256-/pDo2J5EtpWWCurD7H34AlTlQi7WziIRRxHxGm3K2yk=";
};
nativeBuildInputs = [ poetry-core pythonRelaxDepsHook ];
pythonRelaxDeps = true;
propagatedBuildInputs = [
capstone
future
ipython
psutil
pwntools
pycparser
pyelftools
pygments
requests
rpyc
sortedcontainers
tabulate
typing-extensions
unicorn
gdb-pt-dump'
];
meta = {
description = "Exploit Development and Reverse Engineering with GDB Made Easy";
homepage = "https://pwndbg.re";
changelog = "https://github.com/pwndbg/pwndbg/releases/tag/${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ msanft ];
};
}

View File

@ -1,45 +1,38 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pytestCheckHook
, pythonOlder
, requests
, requests-mock
, setuptools
, wheel
{
lib,
buildPythonPackage,
fetchFromGitHub,
pytestCheckHook,
pythonOlder,
requests,
requests-mock,
setuptools,
}:
buildPythonPackage rec {
pname = "pyfibaro";
version = "0.7.6";
format = "pyproject";
version = "0.7.7";
pyproject = true;
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "rappenze";
repo = pname;
repo = "pyfibaro";
rev = "refs/tags/${version}";
hash = "sha256-yE9HkAlGj1t90FwmwHDsk3ea2UOl0bG3UtYXxz/SWbI=";
hash = "sha256-jsl2Xc6bzN7SVyMnFeCwMpFUEa6xUWGn/T96MrDXlCE=";
};
nativeBuildInputs = [
setuptools
wheel
];
build-system = [ setuptools ];
propagatedBuildInputs = [
requests
];
dependencies = [ requests ];
nativeCheckInputs = [
pytestCheckHook
requests-mock
];
pythonImportsCheck = [
"pyfibaro"
];
pythonImportsCheck = [ "pyfibaro" ];
meta = with lib; {
description = "Library to access FIBARO Home center";

View File

@ -2,7 +2,7 @@
, buildPythonPackage
, fetchPypi
, fetchpatch
, capstone
, capstone_4
, cmsis-pack-manager
, colorama
, importlib-metadata
@ -54,7 +54,7 @@ buildPythonPackage rec {
];
propagatedBuildInputs = [
capstone
capstone_4
cmsis-pack-manager
colorama
importlib-metadata

View File

@ -1,17 +1,18 @@
{ lib
, backoff
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, pyserial
, pyserial-asyncio
, pytestCheckHook
, setuptools
{
lib,
backoff,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
pyserial,
pyserial-asyncio,
pytestCheckHook,
setuptools,
}:
buildPythonPackage rec {
pname = "velbus-aio";
version = "2024.4.0";
version = "2024.4.1";
pyproject = true;
disabled = pythonOlder "3.7";
@ -20,13 +21,11 @@ buildPythonPackage rec {
owner = "Cereal2nd";
repo = "velbus-aio";
rev = "refs/tags/${version}";
hash = "sha256-wYcASRmUxVdUpfKlNIteQlHw3ZaYxZ7VenKtaju1yTE=";
hash = "sha256-rskWnH5zFvBuNL5eJ8O4D6htRP/XtFcq1xH8ZXzT1I4=";
fetchSubmodules = true;
};
build-system = [
setuptools
];
build-system = [ setuptools ];
dependencies = [
backoff
@ -34,13 +33,9 @@ buildPythonPackage rec {
pyserial-asyncio
];
nativeCheckInputs = [
pytestCheckHook
];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [
"velbusaio"
];
pythonImportsCheck = [ "velbusaio" ];
meta = with lib; {
description = "Python library to support the Velbus home automation system";

View File

@ -1,4 +1,4 @@
{ lib, mkDerivation, fetchFromGitHub, cmake, pkg-config, boost, capstone
{ lib, mkDerivation, fetchFromGitHub, cmake, pkg-config, boost, capstone_4
, double-conversion, graphviz, qtxmlpatterns }:
mkDerivation rec {
@ -15,7 +15,7 @@ mkDerivation rec {
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ boost.dev capstone double-conversion graphviz qtxmlpatterns ];
buildInputs = [ boost.dev capstone_4 double-conversion graphviz qtxmlpatterns ];
postPatch = ''
# Remove CMAKE_INSTALL_PREFIX from DEFAULT_PLUGIN_PATH otherwise the nix store path will appear twice.

View File

@ -1,63 +0,0 @@
{ lib
, stdenv
, python3
, fetchFromGitHub
, makeWrapper
, gdb
}:
let
pythonPath = with python3.pkgs; makePythonPath [
capstone
future
psutil
pwntools
pycparser
pyelftools
pygments
unicorn
rpyc
];
binPath = lib.makeBinPath ([
python3.pkgs.pwntools # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/wrappers/checksec.py#L8
] ++ lib.optionals stdenv.isLinux [
python3.pkgs.ropper # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/commands/ropper.py#L30
python3.pkgs.ropgadget # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/commands/rop.py#L32
]);
in stdenv.mkDerivation rec {
pname = "pwndbg";
version = "2022.12.19";
format = "other";
src = fetchFromGitHub {
owner = "pwndbg";
repo = "pwndbg";
rev = version;
sha256 = "sha256-pyY2bMasd6GaJZZjLF48SvkKUBw3XfVa0g3Q0LiEi4k=";
fetchSubmodules = true;
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/share/pwndbg
cp -r *.py pwndbg gdb-pt-dump $out/share/pwndbg
chmod +x $out/share/pwndbg/gdbinit.py
makeWrapper ${gdb}/bin/gdb $out/bin/pwndbg \
--add-flags "-q -x $out/share/pwndbg/gdbinit.py" \
--prefix PATH : ${binPath} \
--set NIX_PYTHONPATH ${pythonPath}
'';
meta = with lib; {
description = "Exploit Development and Reverse Engineering with GDB Made Easy";
mainProgram = "pwndbg";
homepage = "https://github.com/pwndbg/pwndbg";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ mic92 patryk4815 ];
# not supported on aarch64-darwin see: https://inbox.sourceware.org/gdb/3185c3b8-8a91-4beb-a5d5-9db6afb93713@Spark/
broken = stdenv.isDarwin && stdenv.isAarch64;
};
}

View File

@ -6,12 +6,12 @@
python3.pkgs.buildPythonApplication rec {
pname = "synadm";
version = "0.45";
version = "0.46";
format = "setuptools";
src = fetchPypi {
inherit pname version;
hash = "sha256-KstWVSU0IE1ncfIkIH1QsaQc/Yfs2lF+6+5x9zw9cA8=";
hash = "sha256-Wz5ZpaDJIb7k5ZpvIUd/YGrLJwjDwRaS8Tb3FTd2kZU=";
};
propagatedBuildInputs = with python3.pkgs; [

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "rmfakecloud";
version = "0.0.17";
version = "0.0.18";
src = fetchFromGitHub {
owner = "ddvk";
repo = pname;
rev = "v${version}";
sha256 = "sha256-Rb81CbtC1V8AugTNIGx07CvK20sZ5d4hfc4OxF259IQ=";
sha256 = "sha256-J8oB5C5FYZTVq9zopHoL6WYpfTyiiyrQ4YSGu+2eaKw=";
};
vendorHash = "sha256-Rr2EVrQOdlOqSlTpXFMfnKNmdw6UiT7LZH0xBUwqkJc=";
vendorHash = "sha256-S43qNDAlDWhrkfSffCooveemR1Z7KXS18t97UoolgBM=";
ui = callPackage ./webui.nix { inherit version src; };

View File

@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
yarnOfflineCache = fetchYarnDeps {
yarnLock = "${src}/ui/yarn.lock";
sha256 = "sha256-4boZCEly4HovK9BXlSoFd3wZoPaGnzbJg5AygSC/Lrg=";
sha256 = "sha256-JLCrpzytMKejmW+WlM6yybsoIZiimiJdPG5dSIn1L14=";
};
nativeBuildInputs = [ prefetch-yarn-deps yarn nodejs ];

View File

@ -93,6 +93,7 @@ python3.pkgs.buildPythonApplication rec {
patches = [
./ignore_links.patch
./openssh-no-dsa.patch # https://salsa.debian.org/reproducible-builds/diffoscope/-/merge_requests/139
];
postPatch = ''

View File

@ -0,0 +1,29 @@
diff --git a/tests/comparators/test_openssh_pub_key.py b/tests/comparators/test_openssh_pub_key.py
index da143097..8d6f3efa 100644
--- a/tests/comparators/test_openssh_pub_key.py
+++ b/tests/comparators/test_openssh_pub_key.py
@@ -29,7 +29,7 @@
from ..utils.tools import skip_unless_tools_exist, skip_unless_tool_is_at_least
-# Generated by: ssh-keygen -t dsa -C "Test1"
+# Generated by: ssh-keygen -t ed25519 -C "Test1"
opensshpubkey1 = load_fixture("test_openssh_pub_key1.pub")
# Generated by: ssh-keygen -t rsa -b 4096 -C "Test2"
opensshpubkey2 = load_fixture("test_openssh_pub_key2.pub")
diff --git a/tests/data/openssh_pub_key_expected_diff b/tests/data/openssh_pub_key_expected_diff
index 0b6ec624..88d1eccf 100644
--- a/tests/data/openssh_pub_key_expected_diff
+++ b/tests/data/openssh_pub_key_expected_diff
@@ -1,3 +1,3 @@
@@ -1 +1 @@
--1024 SHA256:v/O+0ETvi2H5TGRXky1RhQ1/WFwLlPpxch5E2Mrj6FM Test1 (DSA)
+-256 SHA256:ix2OOXDuTWjxGTICJcP7fLWIcwOO+wr4FPJHz8fOhtQ Test1 (ED25519)
+4096 SHA256:9dH1CMkA6DSfPWU7vNwdPKS5/ppN4LMdvHTP60l7aSA Test2 (RSA)
diff --git a/tests/data/test_openssh_pub_key1.pub b/tests/data/test_openssh_pub_key1.pub
index a2674adc..d564f55c 100644
--- a/tests/data/test_openssh_pub_key1.pub
+++ b/tests/data/test_openssh_pub_key1.pub
@@ -1 +1 @@
-ssh-dss AAAAB3NzaC1kc3MAAACBAIa8YajID9g38jwQm8sNBGoGkkwIOv6sQ8k+Bcq8oPXPy1FRXWcra6Kd3iKqApIzLuZUvoYO/f3G2K4lue5yrv72rgwANWmyL4dHVXgcsjwvWwjOl6o4xWTPFspkdNcAAMcZfzG0+w1AOkQxhwMsnK380m3J9a3VOWugUiU4fV1jAAAAFQDzkrIZuJoxlxes564ltb2Vn3hnpQAAAIBHr6uzpiSeSkWLuItB00hHx1RHtBns0zaheNFTTUMGftxtfBU2eBLqObcTlqHJZ3UUY3/YAvD6Ux/uLSgUzEe7JaqvHcgML3K5V4HWIwE0ARRIwzrfU4cAErJObmZZ/OXbXNNRmW2IJgQJI52x4gVuSt0EEuctzASOOvyPA8IekAAAAIA7xe4o0o/ZwUqfWKR9K4QrbPPa6/D4ruFVhMcRJEE/A1LMY1Xo4nVSRU5bxzvMmJPBZvsbR5NEE3CgESqYxp5IPzK8LLyxcf8YxhdHFDYqFL1TbavwaDqtj6/9a/e7+bd8mMYe7zXJUdKWa/Uf+Xm6WRt3HgdLiCEsS2OlpvS2KA== Test1
+ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGo65kxbPUbb4fdujB2AX/XEZQ+23NDDxu3cJvw2E/DF Test1

View File

@ -17,16 +17,16 @@
rustPlatform.buildRustPackage rec {
pname = "mise";
version = "2024.3.10";
version = "2024.4.0";
src = fetchFromGitHub {
owner = "jdx";
repo = "mise";
rev = "v${version}";
hash = "sha256-Vx6BI2GmnyvBlDGAkNDJaEMXBphbaIxB5npD/o5c48M=";
hash = "sha256-l+Em04q40R5iTm4lNjY6sRE7Vu7UBl7lPNU9yj/hKzk=";
};
cargoHash = "sha256-uhpF5jKWtwEx2HkkHd+88HIao4rqvnSQblinVc4ip44=";
cargoHash = "sha256-BPPjR0o+M5sTBWRgq3kOL+94qnRKnskLyFRUEPlPQtA=";
nativeBuildInputs = [ installShellFiles pkg-config ];
buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "axel";
version = "2.17.13";
version = "2.17.14";
src = fetchFromGitHub {
owner = "axel-download-accelerator";
repo = pname;
rev = "v${version}";
sha256 = "sha256-iCxKQsymTE8ppOAilQtFeQUS+Fpdjhkcw4jaa9TEv3E=";
sha256 = "sha256-5GUna5k8GhAx1Xe8n9IvXT7IO6gksxCLh+sMANlxTBM=";
};
nativeBuildInputs = [ autoreconfHook pkg-config autoconf-archive txt2man ];

View File

@ -12,7 +12,7 @@
let
pname = "ockam";
version = "0.119.0";
version = "0.120.0";
in
rustPlatform.buildRustPackage {
inherit pname version;
@ -21,10 +21,10 @@ rustPlatform.buildRustPackage {
owner = "build-trust";
repo = pname;
rev = "ockam_v${version}";
hash = "sha256-gZBlh8Rg6lChcvTBRzPDIQk2wEJep/3Hei9xaIi8cZo=";
hash = "sha256-Z3yRk0AZefTYITYT9dADrqqpX9PtNeHTgtLFCsICEQ4=";
};
cargoHash = "sha256-0WzX6WsgUWGsToIX3cbiax4crhTbYuWI6EIF2xQWTxU=";
cargoHash = "sha256-7jKD1WGTHEW2hzJAuZ7Z5D28hT9nucf0aW17AKKMH7w=";
nativeBuildInputs = [ git pkg-config ];
buildInputs = [ openssl dbus ]
++ lib.optionals stdenv.isDarwin [ Security ];

View File

@ -1,4 +1,4 @@
# frozen_string_literal: true
source "https://rubygems.org"
gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.4.1"
gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.4.2"

View File

@ -1,9 +1,9 @@
GIT
remote: https://github.com/rapid7/metasploit-framework
revision: 73d98ad0ca24cdd33bbb9dfb110f3b781c613b55
ref: refs/tags/6.4.1
revision: 87b5f6c43676408498c88393a46890f22acc76e3
ref: refs/tags/6.4.2
specs:
metasploit-framework (6.4.1)
metasploit-framework (6.4.2)
actionpack (~> 7.0.0)
activerecord (~> 7.0.0)
activesupport (~> 7.0.0)

View File

@ -15,13 +15,13 @@ let
};
in stdenv.mkDerivation rec {
pname = "metasploit-framework";
version = "6.4.1";
version = "6.4.2";
src = fetchFromGitHub {
owner = "rapid7";
repo = "metasploit-framework";
rev = "refs/tags/${version}";
hash = "sha256-swKIiUgxsT6EnJV21sXOYU+s9fNTURLtJd1kjINyMd0=";
hash = "sha256-c/0XOz86v3So7GUGdOiDEorHeJ+rxfdsRXIGvuT/d/I=";
};
nativeBuildInputs = [

View File

@ -674,12 +674,12 @@
platforms = [];
source = {
fetchSubmodules = false;
rev = "73d98ad0ca24cdd33bbb9dfb110f3b781c613b55";
sha256 = "1p9ifa1qqr6x4pni4lakygssqkv1rv2xcxlmkj23xc9i924qh0mk";
rev = "87b5f6c43676408498c88393a46890f22acc76e3";
sha256 = "1wkpzzjbw1kj8mnggidbkxwcg2hjhgl781k5xjl79grs7wxigzbk";
type = "git";
url = "https://github.com/rapid7/metasploit-framework";
};
version = "6.4.1";
version = "6.4.2";
};
metasploit-model = {
groups = ["default"];

View File

@ -1,20 +1,26 @@
{ lib
, buildGoModule
, fetchFromGitHub
{
lib,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "scilla";
version = "1.2.7";
version = "1.3.0";
src = fetchFromGitHub {
owner = "edoardottt";
repo = pname;
repo = "scilla";
rev = "refs/tags/v${version}";
hash = "sha256-gZuNXQaxHJYLsEaOpNYo7ybg3f0GhkpiaLrex5lkDu4=";
hash = "sha256-ms52ii2cbZSZtcyxhVN+FbGP6hysoLvS7XwdPqxYymU=";
};
vendorHash = "sha256-bVGmleuOJzi/Sz7MJlnQuJsDgRWuwieLUx8hcyKkWXI=";
vendorHash = "sha256-tOg4T9yQm1aj5G89lUeRUTxi4YrwpRi5KDcpWw4TimY=";
ldflags = [
"-w"
"-s"
];
checkFlags = [
# requires network access

View File

@ -4553,6 +4553,7 @@ with pkgs;
candle = libsForQt5.callPackage ../applications/misc/candle { };
capstone = callPackage ../development/libraries/capstone { };
capstone_4 = callPackage ../development/libraries/capstone/4.nix { };
keystone = callPackage ../development/libraries/keystone { };
@ -12248,8 +12249,6 @@ with pkgs;
pwnat = callPackage ../tools/networking/pwnat { };
pwndbg = callPackage ../development/tools/misc/pwndbg { };
pwninit = callPackage ../development/tools/misc/pwninit {
inherit (darwin.apple_sdk.frameworks) Security;
};

View File

@ -1887,6 +1887,9 @@ self: super: with self; {
capstone = callPackage ../development/python-modules/capstone {
inherit (pkgs) capstone;
};
capstone_4 = callPackage ../development/python-modules/capstone/4.nix {
inherit (pkgs) capstone_4;
};
captcha = callPackage ../development/python-modules/captcha { };
@ -4611,6 +4614,8 @@ self: super: with self; {
gdata = callPackage ../development/python-modules/gdata { };
gdb-pt-dump = callPackage ../development/python-modules/gdb-pt-dump { };
gdcm = toPythonModule (pkgs.gdcm.override {
inherit (self) python;
enablePython = true;
@ -10390,6 +10395,8 @@ self: super: with self; {
pwlf = callPackage ../development/python-modules/pwlf { };
pwndbg = callPackage ../development/python-modules/pwndbg { };
pwntools = callPackage ../development/python-modules/pwntools {
debugger = pkgs.gdb;
};