https://github.com/mightycreak/mesamatrix
PHP script that parse the text file from the mesa git tree and format it in HTML.
https://github.com/mightycreak/mesamatrix
Last synced: about 1 year ago
JSON representation
PHP script that parse the text file from the mesa git tree and format it in HTML.
- Host: GitHub
- URL: https://github.com/mightycreak/mesamatrix
- Owner: MightyCreak
- License: agpl-3.0
- Created: 2014-08-23T14:34:17.000Z (almost 12 years ago)
- Default Branch: main
- Last Pushed: 2024-12-15T19:01:03.000Z (over 1 year ago)
- Last Synced: 2025-03-29T13:03:46.355Z (about 1 year ago)
- Language: PHP
- Homepage: https://mesamatrix.net
- Size: 1.56 MB
- Stars: 124
- Watchers: 9
- Forks: 29
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Mesamatrix
Mesamatrix is a PHP application that parses information from a text file in the
Mesa Git repository ([features.txt](https://gitlab.freedesktop.org/mesa/mesa/blob/main/docs/features.txt))
and formats it in HTML.
Official website:
## Installation
### Prerequisites
Mesamatrix requires the following software:
* [Composer](https://getcomposer.org/)
* [Git](https://git-scm.com)
* [PHP](https://www.php.net/) 7.4 or higher, with these packages:
* [php-json](https://www.php.net/manual/book.json.php)
* [php-xml](https://www.php.net/manual/book.simplexml.php)
### Install steps
Clone the Mesamatrix repository:
```sh
git clone git@github.com:MightyCreak/mesamatrix.git
```
Jump into the directory and install the dependencies with Composer:
```sh
cd mesamatrix
composer install
```
### Configuration (optional)
There is a default config file in [`config/config.default.php`](./config/config.default.php).
It provides default values for the application, but is overridden by the
optional `config/config.php`.
For instance, to change the log level: create a `config/config.php` file and
copy this contents:
```php
array(
"log_level" => Log::DEBUG,
),
);
```
### Initial setup
For the initial setup, run the `mesamatrixctl` tool to clone the Mesa Git
repository and generate the XML file:
```sh
./mesamatrixctl setup
```
### Update Mesa information
Once setup is done, you can run the two commands that are needed to get the
latest information from Mesa:
```sh
./mesamatrixctl fetch
./mesamatrixctl parse
```
These commands can be put into a crontab or similar scheduling facility, for
automated operation of your Mesamatrix installation.
### Set up the web server
#### For developers
As a developer, an easy way to spawn up a PHP server is by running this
command:
```sh
php -S 0.0.0.0:8080 -t public
```
#### For deployment
In order to deploy Mesamatrix on a server, the web server root must point to
the `public` directory. Be aware not to give access to more than just this
directory.
At this point, you are done! Open your site in a web browser, and hopefully you
will see the matrix of Mesa features!
## CLI tool
The `mesamatrixctl` tool can be used to administer your Mesamatrix
installation. It outputs very little by default, but can become more verbose
when passed `-v`, `-vv` or `-vvv` for normal output, verbose output or debug
output respectively.
Run `./mesamatrixctl list` to see the available commands, or
`./mesamatrixctl help` for more detailed help.
## License
Mesamatrix is available under the AGPLv3, a copy of which is available in the
[`LICENSE`](./LICENSE) file.
### Third-party code libraries
* [jQuery](https://jquery.com/) is available under the MIT License.
* [jQuery Tipsy](http://onehackoranother.com/projects/jquery/tipsy/) is
available under the MIT License.
* PSR Log is available under the MIT License.
* [Symfony](https://symfony.com/) is available under the MIT License.
### Media files
The Mesamatrix banner image was created by Robin McCorkell, and is licensed
under the Creative Commons Attribution-ShareAlike 4.0 International license.
Go tweak it, and send us your improvements!
The RSS feed icon is freely available from the Mozilla Foundation at
.
The GitHub 'Fork me' ribbon is available under the MIT license.