An open API service indexing awesome lists of open source software.

https://github.com/junland/apex-ports

ApexOS Ports Repository
https://github.com/junland/apex-ports

Last synced: 5 months ago
JSON representation

ApexOS Ports Repository

Awesome Lists containing this project

README

          

# apex-ports
ApexOS Ports Repository

## Overview

This repository contains the package definitions (APKBUILD files) for building ApexOS packages. ApexOS uses a package system compatible with Alpine Linux's APK package manager.

## Repository Structure

```
apex-ports/
├── core/ # Core system packages
├── extra/ # Additional packages
└── scripts/ # Build and bootstrap scripts
└── bootstrap.sh # Cross-compilation bootstrap script
```

## Cross-Compilation

To create a cross-compiler and cross-compile an Apex base system for a different architecture, use the bootstrap script:

```bash
./scripts/bootstrap.sh -a -j -o
```

Supported architectures:
- x86_64 (64-bit x86)
- aarch64 (ARM 64-bit)
- armv7 / armhf (ARM 32-bit with hard float)
- armv5, armv6 (older ARM variants)
- ppc64le (PowerPC 64-bit little-endian)
- riscv64 (RISC-V 64-bit)
- loongarch64 (LoongArch 64-bit)

For detailed documentation on cross-compilation, see [scripts/README.md](scripts/README.md).

## Building Packages

### Prerequisites

Building packages requires an Alpine Linux environment with the `alpine-sdk` package:

```bash
apk add alpine-sdk
```

### Building a Single Package

```bash
cd core/
abuild -r
```

### Building with Cross-Compilation

```bash
cd core/
CBUILD=x86_64-pc-linux-gnu \
CHOST=aarch64-apex-linux-gnu \
CTARGET=aarch64-apex-linux-gnu \
abuild -r
```

## Package Categories

### Core Packages

Essential system packages including:
- **Toolchain**: gcc, binutils, glibc
- **Core Utilities**: busybox, coreutils, bash
- **System Libraries**: glibc, linux-headers
- **Build Tools**: make, cmake, autoconf, automake

### Extra Packages

Additional software packages for specific use cases.

## Contributing

Contributions are welcome! Please ensure that:
1. APKBUILD files follow Alpine Linux packaging standards
2. Patches are properly documented
3. Security fixes are clearly marked
4. Changes are tested on relevant architectures

## License

See LICENSE file for details.