Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2022-01-16 12:01:46 +00:00 committed by GitHub
commit 5a104d035c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
157 changed files with 1281 additions and 1014 deletions

View File

@ -12172,6 +12172,12 @@
githubId = 1183303;
name = "Jakob Klepp";
};
trundle = {
name = "Andreas Stührk";
email = "andy@hammerhartes.de";
github = "Trundle";
githubId = 332418;
};
tscholak = {
email = "torsten.scholak@googlemail.com";
github = "tscholak";

View File

@ -29,9 +29,9 @@ let
configFile = if (cfg.configFile != null) then cfg.configFile else configFile';
preStart = ''
install --owner ddclient -m600 ${configFile} /run/${RuntimeDirectory}/ddclient.conf
install ${configFile} /run/${RuntimeDirectory}/ddclient.conf
${lib.optionalString (cfg.configFile == null) (if (cfg.protocol == "nsupdate") then ''
install --owner ddclient -m600 ${cfg.passwordFile} /run/${RuntimeDirectory}/ddclient.key
install ${cfg.passwordFile} /run/${RuntimeDirectory}/ddclient.key
'' else if (cfg.passwordFile != null) then ''
password=$(printf "%q" "$(head -n 1 "${cfg.passwordFile}")")
sed -i "s|^password=$|password=$password|" /run/${RuntimeDirectory}/ddclient.conf

View File

@ -55,7 +55,11 @@ in
frontendUrl = lib.mkOption {
type = lib.types.str;
apply = x: if lib.hasSuffix "/" x then x else x + "/";
apply = x:
if x == "" || lib.hasSuffix "/" x then
x
else
x + "/";
example = "keycloak.example.com/auth";
description = ''
The public URL used as base for all frontend requests. Should
@ -229,8 +233,22 @@ in
'';
};
themes = lib.mkOption {
type = lib.types.attrsOf lib.types.package;
default = {};
description = ''
Additional theme packages for Keycloak. Each theme is linked into
subdirectory with a corresponding attribute name.
Theme packages consist of several subdirectories which provide
different theme types: for example, <literal>account</literal>,
<literal>login</literal> etc. After adding a theme to this option you
can select it by its name in Keycloak administration console.
'';
};
extraConfig = lib.mkOption {
type = lib.types.attrs;
type = lib.types.attrsOf lib.types.anything;
default = { };
example = lib.literalExpression ''
{
@ -289,16 +307,45 @@ in
${pkgs.jre}/bin/keytool -importcert -trustcacerts -alias MySQLCACert -file ${cfg.database.caCert} -keystore $out -storepass notsosecretpassword -noprompt
'';
# Both theme and theme type directories need to be actual directories in one hierarchy to pass Keycloak checks.
themesBundle = pkgs.runCommand "keycloak-themes" {} ''
linkTheme() {
theme="$1"
name="$2"
mkdir "$out/$name"
for typeDir in "$theme"/*; do
if [ -d "$typeDir" ]; then
type="$(basename "$typeDir")"
mkdir "$out/$name/$type"
for file in "$typeDir"/*; do
ln -sn "$file" "$out/$name/$type/$(basename "$file")"
done
fi
done
}
mkdir -p "$out"
for theme in ${cfg.package}/themes/*; do
if [ -d "$theme" ]; then
linkTheme "$theme" "$(basename "$theme")"
fi
done
${lib.concatStringsSep "\n" (lib.mapAttrsToList (name: theme: "linkTheme ${theme} ${lib.escapeShellArg name}") cfg.themes)}
'';
keycloakConfig' = builtins.foldl' lib.recursiveUpdate {
"interface=public".inet-address = cfg.bindAddress;
"socket-binding-group=standard-sockets"."socket-binding=http".port = cfg.httpPort;
"subsystem=keycloak-server"."spi=hostname" = {
"provider=default" = {
"subsystem=keycloak-server" = {
"spi=hostname"."provider=default" = {
enabled = true;
properties = {
inherit (cfg) frontendUrl forceBackendUrlToFrontendUrl;
};
};
"theme=defaults".dir = toString themesBundle;
};
"subsystem=datasources"."data-source=KeycloakDS" = {
max-pool-size = "20";
@ -348,11 +395,23 @@ in
})
(lib.optionalAttrs (cfg.sslCertificate != null && cfg.sslCertificateKey != null) {
"socket-binding-group=standard-sockets"."socket-binding=https".port = cfg.httpsPort;
"core-service=management"."security-realm=UndertowRealm"."server-identity=ssl" = {
keystore-path = "/run/keycloak/ssl/certificate_private_key_bundle.p12";
keystore-password = "notsosecretpassword";
"subsystem=elytron" = lib.mkOrder 900 {
"key-store=httpsKS" = lib.mkOrder 900 {
path = "/run/keycloak/ssl/certificate_private_key_bundle.p12";
credential-reference.clear-text = "notsosecretpassword";
type = "JKS";
};
"key-manager=httpsKM" = lib.mkOrder 901 {
key-store = "httpsKS";
credential-reference.clear-text = "notsosecretpassword";
};
"server-ssl-context=httpsSSC" = lib.mkOrder 902 {
key-manager = "httpsKM";
};
};
"subsystem=undertow" = lib.mkOrder 901 {
"server=default-server"."https-listener=https".ssl-context = "httpsSSC";
};
"subsystem=undertow"."server=default-server"."https-listener=https".security-realm = "UndertowRealm";
})
cfg.extraConfig
];
@ -441,9 +500,9 @@ in
# with `expression` to evaluate.
prefixExpression = string:
let
match = (builtins.match ''"\$\{.*}"'' string);
matchResult = builtins.match ''"\$\{.*}"'' string;
in
if match != null then
if matchResult != null then
"expression " + string
else
string;
@ -508,52 +567,57 @@ in
""
else
throw "Unsupported type '${type}' for attribute '${attribute}'!";
in
lib.concatStringsSep ", " (lib.mapAttrsToList makeArg set);
/* Recurses into the `attrs` attrset, beginning at the path
resolved from `state.path ++ node`; if `node` is `null`,
starts from `state.path`. Only subattrsets that are JBoss
paths, i.e. follows the `key=value` format, are recursed
/* Recurses into the `nodeValue` attrset. Only subattrsets that
are JBoss paths, i.e. follows the `key=value` format, are recursed
into - the rest are considered JBoss attributes / maps.
*/
recurse = state: node:
recurse = nodePath: nodeValue:
let
path = state.path ++ (lib.optional (node != null) node);
nodeContent =
if builtins.isAttrs nodeValue && nodeValue._type or "" == "order" then
nodeValue.content
else
nodeValue;
isPath = name:
let
value = lib.getAttrFromPath (path ++ [ name ]) attrs;
value = nodeContent.${name};
in
if (builtins.match ".*([=]).*" name) == [ "=" ] then
if builtins.isAttrs value || value == null then
true
else
throw "Parsing path '${lib.concatStringsSep "." (path ++ [ name ])}' failed: JBoss attributes cannot contain '='!"
throw "Parsing path '${lib.concatStringsSep "." (nodePath ++ [ name ])}' failed: JBoss attributes cannot contain '='!"
else
false;
jbossPath = "/" + (lib.concatStringsSep "/" path);
nodeValue = lib.getAttrFromPath path attrs;
children = if !builtins.isAttrs nodeValue then {} else nodeValue;
jbossPath = "/" + lib.concatStringsSep "/" nodePath;
children = if !builtins.isAttrs nodeContent then {} else nodeContent;
subPaths = builtins.filter isPath (builtins.attrNames children);
getPriority = name:
let value = children.${name};
in if value._type or "" == "order" then value.priority else 1000;
orderedSubPaths = lib.sort (a: b: getPriority a < getPriority b) subPaths;
jbossAttrs = lib.filterAttrs (name: _: !(isPath name)) children;
in
state // {
text = state.text + (
if nodeValue != null then ''
text =
if nodeContent != null then
''
if (outcome != success) of ${jbossPath}:read-resource()
${jbossPath}:add(${makeArgList jbossAttrs})
end-if
'' + (writeAttributes jbossPath jbossAttrs)
else ''
'' + writeAttributes jbossPath jbossAttrs
else
''
if (outcome == success) of ${jbossPath}:read-resource()
${jbossPath}:remove()
end-if
'') + (builtins.foldl' recurse { text = ""; inherit path; } subPaths).text;
};
'';
in text + lib.concatMapStringsSep "\n" (name: recurse (nodePath ++ [name]) children.${name}) orderedSubPaths;
in
(recurse { text = ""; path = []; } null).text;
recurse [] attrs;
jbossCliScript = pkgs.writeText "jboss-cli-script" (mkJbossScript keycloakConfig');

View File

@ -85,7 +85,12 @@
The frontend URL is used as base for all frontend requests and
must be configured through <xref linkend="opt-services.keycloak.frontendUrl" />.
It should normally include a trailing <literal>/auth</literal>
(the default web context).
(the default web context). If you use a reverse proxy, you need
to set this option to <literal>""</literal>, so that frontend URL
is derived from HTTP headers. <literal>X-Forwarded-*</literal> headers
support also should be enabled, using <link
xlink:href="https://www.keycloak.org/docs/latest/server_installation/index.html#identifying-client-ip-addresses">
respective guidelines</link>.
</para>
<para>
@ -131,6 +136,17 @@
</warning>
</section>
<section xml:id="module-services-keycloak-themes">
<title>Themes</title>
<para>
You can package custom themes and make them visible to Keycloak via
<xref linkend="opt-services.keycloak.themes" />
option. See the <link xlink:href="https://www.keycloak.org/docs/latest/server_development/#_themes">
Themes section of the Keycloak Server Development Guide</link>
and respective NixOS option description for more information.
</para>
</section>
<section xml:id="module-services-keycloak-extra-config">
<title>Additional configuration</title>
<para>

View File

@ -38,13 +38,13 @@ let
in
stdenv.mkDerivation rec {
pname = "cudatext";
version = "1.152.1";
version = "1.153.0";
src = fetchFromGitHub {
owner = "Alexey-T";
repo = "CudaText";
rev = version;
sha256 = "sha256-rFmgf/wg6/jIObBDN+viKX3KrewVWgxs8uVF1gCY72s=";
sha256 = "sha256-3p5wb3buZtd1gnNoEJOclNO8xEYJBZYc86HfrkFrBWU=";
};
postPatch = ''

View File

@ -16,23 +16,23 @@
},
"ATSynEdit": {
"owner": "Alexey-T",
"rev": "2021.12.22",
"sha256": "sha256-MmRJ3XDq7b9doPFfW7njSOasHej5ut0nYcJMFj+Y/Dc="
"rev": "2022.01.07",
"sha256": "sha256-KxeaTXv0qig3O2hqjJ5HG1KCN0TTQdnd3g9jBsEc0a4="
},
"ATSynEdit_Cmp": {
"owner": "Alexey-T",
"rev": "2021.09.14",
"sha256": "sha256-6eC75zAtWbM1XEI9OM3iqy/a8Vj1l5WU7HGJBpmoQsA="
"rev": "2021.12.28",
"sha256": "sha256-bXTjPdn0DIVTdoi30Ws5+M+UsC7F99IphMSTpI5ia/Q="
},
"EControl": {
"owner": "Alexey-T",
"rev": "2021.12.07",
"sha256": "sha256-givCklAHao26psWLI2qK246igxcAQEeIYTGH61FX6Xo="
"rev": "2022.01.07",
"sha256": "sha256-dgkyXrFs2hzuFjt9GW+WNyrLIp/i/AbRsM/MyMbatdA="
},
"ATSynEdit_Ex": {
"owner": "Alexey-T",
"rev": "2021.12.07",
"sha256": "sha256-/2Fv/vrpbHSiJro11cjbziUaT4gfwa6y5aQBoYgq3OQ="
"rev": "2022.01.07",
"sha256": "sha256-7QDHf0PYGMc611qrk+a8pNJHF1v1DFMWlt5hbaU/oD8="
},
"Python-for-Lazarus": {
"owner": "Alexey-T",

View File

@ -1,7 +1,7 @@
{ callPackage, ... } @ args:
callPackage ./generic.nix (args // {
version = "5.0.0";
version = "5.0.2";
kde-channel = "stable";
sha256 = "sha256-hNWDPbyrP9OkGPTDdnDYKtkZQw8MbQpXuZOQdHHuzFc=";
sha256 = "sha256-5nUfx+tQSXekiAo3brvTmVyH2tFUSGCE6COX5l1JnL8=";
})

View File

@ -15,7 +15,8 @@ let
sha256 = "09h1153wgr5x2ny7ds0w2m81n3bb9j8hjb8sjfnrg506r01clkyx";
};
});
click = self.callPackage ../../../development/python-modules/click/7.nix { };
# Use click 7
click = self.callPackage ../../../development/python2-modules/click/default.nix { };
};
};
in

View File

@ -20,8 +20,8 @@ let
sha256 = "ae2f05671588762dd83a21d8b18c51fe355e86783e24594995ff8d7380dffe38";
};
});
werkzeug = self.callPackage ../../../development/python-modules/werkzeug/1.nix { };
flask = self.callPackage ../../../development/python-modules/flask/1.nix { };
werkzeug = self.callPackage ../../../development/python2-modules/werkzeug { };
flask = self.callPackage ../../../development/python2-modules/flask { };
sqlsoup = super.sqlsoup.overrideAttrs ({ meta ? {}, ... }: {
meta = meta // { broken = false; };
});

