Merge master into haskell-updates
This commit is contained in:
@@ -48,6 +48,13 @@
|
||||
<link xlink:href="options.html#opt-virtualisation.appvm.enable">virtualisation.appvm</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://dragonflydb.io/">dragonflydb</link>,
|
||||
a modern replacement for Redis and Memcached. Available as
|
||||
<link linkend="opt-services.dragonflydb.enable">services.dragonflydb</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://github.com/leetronics/infnoise">infnoise</link>,
|
||||
@@ -55,6 +62,15 @@
|
||||
<link xlink:href="options.html#opt-services.infnoise.enable">services.infnoise</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://github.com/aiberia/persistent-evdev">persistent-evdev</link>,
|
||||
a daemon to add virtual proxy devices that mirror a physical
|
||||
input device but persist even if the underlying hardware is
|
||||
hot-plugged. Available as
|
||||
<link linkend="opt-services.persistent-evdev.enable">services.persistent-evdev</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section xml:id="sec-release-22.11-incompatibilities">
|
||||
|
||||
@@ -25,8 +25,11 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- [appvm](https://github.com/jollheef/appvm), Nix based app VMs. Available as [virtualisation.appvm](options.html#opt-virtualisation.appvm.enable).
|
||||
|
||||
- [dragonflydb](https://dragonflydb.io/), a modern replacement for Redis and Memcached. Available as [services.dragonflydb](#opt-services.dragonflydb.enable).
|
||||
|
||||
- [infnoise](https://github.com/leetronics/infnoise), a hardware True Random Number Generator dongle.
|
||||
Available as [services.infnoise](options.html#opt-services.infnoise.enable).
|
||||
- [persistent-evdev](https://github.com/aiberia/persistent-evdev), a daemon to add virtual proxy devices that mirror a physical input device but persist even if the underlying hardware is hot-plugged. Available as [services.persistent-evdev](#opt-services.persistent-evdev.enable).
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
|
||||
@@ -348,6 +348,7 @@
|
||||
./services/databases/clickhouse.nix
|
||||
./services/databases/cockroachdb.nix
|
||||
./services/databases/couchdb.nix
|
||||
./services/databases/dragonflydb.nix
|
||||
./services/databases/firebird.nix
|
||||
./services/databases/foundationdb.nix
|
||||
./services/databases/hbase.nix
|
||||
@@ -605,6 +606,7 @@
|
||||
./services/misc/packagekit.nix
|
||||
./services/misc/paperless.nix
|
||||
./services/misc/parsoid.nix
|
||||
./services/misc/persistent-evdev.nix
|
||||
./services/misc/plex.nix
|
||||
./services/misc/plikd.nix
|
||||
./services/misc/podgrab.nix
|
||||
|
||||
@@ -0,0 +1,152 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.dragonflydb;
|
||||
dragonflydb = pkgs.dragonflydb;
|
||||
|
||||
settings =
|
||||
{
|
||||
port = cfg.port;
|
||||
dir = "/var/lib/dragonflydb";
|
||||
keys_output_limit = cfg.keysOutputLimit;
|
||||
} //
|
||||
(lib.optionalAttrs (cfg.bind != null) { bind = cfg.bind; }) //
|
||||
(lib.optionalAttrs (cfg.requirePass != null) { requirepass = cfg.requirePass; }) //
|
||||
(lib.optionalAttrs (cfg.maxMemory != null) { maxmemory = cfg.maxMemory; }) //
|
||||
(lib.optionalAttrs (cfg.memcachePort != null) { memcache_port = cfg.memcachePort; }) //
|
||||
(lib.optionalAttrs (cfg.dbNum != null) { dbnum = cfg.dbNum; }) //
|
||||
(lib.optionalAttrs (cfg.cacheMode != null) { cache_mode = cfg.cacheMode; });
|
||||
in
|
||||
{
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
services.dragonflydb = {
|
||||
enable = mkEnableOption "DragonflyDB";
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "dragonfly";
|
||||
description = "The user to run DragonflyDB as";
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.port;
|
||||
default = 6379;
|
||||
description = "The TCP port to accept connections.";
|
||||
};
|
||||
|
||||
bind = mkOption {
|
||||
type = with types; nullOr str;
|
||||
default = "127.0.0.1";
|
||||
description = ''
|
||||
The IP interface to bind to.
|
||||
<literal>null</literal> means "all interfaces".
|
||||
'';
|
||||
};
|
||||
|
||||
requirePass = mkOption {
|
||||
type = with types; nullOr str;
|
||||
default = null;
|
||||
description = "Password for database";
|
||||
example = "letmein!";
|
||||
};
|
||||
|
||||
maxMemory = mkOption {
|
||||
type = with types; nullOr ints.unsigned;
|
||||
default = null;
|
||||
description = ''
|
||||
The maximum amount of memory to use for storage (in bytes).
|
||||
<literal>null</literal> means this will be automatically set.
|
||||
'';
|
||||
};
|
||||
|
||||
memcachePort = mkOption {
|
||||
type = with types; nullOr port;
|
||||
default = null;
|
||||
description = ''
|
||||
To enable memcached compatible API on this port.
|
||||
<literal>null</literal> means disabled.
|
||||
'';
|
||||
};
|
||||
|
||||
keysOutputLimit = mkOption {
|
||||
type = types.ints.unsigned;
|
||||
default = 8192;
|
||||
description = ''
|
||||
Maximum number of returned keys in keys command.
|
||||
<literal>keys</literal> is a dangerous command.
|
||||
We truncate its result to avoid blowup in memory when fetching too many keys.
|
||||
'';
|
||||
};
|
||||
|
||||
dbNum = mkOption {
|
||||
type = with types; nullOr ints.unsigned;
|
||||
default = null;
|
||||
description = "Maximum number of supported databases for <literal>select</literal>";
|
||||
};
|
||||
|
||||
cacheMode = mkOption {
|
||||
type = with types; nullOr bool;
|
||||
default = null;
|
||||
description = ''
|
||||
Once this mode is on, Dragonfly will evict items least likely to be stumbled
|
||||
upon in the future but only when it is near maxmemory limit.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf config.services.dragonflydb.enable {
|
||||
|
||||
users.users = optionalAttrs (cfg.user == "dragonfly") {
|
||||
dragonfly.description = "DragonflyDB server user";
|
||||
dragonfly.isSystemUser = true;
|
||||
dragonfly.group = "dragonfly";
|
||||
};
|
||||
users.groups = optionalAttrs (cfg.user == "dragonfly") { dragonfly = { }; };
|
||||
|
||||
environment.systemPackages = [ dragonflydb ];
|
||||
|
||||
systemd.services.dragonflydb = {
|
||||
description = "DragonflyDB server";
|
||||
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${dragonflydb}/bin/dragonfly --alsologtostderr ${builtins.concatStringsSep " " (attrsets.mapAttrsToList (n: v: "--${n} ${strings.escapeShellArg v}") settings)}";
|
||||
|
||||
User = cfg.user;
|
||||
|
||||
# Filesystem access
|
||||
ReadWritePaths = [ settings.dir ];
|
||||
StateDirectory = "dragonflydb";
|
||||
StateDirectoryMode = "0700";
|
||||
# Process Properties
|
||||
LimitMEMLOCK = "infinity";
|
||||
# Caps
|
||||
CapabilityBoundingSet = "";
|
||||
NoNewPrivileges = true;
|
||||
# Sandboxing
|
||||
ProtectSystem = "strict";
|
||||
ProtectHome = true;
|
||||
PrivateTmp = true;
|
||||
PrivateDevices = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectControlGroups = true;
|
||||
LockPersonality = true;
|
||||
RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ];
|
||||
RestrictRealtime = true;
|
||||
PrivateMounts = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.services.persistent-evdev;
|
||||
settingsFormat = pkgs.formats.json {};
|
||||
|
||||
configFile = settingsFormat.generate "persistent-evdev-config" {
|
||||
cache = "/var/cache/persistent-evdev";
|
||||
devices = lib.mapAttrs (virt: phys: "/dev/input/by-id/${phys}") cfg.devices;
|
||||
};
|
||||
in
|
||||
{
|
||||
options.services.persistent-evdev = {
|
||||
enable = lib.mkEnableOption "virtual input devices that persist even if the backing device is hotplugged";
|
||||
|
||||
devices = lib.mkOption {
|
||||
default = {};
|
||||
type = with lib.types; attrsOf str;
|
||||
description = ''
|
||||
A set of virtual proxy device labels with backing physical device ids.
|
||||
|
||||
Physical devices should already exist in <filename class="devicefile">/dev/input/by-id/</filename>.
|
||||
Proxy devices will be automatically given a <literal>uinput-</literal> prefix.
|
||||
|
||||
See the <link xlink:href="https://github.com/aiberia/persistent-evdev#example-usage-with-libvirt">
|
||||
project page</link> for example configuration of virtual devices with libvirt
|
||||
and remember to add <literal>uinput-*</literal> devices to the qemu
|
||||
<literal>cgroup_device_acl</literal> list (see <xref linkend="opt-virtualisation.libvirtd.qemu.verbatimConfig"/>).
|
||||
'';
|
||||
example = lib.literalExpression ''
|
||||
{
|
||||
persist-mouse0 = "usb-Logitech_G403_Prodigy_Gaming_Mouse_078738533531-event-if01";
|
||||
persist-mouse1 = "usb-Logitech_G403_Prodigy_Gaming_Mouse_078738533531-event-mouse";
|
||||
persist-mouse2 = "usb-Logitech_G403_Prodigy_Gaming_Mouse_078738533531-if01-event-kbd";
|
||||
persist-keyboard0 = "usb-Microsoft_Natural®_Ergonomic_Keyboard_4000-event-kbd";
|
||||
persist-keyboard1 = "usb-Microsoft_Natural®_Ergonomic_Keyboard_4000-if01-event-kbd";
|
||||
}
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
||||
systemd.services.persistent-evdev = {
|
||||
documentation = [ "https://github.com/aiberia/persistent-evdev/blob/master/README.md" ];
|
||||
description = "Persistent evdev proxy";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
Restart = "on-failure";
|
||||
ExecStart = "${pkgs.persistent-evdev}/bin/persistent-evdev.py ${configFile}";
|
||||
CacheDirectory = "persistent-evdev";
|
||||
};
|
||||
};
|
||||
|
||||
services.udev.packages = [ pkgs.persistent-evdev ];
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ lodi ];
|
||||
}
|
||||
@@ -1,13 +1,13 @@
|
||||
{ stdenv, lib, zlib, glib, alsa-lib, dbus, gtk3, atk, pango, freetype, fontconfig
|
||||
, libgnome-keyring3, gdk-pixbuf, cairo, cups, expat, libgpg-error, nspr
|
||||
, gconf, nss, xorg, libcap, systemd, libnotify, libsecret, libuuid, at-spi2-atk
|
||||
, gdk-pixbuf, cairo, cups, expat, libgpg-error, nspr
|
||||
, nss, xorg, libcap, systemd, libnotify, libsecret, libuuid, at-spi2-atk
|
||||
, at-spi2-core, libdbusmenu, libdrm, mesa
|
||||
}:
|
||||
|
||||
let
|
||||
packages = [
|
||||
stdenv.cc.cc zlib glib dbus gtk3 atk pango freetype libgnome-keyring3
|
||||
fontconfig gdk-pixbuf cairo cups expat libgpg-error alsa-lib nspr gconf nss
|
||||
stdenv.cc.cc zlib glib dbus gtk3 atk pango freetype
|
||||
fontconfig gdk-pixbuf cairo cups expat libgpg-error alsa-lib nspr nss
|
||||
xorg.libXrender xorg.libX11 xorg.libXext xorg.libXdamage xorg.libXtst
|
||||
xorg.libXcomposite xorg.libXi xorg.libXfixes xorg.libXrandr
|
||||
xorg.libXcursor xorg.libxkbfile xorg.libXScrnSaver libcap systemd libnotify
|
||||
|
||||
@@ -11,11 +11,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "drawio";
|
||||
version = "19.0.1";
|
||||
version = "19.0.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/drawio-x86_64-${version}.rpm";
|
||||
sha256 = "da9fb38970987b7d5b84fd0d91824f206ba7a3681a7354adc6d6e795c7613828";
|
||||
sha256 = "46b4e7269628100ea3c083dee75308d9746780e46eac15d2c5495fdeece7e323";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -1,79 +1,21 @@
|
||||
{ alsa-lib
|
||||
, at-spi2-atk
|
||||
, at-spi2-core
|
||||
, atk
|
||||
, autoPatchelfHook
|
||||
, cairo
|
||||
, cups
|
||||
, dbus
|
||||
, electron_9
|
||||
, expat
|
||||
{ autoPatchelfHook
|
||||
, electron
|
||||
, fetchurl
|
||||
, gdk-pixbuf
|
||||
, glib
|
||||
, gtk3
|
||||
, lib
|
||||
, libappindicator-gtk3
|
||||
, libdbusmenu-gtk3
|
||||
, libuuid
|
||||
, makeWrapper
|
||||
, nspr
|
||||
, nss
|
||||
, pango
|
||||
, squashfsTools
|
||||
, stdenv
|
||||
, systemd
|
||||
, xorg
|
||||
}:
|
||||
|
||||
let
|
||||
# Currently only works with electron 9
|
||||
electron = electron_9;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "authy";
|
||||
# curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/authy?channel=stable' | jq '.download_url,.version'
|
||||
version = "2.1.0";
|
||||
rev = "9";
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
at-spi2-atk
|
||||
at-spi2-core
|
||||
atk
|
||||
cairo
|
||||
cups
|
||||
dbus
|
||||
expat
|
||||
gdk-pixbuf
|
||||
glib
|
||||
gtk3
|
||||
libappindicator-gtk3
|
||||
libdbusmenu-gtk3
|
||||
libuuid
|
||||
nspr
|
||||
nss
|
||||
pango
|
||||
stdenv.cc.cc
|
||||
systemd
|
||||
xorg.libX11
|
||||
xorg.libXScrnSaver
|
||||
xorg.libXcomposite
|
||||
xorg.libXcursor
|
||||
xorg.libXdamage
|
||||
xorg.libXext
|
||||
xorg.libXfixes
|
||||
xorg.libXi
|
||||
xorg.libXrandr
|
||||
xorg.libXrender
|
||||
xorg.libXtst
|
||||
xorg.libxcb
|
||||
];
|
||||
version = "2.2.0";
|
||||
rev = "10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://api.snapcraft.io/api/v1/snaps/download/H8ZpNgIoPyvmkgxOWw5MSzsXK1wRZiHn_${rev}.snap";
|
||||
sha256 = "sha256-RxjxOYrbneVctyTJTMvoN/UdREohaZWb1kTdEeI6mUU=";
|
||||
sha256 = "sha256-sB9/fVV/qp+DfjxpvzIUHsLkeEu35i2rEv1/JYMytG8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoPatchelfHook makeWrapper squashfsTools ];
|
||||
@@ -95,25 +37,16 @@ stdenv.mkDerivation rec {
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/lib/
|
||||
mkdir -p $out/bin $out/share/applications $out/share/pixmaps/apps
|
||||
|
||||
cp -r ./* $out/
|
||||
rm -R ./*
|
||||
|
||||
# The snap package has the `ffmpeg.so` file which is copied over with other .so files
|
||||
mv $out/*.so $out/lib/
|
||||
# Copy only what is needed
|
||||
cp -r resources* $out/
|
||||
cp -r locales* $out/
|
||||
cp meta/gui/authy.desktop $out/share/applications/
|
||||
cp meta/gui/icon.png $out/share/pixmaps/authy.png
|
||||
|
||||
# Replace icon name in Desktop file
|
||||
sed -i 's|''${SNAP}/meta/gui/icon.png|authy|g' "$out/meta/gui/authy.desktop"
|
||||
|
||||
# Move the desktop file, icon, binary to their appropriate locations
|
||||
mkdir -p $out/bin $out/share/applications $out/share/pixmaps/apps
|
||||
cp $out/meta/gui/authy.desktop $out/share/applications/
|
||||
cp $out/meta/gui/icon.png $out/share/pixmaps/authy.png
|
||||
cp $out/${pname} $out/bin/${pname}
|
||||
|
||||
# Cleanup
|
||||
rm -r $out/{data-dir,gnome-platform,meta,scripts,usr,*.sh,*.so}
|
||||
sed -i 's|''${SNAP}/meta/gui/icon.png|authy|g' "$out/share/applications/authy.desktop"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
@@ -1,72 +0,0 @@
|
||||
{ lib, stdenv, python27Packages, curaengine, makeDesktopItem, fetchFromGitHub }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cura";
|
||||
version = "15.06.03";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "daid";
|
||||
repo = "Cura";
|
||||
rev = version;
|
||||
sha256 = "sha256-o1cAi4Wi19WOijlRB9iYwNEpSNnmywUj5Bth8rRhqFA=";
|
||||
};
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "Cura";
|
||||
exec = "cura";
|
||||
icon = "cura";
|
||||
comment = "Cura";
|
||||
desktopName = "Cura";
|
||||
genericName = "3D printing host software";
|
||||
categories = [ "GNOME" "GTK" "Utility" ];
|
||||
};
|
||||
|
||||
python_deps = with python27Packages; [ pyopengl pyserial numpy wxPython30 power setuptools ];
|
||||
|
||||
pythonPath = python_deps;
|
||||
|
||||
propagatedBuildInputs = python_deps;
|
||||
|
||||
buildInputs = [ curaengine python27Packages.wrapPython ];
|
||||
|
||||
configurePhase = "";
|
||||
buildPhase = "";
|
||||
|
||||
patches = [ ./numpy-cast.patch ];
|
||||
|
||||
installPhase = ''
|
||||
# Install Python code.
|
||||
site_packages=$out/lib/python2.7/site-packages
|
||||
mkdir -p $site_packages
|
||||
cp -r Cura $site_packages/
|
||||
|
||||
# Install resources.
|
||||
resources=$out/share/cura
|
||||
mkdir -p $resources
|
||||
cp -r resources/* $resources/
|
||||
sed -i 's|os.path.join(os.path.dirname(__file__), "../../resources")|"'$resources'"|g' $site_packages/Cura/util/resources.py
|
||||
|
||||
# Install executable.
|
||||
mkdir -p $out/bin
|
||||
cp Cura/cura.py $out/bin/cura
|
||||
chmod +x $out/bin/cura
|
||||
sed -i 's|#!/usr/bin/python|#!/usr/bin/env python|' $out/bin/cura
|
||||
wrapPythonPrograms
|
||||
|
||||
# Make it find CuraEngine.
|
||||
echo "def getEngineFilename(): return '${curaengine}/bin/CuraEngine'" >> $site_packages/Cura/util/sliceEngine.py
|
||||
|
||||
# Install desktop item.
|
||||
mkdir -p "$out"/share/applications
|
||||
cp "$desktopItem"/share/applications/* "$out"/share/applications/
|
||||
mkdir -p "$out"/share/icons
|
||||
ln -s "$resources/images/c.png" "$out"/share/icons/cura.png
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "3D printing host software";
|
||||
homepage = "https://github.com/daid/Cura";
|
||||
license = licenses.agpl3;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -16,7 +16,13 @@ let
|
||||
};
|
||||
});
|
||||
# Use click 7
|
||||
click = self.callPackage ../../../development/python2-modules/click/default.nix { };
|
||||
click = super.click.overridePythonAttrs (old: rec {
|
||||
version = "7.1.2";
|
||||
src = old.src.override {
|
||||
inherit version;
|
||||
sha256 = "d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a";
|
||||
};
|
||||
});
|
||||
};
|
||||
};
|
||||
in
|
||||
|
||||
@@ -2,30 +2,7 @@
|
||||
qtbase, mkDerivationWith }:
|
||||
|
||||
{
|
||||
stable = with python27Packages; buildPythonPackage rec {
|
||||
pname = "plover";
|
||||
version = "3.1.1";
|
||||
|
||||
meta = with lib; {
|
||||
broken = stdenv.isDarwin;
|
||||
description = "OpenSteno Plover stenography software";
|
||||
maintainers = with maintainers; [ twey kovirobi ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openstenoproject";
|
||||
repo = "plover";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-LIhTwHMphg+xTR9NKvjAZ6p0mmqPNcZd9C4cgnenmYQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools-scm ];
|
||||
buildInputs = [ pytest mock ];
|
||||
propagatedBuildInputs = [
|
||||
six setuptools pyserial appdirs hidapi wxPython xlib wmctrl dbus-python
|
||||
];
|
||||
};
|
||||
stable = throw "plover.stable was removed because it used Python 2. Use plover.dev instead."; # added 2022-06-05
|
||||
|
||||
dev = with python3Packages; mkDerivationWith buildPythonPackage rec {
|
||||
pname = "plover";
|
||||
|
||||
@@ -65,18 +65,30 @@ let
|
||||
sha256 = "sha256-WUxngH+xYjizDES99082wCzfItHIzake+KDtjav1Ygo=";
|
||||
};
|
||||
});
|
||||
# Required by flask-babel
|
||||
itsdangerous = super.itsdangerous.overridePythonAttrs (old: rec {
|
||||
version = "2.0.1";
|
||||
version = "1.1.0";
|
||||
src = old.src.override {
|
||||
inherit version;
|
||||
sha256 = "sha256-nnJNaPwikCoUNTUfhMP7hiPzA//8xWaky5Ut+MVyz/A=";
|
||||
sha256 = "321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19";
|
||||
};
|
||||
});
|
||||
flask = super.flask.overridePythonAttrs (old: rec {
|
||||
version = "1.1.4";
|
||||
src = old.src.override {
|
||||
inherit version;
|
||||
sha256 = "0fbeb6180d383a9186d0d6ed954e0042ad9f18e0e8de088b2b419d526927d196";
|
||||
};
|
||||
});
|
||||
flask = self.callPackage ../../../development/python2-modules/flask { };
|
||||
sqlsoup = super.sqlsoup.overrideAttrs ({ meta ? {}, ... }: {
|
||||
meta = meta // { broken = false; };
|
||||
});
|
||||
click = super.click.overridePythonAttrs (old: rec {
|
||||
version = "7.1.2";
|
||||
src = old.src.override {
|
||||
inherit version;
|
||||
sha256 = "d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a";
|
||||
};
|
||||
});
|
||||
};
|
||||
};
|
||||
in
|
||||
|
||||
@@ -518,6 +518,15 @@
|
||||
"vendorSha256": "sha256-HrsjhaMlzs+uel5tBlxJD69Kkjl+4qVisWWREANBx40=",
|
||||
"version": "5.0.2"
|
||||
},
|
||||
"hetznerdns": {
|
||||
"owner": "timohirt",
|
||||
"provider-source-address": "registry.terraform.io/timohirt/hetznerdns",
|
||||
"repo": "terraform-provider-hetznerdns",
|
||||
"rev": "v2.1.0",
|
||||
"sha256": "sha256-QmD9UlQpyvEz4in1I960J0eC6xNtgk5z8tZUxaApOwE=",
|
||||
"vendorSha256": "sha256-Bat/S4e5vzT0/XOhJ9zCWLa4IE4owLC6ec1yvEh+c0Y=",
|
||||
"version": "2.1.0"
|
||||
},
|
||||
"htpasswd": {
|
||||
"owner": "loafoe",
|
||||
"provider-source-address": "registry.terraform.io/loafoe/htpasswd",
|
||||
|
||||
@@ -18,17 +18,17 @@
|
||||
|
||||
let
|
||||
libdeltachat' = libdeltachat.overrideAttrs (old: rec {
|
||||
version = "1.84.0";
|
||||
version = "1.86.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "deltachat";
|
||||
repo = "deltachat-core-rust";
|
||||
rev = version;
|
||||
hash = "sha256-ZG3siulXVHTbdSd9tmenljFODZ3LWX+BXn6OJfrbEYA=";
|
||||
hash = "sha256-VLS93Ffeit2rVmXxYkXcnf8eDA3DC2/wKYZTh56QCk0=";
|
||||
};
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
name = "${old.pname}-${version}";
|
||||
hash = "sha256-vQ+A4dEWh5+BgWOdxd7GTPuHk6M6bHgGnZcWNwR/Urs=";
|
||||
hash = "sha256-4rpoDQ3o0WdWg/TmazTI+J0hL/MxwHcNMXWMq7GE7Tk=";
|
||||
};
|
||||
});
|
||||
electronExec = if stdenv.isDarwin then
|
||||
@@ -46,13 +46,13 @@ let
|
||||
});
|
||||
in nodePackages.deltachat-desktop.override rec {
|
||||
pname = "deltachat-desktop";
|
||||
version = "1.30.0";
|
||||
version = "1.30.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "deltachat";
|
||||
repo = "deltachat-desktop";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-vp6vqoQvkAe7QPy4210r/5c1GNaGWgYvG0LyLqtCAxw=";
|
||||
hash = "sha256-gZjZbXiqhFVfThZOsvL/nKkf6MX+E3KB5ldEAIuzBYA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -122,6 +122,7 @@ in nodePackages.deltachat-desktop.override rec {
|
||||
homepage = "https://github.com/deltachat/deltachat-desktop";
|
||||
changelog = "https://github.com/deltachat/deltachat-desktop/blob/${src.rev}/CHANGELOG.md";
|
||||
license = licenses.gpl3Plus;
|
||||
mainProgram = "deltachat";
|
||||
maintainers = with maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "deltachat-desktop",
|
||||
"version": "1.30.0",
|
||||
"version": "1.30.1",
|
||||
"dependencies": {
|
||||
"@blueprintjs/core": "^4.1.2",
|
||||
"@deltachat/message_parser_wasm": "^0.4.0",
|
||||
@@ -9,7 +9,7 @@
|
||||
"application-config": "^1.0.1",
|
||||
"classnames": "^2.3.1",
|
||||
"debounce": "^1.2.0",
|
||||
"deltachat-node": "1.84.0",
|
||||
"deltachat-node": "1.86.0",
|
||||
"emoji-js-clean": "^4.0.0",
|
||||
"emoji-mart": "^3.0.1",
|
||||
"emoji-regex": "^9.2.2",
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
{ lib, stdenv, fetchurl, python27Packages, file }:
|
||||
|
||||
let
|
||||
inherit (python27Packages) python;
|
||||
requirements = (import ./requirements.nix {
|
||||
inherit lib fetchurl;
|
||||
pythonPackages = python27Packages;
|
||||
});
|
||||
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "salut-a-toi";
|
||||
version = "0.6.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.goffi.org/sat/sat-${version}.tar.bz2";
|
||||
sha256 = "0kn9403n8fpzl0hsb9kkzicsmzq2fjl627l31yykbqzc4nsr780d";
|
||||
};
|
||||
|
||||
buildInputs = with python27Packages;
|
||||
[
|
||||
python twisted urwid wxPython pygobject2
|
||||
dbus-python wrapPython setuptools file
|
||||
pycrypto pyxdg
|
||||
] ++ (with requirements; [
|
||||
pyfeed
|
||||
wokkel
|
||||
]);
|
||||
|
||||
configurePhase = ''
|
||||
sed -i "/use_setuptools/d" setup.py
|
||||
sed -e "s@sys.prefix@'$out'@g" -i setup.py
|
||||
sed -e "1aexport PATH=\"\$PATH\":\"$out/bin\":\"${python27Packages.twisted}/bin\"" -i src/sat.sh
|
||||
sed -e "1aexport PYTHONPATH=\"\$PYTHONPATHPATH\":\"$PYTHONPATH\":"$out/${python.sitePackages}"" -i src/sat.sh
|
||||
|
||||
echo 'import wokkel.muc' | python
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
${python.interpreter} setup.py build
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
${python.interpreter} setup.py install --prefix="$out"
|
||||
|
||||
for i in "$out/bin"/*; do
|
||||
head -n 1 "$i" | grep -E '[/ ]python( |$)' && {
|
||||
wrapProgram "$i" --prefix PYTHONPATH : "$PYTHONPATH:$out/${python.sitePackages}"
|
||||
} || true
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://sat.goffi.org/";
|
||||
description = "A multi-frontend XMPP client";
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.raskin ];
|
||||
license = licenses.gpl3Plus;
|
||||
};
|
||||
}
|
||||
@@ -1,67 +0,0 @@
|
||||
{ fetchurl
|
||||
, lib
|
||||
, pythonPackages
|
||||
}:
|
||||
|
||||
let
|
||||
buildPythonPackage = pythonPackages.buildPythonPackage;
|
||||
|
||||
xe = buildPythonPackage rec {
|
||||
url = "http://www.blarg.net/%7Esteveha/xe-0.7.4.tar.gz";
|
||||
name = lib.nameFromURL url ".tar";
|
||||
src = fetchurl {
|
||||
inherit url;
|
||||
sha256 = "0v9878cl0y9cczdsr6xjy8v9l139lc23h4m5f86p4kpf2wlnpi42";
|
||||
};
|
||||
|
||||
# error: invalid command 'test'
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
homepage = "http://home.blarg.net/~steveha/xe.html";
|
||||
description = "XML elements";
|
||||
};
|
||||
};
|
||||
|
||||
in {
|
||||
|
||||
pyfeed = (buildPythonPackage rec {
|
||||
url = "http://www.blarg.net/%7Esteveha/pyfeed-0.7.4.tar.gz";
|
||||
|
||||
name = lib.nameFromURL url ".tar";
|
||||
|
||||
src = fetchurl {
|
||||
inherit url;
|
||||
sha256 = "1h4msq573m7wm46h3cqlx4rsn99f0l11rhdqgf50lv17j8a8vvy1";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ xe ];
|
||||
|
||||
# error: invalid command 'test'
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://home.blarg.net/~steveha/pyfeed.html";
|
||||
description = "Tools for syndication feeds";
|
||||
};
|
||||
|
||||
});
|
||||
|
||||
wokkel = buildPythonPackage (rec {
|
||||
url = "http://wokkel.ik.nu/releases/0.7.0/wokkel-0.7.0.tar.gz";
|
||||
name = lib.nameFromURL url ".tar";
|
||||
src = fetchurl {
|
||||
inherit url;
|
||||
sha256 = "0rnshrzw8605x05mpd8ndrx3ri8h6cx713mp8sl4f04f4gcrz8ml";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [twisted python-dateutil];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Some (mainly XMPP-related) additions to twisted";
|
||||
homepage = "http://wokkel.ik.nu/";
|
||||
license = licenses.mit;
|
||||
};
|
||||
});
|
||||
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
{ lib, stdenv, fetchFromGitHub, python2, unzip, tor }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "torchat";
|
||||
version = "0.9.9.553";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "prof7bit";
|
||||
repo = "TorChat";
|
||||
rev = version;
|
||||
sha256 = "2LHG9qxZDo5rV6wsputdRo2Y1aHs+irMwt1ucFnXQE0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
buildInputs = with python2.pkgs; [ python wxPython wrapPython ];
|
||||
pythonPath = with python2.pkgs; [ wxPython ];
|
||||
|
||||
preConfigure = "cd torchat/src; rm portable.txt";
|
||||
|
||||
installPhase = ''
|
||||
substituteInPlace "Tor/tor.sh" --replace "tor -f" "${tor}/bin/tor -f"
|
||||
|
||||
wrapPythonPrograms
|
||||
|
||||
mkdir -p $out/lib/torchat
|
||||
cp -rf * $out/lib/torchat
|
||||
makeWrapper ${python2}/bin/python $out/bin/torchat \
|
||||
--set PYTHONPATH $out/lib/torchat:$program_PYTHONPATH \
|
||||
--chdir "$out/lib/torchat" \
|
||||
--add-flags "-O $out/lib/torchat/torchat.py"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/prof7bit/TorChat";
|
||||
description = "Instant messaging application on top of the Tor network and it's location hidden services";
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
@@ -10,13 +10,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "containerd";
|
||||
version = "1.6.5";
|
||||
version = "1.6.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containerd";
|
||||
repo = "containerd";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-WEHhx9xSxzBoViujGc4yNt9K2gSMfU6GFmsYk3WDfu8=";
|
||||
sha256 = "sha256-cmarbad6VzcGTCHT/NtApkYsK/oo6WZQ//q8Fvh+ez8=";
|
||||
};
|
||||
|
||||
vendorSha256 = null;
|
||||
|
||||
@@ -49,6 +49,11 @@ in stdenv.mkDerivation rec {
|
||||
# build fails otherwise
|
||||
enableParallelBuilding = false;
|
||||
|
||||
# Workaround build failure on -fno-common toolchains:
|
||||
# ld: raima/startup.o:/build/cde-2.3.2/lib/DtSearch/raima/dbtype.h:408: multiple definition of
|
||||
# `__SK__'; raima/alloc.o:/build/cde-2.3.2/lib/DtSearch/raima/dbtype.h:408: first defined here
|
||||
NIX_CFLAGS_COMPILE = "-fcommon";
|
||||
|
||||
makeFlags = [
|
||||
"World"
|
||||
"BOOTSTRAPCFLAGS=-I${xorgproto}/include/X11"
|
||||
|
||||
@@ -14,12 +14,12 @@
|
||||
assert withGmp -> gmp != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "4.65";
|
||||
version = "5.0";
|
||||
pname = "glpk";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/glpk/${pname}-${version}.tar.gz";
|
||||
sha256 = "040sfaa9jclg2nqdh83w71sv9rc1sznpnfiripjdyr48cady50a2";
|
||||
sha256 = "sha256-ShAT7rtQ9yj8YBvdgzsLKHAzPDs+WoFu66kh2VvsbxU=";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
@@ -45,8 +45,8 @@ stdenv.mkDerivation rec {
|
||||
# https://trac.sagemath.org/ticket/20710#comment:18
|
||||
(fetchpatch {
|
||||
name = "error_recovery.patch";
|
||||
url = "https://git.sagemath.org/sage.git/plain/build/pkgs/glpk/patches/error_recovery.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
|
||||
sha256 = "0z99z9gd31apb6x5n5n26411qzx0ma3s6dnznc4x61x86bhq31qf";
|
||||
url = "https://git.sagemath.org/sage.git/plain/build/pkgs/glpk/patches/error_recovery.patch?id=d3c1f607e32f964bf0cab877a63767c86fd00266";
|
||||
sha256 = "sha256-2hNtUEoGTFt3JgUvLH3tPWnz+DZcXNhjXzS+/V89toA=";
|
||||
})
|
||||
];
|
||||
|
||||
|
||||
@@ -7,6 +7,12 @@ stdenv.mkDerivation {
|
||||
|
||||
sourceRoot = "agar-1.5.0/tests";
|
||||
|
||||
# Workaround build failure on -fno-common toolchains:
|
||||
# ld: textdlg.o:(.bss+0x0): multiple definition of `someString';
|
||||
# configsettings.o:(.bss+0x0): first defined here
|
||||
# TODO: the workaround can be removed once nixpkgs updates to 1.6.0.
|
||||
NIX_CFLAGS_COMPILE = "-fcommon";
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace configure.in \
|
||||
--replace '_BSD_SOURCE' '_DEFAULT_SOURCE'
|
||||
|
||||
@@ -17,13 +17,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libdeltachat";
|
||||
version = "1.85.0";
|
||||
version = "1.86.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "deltachat";
|
||||
repo = "deltachat-core-rust";
|
||||
rev = version;
|
||||
hash = "sha256-bgx1j2ESAv9cRe3Iv6nYOS7bUAQcXj3Ta4rAC800Nf8=";
|
||||
hash = "sha256-VLS93Ffeit2rVmXxYkXcnf8eDA3DC2/wKYZTh56QCk0=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
name = "${pname}-${version}";
|
||||
hash = "sha256-7ZdN/7CKFuFOIReM7BkMsO/E2lPyDnl4ssPhK5BPLh8=";
|
||||
hash = "sha256-4rpoDQ3o0WdWg/TmazTI+J0hL/MxwHcNMXWMq7GE7Tk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -53,6 +53,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
NIX_CFLAGS = [ "-Wno-return-type" ];
|
||||
|
||||
# Workaround build failure on -fno-common toolchains:
|
||||
# ld: libpacklib.a(kedit.o):kuip/klink1.h:11: multiple definition of `klnkaddr';
|
||||
# libzftplib.a(zftpcdf.o):zftp/zftpcdf.c:155: first defined here
|
||||
NIX_CFLAGS_COMPILE = "-fcommon";
|
||||
|
||||
makeFlags = [
|
||||
"FORTRANOPTIONS=$(FFLAGS)"
|
||||
"CCOPTIONS=$(NIX_CFLAGS)"
|
||||
|
||||
+1018
-1245
File diff suppressed because it is too large
Load Diff
@@ -15,7 +15,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "adb-shell";
|
||||
version = "0.4.2";
|
||||
version = "0.4.3";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = !isPy3k;
|
||||
@@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||
owner = "JeffLIrion";
|
||||
repo = "adb_shell";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-8tclSjmLlTAIeq6t7YPGtJwvSwtlzQ7sRAQatcQRzeY=";
|
||||
hash = "sha256-+RU3nyJpHq0r/9erEbjUILpwIPWq14HdOX7LkSxySs4=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-y8W0qwm4rTHlDO8L+/fhIJlfW5PonUhAYBU5wLIZJ94=";
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-org-policy";
|
||||
version = "1.3.2";
|
||||
version = "1.3.3";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-i60DIRtWtB1MEB2/MuNycy7T9MFPnlRtJ7lnFhDVJbE=";
|
||||
sha256 = "sha256-hZzujuHtj5g/dBJUhZBV4h8zJjtI1xitfjkcVzURfKU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ google-api-core proto-plus ];
|
||||
|
||||
@@ -15,14 +15,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-pubsub";
|
||||
version = "2.12.1";
|
||||
version = "2.13.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-mTphUjL61NwaE7vKDgeCv+0WeA15FNQzvnY/6fHZ/QU=";
|
||||
hash = "sha256-pcLgXIPWC7F6FS5Znn9DJMn/tsjNpE/7YlCxYoDDg+Y=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -12,14 +12,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-redis";
|
||||
version = "2.8.0";
|
||||
version = "2.8.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-7L3SjViQmzTp//5LWWG9VG+TQuPay70KZdUuzhy7HS0=";
|
||||
hash = "sha256-qI7bGk+BkLIfhrJHAfk2DVBp8vRc5dPLKjdKH0FPj8s=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -13,14 +13,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-secret-manager";
|
||||
version = "2.11.0";
|
||||
version = "2.11.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-naE1e7T1E0P3MxJCMYc3YZ79v/3VTW19D/LhzRie7jk=";
|
||||
hash = "sha256-tSy0d8kdyDSE+/gcg4B+fplnLJ4ipoa+TZvUoExaYVU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -13,14 +13,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-securitycenter";
|
||||
version = "1.11.0";
|
||||
version = "1.11.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-+etRN3Q7Y1oYtQy0Fkoj6ujhx4gD5y+fUriu/eitIQM=";
|
||||
hash = "sha256-XvjxdrGgdXaJqbArwdEWT31one+I43cpZ97PciM8yIA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -13,14 +13,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-speech";
|
||||
version = "2.14.0";
|
||||
version = "2.14.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-D8t8+rscImUvpHCEFGTzLU5FpAMZ62iHhRfLzUXqGV8=";
|
||||
hash = "sha256-ImE08djcrhhC0VQJmL69hbfUDBALPUyW9IaSh1CIJqs=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-trace";
|
||||
version = "1.6.1";
|
||||
version = "1.6.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-JkKW9vJAAkw3sHYDapRvu5jjunV8oWSg/ykDmd1wpyA=";
|
||||
sha256 = "sha256-nxyd8zE8PEQupVutLWhLD4I1jNhhJ0ARpTi52f21iBE=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ google-api-core google-cloud-core proto-plus ];
|
||||
|
||||
@@ -14,14 +14,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-translate";
|
||||
version = "3.7.3";
|
||||
version = "3.7.4";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-c++DP97IhMKHKZqXWpVO/9Rw1q8eYs1ybNZDhviwB/A=";
|
||||
hash = "sha256-B5MBpdcS6NN7rwvjLwbY55rV0dLDwWtnAadWsH2AwXE=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -44,7 +44,6 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
broken = stdenv.isDarwin;
|
||||
description = "Python library to build command line user prompts";
|
||||
homepage = "https://github.com/tmbo/questionary";
|
||||
license = with licenses; [ mit ];
|
||||
|
||||
@@ -17,14 +17,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "sagemaker";
|
||||
version = "2.93.0";
|
||||
version = "2.93.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-rVEYiX0e7dP2CQK4ceEPZu395vas69aZkQzJCana53c=";
|
||||
hash = "sha256-EzIJ9+eo5eaXu4TdsvktHtA/wuqr8HUMqsl2pGyvs40=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -1,7 +1,12 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, lhapdf
|
||||
, nnpdf
|
||||
, prompt-toolkit
|
||||
, reportengine
|
||||
, requests
|
||||
, seaborn
|
||||
, validobj
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@@ -21,8 +26,13 @@ buildPythonPackage rec {
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
lhapdf
|
||||
nnpdf
|
||||
prompt-toolkit
|
||||
reportengine
|
||||
requests
|
||||
seaborn
|
||||
validobj
|
||||
];
|
||||
|
||||
doCheck = false; # no tests
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
{ lib, buildPythonPackage, fetchPypi, locale, pytestCheckHook }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "click";
|
||||
version = "7.1.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/click/_unicodefun.py \
|
||||
--replace "'locale'" "'${locale}/bin/locale'"
|
||||
'';
|
||||
|
||||
checkInputs = [ pytestCheckHook ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://click.palletsprojects.com/";
|
||||
description = "Create beautiful command line interfaces in Python";
|
||||
longDescription = ''
|
||||
A Python package for creating beautiful command line interfaces in a
|
||||
composable way, with as little code as necessary.
|
||||
'';
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
}
|
||||
@@ -1,86 +0,0 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, callPackage
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, isPy27
|
||||
, ipaddress
|
||||
, openssl
|
||||
, darwin
|
||||
, packaging
|
||||
, six
|
||||
, isPyPy
|
||||
, cffi
|
||||
, pytest
|
||||
, pretend
|
||||
, iso8601
|
||||
, pytz
|
||||
, hypothesis
|
||||
, enum34
|
||||
}:
|
||||
|
||||
let
|
||||
cryptography-vectors = callPackage ./vectors.nix { };
|
||||
in
|
||||
buildPythonPackage rec {
|
||||
pname = "cryptography";
|
||||
version = "3.3.2"; # Also update the hash in vectors-3.3.nix
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1vcvw4lkw1spiq322pm1256kail8nck6bbgpdxx3pqa905wd6q2s";
|
||||
};
|
||||
|
||||
patches = [ ./cryptography-py27-warning.patch ];
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
nativeBuildInputs = lib.optionals (!isPyPy) [
|
||||
cffi
|
||||
];
|
||||
|
||||
buildInputs = [ openssl ]
|
||||
++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
|
||||
propagatedBuildInputs = [
|
||||
packaging
|
||||
six
|
||||
] ++ lib.optionals (!isPyPy) [
|
||||
cffi
|
||||
] ++ lib.optionals isPy27 [
|
||||
ipaddress
|
||||
enum34
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
cryptography-vectors
|
||||
hypothesis
|
||||
iso8601
|
||||
pretend
|
||||
pytest
|
||||
pytz
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
py.test --disable-pytest-warnings tests
|
||||
'';
|
||||
|
||||
# IOKit's dependencies are inconsistent between OSX versions, so this is the best we
|
||||
# can do until nix 1.11's release
|
||||
__impureHostDeps = [ "/usr/lib" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A package which provides cryptographic recipes and primitives";
|
||||
longDescription = ''
|
||||
Cryptography includes both high level recipes and low level interfaces to
|
||||
common cryptographic algorithms such as symmetric ciphers, message
|
||||
digests, and key derivation functions.
|
||||
Our goal is for it to be your "cryptographic standard library". It
|
||||
supports Python 2.7, Python 3.5+, and PyPy 5.4+.
|
||||
'';
|
||||
homepage = "https://github.com/pyca/cryptography";
|
||||
changelog = "https://cryptography.io/en/latest/changelog/#v"
|
||||
+ replaceStrings [ "." ] [ "-" ] version;
|
||||
license = with licenses; [ asl20 bsd3 psfl ];
|
||||
maintainers = with maintainers; [ primeos ];
|
||||
};
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
{ buildPythonPackage, fetchPypi, lib, cryptography }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "cryptography-vectors";
|
||||
# The test vectors must have the same version as the cryptography package:
|
||||
version = cryptography.version;
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "cryptography_vectors";
|
||||
inherit version;
|
||||
sha256 = "1yhaps0f3h2yjb6lmz953z1l1d84y9swk4k3gj9nqyk4vbx5m7cc";
|
||||
};
|
||||
|
||||
# No tests included
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Test vectors for the cryptography package";
|
||||
homepage = "https://cryptography.io/en/latest/development/test-vectors/";
|
||||
# Source: https://github.com/pyca/cryptography/tree/master/vectors;
|
||||
license = with licenses; [ asl20 bsd3 ];
|
||||
maintainers = with maintainers; [ primeos ];
|
||||
};
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "decorator";
|
||||
version = "4.4.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1rxzhk5zwiggk45hl53zydvy70lk654kg0nc1p54090p402jz9p3";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://pypi.python.org/pypi/decorator";
|
||||
description = "Better living through Python with decorators";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
{ lib, buildPythonPackage, fetchPypi
|
||||
, itsdangerous, click, werkzeug, jinja2, pytest }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
version = "1.1.2";
|
||||
pname = "Flask";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "4efa1ae2d7c9865af48986de8aeb8504bf32c7f3d6fdc9353d34b21f4b127060";
|
||||
};
|
||||
|
||||
checkInputs = [ pytest ];
|
||||
propagatedBuildInputs = [ itsdangerous click werkzeug jinja2 ];
|
||||
|
||||
checkPhase = ''
|
||||
py.test
|
||||
'';
|
||||
|
||||
# Tests require extra dependencies
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://flask.pocoo.org/";
|
||||
description = "A microframework based on Werkzeug, Jinja 2, and good intentions";
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, python-dateutil
|
||||
, six
|
||||
, mock
|
||||
, nose
|
||||
, pytest
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "freezegun";
|
||||
version = "0.3.15";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "e2062f2c7f95cc276a834c22f1a17179467176b624cc6f936e8bc3be5535ad1b";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ python-dateutil six ];
|
||||
checkInputs = [ mock nose pytest ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "FreezeGun: Let your Python tests travel through time";
|
||||
homepage = "https://github.com/spulec/freezegun";
|
||||
license = licenses.asl20;
|
||||
};
|
||||
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, isPy3k
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ipaddr";
|
||||
version = "2.2.0";
|
||||
disabled = isPy3k;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1ml8r8z3f0mnn381qs1snbffa920i9ycp6mm2am1d3aqczkdz4j0";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Google's IP address manipulation library";
|
||||
homepage = "https://github.com/google/ipaddr-py";
|
||||
license = licenses.asl20;
|
||||
};
|
||||
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "itsdangerous";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Helpers to pass trusted data to untrusted environments and back";
|
||||
homepage = "https://pypi.python.org/pypi/itsdangerous/";
|
||||
license = licenses.bsd0;
|
||||
};
|
||||
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, isPy27
|
||||
, mock
|
||||
, pycrypto
|
||||
, requests
|
||||
, pytest-runner
|
||||
, pytest
|
||||
, requests-mock
|
||||
, typing
|
||||
, backports_ssl_match_hostname
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "apache-libcloud";
|
||||
version = "2.8.3";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "70096690b24a7832cc5abdfda1954b49fddc1c09a348a1e6caa781ac867ed4c6";
|
||||
};
|
||||
|
||||
checkInputs = [ mock pytest pytest-runner requests-mock ];
|
||||
propagatedBuildInputs = [ pycrypto requests ]
|
||||
++ lib.optionals isPy27 [ typing backports_ssl_match_hostname ];
|
||||
|
||||
preConfigure = "cp libcloud/test/secrets.py-dist libcloud/test/secrets.py";
|
||||
|
||||
# requires a certificates file
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A unified interface to many cloud providers";
|
||||
homepage = "https://libcloud.apache.org/";
|
||||
license = licenses.asl20;
|
||||
};
|
||||
|
||||
}
|
||||
@@ -1,31 +0,0 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, lxml
|
||||
, docutils
|
||||
, pillow
|
||||
, isPy3k
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
version = "1.1.7";
|
||||
pname = "python-lpod";
|
||||
# lpod library currently does not support Python 3.x
|
||||
disabled = isPy3k;
|
||||
|
||||
propagatedBuildInputs = [ lxml docutils pillow ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lpod";
|
||||
repo = "lpod-python";
|
||||
rev = "dee32120ee582ff337b0c52a95a9a87cca71fd67";
|
||||
sha256 = "1mikvzp27wxkzpr2lii4wg1hhx8h610agckqynvsrdc8v3nw9ciw";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/lpod/lpod-python/";
|
||||
description = "Library implementing the ISO/IEC 26300 OpenDocument Format standard (ODF) ";
|
||||
license = licenses.gpl3;
|
||||
};
|
||||
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, cryptography
|
||||
, ecdsa
|
||||
, pytestCheckHook
|
||||
, pythonOlder
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyjwt";
|
||||
version = "1.7.1";
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "PyJWT";
|
||||
inherit version;
|
||||
sha256 = "8d59a976fb773f3e6a39c85636357c4f0e242707394cadadd9814f5cbaa20e96";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i '/^addopts/d' setup.cfg
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
cryptography
|
||||
ecdsa
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
"test_ec_verify_should_return_false_if_signature_invalid"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "jwt" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "JSON Web Token implementation in Python";
|
||||
homepage = "https://github.com/jpadilla/pyjwt";
|
||||
license = licenses.mit;
|
||||
knownVulnerabilities = [
|
||||
"CVE-2022-29217"
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,84 +0,0 @@
|
||||
{ lib
|
||||
, brotli
|
||||
, buildPythonPackage
|
||||
, certifi
|
||||
, cryptography
|
||||
, python-dateutil
|
||||
, fetchpatch
|
||||
, fetchPypi
|
||||
, idna
|
||||
, mock
|
||||
, pyopenssl
|
||||
, pysocks
|
||||
, pytest-freezegun
|
||||
, pytest-timeout
|
||||
, pytestCheckHook
|
||||
, tornado
|
||||
, trustme
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "urllib3";
|
||||
version = "1.26.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "19188f96923873c92ccb987120ec4acaa12f0461fa9ce5d3d0772bc965a39e08";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "CVE-2021-28363.patch";
|
||||
url = "https://github.com/urllib3/urllib3/commit/8d65ea1ecf6e2cdc27d42124e587c1b83a3118b0.patch";
|
||||
sha256 = "1lqhrd11p03iv14bp89rh67ynf000swmwsfvr3jpfdycdqr3ka9q";
|
||||
})
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
brotli
|
||||
certifi
|
||||
cryptography
|
||||
idna
|
||||
pyopenssl
|
||||
pysocks
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
python-dateutil
|
||||
mock
|
||||
pytest-freezegun
|
||||
pytest-timeout
|
||||
pytestCheckHook
|
||||
tornado
|
||||
trustme
|
||||
];
|
||||
|
||||
# Tests in urllib3 are mostly timeout-based instead of event-based and
|
||||
# are therefore inherently flaky. On your own machine, the tests will
|
||||
# typically build fine, but on a loaded cluster such as Hydra random
|
||||
# timeouts will occur.
|
||||
#
|
||||
# The urllib3 test suite has two different timeouts in their test suite
|
||||
# (see `test/__init__.py`):
|
||||
# - SHORT_TIMEOUT
|
||||
# - LONG_TIMEOUT
|
||||
# When CI is in the env, LONG_TIMEOUT will be significantly increased.
|
||||
# Still, failures can occur and for that reason tests are disabled.
|
||||
doCheck = false;
|
||||
|
||||
preCheck = ''
|
||||
export CI # Increases LONG_TIMEOUT
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "urllib3" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Powerful, sanity-friendly HTTP client for Python";
|
||||
homepage = "https://github.com/shazow/urllib3";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fab ];
|
||||
knownVulnerabilities = [
|
||||
"CVE-2021-33503"
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,48 +0,0 @@
|
||||
{ buildPythonPackage
|
||||
, lib
|
||||
, six
|
||||
, fetchPypi
|
||||
, pyyaml
|
||||
, mock
|
||||
, contextlib2
|
||||
, wrapt
|
||||
, pytest
|
||||
, pytest-httpbin
|
||||
, yarl
|
||||
, pythonOlder
|
||||
, pythonAtLeast
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "vcrpy";
|
||||
version = "3.0.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "21168d5ae14263a833d4b71acfd8278d8841114f24be1b4ab4a5719d0c7f07bc";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
pytest
|
||||
pytest-httpbin
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pyyaml
|
||||
wrapt
|
||||
six
|
||||
]
|
||||
++ lib.optionals (pythonOlder "3.3") [ contextlib2 mock ]
|
||||
++ lib.optionals (pythonAtLeast "3.4") [ yarl ];
|
||||
|
||||
checkPhase = ''
|
||||
py.test --ignore=tests/integration -k "not TestVCRConnection"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Automatically mock your HTTP interactions to simplify and speed up testing";
|
||||
homepage = "https://github.com/kevin1024/vcrpy";
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
{ lib, stdenv, buildPythonPackage, fetchPypi
|
||||
, itsdangerous, hypothesis
|
||||
, pytestCheckHook, requests
|
||||
, pytest-timeout
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "Werkzeug";
|
||||
version = "1.0.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "6c80b1e5ad3665290ea39320b91e1be1e0d5f60652b964a3070216de83d2e47c";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ itsdangerous ];
|
||||
checkInputs = [ pytestCheckHook requests hypothesis pytest-timeout ];
|
||||
|
||||
postPatch = ''
|
||||
# ResourceWarning causes tests to fail
|
||||
rm tests/test_routing.py
|
||||
'';
|
||||
|
||||
disabledTests = [
|
||||
"test_save_to_pathlib_dst"
|
||||
"test_cookie_maxsize"
|
||||
"test_cookie_samesite_attribute"
|
||||
"test_cookie_samesite_invalid"
|
||||
"test_range_parsing"
|
||||
"test_content_range_parsing"
|
||||
"test_http_date_lt_1000"
|
||||
"test_best_match_works"
|
||||
"test_date_to_unix"
|
||||
"test_easteregg"
|
||||
|
||||
# Seems to be a problematic test-case:
|
||||
#
|
||||
# > warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
|
||||
# E pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
|
||||
# E
|
||||
# E Traceback (most recent call last):
|
||||
# E File "/nix/store/cwv8aj4vsqvimzljw5dxsxy663vjgibj-python3.9-Werkzeug-1.0.1/lib/python3.9/site-packages/werkzeug/formparser.py", line 318, in parse_multipart_headers
|
||||
# E return Headers(result)
|
||||
# E ResourceWarning: unclosed file <_io.FileIO name=11 mode='rb+' closefd=True>
|
||||
"test_basic_routing"
|
||||
"test_merge_slashes_match"
|
||||
"test_merge_slashes_build"
|
||||
"TestMultiPart"
|
||||
"TestHTTPUtility"
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
"test_get_machine_id"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://palletsprojects.com/p/werkzeug/";
|
||||
description = "A WSGI utility library for Python";
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
{ lib, buildPythonPackage, fetchPypi, h11, enum34, pytest }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "wsproto";
|
||||
version = "0.14.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "051s127qb5dladxa14n9nqajwq7xki1dz1was5r5v9df5a0jq8pd";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ h11 enum34 ];
|
||||
|
||||
checkInputs = [ pytest ];
|
||||
|
||||
checkPhase = ''
|
||||
py.test
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Pure Python, pure state-machine WebSocket implementation";
|
||||
homepage = "https://github.com/python-hyper/wsproto/";
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
@@ -1,91 +0,0 @@
|
||||
{ fetchurl
|
||||
, lib
|
||||
, stdenv
|
||||
, darwin
|
||||
, openglSupport ? true
|
||||
, libX11
|
||||
, wxGTK
|
||||
, wxmac
|
||||
, pkg-config
|
||||
, buildPythonPackage
|
||||
, pyopengl
|
||||
, isPy3k
|
||||
, isPyPy
|
||||
, python
|
||||
, cairo
|
||||
, pango
|
||||
}:
|
||||
|
||||
assert wxGTK.unicode;
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "wxPython";
|
||||
version = "3.0.2.0";
|
||||
|
||||
disabled = isPy3k || isPyPy;
|
||||
doCheck = false;
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/wxpython/wxPython-src-${version}.tar.bz2";
|
||||
sha256 = "0qfzx3sqx4mwxv99sfybhsij4b5pc03ricl73h4vhkzazgjjjhfm";
|
||||
};
|
||||
|
||||
dontUseSetuptoolsBuild = true;
|
||||
dontUsePipInstall = true;
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
nativeBuildInputs = [ pkg-config ]
|
||||
++ (lib.optionals (!stdenv.isDarwin) [ wxGTK libX11 ])
|
||||
++ (lib.optionals stdenv.isDarwin [ wxmac ]);
|
||||
|
||||
buildInputs = [ ]
|
||||
++ (lib.optionals (!stdenv.isDarwin) [ (wxGTK.gtk) ])
|
||||
++ (lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
|
||||
ApplicationServices
|
||||
AudioToolbox
|
||||
CFNetwork
|
||||
Carbon
|
||||
Cocoa
|
||||
CoreGraphics
|
||||
CoreServices
|
||||
CoreText
|
||||
DiskArbitration
|
||||
IOKit
|
||||
ImageIO
|
||||
OpenGL
|
||||
Security
|
||||
]))
|
||||
++ (lib.optional openglSupport pyopengl);
|
||||
|
||||
preConfigure = ''
|
||||
cd wxPython
|
||||
# remove wxPython's darwin hack that interference with python-2.7-distutils-C++.patch
|
||||
substituteInPlace config.py \
|
||||
--replace "distutils.unixccompiler.UnixCCompiler = MyUnixCCompiler" ""
|
||||
# set the WXPREFIX to $out instead of the storepath of wxwidgets
|
||||
substituteInPlace config.py \
|
||||
--replace "WXPREFIX = getWxConfigValue('--prefix')" "WXPREFIX = '$out'"
|
||||
# this check is supposed to only return false on older systems running non-framework python
|
||||
substituteInPlace src/osx_cocoa/_core_wrap.cpp \
|
||||
--replace "return wxPyTestDisplayAvailable();" "return true;"
|
||||
'' + lib.optionalString (!stdenv.isDarwin) ''
|
||||
substituteInPlace wx/lib/wxcairo.py \
|
||||
--replace 'cairoLib = None' 'cairoLib = ctypes.CDLL("${cairo}/lib/libcairo.so")'
|
||||
substituteInPlace wx/lib/wxcairo.py \
|
||||
--replace '_dlls = dict()' '_dlls = {k: ctypes.CDLL(v) for k, v in [
|
||||
("gdk", "${wxGTK.gtk}/lib/libgtk-x11-2.0.so"),
|
||||
("pangocairo", "${pango.out}/lib/libpangocairo-1.0.so"),
|
||||
("appsvc", None)
|
||||
]}'
|
||||
'';
|
||||
|
||||
buildPhase = "";
|
||||
|
||||
installPhase = ''
|
||||
${python.interpreter} setup.py install WXPORT=${if stdenv.isDarwin then "osx_cocoa" else "gtk2"} NO_HEADERS=0 BUILD_GLCANVAS=${if openglSupport then "1" else "0"} UNICODE=1 --prefix=$out
|
||||
wrapPythonPrograms
|
||||
'';
|
||||
|
||||
passthru = { inherit wxGTK openglSupport; };
|
||||
}
|
||||
@@ -16,6 +16,13 @@ stdenv.mkDerivation rec {
|
||||
url = "https://github.com/thorkill/eresi/commit/a79406344cc21d594d27fa5ec5922abe9f7475e7.patch";
|
||||
sha256 = "1mjjc6hj7r06iarvai7prcdvjk9g0k5vwrmkwcm7b8ivd5xzxp2z";
|
||||
})
|
||||
|
||||
# Pull patch pending upstream inclusion for -fno-common toolchains:
|
||||
# https://github.com/thorkill/eresi/pull/166
|
||||
(fetchpatch {
|
||||
url = "https://github.com/thorkill/eresi/commit/bc5b9a75c326f277e5f89e01a3b8f7f0519a99f6.patch";
|
||||
sha256 = "0lqwrnkkhhd3vi1r8ngvziyqkk09h98h93rrs3ndqi048a898ys1";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "controller-tools";
|
||||
version = "0.6.2";
|
||||
version = "0.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubernetes-sigs";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0hbai8pi59yhgsmmmxk3nghhy9hj3ma98jq2d1k46n46gr64a0q5";
|
||||
sha256 = "sha256-+nn/lj/MEtmC5NcvPOp1VZE13qJsGG+6eQaG+Yi8FTM=";
|
||||
};
|
||||
|
||||
vendorSha256 = "061qvq8z98d39vyk1gr46fw5ynxra154s90n3pb7k1q7q45rg76j";
|
||||
vendorSha256 = "sha256-QCF3sfBUAjiIGb2EFrLKj5wHJ6HxJVqLEjxUTpMiX6E=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
||||
@@ -35,6 +35,12 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ SDL SDL_mixer SDL_sound gtk2 ]
|
||||
++ lib.optionals stdenv.isDarwin [ smpeg libvorbis ];
|
||||
|
||||
# Workaround build failure on -fno-common toolchains:
|
||||
# ld: build/linux.release/alan3/Location.o:(.bss+0x0): multiple definition of
|
||||
# `logFile'; build/linux.release/alan3/act.o:(.bss+0x0): first defined here
|
||||
# TODO: drop once updated to 2022.1 or later.
|
||||
NIX_CFLAGS_COMPILE = "-fcommon";
|
||||
|
||||
buildPhase = jamenv + "jam -j$NIX_BUILD_CORES";
|
||||
|
||||
installPhase =
|
||||
|
||||
@@ -19,6 +19,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# Workaround build failure on -fno-common toolchains:
|
||||
# ld: dnd.o:src/main.h:136: multiple definition of
|
||||
# `MENU_EXT'; main.o:src/main.h:136: first defined here
|
||||
NIX_CFLAGS_COMPILE = "-fcommon";
|
||||
|
||||
NIX_LDFLAGS = "-lX11";
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -4,7 +4,9 @@
|
||||
appleDerivation {
|
||||
nativeBuildInputs = [ xcbuildHook flex bison fixDarwinDylibNames ];
|
||||
buildInputs = [ CoreSymbolication darling xnu ];
|
||||
NIX_CFLAGS_COMPILE = "-DCTF_OLD_VERSIONS -DPRIVATE -DYYDEBUG=1 -I${xnu}/Library/Frameworks/System.framework/Headers -Wno-error=implicit-function-declaration";
|
||||
# -fcommon: workaround build failure on -fno-common toolchains:
|
||||
# duplicate symbol '_kCSRegionMachHeaderName' in: libproc.o dt_module_apple.o
|
||||
NIX_CFLAGS_COMPILE = "-DCTF_OLD_VERSIONS -DPRIVATE -DYYDEBUG=1 -I${xnu}/Library/Frameworks/System.framework/Headers -Wno-error=implicit-function-declaration -fcommon";
|
||||
NIX_LDFLAGS = "-L./Products/Release";
|
||||
xcbuildFlags = [ "-target" "dtrace_frameworks" "-target" "dtrace" ];
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ buildPackages, fetchFromGitHub, perl, buildLinux, libelf, util-linux, ... } @ args:
|
||||
{ buildPackages, fetchFromGitHub, fetchurl, perl, buildLinux, libelf, util-linux, kernelPatches ? [], ... } @ args:
|
||||
|
||||
buildLinux (args // rec {
|
||||
version = "4.14.180-176";
|
||||
@@ -16,6 +16,14 @@ buildLinux (args // rec {
|
||||
sha256 = "0n7i7a2bkrm9p1wfr20h54cqm32fbjvwyn703r6zm1f6ivqhk43v";
|
||||
};
|
||||
|
||||
kernelPatches = args.kernelPatches ++ [{
|
||||
name = "usbip-tools-fno-common";
|
||||
patch = fetchurl {
|
||||
url = "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/?id=d5efc2e6b98fe661dbd8dd0d5d5bfb961728e57a";
|
||||
hash = "sha256-1CXYCV5zMLA4YdbCr8cO2N4CHEDzQChS9qbKYHPm3U4=";
|
||||
};
|
||||
}];
|
||||
|
||||
defconfig = "odroidxu4_defconfig";
|
||||
|
||||
# This extraConfig is (only) required because the gator module fails to build as-is.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, kernel, udev, autoconf, automake, libtool, hwdata, kernelOlder }:
|
||||
{ lib, stdenv, fetchpatch, kernel, udev, autoconf, automake, libtool, hwdata, kernelOlder }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "usbip-${kernel.name}";
|
||||
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
|
||||
./fix-snprintf-truncation.patch
|
||||
# fixes build with gcc9
|
||||
./fix-strncpy-truncation.patch
|
||||
];
|
||||
] ++ kernel.patches;
|
||||
|
||||
nativeBuildInputs = [ autoconf automake libtool ];
|
||||
buildInputs = [ udev ];
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
{ lib, buildGoPackage, fetchFromGitHub }:
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
buildGoPackage rec {
|
||||
buildGoModule rec {
|
||||
pname = "webhook";
|
||||
version = "2.8.0";
|
||||
|
||||
goPackagePath = "github.com/adnanh/webhook";
|
||||
excludedPackages = [ "test" ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "adnanh";
|
||||
repo = "webhook";
|
||||
@@ -14,9 +14,16 @@ buildGoPackage rec {
|
||||
sha256 = "0n03xkgwpzans0cymmzb0iiks8mi2c76xxdak780dk0jbv6qgp5i";
|
||||
};
|
||||
|
||||
vendorSha256 = null;
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Incoming webhook server that executes shell commands";
|
||||
homepage = "https://github.com/adnanh/webhook";
|
||||
license = [ licenses.mit ];
|
||||
description = "incoming webhook server that executes shell commands";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ azahi ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
{ fetchFromGitHub
|
||||
, fetchurl
|
||||
, lib
|
||||
, stdenv
|
||||
, double-conversion
|
||||
, gperftools
|
||||
, mimalloc
|
||||
, rapidjson
|
||||
, liburing
|
||||
, xxHash
|
||||
, abseil-cpp_202111
|
||||
, gbenchmark
|
||||
, glog
|
||||
, gtest
|
||||
, jemalloc
|
||||
, gcc-unwrapped
|
||||
, autoconf
|
||||
, autoconf-archive
|
||||
, automake
|
||||
, cmake
|
||||
, ninja
|
||||
, boost
|
||||
, libunwind
|
||||
, libtool
|
||||
, openssl
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "dragonflydb";
|
||||
version = "0.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = "dragonfly";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-P6WMW/n+VezWDXGagT4B+ZYyCp8oufDV6MTrpKpLZcs=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
# Needed exactly 5.4.4 for patch to work
|
||||
lua = fetchurl {
|
||||
url = "https://github.com/lua/lua/archive/refs/tags/v5.4.4.tar.gz";
|
||||
hash = "sha256-L/ibvqIqfIuRDWsAb1ukVZ7c9GiiVTfO35mI7ZD2tFA=";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit pname version src;
|
||||
|
||||
postPatch = ''
|
||||
mkdir -p ./build/{third_party,_deps}
|
||||
ln -s ${double-conversion.src} ./build/third_party/dconv
|
||||
ln -s ${mimalloc.src} ./build/third_party/mimalloc
|
||||
ln -s ${rapidjson.src} ./build/third_party/rapidjson
|
||||
ln -s ${gbenchmark.src} ./build/_deps/benchmark-src
|
||||
ln -s ${gtest.src} ./build/_deps/gtest-src
|
||||
cp -R --no-preserve=mode,ownership ${gperftools.src} ./build/third_party/gperf
|
||||
cp -R --no-preserve=mode,ownership ${liburing.src} ./build/third_party/uring
|
||||
cp -R --no-preserve=mode,ownership ${xxHash.src} ./build/third_party/xxhash
|
||||
cp -R --no-preserve=mode,ownership ${abseil-cpp_202111.src} ./build/_deps/abseil_cpp-src
|
||||
cp -R --no-preserve=mode,ownership ${glog.src} ./build/_deps/glog-src
|
||||
chmod u+x ./build/third_party/uring/configure
|
||||
cp ./build/third_party/xxhash/cli/xxhsum.{1,c} ./build/third_party/xxhash
|
||||
patch -p1 -d ./build/_deps/glog-src < ${./glog.patch}
|
||||
sed '
|
||||
s@REPLACEJEMALLOCURL@file://${jemalloc.src}@
|
||||
s@REPLACELUAURL@file://${lua}@
|
||||
' ${./fixes.patch} | patch -p1
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
autoconf-archive
|
||||
automake
|
||||
cmake
|
||||
ninja
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
libunwind
|
||||
libtool
|
||||
openssl
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_AR=${gcc-unwrapped}/bin/gcc-ar"
|
||||
"-DCMAKE_RANLIB=${gcc-unwrapped}/bin/gcc-ranlib"
|
||||
];
|
||||
|
||||
ninjaFlags = "dragonfly";
|
||||
|
||||
doCheck = false;
|
||||
dontUseNinjaInstall = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/bin
|
||||
cp ./dragonfly $out/bin
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A modern replacement for Redis and Memcached";
|
||||
homepage = "https://dragonflydb.io/";
|
||||
license = licenses.bsl11;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ yureien ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
diff --git a/helio/cmake/third_party.cmake b/helio/cmake/third_party.cmake
|
||||
index aeb78d9..e9d4e6b 100644
|
||||
--- a/helio/cmake/third_party.cmake
|
||||
+++ b/helio/cmake/third_party.cmake
|
||||
@@ -143,7 +143,7 @@ endfunction()
|
||||
|
||||
FetchContent_Declare(
|
||||
gtest
|
||||
- URL https://github.com/google/googletest/archive/release-1.11.0.zip
|
||||
+ DOWNLOAD_COMMAND true
|
||||
)
|
||||
|
||||
FetchContent_GetProperties(gtest)
|
||||
@@ -154,7 +154,7 @@ endif ()
|
||||
|
||||
FetchContent_Declare(
|
||||
benchmark
|
||||
- URL https://github.com/google/benchmark/archive/v1.6.1.tar.gz
|
||||
+ DOWNLOAD_COMMAND true
|
||||
)
|
||||
|
||||
FetchContent_GetProperties(benchmark)
|
||||
@@ -169,7 +169,7 @@ endif ()
|
||||
|
||||
FetchContent_Declare(
|
||||
abseil_cpp
|
||||
- URL https://github.com/abseil/abseil-cpp/archive/20211102.0.tar.gz
|
||||
+ DOWNLOAD_COMMAND true
|
||||
PATCH_COMMAND patch -p1 < "${CMAKE_CURRENT_LIST_DIR}/../patches/abseil-20211102.patch"
|
||||
)
|
||||
|
||||
@@ -183,11 +183,7 @@ endif()
|
||||
|
||||
FetchContent_Declare(
|
||||
glog
|
||||
- GIT_REPOSITORY https://github.com/romange/glog
|
||||
- GIT_TAG Absl
|
||||
-
|
||||
- GIT_PROGRESS TRUE
|
||||
- GIT_SHALLOW TRUE
|
||||
+ DOWNLOAD_COMMAND true
|
||||
)
|
||||
|
||||
FetchContent_GetProperties(glog)
|
||||
@@ -233,10 +229,7 @@ endif()
|
||||
|
||||
add_third_party(
|
||||
gperf
|
||||
- URL https://github.com/gperftools/gperftools/archive/gperftools-2.9.1.tar.gz
|
||||
- #GIT_REPOSITORY https://github.com/gperftools/gperftools
|
||||
- #GIT_TAG gperftools-2.9.1
|
||||
- GIT_SHALLOW TRUE
|
||||
+ DOWNLOAD_COMMAND true
|
||||
PATCH_COMMAND autoreconf -i # update runs every time for some reason
|
||||
# CMAKE_PASS_FLAGS "-DGPERFTOOLS_BUILD_HEAP_PROFILER=OFF -DGPERFTOOLS_BUILD_HEAP_CHECKER=OFF \
|
||||
# -DGPERFTOOLS_BUILD_DEBUGALLOC=OFF -DBUILD_TESTING=OFF \
|
||||
@@ -260,11 +253,12 @@ else()
|
||||
endif()
|
||||
|
||||
add_third_party(mimalloc
|
||||
- URL https://github.com/microsoft/mimalloc/archive/refs/tags/v2.0.5.tar.gz
|
||||
+ DOWNLOAD_COMMAND true
|
||||
|
||||
# Add -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS=-O0 to debug
|
||||
CMAKE_PASS_FLAGS "-DCMAKE_BUILD_TYPE=Release -DMI_BUILD_SHARED=OFF -DMI_BUILD_TESTS=OFF \
|
||||
- -DMI_INSTALL_TOPLEVEL=ON -DMI_OVERRIDE=${MI_OVERRIDE} -DCMAKE_C_FLAGS=-g"
|
||||
+ -DMI_INSTALL_TOPLEVEL=ON -DMI_OVERRIDE=${MI_OVERRIDE} -DCMAKE_C_FLAGS=-g \
|
||||
+ -DCMAKE_INSTALL_LIBDIR=${THIRD_PARTY_LIB_DIR}/mimalloc/lib"
|
||||
|
||||
BUILD_COMMAND make -j4 mimalloc-static
|
||||
INSTALL_COMMAND make install
|
||||
@@ -274,7 +268,7 @@ add_third_party(mimalloc
|
||||
)
|
||||
|
||||
add_third_party(jemalloc
|
||||
- URL https://github.com/jemalloc/jemalloc/releases/download/5.2.1/jemalloc-5.2.1.tar.bz2
|
||||
+ URL REPLACEJEMALLOCURL
|
||||
PATCH_COMMAND ./autogen.sh
|
||||
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=${THIRD_PARTY_LIB_DIR}/jemalloc --with-jemalloc-prefix=je_ --disable-libdl
|
||||
)
|
||||
@@ -282,24 +276,23 @@ add_third_party(jemalloc
|
||||
|
||||
add_third_party(
|
||||
xxhash
|
||||
- URL https://github.com/Cyan4973/xxHash/archive/v0.8.0.tar.gz
|
||||
+ DOWNLOAD_COMMAND true
|
||||
SOURCE_SUBDIR cmake_unofficial
|
||||
- CMAKE_PASS_FLAGS "-DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=OFF"
|
||||
+ CMAKE_PASS_FLAGS "-DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=OFF \
|
||||
+ -DCMAKE_INSTALL_LIBDIR=${THIRD_PARTY_LIB_DIR}/xxhash/lib"
|
||||
)
|
||||
|
||||
|
||||
add_third_party(
|
||||
uring
|
||||
- GIT_REPOSITORY https://github.com/axboe/liburing.git
|
||||
- GIT_TAG liburing-2.1
|
||||
+ DOWNLOAD_COMMAND true
|
||||
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=${THIRD_PARTY_LIB_DIR}/uring
|
||||
BUILD_IN_SOURCE 1
|
||||
)
|
||||
|
||||
add_third_party(
|
||||
rapidjson
|
||||
- GIT_REPOSITORY https://github.com/Tencent/rapidjson.git
|
||||
- GIT_TAG 1a803826f1197b5e30703afe4b9c0e7dd48074f5
|
||||
+ DOWNLOAD_COMMAND true
|
||||
CMAKE_PASS_FLAGS "-DRAPIDJSON_BUILD_TESTS=OFF -DRAPIDJSON_BUILD_EXAMPLES=OFF \
|
||||
-DRAPIDJSON_BUILD_DOC=OFF"
|
||||
LIB "none"
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 0dc0824..d5b38b3 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -1,6 +1,6 @@
|
||||
add_third_party(
|
||||
lua
|
||||
- URL https://github.com/lua/lua/archive/refs/tags/v5.4.4.tar.gz
|
||||
+ URL REPLACELUAURL
|
||||
PATCH_COMMAND patch -p1 -i "${CMAKE_SOURCE_DIR}/patches/lua-v5.4.4.patch"
|
||||
CONFIGURE_COMMAND echo
|
||||
BUILD_IN_SOURCE 1
|
||||
@@ -11,7 +11,8 @@ add_third_party(
|
||||
|
||||
add_third_party(
|
||||
dconv
|
||||
- URL https://github.com/google/double-conversion/archive/refs/tags/v3.2.0.tar.gz
|
||||
+ DOWNLOAD_COMMAND true
|
||||
+ CMAKE_PASS_FLAGS "-DCMAKE_INSTALL_LIBDIR=${THIRD_PARTY_LIB_DIR}/dconv/lib"
|
||||
LIB libdouble-conversion.a
|
||||
)
|
||||
|
||||
@@ -0,0 +1,553 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 846b4448..b4900ead 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -39,6 +39,7 @@ option (PRINT_UNSYMBOLIZED_STACK_TRACES
|
||||
"Print file offsets in traces instead of symbolizing" OFF)
|
||||
option (WITH_CUSTOM_PREFIX "Enable support for user-generated message prefixes" ON)
|
||||
option (WITH_GFLAGS "Use gflags" ON)
|
||||
+option (WITH_ABSL "Use absl flags" OFF)
|
||||
option (WITH_GTEST "Use Google Test" ON)
|
||||
option (WITH_PKGCONFIG "Enable pkg-config support" ON)
|
||||
option (WITH_SYMBOLIZE "Enable symbolize module" ON)
|
||||
@@ -87,6 +88,13 @@ if (WITH_GFLAGS)
|
||||
endif (gflags_FOUND)
|
||||
endif (WITH_GFLAGS)
|
||||
|
||||
+if (WITH_ABSL)
|
||||
+ set (HAVE_ABSL_FLAGS 1)
|
||||
+ set (ac_cv_have_abslflags 1)
|
||||
+else (WITH_ABSL)
|
||||
+set (ac_cv_have_abslflags 0)
|
||||
+endif (WITH_ABSL)
|
||||
+
|
||||
find_package (Threads)
|
||||
find_package (Unwind)
|
||||
|
||||
@@ -1025,7 +1033,7 @@ write_basic_package_version_file (
|
||||
${CMAKE_CURRENT_BINARY_DIR}/glog-config-version.cmake
|
||||
COMPATIBILITY SameMajorVersion)
|
||||
|
||||
-export (TARGETS glog NAMESPACE glog:: FILE glog-targets.cmake)
|
||||
+# export (TARGETS glog NAMESPACE glog:: FILE glog-targets.cmake)
|
||||
export (PACKAGE glog)
|
||||
|
||||
get_filename_component (_PREFIX "${CMAKE_INSTALL_PREFIX}" ABSOLUTE)
|
||||
diff --git a/src/base/commandlineflags.h b/src/base/commandlineflags.h
|
||||
index bcb12dea..1c9d9294 100644
|
||||
--- a/src/base/commandlineflags.h
|
||||
+++ b/src/base/commandlineflags.h
|
||||
@@ -57,6 +57,25 @@
|
||||
|
||||
#include <gflags/gflags.h>
|
||||
|
||||
+#else
|
||||
+#ifdef HAVE_ABSL_FLAGS
|
||||
+#include <absl/flags/flag.h>
|
||||
+
|
||||
+#define FLAG(name) absl::GetFlag(FLAGS_##name)
|
||||
+
|
||||
+#define DEFINE_bool(name, value, meaning) \
|
||||
+ ABSL_FLAG(bool, name, value, meaning)
|
||||
+
|
||||
+#define DEFINE_int32(name, value, meaning) \
|
||||
+ ABSL_FLAG(GOOGLE_NAMESPACE::int32, name, value, meaning)
|
||||
+
|
||||
+#define DEFINE_uint32(name, value, meaning) \
|
||||
+ ABSL_FLAG(GOOGLE_NAMESPACE::uint32, name, value, meaning)
|
||||
+
|
||||
+#define DEFINE_string(name, value, meaning) \
|
||||
+ ABSL_FLAG(std::string, name, value, meaning)
|
||||
+
|
||||
+
|
||||
#else
|
||||
|
||||
#include <glog/logging.h>
|
||||
@@ -108,6 +127,7 @@
|
||||
} \
|
||||
using fLS::FLAGS_##name
|
||||
|
||||
+#endif
|
||||
#endif // HAVE_LIB_GFLAGS
|
||||
|
||||
// Define GLOG_DEFINE_* using DEFINE_* . By using these macros, we
|
||||
diff --git a/src/base/mutex.h b/src/base/mutex.h
|
||||
index e82c597f..a58c1412 100644
|
||||
--- a/src/base/mutex.h
|
||||
+++ b/src/base/mutex.h
|
||||
@@ -319,11 +319,6 @@ class WriterMutexLock {
|
||||
void operator=(const WriterMutexLock&);
|
||||
};
|
||||
|
||||
-// Catch bug where variable name is omitted, e.g. MutexLock (&mu);
|
||||
-#define MutexLock(x) COMPILE_ASSERT(0, mutex_lock_decl_missing_var_name)
|
||||
-#define ReaderMutexLock(x) COMPILE_ASSERT(0, rmutex_lock_decl_missing_var_name)
|
||||
-#define WriterMutexLock(x) COMPILE_ASSERT(0, wmutex_lock_decl_missing_var_name)
|
||||
-
|
||||
} // namespace MUTEX_NAMESPACE
|
||||
|
||||
using namespace MUTEX_NAMESPACE;
|
||||
diff --git a/src/config.h.cmake.in b/src/config.h.cmake.in
|
||||
index b225b7ec..a4c58c96 100644
|
||||
--- a/src/config.h.cmake.in
|
||||
+++ b/src/config.h.cmake.in
|
||||
@@ -34,6 +34,8 @@
|
||||
/* define if you have google gflags library */
|
||||
#cmakedefine HAVE_LIB_GFLAGS
|
||||
|
||||
+#cmakedefine HAVE_ABSL_FLAGS
|
||||
+
|
||||
/* define if you have google gmock library */
|
||||
#cmakedefine HAVE_LIB_GMOCK
|
||||
|
||||
diff --git a/src/glog/logging.h.in b/src/glog/logging.h.in
|
||||
index 95a573b1..54cd838f 100644
|
||||
--- a/src/glog/logging.h.in
|
||||
+++ b/src/glog/logging.h.in
|
||||
@@ -89,6 +89,10 @@
|
||||
#include <gflags/gflags.h>
|
||||
#endif
|
||||
|
||||
+#if @ac_cv_have_abslflags@
|
||||
+#include <absl/flags/declare.h>
|
||||
+#endif
|
||||
+
|
||||
#if @ac_cv_cxx11_atomic@ && __cplusplus >= 201103L
|
||||
#include <atomic>
|
||||
#elif defined(GLOG_OS_WINDOWS)
|
||||
@@ -395,6 +399,14 @@ typedef void(*CustomPrefixCallback)(std::ostream& s, const LogMessageInfo& l, vo
|
||||
#undef DECLARE_uint32
|
||||
#endif
|
||||
|
||||
+#if @ac_cv_have_abslflags@
|
||||
+#define DECLARE_VARIABLE 1
|
||||
+#define DECLARE_bool(name) ABSL_DECLARE_FLAG(bool, name)
|
||||
+#define DECLARE_int32(name) ABSL_DECLARE_FLAG(@ac_google_namespace@::int32, name)
|
||||
+#define DECLARE_uint32(name) ABSL_DECLARE_FLAG(@ac_google_namespace@::uint32, name)
|
||||
+#define DECLARE_string(name) ABSL_DECLARE_FLAG(std::string, name)
|
||||
+#endif
|
||||
+
|
||||
#ifndef DECLARE_VARIABLE
|
||||
#define DECLARE_VARIABLE(type, shorttype, name, tn) \
|
||||
namespace fL##shorttype { \
|
||||
diff --git a/src/glog/vlog_is_on.h.in b/src/glog/vlog_is_on.h.in
|
||||
index 7526fc34..16e60f46 100644
|
||||
--- a/src/glog/vlog_is_on.h.in
|
||||
+++ b/src/glog/vlog_is_on.h.in
|
||||
@@ -64,6 +64,14 @@
|
||||
#include <glog/log_severity.h>
|
||||
|
||||
#if defined(__GNUC__)
|
||||
+
|
||||
+#if @ac_cv_have_abslflags@
|
||||
+ extern int32_t absl_proxy_v;
|
||||
+ #define VLEVEL (@ac_google_namespace@::absl_proxy_v)
|
||||
+#else
|
||||
+ #define VLEVEL (FLAGS_v)
|
||||
+#endif
|
||||
+
|
||||
// We emit an anonymous static int* variable at every VLOG_IS_ON(n) site.
|
||||
// (Normally) the first time every VLOG_IS_ON(n) site is hit,
|
||||
// we determine what variable will dynamically control logging at this site:
|
||||
@@ -74,7 +82,7 @@
|
||||
__extension__ \
|
||||
({ static @ac_google_namespace@::SiteFlag vlocal__ = {NULL, NULL, 0, NULL}; \
|
||||
@ac_google_namespace@::int32 verbose_level__ = (verboselevel); \
|
||||
- (vlocal__.level == NULL ? @ac_google_namespace@::InitVLOG3__(&vlocal__, &FLAGS_v, \
|
||||
+ (vlocal__.level == NULL ? @ac_google_namespace@::InitVLOG3__(&vlocal__, &VLEVEL, \
|
||||
__FILE__, verbose_level__) : *vlocal__.level >= verbose_level__); \
|
||||
})
|
||||
#else
|
||||
diff --git a/src/logging.cc b/src/logging.cc
|
||||
index 4028ccc0..fc618d3a 100644
|
||||
--- a/src/logging.cc
|
||||
+++ b/src/logging.cc
|
||||
@@ -103,7 +103,9 @@ using std::fdopen;
|
||||
#endif
|
||||
|
||||
// There is no thread annotation support.
|
||||
+#ifndef EXCLUSIVE_LOCKS_REQUIRED
|
||||
#define EXCLUSIVE_LOCKS_REQUIRED(mu)
|
||||
+#endif
|
||||
|
||||
static bool BoolFromEnv(const char *varname, bool defval) {
|
||||
const char* const valstr = getenv(varname);
|
||||
@@ -351,8 +353,9 @@ static const char* GetAnsiColorCode(GLogColor color) {
|
||||
|
||||
// Safely get max_log_size, overriding to 1 if it somehow gets defined as 0
|
||||
static uint32 MaxLogSize() {
|
||||
- return (FLAGS_max_log_size > 0 && FLAGS_max_log_size < 4096
|
||||
- ? FLAGS_max_log_size
|
||||
+ uint32 maxlogsize = FLAG(max_log_size);
|
||||
+ return (maxlogsize > 0 && maxlogsize < 4096
|
||||
+ ? maxlogsize
|
||||
: 1);
|
||||
}
|
||||
|
||||
@@ -721,7 +724,7 @@ inline void LogDestination::SetStderrLogging(LogSeverity min_severity) {
|
||||
// Prevent any subtle race conditions by wrapping a mutex lock around
|
||||
// all this stuff.
|
||||
MutexLock l(&log_mutex);
|
||||
- FLAGS_stderrthreshold = min_severity;
|
||||
+ absl::SetFlag(&FLAGS_stderrthreshold, min_severity);
|
||||
}
|
||||
|
||||
inline void LogDestination::LogToStderr() {
|
||||
@@ -747,8 +750,8 @@ static void ColoredWriteToStderrOrStdout(FILE* output, LogSeverity severity,
|
||||
const char* message, size_t len) {
|
||||
bool is_stdout = (output == stdout);
|
||||
const GLogColor color = (LogDestination::terminal_supports_color() &&
|
||||
- ((!is_stdout && FLAGS_colorlogtostderr) ||
|
||||
- (is_stdout && FLAGS_colorlogtostdout)))
|
||||
+ ((!is_stdout && FLAG(colorlogtostderr)) ||
|
||||
+ (is_stdout && FLAG(colorlogtostdout))))
|
||||
? SeverityToColor(severity)
|
||||
: COLOR_DEFAULT;
|
||||
|
||||
@@ -789,7 +792,7 @@ static void ColoredWriteToStdout(LogSeverity severity, const char* message,
|
||||
FILE* output = stdout;
|
||||
// We also need to send logs to the stderr when the severity is
|
||||
// higher or equal to the stderr threshold.
|
||||
- if (severity >= FLAGS_stderrthreshold) {
|
||||
+ if (severity >= FLAG(stderrthreshold)) {
|
||||
output = stderr;
|
||||
}
|
||||
ColoredWriteToStderrOrStdout(output, severity, message, len);
|
||||
@@ -808,7 +811,7 @@ static void WriteToStderr(const char* message, size_t len) {
|
||||
|
||||
inline void LogDestination::MaybeLogToStderr(LogSeverity severity,
|
||||
const char* message, size_t message_len, size_t prefix_len) {
|
||||
- if ((severity >= FLAGS_stderrthreshold) || FLAGS_alsologtostderr) {
|
||||
+ if ((severity >= FLAG(stderrthreshold)) || FLAG(alsologtostderr)) {
|
||||
ColoredWriteToStderr(severity, message, message_len);
|
||||
#ifdef GLOG_OS_WINDOWS
|
||||
(void) prefix_len;
|
||||
@@ -835,8 +838,8 @@ inline void LogDestination::MaybeLogToStderr(LogSeverity severity,
|
||||
inline void LogDestination::MaybeLogToEmail(LogSeverity severity,
|
||||
const char* message, size_t len) {
|
||||
if (severity >= email_logging_severity_ ||
|
||||
- severity >= FLAGS_logemaillevel) {
|
||||
- string to(FLAGS_alsologtoemail);
|
||||
+ severity >= FLAG(logemaillevel)) {
|
||||
+ string to(FLAG(alsologtoemail));
|
||||
if (!addresses_.empty()) {
|
||||
if (!to.empty()) {
|
||||
to += ",";
|
||||
@@ -862,7 +865,7 @@ inline void LogDestination::MaybeLogToLogfile(LogSeverity severity,
|
||||
time_t timestamp,
|
||||
const char* message,
|
||||
size_t len) {
|
||||
- const bool should_flush = severity > FLAGS_logbuflevel;
|
||||
+ const bool should_flush = severity > FLAG(logbuflevel);
|
||||
LogDestination* destination = log_destination(severity);
|
||||
destination->logger_->Write(should_flush, timestamp, message, len);
|
||||
}
|
||||
@@ -871,9 +874,9 @@ inline void LogDestination::LogToAllLogfiles(LogSeverity severity,
|
||||
time_t timestamp,
|
||||
const char* message,
|
||||
size_t len) {
|
||||
- if (FLAGS_logtostdout) { // global flag: never log to file
|
||||
+ if (FLAG(logtostdout)) { // global flag: never log to file
|
||||
ColoredWriteToStdout(severity, message, len);
|
||||
- } else if (FLAGS_logtostderr) { // global flag: never log to file
|
||||
+ } else if (FLAG(logtostderr)) { // global flag: never log to file
|
||||
ColoredWriteToStderr(severity, message, len);
|
||||
} else {
|
||||
for (int i = severity; i >= 0; --i) {
|
||||
@@ -1032,25 +1035,25 @@ void LogFileObject::FlushUnlocked(){
|
||||
bytes_since_flush_ = 0;
|
||||
}
|
||||
// Figure out when we are due for another flush.
|
||||
- const int64 next = (FLAGS_logbufsecs
|
||||
+ const int64 next = (FLAG(logbufsecs)
|
||||
* static_cast<int64>(1000000)); // in usec
|
||||
next_flush_time_ = CycleClock_Now() + UsecToCycles(next);
|
||||
}
|
||||
|
||||
bool LogFileObject::CreateLogfile(const string& time_pid_string) {
|
||||
string string_filename = base_filename_;
|
||||
- if (FLAGS_timestamp_in_logfile_name) {
|
||||
+ if (FLAG(timestamp_in_logfile_name)) {
|
||||
string_filename += time_pid_string;
|
||||
}
|
||||
string_filename += filename_extension_;
|
||||
const char* filename = string_filename.c_str();
|
||||
//only write to files, create if non-existant.
|
||||
int flags = O_WRONLY | O_CREAT;
|
||||
- if (FLAGS_timestamp_in_logfile_name) {
|
||||
+ if (FLAG(timestamp_in_logfile_name)) {
|
||||
//demand that the file is unique for our timestamp (fail if it exists).
|
||||
flags = flags | O_EXCL;
|
||||
}
|
||||
- int fd = open(filename, flags, FLAGS_logfile_mode);
|
||||
+ int fd = open(filename, flags, FLAG(logfile_mode));
|
||||
if (fd == -1) return false;
|
||||
#ifdef HAVE_FCNTL
|
||||
// Mark the file close-on-exec. We don't really care if this fails
|
||||
@@ -1083,7 +1086,7 @@ bool LogFileObject::CreateLogfile(const string& time_pid_string) {
|
||||
file_ = fdopen(fd, "a"); // Make a FILE*.
|
||||
if (file_ == NULL) { // Man, we're screwed!
|
||||
close(fd);
|
||||
- if (FLAGS_timestamp_in_logfile_name) {
|
||||
+ if (FLAG(timestamp_in_logfile_name)) {
|
||||
unlink(filename); // Erase the half-baked evidence: an unusable log file, only if we just created it.
|
||||
}
|
||||
return false;
|
||||
@@ -1125,8 +1128,8 @@ bool LogFileObject::CreateLogfile(const string& time_pid_string) {
|
||||
|
||||
// Make an additional link to the log file in a place specified by
|
||||
// FLAGS_log_link, if indicated
|
||||
- if (!FLAGS_log_link.empty()) {
|
||||
- linkpath = FLAGS_log_link + "/" + linkname;
|
||||
+ if (!FLAG(log_link).empty()) {
|
||||
+ linkpath = FLAG(log_link) + "/" + linkname;
|
||||
unlink(linkpath.c_str()); // delete old one if it exists
|
||||
if (symlink(filename, linkpath.c_str()) != 0) {
|
||||
// silently ignore failures
|
||||
@@ -1165,7 +1168,7 @@ void LogFileObject::Write(bool force_flush,
|
||||
rollover_attempt_ = 0;
|
||||
|
||||
struct ::tm tm_time;
|
||||
- if (FLAGS_log_utc_time) {
|
||||
+ if (FLAG(log_utc_time)) {
|
||||
gmtime_r(×tamp, &tm_time);
|
||||
} else {
|
||||
localtime_r(×tamp, &tm_time);
|
||||
@@ -1253,14 +1256,14 @@ void LogFileObject::Write(bool force_flush,
|
||||
<< ' '
|
||||
<< setw(2) << tm_time.tm_hour << ':'
|
||||
<< setw(2) << tm_time.tm_min << ':'
|
||||
- << setw(2) << tm_time.tm_sec << (FLAGS_log_utc_time ? " UTC\n" : "\n")
|
||||
+ << setw(2) << tm_time.tm_sec << (FLAG(log_utc_time) ? " UTC\n" : "\n")
|
||||
<< "Running on machine: "
|
||||
<< LogDestination::hostname() << '\n';
|
||||
|
||||
if(!g_application_fingerprint.empty()) {
|
||||
file_header_stream << "Application fingerprint: " << g_application_fingerprint << '\n';
|
||||
}
|
||||
- const char* const date_time_format = FLAGS_log_year_in_prefix
|
||||
+ const char* const date_time_format = FLAG(log_year_in_prefix)
|
||||
? "yyyymmdd hh:mm:ss.uuuuuu"
|
||||
: "mmdd hh:mm:ss.uuuuuu";
|
||||
file_header_stream << "Running duration (h:mm:ss): "
|
||||
@@ -1284,7 +1287,7 @@ void LogFileObject::Write(bool force_flush,
|
||||
// greater than 4096, thereby indicating an error.
|
||||
errno = 0;
|
||||
fwrite(message, 1, message_len, file_);
|
||||
- if ( FLAGS_stop_logging_if_full_disk &&
|
||||
+ if ( FLAG(stop_logging_if_full_disk) &&
|
||||
errno == ENOSPC ) { // disk full, stop writing to disk
|
||||
stop_writing = true; // until the disk is
|
||||
return;
|
||||
@@ -1307,7 +1310,7 @@ void LogFileObject::Write(bool force_flush,
|
||||
FlushUnlocked();
|
||||
#ifdef GLOG_OS_LINUX
|
||||
// Only consider files >= 3MiB
|
||||
- if (FLAGS_drop_log_memory && file_length_ >= (3U << 20U)) {
|
||||
+ if (FLAG(drop_log_memory) && file_length_ >= (3U << 20U)) {
|
||||
// Don't evict the most recent 1-2MiB so as not to impact a tailer
|
||||
// of the log file and to avoid page rounding issue on linux < 4.7
|
||||
uint32 total_drop_length =
|
||||
@@ -1348,7 +1351,7 @@ void LogCleaner::Disable() {
|
||||
}
|
||||
|
||||
void LogCleaner::UpdateCleanUpTime() {
|
||||
- const int64 next = (FLAGS_logcleansecs
|
||||
+ const int64 next = (FLAG(logcleansecs)
|
||||
* 1000000); // in usec
|
||||
next_cleanup_time_ = CycleClock_Now() + UsecToCycles(next);
|
||||
}
|
||||
@@ -1664,7 +1667,7 @@ void LogMessage::Init(const char* file,
|
||||
// I20201018 160715 f5d4fbb0 logging.cc:1153]
|
||||
// (log level, GMT year, month, date, time, thread_id, file basename, line)
|
||||
// We exclude the thread_id for the default thread.
|
||||
- if (FLAGS_log_prefix && (line != kNoLogPrefix)) {
|
||||
+ if (FLAG(log_prefix) && (line != kNoLogPrefix)) {
|
||||
std::ios saved_fmt(NULL);
|
||||
saved_fmt.copyfmt(stream());
|
||||
stream().fill('0');
|
||||
@@ -1672,7 +1675,7 @@ void LogMessage::Init(const char* file,
|
||||
if (custom_prefix_callback == NULL) {
|
||||
#endif
|
||||
stream() << LogSeverityNames[severity][0];
|
||||
- if (FLAGS_log_year_in_prefix) {
|
||||
+ if (FLAG(log_year_in_prefix)) {
|
||||
stream() << setw(4) << 1900 + logmsgtime_.year();
|
||||
}
|
||||
stream() << setw(2) << 1 + logmsgtime_.month()
|
||||
@@ -1703,11 +1706,11 @@ void LogMessage::Init(const char* file,
|
||||
}
|
||||
data_->num_prefix_chars_ = data_->stream_.pcount();
|
||||
|
||||
- if (!FLAGS_log_backtrace_at.empty()) {
|
||||
+ if (!FLAG(log_backtrace_at).empty()) {
|
||||
char fileline[128];
|
||||
snprintf(fileline, sizeof(fileline), "%s:%d", data_->basename_, line);
|
||||
#ifdef HAVE_STACKTRACE
|
||||
- if (FLAGS_log_backtrace_at == fileline) {
|
||||
+ if (FLAG(log_backtrace_at) == fileline) {
|
||||
string stacktrace;
|
||||
DumpStackTraceToString(&stacktrace);
|
||||
stream() << " (stacktrace:\n" << stacktrace << ") ";
|
||||
@@ -1746,7 +1749,7 @@ ostream& LogMessage::stream() {
|
||||
// Flush buffered message, called by the destructor, or any other function
|
||||
// that needs to synchronize the log.
|
||||
void LogMessage::Flush() {
|
||||
- if (data_->has_been_flushed_ || data_->severity_ < FLAGS_minloglevel) {
|
||||
+ if (data_->has_been_flushed_ || data_->severity_ < FLAG(minloglevel)) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1808,7 +1811,7 @@ static char fatal_message[256];
|
||||
void ReprintFatalMessage() {
|
||||
if (fatal_message[0]) {
|
||||
const size_t n = strlen(fatal_message);
|
||||
- if (!FLAGS_logtostderr) {
|
||||
+ if (!FLAG(logtostderr)) {
|
||||
// Also write to stderr (don't color to avoid terminal checks)
|
||||
WriteToStderr(fatal_message, n);
|
||||
}
|
||||
@@ -1837,8 +1840,8 @@ void LogMessage::SendToLog() EXCLUSIVE_LOCKS_REQUIRED(log_mutex) {
|
||||
// global flag: never log to file if set. Also -- don't log to a
|
||||
// file if we haven't parsed the command line flags to get the
|
||||
// program name.
|
||||
- if (FLAGS_logtostderr || FLAGS_logtostdout || !IsGoogleLoggingInitialized()) {
|
||||
- if (FLAGS_logtostdout) {
|
||||
+ if (FLAG(logtostderr) || FLAG(logtostdout) || !IsGoogleLoggingInitialized()) {
|
||||
+ if (FLAG(logtostdout)) {
|
||||
ColoredWriteToStdout(data_->severity_, data_->message_text_,
|
||||
data_->num_chars_to_log_);
|
||||
} else {
|
||||
@@ -1891,7 +1894,7 @@ void LogMessage::SendToLog() EXCLUSIVE_LOCKS_REQUIRED(log_mutex) {
|
||||
fatal_time = logmsgtime_.timestamp();
|
||||
}
|
||||
|
||||
- if (!FLAGS_logtostderr && !FLAGS_logtostdout) {
|
||||
+ if (!FLAG(logtostderr) && !FLAG(logtostdout)) {
|
||||
for (int i = 0; i < NUM_SEVERITIES; ++i) {
|
||||
if (LogDestination::log_destinations_[i]) {
|
||||
LogDestination::log_destinations_[i]->logger_->Write(true, 0, "", 0);
|
||||
@@ -2238,7 +2241,7 @@ static bool SendEmailInternal(const char*dest, const char *subject,
|
||||
subject, body, dest);
|
||||
}
|
||||
|
||||
- string logmailer = FLAGS_logmailer;
|
||||
+ string logmailer = FLAG(logmailer);
|
||||
if (logmailer.empty()) {
|
||||
logmailer = "/bin/mail";
|
||||
}
|
||||
@@ -2338,9 +2341,9 @@ const vector<string>& GetLoggingDirectories() {
|
||||
if (logging_directories_list == NULL) {
|
||||
logging_directories_list = new vector<string>;
|
||||
|
||||
- if ( !FLAGS_log_dir.empty() ) {
|
||||
+ if ( !FLAG(log_dir).empty() ) {
|
||||
// A dir was specified, we should use it
|
||||
- logging_directories_list->push_back(FLAGS_log_dir);
|
||||
+ logging_directories_list->push_back(FLAG(log_dir));
|
||||
} else {
|
||||
GetTempDirectories(logging_directories_list);
|
||||
#ifdef GLOG_OS_WINDOWS
|
||||
@@ -2654,7 +2657,7 @@ LogMessageTime::LogMessageTime(std::tm t) {
|
||||
|
||||
LogMessageTime::LogMessageTime(std::time_t timestamp, WallTime now) {
|
||||
std::tm t;
|
||||
- if (FLAGS_log_utc_time)
|
||||
+ if (FLAG(log_utc_time))
|
||||
gmtime_r(×tamp, &t);
|
||||
else
|
||||
localtime_r(×tamp, &t);
|
||||
@@ -2673,7 +2676,7 @@ void LogMessageTime::init(const std::tm& t, std::time_t timestamp,
|
||||
void LogMessageTime::CalcGmtOffset() {
|
||||
std::tm gmt_struct;
|
||||
int isDst = 0;
|
||||
- if ( FLAGS_log_utc_time ) {
|
||||
+ if ( FLAG(log_utc_time )) {
|
||||
localtime_r(×tamp_, &gmt_struct);
|
||||
isDst = gmt_struct.tm_isdst;
|
||||
gmt_struct = time_struct_;
|
||||
diff --git a/src/raw_logging.cc b/src/raw_logging.cc
|
||||
index 43159832..8532362b 100644
|
||||
--- a/src/raw_logging.cc
|
||||
+++ b/src/raw_logging.cc
|
||||
@@ -123,8 +123,8 @@ static char crash_buf[kLogBufSize + 1] = { 0 }; // Will end in '\0'
|
||||
GLOG_ATTRIBUTE_FORMAT(printf, 4, 5)
|
||||
void RawLog__(LogSeverity severity, const char* file, int line,
|
||||
const char* format, ...) {
|
||||
- if (!(FLAGS_logtostdout || FLAGS_logtostderr ||
|
||||
- severity >= FLAGS_stderrthreshold || FLAGS_alsologtostderr ||
|
||||
+ if (!(FLAG(logtostdout) || FLAG(logtostderr) ||
|
||||
+ severity >= FLAG(stderrthreshold) || FLAG(alsologtostderr) ||
|
||||
!IsGoogleLoggingInitialized())) {
|
||||
return; // this stderr log message is suppressed
|
||||
}
|
||||
diff --git a/src/utilities.cc b/src/utilities.cc
|
||||
index a332f1a1..a9d5102a 100644
|
||||
--- a/src/utilities.cc
|
||||
+++ b/src/utilities.cc
|
||||
@@ -141,7 +141,7 @@ static void DumpStackTrace(int skip_count, DebugWriter *writerfn, void *arg) {
|
||||
int depth = GetStackTrace(stack, ARRAYSIZE(stack), skip_count+1);
|
||||
for (int i = 0; i < depth; i++) {
|
||||
#if defined(HAVE_SYMBOLIZE)
|
||||
- if (FLAGS_symbolize_stacktrace) {
|
||||
+ if (FLAG(symbolize_stacktrace)) {
|
||||
DumpPCAndSymbol(writerfn, arg, stack[i], " ");
|
||||
} else {
|
||||
DumpPC(writerfn, arg, stack[i], " ");
|
||||
diff --git a/src/vlog_is_on.cc b/src/vlog_is_on.cc
|
||||
index e478a366..4b7a5cae 100644
|
||||
--- a/src/vlog_is_on.cc
|
||||
+++ b/src/vlog_is_on.cc
|
||||
@@ -43,14 +43,24 @@
|
||||
#include <glog/logging.h>
|
||||
#include <glog/raw_logging.h>
|
||||
#include "base/googleinit.h"
|
||||
+#include "config.h"
|
||||
|
||||
// glog doesn't have annotation
|
||||
#define ANNOTATE_BENIGN_RACE(address, description)
|
||||
|
||||
using std::string;
|
||||
|
||||
+#ifdef HAVE_ABSL_FLAGS
|
||||
+
|
||||
+ABSL_FLAG(int32_t, v, 0, "Show all VLOG(m) messages for m <= this."
|
||||
+" Overridable by --vmodule.").OnUpdate([] {
|
||||
+ GOOGLE_NAMESPACE::absl_proxy_v = absl::GetFlag(FLAGS_v);
|
||||
+ });
|
||||
+
|
||||
+#else
|
||||
GLOG_DEFINE_int32(v, 0, "Show all VLOG(m) messages for m <= this."
|
||||
" Overridable by --vmodule.");
|
||||
+#endif
|
||||
|
||||
GLOG_DEFINE_string(vmodule, "", "per-module verbose level."
|
||||
" Argument is a comma-separated list of <module name>=<log level>."
|
||||
@@ -60,6 +70,8 @@ GLOG_DEFINE_string(vmodule, "", "per-module verbose level."
|
||||
|
||||
_START_GOOGLE_NAMESPACE_
|
||||
|
||||
+int32_t absl_proxy_v = 0;
|
||||
+
|
||||
namespace glog_internal_namespace_ {
|
||||
|
||||
// Used by logging_unittests.cc so can't make it static here.
|
||||
@@ -132,7 +144,8 @@ static void VLOG2Initializer() {
|
||||
// Can now parse --vmodule flag and initialize mapping of module-specific
|
||||
// logging levels.
|
||||
inited_vmodule = false;
|
||||
- const char* vmodule = FLAGS_vmodule.c_str();
|
||||
+ string vmodule_str = FLAG(vmodule);
|
||||
+ const char* vmodule = vmodule_str.c_str();
|
||||
const char* sep;
|
||||
VModuleInfo* head = NULL;
|
||||
VModuleInfo* tail = NULL;
|
||||
@@ -164,7 +177,7 @@ static void VLOG2Initializer() {
|
||||
|
||||
// This can be called very early, so we use SpinLock and RAW_VLOG here.
|
||||
int SetVLOGLevel(const char* module_pattern, int log_level) {
|
||||
- int result = FLAGS_v;
|
||||
+ int result = FLAG(v);
|
||||
size_t const pattern_len = strlen(module_pattern);
|
||||
bool found = false;
|
||||
{
|
||||
@@ -0,0 +1,42 @@
|
||||
{ lib, buildPythonPackage, fetchFromGitHub, python3Packages }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "persistent-evdev";
|
||||
version = "unstable-2022-05-07";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aiberia";
|
||||
repo = pname;
|
||||
rev = "52bf246464e09ef4e6f2e1877feccc7b9feba164";
|
||||
sha256 = "d0i6DL/qgDELet4ew2lyVqzd9TApivRxL3zA3dcsQXY=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
evdev pyudev
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs bin/persistent-evdev.py
|
||||
'';
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp bin/persistent-evdev.py $out/bin
|
||||
|
||||
mkdir -p $out/etc/udev/rules.d
|
||||
cp udev/60-persistent-input-uinput.rules $out/etc/udev/rules.d
|
||||
'';
|
||||
|
||||
# has no tests
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/aiberia/persistent-evdev";
|
||||
description = "Persistent virtual input devices for qemu/libvirt/evdev hotplug support";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.lodi ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, buildGoModule, fetchFromGitHub }:
|
||||
{ lib, stdenv, buildGoModule, fetchFromGitHub, fetchpatch }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "certigo";
|
||||
@@ -11,12 +11,21 @@ buildGoModule rec {
|
||||
sha256 = "sha256-XGR6xIXdFLnJTFd+mJneRb/WkLmi0Jscta9Bj3paM1M=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-qS/tIi6umSuQcl43SI4LyL0k5eWfRWs7kVybRPGKcbs=";
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "backport_TestConnect-Apple-Fixes.patch";
|
||||
url = "https://github.com/square/certigo/commit/5332ac7ca20bdea63657cc8319e8b8fda4326938.patch";
|
||||
sha256 = "sha256-mSNuiui2dxkXnCrXJ/asIzC8F1mtPecOVOIu6mE5jq4=";
|
||||
})
|
||||
|
||||
# Go running under Hydra Darwin x86_64 picks CHAPOLY instead of AES-GCM as
|
||||
# the default TLS ciphersuite, and breaks the arguably flakey `TestConnect`
|
||||
# test.
|
||||
doCheck = !(stdenv.isDarwin && stdenv.isx86_64);
|
||||
(fetchpatch {
|
||||
name = "backport_TestConnect-Expected-CipherSuite-Fixes.patch";
|
||||
url = "https://github.com/square/certigo/commit/7ef0417bde4aafc69cbb72f0dd6d3577a56054a1.patch";
|
||||
sha256 = "sha256-TUQ8B23HKheaPUjj4NkvjmZBAAhDNTyo2c8jf4qukds=";
|
||||
})
|
||||
];
|
||||
|
||||
vendorSha256 = "sha256-qS/tIi6umSuQcl43SI4LyL0k5eWfRWs7kVybRPGKcbs=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A utility to examine and validate certificates in a variety of formats";
|
||||
|
||||
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
configureFlags = [
|
||||
"--disable-arch-native"
|
||||
];
|
||||
] ++ lib.optionals stdenv.isDarwin [ "--disable-link-time-optimization" ];
|
||||
|
||||
meta = {
|
||||
description = "A better and stronger spiritual successor to BZip2";
|
||||
@@ -36,7 +36,6 @@ stdenv.mkDerivation rec {
|
||||
changelog = "https://github.com/kspalaiologos/bzip3/blob/${src.rev}/NEWS";
|
||||
license = lib.licenses.lgpl3Plus;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
# upstream supports Darwin but I couldn't get it to work
|
||||
platforms = lib.platforms.linux;
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, boost
|
||||
, cmake
|
||||
, nasm
|
||||
, libpng
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "efficient-compression-tool";
|
||||
version = "0.9.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fhanau";
|
||||
repo = "Efficient-Compression-Tool";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-TSV5QXf6GuHAwQrde3Zo9MA1rtpAhtRg0UTzMkBnHB8=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake nasm ];
|
||||
|
||||
patches = [ ./use-nixpkgs-libpng.patch ];
|
||||
|
||||
buildInputs = [ boost libpng ];
|
||||
|
||||
cmakeDir = "../src";
|
||||
|
||||
cmakeFlags = [ "-DECT_FOLDER_SUPPORT=ON" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Fast and effective C++ file optimizer";
|
||||
homepage = "https://github.com/fhanau/Efficient-Compression-Tool";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.lunik1 ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,108 @@
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index d18843c..a9df1fb 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -8,11 +8,6 @@ if(NOT CMAKE_BUILD_TYPE)
|
||||
set(CMAKE_BUILD_TYPE Release)
|
||||
endif()
|
||||
|
||||
-# Check that submodules are present only if source was downloaded with git
|
||||
-if(EXISTS "${CMAKE_SOURCE_DIR}/../.git" AND NOT EXISTS "${CMAKE_SOURCE_DIR}/../src/libpng/README")
|
||||
- message (FATAL_ERROR "Submodules are not initialized. Run \n\tgit submodule update --init --recursive\n within the repository")
|
||||
-endif()
|
||||
-
|
||||
add_executable(ect
|
||||
main.cpp
|
||||
gztools.cpp
|
||||
@@ -56,7 +51,6 @@ add_subdirectory(lodepng EXCLUDE_FROM_ALL)
|
||||
add_subdirectory(miniz EXCLUDE_FROM_ALL)
|
||||
add_subdirectory(zlib EXCLUDE_FROM_ALL)
|
||||
add_subdirectory(zopfli EXCLUDE_FROM_ALL)
|
||||
-file(COPY ${CMAKE_SOURCE_DIR}/pngusr.h DESTINATION ${CMAKE_SOURCE_DIR}/libpng/)
|
||||
add_subdirectory(optipng EXCLUDE_FROM_ALL)
|
||||
# Mozjpeg changes the install prefix if it thinks the current is defaulted
|
||||
set(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT FALSE)
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index cc24367..7aa9f0a 100755
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -18,7 +18,7 @@ CXXSRC = support.cpp zopflipng.cpp zopfli/deflate.cpp zopfli/zopfli_gzip.cpp zop
|
||||
lodepng/lodepng.cpp lodepng/lodepng_util.cpp optipng/codec.cpp optipng/optipng.cpp jpegtran.cpp gztools.cpp \
|
||||
leanify/zip.cpp leanify/leanify.cpp
|
||||
|
||||
-.PHONY: libpng mozjpeg deps bin all install
|
||||
+.PHONY: mozjpeg deps bin all install
|
||||
all: deps bin
|
||||
|
||||
bin: deps
|
||||
@@ -33,9 +33,6 @@ libz.a:
|
||||
cd zlib/; \
|
||||
$(CC) $(UCFLAGS) -c adler32.c crc32.c deflate.c inffast.c inflate.c inftrees.c trees.c zutil.c gzlib.c gzread.c; \
|
||||
ar rcs ../libz.a adler32.o crc32.o deflate.o inffast.o inflate.o inftrees.o trees.o zutil.o gzlib.o gzread.o
|
||||
-libpng:
|
||||
- cp pngusr.h libpng/pngusr.h
|
||||
- make -C libpng/ -f scripts/makefile.linux-opt CC="$(CC)" CFLAGS="$(UCFLAGS) -DPNG_USER_CONFIG -Wno-macro-redefined" libpng.a
|
||||
mozjpeg:
|
||||
cd mozjpeg/; \
|
||||
export CC="$(CC)"; \
|
||||
diff --git a/src/optipng/CMakeLists.txt b/src/optipng/CMakeLists.txt
|
||||
index 1037a20..3c751e9 100644
|
||||
--- a/src/optipng/CMakeLists.txt
|
||||
+++ b/src/optipng/CMakeLists.txt
|
||||
@@ -16,16 +16,14 @@ add_library(optipng
|
||||
add_library(optipng::optipng ALIAS optipng)
|
||||
|
||||
#make sure that we are using custom zlib and custom libpng options
|
||||
-set(PNG_BUILD_ZLIB ON CACHE BOOL "use custom zlib within libpng" FORCE)
|
||||
set(ZLIB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../zlib/ CACHE FILEPATH "custom zlib directory" FORCE)
|
||||
if(NOT WIN32)
|
||||
add_compile_options(-Wno-macro-redefined)
|
||||
endif()
|
||||
add_compile_definitions(PNG_USER_CONFIG)
|
||||
|
||||
-add_subdirectory(../libpng libpng EXCLUDE_FROM_ALL)
|
||||
target_link_libraries(optipng
|
||||
- png_static)
|
||||
+ png)
|
||||
|
||||
# libpng generates some header files that we need to be able to include
|
||||
target_include_directories(optipng
|
||||
diff --git a/src/optipng/image.h b/src/optipng/image.h
|
||||
index c439f84..8255fa0 100755
|
||||
--- a/src/optipng/image.h
|
||||
+++ b/src/optipng/image.h
|
||||
@@ -13,7 +13,7 @@
|
||||
#ifndef OPNGCORE_IMAGE_H
|
||||
#define OPNGCORE_IMAGE_H
|
||||
|
||||
-#include "../libpng/png.h"
|
||||
+#include <png.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
diff --git a/src/optipng/opngreduc/opngreduc.h b/src/optipng/opngreduc/opngreduc.h
|
||||
index a7e6553..06ef956 100755
|
||||
--- a/src/optipng/opngreduc/opngreduc.h
|
||||
+++ b/src/optipng/opngreduc/opngreduc.h
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
-#include "../../libpng/png.h"
|
||||
+#include <png.h>
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
diff --git a/src/optipng/trans.h b/src/optipng/trans.h
|
||||
index a2f7f3e..c0e8dc4 100755
|
||||
--- a/src/optipng/trans.h
|
||||
+++ b/src/optipng/trans.h
|
||||
@@ -13,7 +13,7 @@
|
||||
#ifndef OPNGTRANS_TRANS_H
|
||||
#define OPNGTRANS_TRANS_H
|
||||
|
||||
-#include "../libpng/png.h"
|
||||
+#include <png.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
+105
-103
@@ -104,7 +104,7 @@ python-versions = ">=3.5"
|
||||
|
||||
[[package]]
|
||||
name = "lxml"
|
||||
version = "4.8.0"
|
||||
version = "4.9.0"
|
||||
description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API."
|
||||
category = "main"
|
||||
optional = false
|
||||
@@ -137,7 +137,7 @@ python-versions = "*"
|
||||
|
||||
[[package]]
|
||||
name = "pillow"
|
||||
version = "9.1.0"
|
||||
version = "9.1.1"
|
||||
description = "Python Imaging Library (Fork)"
|
||||
category = "main"
|
||||
optional = false
|
||||
@@ -251,7 +251,7 @@ python-versions = "*"
|
||||
|
||||
[[package]]
|
||||
name = "svglib"
|
||||
version = "1.2.1"
|
||||
version = "1.3.0"
|
||||
description = "A pure-Python library for reading and converting SVG"
|
||||
category = "main"
|
||||
optional = false
|
||||
@@ -401,67 +401,69 @@ idna = [
|
||||
{file = "idna-3.3.tar.gz", hash = "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"},
|
||||
]
|
||||
lxml = [
|
||||
{file = "lxml-4.8.0-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:e1ab2fac607842ac36864e358c42feb0960ae62c34aa4caaf12ada0a1fb5d99b"},
|
||||
{file = "lxml-4.8.0-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:28d1af847786f68bec57961f31221125c29d6f52d9187c01cd34dc14e2b29430"},
|
||||
{file = "lxml-4.8.0-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:b92d40121dcbd74831b690a75533da703750f7041b4bf951befc657c37e5695a"},
|
||||
{file = "lxml-4.8.0-cp27-cp27m-win32.whl", hash = "sha256:e01f9531ba5420838c801c21c1b0f45dbc9607cb22ea2cf132844453bec863a5"},
|
||||
{file = "lxml-4.8.0-cp27-cp27m-win_amd64.whl", hash = "sha256:6259b511b0f2527e6d55ad87acc1c07b3cbffc3d5e050d7e7bcfa151b8202df9"},
|
||||
{file = "lxml-4.8.0-cp27-cp27mu-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1010042bfcac2b2dc6098260a2ed022968dbdfaf285fc65a3acf8e4eb1ffd1bc"},
|
||||
{file = "lxml-4.8.0-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:fa56bb08b3dd8eac3a8c5b7d075c94e74f755fd9d8a04543ae8d37b1612dd170"},
|
||||
{file = "lxml-4.8.0-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:31ba2cbc64516dcdd6c24418daa7abff989ddf3ba6d3ea6f6ce6f2ed6e754ec9"},
|
||||
{file = "lxml-4.8.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:31499847fc5f73ee17dbe1b8e24c6dafc4e8d5b48803d17d22988976b0171f03"},
|
||||
{file = "lxml-4.8.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:5f7d7d9afc7b293147e2d506a4596641d60181a35279ef3aa5778d0d9d9123fe"},
|
||||
{file = "lxml-4.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:a3c5f1a719aa11866ffc530d54ad965063a8cbbecae6515acbd5f0fae8f48eaa"},
|
||||
{file = "lxml-4.8.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6268e27873a3d191849204d00d03f65c0e343b3bcb518a6eaae05677c95621d1"},
|
||||
{file = "lxml-4.8.0-cp310-cp310-win32.whl", hash = "sha256:330bff92c26d4aee79c5bc4d9967858bdbe73fdbdbacb5daf623a03a914fe05b"},
|
||||
{file = "lxml-4.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:b2582b238e1658c4061ebe1b4df53c435190d22457642377fd0cb30685cdfb76"},
|
||||
{file = "lxml-4.8.0-cp35-cp35m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a2bfc7e2a0601b475477c954bf167dee6d0f55cb167e3f3e7cefad906e7759f6"},
|
||||
{file = "lxml-4.8.0-cp35-cp35m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:a1547ff4b8a833511eeaceacbcd17b043214fcdb385148f9c1bc5556ca9623e2"},
|
||||
{file = "lxml-4.8.0-cp35-cp35m-win32.whl", hash = "sha256:a9f1c3489736ff8e1c7652e9dc39f80cff820f23624f23d9eab6e122ac99b150"},
|
||||
{file = "lxml-4.8.0-cp35-cp35m-win_amd64.whl", hash = "sha256:530f278849031b0eb12f46cca0e5db01cfe5177ab13bd6878c6e739319bae654"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:078306d19a33920004addeb5f4630781aaeabb6a8d01398045fcde085091a169"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:86545e351e879d0b72b620db6a3b96346921fa87b3d366d6c074e5a9a0b8dadb"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:24f5c5ae618395ed871b3d8ebfcbb36e3f1091fd847bf54c4de623f9107942f3"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:bbab6faf6568484707acc052f4dfc3802bdb0cafe079383fbaa23f1cdae9ecd4"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7993232bd4044392c47779a3c7e8889fea6883be46281d45a81451acfd704d7e"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6d6483b1229470e1d8835e52e0ff3c6973b9b97b24cd1c116dca90b57a2cc613"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:ad4332a532e2d5acb231a2e5d33f943750091ee435daffca3fec0a53224e7e33"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-win32.whl", hash = "sha256:db3535733f59e5605a88a706824dfcb9bd06725e709ecb017e165fc1d6e7d429"},
|
||||
{file = "lxml-4.8.0-cp36-cp36m-win_amd64.whl", hash = "sha256:5f148b0c6133fb928503cfcdfdba395010f997aa44bcf6474fcdd0c5398d9b63"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:8a31f24e2a0b6317f33aafbb2f0895c0bce772980ae60c2c640d82caac49628a"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:719544565c2937c21a6f76d520e6e52b726d132815adb3447ccffbe9f44203c4"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:c0b88ed1ae66777a798dc54f627e32d3b81c8009967c63993c450ee4cbcbec15"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:fa9b7c450be85bfc6cd39f6df8c5b8cbd76b5d6fc1f69efec80203f9894b885f"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e9f84ed9f4d50b74fbc77298ee5c870f67cb7e91dcdc1a6915cb1ff6a317476c"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:1d650812b52d98679ed6c6b3b55cbb8fe5a5460a0aef29aeb08dc0b44577df85"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:80bbaddf2baab7e6de4bc47405e34948e694a9efe0861c61cdc23aa774fcb141"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-win32.whl", hash = "sha256:6f7b82934c08e28a2d537d870293236b1000d94d0b4583825ab9649aef7ddf63"},
|
||||
{file = "lxml-4.8.0-cp37-cp37m-win_amd64.whl", hash = "sha256:e1fd7d2fe11f1cb63d3336d147c852f6d07de0d0020d704c6031b46a30b02ca8"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:5045ee1ccd45a89c4daec1160217d363fcd23811e26734688007c26f28c9e9e7"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:0c1978ff1fd81ed9dcbba4f91cf09faf1f8082c9d72eb122e92294716c605428"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:52cbf2ff155b19dc4d4100f7442f6a697938bf4493f8d3b0c51d45568d5666b5"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:ce13d6291a5f47c1c8dbd375baa78551053bc6b5e5c0e9bb8e39c0a8359fd52f"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e11527dc23d5ef44d76fef11213215c34f36af1608074561fcc561d983aeb870"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:60d2f60bd5a2a979df28ab309352cdcf8181bda0cca4529769a945f09aba06f9"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:62f93eac69ec0f4be98d1b96f4d6b964855b8255c345c17ff12c20b93f247b68"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-win32.whl", hash = "sha256:20b8a746a026017acf07da39fdb10aa80ad9877046c9182442bf80c84a1c4696"},
|
||||
{file = "lxml-4.8.0-cp38-cp38-win_amd64.whl", hash = "sha256:891dc8f522d7059ff0024cd3ae79fd224752676447f9c678f2a5c14b84d9a939"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:b6fc2e2fb6f532cf48b5fed57567ef286addcef38c28874458a41b7837a57807"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:74eb65ec61e3c7c019d7169387d1b6ffcfea1b9ec5894d116a9a903636e4a0b1"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:627e79894770783c129cc5e89b947e52aa26e8e0557c7e205368a809da4b7939"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:545bd39c9481f2e3f2727c78c169425efbfb3fbba6e7db4f46a80ebb249819ca"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5a58d0b12f5053e270510bf12f753a76aaf3d74c453c00942ed7d2c804ca845c"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:ec4b4e75fc68da9dc0ed73dcdb431c25c57775383fec325d23a770a64e7ebc87"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5804e04feb4e61babf3911c2a974a5b86f66ee227cc5006230b00ac6d285b3a9"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-win32.whl", hash = "sha256:aa0cf4922da7a3c905d000b35065df6184c0dc1d866dd3b86fd961905bbad2ea"},
|
||||
{file = "lxml-4.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:dd10383f1d6b7edf247d0960a3db274c07e96cf3a3fc7c41c8448f93eac3fb1c"},
|
||||
{file = "lxml-4.8.0-pp37-pypy37_pp73-macosx_10_14_x86_64.whl", hash = "sha256:2403a6d6fb61c285969b71f4a3527873fe93fd0abe0832d858a17fe68c8fa507"},
|
||||
{file = "lxml-4.8.0-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:986b7a96228c9b4942ec420eff37556c5777bfba6758edcb95421e4a614b57f9"},
|
||||
{file = "lxml-4.8.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:6fe4ef4402df0250b75ba876c3795510d782def5c1e63890bde02d622570d39e"},
|
||||
{file = "lxml-4.8.0-pp38-pypy38_pp73-macosx_10_14_x86_64.whl", hash = "sha256:f10ce66fcdeb3543df51d423ede7e238be98412232fca5daec3e54bcd16b8da0"},
|
||||
{file = "lxml-4.8.0-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:730766072fd5dcb219dd2b95c4c49752a54f00157f322bc6d71f7d2a31fecd79"},
|
||||
{file = "lxml-4.8.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:8b99ec73073b37f9ebe8caf399001848fced9c08064effdbfc4da2b5a8d07b93"},
|
||||
{file = "lxml-4.8.0.tar.gz", hash = "sha256:f63f62fc60e6228a4ca9abae28228f35e1bd3ce675013d1dfb828688d50c6e23"},
|
||||
{file = "lxml-4.9.0-cp27-cp27m-macosx_10_15_x86_64.whl", hash = "sha256:b5031d151d6147eac53366d6ec87da84cd4d8c5e80b1d9948a667a7164116e39"},
|
||||
{file = "lxml-4.9.0-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5d52e1173f52020392f593f87a6af2d4055dd800574a5cb0af4ea3878801d307"},
|
||||
{file = "lxml-4.9.0-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:3af00ee88376022589ceeb8170eb67dacf5f7cd625ea59fa0977d719777d4ae8"},
|
||||
{file = "lxml-4.9.0-cp27-cp27m-win32.whl", hash = "sha256:1057356b808d149bc14eb8f37bb89129f237df488661c1e0fc0376ca90e1d2c3"},
|
||||
{file = "lxml-4.9.0-cp27-cp27m-win_amd64.whl", hash = "sha256:f6d23a01921b741774f35e924d418a43cf03eca1444f3fdfd7978d35a5aaab8b"},
|
||||
{file = "lxml-4.9.0-cp27-cp27mu-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:56e19fb6e4b8bd07fb20028d03d3bc67bcc0621347fbde64f248e44839771756"},
|
||||
{file = "lxml-4.9.0-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:4cd69bca464e892ea4ed544ba6a7850aaff6f8d792f8055a10638db60acbac18"},
|
||||
{file = "lxml-4.9.0-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:94b181dd2777890139e49a5336bf3a9a3378ce66132c665fe8db4e8b7683cde2"},
|
||||
{file = "lxml-4.9.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:607224ffae9a0cf0a2f6e14f5f6bce43e83a6fbdaa647891729c103bdd6a5593"},
|
||||
{file = "lxml-4.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:11d62c97ceff9bab94b6b29c010ea5fb6831743459bb759c917f49ba75601cd0"},
|
||||
{file = "lxml-4.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:70a198030d26f5e569367f0f04509b63256faa76a22886280eea69a4f535dd40"},
|
||||
{file = "lxml-4.9.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3cf816aed8125cfc9e6e5c6c31ff94278320d591bd7970c4a0233bee0d1c8790"},
|
||||
{file = "lxml-4.9.0-cp310-cp310-win32.whl", hash = "sha256:65b3b5f12c6fb5611e79157214f3cd533083f9b058bf2fc8a1c5cc5ee40fdc5a"},
|
||||
{file = "lxml-4.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:0aa4cce579512c33373ca4c5e23c21e40c1aa1a33533a75e51b654834fd0e4f2"},
|
||||
{file = "lxml-4.9.0-cp35-cp35m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:63419db39df8dc5564f6f103102c4665f7e4d9cb64030e98cf7a74eae5d5760d"},
|
||||
{file = "lxml-4.9.0-cp35-cp35m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:d8e5021e770b0a3084c30dda5901d5fce6d4474feaf0ced8f8e5a82702502fbb"},
|
||||
{file = "lxml-4.9.0-cp35-cp35m-win32.whl", hash = "sha256:f17b9df97c5ecdfb56c5e85b3c9df9831246df698f8581c6e111ac664c7c656e"},
|
||||
{file = "lxml-4.9.0-cp35-cp35m-win_amd64.whl", hash = "sha256:75da29a0752c8f2395df0115ac1681cefbdd4418676015be8178b733704cbff2"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-macosx_10_15_x86_64.whl", hash = "sha256:e4d020ecf3740b7312bacab2cb966bb720fd4d3490562d373b4ad91dd1857c0d"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:b71c52d69b91af7d18c13aef1b0cc3baee36b78607c711eb14a52bf3aa7c815e"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28cf04a1a38e961d4a764d2940af9b941b66263ed5584392ef875ee9c1e360a3"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:915ecf7d486df17cc65aeefdb680d5ad4390cc8c857cf8db3fe241ed234f856a"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e564d5a771b4015f34166a05ea2165b7e283635c41b1347696117f780084b46d"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:c2a57755e366e0ac7ebdb3e9207f159c3bf1afed02392ab18453ce81f5ee92ee"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:00f3a6f88fd5f4357844dd91a1abac5f466c6799f1b7f1da2df6665253845b11"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-win32.whl", hash = "sha256:9093a359a86650a3dbd6532c3e4d21a6f58ba2cb60d0e72db0848115d24c10ba"},
|
||||
{file = "lxml-4.9.0-cp36-cp36m-win_amd64.whl", hash = "sha256:d1690c4d37674a5f0cdafbc5ed7e360800afcf06928c2a024c779c046891bf09"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:6af7f51a6010748fc1bb71917318d953c9673e4ae3f6d285aaf93ef5b2eb11c1"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:eabdbe04ee0a7e760fa6cd9e799d2b020d098c580ba99107d52e1e5e538b1ecb"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:b1e22f3ee4d75ca261b6bffbf64f6f178cb194b1be3191065a09f8d98828daa9"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:53b0410b220766321759f7f9066da67b1d0d4a7f6636a477984cbb1d98483955"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d76da27f5e3e9bc40eba6ed7a9e985f57547e98cf20521d91215707f2fb57e0f"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:686565ac77ff94a8965c11829af253d9e2ce3bf0d9225b1d2eb5c4d4666d0dca"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:b62d1431b4c40cda43cc986f19b8c86b1d2ae8918cfc00f4776fdf070b65c0c4"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-win32.whl", hash = "sha256:4becd16750ca5c2a1b1588269322b2cebd10c07738f336c922b658dbab96a61c"},
|
||||
{file = "lxml-4.9.0-cp37-cp37m-win_amd64.whl", hash = "sha256:e35a298691b9e10e5a5631f8f0ba605b30ebe19208dc8f58b670462f53753641"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:aa7447bf7c1a15ef24e2b86a277b585dd3f055e8890ac7f97374d170187daa97"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:612ef8f2795a89ba3a1d4c8c1af84d8453fd53ee611aa5ad460fdd2cab426fc2"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:1bfb791a8fcdbf55d1d41b8be940393687bec0e9b12733f0796668086d1a23ff"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:024684e0c5cfa121c22140d3a0898a3a9b2ea0f0fd2c229b6658af4bdf1155e5"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:81c29c8741fa07ecec8ec7417c3d8d1e2f18cf5a10a280f4e1c3f8c3590228b2"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6467626fa74f96f4d80fc6ec2555799e97fff8f36e0bfc7f67769f83e59cff40"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9cae837b988f44925d14d048fa6a8c54f197c8b1223fd9ee9c27084f84606143"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-win32.whl", hash = "sha256:5a49ad78543925e1a4196e20c9c54492afa4f1502c2a563f73097e2044c75190"},
|
||||
{file = "lxml-4.9.0-cp38-cp38-win_amd64.whl", hash = "sha256:bb7c1b029e54e26e01b1d1d912fc21abb65650d16ea9a191d026def4ed0859ed"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:d0d03b9636f1326772e6854459728676354d4c7731dae9902b180e2065ba3da6"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:9af19eb789d674b59a9bee5005779757aab857c40bf9cc313cb01eafac55ce55"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:dd00d28d1ab5fa7627f5abc957f29a6338a7395b724571a8cbff8fbed83aaa82"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:754a1dd04bff8a509a31146bd8f3a5dc8191a8694d582dd5fb71ff09f0722c22"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b7679344f2270840dc5babc9ccbedbc04f7473c1f66d4676bb01680c0db85bcc"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:d882c2f3345261e898b9f604be76b61c901fbfa4ac32e3f51d5dc1edc89da3cb"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4e97c8fc761ad63909198acc892f34c20f37f3baa2c50a62d5ec5d7f1efc68a1"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-win32.whl", hash = "sha256:cf9ec915857d260511399ab87e1e70fa13d6b2972258f8e620a3959468edfc32"},
|
||||
{file = "lxml-4.9.0-cp39-cp39-win_amd64.whl", hash = "sha256:1254a79f8a67a3908de725caf59eae62d86738f6387b0a34b32e02abd6ae73db"},
|
||||
{file = "lxml-4.9.0-pp37-pypy37_pp73-macosx_10_15_x86_64.whl", hash = "sha256:03370ec37fe562238d385e2c53089076dee53aabf8325cab964fdb04a9130fa0"},
|
||||
{file = "lxml-4.9.0-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:f386def57742aacc3d864169dfce644a8c396f95aa35b41b69df53f558d56dd0"},
|
||||
{file = "lxml-4.9.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:ea3f2e9eb41f973f73619e88bf7bd950b16b4c2ce73d15f24a11800ce1eaf276"},
|
||||
{file = "lxml-4.9.0-pp38-pypy38_pp73-macosx_10_15_x86_64.whl", hash = "sha256:2d10659e6e5c53298e6d718fd126e793285bff904bb71d7239a17218f6a197b7"},
|
||||
{file = "lxml-4.9.0-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:fcdf70191f0d1761d190a436db06a46f05af60e1410e1507935f0332280c9268"},
|
||||
{file = "lxml-4.9.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:2b9c2341d96926b0d0e132e5c49ef85eb53fa92ae1c3a70f9072f3db0d32bc07"},
|
||||
{file = "lxml-4.9.0-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:615886ee84b6f42f1bdf1852a9669b5fe3b96b6ff27f1a7a330b67ad9911200a"},
|
||||
{file = "lxml-4.9.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:94f2e45b054dd759bed137b6e14ae8625495f7d90ddd23cf62c7a68f72b62656"},
|
||||
{file = "lxml-4.9.0.tar.gz", hash = "sha256:520461c36727268a989790aef08884347cd41f2d8ae855489ccf40b50321d8d7"},
|
||||
]
|
||||
outcome = [
|
||||
{file = "outcome-1.1.0-py2.py3-none-any.whl", hash = "sha256:c7dd9375cfd3c12db9801d080a3b63d4b0a261aa996c4c13152380587288d958"},
|
||||
@@ -472,44 +474,44 @@ pdfrw = [
|
||||
{file = "pdfrw-0.4.tar.gz", hash = "sha256:0dc0494a0e6561b268542b28ede2280387c2728114f117d3bb5d8e4787b93ef4"},
|
||||
]
|
||||
pillow = [
|
||||
{file = "Pillow-9.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:af79d3fde1fc2e33561166d62e3b63f0cc3e47b5a3a2e5fea40d4917754734ea"},
|
||||
{file = "Pillow-9.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:55dd1cf09a1fd7c7b78425967aacae9b0d70125f7d3ab973fadc7b5abc3de652"},
|
||||
{file = "Pillow-9.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:66822d01e82506a19407d1afc104c3fcea3b81d5eb11485e593ad6b8492f995a"},
|
||||
{file = "Pillow-9.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a5eaf3b42df2bcda61c53a742ee2c6e63f777d0e085bbc6b2ab7ed57deb13db7"},
|
||||
{file = "Pillow-9.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:01ce45deec9df310cbbee11104bae1a2a43308dd9c317f99235b6d3080ddd66e"},
|
||||
{file = "Pillow-9.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:aea7ce61328e15943d7b9eaca87e81f7c62ff90f669116f857262e9da4057ba3"},
|
||||
{file = "Pillow-9.1.0-cp310-cp310-win32.whl", hash = "sha256:7a053bd4d65a3294b153bdd7724dce864a1d548416a5ef61f6d03bf149205160"},
|
||||
{file = "Pillow-9.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:97bda660702a856c2c9e12ec26fc6d187631ddfd896ff685814ab21ef0597033"},
|
||||
{file = "Pillow-9.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:21dee8466b42912335151d24c1665fcf44dc2ee47e021d233a40c3ca5adae59c"},
|
||||
{file = "Pillow-9.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b6d4050b208c8ff886fd3db6690bf04f9a48749d78b41b7a5bf24c236ab0165"},
|
||||
{file = "Pillow-9.1.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5cfca31ab4c13552a0f354c87fbd7f162a4fafd25e6b521bba93a57fe6a3700a"},
|
||||
{file = "Pillow-9.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed742214068efa95e9844c2d9129e209ed63f61baa4d54dbf4cf8b5e2d30ccf2"},
|
||||
{file = "Pillow-9.1.0-cp37-cp37m-win32.whl", hash = "sha256:c9efef876c21788366ea1f50ecb39d5d6f65febe25ad1d4c0b8dff98843ac244"},
|
||||
{file = "Pillow-9.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:de344bcf6e2463bb25179d74d6e7989e375f906bcec8cb86edb8b12acbc7dfef"},
|
||||
{file = "Pillow-9.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:17869489de2fce6c36690a0c721bd3db176194af5f39249c1ac56d0bb0fcc512"},
|
||||
{file = "Pillow-9.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:25023a6209a4d7c42154073144608c9a71d3512b648a2f5d4465182cb93d3477"},
|
||||
{file = "Pillow-9.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8782189c796eff29dbb37dd87afa4ad4d40fc90b2742704f94812851b725964b"},
|
||||
{file = "Pillow-9.1.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:463acf531f5d0925ca55904fa668bb3461c3ef6bc779e1d6d8a488092bdee378"},
|
||||
{file = "Pillow-9.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f42364485bfdab19c1373b5cd62f7c5ab7cc052e19644862ec8f15bb8af289e"},
|
||||
{file = "Pillow-9.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:3fddcdb619ba04491e8f771636583a7cc5a5051cd193ff1aa1ee8616d2a692c5"},
|
||||
{file = "Pillow-9.1.0-cp38-cp38-win32.whl", hash = "sha256:4fe29a070de394e449fd88ebe1624d1e2d7ddeed4c12e0b31624561b58948d9a"},
|
||||
{file = "Pillow-9.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:c24f718f9dd73bb2b31a6201e6db5ea4a61fdd1d1c200f43ee585fc6dcd21b34"},
|
||||
{file = "Pillow-9.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fb89397013cf302f282f0fc998bb7abf11d49dcff72c8ecb320f76ea6e2c5717"},
|
||||
{file = "Pillow-9.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c870193cce4b76713a2b29be5d8327c8ccbe0d4a49bc22968aa1e680930f5581"},
|
||||
{file = "Pillow-9.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69e5ddc609230d4408277af135c5b5c8fe7a54b2bdb8ad7c5100b86b3aab04c6"},
|
||||
{file = "Pillow-9.1.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:35be4a9f65441d9982240e6966c1eaa1c654c4e5e931eaf580130409e31804d4"},
|
||||
{file = "Pillow-9.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82283af99c1c3a5ba1da44c67296d5aad19f11c535b551a5ae55328a317ce331"},
|
||||
{file = "Pillow-9.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a325ac71914c5c043fa50441b36606e64a10cd262de12f7a179620f579752ff8"},
|
||||
{file = "Pillow-9.1.0-cp39-cp39-win32.whl", hash = "sha256:a598d8830f6ef5501002ae85c7dbfcd9c27cc4efc02a1989369303ba85573e58"},
|
||||
{file = "Pillow-9.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:0c51cb9edac8a5abd069fd0758ac0a8bfe52c261ee0e330f363548aca6893595"},
|
||||
{file = "Pillow-9.1.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a336a4f74baf67e26f3acc4d61c913e378e931817cd1e2ef4dfb79d3e051b481"},
|
||||
{file = "Pillow-9.1.0-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb1b89b11256b5b6cad5e7593f9061ac4624f7651f7a8eb4dfa37caa1dfaa4d0"},
|
||||
{file = "Pillow-9.1.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:255c9d69754a4c90b0ee484967fc8818c7ff8311c6dddcc43a4340e10cd1636a"},
|
||||
{file = "Pillow-9.1.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5a3ecc026ea0e14d0ad7cd990ea7f48bfcb3eb4271034657dc9d06933c6629a7"},
|
||||
{file = "Pillow-9.1.0-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c5b0ff59785d93b3437c3703e3c64c178aabada51dea2a7f2c5eccf1bcf565a3"},
|
||||
{file = "Pillow-9.1.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c7110ec1701b0bf8df569a7592a196c9d07c764a0a74f65471ea56816f10e2c8"},
|
||||
{file = "Pillow-9.1.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:8d79c6f468215d1a8415aa53d9868a6b40c4682165b8cb62a221b1baa47db458"},
|
||||
{file = "Pillow-9.1.0.tar.gz", hash = "sha256:f401ed2bbb155e1ade150ccc63db1a4f6c1909d3d378f7d1235a44e90d75fb97"},
|
||||
{file = "Pillow-9.1.1-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:42dfefbef90eb67c10c45a73a9bc1599d4dac920f7dfcbf4ec6b80cb620757fe"},
|
||||
{file = "Pillow-9.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ffde4c6fabb52891d81606411cbfaf77756e3b561b566efd270b3ed3791fde4e"},
|
||||
{file = "Pillow-9.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c857532c719fb30fafabd2371ce9b7031812ff3889d75273827633bca0c4602"},
|
||||
{file = "Pillow-9.1.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:59789a7d06c742e9d13b883d5e3569188c16acb02eeed2510fd3bfdbc1bd1530"},
|
||||
{file = "Pillow-9.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4d45dbe4b21a9679c3e8b3f7f4f42a45a7d3ddff8a4a16109dff0e1da30a35b2"},
|
||||
{file = "Pillow-9.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e9ed59d1b6ee837f4515b9584f3d26cf0388b742a11ecdae0d9237a94505d03a"},
|
||||
{file = "Pillow-9.1.1-cp310-cp310-win32.whl", hash = "sha256:b3fe2ff1e1715d4475d7e2c3e8dabd7c025f4410f79513b4ff2de3d51ce0fa9c"},
|
||||
{file = "Pillow-9.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:5b650dbbc0969a4e226d98a0b440c2f07a850896aed9266b6fedc0f7e7834108"},
|
||||
{file = "Pillow-9.1.1-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:0b4d5ad2cd3a1f0d1df882d926b37dbb2ab6c823ae21d041b46910c8f8cd844b"},
|
||||
{file = "Pillow-9.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9370d6744d379f2de5d7fa95cdbd3a4d92f0b0ef29609b4b1687f16bc197063d"},
|
||||
{file = "Pillow-9.1.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b761727ed7d593e49671d1827044b942dd2f4caae6e51bab144d4accf8244a84"},
|
||||
{file = "Pillow-9.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8a66fe50386162df2da701b3722781cbe90ce043e7d53c1fd6bd801bca6b48d4"},
|
||||
{file = "Pillow-9.1.1-cp37-cp37m-win32.whl", hash = "sha256:2b291cab8a888658d72b575a03e340509b6b050b62db1f5539dd5cd18fd50578"},
|
||||
{file = "Pillow-9.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:1d4331aeb12f6b3791911a6da82de72257a99ad99726ed6b63f481c0184b6fb9"},
|
||||
{file = "Pillow-9.1.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:8844217cdf66eabe39567118f229e275f0727e9195635a15e0e4b9227458daaf"},
|
||||
{file = "Pillow-9.1.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b6617221ff08fbd3b7a811950b5c3f9367f6e941b86259843eab77c8e3d2b56b"},
|
||||
{file = "Pillow-9.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20d514c989fa28e73a5adbddd7a171afa5824710d0ab06d4e1234195d2a2e546"},
|
||||
{file = "Pillow-9.1.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:088df396b047477dd1bbc7de6e22f58400dae2f21310d9e2ec2933b2ef7dfa4f"},
|
||||
{file = "Pillow-9.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:53c27bd452e0f1bc4bfed07ceb235663a1df7c74df08e37fd6b03eb89454946a"},
|
||||
{file = "Pillow-9.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:3f6c1716c473ebd1649663bf3b42702d0d53e27af8b64642be0dd3598c761fb1"},
|
||||
{file = "Pillow-9.1.1-cp38-cp38-win32.whl", hash = "sha256:c67db410508b9de9c4694c57ed754b65a460e4812126e87f5052ecf23a011a54"},
|
||||
{file = "Pillow-9.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:f054b020c4d7e9786ae0404278ea318768eb123403b18453e28e47cdb7a0a4bf"},
|
||||
{file = "Pillow-9.1.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:c17770a62a71718a74b7548098a74cd6880be16bcfff5f937f900ead90ca8e92"},
|
||||
{file = "Pillow-9.1.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f3f6a6034140e9e17e9abc175fc7a266a6e63652028e157750bd98e804a8ed9a"},
|
||||
{file = "Pillow-9.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f372d0f08eff1475ef426344efe42493f71f377ec52237bf153c5713de987251"},
|
||||
{file = "Pillow-9.1.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09e67ef6e430f90caa093528bd758b0616f8165e57ed8d8ce014ae32df6a831d"},
|
||||
{file = "Pillow-9.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66daa16952d5bf0c9d5389c5e9df562922a59bd16d77e2a276e575d32e38afd1"},
|
||||
{file = "Pillow-9.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d78ca526a559fb84faaaf84da2dd4addef5edb109db8b81677c0bb1aad342601"},
|
||||
{file = "Pillow-9.1.1-cp39-cp39-win32.whl", hash = "sha256:55e74faf8359ddda43fee01bffbc5bd99d96ea508d8a08c527099e84eb708f45"},
|
||||
{file = "Pillow-9.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:7c150dbbb4a94ea4825d1e5f2c5501af7141ea95825fadd7829f9b11c97aaf6c"},
|
||||
{file = "Pillow-9.1.1-pp37-pypy37_pp73-macosx_10_10_x86_64.whl", hash = "sha256:769a7f131a2f43752455cc72f9f7a093c3ff3856bf976c5fb53a59d0ccc704f6"},
|
||||
{file = "Pillow-9.1.1-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:488f3383cf5159907d48d32957ac6f9ea85ccdcc296c14eca1a4e396ecc32098"},
|
||||
{file = "Pillow-9.1.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b525a356680022b0af53385944026d3486fc8c013638cf9900eb87c866afb4c"},
|
||||
{file = "Pillow-9.1.1-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:6e760cf01259a1c0a50f3c845f9cad1af30577fd8b670339b1659c6d0e7a41dd"},
|
||||
{file = "Pillow-9.1.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a4165205a13b16a29e1ac57efeee6be2dfd5b5408122d59ef2145bc3239fa340"},
|
||||
{file = "Pillow-9.1.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:937a54e5694684f74dcbf6e24cc453bfc5b33940216ddd8f4cd8f0f79167f765"},
|
||||
{file = "Pillow-9.1.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:baf3be0b9446a4083cc0c5bb9f9c964034be5374b5bc09757be89f5d2fa247b8"},
|
||||
{file = "Pillow-9.1.1.tar.gz", hash = "sha256:7502539939b53d7565f3d11d87c78e7ec900d3c72945d4ee0e2f250d598309a0"},
|
||||
]
|
||||
pycparser = [
|
||||
{file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"},
|
||||
@@ -574,7 +576,7 @@ sortedcontainers = [
|
||||
{file = "sortedcontainers-2.4.0.tar.gz", hash = "sha256:25caa5a06cc30b6b83d11423433f65d1f9d76c4c6a0c90e3379eaa43b9bfdb88"},
|
||||
]
|
||||
svglib = [
|
||||
{file = "svglib-1.2.1.tar.gz", hash = "sha256:c77a0702fafd367c0fdca08ca1b7e1ee10058bde3bae252f49a3836e51e54519"},
|
||||
{file = "svglib-1.3.0.tar.gz", hash = "sha256:a38998b95d1bb99564dc9dffaf15e4e9453761f2790d2dd4147a4ad5fbac1078"},
|
||||
]
|
||||
tinycss2 = [
|
||||
{file = "tinycss2-1.1.1-py3-none-any.whl", hash = "sha256:fe794ceaadfe3cf3e686b22155d0da5780dd0e273471a51846d0a02bc204fec8"},
|
||||
|
||||
@@ -13,6 +13,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [ perl tk ]; # perl and wish are not run but written as shebangs.
|
||||
|
||||
# Workaround build failure on -fno-common toolchains:
|
||||
# ld: libvars.a(vars-freeze-lex.o):src/libvars/vars-freeze-lex.l:23:
|
||||
# multiple definition of `line_number'; ifm-main.o:src/ifm-main.c:46: first defined here
|
||||
NIX_CFLAGS_COMPILE = "-fcommon";
|
||||
|
||||
enableParallelBuilding = false; # ifm-scan.l:16:10: fatal error: ifm-parse.h: No such file or directory
|
||||
|
||||
meta = with lib; {
|
||||
|
||||
@@ -8,7 +8,13 @@ let
|
||||
python = python3.override {
|
||||
packageOverrides = self: super: {
|
||||
# Use click 7
|
||||
click = self.callPackage ../../../development/python2-modules/click/default.nix { };
|
||||
click = super.click.overridePythonAttrs (old: rec {
|
||||
version = "7.1.2";
|
||||
src = old.src.override {
|
||||
inherit version;
|
||||
sha256 = "d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a";
|
||||
};
|
||||
});
|
||||
};
|
||||
};
|
||||
in with python.pkgs; buildPythonApplication rec {
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
{ lib, stdenv, fetchurl, makeBinaryWrapper, jre_headless }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ltex-ls";
|
||||
version = "15.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/valentjn/ltex-ls/releases/download/${version}/ltex-ls-${version}.tar.gz";
|
||||
sha256 = "sha256-ygjCFjYaP9Lc5BLuOHe5+lyaKpfDhicR783skkBgo7I=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out
|
||||
cp -rfv bin/ lib/ $out
|
||||
rm -fv $out/bin/*.bat
|
||||
for file in $out/bin/{ltex-ls,ltex-cli}; do
|
||||
wrapProgram $file --set JAVA_HOME "${jre_headless}"
|
||||
done
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://valentjn.github.io/ltex/";
|
||||
description = "LSP language server for LanguageTool";
|
||||
license = licenses.mpl20;
|
||||
maintainers = [ maintainers.marsam ];
|
||||
platforms = jre_headless.meta.platforms;
|
||||
};
|
||||
}
|
||||
@@ -267,6 +267,7 @@ mapAliases ({
|
||||
cudnn_cudatoolkit_9_0 = throw "cudnn_cudatoolkit_9_0 has been removed in favor of newer versions"; # Added 2021-04-18
|
||||
cudnn_cudatoolkit_9_1 = throw "cudnn_cudatoolkit_9_1 has been removed in favor of newer versions"; # Added 2021-04-18
|
||||
cudnn_cudatoolkit_9_2 = throw "cudnn_cudatoolkit_9_2 has been removed in favor of newer versions"; # Added 2021-04-18
|
||||
cura_stable = throw "cura_stable was removed because it was broken and used Python 2"; # added 2022-06-05
|
||||
curl_unix_socket = throw "curl_unix_socket has been dropped due to the lack of maintanence from upstream since 2015"; # Added 2022-06-02
|
||||
cutensor = throw "cutensor is now part of cudaPackages*"; # Added 2022-04-04
|
||||
cutensor_cudatoolkit_10 = throw "cutensor* is now part of cudaPackages*"; # Added 2022-04-04
|
||||
@@ -1226,6 +1227,7 @@ mapAliases ({
|
||||
s6Networking = throw "'s6Networking' has been renamed to/replaced by 's6-networking'"; # Converted to throw 2022-02-22
|
||||
s6PortableUtils = throw "'s6PortableUtils' has been renamed to/replaced by 's6-portable-utils'"; # Converted to throw 2022-02-22
|
||||
sagemath = throw "'sagemath' has been renamed to/replaced by 'sage'"; # Converted to throw 2022-02-22
|
||||
salut_a_toi = throw "salut_a_toi was removed because it was broken and used Python 2"; # added 2022-06-05
|
||||
sam = throw "'sam' has been renamed to/replaced by 'deadpixi-sam'"; # Converted to throw 2022-02-22
|
||||
samsungUnifiedLinuxDriver = throw "'samsungUnifiedLinuxDriver' has been renamed to/replaced by 'samsung-unified-linux-driver'"; # Converted to throw 2022-02-22
|
||||
sane-backends-git = sane-backends; # Added 2021-02-19
|
||||
@@ -1354,6 +1356,7 @@ mapAliases ({
|
||||
tex-gyre-pagella-math = throw "'tex-gyre-pagella-math' has been renamed to/replaced by 'tex-gyre-math.pagella'"; # Converted to throw 2022-02-22
|
||||
tex-gyre-schola-math = throw "'tex-gyre-schola-math' has been renamed to/replaced by 'tex-gyre-math.schola'"; # Converted to throw 2022-02-22
|
||||
tex-gyre-termes-math = throw "'tex-gyre-termes-math' has been renamed to/replaced by 'tex-gyre-math.termes'"; # Converted to throw 2022-02-22
|
||||
textadept11 = textadept; # Added 2022-06-07
|
||||
tftp_hpa = throw "'tftp_hpa' has been renamed to/replaced by 'tftp-hpa'"; # Converted to throw 2022-02-22
|
||||
thunderbird-68 = throw "Thunderbird 68 reached end of life with its final release 68.12.0 on 2020-08-25";
|
||||
thunderbird-bin-68 = thunderbird-68;
|
||||
@@ -1587,6 +1590,7 @@ mapAliases ({
|
||||
todolist = throw "todolist is now ultralist"; # Added 2020-12-27
|
||||
tor-browser-bundle = throw "tor-browser-bundle was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead"; # Added 2020-01-10
|
||||
tor-browser-unwrapped = throw "tor-browser-unwrapped was removed because it was out of date and inadequately maintained. Please use tor-browser-bundle-bin instead"; # Added 2020-01-10
|
||||
torchat = throw "torchat was removed because it was broken and requires Python 2"; # added 2022-06-05
|
||||
ttyrec = ovh-ttyrec; # Added 2021-01-02
|
||||
zplugin = zinit; # Added 2021-01-30
|
||||
|
||||
|
||||
@@ -386,6 +386,8 @@ with pkgs;
|
||||
|
||||
eclipse-mat = callPackage ../development/tools/eclipse-mat { };
|
||||
|
||||
efficient-compression-tool = callPackage ../tools/compression/efficient-compression-tool { };
|
||||
|
||||
evans = callPackage ../development/tools/evans { };
|
||||
|
||||
firefly-desktop = callPackage ../applications/misc/firefly-desktop { };
|
||||
@@ -4757,6 +4759,8 @@ with pkgs;
|
||||
|
||||
evdevremapkeys = callPackage ../tools/inputmethods/evdevremapkeys { };
|
||||
|
||||
persistent-evdev = python3Packages.callPackage ../servers/persistent-evdev { };
|
||||
|
||||
evscript = callPackage ../tools/inputmethods/evscript { };
|
||||
|
||||
gebaar-libinput = callPackage ../tools/inputmethods/gebaar-libinput { stdenv = gcc10StdenvCompat; };
|
||||
@@ -10104,8 +10108,6 @@ with pkgs;
|
||||
|
||||
salt = callPackage ../tools/admin/salt {};
|
||||
|
||||
salut_a_toi = callPackage ../applications/networking/instant-messengers/salut-a-toi {};
|
||||
|
||||
samim-fonts = callPackage ../data/fonts/samim-fonts {};
|
||||
|
||||
saml2aws = callPackage ../tools/security/saml2aws {
|
||||
@@ -25241,9 +25243,7 @@ with pkgs;
|
||||
|
||||
atlassian-cli = callPackage ../applications/office/atlassian-cli { };
|
||||
|
||||
atomEnv = callPackage ../applications/editors/atom/env.nix {
|
||||
gconf = gnome2.GConf;
|
||||
};
|
||||
atomEnv = callPackage ../applications/editors/atom/env.nix { };
|
||||
|
||||
atomPackages = dontRecurseIntoAttrs (callPackage ../applications/editors/atom { });
|
||||
|
||||
@@ -25869,6 +25869,8 @@ with pkgs;
|
||||
|
||||
dr14_tmeter = callPackage ../applications/audio/dr14_tmeter { };
|
||||
|
||||
dragonflydb = callPackage ../servers/nosql/dragonflydb { };
|
||||
|
||||
dragonfly-reverb = callPackage ../applications/audio/dragonfly-reverb { };
|
||||
|
||||
drawing = callPackage ../applications/graphics/drawing { };
|
||||
@@ -27893,6 +27895,8 @@ with pkgs;
|
||||
|
||||
lsp-plugins = callPackage ../applications/audio/lsp-plugins { php = php74; };
|
||||
|
||||
ltex-ls = callPackage ../tools/text/ltex-ls { };
|
||||
|
||||
luminanceHDR = libsForQt5.callPackage ../applications/graphics/luminance-hdr { };
|
||||
|
||||
lxdvdrip = callPackage ../applications/video/lxdvdrip { };
|
||||
@@ -29653,9 +29657,6 @@ with pkgs;
|
||||
};
|
||||
|
||||
curaengine_stable = callPackage ../applications/misc/curaengine/stable.nix { };
|
||||
cura_stable = callPackage ../applications/misc/cura/stable.nix {
|
||||
curaengine = curaengine_stable;
|
||||
};
|
||||
|
||||
curaengine = callPackage ../applications/misc/curaengine { inherit (python3.pkgs) libarcus; };
|
||||
|
||||
@@ -30073,8 +30074,6 @@ with pkgs;
|
||||
|
||||
topydo = callPackage ../applications/misc/topydo {};
|
||||
|
||||
torchat = callPackage ../applications/networking/instant-messengers/torchat { };
|
||||
|
||||
torrential = callPackage ../applications/networking/p2p/torrential { };
|
||||
|
||||
tortoisehg = callPackage ../applications/version-management/tortoisehg { };
|
||||
|
||||
@@ -18,8 +18,6 @@ with self; with super; {
|
||||
|
||||
cheetah = callPackage ../development/python2-modules/cheetah { };
|
||||
|
||||
click = callPackage ../development/python2-modules/click { };
|
||||
|
||||
configparser = callPackage ../development/python2-modules/configparser { };
|
||||
|
||||
construct = callPackage ../development/python2-modules/construct { };
|
||||
@@ -28,18 +26,10 @@ with self; with super; {
|
||||
|
||||
coverage = callPackage ../development/python2-modules/coverage { };
|
||||
|
||||
cryptography = callPackage ../development/python2-modules/cryptography { };
|
||||
|
||||
decorator = callPackage ../development/python2-modules/decorator { };
|
||||
|
||||
enum = callPackage ../development/python2-modules/enum { };
|
||||
|
||||
filelock = callPackage ../development/python2-modules/filelock { };
|
||||
|
||||
flask = callPackage ../development/python2-modules/flask { };
|
||||
|
||||
freezegun = callPackage ../development/python2-modules/freezegun { };
|
||||
|
||||
futures = callPackage ../development/python2-modules/futures { };
|
||||
|
||||
google-apputils = callPackage ../development/python2-modules/google-apputils { };
|
||||
@@ -54,16 +44,8 @@ with self; with super; {
|
||||
|
||||
importlib-metadata = callPackage ../development/python2-modules/importlib-metadata { };
|
||||
|
||||
ipaddr = callPackage ../development/python2-modules/ipaddr { };
|
||||
|
||||
itsdangerous = callPackage ../development/python2-modules/itsdangerous { };
|
||||
|
||||
jinja2 = callPackage ../development/python2-modules/jinja2 { };
|
||||
|
||||
libcloud = callPackage ../development/python2-modules/libcloud { };
|
||||
|
||||
lpod = callPackage ../development/python2-modules/lpod { };
|
||||
|
||||
marisa = callPackage ../development/python2-modules/marisa {
|
||||
inherit (pkgs) marisa;
|
||||
};
|
||||
@@ -110,8 +92,6 @@ with self; with super; {
|
||||
|
||||
pygtk = callPackage ../development/python2-modules/pygtk { };
|
||||
|
||||
pyjwt = callPackage ../development/python2-modules/pyjwt { };
|
||||
|
||||
pyparsing = callPackage ../development/python2-modules/pyparsing { };
|
||||
|
||||
pyroma = callPackage ../development/python2-modules/pyroma { };
|
||||
@@ -160,20 +140,6 @@ with self; with super; {
|
||||
|
||||
typing = callPackage ../development/python2-modules/typing { };
|
||||
|
||||
urllib3 = callPackage ../development/python2-modules/urllib3 { };
|
||||
|
||||
werkzeug = callPackage ../development/python2-modules/werkzeug { };
|
||||
|
||||
wsproto = callPackage ../development/python2-modules/wsproto { };
|
||||
|
||||
wxPython30 = callPackage ../development/python2-modules/wxPython {
|
||||
wxGTK = pkgs.wxGTK30;
|
||||
};
|
||||
|
||||
wxPython = self.wxPython30;
|
||||
|
||||
vcrpy = callPackage ../development/python2-modules/vcrpy { };
|
||||
|
||||
zeek = disabled super.zeek;
|
||||
|
||||
zipp = callPackage ../development/python2-modules/zipp { };
|
||||
|
||||
Reference in New Issue
Block a user