Mac Internet Sharing
A Python CLI tool to manage internet sharing on macOS.
Installation
pipx install mac-internet-sharing
Usage
The tool provides several commands to manage internet sharing. Here are some common use cases:
Starting Internet Sharing
There are two methods to start internet sharing:
1. Manual Configuration (configure)
This method requires you to manually specify the primary network interface and one or more device UDIDs. It sets up internet sharing based on your initial configuration. Note that newly connected USB devices after the initial setup are not added automatically—you will need to re-run the command to update the configuration.
sudo misha configure -n <primary_interface> -u <udid> -u <udid> -s
<primary_interface>: Replace with your network interface name (e.g.,"Ethernet Adapter (en6)").-u <udid>: Optionally specify one or more device UDIDs.-s: Automatically start sharing after configuration.
2. Automatic USB Detection (plug-n-share)
This method continuously monitors for new USB devices and automatically updates the sharing configuration when a new device is detected. It is ideal if you frequently plug in different devices and want your sharing setup to update in real time. You can also run it as a daemon.
sudo misha plug-n-share -n <primary_interface> -t <timeout>
<primary_interface>(optional): Specify the network service name. If not provided, the default network service is used.-t <timeout>: Set the polling interval in seconds (default is 5 seconds).
Note: The manual configuration (
configure) does not automatically detect newly connected devices after the initial setup. Useplug-n-shareif you require automatic updates.
Toggling Internet Sharing
Manage the sharing state with the following commands:
-
Turn Sharing Off:
sudo misha off
-
Turn Sharing On:
sudo misha on
Contributing
Contributions, bug reports, and feature requests are welcome! Feel free to open issues or submit pull requests.
Metadata
Release files for mac-internet-sharing 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mac_internet_sharing-0.1.4.tar.gz | 12.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mac_internet_sharing-0.1.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.0 kB
Release files / mac_internet_sharing-0.1.4.tar.gz
| Download URL | mac_internet_sharing-0.1.4.tar.gz |
|---|---|
| Size | 12.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5cf933d3d648880ee90da5eb37e2b0c79b06e312aedb455701ceddc54cff3a28
|
|
BLAKE2b-256 checksum How to use checksums |
84c467bff91b5f5ddadd628327322afe4ca7305fab7a137095c97f59fce4eb03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Release files / mac_internet_sharing-0.1.4-py3-none-any.whl
| Download URL | mac_internet_sharing-0.1.4-py3-none-any.whl |
|---|---|
| Size | 11.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b01d635b45a4758f64bb36a3b653c713f55b26ad677212a48d0722362cf5cfde
|
|
BLAKE2b-256 checksum How to use checksums |
b7b013d8958a1267ae894e9e55dcc83e7ffab7b051cbc87f120773adf5b915be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|