summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVladimír Čunát <v@cunat.cz>2019-06-14 17:47:23 +0200
committerVladimír Čunát <v@cunat.cz>2019-06-14 17:47:23 +0200
commit788261a1a900d59098e521590cff21c2cefdf4bb (patch)
tree98d815cdb72bdd769c4bd8f627da0b05c3a60645
parent7184efb40af0e740000e678a727922a7f58ac597 (diff)
parent21fdd139680e43cc493723d6e181fde5f6fed26e (diff)
Merge branch 'master' into staging-next
Brings in Haskell rebuild. Hydra nixpkgs: ?compare=1525186
-rw-r--r--lib/licenses.nix6
-rw-r--r--lib/options.nix2
-rw-r--r--maintainers/maintainer-list.nix5
-rw-r--r--nixos/modules/installer/tools/nixos-generate-config.pl5
-rw-r--r--nixos/modules/module-list.nix1
-rw-r--r--nixos/modules/programs/captive-browser.nix108
-rw-r--r--nixos/modules/services/databases/cassandra.nix210
-rw-r--r--nixos/modules/services/misc/gitea.nix90
-rw-r--r--nixos/modules/virtualisation/containers.nix32
-rw-r--r--nixos/tests/all-tests.nix1
-rw-r--r--nixos/tests/cassandra.nix96
-rw-r--r--nixos/tests/gitea.nix16
-rw-r--r--pkgs/applications/audio/adlplug/default.nix6
-rw-r--r--pkgs/applications/audio/deadbeef/plugins/infobar.nix3
-rw-r--r--pkgs/applications/audio/deadbeef/plugins/lyricbar.nix26
-rw-r--r--pkgs/applications/audio/pulseaudio-dlna/default.nix12
-rw-r--r--pkgs/applications/audio/pulseaudio-dlna/zeroconf.nix31
-rw-r--r--pkgs/applications/graphics/gimp/default.nix4
-rw-r--r--pkgs/applications/misc/cura/default.nix8
-rw-r--r--pkgs/applications/misc/cura/plugins.nix34
-rw-r--r--pkgs/applications/networking/browsers/browsh/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/browsh/deps.nix139
-rw-r--r--pkgs/applications/networking/browsers/captive-browser/default.nix22
-rw-r--r--pkgs/applications/networking/browsers/chromium/plugins.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix746
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix746
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix794
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix4
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix10
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee-discord/default.nix3
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix9
-rw-r--r--pkgs/applications/office/gnumeric/default.nix4
-rw-r--r--pkgs/applications/science/biology/cd-hit/default.nix34
-rw-r--r--pkgs/applications/science/chemistry/octopus/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/data.json22
-rw-r--r--pkgs/applications/version-management/redmine/4.x/Gemfile2
-rw-r--r--pkgs/applications/version-management/redmine/4.x/Gemfile.lock99
-rw-r--r--pkgs/applications/version-management/redmine/4.x/default.nix4
-rw-r--r--pkgs/applications/version-management/redmine/4.x/gemset.nix90
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.lock6
-rw-r--r--pkgs/applications/version-management/redmine/default.nix4
-rw-r--r--pkgs/applications/version-management/redmine/gemset.nix12
-rw-r--r--pkgs/build-support/build-pecl.nix4
-rw-r--r--pkgs/data/fonts/jost/default.nix22
-rw-r--r--pkgs/data/misc/hackage/default.nix4
-rw-r--r--pkgs/development/compilers/ocaml/4.08.nix4
-rw-r--r--pkgs/development/compilers/scala/2.12.nix (renamed from pkgs/development/compilers/scala/default.nix)0
-rw-r--r--pkgs/development/compilers/scala/2.13.nix46
-rw-r--r--pkgs/development/coq-modules/QuickChick/default.nix27
-rw-r--r--pkgs/development/coq-modules/simple-io/default.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix27
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml170
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix2838
-rw-r--r--pkgs/development/interpreters/php/default.nix20
-rw-r--r--pkgs/development/libraries/babl/default.nix7
-rw-r--r--pkgs/development/libraries/goffice/default.nix4
-rw-r--r--pkgs/development/python-modules/cli-helpers/default.nix4
-rw-r--r--pkgs/development/python-modules/flask-migrate/default.nix8
-rw-r--r--pkgs/development/python-modules/flask-script/default.nix2
-rw-r--r--pkgs/development/tools/bazel-watcher/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/bazel/bash-tools-test.nix24
-rw-r--r--pkgs/development/tools/build-managers/bazel/default.nix127
-rw-r--r--pkgs/development/tools/build-managers/bazel/nix-hacks.patch54
-rw-r--r--pkgs/development/tools/build-managers/bazel/python-bin-path-test.nix32
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--pkgs/development/tools/kythe/default.nix10
-rw-r--r--pkgs/development/tools/rust/cargo-xbuild/default.nix6
-rw-r--r--pkgs/misc/drivers/epkowa/default.nix32
-rw-r--r--pkgs/misc/vim-plugins/generated.nix138
-rw-r--r--pkgs/os-specific/linux/fuse/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.1.nix4
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix3
-rw-r--r--pkgs/servers/apache-kafka/default.nix4
-rw-r--r--pkgs/servers/atlassian/crowd.nix4
-rw-r--r--pkgs/servers/atlassian/jira.nix4
-rw-r--r--pkgs/servers/nosql/cassandra/generic.nix21
-rw-r--r--pkgs/servers/sql/postgresql/ext/pg_bigm.nix32
-rw-r--r--pkgs/servers/sql/postgresql/packages.nix2
-rw-r--r--pkgs/servers/x11/xorg/default.nix6
-rw-r--r--pkgs/servers/x11/xorg/overrides.nix11
-rw-r--r--pkgs/servers/x11/xorg/tarballs.list2
-rw-r--r--pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--pkgs/tools/admin/iamy/default.nix14
-rw-r--r--pkgs/tools/graphics/svgbob/default.nix28
-rw-r--r--pkgs/tools/misc/broot/default.nix6
-rw-r--r--pkgs/tools/package-management/nix/default.nix18
-rw-r--r--pkgs/tools/system/xe/default.nix6
-rw-r--r--pkgs/top-level/all-packages.nix23
-rw-r--r--pkgs/top-level/perl-packages.nix27
-rw-r--r--pkgs/top-level/php-packages.nix19
95 files changed, 4595 insertions, 2755 deletions
diff --git a/lib/licenses.nix b/lib/licenses.nix
index 3b9d7f1986fc..c964060d2a5c 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -457,9 +457,9 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "libpng License";
};
- libpng2 = {
- fullName = "libpng License v2"; # 1.6.36+
- url = "http://www.libpng.org/pub/png/src/libpng-LICENSE.txt";
+ libpng2 = spdx {
+ spdxId = "libpng-2.0"; # Used since libpng 1.6.36.
+ fullName = "PNG Reference Library version 2";
};
libtiff = spdx {
diff --git a/lib/options.nix b/lib/options.nix
index a16a980398d6..d2eae3ae3a98 100644
--- a/lib/options.nix
+++ b/lib/options.nix
@@ -101,7 +101,7 @@ rec {
mergeOneOption = loc: defs:
if defs == [] then abort "This case should never happen."
else if length defs != 1 then
- throw "The unique option `${showOption loc}' is defined multiple times, in ${showFiles (getFiles defs)}."
+ throw "The unique option `${showOption loc}' is defined multiple times, in:\n - ${concatStringsSep "\n - " (getFiles defs)}."
else (head defs).value;
/* "Merge" option definitions by checking that they all have the same value. */
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 1d64d3cbf513..531f24101714 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -1333,6 +1333,11 @@
github = "dmjio";
name = "David Johnson";
};
+ dmvianna = {
+ email = "dmlvianna@gmail.com";
+ github = "dmvianna";
+ name = "Daniel Vianna";
+ };
dochang = {
email = "dochang@gmail.com";
github = "dochang";
diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl
index b7e5b99a9e01..0ccdac30d915 100644
--- a/nixos/modules/installer/tools/nixos-generate-config.pl
+++ b/nixos/modules/installer/tools/nixos-generate-config.pl
@@ -258,6 +258,11 @@ foreach my $path (glob "/sys/class/{block,mmc_host}/*") {
}
}
+# Add bcache module, if needed.
+my @bcacheDevices = glob("/dev/bcache*");
+if (scalar @bcacheDevices > 0) {
+ push @initrdAvailableKernelModules, "bcache";
+}
my $virt = `systemd-detect-virt`;
chomp $virt;
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index d30700b4dd6a..bb33d8e6d95a 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -92,6 +92,7 @@
./programs/bcc.nix
./programs/blcr.nix
./programs/browserpass.nix
+ ./programs/captive-browser.nix
./programs/ccache.nix
./programs/cdemu.nix
./programs/chromium.nix
diff --git a/nixos/modules/programs/captive-browser.nix b/nixos/modules/programs/captive-browser.nix
new file mode 100644
index 000000000000..9765a5fa3df7
--- /dev/null
+++ b/nixos/modules/programs/captive-browser.nix
@@ -0,0 +1,108 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.programs.captive-browser;
+in
+{
+ ###### interface
+
+ options = {
+ programs.captive-browser = {
+ enable = mkEnableOption "captive browser";
+
+ package = mkOption {
+ type = types.package;
+ default = pkgs.captive-browser;
+ };
+
+ interface = mkOption {
+ type = types.str;
+ description = "your public network interface (wlp3s0, wlan0, eth0, ...)";
+ };
+
+ # the options below are the same as in "captive-browser.toml"
+ browser = mkOption {
+ type = types.str;
+ default = concatStringsSep " " [ ''${pkgs.chromium}/bin/chromium''
+ ''--user-data-dir=$HOME/.chromium-captive''
+ ''--proxy-server="socks5://$PROXY"''
+ ''--host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE localhost"''
+ ''--no-first-run''
+ ''--new-window''
+ ''--incognito''
+ ''http://cache.nixos.org/''
+ ];
+ description = ''
+ the shell (/bin/sh) command executed once the proxy starts.
+ When browser exits, the proxy exits. An extra env var PROXY is available.
+
+ Here, we use a separate Chrome instance in Incognito mode, so that
+ it can run (and be waited for) alongside the default one, and that
+ it maintains no state across runs. To configure this browser open a
+ normal window in it, settings will be preserved.
+
+ @volth: chromium is to open a plain HTTP (not HTTPS nor redirect to HTTPS!) website.
+ upstream uses http://example.com but I have seen captive portals whose DNS server resolves "example.com" to 127.0.0.1
+ '';
+ };
+
+ dhcp-dns = mkOption {
+ type = types.str;
+ description = ''
+ the shell (/bin/sh) command executed to obtain the DHCP
+ DNS server address. The first match of an IPv4 regex is used.
+ IPv4 only, because let's be real, it's a captive portal.
+ '';
+ };
+
+ socks5-addr = mkOption {
+ type = types.str;
+ default = "localhost:1666";
+ description = ''the listen address for the SOCKS5 proxy server'';
+ };
+ };
+ };
+
+ ###### implementation
+
+ config = mkIf cfg.enable {
+
+ programs.captive-browser.dhcp-dns = mkOptionDefault (
+ if config.networking.networkmanager.enable then
+ "${pkgs.networkmanager}/bin/nmcli dev show ${escapeShellArg cfg.interface} | ${pkgs.gnugrep}/bin/fgrep IP4.DNS"
+ else if config.networking.dhcpcd.enable then
+ "${pkgs.dhcpcd}/bin/dhcpcd -U ${escapeShellArg cfg.interface} | ${pkgs.gnugrep}/bin/fgrep domain_name_servers"
+ else if config.networking.useNetworkd then
+ "${cfg.package}/bin/systemd-networkd-dns ${escapeShellArg cfg.interface}"
+ else
+ "${config.security.wrapperDir}/udhcpc --quit --now -f -i ${escapeShellArg cfg.interface} -O dns --script ${
+ pkgs.writeScript "udhcp-script" ''
+ #!/bin/sh
+ if [ "$1" = bound ]; then
+ echo "$dns"
+ fi
+ ''}"
+ );
+
+ security.wrappers.udhcpc = {
+ capabilities = "cap_net_raw+p";
+ source = "${pkgs.busybox}/bin/udhcpc";
+ };
+
+ security.wrappers.captive-browser = {
+ capabilities = "cap_net_raw+p";
+ source = pkgs.writeScript "captive-browser" ''
+ #!${pkgs.bash}/bin/bash
+ export XDG_CONFIG_HOME=${pkgs.writeTextDir "captive-browser.toml" ''
+ browser = """${cfg.browser}"""
+ dhcp-dns = """${cfg.dhcp-dns}"""
+ socks5-addr = """${cfg.socks5-addr}"""
+ bind-device = """${cfg.interface}"""
+ ''}
+ exec ${cfg.package}/bin/captive-browser
+ '';
+ };
+ };
+}
diff --git a/nixos/modules/services/databases/cassandra.nix b/nixos/modules/services/databases/cassandra.nix
index 688938868020..e2ea9fcda6b0 100644
--- a/nixos/modules/services/databases/cassandra.nix
+++ b/nixos/modules/services/databases/cassandra.nix
@@ -8,18 +8,21 @@ let
cassandraConfig = flip recursiveUpdate cfg.extraConfig
({ commitlog_sync = "batch";
commitlog_sync_batch_window_in_ms = 2;
+ start_native_transport = cfg.allowClients;
+ cluster_name = cfg.clusterName;
partitioner = "org.apache.cassandra.dht.Murmur3Partitioner";
endpoint_snitch = "SimpleSnitch";
- seed_provider =
- [{ class_name = "org.apache.cassandra.locator.SimpleSeedProvider";
- parameters = [ { seeds = "127.0.0.1"; } ];
- }];
data_file_directories = [ "${cfg.homeDir}/data" ];
commitlog_directory = "${cfg.homeDir}/commitlog";
saved_caches_directory = "${cfg.homeDir}/saved_caches";
- } // (if builtins.compareVersions cfg.package.version "3" >= 0
- then { hints_directory = "${cfg.homeDir}/hints"; }
- else {})
+ } // (lib.optionalAttrs (cfg.seedAddresses != []) {
+ seed_provider = [{<