Merge staging-next into staging
This commit is contained in:
commit
be53401bb8
42 changed files with 514 additions and 298 deletions
|
@ -9,7 +9,15 @@ Platform-specific code is in the respective default.nix files.
|
|||
{ config, lib, options, pkgs, ... }:
|
||||
|
||||
let
|
||||
inherit (lib) mkOption mkIf types filterAttrs literalExample mkRenamedOptionModule;
|
||||
inherit (lib)
|
||||
filterAttrs
|
||||
literalExample
|
||||
mkIf
|
||||
mkOption
|
||||
mkRemovedOptionModule
|
||||
mkRenamedOptionModule
|
||||
types
|
||||
;
|
||||
|
||||
cfg =
|
||||
config.services.hercules-ci-agent;
|
||||
|
@ -77,10 +85,11 @@ let
|
|||
};
|
||||
};
|
||||
|
||||
# TODO (2022) remove
|
||||
checkNix =
|
||||
if !cfg.checkNix
|
||||
then ""
|
||||
else if lib.versionAtLeast config.nix.package.version "2.4.0"
|
||||
else if lib.versionAtLeast config.nix.package.version "2.3.10"
|
||||
then ""
|
||||
else pkgs.stdenv.mkDerivation {
|
||||
name = "hercules-ci-check-system-nix-src";
|
||||
|
@ -88,23 +97,12 @@ let
|
|||
configurePhase = ":";
|
||||
buildPhase = ''
|
||||
echo "Checking in-memory pathInfoCache expiry"
|
||||
if ! grep 'struct PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then
|
||||
if ! grep 'PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then
|
||||
cat 1>&2 <<EOF
|
||||
|
||||
You are deploying Hercules CI Agent on a system with an incompatible
|
||||
nix-daemon. Please
|
||||
- either upgrade Nix to version 2.4.0 (when released),
|
||||
- or set option services.hercules-ci-agent.patchNix = true;
|
||||
- or set option nix.package to a build of Nix 2.3 with this patch applied:
|
||||
https://github.com/NixOS/nix/pull/3405
|
||||
|
||||
The patch is required for Nix-daemon clients that expect a change in binary
|
||||
cache contents while running, like the agent's evaluator. Without it, import
|
||||
from derivation will fail if your cluster has more than one machine.
|
||||
We are conservative with changes to the overall system, which is why we
|
||||
keep changes to a minimum and why we ask for confirmation in the form of
|
||||
services.hercules-ci-agent.patchNix = true before applying.
|
||||
|
||||
nix-daemon. Please make sure nix.package is set to a Nix version of at
|
||||
least 2.3.10 or a master version more recent than Mar 12, 2020.
|
||||
EOF
|
||||
exit 1
|
||||
fi
|
||||
|
@ -112,26 +110,13 @@ let
|
|||
installPhase = "touch $out";
|
||||
};
|
||||
|
||||
patchedNix = lib.mkIf (!lib.versionAtLeast pkgs.nix.version "2.4.0") (
|
||||
if lib.versionAtLeast pkgs.nix.version "2.4pre"
|
||||
then lib.warn "Hercules CI Agent module will not patch 2.4 pre-release. Make sure it includes (equivalently) PR #3043, commit d048577909 or is no older than 2020-03-13." pkgs.nix
|
||||
else pkgs.nix.overrideAttrs (
|
||||
o: {
|
||||
patches = (o.patches or []) ++ [ backportNix3398 ];
|
||||
}
|
||||
)
|
||||
);
|
||||
|
||||
backportNix3398 = pkgs.fetchurl {
|
||||
url = "https://raw.githubusercontent.com/hercules-ci/hercules-ci-agent/hercules-ci-agent-0.7.3/for-upstream/issue-3398-path-info-cache-ttls-backport-2.3.patch";
|
||||
sha256 = "0jfckqjir9il2il7904yc1qyadw366y7xqzg81sp9sl3f1pw70ib";
|
||||
};
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
(mkRenamedOptionModule ["services" "hercules-ci-agent" "extraOptions"] ["services" "hercules-ci-agent" "settings"])
|
||||
(mkRenamedOptionModule ["services" "hercules-ci-agent" "baseDirectory"] ["services" "hercules-ci-agent" "settings" "baseDirectory"])
|
||||
(mkRenamedOptionModule ["services" "hercules-ci-agent" "concurrentTasks"] ["services" "hercules-ci-agent" "settings" "concurrentTasks"])
|
||||
(mkRemovedOptionModule ["services" "hercules-ci-agent" "patchNix"] "Nix versions packaged in this version of Nixpkgs don't need a patched nix-daemon to work correctly in Hercules CI Agent clusters.")
|
||||
];
|
||||
|
||||
options.services.hercules-ci-agent = {
|
||||
|
@ -147,15 +132,6 @@ in
|
|||
Support is available at <link xlink:href="mailto:help@hercules-ci.com">help@hercules-ci.com</link>.
|
||||
'';
|
||||
};
|
||||
patchNix = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Fix Nix 2.3 cache path metadata caching behavior. Has the effect of <literal>nix.package = patch pkgs.nix;</literal>
|
||||
|
||||
This option will be removed when Hercules CI Agent moves to Nix 2.4 (upcoming Nix release).
|
||||
'';
|
||||
};
|
||||
checkNix = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
|
@ -206,7 +182,6 @@ in
|
|||
# even shortly after the previous lookup. This *also* applies to the daemon.
|
||||
narinfo-cache-negative-ttl = 0
|
||||
'';
|
||||
nix.package = mkIf cfg.patchNix patchedNix;
|
||||
services.hercules-ci-agent.tomlFile =
|
||||
format.generate "hercules-ci-agent.toml" cfg.settings;
|
||||
};
|
||||
|
|
|
@ -87,6 +87,7 @@ in
|
|||
NoNewPrivileges = true;
|
||||
NonBlocking = true;
|
||||
PrivateDevices = true;
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
|
@ -107,8 +108,13 @@ in
|
|||
SystemCallFilter = [
|
||||
"@system-service"
|
||||
"@chown"
|
||||
"~@aio"
|
||||
"~@keyring"
|
||||
"~@memlock"
|
||||
"~@resources"
|
||||
"@privileged"
|
||||
"~@setuid"
|
||||
"~@sync"
|
||||
"~@timer"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
|
|
@ -3,16 +3,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "clipcat";
|
||||
version = "0.4.19";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xrelkd";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1lhnm521qqy3aw2iyk1dv4yc5ms0c5x5iipx96bz6v6y0cnmf4kw";
|
||||
sha256 = "0rxl3ksjinw07q3p2vjqg80k3c6wx2q7pzpf2344zyfb4gkqzx1c";
|
||||
};
|
||||
|
||||
cargoSha256 = "04iflyvz8g53z658rkxafiyi2m9kzxwl3p1xgkjq7vacmz5jk15c";
|
||||
cargoSha256 = "1ffgvhkdj8wkhlgi0cj0njdm9ycxq2qda4b5qn8bmaygzr2zkwpd";
|
||||
|
||||
LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
|
||||
|
||||
|
@ -38,26 +38,15 @@ rustPlatform.buildRustPackage rec {
|
|||
cargoBuildFlags = [ "--features=all" ];
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --bash --name clipcatd completions/bash-completion/completions/clipcatd
|
||||
installShellCompletion --fish --name clipcatd.fish completions/fish/completions/clipcatd.fish
|
||||
installShellCompletion --zsh --name _clipcatd completions/zsh/site-functions/_clipcatd
|
||||
|
||||
installShellCompletion --bash --name clipcatctl completions/bash-completion/completions/clipcatctl
|
||||
installShellCompletion --fish --name clipcatctl.fish completions/fish/completions/clipcatctl.fish
|
||||
installShellCompletion --zsh --name _clipcatctl completions/zsh/site-functions/_clipcatctl
|
||||
|
||||
installShellCompletion --bash --name clipcat-menu completions/bash-completion/completions/clipcat-menu
|
||||
installShellCompletion --fish --name clipcat-menu.fish completions/fish/completions/clipcat-menu.fish
|
||||
installShellCompletion --zsh --name _clipcat-menu completions/zsh/site-functions/_clipcat-menu
|
||||
|
||||
installShellCompletion --bash --name clipcat-notify completions/bash-completion/completions/clipcat-notify
|
||||
installShellCompletion --fish --name clipcat-notify.fish completions/fish/completions/clipcat-notify.fish
|
||||
installShellCompletion --zsh --name _clipcat-notify completions/zsh/site-functions/_clipcat-notify
|
||||
installShellCompletion --bash completions/bash-completion/completions/*
|
||||
installShellCompletion --fish completions/fish/completions/*
|
||||
installShellCompletion --zsh completions/zsh/site-functions/*
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Clipboard Manager written in Rust Programming Language";
|
||||
license = licenses.gpl3;
|
||||
homepage = "https://github.com/xrelkd/clipcat";
|
||||
license = licenses.gpl3Only;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ xrelkd ];
|
||||
};
|
||||
|
|
|
@ -19,16 +19,16 @@ let
|
|||
maintainers = with maintainers; [ emmanuelrosa dtzWill ];
|
||||
};
|
||||
|
||||
version = "0.43.3";
|
||||
version = "0.43.4";
|
||||
|
||||
desktopSource = {
|
||||
url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz";
|
||||
sha256 = "1k9vcs7pwa89bzivqp0gfs45jzqw216fpypg3ja4n2dzn4qkv2as";
|
||||
sha256 = "0kjysam5alsmnj93fcqq1ivawnra42gn7dch99rrfmvbkxp7hhr8";
|
||||
};
|
||||
|
||||
serverSource = {
|
||||
url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz";
|
||||
sha256 = "1n3v7wdav6mvgcy72mmfhncsa74i0ax1ij5rjczgfjjyiyc5y0rk";
|
||||
sha256 = "128mvmp15mjpb5ipkmr0yn7ahby26shbix3f8q094f4zpxjp83zx";
|
||||
};
|
||||
|
||||
in {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
source $stdenv/setup
|
||||
|
||||
(echo '#!/usr/bin/env sh'; \
|
||||
(echo "#!$SHELL"; \
|
||||
echo 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no "$@"') > ssh
|
||||
chmod +x ssh
|
||||
export CVS_RSH=$PWD/ssh
|
||||
|
|
|
@ -88,15 +88,17 @@ patchShebangs() {
|
|||
newInterpreterLine=${newInterpreterLine%${newInterpreterLine##*[![:space:]]}}
|
||||
|
||||
if [[ -n "$oldPath" && "${oldPath:0:${#NIX_STORE}}" != "$NIX_STORE" ]]; then
|
||||
if [[ -n "$newPath" && "$newPath" != "$oldPath" ]]; then
|
||||
if [[ -n "$newPath" ]] && [[ "$newPath" != "$oldPath" ]]; then
|
||||
echo "$f: interpreter directive changed from \"$oldInterpreterLine\" to \"$newInterpreterLine\""
|
||||
# escape the escape chars so that sed doesn't interpret them
|
||||
escapedInterpreterLine=${newInterpreterLine//\\/\\\\}
|
||||
|
||||
# Preserve times, see: https://github.com/NixOS/nixpkgs/pull/33281
|
||||
timestamp=$(stat --printf "%y" "$f")
|
||||
timestamp=$(mktemp)
|
||||
touch -r "$f" "$timestamp"
|
||||
sed -i -e "1 s|.*|#\!$escapedInterpreterLine|" "$f"
|
||||
touch --date "$timestamp" "$f"
|
||||
touch -r "$timestamp" "$f"
|
||||
rm "$timestamp"
|
||||
fi
|
||||
fi
|
||||
done < <(find "$@" -type f -perm -0100 -print0)
|
||||
|
|
|
@ -1,26 +1,16 @@
|
|||
{ stdenv, lib, fetchurl, fetchpatch }:
|
||||
{ stdenv, lib, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libhugetlbfs";
|
||||
version = "2.22";
|
||||
version = "2.23";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/libhugetlbfs/libhugetlbfs/releases/download/${version}/libhugetlbfs-${version}.tar.gz";
|
||||
sha256 = "11b7k8xvgx68rjzidm12a6l6b23hwi7hj149y9xxfz2j5kmakp4l";
|
||||
sha256 = "0ya4q001g111d3pqlzrf3yaifadl0ccirx5dndz1pih7x3qp41mp";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "dev" "man" "doc" "lib" "out" ];
|
||||
|
||||
patches = [
|
||||
# Don't check that 32-bit and 64-bit libraries don't get installed
|
||||
# to the same place if only one platform is being built for.
|
||||
# Can be removed if build succeeds without it.
|
||||
(fetchpatch {
|
||||
url = "https://groups.google.com/forum/message/raw?msg=libhugetlbfs/IswjDAygfwA/PKy7MZbVAAAJ";
|
||||
sha256 = "00fyrhn380d6swil8pcf4x0krl1113ghswrvjn3m9czc3h4p385a";
|
||||
})
|
||||
];
|
||||
|
||||
postConfigure = ''
|
||||
patchShebangs ld.hugetlbfs
|
||||
'';
|
||||
|
@ -34,8 +24,8 @@ stdenv.mkDerivation rec {
|
|||
"LIBDIR64=$(lib)/$(LIB64)"
|
||||
"EXEDIR=$(bin)/bin"
|
||||
"DOCDIR=$(doc)/share/doc/libhugetlbfs"
|
||||
] ++ map (n: "MANDIR${n}=$(man)/share/man/man${n}")
|
||||
(lib.genList (n: toString (n + 1)) 8);
|
||||
"MANDIR=$(man)/share/man"
|
||||
];
|
||||
|
||||
# Default target builds tests as well, and the tests want a static
|
||||
# libc.
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "openxr-loader";
|
||||
version = "1.0.13";
|
||||
version = "1.0.14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "OpenXR-SDK-Source";
|
||||
rev = "release-${version}";
|
||||
sha256 = "0znhv7x81bvqijk5xhc5w760d5yy6vr5c2y271wpk9lkmxbbcpl1";
|
||||
sha256 = "sha256-ZmaxHm4MPd2q83PLduoavoynqRPEI79IpMfW32gkV14=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake python3 ];
|
||||
|
|
32
pkgs/development/python-modules/ailment/default.nix
Normal file
32
pkgs/development/python-modules/ailment/default.nix
Normal file
|
@ -0,0 +1,32 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, pythonOlder
|
||||
, pyvex
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ailment";
|
||||
version = "9.0.5739";
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1fjwksia6h7w7m5zhys65yr4zxvyfgp9hr1k5dn802p9kvz34bpc";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ pyvex ];
|
||||
|
||||
# Tests depend on angr (possibly a circular dependency)
|
||||
doCheck = false;
|
||||
#pythonImportsCheck = [ "ailment" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "The angr Intermediate Language";
|
||||
homepage = "https://github.com/angr/ailment";
|
||||
license = with licenses; [ bsd2 ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
}
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "archinfo";
|
||||
version = "9.0.5610";
|
||||
version = "9.0.5739";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-YlqCRLx8mqHXMKPCWqcGvHxRBGOxbwMZWPEDX/jEDdI=";
|
||||
sha256 = "sha256-6qjX0r2vLYgJdrKBVKedplfa1yhWv9tBvTu5BsViXBc=";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
|
|
|
@ -1,35 +1,69 @@
|
|||
{ lib, stdenv
|
||||
{ autoPatchelfHook
|
||||
, buildPythonPackage
|
||||
, cmake
|
||||
, fetchPypi
|
||||
, cython
|
||||
, fetchFromGitHub
|
||||
, h3
|
||||
, python
|
||||
, lib
|
||||
, numpy
|
||||
, pytestCheckHook
|
||||
, scikit-build
|
||||
, stdenv
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "h3";
|
||||
version = "3.7.0";
|
||||
version = "3.7.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "cd27fc8ecd9183f93934079b7c986401f499030ff2e2171eace9de462fab561d";
|
||||
# pypi version does not include tests
|
||||
src = fetchFromGitHub {
|
||||
owner = "uber";
|
||||
repo = "h3-py";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-MIVV3kZGsIsaJ/ccJOK3+j1VwkUsZGHS5d1sGOBa1Ec=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./disable-custom-install.patch
|
||||
./hardcode-h3-path.patch
|
||||
dontConfigure = true;
|
||||
|
||||
checkInputs = [ pytestCheckHook ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
scikit-build cmake cython
|
||||
] ++ lib.optionals stdenv.hostPlatform.isLinux [
|
||||
# On Linux the .so files ends up referring to libh3.so instead of the full
|
||||
# Nix store path. I'm not sure why this is happening! On Darwin it works
|
||||
# fine.
|
||||
autoPatchelfHook
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
substituteInPlace h3/h3.py \
|
||||
--subst-var-by libh3_path ${h3}/lib/libh3${stdenv.hostPlatform.extensions.sharedLibrary}
|
||||
'';
|
||||
# This is not needed per-se, it's only added for autoPatchelfHook to work
|
||||
# correctly. See the note above ^^
|
||||
buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ h3 ];
|
||||
|
||||
propagatedBuildInputs = [ numpy ];
|
||||
|
||||
# The following prePatch replaces the h3lib compilation with using the h3 packaged in nixpkgs.
|
||||
#
|
||||
# - Remove the h3lib submodule.
|
||||
# - Patch CMakeLists to avoid building h3lib, and use h3 instead.
|
||||
prePatch =
|
||||
let
|
||||
cmakeCommands = ''
|
||||
include_directories(${h3}/include/h3)
|
||||
link_directories(${h3}/lib)
|
||||
'';
|
||||
in ''
|
||||
rm -r src/h3lib
|
||||
substituteInPlace CMakeLists.txt --replace "add_subdirectory(src/h3lib)" "${cmakeCommands}"
|
||||
'';
|
||||
|
||||
# Extra check to make sure we can import it from Python
|
||||
pythonImportsCheck = [ "h3" ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/uber/h3-py";
|
||||
description = "This library provides Python bindings for the H3 Core Library.";
|
||||
description = "Hierarchical hexagonal geospatial indexing system";
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix ++ platforms.darwin;
|
||||
maintainers = [ maintainers.kalbasit ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
diff --git a/setup.py b/setup.py
|
||||
index 8e1c220..45297b6 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -25,20 +25,6 @@ class CustomBuildExtCommand(build_ext):
|
||||
install_h3(h3_version)
|
||||
|
||||
|
||||
-# Tested with wheel v0.29.0
|
||||
-class BinaryDistribution(Distribution):
|
||||
- def __init__(self, attrs=None):
|
||||
- Distribution.__init__(self, attrs)
|
||||
- # The values used for the name and sources in the Extension below are
|
||||
- # not important, because we override the build_ext command above.
|
||||
- # The normal C extension building logic is never invoked, and is
|
||||
- # replaced with our own custom logic. However, ext_modules cannot be
|
||||
- # empty, because this signals to other parts of distutils that our
|
||||
- # package contains C extensions and thus needs to be built for
|
||||
- # different platforms separately.
|
||||
- self.ext_modules = [Extension('h3c', [])]
|
||||
-
|
||||
-
|
||||
long_description = open('README.rst').read()
|
||||
|
||||
setup(
|
||||
@@ -52,14 +38,10 @@ setup(
|
||||
url='https://github.com/uber/h3-py.git',
|
||||
packages=find_packages(exclude=['tests', 'tests.*']),
|
||||
install_requires=[],
|
||||
- cmdclass={
|
||||
- 'build_ext': CustomBuildExtCommand,
|
||||
- },
|
||||
package_data={
|
||||
'h-py':
|
||||
['out/*.dylib' if platform.system() == 'Darwin' else (
|
||||
'out/*.dll' if platform.system() == 'Windows' else
|
||||
'out/*.so.*')]
|
||||
},
|
||||
- license='Apache License 2.0',
|
||||
- distclass=BinaryDistribution)
|
||||
+ license='Apache License 2.0')
|
|
@ -1,19 +0,0 @@
|
|||
diff --git a/h3/h3.py b/h3/h3.py
|
||||
index 18cf168..2cc7812 100644
|
||||
--- a/h3/h3.py
|
||||
+++ b/h3/h3.py
|
||||
@@ -34,13 +34,7 @@ from ctypes import (
|
||||
POINTER,
|
||||
)
|
||||
|
||||
-_dirname = os.path.dirname(__file__)
|
||||
-libh3_path = ('{}/{}'.format(_dirname, 'out/libh3.1.dylib')
|
||||
- if platform.system() == 'Darwin' else (
|
||||
- '{}/{}'.format(_dirname, 'out/h3.dll') if platform.system() == 'Windows' else
|
||||
- '{}/{}'.format(_dirname, 'out/libh3.so.1')))
|
||||
-
|
||||
-libh3 = cdll.LoadLibrary(libh3_path)
|
||||
+libh3 = cdll.LoadLibrary('@libh3_path@')
|
||||
|
||||
# Type of an H3 index
|
||||
H3Index = c_ulonglong
|
47
pkgs/development/python-modules/libpurecool/default.nix
Normal file
47
pkgs/development/python-modules/libpurecool/default.nix
Normal file
|
@ -0,0 +1,47 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, netifaces
|
||||
, paho-mqtt
|
||||
, pycryptodome
|
||||
, requests
|
||||
, six
|
||||
, zeroconf
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "libpurecool";
|
||||
version = "0.6.4";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1kwbinbg0i4fca1bpx6jwa1fiw71vg0xa89jhq4pmnl5cn9c8kqx";
|
||||
};
|
||||
|
||||
# Remove vendorized zeroconf, https://github.com/etheralm/libpurecool/issues/33
|
||||
postPatch = ''
|
||||
rm libpurecool/zeroconf.py
|
||||
substituteInPlace libpurecool/dyson_pure_cool_link.py \
|
||||
--replace "from .zeroconf import ServiceBrowser, Zeroconf" "from zeroconf import ServiceBrowser, Zeroconf"
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
netifaces
|
||||
paho-mqtt
|
||||
pycryptodome
|
||||
requests
|
||||
six
|
||||
zeroconf
|
||||
];
|
||||
|
||||
# Tests are only present in repo, https://github.com/etheralm/libpurecool/issues/36
|
||||
doCheck = false;
|
||||
pythonImportsCheck = [ "libpurecool" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python library for Dyson devices";
|
||||
homepage = "http://libpurecool.readthedocs.io";
|
||||
license = with licenses; [ asl20 ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
}
|
|
@ -49,6 +49,5 @@ buildPythonPackage rec {
|
|||
homepage = "https://github.com/multiformats/py-multihash";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ rakesh4g ];
|
||||
broken = true; # no longer compatible with base58, no updates in 5 years. Added 2020-11-05
|
||||
};
|
||||
}
|
||||
|
|
39
pkgs/development/python-modules/pyvex/default.nix
Normal file
39
pkgs/development/python-modules/pyvex/default.nix
Normal file
|
@ -0,0 +1,39 @@
|
|||
{ lib
|
||||
, archinfo
|
||||
, bitstring
|
||||
, fetchPypi
|
||||
, cffi
|
||||
, buildPythonPackage
|
||||
, future
|
||||
, pycparser
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyvex";
|
||||
version = "9.0.5739";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1jwxxw2kw7wkz7kh8m8vbavzw6m5k6xph7mazfn3k2qbsshh3lk3";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
archinfo
|
||||
bitstring
|
||||
cffi
|
||||
future
|
||||
pycparser
|
||||
];
|
||||
|
||||
# No tests are available on PyPI, GitHub release has tests
|
||||
# Switch to GitHub release after all angr parts are present
|
||||
doCheck = false;
|
||||
pythonImportsCheck = [ "pyvex" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python interface to libVEX and VEX IR";
|
||||
homepage = "https://github.com/angr/pyvex";
|
||||
license = with licenses; [ bsd2 gpl3Plus lgpl3Plus ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
};
|
||||
}
|
|
@ -15,12 +15,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "sqlite-utils";
|
||||
version = "3.3";
|
||||
version = "3.4.1";
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1linla3za1gb3w0n0k6h3q8in62qhipizff259p14gzmyr95rjjv";
|
||||
sha256 = "sha256-LJuvUTbsL2anQENEuW1oaSUsMEiXnSgLEAhZ6EP5bNs=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
50
pkgs/development/tools/misc/bonnmotion/default.nix
Normal file
50
pkgs/development/tools/misc/bonnmotion/default.nix
Normal file
|
@ -0,0 +1,50 @@
|
|||
{ stdenv, lib, fetchzip, substituteAll, bash, jre }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "bonnmotion";
|
||||
version = "3.0.1";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://sys.cs.uos.de/bonnmotion/src/bonnmotion-${version}.zip";
|
||||
sha256 = "16bjgr0hy6an892m5r3x9yq6rqrl11n91f9rambq5ik1cxjqarxw";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# The software has a non-standard install bash script which kind of works.
|
||||
# However, to make it fully functional, the automatically detection of the
|
||||
# program paths must be substituted with full paths.
|
||||
(substituteAll {
|
||||
src = ./install.patch;
|
||||
inherit bash jre;
|
||||
})
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
./install
|
||||
|
||||
mkdir -p $out/bin $out/share/bonnmotion
|
||||
cp -r ./classes ./lib $out/share/bonnmotion/
|
||||
cp ./bin/bm $out/bin/
|
||||
|
||||
substituteInPlace $out/bin/bm \
|
||||
--replace /build/source $out/share/bonnmotion
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A mobility scenario generation and analysis tool";
|
||||
longDescription = ''
|
||||
BonnMotion is a Java software which creates and analyzes mobility
|
||||
scenarios and is most commonly used as a tool for the investigation of
|
||||
mobile ad hoc network characteristics. The scenarios can also be exported
|
||||
for several network simulators, such as ns-2, ns-3, GloMoSim/QualNet,
|
||||
COOJA, MiXiM, and ONE.
|
||||
'';
|
||||
homepage = "https://sys.cs.uos.de/bonnmotion/";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ oxzi ];
|
||||
};
|
||||
}
|
75
pkgs/development/tools/misc/bonnmotion/install.patch
Normal file
75
pkgs/development/tools/misc/bonnmotion/install.patch
Normal file
|
@ -0,0 +1,75 @@
|
|||
diff --git a/install b/install
|
||||
index 95afa2c..70c5fca 100755
|
||||
--- a/install
|
||||
+++ b/install
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/bash
|
||||
+#!@bash@/bin/bash
|
||||
|
||||
echo "BonnMotion - a mobility scenario generation and analysis tool"
|
||||
echo "Copyright (C) 2002-2012 University of Bonn"
|
||||
@@ -19,28 +19,11 @@ echo "along with this program; if not, write to the Free Software"
|
||||
echo "Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA"
|
||||
echo
|
||||
|
||||
-OS=`uname -s | tr A-Z a-z | sed -e s/_.\*//`
|
||||
-
|
||||
PACKAGE=edu.bonn.cs.iv.bonnmotion
|
||||
-JAVAPATH=`which java 2> /dev/null`
|
||||
-if [ ! "$JAVAPATH" = "" ]
|
||||
-then
|
||||
- JAVAPATH=`dirname ${JAVAPATH}`
|
||||
-fi
|
||||
-echo -n Please enter your Java binary path \[$JAVAPATH\]:\
|
||||
-read KBDENTRY
|
||||
-if [ ! "$KBDENTRY" = "" ]
|
||||
-then
|
||||
- JAVAPATH=$KBDENTRY
|
||||
-fi
|
||||
+JAVAPATH="@jre@/bin"
|
||||
if [ -x "${JAVAPATH}/java" ]
|
||||
then
|
||||
- cd `dirname $0`
|
||||
- BONNMOTION=`pwd`
|
||||
-
|
||||
- cd "${JAVAPATH}"
|
||||
- JAVAPATH=`pwd`
|
||||
- cd "${BONNMOTION}"
|
||||
+ BONNMOTION="$(realpath .)"
|
||||
|
||||
CLASSPATH="${BONNMOTION}/classes"
|
||||
DOCPATH="${BONNMOTION}/javadoc"
|
||||
@@ -52,14 +35,7 @@ then
|
||||
then
|
||||
mkdir "${DOCPATH}"
|
||||
fi
|
||||
- if [ $OS = "cygwin" ]
|
||||
- then
|
||||
- cd "${CLASSPATH}"
|
||||
- CLASSPATH=`cmd.exe /c cd`
|
||||
- cd "${DOCPATH}"
|
||||
- DOCPATH=`cmd.exe /c cd`
|
||||
- fi
|
||||
-
|
||||
+
|
||||
for l in $BONNMOTION/lib/*.jar
|
||||
do
|
||||
LIBRARYPATH=$LIBRARYPATH:$l
|
||||
@@ -69,7 +45,7 @@ then
|
||||
APPS=`ls`
|
||||
cd "${BONNMOTION}/bin"
|
||||
|
||||
- echo \#\!/bin/bash > .head
|
||||
+ echo \#\!@bash@/bin/bash > .head
|
||||
echo >> .head
|
||||
echo BONNMOTION=\"$BONNMOTION\" >> .head
|
||||
echo PACKAGE=\"$PACKAGE\" >> .head
|
||||
@@ -103,8 +79,6 @@ then
|
||||
fi
|
||||
echo "done."
|
||||
echo
|
||||
- echo "$ ./bin/bm -h"
|
||||
- ./bm
|
||||
else
|
||||
echo No executable \"$JAVAPATH/java\", aborting.
|
||||
fi
|
|
@ -16,14 +16,14 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "ppsspp";
|
||||
version = "1.10.3";
|
||||
version = "1.11";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hrydgard";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-W41Poq5S+opkasIGYo13SQZWQF1HjfFnH7u9DW5HNA0=";
|
||||
sha256 = "19948jzqpclf8zfzp3k7s580xfjgqcyfwlcp7x7xj8h8lyypzymx";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -2,12 +2,12 @@
|
|||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "firmware-linux-nonfree";
|
||||
version = "2020-12-18";
|
||||
version = "2021-02-08";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
|
||||
rev = lib.replaceStrings ["-"] [""] version;
|
||||
sha256 = "1rb5b3fzxk5bi6kfqp76q1qszivi0v1kdz1cwj2llp5sd9ns03b5";
|
||||
sha256 = "0c85cd659312isfz1r87qswsgfhy0rljagcwspnvjljqrh9bsgzq";
|
||||
};
|
||||
|
||||
installFlags = [ "DESTDIR=$(out)" ];
|
||||
|
@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation rec {
|
|||
|
||||
outputHashMode = "recursive";
|
||||
outputHashAlgo = "sha256";
|
||||
outputHash = "1p7vn2hfwca6w69jhw5zq70w44ji8mdnibm1z959aalax6ndy146";
|
||||
outputHash = "0l4xsgxdvjffad7a98n42nyqy3ihs6m6hy3qsfkqin9z10413x5n";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Binary firmware collection packaged by kernel.org";
|
||||
|
|
|
@ -1,26 +1,26 @@
|
|||
{
|
||||
"4.14": {
|
||||
"extra": "-hardened1",
|
||||
"name": "linux-hardened-4.14.219-hardened1.patch",
|
||||
"sha256": "0pgpb7phjgil01xbpwqdwyk8k3pv5qlikw4721cmy10aj97plpqw",
|
||||
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.219-hardened1/linux-hardened-4.14.219-hardened1.patch"
|
||||
"name": "linux-hardened-4.14.220-hardened1.patch",
|
||||
"sha256": "083jc9lwr8lwxyfk4r39jcncf2g89srd50crj17jw9ysrp1jpyks",
|
||||
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.220-hardened1/linux-hardened-4.14.220-hardened1.patch"
|
||||
},
|
||||
"4.19": {
|
||||
"extra": "-hardened1",
|
||||
"name": "linux-hardened-4.19.173-hardened1.patch",
|
||||
"sha256": "19ikdwvp3mjh6cl2anhlpzmk1ha4lw1lf9rmvls7pzc7d1bmlwi0",
|
||||
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.173-hardened1/linux-hardened-4.19.173-hardened1.patch"
|
||||
"name": "linux-hardened-4.19.174-hardened1.patch",
|
||||
"sha256": "1ggh7rjqm68gih41a9z2pzm1wm483165lvmigdp604p152157974",
|
||||
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.174-hardened1/linux-hardened-4.19.174-hardened1.patch"
|
||||
},
|
||||
"5.10": {
|
||||
"extra": "-hardened1",
|
||||
"name": "linux-hardened-5.10.13-hardened1.patch",
|
||||
"sha256": "1pn6ddkpairsij8p5130h8iwqq65v6ngn0c3pf6rlavy4az1sw82",
|
||||
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.13-hardened1/linux-hardened-5.10.13-hardened1.patch"
|
||||
"name": "linux-hardened-5.10.14-hardened1.patch",
|
||||
"sha256": "1l84hmwdkyd1nkby0w7vy9j0jhg866bpiw6hriav208dw2r0binx",
|
||||
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.14-hardened1/linux-hardened-5.10.14-hardened1.patch"
|
||||
},
|
||||
"5.4": {
|
||||
"extra": "-hardened1",
|
||||
"name": "linux-hardened-5.4.95-hardened1.patch",
|
||||
"sha256": "04c54xk75gb4p4yfrmjam25jafqz47cqapr38jw2v1plwc98ng4m",
|
||||
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.95-hardened1/linux-hardened-5.4.95-hardened1.patch"
|
||||
"name": "linux-hardened-5.4.96-hardened1.patch",
|
||||
"sha256": "05cb303llr2m5ik5f4v5ykr8ycldkrdb8gvjdr02zm8g0as7agil",
|
||||
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.96-hardened1/linux-hardened-5.4.96-hardened1.patch"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
with lib;
|
||||
|
||||
buildLinux (args // rec {
|
||||
version = "4.14.219";
|
||||
version = "4.14.220";
|
||||
|
||||
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
|
||||
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
|
||||
|
@ -13,6 +13,6 @@ buildLinux (args // rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
||||
sha256 = "1p81p2g1dax225mbc704g1yl96i93nq19j9fpkrzr4f066kwmvkm";
|
||||
sha256 = "1qip0c8nvfximgg4fj9xai741cgvi9f141bsps3zmrryjd796i6h";
|
||||
};
|
||||
} // (args.argsOverride or {}))
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
with lib;
|
||||
|
||||
buildLinux (args // rec {
|
||||
version = "4.19.173";
|
||||
version = "4.19.174";
|
||||
|
||||
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
|
||||
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
|
||||
|
@ -13,6 +13,6 @@ buildLinux (args // rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
||||
sha256 = "0pqr8k0kfnaklb31y29xvqdmgn0pak4qd9pl77lsh6pkwqvd5zfj";
|
||||
sha256 = "1rcy0hfbc3ny52mfrfysknm1q2scqz0g8l28j0qlyw8cx41wgxhg";
|
||||
};
|
||||
} // (args.argsOverride or {}))
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ buildPackages, fetchurl, perl, buildLinux, ... } @ args:
|
||||
|
||||
buildLinux (args // rec {
|
||||
version = "4.4.255";
|
||||
version = "4.4.256";
|
||||
extraMeta.branch = "4.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
||||
sha256 = "0l45csywd30qrs8gwzjjijr5hwpd5s05rbyrxb37vck78znk0f1g";
|
||||
sha256 = "1z7vfy4h0mjvv0rcvvpb55x5fl16c6cgpcafz5gpjp0pw1p2lva8";
|
||||
};
|
||||
} // (args.argsOverride or {}))
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ buildPackages, fetchurl, perl, buildLinux, ... } @ args:
|
||||
|
||||
buildLinux (args // rec {
|
||||
version = "4.9.255";
|
||||
version = "4.9.256";
|
||||
extraMeta.branch = "4.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
|
||||
sha256 = "066101fzq5lr1pznw1hwlvsdgqpv8n7b2yi09qpv3xi0r41jvpxg";
|
||||
sha256 = "15qlv4m56dzv195xjy4yp8qsrkbmv51vwfg0qcm664hkrb4i32y4";
|
||||
};
|
||||
} // (args.argsOverride or {}))
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
with lib;
|
||||
|
||||
buildLinux (args // rec {
|
||||
version = "5.10.13";
|
||||
version = "5.10.14";
|
||||
|
||||
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
|
||||
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
|
||||
|
@ -13,6 +13,6 @@ buildLinux (args // rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
|
||||
sha256 = "1wp1vy9y50ncwlx5yqgya5gy0vdqgzn0icffg6dzmvjwwc68qs86";
|
||||
sha256 = "0ahxga1jdgn8kxln0pn8j42qxx0dhrhm9vcpwilyjnwb36gvf9zs";
|
||||
};
|
||||
} // (args.argsOverride or {}))
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
with lib;
|
||||
|
||||
buildLinux (args // rec {
|
||||
version = "5.4.95";
|
||||
version = "5.4.96";
|
||||
|
||||
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
|
||||
modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
|
||||
|
@ -13,6 +13,6 @@ buildLinux (args // rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
|
||||
sha256 = "0jfl2jwq9z6iymn6sfrdcf9w63nijdzf3ncxc77a5gs6yd2fa2h3";
|
||||
sha256 = "1q7mz69wzk1ps5770l9bj556qyndiz2frjjsl7pigsy5brlxwa7p";
|
||||
};
|
||||
} // (args.argsOverride or {}))
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{ stdenv, lib, fetchsvn, linux
|
||||
, scripts ? fetchsvn {
|
||||
url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
|
||||
rev = "17812";
|
||||
sha256 = "150rh6qakyfzr6afzchf7c05z0dvc39gj0rpfb4ggr7xqpzhxrcc";
|
||||
rev = "17873";
|
||||
sha256 = "1r1c8wagbq3cgxys7ylvsg6bnxiky66xgx9l0282zsmnn3gh83l7";
|
||||
}
|
||||
, ...
|
||||
}:
|
||||
|
|
|
@ -195,7 +195,7 @@
|
|||
"dwd_weather_warnings" = ps: with ps; [ ]; # missing inputs: dwdwfsapi
|
||||
"dweet" = ps: with ps; [ ]; # missing inputs: dweepy
|
||||
"dynalite" = ps: with ps; [ ]; # missing inputs: dynalite_devices
|
||||
"dyson" = ps: with ps; [ aiohttp-cors zeroconf ]; # missing inputs: libpurecool
|
||||
"dyson" = ps: with ps; [ aiohttp-cors libpurecool zeroconf ];
|
||||
"eafm" = ps: with ps; [ aioeafm ];
|
||||
"ebox" = ps: with ps; [ ]; # missing inputs: pyebox
|
||||
"ebusd" = ps: with ps; [ ]; # missing inputs: ebusdpy
|
||||
|
|
|
@ -22,6 +22,17 @@ in
|
|||
fastcgi-cache-purge = throw "fastcgi-cache-purge was renamed to cache-purge";
|
||||
ngx_aws_auth = throw "ngx_aws_auth was renamed to aws-auth";
|
||||
|
||||
akamai-token-validate = {
|
||||
src = fetchFromGitHub {
|
||||
name = "akamai-token-validate";
|
||||
owner = "kaltura";
|
||||
repo = "nginx-akamai-token-validate-module";
|
||||
rev = "34fd0c94d2c43c642f323491c4f4a226cd83b962";
|
||||
sha256 = "0yf34s11vgkcl03wbl6gjngm3p9hs8vvm7hkjkwhjh39vkk2a7cy";
|
||||
};
|
||||
inputs = [ pkgs.openssl ];
|
||||
};
|
||||
|
||||
aws-auth = {
|
||||
src = fetchFromGitHub {
|
||||
name = "aws-auth";
|
||||
|
@ -320,6 +331,17 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
secure-token = {
|
||||
src = fetchFromGitHub {
|
||||
name = "secure-token";
|
||||
owner = "kaltura";
|
||||
repo = "nginx-secure-token-module";
|
||||
rev = "95bdc0d1aca06ea7fe42555f71e65910bd74914d";
|
||||
sha256 = "19wzck1xzq4kz7nyabcwzlank1k7wi7w2wn2c1mwz374c79g8ggp";
|
||||
};
|
||||
inputs = [ pkgs.openssl ];
|
||||
};
|
||||
|
||||
set-misc = {
|
||||
src = fetchFromGitHub {
|
||||
name = "set-misc";
|
||||
|
@ -472,6 +494,17 @@ in
|
|||
inputs = [ pkgs.ffmpeg_3 ];
|
||||
};
|
||||
|
||||
vod = {
|
||||
src = fetchFromGitHub {
|
||||
name = "vod";
|
||||
owner = "kaltura";
|
||||
repo = "nginx-vod-module";
|
||||
rev = "e46079f51282d5a378e6911714b5f3a533bb7700";
|
||||
sha256 = "0pzzq4xcq7jg8mxwnz7srj1nczg9ajd1b8q58qlm03lny8nd2hr5";
|
||||
};
|
||||
inputs = [ pkgs.ffmpeg_3 pkgs.fdk_aac pkgs.openssl pkgs.libxml2 pkgs.libiconv ];
|
||||
};
|
||||
|
||||
vts = {
|
||||
src = fetchFromGitHub {
|
||||
name = "vts";
|
||||
|
|
|
@ -5,20 +5,29 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "promscale";
|
||||
version = "0.1.4";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "timescale";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0179sw5zx552y14lr56adxcgas642xvxpqly6y4m9pi33r1gs8lj";
|
||||
sha256 = "sha256-rXOAAd08NTWFRGnJoAY9xllw6dAA7Xu3qcImIVq9ewE=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256:04gzf0siz96ar4qdkcw6daswy14i1zvl7ir200adhw1c5phppab6";
|
||||
vendorSha256 = "sha256-/woSbtrOI3BVBhh+A2kO1CB1BLzBciwOqvSbGkFeMEU=";
|
||||
|
||||
buildFlagsArray = [ "-ldflags=-s -w -X github.com/timescale/promscale/pkg/version.Version=${version} -X github.com/timescale/promscale/pkg/version.CommitHash=${src.rev}" ];
|
||||
|
||||
doCheck = false; # Requires access to a docker daemon
|
||||
doInstallCheck = true;
|
||||
installCheckPhase = ''
|
||||
if [[ "$("$out/bin/${pname}" -version)" == "${version}" ]]; then
|
||||
echo '${pname} smoke check passed'
|
||||
else
|
||||
echo '${pname} smoke check failed'
|
||||
exit 1
|
||||
fi
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "An open-source analytical platform for Prometheus metrics";
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "roundcube";
|
||||
version = "1.4.10";
|
||||
version = "1.4.11";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/roundcube/roundcubemail/releases/download/${version}/roundcubemail-${version}-complete.tar.gz";
|
||||
sha256 = "03sjvmnrspkiq0w73xvp1w61pcxhv0djrdm3mvs8h0dp9pfc1n53";
|
||||
sha256 = "sha256-rHMZBwwwX8LIjHcjYFVi2GBwMHMr7ukxzbQJHPBeabc=";
|
||||
};
|
||||
|
||||
patches = [ ./0001-Don-t-resolve-symlinks-when-trying-to-find-INSTALL_P.patch ];
|
||||
|
|
|
@ -3,13 +3,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "scrot";
|
||||
version = "1.4";
|
||||
version = "1.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "resurrecting-open-source-projects";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "12xq6glg70icwsvbnfw9gm4dahlbnrc7b6adpd0mpf89h4sj2gds";
|
||||
sha256 = "sha256-4vguodLnCj0sOBLM4oJXTfX1p8hIo3WTwIuViPtZxHQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook autoconf-archive ];
|
||||
|
|
|
@ -11,11 +11,11 @@ assert usePcre -> pcre != null;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "haproxy";
|
||||
version = "2.3.4";
|
||||
version = "2.3.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.haproxy.org/download/${lib.versions.majorMinor version}/src/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-YBSM3+3WsZxAHbzXXM12pTwgvHbEkDK6Mq+YoKXEle0=";
|
||||
sha256 = "sha256-eSRTlTC79VWCnH9Yhr4Lf8+NnI/+CGe3AQvrZwq/vks=";
|
||||
};
|
||||
|
||||
buildInputs = [ openssl zlib ]
|
||||
|
|
|
@ -1,30 +1,23 @@
|
|||
{ lib, fetchFromGitHub, python3Packages, docutils, fetchpatch }:
|
||||
{ lib, fetchFromGitHub, python3Packages, docutils }:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "httpie";
|
||||
version = "2.2.0";
|
||||
version = "2.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jakubroztocil";
|
||||
owner = "httpie";
|
||||
repo = "httpie";
|
||||
rev = version;
|
||||
sha256 = "0caazv24jr0844c4mdx77vzwwi5m869n10wa42cydb08ppx1xxj6";
|
||||
sha256 = "00lafjqg9nfnak0nhcr2l2hzzkwn2y6qv0wdkm6r6f69snizy3hf";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./strip-venv.patch
|
||||
];
|
||||
|
||||
outputs = [ "out" "doc" "man" ];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [ pygments requests setuptools ];
|
||||
dontUseSetuptoolsCheck = true;
|
||||
patches = [
|
||||
./strip-venv.patch
|
||||
|
||||
# Fix `test_ciphers_none_can_be_selected`
|
||||
# TODO: remove on next release
|
||||
(fetchpatch {
|
||||
url = "https://github.com/jakubroztocil/httpie/commit/49e71d252f54871a6bc49cb1cba103d385a543b8.patch";
|
||||
sha256 = "13b2faf50gimj7f17dlx4gmd8ph8ipgihpzfqbvmfjlbf1v95fsj";
|
||||
})
|
||||
];
|
||||
propagatedBuildInputs = with python3Packages; [ pygments requests requests-toolbelt setuptools ];
|
||||
|
||||
checkInputs = with python3Packages; [
|
||||
mock
|
||||
|
@ -70,15 +63,6 @@ python3Packages.buildPythonApplication rec {
|
|||
toHtml CHANGELOG.rst $docdir/html/CHANGELOG.html
|
||||
toHtml CONTRIBUTING.rst $docdir/html/CONTRIBUTING.html
|
||||
|
||||
# change a few links to the local files
|
||||
substituteInPlace $docdir/html/index.html \
|
||||
--replace \
|
||||
'https://github.com/jakubroztocil/httpie/blob/master/CHANGELOG.rst' \
|
||||
"CHANGELOG.html" \
|
||||
--replace \
|
||||
'https://github.com/jakubroztocil/httpie/blob/master/CONTRIBUTING.rst' \
|
||||
"CONTRIBUTING.html"
|
||||
|
||||
${docutils}/bin/rst2man \
|
||||
--strip-elements-with-class=no-web \
|
||||
--title=http \
|
||||
|
@ -94,10 +78,14 @@ python3Packages.buildPythonApplication rec {
|
|||
export PATH=${docutils}/bin:$PATH
|
||||
'';
|
||||
|
||||
meta = {
|
||||
checkPhase = ''
|
||||
py.test ./httpie ./tests --doctest-modules --verbose ./httpie ./tests -k 'not test_chunked and not test_verbose_chunked and not test_multipart_chunked and not test_request_body_from_file_by_path_chunked'
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A command line HTTP client whose goal is to make CLI human-friendly";
|
||||
homepage = "https://httpie.org/";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ antono relrod schneefux ];
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ antono relrod schneefux SuperSandro2000 ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
diff --git a/tests/test_docs.py b/tests/test_docs.py
|
||||
index 7a41822..720ecf6 100644
|
||||
index 340e64d..a6b4dc9 100644
|
||||
--- a/tests/test_docs.py
|
||||
+++ b/tests/test_docs.py
|
||||
@@ -41,12 +41,10 @@ assert filenames
|
||||
|
||||
@@ -42,15 +42,10 @@ assert filenames
|
||||
# HACK: hardcoded paths, venv should be irrelevant, etc.
|
||||
# TODO: replaces the process with Python code
|
||||
# TODO: simplify by using the Python API instead of a subprocess
|
||||
# then we wont’t need the paths.
|
||||
-VENV_BIN = Path(__file__).parent.parent / 'venv/bin'
|
||||
-VENV_PYTHON = VENV_BIN / 'python'
|
||||
-VENV_RST2PSEUDOXML = VENV_BIN / 'rst2pseudoxml.py'
|
||||
|
@ -13,7 +13,10 @@ index 7a41822..720ecf6 100644
|
|||
+VENV_RST2PSEUDOXML = 'rst2pseudoxml.py'
|
||||
|
||||
|
||||
-@pytest.mark.skipif(not os.path.exists(VENV_RST2PSEUDOXML), reason='docutils not installed')
|
||||
-@pytest.mark.skipif(
|
||||
- not VENV_RST2PSEUDOXML.exists(),
|
||||
- reason='docutils not installed',
|
||||
-)
|
||||
@pytest.mark.parametrize('filename', filenames)
|
||||
def test_rst_file_syntax(filename):
|
||||
p = subprocess.Popen(
|
||||
|
|
|
@ -1,52 +0,0 @@
|
|||
From 4315b58e0bffedd145cec61f96062292cd98278e Mon Sep 17 00:00:00 2001
|
||||
From: Pascal Bach <pascal.bach@nextrem.ch>
|
||||
Date: Thu, 23 Jul 2020 21:37:33 +0200
|
||||
Subject: [PATCH] Make compatible with pdfminer.six version 20200720
|
||||
|
||||
---
|
||||
setup.py | 2 +-
|
||||
src/ocrmypdf/pdfinfo/layout.py | 8 ++++++--
|
||||
2 files changed, 7 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/setup.py b/setup.py
|
||||
index bd95ed9..d1f4ab1 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -83,7 +83,7 @@ setup(
|
||||
'cffi >= 1.9.1', # must be a setup and install requirement
|
||||
'coloredlogs >= 14.0', # strictly optional
|
||||
'img2pdf >= 0.3.0, < 0.4', # pure Python, so track HEAD closely
|
||||
- 'pdfminer.six >= 20191110, <= 20200517',
|
||||
+ 'pdfminer.six >= 20191110, <= 20200720',
|
||||
'pikepdf >= 1.14.0, < 2',
|
||||
'Pillow >= 7.0.0',
|
||||
'pluggy >= 0.13.0',
|
||||
diff --git a/src/ocrmypdf/pdfinfo/layout.py b/src/ocrmypdf/pdfinfo/layout.py
|
||||
index 98bd82e..8b41e14 100644
|
||||
--- a/src/ocrmypdf/pdfinfo/layout.py
|
||||
+++ b/src/ocrmypdf/pdfinfo/layout.py
|
||||
@@ -26,7 +26,11 @@ import pdfminer.pdfdevice
|
||||
import pdfminer.pdfinterp
|
||||
from pdfminer.converter import PDFLayoutAnalyzer
|
||||
from pdfminer.layout import LAParams, LTChar, LTPage, LTTextBox
|
||||
-from pdfminer.pdfdocument import PDFTextExtractionNotAllowed
|
||||
+try:
|
||||
+ from pdfminer.pdfdocument import PDFTextExtractionNotAllowedError
|
||||
+except ImportError:
|
||||
+ # Fallback for pdfminer < 20200720
|
||||
+ from pdfminer.pdfdocument import PDFTextExtractionNotAllowed as PDFTextExtractionNotAllowedError
|
||||
from pdfminer.pdffont import PDFSimpleFont, PDFUnicodeNotDefined
|
||||
from pdfminer.pdfpage import PDFPage
|
||||
from pdfminer.utils import bbox2str, matrix2str
|
||||
@@ -239,7 +243,7 @@ def get_page_analysis(infile, pageno, pscript5_mode):
|
||||
with Path(infile).open('rb') as f:
|
||||
page = PDFPage.get_pages(f, pagenos=[pageno], maxpages=0)
|
||||
interp.process_page(next(page))
|
||||
- except PDFTextExtractionNotAllowed:
|
||||
+ except PDFTextExtractionNotAllowedError:
|
||||
raise EncryptedPdfError()
|
||||
finally:
|
||||
if pscript5_mode:
|
||||
--
|
||||
2.27.0
|
||||
|
|
@ -7,7 +7,8 @@
|
|||
, python3
|
||||
, python3Packages
|
||||
, qpdf
|
||||
, lib, stdenv
|
||||
, lib
|
||||
, stdenv
|
||||
, tesseract4
|
||||
, unpaper
|
||||
, substituteAll
|
||||
|
@ -29,18 +30,17 @@ let
|
|||
in
|
||||
buildPythonApplication rec {
|
||||
pname = "ocrmypdf";
|
||||
version = "11.3.3";
|
||||
version = "11.6.0";
|
||||
disabled = ! python3Packages.isPy3k;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jbarlow83";
|
||||
repo = "OCRmyPDF";
|
||||
rev = "v${version}";
|
||||
sha256 = "0qv34clid65p11dgqalyk7b7myn5ibiz8i9xxhxkmjblw297p6ak";
|
||||
sha256 = "0inmmpam0vcm5n4sm6lh9p5swk44clknvm1cdwk9cax01mdqljza";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with python3Packages; [
|
||||
pytestrunner
|
||||
setuptools
|
||||
setuptools-scm-git-archive
|
||||
setuptools_scm
|
||||
|
@ -65,8 +65,7 @@ buildPythonApplication rec {
|
|||
pytest
|
||||
pytest-helpers-namespace
|
||||
pytest_xdist
|
||||
pytestcov
|
||||
pytestrunner
|
||||
pytest-cov
|
||||
python-xmp-toolkit
|
||||
pytestCheckHook
|
||||
] ++ runtimeDeps;
|
||||
|
@ -83,7 +82,7 @@ buildPythonApplication rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://github.com/jbarlow83/OCRmyPDF";
|
||||
description = "Adds an OCR text layer to scanned PDF files, allowing them to be searched";
|
||||
license = licenses.gpl3;
|
||||
license = with licenses; [ mpl20 mit ];
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.kiwi ];
|
||||
};
|
||||
|
|
48
pkgs/tools/text/robodoc/default.nix
Normal file
48
pkgs/tools/text/robodoc/default.nix
Normal file
|
@ -0,0 +1,48 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, autoreconfHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "robodoc";
|
||||
version = "4.99.44";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gumpu";
|
||||
repo = "ROBODoc";
|
||||
rev = "v${version}";
|
||||
sha256 = "l3prSdaGhOvXmZfCPbsZJNocO7y20zJjLQpajRTJOqE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook ];
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/gumpu/ROBODoc";
|
||||
description = "Documentation Extraction Tool";
|
||||
longDescription = ''
|
||||
ROBODoc is program documentation tool. The idea is to include for every
|
||||
function or procedure a standard header containing all sorts of
|
||||
information about the procedure or function. ROBODoc extracts these
|
||||
headers from the source file and puts them in a separate
|
||||
autodocs-file. ROBODoc thus allows you to include the program
|
||||
documentation in the source code and avoid having to maintain two separate
|
||||
documents. Or as Petteri puts it: "robodoc is very useful - especially for
|
||||
programmers who don't like writing documents with Word or some other
|
||||
strange tool."
|
||||
|
||||
ROBODoc can format the headers in a number of different formats: HTML,
|
||||
RTF, LaTeX, or XML DocBook. In HTML mode it can generate cross links
|
||||
between headers. You can even include parts of your source code.
|
||||
|
||||
ROBODoc works with many programming languages: For instance C, Pascal,
|
||||
Shell Scripts, Assembler, COBOL, Occam, Postscript, Forth, Tcl/Tk, C++,
|
||||
Java -- basically any program in which you can use remarks/comments.
|
||||
'';
|
||||
license = with licenses; gpl3Plus;
|
||||
maintainers = with maintainers; [ AndersonTorres ];
|
||||
platforms = with platforms; all;
|
||||
};
|
||||
}
|
|
@ -1114,6 +1114,8 @@ in
|
|||
|
||||
bmap-tools = callPackage ../tools/misc/bmap-tools { };
|
||||
|
||||
bonnmotion = callPackage ../development/tools/misc/bonnmotion { };
|
||||
|
||||
bonnie = callPackage ../tools/filesystems/bonnie { };
|
||||
|
||||
bonfire = callPackage ../tools/misc/bonfire { };
|
||||
|
@ -4830,6 +4832,8 @@ in
|
|||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
||||
robodoc = callPackage ../tools/text/robodoc { };
|
||||
|
||||
ucg = callPackage ../tools/text/ucg { };
|
||||
|
||||
grive2 = callPackage ../tools/filesystems/grive2 { };
|
||||
|
|
|
@ -204,6 +204,8 @@ in {
|
|||
|
||||
aioamqp = callPackage ../development/python-modules/aioamqp { };
|
||||
|
||||
ailment = callPackage ../development/python-modules/ailment { };
|
||||
|
||||
aiocoap = callPackage ../development/python-modules/aiocoap { };
|
||||
|
||||
aioconsole = callPackage ../development/python-modules/aioconsole { };
|
||||
|
@ -3660,6 +3662,8 @@ in {
|
|||
inherit python;
|
||||
})).py;
|
||||
|
||||
libpurecool = callPackage ../development/python-modules/libpurecool { };
|
||||
|
||||
libredwg = toPythonModule (pkgs.libredwg.override {
|
||||
enablePython = true;
|
||||
inherit (self) python libxml2;
|
||||
|
@ -6523,6 +6527,8 @@ in {
|
|||
|
||||
pyvera = callPackage ../development/python-modules/pyvera { };
|
||||
|
||||
pyvex = callPackage ../development/python-modules/pyvex { };
|
||||
|
||||
pyviz-comms = callPackage ../development/python-modules/pyviz-comms { };
|
||||
|
||||
pyvips = callPackage ../development/python-modules/pyvips {
|
||||
|
|
Loading…
Reference in a new issue