[Bug]: Crash At Startup
Describe the Bug
This bug report outlines a recurring issue with the Bottles application on Nobara Linux, where the program crashes at startup, even after uninstalling and reinstalling the application. The issue is not limited to a specific version of Bottles, as it has been observed across multiple versions.
To Reproduce
To reproduce this bug, follow these steps:
- Check if bottles are on the app: Open Bottles and verify if the application is listing the existing bottles.
- Delete from FS if not on the list after closing the app: If the bottles are not listed, close the application and delete the bottles from the file system.
- Reopen the app: Attempt to reopen Bottles, and it will crash.
Alternatively, you can try the following steps:
- Uninstall and reinstall Bottles: Uninstall Bottles and reinstall it from the Flathub repository.
- Run: Attempt to run Bottles, and it will crash.
Package and Distribution
- Package: Bottles is installed as a Flatpak from the Flathub repository.
- Distribution: The issue is observed on Nobara Linux, which is based on Fedora 41.
Debugging Information
The following debugging information is provided:
Official Package: true
Version: '51.20'
DE/WM: plasma
Display:
X.org: true
X.org (port): :0
Wayland: true
Graphics:
vendors:
nvidia:
vendor: nvidia
envs:
__NV_PRIME_RENDER_OFFLOAD: '1'
__GLX_VENDOR_LIBRARY_NAME: nvidia
__VK_LAYER_NV_optimus: NVIDIA_only
icd: /usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/nvidia_icd.json
nvngx_path: /usr/lib/x86_64-linux-gnu/GL/nvidia-570-124-04/extra/nvidia/wine
prime:
integrated: null
discrete: null
Kernel:
Type: Linux
Version: 6.13.5-200.nobara.fc41.x86_64
Disk:
Total: 8341757952
Free: 8341573632
RAM:
MemTotal: 15.5GiB
MemAvailable: 10.6GiB
Bottles_envs: null
Troubleshooting Logs
The following troubleshooting logs are provided:
20:32:06 (ERROR) Config file not exists
Traceback (most recent call last):
File "/app/share/bottles/bottles/backend/models/config.py", line 183, in load
raise FileNotFoundError("Config file not exists")
FileNotFoundError: Config file not exists
20:32:06 (ERROR) Config file not exists
Traceback (most recent call last):
File "/app/share/bottles/bottles/backend/models/config.py", line 183, in load
raise FileNotFoundError("Config file not exists")
FileNotFoundError: Config file not exists
20:32:06 (ERROR) Config file not exists
Traceback (most recent call last):
File "/app/share/bottles/bottles/backend/models/config.py", line 183, in load
raise FileNotFoundError("Config file not exists")
FileNotFoundError: Config file not exists
20:32:06 (ERROR) Config file not exists
Traceback (most recent call last):
File "/app/share/bottles/bottles/backend/models/config.py", line 183, in load
raise FileNotFoundError("Config file not exists")
FileNotFoundError: Config file not exists
20:32:06 (ERROR) Error while running async job: <function BottlesWindow.__on_start.<locals>.get_manager at 0x7c9965358540>
Exception: [Errno 1] Operation not permitted: '/run/user/1000/doc/7d79b069/Bottles'
File "/app/share/bottles/bottles/backend/utils/threading.py", line 62, in __target
result = self.task_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/share/bottles/bottles/frontend/windows/window.py", line 288, in get_manager
mng = Manager(
^^^^^^^^
File "/app/share/bottles/bottles/backend/utils/singleton.py", line 6, in __call__
cls._instances[cls] = super(Singleton, cls).__call__(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/share/bottles/bottles/backend/managers/manager.py", line 157, in __init__
times.update(self.checks(install_latest=False, first_run=True).data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/share/bottles/bottles/backend/managers/manager.py", line 211, in checks
self.check_bottles()
File "/app/share/bottles/bottles/backend/managers/manager.py", line 950, in check_bottles
process_bottle(b)
File "/app/share/bottles/bottles/backend/managers/manager.py", line 910, in process_bottle
os.makedirs(p)
File "<frozen os>", line 215, in makedirs
File "<frozen os>", line 215, in makedirs
File "<frozen os>", line 215, in makedirs
File "<frozen os>", line 225, in makedirs
20:32:06 (INFO) Catalog installers loaded
20:32:06 (INFO) Catalog dependencies loaded
20:32:06 (INFO) Bottles Started!
Traceback (most recent call last):
File "/app/share/bottles/bottles/frontend/windows/window.py", line 217, in set_manager
x for x in self.manager.runners_available if not x.startswith("sys-")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'runners_available'
Additional Context
No additional context is provided.
Conclusion
Q: What is the issue with Bottles crashing at startup?
A: The issue with Bottles crashing at startup is a recurring problem where the application crashes immediately after launching, even after uninstalling and reinstalling the application.
Q: What are the steps to reproduce the issue?
A: To reproduce the issue, follow these steps:
- Check if bottles are on the app: Open Bottles and verify if the application is listing the existing bottles.
- Delete from FS if not on the list after closing the app: If the bottles are not listed, close the application and delete the bottles from the file system.
- Reopen the app: Attempt to reopen Bottles, and it will crash.
Alternatively, you can try the following steps:
- Uninstall and reinstall Bottles: Uninstall Bottles and reinstall it from the Flathub repository.
- Run: Attempt to run Bottles, and it will crash.
Q: What are the system requirements for Bottles to function properly?
A: The system requirements for Bottles to function properly are:
- Package: Bottles is installed as a Flatpak from the Flathub repository.
- Distribution: The issue is observed on Nobara Linux, which is based on Fedora 41.
Q: What are the debugging information and troubleshooting logs provided?
A: The following debugging information and troubleshooting logs are provided:
Official Package: true
Version: '51.20'
DE/WM: plasma
Display:
X.org: true
X.org (port): :0
Wayland: true
Graphics:
vendors:
nvidia:
vendor: nvidia
envs:
__NV_PRIME_RENDER_OFFLOAD: '1'
__GLX_VENDOR_LIBRARY_NAME: nvidia
__VK_LAYER_NV_optimus: NVIDIA_only
icd: /usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/nvidia_icd.json
nvngx_path: /usr/lib/x86_64-linux-gnu/GL/nvidia-570-124-04/extra/nvidia/wine
prime:
integrated: null
discrete: null
Kernel:
Type: Linux
Version: 6.13.5-200.nobara.fc41.x86_64
Disk:
Total: 8341757952
Free: 8341573632
RAM:
MemTotal: 15.5GiB
MemAvailable: 10.6GiB
Bottles_envs: null
20:32:06 (ERROR) Config file not exists
Traceback (most recent call last):
File "/app/share/bottles/bottles/backend/models/config.py", line 183, in load
raise FileNotFoundError("Config file not exists")
FileNotFoundError: Config file not exists
20:32:06 (ERROR) Config file not exists
Traceback (most recent call last):
File "/app/share/bottles/bottles/backend/models/config.py", line 183, in load
raise FileNotFoundError("Config file not exists")
FileNotFoundError: Config file not exists
20:32:06 (ERROR) Config file not exists
Traceback (most recent call last):
File "/app/share/bottles/bottles/backend/models/config.py", line 183, in load
raise FileNotFoundError("Config file not exists")
FileNotFoundError: Config file not exists
20:32:06 (ERROR) Config file not exists
Traceback (most recent call last):
File "/app/share/bottles/bottles/backend/models/config.py", line 183, in load
raise FileNotFoundError("Config file not exists")
FileNotFoundError: Config file not exists
20:32:06 (ERROR) Error while running async job: <function BottlesWindow.__on_start.<locals>.get_manager at 0x7c9965358540>
Exception: [Errno 1] Operation not permitted: '/run/user/1000/doc/7d79b069/Bottles'
File "/app/share/bottles/bottles/backend/utils/threading.py", line 62, in __target
result = self.task_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/share/bottles/bottles/frontend/windows/window.py", line 288, in get_manager
mng = Manager(
^^^^^^^^
File "/app/share/bottles/bottles/backend/utils/singleton.py", line 6, in __call__
cls._instances[cls] = super(Singleton, cls).__call__(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/share/bottles/bottles/backend/managers/manager.py", line 157, in __init__
times.update(self.checks(install_latest=False, first_run=True).data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/share/bottles/bottles/backend/managers/manager.py", line 211, in checks
self.check_bottles()
File "/app/share/bottles/bottles/backend/managers/manager.py", line 950, in check_bottles
process_bottle(b)
File "/app/share/bottles/bottles/backend/managers/manager.py", line 910, in process_bottle
os.makedirs(p)
File "<frozen os>", line 215, in makedirs
File "<frozen os>", line 215, in makedirs
File "<frozen os>", line 215, in makedirs
File "<frozen os>", line 225, in makedirs
20:32:06 (INFO) Catalog installers loaded
20:32:06 (INFO) Catalog dependencies loaded
20:32:06 (INFO) Bottles Started!
Traceback (most recent call last):
File "/app/share/bottles/bottles/frontend/windows/window.py", line 217, in set_manager
x for x in self.manager.runners_available if not x.startswith("sys-")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'runners_available'
Q: What is the root cause of the issue?
A: The root cause of the issue is not yet determined, but it appears to be related to a FileNotFoundError
and an AttributeError
when attempting to load the configuration file and access the runners_available
attribute, respectively.
Q: What is the solution to the issue?
A: The solution to the issue is not yet determined, but it may involve updating the Bottles application to the latest version, reinstalling the application, or modifying the configuration file to resolve the FileNotFoundError
and AttributeError
issues.
Q: How can I report the issue to the Bottles developers?
A: You can report the issue to the Bottles developers by submitting a bug report through the Bottles website or by contacting the developers directly through their support channels. Be sure to provide detailed information about the issue, including the steps to reproduce it, the debugging information, and any troubleshooting logs.