Skip to main content

ArchLinux tool to manage /etc configuration files using git.

Project description

[alpm-conf test coverage]

alpm-conf is an ArchLinux tool to manage /etc configuration files using git. It is implemented as a Python package.

Overview

Files installed by pacman in the /etc directory that have been changed by the root user [1] are tracked in the master branch of a git repository created by the alpm-conf create subcommand.

Using the same algorithm used by pacman to install files with a .pacnew extension [2], alpm-conf merges the changes in pacman installed files into the files on the master branch. The alpm-conf sync subcommand is then used to copy these files to the /etc directory.

alpm-conf also tracks changes in files that are created in /etc by the root user such as netctl profiles for example. The files must first be added and commited to the master branch by the alpm-conf user.

Git commands allow to:

  • List the names of files created in /etc by the root user and tracked in the master branch.

  • Print the changes made in the master-tmp branch before running the sync subcommand.

  • Print the changes made by the last alpm-conf update subcommand.

  • Print the differences between the master branch and the files in package archives currently installed by pacman.

Documentation

The documentation is hosted at Read the Docs:

To access the documentation as a pdf document one must click on the icon at the down-right corner of any page. It allows to switch between stable and latest versions and to select the corresponding pdf document.

Requirements

The ArchLinux packages required by alpm-conf are installed with the command:

# pacman -Sy git util-linux alpm-mtree python pyalpm python-zstandard

pyalpm and alpm-mtree are used to access the ArchLinux local database, util-linux provides setpriv allowing to run alpm-conf as root while running git commands as the creator of the git repository.

Installation

Install the python-alpm-conf package from the AUR.

Or install alpm-conf with pip:

$ python -m pip install alpm-conf

Footnotes

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

alpm_conf-0.4.tar.gz (37.3 kB view details)

Uploaded Source

Built Distribution

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

alpm_conf-0.4-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file alpm_conf-0.4.tar.gz.

File metadata

  • Download URL: alpm_conf-0.4.tar.gz
  • Upload date:
  • Size: 37.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.3

File hashes

Hashes for alpm_conf-0.4.tar.gz
Algorithm Hash digest
SHA256 bcceb35b813ca8a69a6f02d54ebd329b4a7fccf715b17da57e66d24fbe6a209c
MD5 7b79fb53bf1e0c5fc15a271ae89b8896
BLAKE2b-256 a773727095d2a1be9ff761f3eaff6649a83224cbd304f86e853061cd9f201ccc

See more details on using hashes here.

File details

Details for the file alpm_conf-0.4-py3-none-any.whl.

File metadata

  • Download URL: alpm_conf-0.4-py3-none-any.whl
  • Upload date:
  • Size: 29.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.3

File hashes

Hashes for alpm_conf-0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 75b90cdedfa8cb2dde43a48087c27f0a6fb49101d9db38e1124c13f2ddbd113f
MD5 d0067450c628f633e16d20a7ca837e1d
BLAKE2b-256 6202846c46d2ea3f57e22fcb93a2436fca1f909e78339689e63f7e6b0187c91f

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