Package Details: duckstation 0.1.7465-1

Git Clone URL: https://aur.archlinux.org/duckstation.git (read-only, click to copy)
Package Base: duckstation
Description: Playstation emulator
Upstream URL: https://github.com/stenzek/duckstation
Licenses: GPL-3.0-only
Submitter: tallero
Maintainer: xiota
Last Packager: xiota
Votes: 5
Popularity: 0.21
First Submitted: 2023-06-19 23:48 (UTC)
Last Updated: 2024-09-19 05:49 (UTC)

Pinned Comments

xiota commented on 2024-09-19 02:40 (UTC) (edited on 2024-09-19 21:10 (UTC) by xiota)

For now, this is pinned to the last GPL commit.

gromit commented on 2024-09-13 10:55 (UTC)

FYI that this project did an "interesting" license change https://www.reddit.com/r/linux/comments/1ffml57/playstation_1_emulator_duckstation_developer/

Latest Comments

xiota commented on 2024-09-19 02:40 (UTC) (edited on 2024-09-19 21:10 (UTC) by xiota)

For now, this is pinned to the last GPL commit.

sasha commented on 2024-09-17 17:40 (UTC) (edited on 2024-09-17 17:40 (UTC) by sasha)

maybe it would be helpful to have separate packages for the last GPL version and the proprietary one going forward. Idk it's just an idea. you could call it duckstation-free or something.

gromit commented on 2024-09-13 10:55 (UTC)

FYI that this project did an "interesting" license change https://www.reddit.com/r/linux/comments/1ffml57/playstation_1_emulator_duckstation_developer/

siyia commented on 2024-07-26 05:56 (UTC)

The best PlayStation 1 emulator by far!

sgt-hartman commented on 2024-03-18 13:58 (UTC)

Hi, wanted to take a look at duckstation but it does not compile (on my system at least), see logs below.

[...]
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/vulkan/include/vulkan/vk_mem_alloc.h: In member function ‘VkResult VmaBlockVector::CommitAllocationRequest(VmaAllocationRequest&, VmaDeviceMemoryBlock*, VkDeviceSize, VmaAllocationCreateFlags, void*, VmaSuballocationType, VmaAllocation_T**)’:
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/vulkan/include/vulkan/vk_mem_alloc.h:12863:18: warning: unused variable ‘res’ [-Wunused-variable]
12863 |         VkResult res = pBlock->WriteMagicValueAfterAllocation(m_hAllocator, (*pAllocation)->GetOffset(), allocRequest.size);
      |                  ^~~
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/vulkan/include/vulkan/vk_mem_alloc.h: In member function ‘VkResult VmaDefragmentationContext_T::DefragmentPassEnd(VmaDefragmentationPassMoveInfo&)’:
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/vulkan/include/vulkan/vk_mem_alloc.h:13363:18: warning: unused variable ‘res’ [-Wunused-variable]
13363 |         VkResult res = block.block->Map(allocator, block.data, VMA_NULL);
      |                  ^~~
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/vulkan/include/vulkan/vk_mem_alloc.h: In member function ‘VkResult VmaAllocator_T::AllocateVulkanMemory(const VkMemoryAllocateInfo*, VkDeviceMemory_T**)’:
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/vulkan/include/vulkan/vk_mem_alloc.h:15436:20: warning: unused variable ‘prevDeviceMemoryCount’ [-Wunused-variable]
15436 |     const uint64_t prevDeviceMemoryCount = deviceMemoryCountIncrement.Increment(&m_DeviceMemoryCount);
      |                    ^~~~~~~~~~~~~~~~~~~~~
