add uv package
This commit is contained in:
parent
b3ac1aa68a
commit
c14243913d
1 changed files with 70 additions and 0 deletions
70
snamellit/packages/uv.scm
Normal file
70
snamellit/packages/uv.scm
Normal file
|
@ -0,0 +1,70 @@
|
|||
(define-module (snamellit packages uv)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system copy)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (guix licenses))
|
||||
|
||||
;; found at https://git.sr.ht/~alex-iam/alex-guix-channel/tree/master/item/alex/packages/uv.scm
|
||||
|
||||
(define-public uv
|
||||
(package
|
||||
(name "uv")
|
||||
(version "0.8.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/astral-sh/uv/releases/download/"
|
||||
version
|
||||
"/uv-x86_64-unknown-linux-gnu.tar.gz"))
|
||||
(sha256
|
||||
(base32 "1bdhi34cwc051xqxp8h5hs4bzmix52hx9s5jxxd4b2l686jjijvd"))))
|
||||
(build-system copy-build-system)
|
||||
(inputs
|
||||
`(("gcc:lib" ,gcc "lib")
|
||||
("glibc" ,glibc)))
|
||||
(native-inputs (list patchelf))
|
||||
(arguments
|
||||
`(#:install-plan
|
||||
'(("uv" "bin/")
|
||||
("uvx" "bin/"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'make-executables
|
||||
(lambda _
|
||||
(for-each make-file-writable '("uv" "uvx"))
|
||||
#t))
|
||||
(add-after 'install 'patch-runpath
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(gcc-lib (assoc-ref inputs "gcc:lib"))
|
||||
(libgcc-path (string-append gcc-lib "/lib/libgcc_s.so.1"))
|
||||
(glibc (assoc-ref inputs "glibc"))
|
||||
(glibc-lib (string-append glibc "/lib"))
|
||||
(dynamic-linker (string-append glibc-lib "/ld-linux-x86-64.so.2")))
|
||||
|
||||
(for-each
|
||||
(lambda (exe)
|
||||
(invoke "patchelf"
|
||||
"--set-interpreter" dynamic-linker
|
||||
(string-append bin "/" exe))
|
||||
(invoke "patchelf"
|
||||
"--set-rpath"
|
||||
(string-append gcc-lib "/lib:" glibc-lib)
|
||||
(string-append bin "/" exe)))
|
||||
'("uv" "uvx"))
|
||||
#t))))))
|
||||
(synopsis "Fast Python package manager (prebuilt binary)")
|
||||
(description
|
||||
"uv is a fast and unified Python package manager, written in Rust. This version installs the official prebuilt binaries.")
|
||||
(home-page "https://astral.sh/uv")
|
||||
(license expat)))
|
||||
|
||||
|
||||
uv
|
Loading…
Add table
Reference in a new issue