Add swaysome

This commit is contained in:
Daniel Ziltener 2023-12-11 19:20:34 +01:00
parent c90ec9af4a
commit e58e3f64ee
Signed by: zilti
GPG key ID: B38976E82C9DAE42

532
zilti/packages/rust.scm Normal file
View file

@ -0,0 +1,532 @@
(define-module (zilti packages rust)
#:use-module (guix)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix build-system cargo)
#:use-module (guix git-download)
#:use-module (gnu packages)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages curl)
#:use-module ((guix licenses) #:prefix license:))
(define-public rust-byteorder-1
(package
(name "rust-byteorder")
(version "1.5.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "byteorder" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0jzncxyf404mwqdbspihyzpkndfgda450l0893pz5xj685cg5l0z"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-development-inputs
(("rust-quickcheck" ,rust-quickcheck-0.9)
("rust-rand" ,rust-rand-0.7))))
(home-page "https://github.com/BurntSushi/byteorder")
(synopsis "Reading/writing numbers in big-endian and little-endian")
(description
"This library is used for reading or writing numbers in big-endian and
little-endian.")
(license (list license:expat license:unlicense))))
(define-public rust-serde-1
(package
(name "rust-serde")
(version "1.0.192")
(source
(origin
(method url-fetch)
(uri (crate-uri "serde" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"00ghhaabyrnr2cn504lckyqzh3fwr8k7pxnhhardr1djhj2a18mw"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-serde-derive" ,rust-serde-derive-1))
#:cargo-development-inputs
(("rust-serde-derive" ,rust-serde-derive-1))))
(home-page "https://serde.rs")
(synopsis "Generic serialization/deserialization framework")
(description
"This package provides a generic serialization/deserialization framework.")
(license (list license:expat license:asl2.0))))
(define-public rust-serde-json-1
(package
(name "rust-serde-json")
(version "1.0.108")
(source
(origin
(method url-fetch)
(uri (crate-uri "serde_json" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0ssj59s7lpzqh1m50kfzlnrip0p0jg9lmhn4098i33a0mhz7w71x"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-indexmap" ,rust-indexmap-2)
("rust-itoa" ,rust-itoa-1)
("rust-ryu" ,rust-ryu-1)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(("rust-automod" ,rust-automod-1)
("rust-indoc" ,rust-indoc-2)
("rust-ref-cast" ,rust-ref-cast-1)
("rust-rustversion" ,rust-rustversion-1)
("rust-serde" ,rust-serde-1)
("rust-serde-bytes" ,rust-serde-bytes-0.11)
("rust-serde-derive" ,rust-serde-derive-1)
("rust-serde-stacker" ,rust-serde-stacker-0.1)
("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/serde-rs/json")
(synopsis "JSON serialization file format")
(description
"This package provides a JSON serialization file format.")
(license (list license:expat license:asl2.0))))
(define-public rust-serde-derive-1
(package
(name "rust-serde-derive")
(version "1.0.192")
(source
(origin
(method url-fetch)
(uri (crate-uri "serde_derive" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1hgvm47ffd748sx22z1da7mgcfjmpr60gqzkff0a9yn9przj1iyn"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-2))
#:cargo-development-inputs
(("rust-serde" ,rust-serde-1))))
(home-page "https://serde.rs")
(synopsis "Macros 1.1 implementation of #[derive(Serialize, Deserialize)]")
(description
"This package provides the macros 1.1 implementation of
@code{#[derive(Serialize, Deserialize)]}.")
(license (list license:expat license:asl2.0))))
(define-public rust-anstream-0.6
(package
(name "rust-anstream")
(version "0.6.5")
(source (origin
(method url-fetch)
(uri (crate-uri "anstream" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1dm1mdbs1x6y3m3pz0qlamgiskb50i4q859676kx0pz8r8pajr6n"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-anstyle" ,rust-anstyle-1)
("rust-anstyle-parse" ,rust-anstyle-parse-0.2)
("rust-anstyle-query" ,rust-anstyle-query-1)
("rust-anstyle-wincon" ,rust-anstyle-wincon-3)
("rust-colorchoice" ,rust-colorchoice-1)
("rust-is-terminal" ,rust-is-terminal-0.4)
("rust-utf8parse" ,rust-utf8parse-0.2))
#:cargo-development-inputs
(("rust-criterion" ,rust-criterion-0.4)
("rust-owo-colors" ,rust-owo-colors-3)
("rust-proptest" ,rust-proptest-1)
("rust-strip-ansi-escapes" ,rust-strip-ansi-escapes-0.1))))
(home-page "https://github.com/rust-cli/anstyle")
(synopsis "Library for writing colored text to a terminal")
(description
"This package provides a simple cross platform library for writing colored
text to a terminal.")
(license (list license:expat license:asl2.0))))
(define-public rust-clap-4
(package
(name "rust-clap")
(version "4.4.11")
(source
(origin
(method url-fetch)
(uri (crate-uri "clap" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1wj5gb2fnqls00zfahg3490bdfc36d9cwpl80qjacb5jyrqzdbxz"))))
(build-system cargo-build-system)
(arguments
(list #:cargo-inputs
`(("rust-clap-builder" ,rust-clap-builder-4)
("rust-clap-derive" ,rust-clap-derive-4)
("rust-once-cell" ,rust-once-cell-1))
#:cargo-development-inputs
`(("rust-humantime" ,rust-humantime-2)
("rust-rustversion" ,rust-rustversion-1)
("rust-shlex" ,rust-shlex-1)
("rust-snapbox" ,rust-snapbox-0.4)
("rust-static-assertions" ,rust-static-assertions-1)
("rust-trybuild" ,rust-trybuild-1)
("rust-trycmd" ,rust-trycmd-0.14)
("rust-unic-emoji-char" ,rust-unic-emoji-char-0.9))))
(home-page "https://clap.rs/")
(synopsis "Command Line Argument Parser")
(description
"This package provides a simple to use, efficient, and full-featured
Command Line Argument Parser.")
(license (list license:expat license:asl2.0))))
(define-public rust-clap-builder-4
(package
(name "rust-clap-builder")
(version "4.4.11")
(source (origin
(method url-fetch)
(uri (crate-uri "clap_builder" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1fxdsmw1ilgswz3lg2hjlvsdyyz04k78scjirlbd7c9bc83ba5m2"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-test-flags
(list "--release" "--"
;; Some of the doc tests fail.
"--skip=builder::range::ValueRange::new"
"--skip=builder::value_parser::value_parser")
#:cargo-inputs
(("rust-anstream" ,rust-anstream-0.3)
("rust-anstyle" ,rust-anstyle-1)
("rust-backtrace" ,rust-backtrace-0.3)
("rust-clap-lex" ,rust-clap-lex-0.6)
("rust-once-cell" ,rust-once-cell-1)
("rust-strsim" ,rust-strsim-0.10)
("rust-terminal-size" ,rust-terminal-size-0.2)
("rust-unicase" ,rust-unicase-2)
("rust-unicode-width" ,rust-unicode-width-0.1))
#:cargo-development-inputs
(("rust-color-print" ,rust-color-print-0.3)
("rust-humantime" ,rust-humantime-2)
("rust-rustversion" ,rust-rustversion-1)
("rust-shlex" ,rust-shlex-1)
("rust-snapbox" ,rust-snapbox-0.4)
("rust-static-assertions" ,rust-static-assertions-1)
("rust-trybuild" ,rust-trybuild-1)
("rust-trycmd" ,rust-trycmd-0.14)
("rust-unic-emoji-char" ,rust-unic-emoji-char-0.9))))
(home-page "https://github.com/clap-rs/clap")
(synopsis "Full-featured Command Line Argument Parser")
(description
"This package provides a simple to use, efficient, and full-featured
Command Line Argument Parser.")
(license (list license:expat license:asl2.0))))
(define-public rust-clap-derive-4
(package
(name "rust-clap-derive")
(version "4.4.7")
(source
(origin
(method url-fetch)
(uri (crate-uri "clap_derive" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0hk4hcxl56qwqsf4hmf7c0gr19r9fbxk0ah2bgkr36pmmaph966g"))))
(build-system cargo-build-system)
(arguments
(list #:cargo-inputs
`(("rust-heck" ,rust-heck-0.4)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-2))))
(home-page "https://clap.rs/")
(synopsis "Procedural macro crate for Clap")
(description
"This package provides the procedural macro crate for Clap.")
(license (list license:expat license:asl2.0))))
(define-public rust-clap-lex-0.6
(package
(name "rust-clap-lex")
(version "0.6.0")
(source (origin
(method url-fetch)
(uri (crate-uri "clap_lex" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1l8bragdvim7mva9flvd159dskn2bdkpl0jqrr41wnjfn8pcfbvh"))))
(build-system cargo-build-system)
(home-page "https://github.com/clap-rs/clap/tree/master/clap_lex")
(synopsis "Command line parser for Clap")
(description
"This package provides a parser for command line options. As opposed
to a declarative parser, @code{rust-clap-lex} processes arguments as a
stream of tokens.")
;; The user can choose either license.
(license (list license:expat license:asl2.0))))
(define-public rust-windows-aarch64-gnullvm-0.52
(package
(name "rust-windows-aarch64-gnullvm")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows_aarch64_gnullvm" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1shmn1kbdc0bpphcxz0vlph96bxz0h1jlmh93s9agf2dbpin8xyb"))
(snippet
'(delete-file "lib/libwindows.0.52.0.a"))))
(build-system cargo-build-system)
(arguments
(list #:skip-build? #t))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Code gen support for the windows crate")
(description
"This package provides code gen support for the windows crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-windows-x86-64-msvc-0.52
(package
(name "rust-windows-x86-64-msvc")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows_x86_64_msvc" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"012wfq37f18c09ij5m6rniw7xxn5fcvrxbqd0wd8vgnl3hfn9yfz"))
(snippet
'(delete-file "lib/windows.0.52.0.lib"))))
(build-system cargo-build-system)
(arguments (list #:skip-build? #t))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Code gen support for the windows crate")
(description
"This package provides code gen support for the windows crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-windows-x86-64-gnu-0.52
(package
(name "rust-windows-x86-64-gnu")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows_x86_64_gnu" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1zdy4qn178sil5sdm63lm7f0kkcjg6gvdwmcprd2yjmwn8ns6vrx"))
(snippet
'(delete-file "lib/libwindows.0.52.0.a"))))
(build-system cargo-build-system)
(arguments
(list #:skip-build? #t))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Code gen support for the windows crate")
(description
"This package provides code gen support for the windows crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-windows-aarch64-msvc-0.52
(package
(name "rust-windows-aarch64-msvc")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows_aarch64_msvc" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1vvmy1ypvzdvxn9yf0b8ygfl85gl2gpcyvsvqppsmlpisil07amv"))
(snippet
'(delete-file "lib/windows.0.52.0.lib"))))
(build-system cargo-build-system)
(arguments
(list #:skip-build? #t))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Code gen support for the windows crate")
(description "This package provides code gen support for the windows
crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-windows-x86-64-gnullvm-0.52
(package
(name "rust-windows-x86-64-gnullvm")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows-x86_64-gnullvm" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"17lllq4l2k1lqgcnw1cccphxp9vs7inq99kjlm2lfl9zklg7wr8s"))
(snippet
'(delete-file "lib/libwindows.0.52.0.a"))))
(build-system cargo-build-system)
(arguments (list #:skip-build? #t))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Code gen support for the windows crate")
(description
"This package provides code gen support for the windows crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-windows-i686-gnu-0.52
(package
(name "rust-windows-i686-gnu")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows_i686_gnu" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"04zkglz4p3pjsns5gbz85v4s5aw102raz4spj4b0lmm33z5kg1m2"))
(snippet
'(delete-file "lib/libwindows.0.52.0.a"))))
(build-system cargo-build-system)
(arguments
(list #:skip-build? #t))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Code gen support for the windows crate")
(description
"This package provides code gen support for the windows crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-windows-i686-msvc-0.52
(package
(name "rust-windows-i686-msvc")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows_i686_msvc" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"16kvmbvx0vr0zbgnaz6nsks9ycvfh5xp05bjrhq65kj623iyirgz"))
(snippet
'(delete-file "lib/windows.0.52.0.lib"))))
(build-system cargo-build-system)
(arguments
(list #:skip-build? #t))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Code gen support for the windows crate")
(description
"This package provides code gen support for the windows crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-windows-targets-0.52
(package
(name "rust-windows-targets")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows-targets" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1kg7a27ynzw8zz3krdgy6w5gbqcji27j1sz4p7xk2j5j8082064a"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-windows-aarch64-gnullvm" ,rust-windows-aarch64-gnullvm-0.52)
("rust-windows-aarch64-msvc" ,rust-windows-aarch64-msvc-0.52)
("rust-windows-i686-gnu" ,rust-windows-i686-gnu-0.52)
("rust-windows-i686-msvc" ,rust-windows-i686-msvc-0.52)
("rust-windows-x86-64-gnu" ,rust-windows-x86-64-gnu-0.52)
("rust-windows-x86-64-gnullvm" ,rust-windows-x86-64-gnullvm-0.52)
("rust-windows-x86-64-msvc" ,rust-windows-x86-64-msvc-0.52))))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Code gen support for the windows crate")
(description
"This package provides code gen support for the windows crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-windows-sys-0.52
(package
(name "rust-windows-sys")
(version "0.52.0")
(source (origin
(method url-fetch)
(uri (crate-uri "windows-sys" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0gd3v4ji88490zgb6b5mq5zgbvwv7zx1ibn8v3x83rwcdbryaar8"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs (("rust-windows-targets" ,rust-windows-targets-0.52))))
(home-page "https://github.com/microsoft/windows-rs")
(synopsis "Rust for Windows")
(description "The windows crate lets you call any Windows API past,
present, and future using code generated on the fly directly from the metadata
describing the API and right into your Rust package where you can call them as
if they were just another Rust module.")
(license (list license:expat license:asl2.0))))
(define-public rust-anstyle-wincon-3
(package
(name "rust-anstyle-wincon")
(version "3.0.2")
(source (origin
(method url-fetch)
(uri (crate-uri "anstyle-wincon" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"19v0fv400bmp4niqpzxnhg83vz12mmqv7l2l8vi80qcdxj0lpm8w"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-anstyle" ,rust-anstyle-1)
("rust-windows-sys" ,rust-windows-sys-0.52))
#:cargo-development-inputs
(("rust-lexopt" ,rust-lexopt-0.3))))
(home-page "https://github.com/rust-cli/anstyle")
(synopsis "Styling legacy Windows terminals")
(description "Styling legacy Windows terminals")
(license (list license:expat license:asl2.0))))
(define-public rust-swaysome
(package
(name "rust-swaysome")
(version "2.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/hyask/swaysome.git")
(commit version)))
(sha256
(base32
"0yb5j4m9j1dvlzdqn8rq3lmqr82ph73wdkq0w38mzdzmabsvz5ak"))))
(build-system cargo-build-system)
(arguments
(list #:cargo-inputs
`(("rust-byteorder" ,rust-byteorder-1)
("rust-clap" ,rust-clap-4)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-anstream" ,rust-anstream-0.6))))
(home-page "https://gitlab.com/hyask/swaysome")
(synopsis "An awesome way to manage your workspaces on sway.")
(description "This binary helps you configure sway to work a bit more like AwesomeWM. This means that workspaces are namespaced in what are called workspace groups, and workspace groups can be moved around the differents outputs easily.")
(license license:expat)))