Dự án cộng đồng hồi sinh SPICE VD Agent cho Windows sau khi Red Hat ngừng hỗ trợ
Red Hat đã ngừng duy trì upstream SPICE, khiến trình điều khiển khách (guest agent) trên Windows rơi vào tình trạng bị bỏ rơi. Một fork do cộng đồng duy trì mang tên vd_agent đang nỗ lực giữ cho agent này tiếp tục hoạt động, đặc biệt trên các máy ảo Windows 11 chạy trên Linux.

Trong thế giới ảo hóa, SPICE (Simple Protocol for Independent Computing Environments) từ lâu đã là giao thức hiển thị từ xa quen thuộc với những ai dùng máy ảo Linux trên nền tảng QEMU/KVM. Thế nhưng, khi Red Hat tuyên bố ngừng duy trì dự án này, số phận của thành phần vd_agent — trình khách (guest agent) dành cho Windows — trở nên bấp bênh.
Một lập trình viên có tên nefarius đã quyết định không để SPICE chết yểu. Anh tạo ra repository vd_agent trên GitHub, đóng vai trò bản sao công khai (public mirror) của dự án freedesktop.org/spice/win32/vd_agent vốn đã bị bỏ rơi, đồng thời tiếp tục xây dựng và phát hành bản cài đặt cho các phiên bản Windows hiện đại.
Vấn đề: Khi upstream ngừng nhịp đập
SPICE VD Agent là thành phần cần thiết để máy ảo Windows tương tác trơn tru với trình quản lý ảo hóa. Nó đảm nhận nhiều chức năng quan trọng:
- Chế độ chuột phía client không cần giữ con trỏ (pointer grabbing)
- Đồng bộ độ phân giải desktop theo cửa sổ client
- Chia sẻ clipboard cả văn bản lẫn hình ảnh
- Truyền tệp tin từ máy chủ vào máy khách
- Dịch vụ Windows (
spice-agent) tự động khởi chạyvdagent.exetrong mỗi phiên đăng nhập
Khi Red Hat dừng duy trì, các bản build cũ không còn tương thích tốt với Windows 11, đặc biệt trong những kịch bản ảo hóa phức tạp như truyền GPU thật (GPU passthrough).
Điểm sáng của fork cộng đồng
Bản fork này không chỉ đơn thuần sao chép mã nguồn. Nó đã tích hợp sẵn bản vá lỗi chuột đa GPU từ commit d7405ee trong tệp vdagent/desktop_layout.cpp. Cụ thể, khi một GPU thật được truyền vào máy ảo song song với thiết bị hiển thị SPICE, agent sẽ không còn mất dấu chuyển động chuột — một lỗi khá phổ biến và gây ức chế cho người dùng.
Về mặt pháp lý, dự án giữ nguyên giấy phép GPL-2.0-or-later, bản quyền gốc vẫn thuộc về Red Hat, Inc. và các tác giả upstream khác. Fork không tuyên bố quyền sở hữu thương hiệu Red Hat hay SPICE.
Quy trình build và phát hành chuyên nghiệp
Điều đáng chú ý là dự án được vận hành khá bài bản, không giống một bản vá tạm thời:
- MSYS2 UCRT64 + Autotools + MinGW-w64 là con đường được hỗ trợ chính thức để tạo bộ cài MSI
- CMake + MSVC vẫn dùng được cho phát triển cục bộ nhưng không tạo ra MSI
- Các submodule như
spice-protocolvàspice-commonđược ghim (pin) ở commit cụ thể để đảm bảo tính ổn định - Quy trình CI/CD trên GitHub Actions build MSI x64 trên
windows-2022
Đáng chú ý, việc ký số (signing) được thực hiện qua SignRelay — chứng chỉ số không bao giờ xuất hiện trên máy chạy CI, giảm thiểu rủi ro bảo mật. Chỉ những tag dạng v* mới kích hoạt quy trình ký và phát hành chính thức.
Kiểm thử trên Windows 11: Danh sách kiểm tra nghiêm ngặt
Với người dùng Việt Nam đang chạy máy ảo Windows 11 trên Linux (QEMU/KVM + SPICE), dự án đưa ra quy trình kiểm thử khá chi tiết:
Cài đặt sạch MSI với quyền Administrator, kiểm tra dịch vụ
spice-agentchạy ở chế độ Automatic, thử clipboard hai chiều, kéo thả tệp, thay đổi độ phân giải động, và đặc biệt là kiểm tra chuột khi có GPU passthrough.
Các bước này giúp đảm bảo rằng bản fork thực sự hoạt động trong môi trường thực tế, chứ không chỉ build thành công mà thôi.
Ý nghĩa với cộng đồng mã nguồn mở
Câu chuyện của vd_agent phản ánh một thực tế quen thuộc trong thế giới mã nguồn mở: khi một tập đoàn lớn rút lui, cộng đồng có thể tiếp quản nếu có đủ người tâm huyết và quy trình kỹ thuật đủ chắc.
Đối với người dùng Việt Nam — đặc biệt là các kỹ sư DevOps, quản trị viên hệ thống hay những ai làm việc với máy ảo trong môi trường lab — việc một thành phần thiết yếu như SPICE guest agent tiếp tục được duy trì là tin đáng mừng. Nó giúp các giải pháp ảo hóa mã nguồn mở như QEMU/KVM + virt-viewer vẫn là lựa chọn khả thi thay vì phải phụ thuộc hoàn toàn vào các nền tảng thương mại.
Dự án có thể tìm thấy tại địa chỉ github.com/nefarius/vd_agent, với các bản phát hành chính thức nằm ở mục GitHub Releases. Ai muốn đóng góp chỉ cần clone với submodule:
git clone --recursive https://github.com/nefarius/vd_agent.git
Bài viết liên quan

Công nghệ
Trail of Bits và cách xác minh tính toàn vẹn của các cuộc trò chuyện Signal
12 tháng 9, 2026

Công nghệ
buildprof: Công cụ trực quan hóa quá trình build giúp lý giải vì sao Bun chuyển từ Zig sang Rust lại nhanh hơn 5 lần
12 tháng 9, 2026
Công nghệ
Những ý tưởng hay trong ngôn ngữ lập trình: Flow Typing, Borrow Checker và Contract Programming
12 tháng 9, 2026