สำหรับ บางท่าน หรือ บางองค์กรที่มีนโยบายการใช้งาน Linux เป็นระบบปฏิบัติการหลัก ไม่ว่าจะด้วยเหตุผล เช่น ความเสถียรที่มากกว่า ความปลอดภัยที่มากกว่า หรือ เครื่องมือพัฒนาด้านเครือข่ายที่ก้าวหน้ากว่า หรือ การประหยัดค่าลิขสิทธิ์ก็ตาม
แต่บางครั้งความต้องการที่จะรัน windows apps ก็ยังมีอยู่ ด้วยเหตุผลต่างๆ เช่น
- โปรแกรมจำเป็นบางตัวมีแต่บน Windows
- ใช้ Linux เป็นหลักแต่ไม่เสียฟีเจอร์ Windows
- เพิ่มความปลอดภัยและประสิทธิภาพ
- เล่นเกม Windows บน Linux
- ทำ workflow แบบ Hybrid ได้สะดวก
การรัน Windows Apps บน Linux นั้นไม่ใช่เรื่องใหม่แต่อย่างใด ก่อนหน้านี้มันทำได้โดยใช้โปรแกรมที่ชื่อว่า Wine แต่ว่า การใช้งาน Wine นั้น ค่อนข้างยุ่งยากเพราะเป็น command line

Bottles 60.0 จึงเข้ามาเป็นพระเอก เพื่อแก้ปัญหาดังกล่าว
Bottles เป็น โปรแกรมบน Linux ที่ช่วยให้คุณสามารถ รันโปรแกรม Windows (Native Windows Apps) บน Linux ได้โดยตรง
เวอร์ชันล่าสุด ณ ปัจจุบันคือ 60.0
ใช้งานง่าย มี GUI (กราฟิกอินเตอร์เฟส) ไม่ต้องพิมพ์คำสั่ง Wine ยุ่งยาก
พูดง่าย ๆ คือ มันเป็น “wrapper” สำหรับ Wine รวมกับเครื่องมือเสริม เพื่อทำให้ Windows Apps ทำงานบน Linux ได้ราบรื่นขึ้น
Bottles ทำงานอย่างไร?
- ใช้ Wine เป็นตัวรันโปรแกรม Windows
– Wine เป็นซอฟต์แวร์ที่แปลคำสั่ง Windows ให้ Linux เข้าใจได้
– Bottles ทำให้ Wine ใช้ง่ายขึ้น ไม่ต้อง config เอง
- สร้าง “Bottle” หรือ “Container” สำหรับแต่ละโปรแกรม
– Bottle ก็คือ สภาพแวดล้อมจำลองสำหรับโปรแกรม Windows ตัวใดตัวหนึ่ง
– ช่วยแยกโปรแกรมไม่ให้ไปกระทบกันหรือกับระบบ Linux
- รวมเครื่องมือเสริมเพื่อรันเกมหรือแอปได้ดีขึ้น
– DXVK ทำการแปลง DirectX 9/10/11 เป็น Vulkan
– VKD3D ทำการแปลง DirectX 12 เป็น Vulkan
– Esync / Fsync มีหน้าที่เพิ่มประสิทธิภาพ multi-threading
- ตั้งค่า Environment แบบง่าย ๆ
– ปรับ DPI, GPU, libraries, dll overrides ผ่าน GUI
– ไม่ต้องพิมพ์คำสั่ง Wine เอง

Bottles กับ Wine มีความสัมพันธ์กันอย่างไร
- Wine เปรียบเสมือนหัวใจของการรัน Windows บน Linux
– Wine (Wine Is Not an Emulator) เป็นซอฟต์แวร์ที่ แปลงคำสั่ง Windows ให้ Linux เข้าใจได้
– โปรแกรม Windows เช่น .exe หรือ .msi จะรันผ่าน Wine ได้โดยตรง
- Bottles ก็คือตัวจัดการ Wine พร้อมสร้างสภาพแวดล้อม
– Bottles ไม่ได้รันโปรแกรมเอง แต่ ใช้ Wine เป็น engine
– ความพิเศษของ Bottles คือ:
— มี GUI ให้สร้างและจัดการโดยจะเรียกว่ามันคือ “Bottle”
— แยกสภาพแวดล้อมของแต่ละโปรแกรม (เหมือน container)
— ติดตั้ง Wine runners หลายเวอร์ชันได้ในเครื่องเดียว
— ติดตั้ง libraries, DLL overrides, DXVK, VKD3D ผ่าน GUI
หลังจากการติดตั้ง Fedora 43 แล้วให้ท่านพิมพ์
sudo dnf update
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub com.usebottles.bottles
หลังจากนั้นท่านก็สลับไปใช้ GUI และทำตาม Video ได้เลย https://youtu.be/ZkhzaSMwVuo