X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/d19b14c8349ce8cacb62619ab68953265daeeca7..532c0e745aa81b5ac5ed8cb2b4f9b02aa720d9a9:/gnu/packages/wine.scm diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm index 4a6a88f471..98b435cb8d 100644 --- a/gnu/packages/wine.scm +++ b/gnu/packages/wine.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2016, 2017, 2018 Efraim Flashner ;;; Copyright © 2017, 2018, 2019 Rutger Helling ;;; Copyright © 2017, 2020 Nicolas Goaziou -;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice +;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2019 Pierre Neidhardt ;;; ;;; This file is part of GNU Guix. @@ -38,7 +38,6 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bison) - #:use-module (gnu packages compression) #:use-module (gnu packages cups) #:use-module (gnu packages databases) #:use-module (gnu packages fontutils) @@ -52,6 +51,7 @@ #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages kerberos) + #:use-module (gnu packages libusb) #:use-module (gnu packages linux) #:use-module (gnu packages mingw) #:use-module (gnu packages openldap) @@ -60,7 +60,6 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages mp3) - #:use-module (gnu packages ncurses) #:use-module (gnu packages photo) #:use-module (gnu packages samba) #:use-module (gnu packages scanner) @@ -76,7 +75,7 @@ (define-public wine (package (name "wine") - (version "5.3") + (version "6.0") (source (origin (method url-fetch) @@ -88,7 +87,7 @@ (string-append "https://dl.winehq.org/wine/source/" dir "wine-" version ".tar.xz"))) (sha256 - (base32 "1pkzj3656ad0vmc7ciwfzn45lb2kxwbyymfwnqaa105dicicf6wv")))) + (base32 "0micb3l54cc2cl3v5q92hzvkxxiwi9lmiv72caf45vl35xghd4xl")))) (build-system gnu-build-system) (native-inputs `(("bison" ,bison) @@ -104,7 +103,6 @@ ("faudio" ,faudio) ("fontconfig" ,fontconfig) ("freetype" ,freetype) - ("glu" ,glu) ("gnutls" ,gnutls) ("gst-plugins-base" ,gst-plugins-base) ("lcms" ,lcms) @@ -118,6 +116,7 @@ ("libpcap" ,libpcap) ("libpng" ,libpng) ("libjpeg" ,libjpeg-turbo) + ("libusb" ,libusb) ("libtiff" ,libtiff) ("libICE" ,libice) ("libX11" ,libx11) @@ -130,15 +129,13 @@ ("libXxf86vm" ,libxxf86vm) ("libXcomposite" ,libxcomposite) ("mit-krb5" ,mit-krb5) - ("ncurses" ,ncurses) ("openal" ,openal) ("pulseaudio" ,pulseaudio) ("sdl2" ,sdl2) ("unixodbc" ,unixodbc) ("v4l-utils" ,v4l-utils) ("vkd3d" ,vkd3d) - ("vulkan-loader" ,vulkan-loader) - ("zlib" ,zlib))) + ("vulkan-loader" ,vulkan-loader))) (arguments `(;; Force a 32-bit build targeting a similar architecture, i.e.: ;; armhf for armhf/aarch64, i686 for i686/x86_64. @@ -171,21 +168,22 @@ (let* ((out (assoc-ref outputs "out")) (icd (string-append out "/share/vulkan/icd.d"))) (mkdir-p icd) - (copy-file (string-append (assoc-ref inputs "mesa") - "/share/vulkan/icd.d/radeon_icd.i686.json") + (copy-file (string-append + (assoc-ref inputs "mesa") + "/share/vulkan/icd.d/radeon_icd.i686.json") (string-append icd "/radeon_icd.i686.json")) - (copy-file (string-append (assoc-ref inputs "mesa") - "/share/vulkan/icd.d/intel_icd.i686.json") + (copy-file (string-append + (assoc-ref inputs "mesa") + "/share/vulkan/icd.d/intel_icd.i686.json") (string-append icd "/intel_icd.i686.json")) (wrap-program (string-append out "/bin/wine-preloader") - `("VK_ICD_FILENAMES" ":" = - (,(string-append icd - "/radeon_icd.i686.json" ":" - icd "/intel_icd.i686.json")))) + `("VK_ICD_FILENAMES" ":" = + (,(string-append icd + "/radeon_icd.i686.json" ":" + icd "/intel_icd.i686.json")))) #t))))) (_ - `()) - ) + `())) (add-after 'configure 'patch-dlopen-paths ;; Hardcode dlopened sonames to absolute paths. (lambda _ @@ -227,34 +225,35 @@ integrate Windows applications into your desktop.") ;; when installing to x86_64-linux so both are available. ;; TODO: Add more JSON files as they become available in Mesa. ,@(match (%current-system) - ((or "x86_64-linux") - `((add-after 'copy-wine32-binaries 'wrap-executable - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/bin/wine-preloader") - `("VK_ICD_FILENAMES" ":" = - (,(string-append (assoc-ref inputs "mesa") - "/share/vulkan/icd.d/radeon_icd.x86_64.json" ":" - (assoc-ref inputs "mesa") - "/share/vulkan/icd.d/intel_icd.x86_64.json" ":" - (assoc-ref inputs "wine") - "/share/vulkan/icd.d/radeon_icd.i686.json" ":" - (assoc-ref inputs "wine") - "/share/vulkan/icd.d/intel_icd.i686.json")))) - (wrap-program (string-append out "/bin/wine64-preloader") - `("VK_ICD_FILENAMES" ":" = - (,(string-append (assoc-ref inputs "mesa") - "/share/vulkan/icd.d/radeon_icd.x86_64.json" - ":" (assoc-ref inputs "mesa") - "/share/vulkan/icd.d/intel_icd.x86_64.json" - ":" (assoc-ref inputs "wine") - "/share/vulkan/icd.d/radeon_icd.i686.json" - ":" (assoc-ref inputs "wine") - "/share/vulkan/icd.d/intel_icd.i686.json")))) - #t))))) - (_ - `()) - ) + ((or "x86_64-linux") + `((add-after 'copy-wine32-binaries 'wrap-executable + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/wine-preloader") + `("VK_ICD_FILENAMES" ":" = + (,(string-append + (assoc-ref inputs "mesa") + "/share/vulkan/icd.d/radeon_icd.x86_64.json" ":" + (assoc-ref inputs "mesa") + "/share/vulkan/icd.d/intel_icd.x86_64.json" ":" + (assoc-ref inputs "wine") + "/share/vulkan/icd.d/radeon_icd.i686.json" ":" + (assoc-ref inputs "wine") + "/share/vulkan/icd.d/intel_icd.i686.json")))) + (wrap-program (string-append out "/bin/wine64-preloader") + `("VK_ICD_FILENAMES" ":" = + (,(string-append + (assoc-ref inputs "mesa") + "/share/vulkan/icd.d/radeon_icd.x86_64.json" + ":" (assoc-ref inputs "mesa") + "/share/vulkan/icd.d/intel_icd.x86_64.json" + ":" (assoc-ref inputs "wine") + "/share/vulkan/icd.d/radeon_icd.i686.json" + ":" (assoc-ref inputs "wine") + "/share/vulkan/icd.d/intel_icd.i686.json")))) + #t))))) + (_ + `())) (add-after 'install 'copy-wine32-binaries (lambda* (#:key outputs #:allow-other-keys) (let* ((wine32 (assoc-ref %build-inputs "wine")) @@ -267,6 +266,13 @@ integrate Windows applications into your desktop.") (copy-file (string-append wine32 "/bin/.wine-preloader-real") (string-append out "/bin/wine-preloader")) #t))) + (add-after 'install 'copy-wine32-libraries + (lambda* (#:key outputs #:allow-other-keys) + (let* ((wine32 (assoc-ref %build-inputs "wine")) + (out (assoc-ref %outputs "out"))) + (copy-recursively (string-append wine32 "/lib/wine32") + (string-append out "/lib/wine32")) + #t))) (add-after 'compress-documentation 'copy-wine32-manpage (lambda* (#:key outputs #:allow-other-keys) (let* ((wine32 (assoc-ref %build-inputs "wine")) @@ -328,7 +334,7 @@ integrate Windows applications into your desktop.") (define-public wine-staging-patchset-data (package (name "wine-staging-patchset-data") - (version "5.3") + (version "5.13") (source (origin (method git-fetch) @@ -337,7 +343,7 @@ integrate Windows applications into your desktop.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1mvhrvshyrj7lgjgka735z6j8idwd6j58bpg5nz1slgmlh1llrs6")))) + (base32 "0sw7790gsi3h08xgc8i1y282rk8xrdhqjlwpvbpvyw5zi0i95cvq")))) (build-system trivial-build-system) (native-inputs `(("bash" ,bash) @@ -375,19 +381,20 @@ integrate Windows applications into your desktop.") (name "wine-staging") (version (package-version wine-staging-patchset-data)) (source - (origin - (method url-fetch) - (uri (let ((dir (string-append - (version-major version) - (if (string-suffix? ".0" (version-major+minor version)) - ".0" - ".x")))) - (string-append - "https://dl.winehq.org/wine/source/" dir - "/wine-" version ".tar.xz"))) - (file-name (string-append name "-" version ".tar.xz")) - (sha256 - (base32 "1pkzj3656ad0vmc7ciwfzn45lb2kxwbyymfwnqaa105dicicf6wv")))) + (let* ((wine-version (version-major+minor version)) + (subdirectory (string-append + (version-major version) + (if (string-suffix? ".0" wine-version) + ".0" + ".x")))) + (origin + (method url-fetch) + (uri (string-append "https://dl.winehq.org/wine/source/" + subdirectory "/" + "wine-" wine-version ".tar.xz")) + (file-name (string-append name "-" wine-version ".tar.xz")) + (sha256 + (base32 "0lh1bqr8xq1acz5d0cb50rvhw3h6h1vqprx5wlyrjhdg58f5qsn4"))))) (inputs `(("autoconf" ,autoconf) ; for autoreconf ("ffmpeg" ,ffmpeg) ("gtk+" ,gtk+)