Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 1014c7cb423c
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2874eebfd277
Choose a head ref
Loading
Showing with 1,036 additions and 1,457 deletions.
  1. +6 −5 lib/tests/maintainers.nix
  2. +12 −3 lib/tests/release.nix
  3. +12 −0 maintainers/team-list.nix
  4. +5 −0 nixos/doc/manual/release-notes/rl-2009.xml
  5. +101 −39 nixos/modules/config/nsswitch.nix
  6. +0 −1 nixos/modules/module-list.nix
  7. +4 −0 nixos/modules/programs/fish.nix
  8. +4 −0 nixos/modules/rename.nix
  9. +1 −1 nixos/modules/security/acme.nix
  10. +10 −2 nixos/modules/security/pam.nix
  11. +0 −51 nixos/modules/security/prey.nix
  12. +1 −0 nixos/modules/services/misc/pykms.nix
  13. +5 −0 nixos/modules/services/misc/sssd.nix
  14. +1 −1 nixos/modules/services/x11/desktop-managers/pantheon.xml
  15. +1 −0 nixos/release-combined.nix
  16. +6 −0 nixos/release.nix
  17. +3 −2 nixos/tests/acme.nix
  18. +5 −3 pkgs/applications/blockchains/lnd.nix
  19. +2 −2 pkgs/applications/blockchains/monero-gui/default.nix
  20. +2 −2 pkgs/applications/blockchains/monero/default.nix
  21. +3 −3 pkgs/applications/graphics/sane/backends/brscan4/default.nix
  22. +2 −2 pkgs/applications/graphics/sane/frontends.nix
  23. +2 −2 pkgs/applications/graphics/sane/xsane.nix
  24. +10 −0 pkgs/applications/kde/kate.nix
  25. +9 −1 pkgs/applications/kde/konqueror.nix
  26. +9 −0 pkgs/applications/kde/okular.nix
  27. +2 −2 pkgs/applications/misc/digitalbitbox/default.nix
  28. +2 −2 pkgs/applications/misc/garmin-plugin/default.nix
  29. +5 −5 pkgs/applications/misc/golden-cheetah/default.nix
  30. +1 −1 pkgs/applications/misc/lutris/chrootenv.nix
  31. +3 −3 pkgs/applications/misc/nut/default.nix
  32. +3 −3 pkgs/applications/misc/perkeep/default.nix
  33. +2 −2 pkgs/applications/misc/qlandkartegt/garmindev.nix
  34. +2 −2 pkgs/applications/misc/qlcplus/default.nix
  35. +2 −2 pkgs/applications/misc/subsurface/default.nix
  36. +3 −3 pkgs/applications/misc/wtf/default.nix
  37. +2 −2 pkgs/applications/networking/cluster/nomad/default.nix
  38. +6 −17 pkgs/applications/networking/cluster/openshift/default.nix
  39. +4 −1 pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
  40. +2 −2 pkgs/applications/networking/instant-messengers/zoom-us/default.nix
  41. +5 −5 pkgs/applications/networking/remote/rdesktop/default.nix
  42. +2 −2 pkgs/applications/radio/sdrangel/default.nix
  43. +2 −2 pkgs/applications/radio/soapysdr/default.nix
  44. +2 −2 pkgs/applications/radio/welle-io/default.nix
  45. +2 −2 pkgs/applications/science/machine-learning/fasttext/default.nix
  46. +2 −2 pkgs/applications/science/math/cemu/default.nix
  47. +2 −2 pkgs/applications/science/misc/foldingathome/client.nix
  48. +2 −2 pkgs/applications/science/misc/foldingathome/control.nix
  49. +2 −2 pkgs/applications/science/misc/foldingathome/viewer.nix
  50. +2 −2 pkgs/applications/science/robotics/gazebo/default.nix
  51. +3 −3 pkgs/applications/video/kodi/default.nix
  52. +48 −7 pkgs/applications/video/qstopmotion/default.nix
  53. +5 −9 pkgs/applications/virtualization/cri-o/default.nix
  54. +2 −2 pkgs/applications/virtualization/podman/default.nix
  55. +4 −0 pkgs/applications/virtualization/virtualbox/default.nix
  56. +2 −2 pkgs/desktops/pantheon/desktop/gala/default.nix
  57. +4 −4 pkgs/development/arduino/arduino-core/default.nix
  58. +9 −5 pkgs/development/compilers/dotnet/buildDotnet.nix
  59. +41 −13 pkgs/development/compilers/dotnet/default.nix
  60. +0 −247 pkgs/development/compilers/go/1.12.nix
  61. +0 −24 pkgs/development/compilers/go/remove-test-pie.patch
  62. +0 −59 pkgs/development/compilers/go/ssl-cert-file-1.12.1.patch
  63. +67 −0 pkgs/development/compilers/open-watcom-bin/default.nix
  64. +3 −3 pkgs/development/compilers/unison/default.nix
  65. +4 −4 pkgs/development/coq-modules/gappalib/default.nix
  66. +13 −13 pkgs/development/interpreters/dart/default.nix
  67. +2 −2 pkgs/development/libraries/garmintools/default.nix
  68. +2 −2 pkgs/development/libraries/hamlib/default.nix
  69. +0 −224 pkgs/development/libraries/kinetic-cpp-client/build-fix.patch
  70. +0 −58 pkgs/development/libraries/kinetic-cpp-client/default.nix
  71. +3 −3 pkgs/development/libraries/libftdi/default.nix
  72. +6 −4 pkgs/development/libraries/libmicrodns/default.nix
  73. +2 −2 pkgs/development/libraries/libnfc/default.nix
  74. 0 pkgs/development/libraries/{libusb/default.nix → libusb-compat/0.1.nix}
  75. +2 −2 pkgs/development/libraries/lirc/default.nix
  76. +2 −2 pkgs/development/libraries/openct/default.nix
  77. +2 −2 pkgs/development/libraries/openldap/default.nix
  78. +36 −7 pkgs/development/libraries/packr/default.nix
  79. +2 −2 pkgs/development/libraries/scmccid/default.nix
  80. +2 −2 pkgs/development/libraries/unicap/default.nix
  81. +2 −2 pkgs/development/libraries/webkitgtk/default.nix
  82. +0 −50 pkgs/development/misc/amdadl-sdk/default.nix
  83. +0 −10 pkgs/development/misc/amdapp-sdk/01-remove-aparapi-samples.patch
  84. +0 −108 pkgs/development/misc/amdapp-sdk/default.nix
  85. +0 −11 pkgs/development/misc/amdapp-sdk/gcc-5.patch
  86. +2 −2 pkgs/development/misc/msp430/mspdebug.nix
  87. +2 −2 pkgs/development/mobile/webos/novacomd.nix
  88. +2 −2 pkgs/development/mobile/xpwn/default.nix
  89. +31 −0 pkgs/development/python-modules/auth0-python/default.nix
  90. +13 −7 pkgs/development/python-modules/batchgenerators/default.nix
  91. +36 −0 pkgs/development/python-modules/cloudflare/default.nix
  92. +4 −10 pkgs/development/python-modules/fasttext/default.nix
  93. +5 −10 pkgs/development/python-modules/mysql-connector/default.nix
  94. +38 −0 pkgs/development/python-modules/pylibftdi/default.nix
  95. +2 −2 pkgs/development/tools/analysis/radare2/default.nix
  96. +11 −13 pkgs/development/tools/bazel-watcher/default.nix
  97. +2 −2 pkgs/development/tools/continuous-integration/jenkins/default.nix
  98. +2 −2 pkgs/development/tools/misc/avrdude/default.nix
  99. +2 −2 pkgs/development/tools/misc/blackmagic/default.nix
  100. +2 −2 pkgs/development/tools/misc/dfu-programmer/default.nix
  101. +2 −2 pkgs/development/tools/misc/micronucleus/default.nix
  102. +2 −2 pkgs/development/tools/misc/teensy-loader-cli/default.nix
  103. +2 −2 pkgs/development/tools/misc/wishbone-tool/default.nix
  104. +2 −2 pkgs/development/tools/misc/xc3sprog/default.nix
  105. +2 −2 pkgs/development/web/nodejs/v12.nix
  106. +3 −3 pkgs/misc/cups/drivers/samsung/1.00.36/default.nix
  107. +3 −3 pkgs/misc/cups/drivers/samsung/1.00.37.nix
  108. +2 −2 pkgs/misc/cups/drivers/samsung/4.01.17.nix
  109. +2 −2 pkgs/misc/drivers/epkowa/default.nix
  110. +2 −2 pkgs/misc/drivers/gutenprint/default.nix
  111. +2 −2 pkgs/os-specific/linux/g15daemon/default.nix
  112. +57 −16 pkgs/os-specific/linux/guvcview/default.nix
  113. +29 −0 pkgs/os-specific/linux/libfabric/default.nix
  114. +2 −2 pkgs/os-specific/linux/v4l2loopback/default.nix
  115. +17 −13 pkgs/servers/consul/default.nix
  116. +2 −2 pkgs/servers/monitoring/lcdproc/default.nix
  117. +4 −4 pkgs/servers/monitoring/prometheus/varnish-exporter.nix
  118. +83 −59 pkgs/shells/fish/default.nix
  119. +12 −0 pkgs/shells/fish/dont-codesign-on-mac.diff
  120. +3 −3 pkgs/shells/zsh/oh-my-zsh/default.nix
  121. +2 −2 pkgs/shells/zsh/zsh-powerlevel10k/default.nix
  122. +1 −1 pkgs/tools/admin/lego/default.nix
  123. +1 −1 pkgs/tools/admin/pebble/default.nix
  124. +2 −2 pkgs/tools/admin/scaleway-cli/default.nix
  125. +2 −2 pkgs/tools/bluetooth/obex-data-server/default.nix
  126. +2 −2 pkgs/tools/bluetooth/openobex/default.nix
  127. +2 −2 pkgs/tools/misc/gnokii/default.nix
  128. +2 −2 pkgs/tools/misc/grub/2.0x.nix
  129. +2 −2 pkgs/tools/misc/grub/trusted.nix
  130. +3 −3 pkgs/tools/misc/pk2cmd/default.nix
  131. +2 −2 pkgs/tools/misc/sixpair/default.nix
  132. +3 −3 pkgs/tools/misc/starship/default.nix
  133. +2 −2 pkgs/tools/misc/urjtag/default.nix
  134. +2 −2 pkgs/tools/misc/xburst-tools/default.nix
  135. +3 −5 pkgs/tools/networking/pykms/default.nix
  136. +20 −0 pkgs/tools/networking/pykms/log-to-current-directory-by-default.patch
  137. +1 −1 pkgs/tools/package-management/nix-du/default.nix
  138. +2 −2 pkgs/tools/security/gnupg/20.nix
  139. +2 −2 pkgs/tools/security/libacr38u/default.nix
  140. +2 −2 pkgs/tools/security/pcsc-scm-scl011/default.nix
  141. +0 −48 pkgs/tools/security/prey/default.nix
  142. +5 −0 pkgs/top-level/aliases.nix
  143. +32 −112 pkgs/top-level/all-packages.nix
  144. +8 −0 pkgs/top-level/python-packages.nix
