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

Uploaded Python 3

File details

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

File metadata

  • Download URL: mct_cli-0.2.3.tar.gz
  • Upload date:
  • Size: 26.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","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.3.tar.gz
Algorithm Hash digest
SHA256 b9d5562106a828f1125523e4872f796eb6cd5b31b48a6236db7568103e58aec2
MD5 914c03aaa099c3af4d075c6b43b581fd
BLAKE2b-256 2e24028ba077da70594cf02b543575a3cbd480efd30c40e2ff27c2e94f1c20d9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mct_cli-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 16.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8083502c5fcf811a2cacb0ef75979b48ab6887bc44548800af47ce073696bff8
MD5 f6f3626e488e7095a492c954cf40e700
BLAKE2b-256 32c77f1a40081d4895861ea7034581528d26888bda9b2a439c8e38aea6a31c89

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