content/wiki/pkg/mc.md

3.3 KiB

On this page you will learn how you can use MatterLinux configuration manager.

MatterLinux Configuration Manager

mc or the MatterLinux configuration manager, is a simple program that allows you to easily install and package your configurations.

Installing mc

mc can be installed with mp (MatterLinux package manager), it's located in the desktop repo:

# mp-install mc

In order to run mc as a non-root user, you will need to install and configure doas or sudo.

Packaging your configuration

First of all you should create and empty git repository:

$ mkdir my-config && cd my-config
$ git init

After adding a readme and a license (or any other files you might like), create an mc.cfg file. This file should follow the simple INI syntax. First section you should create in this file, is the details section:

[details]
name = my-config
desc = My very cool configuration
author = me
keywords = cool,bright,rofi 
  • name: Name of your configuration
  • desc: A short description (less then 200 chars)
  • author: Author of the configuration
  • keywords: A comma-separated list of keywords for your configuration

The next sections you will add should contain individual configuration files different programs. These sections are called "targets":

[rofi]
require = rofi
desc = rofi launcher configuration
dst = .config/rofi/config.rasi
src = src/rofi/config.rasi
  • Section name: is the name of the target, it should explain what the target is for (in this case the target is for rofi configuration, so its named rofi)
  • require: A comma-separated list of packages that this configuration requires
  • desc: A simple description explaining what the target is for
  • dst: Where should the configuration should be copied during the installation, mc will append the current user's home directory to this path
  • src: Where should the configuration should be copied during the packaging, this path is relative to the repository's path

After adding all the targets, run the mc-gen command, specifying the local path to the git repository that contain the mc.gen file. mc will copy all the target files/directories from the dst to the src. When you are done, feel free to publish the git repository and share it.

Installing configurations

To install a configuration you need to use the mc-pull command. After the command, specify a directory, a HTTP(S) git URL, or just specify a name:

$ mc-pull messier87

If you just specify a name, mc will look for that configuration in the config hub. In this case, mc will pull down the messier87 configuration, and walk you through the installation by asking yes/no questions.

After the installation mc will install all the requirements using mp, and you will be ready to go!

Important

Please check the mc.cfg file before installing third party configuration packages (packages that are not in the config hub), as they may include malicious configuration files that may harm your system.

Config Hub

MatterLinux offers a simple configuration hub, that you can use to find official configuration packages. You can also add your own configuration to the config hub, just create a issue or pull request in the website content repository.