11 changes: 6 additions & 5 deletions lib/tests/maintainers.nix
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
# to run these tests:
# nix-build nixpkgs/lib/tests/maintainers.nix
# If nothing is output, all tests passed
{ pkgs ? import ../.. {} }:
# to run these tests (and the others)
# nix-build nixpkgs/lib/tests/release.nix
{ # The pkgs used for dependencies for the testing itself
pkgs
, lib
}:

let
inherit (pkgs) lib;
inherit (lib) types;

maintainerModule = { config, ... }: {
15 changes: 12 additions & 3 deletions lib/tests/release.nix
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
{ pkgs ? import ../.. {} }:
{ # The pkgs used for dependencies for the testing itself
# Don't test properties of pkgs.lib, but rather the lib in the parent directory
pkgs ? import ../.. {} // { lib = throw "pkgs.lib accessed, but the lib tests should use nixpkgs' lib path directly!"; }
}:

pkgs.runCommandNoCC "nixpkgs-lib-tests" {
buildInputs = [ pkgs.nix (import ./check-eval.nix) (import ./maintainers.nix { inherit pkgs; }) ];
NIX_PATH = "nixpkgs=${toString pkgs.path}";
buildInputs = [
pkgs.nix
(import ./check-eval.nix)
(import ./maintainers.nix {
inherit pkgs;
lib = import ../.;
})
];
} ''
datadir="${pkgs.nix}/share"
export TEST_ROOT=$(pwd)/test-tmp
12 changes: 12 additions & 0 deletions maintainers/team-list.nix
Original file line number Diff line number Diff line change
@@ -17,6 +17,18 @@

{ lib }:
with lib.maintainers; {
acme = {
members = [
aanderse
andrew-d
arianvp
emily
flokli
m1cr0man
];
scope = "Maintain ACME-related packages and modules.";
};

freedesktop = {
members = [ jtojnar worldofpeace ];
scope = "Maintain Freedesktop.org packages for graphical desktop.";
5 changes: 5 additions & 0 deletions nixos/doc/manual/release-notes/rl-2009.xml
Original file line number Diff line number Diff line change
@@ -26,6 +26,11 @@
<listitem>
<para>GNOME desktop environment was upgraded to 3.36, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.36/">release notes</link>.</para>
</listitem>
<listitem>
<para>
We now distribute a GNOME ISO.
</para>
</listitem>
<listitem>
<para>
PHP now defaults to PHP 7.4, updated from 7.3.
140 changes: 101 additions & 39 deletions nixos/modules/config/nsswitch.nix
Original file line number Diff line number Diff line change
@@ -10,35 +10,36 @@ let
canLoadExternalModules = config.services.nscd.enable;
myhostname = canLoadExternalModules;
mymachines = canLoadExternalModules;
# XXX Move these to their respective modules
nssmdns = canLoadExternalModules && config.services.avahi.nssmdns;
nsswins = canLoadExternalModules && config.services.samba.nsswins;
ldap = canLoadExternalModules && (config.users.ldap.enable && config.users.ldap.nsswitch);
sssd = canLoadExternalModules && config.services.sssd.enable;
resolved = canLoadExternalModules && config.services.resolved.enable;
googleOsLogin = canLoadExternalModules && config.security.googleOsLogin.enable;

hostArray = [ "files" ]
++ optional mymachines "mymachines"
++ optional nssmdns "mdns_minimal [NOTFOUND=return]"
++ optional nsswins "wins"
++ optional resolved "resolve [!UNAVAIL=return]"
++ [ "dns" ]
++ optional nssmdns "mdns"
++ optional myhostname "myhostname";

passwdArray = [ "files" ]
++ optional sssd "sss"
++ optional ldap "ldap"
++ optional mymachines "mymachines"
++ optional googleOsLogin "cache_oslogin oslogin"
++ [ "systemd" ];

shadowArray = [ "files" ]
++ optional sssd "sss"
++ optional ldap "ldap";

servicesArray = [ "files" ]
++ optional sssd "sss";
hostArray = mkMerge [
(mkBefore [ "files" ])
(mkIf mymachines [ "mymachines" ])
(mkIf nssmdns [ "mdns_minimal [NOTFOUND=return]" ])
(mkIf nsswins [ "wins" ])
(mkIf resolved [ "resolve [!UNAVAIL=return]" ])
(mkAfter [ "dns" ])
(mkIf nssmdns (mkOrder 1501 [ "mdns" ])) # 1501 to ensure it's after dns
(mkIf myhostname (mkOrder 1600 [ "myhostname" ])) # 1600 to ensure it's always the last
];

passwdArray = mkMerge [
(mkBefore [ "files" ])
(mkIf ldap [ "ldap" ])
(mkIf mymachines [ "mymachines" ])
(mkIf googleOsLogin [ "cache_oslogin oslogin" ])
(mkIf canLoadExternalModules (mkAfter [ "systemd" ]))
];

shadowArray = mkMerge [
(mkBefore [ "files" ])
(mkIf ldap [ "ldap" ])
];

in {
options = {
@@ -61,17 +62,73 @@ in {
};
};

system.nssHosts = mkOption {
type = types.listOf types.str;
default = [];
example = [ "mdns" ];
description = ''
List of host entries to configure in <filename>/etc/nsswitch.conf</filename>.
'';
};
system.nssDatabases = {
passwd = mkOption {
type = types.listOf types.str;
description = ''
List of passwd entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended while "systemd" is appended if nscd is enabled.
This option only takes effect if nscd is enabled.
'';
default = [];
};

group = mkOption {
type = types.listOf types.str;
description = ''
List of group entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended while "systemd" is appended if nscd is enabled.
This option only takes effect if nscd is enabled.
'';
default = [];
};

shadow = mkOption {
type = types.listOf types.str;
description = ''
List of shadow entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended.
This option only takes effect if nscd is enabled.
'';
default = [];
};

hosts = mkOption {
type = types.listOf types.str;
description = ''
List of hosts entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended, and "dns" and "myhostname" are always appended.
This option only takes effect if nscd is enabled.
'';
default = [];
};

services = mkOption {
type = types.listOf types.str;
description = ''
List of services entries to configure in <filename>/etc/nsswitch.conf</filename>.
Note that "files" is always prepended.
This option only takes effect if nscd is enabled.
'';
default = [];
};
};
};

imports = [
(mkRenamedOptionModule [ "system" "nssHosts" ] [ "system" "nssDatabases" "hosts" ])
];

config = {
assertions = [
{
@@ -87,23 +144,28 @@ in {
];

# Name Service Switch configuration file. Required by the C
# library. !!! Factor out the mdns stuff. The avahi module
# should define an option used by this module.
# library.
environment.etc."nsswitch.conf".text = ''
passwd: ${concatStringsSep " " passwdArray}
group: ${concatStringsSep " " passwdArray}
shadow: ${concatStringsSep " " shadowArray}
passwd: ${concatStringsSep " " config.system.nssDatabases.passwd}
group: ${concatStringsSep " " config.system.nssDatabases.group}
shadow: ${concatStringsSep " " config.system.nssDatabases.shadow}
hosts: ${concatStringsSep " " config.system.nssHosts}
hosts: ${concatStringsSep " " config.system.nssDatabases.hosts}
networks: files
ethers: files
services: ${concatStringsSep " " servicesArray}
services: ${concatStringsSep " " config.system.nssDatabases.services}
protocols: files
rpc: files
'';

system.nssHosts = hostArray;
system.nssDatabases = {
passwd = passwdArray;
group = passwdArray;
shadow = shadowArray;
hosts = hostArray;
services = mkBefore [ "files" ];
};

# Systemd provides nss-myhostname to ensure that our hostname
# always resolves to a valid IP address. It returns all locally
1 change: 0 additions & 1 deletion nixos/modules/module-list.nix
Original file line number Diff line number Diff line change
@@ -196,7 +196,6 @@
./security/pam_usb.nix
./security/pam_mount.nix
./security/polkit.nix
./security/prey.nix
./security/rngd.nix
./security/rtkit.nix
./security/wrappers/default.nix
4 changes: 4 additions & 0 deletions nixos/modules/programs/fish.nix
Original file line number Diff line number Diff line change
@@ -178,6 +178,10 @@ in
set -l post (string join0 $fish_complete_path | string match --regex "[^\x00]*generated_completions.*" | string split0 | string match -er ".")
set fish_complete_path $prev "/etc/fish/generated_completions" $post
end
# prevent fish from generating completions on first run
if not test -d $__fish_user_data_dir/generated_completions
${pkgs.coreutils}/bin/mkdir $__fish_user_data_dir/generated_completions
end
'';

environment.etc."fish/generated_completions".source =
4 changes: 4 additions & 0 deletions nixos/modules/rename.nix
Original file line number Diff line number Diff line change
@@ -49,6 +49,10 @@ with lib;
simply add the brightnessctl package to environment.systemPackages.
'')

(mkRemovedOptionModule ["services" "prey" ] ''
prey-bash-client is deprecated upstream
'')

# Do NOT add any option renames here, see top of the file
];
}
2 changes: 1 addition & 1 deletion nixos/modules/security/acme.nix
Original file line number Diff line number Diff line change
@@ -458,7 +458,7 @@ in
];

meta = {
maintainers = with lib.maintainers; [ abbradar fpletz globin m1cr0man ];
maintainers = lib.teams.acme.members;
doc = ./acme.xml;
};
}
12 changes: 10 additions & 2 deletions nixos/modules/security/pam.nix
Original file line number Diff line number Diff line change
@@ -219,6 +219,14 @@ let
'';
};

