Change:
The package installs that contains an unconfigured variable: This results in the following message in system journal: Obviously, not critical, but still this doesn’t sound right. The contains , so it looks like gets replaced by literal , but I am not sure where this happens or why. Steps to reproduce the behavior: There should be no unsubstituted variables in the installed unit. Maintainer information:
Looks like this line was upstream in 1.9.2 and the version in nixpkgs was upgraded from 1.9.1 to 1.9.4 in October ().
Ok, I am not particularly good with Autotools, but it seems to me that it is an upstream bug. The generate does this replacement, but I think it is supposed to happen only in a context in which this will be further expanded, not in plaintext files intended to be simply copied to their final install location.
Yes, it’s definitely an upstream issue. This usage of is explicitly called out as incorrect in Autconf docs:
Reported upstream:
Fixed in 1.9.5 (just released):
Keep in mind that this needs to point at if it is to be used for anything instead of into the nix store.
Can we make an option to allow specific ? I can help to make a PR if you agree : )
Send a PR I guess? Although, I am not sure how useful this option will be, given that, I assume, all other packages have to be linked to the same pcsc that provides the daemon. On the other hand, many other packages have this option, and I don’t know if there is some pattern or policy in NixOS.
The fixes PR is merged, but if a stable user (, etc.) wants to solve these issues, he could be: nix overlays, let = the package from newer channel, this will cause rebuild of all package that depends on it. to override attribute of , which is tedious and error-prone. So I suggest either we add an option to allow specific the package,or backport the changes to stable branch...?

Discussion:
stdenv.mkDerivation rec { pname = "pcsclite"; <del> version = "1.9.4"; </del> <ins> version = "1.9.5"; </ins> outputs = [ "bin" "out" "dev" "doc" "man" ]; src = fetchurl { url = "https://pcsclite.apdu.fr/files/pcsc-lite-${version}.tar.bz2"; <del> sha256 = "sha256:0jqwnpywk9ka3q88b1k93p8s0xhmx1isdpcqa80nd8p04z1am34a"; </del> <ins> sha256 = "sha256:024x0hadn0kc0m9yz3l2pqzc5mdqyza9lmckg0bn4xak6frzkqwy"; </ins> }; patches = [ ./no-dropdir-literals.patch ];

diff --git a/src/hotplug_libudev.c b/src/hotplug_libudev.c <del> index a8ba1b8..a53700b 100644 </del> <ins> index 51bd95f..84f959b 100644 </ins> --- a/src/hotplug_libudev.c +++ b/src/hotplug_libudev.c <del> @@ -119,7 +119,8 @@ static LONG HPReadBundleValues(void) </del> <ins> @@ -120,7 +120,8 @@ static LONG HPReadBundleValues(void) </ins> if (NULL == hpDir) {

Log1(PCSC_LOG_ERROR, "Disabling USB support for pcscd."); return -1; } <del> @@ -722,7 +723,7 @@ ULONG HPRegisterForHotplugEvents(void) </del> <ins> @@ -741,7 +742,7 @@ ULONG HPRegisterForHotplugEvents(void) </ins> if (driverSize <= 0) {

Log1(PCSC_LOG_INFO, "Disabling USB support for pcscd"); return 0; diff --git a/src/hotplug_libusb.c b/src/hotplug_libusb.c <del> index eff8519..8dd496d 100644 </del> <ins> index 0ada9f5..d49a407 100644 </ins> --- a/src/hotplug_libusb.c +++ b/src/hotplug_libusb.c <del> @@ -138,7 +138,8 @@ static LONG HPReadBundleValues(void) </del> <ins> @@ -142,7 +142,8 @@ static LONG HPReadBundleValues(void) </ins> if (hpDir == NULL) {

Log1(PCSC_LOG_ERROR, "Disabling USB support for pcscd."); return -1; } <del> @@ -265,7 +266,8 @@ static LONG HPReadBundleValues(void) </del> <ins> @@ -282,7 +283,8 @@ static LONG HPReadBundleValues(void) </ins> if (driverSize == 0) {

Log1(PCSC_LOG_INFO, "Disabling USB support for pcscd"); } #ifdef DEBUG_HOTPLUG <del> diff --git a/src/hotplug_linux.c b/src/hotplug_linux.c index bf69af8..64b0ed7 100644 --- a/src/hotplug_linux.c +++ b/src/hotplug_linux.c @@ -130,8 +130,8 @@ static LONG HPReadBundleValues(void) if (hpDir == NULL) { -		Log1(PCSC_LOG_INFO, -			"Cannot open PC/SC drivers directory: " PCSCLITE_HP_DROPDIR); +		Log2(PCSC_LOG_INFO, "Cannot open PC/SC drivers directory: %s", +			PCSCLITE_HP_DROPDIR); Log1(PCSC_LOG_INFO, "Disabling USB support for pcscd."); return -1; } @@ -219,8 +219,8 @@ end: if (bundleSize == 0) { -		Log1(PCSC_LOG_INFO, -			"No bundle files in pcsc drivers directory: " PCSCLITE_HP_DROPDIR); +		Log2(PCSC_LOG_INFO, "No bundle files in pcsc drivers directory: %s", +			PCSCLITE_HP_DROPDIR); Log1(PCSC_LOG_INFO, "Disabling USB support for pcscd"); } </del>