new: add config hub content

This commit is contained in:
ngn 2024-05-05 21:21:10 +03:00
parent 8797386433
commit 96055b381b
11 changed files with 103 additions and 5 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 MiB

9
configs.json Normal file
View File

@ -0,0 +1,9 @@
{
"list": [
{
"image": "assets/configs/messier87.png",
"redirect": "https://git.matterlinux.xyz/Matter/messier87.git",
"url": "https://git.matterlinux.xyz/Matter/messier87/raw/branch/main/mc.cfg"
}
]
}

4
configs.md Normal file
View File

@ -0,0 +1,4 @@
List of configuration packages (dotfiles) for MatterLinux. These simple configurations allow you to easily set up
your desktop and they create a baseline for all of your own configurations. You can install these configurations
using the `mc` tool. [Learn more](http://127.0.0.1:9878/wiki/configuration).

View File

@ -1,5 +1,5 @@
For installation instructions, please [see the wiki](/wiki). You can For installation instructions, please [see the wiki](/wiki). You can
download the older versions from the [directory listing](https://rel.matterlinux.xyz/24/) download the older versions from the [directory listing](https://rel.matterlinux.xyz/24/).
Signatures can be verified using `gpg`. To do so, download the maintainer's key: Signatures can be verified using `gpg`. To do so, download the maintainer's key:
``` ```

View File

@ -18,6 +18,7 @@ edit a page or create a new page, make a [pull request](/wiki/contribute) to [co
| [Create a package](/wiki/create_pkg) | Learn how you can create and add a package to the official repos | | [Create a package](/wiki/create_pkg) | Learn how you can create and add a package to the official repos |
| [Package Management](/wiki/package_man) | Learn about MatterLinux package manager | | [Package Management](/wiki/package_man) | Learn about MatterLinux package manager |
| [Mirrors](/wiki/mirrors) | Discover repo mirrors and learn how you can setup one | | [Mirrors](/wiki/mirrors) | Discover repo mirrors and learn how you can setup one |
| [Working with `mc`](/wiki/mc) | Learn how you can use `mc` to install and package your configs |
## Other ## Other
| Name | Description | | Name | Description |

View File

@ -1,4 +1,4 @@
On this you will learn how you can create your first On this page, you will learn how you can create your first
MatterLinux package for the official repos. MatterLinux package for the official repos.
## Pre-requirements ## Pre-requirements

6
wiki/pkg/mc.json Normal file
View File

@ -0,0 +1,6 @@
{
"id": "mc",
"title": "Working with `mc`",
"author": "ngn",
"date": "05/05/24"
}

78
wiki/pkg/mc.md Normal file
View File

@ -0,0 +1,78 @@
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`](/wiki/post_install).
### 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](/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](/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 in the [website content repository](https://git.matterlinux.xyz/Matter/content/issues).

View File

@ -2,5 +2,5 @@
"id": "mirrors", "id": "mirrors",
"title": "Mirrors", "title": "Mirrors",
"author": "ngn", "author": "ngn",
"date": "21/02/24" "date": "05/05/24"
} }

View File

@ -2,5 +2,5 @@
"id": "release", "id": "release",
"title": "Releases", "title": "Releases",
"author": "ngn", "author": "ngn",
"date": "21/02/24" "date": "05/05/24"
} }

View File

@ -1,4 +1,4 @@
On this package you will find information about MatterLinux release cycle and On this page, you will find information about MatterLinux release cycle and
version numbering. version numbering.
## Release Cycle ## Release Cycle