diff --git a/nongnu/packages/linux.scm b/nongnu/packages/linux.scm index a12c0563..482096e7 100644 --- a/nongnu/packages/linux.scm +++ b/nongnu/packages/linux.scm @@ -358,6 +358,51 @@ stable, responsive and smooth desktop experience."))) ;;; Firmwares ;;; +(define-public linux-surface-base + (hidden-package + (corrupt-linux linux-libre-5.8 "5.8.14" + "1bzh82jpwcxsdzp6p1r8qlq9v5x79flhnzyimkcll8wdh28pjxpf"))) + +(define-public linux-surface + (package + (inherit linux-surface-base) + (name "linux-surface") + (properties `((hidden? . #f) + ,@(package-properties linux-surface-base))) + (arguments + (substitute-keyword-arguments (package-arguments linux-surface-base) + ((#:modules modules) + `((ice-9 regex) + ,@modules)) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'apply-patches + (lambda* (#:key inputs #:allow-other-keys) + (let* ((patch-dir + (string-append (assoc-ref inputs "linux-surface-patches") + "/patches/5.8")) + (patches (scandir patch-dir + (lambda (file) (string-match ".*.patch" file))))) + (for-each + (lambda (patch) + (invoke "patch" "-p1" "-i" + (string-append patch-dir "/" patch))) + patches) + #t))))))) + (native-inputs + `(,@(package-native-inputs linux-surface-base) + ("linux-surface-patches" + ;; Commit marked as release 5.8.14-1 + ,(let ((commit "e230e9aeac4635aefccebf9d56b6c0ce838ceb7b")) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/linux-surface/linux-surface") + (commit commit))) + (sha256 + (base32 "07b7pf9yn2v7qqkqxg18jvmf9a4fkykv9ah6piam09rf64b2v7na")) + (file-name (git-file-name "linux-surface-patches" commit))))))))) + (define-public linux-firmware (package (name "linux-firmware")