Skip to content

[Bug]: can't create bottle if vulkan is unavailable #4444

@fatmalama

Description

@fatmalama

Describe the bug

I've tried creating bottles on a system that doesn't have vulkan available - an AMD A4 with AMD ARUBA Radeon 7480D (TeraScale). It seems to hang trying to install vkd3d of which I find no way to specify I don't want. I've also tried modifying a backed up bottle config.yml to set to false vkd3d and dxvk but it fails too on self.vkd3d_available[0]

To Reproduce

  1. Try creating a bottle on a system without vulkan or try to import a config file with all vulkan related stuff set to false

Package

Flatpak from Flathub

Distribution

openSUSE MicroOS (Kalpa)

Debugging Information

Official Package: true
Version: '62.0'
DE/WM: null
Display:
    X.org: true
    X.org (port): :0
    Wayland: true
Graphics:
    vendors:
        amd:
            vendor: amd
            envs:
                DRI_PRIME: '1'
            icd: /usr/share/vulkan/icd.d/radeon_icd.x86_64.json:/usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/radeon_icd.x86_64.json:/usr/lib/i386-linux-gnu/GL/vulkan/icd.d/radeon_icd.i686.json
    prime:
        integrated: null
        discrete: null
Kernel:
    Type: Linux
    Version: 6.19.7-1-default
Disk:
    Total: 3737747456
    Free: 3737587712
RAM:
    MemTotal: 7.0GiB
    MemAvailable: 5.1GiB
Bottles_envs: null

Troubleshooting Logs

Additional context

this is what I get when I tried importing the config.yaml setting the vulkan related bits to false:

22:18:10 (INFO) Creating new controlprod bottle from config… 
22:18:10 (ERROR) Error while running async job: <function BackupManager.import_backup at 0x7f858bdf5120>
        Exception: list index out of range
 
  File "/app/share/bottles/bottles/backend/utils/threading.py", line 73, in __target
    result = self.task_func(*args, **kwargs)
  File "/app/share/bottles/bottles/backend/managers/backup.py", line 262, in import_backup
    return BackupManager._import_config_backup(path)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/app/share/bottles/bottles/backend/managers/backup.py", line 274, in _import_config_backup
    and manager.create_bottle_from_config(config_load.data)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/app/share/bottles/bottles/backend/managers/manager.py", line 1451, in create_bottle_from_config
    config.VKD3D = self.vkd3d_available[0]
                   ~~~~~~~~~~~~~~~~~~~~^^^
Traceback (most recent call last):
  File "/app/share/bottles/bottles/frontend/views/importer.py", line 98, in __finish
    if result.ok:
       ^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'ok'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions