# tracker | MatterLinux package tracker
Soruce code of MatterLinux's package tracker, located at
[tracker.matterlinux.xyz](https://tracker.matterlinux.xyz)

### Configuration
Tracker can be configured to track different repos. Configuration
is stored in the `config.json` file. Here is the configuration for tracking
official MatterLinux 24 repos:
```json
{
  "interval": 5,
  "pools": [
    {
      "display": "base (stable)",
      "name": "base",
      "dir": "/srv/pools/base",
      "branch": "main",
      "source": "https://git.matterlinux.xyz/Matter/base",
      "url": "mptp://stable.matterlinux.xyz/base"
    },
    {
      "display": "desktop (stable)",
      "name": "desktop",
      "dir": "/srv/pools/desktop",
      "branch": "main",
      "source": "https://git.matterlinux.xyz/Matter/desktop",
      "url": "mptp://stable.matterlinux.xyz/desktop"
    },
    {
      "display": "server (stable)",
      "name": "server",
      "dir": "/srv/pools/server",
      "branch": "main",
      "source": "https://git.matterlinux.xyz/Matter/server",
      "url": "mptp://stable.matterlinux.xyz/server"
    }
  ]
}
```

### Deployment
Web server can be built and deployed with docker compose using the following
configuration file:
```yaml
version: "3"

services:
  tracker:
    image: mattertracker
    restart: unless-stopped
    build:
      context: ./
    ports:
      - "127.0.0.1:9877:9877"
    volumes:
      - "./config.json:/app/config.json:ro"
```
After saving the configuration file, you can build and run the docker container:
```bash
docker-compose up -d
```