View File

@ -161,13 +161,23 @@ let
./patches/no-build-timestamps.patch
# For bundling Widevine (DRM), might be replaceable via bundle_widevine_cdm=true in gnFlags:
./patches/widevine-79.patch
] ++ lib.optionals (versionRange "98" "99") [
] ++ lib.optionals (versionRange "97" "98") [
# A critical Ozone/Wayland fix:
# (Note: The patch for surface_augmenter.cc doesn't apply on M97 so we extract that part.)
(fetchpatch {
# [linux/wayland] Fixed terminate caused by binding to wrong version.
url = "https://github.com/chromium/chromium/commit/dd4c3ddadbb9869f59cee201a38e9ca3b9154f4d.patch";
excludes = [ "ui/ozone/platform/wayland/host/surface_augmenter.cc" ];
sha256 = "sha256-lp4kxPNAkafdE9NfD3ittTCpomRpX9Hqhtt9GFf4Ntw=";
})
./patches/m97-ozone-wayland-fix-surface_augmenter.patch
] ++ lib.optionals (versionRange "98" "99") [
(githubPatch {
# [linux/wayland] Fixed terminate caused by binding to wrong version.
commit = "dd4c3ddadbb9869f59cee201a38e9ca3b9154f4d";
sha256 = "sha256-FH7lBQTruMzkBT2XQ+kgADmJA0AxJfaV/gvtoqfQ4a4=";
})
] ++ lib.optionals (versionRange "97" "99") [
(githubPatch {
# [linux/wayland] Fixed terminate caused by binding to wrong version. (fixup)
commit = "a84b79daa8897b822336b8f348ef4daaae07af37";

View File

@ -0,0 +1,31 @@
diff --git a/ui/ozone/platform/wayland/host/surface_augmenter.cc b/ui/ozone/platform/wayland/host/surface_augmenter.cc
index d971d15e71426..6e5408398bcea 100644
--- a/ui/ozone/platform/wayland/host/surface_augmenter.cc
+++ b/ui/ozone/platform/wayland/host/surface_augmenter.cc
@@ -13,7 +13,8 @@
namespace ui {
namespace {
-constexpr uint32_t kMaxSurfaceAugmenterVersion = 1;
+constexpr uint32_t kMinVersion = 1;
+constexpr uint32_t kMaxVersion = 1;
}
// static
@@ -27,11 +28,13 @@ void SurfaceAugmenter::Instantiate(WaylandConnection* connection,
uint32_t version) {
DCHECK_EQ(interface, kInterfaceName);
- if (connection->surface_augmenter_)
+ if (connection->surface_augmenter_ ||
+ !wl::CanBind(interface, version, kMinVersion, kMaxVersion)) {
return;
+ }
- auto augmenter = wl::Bind<surface_augmenter>(
- registry, name, std::min(version, kMaxSurfaceAugmenterVersion));
+ auto augmenter = wl::Bind<surface_augmenter>(registry, name,
+ std::min(version, kMaxVersion));
if (!augmenter) {
LOG(ERROR) << "Failed to bind surface_augmenter";
return;

View File

@ -2,20 +2,20 @@
stdenv.mkDerivation rec {
pname = "terranix";
version = "2.5.0";
version = "2.5.3";
src = fetchFromGitHub {
owner = "mrVanDalo";
repo = "terranix";
rev = version;
sha256 = "sha256-HDiyJGgyDUoLnpL8N+wDm3cM/vEfYYc/p4N1kKH/kLk=";
sha256 = "sha256-Jhq0pkyF1KWJ6HgeWLoRfIxo7QHvOwwXzsIxZQgQtK4=";
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/{bin,core,modules,lib}
mv bin core modules lib $out/
mv bin core modules lib share $out/
wrapProgram $out/bin/terranix-doc-json \
--prefix PATH : ${lib.makeBinPath [ jq nix ]}

View File

@ -1,9 +1,13 @@
{ lib, buildPythonPackage, python, fetchFromGitHub, isPy3k, pytestCheckHook
, notmuch2, urwid, urwidtrees, twisted, python_magic, configobj, mock, file, gpgme
, service-identity, gnupg, sphinx, gawk, procps, future , withManpage ? false
{ lib, python3, fetchFromGitHub, file, gnupg, gawk, notmuch, procps, withManpage ? false
}:
buildPythonPackage rec {
with python3.pkgs;
let
notmuch2 = callPackage ./notmuch.nix {
inherit notmuch;
};
in buildPythonApplication rec {
pname = "alot";
version = "0.10";
outputs = [ "out" ] ++ lib.optional withManpage "man";

View File

@ -3,8 +3,8 @@
}:
let
apispec3 = callPackage ../apispec/3.nix {};
jinja2 = callPackage ../jinja2/2.nix {};
apispec3 = callPackage ./apispec.nix {};
jinja2 = callPackage ../../../../development/python2-modules/jinja2 {};
in
buildPythonPackage rec {
pname = "aiohttp-apispec";

View File

@ -6,8 +6,7 @@ let
libtorrent = (python3.pkgs.toPythonModule (
libtorrent-rasterbar-1_2_x.override { python = python3; })).python;
aiohttp-apispec = python3.pkgs.callPackage
../../../../development/python-modules/aiohttp-apispec/unstable.nix { };
aiohttp-apispec = python3.pkgs.callPackage ./aiohttp-apispec.nix { };
in
stdenv.mkDerivation rec {
pname = "tribler";

View File

@ -1,12 +1,12 @@
{ appimageTools, lib, fetchurl }:
let
pname = "notion-app-enhanced";
version = "2.0.16-5";
version = "2.0.18-1";
name = "${pname}-v${version}";
src = fetchurl {
url = "https://github.com/notion-enhancer/notion-repackaged/releases/download/v${version}/Notion-Enhanced-${version}.AppImage";
sha256 = "1v733b4clc9sjgb72fasmbqiyz26d09f3kmvd1nqshwp5d14dajz";
sha256 = "sha256-SqeMnoMzxxaViJ3NPccj3kyMc1xvXWULM6hQIDZySWY=";
};
appimageContents = appimageTools.extract { inherit name src; };

View File

@ -18,7 +18,7 @@ python3.pkgs.buildPythonApplication rec {
nativeBuildInputs = [ python3.pkgs.wrapPython copyDesktopItems ];
pythonPath = with python3.pkgs; [
wxPython_4_0 # not compatible with wxPython_4_1. reported upstream https://github.com/wxWidgets/Phoenix/issues/1956
wxPython_4_1
humblewx
icalendar
markdown

View File

@ -10,7 +10,8 @@ let
# Workaround the issue by providing click 7 explicitly.
python = python3.override {
packageOverrides = self: super: {
click = self.callPackage ../../../development/python-modules/click/7.nix { };
# Use click 7
click = self.callPackage ../../../development/python2-modules/click/default.nix { };
};
};
in with python.pkgs; buildPythonApplication rec {

View File

@ -7,7 +7,6 @@
, pkg-config
, volk
, cppunit
, swig
, orc
, boost
, log4cpp
@ -21,33 +20,39 @@
, libjack2
, CoreAudio
, uhd
, comedilib
, libusb1
, SDL
, gsl
, soapysdr
, libsodium
, libsndfile
, libunwind
, thrift
, cppzmq
, zeromq
# Needed only if qt-gui is disabled, from some reason
, icu
# GUI related
, gtk2
, gtk3
, pango
, gobject-introspection
, cairo
, qt4
, qwt6_qt4
, qt5
, libsForQt5
# Features available to override, the list of them is in featuresInfo. They
# are all turned on by default
# are all turned on by default.
, features ? {}
# If one wishes to use a different src or name for a very custom build
, overrideSrc ? {}
, pname ? "gnuradio"
, versionAttr ? {
major = "3.7";
minor = "14";
major = "3.9";
minor = "5";
patch = "0";
}
}:
let
sourceSha256 = "BiUDibXV/5cEYmAAaIxT4WTxF/ni4MJumF5oJ/vuOyc=";
sourceSha256 = "sha256-TWCXLoS+ImKNd2zkxMks4FXsQMvGKgcW5/MW8S1Y1TY=";
featuresInfo = {
# Needed always
basic = {
@ -56,27 +61,30 @@ let
pkg-config
orc
];
runtime = [ boost log4cpp mpir ];
pythonNative = with python.pkgs; [ Mako six ];
};
volk = {
cmakeEnableFlag = "VOLK";
runtime = [
volk
boost
log4cpp
mpir
]
# when gr-qtgui is disabled, icu needs to be included, otherwise
# building with boost 1.7x fails
++ lib.optionals (!(hasFeature "gr-qtgui")) [ icu ];
pythonNative = with python.pkgs; [
Mako
six
];
};
doxygen = {
native = [ doxygen ];
cmakeEnableFlag = "DOXYGEN";
};
sphinx = {
pythonNative = with python.pkgs; [ sphinx ];
cmakeEnableFlag = "SPHINX";
man-pages = {
cmakeEnableFlag = "MANPAGES";
};
python-support = {
pythonRuntime = [ python.pkgs.six ];
native = [
swig
python
];
cmakeEnableFlag = "PYTHON";
@ -85,31 +93,44 @@ let
native = [ cppunit ];
cmakeEnableFlag = "TESTING";
};
post-install = {
cmakeEnableFlag = "POSTINSTALL";
};
gnuradio-runtime = {
cmakeEnableFlag = "GNURADIO_RUNTIME";
pythonRuntime = [
python.pkgs.pybind11
];
};
gr-ctrlport = {
cmakeEnableFlag = "GR_CTRLPORT";
native = [
swig
runtime = [
libunwind
thrift
];
pythonRuntime = with python.pkgs; [
python.pkgs.thrift
# For gr-perf-monitorx
matplotlib
networkx
];
cmakeEnableFlag = "GR_CTRLPORT";
};
gnuradio-companion = {
pythonRuntime = with python.pkgs; [
pyyaml
cheetah
lxml
pygtk
Mako
numpy
# propagated by pygtk, but since wrapping is done externally, it help
# the wrapper if it's here
pycairo
pygobject2
pygobject3
];
native = [
python.pkgs.pytest
];
runtime = [
gtk2
gtk3
pango
gobject-introspection
cairo
libsndfile
];
cmakeEnableFlag = "GRC";
};
@ -126,6 +147,10 @@ let
gr-filter = {
runtime = [ fftwFloat ];
cmakeEnableFlag = "GR_FILTER";
pythonRuntime = with python.pkgs; [
scipy
pyqtgraph
];
};
gr-analog = {
cmakeEnableFlag = "GR_ANALOG";
@ -136,9 +161,6 @@ let
gr-dtv = {
cmakeEnableFlag = "GR_DTV";
};
gr-atsc = {
cmakeEnableFlag = "GR_ATSC";
};
gr-audio = {
runtime = []
++ lib.optionals stdenv.isLinux [ alsa-lib libjack2 ]
@ -146,33 +168,46 @@ let
;
cmakeEnableFlag = "GR_AUDIO";
};
gr-comedi = {
runtime = [ comedilib ];
cmakeEnableFlag = "GR_COMEDI";
};
gr-channels = {
cmakeEnableFlag = "GR_CHANNELS";
};
gr-noaa = {
cmakeEnableFlag = "GR_NOAA";
};
gr-pager = {
cmakeEnableFlag = "GR_PAGER";
};
gr-qtgui = {
runtime = [ qt4 qwt6_qt4 ];
pythonRuntime = [ python.pkgs.pyqt4 ];
runtime = [ qt5.qtbase libsForQt5.qwt ];
pythonRuntime = [ python.pkgs.pyqt5 ];
cmakeEnableFlag = "GR_QTGUI";
};
gr-trellis = {
cmakeEnableFlag = "GR_TRELLIS";
};
gr-uhd = {
runtime = [ uhd ];
runtime = [
uhd
];
cmakeEnableFlag = "GR_UHD";
};
gr-uhd-rfnoc = {
runtime = [
uhd
];
cmakeEnableFlag = "UHD_RFNOC";
};
gr-utils = {
cmakeEnableFlag = "GR_UTILS";
pythonRuntime = with python.pkgs; [
# For gr_plot
matplotlib
];
};
gr-modtool = {
pythonRuntime = with python.pkgs; [
setuptools
click
click-plugins
];
cmakeEnableFlag = "GR_MODTOOL";
};
gr-blocktool = {
cmakeEnableFlag = "GR_BLOCKTOOL";
};
gr-video-sdl = {
runtime = [ SDL ];
@ -182,27 +217,28 @@ let
runtime = [ codec2 gsm ];
cmakeEnableFlag = "GR_VOCODER";
};
gr-fcd = {
runtime = [ libusb1 ];
cmakeEnableFlag = "GR_FCD";
};
gr-wavelet = {
cmakeEnableFlag = "GR_WAVELET";
runtime = [ gsl ];
runtime = [ gsl libsodium ];
};
gr-zeromq = {
runtime = [ cppzmq zeromq ];
cmakeEnableFlag = "GR_ZEROMQ";
};
gr-wxgui = {
pythonRuntime = with python.pkgs; [ numpy wxPython ];
cmakeEnableFlag = "GR_WXGUI";
gr-network = {
cmakeEnableFlag = "GR_NETWORK";
};
gr-soapy = {
cmakeEnableFlag = "GR_SOAPY";
runtime = [
soapysdr
];
};
};
shared = (import ./shared.nix {
inherit
lib
stdenv
lib
python
removeReferencesTo
featuresInfo
@ -212,8 +248,8 @@ let
overrideSrc
fetchFromGitHub
;
qt = qt4;
gtk = gtk2;
qt = qt5;
gtk = gtk3;
});
inherit (shared) hasFeature; # function
in
@ -225,57 +261,33 @@ stdenv.mkDerivation rec {
src
nativeBuildInputs
buildInputs
cmakeFlags
disallowedReferences
postInstall
stripDebugList
doCheck
dontWrapPythonPrograms
dontWrapQtApps
meta
;
patches = [
# Not accepted upstream, see https://github.com/gnuradio/gnuradio/pull/5227
./modtool-newmod-permissions.patch
];
passthru = shared.passthru // {
# Deps that are potentially overriden and are used inside GR plugins - the same version must
inherit boost volk;
} // lib.optionalAttrs (hasFeature "gr-uhd") {
inherit uhd;
} // lib.optionalAttrs (hasFeature "gr-qtgui") {
inherit (libsForQt5) qwt;
};
cmakeFlags = shared.cmakeFlags
# From some reason, if these are not set, libcodec2 and gsm are
# not detected properly (slightly different then what's in
# ./default.nix).
++ lib.optionals (hasFeature "gr-vocoder") [
"-DLIBCODEC2_LIBRARIES=${codec2}/lib/libcodec2.so"
"-DLIBCODEC2_INCLUDE_DIR=${codec2}/include"
"-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm.so"
"-DLIBGSM_INCLUDE_DIR=${gsm}/include/gsm"
]
++ lib.optionals (hasFeature "volk" && volk != null) [
"-DENABLE_INTERNAL_VOLK=OFF"
]
;
stripDebugList = shared.stripDebugList
# gr-fcd feature was dropped in 3.8
++ lib.optionals (hasFeature "gr-fcd") [ "share/gnuradio/examples/fcd" ]
;
preConfigure = ""
# wxgui and pygtk are not looked up properly, so we force them to be
# detected as found, if they are requested by the `features` attrset.
+ lib.optionalString (hasFeature "gr-wxgui") ''
sed -i 's/.*wx\.version.*/set(WX_FOUND TRUE)/g' gr-wxgui/CMakeLists.txt
''
+ lib.optionalString (hasFeature "gnuradio-companion") ''
sed -i 's/.*pygtk_version.*/set(PYGTK_FOUND TRUE)/g' grc/CMakeLists.txt
postInstall = shared.postInstall
# This is the only python reference worth removing, if needed.
+ lib.optionalString (!hasFeature "python-support") ''
${removeReferencesTo}/bin/remove-references-to -t ${python} $out/lib/cmake/gnuradio/GnuradioConfig.cmake
${removeReferencesTo}/bin/remove-references-to -t ${python} $(readlink -f $out/lib/libgnuradio-runtime.so)
${removeReferencesTo}/bin/remove-references-to -t ${python.pkgs.pybind11} $out/lib/cmake/gnuradio/gnuradio-runtimeTargets.cmake
''
;
patches = [
# Don't install python referencing files if python support is disabled.
# See: https://github.com/gnuradio/gnuradio/pull/3856
(fetchpatch {
url = "https://github.com/gnuradio/gnuradio/commit/acef55433d15c231661fa44751f9a2d90a4baa4b.diff";
sha256 = "2CEX44Ll8frfLXTIWjdDhKl7aXcjiAWsezVdwrynelE=";
})
(fetchpatch {
url = "https://github.com/gnuradio/gnuradio/commit/a2681edcfaabcb1ecf878ae861161b6a6bf8459d.diff";
sha256 = "2Pitgu8accs16B5X5+/q51hr+IY9DMsA15f56gAtBs8=";
})
];
}

View File

@ -9,7 +9,7 @@
, cppunit
, orc
, boost
, log4cpp
, spdlog
, mpir
, doxygen
, python
@ -18,6 +18,8 @@
, fftwFloat
, alsa-lib
, libjack2
, libiio
, libad9361
, CoreAudio
, uhd
, SDL
@ -45,14 +47,14 @@
, overrideSrc ? {}
, pname ? "gnuradio"
, versionAttr ? {
major = "3.9";
minor = "5";
major = "3.10";
minor = "0";
patch = "0";
}
}:
let
sourceSha256 = "sha256-TWCXLoS+ImKNd2zkxMks4FXsQMvGKgcW5/MW8S1Y1TY=";
sourceSha256 = "sha256-1K8nlNiirks3MJ+9cH9bkILVFtu5OxhKkNhetGqojn4=";
featuresInfo = {
# Needed always
basic = {
@ -64,7 +66,7 @@ let
runtime = [
volk
boost
log4cpp
spdlog
mpir
]
# when gr-qtgui is disabled, icu needs to be included, otherwise
@ -171,6 +173,22 @@ let
gr-channels = {
cmakeEnableFlag = "GR_CHANNELS";
};
gr-pdu = {
cmakeEnableFlag = "GR_PDU";
runtime = [
libiio
libad9361
];
};
gr-iio = {
cmakeEnableFlag = "GR_IIO";
runtime = [
libiio
];
};
common-precompiled-headers = {
cmakeEnableFlag = "COMMON_PCH";
};
gr-qtgui = {
runtime = [ qt5.qtbase libsForQt5.qwt ];
pythonRuntime = [ python.pkgs.pyqt5 ];

View File

@ -1,4 +1,4 @@
{ i3lock-color, lib, fetchFromGitHub }:
{ i3lock-color, lib, stdenv, fetchFromGitHub }:
i3lock-color.overrideAttrs (oldAttrs : rec {
pname = "i3lock-blur";
@ -17,5 +17,6 @@ i3lock-color.overrideAttrs (oldAttrs : rec {
license = licenses.bsd3;
maintainers = with maintainers; [ dan4ik605743 ];
platforms = platforms.all;
broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/i3lock-blur.x86_64-darwin
};
})

View File

@ -21,9 +21,9 @@
# : lines
, postInstall
# : list Maintainer
, maintainers ? []
, maintainers ? [ ]
# : passtrhu arguments (e.g. tests)
, passthru ? {}
, passthru ? { }
}:
@ -54,7 +54,8 @@ let
"CONTRIBUTING"
];
in stdenv.mkDerivation {
in
stdenv.mkDerivation {
inherit pname version;
src = fetchurl {
@ -73,8 +74,8 @@ in stdenv.mkDerivation {
# This might not hold for e.g. BSD.
"--with-sysdep-devurandom=yes"
(if stdenv.isDarwin
then "--disable-shared"
else "--enable-shared")
then "--disable-shared"
else "--enable-shared")
]
# On darwin, the target triplet from -dumpmachine includes version number,
# but skarnet.org software uses the triplet to test binary compatibility.
@ -82,10 +83,12 @@ in stdenv.mkDerivation {
# binary built on a different version of darwin.
# http://www.skarnet.org/cgi-bin/archive.cgi?1:mss:623:heiodchokfjdkonfhdph
++ (lib.optional stdenv.isDarwin
"--build=${stdenv.hostPlatform.system}");
"--build=${stdenv.hostPlatform.system}");
inherit postConfigure;
makeFlags = lib.optional stdenv.cc.isClang [ "AR=${stdenv.cc.targetPrefix}ar" "RANLIB=${stdenv.cc.targetPrefix}ranlib" ];
# TODO(Profpatsch): ensure that there is always a $doc output!
postInstall = ''
echo "Cleaning & moving common files"

View File

@ -0,0 +1,42 @@
{ mkDerivation
, lib
, fetchFromGitHub
, cmake
, extra-cmake-modules
, kdecoration
, plasma-workspace
, qtbase
, qt5
}:
mkDerivation rec {
pname = "lightly-qt";
version = "0.4.1";
src = fetchFromGitHub {
owner = "Luwx";
repo = "Lightly";
rev = "v${version}";
sha256 = "0qkjzgjplgwczhk6959iah4ilvazpprv7yb809jy75kkp1jw8mwk";
};
buildInputs = [
kdecoration
plasma-workspace
qtbase
qt5.qtx11extras
];
nativeBuildInputs = [
cmake
extra-cmake-modules
];
meta = with lib; {
description = "A fork of breeze theme style that aims to be visually modern and minimalistic";
homepage = "https://github.com/Luwx/Lightly";
license = licenses.gpl2Plus;
maintainers = [ maintainers.pwoelfel ];
platforms = platforms.all;
};
}

View File

@ -22,11 +22,11 @@
}:
let
version = "11.50.19";
openjdk = "11.0.12";
version = "11.52.13";
openjdk = "11.0.13";
sha256_linux = "b8e8a63b79bc312aa90f3558edbea59e71495ef1a9c340e38900dd28a1c579f3";
sha256_darwin = "9bc6874932f7f88d0a48220d3200449ddf7dc5c0e82af2df2738bc13d21b0e4e";
sha256_linux = "77a126669b26b3a89e0117b0f28cddfcd24fcd7699b2c1d35f921487148b9a9f";
sha256_darwin = "a96f9f859350f977319ebb5c2a999c182ab6b99b24c60e19d97c54367868a63e";
platform = if stdenv.isDarwin then "macosx" else "linux";
hash = if stdenv.isDarwin then sha256_darwin else sha256_linux;

View File

@ -52,6 +52,7 @@ mkDerivation {
pname = "gr-grnet";
version = version.name;
inherit src;
disabledForGRafter = "3.10";
buildInputs = [
boost

View File

@ -20,7 +20,6 @@ let
version = {
"3.7" = "2.0.0";
"3.8" = "3.0.1";
"3.9" = null;
}.${gnuradio.versionAttr.major};
src = fetchFromGitHub {
owner = "myriadrf";
@ -29,7 +28,6 @@ let
sha256 = {
"3.7" = "0ldqvfwl0gil89l9s31fjf9d7ki0dk572i8vna336igfaz348ypq";
"3.8" = "ffs+8TU0yr6IW1xZJ/abQ1CQWGZM+zYqPRJxy3ZvM9U=";
"3.9" = null;
}.${gnuradio.versionAttr.major};
};
in mkDerivation {

View File

@ -24,16 +24,14 @@
let
version = {
"3.7" = "0.1.5";
"3.8" = "0.2.2";
"3.9" = null;
"3.8" = "0.2.3";
}.${gnuradio.versionAttr.major};
src = fetchgit {
url = "git://git.osmocom.org/gr-osmosdr";
rev = "v${version}";
sha256 = {
"3.7" = "0bf9bnc1c3c4yqqqgmg3nhygj6rcfmyk6pybi27f7461d2cw1drv";
"3.8" = "HT6xlN6cJAnvF+s1g2I1uENhBJJizdADlLXeSD0rEqs=";
"3.9" = null;
"3.8" = "sha256-ZfI8MshhZOdJ1U5FlnZKXsg2Rsvb6oKg943ZVYd/IWo=";
}.${gnuradio.versionAttr.major};
};
in mkDerivation {

View File

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "lunatic";
version = "0.7.0";
version = "0.7.4";
src = fetchFromGitHub {
owner = "lunatic-solutions";
repo = pname;
rev = "v${version}";
sha256 = "sha256-+4014p+4QJ7nytFHHszAOYQHXLYXqR+Cip+vHxsH9l8=";
sha256 = "sha256-RX8JarGpY6dhPGpvOX1FuUjirEPff0wGqLkGFxOa+bc=";
};
cargoSha256 = "sha256-RnaAiumTP4cW2eHUbnwyPdgJQLK65gqDI/NP2SOrO4E=";
cargoSha256 = "sha256-UvrDqxaZSgUJ/a6abigTuiUOfw+C7UolBApt5kVR+yo=";
nativeBuildInputs = [ cmake ];

View File

@ -30,6 +30,15 @@
let
version = "2019.1.0";
# TODO: test with newer pytest
pytest = pythonPackages.callPackage
../../../../python2-modules/pytest {
# hypothesis tests require pytest that causes dependency cycle
hypothesis = pythonPackages.hypothesis.override {
doCheck = false;
};
};
dijitso = pythonPackages.buildPythonPackage {
pname = "dijitso";
inherit version;

View File

@ -1,199 +0,0 @@
{ stdenv, lib, fetchgit, fetchFromGitHub, gyp, readline, python, which, icu
, patchelf, coreutils, xcbuild
, doCheck ? false
, static ? false
}:
assert readline != null;
let
arch = if stdenv.isx86_64 then "x64"
else if stdenv.isi686 then "ia32"
else if stdenv.isAarch64 then "arm64"
else if stdenv.isAarch32 then "arm"
else throw "Unknown architecture for v8";
git_url = "https://chromium.googlesource.com";
clangFlag = if stdenv.isDarwin then "1" else "0";
sharedFlag = if static then "static_library" else "shared_library";
deps = {
build = fetchgit {
url = "${git_url}/chromium/src/build.git";
rev = "2c67d4d74b6b3673228fab191918500a582ef3b0";
sha256 = "0jc7hci5yh792pw0ahjfxrk5xzllnlrv9llmwlgcgn2x8x6bn34q";
};
"tools/gyp" = fetchgit {
url = "${git_url}/external/gyp.git";
rev = "e7079f0e0e14108ab0dba58728ff219637458563";
sha256 = "0yd1ds13z0r9d2sb67f9i1gjn1zgzwyfv96qqqp6pn5pcfbialg6";
};
"third_party/icu" = fetchgit {
url = "${git_url}/chromium/deps/icu.git";
rev = "b5ecbb29a26532f72ef482569b223d5a51fd50bf";
sha256 = "0ld47wdnk8grcba221z67l3pnphv9zwifk4y44f5b946w3iwmpns";
};
buildtools = fetchgit {
url = "${git_url}/chromium/buildtools.git";
rev = "60f7f9a8b421ebf9a46041dfa2ff11c0fe59c582";
sha256 = "0i10bw7yhslklqwcx5krs3k05sicb73cpwd0mkaz96yxsvmkvjq0";
};
"base/trace_event/common" = fetchgit {
url = "${git_url}/chromium/src/base/trace_event/common.git";
rev = "315bf1e2d45be7d53346c31cfcc37424a32c30c8";
sha256 = "1pp2ygvp20j6g4868hrmiw0j704kdvsi9d9wx2gbk7w79rc36695";
};
"platform/inspector_protocol" = fetchgit {
url = "${git_url}/chromium/src/third_party/WebKit/Source/platform/inspector_protocol.git";
rev = "f49542089820a34a9a6e33264e09b73779407512";
sha256 = "1lwpass3p4rpp2kjmxxxpkqyv4lznxhf4i0yy7mmrd7jkpc7kn8k";
};
"tools/mb" = fetchgit {
url = "${git_url}/chromium/src/tools/mb.git";
rev = "0c4dc43c454f26936ddf3074ab8e9a41e3dc03a3";
sha256 = "0f96qphbmwn1pprv0a6xf68p01s1jzx2sz6pmadqbrs1dgh1xwnk";
};
"tools/swarming_client" = fetchgit {
url = "${git_url}/external/swarming.client.git";
rev = "7f63a272f7d9785ce41b6d10bb3106c49a968e57";
sha256 = "1pmb8bq4qifjf2dzz8c4jdwhlvwgrl9ycjaalcyh1sbh4lx3yvv2";
};
"testing/gtest" = fetchgit {
url = "${git_url}/external/github.com/google/googletest.git";
rev = "6f8a66431cb592dad629028a50b3dd418a408c87";
sha256 = "0bdba2lr6pg15bla9600zg0r0vm4lnrx0wqz84p376wfdxra24vw";
};
"testing/gmock" = fetchgit {
url = "${git_url}/external/googlemock.git";
rev = "0421b6f358139f02e102c9c332ce19a33faf75be";
sha256 = "1xiky4v98maxs8fg1avcd56y0alv3hw8qyrlpd899zgzbq2k10pp";
};
"test/benchmarks/data" = fetchgit {
url = "${git_url}/v8/deps/third_party/benchmarks.git";
rev = "05d7188267b4560491ff9155c5ee13e207ecd65f";
sha256 = "0ad2ay14bn67d61ks4dmzadfnhkj9bw28r4yjdjjyzck7qbnzchl";
};
"test/mozilla/data" = fetchgit {
url = "${git_url}/v8/deps/third_party/mozilla-tests.git";
rev = "f6c578a10ea707b1a8ab0b88943fe5115ce2b9be";
sha256 = "0rfdan76yfawqxbwwb35aa57b723j3z9fx5a2w16nls02yk2kqyn";
};
"test/simdjs/data" = fetchgit {
url = "${git_url}/external/github.com/tc39/ecmascript_simd.git";
rev = "baf493985cb9ea7cdbd0d68704860a8156de9556";
sha256 = "178r0k40a58c1187gfzqz2i6as34l8cliy1g1x870wyy0qcvlq2q";
};
"test/test262/data" = fetchgit {
url = "${git_url}/external/github.com/tc39/test262.git";
rev = "88bc7fe7586f161201c5f14f55c9c489f82b1b67";
sha256 = "0gc7fmaqrgwb6rl02jnrm3synpwzzg0dfqy3zm386r1qcisl93xs";
};
"test/test262/harness" = fetchgit {
url = "${git_url}/external/github.com/test262-utils/test262-harness-py.git";
rev = "cbd968f54f7a95c6556d53ba852292a4c49d11d8";
sha256 = "094c3600a4wh1m3fvvlivn290kik1pzzvwabq77lk8bh4jkkv7ki";
};
"tools/clang" = fetchgit {
url = "${git_url}/chromium/src/tools/clang.git";
rev = "496622ab4aaa5be7e5a9b80617013cb02f45dc87";
sha256 = "1gkhk2bzpxwzkirzcqfixxpprbr8mn6rk00krm25daarm3smydmf";
};
};
in
stdenv.mkDerivation rec {
pname = "v8";
version = "5.4.232";
inherit doCheck;
src = fetchFromGitHub {
owner = "v8";
repo = "v8";
rev = version;
sha256 = "1nqxbkz75m8xrjih0sj3f3iqvif4192vxdaxzy8r787rihjwg9nx";
};
postUnpack = ''
${lib.concatStringsSep "\n" (
lib.mapAttrsToList (n: v: ''
mkdir -p $sourceRoot/${n}
cp -r ${v}/* $sourceRoot/${n}
'') deps)}
'';
# Patch based off of:
# https://github.com/cowboyd/libv8/tree/v5.1.281.67.0/patches
patches = lib.optional (!doCheck) ./libv8-5.4.232.patch;
postPatch = ''
sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,' gypfiles/gyp_v8
sed -i 's,/bin/echo,${coreutils}/bin/echo,' gypfiles/standalone.gypi
sed -i '/CR_CLANG_REVISION/ d' gypfiles/standalone.gypi
sed -i 's/-Wno-format-pedantic//g' gypfiles/standalone.gypi
'';
configurePhase = ''
PYTHONPATH="tools/generate_shim_headers:$PYTHONPATH" \
PYTHONPATH="$(toPythonPath ${gyp}):$PYTHONPATH" \
gypfiles/gyp_v8 \
-f make \
--generator-output="out" \
-Dflock_index=0 \
-Dclang=${clangFlag} \
-Dv8_enable_i18n_support=1 \
-Duse_system_icu=1 \
-Dcomponent=${sharedFlag} \
-Dconsole=readline \
-Dv8_target_arch=${arch} \
-Dv8_use_external_startup_data=0
'';
nativeBuildInputs = [ which ];
buildInputs = [ readline python icu ]
++ lib.optional stdenv.isDarwin xcbuild
++ lib.optional stdenv.isLinux patchelf;
NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow -Wno-error=unused-function -Wno-error=attributes"
+ lib.optionalString stdenv.cc.isClang " -Wno-error=unused-lambda-capture";
buildFlags = [
"LINK=c++"
"-C out"
"builddir=$(CURDIR)/Release"
"BUILDTYPE=Release"
];
enableParallelBuilding = true;
dontUpdateAutotoolsGnuConfigScripts = if stdenv.isAarch64 then true else null;
# the `libv8_libplatform` target is _only_ built as a static library,
# and is expected to be statically linked in when needed.
# see the following link for further commentary:
# https://github.com/cowboyd/therubyracer/issues/391
installPhase = ''
install -vD out/Release/d8 "$out/bin/d8"
install -vD out/Release/mksnapshot "$out/bin/mksnapshot"
${if static then ""
else if stdenv.isDarwin then ''
install -vD out/Release/libv8.dylib "$out/lib/libv8.dylib"
install_name_tool -change /usr/local/lib/libv8.dylib $out/lib/libv8.dylib -change /usr/lib/libgcc_s.1.dylib ${stdenv.cc.cc.lib}/lib/libgcc_s.1.dylib $out/bin/d8
install_name_tool -id $out/lib/libv8.dylib -change /usr/lib/libgcc_s.1.dylib ${stdenv.cc.cc.lib}/lib/libgcc_s.1.dylib $out/lib/libv8.dylib
'' else ''
install -vD out/Release/lib.target/libv8.so "$out/lib/libv8.so"
''}
mkdir -p "$out/include"
cp -vr include/*.h "$out/include"
cp -vr include/libplatform "$out/include"
mkdir -p "$out/lib"
cp -v out/Release/*.a "$out/lib"
'';
meta = with lib; {
description = "Google's open source JavaScript engine";
maintainers = with maintainers; [ cstrahan proglodyte ];
platforms = platforms.linux ++ platforms.darwin;
license = licenses.bsd3;
};
}

View File

@ -0,0 +1,169 @@
{ stdenv, lib, fetchgit, fetchFromGitHub
, gn, ninja, python3, glib, pkg-config, icu
, xcbuild, darwin
, fetchpatch
}:
# Use update.sh to update all checksums.
let
version = "8.8.278.14";
v8Src = fetchgit {
url = "https://chromium.googlesource.com/v8/v8";
rev = version;
sha256 = "0w6zldyas9w6p394876ssn3pnr5rjzjy1a5dcsmdkfj51m4rlg8m";
};
git_url = "https://chromium.googlesource.com";
# This data is from the DEPS file in the root of a V8 checkout.
deps = {
"base/trace_event/common" = fetchgit {
url = "${git_url}/chromium/src/base/trace_event/common.git";
rev = "eb94f1c7aa96207f469008f29989a43feb2718f8";
sha256 = "14gym38ncc9cysknv3jrql7jvcpjxf2d1dh4m8jgqb967jyzy5cj";
};
"build" = fetchgit {
url = "${git_url}/chromium/src/build.git";
rev = "2101eff1ac4bfd25f2dfa71ad632a600a38c1ed9";
sha256 = "0i3xcwzi4pkv4xpgjkbmcpj5h6mji80zqskkx0jx3sx0ji63fylz";
};
"third_party/googletest/src" = fetchgit {
url = "${git_url}/external/github.com/google/googletest.git";
rev = "4fe018038f87675c083d0cfb6a6b57c274fb1753";
sha256 = "1ilm9dmnm2v4y6l1wyfsajsbqv56j29ldfbpd0ykg4q90gpxz201";
};
"third_party/icu" = fetchgit {
url = "${git_url}/chromium/deps/icu.git";
rev = "c2a4cae149aae7fd30c4cbe3cf1b30df03b386f1";
sha256 = "0lgzxf7hmfsgqazs74v5li9ifg8r0jx5m3gxh1mnw33vpwp7qqf4";
};
"third_party/zlib" = fetchgit {
url = "${git_url}/chromium/src/third_party/zlib.git";
rev = "e84c9a3fd75fdc39055b7ae27d6ec508e50bd39e";
sha256 = "03z30djnb3srhd0nvlxvx58sjqm2bvxk7j3vp4fk6h7a0sa2bdpi";
};
"third_party/jinja2" = fetchgit {
url = "${git_url}/chromium/src/third_party/jinja2.git";
rev = "a82a4944a7f2496639f34a89c9923be5908b80aa";
sha256 = "02mkjwkrzhrg16zx97z792l0faz7gc8vga8w10r5y94p98jymnyz";
};
"third_party/markupsafe" = fetchgit {
url = "${git_url}/chromium/src/third_party/markupsafe.git";
rev = "0944e71f4b2cb9a871bcbe353f95e889b64a611a";
sha256 = "052ij8i7nkqchbvzv6ykj929hvfxjbzq7az2l01r0l2gfazhvdb9";
};
};
# See `gn_version` in DEPS.
gnSrc = fetchgit {
url = "https://gn.googlesource.com/gn";
rev = "53d92014bf94c3893886470a1c7c1289f8818db0";
sha256 = "1xcm07qjk6m2czi150fiqqxql067i832adck6zxrishm70c9jbr9";
};
myGn = gn.overrideAttrs (oldAttrs: {
version = "for-v8";
src = gnSrc;
});
in
stdenv.mkDerivation rec {
pname = "v8";
inherit version;
doCheck = true;
patches = [
./darwin.patch
];
src = v8Src;
postUnpack = ''
${lib.concatStringsSep "\n" (
lib.mapAttrsToList (n: v: ''
mkdir -p $sourceRoot/${n}
cp -r ${v}/* $sourceRoot/${n}
'') deps)}
chmod u+w -R .
'';
postPatch = ''
${lib.optionalString stdenv.isAarch64 ''
substituteInPlace build/toolchain/linux/BUILD.gn \
--replace 'toolprefix = "aarch64-linux-gnu-"' 'toolprefix = ""'
''}
${lib.optionalString stdenv.isDarwin ''
substituteInPlace build/config/compiler/compiler.gni \
--replace 'strip_absolute_paths_from_debug_symbols = true' \
'strip_absolute_paths_from_debug_symbols = false'
substituteInPlace build/config/compiler/BUILD.gn \
--replace 'current_toolchain == host_toolchain || !use_xcode_clang' \
'false'
''}
echo 'checkout_google_benchmark = false' > build/config/gclient_args.gni
'';
gnFlags = [
"use_custom_libcxx=false"
"is_clang=${lib.boolToString stdenv.cc.isClang}"
"use_sysroot=false"
# "use_system_icu=true"
"clang_use_chrome_plugins=false"
"is_component_build=false"
"v8_use_external_startup_data=false"
"v8_monolithic=true"
"is_debug=true"
"is_official_build=false"
"treat_warnings_as_errors=false"
"v8_enable_i18n_support=true"
"use_gold=false"
# ''custom_toolchain="//build/toolchain/linux/unbundle:default"''
''host_toolchain="//build/toolchain/linux/unbundle:default"''
''v8_snapshot_toolchain="//build/toolchain/linux/unbundle:default"''
] ++ lib.optional stdenv.cc.isClang ''clang_base_path="${stdenv.cc}"'';
NIX_CFLAGS_COMPILE = "-O2";
FORCE_MAC_SDK_MIN = stdenv.targetPlatform.sdkVer or "10.12";
nativeBuildInputs = [
myGn
ninja
pkg-config
python3
] ++ lib.optionals stdenv.isDarwin [
xcbuild
darwin.DarwinTools
python3.pkgs.setuptools
];
buildInputs = [ glib icu ];
ninjaFlags = [ ":d8" "v8_monolith" ];
enableParallelBuilding = true;
installPhase = ''
install -D d8 $out/bin/d8
install -D -m644 obj/libv8_monolith.a $out/lib/libv8.a
install -D -m644 icudtl.dat $out/share/v8/icudtl.dat
cp -r ../../include $out
mkdir -p $out/lib/pkgconfig
cat > $out/lib/pkgconfig/v8.pc << EOF
Name: v8
Description: V8 JavaScript Engine
Version: ${version}
Libs: -L$out/lib -lv8 -pthread
Cflags: -I$out/include
EOF
'';
meta = with lib; {
description = "Google's open source JavaScript engine";
maintainers = with maintainers; [ cstrahan proglodyte matthewbauer ];
platforms = platforms.unix;
license = licenses.bsd3;
};
}

View File

@ -1,75 +1,85 @@
{ stdenv, lib, fetchgit, fetchFromGitHub
, gn, ninja, python, pythonPackages, glib, pkg-config, icu
, gn, ninja, python3, glib, pkg-config, icu
, xcbuild, darwin
, fetchpatch
}:
# Use update.sh to update all checksums.
let
version = "9.7.106.18";
v8Src = fetchgit {
url = "https://chromium.googlesource.com/v8/v8";
rev = version;
sha256 = "0cb3w733w1xn6zq9dsr43nx6llcg9hrmb2dkxairarj9c0igpzyh";
};
git_url = "https://chromium.googlesource.com";
# This data is from the DEPS file in the root of a V8 checkout
# This data is from the DEPS file in the root of a V8 checkout.
deps = {
"base/trace_event/common" = fetchgit {
url = "${git_url}/chromium/src/base/trace_event/common.git";
rev = "dab187b372fc17e51f5b9fad8201813d0aed5129";
sha256 = "0dmpj9hj4xv3xb0fl1kb9hm4bhpbs2s5csx3z8cgjd5vwvhdzig4";
rev = "7f36dbc19d31e2aad895c60261ca8f726442bfbb";
sha256 = "01b2fhbxznqbakxv42ivrzg6w8l7i9yrd9nf72d6p5xx9dm993j4";
};
build = fetchgit {
"build" = fetchgit {
url = "${git_url}/chromium/src/build.git";
rev = "26e9d485d01d6e0eb9dadd21df767a63494c8fea";
sha256 = "1jjvsgj0cs97d26i3ba531ic1f9gqan8x7z4aya8yl8jx02l342q";
rev = "cf325916d58a194a935c26a56fcf6b525d1e2bf4";
sha256 = "1ix4h1cpx9bvgln8590xh7lllhsd9w1hd5k9l1gx5yxxrmywd3s4";
};
"third_party/googletest/src" = fetchgit {
url = "${git_url}/external/github.com/google/googletest.git";
rev = "e3f0319d89f4cbf32993de595d984183b1a9fc57";
sha256 = "18xz71l2xjrqsc0q317whgw4xi1i5db24zcj7v04f5g6r1hyf1a5";
rev = "16f637fbf4ffc3f7a01fa4eceb7906634565242f";
sha256 = "11012k3c3mxzdwcw2iparr9lrckafpyhqzclsj26hmfbgbdi0rrh";
};
"third_party/icu" = fetchgit {
url = "${git_url}/chromium/deps/icu.git";
rev = "f2223961702f00a8833874b0560d615a2cc42738";
sha256 = "0z5p53kbrjfkjn0i12dpk55cp8976j2zk7a4wk88423s2c5w87zl";
};
"third_party/jinja2" = fetchgit {
url = "${git_url}/chromium/src/third_party/jinja2.git";
rev = "b41863e42637544c2941b574c7877d3e1f663e25";
sha256 = "1qgilclkav67m6cl2xq2kmzkswrkrb2axc2z8mw58fnch4j1jf1r";
};
"third_party/markupsafe" = fetchgit {
url = "${git_url}/chromium/src/third_party/markupsafe.git";
rev = "8f45f5cfa0009d2a70589bcda0349b8cb2b72783";
sha256 = "168ppjmicfdh4i1l0l25s86mdbrz9fgxmiq1rx33x79mph41scfz";
rev = "eedbaf76e49d28465d9119b10c30b82906e606ff";
sha256 = "0mppvx7wf9zlqjsfaa1cf06brh1fjb6nmiib0lhbb9hd55mqjdjj";
};
"third_party/zlib" = fetchgit {
url = "${git_url}/chromium/src/third_party/zlib.git";
rev = "156be8c52f80cde343088b4a69a80579101b6e67";
sha256 = "0hxbkkzmlv714fjq2jlp5dd2jc339xyh6gkjx1sz3srwv33mlk92";
rev = "6da1d53b97c89b07e47714d88cab61f1ce003c68";
sha256 = "0v7ylmbwfwv6w6wp29qdf77kjjnfr2xzin08n0v1yvbhs01h5ppy";
};
"third_party/jinja2" = fetchgit {
url = "${git_url}/chromium/src/third_party/jinja2.git";
rev = "ee69aa00ee8536f61db6a451f3858745cf587de6";
sha256 = "1fsnd5h0gisfp8bdsfd81kk5v4mkqf8z368c7qlm1qcwc4ri4x7a";
};
"third_party/markupsafe" = fetchgit {
url = "${git_url}/chromium/src/third_party/markupsafe.git";
rev = "1b882ef6372b58bfd55a3285f37ed801be9137cd";
sha256 = "1jnjidbh03lhfaawimkjxbprmsgz4snr0jl06630dyd41zkdw5kr";
};
};
# See `gn_version` in DEPS.
gnSrc = fetchgit {
url = "https://gn.googlesource.com/gn";
rev = "8926696a4186279489cc2b8d768533e61bba73d7";
sha256 = "1084lnyb0a1khbgjvak05fcx6jy973wqvsf77n0alxjys18sg2yk";
};
myGn = gn.overrideAttrs (oldAttrs: {
version = "for-v8";
src = gnSrc;
});
in
stdenv.mkDerivation rec {
pname = "v8";
version = "8.4.255";
inherit version;
doCheck = true;
patches = [
# Remove unrecognized clang debug flags
(fetchpatch {
url = "https://raw.githubusercontent.com/saiarcot895/chromium-ubuntu-build/663dbfc492fd2f8ba28d9af40fb3b1327e6aa56e/debian/patches/revert-Xclang-instcombine-lower-dbg-declare.patch";
sha256 = "07qp4bjgbwbdrzqslvl2bgbzr3v97b9isbp0539x3lc8cy3h02g1";
})
./darwin.patch
./gcc_arm.patch # Fix building zlib with gcc on aarch64, from https://gist.github.com/Adenilson/d973b6fd96c7709d33ddf08cf1dcb149
];
src = fetchFromGitHub {
owner = "v8";
repo = "v8";
rev = version;
sha256 = "07ymw4kqbz7kv311gpk5bs5q90wj73n2q7jkyfhqk4hvhs1q5bw7";
};
src = v8Src;
postUnpack = ''
${lib.concatStringsSep "\n" (
@ -80,16 +90,20 @@ stdenv.mkDerivation rec {
chmod u+w -R .
'';
postPatch = lib.optionalString stdenv.isAarch64 ''
substituteInPlace build/toolchain/linux/BUILD.gn \
--replace 'toolprefix = "aarch64-linux-gnu-"' 'toolprefix = ""'
'' + lib.optionalString stdenv.isDarwin ''
substituteInPlace build/config/compiler/compiler.gni \
--replace 'strip_absolute_paths_from_debug_symbols = true' \
'strip_absolute_paths_from_debug_symbols = false'
substituteInPlace build/config/compiler/BUILD.gn \
--replace 'current_toolchain == host_toolchain || !use_xcode_clang' \
'false'
postPatch = ''
${lib.optionalString stdenv.isAarch64 ''
substituteInPlace build/toolchain/linux/BUILD.gn \
--replace 'toolprefix = "aarch64-linux-gnu-"' 'toolprefix = ""'
''}
${lib.optionalString stdenv.isDarwin ''
substituteInPlace build/config/compiler/compiler.gni \
--replace 'strip_absolute_paths_from_debug_symbols = true' \
'strip_absolute_paths_from_debug_symbols = false'
substituteInPlace build/config/compiler/BUILD.gn \
--replace 'current_toolchain == host_toolchain || !use_xcode_clang' \
'false'
''}
touch build/config/gclient_args.gni
'';
gnFlags = [
@ -106,7 +120,6 @@ stdenv.mkDerivation rec {
"treat_warnings_as_errors=false"
"v8_enable_i18n_support=true"
"use_gold=false"
"init_stack_vars=false"
# ''custom_toolchain="//build/toolchain/linux/unbundle:default"''
''host_toolchain="//build/toolchain/linux/unbundle:default"''
''v8_snapshot_toolchain="//build/toolchain/linux/unbundle:default"''
@ -116,14 +129,14 @@ stdenv.mkDerivation rec {
FORCE_MAC_SDK_MIN = stdenv.targetPlatform.sdkVer or "10.12";
nativeBuildInputs = [
gn
myGn
ninja
pkg-config
python
python3
] ++ lib.optionals stdenv.isDarwin [
xcbuild
darwin.DarwinTools
pythonPackages.setuptools
python3.pkgs.setuptools
];
buildInputs = [ glib icu ];
@ -133,7 +146,8 @@ stdenv.mkDerivation rec {
installPhase = ''
install -D d8 $out/bin/d8
install -D obj/libv8_monolith.a $out/lib/libv8.a
install -D -m644 obj/libv8_monolith.a $out/lib/libv8.a
install -D -m644 icudtl.dat $out/share/v8/icudtl.dat
cp -r ../../include $out
mkdir -p $out/lib/pkgconfig

View File

@ -1,31 +0,0 @@
diff --git a/third_party/zlib/contrib/optimizations/insert_string.h b/third_party/zlib/contrib/optimizations/insert_string.h
index 1826601..d123305 100644
--- a/third_party/zlib/contrib/optimizations/insert_string.h
+++ b/third_party/zlib/contrib/optimizations/insert_string.h
@@ -26,15 +26,23 @@
#define _cpu_crc32_u32 _mm_crc32_u32
#elif defined(CRC32_ARMV8_CRC32)
- #if defined(__clang__)
+ #if defined(__GNUC__) || defined(__clang__)
#undef TARGET_CPU_WITH_CRC
- #define __crc32cw __builtin_arm_crc32cw
+ #if defined(__clang__)
+ #define __crc32cw __builtin_arm_crc32cw
+ #elif defined(__GNUC__)
+ #define __crc32cw __builtin_aarch64_crc32cw
+ #endif
#endif
#define _cpu_crc32_u32 __crc32cw
#if defined(__aarch64__)
- #define TARGET_CPU_WITH_CRC __attribute__((target("crc")))
+ #if defined(__clang__)
+ #define TARGET_CPU_WITH_CRC __attribute__((target("crc")))
+ #elif defined(__GNUC__)
+ #define TARGET_CPU_WITH_CRC __attribute__((target("+crc")))
+ #endif
#else // !defined(__aarch64__)
#define TARGET_CPU_WITH_CRC __attribute__((target("armv8-a,crc")))
#endif // defined(__aarch64__)

View File

@ -1,97 +0,0 @@
From c9f42d1314c6026efcfcc01824f4e2fdfd05ebcf Mon Sep 17 00:00:00 2001
From: Ben Sklaroff <bsklaroff@gmail.com>
Date: Sat, 23 Jul 2016 18:16:55 -0400
Subject: [PATCH] libv8-5.4.232
---
Makefile | 5 +----
gypfiles/all.gyp | 32 --------------------------------
gypfiles/standalone.gypi | 5 ++++-
3 files changed, 5 insertions(+), 37 deletions(-)
diff --git a/Makefile b/Makefile
index 5ea5c58..d1b2d73 100644
--- a/Makefile
+++ b/Makefile
@@ -261,11 +261,8 @@ GYPFILES = third_party/icu/icu.gypi third_party/icu/icu.gyp \
gypfiles/shim_headers.gypi gypfiles/features.gypi \
gypfiles/standalone.gypi \
gypfiles/toolchain.gypi gypfiles/all.gyp gypfiles/mac/asan.gyp \
- test/cctest/cctest.gyp test/fuzzer/fuzzer.gyp \
- test/unittests/unittests.gyp src/v8.gyp \
- tools/parser-shell.gyp testing/gmock.gyp testing/gtest.gyp \
buildtools/third_party/libc++abi/libc++abi.gyp \
- buildtools/third_party/libc++/libc++.gyp samples/samples.gyp \
+ buildtools/third_party/libc++/libc++.gyp \
src/third_party/vtune/v8vtune.gyp src/d8.gyp
# If vtunejit=on, the v8vtune.gyp will be appended.
diff --git a/gypfiles/all.gyp b/gypfiles/all.gyp
index ff1bea4..96820a0 100644
--- a/gypfiles/all.gyp
+++ b/gypfiles/all.gyp
@@ -16,38 +16,6 @@
'../tools/parser-shell.gyp:parser-shell',
],
}],
- # These items don't compile for Android on Mac.
- ['host_os!="mac" or OS!="android"', {
- 'dependencies': [
- '../samples/samples.gyp:*',
- '../test/cctest/cctest.gyp:*',
- '../test/fuzzer/fuzzer.gyp:*',
- '../test/unittests/unittests.gyp:*',
- ],
- }],
- ['test_isolation_mode != "noop"', {
- 'dependencies': [
- '../test/bot_default.gyp:*',
- '../test/benchmarks/benchmarks.gyp:*',
- '../test/default.gyp:*',
- '../test/ignition.gyp:*',
- '../test/intl/intl.gyp:*',
- '../test/message/message.gyp:*',
- '../test/mjsunit/mjsunit.gyp:*',
- '../test/mozilla/mozilla.gyp:*',
- '../test/optimize_for_size.gyp:*',
- '../test/perf.gyp:*',
- '../test/preparser/preparser.gyp:*',
- '../test/simdjs/simdjs.gyp:*',
- '../test/test262/test262.gyp:*',
- '../test/webkit/webkit.gyp:*',
- '../tools/check-static-initializers.gyp:*',
- '../tools/gcmole/run_gcmole.gyp:*',
- '../tools/jsfunfuzz/jsfunfuzz.gyp:*',
- '../tools/run-deopt-fuzzer.gyp:*',
- '../tools/run-valgrind.gyp:*',
- ],
- }],
]
}
]
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
index 89f06a0..a43976d 100644
--- a/gypfiles/standalone.gypi
+++ b/gypfiles/standalone.gypi
@@ -506,6 +506,9 @@
}], # fastbuild!=0
],
'target_conditions': [
+ ['_type=="static_library"', {
+ 'standalone_static_library': 1,
+ }],
['v8_code == 0', {
'defines!': [
'DEBUG',
@@ -770,7 +773,7 @@
[ 'visibility=="hidden" and v8_enable_backtrace==0', {
'cflags': [ '-fvisibility=hidden' ],
}],
- [ 'component=="shared_library"', {
+ [ 'component=="shared_library" or component=="static_library" and (v8_target_arch=="x64" or v8_target_arch=="arm64" or v8_target_arch=="arm")', {
'cflags': [ '-fPIC', ],
}],
[ 'clang==0 and coverage==1', {
--
2.9.0

View File

@ -1,29 +1,45 @@
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p curl -p nix-prefetch-git
#! nix-shell -i bash -p curl -p nix-prefetch-git -p jq
VERSION_OVERVIEW=https://omahaproxy.appspot.com/all?os=linux
TARGET_CHANNEL=beta
FILE_PATH=6_x.nix
TARGET_CHANNEL=stable
set -eo pipefail
v8_version=$(curl -s "$VERSION_OVERVIEW" | awk -F "," "\$2 ~ /${TARGET_CHANNEL}/ { print \$11 }")
if [ -n "$1" ]; then
v8_version="$1"
shift
else
v8_version=$(curl -s "$VERSION_OVERVIEW" | awk -F "," "\$2 ~ /${TARGET_CHANNEL}/ { print \$11 }")
fi
if [ -n "$1" ]; then
file_path="$1"
else
file_path=default.nix
fi
echo "Using V8 version --> $v8_version"
sed -e "s#\\(version = \\)\"[0-9\.]*\"#\1\"$v8_version\"#" -i ${FILE_PATH}
sha256=$(nix-prefetch-git --no-deepClone https://github.com/v8/v8.git "refs/tags/${v8_version}" \
| sed -ne '/sha256/ { s#.*: "\(.*\)".*#\1#; p }')
sed -e "/repo = \"v8\"/ { n;n; s#\".*\"#\"${sha256}\"# }" -i ${FILE_PATH}
prefetched=$(nix-prefetch-git --no-deepClone https://chromium.googlesource.com/v8/v8 "refs/tags/${v8_version}")
deps="$(mktemp)"
path=$(echo "$prefetched" | jq -r .path)
sha256=$(echo "$prefetched" | jq -r .sha256)
sed -e "s#\\(version = \\)\"[0-9\.]*\"#\1\"$v8_version\"#" -i ${file_path}
sed -e "/v8Src = fetchgit/ { n; n; n; s/\".*\"/\"${sha256}\"/ }" -i ${file_path}
curl -s -o "$deps" "https://raw.githubusercontent.com/v8/v8/${v8_version}/DEPS"
echo $deps
deps="$path/DEPS"
sed -ne '/= fetchgit {/ { s/.*"\(.*\)".*/\1/; p }' < ${FILE_PATH} | while read dep; do
echo "$deps"
echo "Processing gn"
gn_rev=$(sed -ne "s/.*'gn_version': 'git_revision:\([^']*\).*/\1/p" < "$deps")
gn_sha256=$(nix-prefetch-git --no-deepClone https://gn.googlesource.com/gn "$gn_rev" 2>/dev/null | jq -r .sha256)
sed -e "/gnSrc = fetchgit/ { n; n; s/\".*\"/\"${gn_rev}\"/; n; s/\".*\"/\"${gn_sha256}\"/ }" -i ${file_path}
sed -ne '/" = fetchgit {/ { s/.*"\(.*\)".*/\1/; p }' < ${file_path} | while read dep; do
echo "Processing dependency --> $dep"
escaped_dep=$(echo "$dep" | sed -e 's#/#\\/#g')
dep_rev=$(sed -ne "/\"v8\/${escaped_dep}\":/ { n; s#.*+ \"##; s#\".*##; p }" "$deps")
dep_rev=$(sed -ne "/'${escaped_dep}':/ { n; s#.*+ '##; s#'.*##; p }" "$deps")
if [ "$dep_rev" = "" ]; then
echo "Failed to resolve dependency $dep, not listed in DEPS file"
@ -31,8 +47,8 @@ sed -ne '/= fetchgit {/ { s/.*"\(.*\)".*/\1/; p }' < ${FILE_PATH} | while read d
exit 2
fi
repo_url=$(sed -ne "/\"${escaped_dep}\" = fetchgit/ { n; s/.*\"\(.*\)\".*/\1/; s#\${git_url}#https://chromium.googlesource.com#; p }" ${FILE_PATH})
sha256=$(nix-prefetch-git --no-deepClone "$repo_url" "$dep_rev" 2>/dev/null | sed -ne '/sha256/ { s#.*: "\(.*\)".*#\1#; p }')
repo_url=$(sed -ne "/\"${escaped_dep}\" = fetchgit/ { n; s/.*\"\(.*\)\".*/\1/; s#\${git_url}#https://chromium.googlesource.com#; p }" ${file_path})
sha256=$(nix-prefetch-git --no-deepClone "$repo_url" "$dep_rev" 2>/dev/null | jq -r .sha256)
if [ "$sha256" = "" ]; then
echo "Failed to get sha256 via nix-prefetch-git $repo_url $dep_rev"
@ -40,8 +56,7 @@ sed -ne '/= fetchgit {/ { s/.*"\(.*\)".*/\1/; p }' < ${FILE_PATH} | while read d
exit 2
fi
sed -e "/\"${escaped_dep}\" = fetchgit/ { n; n; s/\".*\"/\"${dep_rev}\"/; n; s/\".*\"/\"${sha256}\"/ }" -i ${FILE_PATH}
sed -e "/\"${escaped_dep}\" = fetchgit/ { n; n; s/\".*\"/\"${dep_rev}\"/; n; s/\".*\"/\"${sha256}\"/ }" -i ${file_path}
done
rm -f "$deps"
echo done.

View File

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "bimmer-connected";
version = "0.8.7";
version = "0.8.10";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "bimmerconnected";
repo = "bimmer_connected";
rev = version;
hash = "sha256-nLZdaV341mULXIngkEqiLQeg4G2NDFGNg/AUozgJe74=";
hash = "sha256-xt21mcXcucUhJlqwDLrAHvQLg9++uc/cX5Sy+Sppsbo=";
};
nativeBuildInputs = [

View File

@ -12,13 +12,13 @@
buildPythonPackage rec {
pname = "doit";
version = "0.33.1";
version = "0.34.0";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "37c3b35c2151647b968b2af24481112b2f813c30f695366db0639d529190a143";
sha256 = "sha256-jvHeEFy8qTnHPoNt/4bIEskijhHthwL2lVt6CGyqwC0=";
};
propagatedBuildInputs = [ cloudpickle ]

View File

@ -7,13 +7,13 @@
buildPythonPackage rec {
pname = "drf-jwt";
version = "1.19.1";
version = "1.19.2";
src = fetchFromGitHub {
owner = "Styria-Digital";
repo = "django-rest-framework-jwt";
rev = version;
sha256 = "sha256-++8rFXVsA5WMTt+aC4di3Rpa0BAW285/qM087i9uQ0g=";
hash = "sha256-bbkk78uYTG+JTzY3AyOmEVtVSgout/TETfr5N5fUto4=";
};
propagatedBuildInputs = [

View File

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "greeclimate";
version = "1.0.1";
version = "1.0.2";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "cmroche";
repo = "greeclimate";
rev = "v${version}";
hash = "sha256-O9SaEveZntb7VWL5k1WjTDK9fXhTWFIsVh5v7NKASnQ=";
hash = "sha256-Y8IgqrU8zzV020qwyyb57Tp2j7laQ3JsCOCYBuf8vsQ=";
};
propagatedBuildInputs = [

View File

@ -40,6 +40,8 @@ buildPythonPackage rec {
disabledTests = [
# Failure seems to be related to arrow > 1.0
"test_event"
# Broke with TatSu 5.7:
"test_many_lines"
];
pythonImportsCheck = [ "ics" ];

View File

@ -1,69 +0,0 @@
{ lib
, stdenv
, buildPythonPackage
, fetchPypi
, pythonOlder
# Build dependencies
, glibcLocales
# Test dependencies
, nose
, pygments
# Runtime dependencies
, jedi
, decorator
, pickleshare
, traitlets
, prompt-toolkit
, pexpect
, appnope
, backcall
}:
buildPythonPackage rec {
pname = "ipython";
version = "7.16.1";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "9f4fcb31d3b2c533333893b9172264e4821c1ac91839500f31bd43f2c59b3ccf";
};
prePatch = lib.optionalString stdenv.isDarwin ''
substituteInPlace setup.py --replace "'gnureadline'" " "
'';
buildInputs = [ glibcLocales ];
checkInputs = [ nose pygments ];
propagatedBuildInputs = [
jedi
decorator
pickleshare
traitlets
prompt-toolkit
pygments
pexpect
backcall
] ++ lib.optionals stdenv.isDarwin [appnope];
LC_ALL="en_US.UTF-8";
doCheck = false; # Circular dependency with ipykernel
checkPhase = ''
nosetests
'';
pythonImportsCheck = [
"IPython"
];
meta = with lib; {
description = "IPython: Productive Interactive Computing";
homepage = "http://ipython.org/";
license = licenses.bsd3;
maintainers = with maintainers; [ bjornfor fridh ];
};
}

View File

@ -5,13 +5,13 @@
buildPythonPackage rec {
pname = "irc";
version = "19.0.1";
version = "20.0.0";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "99fd5d1fa1d054dee4fbb81e0d5193dc1e8200db751d5da9a97850a62162b9ab";
sha256 = "59acb8d69d61a0cbd290e77e6ff10a8c7f2201fb8c7b7d5a195b5883d0c40b0a";
};
doCheck = false;

View File

@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "meshtastic";
version = "1.2.54";
version = "1.2.56";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "meshtastic";
repo = "Meshtastic-python";
rev = version;
sha256 = "sha256-YTE0lcsPBvcTdeYRrADQjs5b8inO7+nSw2YW2xalo74=";
sha256 = "sha256-y+LX44tjE/zTwm1FNyLACu3wmkxN4ZsmYlOnfJdcFcQ=";
};
propagatedBuildInputs = [

View File

@ -1,23 +1,29 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
}:
buildPythonPackage rec {
pname = "mitogen";
version = "0.3.0";
version = "0.3.2";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "mitogen-hq";
repo = pname;
rev = "v${version}";
sha256 = "sha256-SotxlsJDIeFd4BN9C7afyyybET5ST2yaoWVEyT/lr48=";
sha256 = "sha256-ACd1z9h9RLu6Kho59L2YkXkLtBEywYbO+drUvoZaVlg=";
};
# Tests require network access and Docker support
doCheck = false;
pythonImportsCheck = [ "mitogen" ];
pythonImportsCheck = [
"mitogen"
];
meta = with lib; {
description = "Python Library for writing distributed self-replicating programs";

View File

@ -1,4 +1,4 @@
{ lib, buildPythonPackage, fetchPypi, isPy27
{ lib, buildPythonPackage, fetchPypi, isPy27, fetchpatch
, alembic
, click
, cloudpickle
@ -20,6 +20,8 @@
, sqlalchemy
, gorilla
, gunicorn
, prometheus-flask-exporter
, importlib-metadata
}:
buildPythonPackage rec {
@ -58,6 +60,17 @@ buildPythonPackage rec {
sqlalchemy
gorilla
gunicorn
prometheus-flask-exporter
importlib-metadata
];
patches = [
# Relex alembic version, https://github.com/mlflow/mlflow/pull/5245
(fetchpatch {
name = "relax-alembic-version.patch";
url = "https://github.com/mlflow/mlflow/commit/945eb4b67f315c0b2c4018b1df006fde910f115f.patch";
sha256 = "sha256-jETVEPzlNe0PvFZVOi1SwgJELfx/KCeq6REL3vl+YT0=";
})
];
meta = with lib; {
@ -65,7 +78,5 @@ buildPythonPackage rec {
description = "Open source platform for the machine learning lifecycle";
license = licenses.asl20;
maintainers = with maintainers; [ tbenst ];
# missing prometheus-flask-exporter, not packaged in nixpkgs
broken = true; # 2020-08-15
};
}

View File

@ -25,7 +25,7 @@
buildPythonPackage rec {
pname = "pikepdf";
version = "4.3.0";
version = "4.3.1";
disabled = ! isPy3k;
src = fetchFromGitHub {
@ -38,7 +38,7 @@ buildPythonPackage rec {
extraPostFetch = ''
rm "$out/.git_archival.txt"
'';
hash = "sha256-9dSJ6+rZd49rFSQExYnFBGQGZ8MnFM+z/0Iz/nYkW4E=";
hash = "sha256-u/NDDJGCcctWL3ivxtU+8CSlQH+5qkmXUcF4RkQOiPI=";
};
patches = [

View File

@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "pyTelegramBotAPI";
version = "4.2.1";
version = "4.3.0";
src = fetchPypi {
inherit pname version;
sha256 = "9a407fd58a406a53ae44ae8ff5f2edb4396be67bca3436523f791642d8561de3";
sha256 = "a0405d1c6c60e6603594e9319c28d31b97abe49afe9af21d230f5072a1d38976";
};
propagatedBuildInputs = [ aiohttp requests ];

View File

@ -20,7 +20,7 @@
buildPythonPackage rec {
pname = "pyatv";
version = "0.9.7";
version = "0.9.8";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -29,7 +29,7 @@ buildPythonPackage rec {
owner = "postlund";
repo = pname;
rev = "v${version}";
sha256 = "1ikv9m1348sjv31gch5w0sj97jlr4yjxbqfyds7alxxcm5hrhai4";
sha256 = "1ns1ys3mwi1s1b8zxcr7xgr1rfnlxwdn2fp680yi09x4d9nmnvqp";
};
propagatedBuildInputs = [

View File

@ -8,11 +8,11 @@
buildPythonPackage rec {
pname = "pybotvac";
version = "0.0.22";
version = "0.0.23";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-hl8UmoVUbbHCSpCWdUTxoIlop5di+rUmGUQI9UWq3ik=";
sha256 = "54b4fe565c10000c54d5644d081e2de1f850daefbac39cea74cea649b47bfb12";
};
propagatedBuildInputs = [

View File

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "pyhiveapi";
version = "0.4.3";
version = "0.4.6";
format = "pyproject";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "Pyhass";
repo = "Pyhiveapi";
rev = "v${version}";
sha256 = "sha256-SCMASYBOdq9nko5RSQ5BEbRLjOB4FlgwOKwdDggiOv8=";
hash = "sha256-muUVZYBUloKRnAx7H8ry72eg85GzmnpTG8M/MfKcnGM=";
};
postPatch = ''

View File

@ -5,26 +5,28 @@
, pyaes
, pysocks
, async-lru
, tgcrypto
, pytestCheckHook
, pytest-asyncio
}:
buildPythonPackage rec {
pname = "pyrogram";
version = "1.3.1";
version = "1.3.5";
disabled = pythonOlder "3.6";
src = fetchPypi {
pname = "Pyrogram";
inherit version;
sha256 = "e883c001ebf2d0f5ce6805063470c92436c493eb15547923e5d437e2c13f66cd";
hash = "sha256-51/to8ZCyK6cYWQCGWcQ07rGDR29awfxcUNnSF5vIKE=";
};
propagatedBuildInputs = [
pyaes
pysocks
async-lru
tgcrypto
];
checkInputs = [

View File

@ -1,95 +0,0 @@
{ lib, buildPythonPackage, pythonOlder, fetchPypi, isPy3k, isPyPy
, atomicwrites
, attrs
, hypothesis
, more-itertools
, packaging
, pathlib2
, pluggy
, py
, pygments
, setuptools
, setuptools-scm
, six
, toml
, wcwidth
, writeText
}:
buildPythonPackage rec {
version = "5.4.3";
pname = "pytest";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "1n67lk8iwlsmfdm8663k8l7isllg1xd3n9p1yla7885szhdk6ybr";
};
postPatch = ''
substituteInPlace setup.py \
--replace "pluggy>=0.12,<1.0" "pluggy>=0.12,<2.0"
'';
checkInputs = [ hypothesis pygments ];
nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [
atomicwrites
attrs
more-itertools
packaging
pluggy
py
setuptools
six
toml
wcwidth
] ++ lib.optionals (pythonOlder "3.6") [ pathlib2 ];
doCheck = !isPyPy; # https://github.com/pytest-dev/pytest/issues/3460
preCheck = ''
# don't test bash builtins
rm testing/test_argcomplete.py
'';
# Ignored file https://github.com/pytest-dev/pytest/pull/5605#issuecomment-522243929
checkPhase = ''
runHook preCheck
$out/bin/py.test -x testing/ -k "not test_collect_pyargs_with_testpaths" --ignore=testing/test_junitxml.py
runHook postCheck
'';
# Remove .pytest_cache when using py.test in a Nix build
setupHook = writeText "pytest-hook" ''
pytestcachePhase() {
find $out -name .pytest_cache -type d -exec rm -rf {} +
}
preDistPhases+=" pytestcachePhase"
# pytest generates it's own bytecode files to improve assertion messages.
# These files similar to cpython's bytecode files but are never laoded
# by python interpreter directly. We remove them for a few reasons:
# - files are non-deterministic: https://github.com/NixOS/nixpkgs/issues/139292
# (file headers are generatedt by pytest directly and contain timestamps)
# - files are not needed after tests are finished
pytestRemoveBytecodePhase () {
# suffix is defined at:
# https://github.com/pytest-dev/pytest/blob/5.4.3/src/_pytest/assertion/rewrite.py#L42-L45
find $out -name "*-pytest-*.py[co]" -delete
}
preDistPhases+=" pytestRemoveBytecodePhase"
'';
pythonImportsCheck = [
"pytest"
];
meta = with lib; {
homepage = "https://docs.pytest.org";
description = "Framework for writing tests";
maintainers = with maintainers; [ domenkozar lovek323 madjar lsix ];
license = licenses.mit;
};
}

View File

@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "python-engineio";
version = "4.3.0";
version = "4.3.1";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "miguelgrinberg";
repo = "python-engineio";
rev = "v${version}";
sha256 = "sha256-ohNRtceh0bHBlnGSFUckG5KzoLY8Q1jvpFee7T78Vto=";
sha256 = "sha256-8595zivZmff0agFiQd5Qyd/T3BDxYcsb4RjA5AWXVNM=";
};
checkInputs = [

View File

@ -24,13 +24,13 @@
buildPythonPackage rec {
pname = "python-miio";
version = "0.5.9.1";
version = "0.5.9.2";
disabled = pythonOlder "3.6.5";
format = "pyproject";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-fWLN1mGSoB+H6YSwTYpx1fuXfkrHBgdRkhzDLbmMBcg=";
sha256 = "sha256-AFwarRhFknfwTSvSDGoWE+/mv1KUD2XnWK/xCBqrN4o=";
};
postPatch = ''

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "python-socketio";
version = "5.5.0";
version = "5.5.1";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "miguelgrinberg";
repo = "python-socketio";
rev = "v${version}";
sha256 = "sha256-K5rs3UEGN1BvWDDfJE9/dPDLsZ4EGSsEf6PXodvc2Bg=";
sha256 = "sha256-mtXGSd7Y+frT22EL3QmiBNatwc6IrJqGBRfsQlD8LLk=";
};
propagatedBuildInputs = [

View File

@ -10,11 +10,11 @@
buildPythonPackage rec {
pname = "pywayland";
version = "0.4.7";
version = "0.4.8";
src = fetchPypi {
inherit pname version;
sha256 = "0IMNOPTmY22JCHccIVuZxDhVr41cDcKNkx8bp+5h2CU=";
sha256 = "abby4o9LmiRZwNkPhYfFOWgRtxU8e5CURQnutz6cWjQ=";
};
nativeBuildInputs = [ pkg-config ];

View File

@ -16,11 +16,11 @@
buildPythonPackage rec {
pname = "sagemaker";
version = "2.70.0";
version = "2.72.2";
src = fetchPypi {
inherit pname version;
sha256 = "1bc0b783befa4d07dd9c43da1d1d0f3a0e66767ce8aa2af0c376cfa47c12689a";
sha256 = "7bc62eb713d6b2e72bf4b5635e2b1d18790f08ebd80cc9f380b5ba3a5000e727";
};
pythonImportsCheck = [

View File

@ -1,7 +1,7 @@
{ lib
, fetchFromGitHub
, buildPythonPackage
, pytest_5
, pytest
, numpy
, scipy
, matplotlib
@ -24,7 +24,7 @@ buildPythonPackage rec {
buildInputs = [ opencl-headers ];
# Note: the 1.0.5 release should be compatible with pytest6, so this can
# be set back to 'pytest' at that point
checkInputs = [ pytest_5 ];
checkInputs = [ pytest ];
propagatedBuildInputs = [ docutils matplotlib numpy scipy pyopencl ];
checkPhase = ''

View File

@ -1,24 +0,0 @@
{ lib, fetchPypi, buildPythonPackage, cryptography, dbus-python }:
buildPythonPackage rec {
pname = "secretstorage";
version = "2.3.1";
src = fetchPypi {
pname = "SecretStorage";
inherit version;
sha256 = "1di9gx4m27brs6ar774m64s017iz742mnmw39kvfc8skfs3mrxis";
};
propagatedBuildInputs = [ cryptography dbus-python ];
# Needs a D-Bus Sesison
doCheck = false;
meta = with lib; {
homepage = "https://github.com/mitya57/secretstorage";
description = "Python bindings to FreeDesktop.org Secret Service API";
license = licenses.bsd3;
maintainers = with maintainers; [ orivej ];
};
}

View File

@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "sense-energy";
version = "0.9.3";
version = "0.9.4";
format = "setuptools";
src = fetchFromGitHub {
owner = "scottbonline";
repo = "sense";
rev = version;
sha256 = "sha256-LUM7SP03U3mRxCTjgxPRXh/ZLz15R04zBWOxLKnan98=";
hash = "sha256-X+sGfcEodxWkBmDamJkrZVsjyKkuqzsZ5BJFwOgL63M=";
};
propagatedBuildInputs = [

View File

@ -40,14 +40,14 @@
buildPythonPackage rec {
pname = "sentry-sdk";
version = "1.5.1";
version = "1.5.2";
format = "setuptools";
src = fetchFromGitHub {
owner = "getsentry";
repo = "sentry-python";
rev = version;
sha256 = "sha256-vQ5zeAscPMQH3L+Ogj50IZZp2pBoYaxHzvcXakaoC4k=";
sha256 = "086kzvrpy1c7kiwjrdyr4i4a8dp4vncsc8dk6hp8c7bwswfffa3d";
};
propagatedBuildInputs = [

View File

@ -13,12 +13,12 @@
buildPythonPackage rec {
pname = "sopel";
version = "7.1.6";
version = "7.1.7";
disabled = isPyPy;
src = fetchPypi {
inherit pname version;
sha256 = "ebd3b2aa9230835f8a68ea7f5a10324ddf35d70d89a9c92c8cba81c558565efb";
sha256 = "4eb12e9753162e4c19a1bfdd42aea9eb7f5f15e316a6609b925350792fb454fd";
};
propagatedBuildInputs = [

View File

@ -19,13 +19,13 @@
buildPythonPackage rec {
pname = "transformers";
version = "4.12.5";
version = "4.15.0";
src = fetchFromGitHub {
owner = "huggingface";
repo = pname;
rev = "v${version}";
sha256 = "07v72fyhm1s3bzg2kvaff15d7d8na39nlqpf5gyxaqvp3hglc3qy";
sha256 = "05qwrs040sqxk5fi44rjx0s5ba4897iw8l7yk8f1xzv314df05fg";
};
nativeBuildInputs = [ packaging ];

Some files were not shown because too many files have changed in this diff Show More