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

https://github.com/truenas/scale-build

TrueNAS SCALE Build System
https://github.com/truenas/scale-build

debian nas truenas truenas-scale

Last synced: 6 months ago
JSON representation

TrueNAS SCALE Build System

Awesome Lists containing this project

README

          


Join Discord
Join Forums
File Issue

# truenas-build

A build framework for TrueNAS SCALE.

Found an issue in the build for SCALE? Please report it on our [Jira bugtracker](https://jira.ixsystems.com).

## Requirements

- Debian 10 or later (VM or Bare-Metal)
- 20GB of RAM
- At least 15GB of free disk space

In addition to the host, you will want to pre-install the following packages:

* build-essential
* debootstrap
* libjson-perl
* git
* python3-pip
* python3-venv
* squashfs-tools
* rsync
* unzip
* libarchive-tools

``` % sudo apt install build-essential debootstrap git python3-pip python3-venv squashfs-tools unzip libjson-perl rsync libarchive-tools```

## Usage

After the pre-requistes are installed, simply run "make" (as root or sudo) to perform a complete build which performs the following steps:

``` make checkout ```

Pulls in the latest target source repos from online. Re-run to update to latest sources at any time.

``` make packages ```

Builds all the *.deb packages from the checked out source repos and stages them for further stages. Re-running it will perform an incremental build, only re-building packages which have changed sources in source/.

``` make update ```

Builds the stand-alone update file, used for online/offline updating or building ISO images.

``` make iso ```

Builds the ISO image for fresh installation.

``` make clean ```

Cleans up all the temporary files and returns to original state.

## Overrides

It is possible using make and environment variables to override which source repos get checked out during "make checkout" phase.

TRUENAS_BRANCH_OVERRIDE - Can be used to override all source repos at once

_OVERRIDE - Can override specific repos, I.E. debootstrap_OVERRIDE="master"