[356/430] Building CXX object src/core/CMakeFiles/core.dir/cpu_recompiler_code_generator.cpp.o
FAILED: src/core/CMakeFiles/core.dir/cpu_recompiler_code_generator.cpp.o 
/usr/bin/c++ -DENABLE_CUBEB=1 -DENABLE_DISCORD_PRESENCE=1 -DENABLE_MMAP_FASTMEM=1 -DENABLE_NEWREC=1 -DENABLE_OPENGL=1 -DENABLE_RECOMPILER=1 -DENABLE_SDL2=1 -DENABLE_VULKAN=1 -DXBYAK_NO_EXCEPTION=1 -DXXH_STATIC_LINKING_ONLY -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/src/core/.. -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/src/common/.. -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/fmt/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/fast_float/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/src/util/.. -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/simpleini/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/imgui/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/vulkan/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/zlib/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/stb/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/xxhash/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/rapidjson/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/rcheevos/include -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/xbyak/xbyak -I/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/dep/discord-rpc/include -isystem /usr/include/SDL2 -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection         -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wp,-D_GLIBCXX_ASSERTIONS -g -ffile-prefix-map=/home/ben/.cache/yay/duckstation/src=/usr/src/debug/duckstation -flto=auto -Wall -Wno-switch -Wno-class-memaccess -Wno-invalid-offsetof -fno-exceptions -fno-rtti -DFMT_EXCEPTIONS=0 -O2 -g -DNDEBUG -std=gnu++20 -Winvalid-pch -include /home/ben/.cache/yay/duckstation/src/build/src/core/CMakeFiles/core.dir/cmake_pch.hxx -MD -MT src/core/CMakeFiles/core.dir/cpu_recompiler_code_generator.cpp.o -MF src/core/CMakeFiles/core.dir/cpu_recompiler_code_generator.cpp.o.d -o src/core/CMakeFiles/core.dir/cpu_recompiler_code_generator.cpp.o -c /home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/src/core/cpu_recompiler_code_generator.cpp
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/src/core/cpu_recompiler_code_generator.cpp: In member function ‘bool CPU::Recompiler::CodeGenerator::Compile_Bitwise(CPU::Instruction, const CPU::CodeCache::InstructionInfo&)’:
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/src/core/cpu_recompiler_code_generator.cpp:1330:81: error: operands to ‘?:’ have different types ‘BitField<unsigned int, CPU::Reg, 16, 5>’ and ‘BitField<unsigned int, CPU::Reg, 21, 5>’
 1330 |                                PGXP::PackMoveArgs(dest, lhs.HasConstantValue(0) ? instruction.r.rt : instruction.r.rs)),
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ben/.cache/yay/duckstation/src/duckstation-0.1-6232/src/core/cpu_recompiler_code_generator.cpp:1362:81: error: operands to ‘?:’ have different types ‘BitField<unsigned int, CPU::Reg, 16, 5>’ and ‘BitField<unsigned int, CPU::Reg, 21, 5>’
 1362 |                                PGXP::PackMoveArgs(dest, lhs.HasConstantValue(0) ? instruction.r.rt : instruction.r.rs)),
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[364/430] Building CXX object src/core/CMakeFiles/core.dir/cpu_newrec_compiler_x64.cpp.o
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: duckstation-exit status 4

tallero commented on 2024-03-09 23:40 (UTC) (edited on 2024-03-09 23:43 (UTC) by tallero)

Dear Marcello,

I have seen once again you have opened an orphan request for a typo.

You wrote "as usual" I broke a package with an upgrade. I see you forgot to mention I am also the person who wrote and published the package in first place.

Oh, and as far as I know the existence of this package may be what has brought upstream to use a standard version scheme, which is very nice if you think about it.

Finally, it's 00:35 of a Sunday.

Regards,

Your dear friend Pellegrino

tallero commented on 2024-03-09 23:21 (UTC) (edited on 2024-03-09 23:34 (UTC) by tallero)

Dear Marcello, build process completed correctly on my system due to the wayland-protocols dependency deriving from having enabled the headless backend on latest revision being already required by almost anything.

It would be awesome if we had a test suite or a continuous integration system which could prevent heavy mistakes such as 'breaking' from happening.

I remember to have asked you, too, many times but it seems you are indeed very focused on checking update status of single packages with at least one revision working, almost as if you didn't want a general solution to reduce our efforts and issues here.

Or as if you were having troubles dealing with my suggestion for more meaningful contributions.

I must say I am sorry but I've thought the above simply because you never replied to any of those suggestions ever.

I have another question too.

Why are you so obsessed on having all kind of packages working at their latest revision? Your aur helper doesn't let you select any of the available working recipes?

You see, I am asking because the impression is you run something like <aur helper> -Syu every night or so. As a long time aur user I would suggest instead to keep a local aur partial checkout and have that go at your own speed.

