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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for alpm_conf-0.3.tar.gz
Algorithm Hash digest
SHA256 43dc25d58a9913f97060571f5555ad1aaf3f1fb7980d836a55877ecac5e26c28
MD5 7cef9a8337386c418579954113729847
BLAKE2b-256 59b99a2cc1fc4655435e742b4f755f7762d9ec06f4d9e2b11707bb5695eaf9e6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: alpm_conf-0.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 eca0451979637b5ac81c7c9572adc3d7c700f74c23a84b8c7be092c457cc21c3
MD5 947a7f3d78131b2439bb08cc53313fd3
BLAKE2b-256 8fb44014b538046567d1de3021984c647c612a0ff11bf283284357df6b2a1492

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