- WinBoat chạy Cửa sổ thực tế với KVM và Docker, tích hợp windows thông qua FreeRDP.
- Yêu cầu chính: KVM đang hoạt động, Docker+Compose v2, FreeRDP 3 và không gian trong /var.
- Khả năng tương thích tốt hơn Rượu nho para ứng dụng phức tạp; chưa có GPU passthrough.
- Bản phân phối và biên dịch AppImage/Unpacked bằng NodeJS và Go.
Nếu bạn đã từng cân nhắc việc thay đổi Windows cho Linux, khả năng tương thích có lẽ đã kìm hãm bạn. Mặc dù hệ sinh thái chim cánh cụt đã trưởng thành, Có những ứng dụng và trò chơi vẫn chỉ có trên Windows. Và không phải lúc nào cũng có giải pháp thay thế xứng đáng. Đó chính là lúc một đề xuất rất thú vị và đang được chú ý phát huy tác dụng: WinBoat.
Ý tưởng này rất đơn giản nhưng lại mạnh mẽ: thay vì dịch các lệnh gọi Windows như Wine đã làm, WinBoat chạy Windows thực sự bên trong Linux Nhưng nó tích hợp các cửa sổ của bạn như thể chúng là bản gốc. Không còn phải vật lộn với các tiền tố, DLL cầu kỳ hay hàng tá tham số nữa: với WinBoat, mục tiêu là để bạn làm việc với các chương trình của mình, chứ không phải cấu hình chúng.
WinBoat là gì và tại sao nó lại thay đổi bối cảnh?

