diff -Nur nsis-3.05-src-orig/SConstruct nsis-3.05-src/SConstruct
--- nsis-3.05-src-orig/SConstruct	2020-02-13 21:24:38.472750300 +0100
+++ nsis-3.05-src/SConstruct	2020-02-13 21:42:58.407984600 +0100
@@ -213,7 +213,7 @@
 	defenv.Append(NSIS_CPPDEFINES = [('PREFIX_DATA', '"%s"' % defenv.subst('$PREFIX_DATA'))])
 	defenv.Append(NSIS_CPPDEFINES = [('PREFIX_DOC', '"%s"' % defenv.subst('$PREFIX_DOC'))])
 
-if defenv.get('SOURCE_DATE_EPOCH','') is not '':
+if defenv.get('SOURCE_DATE_EPOCH','') != '':
 	defenv['ENV']['SOURCE_DATE_EPOCH'] = defenv['SOURCE_DATE_EPOCH'] = int(defenv['SOURCE_DATE_EPOCH'], 0) # Normalize and apply to ENV for child processes
 	defenv.Append(NSIS_CPPDEFINES = [('NSIS_SOURCE_DATE_EPOCH', '%s' % defenv['SOURCE_DATE_EPOCH'])]) # Display in /HDRINFO
 
diff -Nur nsis-3.05-src-orig/SCons/utils.py nsis-3.05-src/SCons/utils.py
--- nsis-3.05-src-orig/SCons/utils.py	2020-02-13 21:24:38.472750300 +0100
+++ nsis-3.05-src/SCons/utils.py	2020-02-13 21:42:58.407984600 +0100
@@ -250,7 +250,7 @@
 		return
 
 def MakeReproducibleAction(target, source, env):
-	if env.get('SOURCE_DATE_EPOCH','') is not '':
+	if env.get('SOURCE_DATE_EPOCH','') != '':
 		SetPETimestamp(target[0].path, env['SOURCE_DATE_EPOCH'])
 
 def SilentActionEcho(target, source, env):
