Passa al contenuto principale

the Ray right way

· 4 minuti di lettura
Piero Proietti
penguins-eggs author
Deutsch English Español  Français Italiano Polska  Portuguese  Български  Русский  Українська  やまと  中国  فارسی 

To re-build the blendOS ISOs, I started with the documentation on blendOS Docs, and then experimented, finding a way to use blendOS to recreate itself by removing the akshara hook.

Reasoning with Ray Vermey, I was told - and must agree - that using this method:

"yes but then you take away one of Blends biggist reasons to exist :-)"

and, therefore, using Ray's suggestions, I began to inquire about a more "orthodox" version.

This is the original Ray Vermey way.

Do this from a CLI in blendOs, NOT in a container:

mkdir arch-chroot

sudo pacstrap -K arch-chroot base linux linux-firmware

when that finishes, remount arch-chroot binded:

sudo mount --bind arch-chroot arch-chroot

then:

sudo arch-chroot arch-chroot

pacman -S git archiso base-devel xorriso python python-psutil squashfs-tools

Wait a bit, expecially at the end. Then:

pacman -S python-click nano

useradd -m -G wheel -s /bin/bash apprentice

use visudo to edit /etc/sudoers:

export EDITOR=nano; visudo

## Uncomment to allow members of group wheel to execute any command
%wheel ALL=(ALL:ALL) ALL

passwd apprentice

su - apprentice

cd

mkdir blendos/build -p

cd blendos/build

Installing assemble

blendOS uses its own system, Assemble, for managing code and builds. It's quite similar to repo in the realm of Android development.

TEMP_ASSEMBLE_DIR="$(mktemp -d)"

git clone https://github.com/blend-os/assemble "${TEMP_ASSEMBLE_DIR}/assemble"

sudo cp "${TEMP_ASSEMBLE_DIR}/assemble/assemble" /usr/local/bin

rm -rf "${TEMP_ASSEMBLE_DIR}"

You may now proceed to building blendOS.

Initialize an Assemble repository

assemble init 'https://github.com/blend-os/manifests' 'main'

assemble sync

edit /etc/pacman.conf, and add the line:

[blend]
Server = https://pkg-repo.blendos.co/$repo/os/$arch

then:

sudo pacman -Syu

Prepare the system packages

source build/envsetup.sh

breakfast | tee breakfast.log

informazioni

I refreshed the instructions again, follow last indication of Ray. It seem to work like a charm. Just discarted the following part:

sudo pacman -S rsync reflector
sudo reflector -c Netherlands -f 10 > mymirror
sudo cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
sudo cp mymirror /etc/pacman.d/mirrorlist

then, add line add SigLevel = Never to /etc/pacman.conf under all active repositories:

sudo nano /etc/pacman.conf

Build an ISO

sudo brunch

I did the actual blendOS-gnome-2023.07.15-x86_64.iso on penguins' eggs sourceforge page, starting from a blendOS-xfce-2023.07.15-x86_64.iso I previusly did before, and installed. You can found both on sf.

This image blendOS-lxqt-2023.07.17-x86_64.iso, was made with this way.

ray-installing

Also this blendOS-ray-gnome-2023.07.16-x86_64.iso was made in the same way to confirm the process and check waydroid.

Mastering other versions

Once we have made our gnome version, we can create the others: plasma, xfce, cinnamon, etc. For the purpose I first move the ISO made outside the system, also to recover space, then:

cd blendos/build
source build/envsetup.sh
sudo brunch

Conclusions

I did all the procedure - many, many times - it work nicelly.

Actually following this procedure - just cut and copy commands - I was able to build blendOS from blendOS itself, from my Arch develop machine (colibri) and from a simple CLI Arch installation (naked).

To be honest I like more to remove hook akshara, build the ISO and then reintroduce it. I feel it more simple and I think this is a value more than a problem, but - of course - the authors know better than me.

informazioni

With penguins-eggs, I'm using that way: remaster the system without akshara and reintroduce the akshara during installation with calamares or krill, just using theme blendos.

In short, using eggs, I do this:

  • remove akshara from /etc/mkinitcpio.conf;
  • rebuild initramfs-linux-zen.img: sudo mkinitcopio -g /boot/initramfs-linux-zen.img;
  • reboot;
  • add chaotic aur, just follow instructions on their site.
  • install penguins-eggs: sudo pacman -Syu penguins-eggs
  • configure it: sudo eggs dad -d
  • add calamares: sudo eggs calamares --install
  • eggs wardrobe get
  • sudo eggs produce --theme blendos