From 94e5adeb05884732cd1e588295a7e3c4bb763118 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Thu, 6 Jun 2019 10:46:55 +0200 Subject: nongnu: Add dxvk. * nongnu/packages/wine.scm (dxvk): New variable. --- nongnu/packages/wine.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/nongnu/packages/wine.scm b/nongnu/packages/wine.scm index 02523f2..221be46 100644 --- a/nongnu/packages/wine.scm +++ b/nongnu/packages/wine.scm @@ -76,3 +76,51 @@ It has a menu of supported games/apps for which it can do all the workarounds automatically. It also allows the installation of missing nonfree DLLs and tweaking of various Wine settings.") (license license:lgpl2.1))) + +;; TODO: We could package from source and distribute in upstream Guix. +;; See bug #35031. +(define-public dxvk + (package + (name "dxvk") + (version "1.2.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/doitsujin/dxvk/releases/download/v" + version "/dxvk-" version ".tar.gz")) + (sha256 + (base32 + "1aix9isys8n0hp8vwrmm4c58716g6famsm62x40z24sdlfhfqaqr")))) + (build-system trivial-build-system) + (native-inputs + `(("gzip" ,gzip) + ("tar" ,tar))) + (inputs + `(("wine" ,wine64) + ("bash" ,bash-minimal))) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((out (assoc-ref %outputs "out")) + (bash (assoc-ref %build-inputs "bash"))) + (setenv "PATH" (string-append + (assoc-ref %build-inputs "gzip") "/bin:" + (assoc-ref %build-inputs "tar") "/bin")) + (invoke "tar" "xvf" (assoc-ref %build-inputs "source")) + (mkdir-p out) + (copy-recursively (string-append ,name "-" ,version "/") out) + (chdir out) + (mkdir-p "bin") + (rename-file "setup_dxvk.sh" "bin/setup_dxvk") + (patch-shebang "bin/setup_dxvk" (list (string-append bash "/bin"))) + (substitute* "bin/setup_dxvk" + (("wine=\"wine\"") + (string-append "wine=" (assoc-ref %build-inputs "wine") "/bin/wine")) + (("x32") "../x32") + (("x64") "../x64"))) + #t))) + (home-page "https://github.com/doitsujin/dxvk/") + (synopsis "Vulkan-based D3D11 and D3D10 implementation for Wine") + (description "Vulkan-based D3D11 and D3D10 implementation for Wine.") + (license license:zlib))) -- cgit v1.2.3