본문 바로가기
리눅스

Bottles 51.21 오류 해결

by 다움위키 2025. 3. 27.

이전 글에서 51.18 이후로 bottle 생성이나 속성 보기에 문제가 있음을 알 수 있습니다.

https://dawoum.tistory.com/entry/Bottle-5118-오류 해결

 

이전 글에서 제공되는 패치는 현재의 master 가지에서 사용할 수 있습니다.

 

이것 전에 아치 패치를 먼저 적용하십시오.

반면에, 타르볼로 제공하는 릴리스 파일들은 디렉토리 이름이나 파일 이름이 달라서 패치가 적용되지 않습니다.

물론 grep --color=auto -R 'Xdp.Portal.running_under_sandbox'와 같이 찾아서 수동으로 패치를 적용할 수 있지만, 귀찮습니다.

아래는 현재의 51.21 버전에서 사용할 수 있는 패치입니다.

diff '--color=auto' --color -urN Bottles-51.21.orig/bottles/frontend/views/bottle_details.py Bottles-51.21/bottles/frontend/views/bottle_details.py
--- Bottles-51.21.orig/bottles/frontend/views/bottle_details.py	2025-03-17 12:14:40.000000000 +0900
+++ Bottles-51.21/bottles/frontend/views/bottle_details.py	2025-03-27 18:00:43.322435905 +0900
@@ -451,6 +451,9 @@
             else:
                 show_chooser()
 
+        if not Xdp.Portal.running_under_sandbox():
+           show_chooser()
+
     def __backup(self, widget, backup_type):
         """
         This function pop up the file chooser where the user
diff '--color=auto' --color -urN Bottles-51.21.orig/bottles/frontend/views/bottle_preferences.py Bottles-51.21/bottles/frontend/views/bottle_preferences.py
--- Bottles-51.21.orig/bottles/frontend/views/bottle_preferences.py	2025-03-17 12:14:40.000000000 +0900
+++ Bottles-51.21/bottles/frontend/views/bottle_preferences.py	2025-03-27 18:01:40.072110234 +0900
@@ -139,7 +139,7 @@
         self.queue = details.queue
         self.details = details
 
-        if not gamemode_available or not Xdp.Portal.running_under_sandbox():
+        if not gamemode_available:
             return
 
         _not_available = _("This feature is unavailable on your system.")
diff '--color=auto' --color -urN Bottles-51.21.orig/bottles/frontend/views/list.py Bottles-51.21/bottles/frontend/views/list.py
--- Bottles-51.21.orig/bottles/frontend/views/list.py	2025-03-17 12:14:40.000000000 +0900
+++ Bottles-51.21/bottles/frontend/views/list.py	2025-03-27 17:58:05.783943863 +0900
@@ -82,8 +82,8 @@
 
     def run_executable(self, *_args):
         """Display file dialog for executable"""
-        if not Xdp.Portal.running_under_sandbox():
-            return
+#        if not Xdp.Portal.running_under_sandbox():
+#            return
 
         def set_path(_dialog, response):
             if response != Gtk.ResponseType.ACCEPT:
diff '--color=auto' --color -urN Bottles-51.21.orig/bottles/frontend/views/new_bottle_dialog.py Bottles-51.21/bottles/frontend/views/new_bottle_dialog.py
--- Bottles-51.21.orig/bottles/frontend/views/new_bottle_dialog.py	2025-03-17 12:14:40.000000000 +0900
+++ Bottles-51.21/bottles/frontend/views/new_bottle_dialog.py	2025-03-27 17:56:12.770662000 +0900
@@ -80,7 +80,7 @@
         super().__init__(**kwargs)
         # common variables and references
         self.window = GtkUtils.get_parent_window()
-        if not self.window or not Xdp.Portal.running_under_sandbox():
+        if not self.window:
             return
 
         self.app = self.window.get_application()