Dự án cộng đồng hồi sinh SPICE VD Agent cho Windows sau khi Red Hat ngừng hỗ trợ

Phần mềm12 tháng 9, 2026·4 phút đọc

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.

Dự án cộng đồng hồi sinh SPICE VD Agent cho Windows sau khi Red Hat ngừng hỗ trợ

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ạy vdagent.exe trong 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-protocolspice-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-agent chạ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
Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