Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pcsx2: inputprofiles not persisted, even though it is exact equivalent of duckstation's inputprofiles which is persisted #1233

Open
3 tasks done
dundarious opened this issue Sep 24, 2024 · 0 comments · May be fixed by #1234
Labels
bug Something isn't working

Comments

@dundarious
Copy link

dundarious commented Sep 24, 2024

Prerequisites

  • I have written a descriptive issue title.
  • I have searched all issues/PRs to ensure it has not already been reported or fixed.
  • I have verified that I am using the latest version of Scoop and corresponding bucket.

Package Name

pcsx2-dev

Expected/Current Behaviour

apps/current/pcsx2-dev/inputprofiles is not persisted across updates, or uninstall and re-install cycle. This causes custom controller mappings to be lost, as their .ini files are contained therein.

Steps to Reproduce

PS❯ scoop install pcsx2-dev
Installing 'pcsx2-dev' (2.1.168) [64bit] from 'games' bucket
Loading pcsx2-v2.1.168-windows-x64-Qt.7z from cache
Checking hash of pcsx2-v2.1.168-windows-x64-Qt.7z ... ok.
Extracting pcsx2-v2.1.168-windows-x64-Qt.7z ... done.
Running pre_install script...done.
Linking ~\scoop\apps\pcsx2-dev\current => ~\scoop\apps\pcsx2-dev\2.1.168
Creating shim for 'pcsx2-dev'.
Making C:\Users\xxx\scoop\shims\pcsx2-dev.exe a GUI binary.
Creating shortcut for PCSX2 (dev) (pcsx2-qt.exe)
Persisting bios
Persisting cheats_ws
Persisting cheats
Persisting covers
Persisting gamesettings
Persisting inis
Persisting logs
Persisting memcards
Persisting snaps
Persisting sstates
Persisting textures
Running post_install script...done.
'pcsx2-dev' (2.1.168) was installed successfully!
Notes
-----
ATTENTION: PCSX2 requires a dump of the PS2 BIOS to function.
Place the BIOS file in C:\Users\xxx\scoop\persist\pcsx2-dev\bios
Learn more at https://wiki.pcsx2.net/Setting_up_Windows_version#BIOS

PS❯ cd (scoop prefix pcsx2-dev)
PS❯ ls

    Directory: C:\Users\xxx\scoop\apps\pcsx2-dev\current

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
l-r--           9/24/2024    16:59                bios -> C:\Users\xxx\scoop\persist\pcsx2-dev\bios
d----           9/24/2024    17:12                cache
l-r--           9/24/2024    16:59                cheats -> C:\Users\xxx\scoop\persist\pcsx2-dev\cheats
l-r--           9/24/2024    16:59                cheats_ws -> C:\Users\xxx\scoop\persist\pcsx2-dev\cheats_ws
l-r--           9/24/2024    16:59                covers -> C:\Users\xxx\scoop\persist\pcsx2-dev\covers
d----           9/23/2024    17:14                docs
l-r--           9/24/2024    16:59                gamesettings ->
                                                  C:\Users\xxx\scoop\persist\pcsx2-dev\gamesettings
l-r--           9/24/2024    16:59                inis -> C:\Users\xxx\scoop\persist\pcsx2-dev\inis
l-r--           9/24/2024    16:59                logs -> C:\Users\xxx\scoop\persist\pcsx2-dev\logs
l-r--           9/24/2024    16:59                memcards -> C:\Users\xxx\scoop\persist\pcsx2-dev\memcards
d----           9/24/2024    17:12                patches
d----           9/23/2024    17:14                QtPlugins
d----           9/23/2024    17:14                resources
l-r--           9/24/2024    16:59                snaps -> C:\Users\xxx\scoop\persist\pcsx2-dev\snaps
l-r--           9/24/2024    16:59                sstates -> C:\Users\xxx\scoop\persist\pcsx2-dev\sstates
l-r--           9/24/2024    16:59                textures -> C:\Users\xxx\scoop\persist\pcsx2-dev\textures
d----           9/23/2024    17:14                translations
d----           9/24/2024    17:12                videos
-a---           9/23/2024    17:14         678400 freetype.dll
-a---           9/23/2024    17:14        1034752 harfbuzz.dll
...

Note that inputprofiles does not yet exist. However, when a user opens pcsx2-dev and creates a custom controller mapping like so:

  • Settings->Controllers
  • Controller Port 1
  • New Profile (bottom left), name it anything, "test"
  • Yes, No
  • Controller Port 1
  • Automatic Mapping (top right), choose anything, e.g., Keyboard.
  • OK
PS❯ cd (scoop prefix pcsx2-dev)
PS❯ ls

    Directory: C:\Users\xxx\scoop\apps\pcsx2-dev\current

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
l-r--           9/24/2024    16:59                bios -> C:\Users\xxx\scoop\persist\pcsx2-dev\bios
d----           9/24/2024    17:12                cache
l-r--           9/24/2024    16:59                cheats -> C:\Users\xxx\scoop\persist\pcsx2-dev\cheats
l-r--           9/24/2024    16:59                cheats_ws -> C:\Users\xxx\scoop\persist\pcsx2-dev\cheats_ws
l-r--           9/24/2024    16:59                covers -> C:\Users\xxx\scoop\persist\pcsx2-dev\covers
d----           9/23/2024    17:14                docs
l-r--           9/24/2024    16:59                gamesettings ->
                                                  C:\Users\xxx\scoop\persist\pcsx2-dev\gamesettings
