Skip to main content

macOS Configuration Tools

Project description

macOS Configuration Tools (mct)

A personal collection of CLI tools for managing macOS settings through a simple, intuitive interface.

Features

Currently implemented:

General

  • Check version: mct --version or mct -v - Display the installed version

Dock Management

  • Set dock size: mct dock size <value> (32-128)
  • Show current dock size: mct dock size
  • Auto-hide controls:
    • mct dock hide - Enable auto-hide
    • mct dock show - Disable auto-hide
  • Size lock controls:
    • mct dock lock - Lock dock size
    • mct dock unlock - Unlock dock size
  • Reset options:
    • mct dock reset -s - Reset size to default (64)
    • mct dock reset -h - Reset auto-hide to default (disabled)
    • mct dock reset -l - Reset size lock to default (unlocked)
    • mct dock reset -a - Reset all dock settings

Keyboard Management

  • Key repeat controls:
    • mct keyboard hold - Enable press-and-hold for accented characters
    • mct keyboard repeat - Enable key repeat (disables accents)
  • Reset options:
    • mct keyboard reset -h - Reset key hold to default (enabled)
    • mct keyboard reset -a - Reset all keyboard settings

System Management

  • Touch ID for sudo:
    • mct system touchid - Enable Touch ID authentication for sudo with interactive backup management
    • mct system reset -t - Reset Touch ID sudo configuration from backup
    • mct system reset -a - Reset all system settings to defaults

Planned features:

  • Configuration file support (~/.config/mct/config.toml) for:
    • Setting default values for commands
    • Storing preferred configurations
    • Batch applying multiple settings at once
    • Example configuration:
      [dock]
      default_size = 48
      auto_hide = true
      size_locked = false
      
      [keyboard]
      key_hold = true
      
      [system]
      touch_id_sudo = true
      
  • More dock management options
  • System preferences management
  • And more...

Installation

Using Homebrew (recommended)

# Add the tap repository
brew tap ocolunga/mct-cli

# Install mct-cli
brew install mct-cli

Using pip

pip install mct-cli

Using uv

uv tool install mct-cli

From source

git clone https://github.com/ocolunga/mct.git
cd mct
uv sync
uv run mct --help

Usage Examples

# Show help
mct --help
mct dock --help
mct keyboard --help
mct system --help

# Check version
mct --version

# Dock Examples
mct dock size 48          # Set dock size to 48
mct dock size            # Show current dock size
mct dock hide           # Enable auto-hide
mct dock show           # Disable auto-hide
mct dock lock           # Lock dock size
mct dock unlock         # Unlock dock size
mct dock reset -s -h    # Reset both size and auto-hide

# Keyboard Examples
mct keyboard hold      # Enable press-and-hold for accents
mct keyboard repeat    # Enable key repeat (disable accents)
mct keyboard reset -a  # Reset all keyboard settings

# System Examples
mct system touchid           # Enable Touch ID for sudo with interactive backup
mct system reset -t         # Reset Touch ID sudo configuration from backup
mct system reset -a         # Reset all system settings to defaults

Note: Some commands may require restarting applications to take effect.

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

mct_cli-0.2.7.tar.gz (27.8 kB view details)

Uploaded Source

Built Distribution

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

mct_cli-0.2.7-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

Details for the file mct_cli-0.2.7.tar.gz.

File metadata

  • Download URL: mct_cli-0.2.7.tar.gz
  • Upload date:
  • Size: 27.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mct_cli-0.2.7.tar.gz
Algorithm Hash digest
SHA256 76e32309c4c19a022cfb060506cdb342a3cf0d62927e389f7f44ddb9bac1c6b0
MD5 92bacb5dc2b6c8693ebddbfad2267602
BLAKE2b-256 444bdfba1585f090f85de457ccf4d885f1fca229a8e531d340f97c9c6a158d29

See more details on using hashes here.

File details

Details for the file mct_cli-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: mct_cli-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 16.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for mct_cli-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 c32e4b97c1773d38f619b3dcd157cf23fa33860db6ded1ff66185d335cd61db5
MD5 5f603597fe770606ab22df4f147055d1
BLAKE2b-256 85127eb9650128d8dff0ca3353a4f9d1b5590f9c72270c32b14ea7fd9ea6e95e

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