Skip to content

Instantly share code, notes, and snippets.

@akdev1l
Last active October 28, 2022 23:51
Show Gist options
  • Save akdev1l/9f93956a101157ff5251fbcd073d18cf to your computer and use it in GitHub Desktop.
Save akdev1l/9f93956a101157ff5251fbcd073d18cf to your computer and use it in GitHub Desktop.

Revisions

  1. akdev1l revised this gist Oct 28, 2022. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion fedora-on-deck.md
    Original file line number Diff line number Diff line change
    @@ -10,7 +10,7 @@ is patches so as long as we have a new enough kernel we should be fine)
    2. Install steam from RPMFusion (flatpak steam has some problems integrating with the host system)
    3. Install mangoapp - https://github.com/akdev1l/mangohud
    4. Install gamescope-session following the manual setup process described here: https://github.com/Samsagax/gamescope-session
    a. **NOTE**: You don't need to display your display manager as it is shown in this guide unless you want to boot straight into Steam GamePadUI
    1. **NOTE**: You don't need to disable your display manager as it is shown in this guide unless you want to boot straight into Steam GamePadUI

    If you choose to stick with Gnome/KDE for a more traditional Linux experience it is recommend to create
    a `.desktop` file to allow quick access to Steam GamePadUI. We can do it by putting this file in `~/.local/share/applications/gamepadui.desktop`
  2. akdev1l revised this gist Oct 28, 2022. 1 changed file with 9 additions and 1 deletion.
    10 changes: 9 additions & 1 deletion fedora-on-deck.md
    Original file line number Diff line number Diff line change
    @@ -82,4 +82,12 @@ Here are the controls on Fedora as I have found them:
    4. `A` works as `Enter`
    5. Right and left triggers work as right and left click respectively

    I have not found a way of adjusting these.
    I have not found a way of adjusting the keymappings.

    #### Workaround

    You can work around this issue if it relly bothers you by simply having steam autostart - either regular steam autostart or
    you can add an autostart entry with `steam -silent` which will start steam in the same mode of operation that is in when on
    Desktop Mode on Steam OS.

    // TODO: describe what to do here...
  3. akdev1l created this gist Oct 28, 2022.
    85 changes: 85 additions & 0 deletions fedora-on-deck.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,85 @@
    # Fedora on Steam Deck

    1. Current process
    1. Known Issues

    ## Current process

    1. Install Fedora from a USB drive to the Steam Deck (it does not seem like the kernel in SteamOS
    is patches so as long as we have a new enough kernel we should be fine)
    2. Install steam from RPMFusion (flatpak steam has some problems integrating with the host system)
    3. Install mangoapp - https://github.com/akdev1l/mangohud
    4. Install gamescope-session following the manual setup process described here: https://github.com/Samsagax/gamescope-session
    a. **NOTE**: You don't need to display your display manager as it is shown in this guide unless you want to boot straight into Steam GamePadUI

    If you choose to stick with Gnome/KDE for a more traditional Linux experience it is recommend to create
    a `.desktop` file to allow quick access to Steam GamePadUI. We can do it by putting this file in `~/.local/share/applications/gamepadui.desktop`

    ```
    [Desktop Entry]
    Name=GamePadUI
    Comment=GamePadUI Steam Session for Steam Deck
    Exec=/usr/local/bin/gamescope-session
    Icon=steam
    Terminal=false
    Type=Application
    Categories=Game;
    PrefersNonDefaultGPU=true
    X-KDE-RunOnDiscreteGpu=true
    ```

    It will create a new entry in the application launcher named "GamePadUI" that will invoke the GamePadUI in full screen mode.
    (I've only tested this in gnome X11, I would expect it works on KDE as well - wayland seemed to not work)

    # Known Issues:

    ### Can't escape from GamePadUI back into Gnome

    From what I gather steam is changing the input mode of the steam deck into joystick mode and after that moment all the input
    is actually processed by steam directly. This means that we lose any control of outer environment as the inputs are just
    confined to steam and if we try to use the touchpad I observe that there is a duplicate mouse within steam that is also
    similarly constrained.

    #### Workaround:

    We can workaround this issue by just having a quick script that kills the steam session, that takes us back to our DE

    1. Create a desktop entry in `~/.local/share/applications/exit-steam.desktop`

    ```
    [Desktop Entry]
    Name=Exit Steam
    Comment=Back to desktop
    Exec=/usr/bin/pkill gamescope
    Terminal=false
    Type=Application
    ```
    2. Use steam to add the application "Exit Steam" as a non-steam game

    Whenever you want to go back to your DE you just need to go to non-steam games and select "Exit Steam"

    ### Sound not working

    Sound is not working - Fedora recognizes some audio device is present but I don't think the device configuration is correct.
    The sound device appears as AMD Renovoir2 Audio Pro with duplicate entries and no outputs. It is unclear where the problem
    is at this time.

    ### SteamDeck Controller Inputs Are Different When Steam is Open

    It turns out steam does a lot of processing for the controller inputs - I think Valve did this to piggyback of the steam input
    infrastructure as they needed to get that working anyway for games to work on SteamDeck. This is why on Steam OS if Steam crashes
    on desktop mode then the device will turn unresponsive. I theorize that Steam is simulating the input on behalf of the device
    rather than the OS processing it directly.

    In Fedora the situation is bit brighter - if Steam is not running then it seems libinput is taking over and there are correctly
    mapped actions for basic usage (as long as you don't mind the on-screen keyboard without dual-handed input).

    Here are the controls on Fedora as I have found them:

    1. Right touchpad works as touchpad - yay (left touchpad does not do anything, clicking does not do anything on either)
    2. D-Pad works as arrow keys
    3. `B` works as `Esc`
    4. `A` works as `Enter`
    5. Right and left triggers work as right and left click respectively

    I have not found a way of adjusting these.