Skip to main content

Dotfiles management package

Reason this release was yanked:

bad

Project description

🧠 Welcome to Machineconfig

Machineconfig is a cli-based Digital Life Manager — It's called so because no existing category of software fully captures its scope. At the same time, it is a Package Manager, Configuration Manager, Automation Tool, Dotfiles Manager, Data Solution, and Code Manager, among other functionalities covered, all rolled into one seamless experience.

💡 Motivation

But why do we need such a tool to combine all those functionalities?? Because you need one tool to manager your stack and dev-environment, put it together and maintain it. Consider this concrete scenario: When setting up a new machine, VM, or Docker container, you often face dependency chains like this:

flowchart TD
    A["Need to setup my [dev] environment"] --> B["need my tool x, e.g.: yadm"]
    B --> C["Requires git"]
    C --> D["Requires package manager, e.g. brew"]
    D --> E["Requires curl"]
    E --> F["Requires network setup / system update"]
    F --> G["Requires system configuration access"]
    G --> H["Finally ready to start setup the tool x."]

Machineconfig builds on shoulder of giants. A suite of best-in-class stack of projects on github are used, the most starred, active and written in Rust tools are used when possible. The goal is to provide a seamless experience that abstracts away the complexity of setting up and maintaining your digital environment. The goal of machineconfig is to replicate your setup, config, code, data and secrets on any machine, any os, in 5 minutes, using minimal user input. Then, from that point, machineconfig will help you maintain, update, backup and sync your digital life across all your devices, automatically.

⚙️ Functional Overview

Category Comparable Tools Description
Package Manager winget, apt, brew, nix Installs and manages software packages across systems.
Configuration Manager Ansible, Chef, Puppet Configures and maintains system‐level preferences.
Automation Tool Airflow, Prefect, Dagster, Celery Automates repetitive tasks, pipelines, orchestration.
Dotfiles Manager chezmoi, yadm, rcm, GNU Stow Synchronises dotfiles & personal configs across systems.
Data Solution rclone, rsync Handles backups, mirroring and secure file sync.
Code Manager strong‐box, Vault Manages and protects code snippets, secrets and creds.

Install On Windows:

# install tool the tool only:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"  # Skip if UV is already installed
uv tool install --upgrade --python 3.14 machineconfig
# interactive install of machineconfig and following on to run it and make basic machine configuration (RECOMMENDED):
iex (iwr bit.ly/cfgwindows).Content  # Or, if UV is installed: iex (uvx machineconfig define)
# Quick install and configure (optionals are accepted by default):
iex (iwr bit.ly/cfgwq).Content

Install On Linux and MacOS

# install the tool only:
curl -LsSf https://astral.sh/uv/install.sh | sh  # Skip if UV is already installed
uv tool install --upgrade --python 3.14 machineconfig
# interactive install of machineconfig and following on to run it and make basic machine configuration (RECOMMENDED):
. <(curl -L bit.ly/cfglinux) # Or, if UV is installed: . <(uvx machineconfig define)

Author

Alex Al-Saffar. email

Contributor

Ruby Chan. email

Alex's github activity graph

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

machineconfig-7.70.tar.gz (500.8 kB view details)

Uploaded Source

Built Distribution

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

machineconfig-7.70-py3-none-any.whl (670.6 kB view details)

Uploaded Python 3

File details

Details for the file machineconfig-7.70.tar.gz.

File metadata

  • Download URL: machineconfig-7.70.tar.gz
  • Upload date:
  • Size: 500.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.7

File hashes

Hashes for machineconfig-7.70.tar.gz
Algorithm Hash digest
SHA256 a51c9ef165be7a90f3be6b71b946ce28ce4b8e6b38900ab0d7723ed29ae46e4f
MD5 5c1c1c25ef7405ced3a315c1b6e0d765
BLAKE2b-256 a0fe8da14c6bab42ef359d88d54651e11a19b75c8574ebe04a56d9c7138260ca

See more details on using hashes here.

File details

Details for the file machineconfig-7.70-py3-none-any.whl.

File metadata

File hashes

Hashes for machineconfig-7.70-py3-none-any.whl
Algorithm Hash digest
SHA256 315169733855eec0db9bc0b4b4f63fd3b0c53b34e76cbe3d159e74749298c4fe
MD5 ed36c60fbf589460f69acc778d9301ae
BLAKE2b-256 cc49cf0d700b68fe6cc05a97068337d0a95221f85e8f5eb6c41c64e78994a101

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