nodelay = mkOption {
default = false;
type = types.bool;
description = ''
Wheather the delay after typing a wrong password should be disabled.
'';
};

requireWheel = mkOption {
default = false;
type = types.bool;
@@ -366,7 +374,7 @@ let
|| cfg.enableGnomeKeyring
|| cfg.googleAuthenticator.enable
|| cfg.duoSecurity.enable)) ''
auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth
auth required pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth
${optionalString config.security.pam.enableEcryptfs
"auth optional ${pkgs.ecryptfs}/lib/security/pam_ecryptfs.so unwrap"}
${optionalString cfg.pamMount
@@ -382,7 +390,7 @@ let
"auth required ${pkgs.duo-unix}/lib/security/pam_duo.so"}
'') + ''
${optionalString cfg.unixAuth
"auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} likeauth try_first_pass"}
"auth sufficient pam_unix.so ${optionalString cfg.allowNullPassword "nullok"} ${optionalString cfg.nodelay "nodelay"} likeauth try_first_pass"}
${optionalString cfg.otpwAuth
"auth sufficient ${pkgs.otpw}/lib/security/pam_otpw.so"}
${optionalString use_ldap
51 changes: 0 additions & 51 deletions nixos/modules/security/prey.nix

This file was deleted.

1 change: 1 addition & 0 deletions nixos/modules/services/misc/pykms.nix
Original file line number Diff line number Diff line change
@@ -82,6 +82,7 @@ in {
]);
ProtectHome = "tmpfs";
WorkingDirectory = libDir;
SyslogIdentifier = "pykms";
Restart = "on-failure";
MemoryLimit = cfg.memoryLimit;
};
5 changes: 5 additions & 0 deletions nixos/modules/services/misc/sssd.nix
Original file line number Diff line number Diff line change
@@ -75,6 +75,11 @@ in {
};

system.nssModules = optional cfg.enable pkgs.sssd;
system.nssDatabases = {
passwd = [ "sss" ];
shadow = [ "sss" ];
services = [ "sss" ];
};
services.dbus.packages = [ pkgs.sssd ];
})

Loading