• Stars
    star
    343
  • Rank 123,371 (Top 3 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created over 4 years ago
  • Updated 28 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

TrueNAS SCALE Build System

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.

Requirements

  • Debian 10 or later (VM or Bare-Metal)
  • 16GB 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

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

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"

More Repositories

1

middleware

TrueNAS CORE/Enterprise/SCALE Middleware Git Repository
Python
2,297
star
2

webui

TrueNAS Angular UI
TypeScript
370
star
3

charts

TrueNAS SCALE Apps Catalogs & Charts
Smarty
302
star
4

core-build

TrueNAS CORE/Enterprise Build System
Python
236
star
5

os

FreeBSD base for TrueNAS Core
C
218
star
6

documentation

TrueNAS Documentation Hub
HTML
119
star
7

py-libzfs

Python libzfs bindings
Cython
80
star
8

py-SMART

Wrapper for smartctl (smartmontools)
Python
76
star
9

zettarepl

Zettabyte File System (ZFS) Replication Tool written in Python
Python
67
star
10

apps

Python
49
star
11

truenas-installer

Repo with scripts for TrueNAS installation on Debian
Python
47
star
12

ports

FreeBSD ports tree
Makefile
29
star
13

linux

Linux kernel for TrueNAS SCALE
C
25
star
14

midcli

NAS Command Line Interface
Python
16
star
15

mDNSResponder

C
15
star
16

py-sysctl

Python wrapper for the sysctl system functions
C
13
star
17

samba

C
12
star
18

py-bsd

Python wrappers for various BSD libc and system calls
Cython
9
star
19

freenas-java-api-client

FreeNAS Java API Client: It is a java client library that allows to interact with FreeNAS by Java programatically calls
Java
9
star
20

nfs4xdr-acl-tools

CLI tool to manage Samba-style xdr-formatted NFSv41 ACLs
C
9
star
21

py-netif

Python network configuration library for FreeBSD
Cython
7
star
22

repo-mgmt

Scripts and tools for Apt repository management
Python
5
star
23

chelsiouwire

C
5
star
24

licenselib

License library for FreeNAS
Python
4
star
25

freenas-pkgtools

FreeNAS Packaging/update/installation tools
Python
4
star
26

truecommand-stats

Small utility that TrueCommand uses for gathering system statistics
Go
4
star
27

api_client

Python
3
star
28

python-truenas-requirements

Python
3
star
29

iocage-ix-plugins

Official iXSystems iocage plugins for TrueNAS
3
star
30

api_client_golang

Go
2
star
31

grub2

Shell
2
star
32

containers

Shell
2
star
33

binaries

C
2
star
34

catalog_validation

Validate truenas compliant catalog structure / format.
Python
2
star
35

truenas-cd

Clone of debian-cd with TrueNAS build changes
Shell
2
star
36

nss-pam-ldapd

C
2
star
37

freeipa

FreeIPA, an integrated security information management solution
Shell
1
star
38

apps_validation

TrueNAS Apps Validation Framework
Python
1
star
39

freenas-migrate93

Common repository to share migrations between 9.x and 10.x projects
Python
1
star
40

freenas-migrate113

Python
1
star
41

pyglfs

C
1
star
42

intel-pcm

Shell
1
star
43

py-sg3

Cython
1
star
44

firmware

Repository for firmwares
Python
1
star
45

ixdiagnose

Python
1
star
46

smartmontools

Shell
1
star
47

minio

Python
1
star
48

pkg-qemu

https://salsa.debian.org/qemu-team/qemu
C
1
star
49

ScaleAutomation

Python
1
star
50

py-sgio

Python bindings for SG_IO ioctl on linux
Cython
1
star
51

rrdtool

Shell
1
star
52

py-fenced

Fencing daemon for automatically managing persistent SCSI reservations
Python
1
star