Updating the wiki and adding the new post

This commit is contained in:
ngn 2024-02-21 23:36:29 +03:00
parent b5feb4fbbd
commit c475fd9916
7 changed files with 117 additions and 26 deletions

View File

@ -19,8 +19,10 @@ follow the development of the project:
<li><k class="green">>>></k> Wiki/documentation</li> <li><k class="green">>>></k> Wiki/documentation</li>
<li><k class="green">>>></k> First release</li> <li><k class="green">>>></k> First release</li>
<li><k class="green">>>></k> Expanding <code>desktop</code> repo (100 packages)</li> <li><k class="green">>>></k> Expanding <code>desktop</code> repo (100 packages)</li>
<li><k class="blue">>>></k> Expanding <code>desktop</code> repo (300 packages)</li> <li><k class="green">>>></k> Expanding <code>desktop</code> repo (300 packages)</li>
<li><k class="red">>>></k> Expanding the wiki</li> <li><k class="blue">>>></k> Expanding the wiki</li>
<li><k class="blue">>>></k> Expanding <code>desktop</code> repo (500 packages)</li>
<li><k class="red">>>></k> TUI/GUI installer</li>
</ul> </ul>
## Contributing ## Contributing

6
news/stable.json Normal file
View File

@ -0,0 +1,6 @@
{
"id": "stable",
"title": "Moving towards a more stable experience",
"date": "21/02/24",
"author": "ngn"
}

42
news/stable.md Normal file
View File

