Merge branch 'master' into staging-next

Changed files
+769 -169
pkgs
applications
networking
cluster
starboard
dnscontrol
instant-messengers
jitsi-meet-electron
zoom-us
video
jellyfin-mpv-shim
mpv
development
beam-modules
libraries
eigen
lief
opencascade-occt
pupnp
python-modules
css-html-js-minify
cxxfilt
deezer-python
multimethod
pg8000
plugnplay
pycuda
pymavlink
slackclient
sphinx-material
viv-utils
vivisect
whois
woodblock
tools
azcopy
servers
tools
misc
chezmoi
goreleaser
pcb2gcode
starship
vector
networking
croc
lychee
security
flare-floss
yarGen
text
top-level
+3 -3
pkgs/applications/networking/cluster/starboard/default.nix
···
buildGoModule rec {
pname = "starboard";
-
version = "0.10.0";
+
version = "0.10.1";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-hieenhe3HsMqg7dMhvOUcvVGzBedYXqJRxEUkw4DG6o=";
+
sha256 = "sha256-cDqZo0GTpvvkEiccP42u9X2ydHkSBuoD8Zfp+i+/qjo=";
};
-
vendorSha256 = "sha256-Vj8t4v2o6x+tFLWy84W3tVaIf6WtFWXpvLQfeTbeGbM=";
+
vendorSha256 = "sha256-noK4fF9wCP1dYfDgmJVZehcF+eunzP+d9n1SiPO9UEU=";
subPackages = [ "cmd/starboard" ];
+3 -3
pkgs/applications/networking/dnscontrol/default.nix
···
buildGoModule rec {
pname = "dnscontrol";
-
version = "3.8.0";
+
version = "3.8.1";
src = fetchFromGitHub {
owner = "StackExchange";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-VSNvyigaGfGDbcng6ltdq+X35zT2tb2p4j/4KAjd1Yk=";
+
sha256 = "sha256-x002p7wPKbcmr4uE04mgKBagHQV/maEo99Y2Jr7xgK4=";
};
-
vendorSha256 = "sha256-VU0uJDp5koVU+wDwr3ctrDY0R3vd/JmpA7gtWWpwpfw=";
+
vendorSha256 = "sha256-lR5+xVi/ROOFoRWyK0h/8uiSP/joQ9Zr9kMaQ+sWNhM=";
subPackages = [ "." ];
+2 -2
pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
···
in
stdenv.mkDerivation rec {
pname = "jitsi-meet-electron";
-
version = "2.7.0";
+
version = "2.8.5";
src = fetchurl {
url = "https://github.com/jitsi/jitsi-meet-electron/releases/download/v${version}/jitsi-meet-x86_64.AppImage";
-
sha256 = "1g8was4anrsdpv4h11z544mi0v79him2xjyknixyrqfy87cbh97n";
+
sha256 = "0r3jj3qjx38l1g733vhrwcm2yg7ppp23ciz84x2kqq51mlzr84c6";
name = "${pname}-${version}.AppImage";
};
+6 -11
pkgs/applications/networking/instant-messengers/zoom-us/default.nix
···
, atk
, cairo
, dbus
-
, dpkg
, libGL
, fontconfig
, freetype
···
version = "5.6.16775.0418";
srcs = {
x86_64-linux = fetchurl {
-
url = "https://zoom.us/client/${version}/zoom_amd64.deb";
-
sha256 = "1fmzwxq8jv5k1b2kvg1ij9g6cdp1hladd8vm3cxzd8fywdjcndim";
+
url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz";
+
sha256 = "twtxzniojgyLTx6Kda8Ej96uyw2JQB/jIhLdTgTqpCo=";
};
};
···
inherit version;
src = srcs.${stdenv.hostPlatform.system};
+
dontUnpack = true;
+
nativeBuildInputs = [
-
dpkg
makeWrapper
];
-
unpackCmd = ''
-
mkdir out
-
dpkg -x $curSrc out
-
'';
-
installPhase = ''
runHook preInstall
mkdir $out
-
mv usr/* $out/
-
mv opt $out/
+
tar -C $out -xf ${src}
+
mv $out/usr/* $out/
runHook postInstall
'';
+23 -44
pkgs/applications/video/jellyfin-mpv-shim/default.nix
···
{ lib
, buildPythonApplication
-
, copyDesktopItems
, fetchPypi
-
, makeDesktopItem
-
, flask
, jellyfin-apiclient-python
, jinja2
, mpv
, pillow
-
, pydantic
-
, pyqtwebengine
, pystray
, python-mpv-jsonipc
, pywebview
-
, qt5
, tkinter
-
, werkzeug
}:
buildPythonApplication rec {
pname = "jellyfin-mpv-shim";
-
version = "1.10.4";
+
version = "2.0.1";
src = fetchPypi {
inherit pname version;
-
sha256 = "sha256-QMyb69S8Ln4X0oUuLpL6vtgxJwq8f+Q4ReNckrN4E+E=";
+
sha256 = "sha256-NXDLqQzCUfDPoKNPrmIn5FMedMKYxtDhkawRE2lg/vI=";
};
propagatedBuildInputs = [
jellyfin-apiclient-python
mpv
pillow
-
pydantic
python-mpv-jsonipc
# gui dependencies
···
# display_mirror dependencies
jinja2
pywebview
-
-
# desktop dependencies
-
flask
-
pyqtwebengine
-
werkzeug
-
];
-
-
nativeBuildInputs = [
-
copyDesktopItems
-
qt5.wrapQtAppsHook
-
];
-
-
desktopItems = [
-
(makeDesktopItem {
-
name = "Jellyfin Desktop";
-
exec = "jellyfin-desktop";
-
icon = "jellyfin-desktop";
-
desktopName = "jellyfin-desktop";
-
comment = "MPV-based desktop and cast client for Jellyfin";
-
genericName = "MPV-based desktop and cast client for Jellyfin";
-
categories = "Video;AudioVideo;TV;Player";
-
})
];
# override $HOME directory:
···
--replace "notify_updates: bool = True" "notify_updates: bool = False"
'';
-
postInstall = ''
-
mkdir -p $out/share/pixmaps
-
cp jellyfin_mpv_shim/integration/jellyfin-256.png $out/share/pixmaps/jellyfin-desktop.png
-
'';
-
-
postFixup = ''
-
wrapQtApp $out/bin/jellyfin-desktop
-
wrapQtApp $out/bin/jellyfin-mpv-desktop
-
'';
-
# no tests
doCheck = false;
pythonImportsCheck = [ "jellyfin_mpv_shim" ];
meta = with lib; {
-
homepage = "https://github.com/jellyfin/jellyfin-desktop";
+
homepage = "https://github.com/jellyfin/jellyfin-mpv-shim";
description = "Allows casting of videos to MPV via the jellyfin mobile and web app";
-
license = licenses.gpl3;
+
longDescription = ''
+
Jellyfin MPV Shim is a client for the Jellyfin media server which plays media in the
+
MPV media player. The application runs in the background and opens MPV only
+
when media is cast to the player. The player supports most file formats, allowing you
+
to prevent needless transcoding of your media files on the server. The player also has
+
advanced features, such as bulk subtitle updates and launching commands on events.
+
'';
+
license = with licenses; [
+
# jellyfin-mpv-shim
+
gpl3Only
+
mit
+
+
# shader-pack licenses (github:iwalton3/default-shader-pack)
+
# KrigBilateral, SSimDownscaler, NNEDI3
+
gpl3Plus
+
# Anime4K, FSRCNNX
+
mit
+
# Static Grain
+
unlicense
+
];
maintainers = with maintainers; [ jojosch ];
};
}
+12 -12
pkgs/applications/video/mpv/scripts/convert.nix
···
patches = [ ./convert.patch ];
-
postPatch =
-
let
-
t = k: v: '' 'local ${k} = "${v}"' '';
-
subs = var: orig: repl: "--replace " + t var orig + t var repl;
-
in ''
-
substituteInPlace convert_script.lua \
-
${subs "NOTIFY_CMD" "notify-send" "${libnotify}/bin/notify-send"} \
-
${subs "YAD_CMD" "yad" "${yad}/bin/yad"} \
-
${subs "MKVMERGE_CMD" "mkvmerge" "${mkvtoolnix-cli}/bin/mkvmerge"}
+
postPatch = ''
+
substituteInPlace convert_script.lua \
+
--replace 'mkvpropedit_exe = "mkvpropedit"' \
+
'mkvpropedit_exe = "${mkvtoolnix-cli}/bin/mkvpropedit"' \
+
--replace 'mkvmerge_exe = "mkvmerge"' \
+
'mkvmerge_exe = "${mkvtoolnix-cli}/bin/mkvmerge"' \
+
--replace 'yad_exe = "yad"' \
+
'yad_exe = "${yad}/bin/yad"' \
+
--replace 'notify_send_exe = "notify-send"' \
+
'notify_send_exe = "${libnotify}/bin/notify-send"' \
+
'';
dontBuild = true;
···
When this script is loaded into mpv, you can hit Alt+W to mark the beginning
and Alt+W again to mark the end of the clip. Then a settings window opens.
'';
+
# author was asked to add a license https://gist.github.com/Zehkul/25ea7ae77b30af959be0#gistcomment-3715700
license = licenses.unfree;
-
# script crashes mpv. See https://github.com/NixOS/nixpkgs/issues/113202
-
broken = true;
};
}
-
+58 -23
pkgs/applications/video/mpv/scripts/convert.patch
···
-
--- convert/convert_script.lua 2016-03-18 19:30:49.675401969 +0100
-
+++ convert_script.lua 2016-03-19 01:18:00.801897043 +0100
-
@@ -3,6 +3,10 @@
+
diff --git "a/Convert Script \342\200\223 README.md" "b/Convert Script \342\200\223 README.md"
+
index 8e062c1..6e0d798 100644
+
--- "a/Convert Script \342\200\223 README.md"
+
+++ "b/Convert Script \342\200\223 README.md"
+
@@ -68,7 +68,7 @@ and set some options in ``mpv/lua-settings/convert_script.conf`` or with ``--scr
+
If you don’t want to upgrade your yad. Features like appending segments won’t be available.
+
+
libvpx_fps
+
- Default: --oautofps
+
+ Default: ""
+
FPS settings (or any other settings really) for libvpx encoding. Set it to --ofps=24000/1001 for example.
+
+
-Warning: Some of these options aren’t very robust and setting them to bogus values will break the script.
+
\ No newline at end of file
+
+Warning: Some of these options aren’t very robust and setting them to bogus values will break the script.
+
diff --git a/convert_script.lua b/convert_script.lua
+
index 17d3100..90f88ec 100644
+
--- a/convert_script.lua
+
+++ b/convert_script.lua
+
@@ -3,6 +3,12 @@ local msg = require 'mp.msg'
local opt = require 'mp.options'
local utils = require 'mp.utils'
-
+local NOTIFY_CMD = "notify-send"
-
+local YAD_CMD = "yad"
-
+local MKVMERGE_CMD = "mkvmerge"
+
+-- executables
+
+local mkvpropedit_exe = "mkvpropedit"
+
+local mkvmerge_exe = "mkvmerge"
+
+local yad_exe = "yad"
+
+local notify_send_exe = "notify-send"
+
-- default options, convert_script.conf is read
local options = {
bitrate_multiplier = 0.975, -- to make sure the file won’t go over the target file size, set it to 1 if you don’t care
-
@@ -247,12 +247,12 @@
+
@@ -14,7 +20,7 @@ local options = {
+
libvpx_options = "--ovcopts-add=cpu-used=0,auto-alt-ref=1,lag-in-frames=25,quality=good",
+
libvpx_vp9_options = "",
+
legacy_yad = false, -- if you don’t want to upgrade to at least yad 0.18
+
- libvpx_fps = "--oautofps", -- --ofps=24000/1001 for example
+
+ libvpx_fps = "", -- --ofps=24000/1001 for example
+
audio_bitrate = 112, -- mpv default, in kbps
+
}
+
+
@@ -247,12 +253,12 @@ function encode(enc)
if string.len(vf) > 0 then
vf = vf .. ","
end
···
local audio_file = ""
for index, param in pairs(audio_file_table) do
audio_file = audio_file .. " --audio-file='" .. string.gsub(tostring(param), "'", "'\\''") .. "'"
-
@@ -354,9 +358,9 @@
+
@@ -354,9 +360,9 @@ function encode(enc)
if ovc == "gif" then
full_command = full_command .. ' --vf-add=lavfi=graph=\\"framestep=' .. framestep .. '\\" && convert '
.. tmpfolder .. '/*.png -set delay ' .. delay .. ' -loop 0 -fuzz ' .. fuzz .. '% ' .. dither .. ' -layers optimize '
- .. full_output_path .. ' && rm -rf ' .. tmpfolder .. ' && notify-send "Gif done") & disown'
-
+ .. full_output_path .. ' && rm -rf ' .. tmpfolder .. ' && ' .. NOTIFY_CMD .. ' "Gif done") & disown'
+
+ .. full_output_path .. ' && rm -rf ' .. tmpfolder .. ' && ' .. notify_send_exe .. ' "Gif done") & disown'
else
- full_command = full_command .. ' && notify-send "Encoding done"; mkvpropedit '
-
+ full_command = full_command .. ' && ' .. NOTIFY_CMD .. ' "Encoding done"; mkvpropedit '
+
+ full_command = full_command .. ' && ' .. notify_send_exe .. ' "Encoding done"; ' .. mkvpropedit_exe .. ' '
.. full_output_path .. ' -s title="' .. metadata_title .. '") & disown'
end
-
@@ -409,7 +413,7 @@
+
@@ -409,7 +415,7 @@ function encode_copy(enc)
sep = ",+"
if enc then
- local command = "mkvmerge '" .. video .. "' " .. mkvmerge_parts .. " -o " .. full_output_path
-
+ local command = MKVMERGE_CMD .. " '" .. video .. "' " .. mkvmerge_parts .. " -o " .. full_output_path
+
+ local command = mkvmerge_exe .. " '" .. video .. "' " .. mkvmerge_parts .. " -o " .. full_output_path
msg.info(command)
os.execute(command)
clear()
-
@@ -508,7 +512,7 @@
+
@@ -508,7 +514,7 @@ function call_gui ()
end
- local yad_command = [[LC_NUMERIC=C yad --title="Convert Script" --center --form --fixed --always-print-result \
-
+ local yad_command = [[LC_NUMERIC=C ]] .. YAD_CMD .. [[ --title="Convert Script" --center --form --fixed --always-print-result \
+
+ local yad_command = [[LC_NUMERIC=C ]] .. yad_exe .. [[ --title="Convert Script" --center --form --fixed --always-print-result \
--name "convert script" --class "Convert Script" --field="Resize to height:NUM" "]] .. scale_sav --yad_table 1
.. [[" --field="Resize to width instead:CHK" ]] .. resize_to_width_instead .. " " --yad_table 2
if options.legacy_yad then
-
@@ -543,7 +547,7 @@
-
yad_command = yad_command .. [[ --button="Crop:1" --button="gtk-cancel:2" --button="gtk-ok:0"; ret=$? && echo $ret]]
-
-
if gif_dialog then
-
- yad_command = [[echo $(LC_NUMERIC=C yad --title="Gif settings" --name "convert script" --class "Convert Script" \
-
+ yad_command = [[echo $(LC_NUMERIC=C ]] .. YAD_CMD .. [[ --title="Gif settings" --name "convert script" --class "Convert Script" \
-
--center --form --always-print-result --separator="…" \
-
--field="Fuzz Factor:NUM" '1!0..100!0.5!1' \
-
--field="Framestep:NUM" '3!1..3!1' \
+
@@ -524,7 +530,7 @@ function call_gui ()
+
yad_command = yad_command
+
.. [[--field="2pass:CHK" "false" ]] --yad_table 5
+
.. [[--field="Encode options::CBE" '! --ovcopts=b=2000,cpu-used=0,auto-alt-ref=1,lag-in-frames=25,quality=good,threads=4' ]] --yad_table 6
+
- .. [[--field="Output format::CBE" ' --ovc=libx264! --oautofps --of=webm --ovc=libvpx' ]]
+
+ .. [[--field="Output format::CBE" ' --ovc=libx264! --of=webm --ovc=libvpx' ]]
+
.. [[--field="Simple:FBTN" 'bash -c "echo \"simple\" && kill -s SIGUSR1 \"$YAD_PID\""' ]]
+
advanced = true
+
else
+
@@ -734,4 +740,4 @@ mp.set_key_bindings({
+
+
mp.add_key_binding("alt+w", "convert_script", convert_script_hotkey_call)
+
+
-mp.register_event("tick", tick)
+
\ No newline at end of file
+
+mp.register_event("tick", tick)
+1 -1
pkgs/development/beam-modules/elixir_ls.nix
···
src = fetchFromGitHub {
owner = "elixir-lsp";
repo = "elixir-ls";
-
rev = "v{version}";
+
rev = "v${version}";
sha256 = "0d0hqc35hfjkpm88vz21mnm2a9rxiqfrdi83whhhh6d2ba216b7s";
fetchSubmodules = true;
};
+2 -2
pkgs/development/beam-modules/hex/default.nix
···
pkg = self: stdenv.mkDerivation rec {
pname = "hex";
-
version = "0.21.1";
+
version = "0.21.2";
src = fetchFromGitHub {
owner = "hexpm";
repo = "hex";
rev = "v${version}";
-
sha256 = "3V7hp+gK+ixEX+v9vkzQ5y81LN+CSzOIlSkCJB2RFb8=";
+
sha256 = "18vwrc5b7pyi3nifmx5hd5wbz8fy3h6sfvkmskjg5acmz66fys0g";
};
setupHook = writeText "setupHook.sh" ''
+5 -6
pkgs/development/libraries/eigen/2.0.nix
···
src = fetchFromGitLab {
owner = "libeigen";
-
repo = "eigen";
+
repo = pname;
rev = version;
-
sha256 = "0d4knrcz04pxmxaqs5r3wv092950kl1z9wsw87vdzi9kgvc6wl0b";
+
hash = "sha256-C1Bu2H4zxd/2QVzz9AOdoCSRwOYjF41Vr/0S8Fm2kzQ=";
};
nativeBuildInputs = [ cmake ];
meta = with lib; {
+
homepage = "https://eigen.tuxfamily.org";
description = "C++ template library for linear algebra: vectors, matrices, and related algorithms";
license = licenses.lgpl3Plus;
-
homepage = "https://eigen.tuxfamily.org";
-
maintainers = with lib.maintainers; [ sander raskin ];
-
branch = "2";
-
platforms = with lib.platforms; unix;
+
maintainers = with maintainers; [ sander raskin ];
+
platforms = platforms.unix;
};
}
+9 -6
pkgs/development/libraries/eigen/default.nix
···
-
{ lib, stdenv, fetchFromGitLab, cmake }:
+
{ lib
+
, stdenv
+
, fetchFromGitLab
+
, cmake
+
}:
stdenv.mkDerivation rec {
pname = "eigen";
···
src = fetchFromGitLab {
owner = "libeigen";
-
repo = "eigen";
+
repo = pname;
rev = version;
-
sha256 = "1i3cvg8d70dk99fl3lrv3wqhfpdnm5kx01fl7r2bz46sk9bphwm1";
+
hash = "sha256-oXJ4V5rakL9EPtQF0Geptl0HMR8700FdSrOB09DbbMQ=";
};
patches = [
···
nativeBuildInputs = [ cmake ];
meta = with lib; {
+
homepage = "https://eigen.tuxfamily.org";
description = "C++ template library for linear algebra: vectors, matrices, and related algorithms";
license = licenses.lgpl3Plus;
-
homepage = "https://eigen.tuxfamily.org";
+
maintainers = with maintainers; [ sander raskin ];
platforms = platforms.unix;
-
maintainers = with lib.maintainers; [ sander raskin ];
-
inherit version;
};
}
+60 -4
pkgs/development/libraries/lief/default.nix
···
-
{ lib, fetchzip }:
+
{ lib
+
, stdenv
+
, fetchFromGitHub
+
, python
+
, cmake
+
}:
-
fetchzip {
-
url = "https://github.com/lief-project/LIEF/releases/download/0.9.0/LIEF-0.9.0-Linux.tar.gz";
-
sha256 = "1c47hwd00bp4mqd4p5b6xjfl89c3wwk9ccyc3a2gk658250g2la6";
+
let
+
pyEnv = python.withPackages (ps: [ ps.setuptools ]);
+
in
+
stdenv.mkDerivation rec {
+
pname = "lief";
+
version = "0.11.4";
+
+
src = fetchFromGitHub {
+
owner = "lief-project";
+
repo = "LIEF";
+
rev = version;
+
sha256 = "DgsTrJ2+zdXJK6CdDOan7roakaaxQiwrVeiQnzJnk0A=";
+
};
+
+
outputs = [ "out" "py" ];
+
+
nativeBuildInputs = [
+
cmake
+
];
+
+
# Not a propagatedBuildInput because only the $py output needs it; $out is
+
# just the library itself (e.g. C/C++ headers).
+
buildInputs = [
+
python
+
];
+
+
dontUseCmakeConfigure = true;
+
+
buildPhase = ''
+
runHook preBuild
+
+
substituteInPlace setup.py \
+
--replace 'cmake_args = []' "cmake_args = [ \"-DCMAKE_INSTALL_PREFIX=$prefix\" ]"
+
${pyEnv.interpreter} setup.py --sdk build --parallel=$NIX_BUILD_CORES
+
+
runHook postBuild
+
'';
+
+
# I was unable to find a way to build the library itself and have it install
+
# to $out, while also installing the Python bindings to $py without building
+
# the project twice (using cmake), so this is the best we've got. It uses
+
# something called CPack to create the tarball, but it's not obvious to me
+
# *how* that happens, or how to intercept it to just get the structured
+
# library output.
+
installPhase = ''
+
runHook preInstall
+
+
mkdir -p $out $py/nix-support
+
echo "${python}" >> $py/nix-support/propagated-build-inputs
+
tar xf build/*.tar.gz --directory $out --strip-components 1
+
${pyEnv.interpreter} setup.py install --skip-build --root=/ --prefix=$py
+
+
runHook postInstall
+
'';
meta = with lib; {
description = "Library to Instrument Executable Formats";
+2 -2
pkgs/development/libraries/opencascade-occt/default.nix
···
stdenv.mkDerivation rec {
pname = "opencascade-occt";
-
version = "7.5.0";
+
version = "7.5.1";
commit = "V${builtins.replaceStrings ["."] ["_"] version}";
src = fetchurl {
name = "occt-${commit}.tar.gz";
url = "https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${commit};sf=tgz";
-
sha256 = "0bpzpaqki3k6i7xmhan0f1c1fr05smpcmgrp4vh572j61lwpq1r3";
+
sha256 = "sha256-1whKU+7AMVYabfs15x8MabohKonn5oM54ZEtxF93wAo=";
};
nativeBuildInputs = [ cmake ninja ];
+3 -3
pkgs/development/libraries/pupnp/default.nix
···
stdenv.mkDerivation rec {
pname = "libupnp";
-
version = "1.14.4";
+
version = "1.14.6";
outputs = [ "out" "dev" ];
src = fetchFromGitHub {
-
owner = "mrjimenez";
+
owner = "pupnp";
repo = "pupnp";
rev = "release-${version}";
-
sha256 = "sha256-4VuTbcEjr9Ffrowb3eOtXFU8zPNu1NXS531EOZpI07A=";
+
sha256 = "1f9861q5dicp6rx3jnp1j788xfjfaf3k4620p9r0b0k0lj2gk38c";
};
nativeBuildInputs = [
+26
pkgs/development/python-modules/css-html-js-minify/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, fetchPypi
+
}:
+
+
buildPythonPackage rec {
+
pname = "css-html-js-minify";
+
version = "2.5.5";
+
+
src = fetchPypi {
+
inherit pname version;
+
extension = "zip";
+
sha256 = "4a9f11f7e0496f5284d12111f3ba4ff5ff2023d12f15d195c9c48bd97013746c";
+
};
+
+
doCheck = false; # Tests are useless and broken
+
+
pythonImportsCheck = [ "css_html_js_minify" ];
+
+
meta = with lib; {
+
description = "StandAlone Async cross-platform Minifier for the Web";
+
homepage = "https://github.com/juancarlospaco/css-html-js-minify";
+
license = with licenses; [ gpl3Plus lgpl3Plus mit ];
+
maintainers = with maintainers; [ FlorianFranzen ];
+
};
+
}
+33
pkgs/development/python-modules/cxxfilt/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, fetchPypi
+
, gcc-unwrapped
+
}:
+
buildPythonPackage rec {
+
pname = "cxxfilt";
+
version = "0.2.2";
+
+
src = fetchPypi {
+
inherit pname version;
+
sha256 = "ef6810e76d16c95c11b96371e2d8eefd1d270ec03f9bcd07590e8dcc2c69e92b";
+
};
+
+
postPatch = ''
+
substituteInPlace cxxfilt/__init__.py \
+
--replace "find_any_library('stdc++', 'c++')" '"${lib.getLib gcc-unwrapped}/lib/libstdc++.so"'
+
'';
+
+
# no tests
+
doCheck = false;
+
+
pythonImportsCheck = [
+
"cxxfilt"
+
];
+
+
meta = with lib; {
+
description = "Demangling C++ symbols in Python / interface to abi::__cxa_demangle ";
+
homepage = "https://github.com/afq984/python-cxxfilt";
+
license = licenses.bsd2;
+
maintainers = teams.determinatesystems.members;
+
};
+
}
+47
pkgs/development/python-modules/deezer-python/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, fetchFromGitHub
+
, pythonOlder
+
, requests
+
, tornado
+
, poetry-core
+
, pytestCheckHook
+
, pytest-cov
+
, pytest-vcr
+
}:
+
+
buildPythonPackage rec {
+
pname = "deezer-python";
+
version = "2.2.2";
+
disabled = pythonOlder "3.6";
+
format = "pyproject";
+
+
src = fetchFromGitHub {
+
owner = "browniebroke";
+
repo = pname;
+
rev = "v${version}";
+
sha256 = "1l8l4lxlqsj921gk1mxcilp11jx31addiyd9pk604aldgqma709y";
+
};
+
+
nativeBuildInputs = [
+
poetry-core
+
];
+
+
checkInputs = [
+
pytestCheckHook
+
pytest-cov
+
pytest-vcr
+
];
+
+
propagatedBuildInputs = [
+
requests
+
tornado
+
];
+
+
meta = with lib; {
+
description = "A friendly Python wrapper around the Deezer API";
+
homepage = "https://github.com/browniebroke/deezer-python";
+
license = licenses.mit;
+
maintainers = with maintainers; [ synthetica ];
+
};
+
}
+31
pkgs/development/python-modules/multimethod/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, fetchPypi
+
, pytestCheckHook
+
, pytest-cov
+
}:
+
buildPythonPackage rec {
+
pname = "multimethod";
+
version = "1.5";
+
+
src = fetchPypi {
+
inherit pname version;
+
sha256 = "b9c6f85ecf187f14a3951fff319643e1fac3086d757dec64f2469e1fd136b65d";
+
};
+
+
checkInputs = [
+
pytestCheckHook
+
pytest-cov
+
];
+
+
pythomImportsCheck = [
+
"multimethod"
+
];
+
+
meta = with lib; {
+
description = "Multiple argument dispatching";
+
homepage = "https://github.com/coady/multimethod";
+
license = licenses.asl20;
+
maintainers = teams.determinatesystems.members;
+
};
+
}
+7 -4
pkgs/development/python-modules/pg8000/default.nix
···
buildPythonPackage rec {
pname = "pg8000";
-
version = "1.19.0";
+
version = "1.19.2";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
-
sha256 = "sha256-EexwwLIOpECAfiyGmUDxSE7qk9cbQ1gHtjhW3YK3RN0=";
+
sha256 = "sha256-RMu008kS8toWfKAr+YoAQPfpMmDk7xFMKNXWFSAS6gc=";
};
-
propagatedBuildInputs = [passlib scramp ];
+
propagatedBuildInputs = [
+
passlib
+
scramp
+
];
postPatch = ''
substituteInPlace setup.py \
-
--replace "scramp==1.3.0" "scramp>=1.3.0"
+
--replace "scramp==1.4.0" "scramp>=1.4.0"
'';
# Tests require a running PostgreSQL instance
+27
pkgs/development/python-modules/plugnplay/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, fetchPypi
+
}:
+
buildPythonPackage rec {
+
pname = "plugnplay";
+
version = "0.5.4";
+
+
src = fetchPypi {
+
inherit pname version;
+
sha256 = "877e2d2500a45aaf31e5175f9f46182088d3e2d64c1c6b9ff6c778ae0ee594c8";
+
};
+
+
# no tests
+
doCheck = false;
+
+
pythonImportsCheck = [
+
"plugnplay"
+
];
+
+
meta = with lib; {
+
description = "A Generic plug-in system for python applications";
+
homepage = "https://github.com/daltonmatos/plugnplay";
+
license = licenses.gpl2Only;
+
maintainers = teams.determinatesystems.members;
+
};
+
}
+12
pkgs/development/python-modules/pycuda/default.nix
···
{ buildPythonPackage
+
, addOpenGLRunpath
, fetchPypi
, fetchFromGitHub
, Mako
···
ln -s ${compyte} $out/${python.sitePackages}/pycuda/compyte
'';
+
postFixup = ''
+
find $out/lib -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
+
echo "setting opengl runpath for $lib..."
+
addOpenGLRunpath "$lib"
+
done
+
'';
+
# Requires access to libcuda.so.1 which is provided by the driver
doCheck = false;
checkPhase = ''
py.test
'';
+
+
nativeBuildInputs = [
+
addOpenGLRunpath
+
];
propagatedBuildInputs = [
numpy
+9 -4
pkgs/development/python-modules/pymavlink/default.nix
···
buildPythonPackage rec {
pname = "pymavlink";
-
version = "2.4.14";
+
version = "2.4.15";
src = fetchPypi {
inherit pname version;
-
sha256 = "3bc3709c735ebb3f98f19e96c8887868f4671077d4808076cfc5445912633881";
+
sha256 = "106va20k0ahy0l2qvxf8k5pvqkgdmxbgzd9kij9fkrahlba5mx3v";
};
propagatedBuildInputs = [ future lxml ];
-
# No tests included in PyPI tarball
+
# No tests included in PyPI tarball. We cannot use the GitHub tarball because
+
# we would like to use the same commit of the mavlink messages repo as
+
# included in the PyPI tarball, and there is no easy way to determine what
+
# commit is included.
doCheck = false;
+
pythonImportsCheck = [ "pymavlink" ];
+
meta = with lib; {
description = "Python MAVLink interface and utilities";
homepage = "https://github.com/ArduPilot/pymavlink";
-
license = licenses.lgpl3;
+
license = with licenses; [ lgpl3Only mit ];
maintainers = with maintainers; [ lopsided98 ];
};
}
+1 -1
pkgs/development/python-modules/slackclient/default.nix
···
}:
buildPythonPackage rec {
-
pname = "python-slackclient";
+
pname = "slackclient";
version = "2.9.3";
disabled = !isPy3k;
+41
pkgs/development/python-modules/sphinx-material/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, fetchPypi
+
, sphinx
+
, beautifulsoup4
+
, python-slugify
+
, unidecode
+
, css-html-js-minify
+
, lxml
+
}:
+
+
buildPythonPackage rec {
+
pname = "sphinx-material";
+
version = "0.0.32";
+
+
src = fetchPypi {
+
pname = "sphinx_material";
+
inherit version;
+
sha256 = "ec02825a1bbe8b662fe624c11b87f1cd8d40875439b5b18c38649cf3366201fa";
+
};
+
+
propagatedBuildInputs = [
+
sphinx
+
beautifulsoup4
+
python-slugify
+
unidecode
+
css-html-js-minify
+
lxml
+
];
+
+
doCheck = false; # no tests
+
+
pythonImportsCheck = [ "sphinx_material" ];
+
+
meta = with lib; {
+
description = "A material-based, responsive theme inspired by mkdocs-material";
+
homepage = "https://bashtage.github.io/sphinx-material";
+
license = licenses.mit;
+
maintainers = with maintainers; [ FlorianFranzen ];
+
};
+
}
+49
pkgs/development/python-modules/viv-utils/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, isPy3k
+
, fetchFromGitHub
+
, funcy
+
, pefile
+
, vivisect
+
, intervaltree
+
, setuptools
+
}:
+
buildPythonPackage rec {
+
pname = "viv-utils";
+
version = "0.3.17";
+
disabled = isPy3k;
+
+
src = fetchFromGitHub {
+
owner = "williballenthin";
+
repo = "viv-utils";
+
rev = "v${version}";
+
sha256 = "wZWp6PMn1to/jP6lzlY/x0IhS/0w0Ys7AdklNQ+Vmyc=";
+
};
+
+
# argparse is provided by Python itself
+
preBuild = ''
+
sed '/"argparse",/d' -i setup.py
+
'';
+
+
propagatedBuildInputs = [
+
funcy
+
pefile
+
vivisect
+
intervaltree
+
setuptools
+
];
+
+
# no tests
+
doCheck = false;
+
+
pythonImportsCheck = [
+
"viv_utils"
+
];
+
+
meta = with lib; {
+
description = "Utilities for working with vivisect";
+
homepage = "https://github.com/williballenthin/viv-utils";
+
license = licenses.asl20;
+
maintainers = teams.determinatesystems.members;
+
};
+
}
+46
pkgs/development/python-modules/vivisect/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, isPy3k
+
, fetchPypi
+
, pyasn1
+
, pyasn1-modules
+
, cxxfilt
+
, msgpack
+
, pycparser
+
}:
+
buildPythonPackage rec {
+
pname = "vivisect";
+
version = "0.1.0";
+
disabled = isPy3k;
+
+
src = fetchPypi {
+
inherit pname version;
+
sha256 = "ed5e8c24684841d30dc7b41f2bee87c0198816a453417ae2e130b7845ccb2629";
+
};
+
+
propagatedBuildInputs = [
+
pyasn1
+
pyasn1-modules
+
cxxfilt
+
msgpack
+
pycparser
+
];
+
+
preBuild = ''
+
sed "s@==.*'@'@" -i setup.py
+
'';
+
+
# requires another repo for test files
+
doCheck = false;
+
+
pythonImportsCheck = [
+
"vivisect"
+
];
+
+
meta = with lib; {
+
description = "Pure python disassembler, debugger, emulator, and static analysis framework";
+
homepage = "https://github.com/vivisect/vivisect";
+
license = licenses.asl20;
+
maintainers = teams.determinatesystems.members;
+
};
+
}
+2 -3
pkgs/development/python-modules/whois/default.nix
···
{ lib
, buildPythonPackage
, fetchFromGitHub
-
, pytestCheckHook
, inetutils
}:
buildPythonPackage rec {
pname = "whois";
-
version = "0.9.7";
+
version = "0.9.13";
src = fetchFromGitHub {
owner = "DannyCork";
repo = "python-whois";
rev = version;
-
sha256 = "1rbc4xif4dn455vc8dhxdvwszrb0nik5q9fy12db6mxfx6zikb7z";
+
sha256 = "0y2sfs6nkr2j2crrn81wkfdzn9aphb3iaddya5zd2midlgdqq7bw";
};
# whois is needed
+36
pkgs/development/python-modules/woodblock/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, fetchPypi
+
, click
+
, multimethod
+
, numpy
+
}:
+
buildPythonPackage rec {
+
pname = "woodblock";
+
version = "0.1.7";
+
+
src = fetchPypi {
+
inherit pname version;
+
sha256 = "c0347ece920b7009d94551983a01f42db02920ca8d7b0ff36d24a337e2c937f7";
+
};
+
+
propagatedBuildInputs = [
+
click
+
multimethod
+
numpy
+
];
+
+
# no tests
+
doCheck = false;
+
+
pythonImportsCheck = [
+
"woodblock"
+
];
+
+
meta = with lib; {
+
description = "A framework to generate file carving test data";
+
homepage = "https://github.com/fkie-cad/woodblock";
+
license = licenses.mit;
+
maintainers = teams.determinatesystems.members;
+
};
+
}
+3 -3
pkgs/development/tools/azcopy/default.nix
···
buildGoModule rec {
pname = "azure-storage-azcopy";
-
version = "10.9.0";
+
version = "10.10.0";
src = fetchFromGitHub {
owner = "Azure";
repo = "azure-storage-azcopy";
rev = "v${version}";
-
sha256 = "sha256-IVbvBqp/7Y3La0pP6gbWl0ATfEvkCuR4J9ChTDPNhB0=";
+
sha256 = "sha256-gWU219QlV+24RxnTHqQzQeGZHzVwmBXNKU+3QI6WvHI=";
};
subPackages = [ "." ];
-
vendorSha256 = "sha256-mj1TvNuFFPJGAJCBTQtU5WWPhHbiXUxRiMZQ/XvEy0U=";
+
vendorSha256 = "sha256-d965Rt8W74bsIZAZPZLe3twuUpp4wrnNc0qwjsKikOE=";
doCheck = false;
+2 -2
pkgs/servers/home-assistant/component-packages.nix
···
"blueprint" = ps: with ps; [ ];
"bluesound" = ps: with ps; [ xmltodict ];
"bluetooth_le_tracker" = ps: with ps; [ ]; # missing inputs: pygatt[GATTTOOL]
-
"bluetooth_tracker" = ps: with ps; [ bt_proximity ]; # missing inputs: pybluez
+
"bluetooth_tracker" = ps: with ps; [ bt_proximity pybluez ];
"bme280" = ps: with ps; [ smbus-cffi ]; # missing inputs: i2csense
"bme680" = ps: with ps; [ bme680 smbus-cffi ];
"bmp280" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-bmp280
···
"sky_hub" = ps: with ps; [ ]; # missing inputs: pyskyqhub
"skybeacon" = ps: with ps; [ ]; # missing inputs: pygatt[GATTTOOL]
"skybell" = ps: with ps; [ skybellpy ];
-
"slack" = ps: with ps; [ ]; # missing inputs: slackclient
+
"slack" = ps: with ps; [ slackclient ];
"sleepiq" = ps: with ps; [ sleepyq ];
"slide" = ps: with ps; [ ]; # missing inputs: goslide-api
"sma" = ps: with ps; [ pysma ];
+1
pkgs/servers/home-assistant/default.nix
···
"sleepiq"
"sma"
"sensor"
+
"slack"
"smarttub"
"smtp"
"smappee"
+4 -1
pkgs/servers/home-assistant/parse-requirements.py
···
for name in names:
# treat "-" and "_" equally
name = re.sub("[-_]", "[-_]", name)
-
pattern = re.compile("^python\\d\\.\\d-{}-\\d".format(name), re.I)
+
# python(minor).(major)-(pname)-(version or unstable-date)
+
# we need the version qualifier, or we'll have multiple matches
+
# (e.g. pyserial and pyserial-asyncio when looking for pyserial)
+
pattern = re.compile("^python\\d\\.\\d-{}-(?:\\d|unstable-.*)".format(name), re.I)
for attr_path, package in packages.items():
if pattern.match(package["name"]):
attr_paths.add(attr_path)
+29
pkgs/servers/sql/postgresql/ext/pgvector.nix
···
+
{ lib, stdenv, fetchFromGitHub, postgresql }:
+
+
stdenv.mkDerivation rec {
+
pname = "pgvector";
+
version = "0.1.0";
+
+
src = fetchFromGitHub {
+
owner = "ankane";
+
repo = pname;
+
rev = "v${version}";
+
sha256 = "03i8rq9wp9j2zdba82q31lzbrqpnhrqc8867pxxy3z505fxsvfzb";
+
};
+
+
buildInputs = [ postgresql ];
+
+
installPhase = ''
+
install -D -t $out/lib vector.so
+
install -D -t $out/share/postgresql/extension vector-*.sql
+
install -D -t $out/share/postgresql/extension vector.control
+
'';
+
+
meta = with lib; {
+
description = "Open-source vector similarity search for PostgreSQL";
+
homepage = "https://github.com/ankane/pgvector";
+
license = licenses.postgresql;
+
platforms = postgresql.meta.platforms;
+
maintainers = [ maintainers.marsam ];
+
};
+
}
+2
pkgs/servers/sql/postgresql/packages.nix
···
pgroonga = super.callPackage ./ext/pgroonga.nix { };
+
pgvector = super.callPackage ./ext/pgvector.nix { };
+
plpgsql_check = super.callPackage ./ext/plpgsql_check.nix { };
plr = super.callPackage ./ext/plr.nix { };
+3 -3
pkgs/tools/misc/chezmoi/default.nix
···
buildGoModule rec {
pname = "chezmoi";
-
version = "2.0.9";
+
version = "2.0.10";
src = fetchFromGitHub {
owner = "twpayne";
repo = "chezmoi";
rev = "v${version}";
-
sha256 = "sha256-yDd9u9cwC+bjB0ZQW0EgEDaHmWwkUprwXIiVrOVP2nk=";
+
sha256 = "sha256-WVG4rww9Wd1H6zw5lRBErX9VwnA21dhvith9BQFYqxw=";
};
-
vendorSha256 = "sha256-c6YIWpC8sQA/gbgD2vuuFvwccEE00aUrj6gcPpJsn0k=";
+
vendorSha256 = "sha256-khYcNP3xAXeQR9vaghkGq8x6KB1k5hLEcE7Zx8H+CfA=";
doCheck = false;
+3 -3
pkgs/tools/misc/goreleaser/default.nix
···
buildGoModule rec {
pname = "goreleaser";
-
version = "0.162.0";
+
version = "0.163.1";
src = fetchFromGitHub {
owner = "goreleaser";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-nhl6GATzFsfEQjKVxz65REn9QTvOH49omU00ZCfO6CY=";
+
sha256 = "sha256-2SDy/Mk4TkXkJKF1gFW7/FH4Y31TE2X38I0r/Ng/BjU=";
};
-
vendorSha256 = "sha256-zq/RIOK/Hs1GJ2yLE7pe0UoDuR6LGUrPQAuQzrTvuKs=";
+
vendorSha256 = "sha256-+Qdxnd+IhBNfZ0R2lCfPGJSjpTw1TA6uPjykCfrYtMk=";
buildFlagsArray = [
"-ldflags="
+2 -2
pkgs/tools/misc/pcb2gcode/default.nix
···
stdenv.mkDerivation rec {
pname = "pcb2gcode";
-
version = "2.3.0";
+
version = "2.3.1";
src = fetchFromGitHub {
owner = "pcb2gcode";
repo = "pcb2gcode";
rev = "v${version}";
-
sha256 = "sha256-BELugmnnedqXTnSwiQN3XbqkWKTKF27ElQAwrEWNSao=";
+
sha256 = "sha256-blbfpMBe7X3OrNbBiz8fNzKcS/bbViQUTXtdxZpXPBk=";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
+3 -3
pkgs/tools/misc/starship/default.nix
···
rustPlatform.buildRustPackage rec {
pname = "starship";
-
version = "0.51.0";
+
version = "0.52.1";
src = fetchFromGitHub {
owner = "starship";
repo = pname;
rev = "v${version}";
-
sha256 = "1bmnwvjhw2ba7yqn9if83d57b8qbrbqgy2br8q2drz4ylk0gjirg";
+
sha256 = "sha256-BX+NUF7mgZyrloj3h9YcG2r6ZZWO20hXQYbBvaK34JQ=";
};
nativeBuildInputs = [ installShellFiles ] ++ lib.optionals stdenv.isLinux [ pkg-config ];
···
done
'';
-
cargoSha256 = "1d4ca8yzx437x53i7z2kddv9db89zy6ywbgl6y1cwwd6wscbrxcq";
+
cargoSha256 = "sha256-8xqbPkdIVfAkeG1WZFq56N0rcF+uh2FeMKzz4FgMFYs=";
preCheck = ''
HOME=$TMPDIR
+3 -3
pkgs/tools/misc/vector/default.nix
···
rustPlatform.buildRustPackage rec {
pname = "vector";
-
version = "0.12.2";
+
version = "0.13.0";
src = fetchFromGitHub {
owner = "timberio";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-LutCzpJo47wvEze7bAObRVraNhVuQFc9NQ79NzKA9CM=";
+
sha256 = "sha256-Sur5QfPIoJXkcYdyNlIHOvmV2yBedhNm7UinmaFEc2E=";
};
-
cargoSha256 = "sha256-GU5p9DB5Bk8eQc1B/WA87grbVJVcT1ELJ0WzmRYgDzc=";
+
cargoSha256 = "sha256-1Xm1X1pfx9J0tBck2WA+zt2OxtQsqustcWPazsPyKPY=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl protobuf rdkafka ]
++ lib.optional stdenv.isDarwin [ Security libiconv coreutils CoreServices ];
+3 -3
pkgs/tools/networking/croc/default.nix
···
buildGoModule rec {
pname = "croc";
-
version = "8.6.12";
+
version = "9.1.0";
src = fetchFromGitHub {
owner = "schollz";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-Oad0JpeeCpIHfH9e1pTKtrnvZ+eFx3dR5GP6g6piFS0=";
+
sha256 = "sha256-teH4Y6PrUSE7Rxw0WV7Ka+CB44nwYXy9q09wOAhC8Bc=";
};
-
vendorSha256 = "sha256-LYMZFaCNlJg+9Hoh2VbY6tMHv6oT7r+JHBcQYpOceRQ=";
+
vendorSha256 = "sha256-HPUvL22BrVH9/j41VFaystZWs0LO6KNIf2cNYqKxWnY=";
doCheck = false;
+4 -4
pkgs/tools/networking/lychee/default.nix
···
rustPlatform.buildRustPackage rec {
pname = "lychee";
-
version = "0.5.0";
+
version = "0.7.0";
src = fetchFromGitHub {
owner = "lycheeverse";
repo = pname;
-
rev = "v${version}";
-
sha256 = "03dsp0384mwr51dkqfl25xba0m17sppabiz7slhxcig89b0ksykm";
+
rev = version;
+
sha256 = "0kpwpbv0dqb0p4bxjlcjas6x1n91rdsvy2psrc1nyr1sh6gb1q5j";
};
-
cargoSha256 = "08y2wpm2qgm2jsy257b2p2anxy4q3bj2kfdr5cnb6wnaz9g4ypq2";
+
cargoSha256 = "1b915zkg41n3azk4hhg6fgc83n7iq8p7drvdyil2m2a4qdjvp9r3";
nativeBuildInputs = [ pkg-config ];
+46
pkgs/tools/security/flare-floss/default.nix
···
+
{ lib
+
, python2
+
, fetchFromGitHub
+
}:
+
python2.pkgs.buildPythonPackage rec {
+
pname = "flare-floss";
+
version = "1.7.0";
+
+
src = fetchFromGitHub {
+
owner = "fireeye";
+
repo = "flare-floss";
+
rev = "v${version}";
+
sha256 = "GMOA1+qM2A/Qw33kOTIINEvjsfqjWQWBXHNemh3IK8w=";
+
};
+
+
propagatedBuildInputs = with python2.pkgs; [
+
pyyaml
+
simplejson
+
tabulate
+
vivisect
+
plugnplay
+
viv-utils
+
enum34
+
];
+
+
checkInputs = [
+
python2.pkgs.pytestCheckHook
+
];
+
+
disabledTests = [
+
# test data is in a submodule
+
"test_main"
+
];
+
+
pythonImportsCheck = [
+
"floss"
+
"floss.plugins"
+
];
+
+
meta = with lib; {
+
description = "Automatically extract obfuscated strings from malware";
+
homepage = "https://github.com/fireeye/flare-floss";
+
license = licenses.asl20;
+
maintainers = teams.determinatesystems.members;
+
};
+
}
+11 -4
pkgs/tools/security/yarGen/default.nix
···
{ lib
, python3
, fetchFromGitHub
+
, fetchpatch
}:
python3.pkgs.buildPythonApplication rec {
pname = "yarGen";
···
sha256 = "6PJNAeeLAyUlZcIi0g57sO1Ex6atn7JhbK9kDbNrZ6A=";
};
+
patches = [
+
# https://github.com/Neo23x0/yarGen/pull/33
+
(fetchpatch {
+
name = "use-built-in-scandir.patch";
+
url = "https://github.com/Neo23x0/yarGen/commit/cae14ac8efeb5536885792cae99d1d0f7fb6fde3.patch";
+
sha256 = "0z6925r7n1iysld5c8li5nkm1dbxg8j7pn0626a4vic525vf8ndl";
+
})
+
];
+
installPhase = ''
runHook preInstall
-
mkdir -p $out/bin
-
chmod +x yarGen.py
-
mv yarGen.py $out/bin/yargen
+
install -Dt "$out/bin" yarGen.py
runHook postInstall
'';
propagatedBuildInputs = with python3.pkgs; [
-
scandir
pefile
lxml
];
+48
pkgs/tools/text/dcs/default.nix
···
+
{ lib
+
, buildGoModule
+
, fetchFromGitHub
+
, python3Packages
+
, perl
+
, zopfli
+
, stdenv
+
}:
+
buildGoModule {
+
pname = "dcs";
+
version = "unstable-2021-04-07";
+
+
src = fetchFromGitHub {
+
owner = "Debian";
+
repo = "dcs";
+
rev = "da46accc4d55e9bfde1a6852ac5a9e730fcbbb2c";
+
sha256 = "N+6BXlKn1YTlh0ZdPNWa0nuJNcQtlUIc9TocM8cbzQk=";
+
};
+
+
vendorSha256 = "l2mziuisx0HzuP88rS5M+Wha6lu8P036wJYZlmzjWfs=";
+
+
# Depends on dcs binaries
+
doCheck = false;
+
+
nativeBuildInputs = [
+
python3Packages.slimit
+
(perl.withPackages (p: [ p.CSSMinifier ]))
+
zopfli
+
];
+
+
postBuild = ''
+
make -C static -j$NIX_BUILD_CORES
+
'';
+
+
postInstall = ''
+
mkdir -p $out/share/dcs
+
cp -r cmd/dcs-web/templates $out/share/dcs
+
cp -r static $out/share/dcs
+
'';
+
+
meta = with lib; {
+
description = "Debian Code Search";
+
homepage = "https://github.com/Debian/dcs";
+
license = licenses.bsd3;
+
maintainers = teams.determinatesystems.members;
+
broken = stdenv.isAarch64;
+
};
+
}
+10 -4
pkgs/top-level/all-packages.nix
···
find-cursor = callPackage ../tools/X11/find-cursor { };
+
flare-floss = callPackage ../tools/security/flare-floss { };
+
prefer-remote-fetch = import ../build-support/prefer-remote-fetch;
global-platform-pro = callPackage ../development/tools/global-platform-pro/default.nix { };
···
lexicon = callPackage ../tools/admin/lexicon { };
-
lief = callPackage ../development/libraries/lief {};
+
lief = callPackage ../development/libraries/lief {
+
python = python3;
+
};
libnbd = callPackage ../development/libraries/libnbd { };
···
dconf2nix = callPackage ../development/tools/haskell/dconf2nix { };
dcraw = callPackage ../tools/graphics/dcraw { };
+
+
dcs = callPackage ../tools/text/dcs { };
dcfldd = callPackage ../tools/system/dcfldd { };
···
csmith = callPackage ../development/tools/misc/csmith { };
csslint = callPackage ../development/web/csslint { };
+
+
css-html-js-minify = with python3Packages; toPythonApplication css-html-js-minify;
cvise = python3Packages.callPackage ../development/tools/misc/cvise {
inherit (llvmPackages_11) llvm clang-unwrapped;
···
aspino = callPackage ../applications/science/logic/aspino {};
-
beluga = callPackage ../applications/science/logic/beluga {
-
ocamlPackages = ocaml-ng.ocamlPackages_4_07;
-
};
+
beluga = callPackage ../applications/science/logic/beluga {};
boogie = dotnetPackages.Boogie;
+14
pkgs/top-level/perl-packages.nix
···
propagatedBuildInputs = [ Clone ];
};
+
CSSMinifier = buildPerlPackage {
+
pname = "CSS-Minifier";
+
version = "0.01";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/P/PM/PMICHAUX/CSS-Minifier-0.01.tar.gz";
+
sha256 = "0Kk0m46LfoOrcM+IVM+7Qv8pwfbHyCmPIlfdIaoMf+8=";
+
};
+
meta = with lib; {
+
description = "Perl extension for minifying CSS";
+
license = licenses.artistic1;
+
maintainers = teams.determinatesystems.members;
+
};
+
};
+
CSSMinifierXS = buildPerlModule {
pname = "CSS-Minifier-XS";
version = "0.09";
+22
pkgs/top-level/python-packages.nix
···
cssmin = callPackage ../development/python-modules/cssmin { };
+
css-html-js-minify = callPackage ../development/python-modules/css-html-js-minify { };
+
css-parser = callPackage ../development/python-modules/css-parser { };
cssselect2 = callPackage ../development/python-modules/cssselect2 { };
···
cx_Freeze = callPackage ../development/python-modules/cx_freeze { };
cx_oracle = callPackage ../development/python-modules/cx_oracle { };
+
+
cxxfilt = callPackage ../development/python-modules/cxxfilt { };
cycler = callPackage ../development/python-modules/cycler { };
···
deepmerge = callPackage ../development/python-modules/deepmerge { };
deeptoolsintervals = callPackage ../development/python-modules/deeptoolsintervals { };
+
+
deezer-python = callPackage ../development/python-modules/deezer-python { };
defcon = callPackage ../development/python-modules/defcon { };
···
license-expression = callPackage ../development/python-modules/license-expression { };
+
lief = (toPythonModule (pkgs.lief.override {
+
inherit python;
+
})).py;
+
lightgbm = callPackage ../development/python-modules/lightgbm { };
lightning = callPackage ../development/python-modules/lightning { };
···
multi_key_dict = callPackage ../development/python-modules/multi_key_dict { };
+
multimethod = callPackage ../development/python-modules/multimethod { };
+
multipledispatch = callPackage ../development/python-modules/multipledispatch { };
multiprocess = callPackage ../development/python-modules/multiprocess { };
···
pluggy = callPackage ../development/python-modules/pluggy { };
pluginbase = callPackage ../development/python-modules/pluginbase { };
+
+
plugnplay = callPackage ../development/python-modules/plugnplay { };
plugwise = callPackage ../development/python-modules/plugwise { };
···
sphinx-jinja = callPackage ../development/python-modules/sphinx-jinja { };
+
sphinx-material = callPackage ../development/python-modules/sphinx-material { };
+
sphinx-navtree = callPackage ../development/python-modules/sphinx-navtree { };
sphinx_pypi_upload = callPackage ../development/python-modules/sphinx_pypi_upload { };
···
vispy = callPackage ../development/python-modules/vispy { };
+
vivisect = callPackage ../development/python-modules/vivisect { };
+
+
viv-utils = callPackage ../development/python-modules/viv-utils { };
+
vmprof = callPackage ../development/python-modules/vmprof { };
vncdo = callPackage ../development/python-modules/vncdo { };
···
wled = callPackage ../development/python-modules/wled { };
woob = callPackage ../development/python-modules/woob { };
+
+
woodblock = callPackage ../development/python-modules/woodblock { };
word2vec = callPackage ../development/python-modules/word2vec { };