mirror of
https://codeberg.org/hako/Rosenthal.git
synced 2025-07-19 14:35:22 +00:00
274 lines
11 KiB
Scheme
274 lines
11 KiB
Scheme
;; SPDX-FileCopyrightText: 2023-2024 Hilton Chain <hako@ultrarare.space>
|
|
;;
|
|
;; SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
(define-module (rosenthal packages binaries)
|
|
#:use-module (srfi srfi-1)
|
|
#:use-module ((guix licenses) #:prefix license:)
|
|
#:use-module (guix gexp)
|
|
#:use-module (guix deprecation)
|
|
#:use-module (guix packages)
|
|
#:use-module (guix download)
|
|
#:use-module (guix build-system copy)
|
|
#:use-module (gnu build icecat-extension)
|
|
#:use-module (gnu packages base)
|
|
#:use-module (gnu packages bash)
|
|
#:use-module (gnu packages bootstrap)
|
|
#:use-module (gnu packages compression)
|
|
#:use-module (gnu packages elf)
|
|
#:use-module (gnu packages gcc)
|
|
#:use-module (gnu packages glib)
|
|
#:use-module (gnu packages java)
|
|
#:use-module (gnu packages nss)
|
|
#:use-module (rosenthal packages networking)
|
|
#:use-module (rosenthal packages rust-apps)
|
|
#:use-module (rosenthal packages web))
|
|
|
|
(define license
|
|
(@@ (guix licenses) license))
|
|
|
|
(define-public atuin-bin
|
|
(deprecated-package "atuin-bin" atuin))
|
|
|
|
(define-public hugo-bin
|
|
(deprecated-package "hugo-bin" hugo))
|
|
|
|
(define-public mihomo-bin
|
|
(deprecated-package "mihomo-bin" mihomo))
|
|
|
|
(define-public clash-meta-bin
|
|
(deprecated-package "clash-meta-bin" mihomo-bin))
|
|
|
|
(define-public cloudflare-warp-bin
|
|
(package
|
|
(name "cloudflare-warp-bin")
|
|
(version "2025.4.943.0")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://pkg.cloudflareclient.com"
|
|
"/pool/bookworm/main/c/cloudflare-warp/"
|
|
"cloudflare-warp_" version "_amd64.deb"))
|
|
(sha256
|
|
(base32
|
|
"08gczvxr2826vsz15ysadxm8llwgshxm5qqczn29w9iyirkc4k2q"))))
|
|
(build-system copy-build-system)
|
|
(arguments
|
|
(list #:install-plan
|
|
#~'(("bin" "bin" #:include ("warp-cli" "warp-svc")))
|
|
#:phases
|
|
#~(modify-phases %standard-phases
|
|
(add-after 'unpack 'unpack-deb
|
|
(lambda* (#:key source #:allow-other-keys)
|
|
(invoke "ar" "-x" source)
|
|
(invoke "tar" "-xf" "data.tar.gz")))
|
|
(add-after 'install 'patch-elf
|
|
(lambda _
|
|
(let ((ld.so (string-append #$(this-package-input "glibc")
|
|
#$(glibc-dynamic-linker)))
|
|
(rpath (string-join
|
|
(list
|
|
(string-append
|
|
(ungexp
|
|
(this-package-input "gcc") "lib") "/lib")
|
|
(string-append
|
|
#$(this-package-input "dbus") "/lib")
|
|
(string-append
|
|
#$(this-package-input "glibc") "/lib")
|
|
(string-append
|
|
#$(this-package-input "nspr") "/lib")
|
|
(string-append
|
|
#$(this-package-input "nss") "/lib/nss"))
|
|
":")))
|
|
(define (patch-elf file)
|
|
(format #t "Patching ~a ..." file)
|
|
(unless (string-contains file ".so")
|
|
(invoke "patchelf" "--set-interpreter" ld.so file))
|
|
(invoke "patchelf" "--set-rpath" rpath file)
|
|
(display " done\n"))
|
|
(for-each (lambda (file)
|
|
(patch-elf file))
|
|
(find-files
|
|
(string-append #$output "/bin")))))))))
|
|
(supported-systems '("x86_64-linux"))
|
|
(native-inputs (list patchelf-0.16))
|
|
(inputs (list dbus `(,gcc "lib") glibc nspr nss))
|
|
(home-page "https://1.1.1.1/")
|
|
(synopsis "Cloudflare WARP client")
|
|
(description
|
|
"The Cloudflare WARP client allows individuals to have a faster, more
|
|
secure, and more private experience online. The WARP client sits between your
|
|
device and the Internet, and has several connection modes to better suit
|
|
different needs.")
|
|
(license
|
|
(license "Nonfree"
|
|
"https://www.cloudflare.com/application/terms/"
|
|
"This is a nonfree license. Check the URI for details."))
|
|
(properties
|
|
'((upstream-name . "cloudflare-warp")
|
|
(release-monitoring-url
|
|
. "https://pkg.cloudflareclient.com/dists/bookworm/main/binary-amd64/Packages")))))
|
|
|
|
(define-public komga-bin
|
|
(package
|
|
(name "komga-bin")
|
|
(version "1.21.3")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append
|
|
"https://github.com/gotson/komga/releases/download/" version
|
|
"/komga-" version ".jar"))
|
|
(sha256
|
|
(base32
|
|
"1w3yk0xnc6pyqpmzg7vcadmmxxg2zr5lvf88ri7iyihdb85zyn1l"))))
|
|
(build-system copy-build-system)
|
|
(arguments
|
|
(list #:install-plan
|
|
#~'((#$(string-append "komga-" (package-version this-package) ".jar")
|
|
"lib/komga/komga.jar"))
|
|
#:phases
|
|
#~(modify-phases %standard-phases
|
|
(replace 'install
|
|
(lambda* (#:key inputs source #:allow-other-keys)
|
|
(let* ((lib (in-vicinity #$output "lib/komga"))
|
|
(bin (in-vicinity #$output "bin"))
|
|
(jar (in-vicinity lib "komga.jar"))
|
|
(exe "komga"))
|
|
(mkdir-p lib)
|
|
(copy-file source jar)
|
|
(call-with-output-file exe
|
|
(lambda (port)
|
|
(format port "~
|
|
#!~a
|
|
export LC_ALL=C.UTF-8
|
|
exec ~a -jar ~a $@~%"
|
|
(search-input-file inputs "bin/bash")
|
|
(search-input-file inputs "bin/java")
|
|
jar)))
|
|
(chmod exe #o555)
|
|
(install-file exe bin)))))))
|
|
(inputs (list bash-minimal openjdk))
|
|
(home-page "https://komga.org/")
|
|
(synopsis "Media server for comics/mangas/BDs/magazines/eBooks")
|
|
(description
|
|
"Komga is a media server for your comics, mangas, BDs, magazines and
|
|
eBooks.")
|
|
(license license:expat)
|
|
(properties '((upstream-name . "komga")
|
|
(disable-updater? . #t)))))
|
|
|
|
(define-public navidrome-bin
|
|
(package
|
|
(name "navidrome-bin")
|
|
(version "0.56.1")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append
|
|
"https://github.com/navidrome/navidrome/releases/download/v"
|
|
version "/navidrome_" version "_linux_amd64.tar.gz"))
|
|
(sha256
|
|
(base32
|
|
"0zad3rjviqfl7cm8iiyfc6gw3v84j273d4aijf3xwpgy5574siq3"))))
|
|
(build-system copy-build-system)
|
|
(arguments
|
|
(list #:install-plan
|
|
#~'(("navidrome" "bin/"))))
|
|
(supported-systems '("x86_64-linux"))
|
|
(home-page "https://www.navidrome.org/")
|
|
(synopsis "Web-based music collection server and streamer")
|
|
(description
|
|
"Navidrome is a self-hosted music server that allows users to stream and
|
|
manage their music collections. It provides a web interface and is compatible
|
|
with the Subsonic API.")
|
|
(license license:expat)
|
|
(properties '((upstream-name . "navidrome")
|
|
(disable-updater? . #t)))))
|
|
|
|
(define-public shadow-tls-bin
|
|
(package
|
|
(name "shadow-tls-bin")
|
|
(version "0.2.25")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append
|
|
"https://github.com/ihciah/shadow-tls/releases/download/v"
|
|
version "/shadow-tls-x86_64-unknown-linux-musl"))
|
|
(sha256
|
|
(base32
|
|
"0chmqzfmyw5w8ybshkwigc3r25svq7fyw371d0dj2ibzsprgawx1"))))
|
|
(build-system copy-build-system)
|
|
(arguments
|
|
(list #:install-plan
|
|
#~'(("shadow-tls-x86_64-unknown-linux-musl" "bin/shadow-tls"))
|
|
#:phases
|
|
#~(modify-phases %standard-phases
|
|
(add-after 'install 'fix-permission
|
|
(lambda _
|
|
(chmod (string-append #$output "/bin/shadow-tls") #o555))))))
|
|
(supported-systems '("x86_64-linux"))
|
|
(home-page "https://www.ihcblog.com/a-better-tls-obfs-proxy/")
|
|
(synopsis "Proxy to expose real tls handshake to the firewall")
|
|
(description
|
|
"Shadow TLS is a proxy to expose real tls handshake to the @acronym{MITM,
|
|
monster-in-the-middle}.")
|
|
(license license:expat)
|
|
(properties '((upstream-name . "shadow-tls")
|
|
(disable-updater? . #t)))))
|
|
|
|
(define-public sing-box-bin
|
|
(deprecated-package "sing-box-bin" sing-box))
|
|
|
|
(define-public tailscale-bin
|
|
(deprecated-package "tailscale-bin" tailscale))
|
|
|
|
(define-public wakapi-bin
|
|
(package
|
|
(name "wakapi-bin")
|
|
(version "2.13.4")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append
|
|
"https://github.com/muety/wakapi/releases/download/"
|
|
version "/wakapi_linux_amd64.zip"))
|
|
(sha256
|
|
(base32
|
|
"07wylvgi8yqcmywpvgbsqyhza86nmg8dfx1apmaynlw80y0nzial"))))
|
|
(build-system copy-build-system)
|
|
(arguments (list #:install-plan #~'(("wakapi" "bin/wakapi"))))
|
|
(supported-systems '("x86_64-linux"))
|
|
(native-inputs (list unzip))
|
|
(home-page "https://wakapi.dev/")
|
|
(synopsis "WakaTime-compatible backend")
|
|
(description
|
|
"This package provides @code{wakapi}, a WakaTime-compatible backend for
|
|
coding statistics.")
|
|
(license license:expat)
|
|
(properties '((upstream-name . "wakapi")
|
|
(disable-updater? . #t)))))
|
|
|
|
(define-public wakatime-cli-bin
|
|
(package
|
|
(name "wakatime-cli-bin")
|
|
(version "1.115.3")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://github.com/wakatime/wakatime-cli"
|
|
"/releases/download/v" version
|
|
"/wakatime-cli-linux-amd64.zip"))
|
|
(sha256
|
|
(base32
|
|
"0vfnbcgyaav95a7jbmh8xvpwlmcf8wsqlrf28yq9y79sywhc78bk"))))
|
|
(build-system copy-build-system)
|
|
(arguments
|
|
(list #:install-plan
|
|
#~'(("wakatime-cli-linux-amd64" "bin/wakatime-cli"))))
|
|
(supported-systems '("x86_64-linux"))
|
|
(native-inputs (list unzip))
|
|
(home-page "https://wakatime.com/plugins")
|
|
(synopsis "Command line interface to WakaTime")
|
|
(description
|
|
"This package provides @command{wakatime-cli}, the command line interface
|
|
to WakaTime, which is used by all WakaTime text editor plugins.")
|
|
(license license:bsd-3)
|
|
(properties '((upstream-name . "wakatime-cli")
|
|
(disable-updater? . #t)))))
|