Skip to content

Beta Feedback #3

@Skerga

Description

@Skerga

Wolf-UI Beta

Feedback and discussions here are meant to be about the UI.

this includes:

  • Crashes
  • Logged Exceptions
  • Unresponsiveness
  • Problems reaching UI-Elements via Controller
  • Logic Bugs
  • Design feedback

And everything else that is rooted in the Wolf-UI Application side.
for Feedback about the Wolf server use this PR: games-on-whales/wolf#179

Installation

Wolf-UI will be automatically configured by switching Wolf to ghcr.io/games-on-whales/wolf:wolf-ui.

Your config file will be converted to a new format containing Profiles.

Example

[[profiles]]
id = 'moonlight-profile-id'

    [[profiles.apps]]
    start_virtual_compositor = true
    title = 'Wolf UI'

        [profiles.apps.runner]
        base_create_json = '''{
        "HostConfig": {
            "IpcMode": "host",
            "CapAdd": ["NET_RAW", "MKNOD", "NET_ADMIN", "SYS_ADMIN", "SYS_NICE"],
            "Privileged": false,
            "DeviceCgroupRules": ["c 13:* rmw", "c 244:* rmw"]
        }
        }'''
        devices = []
        env = [ 
            'GOW_REQUIRED_DEVICES=/dev/input/event* /dev/dri/* /dev/nvidia*', 
            'WOLF_SOCKET_PATH=/var/run/wolf/wolf.sock', 
            'WOLF_UI_AUTOUPDATE=False',
            'LOGLEVEL=INFO'
        ]
        image = 'ghcr.io/games-on-whales/wolf-ui:main'
        mounts = [
            '/var/run/wolf/wolf.sock:/var/run/wolf/wolf.sock'
        ]
        name = 'Wolf-UI'
        ports = []
        type = 'docker'

[[profiles]]
id = 'profile_id'
name = 'profile_name'
pin = [ 1, 2, 3, 4 ] # OPTIONAL

    [[profiles.apps]]
    icon_png_path = 'https://games-on-whales.github.io/wildlife/apps/firefox/assets/icon.png'
    start_virtual_compositor = true
    title = 'Firefox'

        [profiles.apps.runner]
        base_create_json = '''{
        "HostConfig": {
            "IpcMode": "host",
            "Privileged": false,
            "CapAdd": ["NET_RAW", "MKNOD", "NET_ADMIN"],
            "DeviceCgroupRules": ["c 13:* rmw", "c 244:* rmw"]
        }
        }'''
        devices = []
        env = [ 'RUN_SWAY=1', 'MOZ_ENABLE_WAYLAND=1', 'GOW_REQUIRED_DEVICES=/dev/input/* /dev/dri/* /dev/nvidia*' ]
        image = 'ghcr.io/games-on-whales/firefox:edge'
        mounts = []
        name = 'WolfFirefox'
        ports = []
        type = 'docker'

As you can see this new format contains one main Profile moonlight-profile-id here defined Apps work exactly like the Apps on Stable.
The only App required here is the Wolf-UI app.
The config expects also one or more [[profiles]] blocks each with their own Apps.
Profiles can optionally be pin locked

Changes

App files will now be saved based on the Profile not the client (Only Apps under moonlight-profile-id will use the old save location).

Files will be saved to: {APP_STATE_FOLDER}/profile-data/{profile_id}/{profiles.app.runner.name} meaning:

  • Multiple Apps with the same title will not save in the same folder if their runner.name is different.
  • Co-op sessions of an App will use the same folder as a Single-player session.
  • Different devices will use the same folder, provided that both clients use the same Profile.
  • Wolf-UI will try to only allow one Session accessing each folder at any time. (Testing needed)

Lobbies are Client independent.

Wolf-UI will start all Apps as Lobbies. Lobbies can be either Single-player Lobbies or Co-op.
When exiting a Lobby without closing the running App it is possible to switch devices. (Strg+Alt+Shift+Q on Desktop, then closing the session in Moonlight) Afterwards connect to wolf using any device with the same stream resolution as the device that started the lobby.

Co-op Lobbies will stop when all user have left. Single-player Lobbies will keep running.

Metadata

Metadata

Assignees

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