ทางเลือกของ xmove, xpra


11

ข้อมูลพื้นฐานเล็กน้อย: ฉันกำลังจัดการกับซอฟต์แวร์บางส่วนที่เป็นส่วนหนึ่งของระบบที่ใหญ่ขึ้น ชิ้นส่วนของระบบส่วนใหญ่มีกระบวนการพื้นหลังที่ทำงานอย่างต่อเนื่องและ GUI ที่สามารถเปิดได้เมื่อจำเป็นต้องใช้ส่วนการทำงานนั้น ซอฟต์แวร์เฉพาะที่ทำให้ฉันมีปัญหาแทนที่จะเขียนเป็นโปรแกรมเดี่ยวที่มีทั้ง GUI และการประมวลผลเบื้องหลัง ซึ่งหมายความว่า GUI ต้องทำงานอยู่เสมอไม่เช่นนั้นการประมวลผลที่เกี่ยวข้องจะไม่เกิดขึ้น สิ่งนี้ไม่ต้องการ (ด้วยเหตุผลหลายประการ)

ในฐานะที่เป็นวิธีแก้ปัญหาฉันได้ตรวจสอบ X pseudoservers ต่างๆที่จะอนุญาตให้ฉันแสดง / ซ่อนหน้าต่าง GUI ตามความเหมาะสม ทั้งสามที่ฉันได้ดูโดยเฉพาะคือxmove , ximoveและxpra

xmoveเก่ามาก (ยังไม่ได้รับการพัฒนาตั้งแต่ พ.ย. 1997) และไม่รองรับกราฟิก 24 บิตซึ่งไม่ใช่การเริ่มต้น

ฉันได้พบสิ่งที่เรียกว่าximoveด้วย Mark C. Ballew ผู้เขียนเริ่มต้นด้วยความตั้งใจที่จะปรับปรุง xmove (XIMove≡Xmove Improved) แต่เมื่อดูที่เว็บไซต์ของเขาดูเหมือนว่าการอัปเดตสถานะครั้งล่าสุดคือ 8/16/04 และจะเชื่อมโยงไปยังhttp://forum.ximove.com/ซึ่งดูเหมือนว่าจะไม่มีอีกต่อไป

xpraดูเหมือนจะเป็นตัวเลือกที่มีแนวโน้มมากที่สุด แต่ก็ไม่ได้ผลตามที่หวังไว้ ฉันได้รับข้อผิดพลาดจำนวนมากที่บ่นเกี่ยวกับ "ไคโร" ซึ่งเป็นสิ่งที่ไม่ได้กล่าวถึงในไฟล์ xpra ใด ๆ ที่กล่าวถึงการพึ่งพา ... อย่างไรก็ตามโปรแกรมนี้ทำงานได้กับแอปพลิเคชันขนาดเล็กเช่นเว็บเบราว์เซอร์ เมื่อฉันพยายามที่จะใช้สำหรับโปรแกรมปัญหาของฉันฉันได้รับข้อผิดพลาดมากขึ้น (ข้อผิดพลาดไคโรและอื่น ๆ ) และทั้ง xpra และแอปพลิเคชันนั้นดูเหมือนว่าจะขัดข้อง

ฉันกำลังมองหาการลองติดตั้ง xpra เวอร์ชั่นใหม่ล่าสุด แต่ฉันสงสัยว่าพวกคุณคนใดมีความเข้าใจในแอปพลิเคชัน X pseudoserver อื่น ๆ ที่ฉันควรลอง


1
คุณเพียงแค่ต้องซ่อนหน้าต่างหรือคุณต้องสามารถเรียกใช้โปรแกรมของคุณโดยไม่ต้อง X? คุณลอง Xvfb หรือไม่?

ฉันไม่จำเป็นต้องเรียกใช้โดยไม่ใช้ X แม้ว่าจะใช้ได้ ฉันต้องการวิธีที่จะเรียกใช้โดยไม่เห็นดังนั้นเมื่อผู้ใช้คลิกที่ปุ่มใน wrapper GUI มันจะปรากฏขึ้นเพื่อเรียกใช้แอปนี้ แต่จริงๆแล้วมันจะทำให้มองเห็นได้ ฉันไม่ได้ลอง Xcfb แต่ฉันมองเข้าไปในเวลาสั้น ๆ เมื่อฉันเห็นคำตอบของคุณและฉันไม่แน่ใจว่ามันเป็นสิ่งที่ฉันกำลังมองหา ... มันดูไม่เหมือนหลังจากเริ่มโปรแกรมโดยไม่มี X ว่าฉัน สามารถแนบไปกับ Xserver จริงได้เมื่อฉันต้องการ คุณมีประสบการณ์เกี่ยวกับเรื่องนี้เพื่อบอกฉันใช่หรือไม่?

2
Xvfb เป็นเซิร์ฟเวอร์ framebuffer X เสมือน คุณสามารถเริ่มต้นด้วยและเปิดโปรแกรมของคุณด้วยXvfb :1 DISPLAY=:1 yourprogramวิธีนี้คุณจะไม่เห็น UI ใด ๆ ในเซสชัน X ของคุณและคุณยังสามารถโต้ตอบกับ UI โปรแกรมของคุณได้โดยเริ่มต้นเซิร์ฟเวอร์ VNC ที่เชื่อมต่อกับเซสชัน Xvfb อีกวิธีหนึ่งในการซ่อน UI อาจเป็น-geometryตัวเลือกบรรทัดคำสั่งซึ่งโดยทั่วไปจะแยกวิเคราะห์โดยโปรแกรมที่ใช้ xlib

ปัญหาคือถ้าฉันเริ่มโปรแกรมในลักษณะนั้นไม่มีทางที่จะทำให้มองเห็นได้โดยไม่ฆ่ามันเป็นการเริ่มใหม่ Pseudoservers ในทางกลับกันอนุญาตให้คุณปลอม XServer เมื่อคุณไม่ต้องการ แต่จากนั้นส่งต่อไปยังจอแสดงผลจริงเมื่อคุณต้องการ ฉันสามารถทำสิ่งนั้นกับ Xcfb ได้หรือไม่ ดูเหมือนว่าฉันจะไม่ได้ (แต่ฉันไม่มีผู้เชี่ยวชาญ) ดูเหมือนว่าเป็นเครื่องมือที่ยอดเยี่ยมหากฉันต้องการซ่อนมันไว้เสมอแต่ไม่ใช่ถ้าฉันต้องการเห็นมันในบางครั้ง

3
หมายเหตุ: มีหลายเวอร์ชันที่xpraลอยอยู่รอบ ๆ ; ที่ให้ไว้ในที่เก็บ distro ส่วนใหญ่ล้าสมัยอย่างมาก ลองรุ่นที่ใหม่กว่าจาก xpra.org
Piskvor ออกจากอาคาร

คำตอบ:


1

สิ่งที่ Piskvor พูดในความคิดเห็น ลอง xpra รุ่นที่ใหม่กว่า เล่นโดยใช้การตั้งค่าปิดการใช้งานสิ่งที่คุณไม่ต้องการเช่นการส่งต่อเสียง มันสามารถทำให้ทำงานได้ดี


0

คุณสามารถลองใช้เซิร์ฟเวอร์ VNC เช่นXvnc , TightVNCหรือTigerVNC

นอกจากนี้คุณยังสามารถใช้VirtualBox (อย่างน้อยรุ่น 5) ติดตั้งระบบปฏิบัติการและโปรแกรมของคุณในเครื่องเสมือน หากคุณเริ่มต้น VM ในโหมด "ถอดออกได้" คุณสามารถปิดหน้าต่าง VirtualBox ทั้งหมดและให้ VM ทำงานต่อไป จากนั้นคุณสามารถรีสตาร์ท VirtualBox GUI และใส่กลับไปที่ VM

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.