0
0
Fork 0
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-07-13 21:50:33 +03:00

Merge master into staging-next

This commit is contained in:
github-actions[bot] 2022-01-23 12:02:06 +00:00 committed by GitHub
commit 8d5200b415
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
40 changed files with 3299 additions and 2000 deletions

View file

@ -229,6 +229,7 @@ with lib.maintainers; {
php = {
members = [
aanderse
drupol
etu
globin
ma27

View file

@ -43,6 +43,7 @@ in
# This folder must be writeable as the application is storing
# its data in it, so the StateDirectory is a good choice
N8N_USER_FOLDER = "/var/lib/n8n";
HOME = "/var/lib/n8n";
N8N_CONFIG_FILES = "${configFile}";
};
serviceConfig = {

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, pkg-config, libtool
{ lib, stdenv, fetchFromGitHub, pkg-config, libtool
, bzip2, zlib, libX11, libXext, libXt, fontconfig, freetype, ghostscript, libjpeg, djvulibre
, lcms2, openexr, libjxl, libpng, liblqr1, libraw, librsvg, libtiff, libxml2, openjpeg, libwebp, libheif
, ApplicationServices
@ -18,11 +18,13 @@ in
stdenv.mkDerivation rec {
pname = "imagemagick";
version = "7.1.0-19";
version = "7.1.0-20";
src = fetchurl {
url = "https://download.imagemagick.org/ImageMagick/download/releases/ImageMagick-${version}.tar.xz";
hash = "sha256-P9eRdKsPMLwWQ68+ZU8dL/zDqVVCY5gRVWiLT0n3/Xc=";
src = fetchFromGitHub {
owner = "ImageMagick";
repo = "ImageMagick";
rev = version;
sha256 = "0r8zmk2cfmf09l94hqzfz4aspnzn178ggdbgm7w4hr0p864cbvc3";
};
outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big

View file

@ -1,8 +1,9 @@
{ pkgs, nodejs, stdenv, lib, ... }:
{ pkgs, nodejs-14_x, stdenv, lib }:
let
nodePackages = import ./node-composition.nix {
inherit pkgs nodejs;
inherit pkgs;
nodejs = nodejs-14_x;
inherit (stdenv.hostPlatform) system;
};
in
@ -10,9 +11,10 @@ nodePackages.n8n.override {
nativeBuildInputs = with pkgs.nodePackages; [
node-pre-gyp
];
meta = with lib; {
description = "Free and open fair-code licensed node based Workflow Automation Tool";
maintainers = with maintainers; [ freezeboy ];
maintainers = with maintainers; [ freezeboy k900 ];
license = licenses.asl20;
};
}

View file

@ -1,7 +1,19 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p nodePackages.node2nix
# --strip-optional-dependencies to get rid of deprecated build deps:
#
# n8n
# -> n8n-nodes-base
# -> ssh2-sftp-client
# -> ssh2
# -> cpu-features
# -> node-gyp@3.8.0 -> python2
# -> cmake
node2nix \
--14 \
--strip-optional-dependencies \
--node-env node-env.nix \
--input package.json \
--output node-packages.nix \

View file

@ -6,7 +6,7 @@
let
nodeEnv = import ./node-env.nix {
inherit (pkgs) stdenv lib python2 runCommand writeTextFile;
inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
inherit pkgs nodejs;
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
};

View file

@ -1,6 +1,6 @@
# This file originates from node2nix
{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile}:
{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile, writeShellScript}:
let
# Workaround to cope with utillinux in Nixpkgs 20.09 and util-linux in Nixpkgs master
@ -40,36 +40,22 @@ let
'';
};
includeDependencies = {dependencies}:
lib.optionalString (dependencies != [])
(lib.concatMapStrings (dependency:
''
# Bundle the dependencies of the package
mkdir -p node_modules
cd node_modules
# Common shell logic
installPackage = writeShellScript "install-package" ''
installPackage() {
local packageName=$1 src=$2
# Only include dependencies if they don't exist. They may also be bundled in the package.
if [ ! -e "${dependency.name}" ]
then
${composePackage dependency}
fi
local strippedName
cd ..
''
) dependencies);
# Recursively composes the dependencies of a package
composePackage = { name, packageName, src, dependencies ? [], ... }@args:
builtins.addErrorContext "while evaluating node package '${packageName}'" ''
DIR=$(pwd)
local DIR=$PWD
cd $TMPDIR
unpackFile ${src}
unpackFile $src
# Make the base dir in which the target dependency resides first
mkdir -p "$(dirname "$DIR/${packageName}")"
mkdir -p "$(dirname "$DIR/$packageName")"
if [ -f "${src}" ]
if [ -f "$src" ]
then
# Figure out what directory has been unpacked
packageDir="$(find . -maxdepth 1 -type d | tail -1)"
@ -79,28 +65,53 @@ let
chmod -R u+w "$packageDir"
# Move the extracted tarball into the output folder
mv "$packageDir" "$DIR/${packageName}"
elif [ -d "${src}" ]
mv "$packageDir" "$DIR/$packageName"
elif [ -d "$src" ]
then
# Get a stripped name (without hash) of the source directory.
# On old nixpkgs it's already set internally.
if [ -z "$strippedName" ]
then
strippedName="$(stripHash ${src})"
strippedName="$(stripHash $src)"
fi
# Restore write permissions to make building work
chmod -R u+w "$strippedName"
# Move the extracted directory into the output folder
mv "$strippedName" "$DIR/${packageName}"
mv "$strippedName" "$DIR/$packageName"
fi
# Unset the stripped name to not confuse the next unpack step
unset strippedName
# Change to the package directory to install dependencies
cd "$DIR/$packageName"
}
'';
# Include the dependencies of the package
cd "$DIR/${packageName}"
# Bundle the dependencies of the package
#
# Only include dependencies if they don't exist. They may also be bundled in the package.
includeDependencies = {dependencies}:
lib.optionalString (dependencies != []) (
''
mkdir -p node_modules
cd node_modules
''
+ (lib.concatMapStrings (dependency:
''
if [ ! -e "${dependency.name}" ]; then
${composePackage dependency}
fi
''
) dependencies)
+ ''
cd ..
''
);
# Recursively composes the dependencies of a package
composePackage = { name, packageName, src, dependencies ? [], ... }@args:
builtins.addErrorContext "while evaluating node package '${packageName}'" ''
installPackage "${packageName}" "${src}"
${includeDependencies { inherit dependencies; }}
cd ..
${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."}
@ -391,13 +402,14 @@ let
, dontStrip ? true
, unpackPhase ? "true"
, buildPhase ? "true"
, meta ? {}
, ... }@args:
let
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ];
extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" "meta" ];
in
stdenv.mkDerivation ({
name = "node_${name}-${version}";
name = "${name}-${version}";
buildInputs = [ tarWrapper python nodejs ]
++ lib.optional (stdenv.isLinux) utillinux
++ lib.optional (stdenv.isDarwin) libtool
@ -414,6 +426,8 @@ let
passAsFile = [ "compositionScript" "pinpointDependenciesScript" ];
installPhase = ''
source ${installPackage}
# Create and enter a root node_modules/ folder
mkdir -p $out/lib/node_modules
cd $out/lib/node_modules
@ -446,6 +460,11 @@ let
# Run post install hook, if provided
runHook postInstall
'';
meta = {
# default to Node.js' platforms
platforms = nodejs.meta.platforms;
} // meta;
} // extraArgs);
# Builds a node environment (a node_modules folder and a set of binaries)
@ -486,6 +505,8 @@ let
passAsFile = [ "includeScript" "pinpointDependenciesScript" ];
installPhase = ''
source ${installPackage}
mkdir -p $out/${packageName}
cd $out/${packageName}

File diff suppressed because it is too large Load diff

View file

@ -53,6 +53,9 @@ stdenv.mkDerivation rec {
buildInputs = [
fribidi
gobject-introspection
];
propagatedBuildInputs = [
gtk4
];

View file

@ -1,29 +0,0 @@
{ stdenv, lib, fetchurl, ocaml, camlp4, findlib, lablgtk-extras }:
let pname = "gtktop-2.0"; in
if lib.versionAtLeast ocaml.version "4.06"
then throw "${pname} is not available for OCaml ${ocaml.version}"
else
stdenv.mkDerivation {
name = "ocaml-${pname}";
src = fetchurl {
url = "http://zoggy.github.io/gtktop/${pname}.tar.gz";
sha256 = "0cpmnavvham9mwxknm6df90g9qxabcvn2kfwlf9mncqa0z3rknz6";
};
buildInputs = [ ocaml camlp4 findlib ];
propagatedBuildInputs = [ lablgtk-extras ];
createFindlibDestdir = true;
meta = {
homepage = "http://zoggy.github.io/gtktop/";
description = "A small OCaml library to ease the creation of graphical toplevels";
license = lib.licenses.lgpl3;
maintainers = with lib.maintainers; [ vbgl ];
platforms = ocaml.meta.platforms or [];
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, ocaml, findlib, pkg-config, gtk2, libgnomecanvas, libglade, gtksourceview, camlp4 }:
{ stdenv, lib, fetchurl, ocaml, findlib, pkg-config, gtk2, libgnomecanvas, gtksourceview, camlp4 }:
if lib.versionAtLeast ocaml.version "4.04"
then throw "lablgtk-2.14 is not available for OCaml ${ocaml.version}" else
@ -17,7 +17,7 @@ stdenv.mkDerivation (rec {
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ ocaml findlib gtk2 libgnomecanvas libglade gtksourceview camlp4 ];
buildInputs = [ ocaml findlib gtk2 libgnomecanvas gtksourceview camlp4 ];
configureFlags = [ "--with-libdir=$(out)/lib/ocaml/${ocaml.version}/site-lib" ];
buildFlags = [ "world" ];

View file

@ -1,14 +1,14 @@
{ lib, stdenv, fetchurl, fetchFromGitHub, ocaml, findlib, pkg-config, gtk2, libgnomecanvas, libglade, gtksourceview }:
{ lib, stdenv, fetchurl, fetchFromGitHub, ocaml, findlib, pkg-config, gtk2, libgnomecanvas, gtksourceview }:
let param =
let check = lib.versionAtLeast ocaml.version; in
if check "4.06" then rec {
version = "2.18.10";
version = "2.18.12";
src = fetchFromGitHub {
owner = "garrigue";
repo = "lablgtk";
rev = version;
sha256 = "0w8cdfcv2wc19sd3qzj3qq77qc6rbnbynsz02gzbl15kgrvgrfxi";
sha256 = "sha256:0asib87c42apwf1ln8541x6i3mvyajqbarifvz11in0mqn5k7g7h";
};
} else if check "3.12" then {
version = "2.18.5";
@ -24,7 +24,7 @@ stdenv.mkDerivation {
inherit (param) version src;
nativeBuildInputs = [ pkg-config ];
buildInputs = [ ocaml findlib gtk2 libgnomecanvas libglade gtksourceview ];
buildInputs = [ ocaml findlib gtk2 libgnomecanvas gtksourceview ];
configureFlags = [ "--with-libdir=$(out)/lib/ocaml/${ocaml.version}/site-lib" ];
buildFlags = [ "world" ];

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "aiohomekit";
version = "0.6.10";
version = "0.6.11";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "Jc2k";
repo = pname;
rev = version;
sha256 = "03p6waxz9pqh0faq0lifwgz0ivdlk9di2wa9gv81iljs6v0vr85v";
sha256 = "1rrdzzb2gcl3lc8l5vb99hy2lmdj5723fds2q78n4sf83y93czw7";
};
nativeBuildInputs = [

View file

@ -0,0 +1,29 @@
{ lib
, buildPythonPackage
, fetchPypi
, requests
}:
buildPythonPackage rec {
pname = "co2signal";
version = "0.4.2";
src = fetchPypi {
inherit version;
pname = "CO2Signal";
hash = "sha256-8YdYbknLICRrZloGUZuscv5e1LIDZBcCPKZs6EMaNuo=";
};
propagatedBuildInputs = [ requests ];
# Modules has no tests
doCheck = false;
pythonImportsCheck = [ "CO2Signal" ];
meta = with lib; {
description = "A package to access the CO2 Signal API ";
homepage = "https://github.com/danielsjf/CO2Signal";
license = licenses.gpl3Only;
maintainers = with maintainers; [ plabadens ];
};
}

View file

@ -5,11 +5,11 @@
buildPythonPackage rec {
pname = "cocotb-bus";
version = "0.2.0";
version = "0.2.1";
src = fetchPypi {
inherit pname version;
sha256 = "3afe3abe73464269247263e44f39d59c1258f227298be4118377a8e8c09d7dc1";
sha256 = "a197aa4b0e0ad28469c8877b41b3fb2ec0206da9f491b9276d1578ce6dd8aa8d";
};
postPatch = ''

View file

@ -17,7 +17,7 @@
buildPythonPackage rec {
pname = "cyclonedx-python-lib";
version = "1.1.0";
version = "1.1.1";
format = "pyproject";
disabled = pythonOlder "3.6";
@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "CycloneDX";
repo = pname;
rev = "v${version}";
hash = "sha256-U8CTSz+weh2IJr9Mc1kAtTa3edydQjMvHVpTVXJ7mYU=";
hash = "sha256-gyqpd3kAW74ax3+ECVEmu4un2N0Xyl/aid4VrBihHxI=";
};
nativeBuildInputs = [

View file

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "diagrams";
version = "0.20.0";
version = "0.21.0";
format = "pyproject";
disabled = pythonOlder "3.6";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "mingrammer";
repo = pname;
rev = "v${version}";
sha256 = "1lcqsy3bvlnlnakjysp8qjhy26bhkp1izi5dvzq2fpsffgxk4si4";
sha256 = "1vj14kqffpafykyr9x5dcfhmqqvxq08lrp94lhqpdzikh6a0a0jx";
};
postPatch = ''

View file

@ -5,12 +5,12 @@
}:
buildPythonPackage rec {
version = "1.0.2";
version = "1.0.4";
pname = "dj-email-url";
src = fetchPypi {
inherit pname version;
sha256 = "838fd4ded9deba53ae757debef431e25fa7fca31d3948b3c4808ccdc84fab2b7";
sha256 = "7ee35df51065d17ac7b55e98ad8eda3a1f6c5d65fc89cdc5de7a96e534942553";
};
checkPhase = ''

View file

@ -11,14 +11,14 @@
buildPythonPackage rec {
pname = "easy-thumbnails";
version = "2.8";
version = "2.8.1";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "fd2249d936671847fc54a2d6c8c87bcca8f803001967dd03bab6b8bcb7590825";
sha256 = "1a283fe8a3569c3feab4605e8279929d75c85c1151b2fd627f95b1863b5fc6c2";
};
propagatedBuildInputs = [

View file

@ -0,0 +1,27 @@
{ lib
, buildPythonPackage
, fetchPypi
, flake8
, pydocstyle
}:
buildPythonPackage rec {
pname = "flake8-docstrings";
version = "1.6.0";
src = fetchPypi {
inherit pname version;
sha256 = "9fe7c6a306064af8e62a055c2f61e9eb1da55f84bb39caef2b84ce53708ac34b";
};
propagatedBuildInputs = [ flake8 pydocstyle ];
pythonImportsCheck = [ "flake8_docstrings" ];
meta = with lib; {
description = "Extension for flake8 which uses pydocstyle to check docstrings";
homepage = "https://gitlab.com/pycqa/flake8-docstrings";
license = licenses.mit;
maintainers = with maintainers; [ smaret ];
};
}

View file

@ -8,7 +8,7 @@
buildPythonPackage rec {
pname = "flux-led";
version = "0.28.4";
version = "0.28.8";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -17,7 +17,7 @@ buildPythonPackage rec {
owner = "Danielhiversen";
repo = "flux_led";
rev = version;
sha256 = "sha256-mD6pTrUAzApJamqqcLzzQI2JDKy3PAn5TtQz5/aPFXg=";
sha256 = "sha256-/dEIrTkioqHBJouqk9pTsR0Xhkd6FoIjjOc5HwMBGrI=";
};
propagatedBuildInputs = [

View file

@ -0,0 +1,32 @@
{ lib
, buildPythonPackage
, fetchPypi
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "gamble";
version = "0.10";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "1lb5x076blnnz2hj7k92pyq0drbjwsls6pmnabpvyvs4ddhz5w9w";
};
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"gamble"
];
meta = with lib; {
description = "Collection of gambling classes/tools";
homepage = "https://github.com/jpetrucciani/gamble";
license = licenses.mit;
maintainers = with maintainers; [ jpetrucciani ];
};
}

View file

@ -11,11 +11,11 @@
buildPythonPackage rec {
pname = "google-cloud-language";
version = "2.3.1";
version = "2.3.2";
src = fetchPypi {
inherit pname version;
sha256 = "e0d71b72e2639af0424308a71f871c3fbf7ea86bdcbac1d91910fe2e1b419944";
sha256 = "90af7858911f52350191575bb729305114c3c80d1f585d0f6cea39ab1ab3e409";
};
propagatedBuildInputs = [ google-api-core libcst proto-plus ];

View file

@ -4,11 +4,11 @@
buildPythonPackage rec {
pname = "gphoto2";
version = "2.3.1";
version = "2.3.2";
src = fetchPypi {
inherit pname version;
sha256 = "5affd12421ba75f4c04f5678aef62f78aae2a7ae74aa23614c6f3799d2784b28";
sha256 = "3b1b52ec3004ad6a6927a015b0572878a0a56314caaf1e62b07550e7a2e09465";
};
nativeBuildInputs = [ pkg-config ];

View file

@ -11,11 +11,11 @@
buildPythonPackage rec {
pname = "ibm-cloud-sdk-core";
version = "3.13.2";
version = "3.14.0";
src = fetchPypi {
inherit pname version;
sha256 = "9c615b3a6e9d9dc1c69d8f38742b156e12408521fa180a66558bbb7b850bbbc2";
sha256 = "695c4125436f4f8354a67bc85af9ac306b66911c75d19ade25072dd436b55c4e";
};
propagatedBuildInputs = [

View file

@ -14,14 +14,14 @@
buildPythonPackage rec {
pname = "influxdb-client";
version = "1.24.0";
version = "1.25.0";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "influxdata";
repo = "influxdb-client-python";
rev = "v${version}";
sha256 = "0w0pw87fnxms88f3dadyhxdgms4rzvcww18h6l87wnqc6wxa6paw";
sha256 = "0anziqlczzc9qmz1mrk8yapn0pc18wz2pknyghyj5qpym3w2azas";
};
propagatedBuildInputs = [

View file

@ -7,7 +7,7 @@
buildPythonPackage rec {
pname = "motionblinds";
version = "0.5.8.2";
version = "0.5.10";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -16,7 +16,7 @@ buildPythonPackage rec {
owner = "starkillerOG";
repo = "motion-blinds";
rev = version;
sha256 = "6aSwUuH5IpfcuVGXWVmb0DHglsUtGh/ATOe6iih6fXk=";
sha256 = "0zz5ardnik370pdfpl77m0hln8rj7ikkvrkyc6fm0vd0w12sihmm";
};
propagatedBuildInputs = [

View file

@ -6,12 +6,12 @@
buildPythonPackage rec {
pname = "phonenumbers";
version = "8.12.40";
version = "8.12.41";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "00f2955a456b458f9b6ab0d24329049c3e7358c44dfc1979fe4908ced40f1eb8";
sha256 = "f477da623a51cba084567d6a67b1882a8aaaf3e7beadad655f8613a8f887ac62";
};
checkInputs = [

View file

@ -11,13 +11,13 @@
buildPythonPackage rec {
pname = "pygraphviz";
version = "1.7";
version = "1.8";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "a7bec6609f37cf1e64898c59f075afd659106cf9356c5f387cecaa2e0cdb2304";
hash = "sha256-6y4losZHBE57ZrWhWb5k2q7yS1Sfz1NcJBNp1ubgnEU=";
extension = "zip";
};
@ -36,9 +36,13 @@ buildPythonPackage rec {
checkInputs = [ pytest ];
checkPhase = ''
runHook preCheck
pytest --pyargs pygraphviz
runHook postCheck
'';
pythonImportsCheck = [ "pygraphviz" ];
meta = with lib; {
description = "Python interface to Graphviz graph drawing package";
homepage = "https://github.com/pygraphviz/pygraphviz";

View file

@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "python-gitlab";
version = "3.0.0";
version = "3.1.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "89f82740b76820cf407cee9c43b75ca3ddb72f344f595902ee963837d7664986";
sha256 = "7216c9100b2a17cae5cf53b4b40ee36a7262d4ead7526c5a6278d911eba74847";
};
propagatedBuildInputs = [

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "pytibber";
version = "0.21.6";
version = "0.22.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "Danielhiversen";
repo = "pyTibber";
rev = version;
hash = "sha256-zgiUXGso3bQ3pCD7r+VYHGBIihPwSfHibS2OZvPUb3Q=";
hash = "sha256-4eARNxVXtJtUC0oxym1kv5z+WkxgCHJZtN3MrIMA8+s=";
};
propagatedBuildInputs = [

View file

@ -6,14 +6,14 @@
buildPythonPackage rec {
pname = "simpleeval";
version = "0.9.11";
version = "0.9.12";
format = "pyproject";
src = fetchFromGitHub {
owner = "danthedeckie";
repo = pname;
rev = version;
sha256 = "111w76mahbf3lm2p72dkqp5fhwg7nvnwm4l078dgsgkixssjazi7";
sha256 = "0khgl729q5133fgc00d550f4r77707rkkn7r56az4v8bvx0q8xp4";
};
checkInputs = [

View file

@ -15,7 +15,7 @@
buildPythonPackage rec {
pname = "zigpy";
version = "0.42.0";
version = "0.43.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -24,7 +24,7 @@ buildPythonPackage rec {
owner = "zigpy";
repo = "zigpy";
rev = version;
sha256 = "sha256-kSUFcN3QOZWFBgDrOopkYuUyBE9asO6MXf0H9CMjFlc=";
sha256 = "1740cv99ny6xy7wfpz754h4wj2cm874b8vnddvff90ajk07qgdia";
};
propagatedBuildInputs = [

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "typos";
version = "1.3.4";
version = "1.3.5";
src = fetchFromGitHub {
owner = "crate-ci";
repo = pname;
rev = "v${version}";
sha256 = "sha256-zseYcam641qln8ax9JNBoJbn4RIsgpUtTfmU/uqeGRw=";
sha256 = "sha256-zL9Ylrl541RCSOliH+X7TfvRZyEXvISsH3N1agjoC8U=";
};
cargoSha256 = "sha256-8ZpdSjldRBrriB2yzyxYkJsjJQ1O4EWzGp52k4Prv2c=";
cargoSha256 = "sha256-qc32MX56/0JaHx/x/5em3SoNi6YM5nduVLrDOQbMZDg=";
meta = with lib; {
description = "Source code spell checker";

View file

@ -1,192 +0,0 @@
{ lib, stdenv, fetchurl, substituteAll
, pkg-config
, cups, libjpeg, libusb1, python2Packages, sane-backends, dbus, usbutils
, net-snmp, openssl, nettools
, bash, util-linux
, qtSupport ? true
, withPlugin ? false
}:
let
name = "hplip-${version}";
version = "3.16.11";
src = fetchurl {
url = "mirror://sourceforge/hplip/${name}.tar.gz";
sha256 = "094vkyr0rjng72m13dgr824cdl7q20x23qjxzih4w7l9njn0rqpn";
};
plugin = fetchurl {
url = "http://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/${name}-plugin.run";
sha256 = "1y3wdax2wb6kdd8bi40wl7v9s8ffyjz95bz42sjcpzzddmlhcaxg";
};
hplipState = substituteAll {
inherit version;
src = ./hplip.state;
};
hplipPlatforms = {
i686-linux = "x86_32";
x86_64-linux = "x86_64";
armv6l-linux = "arm32";
armv7l-linux = "arm32";
aarch64-linux = "arm64";
};
hplipArch = hplipPlatforms.${stdenv.hostPlatform.system}
or (throw "HPLIP not supported on ${stdenv.hostPlatform.system}");
pluginArches = [ "x86_32" "x86_64" "arm32" "arm64" ];
in
assert withPlugin -> builtins.elem hplipArch pluginArches
|| throw "HPLIP plugin not supported on ${stdenv.hostPlatform.system}";
python2Packages.buildPythonApplication {
inherit name src;
format = "other";
buildInputs = [
libjpeg
cups
libusb1
sane-backends
dbus
net-snmp
openssl
];
nativeBuildInputs = [
pkg-config
];
pythonPath = with python2Packages; [
dbus
pillow
pygobject2
reportlab
usbutils
] ++ lib.optionals qtSupport [
pyqt4
];
makeWrapperArgs = [ "--prefix" "PATH" ":" "${nettools}/bin" ];
prePatch = ''
# HPLIP hardcodes absolute paths everywhere. Nuke from orbit.
find . -type f -exec sed -i \
-e s,/etc/hp,$out/etc/hp, \
-e s,/etc/sane.d,$out/etc/sane.d, \
-e s,/usr/include/libusb-1.0,${libusb1.dev}/include/libusb-1.0, \
-e s,/usr/share/hal/fdi/preprobe/10osvendor,$out/share/hal/fdi/preprobe/10osvendor, \
-e s,/usr/lib/systemd/system,$out/lib/systemd/system, \
-e s,/var/lib/hp,$out/var/lib/hp, \
{} +
'';
preConfigure = ''
export configureFlags="$configureFlags
--with-hpppddir=$out/share/cups/model/HP
--with-cupsfilterdir=$out/lib/cups/filter
--with-cupsbackenddir=$out/lib/cups/backend
--with-icondir=$out/share/applications
--with-systraydir=$out/xdg/autostart
--with-mimedir=$out/etc/cups
--enable-policykit
"
export makeFlags="
halpredir=$out/share/hal/fdi/preprobe/10osvendor
rulesdir=$out/etc/udev/rules.d
policykit_dir=$out/share/polkit-1/actions
policykit_dbus_etcdir=$out/etc/dbus-1/system.d
policykit_dbus_sharedir=$out/share/dbus-1/system-services
hplip_confdir=$out/etc/hp
hplip_statedir=$out/var/lib/hp
"
'';
enableParallelBuilding = true;
postInstall = lib.optionalString withPlugin ''
sh ${plugin} --noexec --keep
cd plugin_tmp
cp plugin.spec $out/share/hplip/
mkdir -p $out/share/hplip/data/firmware
cp *.fw.gz $out/share/hplip/data/firmware
mkdir -p $out/share/hplip/data/plugins
cp license.txt $out/share/hplip/data/plugins
mkdir -p $out/share/hplip/prnt/plugins
for plugin in lj hbpl1; do
cp $plugin-${hplipArch}.so $out/share/hplip/prnt/plugins
ln -s $out/share/hplip/prnt/plugins/$plugin-${hplipArch}.so \
$out/share/hplip/prnt/plugins/$plugin.so
done
mkdir -p $out/share/hplip/scan/plugins
for plugin in bb_soap bb_marvell bb_soapht fax_marvell; do
cp $plugin-${hplipArch}.so $out/share/hplip/scan/plugins
ln -s $out/share/hplip/scan/plugins/$plugin-${hplipArch}.so \
$out/share/hplip/scan/plugins/$plugin.so
done
mkdir -p $out/var/lib/hp
cp ${hplipState} $out/var/lib/hp/hplip.state
mkdir -p $out/etc/sane.d/dll.d
mv $out/etc/sane.d/dll.conf $out/etc/sane.d/dll.d/hpaio.conf
'';
# The installed executables are just symlinks into $out/share/hplip,
# but wrapPythonPrograms ignores symlinks. We cannot replace the Python
# modules in $out/share/hplip with wrapper scripts because they import
# each other as libraries. Instead, we emulate wrapPythonPrograms by
# 1. Calling patchPythonProgram on the original script in $out/share/hplip
# 2. Making our own wrapper pointing directly to the original script.
dontWrapPythonPrograms = true;
preFixup = ''
buildPythonPath "$out $pythonPath"
for bin in $out/bin/*; do
py=$(readlink -m $bin)
rm $bin
echo "patching \`$py'..."
patchPythonScript "$py"
echo "wrapping \`$bin'..."
makeWrapper "$py" "$bin" \
--prefix PATH ':' "$program_PATH" \
--set PYTHONNOUSERSITE "true" \
$makeWrapperArgs
done
'';
postFixup = ''
substituteInPlace $out/etc/hp/hplip.conf --replace /usr $out
# Patch udev rules:
# with plugin, they upload firmware to printers,
# without plugin, they complain about the missing plugin.
substituteInPlace $out/etc/udev/rules.d/56-hpmud.rules \
--replace {,${bash}}/bin/sh \
--replace /usr/bin/nohup "" \
--replace {,${util-linux}/bin/}logger \
--replace {/usr,$out}/bin
'';
meta = with lib; {
description = "Print, scan and fax HP drivers for Linux";
homepage = "http://hplipopensource.com/";
downloadPage = "https://sourceforge.net/projects/hplip/files/hplip/";
license = if withPlugin
then licenses.unfree
else with licenses; [ mit bsd2 gpl2Plus ];
platforms = [ "i686-linux" "x86_64-linux" "armv6l-linux" "armv7l-linux" "aarch64-linux" ];
maintainers = with maintainers; [ ttuegel ];
};
}

View file

@ -135,7 +135,7 @@
"cloud" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa ];
"cloudflare" = ps: with ps; [ pycfdns ];
"cmus" = ps: with ps; [ ]; # missing inputs: pycmus
"co2signal" = ps: with ps; [ ]; # missing inputs: co2signal
"co2signal" = ps: with ps; [ co2signal ];
"coinbase" = ps: with ps; [ ]; # missing inputs: coinbase
"color_extractor" = ps: with ps; [ colorthief ];
"comed_hourly_pricing" = ps: with ps; [ ];
@ -1090,6 +1090,7 @@
"climate"
"cloud"
"cloudflare"
"co2signal"
"color_extractor"
"comfoconnect"
"command_line"

View file

@ -9,8 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "13216b8rfkzak5k6bvpx6jvqv3cnbgpijnjwj8a8d3kq4cl0a1ra";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ libxslt docbook_xsl ];
nativeBuildInputs = [ makeWrapper libxslt docbook_xsl ];
preFixup = ''
# fallback values need to be last

View file

@ -32921,10 +32921,6 @@ with pkgs;
hplipWithPlugin = hplip.override { withPlugin = true; };
hplip_3_16_11 = callPackage ../misc/drivers/hplip/3.16.11.nix { };
hplipWithPlugin_3_16_11 = hplip_3_16_11.override { withPlugin = true; };
hyperfine = callPackage ../tools/misc/hyperfine {
inherit (darwin.apple_sdk.frameworks) Security;
};

View file

@ -513,8 +513,6 @@ let
graphql_ppx = callPackage ../development/ocaml-modules/graphql_ppx { };
gtktop = callPackage ../development/ocaml-modules/gtktop { };
hex = callPackage ../development/ocaml-modules/hex { };
httpaf = callPackage ../development/ocaml-modules/httpaf { };
@ -600,10 +598,10 @@ let
lablgtk3-sourceview3 = callPackage ../development/ocaml-modules/lablgtk3/sourceview3.nix { };
lablgtk_2_14 = callPackage ../development/ocaml-modules/lablgtk/2.14.0.nix {
inherit (pkgs.gnome2) libgnomecanvas libglade gtksourceview;
inherit (pkgs.gnome2) libgnomecanvas gtksourceview;
};
lablgtk = callPackage ../development/ocaml-modules/lablgtk {
inherit (pkgs.gnome2) libgnomecanvas libglade gtksourceview;
inherit (pkgs.gnome2) libgnomecanvas gtksourceview;
};
lablgtk-extras =

View file

@ -1705,6 +1705,8 @@ in {
cnvkit = callPackage ../development/python-modules/cnvkit { };
co2signal = callPackage ../development/python-modules/co2signal { };
coapthon3 = callPackage ../development/python-modules/coapthon3 { };
coconut = callPackage ../development/python-modules/coconut { };
@ -2842,6 +2844,8 @@ in {
flake8-debugger = callPackage ../development/python-modules/flake8-debugger { };
flake8-docstrings = callPackage ../development/python-modules/flake8-docstrings { };
flake8-future-import = callPackage ../development/python-modules/flake8-future-import { };
flake8-import-order = callPackage ../development/python-modules/flake8-import-order { };
@ -3101,6 +3105,8 @@ in {
pythonPackages = self;
});
gamble = callPackage ../development/python-modules/gamble { };
gaphas = callPackage ../development/python-modules/gaphas { };
garminconnect-aio = callPackage ../development/python-modules/garminconnect-aio { };