Doing that will probably save you a lot of stress. That will also make you able to simply send the upgrades you want to package maintainers to immensely speed up and raise your contributions and their quality.

I think it will also make you experience better social interactions.

MarsSeed commented on 2024-03-09 22:31 (UTC)

Build broken due to trivial reason. You should test your PKGBUILD before pushing updates:

  -> Extracting duckstation-0.1-6232.tar.gz with bsdtar
==> Starting build()...
-- The C compiler identification is GNU 13.2.1
-- The CXX compiler identification is GNU 13.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Version: 3.28.3
CMake System Name: Linux
Build Type: 
-- Found CURL: /usr/lib/libcurl.so (found version "8.6.0")  
-- Could NOT find Libbacktrace (missing: LIBBACKTRACE_LIBRARY LIBBACKTRACE_INCLUDE_DIR) 
CMake Warning at CMakeLists.txt:57 (message):
  libbacktrace not found, crashes will not produce backtraces.


-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- Performing Test HAVE_STDATOMIC
-- Performing Test HAVE_STDATOMIC - Success
-- Found WrapAtomic: TRUE  
-- Found OpenGL: /usr/lib/libOpenGL.so   
-- Found WrapOpenGL: TRUE  
-- Found XKB: /usr/lib/libxkbcommon.so (found suitable version "1.6.0", minimum required is "0.5.0") 
-- Found WrapVulkanHeaders: /usr/include  
-- Found PkgConfig: /usr/bin/pkg-config (found version "2.1.0") 
-- Performing Test HAVE_EGL
-- Performing Test HAVE_EGL - Success
-- Found EGL: /usr/include (found version "1.5") 
-- Found X11: /usr/include   
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Wayland support enabled
-- Performing Test COMPILER_SUPPORTS_WALL
-- Performing Test COMPILER_SUPPORTS_WALL - Success
-- Performing Test COMPILER_SUPPORTS_MEMACCESS
-- Performing Test COMPILER_SUPPORTS_MEMACCESS - Success
-- Performing Test COMPILER_SUPPORTS_OFFSETOF
-- Performing Test COMPILER_SUPPORTS_OFFSETOF - Success
Building x86_64 binaries.
-- Version: 10.1.1
-- Build type: 
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Looking for include file pulse/pulseaudio.h
-- Looking for include file pulse/pulseaudio.h - found
-- Looking for include file alsa/asoundlib.h
-- Looking for include file alsa/asoundlib.h - found
-- Looking for include file jack/jack.h
-- Looking for include file jack/jack.h - not found
-- Looking for include file sndio.h
-- Looking for include file sndio.h - found
-- Looking for include file sys/soundcard.h
-- Looking for include file sys/soundcard.h - found
-- Checking for module 'dbus-1'
--   Found dbus-1, version 1.14.10
Building x64 recompiler
-- Building X11 NoGUI Platform.
-- Building Wayland NoGUI Platform.
-- Found Wayland_Client: /usr/lib/libwayland-client.so (found version "1.22.0") 
-- Found Wayland: /usr/lib/libwayland-client.so (found version "1.22.0") found components: Client 
-- Found WaylandScanner: /usr/bin/wayland-scanner  
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find WaylandProtocols (missing: WaylandProtocols_DATADIR)
  (Required is at least version "1.15")
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/ECM/find-modules/FindWaylandProtocols.cmake:28 (find_package_handle_standard_args)
  src/duckstation-nogui/CMakeLists.txt:59 (find_package)

cegard commented on 2023-12-31 00:00 (UTC)

Hello.

I'm getting the next output when running makepkg -si

==> Making package: duckstation v0.1+6045-1 (sáb 30 dic 2023 18:45:14)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found duckstation-v0.1-6045.tar.gz
==> Validating source files with sha256sums...
    duckstation-v0.1-6045.tar.gz ... FAILED
==> ERROR: One or more files did not pass the validity check!

Any help on how to install it?

FabioLolix commented on 2023-06-20 16:10 (UTC)

Hello,

  • when using git source please don't rename using ${_pkgname}-${_pkgver}:: but make them re-usable
  • pkgdesc= still carry (git version) from duckstation-git. duckstation don't seem to have a really fixed releases and this isn't indicated from pkgname or pkgdesc=
  • please remove variable _pkgname which is the same as pkgname