diff --git a/index.md b/index.md index b345896..923c88d 100644 --- a/index.md +++ b/index.md @@ -1,5 +1,5 @@ # A tiny GNU/Linux distribution -MatterLinux is a tiny [free/libre](https://www.gnu.org/philosophy/free-sw.html) and +MatterLinux is a tiny and independent [free/libre](https://www.gnu.org/philosophy/free-sw.html) and [open source](https://opensource.com/resources/what-open-source) GNU/Linux distribution for `amd64` systems. It has its own package management system and its own package repos. All source code for MatterLinux is licensed under GPLv3 and available on the diff --git a/wiki/chat.md b/wiki/chat.md index c675986..4ac588b 100644 --- a/wiki/chat.md +++ b/wiki/chat.md @@ -1,5 +1,5 @@ If you are interested in the project and if you want to meet with other people -who are interested, feel free to join any of the chat rooms on the table: +who are also interested, feel free to join any of the chat rooms on the table: | Platform | Admin | Topic | Language | Link | | ------------- | ------------------------ | -------------------------- | ------------- | ------- | @@ -8,9 +8,9 @@ who are interested, feel free to join any of the chat rooms on the table: ## Rules Here are the rules for all the chat rooms: -1. Stay on the topic. -2. Be respectful to others. -3. No spam. -4. No advertising. -5. No NSFW/NSFL content. -6. Only chat in the specified language. +1. Stay on the topic +2. Be respectful to others +3. No spam +4. No advertising +5. No NSFW/NSFL content +6. Only chat in the specified language diff --git a/wiki/intro.json b/wiki/intro.json new file mode 100644 index 0000000..40a9394 --- /dev/null +++ b/wiki/intro.json @@ -0,0 +1,6 @@ +{ + "id": "intro", + "title": "Introduction", + "author": "ngn", + "date": "15/01/24" +} diff --git a/wiki/intro.md b/wiki/intro.md new file mode 100644 index 0000000..8f9d6ae --- /dev/null +++ b/wiki/intro.md @@ -0,0 +1,43 @@ +So you are interested in MatterLinux? And you are 100% sure there is no +better way to spend your valuable time? Well you are in the right place! + +## Related Links +- [Learn about free/libre software](https://www.gnu.org/philosophy/free-sw.html) +- [Learn about open source](https://opensource.com/resources/what-open-source) +- [Learn about GNU](https://www.gnu.org/) +- [Learn about Linux](https://kernel.org/linux.html) + +## What is MatterLinux? +MatterLinux is *tiny* and independent free/libre and open source (FLOSS) GNU/Linux +distribution. It has a tiny independent packaging system and tiny independent +build tools and scripts. It supports all `amd64` (`x86_64`) systems. + +## Can I install MatterLinux? +MatterLinux is a distribution designed for GNU/Linux "enthusiasts". So if you +are new to GNU/Linux, and not sure what you are doing, then you should probably +look for another distribution. + +Currently it's not really possible to daily drive MatterLinux as it doesn't have +a lot of packages that you may need. Yeah, you can install it, but you cannot get +really far after the base installation. **So install MatterLinux only if**: + +- ...you want to try it out +- ...you want to [contribute](/wiki/contribute) + +## What do I need for the installation? +Preferably, do the installation in virtual machine. Provide the virtual machine at least +10G disk space, 1GB memory and 1 CPU. You should also have a working internet connection. + +To complete the installation you need to boot from a live GNU/Linux USB/CD/DVD. To create a +live GNU/Linux USB/CD, you will need a GNU/Linux ISO. MatterLinux do provide ISOs for +installation but you can really use any GNU/Linux ISO you want. + +**Note for bare metal installation:** MatterLinux ISO do **NOT** support wireless connection. + +To burn the ISO to your USB/CD/DVD, you can use the `dd` command: +``` +dd if=[path to ISO] of=/dev/[name of the device] bs=8M status=progress +``` + +## I booted from the ISO, now what? +Continue with the [installation page](/wiki/install). diff --git a/wiki/main.md b/wiki/main.md index 0947b0b..7221a0d 100644 --- a/wiki/main.md +++ b/wiki/main.md @@ -7,18 +7,19 @@ don't have a link yet. ## Installation | Name | Description | | --------------------------- | ----------------------------------------------- | -| Introduction | Learn about MatterLinux and other general stuff | +| [Introduction](/wiki/intro) | Learn about MatterLinux and other general stuff | | Installation | Learn how to install a base MatterLinux system | | Installation (Any% Edition) | Speedrunner edition of the Installation page | | Post-Installation | Make your system (somewhat) usable | ## Packaging -| Name | Description | -| -------------------------------------- | ----------------------------------------------------- | -| [Repo](wiki/repo) | Learn about MatterLinux repos and how they work | -| [Package](wiki/package) | Learn about MatterLinux packages | -| [Package Management](wiki/package_man) | Learn about MatterLinux package manager | -| [Mirrors](wiki/mirrors) | Discover repo mirrors and learn how you can setup one | +| Name | Description | +| --------------------------------------- | ----------------------------------------------------- | +| [Releases](/wiki/release) | Learn about MatterLinux release cycle | +| [Repo](/wiki/repo) | Learn about MatterLinux repos and how they work | +| [Package](/wiki/package) | Learn about MatterLinux packages | +| [Package Management](/wiki/package_man) | Learn about MatterLinux package manager | +| [Mirrors](/wiki/mirrors) | Discover repo mirrors and learn how you can setup one | ## Other | Name | Description | diff --git a/wiki/pkg_man.json b/wiki/pkg_man.json index f1d11b2..185322b 100644 --- a/wiki/pkg_man.json +++ b/wiki/pkg_man.json @@ -2,5 +2,5 @@ "id": "package_man", "title": "Package Management", "author": "ngn", - "date": "07/01/24" + "date": "15/01/24" } diff --git a/wiki/pkg_man.md b/wiki/pkg_man.md index 5640659..a2e3861 100644 --- a/wiki/pkg_man.md +++ b/wiki/pkg_man.md @@ -46,12 +46,12 @@ actual repo name**. Repo options are: **IMPORTANT: DO NOT DISABLE SIGNATURE VERIFICATION IF YOU DON'T KNOW WHAT YOU ARE DOING! THERE IS NO WAY TO CONFIRM IF THE PACKAGES ARE LEGIT WITHOUT THE SIGNATURE VERIFICATION!** -### MP\_ROOT -Another configuration option that you can use is the `MP_ROOT` option. Unlike the other options, -this option is not specified in the configuration file, it's specified as an enviroment variable. +### Environment options +`mp` also has a few other options that you specify as an environment variable. -This option lets you change the target root directory. By default `mp` install all the packages to `/`, -stores all the information under the `/` etc. By changing the target root directory you can change this. +One of these is the `MP_ROOT` option. This option lets you change the target root directory. +By default `mp` install all the packages to `/`, stores all the information under the `/` etc. +By changing the target root directory you can change this. For example lets say you want to install all the packages to `/tmp/testroot`. To do so, first you will need to setup a root file system structure inside `/tmp/testroot`: @@ -71,6 +71,19 @@ Now you can use `mp` with the `MP_ROOT` variable, for example: # MP_ROOT=/tmp/testroot mp-install which ``` +Another one of these environment options is the `MP_YES` option. By default operations such as +installing packages, updating packages and removing packages will ask you to confirm the operation +using an interactive yes/no prompt. To disable this prompt and confirm all operations by default, +you can set the `MP_YES` environment variable. You can set it to whatever you want, just make sure +it's set. + +`MP_NORET` is another option that you can set. By default `mp` will print the return status for each +command, you can disable this by setting `MP_NORET` to whatever you want. + +The last one of these options is the `MP_QGREP` option. This option is only useful if you are using +the query command. If set, `mp` will print grep-able output for this command. Again, you can set it +to whatever you want. + ### Syncing Repos To sync remote repo information and package lists, you can use the `mp-repo` command. After running it `mp` will: @@ -140,11 +153,26 @@ the packages, overwriting old files overwriting the old entries. ### Searching Packages -You can search for packages in the repos using the `mp-search` command: +You can search for packages in the repos using the `mp-search` command. +For example, this command will return a list of all the packages that contain `lib` +in their name: ``` -# mp-search which +# mp-search lib +``` +After running this command, `mp` will: + +1. Check all the repos for any packages that contain `lib` in the name +2. Print the package +3. Print the count of the results + +### Querying packages +You can get more information about a package by querying it. For example to get +more information about the `which` package: +``` +# mp-query which ``` This will provide the following information about the package: + - Name of the package - Repo that the package is in - Description diff --git a/wiki/release.json b/wiki/release.json new file mode 100644 index 0000000..53b8505 --- /dev/null +++ b/wiki/release.json @@ -0,0 +1,6 @@ +{ + "id": "release", + "title": "Releases", + "author": "ngn", + "date": "15/01/24" +} diff --git a/wiki/release.md b/wiki/release.md new file mode 100644 index 0000000..ad68ec2 --- /dev/null +++ b/wiki/release.md @@ -0,0 +1,36 @@ +On this package you will find information about MatterLinux release cycle and +version numbering. + +## Release Cycle +MatterLinux will make a new release once a year. A new release means every package will be updated +to a more recent version. Packages will replace the old ones, +meaning old packages will no longer be available and support for the old release will end. +If you are using an old release, you will able to update to the latest one by running a +full update using the [MatterLinux Package Manager](/wiki/package_man). + +During the testing of the new release, repos for the new release will be located +at [next.matterlinux.xyz](https://next.matterlinux.xyz). + +### Package Updates +Packages usually won't be updated to a more recent version during the life of a MatterLinux release, +however sometimes packages may be updated for bug fixes, security issues and minor improvements. + +### ISOs and Base Archives +ISO and base archive file for a release may update before the next release to keep the +packages in these archive files and the ISOs up-to-date. + +## Version Numbering +MatterLinux and all it's projects are version numbered after the year. +For example MatterLinux release for the year 2024 is versioned "MatterLinux 24". + +Minor numbers may be added for other releases. For example the 2nd release of the +MatterLinux 24 ISO would be named "MatterLinux 24.01". + +Similarly 15th release of the MatterLinux package manager for the year 2024 +is versioned "24.14". + +## Planned Release Dates +| Version | Release Date | EOL | +| -------------- | ------------ | ------- | +| MatterLinux 24 | 01/2024 | 01/2025 | +| MatterLinux 25 | 01/2025 | ??/???? |