@ -0,0 +1,42 @@
24.01 have just been released. There are bunch of new stuff to go over this time, so let's get
started!
## A more stable experience
One of the goals of this distro was to offer a stable experience, however lately I have been using the official
repos as a testing ground. There were bunch of broken packages being shipped, so to prevent this, I have came up
with a new repo structure.
All the "stable" packages will now be shipped in the release specific repo. For MatterLinux 24, this repo is
`https://24.matterlinux.xyz`. All the unstable development packages will be shipped in `https://next.matterlinux.xyz`.
Unstable development packages will be moved to the stable repo when they are ready.
For now the old URL (`pkgs.matterlinux.xyz`) points to the `24.matterlinux.xyz` to prevent breaking old systems.
If you are still using `pkgs.matterlinux.xyz` in the `mp` configuration (`/etc/mp/cfg`), then move over to `24.matterlinux.xyz`
as soon as possible.
## Better standards for development
I have updated the [contribution wiki page](/wiki/contribute), adding better standards that every developer should follow
for a better development experience. I have also added a new wiki page for [reporting bugs](/wiki/bugs) and I have added
issue templates to the git repositories.
## THE HOLY BAR
With the new 24.17 and 24.18 release of MatterLinux Pacakge Manager (`mp`), I have added a bar for operations such as
downloading files, extracting files, deleting files etc. I have also added initial support for internalization and fixed
some little bugs.
## LOTS of new packages!
`desktop` repo has now more than 300 packages, these new packages include Emacs, Lightdm, XFCE4, Network Manager and more!
And there are even more packages on the way, see the [`TODO.md`](https://git.matterlinux.xyz/Matter/desktop/src/branch/main/TODO.md)
for the `desktop` repository to check whats on the way.
## New tool: `xcfg`
I wrote a little script that is similar to the `xwmconfig` from Slackware. `xcfg` lets you install different available desktop
environments and window managers. It also adds needed `.xinitrc` configuration for the desktop of your choice. You can install
`xcfg` from the `desktop` repo.
## What's next?
There will be bunch of new packages, that's for sure, but a part from that, I think I may start working on a GUI or TUI
based installer. Or I may configure an installer such as [Calamares](https://calamares.io/). Not really sure on that.
Anyway, I think that will be all for now, see you in the next post!

View File

@ -10,9 +10,11 @@ page of Gitea is disabled. So in order to register an account, send a email to t
for your account (second one will be used for registration if the first one is unavailable). Then for your account (second one will be used for registration if the first one is unavailable). Then
wait for a reply containing further instructions. wait for a reply containing further instructions.
**Important:** Do not use the Gitea instance for hosting your own projects/repositories, personal > **Important**
repositories (A.K.A. repositories not forked for PRs) will be deleted. If you insist on creating >
personal repositories your account will be deleted. > Do not use the Gitea instance for hosting your own projects/repositories, personal
> repositories (A.K.A. repositories not forked for PRs) will be deleted. If you insist on creating
> personal repositories your account will be deleted.
## Issues ## Issues
To report a bug, to ask questions or to request a feature, first find the related repository. To report a bug, to ask questions or to request a feature, first find the related repository.
@ -23,6 +25,11 @@ detailed description for the issue. Finally create the issue and patiently wait
If you want to make changes and merge them to the project, first fork the related repository. If you want to make changes and merge them to the project, first fork the related repository.
Then clone the forked repository and make the changes you want. Then clone the forked repository and make the changes you want.
> **Important**
>
> Do not make multiple changes in one commit, for example adding a feature and fixing a bug
> in the same commit is a bad idea. Separate different changes to different commits
**Make sure to use correct indenting!**. MatterLinux projects uses **2 spaces** for indenting. **Make sure to use correct indenting!**. MatterLinux projects uses **2 spaces** for indenting.
Configure your editor so it uses the same indenting. Here is an example configuration for the Configure your editor so it uses the same indenting. Here is an example configuration for the
`vim` editor: `vim` editor:
@ -34,9 +41,44 @@ set shiftwidth=2
set smarttab set smarttab
``` ```
After making the changes, commit them with a descriptive message. Do not use long commit messages, And here is a more extended configuration for general usage:
instead add a description to your commit. **Make sure the email you are using for signing the ```
commit matches with your Gitea account email.** set tabstop=2
set softtabstop=0
set expandtab
set shiftwidth=2
set smarttab
set fileencoding="utf-8"
set hlsearch
set ignorecase
set mouse=a
set smartcase
set smartindent
set noswapfile
set pumheight=10
set undofile
set scrolloff=8
set sidescrolloff=8
set number
set relativenumber
set backspace=indent,eol,start
if !isdirectory("/tmp/undos")
call mkdir("/tmp/undos", "", 0700)
endif
set undodir=/tmp/undos
set undofile
syntax on
```
After making the changes, commit them using the following format:
```
<fix/feature>: <description>
```
Do not use long commit messages, instead add a description to your commit if needed. **Make sure the email you are
using for signing the commit matches with your Gitea account email.**
After pushing your changes create a pull request (PR) to the original project. Write a After pushing your changes create a pull request (PR) to the original project. Write a
detailed description for the PR, explain the changes you have made, explain why you made detailed description for the PR, explain the changes you have made, explain why you made

View File

@ -11,10 +11,10 @@ package in the desktop repo.
After installing `matter-mirror`, specify an URI and an output directory (files will be downloaded After installing `matter-mirror`, specify an URI and an output directory (files will be downloaded
into the output directory). For example to mirror the `base` repo from into the output directory). For example to mirror the `base` repo from
`https://pkgs.matterlinux.xyz/base` to `base_mirror` directory: `https://24.matterlinux.xyz/base` to `base_mirror` directory:
``` ```
$ mkdir base_mirror $ mkdir base_mirror
$ matter-mirror -u https://pkgs.matterlinux.xyz/base -o base_mirror $ matter-mirror -u https://24.matterlinux.xyz/base -o base_mirror
``` ```
To serve the mirror, you can setup a web server such as `nginx`, or you can setup a FTP To serve the mirror, you can setup a web server such as `nginx`, or you can setup a FTP
@ -39,10 +39,12 @@ that you can use. To add your mirror to this list get in contact with the mainta
> from the list. > from the list.
### Official repos ### Official repos
| Repo | URI | Location | | Repo | Release | URI | Location |
| ------- | -------------------------------------- | ----------- | | ------- | ------- | -------------------------------------- | ----------- |
| base | `https://pkgs.matterlinux.xyz/base` | 🇹🇷 Turkey | | base | 24 | `https://24.matterlinux.xyz/base` | 🇹🇷 Turkey |
| desktop | `https://pkgs.matterlinux.xyz/desktop` | 🇹🇷 Turkey | | desktop | 24 | `https://24.matterlinux.xyz/desktop` | 🇹🇷 Turkey |
| base | none | `https://next.matterlinux.xyz/base` | 🇹🇷 Turkey |
| desktop | none | `https://next.matterlinux.xyz/desktop` | 🇹🇷 Turkey |
### Mirrors ### Mirrors
Currently there are no available mirrors. Currently there are no available mirrors.

View File

@ -18,16 +18,16 @@ from the README.
Configuration file for `mp` can be found at `/etc/mp/cfg`. This file is used specify repos and Configuration file for `mp` can be found at `/etc/mp/cfg`. This file is used specify repos and
configure general settings. configure general settings.
Here is the configuration shipped with the releases: Here is the configuration shipped with the MatterLinux 24 releases:
``` ```
[general] [general]
tmpdir = /tmp/mp tmpdir = /tmp/mp
[base] [base]
uri = https://pkgs.matterlinux.xyz/base uri = https://24.matterlinux.xyz/base
[desktop] [desktop]
uri = https://pkgs.matterlinux.xyz/desktop uri = https://24.matterlinux.xyz/desktop
``` ```
Lets start by breaking down the `[general]` section: Lets start by breaking down the `[general]` section:

View File

@ -18,20 +18,20 @@ Repo metadata contains information about the repo itself. Such as the repo name,
author and the public key used to sign the packages. author and the public key used to sign the packages.
This metadata can be found in the `repo` file at the root of the repo. For example This metadata can be found in the `repo` file at the root of the repo. For example
the repo metadata for `https://pkgs.matterlinux.xyz/base` is located at the repo metadata for `https://24.matterlinux.xyz/base` is located at
`https://pkgs.matterlinux.xyz/base/repo`. `INI` format is used for this metadata file. `https://24.matterlinux.xyz/base/repo`. `INI` format is used for this metadata file.
### Package List ### Package List
A list containing all packages and all the package metadata can be found in an A list containing all packages and all the package metadata can be found in an
archive file named after the repo. For example the package list for archive file named after the repo. For example the package list for
`https://pkgs.matterlinux.xyz/base` is located at `https://pkgs.matterlinux.xyz/base/base.tar.gz`. `https://24.matterlinux.xyz/base` is located at `https://24.matterlinux.xyz/base/base.tar.gz`.
This archive file contains a file named `pkgs`, which contains repo package list in the This archive file contains a file named `pkgs`, which contains repo package list in the
`INI` format. It contains the package names, descriptions, versions, sums and dependencies. `INI` format. It contains the package names, descriptions, versions, sums and dependencies.
### Repo Source ### Repo Source
Source for a repo has a simple structure that also contains all the source files for the packages. Source for a repo has a simple structure that also contains all the source files for the packages.
For example lets take a look the structure of the [`base`](https://pkgs.matterlinux.xyz/base) For example lets take a look the structure of the [`base`](https://24.matterlinux.xyz/base)
repo source: repo source:
``` ```
├── dist ├── dist
@ -76,12 +76,9 @@ small script that is used to sign all the packages in the `dist` directory if th
without the signatures. without the signatures.
# Usage # Usage
MatterLinux provides 2 different official repos: MatterLinux releases offer 2 different repos, `base` and `desktop`. There are also development/testing
`base` and `desktop` repos ("next repos"). URLs for these repos and the mirrors can be found at the [mirrors page](/wiki/mirrors).
- [`base`](https://pkgs.matterlinux.xyz/base): Contains base system packages such as `glibc`, `systemd`,
`linux` etc.
- [`desktop`](https://pkgs.matterlinux.xyz/desktop): Additional packages users may want to install
for a more ideal desktop system.
This repos can provide packages for users, these packages can be managed using the This repos can provide packages for users, these packages can be managed using the
[MatterLinux Package Manager (`mp`)](https://git.matterlinux.xyz/matter/mp). For more information see the page for [package management](/wiki/package_man). [MatterLinux Package Manager (`mp`)](https://git.matterlinux.xyz/matter/mp). For more information see the page for [package management](/wiki/package_man).