From 6f8761c51c78de71ea27f59243509970f736b621 Mon Sep 17 00:00:00 2001 From: Matthias Kuhn Date: Sun, 5 Jan 2025 12:36:57 +0100 Subject: [PATCH 1/4] Fix linux binary --- vcpkg_precommit/hook.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vcpkg_precommit/hook.py b/vcpkg_precommit/hook.py index cf1cad5..c0daa13 100644 --- a/vcpkg_precommit/hook.py +++ b/vcpkg_precommit/hook.py @@ -13,8 +13,8 @@ def get_vcpkg_binary() -> Path: binary_map = { ("windows", "amd64"): ("vcpkg.exe", "vcpkg-windows-x64.exe"), - ("linux", "x86_64"): ("vcpkg", "vcpkg-linux"), - ("darwin", "arm64"): ("vcpkg", "vcpkg-macos-arm64"), + ("linux", "x86_64"): ("vcpkg", "vcpkg-glibc"), + ("darwin", "arm64"): ("vcpkg", "vcpkg-macos"), ("darwin", "x86_64"): ("vcpkg", "vcpkg-macos"), } From 68cd70bad267272dfd75d3bc841de698ef047289 Mon Sep 17 00:00:00 2001 From: Matthias Kuhn Date: Sun, 5 Jan 2025 12:50:31 +0100 Subject: [PATCH 2/4] Export a dummy vcpkg root to make binary happy --- vcpkg_precommit/hook.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/vcpkg_precommit/hook.py b/vcpkg_precommit/hook.py index c0daa13..d931d75 100644 --- a/vcpkg_precommit/hook.py +++ b/vcpkg_precommit/hook.py @@ -1,4 +1,5 @@ import argparse +import os import platform import subprocess from pathlib import Path @@ -39,6 +40,7 @@ def get_vcpkg_binary() -> Path: def format_manifest_vcpkg_json(filename: str, vcpkg_binary: Path) -> bool: """Format a single vcpkg.json file.""" + os.environ["VCPKG_ROOT"] = "/__dummy_vcpkg_root" result = subprocess.run( [str(vcpkg_binary), "format-manifest", "--x-wait-for-lock", filename], capture_output=True, From 375aad78a2c8464666cc4280c20d29dd9077460b Mon Sep 17 00:00:00 2001 From: Matthias Kuhn Date: Sun, 5 Jan 2025 12:59:04 +0100 Subject: [PATCH 3/4] Update hook.py --- vcpkg_precommit/hook.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vcpkg_precommit/hook.py b/vcpkg_precommit/hook.py index d931d75..fd9d0d8 100644 --- a/vcpkg_precommit/hook.py +++ b/vcpkg_precommit/hook.py @@ -2,6 +2,7 @@ import os import platform import subprocess +import tempfile from pathlib import Path from typing import Optional, Sequence from urllib.request import urlretrieve @@ -40,7 +41,7 @@ def get_vcpkg_binary() -> Path: def format_manifest_vcpkg_json(filename: str, vcpkg_binary: Path) -> bool: """Format a single vcpkg.json file.""" - os.environ["VCPKG_ROOT"] = "/__dummy_vcpkg_root" + os.environ["VCPKG_ROOT"] = tempfile.TemporaryDirectory() result = subprocess.run( [str(vcpkg_binary), "format-manifest", "--x-wait-for-lock", filename], capture_output=True, From 21770eb65f9249e8ddedd267807327c810eda161 Mon Sep 17 00:00:00 2001 From: Matthias Kuhn Date: Sun, 5 Jan 2025 13:03:39 +0100 Subject: [PATCH 4/4] Update vcpkg_precommit/hook.py --- vcpkg_precommit/hook.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vcpkg_precommit/hook.py b/vcpkg_precommit/hook.py index fd9d0d8..a8bd0ae 100644 --- a/vcpkg_precommit/hook.py +++ b/vcpkg_precommit/hook.py @@ -41,7 +41,7 @@ def get_vcpkg_binary() -> Path: def format_manifest_vcpkg_json(filename: str, vcpkg_binary: Path) -> bool: """Format a single vcpkg.json file.""" - os.environ["VCPKG_ROOT"] = tempfile.TemporaryDirectory() + os.environ["VCPKG_ROOT"] = tempfile.TemporaryDirectory().name result = subprocess.run( [str(vcpkg_binary), "format-manifest", "--x-wait-for-lock", filename], capture_output=True,