WinBoat là một ứng dụng mã nguồn mở miễn phí được thiết kế để kết nối hai thế giới thường xuyên va chạm. Với khẩu hiệu vừa quyến rũ vừa rõ ràng, Cửa sổ cho chim cánh cụt, mục tiêu của nó là cung cấp mức độ ma sát thấp nhất có thể khi sử dụng phần mềm Microsoft trong bản phân phối Linux ưa thích của bạn.
Thay vì hoạt động như một lớp tương thích, WinBoat nâng cấp Windows thực sự Dựa trên công nghệ ảo hóa KVM và vùng chứa Docker, các ứng dụng được hiển thị nhúng trên màn hình nền của bạn bằng RemoteApp và FreeRDP, do đó chúng trông và hoạt động giống như các cửa sổ thông thường trong GNOME, KDE hoặc bất kỳ môi trường nào bạn sử dụng.
Nếu bạn đã thử các giải pháp như WinApps, bạn sẽ nhận thấy sự thay đổi trong cách tiếp cận. Trong WinBoat Giao diện được trau chuốt hơn và phần lớn quy trình được tự động hóa., từ việc tạo ra môi trường đến tích hợp trực quan. Ý tưởng là người dùng tập trung vào việc làm việc với các chương trình của họ, chứ không phải giải quyết các vấn đề còn dang dở trong thiết bị đầu cuối.
Bạn có thể mong đợi gì về khả năng tương thích? Cơ sở rất rộng: Nếu nó hoạt động trên Windows thì thường nó cũng hoạt động ở đây., ngoại trừ những trường hợp cụ thể yêu cầu tăng tốc đồ họa trực tiếp hoặc chống gian lận ở cấp độ hạt nhân, hai mặt trận vẫn chưa được giải quyết.
Nó hoạt động như thế nào bên trong
Trái tim kỹ thuật của WinBoat kết hợp ba phần chính: KVM cho ảo hóaDocker để đóng gói và sắp xếp môi trường, và FreeRDP để đưa các cửa sổ hệ thống khách trực tiếp vào phiên Linux của bạn. Kết quả là bạn mở Từ, Photoshop hoặc công cụ của công ty bạn và bạn chỉ thấy nó như một cửa sổ khác trên thanh tác vụ.
Giao diện được xây dựng bằng Electron và Phần phụ trợ sử dụng Go để phối hợp thông qua HTTP, cho phép bạn tự động hóa mọi thứ, từ trình hướng dẫn cài đặt đến quản lý thành phần. Ngoài ra, thư mục home của bạn được gắn vào Windows khách để chia sẻ tập tin mà không gặp rắc rối giữa cả hai hệ thống.
Luồng thông thường rất đơn giản: WinBoat cung cấp một hình ảnh Windows cơ sở, khởi động VM bằng KVM, hiển thị các dịch vụ cần thiết và khi bạn khởi chạy một ứng dụng, tích hợp nó với RemoteApp và FreeRDP để nó hoạt động tự nhiên trên màn hình Linux của bạn. Nếu cần, bạn cũng có thể mở toàn bộ màn hình Windows theo yêu cầu.
Điều quan trọng là phải làm rõ rằng không có sự bắt chước ở đây: vấn đề là Windows thực sự chạy với khả năng tăng tốc ảo hóaĐiều này đòi hỏi nhiều tài nguyên hơn so với lớp giống Wine, nhưng đổi lại bạn sẽ có được khả năng tương thích cao hơn nhiều với các chương trình phụ thuộc vào các thành phần hệ thống sâu.
Yêu cầu, khả năng tương thích và điều kiện tiên quyết
Trước khi bắt đầu, bạn nên kiểm tra một số mức tối thiểu; tham khảo hướng dẫn kỹ thuật về các yêu cầu và giới hạn. WinBoat hỏi ít nhất 4 GB RAM và bộ xử lý có 2 luồng, mặc dù nhiều bộ nhớ và lõi hơn sẽ cải thiện trải nghiệm đáng kể.
Cũng cần phải có khoảng 32 GB trống trong đường dẫn /var, vì hình ảnh và dữ liệu tạm thời được lưu trữ ở đó. Nếu không có không gian này, quá trình khởi động có thể bị lỗi hoặc ngừng hoạt động.
Thiết yếu: Ảo hóa KVM được kích hoạt trong BIOS/UEFINếu cấu hình kernel hoặc firmware chặn KVM, nó sẽ không hoạt động, ngay cả khi mọi thứ khác đều ổn. Hãy kiểm tra điều này trước.
Về mặt phần mềm, bạn cần Docker ở chế độ đặc quyền và Docker Compose v2, cũng như thêm người dùng của bạn vào nhóm Docker để tránh phải liên tục sử dụng sudo. Các giải pháp thay thế như Podman, Docker Desktop hoặc container không root hiện không được hỗ trợ.
Để tích hợp đồ họa, WinBoat yêu cầu FreeRDP 3.xx có hỗ trợ âm thanh. Ngoài ra, nên có các mô-đun iptables của hạt nhân được tải để mọi định tuyến và mạng lưới hoạt động trơn tru.
Có thể tải xuống, cài đặt và đóng gói
Hiện tại bạn có thể tải WinBoat ở định dạng AppImage đã sẵn sàng để chạy, giúp mọi thứ dễ dàng hơn nhiều trên hầu hết các bản phân phối. Chỉ cần đánh dấu nó là có thể thực thi và mở nó.
Nếu bạn thích kiểm soát nhiều hơn, có một biến thể được giải nén với các tệp nhị phân rời rạc (ví dụ, trong thư mục linux-unpacked/winboat), từ đó bạn có thể khởi chạy ứng dụng mà không cần đóng gói cụ thể.
Cần lưu ý rằng, hiện tại, Không hỗ trợ Podman, Docker Desktop hoặc rootlessTrước khi bắt đầu, hãy cài đặt Docker và Compose v2, kiểm tra FreeRDP 3, thêm người dùng của bạn vào nhóm docker và chuẩn bị mọi thứ.
Bạn có quan tâm đến việc biên dịch từ mã không? Dự án sử dụng NodeJS và Go là công cụ cơ bảnQuá trình này rất đơn giản: sao chép kho lưu trữ, cài đặt các phụ thuộc npm, biên dịch và các tệp nhị phân sẽ xuất hiện trong thư mục dist với các phiên bản AppImage và Unpacked.
Để phát triển có một cách npm chạy dev giúp đơn giản hóa việc kiểm thử cục bộ mà không cần phải đóng gói cho mỗi lần lặp. Nếu bạn thích mày mò, đây sẽ là lựa chọn hoàn hảo.
WinBoat cung cấp những gì: Các tính năng chính và trải nghiệm
Một trong những điều đầu tiên bạn sẽ nhận thấy là nó giao diện thanh lịch và trực quan, được thiết kế để tích hợp với máy tính để bàn của bạn một cách tự nhiên nhất có thể. Nó không giống như một máy ảo (VM) nặng nề: cảm giác như các ứng dụng luôn nằm trên Linux.
Quá trình thiết lập được tự động hóa cao: bạn chọn tùy chọn và thông số kỹ thuật và WinBoat sẽ lo phần còn lại, từ việc cung cấp Windows cho khách đến việc áp dụng cấu hình cần thiết.
Về khả năng tương thích, cách tiếp cận này rất tham vọng: hầu như bất kỳ ứng dụng Windows nào cũng có thể hoạt động, ngoại trừ phần mềm yêu cầu tăng tốc GPU hoặc chống gian lận ở cấp độ nhân. Đối với nhiều bộ phần mềm chuyên nghiệp, đây chính là những gì cần thiết.
Ngoài ra, bạn có thể chuyển đổi giữa cửa sổ riêng lẻ tích hợp hoặc màn hình nền đầy đủ Windows bất cứ khi nào bạn cần. Nếu quy trình làm việc của bạn yêu cầu, chỉ cần một cú nhấp chuột.
Tích hợp hệ thống tập tin là một điểm mạnh khác: Thư mục home của bạn được gắn bên trong Windows, cho phép chia sẻ tài liệu trực tiếp, không cần dịch vụ trung gian hoặc đồng bộ hóa phức tạp.
Các tính năng bổ sung bao gồm các tính năng như quẹt thẻ thông minh và giám sát tài nguyênChúng không cần thiết cho tất cả mọi người, nhưng chúng tạo nên sự khác biệt trong môi trường làm việc chuyên nghiệp và doanh nghiệp.
Kiểm tra thực tế: năng suất, phát triển và một số trò chơi
Trong các tình huống công việc văn phòng và hàng ngày, cảm giác chung là tích cực. Các ứng dụng như Microsoft Office (Word và Excel, ngay cả với macro) Họ hành xử dễ dàng, điều này đã đáp ứng được nhiều nhu cầu.
Với phần mềm sáng tạo, có những dấu hiệu tốt: Affinity Photo, công cụ Adobe hoặc Acrobat đã cho thấy khả năng tương thích đáng chú ý trong thử nghiệm cộng đồng, dễ dự đoán hơn nhiều so với các giải pháp dựa trên Wine.
Đối với phát triển, các tiện ích như Visual Studio Code hoặc Notepad++ Chúng chạy mà không có bất kỳ vấn đề nào, cho phép bạn giữ Linux làm hệ thống chính và sử dụng các công cụ Windows gốc khi cần thiết.
Trong trò chơi, hình ảnh có thể không đồng nhất. Các tựa game cũ hơn hoặc ít yêu cầu cấu hình hơn có thể hoạt động khá tốt, nhưng Đây không phải là con đường lý tưởng cho trò chơi hiện đại.. Proton và hơi nước Chúng vẫn là tài liệu tham khảo cho Linux.
Nơi WinBoat thực sự tỏa sáng là ở chương trình kinh doanh hoặc chuyên ngành không hoạt động trên Wine: kế toán, bộ ứng dụng doanh nghiệp, công cụ tích hợp sâu hoặc phụ thuộc cụ thể vào hệ điều hành Microsoft.
So sánh nhanh: Wine, PlayOnLinux/Lutris, VMs và CrossOver
Rượu vang đã là chuẩn mực trong nhiều năm, nhưng nó có thể không thể đoán trước được: tiền tố, sự phụ thuộc và thử nghiệm và sai sót Chúng là một phần của cuộc sống hàng ngày nếu bạn là người thích khám phá. PlayOnLinux và Lutris giúp cuộc sống dễ dàng hơn, mặc dù chúng cũng thừa hưởng phần lớn sự phức tạp đó.
các máy ảo loại VirtualBox o VMware Tất nhiên là chúng có tác dụng, nhưng Họ tiêu thụ nhiều tài nguyên hơn bằng cách dành RAM và CPU cho máy khách, ngoài ra còn thiếu khả năng tích hợp tiện lợi mà WinBoat cung cấp với các cửa sổ gốc của nó.
CrossOver rất vững chắc và được hỗ trợ chuyên nghiệp, nhưng nó phải trả phí. Mặt khác, WinBoat là mã nguồn mở và miễn phívà tính năng tự động hóa của nó làm giảm đáng kể sự khó khăn khi nhập liệu cho người dùng trung bình.
Tóm lại, WinBoat đặt cược vào hỗ trợ tự động hóa rộng rãi, hy sinh một chút độ nhẹ so với Wine, nhưng tránh được nhiều điểm khó chịu thường thấy.
Tăng tốc phần cứng, USB và đồ họa
Đoạn văn của USB Ngày nay điều đó có thể thực hiện được, mặc dù có một mẹo nhỏ: nó đòi hỏi Chỉnh sửa tệp docker-compose.yml trong đường dẫn ~/.winboat và áp dụng các thay đổi với lệnh Compose thông thường (xuống và lên -d). Tin tốt là việc đưa tính năng này vào GUI đang được ưu tiên hàng đầu trong danh sách ưu tiên của dự án.
Tăng tốc đồ họa trực tiếp (GPU passthrough) hiện tại không có sẵnViệc sử dụng các bộ điều khiển bán ảo hóa và công nghệ như Looking Glass đang được nghiên cứu, nhưng cho đến nay vẫn chưa có giải pháp ổn định nào dành cho tất cả mọi người.
Nếu ưu tiên của bạn là trò chơi với chống gian lận cấp độ hạt nhânmọi thứ trở nên phức tạp: loại bảo vệ này thường chặn ảo hóa và do đó không hoạt động trong WinBoat.
Đối với các chương trình năng suất, chỉnh sửa 2D hoặc các tiện ích kỹ thuật không có nhu cầu lớn về 3D, hiệu suất hoàn toàn có thể sử dụng được, nhưng AAA hiện đại không phải là mục tiêu của dự án ở trạng thái hiện tại.
Tình trạng dự án, cộng đồng và lộ trình
WinBoat đang ở trong giai đoạn beta với sự phát triển tích cựcKho lưu trữ chính thức chấp nhận các đóng góp theo giấy phép MIT và cộng đồng sẽ hợp tác bằng cách báo cáo các vấn đề, cải thiện tài liệu và thử nghiệm trên các bản phân phối khác nhau.
Những mục tiêu rõ ràng hiện ra ở phía chân trời: Tăng tốc GPU, đóng gói Flatpak và hỗ trợ PodmanTuy nhiên, vẫn có những trở ngại: các vấn đề về mạng với Podman và các hạn chế của hộp cát khiến việc triển khai Docker và tệp nhị phân trong Flatpak trở nên khó khăn.
Tác giả của dự án đã làm rõ rằng, hiện tại, Podman và Docker Desktop không được hỗ trợ.và hoạt động không có gốc là không khả thi. Đây là một hạn chế tạm thời, nhưng đáng lưu ý nếu môi trường của bạn chuẩn hóa các công nghệ này.
Đối với các ứng dụng được người dùng xác nhận, một số cái tên mạnh mẽ xuất hiện: Affinity Photo, Paint Tool SAI v1.0, bộ Adobe, Acrobat, AeroChat hoặc Office 365Đây chính xác là những trường hợp thường bị kẹt trong Wine và WinBoat sẽ giúp giải quyết vấn đề này.
Nếu bạn đang sử dụng Windows 10 và đang cân nhắc việc chuyển sang hệ điều hành này do hệ điều hành này sắp hết thời hạn hỗ trợ, WinBoat có thể là giải pháp hoàn hảo: cho phép bạn giữ các công cụ bạn cần trong khi sử dụng Linux làm môi trường chính. Điều này đặc biệt hữu ích cho các doanh nghiệp vừa và nhỏ cũng như các chuyên gia sử dụng phần mềm Windows chuyên biệt.
Thực hành tốt và mẹo hữu ích
Trước khi bạn bắt đầu, hãy kiểm tra xem người dùng của bạn nằm trong nhóm dockerBạn sẽ không phải dùng sudo mỗi lần và tránh được các vấn đề về quyền.
Kiểm tra phiên bản của FreeRDP (3.xx có hỗ trợ âm thanh)Sử dụng phiên bản chính xác sẽ giảm đáng kể các vấn đề về hình ảnh và âm thanh.
Đảm bảo rằng bạn có không gian trống trong /var và hệ thống tập tin sẽ không làm bạn thất vọng khi đang tải xuống hoặc trong quá trình cập nhật.
Nếu bạn chạm vào bước USB, tài liệu thay đổi trong docker-compose.yml và lưu một bản sao. Nó sẽ giúp bạn tránh rắc rối khi cập nhật hoặc muốn khôi phục cài đặt.
Và nếu bạn muốn theo dõi dự án chặt chẽ, hãy ghé qua trang web chính thức của nó và cộng đồng trên Discord, tập trung vào thông báo, câu hỏi thường gặp và thử nghiệm các tính năng mới.
WinBoat không phải là một cây đũa thần, nhưng nó cung cấp một sự kết hợp hoàn hảo: Khả năng tương thích rộng, tích hợp tinh tế và ít ma sát hơn hơn các giải pháp truyền thống. Đối với những ai cần "một phần của Windows" trong Linux, đây là một lựa chọn thực tế, hiện đại với lộ trình đầy hứa hẹn.
Người viết đam mê về thế giới byte và công nghệ nói chung. Tôi thích chia sẻ kiến thức của mình thông qua viết lách và đó là những gì tôi sẽ làm trong blog này, cho bạn thấy tất cả những điều thú vị nhất về tiện ích, phần mềm, phần cứng, xu hướng công nghệ, v.v. Mục tiêu của tôi là giúp bạn điều hướng thế giới kỹ thuật số một cách đơn giản và thú vị.
