Skip to content

Commit

Permalink
Upgrade Jinx to 0.4.3; Update README.md for Jinx 0.4.x; Run weekly
Browse files Browse the repository at this point in the history
  • Loading branch information
mintsuki committed Sep 25, 2024
1 parent 5c628d3 commit ea59507
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 33 deletions.
21 changes: 6 additions & 15 deletions .github/workflows/weekly.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
name: Weekly Vinix rebuild

on:
schedule:
- cron: '0 0 * * 6'
on: [push]
# schedule:
# - cron: '0 0 * * 6'

jobs:
vinix-build:
Expand All @@ -20,22 +20,13 @@ jobs:
- name: Install dependencies
run: sudo apt-get update && sudo apt-get install make diffutils curl git rsync xorriso -y

#- name: Build distro
# run: make distro-full

#- name: Build ISO
# run: make all
#- name: Build full distro and ISO
# run: PKGS_TO_INSTALL='*' make all

#- name: Rename vinix.iso
# run: mv vinix.iso vinix-weekly-full-$(date +'%Y%m%d').iso

#- name: Distclean
# run: make distclean

- name: Build base distro
run: make distro-base

- name: Build ISO
- name: Build base distro and ISO
run: make all

- name: Rename vinix.iso
Expand Down
2 changes: 1 addition & 1 deletion GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ debug:
JINX_CONFIG_FILE=jinx-config-debug $(MAKE) all

jinx:
curl -Lo jinx https://github.com/mintsuki/jinx/raw/31bafe0d84332bf20388420f3c16879e63314cfe/jinx
curl -Lo jinx https://github.com/mintsuki/jinx/raw/1b15fd45f546d29d041f0ff5b81c1f912ad087c1/jinx
chmod +x jinx

.PHONY: run-kvm
Expand Down
33 changes: 21 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,41 +52,50 @@ The following is a distro-agnostic list of packages needed to build Vinix.

Skip to a paragraph for your host distro if there is any.

`GNU make`, `findutils`, `curl`, `git`, `zstd`, `rsync`, `xorriso`, and `qemu`
to test it.

Additionally a working C compiler (`cc`) needs to be present.
`GNU make`, `findutils`, `curl`, `git`, `xz`, `rsync`, `xorriso`, `qemu`
to test it, and a working C compiler (`cc`) needs to be present.

### Build prerequisites for Ubuntu, Debian, and derivatives
```bash
sudo apt install -y build-essential make findutils curl git zstd rsync xorriso qemu-system-x86
sudo apt install -y build-essential make findutils curl git xz-utils rsync xorriso qemu-system-x86
```

### Build prerequisites for Arch Linux and derivatives
```bash
sudo pacman -S --needed gcc make findutils curl git zstd rsync xorriso qemu
sudo pacman -S --needed gcc make findutils curl git xz rsync xorriso qemu
```

### Build prerequisites for Red Hat Linux and derivatives
```bash
sudo yum install -y gcc make findutils curl git zstd rsync xorriso qemu
sudo yum install -y gcc make findutils curl git xz rsync xorriso qemu
```
### Build prerequisites for Void Linux and derivatives
```bash
sudo xbps-install -Suv gcc make findutils curl git zstd rsync xorriso qemu
sudo xbps-install -Suv gcc make findutils curl git xz rsync xorriso qemu
```
### Building the distro

To build the distro, which includes the cross toolchain necessary
to build kernel and ports, as well as the kernel itself, run:

```bash
make distro-base # Build the base distribution.
make all # Make filesystem and ISO.
make all # Build the base distro and make filesystem and ISO.
```

This will build a minimal distro image. The `make distro-full` target
is also avaliable to build the full distro; this step will take a while.
This will build a minimal distro image. Setting the `PKGS_TO_INSTALL` env
variable will allow one to specify a custom set of packages to build/install.
For example:

```bash
PKGS_TO_INSTALL='*' make all
```
This will build all packages (may take some time). Or:

```bash
PKGS_TO_INSTALL='python sqlite' make all
```
This will build the base system (like `make all`) plus the `python` and `sqlite`
packages.

### To test

Expand Down
6 changes: 1 addition & 5 deletions build-support/makeiso.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,10 @@

set -ex

if [ -z "$PKGS_TO_INSTALL" ]; then
PKGS_TO_INSTALL=base
fi

# Build the sysroot with jinx and build limine.
rm -rf sysroot
set -f
./jinx install "sysroot" $PKGS_TO_INSTALL
./jinx install "sysroot" base $PKGS_TO_INSTALL
set +f
if ! [ -d host-pkgs/limine ]; then
./jinx host-build limine
Expand Down

0 comments on commit ea59507

Please sign in to comment.