Skip to main content

Launch mihomo with an administrator-elevated Trojan config generated from a share URL.

Project description

py-mihomo-trojan-interface

Generate a mihomo YAML config from a trojan:// share URL, relaunch with administrator privileges through py-admin-launch, and start mihomo with the generated config.

Install

python -m pip install -e .

Usage

Prefer passing the Trojan URL through stdin, an environment variable, or a file so the full URL does not stay in shell history.

printf '%s' 'trojan://<secret>@<host>:<port>?type=tcp&sni=<sni>#<name>' | \
  mihomo-trojan \
    --mihomo /path/to/mihomo \
    --country-mmdb /path/to/Country.mmdb \
    --trojan-url-stdin

PowerShell example:

$env:MIHOMO_TROJAN_URL = 'trojan://<secret>@<host>:<port>?type=tcp&sni=<sni>#<name>'
mihomo-trojan `
  --mihomo C:\path\to\mihomo.exe `
  --country-mmdb C:\path\to\Country.mmdb `
  --trojan-url-env MIHOMO_TROJAN_URL

You can also pass the URL directly when needed:

mihomo-trojan \
  --mihomo /path/to/mihomo \
  --country-mmdb /path/to/Country.mmdb \
  --trojan-url 'trojan://<secret>@<host>:<port>?type=tcp&sni=<sni>#<name>'

The launcher passes the mihomo data directory with -d and the generated YAML with -f. If --data-dir is not provided and the mmdb file is named Country.mmdb, the file's parent directory is used as the mihomo data directory.

On Linux and macOS, the launcher automatically marks the mihomo binary as executable before starting it, equivalent to running chmod +x on the path provided with --mihomo.

Useful options:

mihomo-trojan --help
mihomo-trojan --dry-run --log debug --mihomo /path/to/mihomo --country-mmdb /path/to/Country.mmdb --trojan-url-env MIHOMO_TROJAN_URL

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_mihomo_trojan_interface-0.1.6.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_mihomo_trojan_interface-0.1.6-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file py_mihomo_trojan_interface-0.1.6.tar.gz.

File metadata

  • Download URL: py_mihomo_trojan_interface-0.1.6.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.11.15 Windows/10

File hashes

Hashes for py_mihomo_trojan_interface-0.1.6.tar.gz
Algorithm Hash digest
SHA256 239acacdbd8ce09fcadec8265179aa9d0eb671e28ad4b05117c63a5009b7f829
MD5 ae5e3ea6b9c8cb2a586619998849b425
BLAKE2b-256 13ee389b62af12b06650c6ff580697874f22130fa3567291257f3cac44357991

See more details on using hashes here.

File details

Details for the file py_mihomo_trojan_interface-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for py_mihomo_trojan_interface-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 2644568ebabd05607a2f2594996e1c64b7239cf9894e00826d41d9d31799ca6e
MD5 54d7b0744f56edca61b2904642b99945
BLAKE2b-256 897ec97bbf90bef67cfec100c2b7ecd3111524ba6a8ab03d38716349db7c4651

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page