Skip to content

Commit d1a2853

Browse files
committed
pinentry: Fix .override for pinentry_*
When you evaluate nixos/tests/simple.nix, you'll run into an infinite recursion since 41b140c. The reason is that udisks2 now pulls in gnupg because it now depends on libblockdev, which in turn depends on volume_key and that depends on gnupg. Nevertheless, it's not the real reason, because this only means, that since gnupg is now pulled into the closure of a basic nixos configuration the real problem becomes visible: In nixos/modules/config/no-x-libs.nix there is an overlay which does something like this: nixpkgs.overlays = singleton (const (super: { pinentry = super.pinentry_ncurses; })); Now since pinentry_ncurses is already using pinentry.override we get an infinite recursion because now the pinentry attribute refers to pinentry_ncurses, which by itself is again referring to pinentry. This is solved by using the self.pinentry.override instead, so that the override used by pinentry_ncurses doesn't use the attribute from the overlay. Signed-off-by: aszlig <aszlig@nix.build> Cc: @ttuegel Signed-off-by: aszlig <aszlig@nix.build>
1 parent fb2c132 commit d1a2853

1 file changed

Lines changed: 5 additions & 5 deletions

File tree

pkgs/top-level/all-packages.nix

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4440,23 +4440,23 @@ with pkgs;
44404440
libcap = if stdenv.isDarwin then null else libcap;
44414441
};
44424442

4443-
pinentry_ncurses = pinentry.override {
4443+
pinentry_ncurses = self.pinentry.override {
44444444
gtk2 = null;
44454445
};
44464446

4447-
pinentry_emacs = pinentry.override {
4447+
pinentry_emacs = self.pinentry.override {
44484448
enableEmacs = true;
44494449
};
44504450

4451-
pinentry_gnome = pinentry.override {
4451+
pinentry_gnome = self.pinentry.override {
44524452
gcr = gnome3.gcr;
44534453
};
44544454

4455-
pinentry_qt4 = pinentry.override {
4455+
pinentry_qt4 = self.pinentry.override {
44564456
qt = qt4;
44574457
};
44584458

4459-
pinentry_qt5 = pinentry.override {
4459+
pinentry_qt5 = self.pinentry.override {
44604460
qt = qt5.qtbase;
44614461
};
44624462

0 commit comments

Comments
 (0)