Bug 2305079

Summary: Review Request: clash-meta - A rule based network proxy tool. (aka mihomo)
Product: [Fedora] Fedora Reporter: Nianqing Yao <imbearchild>
Component: Package ReviewAssignee: U2FsdGVkX1
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: hjl.tools, package-review, U2FsdGVkX1
Target Milestone: ---Flags: U2FsdGVkX1: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-05-27 15:11:01 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
A patch to add clash-meta.service and config.yaml.sample none

Description Nianqing Yao 2024-08-15 06:18:05 UTC
Spec URL: https://github.com/ImBearChild/copr-home/tree/main/clash-meta
SRPM URL: https://download.copr.fedorainfracloud.org/results/imbearchild/home/fedora-41-x86_64/08660781-clash-meta/clash-meta-1.19.2-1.fc41.src.rpm
Copr URL: https://copr.fedorainfracloud.org/coprs/imbearchild/home/package/clash-meta/
Upstream project: https://github.com/MetaCubeX/mihomo/tree/Meta

Description: 
The clash-meta kernel is a rule based network proxy tool. It uses 
IP or domain based rules to forward packets to different nodes, 
and focus on obfuscated or tunneled protocols.

Fedora Account System Username: imbearchild

Note: 
This software is a fork of clash (once packaged in Fedora, but now deprecated). The upstream developer once decided to obfuscate this project (for some reason I can not explain), renaming it's repository to "mihomo", and using an unrelated main branch (actual code can be fetched from "Meta" branch). But the project itself and many users still refer to it as clash-meta (for example, their android port is still called ClashMetaForAndroid). The word "mihomo" is actually a play on words, combining the "mi" from mihoyo (a mobile gaming company from China, unrelated to this) and the "homo" from homose*ual, making it potentially improper as a package name. So I selected "clash-meta" as package name.

Comment 1 H.J. Lu 2024-09-19 19:50:50 UTC
Created attachment 2047697 [details]
A patch to add clash-meta.service and config.yaml.sample

What are the necessary steps to include this package in Fedora 40/41?

Comment 2 U2FsdGVkX1 2025-04-15 12:37:30 UTC
1. You can remove the period at the end of the summary.
https://docs.fedoraproject.org/en-US/packaging-guidelines/#:~:text=Do%20not%20end%20the%20summary%20with%20a%20period.

2. The file /usr/share/doc/clash-meta/docs/logo.png has executable permissions, which could pose a security risk:
-rwxr-xr-x. 1 mockbuild mock 15K Mar 28 11:08 logo.png

3. Is the license correctly specified? It currently points to vendor/modules.txt.

4. It seems the application does not read configuration from /etc/clash-meta by default. If it is intended to read from there, perhaps you should copy docs/config.yaml to /etc/clash-meta, similar to how Caddy does it.

Comment 3 U2FsdGVkX1 2025-04-15 12:44:27 UTC
Sorry, I saw your new patch.
If the default configuration has already been copied, ignore what I said above and merge it.

Comment 4 Nianqing Yao 2025-04-21 06:42:00 UTC
1. fixed in new version
2. removed logo from docs. it's useless.
3. that part is generated by go-vendor-tools. I think real licenses are handled by %go_vendor_license_install
4. okay :D

Thanks! And new copr build can be found here:
https://copr.fedorainfracloud.org/coprs/imbearchild/home/build/8948515/

Comment 5 U2FsdGVkX1 2025-05-27 13:48:53 UTC
Sorry for my late reply
LGTM. This package is APPROVED.

Comment 6 Nianqing Yao 2025-05-27 13:58:14 UTC
Thanks! :D But there is one more thing:

You need to set the `fedora-review` flag to `+` if you want to approve my package. [1]

[1]: https://docs.fedoraproject.org/en-US/package-maintainers/Package_Review_Process/#_reviewer

Comment 7 Fedora Admin user for bugzilla script actions 2025-05-27 14:22:12 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/clash-meta

Comment 8 Fedora Update System 2025-05-27 15:08:17 UTC
FEDORA-2025-bb207d24ec (clash-meta-1.19.4-2.fc43) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-bb207d24ec

Comment 9 Fedora Update System 2025-05-27 15:11:01 UTC
FEDORA-2025-bb207d24ec (clash-meta-1.19.4-2.fc43) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.