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.5.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.5-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mct_cli-0.2.5.tar.gz
  • Upload date:
  • Size: 26.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.5.tar.gz
Algorithm Hash digest
SHA256 efe4c097c04550939015623ff0e0a388a2ef1f4d08aa894ab15dbc9369678678
MD5 e62f70d2bc716f2190975ba886aa6c58
BLAKE2b-256 c213f894709232dce3bf41361c54012363525947d23662af1838bc4fb51c27d5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mct_cli-0.2.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 0173944863a7e4dda251acbc1acca5273fa34272ae66c6c41687efa2bea12342
MD5 6da47fc030a0080ea3aa933504c5fd99
BLAKE2b-256 3f25dec63c172041ff358fedf151f1cca0d6eba5874a10a517296ad9d8a667e8

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