X-Git-Url: http://git.scottworley.com/pinch/blobdiff_plain/2a6cedfe22d12056af5240b983262e98cd5f131d..a222b37dee8407750871aa71bedd21317d881e89:/pinch.py?ds=sidebyside diff --git a/pinch.py b/pinch.py index bdd7a6e..dcc972c 100644 --- a/pinch.py +++ b/pinch.py @@ -320,22 +320,12 @@ def digest_file(filename: str) -> Digest16: return Digest16(hasher.hexdigest()) -@functools.lru_cache -def _experimental_flag_needed(v: Verification) -> bool: - v.status('Checking Nix version') - process = subprocess.run(['nix', '--help'], stdout=subprocess.PIPE) - v.result(process.returncode == 0) - return b'--experimental-features' in process.stdout - - -def _nix_command(v: Verification) -> List[str]: - return ['nix', '--experimental-features', - 'nix-command'] if _experimental_flag_needed(v) else ['nix'] +_NIX_COMMAND = ['nix', '--experimental-features', 'nix-command'] def to_Digest16(v: Verification, digest32: Digest32) -> Digest16: v.status('Converting digest to base16') - process = subprocess.run(_nix_command(v) + [ + process = subprocess.run(_NIX_COMMAND + [ 'to-base16', '--type', 'sha256', @@ -345,18 +335,6 @@ def to_Digest16(v: Verification, digest32: Digest32) -> Digest16: return Digest16(process.stdout.decode().strip()) -def to_Digest32(v: Verification, digest16: Digest16) -> Digest32: - v.status('Converting digest to base32') - process = subprocess.run(_nix_command(v) + [ - 'to-base32', - '--type', - 'sha256', - digest16], - stdout=subprocess.PIPE) - v.result(process.returncode == 0) - return Digest32(process.stdout.decode().strip()) - - def fetch_with_nix_prefetch_url( v: Verification, url: str,