Merge master into haskell-updates
This commit is contained in:
commit
2189a53dad
3
.github/workflows/editorconfig.yml
vendored
3
.github/workflows/editorconfig.yml
vendored
@ -31,7 +31,8 @@ jobs:
|
||||
- uses: cachix/install-nix-action@v16
|
||||
with:
|
||||
# nixpkgs commit is pinned so that it doesn't break
|
||||
nix_path: nixpkgs=https://github.com/NixOS/nixpkgs/archive/f93ecc4f6bc60414d8b73dbdf615ceb6a2c604df.tar.gz
|
||||
# editorconfig-checker 2.4.0
|
||||
nix_path: nixpkgs=https://github.com/NixOS/nixpkgs/archive/c473cc8714710179df205b153f4e9fa007107ff9.tar.gz
|
||||
- name: install editorconfig-checker
|
||||
run: nix-env -iA editorconfig-checker -f '<nixpkgs>'
|
||||
- name: Checking EditorConfig
|
||||
|
@ -4,7 +4,9 @@
|
||||
{ lib }:
|
||||
rec {
|
||||
# List of systems that are built by Hydra.
|
||||
hydra = tier1 ++ tier2 ++ tier3;
|
||||
hydra = tier1 ++ tier2 ++ tier3 ++ [
|
||||
"aarch64-darwin"
|
||||
];
|
||||
|
||||
tier1 = [
|
||||
"x86_64-linux"
|
||||
@ -16,7 +18,6 @@ rec {
|
||||
];
|
||||
|
||||
tier3 = [
|
||||
"aarch64-darwin"
|
||||
"armv6l-linux"
|
||||
"armv7l-linux"
|
||||
"i686-linux"
|
||||
|
@ -29,6 +29,20 @@ with lib.maintainers; {
|
||||
scope = "Maintain ACME-related packages and modules.";
|
||||
};
|
||||
|
||||
bazel = {
|
||||
members = [
|
||||
mboes
|
||||
marsam
|
||||
uri-canva
|
||||
cbley
|
||||
olebedev
|
||||
groodt
|
||||
aherrmann
|
||||
ylecornec
|
||||
];
|
||||
scope = "Bazel build tool & related tools https://bazel.build/";
|
||||
};
|
||||
|
||||
beam = {
|
||||
members = [
|
||||
ankhers
|
||||
|
@ -19,7 +19,7 @@
|
||||
</section>
|
||||
<section xml:id="sec-release-22.05-new-services">
|
||||
<title>New Services</title>
|
||||
<itemizedlist spacing="compact">
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://github.com/intel/linux-sgx#install-the-intelr-sgx-psw">aesmd</link>,
|
||||
@ -28,6 +28,14 @@
|
||||
<link linkend="opt-services.aesmd.enable">services.aesmd</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-overview.html">filebeat</link>,
|
||||
a lightweight shipper for forwarding and centralizing log
|
||||
data. Available as
|
||||
<link linkend="opt-services.filebeat.enable">services.filebeat</link>.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section xml:id="sec-release-22.05-incompatibilities">
|
||||
@ -134,6 +142,16 @@
|
||||
using the PyPy interpreter were added.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>influxdb2</literal> package was split into
|
||||
<literal>influxdb2-server</literal> and
|
||||
<literal>influxdb2-cli</literal>, matching the split that took
|
||||
place upstream. A combined <literal>influxdb2</literal>
|
||||
package is still provided in this release for backwards
|
||||
compatibilty, but will be removed at a later date.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
</section>
|
||||
|
@ -10,6 +10,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- [aesmd](https://github.com/intel/linux-sgx#install-the-intelr-sgx-psw), the Intel SGX Architectural Enclave Service Manager. Available as [services.aesmd](#opt-services.aesmd.enable).
|
||||
|
||||
- [filebeat](https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-overview.html), a lightweight shipper for forwarding and centralizing log data. Available as [services.filebeat](#opt-services.filebeat.enable).
|
||||
|
||||
## Backward Incompatibilities {#sec-release-22.05-incompatibilities}
|
||||
|
||||
- `pkgs.ghc` now refers to `pkgs.targetPackages.haskellPackages.ghc`.
|
||||
@ -56,3 +58,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
through the Unix socket `/run/redis-${serverName}/redis.sock`.
|
||||
|
||||
- The `writers.writePyPy2`/`writers.writePyPy3` and corresponding `writers.writePyPy2Bin`/`writers.writePyPy3Bin` convenience functions to create executable Python 2/3 scripts using the PyPy interpreter were added.
|
||||
|
||||
- The `influxdb2` package was split into `influxdb2-server` and
|
||||
`influxdb2-cli`, matching the split that took place upstream. A
|
||||
combined `influxdb2` package is still provided in this release for
|
||||
backwards compatibilty, but will be removed at a later date.
|
||||
|
@ -448,6 +448,7 @@
|
||||
./services/hardware/xow.nix
|
||||
./services/logging/SystemdJournal2Gelf.nix
|
||||
./services/logging/awstats.nix
|
||||
./services/logging/filebeat.nix
|
||||
./services/logging/fluentd.nix
|
||||
./services/logging/graylog.nix
|
||||
./services/logging/heartbeat.nix
|
||||
|
@ -54,12 +54,12 @@ let
|
||||
# tcp json rpc
|
||||
++ [ "--tcp.enabled ${toString cfg.tcp.enable}" ]
|
||||
++ optionals cfg.tcp.enable [
|
||||
"--tcp.address ${cfg.tcp.listenAddress}"
|
||||
"--tcp.bind_to_address ${cfg.tcp.listenAddress}"
|
||||
"--tcp.port ${toString cfg.tcp.port}" ]
|
||||
# http json rpc
|
||||
++ [ "--http.enabled ${toString cfg.http.enable}" ]
|
||||
++ optionals cfg.http.enable [
|
||||
"--http.address ${cfg.http.listenAddress}"
|
||||
"--http.bind_to_address ${cfg.http.listenAddress}"
|
||||
"--http.port ${toString cfg.http.port}"
|
||||
] ++ optional (cfg.http.docRoot != null) "--http.doc_root \"${toString cfg.http.docRoot}\"");
|
||||
|
||||
|
@ -320,21 +320,22 @@ in
|
||||
${optionalString cfg.explicitSymlinks "-H"} \
|
||||
${optionalString cfg.followSymlinks "-L"} \
|
||||
${concatStringsSep " " cfg.directories}'';
|
||||
cachedir = escapeShellArg cfg.cachedir;
|
||||
in if (cfg.cachedir != null) then ''
|
||||
mkdir -p ${cfg.cachedir}
|
||||
chmod 0700 ${cfg.cachedir}
|
||||
mkdir -p ${cachedir}
|
||||
chmod 0700 ${cachedir}
|
||||
|
||||
( flock 9
|
||||
if [ ! -e ${cfg.cachedir}/firstrun ]; then
|
||||
if [ ! -e ${cachedir}/firstrun ]; then
|
||||
( flock 10
|
||||
flock -u 9
|
||||
${tarsnap} --fsck
|
||||
flock 9
|
||||
) 10>${cfg.cachedir}/firstrun
|
||||
) 10>${cachedir}/firstrun
|
||||
fi
|
||||
) 9>${cfg.cachedir}/lockf
|
||||
) 9>${cachedir}/lockf
|
||||
|
||||
exec flock ${cfg.cachedir}/firstrun ${run}
|
||||
exec flock ${cachedir}/firstrun ${run}
|
||||
'' else "exec ${run}";
|
||||
|
||||
serviceConfig = {
|
||||
@ -356,22 +357,23 @@ in
|
||||
tarsnap = ''tarsnap --configfile "/etc/tarsnap/${name}.conf"'';
|
||||
lastArchive = "$(${tarsnap} --list-archives | sort | tail -1)";
|
||||
run = ''${tarsnap} -x -f "${lastArchive}" ${optionalString cfg.verbose "-v"}'';
|
||||
cachedir = escapeShellArg cfg.cachedir;
|
||||
|
||||
in if (cfg.cachedir != null) then ''
|
||||
mkdir -p ${cfg.cachedir}
|
||||
chmod 0700 ${cfg.cachedir}
|
||||
mkdir -p ${cachedir}
|
||||
chmod 0700 ${cachedir}
|
||||
|
||||
( flock 9
|
||||
if [ ! -e ${cfg.cachedir}/firstrun ]; then
|
||||
if [ ! -e ${cachedir}/firstrun ]; then
|
||||
( flock 10
|
||||
flock -u 9
|
||||
${tarsnap} --fsck
|
||||
flock 9
|
||||
) 10>${cfg.cachedir}/firstrun
|
||||
) 10>${cachedir}/firstrun
|
||||
fi
|
||||
) 9>${cfg.cachedir}/lockf
|
||||
) 9>${cachedir}/lockf
|
||||
|
||||
exec flock ${cfg.cachedir}/firstrun ${run}
|
||||
exec flock ${cachedir}/firstrun ${run}
|
||||
'' else "exec ${run}";
|
||||
|
||||
serviceConfig = {
|
||||
|
@ -10,7 +10,7 @@ in
|
||||
services.influxdb2 = {
|
||||
enable = mkEnableOption "the influxdb2 server";
|
||||
package = mkOption {
|
||||
default = pkgs.influxdb2;
|
||||
default = pkgs.influxdb2-server;
|
||||
defaultText = literalExpression "pkgs.influxdb2";
|
||||
description = "influxdb2 derivation to use.";
|
||||
type = types.package;
|
||||
|
253
nixos/modules/services/logging/filebeat.nix
Normal file
253
nixos/modules/services/logging/filebeat.nix
Normal file
@ -0,0 +1,253 @@
|
||||
{ config, lib, utils, pkgs, ... }:
|
||||
|
||||
let
|
||||
inherit (lib)
|
||||
attrValues
|
||||
literalExpression
|
||||
mkEnableOption
|
||||
mkIf
|
||||
mkOption
|
||||
types;
|
||||
|
||||
cfg = config.services.filebeat;
|
||||
|
||||
json = pkgs.formats.json {};
|
||||
in
|
||||
{
|
||||
options = {
|
||||
|
||||
services.filebeat = {
|
||||
|
||||
enable = mkEnableOption "filebeat";
|
||||
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.filebeat;
|
||||
defaultText = literalExpression "pkgs.filebeat";
|
||||
example = literalExpression "pkgs.filebeat7";
|
||||
description = ''
|
||||
The filebeat package to use.
|
||||
'';
|
||||
};
|
||||
|
||||
inputs = mkOption {
|
||||
description = ''
|
||||
Inputs specify how Filebeat locates and processes input data.
|
||||
|
||||
This is like <literal>services.filebeat.settings.filebeat.inputs</literal>,
|
||||
but structured as an attribute set. This has the benefit
|
||||
that multiple NixOS modules can contribute settings to a
|
||||
single filebeat input.
|
||||
|
||||
An input type can be specified multiple times by choosing a
|
||||
different <literal><name></literal> for each, but setting
|
||||
<xref linkend="opt-services.filebeat.inputs._name_.type"/>
|
||||
to the same value.
|
||||
|
||||
See <link xlink:href="https://www.elastic.co/guide/en/beats/filebeat/current/configuration-filebeat-options.html"/>.
|
||||
'';
|
||||
default = {};
|
||||
type = types.attrsOf (types.submodule ({ name, ... }: {
|
||||
freeformType = json.type;
|
||||
options = {
|
||||
type = mkOption {
|
||||
type = types.str;
|
||||
default = name;
|
||||
description = ''
|
||||
The input type.
|
||||
|
||||
Look for the value after <literal>type:</literal> on
|
||||
the individual input pages linked from
|
||||
<link xlink:href="https://www.elastic.co/guide/en/beats/filebeat/current/configuration-filebeat-options.html"/>.
|
||||
'';
|
||||
};
|
||||
};
|
||||
}));
|
||||
example = literalExpression ''
|
||||
{
|
||||
journald.id = "everything"; # Only for filebeat7
|
||||
log = {
|
||||
enabled = true;
|
||||
paths = [
|
||||
"/var/log/*.log"
|
||||
];
|
||||
};
|
||||
};
|
||||
'';
|
||||
};
|
||||
|
||||
modules = mkOption {
|
||||
description = ''
|
||||
Filebeat modules provide a quick way to get started
|
||||
processing common log formats. They contain default
|
||||
configurations, Elasticsearch ingest pipeline definitions,
|
||||
and Kibana dashboards to help you implement and deploy a log
|
||||
monitoring solution.
|
||||
|
||||
This is like <literal>services.filebeat.settings.filebeat.modules</literal>,
|
||||
but structured as an attribute set. This has the benefit
|
||||
that multiple NixOS modules can contribute settings to a
|
||||
single filebeat module.
|
||||
|
||||
A module can be specified multiple times by choosing a
|
||||
different <literal><name></literal> for each, but setting
|
||||
<xref linkend="opt-services.filebeat.modules._name_.module"/>
|
||||
to the same value.
|
||||
|
||||
See <link xlink:href="https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-modules.html"/>.
|
||||
'';
|
||||
default = {};
|
||||
type = types.attrsOf (types.submodule ({ name, ... }: {
|
||||
freeformType = json.type;
|
||||
options = {
|
||||
module = mkOption {
|
||||
type = types.str;
|
||||
default = name;
|
||||
description = ''
|
||||
The name of the module.
|
||||
|
||||
Look for the value after <literal>module:</literal> on
|
||||
the individual input pages linked from
|
||||
<link xlink:href="https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-modules.html"/>.
|
||||
'';
|
||||
};
|
||||
};
|
||||
}));
|
||||
example = literalExpression ''
|
||||
{
|
||||
nginx = {
|
||||
access = {
|
||||
enabled = true;
|
||||
var.paths = [ "/path/to/log/nginx/access.log*" ];
|
||||
};
|
||||
error = {
|
||||
enabled = true;
|
||||
var.paths = [ "/path/to/log/nginx/error.log*" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
'';
|
||||
};
|
||||
|
||||
settings = mkOption {
|
||||
type = types.submodule {
|
||||
freeformType = json.type;
|
||||
|
||||
options = {
|
||||
|
||||
output.elasticsearch.hosts = mkOption {
|
||||
type = with types; listOf str;
|
||||
default = [ "127.0.0.1:9200" ];
|
||||
example = [ "myEShost:9200" ];
|
||||
description = ''
|
||||
The list of Elasticsearch nodes to connect to.
|
||||
|
||||
The events are distributed to these nodes in round
|
||||
robin order. If one node becomes unreachable, the
|
||||
event is automatically sent to another node. Each
|
||||
Elasticsearch node can be defined as a URL or
|
||||
IP:PORT. For example:
|
||||
<literal>http://192.15.3.2</literal>,
|
||||
<literal>https://es.found.io:9230</literal> or
|
||||
<literal>192.24.3.2:9300</literal>. If no port is
|
||||
specified, <literal>9200</literal> is used.
|
||||
'';
|
||||
};
|
||||
|
||||
filebeat = {
|
||||
inputs = mkOption {
|
||||
type = types.listOf json.type;
|
||||
default = [];
|
||||
internal = true;
|
||||
description = ''
|
||||
Inputs specify how Filebeat locates and processes
|
||||
input data. Use <xref
|
||||
linkend="opt-services.filebeat.inputs"/> instead.
|
||||
|
||||
See <link xlink:href="https://www.elastic.co/guide/en/beats/filebeat/current/configuration-filebeat-options.html"/>.
|
||||
'';
|
||||
};
|
||||
modules = mkOption {
|
||||
type = types.listOf json.type;
|
||||
default = [];
|
||||
internal = true;
|
||||
description = ''
|
||||
Filebeat modules provide a quick way to get started
|
||||
processing common log formats. They contain default
|
||||
configurations, Elasticsearch ingest pipeline
|
||||
definitions, and Kibana dashboards to help you
|
||||
implement and deploy a log monitoring solution.
|
||||
|
||||
Use <xref linkend="opt-services.filebeat.modules"/> instead.
|
||||
|
||||
See <link xlink:href="https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-modules.html"/>.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
default = {};
|
||||
example = literalExpression ''
|
||||
{
|
||||
settings = {
|
||||
output.elasticsearch = {
|
||||
hosts = [ "myEShost:9200" ];
|
||||
username = "filebeat_internal";
|
||||
password = { _secret = "/var/keys/elasticsearch_password"; };
|
||||
};
|
||||
logging.level = "info";
|
||||
};
|
||||
};
|
||||
'';
|
||||
|
||||
description = ''
|
||||
Configuration for filebeat. See
|
||||
<link xlink:href="https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-reference-yml.html"/>
|
||||
for supported values.
|
||||
|
||||
Options containing secret data should be set to an attribute
|
||||
set containing the attribute <literal>_secret</literal> - a
|
||||
string pointing to a file containing the value the option
|
||||
should be set to. See the example to get a better picture of
|
||||
this: in the resulting
|
||||
<filename>filebeat.yml</filename> file, the
|
||||
<literal>output.elasticsearch.password</literal>
|
||||
key will be set to the contents of the
|
||||
<filename>/var/keys/elasticsearch_password</filename> file.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
services.filebeat.settings.filebeat.inputs = attrValues cfg.inputs;
|
||||
services.filebeat.settings.filebeat.modules = attrValues cfg.modules;
|
||||
|
||||
systemd.services.filebeat = {
|
||||
description = "Filebeat log shipper";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "elasticsearch.service" ];
|
||||
after = [ "elasticsearch.service" ];
|
||||
serviceConfig = {
|
||||
ExecStartPre = pkgs.writeShellScript "filebeat-exec-pre" ''
|
||||
set -euo pipefail
|
||||
|
||||
umask u=rwx,g=,o=
|
||||
|
||||
${utils.genJqSecretsReplacementSnippet
|
||||
cfg.settings
|
||||
"/var/lib/filebeat/filebeat.yml"
|
||||
}
|
||||
'';
|
||||
ExecStart = ''
|
||||
${cfg.package}/bin/filebeat -e \
|
||||
-c "/var/lib/filebeat/filebeat.yml" \
|
||||
--path.data "/var/lib/filebeat"
|
||||
'';
|
||||
Restart = "always";
|
||||
StateDirectory = "filebeat";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -28,7 +28,6 @@ in
|
||||
type = types.package;
|
||||
default = pkgs.journalbeat;
|
||||
defaultText = literalExpression "pkgs.journalbeat";
|
||||
example = literalExpression "pkgs.journalbeat7";
|
||||
description = ''
|
||||
The journalbeat package to use
|
||||
'';
|
||||
@ -89,6 +88,8 @@ in
|
||||
systemd.services.journalbeat = {
|
||||
description = "Journalbeat log shipper";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "elasticsearch.service" ];
|
||||
after = [ "elasticsearch.service" ];
|
||||
preStart = ''
|
||||
mkdir -p ${cfg.stateDir}/data
|
||||
mkdir -p ${cfg.stateDir}/logs
|
||||
|
@ -74,6 +74,8 @@ in {
|
||||
TTYVTDisallocate = "yes";
|
||||
# Fail to start if not controlling the virtual terminal.
|
||||
StandardInput = "tty-fail";
|
||||
StandardOutput = "journal";
|
||||
StandardError = "journal";
|
||||
# Set up a full (custom) user session for the user, required by Cage.
|
||||
PAMName = "cage";
|
||||
};
|
||||
|
@ -40,9 +40,8 @@ let
|
||||
|
||||
services = {
|
||||
|
||||
journalbeat = let lt6 = builtins.compareVersions
|
||||
elk.journalbeat.version "6" < 0; in {
|
||||
enable = true;
|
||||
journalbeat = {
|
||||
enable = elk ? journalbeat;
|
||||
package = elk.journalbeat;
|
||||
extraConfig = pkgs.lib.mkOptionDefault (''
|
||||
logging:
|
||||
@ -51,14 +50,29 @@ let
|
||||
metrics.enabled: false
|
||||
output.elasticsearch:
|
||||
hosts: [ "127.0.0.1:9200" ]
|
||||
${pkgs.lib.optionalString lt6 "template.enabled: false"}
|
||||
'' + pkgs.lib.optionalString (!lt6) ''
|
||||
journalbeat.inputs:
|
||||
- paths: []
|
||||
seek: cursor
|
||||
'');
|
||||
};
|
||||
|
||||
filebeat = {
|
||||
enable = elk ? filebeat;
|
||||
package = elk.filebeat;
|
||||
inputs.journald.id = "everything";
|
||||
|
||||
inputs.log = {
|
||||
enabled = true;
|
||||
paths = [
|
||||
"/var/lib/filebeat/test"
|
||||
];
|
||||
};
|
||||
|
||||
settings = {
|
||||
logging.level = "info";
|
||||
};
|
||||
};
|
||||
|
||||
metricbeat = {
|
||||
enable = true;
|
||||
package = elk.metricbeat;
|
||||
@ -142,27 +156,43 @@ let
|
||||
};
|
||||
|
||||
passthru.elkPackages = elk;
|
||||
testScript = ''
|
||||
testScript =
|
||||
let
|
||||
valueObject = lib.optionalString (lib.versionAtLeast elk.elasticsearch.version "7") ".value";
|
||||
in ''
|
||||
import json
|
||||
|
||||
|
||||
def total_hits(message):
|
||||
def expect_hits(message):
|
||||
dictionary = {"query": {"match": {"message": message}}}
|
||||
return (
|
||||
"curl --silent --show-error '${esUrl}/_search' "
|
||||
"curl --silent --show-error --fail-with-body '${esUrl}/_search' "
|
||||
+ "-H 'Content-Type: application/json' "
|
||||
+ "-d '{}' ".format(json.dumps(dictionary))
|
||||
+ "| jq .hits.total"
|
||||
+ " | tee /dev/console"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .hits.total${valueObject} > 0 end'"
|
||||
)
|
||||
|
||||
|
||||
def expect_no_hits(message):
|
||||
dictionary = {"query": {"match": {"message": message}}}
|
||||
return (
|
||||
"curl --silent --show-error --fail-with-body '${esUrl}/_search' "
|
||||
+ "-H 'Content-Type: application/json' "
|
||||
+ "-d '{}' ".format(json.dumps(dictionary))
|
||||
+ " | tee /dev/console"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .hits.total${valueObject} == 0 end'"
|
||||
)
|
||||
|
||||
|
||||
def has_metricbeat():
|
||||
dictionary = {"query": {"match": {"event.dataset": {"query": "system.cpu"}}}}
|
||||
return (
|
||||
"curl --silent --show-error '${esUrl}/_search' "
|
||||
"curl --silent --show-error --fail-with-body '${esUrl}/_search' "
|
||||
+ "-H 'Content-Type: application/json' "
|
||||
+ "-d '{}' ".format(json.dumps(dictionary))
|
||||
+ "| jq '.hits.total > 0'"
|
||||
+ " | tee /dev/console"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .hits.total${valueObject} > 0 end'"
|
||||
)
|
||||
|
||||
|
||||
@ -178,7 +208,8 @@ let
|
||||
# TODO: extend this test with multiple elasticsearch nodes
|
||||
# and see if the status turns "green".
|
||||
one.wait_until_succeeds(
|
||||
"curl --silent --show-error '${esUrl}/_cluster/health' | jq .status | grep -v red"
|
||||
"curl --silent --show-error --fail-with-body '${esUrl}/_cluster/health'"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .status != \"red\" end'"
|
||||
)
|
||||
|
||||
with subtest("Perform some simple logstash tests"):
|
||||
@ -189,33 +220,50 @@ let
|
||||
with subtest("Kibana is healthy"):
|
||||
one.wait_for_unit("kibana.service")
|
||||
one.wait_until_succeeds(
|
||||
"curl --silent --show-error 'http://localhost:5601/api/status' | jq .status.overall.state | grep green"
|
||||
"curl --silent --show-error --fail-with-body 'http://localhost:5601/api/status'"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .status.overall.state == \"green\" end'"
|
||||
)
|
||||
|
||||
with subtest("Metricbeat is running"):
|
||||
one.wait_for_unit("metricbeat.service")
|
||||
|
||||
with subtest("Metricbeat metrics arrive in elasticsearch"):
|
||||
one.wait_until_succeeds(has_metricbeat() + " | tee /dev/console | grep 'true'")
|
||||
one.wait_until_succeeds(has_metricbeat())
|
||||
|
||||
with subtest("Logstash messages arive in elasticsearch"):
|
||||
one.wait_until_succeeds(total_hits("flowers") + " | grep -v 0")
|
||||
one.wait_until_succeeds(total_hits("dragons") + " | grep 0")
|
||||
one.wait_until_succeeds(expect_hits("flowers"))
|
||||
one.wait_until_succeeds(expect_no_hits("dragons"))
|
||||
|
||||
'' + lib.optionalString (elk ? journalbeat) ''
|
||||
with subtest(
|
||||
"A message logged to the journal is ingested by elasticsearch via journalbeat"
|
||||
):
|
||||
one.wait_for_unit("journalbeat.service")
|
||||
one.execute("echo 'Supercalifragilisticexpialidocious' | systemd-cat")
|
||||
one.wait_until_succeeds(
|
||||
total_hits("Supercalifragilisticexpialidocious") + " | grep -v 0"
|
||||
expect_hits("Supercalifragilisticexpialidocious")
|
||||
)
|
||||
|
||||
'' + lib.optionalString (elk ? filebeat) ''
|
||||
with subtest(
|
||||
"A message logged to the journal is ingested by elasticsearch via filebeat"
|
||||
):
|
||||
one.wait_for_unit("filebeat.service")
|
||||
one.execute("echo 'Superdupercalifragilisticexpialidocious' | systemd-cat")
|
||||
one.wait_until_succeeds(
|
||||
expect_hits("Superdupercalifragilisticexpialidocious")
|
||||
)
|
||||
one.execute(
|
||||
"echo 'SuperdupercalifragilisticexpialidociousIndeed' >> /var/lib/filebeat/test"
|
||||
)
|
||||
one.wait_until_succeeds(
|
||||
expect_hits("SuperdupercalifragilisticexpialidociousIndeed")
|
||||
)
|
||||
'' + ''
|
||||
with subtest("Elasticsearch-curator works"):
|
||||
one.systemctl("stop logstash")
|
||||
one.systemctl("start elasticsearch-curator")
|
||||
one.wait_until_succeeds(
|
||||
'! curl --silent --show-error "${esUrl}/_cat/indices" | grep logstash | grep ^'
|
||||
'! curl --silent --show-error --fail-with-body "${esUrl}/_cat/indices" | grep logstash | grep ^'
|
||||
)
|
||||
'';
|
||||
}) { inherit pkgs system; };
|
||||
@ -235,7 +283,7 @@ in {
|
||||
# elasticsearch = pkgs.elasticsearch7-oss;
|
||||
# logstash = pkgs.logstash7-oss;
|
||||
# kibana = pkgs.kibana7-oss;
|
||||
# journalbeat = pkgs.journalbeat7;
|
||||
# filebeat = pkgs.filebeat7;
|
||||
# metricbeat = pkgs.metricbeat7;
|
||||
# };
|
||||
unfree = lib.dontRecurseIntoAttrs {
|
||||
@ -250,7 +298,7 @@ in {
|
||||
elasticsearch = pkgs.elasticsearch7;
|
||||
logstash = pkgs.logstash7;
|
||||
kibana = pkgs.kibana7;
|
||||
journalbeat = pkgs.journalbeat7;
|
||||
filebeat = pkgs.filebeat7;
|
||||
metricbeat = pkgs.metricbeat7;
|
||||
};
|
||||
};
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ system ? builtins.currentSystem
|
||||
, pkgs ? import <nixpkgs> { inherit system; }
|
||||
, pkgs ? import ../../.. { inherit system; }
|
||||
}:
|
||||
let
|
||||
dns = import ./dns.nix { inherit system pkgs; };
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ system ? builtins.currentSystem, pkgs ? import <nixpkgs> { inherit system; } }:
|
||||
{ system ? builtins.currentSystem, pkgs ? import ../../.. { inherit system; } }:
|
||||
with import ./base.nix { inherit system; };
|
||||
let
|
||||
domain = "my.zyx";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ system ? builtins.currentSystem, pkgs ? import <nixpkgs> { inherit system; } }:
|
||||
{ system ? builtins.currentSystem, pkgs ? import ../../.. { inherit system; } }:
|
||||
with import ./base.nix { inherit system; };
|
||||
let
|
||||
domain = "my.zyx";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ system ? builtins.currentSystem, pkgs ? import <nixpkgs> { inherit system; } }:
|
||||
{ system ? builtins.currentSystem, pkgs ? import ../../.. { inherit system; } }:
|
||||
with import ./base.nix { inherit system; };
|
||||
let
|
||||
|
||||
|
@ -4,6 +4,7 @@
|
||||
{ pkgs, ... }@args:
|
||||
let
|
||||
inherit (import ../../lib/testing-python.nix args) makeTest;
|
||||
inherit (pkgs) lib;
|
||||
|
||||
dmarcTestReport = builtins.fetchurl {
|
||||
name = "dmarc-test-report";
|
||||
@ -54,7 +55,7 @@ in
|
||||
localMail = makeTest
|
||||
{
|
||||
name = "parsedmarc-local-mail";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
meta = with lib.maintainers; {
|
||||
maintainers = [ talyz ];
|
||||
};
|
||||
|
||||
@ -83,7 +84,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
services.elasticsearch.package = pkgs.elasticsearch7-oss;
|
||||
services.elasticsearch.package = pkgs.elasticsearch-oss;
|
||||
|
||||
environment.systemPackages = [
|
||||
(sendEmail "dmarc@localhost")
|
||||
@ -94,6 +95,7 @@ in
|
||||
testScript = { nodes }:
|
||||
let
|
||||
esPort = toString nodes.parsedmarc.config.services.elasticsearch.port;
|
||||
valueObject = lib.optionalString (lib.versionAtLeast nodes.parsedmarc.config.services.elasticsearch.package.version "7") ".value";
|
||||
in ''
|
||||
parsedmarc.start()
|
||||
parsedmarc.wait_for_unit("postfix.service")
|
||||
@ -104,11 +106,15 @@ in
|
||||
)
|
||||
|
||||
parsedmarc.fail(
|
||||
"curl -sS -f http://localhost:${esPort}/_search?q=report_id:2940 | jq -e 'if .hits.total.value > 0 then true else null end'"
|
||||
"curl -sS -f http://localhost:${esPort}/_search?q=report_id:2940"
|
||||
+ " | tee /dev/console"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .hits.total${valueObject} > 0 end'"
|
||||
)
|
||||
parsedmarc.succeed("send-email")
|
||||
parsedmarc.wait_until_succeeds(
|
||||
"curl -sS -f http://localhost:${esPort}/_search?q=report_id:2940 | jq -e 'if .hits.total.value > 0 then true else null end'"
|
||||
"curl -sS -f http://localhost:${esPort}/_search?q=report_id:2940"
|
||||
+ " | tee /dev/console"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .hits.total${valueObject} > 0 end'"
|
||||
)
|
||||
'';
|
||||
};
|
||||
@ -121,7 +127,7 @@ in
|
||||
in
|
||||
makeTest {
|
||||
name = "parsedmarc-external-mail";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
meta = with lib.maintainers; {
|
||||
maintainers = [ talyz ];
|
||||
};
|
||||
|
||||
@ -153,7 +159,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
services.elasticsearch.package = pkgs.elasticsearch7-oss;
|
||||
services.elasticsearch.package = pkgs.elasticsearch-oss;
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.jq
|
||||
@ -201,6 +207,7 @@ in
|
||||
testScript = { nodes }:
|
||||
let
|
||||
esPort = toString nodes.parsedmarc.config.services.elasticsearch.port;
|
||||
valueObject = lib.optionalString (lib.versionAtLeast nodes.parsedmarc.config.services.elasticsearch.package.version "7") ".value";
|
||||
in ''
|
||||
mail.start()
|
||||
mail.wait_for_unit("postfix.service")
|
||||
@ -213,11 +220,15 @@ in
|
||||
)
|
||||
|
||||
parsedmarc.fail(
|
||||
"curl -sS -f http://localhost:${esPort}/_search?q=report_id:2940 | jq -e 'if .hits.total.value > 0 then true else null end'"
|
||||
"curl -sS -f http://localhost:${esPort}/_search?q=report_id:2940"
|
||||
+ " | tee /dev/console"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .hits.total${valueObject} > 0 end'"
|
||||
)
|
||||
mail.succeed("send-email")
|
||||
parsedmarc.wait_until_succeeds(
|
||||
"curl -sS -f http://localhost:${esPort}/_search?q=report_id:2940 | jq -e 'if .hits.total.value > 0 then true else null end'"
|
||||
"curl -sS -f http://localhost:${esPort}/_search?q=report_id:2940"
|
||||
+ " | tee /dev/console"
|
||||
+ " | jq -es 'if . == [] then null else .[] | .hits.total${valueObject} > 0 end'"
|
||||
)
|
||||
'';
|
||||
};
|
||||
|
@ -40,6 +40,7 @@ in {
|
||||
};
|
||||
};
|
||||
};
|
||||
environment.systemPackages = [ pkgs.snapcast ];
|
||||
};
|
||||
client = {
|
||||
environment.systemPackages = [ pkgs.snapcast ];
|
||||
@ -71,6 +72,13 @@ in {
|
||||
"curl --fail http://localhost:${toString httpPort}/jsonrpc -d '{json.dumps(get_rpc_version)}'"
|
||||
)
|
||||
|
||||
with subtest("test a ipv6 connection"):
|
||||
server.execute("systemd-run --unit=snapcast-local-client snapclient -h ::1 -p ${toString port}")
|
||||
server.wait_until_succeeds(
|
||||
"journalctl -o cat -u snapserver.service | grep -q 'Hello from'"
|
||||
)
|
||||
server.wait_until_succeeds("journalctl -o cat -u snapcast-local-client | grep -q 'buffer: ${toString bufferSize}'")
|
||||
|
||||
with subtest("test a connection"):
|
||||
client.execute("systemd-run --unit=snapcast-client snapclient -h server -p ${toString port}")
|
||||
server.wait_until_succeeds(
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchurl, lv2, pkg-config, python2, wafHook }:
|
||||
{ lib, stdenv, fetchurl, lv2, pkg-config, python3, wafHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fomp";
|
||||
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config wafHook ];
|
||||
buildInputs = [ lv2 python2 ];
|
||||
buildInputs = [ lv2 python3 ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://drobilla.net/software/fomp/";
|
||||
|
@ -1,20 +1,20 @@
|
||||
{ lib, stdenv, fetchFromGitHub, pkg-config, python2, cairo, libjpeg, ntk, libjack2
|
||||
{ lib, stdenv, fetchFromGitHub, pkg-config, python3, cairo, libjpeg, ntk, libjack2
|
||||
, libsndfile, ladspaH, liblo, libsigcxx, lrdf, wafHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "non";
|
||||
version = "2018-02-15";
|
||||
version = "unstable-2021-01-28";
|
||||
src = fetchFromGitHub {
|
||||
owner = "original-male";
|
||||
owner = "linuxaudio";
|
||||
repo = "non";
|
||||
rev = "5ae43bb27c42387052a73e5ffc5d33efb9d946a9";
|
||||
sha256 = "1cljkkyi9dxqpqhx8y6l2ja4zjmlya26m26kqxml8gx08vyvddhx";
|
||||
rev = "cdad26211b301d2fad55a26812169ab905b85bbb";
|
||||
sha256 = "sha256-iMJNMDytNXpEkUhL0RILSd25ixkm8HL/edtOZta0Pf4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config wafHook ];
|
||||
buildInputs = [ python2 cairo libjpeg ntk libjack2 libsndfile
|
||||
ladspaH liblo libsigcxx lrdf
|
||||
buildInputs = [ python3 cairo libjpeg ntk libjack2 libsndfile
|
||||
ladspaH liblo libsigcxx lrdf
|
||||
];
|
||||
|
||||
meta = {
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
let
|
||||
pname = "ledger-live-desktop";
|
||||
version = "2.35.2";
|
||||
version = "2.36.2";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
|
||||
hash = "sha256-VJr1H6YcPtCzm6FeFA+rNANvYUQ3wZQalI9RdSv68cI=";
|
||||
hash = "sha256-cZwKL5G7CmQBw2x0wPYHZCiAABxPatvfIcOAf0d2+Dg=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extractType2 {
|
||||
|
@ -3,7 +3,7 @@
|
||||
, vmopts ? null
|
||||
}:
|
||||
|
||||
{ name, product, version, src, wmClass, jdk, meta, extraLdPath ? [] }@args:
|
||||
{ name, product, version, src, wmClass, jdk, meta, extraLdPath ? [], extraWrapperArgs ? [] }@args:
|
||||
|
||||
with lib;
|
||||
|
||||
@ -81,6 +81,7 @@ with stdenv; lib.makeOverridable mkDerivation (rec {
|
||||
stdenv.cc.cc.lib libsecret e2fsprogs
|
||||
libnotify
|
||||
] ++ extraLdPath)}" \
|
||||
${lib.concatStringsSep " " extraWrapperArgs} \
|
||||
--set JDK_HOME "$jdk" \
|
||||
--set ${hiName}_JDK "$jdk" \
|
||||
--set ANDROID_JAVA_HOME "$jdk" \
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ lib, stdenv, callPackage, fetchurl
|
||||
, jdk, cmake, zlib, python3
|
||||
, dotnet-sdk_5
|
||||
, maven
|
||||
, autoPatchelfHook
|
||||
, libdbusmenu
|
||||
, vmopts ? null
|
||||
@ -98,6 +99,10 @@ let
|
||||
inherit name version src wmClass jdk;
|
||||
product = "IDEA";
|
||||
extraLdPath = [ zlib ];
|
||||
extraWrapperArgs = [
|
||||
''--set M2_HOME "${maven}/maven"''
|
||||
''--set M2 "${maven}/maven/bin"''
|
||||
];
|
||||
meta = with lib; {
|
||||
homepage = "https://www.jetbrains.com/idea/";
|
||||
inherit description license;
|
||||
|
@ -2,19 +2,20 @@
|
||||
, fetchurl, libsecret, gtk3, gsettings-desktop-schemas }:
|
||||
|
||||
let
|
||||
version = "3.8.18";
|
||||
version = "3.9.5";
|
||||
pname = "standardnotes";
|
||||
name = "${pname}-${version}";
|
||||
throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
|
||||
|
||||
plat = {
|
||||
i386-linux = "i386";
|
||||
i686-linux = "i386";
|
||||
x86_64-linux = "x86_64";
|
||||
}.${stdenv.hostPlatform.system};
|
||||
}.${stdenv.hostPlatform.system} or throwSystem;
|
||||
|
||||
sha256 = {
|
||||
i386-linux = "1xiypsmvpk8i6kab862pipbdfb0y5d5355hdwjmva7v7g26aa7h7";
|
||||
x86_64-linux = "03qlxlgyypnvcr40jh6i4wriyax2jbfhrb798cq0n7qlc1y4pg8r";
|
||||
}.${stdenv.hostPlatform.system};
|
||||
i686-linux = "sha256-7Mo8ELFV6roZ3IYWBtB2rRDAzJrq4ht9f1v6uohsauw=";
|
||||
x86_64-linux = "sha256-9VPYII9E8E3yL7UuU0+GmaK3qxWX4bwfACDl7F7sngo=";
|
||||
}.${stdenv.hostPlatform.system} or throwSystem;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}-linux-${plat}.AppImage";
|
||||
@ -60,7 +61,7 @@ in appimageTools.wrapType2 rec {
|
||||
'';
|
||||
homepage = "https://standardnotes.org";
|
||||
license = licenses.agpl3;
|
||||
maintainers = with maintainers; [ mgregoire ];
|
||||
platforms = [ "i386-linux" "x86_64-linux" ];
|
||||
maintainers = with maintainers; [ mgregoire chuangzhu ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
31
pkgs/applications/graphics/icon-library/default.nix
Normal file
31
pkgs/applications/graphics/icon-library/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ lib, stdenv, fetchurl, wrapGAppsHook
|
||||
, cargo, desktop-file-utils, meson, ninja, pkg-config, python3, rustc
|
||||
, dbus, gdk-pixbuf, glib, gtk3, gtksourceview4, libhandy
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "icon-library";
|
||||
version = "0.0.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://gitlab.gnome.org/World/design/icon-library/uploads/fdf890706e0eef2458a5285e3bf65dd5/icon-library-${version}.tar.xz";
|
||||
sha256 = "0807b56bgm8j1gpq4nf8x31gq9wqhcmpzpkqw6s4wissw3cb7q96";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cargo desktop-file-utils meson ninja pkg-config python3 rustc wrapGAppsHook
|
||||
];
|
||||
buildInputs = [ dbus gdk-pixbuf glib gtk3 gtksourceview4 libhandy ];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs build-aux/meson_post_install.py
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://gitlab.gnome.org/World/design/icon-library";
|
||||
description = "Symbolic icons for your apps";
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
@ -27,13 +27,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "megapixels";
|
||||
version = "1.4.2";
|
||||
version = "1.4.3";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "postmarketOS";
|
||||
repo = "megapixels";
|
||||
rev = version;
|
||||
sha256 = "sha256-ebeKbAo03+jeMveySSIz36gbwslWVMRLj+/adW8rlEQ=";
|
||||
hash = "sha256-UHJ3Fayf+lS3nRuuhHHLN6mbHfHIPssWkghPMPF5ECg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
31
pkgs/applications/graphics/symbolic-preview/default.nix
Normal file
31
pkgs/applications/graphics/symbolic-preview/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ lib, stdenv, fetchurl, wrapGAppsHook
|
||||
, cargo, desktop-file-utils, meson, ninja, pkg-config, python3, rustc
|
||||
, gdk-pixbuf, glib, gtk3, libhandy, libxml2
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "symbolic-preview";
|
||||
version = "0.0.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://gitlab.gnome.org/World/design/symbolic-preview/uploads/91fd27bb70553c8d6c3ad2a35446ff6e/symbolic-preview-${version}.tar.xz";
|
||||
sha256 = "1v8l10ppwbjkrq7nvb0wqc3pid6pd8dqpki3jhmjjkmbd7rpdpkq";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cargo desktop-file-utils meson ninja pkg-config python3 rustc wrapGAppsHook
|
||||
];
|
||||
buildInputs = [ gdk-pixbuf glib gtk3 libhandy libxml2 ];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs build-aux/meson_post_install.py
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://gitlab.gnome.org/World/design/symbolic-preview";
|
||||
description = "Symbolics made easy";
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
@ -53,11 +53,11 @@ with py.pkgs;
|
||||
|
||||
buildPythonApplication rec {
|
||||
pname = "archivy";
|
||||
version = "1.4.0";
|
||||
version = "1.6.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-wQuR7cltDLr2u8BQ851MSjKmeLW8mQ/3bdEF5c9nxL0=";
|
||||
sha256 = "sha256-nwpH3V6hkPC8G3df+0hTZqvIbvT1Z796uOI/iKnXS1w=";
|
||||
};
|
||||
|
||||
# Relax some dependencies
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "skate";
|
||||
version = "0.1.0";
|
||||
version = "0.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "charmbracelet";
|
||||
repo = "skate";
|
||||
rev = "v${version}";
|
||||
sha256 = "01brxckjz8vlgaq9917l45xf48078d4465qn9l0lyll6hic6p06c";
|
||||
sha256 = "sha256-Z+7unYmwPLOhJAMAhMwjapAmslTNxmP01myjgEOBfu8=";
|
||||
};
|
||||
|
||||
vendorSha256 = "0mvx4rzs0mvb1dyxj105mh2awfy0bmp716x7hpfdwhwz3p11fc7k";
|
||||
vendorSha256 = "sha256-CdYyiUiy2q2boEHjdXkgRzVI+6fEb+fBrlInl6IrFjk=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "worker";
|
||||
version = "4.9.0";
|
||||
version = "4.10.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.boomerangsworld.de/cms/worker/downloads/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-l9kWYswQ27erxmZIb+otPzeKFZNwP+d8QIqGuvMMM/k=";
|
||||
sha256 = "sha256-BK6Soh2hJYMunw/bXZFh+05c+iYig2L7lLFEqs6lyxk=";
|
||||
};
|
||||
|
||||
buildInputs = [ libX11 ];
|
||||
|
@ -17,6 +17,7 @@ mkChromiumDerivation (base: rec {
|
||||
installPhase = ''
|
||||
mkdir -p "$libExecPath"
|
||||
cp -v "$buildPath/"*.so "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
|
||||
cp -v "$buildPath/libvulkan.so.1" "$libExecPath/"
|
||||
cp -v "$buildPath/vk_swiftshader_icd.json" "$libExecPath/"
|
||||
cp -v "$buildPath/icudtl.dat" "$libExecPath/"
|
||||
cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
|
||||
|
@ -18,9 +18,9 @@
|
||||
}
|
||||
},
|
||||
"beta": {
|
||||
"version": "97.0.4692.45",
|
||||
"sha256": "1x55hys3340inrwwp4lzw5vq3vrg56288m746d4p2ligvsy19byp",
|
||||
"sha256bin64": "1jyhq27fb4pzbxlg0ssfz66hza9g8cbsqyx70ydkjqs9sf4yqqcw",
|
||||
"version": "97.0.4692.56",
|
||||
"sha256": "19i572z02hp7n7j7k5i38jr60jfli5jk5qnydfzxavwx9vjqjwgf",
|
||||
"sha256bin64": "1im2dq2p5cdy6hj6n2lvn2nzwb5mgy57hyskhwhfm1fz5xzjzc3g",
|
||||
"deps": {
|
||||
"gn": {
|
||||
"version": "2021-11-03",
|
||||
|
@ -2,18 +2,18 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "argocd";
|
||||
version = "2.1.7";
|
||||
commit = "a408e299ffa743213df3aa9135bf7945644ec936";
|
||||
version = "2.2.0";
|
||||
commit = "6da92a8e8103ce4145bb0fe2b7e952be79c9ff0a";
|
||||
tag = "v${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "argoproj";
|
||||
repo = "argo-cd";
|
||||
rev = tag;
|
||||
sha256 = "sha256-c6WUqD7x8/P+W64fWs4cw1RiUFepevIJCPpWSzNfIMc=";
|
||||
sha256 = "sha256-6D7aSisFxiGhBvnp4FDN1MHbO1yL4a1SWq1ri8nO7Cw=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-N45yRlBGZ/c9ve2YPcWA26pylV8hzxjPh6evKtkgnoc=";
|
||||
vendorSha256 = "sha256-GeU8uQM+oMottzYsE6oQyKZL3aWB5vQgTDLQiuQdapw=";
|
||||
|
||||
nativeBuildInputs = [ packr makeWrapper installShellFiles ];
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kn";
|
||||
version = "0.27.0";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "knative";
|
||||
repo = "client";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-nuSx+JKXBgkVwuy6RMZc8pxDv5WjXN3+5pIudazTttc=";
|
||||
rev = "knative-v${version}";
|
||||
sha256 = "sha256-lRQ4IXV+q1idoTyhppJGlzjuUuRykP8DtQ3t/CsxhNw=";
|
||||
};
|
||||
|
||||
vendorSha256 = null;
|
||||
|
@ -380,10 +380,10 @@
|
||||
"owner": "integrations",
|
||||
"provider-source-address": "registry.terraform.io/integrations/github",
|
||||
"repo": "terraform-provider-github",
|
||||
"rev": "v4.18.2",
|
||||
"sha256": "1m4ddj4bm84ljrkg8i98gdgbf5c89chv3yz13xbmyl2iga2x5bf7",
|
||||
"rev": "v4.19.0",
|
||||
"sha256": "17xpkcrklzbim91rxw4g4n8izk9qiw9q0vfivr467i32dv5mzc2d",
|
||||
"vendorSha256": null,
|
||||
"version": "4.18.2"
|
||||
"version": "4.19.0"
|
||||
},
|
||||
"gitlab": {
|
||||
"owner": "gitlabhq",
|
||||
|
@ -197,8 +197,8 @@ rec {
|
||||
};
|
||||
|
||||
terraform_1 = mkTerraform {
|
||||
version = "1.1.0";
|
||||
sha256 = "sha256-nnYMoQitqFbOjI8twDh9hWDb1qxMNNVy6wldxkyDKY0=";
|
||||
version = "1.1.1";
|
||||
sha256 = "sha256-JHwHxFpAUVnm9QlfSYrBELrgct0RkjS7OQb6gKEAsCA=";
|
||||
vendorSha256 = "sha256-inPNvNUcil9X0VQ/pVgZdnnmn9UCfEz7qXiuKDj8RYM=";
|
||||
patches = [ ./provider-path-0_15.patch ];
|
||||
passthru = { inherit plugins; };
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "ipfs";
|
||||
version = "0.10.0";
|
||||
version = "0.11.0";
|
||||
rev = "v${version}";
|
||||
|
||||
# go-ipfs makes changes to it's source tarball that don't match the git source.
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ipfs/go-ipfs/releases/download/${rev}/go-ipfs-source.tar.gz";
|
||||
sha256 = "sha256-okfIxNoFoJZx1WCWe/6NcYhwU+ZzOyn01g8BGtXO3UQ=";
|
||||
sha256 = "lTPGnFqDgyMWmSCPmLHguGNnJQMWi9LPrOZfDgeS9Y4=";
|
||||
};
|
||||
|
||||
# tarball contains multiple files/directories
|
||||
|
@ -1,29 +0,0 @@
|
||||
{ stdenv, glibc, flex, bison, cmake
|
||||
, version, src, meta }:
|
||||
stdenv.mkDerivation {
|
||||
pname = "scyther-cli";
|
||||
inherit version;
|
||||
|
||||
inherit src meta;
|
||||
|
||||
nativeBuildInputs = [ cmake flex bison ];
|
||||
buildInputs = [ glibc.static ];
|
||||
|
||||
patchPhase = ''
|
||||
# Since we're not in a git dir, the normal command this project uses to create this file wouldn't work
|
||||
printf "%s\n" "#define TAGVERSION \"${version}\"" > src/version.h
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
(cd src && cmakeConfigurePhase)
|
||||
'';
|
||||
|
||||
dontUseCmakeBuildDir = true;
|
||||
cmakeFlags = [ "-DCMAKE_C_FLAGS=-std=gnu89" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out/bin"
|
||||
mv src/scyther-linux "$out/bin/scyther-cli"
|
||||
ln -s "$out/bin/scyther-cli" "$out/bin/scyther-linux"
|
||||
'';
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
{ stdenv, lib, buildEnv, pkgsi686Linux, fetchFromGitHub, python27Packages, graphviz
|
||||
, includeGUI ? true
|
||||
, includeProtocols ? true
|
||||
}:
|
||||
let
|
||||
version = "1.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "v${version}";
|
||||
sha256 = "0rb4ha5bnjxnwj4f3hciq7kyj96fhw14hqbwl5kr9cdw8q62mx0h";
|
||||
owner = "cascremers";
|
||||
repo = "scyther";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "A tool for the automatic verification of security protocols";
|
||||
homepage = "https://www.cs.ox.ac.uk/people/cas.cremers/scyther/";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ infinisil ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
||||
cli = pkgsi686Linux.callPackage ./cli.nix {
|
||||
inherit version src meta;
|
||||
};
|
||||
|
||||
gui = stdenv.mkDerivation {
|
||||
pname = "scyther-gui";
|
||||
inherit version;
|
||||
inherit src meta;
|
||||
buildInputs = [
|
||||
python27Packages.wrapPython
|
||||
];
|
||||
|
||||
patchPhase = ''
|
||||
file=gui/Scyther/Scyther.py
|
||||
|
||||
# By default the scyther binary is looked for in the directory of the python script ($out/gui), but we want to have it look where our cli package is
|
||||
substituteInPlace $file --replace "return getMyDir()" "return \"${cli}/bin\""
|
||||
|
||||
# Removes the Shebang from the file, as this would be wrapped wrongly
|
||||
sed -i -e "1d" $file
|
||||
'';
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
propagatedBuildInputs = [
|
||||
python27Packages.wxPython
|
||||
graphviz
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out"/gui "$out"/bin
|
||||
cp -r gui/* "$out"/gui
|
||||
ln -s "$out"/gui/scyther-gui.py "$out/bin/scyther-gui"
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
wrapPythonProgramsIn "$out/gui" "$out $pythonPath"
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
installCheckPhase = ''
|
||||
"$out/gui/scyther.py" "$src/gui/Protocols/Demo/ns3.spdl"
|
||||
'';
|
||||
};
|
||||
in
|
||||
buildEnv {
|
||||
name = "scyther-${version}";
|
||||
inherit meta;
|
||||
paths = [ cli ] ++ lib.optional includeGUI gui;
|
||||
pathsToLink = [ "/bin" ];
|
||||
|
||||
postBuild = ''
|
||||
rm "$out/bin/scyther-linux"
|
||||
'' + lib.optionalString includeProtocols ''
|
||||
mkdir -p "$out/protocols"
|
||||
cp -rv ${src}/protocols/* "$out/protocols"
|
||||
'';
|
||||
}
|
@ -11,16 +11,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "delta";
|
||||
version = "0.11.2";
|
||||
version = "0.11.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dandavison";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-GboG7Ia27CTisY0YCFiAhzoCMxMAXlCeAPll19+JoxM=";
|
||||
sha256 = "sha256-qpoXUzXRcsUi1WHZAYGgnEaNxBYEQAdkXAz7YPiPae8=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-JEIMZFDEWaKXfe4OzaAxMop0XYQAcz8L7hcTBD8DJio=";
|
||||
cargoSha256 = "sha256-eds2W47+lOwO/HHKR+IjXOJOD8p1OYkk5qilDYTOUyk=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "glitter";
|
||||
version = "1.5.10";
|
||||
version = "1.5.11";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "milo123459";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-4d1zMCQ4rYU5kL7Qhwibt6+IfKHUjYndHHeX7JT9zwU=";
|
||||
sha256 = "sha256-WAQ4DwPKkATLa52GE5LZRVY0YH4nRStjPuQg7kdXRjw=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-eaSQGbsvAas7CLMtgSNWCqdrYU5Kc/0GY10rkNK05Uo=";
|
||||
cargoSha256 = "sha256-UK3gUAs+FalqboK7MuhE9kOc/Smu/EAN0BYbgg4PWns=";
|
||||
|
||||
# tests require it to be in a git repository
|
||||
preCheck = ''
|
||||
|
@ -8,16 +8,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "lima";
|
||||
version = "0.7.4";
|
||||
version = "0.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lima-vm";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-pn8GtFAZMQyFjOpn6blNBoDgQL7X1gaYjGsQHwvMzaQ=";
|
||||
sha256 = "sha256-bO7o3z9E7mGiUtlqI+mhhh+D6CG9j3BZ7IB8o/LDUPM=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-egZFJSGnFYfOcBMNNEsPV6ngf3ddoYCSntnuloYfpxo=";
|
||||
vendorSha256 = "sha256-MDmRkGa1m3YuUbffCwoChG0Fg74jyuQQ6ljfDlLatjI=";
|
||||
|
||||
nativeBuildInputs = [ makeWrapper installShellFiles ];
|
||||
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
buildManPages {
|
||||
pname = "s6-man-pages";
|
||||
version = "2.11.0.0.2";
|
||||
sha256 = "1ddab4l4wwrg2jdcrdqp1rx8dzbzbdsvx4mzayraxva4q97d1g9r";
|
||||
version = "2.11.0.0.5";
|
||||
sha256 = "03gl0vvdaqfb5hs0dfdbs9djxiyq3abcx9vwgkfw22b1rm2fa0r6";
|
||||
description = "Port of the documentation for the s6 supervision suite to mdoc";
|
||||
maintainers = [ lib.maintainers.sternenseemann ];
|
||||
}
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "v2ray-geoip";
|
||||
version = "202112090029";
|
||||
version = "202112160030";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "v2fly";
|
||||
repo = "geoip";
|
||||
rev = "97f4acb31d926ae31bb3cdc5c8948d8dcdddca79";
|
||||
sha256 = "sha256-kYMp/D7xVpBTu35YXq45bR2XebpVOW57UAc7H/6px/U=";
|
||||
rev = "4d86284b91a444c2ca989207f8f08a1c8798c95c";
|
||||
sha256 = "sha256-pv+oZVMROr7gyGcv60jIP8INt4vBAnUJT0FJNNn+Czc=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
|
||||
--suffix IDRIS2_LIBS ':' "$out/${name}/lib" \
|
||||
--suffix IDRIS2_DATA ':' "$out/${name}/support" \
|
||||
--suffix IDRIS2_PATH ':' "${additionalIdris2Paths}" \
|
||||
--suffix LD_LIBRARY_PATH ':' "$out/${name}/lib"
|
||||
--suffix ${if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH"} ':' "$out/${name}/lib"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
@ -5,6 +5,8 @@ with lib; mkCoqDerivation {
|
||||
pname = "category-theory";
|
||||
owner = "jwiegley";
|
||||
|
||||
release."20211213".rev = "449e30e929d56f6f90c22af2c91ffcc4d79837be";
|
||||
release."20211213".sha256 = "sha256:0vgfmph5l1zn6j4b851rcm43s8y9r83swsz07rpzhmfg34pk0nl0";
|
||||
release."20210730".rev = "d87937faaf7460bcd6985931ac36f551d67e11af";
|
||||
release."20210730".sha256 = "04x7433yvibxknk6gy4971yzb4saa3z4dnfy9n6irhyafzlxyf0f";
|
||||
release."20190414".rev = "706fdb4065cc2302d92ac2bce62cb59713253119";
|
||||
@ -14,7 +16,7 @@ with lib; mkCoqDerivation {
|
||||
|
||||
inherit version;
|
||||
defaultVersion = with versions; switch coq.coq-version [
|
||||
{ case = range "8.10" "8.13"; out = "20210730"; }
|
||||
{ case = range "8.10" "8.14"; out = "20211213"; }
|
||||
{ case = range "8.8" "8.9"; out = "20190414"; }
|
||||
{ case = range "8.6" "8.7"; out = "20180709"; }
|
||||
] null;
|
||||
|
@ -9,6 +9,16 @@
|
||||
let
|
||||
python = python3.override {
|
||||
packageOverrides = self: super: {
|
||||
aiofiles = super.aiofiles.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "0.8.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "Tinche";
|
||||
repo = "aiofiles";
|
||||
rev = "v${version}";
|
||||
sha256 = "0mr9pzji4vqyf2yzh8yxz5q7fm8mgmkimx1xh49wh625m72pxcap";
|
||||
};
|
||||
});
|
||||
|
||||
asgiref = super.asgiref.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "3.4.1";
|
||||
src = fetchFromGitHub {
|
||||
@ -41,22 +51,12 @@ let
|
||||
});
|
||||
|
||||
uvicorn = super.uvicorn.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "0.15.0";
|
||||
version = "0.16.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "encode";
|
||||
repo = "uvicorn";
|
||||
rev = version;
|
||||
sha256 = "074smp3448wcazlhc7sb8r54l4kfavr6yks3w5x60zl1qpijf52r";
|
||||
};
|
||||
});
|
||||
|
||||
zeroconf = super.zeroconf.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "0.36.13";
|
||||
src = fetchFromGitHub {
|
||||
owner = "jstasiak";
|
||||
repo = "python-zeroconf";
|
||||
rev = version;
|
||||
sha256 = "aYNb67ESyz2Q2CKLhG+/Z8Xtt0Js8uf+xrVSEpY0X8c=";
|
||||
sha256 = "14jih6j4q2qp5c9rgl798i5p51b4y6zkkj434q2l1naw0csphk4s";
|
||||
};
|
||||
});
|
||||
};
|
||||
|
@ -4,14 +4,14 @@
|
||||
let
|
||||
callPackage = newScope self;
|
||||
|
||||
version = "5.2.3";
|
||||
version = "5.2.4";
|
||||
|
||||
# pypi tarballs don't contain tests - https://github.com/platformio/platformio-core/issues/1964
|
||||
src = fetchFromGitHub {
|
||||
owner = "platformio";
|
||||
repo = "platformio-core";
|
||||
rev = "v${version}";
|
||||
sha256 = "0wbmwawn25srkyrd6hwrgli1himzsj08vbm76fgnpqdc84n78ckl";
|
||||
sha256 = "1dhyxrdxrca669qm6alxxn2jmvcwlpqrx9kfwh4iqy9za5717ag9";
|
||||
};
|
||||
|
||||
self = {
|
||||
|
@ -6,7 +6,7 @@ index 416dccfd..896c3649 100644
|
||||
@staticmethod
|
||||
@memoized(expire="1h")
|
||||
def load_spdx_licenses():
|
||||
- version = "3.14"
|
||||
- version = "3.15"
|
||||
- spdx_data_url = (
|
||||
- "https://raw.githubusercontent.com/spdx/license-list-data/"
|
||||
- "v%s/json/licenses.json" % version
|
||||
|
@ -20,14 +20,14 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fcft";
|
||||
version = "2.5.0";
|
||||
version = "2.5.1";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "dnkl";
|
||||
repo = "fcft";
|
||||
rev = version;
|
||||
sha256 = "0agqldh68hn898d3f6k99kjbz8had5j5k0jyvi71d4k9vhx8cy7c";
|
||||
sha256 = "0dn0ic2ddi5qz6nqscsn7nlih67ad8vpclppbqwas6xavdfq6va2";
|
||||
};
|
||||
|
||||
depsBuildBuild = [ pkg-config ];
|
||||
@ -44,6 +44,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
doCheck = true;
|
||||
|
||||
outputs = [ "out" "doc" "man" ];
|
||||
|
||||
passthru.tests = {
|
||||
noShaping = fcft.override { withShapingTypes = []; };
|
||||
onlyGraphemeShaping = fcft.override { withShapingTypes = [ "grapheme" ]; };
|
||||
|
@ -53,7 +53,7 @@ in {
|
||||
};
|
||||
|
||||
libtoxcore_0_2 = generic {
|
||||
version = "0.2.12";
|
||||
sha256 = "0a6sqpm00d2rn0nviqfz4gh9ck1wzci6rxgmqmcyryl5ca19ffvp";
|
||||
version = "0.2.13";
|
||||
sha256 = "0a1cp00bnxl3q4l74yqp4aa6fg9slz4rg4lfzkl3khvmm6nzckds";
|
||||
};
|
||||
}
|
||||
|
@ -2,14 +2,14 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tdlib";
|
||||
version = "1.7.9";
|
||||
version = "1.7.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tdlib";
|
||||
repo = "td";
|
||||
# https://github.com/tdlib/td/issues/1718
|
||||
rev = "7d41d9eaa58a6e0927806283252dc9e74eda5512";
|
||||
sha256 = "09b7srbfqi4gmg5pdi398pr0pxihw4d3cw85ycky54g862idzqs8";
|
||||
# https://github.com/tdlib/td/issues/1790
|
||||
rev = "a53cb30e99f937cfd64e0266fa558785a184a553";
|
||||
sha256 = "FX+66JRsigauLq2JLx0InWiedGeQJ9+ox+D/Bqik9ik=";
|
||||
};
|
||||
|
||||
buildInputs = [ gperf openssl readline zlib ];
|
||||
|
@ -6,11 +6,11 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aiohue";
|
||||
version = "3.0.3";
|
||||
version = "3.0.5";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-ajDwA8zFBQdFeI3oUBBWQZA13PNust21BWxrsB7PcTQ=";
|
||||
sha256 = "sha256-qOtfr6rrV+E/vdY3AprJ5G7p+VzYDVk1aq9/F0O0mLE=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-nest-sdm";
|
||||
version = "0.4.6";
|
||||
version = "0.4.8";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
owner = "allenporter";
|
||||
repo = "python-google-nest-sdm";
|
||||
rev = version;
|
||||
sha256 = "sha256-oMYCBmqDTPcGHwP3LFYX3CdbHw2hg41EQQv8iiv+ljE=";
|
||||
sha256 = "sha256-HHjCML/55jthqZ5WjNNsldr+8nul8bd8N9aNAoe/iBw=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -57,6 +57,18 @@ buildPythonPackage rec {
|
||||
--replace 'pytest_ordering' 'pytest_order'
|
||||
substituteInPlace test/functional/test_miscellaneous.py \
|
||||
--replace '@pytest.mark.last' '@pytest.mark.order("last")'
|
||||
|
||||
# Until a proper fix is created, just skip these tests
|
||||
# and ignore any breakage that may result from the API change in IPFS
|
||||
# See https://github.com/ipfs-shipyard/py-ipfs-http-client/issues/308
|
||||
substituteInPlace test/functional/test_pubsub.py \
|
||||
--replace '# the message that will be published' 'pytest.skip("This test fails because of an incompatibility with the experimental PubSub feature in IPFS>=0.11.0")' \
|
||||
--replace '# subscribe to the topic testing' 'pytest.skip("This test fails because of an incompatibility with the experimental PubSub feature in IPFS>=0.11.0")'
|
||||
substituteInPlace test/functional/test_other.py \
|
||||
--replace 'import ipfshttpclient' 'import ipfshttpclient; import pytest' \
|
||||
--replace 'assert ipfs_is_available' 'pytest.skip("Unknown test failure with IPFS >=0.11.0"); assert ipfs_is_available'
|
||||
substituteInPlace test/run-tests.py \
|
||||
--replace '--cov-fail-under=90' '--cov-fail-under=75'
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
|
@ -1,19 +1,14 @@
|
||||
{ lib, stdenv, buildPythonPackage, fetchPypi, poppler }:
|
||||
{ lib, buildPythonPackage, fetchPypi, poppler }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pdftotext";
|
||||
version = "2.2.1";
|
||||
version = "2.2.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "a067c121654917ecbe07fbd71c807c34bbdb1ea029e269ddd11925ee7e191d3f";
|
||||
sha256 = "sha256-Kpqom8YgIkCHgbOdGI+r9aOtEQO2Yw8yxOJ+OV95Zu4=";
|
||||
};
|
||||
|
||||
postPatch = lib.optionalString stdenv.isDarwin ''
|
||||
substituteInPlace setup.py \
|
||||
--replace '= brew_poppler_include()' '= "${lib.getDev poppler}/include", "${lib.getLib poppler}/lib"'
|
||||
'';
|
||||
|
||||
buildInputs = [ poppler ];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -18,8 +18,6 @@ buildPythonPackage {
|
||||
inherit disabled;
|
||||
doCheck = doCheck && !isPy27; # setuptools>=41.4 no longer collects correctly on python2
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
propagatedBuildInputs = [ six ] ++ lib.optionals isPy27 [ google-apputils ];
|
||||
propagatedNativeBuildInputs = [ buildPackages.protobuf ]; # For protoc.
|
||||
nativeBuildInputs = [ pyext ] ++ lib.optionals isPy27 [ google-apputils ];
|
||||
@ -41,32 +39,20 @@ buildPythonPackage {
|
||||
cd python
|
||||
'';
|
||||
|
||||
preConfigure = lib.optionalString (lib.versionAtLeast protobuf.version "2.6.0") ''
|
||||
export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=cpp
|
||||
export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION=2
|
||||
'';
|
||||
setupPyGlobalFlags = lib.optional (lib.versionAtLeast protobuf.version "2.6.0")
|
||||
"--cpp_implementation";
|
||||
|
||||
preBuild = ''
|
||||
# Workaround for https://github.com/google/protobuf/issues/2895
|
||||
${python.pythonForBuild.interpreter} setup.py build
|
||||
'' + lib.optionalString (lib.versionAtLeast protobuf.version "2.6.0") ''
|
||||
${python.pythonForBuild.interpreter} setup.py build_ext --cpp_implementation
|
||||
'';
|
||||
|
||||
installFlags = lib.optional (lib.versionAtLeast protobuf.version "2.6.0")
|
||||
"--install-option='--cpp_implementation'";
|
||||
|
||||
# the _message.so isn't installed, so we'll do that manually.
|
||||
# if someone can figure out a less hacky way to get the _message.so to
|
||||
# install, please do replace this.
|
||||
postInstall = lib.optionalString (lib.versionAtLeast protobuf.version "2.6.0") ''
|
||||
cp -v $(find build -name "_message*") $out/${python.sitePackages}/google/protobuf/pyext
|
||||
'';
|
||||
pythonImportsCheck = [
|
||||
"google.protobuf"
|
||||
] ++ lib.optionals (lib.versionAtLeast protobuf.version "2.6.0") [
|
||||
"google.protobuf.internal._api_implementation" # Verify that --cpp_implementation worked
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Protocol Buffers are Google's data interchange format";
|
||||
homepage = "https://developers.google.com/protocol-buffers/";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ knedlsepp ];
|
||||
};
|
||||
|
||||
passthru.protobuf = protobuf;
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pykeyatome";
|
||||
version = "1.1.2";
|
||||
version = "1.2.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
owner = "jugla";
|
||||
repo = "pyKeyAtome";
|
||||
rev = "V${version}";
|
||||
sha256 = "sha256-5aKZaS+BFKR1ldAY3BlS/oqYGz1C+ZRkNL9ez/etWh4=";
|
||||
sha256 = "173bf4nrj4jqp2119gfmbra7rhbr30bkjkd44rw9450nmpfmh7pk";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -66,6 +66,7 @@ buildPythonPackage rec {
|
||||
nosetests pyscf/ -v \
|
||||
--exclude-dir=examples --exclude-dir=pyscf/pbc/grad \
|
||||
--exclude-dir=pyscf/x2c \
|
||||
--exclude-dir=pyscf/adc \
|
||||
--exclude-dir=pyscf/pbc/tdscf \
|
||||
-e test_bz \
|
||||
-e h2o_vdz \
|
||||
@ -103,7 +104,7 @@ buildPythonPackage rec {
|
||||
description = "Python-based simulations of chemistry framework";
|
||||
homepage = "https://github.com/pyscf/pyscf";
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix;
|
||||
platforms = [ "x86_64-linux" "x86_64-darwin" ];
|
||||
maintainers = [ maintainers.sheepforce ];
|
||||
};
|
||||
}
|
||||
|
@ -12,14 +12,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pysmappee";
|
||||
version = "0.2.27";
|
||||
version = "0.2.29";
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "smappee";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-CzdkeC53ye+IMeGUiD1mK84h2ruC1/ZpjlDjuWMVoyQ=";
|
||||
sha256 = "sha256-Ffi55FZsZUKDcS4qV46NpRK3VP6axzrL2BO+hYW7J9E=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -9,12 +9,12 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pytest-httpserver";
|
||||
version = "1.0.2";
|
||||
version = "1.0.3";
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "pytest_httpserver";
|
||||
inherit version;
|
||||
sha256 = "sha256-JwH9HZgU1YVR+dEETbM1xrqYcxaTZsWDSVI6WM907UA=";
|
||||
sha256 = "87561c4fa6a7bc306d76d1979a3eb9d54eb26bfb2f3f51f1643bf3c090ce629d";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ werkzeug ];
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "robotframework";
|
||||
version = "4.1.2";
|
||||
version = "4.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0s6lakbd8h1pa4lfdj18sm13gpywszgpcns4hz026a4kam787kby";
|
||||
sha256 = "0j71awmfkwk7prz82kr1zbcl3nrih3396sshrygnqlrdjmgivd3p";
|
||||
};
|
||||
|
||||
checkInputs = [ jsonschema ];
|
||||
|
@ -46,13 +46,13 @@ with py.pkgs;
|
||||
|
||||
buildPythonApplication rec {
|
||||
pname = "checkov";
|
||||
version = "2.0.660";
|
||||
version = "2.0.664";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bridgecrewio";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-ebVOEtJTlYaj9sYJsJ8BBxx+2PSyzbwivQIph3slaho=";
|
||||
sha256 = "sha256-t7u47gkUtn9EwBWtz97GkiM8tyGCFk4S5UTQ+OosI2o=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with py.pkgs; [
|
||||
|
7
pkgs/development/tools/build-managers/bazel/README.md
Normal file
7
pkgs/development/tools/build-managers/bazel/README.md
Normal file
@ -0,0 +1,7 @@
|
||||
# The Bazel build tool
|
||||
|
||||
https://bazel.build/
|
||||
|
||||
The bazel tool requires regular maintenance, especially under darwin, so we created a maintainers team.
|
||||
|
||||
Please ping @NixOS/bazel in your github PR/issue to increase your chance of a quick turnaround, thanks!
|
@ -22,7 +22,7 @@ buildGoModule rec {
|
||||
homepage = "https://github.com/buchgr/bazel-remote";
|
||||
description = "A remote HTTP/1.1 cache for Bazel";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.uri-canva ];
|
||||
maintainers = lib.teams.bazel.members;
|
||||
platforms = platforms.darwin ++ platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -149,7 +149,7 @@ stdenv'.mkDerivation rec {
|
||||
homepage = "https://github.com/bazelbuild/bazel/";
|
||||
description = "Build tool that builds code quickly and reliably";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.mboes ];
|
||||
maintainers = lib.teams.bazel.members;
|
||||
inherit platforms;
|
||||
};
|
||||
|
||||
|
@ -150,7 +150,7 @@ stdenv'.mkDerivation rec {
|
||||
homepage = "https://github.com/bazelbuild/bazel/";
|
||||
description = "Build tool that builds code quickly and reliably";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.mboes ];
|
||||
maintainers = lib.teams.bazel.members;
|
||||
inherit platforms;
|
||||
};
|
||||
|
||||
|
@ -164,7 +164,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://github.com/bazelbuild/bazel/";
|
||||
description = "Build tool that builds code quickly and reliably";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.mboes ];
|
||||
maintainers = lib.teams.bazel.members;
|
||||
inherit platforms;
|
||||
};
|
||||
|
||||
|
@ -177,7 +177,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://github.com/bazelbuild/bazel/";
|
||||
description = "Build tool that builds code quickly and reliably";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.mboes ];
|
||||
maintainers = lib.teams.bazel.members;
|
||||
inherit platforms;
|
||||
};
|
||||
|
||||
|
@ -27,6 +27,8 @@ buildGoModule rec {
|
||||
description = "Tools for working with Google's bazel buildtool. Includes buildifier, buildozer, and unused_deps";
|
||||
homepage = "https://github.com/bazelbuild/buildtools";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ elasticdog uri-canva marsam ];
|
||||
maintainers = with maintainers;
|
||||
[ elasticdog uri-canva marsam ]
|
||||
++ lib.teams.bazel.members;
|
||||
};
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
chunky_png (1.3.11)
|
||||
chunky_png (1.4.0)
|
||||
compass (1.0.3)
|
||||
chunky_png (~> 1.2)
|
||||
compass-core (~> 1.0.2)
|
||||
@ -14,10 +14,10 @@ GEM
|
||||
sass (>= 3.3.0, < 3.5)
|
||||
compass-import-once (1.0.5)
|
||||
sass (>= 3.2, < 3.5)
|
||||
ffi (1.10.0)
|
||||
multi_json (1.13.1)
|
||||
rb-fsevent (0.10.3)
|
||||
rb-inotify (0.10.0)
|
||||
ffi (1.15.4)
|
||||
multi_json (1.15.0)
|
||||
rb-fsevent (0.11.0)
|
||||
rb-inotify (0.10.1)
|
||||
ffi (~> 1.0)
|
||||
sass (3.4.25)
|
||||
|
||||
@ -28,4 +28,4 @@ DEPENDENCIES
|
||||
compass!
|
||||
|
||||
BUNDLED WITH
|
||||
2.1.4
|
||||
2.2.24
|
||||
|
@ -4,10 +4,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "124najs9prqzrzk49h53kap992rmqxj0wni61z2hhsn7mwmgdp9d";
|
||||
sha256 = "1znw5x86hmm9vfhidwdsijz8m38pqgmv98l9ryilvky0aldv7mc9";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.3.11";
|
||||
version = "1.4.0";
|
||||
};
|
||||
compass = {
|
||||
dependencies = ["chunky_png" "compass-core" "compass-import-once" "rb-fsevent" "rb-inotify" "sass"];
|
||||
@ -47,30 +47,30 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0j8pzj8raxbir5w5k6s7a042sb5k02pg0f8s4na1r5lan901j00p";
|
||||
sha256 = "0ssxcywmb3flxsjdg13is6k01807zgzasdhj4j48dm7ac59cmksn";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.10.0";
|
||||
version = "1.15.4";
|
||||
};
|
||||
multi_json = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
|
||||
sha256 = "0pb1g1y3dsiahavspyzkdy39j4q377009f6ix0bh1ag4nqw43l0z";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.13.1";
|
||||
version = "1.15.0";
|
||||
};
|
||||
rb-fsevent = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8";
|
||||
sha256 = "1qsx9c4jr11vr3a9s5j83avczx9qn9rjaf32gxpc2v451hvbc0is";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.10.3";
|
||||
version = "0.11.0";
|
||||
};
|
||||
rb-inotify = {
|
||||
dependencies = ["ffi"];
|
||||
@ -78,10 +78,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1fs7hxm9g6ywv2yih83b879klhc4fs8i0p9166z795qmd77dk0a4";
|
||||
sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.10.0";
|
||||
version = "0.10.1";
|
||||
};
|
||||
sass = {
|
||||
groups = ["default"];
|
||||
|
@ -12,16 +12,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "krankerl";
|
||||
version = "0.13.2";
|
||||
version = "0.13.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ChristophWurst";
|
||||
repo = "krankerl";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Kol39AtM5m6FC+s5SDbQhWuASkGbeXPlmSGb7axEuK8=";
|
||||
sha256 = "sha256-/zRO+CVYQgx9/j14zgNm/ABzLprt0OYne+O6hOEjSEw=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-bPcKe3vE3VIjLJ4iYdF3Gt0sID09gRpxG5TpTGWhnPs=";
|
||||
cargoSha256 = "sha256-LWQRFgDxl2yxP+v1TUENaTGrA/udh84AJvWIkfTJezM=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
|
@ -18,12 +18,12 @@ let
|
||||
shas =
|
||||
if enableUnfree
|
||||
then {
|
||||
x86_64-linux = "1xwklhqxk5rmdrgy2simwvijzq29kyq5w2w3hy53xh2i1zlnyvq3";
|
||||
x86_64-darwin = "1qpdn28mrpggd55khzqqld6r89l0hb870rigxcw2i8p2yx3jv106";
|
||||
x86_64-linux = "1a501lavxhckb3l93sbrbqyshicwkk6p89frry4x8p037xcfpy0x";
|
||||
x86_64-darwin = "0zm45af30shhcg3mdhcma6rms1hyrx62rm5jzwnz9kxv4d30skbw";
|
||||
}
|
||||
else {
|
||||
x86_64-linux = "1wpnwal2rq5v2bsp5qil9j6dplif7ql5394sy4ia5ghp2fzifxmf";
|
||||
x86_64-darwin = "12z8i0wbw10c097glbpdy350p0h3957433f51qfx2p0ghgkzkhzv";
|
||||
x86_64-linux = "0wfdipf21apyily7mvlqgyc7m5jpr96zgrryzwa854z3xb2vw8zg";
|
||||
x86_64-darwin = "1nklfx4yz6hsxlljvnvwjy7pncv9mzngl84710xad5jlyras3sdj";
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
|
@ -4,23 +4,23 @@
|
||||
, stdenv
|
||||
, makeWrapper
|
||||
, fetchurl
|
||||
, nodejs-14_x
|
||||
, nodejs-16_x
|
||||
, coreutils
|
||||
, which
|
||||
}:
|
||||
|
||||
with lib;
|
||||
let
|
||||
nodejs = nodejs-14_x;
|
||||
nodejs = nodejs-16_x;
|
||||
inherit (builtins) elemAt;
|
||||
info = splitString "-" stdenv.hostPlatform.system;
|
||||
arch = elemAt info 0;
|
||||
plat = elemAt info 1;
|
||||
shas =
|
||||
{
|
||||
x86_64-linux = "19p9s4sir982bb1zcldrbphhwfs9i11p0q28vgc421iqg10kjlf1";
|
||||
x86_64-darwin = "0qq557ngwwakifidyrccga4cadj9k9pzhjwy4msmbcgf5pb86qyc";
|
||||
aarch64-linux = "183cp1h8d3n7xfcpcys4hf36palczxa409afyp62kzyzckngy0j8";
|
||||
x86_64-linux = "0jivwsrq31n0qfznrsjfsn65sg3wpbd990afn2wzjnj4drq7plz6";
|
||||
x86_64-darwin = "02483aqzrccq1x6rwznmcazijdd46yxj9vnbihnvp2xyp3w9as45";
|
||||
aarch64-linux = "0iw155gkkl1hshc80lfj95rssg039ig21wz1l3srmmf2x4f934s9";
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
|
@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mold";
|
||||
version = "0.9.6";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rui314";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0mj258fy8l4i23jd6ail0xrrq3das7lmrf1brrr1591ahx4vjj14";
|
||||
sha256 = "sha256-89Dh4qly70Jzyo/KPlRte58hbN5HNnzZpi32tFd8fXU=";
|
||||
};
|
||||
|
||||
buildInputs = [ zlib openssl ];
|
||||
|
@ -17,11 +17,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cypress";
|
||||
version = "8.3.1";
|
||||
version = "9.1.1";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
|
||||
sha256 = "sha256-aBnF3Ij7oTws+0qOHwIIioxy1sJslb02wn8eGyKFt/c=";
|
||||
sha256 = "sha256-zJi4fNsj2MM7sv5zb3B3a03tmkhzsb9sTTqEhpd7z+w=";
|
||||
};
|
||||
|
||||
# don't remove runtime deps
|
||||
|
@ -13,17 +13,18 @@
|
||||
, gtk3
|
||||
, pantheon
|
||||
, libgee
|
||||
, libhandy
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gnonograms";
|
||||
version = "1.4.5";
|
||||
version = "2.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jeremypw";
|
||||
repo = "gnonograms";
|
||||
rev = "v${version}";
|
||||
sha256 = "1ly3inp6dvjrixdysz5hdfwlhbs49ks0lf8062z2iq6gaf8ivkb2";
|
||||
sha256 = "sha256-2uXaybpCAm9cr0o7bqfhgD7mMNPwtv1X/PgnFnSDOl0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@ -46,6 +47,7 @@ stdenv.mkDerivation rec {
|
||||
gtk3
|
||||
pantheon.granite
|
||||
libgee
|
||||
libhandy
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ buildFHSUserEnv, callPackage, lib, stdenvNoCC }:
|
||||
{ buildFHSUserEnv, callPackage, lib }:
|
||||
let
|
||||
|
||||
shticker-book-unwritten-unwrapped = callPackage ./unwrapped.nix { };
|
||||
@ -7,11 +7,12 @@ in buildFHSUserEnv {
|
||||
name = "shticker_book_unwritten";
|
||||
targetPkgs = pkgs: with pkgs; [
|
||||
alsa-lib
|
||||
libglvnd
|
||||
libpulseaudio
|
||||
shticker-book-unwritten-unwrapped
|
||||
xorg.libX11
|
||||
xorg.libXcursor
|
||||
xorg.libXext
|
||||
libglvnd
|
||||
shticker-book-unwritten-unwrapped
|
||||
];
|
||||
runScript = "shticker_book_unwritten";
|
||||
|
||||
|
84
pkgs/misc/emulators/ares/default.nix
Normal file
84
pkgs/misc/emulators/ares/default.nix
Normal file
@ -0,0 +1,84 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, alsa-lib
|
||||
, gtksourceview3
|
||||
, libXv
|
||||
, openal
|
||||
, libpulseaudio
|
||||
, libao
|
||||
, udev
|
||||
, SDL2
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ares";
|
||||
version = "126";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ares-emulator";
|
||||
repo = "ares";
|
||||
rev = "v${version}";
|
||||
sha256 = "1rj4vmz8lvpmfc6wni7222kagnw9f6jda9rcb6qky2kpizlp2d24";
|
||||
};
|
||||
|
||||
parallel-rdp = fetchFromGitHub {
|
||||
owner = "Themaister";
|
||||
repo = "parallel-rdp-standalone";
|
||||
rev = "0dcebe11ee79288441e40e145c8f340d81f52316";
|
||||
sha256 = "1avp4wyfkhk5yfjqx5w3jbqghn2mq5la7k9248kjmnp9n9lip6w9";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./fix-ruby.patch
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
dontConfigure = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
gtksourceview3
|
||||
libXv
|
||||
openal
|
||||
libpulseaudio
|
||||
libao
|
||||
udev
|
||||
SDL2
|
||||
];
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
rm -rf ares/n64/vulkan/parallel-rdp
|
||||
ln -sf ${parallel-rdp} ares/n64/vulkan/parallel-rdp
|
||||
make -C desktop-ui -j $NIX_BUILD_CORES openmp=true vulkan=true local=false hiro=gtk3
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/{bin,share/{applications,ares,pixmaps}}
|
||||
cp desktop-ui/out/ares $out/bin
|
||||
cp desktop-ui/resource/ares.desktop $out/share/applications
|
||||
cp desktop-ui/resource/{ares{.ico,.png},font.png} $out/share/pixmaps
|
||||
cp -r ares/{Shaders,System} $out/share/ares
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://ares.dev";
|
||||
description = "Open-source multi-system emulator with a focus on accuracy and preservation";
|
||||
license = licenses.isc;
|
||||
maintainers = with maintainers; [ Madouura ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
27
pkgs/misc/emulators/ares/fix-ruby.patch
Normal file
27
pkgs/misc/emulators/ares/fix-ruby.patch
Normal file
@ -0,0 +1,27 @@
|
||||
diff --git a/ruby/GNUmakefile b/ruby/GNUmakefile
|
||||
index e85a51701..7fca89e0f 100644
|
||||
--- a/ruby/GNUmakefile
|
||||
+++ b/ruby/GNUmakefile
|
||||
@@ -8,19 +8,9 @@ ifeq ($(ruby),)
|
||||
ruby += audio.openal
|
||||
ruby += input.quartz #input.carbon
|
||||
else ifeq ($(platform),linux)
|
||||
- pkg_check1 = $(if $(shell test -e /usr/lib/lib$1.so && echo 1),$2)
|
||||
- pkg_check2 = $(if $(shell test -e /usr/lib/$(shell uname -m)-linux-gnu/lib$1.so && echo 1),$2)
|
||||
- pkg_check = $(call pkg_check1,$1,$2) $(call pkg_check2,$1,$2)
|
||||
- ruby += video.glx video.glx2 video.xshm
|
||||
- ruby += $(call pkg_check,Xv,video.xvideo)
|
||||
- ruby += audio.oss audio.alsa
|
||||
- ruby += $(call pkg_check,openal,audio.openal)
|
||||
- ruby += $(call pkg_check,pulse,audio.pulseaudio)
|
||||
- ruby += $(call pkg_check,pulse-simple,audio.pulseaudiosimple)
|
||||
- ruby += $(call pkg_check,ao,audio.ao)
|
||||
- ruby += input.xlib
|
||||
- ruby += $(call pkg_check,udev,input.udev)
|
||||
- ruby += $(call pkg_check,SDL2,input.sdl)
|
||||
+ ruby += video.glx video.glx2 video.xshm video.xvideo
|
||||
+ ruby += audio.oss audio.alsa audio.openal audio.pulseaudio audio.pulseaudiosimple audio.ao
|
||||
+ ruby += input.xlib input.udev input.sdl
|
||||
else ifeq ($(platform),bsd)
|
||||
pkg_check = $(if $(shell test -e /usr/local/lib/lib$1.so && echo 1),$2)
|
||||
ruby += video.glx video.glx2 video.xshm
|
@ -8,7 +8,7 @@ let beat = package : extraArgs : buildGoPackage (rec {
|
||||
owner = "elastic";
|
||||
repo = "beats";
|
||||
rev = "v${version}";
|
||||
sha256 = "0jkiz5dfdi9zsji04ipcmcj7pml9294v455y7s2c22k24gyzbaw8";
|
||||
sha256 = "1vnw9clsc10cfpjf6vxvc6m507b2q17sgsl079iwqbp4v0286il7";
|
||||
};
|
||||
|
||||
goPackagePath = "github.com/elastic/beats";
|
||||
|
@ -8,10 +8,10 @@ let beat = package: extraArgs: buildGoModule (rec {
|
||||
owner = "elastic";
|
||||
repo = "beats";
|
||||
rev = "v${version}";
|
||||
sha256 = "0gjyzprgj9nskvlkm2bf125b7qn3608llz4kh1fyzsvrw6zb7sm8";
|
||||
sha256 = "sha256-9Jl5Xo1iKdOY9ZE5JXKSL4ee+NdsN3KCY2dDYuxlzPI=";
|
||||
};
|
||||
|
||||
vendorSha256 = "04cwf96fh60ld3ndjzzssgirc9ssb53yq71j6ksx36m3y1x7fq9c";
|
||||
vendorSha256 = "sha256-tyxyM7RsTHTVVxc9gagPsSvFRaWGTmobKzyv9RODXBk=";
|
||||
|
||||
subPackages = [ package ];
|
||||
|
||||
@ -24,7 +24,14 @@ let beat = package: extraArgs: buildGoModule (rec {
|
||||
} // extraArgs);
|
||||
in
|
||||
rec {
|
||||
filebeat7 = beat "filebeat" { meta.description = "Lightweight shipper for logfiles"; };
|
||||
filebeat7 = beat "filebeat" {
|
||||
meta.description = "Lightweight shipper for logfiles";
|
||||
buildInputs = [ systemd ];
|
||||
tags = [ "withjournald" ];
|
||||
postFixup = ''
|
||||
patchelf --set-rpath ${lib.makeLibraryPath [ (lib.getLib systemd) ]} "$out/bin/filebeat"
|
||||
'';
|
||||
};
|
||||
heartbeat7 = beat "heartbeat" { meta.description = "Lightweight shipper for uptime monitoring"; };
|
||||
metricbeat7 = beat "metricbeat" {
|
||||
meta.description = "Lightweight shipper for metrics";
|
||||
@ -47,15 +54,4 @@ rec {
|
||||
PostgreSQL, Redis or Thrift and correlate the messages into transactions.
|
||||
'';
|
||||
};
|
||||
journalbeat7 = beat "journalbeat" {
|
||||
meta.description = ''
|
||||
Journalbeat is an open source data collector to read and forward
|
||||
journal entries from Linuxes with systemd.
|
||||
'';
|
||||
buildInputs = [ systemd.dev ];
|
||||
postFixup = let libPath = lib.makeLibraryPath [ (lib.getLib systemd) ]; in
|
||||
''
|
||||
patchelf --set-rpath ${libPath} "$out/bin/journalbeat"
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
@ -25,12 +25,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
dontConfigure = true;
|
||||
|
||||
# Disable check as it's too slow.
|
||||
# doCheck = true;
|
||||
|
||||
#This is needed even though it's the default for some reason.
|
||||
checkTarget = "check";
|
||||
|
||||
# Can't use "make install" here
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"compe-tmux": {
|
||||
"date": "2021-12-07",
|
||||
"date": "2021-12-15",
|
||||
"new": "cmp-tmux"
|
||||
},
|
||||
"gist-vim": {
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -227,11 +227,6 @@ self: super: {
|
||||
'';
|
||||
});
|
||||
|
||||
ensime-vim = super.ensime-vim.overrideAttrs (old: {
|
||||
passthru.python3Dependencies = ps: with ps; [ sexpdata websocket-client ];
|
||||
dependencies = with self; [ vimproc-vim vimshell-vim self.self forms ];
|
||||
});
|
||||
|
||||
fcitx-vim = super.fcitx-vim.overrideAttrs (old: {
|
||||
passthru.python3Dependencies = ps: with ps; [ dbus-python ];
|
||||
meta = {
|
||||
@ -748,7 +743,7 @@ self: super: {
|
||||
libiconv
|
||||
];
|
||||
|
||||
cargoSha256 = "sha256-zYm+7qAvhVGa/afddHhI2aQxmiLOkus5PHZBDP9S/Qg=";
|
||||
cargoSha256 = "sha256-iE0L4pSKPf8lf76DuSTnU7LfNUgy1O06IgxracsLpFA=";
|
||||
};
|
||||
in
|
||||
''
|
||||
|
@ -147,7 +147,6 @@ embark-theme/vim as embark-vim
|
||||
embear/vim-localvimrc
|
||||
enomsg/vim-haskellConcealPlus
|
||||
enricobacis/vim-airline-clock
|
||||
ensime/ensime-vim
|
||||
ervandew/supertab
|
||||
esneider/YUNOcommit.vim
|
||||
euclidianAce/BetterLua.vim
|
||||
|
@ -5,13 +5,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "sof-firmware";
|
||||
version = "1.9.2";
|
||||
version = "1.9.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "thesofproject";
|
||||
repo = "sof-bin";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-aEoLlP34rorllCdTneATlCHnmhJD/VABV9Uv4dDmShA=";
|
||||
sha256 = "sha256-mQGwc0nwjku9ZxcFy8H4QiBLETkAeyqYvFzBHtK8/DY=";
|
||||
};
|
||||
|
||||
dontFixup = true; # binaries must not be stripped or patchelfed
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
let
|
||||
# having the full version string here makes it easier to update
|
||||
modDirVersion = "5.15.6-zen2";
|
||||
modDirVersion = "5.15.8-zen1";
|
||||
parts = lib.splitString "-" modDirVersion;
|
||||
version = lib.elemAt parts 0;
|
||||
suffix = lib.elemAt parts 1;
|
||||
@ -19,7 +19,7 @@ buildLinux (args // {
|
||||
owner = "zen-kernel";
|
||||
repo = "zen-kernel";
|
||||
rev = "v${modDirVersion}";
|
||||
sha256 = "sha256-lakNE+Ac3AHfD6e9haXkwQL134UNduk8o8UNtyAQ4U0=";
|
||||
sha256 = "sha256-vuMgxdGjTpR4iVVm1y28Hj3CdfpwGLnTpyZEnz3jd1U=";
|
||||
};
|
||||
|
||||
structuredExtraConfig = with lib.kernel; {
|
||||
|
@ -362,16 +362,14 @@ if [ "$action" = edit ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ORIGIN_PWD="$PWD"
|
||||
|
||||
tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX)
|
||||
SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60"
|
||||
cd "$tmpDir"
|
||||
|
||||
cleanup() {
|
||||
for ctrl in "$tmpDir"/ssh-*; do
|
||||
ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true
|
||||
done
|
||||
cd "$ORIGIN_PWD"
|
||||
rm -rf "$tmpDir"
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
@ -7,23 +7,15 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "calibre-web";
|
||||
version = "0.6.13";
|
||||
version = "0.6.14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "janeczku";
|
||||
repo = "calibre-web";
|
||||
rev = version;
|
||||
sha256 = "sha256-zU7ujvFPi4UaaEglIK3YX3TJxBME35NEKKblnJRt0tM=";
|
||||
sha256 = "sha256-rR5pUB3A0WNQxq7ZJ6ykua7hMlzs49aMmVbBUOkOVfA=";
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace setup.cfg \
|
||||
--replace "requests>=2.11.1,<2.25.0" "requests" \
|
||||
--replace "cps = calibreweb:main" "calibre-web = calibreweb:main" \
|
||||
--replace "PyPDF3>=1.0.0,<1.0.4" "PyPDF3>=1.0.0" \
|
||||
--replace "unidecode>=0.04.19,<1.3.0" "unidecode>=0.04.19"
|
||||
'';
|
||||
|
||||
patches = [
|
||||
# default-logger.patch switches default logger to /dev/stdout. Otherwise calibre-web tries to open a file relative
|
||||
# to its location, which can't be done as the store is read-only. Log file location can later be configured using UI
|
||||
@ -42,6 +34,13 @@ python3.pkgs.buildPythonApplication rec {
|
||||
mkdir -p src/calibreweb
|
||||
mv cps.py src/calibreweb/__init__.py
|
||||
mv cps src/calibreweb
|
||||
|
||||
substituteInPlace setup.cfg \
|
||||
--replace "requests>=2.11.1,<2.25.0" "requests" \
|
||||
--replace "cps = calibreweb:main" "calibre-web = calibreweb:main" \
|
||||
--replace "PyPDF3>=1.0.0,<1.0.4" "PyPDF3>=1.0.0" \
|
||||
--replace "unidecode>=0.04.19,<1.3.0" "unidecode>=0.04.19" \
|
||||
--replace "flask-wtf>=0.14.2,<0.16.0" "flask-wtf>=0.14.2"
|
||||
'';
|
||||
|
||||
# Upstream repo doesn't provide any tests.
|
||||
@ -52,6 +51,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
flask-babel
|
||||
flask_login
|
||||
flask_principal
|
||||
flask_wtf
|
||||
iso-639
|
||||
lxml
|
||||
pypdf3
|
||||
|
@ -2,7 +2,7 @@
|
||||
# Do not edit!
|
||||
|
||||
{
|
||||
version = "2021.12.1";
|
||||
version = "2021.12.2";
|
||||
components = {
|
||||
"abode" = ps: with ps; [ abodepy ];
|
||||
"accuweather" = ps: with ps; [ accuweather ];
|
||||
|
@ -252,7 +252,7 @@ let
|
||||
extraBuildInputs = extraPackages py.pkgs;
|
||||
|
||||
# Don't forget to run parse-requirements.py after updating
|
||||
hassVersion = "2021.12.1";
|
||||
hassVersion = "2021.12.2";
|
||||
|
||||
in with py.pkgs; buildPythonApplication rec {
|
||||
pname = "homeassistant";
|
||||
@ -269,7 +269,7 @@ in with py.pkgs; buildPythonApplication rec {
|
||||
owner = "home-assistant";
|
||||
repo = "core";
|
||||
rev = version;
|
||||
hash = "sha256:11qlalfzykbq5ydn2cagkqcbvdjkmjcdpp6lgiys9lyrw1rxycnb";
|
||||
hash = "sha256:0rb6kwvrjq258qv8xh4qbpw3n91bb263dcqp3f1dg45n8mbcdr60";
|
||||
};
|
||||
|
||||
# leave this in, so users don't have to constantly update their downstream patch handling
|
||||
|
@ -4,11 +4,11 @@ buildPythonPackage rec {
|
||||
# the frontend version corresponding to a specific home-assistant version can be found here
|
||||
# https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
|
||||
pname = "home-assistant-frontend";
|
||||
version = "20211212.0";
|
||||
version = "20211215.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-cYh8xBUS8rb2koNAq8JwWtrOHSF1jC5v0lq+W1SwiXI=";
|
||||
sha256 = "sha256-G2w+L+tQi47JOygYZ1+VtC96FBPet5klkW0LUeaxWBY=";
|
||||
};
|
||||
|
||||
# there is nothing to strip in this package
|
||||
|
33
pkgs/servers/nosql/influxdb2/cli.nix
Normal file
33
pkgs/servers/nosql/influxdb2/cli.nix
Normal file
@ -0,0 +1,33 @@
|
||||
{ buildGoModule
|
||||
, buildGoPackage
|
||||
, fetchFromGitHub
|
||||
, lib
|
||||
}:
|
||||
|
||||
let
|
||||
version = "2.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "influxdata";
|
||||
repo = "influx-cli";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-9FUchI93xLpQwtpbr5S3GfVrApHaemwbnRPIfAWmG6Y=";
|
||||
};
|
||||
|
||||
in buildGoModule {
|
||||
pname = "influx-cli";
|
||||
version = version;
|
||||
src = src;
|
||||
|
||||
vendorSha256 = "sha256-Boz1G8g0fjjlflxZh4V8sd/v0bE9Oy3DpqywOpKxjd0=";
|
||||
subPackages = [ "cmd/influx" ];
|
||||
|
||||
ldflags = [ "-X main.commit=v${version}" "-X main.version=${version}" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "CLI for managing resources in InfluxDB v2";
|
||||
license = licenses.mit;
|
||||
homepage = "https://influxdata.com/";
|
||||
maintainers = with maintainers; [ abbradar danderson ];
|
||||
};
|
||||
}
|
12
pkgs/servers/nosql/influxdb2/combined.nix
Normal file
12
pkgs/servers/nosql/influxdb2/combined.nix
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
buildEnv,
|
||||
influxdb2-server,
|
||||
influxdb2-cli,
|
||||
}:
|
||||
buildEnv {
|
||||
name = "influxdb2";
|
||||
paths = [
|
||||
influxdb2-server
|
||||
influxdb2-cli
|
||||
];
|
||||
}
|
@ -1,35 +1,31 @@
|
||||
{ buildGoModule
|
||||
, buildGoPackage
|
||||
, fetchFromGitHub
|
||||
, fetchurl
|
||||
, go-bindata
|
||||
, lib
|
||||
, llvmPackages
|
||||
, perl
|
||||
, pkg-config
|
||||
, rustPlatform
|
||||
, stdenv
|
||||
, libiconv
|
||||
}:
|
||||
|
||||
# Note for maintainers: use ./update-influxdb2.sh to update the Yarn
|
||||
# dependencies nix expression.
|
||||
|
||||
let
|
||||
version = "2.0.8";
|
||||
shorthash = "e91d41810f"; # git rev-parse HEAD with 2.0.8 checked out
|
||||
libflux_version = "0.124.0";
|
||||
version = "2.1.1";
|
||||
ui_version = "2.1.2";
|
||||
libflux_version = "0.139.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "influxdata";
|
||||
repo = "influxdb";
|
||||
rev = "v${version}";
|
||||
sha256 = "0hbinnja13xr9ziyynjsnsbrxmyrvag7xdgfwq2ya28g07lw5wgq";
|
||||
sha256 = "sha256-wf01DhB1ampZuWPkHUEOf3KJK4GjeOAPL3LG2+g4NGY=";
|
||||
};
|
||||
|
||||
ui = fetchurl {
|
||||
url = "https://github.com/influxdata/ui/releases/download/OSS-v${version}/build.tar.gz";
|
||||
# https://github.com/influxdata/ui/releases/download/OSS-v${version}/sha256.txt
|
||||
sha256 = "94965ae999a1098c26128141fbb849be3da9a723d509118eb6e0db4384ee01fc";
|
||||
url = "https://github.com/influxdata/ui/releases/download/OSS-${ui_version}/build.tar.gz";
|
||||
sha256 = "sha256-fXjShNJfKN/ZQNQHoX9/Ou4XBrXavCN+rcO+8AMc5Ug=";
|
||||
};
|
||||
|
||||
flux = rustPlatform.buildRustPackage {
|
||||
@ -39,10 +35,10 @@ let
|
||||
owner = "influxdata";
|
||||
repo = "flux";
|
||||
rev = "v${libflux_version}";
|
||||
sha256 = "1g1qilfzxqbbjbfvgkf7k7spcnhzvlmrqacpqdl05418ywkp3v29";
|
||||
sha256 = "sha256-cELeWZXGVLFoPYfBoBP8NeLBVFIb5o+lWyto42BLyXY=";
|
||||
};
|
||||
sourceRoot = "source/libflux";
|
||||
cargoSha256 = "0farcjwnwwgfvcgbs5r6vsdrsiwq2mp82sjxkqb1pzqfls4ixcxj";
|
||||
cargoSha256 = "sha256-wFgawxgqZqoPnOXJD3r5t2n7Y2bTAkBbBxeBtFEF7N4=";
|
||||
nativeBuildInputs = [ llvmPackages.libclang ];
|
||||
buildInputs = lib.optional stdenv.isDarwin libiconv;
|
||||
LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
|
||||
@ -63,6 +59,7 @@ let
|
||||
install_name_tool -id $out/lib/libflux.dylib $out/lib/libflux.dylib
|
||||
'';
|
||||
};
|
||||
|
||||
in buildGoModule {
|
||||
pname = "influxdb";
|
||||
version = version;
|
||||
@ -70,34 +67,42 @@ in buildGoModule {
|
||||
|
||||
nativeBuildInputs = [ go-bindata pkg-config ];
|
||||
|
||||
vendorSha256 = "1kar88vlm6px7smlnajpyf8qx6d481xk979qafpfb1xy8931781m";
|
||||
subPackages = [ "cmd/influxd" "cmd/influx" ];
|
||||
vendorSha256 = "sha256-GVLAzVJzSsC10ZWDZPP8upydwZG21E+zQ6sMKm1lCY0=";
|
||||
subPackages = [ "cmd/influxd" "cmd/telemetryd" ];
|
||||
|
||||
PKG_CONFIG_PATH = "${flux}/pkgconfig";
|
||||
# We have to run a bunch of go:generate commands to embed the UI
|
||||
# assets into the source code. Ideally we'd run `make generate`, but
|
||||
# that ends up running a ton of non-hermetic stuff. Instead, we find
|
||||
# the relevant go:generate directives, and run them by hand without
|
||||
# breaking hermeticity.
|
||||
# Check that libflux and the UI are at the right version, and embed
|
||||
# the UI assets into the Go source tree.
|
||||
preBuild = ''
|
||||
tar -xzf ${ui} -C static/data
|
||||
(
|
||||
flux_ver=$(grep github.com/influxdata/flux go.mod | awk '{print $2}')
|
||||
if [ "$flux_ver" != "v${libflux_version}" ]; then
|
||||
echo "go.mod wants libflux $flux_ver, but nix derivation provides ${libflux_version}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
grep -RI -e 'go:generate.*go-bindata' | cut -f1 -d: | while read -r filename; do
|
||||
sed -i -e 's/go:generate.*go-bindata/go:generate go-bindata/' $filename
|
||||
pushd $(dirname $filename)
|
||||
go generate
|
||||
popd
|
||||
done
|
||||
ui_ver=$(grep influxdata/ui/releases scripts/fetch-ui-assets.sh | ${perl}/bin/perl -pe 's#.*/OSS-([^/]+)/.*#$1#')
|
||||
if [ "$ui_ver" != "${ui_version}" ]; then
|
||||
echo "scripts/fetch-ui-assets.sh wants UI $ui_ver, but nix derivation provides ${ui_version}"
|
||||
exit 1
|
||||
fi
|
||||
)
|
||||
|
||||
mkdir -p static/data
|
||||
tar -xzf ${ui} -C static/data
|
||||
pushd static
|
||||
go generate
|
||||
popd
|
||||
'';
|
||||
|
||||
tags = [ "assets" ];
|
||||
|
||||
ldflags = [ "-X main.commit=${shorthash}" "-X main.version=${version}" ];
|
||||
ldflags = [ "-X main.commit=v${version}" "-X main.version=${version}" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "An open-source distributed time series database";
|
||||
license = licenses.mit;
|
||||
homepage = "https://influxdata.com/";
|
||||
maintainers = with maintainers; [ danderson ];
|
||||
maintainers = with maintainers; [ abbradar danderson ];
|
||||
};
|
||||
}
|
||||
|
@ -1,201 +0,0 @@
|
||||
{
|
||||
"name": "influxdb-ui",
|
||||
"version": "2.0.5",
|
||||
"private": false,
|
||||
"license": "MIT",
|
||||
"description": "",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "github:influxdata/ui"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.5.0",
|
||||
"yarn": ">=1.16.0"
|
||||
},
|
||||
"alias": {
|
||||
"src": "./src"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "yarn install && yarn generate && cross-env TS_NODE_PROJECT=\"webpack.tsconfig.json\" && yarn run build:vendor && yarn run start:dev",
|
||||
"start:cloud": "yarn install && yarn generate && cross-env TS_NODE_PROJECT=\"webpack.tsconfig.json\" && yarn run build:vendor && yarn run start:dev-cloud",
|
||||
"start:dev": "webpack-dev-server --config ./webpack.dev.ts --progress false",
|
||||
"start:dev-cloud": "cross-env CLOUD_LOGOUT_URL=http://localhost:8080/api/v2/signout CLOUD_URL=http://localhost:4000 webpack-dev-server --config ./webpack.dev.ts",
|
||||
"start:docker": "yarn generate && yarn build:vendor && yarn run start:dev",
|
||||
"build": "yarn install --silent && yarn build:ci",
|
||||
"build:ci": "yarn generate && yarn build:vendor && webpack --config webpack.prod.ts --bail",
|
||||
"build:vendor": "webpack --config webpack.vendor.ts",
|
||||
"clean": "rm -rf ./build && rm -rf ./.cache && rm -rf node_modules && rm -rf cypress/screenshots && rm -rf cypress/videos && rm -f junit-results/* ",
|
||||
"test": "jest --maxWorkers=2",
|
||||
"test:watch": "jest --watch --verbose false",
|
||||
"test:update": "jest --updateSnapshot",
|
||||
"test:debug": "node --inspect-brk $(npm bin)/jest --runInBand --watch --verbose false",
|
||||
"test:e2e": "CYPRESS_baseUrl=http://localhost:8086 cypress run --browser chrome --reporter junit --reporter-options 'mochaFile=junit-results/test-output-[hash].xml'",
|
||||
"test:e2e:report": "junit-viewer --results=junit-results --save-file=cypress/site/junit-report.html",
|
||||
"test:e2e:clean": "rm junit-results/*.xml",
|
||||
"test:e2e:all": "yarn test:e2e:clean && yarn test:e2e; yarn test:e2e:report;",
|
||||
"test:circleci": "yarn run test:ci --maxWorkers=2",
|
||||
"test:ci": "JEST_JUNIT_OUTPUT_DIR=\"./coverage\" jest --ci --coverage",
|
||||
"lint": "yarn tsc && yarn prettier && yarn eslint",
|
||||
"eslint": "eslint '{src,cypress}/**/*.{ts,tsx}'",
|
||||
"eslint:circleci": "eslint",
|
||||
"eslint:fix": "eslint --fix '{src,cypress}/**/*.{ts,tsx}'",
|
||||
"prettier": "prettier --config .prettierrc.json --check '{src,cypress}/**/*.{ts,tsx}'",
|
||||
"prettier:circleci": "prettier --config .prettierrc.json --check",
|
||||
"prettier:fix": "prettier --config .prettierrc.json --write '{src,cypress}/**/*.{ts,tsx}'",
|
||||
"tsc": "tsc -p ./tsconfig.json --noEmit --pretty --skipLibCheck",
|
||||
"tsc:cypress": "tsc -p ./cypress/tsconfig.json --noEmit --pretty --skipLibCheck",
|
||||
"cy": "CYPRESS_baseUrl=http://localhost:8086 cypress open",
|
||||
"cy:dev": "CYPRESS_baseUrl=http://localhost:8080 cypress open",
|
||||
"generate": "oats ../http/swagger.yml > ./src/client/generatedRoutes.ts"
|
||||
},
|
||||
"author": "",
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.5.5",
|
||||
"@babel/preset-env": "^7.5.5",
|
||||
"@influxdata/oats": "0.5.0",
|
||||
"@testing-library/react": "^10.2.1",
|
||||
"@types/chroma-js": "^1.3.4",
|
||||
"@types/codemirror": "^0.0.56",
|
||||
"@types/d3-color": "^1.2.1",
|
||||
"@types/d3-scale": "^2.0.1",
|
||||
"@types/enzyme": "^3.1.14",
|
||||
"@types/history": "4.7.6",
|
||||
"@types/jest": "^23.3.2",
|
||||
"@types/lodash": "^4.14.116",
|
||||
"@types/memoize-one": "^4.0.2",
|
||||
"@types/node": "^12.6.8",
|
||||
"@types/papaparse": "^4.5.9",
|
||||
"@types/prop-types": "^15.5.2",
|
||||
"@types/qs": "^6.5.1",
|
||||
"@types/react": "^16.8.3",
|
||||
"@types/react-datepicker": "^2.8.1",
|
||||
"@types/react-dom": "^16.8.1",
|
||||
"@types/react-grid-layout": "^0.16.5",
|
||||
"@types/react-redux": "^7.1.9",
|
||||
"@types/react-router-dom": "^5.1.5",
|
||||
"@types/react-virtualized": "^9.18.3",
|
||||
"@types/text-encoding": "^0.0.32",
|
||||
"@types/uuid": "^3.4.3",
|
||||
"@types/webpack": "^4.4.35",
|
||||
"@types/webpack-env": "^1.15.2",
|
||||
"@typescript-eslint/eslint-plugin": "^2.6.0",
|
||||
"@typescript-eslint/parser": "^2.6.0",
|
||||
"acorn": "^6.0.6",
|
||||
"ajv": "^6.7.0",
|
||||
"autoprefixer": "^6.3.1",
|
||||
"babel-loader": "^8.0.6",
|
||||
"clean-webpack-plugin": "^3.0.0",
|
||||
"cross-env": "^5.2.0",
|
||||
"css-loader": "^3.1.0",
|
||||
"cypress": "4.12.1",
|
||||
"cypress-file-upload": "^4.0.7",
|
||||
"cypress-pipe": "^1.5.0",
|
||||
"cypress-plugin-tab": "^1.0.5",
|
||||
"enzyme": "^3.6.0",
|
||||
"enzyme-adapter-react-16": "^1.6.0",
|
||||
"enzyme-to-json": "^3.3.4",
|
||||
"eslint": "^6.6.0",
|
||||
"eslint-config-prettier": "^6.5.0",
|
||||
"eslint-plugin-jest": "^23.0.2",
|
||||
"eslint-plugin-react": "^7.16.0",
|
||||
"eslint-plugin-react-hooks": "^4.0.5",
|
||||
"express": "^4.14.0",
|
||||
"file-loader": "^4.1.0",
|
||||
"fork-ts-checker-webpack-plugin": "^1.4.3",
|
||||
"html-webpack-plugin": "^3.2.0",
|
||||
"http-proxy-middleware": "^0.18.0",
|
||||
"identity-obj-proxy": "^3.0.0",
|
||||
"jest": "^24.8.0",
|
||||
"jest-fetch-mock": "^3.0.3",
|
||||
"jest-junit": "^10.0.0",
|
||||
"jsdom": "^9.0.0",
|
||||
"junit-viewer": "^4.11.1",
|
||||
"mini-css-extract-plugin": "^0.8.0",
|
||||
"mocha": "^5.2.0",
|
||||
"mocha-junit-reporter": "^1.18.0",
|
||||
"mutation-observer": "^1.0.3",
|
||||
"optimize-css-assets-webpack-plugin": "^5.0.3",
|
||||
"prettier": "^1.19.1",
|
||||
"raw-loader": "^4.0.1",
|
||||
"sass": "^1.22.7",
|
||||
"sass-loader": "^7.1.0",
|
||||
"source-map-loader": "^0.2.4",
|
||||
"style-loader": "^0.23.1",
|
||||
"terser-webpack-plugin": "2.2.1",
|
||||
"ts-jest": "^24.0.0",
|
||||
"ts-loader": "^5.3.3",
|
||||
"ts-node": "^8.3.0",
|
||||
"tslib": "^1.9.0",
|
||||
"typescript": "3.8.3",
|
||||
"webpack": "^4.41.4",
|
||||
"webpack-cli": "^3.3.10",
|
||||
"webpack-dev-server": "^3.7.2",
|
||||
"webpack-merge": "^4.2.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@influxdata/clockface": "2.3.4",
|
||||
"@influxdata/flux": "^0.5.1",
|
||||
"@influxdata/flux-lsp-browser": "^0.5.41",
|
||||
"@influxdata/giraffe": "0.29.0",
|
||||
"@influxdata/influx": "0.5.5",
|
||||
"@influxdata/influxdb-templates": "0.9.0",
|
||||
"@influxdata/react-custom-scrollbars": "4.3.8",
|
||||
"abortcontroller-polyfill": "^1.3.0",
|
||||
"auth0-js": "^9.12.2",
|
||||
"axios": "^0.19.0",
|
||||
"babel-polyfill": "^6.26.0",
|
||||
"bignumber.js": "^4.0.2",
|
||||
"calculate-size": "^1.1.1",
|
||||
"chroma-js": "^1.3.6",
|
||||
"classnames": "^2.2.3",
|
||||
"codemirror": "^5.36.0",
|
||||
"connected-react-router": "^6.8.0",
|
||||
"d3-format": "^1.3.2",
|
||||
"d3-scale": "^2.1.0",
|
||||
"fast.js": "^0.1.1",
|
||||
"history": "^4.7.2",
|
||||
"honeybadger-js": "^1.0.2",
|
||||
"immer": "^1.9.3",
|
||||
"immutable": "^3.8.1",
|
||||
"intersection-observer": "^0.7.0",
|
||||
"jsonlint-mod": "^1.7.5",
|
||||
"lodash": "^4.3.0",
|
||||
"memoize-one": "^4.0.2",
|
||||
"moment": "^2.13.0",
|
||||
"monaco-editor": "^0.19.2",
|
||||
"monaco-editor-textmate": "^2.2.1",
|
||||
"monaco-editor-webpack-plugin": "^1.8.2",
|
||||
"monaco-languageclient": "^0.11.0",
|
||||
"monaco-textmate": "^3.0.1",
|
||||
"normalizr": "^3.4.1",
|
||||
"onigasm": "^2.2.4",
|
||||
"papaparse": "^5.2.0",
|
||||
"prop-types": "^15.6.1",
|
||||
"qs": "^6.5.2",
|
||||
"react": "^16.11.0",
|
||||
"react-codemirror2": "^4.2.1",
|
||||
"react-copy-to-clipboard": "^5.0.1",
|
||||
"react-datepicker": "^2.1.0",
|
||||
"react-dimensions": "^1.2.0",
|
||||
"react-dnd": "^9.3.2",
|
||||
"react-dnd-html5-backend": "^9.3.2",
|
||||
"react-dom": "^16.8.2",
|
||||
"react-grid-layout": "^0.16.6",
|
||||
"react-loadable": "^5.5.0",
|
||||
"react-markdown": "^4.0.3",
|
||||
"react-monaco-editor": "^0.33.0",
|
||||
"react-redux": "^7.2.0",
|
||||
"react-router-dom": "^5.2.0",
|
||||
"react-scrollbars-custom": "^4.0.0-alpha.8",
|
||||
"react-virtualized": "^9.18.5",
|
||||
"redux": "^4.0.0",
|
||||
"redux-auth-wrapper": "^1.0.0",
|
||||
"redux-thunk": "^2.3.0",
|
||||
"reselect": "^4.0.0",
|
||||
"rome": "^2.1.22",
|
||||
"seamless-immutable": "^7.1.3",
|
||||
"use-persisted-state": "^0.3.0",
|
||||
"uuid": "^3.2.1",
|
||||
"webpack-bundle-analyzer": "^3.6.0"
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user