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

https://github.com/dimkr/roar-ng-ii

A generic and extensible build system for GNU/Linux distributions; orphaned
https://github.com/dimkr/roar-ng-ii

Last synced: about 1 year ago
JSON representation

A generic and extensible build system for GNU/Linux distributions; orphaned

Awesome Lists containing this project

README

          

___ ___
_ __ ___ __ _ _ __ _ __ __ _ |_ _|_ _|
| '__/ _ \ / _` | '__|____| '_ \ / _` | | | | |
| | | (_) | (_| | | |_____| | | | (_| | | | | |
|_| \___/ \__,_|_| |_| |_|\__, | |___|___|
|___/

############
# Overview #
############

roar-ng II is a framework for the construction of GNU/Linux distributions. Any
distribution built by:
- Can run "live", without leaving any traces behind.
- Can run from pretty much any media (optical media, flash drives, hard
drives, memory cards and more).
- Is easy to develop, maintain and customize.

roar-ng II provides the means for handling the binary packages of various
distributions; all you have to do in order to build a distribution is to specify
the list of packages to include in it; roar-ng II will take care of the rest.

roar-ng II makes it simple and quick to develop your very own GNU/Linux
distribution. Therefore, it saves your precious time and money.

################
# How it Works #
################

roar-ng II has powerful, extensible design: support for each distribution is
provided by a plug-in. Many distributions are supported, in all processor
architectures.

Thanks to this design, the process of building a distribution is quite simple:
- roar-ng II lists the packages available for each distribution.
- Each package specified in the package list are downloaded from the
repositories of a given distribution.
- All packages are extracted.
- An image of the distribution is built.

In addition, distributions built by roar-ng II ship with an automated package
building framework, which can be used directly through roar-ng II to
cross-compile packages for distributions built by it.

###########################
# Supported Distributions #
###########################

Distributions currently supported by roar-ng II are:
- Debian (http://www.debian.org/) and derivatives:
- Ubuntu (http://www.ubuntu.com/)
- Linux Mint (http://www.linuxmint.com/)
- Trisquel GNU/Linux (http://www.trisquel.info/)
- Raspbian (http://www.raspbian.org/)
- RPM-based distributions:
- Mageia (http://www.mageia.org/)
- Fedora (http://fedoraproject.org/)
- CentOS (https://www.centos.org/)
- openSUSE (http://www.opensuse.org/)
- Arch Linux (http://www.archlinux.org/) and derivatives:
- Parabola GNU/Linux (https://www.parabolagnulinux.org/)
- ConnochaetOS (http://www.connochaetos.org/)
- Slackware (http://www.slackware.com/) and derivatives:
- Salix OS (http://www.salixos.org)
- Puppy Linux (http://www.puppylinux.org/) and derivatives:
- Slacko
- Precise Puppy
- Wary (http://www.bkhome.org/wary/)

This means roar-ng II is able to build distributions using packages which
originate in any version of these distributions, for any processor architecture.

#########
# Usage #
#########

A typical roar-ng II session consists of four steps:
- roar-ng setup : downloads and processes the package lists of all
repositories of distributions specified in the package
list.
- roar-ng download: downloads all packages specified in the package list.
- roar-ng extract : extracts the downloaded packages.
- roar-ng build : builds a bootable image of the distribution; receives two
additional command-line arguments: the bootable media type
and the output file path.

In addition, roar-ng II exposes some functionality through additional execution
modes:
- package : builds a binary package from source, within the distribution;
must run after "build". In this mode, roar-ng II needs sufficient
permissions to run mount and chroot.
- cleanup : cleans up after "build" by removing intermediate directories.
Must be used between executions of roar-ng II with "build".

##########
# Shahor #
##########

Shahor is the flagship GNU/Linux-libre distribution built by roar-ng II; the
stock configuration supplied with roar-ng II will always build the latest
development version of Shahor.

To build Shahor, simply run roar-ng II:
roar-ng setup
roar-ng download
roar-ng extract
roar-ng build isolinux shahor.iso

################
# Contributing #
################

Contributions to roar-ng II are welcome, as long as they match its coding style
and design philosophy.

Although roar-ng II will always be free software, bear in mind that by
contributing, you agree that the contributed material may be re-licensed without
notice.

#####################
# Legal Information #
#####################

roar-ng II is licensed under a 2-clause BSD license, see COPYING for the license
text. For a list of its authors and contributors, see AUTHORS and THANKS.

The ASCII art logo at the top was made using FIGlet (http://www.figlet.org/).