Steam Deck

Steam Deck

Steam Deck Pacman installations
Hello there,
I just got my Deck two days ago and I am super hyped about it.

I have planned to also install the PSX2 playstation emulator on the deck. There I ran into some issues with the installation of packages with pacman. I am pretty new to Arch Linux, so maybe its just a noob problem but hopefully you can help me.

I am trying to install the PSX2 like its mentioned in the github page: https://github.com/PCSX2/pcsx2/wiki/Installing-on-Linux#arch-linux

Under Arch Linux they say use
sudo pacman -S pcsx2
The first time I had some issues with the pacman-keyring, but those problems are already fixed.

So when I use
sudo pacman -S pcsx2
it seems to work. It downloads the packages and start the Installation.
(deck@steamdeck ~)$ sudo pacman -S pcsx2 [sudo] password for deck: resolving dependencies... looking for conflicting packages... Packages (6) fmt-8.1.1-1 rapidyaml-0.3.0-2 soundtouch-2.3.1-1 wxgtk-common-3.0.5.1-3 wxgtk3-3.0.5.1-3 pcsx2-1.7.2277-1 Total Download Size: 13.79 MiB Total Installed Size: 48.02 MiB :: Proceed with installation? [Y/n] y :: Retrieving packages... rapidyaml-0.3.0-2-x86_64 214.6 KiB 118 KiB/s 00:02 [#############################################################################] 100% wxgtk-common-3.0.5.1-3-x86_64 2.3 MiB 1207 KiB/s 00:02 [#############################################################################] 100% fmt-8.1.1-1-x86_64 442.2 KiB 222 KiB/s 00:02 [#############################################################################] 100% wxgtk3-3.0.5.1-3-x86_64 4.1 MiB 1811 KiB/s 00:02 [#############################################################################] 100% pcsx2-1.7.2277-1-x86_64 6.7 MiB 2.43 MiB/s 00:03 [#############################################################################] 100% soundtouch-2.3.1-1-x86_64 66.6 KiB 54.5 KiB/s 00:01 [#############################################################################] 100% Total (6/6) 13.8 MiB 3.16 MiB/s 00:04 [#############################################################################] 100% (6/6) checking keys in keyring [#############################################################################] 100% (6/6) checking package integrity [#############################################################################] 100% (6/6) loading package files [#############################################################################] 100% (6/6) checking for file conflicts [#############################################################################] 100% (6/6) checking available disk space [#############################################################################] 100% :: Processing package changes... (1/6) installing fmt [#############################################################################] 100%

But then I get a bunch of errors all about /usr/share:
warning: warning given when extracting /usr/include/ (Can't create '/usr/include') warning: warning given when extracting /usr/include/fmt/ (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/args.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/chrono.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/color.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/compile.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/core.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/format-inl.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/format.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/locale.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/os.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/ostream.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/printf.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/ranges.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/include/fmt/xchar.h (Failed to create dir '/usr/include') warning: warning given when extracting /usr/lib/cmake/fmt/ (Can't create '/usr/lib/cmake/fmt') warning: warning given when extracting /usr/lib/cmake/fmt/fmt-config-version.cmake (Failed to create dir '/usr/lib/cmake/fmt') warning: warning given when extracting /usr/lib/cmake/fmt/fmt-config.cmake (Failed to create dir '/usr/lib/cmake/fmt') warning: warning given when extracting /usr/lib/cmake/fmt/fmt-targets-none.cmake (Failed to create dir '/usr/lib/cmake/fmt') warning: warning given when extracting /usr/lib/cmake/fmt/fmt-targets.cmake (Failed to create dir '/usr/lib/cmake/fmt') warning: warning given when extracting /usr/lib/libfmt.so (Can't create '/usr/lib/libfmt.so') warning: warning given when extracting /usr/lib/libfmt.so.8 (Can't create '/usr/lib/libfmt.so.8') warning: warning given when extracting /usr/lib/libfmt.so.8.1.1 (Can't create '/usr/lib/libfmt.so.8.1.1') warning: warning given when extracting /usr/lib/pkgconfig/fmt.pc (Can't create '/usr/lib/pkgconfig/fmt.pc') warning: warning given when extracting /usr/share/doc/ (Can't create '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/ (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/.buildinfo (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_sources/ (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_sources/api.rst.txt (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_sources/contents.rst.txt (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_sources/index.rst.txt (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_sources/syntax.rst.txt (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_sources/usage.rst.txt (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/ (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/basic.css (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/bootstrap.min.js (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/breathe.css (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/doctools.js (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/documentation_options.js (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/file.png (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/fmt.css (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/fonts/ (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/fonts/glyphicons-halflings-regular.eot (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/fonts/glyphicons-halflings-regular.svg (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/fonts/glyphicons-halflings-regular.ttf (Failed to create dir '/usr/share/doc') warning: warning given when extracting /usr/share/doc/fmt/_static/fonts/glyphicons-halflings-regular.woff (Failed to create dir '/usr/share/doc')
I have shortened the errors but they are all about that its not possible to create a dir in /urs/share.
I have tryed it with sudo and also as root. But neither way worked out.

Do you have any idea about why thats behaviour or maybe how to fix it?

Thanks in advance!
< >
Showing 1-15 of 35 comments
Prezidentas Mar 20, 2022 @ 3:47am 
Steam deck operating system is read-only. You won't be able to install any pacman packages with read-only mode enabled.
If you aren't Linux savvy I'd recommend sticking to the KDE Discover appstore, it uses flatpacks which are installed in a separate folder without trying to change system files/directories. PCSX2 is there and it gets updated with the dev build once every week.
@R+5 Mar 20, 2022 @ 5:29am 
Originally posted by Red Star Gopnik:
If you aren't Linux savvy I'd recommend sticking to the KDE Discover appstore, it uses flatpacks

imo, its bad advice to suggest using flatpack in arch based os like manjaro or steam os: it consumes additional space you dont want to waste, and usually its considered a last resource if you were unable to install or use a program through other methods, including AppImage, which is safer and more reliable and versatile (you can place the file-program in a different disk, saving space and avoiding issueas related to missing dependencies).

btw, maybe op can try luck with this version of the program
https://github.com/ferion11/PCSX2_Appimage

https://www.youtube.com/watch?v=bXZma0t0PKE
Last edited by @R+5; Mar 20, 2022 @ 5:39am
I think the steamdeck is too locked down.
If you want something which is not on steam, flathub is your only option.

Or simply said. You can only get apps from the discover app store
BezaoBuilder Mar 20, 2022 @ 7:47am 
The Steamdeck runs on a read-only filesystem, similar to Fedora Silverblue or Kinoite.
As others said, your best option are flatpaks or trying to find a way to install it to a directory that is writeable.
If the application you wish is not avaliable on Flathub, try using toolbx[containertoolbx.org] or distrobox[distrobox.privatedns.org].
If the Steam OS uses ostree, you can try to do something with the ostree command and pacman's -r switch, which should let you install it into a writeable directory, see https://ostreedev.github.io/ostree/introduction/
OSTree is a complicated piece of software, so I'd recommend understanding it all before running any commands. I'd also use it only as a last resort since it requires you to reboot your computer every time you install something.
You could also just run "pacman blahblahblah -r ~/folder_you_created", find the executable created and hope that the Steam deck has all the dependencies installed. This is very likely not to work.
BezaoBuilder Mar 20, 2022 @ 7:51am 
Fedora has some documentation on toolbx: https://docs.fedoraproject.org/en-US/fedora-silverblue/toolbox/
BezaoBuilder Mar 20, 2022 @ 7:58am 
Also, you need podman or docker installed for distrobox to work, so you may end up having to learn how to write to the filesystem after all. I'd recommend trying to install distrobox because it is avaliable on the AUR repository.
Prezidentas Mar 20, 2022 @ 8:17am 
Originally posted by @R+5:
Originally posted by Red Star Gopnik:
If you aren't Linux savvy I'd recommend sticking to the KDE Discover appstore, it uses flatpacks

imo, its bad advice to suggest using flatpack in arch based os like manjaro or steam os: it consumes additional space you dont want to waste, and usually its considered a last resource if you were unable to install or use a program through other methods, including AppImage, which is safer and more reliable and versatile (you can place the file-program in a different disk, saving space and avoiding issueas related to missing dependencies).

btw, maybe op can try luck with this version of the program
https://github.com/ferion11/PCSX2_Appimage

https://www.youtube.com/watch?v=bXZma0t0PKE
It's nice when a new SteamOS image update doesn't wipe your entire installed programs library.
Appimages should work but flatpaks are the official way to get software on the Deck, so it should be supported pretty well.
retrogunner Mar 20, 2022 @ 9:51am 
I think the Phawx has you covered here:
https://www.youtube.com/watch?v=pnCObNCg0Ic

And if you have a PS4/5 and want to stream gameplay, Bryant has you covered:
https://youtu.be/D_HXLn0DmYw
Last edited by retrogunner; Mar 20, 2022 @ 9:53am
BezaoBuilder Mar 20, 2022 @ 9:58am 
According to this video: https://youtu.be/gwUf8pwoA5U it uses a technology different that ostree or whoever he was talking to was simplifying it down (OSTree just never lets you mount the filesystem as read-write and uses only one partition, allowing /home, /etc and /var to be writeable via Linux bind-mounts).
It will have /sysroot and /ostree directories on the root filesystem if it uses OSTree.
Also according to the video, there should be some sort of "developer mode" option that enables a read-write tree.
BezaoBuilder Mar 20, 2022 @ 10:23am 
Do Steam Deck updates come via Discover? If so, can you go to its about page and find any link to its source code? Or maybe find something in system settings that links you to the source code of Discover?
Discover currently only has support for Flatpaks, firmware updates, PackageKit, snaps and rpm-ostree. Since SteamOS does not use rpm-ostree, if you can get system updates via Discover, they must give you the source code on how they did it. Maybe this will help understand how its immutable filesystem works (that is, if it is not OSTree).
Prezidentas Mar 20, 2022 @ 10:26am 
Originally posted by BezaoBuilder:
Do Steam Deck updates come via Discover? If so, can you go to its about page and find any link to its source code? Or maybe find something in system settings that links you to the source code of Discover?
Discover currently only has support for Flatpaks, firmware updates, PackageKit, snaps and rpm-ostree. Since SteamOS does not use rpm-ostree, if you can get system updates via Discover, they must give you the source code on how they did it. Maybe this will help understand how its immutable filesystem works (that is, if it is not OSTree).
Steam deck software images come from steam updater itself
BezaoBuilder Mar 20, 2022 @ 10:55am 
Originally posted by Red Star Gopnik:
Originally posted by BezaoBuilder:
Do Steam Deck updates come via Discover? If so, can you go to its about page and find any link to its source code? Or maybe find something in system settings that links you to the source code of Discover?
Discover currently only has support for Flatpaks, firmware updates, PackageKit, snaps and rpm-ostree. Since SteamOS does not use rpm-ostree, if you can get system updates via Discover, they must give you the source code on how they did it. Maybe this will help understand how its immutable filesystem works (that is, if it is not OSTree).
Steam deck software images come from steam updater itself
Right, is there a /sysroot or /ostree folder on the root filesystem?
Prezidentas Mar 20, 2022 @ 3:33pm 
Originally posted by BezaoBuilder:
Originally posted by Red Star Gopnik:
Steam deck software images come from steam updater itself
Right, is there a /sysroot or /ostree folder on the root filesystem?
No. fstab shows separate partitions for /var and /home though.
Also the "System" settings section calls the OS Version as "snapshot" and shows the date of the "OS Build" - changing to a beta branch pushes the date forward. Too bad the beta branch doesn't have a unique changelog...
MJ711 Mar 21, 2022 @ 4:27am 
There is only one proper solution:
Use flatpack.
It does not matter what other people say. It is the only one.

You could risk unlocking the OS and installing anything in any way you want but you will risk losing all of that in an OS update.
BezaoBuilder Mar 21, 2022 @ 3:50pm 
Wait, Valve has already published an official method on how to do it:
https://help.steampowered.com/en/faqs/view/671A-4453-E8D2-323C

They say that pacman's packages 'may' be wiped when the OS upgrades. That is not very specific.
< >
Showing 1-15 of 35 comments
Per page: 1530 50

Date Posted: Mar 20, 2022 @ 3:39am
Posts: 35