mirror of
https://codeberg.org/hako/Rosenthal.git
synced 2025-06-09 04:25:19 +00:00
rosenthal: Add mihomo.
* modules/rosenthal/packages/networking.scm (mihomo): New variable. * modules/rosenthal/packages/binaries.scm (mihomo-bin): Deprecated by it. (clash-bin): Delete variable.
This commit is contained in:
parent
3d4b11edc7
commit
b0231df023
@ -55,69 +55,11 @@
|
||||
(define-public bitwarden/icecat
|
||||
(make-icecat-extension bitwarden))
|
||||
|
||||
(define-public clash-bin
|
||||
(package
|
||||
(name "clash-bin")
|
||||
(version "1.18.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/Dreamacro/clash/releases/download/v"
|
||||
version "/clash-linux-amd64-v3-v" version ".gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0gchpc4pvy24dvhb5nk08g97rswjqr1ic6i405f1ba5snfv8i5z8"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list #:install-plan
|
||||
#~'((#$(format #f "clash-linux-amd64-v3-v~a" version) "bin/clash"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'fix-permission
|
||||
(lambda _
|
||||
(chmod (string-append #$output "/bin/clash") #o555))))))
|
||||
(supported-systems '("x86_64-linux"))
|
||||
(home-page "https://github.com/Dreamacro/clash")
|
||||
(synopsis "Rule-based tunnel in Go")
|
||||
(description
|
||||
"Clash is a cross-platform rule-based proxy utility that runs on the
|
||||
network and application layer, supporting various proxy and anti-censorship
|
||||
protocols out-of-the-box.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public hugo-bin
|
||||
(deprecated-package "hugo-bin" hugo))
|
||||
|
||||
(define-public mihomo-bin
|
||||
(package
|
||||
(name "mihomo-bin")
|
||||
(version "1.19.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/MetaCubeX/mihomo/releases/download/v"
|
||||
version "/mihomo-linux-amd64-v" version ".gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1x7i7v1gkfgc19fmsn9annv8nvwfl6w5pqr1m3982plzabnlr1ni"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list #:install-plan
|
||||
#~'((#$(string-append
|
||||
"mihomo-linux-amd64-v" (package-version this-package))
|
||||
"bin/mihomo"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'fix-permission
|
||||
(lambda _
|
||||
(chmod (string-append #$output "/bin/mihomo") #o555))))))
|
||||
(supported-systems '("x86_64-linux"))
|
||||
(home-page "https://wiki.metacubex.one/")
|
||||
(synopsis "Rule-based tunnel in Go")
|
||||
(description
|
||||
"This package provides @command{mihomo}, another @code{clash} kernel.")
|
||||
(license license:gpl3)
|
||||
(properties '((upstream-name . "mihomo")))))
|
||||
(deprecated-package "mihomo-bin" mihomo))
|
||||
|
||||
(define-public clash-meta-bin
|
||||
(deprecated-package "clash-meta-bin" mihomo-bin))
|
||||
|
@ -66,6 +66,76 @@ this daemon, without requiring you to poke holes on your firewall --- your
|
||||
origin can remain as closed as possible.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public mihomo
|
||||
(package
|
||||
(name "mihomo")
|
||||
(version "1.19.8")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/MetaCubeX/mihomo")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wnzaji5yzj8hvjifgnmhg371mm94bc89bb2m1dmsqsp30m3dj0b"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? (not (%current-target-system)) ;TODO: Run test suite.
|
||||
#:go go-1.23
|
||||
#:install-source? #f
|
||||
#:import-path "."
|
||||
#:build-flags
|
||||
#~(list "-tags" "with_gvisor"
|
||||
(string-append
|
||||
"-ldflags="
|
||||
" -X github.com/metacubex/mihomo/constant.Version="
|
||||
#$(package-version this-package)))
|
||||
#:modules
|
||||
'((ice-9 match)
|
||||
((guix build gnu-build-system) #:prefix gnu:)
|
||||
(guix build go-build-system)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'unpack
|
||||
(lambda args
|
||||
(unsetenv "GO111MODULE")
|
||||
(apply (assoc-ref gnu:%standard-phases 'unpack) args)
|
||||
(copy-recursively
|
||||
#+(this-package-native-input "vendored-go-dependencies")
|
||||
"vendor")))
|
||||
(replace 'install-license-files
|
||||
(assoc-ref gnu:%standard-phases 'install-license-files))
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(let ((mihomo (in-vicinity #$output "bin/mihomo")))
|
||||
(invoke mihomo "--help")
|
||||
(invoke mihomo "-v"))))))))
|
||||
(native-inputs
|
||||
(append
|
||||
(list (origin
|
||||
(method (go-mod-vendor #:go go-1.23))
|
||||
(uri (package-source this-package))
|
||||
(file-name "vendored-go-dependencies")
|
||||
(sha256
|
||||
(base32
|
||||
"1275yq3n7dg7hbw7vj5i1dqi83qgin77iavqxbc2gw8dawbd9plg"))))
|
||||
(if (%current-target-system)
|
||||
(list this-package)
|
||||
'())))
|
||||
(home-page "https://wiki.metacubex.one/")
|
||||
(synopsis "Rule-based proxy")
|
||||
(description
|
||||
"Mihomo is an anti-censorship proxy application, originally known as
|
||||
\"Clash Meta\", designed to facilitate secure and flexible internet access.
|
||||
It supports various protocols, making it a versatile tool for users seeking to
|
||||
bypass network restrictions." )
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public socks2http
|
||||
(package
|
||||
(name "socks2http")
|
||||
|
Loading…
Reference in New Issue
Block a user