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.11.tar.gz (28.1 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.11-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mct_cli-0.2.11.tar.gz
  • Upload date:
  • Size: 28.1 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.11.tar.gz
Algorithm Hash digest
SHA256 af0436dfcfb15c3f5206a194a90507ea4b5e13d4ad832b8f596805ee45e4e3d0
MD5 3a47164bf8a5e7069d82a83541dea86d
BLAKE2b-256 3a52b40959965ed9d86d06ef7d5fb65a167a42bfde4472d9151aa373c05a2fbd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mct_cli-0.2.11-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.11-py3-none-any.whl
Algorithm Hash digest
SHA256 65bbec8d6e33036254ba890d4e8e4523fae32384a50c36221656c366cb5f679e
MD5 f5190f2b7b30d15770797635c61d2486
BLAKE2b-256 48e7a1bf2f5697a4bab45b4768bcc5fd38ed5a357889a9b67f1acc69a6c599b3

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