Package Details: duckstation-git 0.1.r11596.gad7519d72-1

Git Clone URL: https://aur.archlinux.org/duckstation-git.git (read-only, click to copy)
Package Base: duckstation-git
Description: A Sony PlayStation (PSX) emulator, focusing on playability, speed, and long-term maintainability (git version)
Upstream URL: https://github.com/stenzek/duckstation
Keywords: emulator game gaming psone psx
Licenses: cc-by-nc-nd-4.0
Conflicts: duckstation
Provides: duckstation
Submitter: jackdroido
Maintainer: heavysink (eugene)
Last Packager: heavysink
Votes: 28
Popularity: 0.001146
First Submitted: 2020-04-25 18:24 (UTC)
Last Updated: 2026-07-13 00:21 (UTC)

Dependencies (50)

Required by (0)

Sources (9)

Pinned Comments

heavysink commented on 2026-07-13 19:21 (UTC) (edited on 2026-07-14 04:22 (UTC) by heavysink)

Important notice

This is an unofficial, community-maintained build recipe intended for private, noncommercial local use. It downloads the upstream DuckStation source and applies Arch-specific changes, including changes needed to build with system libraries.

Do not redistribute modified source code, packages or binaries produced by this recipe. This will violate CC-BY-NC-ND 4.0 license. The resulting build is modified and is not an official DuckStation release.

This package is not supported by the upstream DuckStation developer. Please report Arch-specific build failures, crashes, or behavior differences here rather than to upstream.

Before reporting an apparent emulator bug upstream, reproduce it using an official DuckStation build, such as the official AppImage or Windows release. When reporting it, describe only the behavior observed in that official build.

The upstream developer has no obligation and should not be expected to support this recipe or the environment it creates. Please keep all interactions respectful. Likewise, discussion here should remain technical and should not become personal.

===

The additional packaging restriction in DuckStation’s CMake files should be acknowledged, but I do not think its legal scope has been conclusively established.

Standard CC BY-NC-ND 4.0 permits private, noncommercial adaptations while prohibiting distribution of the adapted material. An independently written PKGBUILD that provides instructions for a local build may also be legally different from distributing modified DuckStation source or binaries.

At the same time, the current CMake files expressly purport to impose an additional packaging restriction, so it would be too categorical to call that restriction either unquestionably enforceable or unquestionably unenforceable. Its effect would depend on the applicable law, the contents of the build recipe and patches, and whether the additional wording constitutes a valid licence or contractual condition.

For practical purposes, this AUR recipe should remain unofficial, its resulting packages should not be redistributed, and Arch-specific problems should not be reported to upstream.

eugene commented on 2025-09-03 18:12 (UTC)

The 'versions' file now includes a curious disclaimer that specifically forbids any packaging scripts from using it.

PN123 commented on 2025-09-03 17:44 (UTC)

Stumbled upon a problem in prepare() while trying to update:

The build fails at this grep. It doesn't find anything because the version strings have been moved to a different file.

dep_ver=$(grep -Po "(?<=^$dep_var=).+" "$deps_script" )

They are now listed here: $srcdir/duckstation/scripts/deps/versions

Latest Comments

« First ‹ Previous 1 .. 9 10 11 12 13 14 15 16 17 18 Next › Last »

loathingkernel commented on 2023-03-28 00:09 (UTC) (edited on 2023-03-28 11:33 (UTC) by loathingkernel)

Hi, I took the liberty of cleaning up the PKGBUILD. You can find it here https://github.com/loathingKernel/PKGBUILDs/tree/master/aur/duckstation-git .

Some notes about the changes.

  • gtk3 seems to be completely unused and it was removed.
  • libpulse, sndio and libdrm added to optdepends too.
  • added libglvnd, libxrandr, libx11 and wayland as explicit dependecies because namcap or building in a clean CHROOT were complaining
  • added hicolor-icon-theme because the icon was moved into the hicolor theme directory structure. That way other themes can override it.
  • added qt6-wayland as makedepend and optdepend, it is needed to run Qt6 applications under a wayland session
  • added jack2 in makedepends and optdepends. It builds with it in a clean CHROOT. You might want to remove it though as the jack2 package conflicts with pipewire-jack if the latter is installed and the user is not building in a clean CHROOT. Otherwise it operates just fine.

  • added duckstation-qt.desktop, it is just cleaner to distribute it as a file with the package instead of a here-script

  • added duckstation-qt.sh to be installed in /usr/bin/ instead of symlinking the executable.

  • I changed the cmake options to more closely follow upstream's AppImage. Namely, duckstation is built with clang/llvm and with CMAKE_INTERPROCEDURAL_OPTIMIZATION (effectively LTO) enabled.

  • Upstream is explicit about the options in their CMake invocation so adjusted to that.
  • USE_DRMKMS was turned on and the relevant dependency added to make/optdepends

visious commented on 2023-01-24 19:07 (UTC) (edited on 2023-01-24 19:41 (UTC) by visious)

Hi all, in case duckstation is unable to run a game, try in terminal the bellow command:

USE_GLX=1 duckstation-qt

OR

Edite the Menu Enty: Menu > Games > DuckStation

env USE_GLX=1 duckstation-qt %f

visious commented on 2022-12-30 02:41 (UTC) (edited on 2022-12-30 02:51 (UTC) by visious)

Hi all. While I'm typing in the terminal "sudo journalctl -p 3 -xb" I'm getting this: https://pastebin.com/WkrN36PA When I'm trying to run a game, Duckstation is not working anymore.

Neko-san commented on 2022-10-03 19:26 (UTC)

The patch is no longer needed; upstream chamged that line to something slightly different to resolve the issue despite not having the issues page publicly available; compiles fine now

Neko-san commented on 2022-10-03 19:15 (UTC)

@Episilon I'll check it in a minute and post a fix

Neko-san commented on 2022-10-01 22:45 (UTC)

With that said, it would be great if you add this patch to the package so it doesn't have to be done manually every time

Upstream isn't exactly welcoming to pull requests for fixing issues

Neko-san commented on 2022-09-29 07:05 (UTC) (edited on 2022-09-29 08:57 (UTC) by Neko-san)

@eugene That solution's completely unnecessary; the correct solution is simple:

--- a/src/frontend-common/fullscreen_ui.cpp 2022-09-29 00:28:13.283487127 -0500
+++ b/src/frontend-common/fullscreen_ui.cpp 2022-09-29 00:24:25.579484802 -0500
@@ -1154,7 +1154,7 @@
     ImGui::SetCursorPos(ImVec2(ImGui::GetWindowWidth() - rev_size.x - LayoutScale(20.0f),
                                ImGui::GetWindowHeight() - rev_size.y - LayoutScale(20.0f)));
     ImGui::PushFont(g_medium_font);
-    ImGui::Text(g_scm_tag_str);
+    ImGui::Text("%s", g_scm_tag_str);
     ImGui::PopFont();
   }


italoghost commented on 2022-09-18 16:20 (UTC)

Thanks, @eugene! I was clueless on how to debug the error. The output on the terminal is not the most readable, but copying and pasting it on a text editor made me see that it was pointing to the exactly line that you undone with the prepare().

Do you think we should report it to the dev?