l-r--           9/24/2024    16:59                inis -> C:\Users\xxx\scoop\persist\pcsx2-dev\inis
d----           9/24/2024    16:59                inputprofiles
l-r--           9/24/2024    16:59                logs -> C:\Users\xxx\scoop\persist\pcsx2-dev\logs
l-r--           9/24/2024    16:59                memcards -> C:\Users\xxx\scoop\persist\pcsx2-dev\memcards
d----           9/24/2024    17:12                patches
d----           9/23/2024    17:14                QtPlugins
d----           9/23/2024    17:14                resources
l-r--           9/24/2024    16:59                snaps -> C:\Users\xxx\scoop\persist\pcsx2-dev\snaps
l-r--           9/24/2024    16:59                sstates -> C:\Users\xxx\scoop\persist\pcsx2-dev\sstates
l-r--           9/24/2024    16:59                textures -> C:\Users\xxx\scoop\persist\pcsx2-dev\textures
d----           9/23/2024    17:14                translations
d----           9/24/2024    17:12                videos
-a---           9/23/2024    17:14         678400 freetype.dll
-a---           9/23/2024    17:14        1034752 harfbuzz.dll
...

Note that inputprofiles is just a directory, not a link/junction. It will contain test.ini if your profile was named "test". The next upgrade of pcsx2-dev will not have this test.ini, thereby losing user config.

However, for duckstation:

PS❯ cd (scoop prefix duckstation)
PS❯ ls

    Directory: C:\Users\xxx\scoop\apps\duckstation\current

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
l-r--           8/19/2024    08:52                bios -> C:\Users\xxx\scoop\persist\duckstation\bios
l-r--           8/19/2024    08:52                cache -> C:\Users\xxx\scoop\persist\duckstation\cache
l-r--           8/19/2024    08:52                cheats -> C:\Users\xxx\scoop\persist\duckstation\cheats
l-r--           8/19/2024    08:52                covers -> C:\Users\xxx\scoop\persist\duckstation\covers
l-r--           8/19/2024    08:52                dump -> C:\Users\xxx\scoop\persist\duckstation\dump
l-r--           8/19/2024    08:52                gamesettings ->
                                                  C:\Users\xxx\scoop\persist\duckstation\gamesettings
l-r--           8/19/2024    08:52                inputprofiles ->
                                                  C:\Users\xxx\scoop\persist\duckstation\inputprofiles
l-r--           8/19/2024    08:52                memcards -> C:\Users\xxx\scoop\persist\duckstation\memcards
d----           8/19/2024    00:19                QtPlugins
d----           8/19/2024    00:19                resources
l-r--           8/19/2024    08:52                savestates ->
                                                  C:\Users\xxx\scoop\persist\duckstation\savestates
l-r--           8/19/2024    08:52                screenshots ->
                                                  C:\Users\xxx\scoop\persist\duckstation\screenshots
l-r--           8/19/2024    08:52                shaders -> C:\Users\xxx\scoop\persist\duckstation\shaders
l-r--           8/19/2024    08:52                textures -> C:\Users\xxx\scoop\persist\duckstation\textures
d----           8/19/2024    00:19                translations
-a---            8/2/2024    07:25          37376 cpuinfo.dll
...

Possible Solution

Add "inputprofiles" to the "persist" list in pcsx2-dev.json.

Scoop and Buckets Version

PS❯ scoop --version
Current Scoop version:
859d1db5 (HEAD -> master, tag: v0.5.2, origin/master, origin/HEAD) chore(release): Bump to version 0.5.2 (#6080)

'main' bucket:
54e3992fc (HEAD -> master, origin/master, origin/HEAD) winget-ps: Update to version 1.9.2505

'extras' bucket:
5b00581e8 (HEAD -> master, origin/master, origin/HEAD) vtm: Update to version 0.9.99.15

'games' bucket:
50086f032 (HEAD -> master, origin/master, origin/HEAD) vita3k: Update to version 3650-3fb83f8

Scoop Config

PS❯ scoop config

aria2-warning-enabled last_update        scoop_repo                           scoop_branch
--------------------- -----------        ----------                           ------------
                False 9/24/2024 16:58:57 https://github.com/lukesampson/scoop master

PowerShell Version

PS❯ $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.4.5
PSEdition                      Core
GitCommitId                    7.4.5
OS                             Microsoft Windows 10.0.19045
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Additional Softwares

No response

@dundarious dundarious added the bug Something isn't working label Sep 24, 2024
@dundarious dundarious linked a pull request Sep 24, 2024 that will close this issue
1 task
@Calinou Calinou changed the title [Bug]: pcsx2 inputprofiles not persisted, even though it is exact equivalent of duckstation's inputprofiles which is persisted pcsx2: inputprofiles not persisted, even though it is exact equivalent of duckstation's inputprofiles which is persisted Oct 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant