Skip to content

RebornOS-Team/rebornos-iso

Repository files navigation

RebornOS ISO

GitHub GitHub release (latest by date) Release Pre-Release

This is the official RebornOS ISO source. The ISO configuration can be found here.

The upstream for this project is ArchISO.

Please keep this git repository updated by git merging with latest upstream changes.

1. Cloning

To download the source code for testing, or for development, you can clone from the remote repository using either SSH, or HTTPS:

HTTPS

git clone https://github.com/RebornOS-Team/rebornos-iso.git 

OR

SSH

git clone git@github.com:RebornOS-Team/rebornos-iso.git

(Optional) Enable local repository

Edit the pacman.conf file and uncomment the below lines

#[rebornos-iso]
#SigLevel = Optional TrustAll
#Server = file:///var/tmp/local_repo_dir

Note: file:///var/tmp/local_repo_dir symlinks to the local_repo directory.

2. Build

Note: The script for setting up prerequisites will only build on Arch Linux and its derivatives (i.e. on distributions that use pacman, and the Arch Linux package repositories)

The below script will build the ISO image (and install any prerequisites). Change to the project directory (cd rebornos-iso) and run

sh scripts/build.sh

Check the output/ directory for the output ISO file.

3. Update

To keep this project in sync with the upstream ArchISO Releng configuration, please follow the below steps. Change to the project directory (cd rebornos-iso) before continuing...

a. Fetch changes from the upstream GitLab source: The below script first clones the upstream ArchISO to the _archiso branch (force overwrites it) and then clones the releng configuration directory to the _releng branch.

sh scripts/update_releng_branch.sh

b. Merge upstream changes

git checkout main

git merge _releng

c. Manually handle merge conflicts: Follow this guide for commandline operations or this guide if you are using Visual Studio Code.

d. Push updates back to the project: After all the merge conflicts are handled and you stage all the changes, you are ready to push the updates with git push.