WIP: Initial package

This commit is contained in:
TakeV 2024-11-19 18:01:42 -05:00
parent 933e0a7e60
commit b2e181db5a
Signed by: TakeV
GPG key ID: A64F41345C7400AF

View file

@ -0,0 +1,481 @@
(define-module (guix-punk packages restic)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system go)
#:use-module (guix build-system copy)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages cmake)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-compression)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-maths)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages prometheus)
#:use-module (gnu packages linux)
#:use-module (gnu packages specifications))
(define-public go-github-com-go-ole-go-ole
(package
(name "go-github-com-go-ole-go-ole")
(version "1.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-ole/go-ole")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1vr62wwjp206sxah2l79l007s7n187fjzkrnwb85ivqmazfjspxl"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/go-ole/go-ole"))
(propagated-inputs (list go-golang-org-x-sys))
(home-page "https://github.com/go-ole/go-ole")
(synopsis "Go OLE")
(description
"Go bindings for Windows COM using shared libraries instead of cgo.")
(license license:expat)))
(define-public go-github-com-capnspacehook-taskmaster
(package
(name "go-github-com-capnspacehook-taskmaster")
(version "0.0.0-20210519235353-1629df7c85e9")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/capnspacehook/taskmaster")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "06lyxysg011s81qi0s1pza7cfp4b4nbv62gsbdgk1whb6p8njlvg"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/capnspacehook/taskmaster"))
(propagated-inputs (list go-github-com-rickb777-date
go-github-com-go-ole-go-ole))
(home-page "https://github.com/capnspacehook/taskmaster")
(synopsis "taskmaster")
(description "Windows Task Scheduler Library for Go.")
(license license:expat)))
(define-public go-github-com-creativeprojects-clog
(package
(name "go-github-com-creativeprojects-clog")
(version "0.14.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/creativeprojects/clog")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1fq1g2f7dinpx1q234j72sj7pf34miaqc528ivdjp4k2y32jy90k"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/creativeprojects/clog"))
(propagated-inputs (list go-github-com-stretchr-testify
go-github-com-fatih-color))
(home-page "https://github.com/creativeprojects/clog")
(synopsis "clog (console-log)")
(description
"All the fashionable loggers for Go tend to focus on structured logging, and
that's perfectly fine: until you simply need a logger for a console
application...")
(license license:expat)))
(define-public go-github-com-davidmz-go-pageant
(package
(name "go-github-com-davidmz-go-pageant")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/davidmz/go-pageant")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0b333bnzi8wncakff7b890gg4md9pcbhs9fdv5bhh68r5pm2dz41"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/davidmz/go-pageant"))
(propagated-inputs (list go-golang-org-x-crypto))
(home-page "https://github.com/davidmz/go-pageant")
(synopsis #f)
(description
"Package pageant provides an interface to @code{PyTTY} pageant.exe utility. This
package is windows-only.")
(license license:expat)))
(define-public go-github-com-go-fed-httpsig
(package
(name "go-github-com-go-fed-httpsig")
(version "1.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-fed/httpsig")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1h2yk2ih8vrma8zrs1z8bd4r48hbqdwhgbqykrs4siyj9c80ykd2"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/go-fed/httpsig"))
(propagated-inputs (list go-golang-org-x-crypto))
(home-page "https://github.com/go-fed/httpsig")
(synopsis "httpsig")
(description
"This package implements HTTP request and response signing and verification.
Supports the major MAC and asymmetric key signature algorithms. It has several
safety restrictions: One, none of the widely known non-cryptographically safe
algorithms are permitted; Two, the RSA SHA256 algorithms must be available in
the binary (and it should, barring export restrictions); Finally, the library
assumes either the Authorizationn or Signature headers are to be set (but not
both).")
(license license:bsd-3)))
(define-public go-code-gitea-io-sdk-gitea
(package
(name "go-code-gitea-io-sdk-gitea")
(version "0.19.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitea.com/gitea/go-sdk")
(commit (go-version->git-ref version
#:subdir "gitea"))))
(file-name (git-file-name name version))
(sha256
(base32 "0ir1pprbj1ym8a1dxn6hi2x5w21qxh8w3n67f2s3xm8d07v40nrs"))))
(build-system go-build-system)
(arguments
(list
#:import-path "code.gitea.io/sdk/gitea"
#:unpack-path "code.gitea.io/sdk"))
(propagated-inputs (list go-golang-org-x-crypto
go-github-com-stretchr-testify
go-github-com-hashicorp-go-version
go-github-com-go-fed-httpsig
go-github-com-davidmz-go-pageant))
(home-page "https://code.gitea.io/sdk")
(synopsis #f)
(description
"Package gitea implements a client for the Gitea API. The version corresponds to
the highest supported version of the gitea API, but backwards-compatibility is
mostly given.")
(license license:expat)))
(define-public go-google-golang-org-appengine
(package
(name "go-google-golang-org-appengine")
(version "1.6.8")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/golang/appengine")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17pbiximrd340wdx3pm1jkpsgvss80pax7hif906xglh7mj9zqx2"))))
(build-system go-build-system)
(arguments
(list
#:import-path "google.golang.org/appengine"))
(propagated-inputs (list go-google-golang-org-protobuf
go-golang-org-x-text
go-github-com-golang-protobuf))
(home-page "https://google.golang.org/appengine")
(synopsis "Go App Engine packages")
(description
"Package appengine provides basic functionality for Google App Engine.")
(license license:asl2.0)))
(define-public go-github-com-google-go-github
(package
(name "go-github-com-google-go-github")
(version "30.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/go-github")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1k6ysddi3822rhj1qarahys3jm3zcjqwsbm8iggm6irhwfqr9gaf"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/google/go-github/v30"
#:unpack-path "github.com/google/go-github"))
(propagated-inputs (list go-google-golang-org-appengine
go-golang-org-x-oauth2 go-golang-org-x-crypto
go-github-com-google-go-querystring))
(home-page "https://github.com/google/go-github")
(synopsis "go-github")
(description
"go-github is a Go client library for accessing the
@@url{https://developer.github.com/v3/,@code{GitHub} API v3}.")
(license license:bsd-3)))
(define-public go-github-com-xanzy-go-gitlab
(package
(name "go-github-com-xanzy-go-gitlab")
(version "0.114.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/xanzy/go-gitlab")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "136iik1pqggdk2z3yz4wh5z05wp9sb6j1rpbf33bjn5djqxcxbbf"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/xanzy/go-gitlab"))
(propagated-inputs (list go-golang-org-x-time
go-golang-org-x-oauth2
go-github-com-stretchr-testify
go-github-com-hashicorp-go-retryablehttp
go-github-com-hashicorp-go-cleanhttp
go-github-com-google-go-querystring))
(home-page "https://github.com/xanzy/go-gitlab")
(synopsis "go-gitlab")
(description "Copyright 2022, Daniela Filipe Bento.")
(license license:asl2.0)))
(define-public go-github-com-creativeprojects-go-selfupdate
(package
(name "go-github-com-creativeprojects-go-selfupdate")
(version "1.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/creativeprojects/go-selfupdate")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1217ii9ndz87pzh13wmhqxm5vvpj57iwprm4d8h5jha12f1ds2dk"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/creativeprojects/go-selfupdate"))
(propagated-inputs (list go-gopkg-in-yaml-v3
go-golang-org-x-oauth2
go-golang-org-x-crypto
go-github-com-xanzy-go-gitlab
go-github-com-ulikunitz-xz
go-github-com-stretchr-testify
go-github-com-google-go-github-v30
go-github-com-masterminds-semver-v3
go-code-gitea-io-sdk-gitea))
(home-page "https://github.com/creativeprojects/go-selfupdate")
(synopsis
"Self-Update library for Github, Gitea and Gitlab hosted applications in Go")
(description
"go-selfupdate detects the information of the latest release via @code{GitHub}
Releases API and checks the current version. If newer version than itself is
detected, it downloads released binary from @code{GitHub} and replaces itself.")
(license license:expat)))
(define-public go-github-com-distatus-battery
(package
(name "go-github-com-distatus-battery")
(version "0.11.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/distatus/battery")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03kvd5h5fvmv384xb14c7h4cdh9m5drq3yfrjc9h9v8vniq5nq68"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/distatus/battery"))
(propagated-inputs (list go-howett-net-plist go-golang-org-x-sys))
(home-page "https://github.com/distatus/battery")
(synopsis "battery")
(description
"Package battery provides cross-platform, normalized battery information.")
(license license:expat)))
(define-public go-github-com-joho-godotenv
(package
(name "go-github-com-joho-godotenv")
(version "1.5.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/joho/godotenv")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03vijs05k31jdf24pzj3vlk6b5jxf894v1kvzals4wzclyq2h3ch"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/joho/godotenv"))
(home-page "https://github.com/joho/godotenv")
(synopsis "GoDotEnv")
(description
"Package godotenv is a go port of the ruby dotenv library
(@@url{https://github.com/bkeepers/dotenv,https://github.com/bkeepers/dotenv}).")
(license license:expat)))
(define-public go-github-com-mackerelio-go-osstat
(package
(name "go-github-com-mackerelio-go-osstat")
(version "0.2.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mackerelio/go-osstat")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1k2h8fdwnh3gifnkhf16rv5qh5vzcyk2lpjwwng7qvc2f35jan1a"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/mackerelio/go-osstat"))
(propagated-inputs (list go-golang-org-x-sys))
(home-page "https://github.com/mackerelio/go-osstat")
(synopsis "OS system statistics library for Go")
(description
"This is a library to get system metrics like cpu load and memory usage. The
library is created for
@@url{https://github.com/mackerelio/mackerel-agent,mackerel-agent}.")
(license license:asl2.0)))
(define-public go-github-com-rickb777-plural
(package
(name "go-github-com-rickb777-plural")
(version "1.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rickb777/plural")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "069ag331f0y1mjjmxhkir1q99665q3ch86jqj2ljglmvh0vccrrp"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/rickb777/plural"))
(home-page "https://github.com/rickb777/plural")
(synopsis "plural - Simple Go API for Pluralisation.")
(description
"Package plural provides simple support for localising plurals in a flexible
range of different styles.")
(license license:bsd-3)))
(define-public go-github-com-rickb777-date
(package
(name "go-github-com-rickb777-date")
(version "1.21.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rickb777/date")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1s2afbf14cfvw38v6ckifv2y99qa83b5b7zp1w3kknw738sqijiy"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/rickb777/date"))
(propagated-inputs (list go-golang-org-x-text
go-github-com-rickb777-plural
go-github-com-onsi-gomega))
(home-page "https://github.com/rickb777/date")
(synopsis "date")
(description
"Package date provides functionality for working with dates. It implements a
light-weight Date type that is storage-efficient and convenient for calendrical
calculations and date parsing and formatting (including years outside the
[0,9999] interval).")
(license license:bsd-3)))
(define-public go-github-com-creativeprojects-resticprofile
(package
(name "go-github-com-creativeprojects-resticprofile")
(version "0.29.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/creativeprojects/resticprofile")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1p99frlavfaxh9q5hr13iczbp4b38ll8bgw1a9fjv7i2xbpkmb2s"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/creativeprojects/resticprofile"))
(propagated-inputs (list go-howett-net-plist
go-gopkg-in-yaml-v3
go-golang-org-x-text
go-golang-org-x-term
go-golang-org-x-sys
go-golang-org-x-exp
go-github-com-stretchr-testify
go-github-com-spf13-viper
go-github-com-spf13-pflag
go-github-com-spf13-cast
go-github-com-spf13-afero
go-github-com-shirou-gopsutil-v3
go-github-com-rickb777-date
go-github-com-prometheus-common
go-github-com-prometheus-client-golang
go-github-com-mitchellh-mapstructure
go-github-com-mattn-go-colorable
go-github-com-mackerelio-go-osstat
go-github-com-joho-godotenv
go-github-com-fatih-color
go-github-com-distatus-battery
go-github-com-creativeprojects-go-selfupdate
go-github-com-creativeprojects-clog
go-github-com-coreos-go-systemd-v22
go-github-com-capnspacehook-taskmaster
go-github-com-adrg-xdg
go-github-com-masterminds-semver-v3))
(home-page "https://github.com/creativeprojects/resticprofile")
(synopsis "resticprofile")
(description
"Configuration profiles manager for @@url{https://restic.net/,restic backup}.")
(license license:gpl3)))
go-github-com-creativeprojects-resticprofile