channels.scm 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. (use-modules (srfi srfi-1)
  2. (ice-9 textual-ports)
  3. (ice-9 popen))
  4. (define (find-guix-channel channel-list)
  5. (find
  6. (lambda (channel) (eq? (channel-name channel) 'guix))
  7. channel-list))
  8. (define current-guix (find-guix-channel %default-channels))
  9. (define (current-guix-commit)
  10. (let* ((port (open-input-pipe "guix describe -f channels"))
  11. (str (get-string-all port)))
  12. (close-pipe port)
  13. (channel-commit
  14. (find-guix-channel (eval-string str)))))
  15. (define* (channel-list #:key guix-commit)
  16. (cons*
  17. (channel
  18. (name 'nonguix)
  19. (url "https://gitlab.com/nonguix/nonguix.git")
  20. (introduction
  21. (make-channel-introduction
  22. "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
  23. (openpgp-fingerprint
  24. "2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5")))
  25. (branch "master"))
  26. (channel
  27. (name 'guix-gaming-games)
  28. (url "https://gitlab.com/guix-gaming-channels/games.git")
  29. ;; (url "/home/ambrevar/projects/games")
  30. (introduction
  31. (make-channel-introduction
  32. "c23d64f1b8cc086659f8781b27ab6c7314c5cca5"
  33. (openpgp-fingerprint
  34. "50F3 3E2E 5B0C 3D90 0424 ABE8 9BDC F497 A4BB CC7F")))
  35. (branch "master"))
  36. ;; (channel
  37. ;; (name 'guix-gaming-duke-nukem-3d)
  38. ;; (url "https://gitlab.com/guix-gaming-channels/duke-nukem-3d.git")
  39. ;; (branch "master"))
  40. ;; (channel
  41. ;; (name 'guix-gaming-quake-3)
  42. ;; (url "https://gitlab.com/guix-gaming-channels/quake-3.git")
  43. ;; (branch "master"))
  44. (cons
  45. (if guix-commit
  46. (channel
  47. (inherit current-guix)
  48. (commit guix-commit))
  49. current-guix)
  50. (delete current-guix %default-channels))))
  51. ;; (channel-list #:guix-commit (current-guix-commit))
  52. (channel-list)