Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2021-12-17 00:07:55 +00:00 committed by GitHub
commit 2189a53dad
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
121 changed files with 1281 additions and 14330 deletions

View file

@ -31,7 +31,8 @@ jobs:
- uses: cachix/install-nix-action@v16 - uses: cachix/install-nix-action@v16
with: with:
# nixpkgs commit is pinned so that it doesn't break # 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 - name: install editorconfig-checker
run: nix-env -iA editorconfig-checker -f '<nixpkgs>' run: nix-env -iA editorconfig-checker -f '<nixpkgs>'
- name: Checking EditorConfig - name: Checking EditorConfig

View file

@ -4,7 +4,9 @@
{ lib }: { lib }:
rec { rec {
# List of systems that are built by Hydra. # List of systems that are built by Hydra.
hydra = tier1 ++ tier2 ++ tier3; hydra = tier1 ++ tier2 ++ tier3 ++ [
"aarch64-darwin"
];
tier1 = [ tier1 = [
"x86_64-linux" "x86_64-linux"
@ -16,7 +18,6 @@ rec {
]; ];
tier3 = [ tier3 = [
"aarch64-darwin"
"armv6l-linux" "armv6l-linux"
"armv7l-linux" "armv7l-linux"
"i686-linux" "i686-linux"

View file

@ -29,6 +29,20 @@ with lib.maintainers; {
scope = "Maintain ACME-related packages and modules."; 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 = { beam = {
members = [ members = [
ankhers ankhers

View file

@ -19,7 +19,7 @@
</section> </section>
<section xml:id="sec-release-22.05-new-services"> <section xml:id="sec-release-22.05-new-services">
<title>New Services</title> <title>New Services</title>
<itemizedlist spacing="compact"> <itemizedlist>
<listitem> <listitem>
<para> <para>
<link xlink:href="https://github.com/intel/linux-sgx#install-the-intelr-sgx-psw">aesmd</link>, <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>. <link linkend="opt-services.aesmd.enable">services.aesmd</link>.
</para> </para>
</listitem> </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> </itemizedlist>
</section> </section>
<section xml:id="sec-release-22.05-incompatibilities"> <section xml:id="sec-release-22.05-incompatibilities">
@ -134,6 +142,16 @@
using the PyPy interpreter were added. using the PyPy interpreter were added.
</para> </para>
</listitem> </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> </itemizedlist>
</section> </section>
</section> </section>

View file

@ -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). - [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} ## Backward Incompatibilities {#sec-release-22.05-incompatibilities}
- `pkgs.ghc` now refers to `pkgs.targetPackages.haskellPackages.ghc`. - `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`. 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 `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.

View file

@ -448,6 +448,7 @@
./services/hardware/xow.nix ./services/hardware/xow.nix
./services/logging/SystemdJournal2Gelf.nix ./services/logging/SystemdJournal2Gelf.nix
./services/logging/awstats.nix ./services/logging/awstats.nix
./services/logging/filebeat.nix
./services/logging/fluentd.nix ./services/logging/fluentd.nix
./services/logging/graylog.nix ./services/logging/graylog.nix
./services/logging/heartbeat.nix ./services/logging/heartbeat.nix

View file

@ -54,12 +54,12 @@ let
# tcp json rpc # tcp json rpc
++ [ "--tcp.enabled ${toString cfg.tcp.enable}" ] ++ [ "--tcp.enabled ${toString cfg.tcp.enable}" ]
++ optionals 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}" ] "--tcp.port ${toString cfg.tcp.port}" ]
# http json rpc # http json rpc
++ [ "--http.enabled ${toString cfg.http.enable}" ] ++ [ "--http.enabled ${toString cfg.http.enable}" ]
++ optionals 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}" "--http.port ${toString cfg.http.port}"
] ++ optional (cfg.http.docRoot != null) "--http.doc_root \"${toString cfg.http.docRoot}\""); ] ++ optional (cfg.http.docRoot != null) "--http.doc_root \"${toString cfg.http.docRoot}\"");

View file

@ -320,21 +320,22 @@ in
${optionalString cfg.explicitSymlinks "-H"} \ ${optionalString cfg.explicitSymlinks "-H"} \
${optionalString cfg.followSymlinks "-L"} \ ${optionalString cfg.followSymlinks "-L"} \
${concatStringsSep " " cfg.directories}''; ${concatStringsSep " " cfg.directories}'';
cachedir = escapeShellArg cfg.cachedir;
in if (cfg.cachedir != null) then '' in if (cfg.cachedir != null) then ''
mkdir -p ${cfg.cachedir} mkdir -p ${cachedir}
chmod 0700 ${cfg.cachedir} chmod 0700 ${cachedir}
( flock 9 ( flock 9
if [ ! -e ${cfg.cachedir}/firstrun ]; then if [ ! -e ${cachedir}/firstrun ]; then
( flock 10 ( flock 10
flock -u 9 flock -u 9
${tarsnap} --fsck ${tarsnap} --fsck
flock 9 flock 9
) 10>${cfg.cachedir}/firstrun ) 10>${cachedir}/firstrun
fi fi
) 9>${cfg.cachedir}/lockf ) 9>${cachedir}/lockf
exec flock ${cfg.cachedir}/firstrun ${run} exec flock ${cachedir}/firstrun ${run}
'' else "exec ${run}"; '' else "exec ${run}";
serviceConfig = { serviceConfig = {
@ -356,22 +357,23 @@ in
tarsnap = ''tarsnap --configfile "/etc/tarsnap/${name}.conf"''; tarsnap = ''tarsnap --configfile "/etc/tarsnap/${name}.conf"'';
lastArchive = "$(${tarsnap} --list-archives | sort | tail -1)"; lastArchive = "$(${tarsnap} --list-archives | sort | tail -1)";
run = ''${tarsnap} -x -f "${lastArchive}" ${optionalString cfg.verbose "-v"}''; run = ''${tarsnap} -x -f "${lastArchive}" ${optionalString cfg.verbose "-v"}'';
cachedir = escapeShellArg cfg.cachedir;
in if (cfg.cachedir != null) then '' in if (cfg.cachedir != null) then ''
mkdir -p ${cfg.cachedir} mkdir -p ${cachedir}
chmod 0700 ${cfg.cachedir} chmod 0700 ${cachedir}
( flock 9 ( flock 9
if [ ! -e ${cfg.cachedir}/firstrun ]; then if [ ! -e ${cachedir}/firstrun ]; then
( flock 10 ( flock 10
flock -u 9 flock -u 9
${tarsnap} --fsck ${tarsnap} --fsck
flock 9 flock 9
) 10>${cfg.cachedir}/firstrun ) 10>${cachedir}/firstrun
fi fi
) 9>${cfg.cachedir}/lockf ) 9>${cachedir}/lockf
exec flock ${cfg.cachedir}/firstrun ${run} exec flock ${cachedir}/firstrun ${run}
'' else "exec ${run}"; '' else "exec ${run}";
serviceConfig = { serviceConfig = {

View file

@ -10,7 +10,7 @@ in
services.influxdb2 = { services.influxdb2 = {
enable = mkEnableOption "the influxdb2 server"; enable = mkEnableOption "the influxdb2 server";
package = mkOption { package = mkOption {
default = pkgs.influxdb2; default = pkgs.influxdb2-server;
defaultText = literalExpression "pkgs.influxdb2"; defaultText = literalExpression "pkgs.influxdb2";
description = "influxdb2 derivation to use."; description = "influxdb2 derivation to use.";
type = types.package; type = types.package;

View 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>&lt;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>&lt;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";
};
};
};
}

View file

@ -28,7 +28,6 @@ in
type = types.package; type = types.package;
default = pkgs.journalbeat; default = pkgs.journalbeat;
defaultText = literalExpression "pkgs.journalbeat"; defaultText = literalExpression "pkgs.journalbeat";
example = literalExpression "pkgs.journalbeat7";
description = '' description = ''
The journalbeat package to use The journalbeat package to use
''; '';
@ -89,6 +88,8 @@ in
systemd.services.journalbeat = { systemd.services.journalbeat = {
description = "Journalbeat log shipper"; description = "Journalbeat log shipper";
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
wants = [ "elasticsearch.service" ];
after = [ "elasticsearch.service" ];
preStart = '' preStart = ''
mkdir -p ${cfg.stateDir}/data mkdir -p ${cfg.stateDir}/data
mkdir -p ${cfg.stateDir}/logs mkdir -p ${cfg.stateDir}/logs

View file

@ -74,6 +74,8 @@ in {
TTYVTDisallocate = "yes"; TTYVTDisallocate = "yes";
# Fail to start if not controlling the virtual terminal. # Fail to start if not controlling the virtual terminal.
StandardInput = "tty-fail"; StandardInput = "tty-fail";
StandardOutput = "journal";
StandardError = "journal";
# Set up a full (custom) user session for the user, required by Cage. # Set up a full (custom) user session for the user, required by Cage.
PAMName = "cage"; PAMName = "cage";
}; };

View file

@ -40,9 +40,8 @@ let
services = { services = {
journalbeat = let lt6 = builtins.compareVersions journalbeat = {
elk.journalbeat.version "6" < 0; in { enable = elk ? journalbeat;
enable = true;
package = elk.journalbeat; package = elk.journalbeat;
extraConfig = pkgs.lib.mkOptionDefault ('' extraConfig = pkgs.lib.mkOptionDefault (''
logging: logging:
@ -51,14 +50,29 @@ let
metrics.enabled: false metrics.enabled: false
output.elasticsearch: output.elasticsearch:
hosts: [ "127.0.0.1:9200" ] hosts: [ "127.0.0.1:9200" ]
${pkgs.lib.optionalString lt6 "template.enabled: false"}
'' + pkgs.lib.optionalString (!lt6) ''
journalbeat.inputs: journalbeat.inputs:
- paths: [] - paths: []
seek: cursor 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 = { metricbeat = {
enable = true; enable = true;
package = elk.metricbeat; package = elk.metricbeat;
@ -142,27 +156,43 @@ let
}; };
passthru.elkPackages = elk; passthru.elkPackages = elk;
testScript = '' testScript =
let
valueObject = lib.optionalString (lib.versionAtLeast elk.elasticsearch.version "7") ".value";
in ''
import json import json
def total_hits(message): def expect_hits(message):
dictionary = {"query": {"match": {"message": message}}} dictionary = {"query": {"match": {"message": message}}}
return ( return (
"curl --silent --show-error '${esUrl}/_search' " "curl --silent --show-error --fail-with-body '${esUrl}/_search' "
+ "-H 'Content-Type: application/json' " + "-H 'Content-Type: application/json' "
+ "-d '{}' ".format(json.dumps(dictionary)) + "-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(): def has_metricbeat():
dictionary = {"query": {"match": {"event.dataset": {"query": "system.cpu"}}}} dictionary = {"query": {"match": {"event.dataset": {"query": "system.cpu"}}}}
return ( return (
"curl --silent --show-error '${esUrl}/_search' " "curl --silent --show-error --fail-with-body '${esUrl}/_search' "
+ "-H 'Content-Type: application/json' " + "-H 'Content-Type: application/json' "
+ "-d '{}' ".format(json.dumps(dictionary)) + "-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 # TODO: extend this test with multiple elasticsearch nodes
# and see if the status turns "green". # and see if the status turns "green".
one.wait_until_succeeds( 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"): with subtest("Perform some simple logstash tests"):
@ -189,33 +220,50 @@ let
with subtest("Kibana is healthy"): with subtest("Kibana is healthy"):
one.wait_for_unit("kibana.service") one.wait_for_unit("kibana.service")
one.wait_until_succeeds( 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"): with subtest("Metricbeat is running"):
one.wait_for_unit("metricbeat.service") one.wait_for_unit("metricbeat.service")
with subtest("Metricbeat metrics arrive in elasticsearch"): 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"): with subtest("Logstash messages arive in elasticsearch"):
one.wait_until_succeeds(total_hits("flowers") + " | grep -v 0") one.wait_until_succeeds(expect_hits("flowers"))
one.wait_until_succeeds(total_hits("dragons") + " | grep 0") one.wait_until_succeeds(expect_no_hits("dragons"))
'' + lib.optionalString (elk ? journalbeat) ''
with subtest( with subtest(
"A message logged to the journal is ingested by elasticsearch via journalbeat" "A message logged to the journal is ingested by elasticsearch via journalbeat"
): ):
one.wait_for_unit("journalbeat.service") one.wait_for_unit("journalbeat.service")
one.execute("echo 'Supercalifragilisticexpialidocious' | systemd-cat") one.execute("echo 'Supercalifragilisticexpialidocious' | systemd-cat")
one.wait_until_succeeds( 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"): with subtest("Elasticsearch-curator works"):
one.systemctl("stop logstash") one.systemctl("stop logstash")
one.systemctl("start elasticsearch-curator") one.systemctl("start elasticsearch-curator")
one.wait_until_succeeds( 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; }; }) { inherit pkgs system; };
@ -235,7 +283,7 @@ in {
# elasticsearch = pkgs.elasticsearch7-oss; # elasticsearch = pkgs.elasticsearch7-oss;
# logstash = pkgs.logstash7-oss; # logstash = pkgs.logstash7-oss;
# kibana = pkgs.kibana7-oss; # kibana = pkgs.kibana7-oss;
# journalbeat = pkgs.journalbeat7; # filebeat = pkgs.filebeat7;
# metricbeat = pkgs.metricbeat7; # metricbeat = pkgs.metricbeat7;
# }; # };
unfree = lib.dontRecurseIntoAttrs { unfree = lib.dontRecurseIntoAttrs {
@ -250,7 +298,7 @@ in {
elasticsearch = pkgs.elasticsearch7; elasticsearch = pkgs.elasticsearch7;
logstash = pkgs.logstash7; logstash = pkgs.logstash7;
kibana = pkgs.kibana7; kibana = pkgs.kibana7;
journalbeat = pkgs.journalbeat7; filebeat = pkgs.filebeat7;
metricbeat = pkgs.metricbeat7; metricbeat = pkgs.metricbeat7;
}; };
}; };

View file

@ -1,5 +1,5 @@
{ system ? builtins.currentSystem { system ? builtins.currentSystem
, pkgs ? import <nixpkgs> { inherit system; } , pkgs ? import ../../.. { inherit system; }
}: }:
let let
dns = import ./dns.nix { inherit system pkgs; }; dns = import ./dns.nix { inherit system pkgs; };

View file

@ -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; }; with import ./base.nix { inherit system; };
let let
domain = "my.zyx"; domain = "my.zyx";

View file

@ -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; }; with import ./base.nix { inherit system; };
let let
domain = "my.zyx"; domain = "my.zyx";

View file

@ -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; }; with import ./base.nix { inherit system; };
let let

View file

@ -4,6 +4,7 @@
{ pkgs, ... }@args: { pkgs, ... }@args:
let let
inherit (import ../../lib/testing-python.nix args) makeTest; inherit (import ../../lib/testing-python.nix args) makeTest;
inherit (pkgs) lib;
dmarcTestReport = builtins.fetchurl { dmarcTestReport = builtins.fetchurl {
name = "dmarc-test-report"; name = "dmarc-test-report";
@ -54,7 +55,7 @@ in
localMail = makeTest localMail = makeTest
{ {
name = "parsedmarc-local-mail"; name = "parsedmarc-local-mail";
meta = with pkgs.lib.maintainers; { meta = with lib.maintainers; {
maintainers = [ talyz ]; maintainers = [ talyz ];
}; };
@ -83,7 +84,7 @@ in
}; };
}; };
services.elasticsearch.package = pkgs.elasticsearch7-oss; services.elasticsearch.package = pkgs.elasticsearch-oss;
environment.systemPackages = [ environment.systemPackages = [
(sendEmail "dmarc@localhost") (sendEmail "dmarc@localhost")
@ -94,6 +95,7 @@ in
testScript = { nodes }: testScript = { nodes }:
let let
esPort = toString nodes.parsedmarc.config.services.elasticsearch.port; esPort = toString nodes.parsedmarc.config.services.elasticsearch.port;
valueObject = lib.optionalString (lib.versionAtLeast nodes.parsedmarc.config.services.elasticsearch.package.version "7") ".value";
in '' in ''
parsedmarc.start() parsedmarc.start()
parsedmarc.wait_for_unit("postfix.service") parsedmarc.wait_for_unit("postfix.service")
@ -104,11 +106,15 @@ in
) )
parsedmarc.fail( 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.succeed("send-email")
parsedmarc.wait_until_succeeds( 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 in
makeTest { makeTest {
name = "parsedmarc-external-mail"; name = "parsedmarc-external-mail";
meta = with pkgs.lib.maintainers; { meta = with lib.maintainers; {
maintainers = [ talyz ]; maintainers = [ talyz ];
}; };
@ -153,7 +159,7 @@ in
}; };
}; };
services.elasticsearch.package = pkgs.elasticsearch7-oss; services.elasticsearch.package = pkgs.elasticsearch-oss;
environment.systemPackages = [ environment.systemPackages = [
pkgs.jq pkgs.jq
@ -201,6 +207,7 @@ in
testScript = { nodes }: testScript = { nodes }:
let let
esPort = toString nodes.parsedmarc.config.services.elasticsearch.port; esPort = toString nodes.parsedmarc.config.services.elasticsearch.port;
valueObject = lib.optionalString (lib.versionAtLeast nodes.parsedmarc.config.services.elasticsearch.package.version "7") ".value";
in '' in ''
mail.start() mail.start()
mail.wait_for_unit("postfix.service") mail.wait_for_unit("postfix.service")
@ -213,11 +220,15 @@ in
) )
parsedmarc.fail( 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") mail.succeed("send-email")
parsedmarc.wait_until_succeeds( 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'"
) )
''; '';
}; };

View file

@ -40,6 +40,7 @@ in {
}; };
}; };
}; };
environment.systemPackages = [ pkgs.snapcast ];
}; };
client = { client = {
environment.systemPackages = [ pkgs.snapcast ]; environment.systemPackages = [ pkgs.snapcast ];
@ -71,6 +72,13 @@ in {
"curl --fail http://localhost:${toString httpPort}/jsonrpc -d '{json.dumps(get_rpc_version)}'" "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"): with subtest("test a connection"):
client.execute("systemd-run --unit=snapcast-client snapclient -h server -p ${toString port}") client.execute("systemd-run --unit=snapcast-client snapclient -h server -p ${toString port}")
server.wait_until_succeeds( server.wait_until_succeeds(

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, lv2, pkg-config, python2, wafHook }: { lib, stdenv, fetchurl, lv2, pkg-config, python3, wafHook }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "fomp"; pname = "fomp";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
}; };
nativeBuildInputs = [ pkg-config wafHook ]; nativeBuildInputs = [ pkg-config wafHook ];
buildInputs = [ lv2 python2 ]; buildInputs = [ lv2 python3 ];
meta = with lib; { meta = with lib; {
homepage = "http://drobilla.net/software/fomp/"; homepage = "http://drobilla.net/software/fomp/";

View file

@ -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 , libsndfile, ladspaH, liblo, libsigcxx, lrdf, wafHook
}: }:
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "non"; pname = "non";
version = "2018-02-15"; version = "unstable-2021-01-28";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "original-male"; owner = "linuxaudio";
repo = "non"; repo = "non";
rev = "5ae43bb27c42387052a73e5ffc5d33efb9d946a9"; rev = "cdad26211b301d2fad55a26812169ab905b85bbb";
sha256 = "1cljkkyi9dxqpqhx8y6l2ja4zjmlya26m26kqxml8gx08vyvddhx"; sha256 = "sha256-iMJNMDytNXpEkUhL0RILSd25ixkm8HL/edtOZta0Pf4=";
}; };
nativeBuildInputs = [ pkg-config wafHook ]; nativeBuildInputs = [ pkg-config wafHook ];
buildInputs = [ python2 cairo libjpeg ntk libjack2 libsndfile buildInputs = [ python3 cairo libjpeg ntk libjack2 libsndfile
ladspaH liblo libsigcxx lrdf ladspaH liblo libsigcxx lrdf
]; ];
meta = { meta = {

View file

@ -2,12 +2,12 @@
let let
pname = "ledger-live-desktop"; pname = "ledger-live-desktop";
version = "2.35.2"; version = "2.36.2";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage"; 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 { appimageContents = appimageTools.extractType2 {

View file

@ -3,7 +3,7 @@
, vmopts ? null , vmopts ? null
}: }:
{ name, product, version, src, wmClass, jdk, meta, extraLdPath ? [] }@args: { name, product, version, src, wmClass, jdk, meta, extraLdPath ? [], extraWrapperArgs ? [] }@args:
with lib; with lib;
@ -81,6 +81,7 @@ with stdenv; lib.makeOverridable mkDerivation (rec {
stdenv.cc.cc.lib libsecret e2fsprogs stdenv.cc.cc.lib libsecret e2fsprogs
libnotify libnotify
] ++ extraLdPath)}" \ ] ++ extraLdPath)}" \
${lib.concatStringsSep " " extraWrapperArgs} \
--set JDK_HOME "$jdk" \ --set JDK_HOME "$jdk" \
--set ${hiName}_JDK "$jdk" \ --set ${hiName}_JDK "$jdk" \
--set ANDROID_JAVA_HOME "$jdk" \ --set ANDROID_JAVA_HOME "$jdk" \

View file

@ -1,6 +1,7 @@
{ lib, stdenv, callPackage, fetchurl { lib, stdenv, callPackage, fetchurl
, jdk, cmake, zlib, python3 , jdk, cmake, zlib, python3
, dotnet-sdk_5 , dotnet-sdk_5
, maven
, autoPatchelfHook , autoPatchelfHook
, libdbusmenu , libdbusmenu
, vmopts ? null , vmopts ? null
@ -98,6 +99,10 @@ let
inherit name version src wmClass jdk; inherit name version src wmClass jdk;
product = "IDEA"; product = "IDEA";
extraLdPath = [ zlib ]; extraLdPath = [ zlib ];
extraWrapperArgs = [
''--set M2_HOME "${maven}/maven"''
''--set M2 "${maven}/maven/bin"''
];
meta = with lib; { meta = with lib; {
homepage = "https://www.jetbrains.com/idea/"; homepage = "https://www.jetbrains.com/idea/";
inherit description license; inherit description license;

View file

@ -2,19 +2,20 @@
, fetchurl, libsecret, gtk3, gsettings-desktop-schemas }: , fetchurl, libsecret, gtk3, gsettings-desktop-schemas }:
let let
version = "3.8.18"; version = "3.9.5";
pname = "standardnotes"; pname = "standardnotes";
name = "${pname}-${version}"; name = "${pname}-${version}";
throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
plat = { plat = {
i386-linux = "i386"; i686-linux = "i386";
x86_64-linux = "x86_64"; x86_64-linux = "x86_64";
}.${stdenv.hostPlatform.system}; }.${stdenv.hostPlatform.system} or throwSystem;
sha256 = { sha256 = {
i386-linux = "1xiypsmvpk8i6kab862pipbdfb0y5d5355hdwjmva7v7g26aa7h7"; i686-linux = "sha256-7Mo8ELFV6roZ3IYWBtB2rRDAzJrq4ht9f1v6uohsauw=";
x86_64-linux = "03qlxlgyypnvcr40jh6i4wriyax2jbfhrb798cq0n7qlc1y4pg8r"; x86_64-linux = "sha256-9VPYII9E8E3yL7UuU0+GmaK3qxWX4bwfACDl7F7sngo=";
}.${stdenv.hostPlatform.system}; }.${stdenv.hostPlatform.system} or throwSystem;
src = fetchurl { src = fetchurl {
url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}-linux-${plat}.AppImage"; 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"; homepage = "https://standardnotes.org";
license = licenses.agpl3; license = licenses.agpl3;
maintainers = with maintainers; [ mgregoire ]; maintainers = with maintainers; [ mgregoire chuangzhu ];
platforms = [ "i386-linux" "x86_64-linux" ]; platforms = [ "i686-linux" "x86_64-linux" ];
}; };
} }

View 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;
};
}

View file

@ -27,13 +27,13 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "megapixels"; pname = "megapixels";
version = "1.4.2"; version = "1.4.3";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "postmarketOS"; owner = "postmarketOS";
repo = "megapixels"; repo = "megapixels";
rev = version; rev = version;
sha256 = "sha256-ebeKbAo03+jeMveySSIz36gbwslWVMRLj+/adW8rlEQ="; hash = "sha256-UHJ3Fayf+lS3nRuuhHHLN6mbHfHIPssWkghPMPF5ECg=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View 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;
};
}

View file

@ -53,11 +53,11 @@ with py.pkgs;
buildPythonApplication rec { buildPythonApplication rec {
pname = "archivy"; pname = "archivy";
version = "1.4.0"; version = "1.6.1";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-wQuR7cltDLr2u8BQ851MSjKmeLW8mQ/3bdEF5c9nxL0="; sha256 = "sha256-nwpH3V6hkPC8G3df+0hTZqvIbvT1Z796uOI/iKnXS1w=";
}; };
# Relax some dependencies # Relax some dependencies

View file

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "skate"; pname = "skate";
version = "0.1.0"; version = "0.1.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "charmbracelet"; owner = "charmbracelet";
repo = "skate"; repo = "skate";
rev = "v${version}"; rev = "v${version}";
sha256 = "01brxckjz8vlgaq9917l45xf48078d4465qn9l0lyll6hic6p06c"; sha256 = "sha256-Z+7unYmwPLOhJAMAhMwjapAmslTNxmP01myjgEOBfu8=";
}; };
vendorSha256 = "0mvx4rzs0mvb1dyxj105mh2awfy0bmp716x7hpfdwhwz3p11fc7k"; vendorSha256 = "sha256-CdYyiUiy2q2boEHjdXkgRzVI+6fEb+fBrlInl6IrFjk=";
doCheck = false; doCheck = false;

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "worker"; pname = "worker";
version = "4.9.0"; version = "4.10.0";
src = fetchurl { src = fetchurl {
url = "http://www.boomerangsworld.de/cms/worker/downloads/${pname}-${version}.tar.gz"; 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 ]; buildInputs = [ libX11 ];

View file

@ -17,6 +17,7 @@ mkChromiumDerivation (base: rec {
installPhase = '' installPhase = ''
mkdir -p "$libExecPath" mkdir -p "$libExecPath"
cp -v "$buildPath/"*.so "$buildPath/"*.pak "$buildPath/"*.bin "$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/vk_swiftshader_icd.json" "$libExecPath/"
cp -v "$buildPath/icudtl.dat" "$libExecPath/" cp -v "$buildPath/icudtl.dat" "$libExecPath/"
cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/" cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"

View file

@ -18,9 +18,9 @@
} }
}, },
"beta": { "beta": {
"version": "97.0.4692.45", "version": "97.0.4692.56",
"sha256": "1x55hys3340inrwwp4lzw5vq3vrg56288m746d4p2ligvsy19byp", "sha256": "19i572z02hp7n7j7k5i38jr60jfli5jk5qnydfzxavwx9vjqjwgf",
"sha256bin64": "1jyhq27fb4pzbxlg0ssfz66hza9g8cbsqyx70ydkjqs9sf4yqqcw", "sha256bin64": "1im2dq2p5cdy6hj6n2lvn2nzwb5mgy57hyskhwhfm1fz5xzjzc3g",
"deps": { "deps": {
"gn": { "gn": {
"version": "2021-11-03", "version": "2021-11-03",

View file

@ -2,18 +2,18 @@
buildGoModule rec { buildGoModule rec {
pname = "argocd"; pname = "argocd";
version = "2.1.7"; version = "2.2.0";
commit = "a408e299ffa743213df3aa9135bf7945644ec936"; commit = "6da92a8e8103ce4145bb0fe2b7e952be79c9ff0a";
tag = "v${version}"; tag = "v${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "argoproj"; owner = "argoproj";
repo = "argo-cd"; repo = "argo-cd";
rev = tag; rev = tag;
sha256 = "sha256-c6WUqD7x8/P+W64fWs4cw1RiUFepevIJCPpWSzNfIMc="; sha256 = "sha256-6D7aSisFxiGhBvnp4FDN1MHbO1yL4a1SWq1ri8nO7Cw=";
}; };
vendorSha256 = "sha256-N45yRlBGZ/c9ve2YPcWA26pylV8hzxjPh6evKtkgnoc="; vendorSha256 = "sha256-GeU8uQM+oMottzYsE6oQyKZL3aWB5vQgTDLQiuQdapw=";
nativeBuildInputs = [ packr makeWrapper installShellFiles ]; nativeBuildInputs = [ packr makeWrapper installShellFiles ];

View file

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "kn"; pname = "kn";
version = "0.27.0"; version = "1.1.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "knative"; owner = "knative";
repo = "client"; repo = "client";
rev = "v${version}"; rev = "knative-v${version}";
sha256 = "sha256-nuSx+JKXBgkVwuy6RMZc8pxDv5WjXN3+5pIudazTttc="; sha256 = "sha256-lRQ4IXV+q1idoTyhppJGlzjuUuRykP8DtQ3t/CsxhNw=";
}; };
vendorSha256 = null; vendorSha256 = null;

View file

@ -380,10 +380,10 @@
"owner": "integrations", "owner": "integrations",
"provider-source-address": "registry.terraform.io/integrations/github", "provider-source-address": "registry.terraform.io/integrations/github",
"repo": "terraform-provider-github", "repo": "terraform-provider-github",
"rev": "v4.18.2", "rev": "v4.19.0",
"sha256": "1m4ddj4bm84ljrkg8i98gdgbf5c89chv3yz13xbmyl2iga2x5bf7", "sha256": "17xpkcrklzbim91rxw4g4n8izk9qiw9q0vfivr467i32dv5mzc2d",
"vendorSha256": null, "vendorSha256": null,
"version": "4.18.2" "version": "4.19.0"
}, },
"gitlab": { "gitlab": {
"owner": "gitlabhq", "owner": "gitlabhq",

View file

@ -197,8 +197,8 @@ rec {
}; };
terraform_1 = mkTerraform { terraform_1 = mkTerraform {
version = "1.1.0"; version = "1.1.1";
sha256 = "sha256-nnYMoQitqFbOjI8twDh9hWDb1qxMNNVy6wldxkyDKY0="; sha256 = "sha256-JHwHxFpAUVnm9QlfSYrBELrgct0RkjS7OQb6gKEAsCA=";
vendorSha256 = "sha256-inPNvNUcil9X0VQ/pVgZdnnmn9UCfEz7qXiuKDj8RYM="; vendorSha256 = "sha256-inPNvNUcil9X0VQ/pVgZdnnmn9UCfEz7qXiuKDj8RYM=";
patches = [ ./provider-path-0_15.patch ]; patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; }; passthru = { inherit plugins; };

View file

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "ipfs"; pname = "ipfs";
version = "0.10.0"; version = "0.11.0";
rev = "v${version}"; rev = "v${version}";
# go-ipfs makes changes to it's source tarball that don't match the git source. # go-ipfs makes changes to it's source tarball that don't match the git source.
src = fetchurl { src = fetchurl {
url = "https://github.com/ipfs/go-ipfs/releases/download/${rev}/go-ipfs-source.tar.gz"; 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 # tarball contains multiple files/directories

View file

@ -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"
'';
}

View file

@ -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"
'';
}

View file

@ -11,16 +11,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "delta"; pname = "delta";
version = "0.11.2"; version = "0.11.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dandavison"; owner = "dandavison";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-GboG7Ia27CTisY0YCFiAhzoCMxMAXlCeAPll19+JoxM="; sha256 = "sha256-qpoXUzXRcsUi1WHZAYGgnEaNxBYEQAdkXAz7YPiPae8=";
}; };
cargoSha256 = "sha256-JEIMZFDEWaKXfe4OzaAxMop0XYQAcz8L7hcTBD8DJio="; cargoSha256 = "sha256-eds2W47+lOwO/HHKR+IjXOJOD8p1OYkk5qilDYTOUyk=";
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "glitter"; pname = "glitter";
version = "1.5.10"; version = "1.5.11";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "milo123459"; owner = "milo123459";
repo = pname; repo = pname;
rev = "v${version}"; 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 # tests require it to be in a git repository
preCheck = '' preCheck = ''

View file

@ -8,16 +8,16 @@
buildGoModule rec { buildGoModule rec {
pname = "lima"; pname = "lima";
version = "0.7.4"; version = "0.8.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lima-vm"; owner = "lima-vm";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-pn8GtFAZMQyFjOpn6blNBoDgQL7X1gaYjGsQHwvMzaQ="; sha256 = "sha256-bO7o3z9E7mGiUtlqI+mhhh+D6CG9j3BZ7IB8o/LDUPM=";
}; };
vendorSha256 = "sha256-egZFJSGnFYfOcBMNNEsPV6ngf3ddoYCSntnuloYfpxo="; vendorSha256 = "sha256-MDmRkGa1m3YuUbffCwoChG0Fg74jyuQQ6ljfDlLatjI=";
nativeBuildInputs = [ makeWrapper installShellFiles ]; nativeBuildInputs = [ makeWrapper installShellFiles ];

View file

@ -2,8 +2,8 @@
buildManPages { buildManPages {
pname = "s6-man-pages"; pname = "s6-man-pages";
version = "2.11.0.0.2"; version = "2.11.0.0.5";
sha256 = "1ddab4l4wwrg2jdcrdqp1rx8dzbzbdsvx4mzayraxva4q97d1g9r"; sha256 = "03gl0vvdaqfb5hs0dfdbs9djxiyq3abcx9vwgkfw22b1rm2fa0r6";
description = "Port of the documentation for the s6 supervision suite to mdoc"; description = "Port of the documentation for the s6 supervision suite to mdoc";
maintainers = [ lib.maintainers.sternenseemann ]; maintainers = [ lib.maintainers.sternenseemann ];
} }

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "v2ray-geoip"; pname = "v2ray-geoip";
version = "202112090029"; version = "202112160030";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "v2fly"; owner = "v2fly";
repo = "geoip"; repo = "geoip";
rev = "97f4acb31d926ae31bb3cdc5c8948d8dcdddca79"; rev = "4d86284b91a444c2ca989207f8f08a1c8798c95c";
sha256 = "sha256-kYMp/D7xVpBTu35YXq45bR2XebpVOW57UAc7H/6px/U="; sha256 = "sha256-pv+oZVMROr7gyGcv60jIP8INt4vBAnUJT0FJNNn+Czc=";
}; };
installPhase = '' installPhase = ''

View file

@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
--suffix IDRIS2_LIBS ':' "$out/${name}/lib" \ --suffix IDRIS2_LIBS ':' "$out/${name}/lib" \
--suffix IDRIS2_DATA ':' "$out/${name}/support" \ --suffix IDRIS2_DATA ':' "$out/${name}/support" \
--suffix IDRIS2_PATH ':' "${additionalIdris2Paths}" \ --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 = { meta = {

View file

@ -5,6 +5,8 @@ with lib; mkCoqDerivation {
pname = "category-theory"; pname = "category-theory";
owner = "jwiegley"; owner = "jwiegley";
release."20211213".rev = "449e30e929d56f6f90c22af2c91ffcc4d79837be";
release."20211213".sha256 = "sha256:0vgfmph5l1zn6j4b851rcm43s8y9r83swsz07rpzhmfg34pk0nl0";
release."20210730".rev = "d87937faaf7460bcd6985931ac36f551d67e11af"; release."20210730".rev = "d87937faaf7460bcd6985931ac36f551d67e11af";
release."20210730".sha256 = "04x7433yvibxknk6gy4971yzb4saa3z4dnfy9n6irhyafzlxyf0f"; release."20210730".sha256 = "04x7433yvibxknk6gy4971yzb4saa3z4dnfy9n6irhyafzlxyf0f";
release."20190414".rev = "706fdb4065cc2302d92ac2bce62cb59713253119"; release."20190414".rev = "706fdb4065cc2302d92ac2bce62cb59713253119";
@ -14,7 +16,7 @@ with lib; mkCoqDerivation {
inherit version; inherit version;
defaultVersion = with versions; switch coq.coq-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.8" "8.9"; out = "20190414"; }
{ case = range "8.6" "8.7"; out = "20180709"; } { case = range "8.6" "8.7"; out = "20180709"; }
] null; ] null;

View file

@ -9,6 +9,16 @@
let let
python = python3.override { python = python3.override {
packageOverrides = self: super: { 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 { asgiref = super.asgiref.overridePythonAttrs (oldAttrs: rec {
version = "3.4.1"; version = "3.4.1";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -41,22 +51,12 @@ let
}); });
uvicorn = super.uvicorn.overridePythonAttrs (oldAttrs: rec { uvicorn = super.uvicorn.overridePythonAttrs (oldAttrs: rec {
version = "0.15.0"; version = "0.16.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "encode"; owner = "encode";
repo = "uvicorn"; repo = "uvicorn";
rev = version; rev = version;
sha256 = "074smp3448wcazlhc7sb8r54l4kfavr6yks3w5x60zl1qpijf52r"; sha256 = "14jih6j4q2qp5c9rgl798i5p51b4y6zkkj434q2l1naw0csphk4s";
};
});
zeroconf = super.zeroconf.overridePythonAttrs (oldAttrs: rec {
version = "0.36.13";
src = fetchFromGitHub {
owner = "jstasiak";
repo = "python-zeroconf";
rev = version;
sha256 = "aYNb67ESyz2Q2CKLhG+/Z8Xtt0Js8uf+xrVSEpY0X8c=";
}; };
}); });
}; };

View file

@ -4,14 +4,14 @@
let let
callPackage = newScope self; 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 # pypi tarballs don't contain tests - https://github.com/platformio/platformio-core/issues/1964
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "platformio"; owner = "platformio";
repo = "platformio-core"; repo = "platformio-core";
rev = "v${version}"; rev = "v${version}";
sha256 = "0wbmwawn25srkyrd6hwrgli1himzsj08vbm76fgnpqdc84n78ckl"; sha256 = "1dhyxrdxrca669qm6alxxn2jmvcwlpqrx9kfwh4iqy9za5717ag9";
}; };
self = { self = {

View file

@ -6,7 +6,7 @@ index 416dccfd..896c3649 100644
@staticmethod @staticmethod
@memoized(expire="1h") @memoized(expire="1h")
def load_spdx_licenses(): def load_spdx_licenses():
- version = "3.14" - version = "3.15"
- spdx_data_url = ( - spdx_data_url = (
- "https://raw.githubusercontent.com/spdx/license-list-data/" - "https://raw.githubusercontent.com/spdx/license-list-data/"
- "v%s/json/licenses.json" % version - "v%s/json/licenses.json" % version

View file

@ -20,14 +20,14 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "fcft"; pname = "fcft";
version = "2.5.0"; version = "2.5.1";
src = fetchFromGitea { src = fetchFromGitea {
domain = "codeberg.org"; domain = "codeberg.org";
owner = "dnkl"; owner = "dnkl";
repo = "fcft"; repo = "fcft";
rev = version; rev = version;
sha256 = "0agqldh68hn898d3f6k99kjbz8had5j5k0jyvi71d4k9vhx8cy7c"; sha256 = "0dn0ic2ddi5qz6nqscsn7nlih67ad8vpclppbqwas6xavdfq6va2";
}; };
depsBuildBuild = [ pkg-config ]; depsBuildBuild = [ pkg-config ];
@ -44,6 +44,8 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
outputs = [ "out" "doc" "man" ];
passthru.tests = { passthru.tests = {
noShaping = fcft.override { withShapingTypes = []; }; noShaping = fcft.override { withShapingTypes = []; };
onlyGraphemeShaping = fcft.override { withShapingTypes = [ "grapheme" ]; }; onlyGraphemeShaping = fcft.override { withShapingTypes = [ "grapheme" ]; };

View file

@ -53,7 +53,7 @@ in {
}; };
libtoxcore_0_2 = generic { libtoxcore_0_2 = generic {
version = "0.2.12"; version = "0.2.13";
sha256 = "0a6sqpm00d2rn0nviqfz4gh9ck1wzci6rxgmqmcyryl5ca19ffvp"; sha256 = "0a1cp00bnxl3q4l74yqp4aa6fg9slz4rg4lfzkl3khvmm6nzckds";
}; };
} }

View file

@ -2,14 +2,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "tdlib"; pname = "tdlib";
version = "1.7.9"; version = "1.7.10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tdlib"; owner = "tdlib";
repo = "td"; repo = "td";
# https://github.com/tdlib/td/issues/1718 # https://github.com/tdlib/td/issues/1790
rev = "7d41d9eaa58a6e0927806283252dc9e74eda5512"; rev = "a53cb30e99f937cfd64e0266fa558785a184a553";
sha256 = "09b7srbfqi4gmg5pdi398pr0pxihw4d3cw85ycky54g862idzqs8"; sha256 = "FX+66JRsigauLq2JLx0InWiedGeQJ9+ox+D/Bqik9ik=";
}; };
buildInputs = [ gperf openssl readline zlib ]; buildInputs = [ gperf openssl readline zlib ];

View file

@ -6,11 +6,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "aiohue"; pname = "aiohue";
version = "3.0.3"; version = "3.0.5";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-ajDwA8zFBQdFeI3oUBBWQZA13PNust21BWxrsB7PcTQ="; sha256 = "sha256-qOtfr6rrV+E/vdY3AprJ5G7p+VzYDVk1aq9/F0O0mLE=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -13,7 +13,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "google-nest-sdm"; pname = "google-nest-sdm";
version = "0.4.6"; version = "0.4.8";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "allenporter"; owner = "allenporter";
repo = "python-google-nest-sdm"; repo = "python-google-nest-sdm";
rev = version; rev = version;
sha256 = "sha256-oMYCBmqDTPcGHwP3LFYX3CdbHw2hg41EQQv8iiv+ljE="; sha256 = "sha256-HHjCML/55jthqZ5WjNNsldr+8nul8bd8N9aNAoe/iBw=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -57,6 +57,18 @@ buildPythonPackage rec {
--replace 'pytest_ordering' 'pytest_order' --replace 'pytest_ordering' 'pytest_order'
substituteInPlace test/functional/test_miscellaneous.py \ substituteInPlace test/functional/test_miscellaneous.py \
--replace '@pytest.mark.last' '@pytest.mark.order("last")' --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 = '' checkPhase = ''

View file

@ -1,19 +1,14 @@
{ lib, stdenv, buildPythonPackage, fetchPypi, poppler }: { lib, buildPythonPackage, fetchPypi, poppler }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "pdftotext"; pname = "pdftotext";
version = "2.2.1"; version = "2.2.2";
src = fetchPypi { src = fetchPypi {
inherit pname version; 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 ]; buildInputs = [ poppler ];
meta = with lib; { meta = with lib; {

View file

@ -18,8 +18,6 @@ buildPythonPackage {
inherit disabled; inherit disabled;
doCheck = doCheck && !isPy27; # setuptools>=41.4 no longer collects correctly on python2 doCheck = doCheck && !isPy27; # setuptools>=41.4 no longer collects correctly on python2
outputs = [ "out" "dev" ];
propagatedBuildInputs = [ six ] ++ lib.optionals isPy27 [ google-apputils ]; propagatedBuildInputs = [ six ] ++ lib.optionals isPy27 [ google-apputils ];
propagatedNativeBuildInputs = [ buildPackages.protobuf ]; # For protoc. propagatedNativeBuildInputs = [ buildPackages.protobuf ]; # For protoc.
nativeBuildInputs = [ pyext ] ++ lib.optionals isPy27 [ google-apputils ]; nativeBuildInputs = [ pyext ] ++ lib.optionals isPy27 [ google-apputils ];
@ -41,32 +39,20 @@ buildPythonPackage {
cd python cd python
''; '';
preConfigure = lib.optionalString (lib.versionAtLeast protobuf.version "2.6.0") '' setupPyGlobalFlags = lib.optional (lib.versionAtLeast protobuf.version "2.6.0")
export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=cpp "--cpp_implementation";
export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION=2
'';
preBuild = '' pythonImportsCheck = [
# Workaround for https://github.com/google/protobuf/issues/2895 "google.protobuf"
${python.pythonForBuild.interpreter} setup.py build ] ++ lib.optionals (lib.versionAtLeast protobuf.version "2.6.0") [
'' + lib.optionalString (lib.versionAtLeast protobuf.version "2.6.0") '' "google.protobuf.internal._api_implementation" # Verify that --cpp_implementation worked
${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
'';
meta = with lib; { meta = with lib; {
description = "Protocol Buffers are Google's data interchange format"; description = "Protocol Buffers are Google's data interchange format";
homepage = "https://developers.google.com/protocol-buffers/"; homepage = "https://developers.google.com/protocol-buffers/";
license = licenses.bsd3; license = licenses.bsd3;
maintainers = with maintainers; [ knedlsepp ];
}; };
passthru.protobuf = protobuf; passthru.protobuf = protobuf;

View file

@ -13,7 +13,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pykeyatome"; pname = "pykeyatome";
version = "1.1.2"; version = "1.2.0";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "jugla"; owner = "jugla";
repo = "pyKeyAtome"; repo = "pyKeyAtome";
rev = "V${version}"; rev = "V${version}";
sha256 = "sha256-5aKZaS+BFKR1ldAY3BlS/oqYGz1C+ZRkNL9ez/etWh4="; sha256 = "173bf4nrj4jqp2119gfmbra7rhbr30bkjkd44rw9450nmpfmh7pk";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -66,6 +66,7 @@ buildPythonPackage rec {
nosetests pyscf/ -v \ nosetests pyscf/ -v \
--exclude-dir=examples --exclude-dir=pyscf/pbc/grad \ --exclude-dir=examples --exclude-dir=pyscf/pbc/grad \
--exclude-dir=pyscf/x2c \ --exclude-dir=pyscf/x2c \
--exclude-dir=pyscf/adc \
--exclude-dir=pyscf/pbc/tdscf \ --exclude-dir=pyscf/pbc/tdscf \
-e test_bz \ -e test_bz \
-e h2o_vdz \ -e h2o_vdz \
@ -103,7 +104,7 @@ buildPythonPackage rec {
description = "Python-based simulations of chemistry framework"; description = "Python-based simulations of chemistry framework";
homepage = "https://github.com/pyscf/pyscf"; homepage = "https://github.com/pyscf/pyscf";
license = licenses.asl20; license = licenses.asl20;
platforms = platforms.unix; platforms = [ "x86_64-linux" "x86_64-darwin" ];
maintainers = [ maintainers.sheepforce ]; maintainers = [ maintainers.sheepforce ];
}; };
} }

View file

@ -12,14 +12,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pysmappee"; pname = "pysmappee";
version = "0.2.27"; version = "0.2.29";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "smappee"; owner = "smappee";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-CzdkeC53ye+IMeGUiD1mK84h2ruC1/ZpjlDjuWMVoyQ="; sha256 = "sha256-Ffi55FZsZUKDcS4qV46NpRK3VP6axzrL2BO+hYW7J9E=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -9,12 +9,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pytest-httpserver"; pname = "pytest-httpserver";
version = "1.0.2"; version = "1.0.3";
src = fetchPypi { src = fetchPypi {
pname = "pytest_httpserver"; pname = "pytest_httpserver";
inherit version; inherit version;
sha256 = "sha256-JwH9HZgU1YVR+dEETbM1xrqYcxaTZsWDSVI6WM907UA="; sha256 = "87561c4fa6a7bc306d76d1979a3eb9d54eb26bfb2f3f51f1643bf3c090ce629d";
}; };
propagatedBuildInputs = [ werkzeug ]; propagatedBuildInputs = [ werkzeug ];

View file

@ -2,13 +2,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "robotframework"; pname = "robotframework";
version = "4.1.2"; version = "4.1.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = pname; owner = pname;
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0s6lakbd8h1pa4lfdj18sm13gpywszgpcns4hz026a4kam787kby"; sha256 = "0j71awmfkwk7prz82kr1zbcl3nrih3396sshrygnqlrdjmgivd3p";
}; };
checkInputs = [ jsonschema ]; checkInputs = [ jsonschema ];

View file

@ -46,13 +46,13 @@ with py.pkgs;
buildPythonApplication rec { buildPythonApplication rec {
pname = "checkov"; pname = "checkov";
version = "2.0.660"; version = "2.0.664";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bridgecrewio"; owner = "bridgecrewio";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-ebVOEtJTlYaj9sYJsJ8BBxx+2PSyzbwivQIph3slaho="; sha256 = "sha256-t7u47gkUtn9EwBWtz97GkiM8tyGCFk4S5UTQ+OosI2o=";
}; };
nativeBuildInputs = with py.pkgs; [ nativeBuildInputs = with py.pkgs; [

View 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!

View file

@ -22,7 +22,7 @@ buildGoModule rec {
homepage = "https://github.com/buchgr/bazel-remote"; homepage = "https://github.com/buchgr/bazel-remote";
description = "A remote HTTP/1.1 cache for Bazel"; description = "A remote HTTP/1.1 cache for Bazel";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.uri-canva ]; maintainers = lib.teams.bazel.members;
platforms = platforms.darwin ++ platforms.linux; platforms = platforms.darwin ++ platforms.linux;
}; };
} }

View file

@ -149,7 +149,7 @@ stdenv'.mkDerivation rec {
homepage = "https://github.com/bazelbuild/bazel/"; homepage = "https://github.com/bazelbuild/bazel/";
description = "Build tool that builds code quickly and reliably"; description = "Build tool that builds code quickly and reliably";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.mboes ]; maintainers = lib.teams.bazel.members;
inherit platforms; inherit platforms;
}; };

View file

@ -150,7 +150,7 @@ stdenv'.mkDerivation rec {
homepage = "https://github.com/bazelbuild/bazel/"; homepage = "https://github.com/bazelbuild/bazel/";
description = "Build tool that builds code quickly and reliably"; description = "Build tool that builds code quickly and reliably";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.mboes ]; maintainers = lib.teams.bazel.members;
inherit platforms; inherit platforms;
}; };

View file

@ -164,7 +164,7 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/bazelbuild/bazel/"; homepage = "https://github.com/bazelbuild/bazel/";
description = "Build tool that builds code quickly and reliably"; description = "Build tool that builds code quickly and reliably";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.mboes ]; maintainers = lib.teams.bazel.members;
inherit platforms; inherit platforms;
}; };

View file

@ -177,7 +177,7 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/bazelbuild/bazel/"; homepage = "https://github.com/bazelbuild/bazel/";
description = "Build tool that builds code quickly and reliably"; description = "Build tool that builds code quickly and reliably";
license = licenses.asl20; license = licenses.asl20;
maintainers = [ maintainers.mboes ]; maintainers = lib.teams.bazel.members;
inherit platforms; inherit platforms;
}; };

View file

@ -27,6 +27,8 @@ buildGoModule rec {
description = "Tools for working with Google's bazel buildtool. Includes buildifier, buildozer, and unused_deps"; description = "Tools for working with Google's bazel buildtool. Includes buildifier, buildozer, and unused_deps";
homepage = "https://github.com/bazelbuild/buildtools"; homepage = "https://github.com/bazelbuild/buildtools";
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ elasticdog uri-canva marsam ]; maintainers = with maintainers;
[ elasticdog uri-canva marsam ]
++ lib.teams.bazel.members;
}; };
} }

View file

@ -1,7 +1,7 @@
GEM GEM
remote: https://rubygems.org/ remote: https://rubygems.org/
specs: specs:
chunky_png (1.3.11) chunky_png (1.4.0)
compass (1.0.3) compass (1.0.3)
chunky_png (~> 1.2) chunky_png (~> 1.2)
compass-core (~> 1.0.2) compass-core (~> 1.0.2)
@ -14,10 +14,10 @@ GEM
sass (>= 3.3.0, < 3.5) sass (>= 3.3.0, < 3.5)
compass-import-once (1.0.5) compass-import-once (1.0.5)
sass (>= 3.2, < 3.5) sass (>= 3.2, < 3.5)
ffi (1.10.0) ffi (1.15.4)
multi_json (1.13.1) multi_json (1.15.0)
rb-fsevent (0.10.3) rb-fsevent (0.11.0)
rb-inotify (0.10.0) rb-inotify (0.10.1)
ffi (~> 1.0) ffi (~> 1.0)
sass (3.4.25) sass (3.4.25)
@ -28,4 +28,4 @@ DEPENDENCIES
compass! compass!
BUNDLED WITH BUNDLED WITH
2.1.4 2.2.24

View file

@ -4,10 +4,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "124najs9prqzrzk49h53kap992rmqxj0wni61z2hhsn7mwmgdp9d"; sha256 = "1znw5x86hmm9vfhidwdsijz8m38pqgmv98l9ryilvky0aldv7mc9";
type = "gem"; type = "gem";
}; };
version = "1.3.11"; version = "1.4.0";
}; };
compass = { compass = {
dependencies = ["chunky_png" "compass-core" "compass-import-once" "rb-fsevent" "rb-inotify" "sass"]; dependencies = ["chunky_png" "compass-core" "compass-import-once" "rb-fsevent" "rb-inotify" "sass"];
@ -47,30 +47,30 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0j8pzj8raxbir5w5k6s7a042sb5k02pg0f8s4na1r5lan901j00p"; sha256 = "0ssxcywmb3flxsjdg13is6k01807zgzasdhj4j48dm7ac59cmksn";
type = "gem"; type = "gem";
}; };
version = "1.10.0"; version = "1.15.4";
}; };
multi_json = { multi_json = {
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv"; sha256 = "0pb1g1y3dsiahavspyzkdy39j4q377009f6ix0bh1ag4nqw43l0z";
type = "gem"; type = "gem";
}; };
version = "1.13.1"; version = "1.15.0";
}; };
rb-fsevent = { rb-fsevent = {
groups = ["default"]; groups = ["default"];
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8"; sha256 = "1qsx9c4jr11vr3a9s5j83avczx9qn9rjaf32gxpc2v451hvbc0is";
type = "gem"; type = "gem";
}; };
version = "0.10.3"; version = "0.11.0";
}; };
rb-inotify = { rb-inotify = {
dependencies = ["ffi"]; dependencies = ["ffi"];
@ -78,10 +78,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1fs7hxm9g6ywv2yih83b879klhc4fs8i0p9166z795qmd77dk0a4"; sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005";
type = "gem"; type = "gem";
}; };
version = "0.10.0"; version = "0.10.1";
}; };
sass = { sass = {
groups = ["default"]; groups = ["default"];

View file

@ -12,16 +12,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "krankerl"; pname = "krankerl";
version = "0.13.2"; version = "0.13.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ChristophWurst"; owner = "ChristophWurst";
repo = "krankerl"; repo = "krankerl";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-Kol39AtM5m6FC+s5SDbQhWuASkGbeXPlmSGb7axEuK8="; sha256 = "sha256-/zRO+CVYQgx9/j14zgNm/ABzLprt0OYne+O6hOEjSEw=";
}; };
cargoSha256 = "sha256-bPcKe3vE3VIjLJ4iYdF3Gt0sID09gRpxG5TpTGWhnPs="; cargoSha256 = "sha256-LWQRFgDxl2yxP+v1TUENaTGrA/udh84AJvWIkfTJezM=";
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config pkg-config

View file

@ -18,12 +18,12 @@ let
shas = shas =
if enableUnfree if enableUnfree
then { then {
x86_64-linux = "1xwklhqxk5rmdrgy2simwvijzq29kyq5w2w3hy53xh2i1zlnyvq3"; x86_64-linux = "1a501lavxhckb3l93sbrbqyshicwkk6p89frry4x8p037xcfpy0x";
x86_64-darwin = "1qpdn28mrpggd55khzqqld6r89l0hb870rigxcw2i8p2yx3jv106"; x86_64-darwin = "0zm45af30shhcg3mdhcma6rms1hyrx62rm5jzwnz9kxv4d30skbw";
} }
else { else {
x86_64-linux = "1wpnwal2rq5v2bsp5qil9j6dplif7ql5394sy4ia5ghp2fzifxmf"; x86_64-linux = "0wfdipf21apyily7mvlqgyc7m5jpr96zgrryzwa854z3xb2vw8zg";
x86_64-darwin = "12z8i0wbw10c097glbpdy350p0h3957433f51qfx2p0ghgkzkhzv"; x86_64-darwin = "1nklfx4yz6hsxlljvnvwjy7pncv9mzngl84710xad5jlyras3sdj";
}; };
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {

View file

@ -4,23 +4,23 @@
, stdenv , stdenv
, makeWrapper , makeWrapper
, fetchurl , fetchurl
, nodejs-14_x , nodejs-16_x
, coreutils , coreutils
, which , which
}: }:
with lib; with lib;
let let
nodejs = nodejs-14_x; nodejs = nodejs-16_x;
inherit (builtins) elemAt; inherit (builtins) elemAt;
info = splitString "-" stdenv.hostPlatform.system; info = splitString "-" stdenv.hostPlatform.system;
arch = elemAt info 0; arch = elemAt info 0;
plat = elemAt info 1; plat = elemAt info 1;
shas = shas =
{ {
x86_64-linux = "19p9s4sir982bb1zcldrbphhwfs9i11p0q28vgc421iqg10kjlf1"; x86_64-linux = "0jivwsrq31n0qfznrsjfsn65sg3wpbd990afn2wzjnj4drq7plz6";
x86_64-darwin = "0qq557ngwwakifidyrccga4cadj9k9pzhjwy4msmbcgf5pb86qyc"; x86_64-darwin = "02483aqzrccq1x6rwznmcazijdd46yxj9vnbihnvp2xyp3w9as45";
aarch64-linux = "183cp1h8d3n7xfcpcys4hf36palczxa409afyp62kzyzckngy0j8"; aarch64-linux = "0iw155gkkl1hshc80lfj95rssg039ig21wz1l3srmmf2x4f934s9";
}; };
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {

View file

@ -11,13 +11,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "mold"; pname = "mold";
version = "0.9.6"; version = "1.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rui314"; owner = "rui314";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0mj258fy8l4i23jd6ail0xrrq3das7lmrf1brrr1591ahx4vjj14"; sha256 = "sha256-89Dh4qly70Jzyo/KPlRte58hbN5HNnzZpi32tFd8fXU=";
}; };
buildInputs = [ zlib openssl ]; buildInputs = [ zlib openssl ];

View file

@ -17,11 +17,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "cypress"; pname = "cypress";
version = "8.3.1"; version = "9.1.1";
src = fetchzip { src = fetchzip {
url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip"; 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 # don't remove runtime deps

View file

@ -13,17 +13,18 @@
, gtk3 , gtk3
, pantheon , pantheon
, libgee , libgee
, libhandy
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gnonograms"; pname = "gnonograms";
version = "1.4.5"; version = "2.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jeremypw"; owner = "jeremypw";
repo = "gnonograms"; repo = "gnonograms";
rev = "v${version}"; rev = "v${version}";
sha256 = "1ly3inp6dvjrixdysz5hdfwlhbs49ks0lf8062z2iq6gaf8ivkb2"; sha256 = "sha256-2uXaybpCAm9cr0o7bqfhgD7mMNPwtv1X/PgnFnSDOl0=";
}; };
postPatch = '' postPatch = ''
@ -46,6 +47,7 @@ stdenv.mkDerivation rec {
gtk3 gtk3
pantheon.granite pantheon.granite
libgee libgee
libhandy
]; ];
meta = with lib; { meta = with lib; {

View file

@ -1,4 +1,4 @@
{ buildFHSUserEnv, callPackage, lib, stdenvNoCC }: { buildFHSUserEnv, callPackage, lib }:
let let
shticker-book-unwritten-unwrapped = callPackage ./unwrapped.nix { }; shticker-book-unwritten-unwrapped = callPackage ./unwrapped.nix { };
@ -7,11 +7,12 @@ in buildFHSUserEnv {
name = "shticker_book_unwritten"; name = "shticker_book_unwritten";
targetPkgs = pkgs: with pkgs; [ targetPkgs = pkgs: with pkgs; [
alsa-lib alsa-lib
libglvnd
libpulseaudio
shticker-book-unwritten-unwrapped
xorg.libX11 xorg.libX11
xorg.libXcursor xorg.libXcursor
xorg.libXext xorg.libXext
libglvnd
shticker-book-unwritten-unwrapped
]; ];
runScript = "shticker_book_unwritten"; runScript = "shticker_book_unwritten";

View 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;
};
}

View 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

View file

@ -8,7 +8,7 @@ let beat = package : extraArgs : buildGoPackage (rec {
owner = "elastic"; owner = "elastic";
repo = "beats"; repo = "beats";
rev = "v${version}"; rev = "v${version}";
sha256 = "0jkiz5dfdi9zsji04ipcmcj7pml9294v455y7s2c22k24gyzbaw8"; sha256 = "1vnw9clsc10cfpjf6vxvc6m507b2q17sgsl079iwqbp4v0286il7";
}; };
goPackagePath = "github.com/elastic/beats"; goPackagePath = "github.com/elastic/beats";

View file

@ -8,10 +8,10 @@ let beat = package: extraArgs: buildGoModule (rec {
owner = "elastic"; owner = "elastic";
repo = "beats"; repo = "beats";
rev = "v${version}"; rev = "v${version}";
sha256 = "0gjyzprgj9nskvlkm2bf125b7qn3608llz4kh1fyzsvrw6zb7sm8"; sha256 = "sha256-9Jl5Xo1iKdOY9ZE5JXKSL4ee+NdsN3KCY2dDYuxlzPI=";
}; };
vendorSha256 = "04cwf96fh60ld3ndjzzssgirc9ssb53yq71j6ksx36m3y1x7fq9c"; vendorSha256 = "sha256-tyxyM7RsTHTVVxc9gagPsSvFRaWGTmobKzyv9RODXBk=";
subPackages = [ package ]; subPackages = [ package ];
@ -24,7 +24,14 @@ let beat = package: extraArgs: buildGoModule (rec {
} // extraArgs); } // extraArgs);
in in
rec { 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"; }; heartbeat7 = beat "heartbeat" { meta.description = "Lightweight shipper for uptime monitoring"; };
metricbeat7 = beat "metricbeat" { metricbeat7 = beat "metricbeat" {
meta.description = "Lightweight shipper for metrics"; meta.description = "Lightweight shipper for metrics";
@ -47,15 +54,4 @@ rec {
PostgreSQL, Redis or Thrift and correlate the messages into transactions. 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"
'';
};
} }

View file

@ -25,12 +25,6 @@ stdenv.mkDerivation rec {
dontConfigure = true; 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 # Can't use "make install" here
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall

View file

@ -1,6 +1,6 @@
{ {
"compe-tmux": { "compe-tmux": {
"date": "2021-12-07", "date": "2021-12-15",
"new": "cmp-tmux" "new": "cmp-tmux"
}, },
"gist-vim": { "gist-vim": {

File diff suppressed because it is too large Load diff

View file

@ -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: { fcitx-vim = super.fcitx-vim.overrideAttrs (old: {
passthru.python3Dependencies = ps: with ps; [ dbus-python ]; passthru.python3Dependencies = ps: with ps; [ dbus-python ];
meta = { meta = {
@ -748,7 +743,7 @@ self: super: {
libiconv libiconv
]; ];
cargoSha256 = "sha256-zYm+7qAvhVGa/afddHhI2aQxmiLOkus5PHZBDP9S/Qg="; cargoSha256 = "sha256-iE0L4pSKPf8lf76DuSTnU7LfNUgy1O06IgxracsLpFA=";
}; };
in in
'' ''

View file

@ -147,7 +147,6 @@ embark-theme/vim as embark-vim
embear/vim-localvimrc embear/vim-localvimrc
enomsg/vim-haskellConcealPlus enomsg/vim-haskellConcealPlus
enricobacis/vim-airline-clock enricobacis/vim-airline-clock
ensime/ensime-vim
ervandew/supertab ervandew/supertab
esneider/YUNOcommit.vim esneider/YUNOcommit.vim
euclidianAce/BetterLua.vim euclidianAce/BetterLua.vim

View file

@ -5,13 +5,13 @@
stdenvNoCC.mkDerivation rec { stdenvNoCC.mkDerivation rec {
pname = "sof-firmware"; pname = "sof-firmware";
version = "1.9.2"; version = "1.9.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "thesofproject"; owner = "thesofproject";
repo = "sof-bin"; repo = "sof-bin";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-aEoLlP34rorllCdTneATlCHnmhJD/VABV9Uv4dDmShA="; sha256 = "sha256-mQGwc0nwjku9ZxcFy8H4QiBLETkAeyqYvFzBHtK8/DY=";
}; };
dontFixup = true; # binaries must not be stripped or patchelfed dontFixup = true; # binaries must not be stripped or patchelfed

View file

@ -2,7 +2,7 @@
let let
# having the full version string here makes it easier to update # 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; parts = lib.splitString "-" modDirVersion;
version = lib.elemAt parts 0; version = lib.elemAt parts 0;
suffix = lib.elemAt parts 1; suffix = lib.elemAt parts 1;
@ -19,7 +19,7 @@ buildLinux (args // {
owner = "zen-kernel"; owner = "zen-kernel";
repo = "zen-kernel"; repo = "zen-kernel";
rev = "v${modDirVersion}"; rev = "v${modDirVersion}";
sha256 = "sha256-lakNE+Ac3AHfD6e9haXkwQL134UNduk8o8UNtyAQ4U0="; sha256 = "sha256-vuMgxdGjTpR4iVVm1y28Hj3CdfpwGLnTpyZEnz3jd1U=";
}; };
structuredExtraConfig = with lib.kernel; { structuredExtraConfig = with lib.kernel; {

View file

@ -362,16 +362,14 @@ if [ "$action" = edit ]; then
exit 1 exit 1
fi fi
ORIGIN_PWD="$PWD"
tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX) tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX)
SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60" SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60"
cd "$tmpDir"
cleanup() { cleanup() {
for ctrl in "$tmpDir"/ssh-*; do for ctrl in "$tmpDir"/ssh-*; do
ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true
done done
cd "$ORIGIN_PWD"
rm -rf "$tmpDir" rm -rf "$tmpDir"
} }
trap cleanup EXIT trap cleanup EXIT

View file

@ -7,23 +7,15 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "calibre-web"; pname = "calibre-web";
version = "0.6.13"; version = "0.6.14";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "janeczku"; owner = "janeczku";
repo = "calibre-web"; repo = "calibre-web";
rev = version; 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 = [ patches = [
# default-logger.patch switches default logger to /dev/stdout. Otherwise calibre-web tries to open a file relative # 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 # 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 mkdir -p src/calibreweb
mv cps.py src/calibreweb/__init__.py mv cps.py src/calibreweb/__init__.py
mv cps src/calibreweb 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. # Upstream repo doesn't provide any tests.
@ -52,6 +51,7 @@ python3.pkgs.buildPythonApplication rec {
flask-babel flask-babel
flask_login flask_login
flask_principal flask_principal
flask_wtf
iso-639 iso-639
lxml lxml
pypdf3 pypdf3

View file

@ -2,7 +2,7 @@
# Do not edit! # Do not edit!
{ {
version = "2021.12.1"; version = "2021.12.2";
components = { components = {
"abode" = ps: with ps; [ abodepy ]; "abode" = ps: with ps; [ abodepy ];
"accuweather" = ps: with ps; [ accuweather ]; "accuweather" = ps: with ps; [ accuweather ];

View file

@ -252,7 +252,7 @@ let
extraBuildInputs = extraPackages py.pkgs; extraBuildInputs = extraPackages py.pkgs;
# Don't forget to run parse-requirements.py after updating # Don't forget to run parse-requirements.py after updating
hassVersion = "2021.12.1"; hassVersion = "2021.12.2";
in with py.pkgs; buildPythonApplication rec { in with py.pkgs; buildPythonApplication rec {
pname = "homeassistant"; pname = "homeassistant";
@ -269,7 +269,7 @@ in with py.pkgs; buildPythonApplication rec {
owner = "home-assistant"; owner = "home-assistant";
repo = "core"; repo = "core";
rev = version; rev = version;
hash = "sha256:11qlalfzykbq5ydn2cagkqcbvdjkmjcdpp6lgiys9lyrw1rxycnb"; hash = "sha256:0rb6kwvrjq258qv8xh4qbpw3n91bb263dcqp3f1dg45n8mbcdr60";
}; };
# leave this in, so users don't have to constantly update their downstream patch handling # leave this in, so users don't have to constantly update their downstream patch handling

View file

@ -4,11 +4,11 @@ buildPythonPackage rec {
# the frontend version corresponding to a specific home-assistant version can be found here # 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 # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
pname = "home-assistant-frontend"; pname = "home-assistant-frontend";
version = "20211212.0"; version = "20211215.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-cYh8xBUS8rb2koNAq8JwWtrOHSF1jC5v0lq+W1SwiXI="; sha256 = "sha256-G2w+L+tQi47JOygYZ1+VtC96FBPet5klkW0LUeaxWBY=";
}; };
# there is nothing to strip in this package # there is nothing to strip in this package

View 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 ];
};
}

View file

@ -0,0 +1,12 @@
{
buildEnv,
influxdb2-server,
influxdb2-cli,
}:
buildEnv {
name = "influxdb2";
paths = [
influxdb2-server
influxdb2-cli
];
}

View file

@ -1,35 +1,31 @@
{ buildGoModule { buildGoModule
, buildGoPackage
, fetchFromGitHub , fetchFromGitHub
, fetchurl , fetchurl
, go-bindata , go-bindata
, lib , lib
, llvmPackages , llvmPackages
, perl
, pkg-config , pkg-config
, rustPlatform , rustPlatform
, stdenv , stdenv
, libiconv , libiconv
}: }:
# Note for maintainers: use ./update-influxdb2.sh to update the Yarn
# dependencies nix expression.
let let
version = "2.0.8"; version = "2.1.1";
shorthash = "e91d41810f"; # git rev-parse HEAD with 2.0.8 checked out ui_version = "2.1.2";
libflux_version = "0.124.0"; libflux_version = "0.139.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "influxdata"; owner = "influxdata";
repo = "influxdb"; repo = "influxdb";
rev = "v${version}"; rev = "v${version}";
sha256 = "0hbinnja13xr9ziyynjsnsbrxmyrvag7xdgfwq2ya28g07lw5wgq"; sha256 = "sha256-wf01DhB1ampZuWPkHUEOf3KJK4GjeOAPL3LG2+g4NGY=";
}; };
ui = fetchurl { ui = fetchurl {
url = "https://github.com/influxdata/ui/releases/download/OSS-v${version}/build.tar.gz"; url = "https://github.com/influxdata/ui/releases/download/OSS-${ui_version}/build.tar.gz";
# https://github.com/influxdata/ui/releases/download/OSS-v${version}/sha256.txt sha256 = "sha256-fXjShNJfKN/ZQNQHoX9/Ou4XBrXavCN+rcO+8AMc5Ug=";
sha256 = "94965ae999a1098c26128141fbb849be3da9a723d509118eb6e0db4384ee01fc";
}; };
flux = rustPlatform.buildRustPackage { flux = rustPlatform.buildRustPackage {
@ -39,10 +35,10 @@ let
owner = "influxdata"; owner = "influxdata";
repo = "flux"; repo = "flux";
rev = "v${libflux_version}"; rev = "v${libflux_version}";
sha256 = "1g1qilfzxqbbjbfvgkf7k7spcnhzvlmrqacpqdl05418ywkp3v29"; sha256 = "sha256-cELeWZXGVLFoPYfBoBP8NeLBVFIb5o+lWyto42BLyXY=";
}; };
sourceRoot = "source/libflux"; sourceRoot = "source/libflux";
cargoSha256 = "0farcjwnwwgfvcgbs5r6vsdrsiwq2mp82sjxkqb1pzqfls4ixcxj"; cargoSha256 = "sha256-wFgawxgqZqoPnOXJD3r5t2n7Y2bTAkBbBxeBtFEF7N4=";
nativeBuildInputs = [ llvmPackages.libclang ]; nativeBuildInputs = [ llvmPackages.libclang ];
buildInputs = lib.optional stdenv.isDarwin libiconv; buildInputs = lib.optional stdenv.isDarwin libiconv;
LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib"; LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
@ -63,6 +59,7 @@ let
install_name_tool -id $out/lib/libflux.dylib $out/lib/libflux.dylib install_name_tool -id $out/lib/libflux.dylib $out/lib/libflux.dylib
''; '';
}; };
in buildGoModule { in buildGoModule {
pname = "influxdb"; pname = "influxdb";
version = version; version = version;
@ -70,34 +67,42 @@ in buildGoModule {
nativeBuildInputs = [ go-bindata pkg-config ]; nativeBuildInputs = [ go-bindata pkg-config ];
vendorSha256 = "1kar88vlm6px7smlnajpyf8qx6d481xk979qafpfb1xy8931781m"; vendorSha256 = "sha256-GVLAzVJzSsC10ZWDZPP8upydwZG21E+zQ6sMKm1lCY0=";
subPackages = [ "cmd/influxd" "cmd/influx" ]; subPackages = [ "cmd/influxd" "cmd/telemetryd" ];
PKG_CONFIG_PATH = "${flux}/pkgconfig"; PKG_CONFIG_PATH = "${flux}/pkgconfig";
# We have to run a bunch of go:generate commands to embed the UI # Check that libflux and the UI are at the right version, and embed
# assets into the source code. Ideally we'd run `make generate`, but # the UI assets into the Go source tree.
# 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.
preBuild = '' 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 ui_ver=$(grep influxdata/ui/releases scripts/fetch-ui-assets.sh | ${perl}/bin/perl -pe 's#.*/OSS-([^/]+)/.*#$1#')
sed -i -e 's/go:generate.*go-bindata/go:generate go-bindata/' $filename if [ "$ui_ver" != "${ui_version}" ]; then
pushd $(dirname $filename) echo "scripts/fetch-ui-assets.sh wants UI $ui_ver, but nix derivation provides ${ui_version}"
go generate exit 1
popd fi
done )
mkdir -p static/data
tar -xzf ${ui} -C static/data
pushd static
go generate
popd
''; '';
tags = [ "assets" ]; tags = [ "assets" ];
ldflags = [ "-X main.commit=${shorthash}" "-X main.version=${version}" ]; ldflags = [ "-X main.commit=v${version}" "-X main.version=${version}" ];
meta = with lib; { meta = with lib; {
description = "An open-source distributed time series database"; description = "An open-source distributed time series database";
license = licenses.mit; license = licenses.mit;
homepage = "https://influxdata.com/"; homepage = "https://influxdata.com/";
maintainers = with maintainers; [ danderson ]; maintainers = with maintainers; [ abbradar danderson ];
}; };
} }

View file

@ -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