[GH-ISSUE #3] Beta Feedback #1

Open
opened 2026-10-15 13:01:18 +00:00 by bsakaguchi · 8 comments
Owner

Originally created by @Skerga on GitHub (Jul 2, 2025).
Original GitHub issue: https://github.com/games-on-whales/wolf-ui/issues/3

Originally assigned to: @Skerga on GitHub.

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: https://github.com/games-on-whales/wolf/pull/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.

Originally created by @Skerga on GitHub (Jul 2, 2025). Original GitHub issue: https://github.com/games-on-whales/wolf-ui/issues/3 Originally assigned to: @Skerga on GitHub. # 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: https://github.com/games-on-whales/wolf/pull/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 ```toml [[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.
Author
Owner

@Skerga commented on GitHub (Jul 12, 2025):

Known problems:

<!-- gh-comment-id:3065745137 --> @Skerga commented on GitHub (Jul 12, 2025): Known problems: - https://github.com/games-on-whales/wolf/pull/179#issuecomment-3058215348
Author
Owner

@Lombra commented on GitHub (Aug 9, 2025):

Here's everything that caught my attention/came to mind after trying it out for a bit.

  • The legend indicates available actions Cancel and Back. Cancel only does anything if a menu is open, and I've not seen Back do anything. Only show if they will do something? #7
  • When returning to the profile selection screen, the Back action is removed from the legend.
  • The exit and logout buttons at the top seem a little unclear. While you can probably figure out what they do, I prefer icon + text unless there's a good reason to do otherwise. I would also prefer that they be placed next to each other.
  • The exit and logout action should probably be accessible via some hotkey rather than requiring navigating to the buttons. Maybe a system menu similar to Steam big picture.
  • Menu sounds seems slightly delayed.
  • Multiple sounds sometimes play, such as when clicking cancel in an application menu. Clicking using a mouse sometimes also add an additional sound effect. #7
  • To be honest, I'm not crazy about the sounds overall. They sound a bit dated, and the select chime is too long. The Steam big picture sounds are fine, imo, but also I wouldn't mind if there were no sounds at all.
  • There is a mouse hover effect on the grid items, but it is nigh invisible due to blending in with the background. I don't think there needs to be a mouse hover effect, for that matter. #7
  • Would prefer Start to be the default action when selecting a non running application (maybe running too?), with other actions (ie the menu) being on some other key.
  • I don't think Cancel should be on the menus. The hotkey is enough. Preferrably with some additional logic for closing the menu using the mouse, such as clicking anywhere else.
  • Application status indicator needs to be more clear. Maybe something in the application title bar, or a big overlay on the button.
  • Would like to be able to automatically login using my profile.

I know this has been discussed before:

  • Some hotkey for returning to Wolf UI. (rather than terminating the Moonlight stream)
  • Per profile keyboard layout setting to be used in all applications. (timezone, too, perhaps?)
<!-- gh-comment-id:3172103732 --> @Lombra commented on GitHub (Aug 9, 2025): Here's everything that caught my attention/came to mind after trying it out for a bit. - The legend indicates available actions Cancel and Back. Cancel only does anything if a menu is open, and I've not seen Back do anything. Only show if they will do something? #7 - When returning to the profile selection screen, the Back action is removed from the legend. - The exit and logout buttons at the top seem a little unclear. While you can probably figure out what they do, I prefer icon + text unless there's a good reason to do otherwise. I would also prefer that they be placed next to each other. - The exit and logout action should probably be accessible via some hotkey rather than requiring navigating to the buttons. Maybe a system menu similar to Steam big picture. - Menu sounds seems slightly delayed. - Multiple sounds sometimes play, such as when clicking cancel in an application menu. Clicking using a mouse sometimes also add an additional sound effect. #7 - To be honest, I'm not crazy about the sounds overall. They sound a bit dated, and the select chime is too long. The Steam big picture sounds are fine, imo, but also I wouldn't mind if there were no sounds at all. - There is a mouse hover effect on the grid items, but it is nigh invisible due to blending in with the background. I don't think there needs to be a mouse hover effect, for that matter. #7 - Would prefer Start to be the default action when selecting a non running application (maybe running too?), with other actions (ie the menu) being on some other key. - I don't think Cancel should be on the menus. The hotkey is enough. Preferrably with some additional logic for closing the menu using the mouse, such as clicking anywhere else. - Application status indicator needs to be more clear. Maybe something in the application title bar, or a big overlay on the button. - Would like to be able to automatically login using my profile. I know this has been discussed before: - Some hotkey for returning to Wolf UI. (rather than terminating the Moonlight stream) - Per profile keyboard layout setting to be used in all applications. (timezone, too, perhaps?)
Author
Owner

@Skerga commented on GitHub (Aug 10, 2025):

Thanks for the feedback, I'll make some changes in the coming days to address the points you've brought up.

<!-- gh-comment-id:3172627027 --> @Skerga commented on GitHub (Aug 10, 2025): Thanks for the feedback, I'll make some changes in the coming days to address the points you've brought up.
Author
Owner

@Skerga commented on GitHub (Aug 16, 2025):

  • When returning to the profile selection screen, the Back action is removed from the legend.

That is correct it brings you back to the User/Profile selection, since it is not set on the User page its removed from the legend. would you like to have it also as an exit button in the User/Profile selection?

  • The exit and logout buttons at the top seem a little unclear. While you can probably figure out what they do, I prefer icon + text unless there's a good reason to do otherwise. I would also prefer that they be placed next to each other.
  • The exit and logout action should probably be accessible via some hotkey rather than requiring navigating to the buttons. Maybe a system menu similar to Steam big picture.

The Back button should already bring you back to the User/Profile selection.
I'm currently also working on a Settings tab that will most likely be accessed via a menu similar to Steams so when that is completed i will move the Exit and logout there too.

  • I don't think Cancel should be on the menus. The hotkey is enough. Preferrably with some additional logic for closing the menu using the mouse, such as clicking anywhere else.

Clicking on other apps should close the first menu already. but i will add a close on click anywhere soon.

  • Menu sounds seems slightly delayed.

Delayed in the sense that it takes time before sound get played or in that its delayed when Pressing a button?
Currently i have no sounds hard coded to a button but instead the first frame all valid elements are scanned and sound are set based on action type, like focusing makes noise A, so it can happen that there is a delay in sounds playing. I had that while testing too and added some workarounds that should have fixed any startup delay.

If its delayed action sounds i am not sure how i would change that since i use the proper button.FocusEntered and button.Pressed events already.
maybe its the audio files, the current sound effects are just some cc0 sound clips i had at hand in the moment and i haven't had the time to find new ones.

<!-- gh-comment-id:3193931926 --> @Skerga commented on GitHub (Aug 16, 2025): > - When returning to the profile selection screen, the Back action is removed from the legend. That is correct it brings you back to the User/Profile selection, since it is not set on the User page its removed from the legend. would you like to have it also as an exit button in the User/Profile selection? > - The exit and logout buttons at the top seem a little unclear. While you can probably figure out what they do, I prefer icon + text unless there's a good reason to do otherwise. I would also prefer that they be placed next to each other. > - The exit and logout action should probably be accessible via some hotkey rather than requiring navigating to the buttons. Maybe a system menu similar to Steam big picture. The Back button should already bring you back to the User/Profile selection. I'm currently also working on a Settings tab that will most likely be accessed via a menu similar to Steams so when that is completed i will move the Exit and logout there too. > - I don't think Cancel should be on the menus. The hotkey is enough. Preferrably with some additional logic for closing the menu using the mouse, such as clicking anywhere else. Clicking on other apps should close the first menu already. but i will add a close on click anywhere soon. > - Menu sounds seems slightly delayed. Delayed in the sense that it takes time before sound get played or in that its delayed when Pressing a button? Currently i have no sounds hard coded to a button but instead the first frame all valid elements are scanned and sound are set based on action type, like focusing makes noise A, so it can happen that there is a delay in sounds playing. I had that while testing too and added some workarounds that should have fixed any startup delay. If its delayed action sounds i am not sure how i would change that since i use the proper `button.FocusEntered` and `button.Pressed` events already. maybe its the audio files, the current sound effects are just some cc0 sound clips i had at hand in the moment and i haven't had the time to find new ones.
Author
Owner

@Lombra commented on GitHub (Aug 22, 2025):

  • When returning to the profile selection screen, the Back action is removed from the legend.

That is correct it brings you back to the User/Profile selection, since it is not set on the User page its removed from the legend. would you like to have it also as an exit button in the User/Profile selection?

Sorry. What I meant was that Back was visible on the profile selection screen when first starting the application, but not if later returning to the same screen. This is no longer relevant, however, since you removed that item from that screen altogether.

  • The exit and logout buttons at the top seem a little unclear. While you can probably figure out what they do, I prefer icon + text unless there's a good reason to do otherwise. I would also prefer that they be placed next to each other.
  • The exit and logout action should probably be accessible via some hotkey rather than requiring navigating to the buttons. Maybe a system menu similar to Steam big picture.

The Back button should already bring you back to the User/Profile selection. I'm currently also working on a Settings tab that will most likely be accessed via a menu similar to Steams so when that is completed i will move the Exit and logout there too.

Sounds good!

  • Menu sounds seems slightly delayed.

Delayed in the sense that it takes time before sound get played or in that its delayed when Pressing a button?

A noticable delay between pressing a button and me hearing the corresponding sound. For example, scrolling between applications using the D-pad, the selection highlight behaves as expected, but the sounds only plays what feels like some 0.3 seconds later. Could be the sound effect itself, indeed. I can't tell if the same is true with the chime, because it's not as "sharp".

Coming back to mouse selection highlight. I now find it a little confusing when the highlight stays on the last entry I clicked while I hover over other entries. Maybe deselect if mouse movement is detected, or use the same logic and visual as gamepad?

Similar issue with the dropdown menu; mouse hover highlight is barely visible.

Something new I found; I just downloaded the XFCE app. After downloading it, (only) the Start action was disabled. (gray) Once I returned to the profile screen and then back in, I was able to start it.

<!-- gh-comment-id:3215248608 --> @Lombra commented on GitHub (Aug 22, 2025): > > * When returning to the profile selection screen, the Back action is removed from the legend. > > That is correct it brings you back to the User/Profile selection, since it is not set on the User page its removed from the legend. would you like to have it also as an exit button in the User/Profile selection? Sorry. What I meant was that Back was visible on the profile selection screen when first starting the application, but not if later returning to the same screen. This is no longer relevant, however, since you removed that item from that screen altogether. > > * The exit and logout buttons at the top seem a little unclear. While you can probably figure out what they do, I prefer icon + text unless there's a good reason to do otherwise. I would also prefer that they be placed next to each other. > > * The exit and logout action should probably be accessible via some hotkey rather than requiring navigating to the buttons. Maybe a system menu similar to Steam big picture. > > The Back button should already bring you back to the User/Profile selection. I'm currently also working on a Settings tab that will most likely be accessed via a menu similar to Steams so when that is completed i will move the Exit and logout there too. Sounds good! > > * Menu sounds seems slightly delayed. > > Delayed in the sense that it takes time before sound get played or in that its delayed when Pressing a button? A noticable delay between pressing a button and me hearing the corresponding sound. For example, scrolling between applications using the D-pad, the selection highlight behaves as expected, but the sounds only plays what feels like some 0.3 seconds later. Could be the sound effect itself, indeed. I can't tell if the same is true with the chime, because it's not as "sharp". Coming back to mouse selection highlight. I now find it a little confusing when the highlight stays on the last entry I clicked while I hover over other entries. Maybe deselect if mouse movement is detected, or use the same logic and visual as gamepad? Similar issue with the dropdown menu; mouse hover highlight is barely visible. Something new I found; I just downloaded the XFCE app. After downloading it, (only) the Start action was disabled. (gray) Once I returned to the profile screen and then back in, I was able to start it.
Author
Owner

@Skerga commented on GitHub (Aug 22, 2025):

Coming back to mouse selection highlight. I now find it a little confusing when the highlight stays on the last entry I clicked while I hover over other entries. Maybe deselect if mouse movement is detected, or use the same logic and visual as gamepad?

the problem with selecting nothing is that something needs focus or controller inputs will not work out of the box, the only fix for that would be to add fail saves to the default ui behavior that selects a default element when controller input is detected.

I will make some more changes in the coming days, I was sick the last 2 weeks but I should have some free time this WE.

<!-- gh-comment-id:3215284198 --> @Skerga commented on GitHub (Aug 22, 2025): > Coming back to mouse selection highlight. I now find it a little confusing when the highlight stays on the last entry I clicked while I hover over other entries. Maybe deselect if mouse movement is detected, or use the same logic and visual as gamepad? the problem with selecting nothing is that something needs focus or controller inputs will not work out of the box, the only fix for that would be to add fail saves to the default ui behavior that selects a default element when controller input is detected. I will make some more changes in the coming days, I was sick the last 2 weeks but I should have some free time this WE.
Author
Owner

@Lombra commented on GitHub (Aug 26, 2025):

Hope you're feeling better!

the problem with selecting nothing is that something needs focus or controller inputs will not work out of the box, the only fix for that would be to add fail saves to the default ui behavior that selects a default element when controller input is detected.

Would it be possible to have the mouse "select" the items as it hovers over them, perhaps?

I just tried connecting from a new client while being connected on another. (I don't know whether that was relevant) No profiles were listed on the profile selection screen. I noticed this in the log:

ERROR | [API] Error reading request: End of file

But then after restarting the stream it worked fine, so I don't know.

<!-- gh-comment-id:3225025978 --> @Lombra commented on GitHub (Aug 26, 2025): Hope you're feeling better! > the problem with selecting nothing is that something needs focus or controller inputs will not work out of the box, the only fix for that would be to add fail saves to the default ui behavior that selects a default element when controller input is detected. Would it be possible to have the mouse "select" the items as it hovers over them, perhaps? I just tried connecting from a new client while being connected on another. (I don't know whether that was relevant) No profiles were listed on the profile selection screen. I noticed this in the log: ``` ERROR | [API] Error reading request: End of file ``` But then after restarting the stream it worked fine, so I don't know.
Author
Owner

@Maxwellfire commented on GitHub (Sep 20, 2025):

When I first install a container from the UI, the Play button is subsequently grayed out until I restart the wolf-ui container. The lobby button works fine.

<!-- gh-comment-id:3315170046 --> @Maxwellfire commented on GitHub (Sep 20, 2025): When I first install a container from the UI, the Play button is subsequently grayed out until I restart the wolf-ui container. The lobby button works fine.
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
games-on-whales/wolf-ui#1
No description provided.