Danh mục

pearOS-archlinux/iso

pearOS ISO builder source code

snapshot · 26/10/2026
PI

pearOS-archlinux/iso

Shell · danh tính provisional_slug_only

pearOS ISO builder source code

Sao392lịch sử sao
Hạng#12602snapshot toàn cục
Fork30bản ghi nguồn
Số ngày trending0lịch sử xu hướng
Snapshot chỉ có lịch sử sao đầy đủ của star-history/star-history. Lịch sử thiếu thì không vẽ.

README

Từ GitHub · lưu tạm tối đa 7 ngày



pearOS-arch-base 📌

It is pearOS, but with Arch Base. Yes! It uses vanilla arch, less bugs, easier, better etc.

Why? 📌

I had enough with Debian-based distros. pearOS with an Arch base solves some of the big problems with pearOS, for example:

"This requires you to reinstall with every new release"

"sudo apt upgrade would/will destroy your installation"

Not anymore. With Arch, there's no more base-hopping. Now, with Arch, the system is now Rolling Release, as it should be :>

You can do now sudo pacman -Syu and you will stil have the pearOS branding.

Ok... How do I build it? 📌

Make sure you satisfy the dependencies in the section below. After that, run sudo ./build-binary and pray wait.

Note: The build script must be run as root (using sudo) since it needs to create chroot environments and install packages.

Dependencies: 📌

Required packages:
# Core build tools
sudo pacman -S arch-install-scripts    # Provides pacstrap and arch-chroot
sudo pacman -S mtools                  # Provides mcopy, mmd for FAT filesystem operations
sudo pacman -S squashfs-tools          # Provides mksquashfs for creating squashfs images
sudo pacman -S xorriso                 # Creates the final ISO image
sudo pacman -S e2fsprogs               # Provides mkfs.ext4 and tune2fs for filesystem creation
sudo pacman -S git                     # Required for cloning pearOS-installer during build
sudo pacman -S pv                      # Required to see progress bars
Optional packages:
# For EROFS image type support (if used in profiledef.sh)
sudo pacman -S erofs-utils             # Provides mkfs.erofs

# For GPG signing of the rootfs image (optional)
# GPG is usually pre-installed, but ensure it's available:
sudo pacman -S gnupg
Quick install command:
sudo pacman -S arch-install-scripts mtools squashfs-tools xorriso e2fsprogs git pv
Verify dependencies:

To check if all required commands are available, you can use:

command -v pacstrap arch-chroot mksquashfs xorriso mkfs.ext4 tune2fs git pv

If any command(s) are missing, install the corresponding package listed above.

ko-fi

Updating Ploader (bootloader) 📌

The live ISO boots via Ploader (custom rEFInd fork, source at pearOS-archlinux/pearos-bootloader) on UEFI, with syslinux kept as a BIOS/non-EFI fallback. build-binary does not compile Ploader itself — it just picks up prebuilt artifacts from pear/efiboot/ploader/. To update the bootloader:

git clone https://github.com/pearOS-archlinux/pearos-bootloader.git
cd pearos-bootloader
make

This needs the gnu-efi toolchain (sudo pacman -S gnu-efi on Arch). Once built, copy the artifacts into this repo:

cp pearos-bootloader/ploader/ploader_x64.efi   pear/efiboot/ploader/ploader_x64.efi
cp -r pearos-bootloader/theme                  pear/efiboot/ploader/theme

pear/efiboot/ploader/ also holds two templates that build-binary sed-substitutes (%ARCHISO_LABEL%/%INSTALL_DIR%/%ARCH%) at build time and does not need regenerating unless boot options change:

  • ploader.conf — sets silent_menu false so the picker is always shown on the live ISO (Ploader defaults to silent/seamless boot otherwise)
  • ploader_linux.conf — the kernel auto-boot stanzas (FOSS/NVIDIA × Plymouth/no-Plymouth), Ploader's equivalent of a systemd-boot loader entry

build-binary validates all of the above exist before building and errors out clearly if ploader_x64.efi is missing.

Boot Status sequence 📌

Result: booted, installed pearOS and booted it ✅

Success score: 100/100

Test Score
Boot 100/100
UI sanity 100/100
Installable 100/100
Usability 100/100

Usability checks:

Check Result
login + desktop ✅
UI sanity (installed) ✅ top 93% / dock 100%
Konsole opens ✅
fastfetch shows pearOS ✅
sudo pacman -Syyu --noconfirm ✅
Seafari opens ✅
Calculator opens ✅
Notes opens ✅
Finder opens ✅
Kate opens ✅

One screenshot every 10s.

  1. 10s — boot 1
  2. 20s — boot 2
  3. 30s — boot 3
  4. 40s — boot 4
  5. 50s — boot 5
  6. 60s — boot 6
  7. 70s — boot 7
  8. 80s — boot 8
  9. 90s — boot 9
  10. 100s — boot 10
  11. 110s — desktop ready, then clicked Install pearOS in Welcome — boot 11
  12. 120s — pearOS installer loading — boot 12
  13. 130s — Language screen, then selected English — boot 13
  14. 140s — Language screen, then clicked Next — boot 14
  15. 150s — Recovery screen, then selected Install pearOS NiceC0re (offline installer) — boot 15
  16. 160s — Recovery screen, then clicked Continue — boot 16
  17. 170s — boot 17
  18. 180s — boot 18
  19. 190s — boot 19
  20. 200s — boot 20
  21. 210s — boot 21
  22. 220s — Calamares — boot 22
  23. 230s — Calamares: Welcome, clicked Next — boot 23
  24. 240s — Calamares: Location, clicked Next — boot 24
  25. 250s — Calamares: Keyboard, clicked Next — boot 25
  26. 260s — Calamares: Partitions, selected Erase disk — boot 26
  27. 270s — Calamares: Partitions, clicked Next — boot 27
  28. 280s — Calamares: Summary, clicked Install — boot 28
  29. 290s — Calamares: installing (2 min) — boot 29
  30. 300s — Calamares: installing (4 min) — boot 30
  31. 310s — Calamares: installation finished — boot 31
  32. 320s — Installed system: first boot — boot 32
  33. 330s — Installed system: first boot — boot 33
  34. 340s — Installed system: first boot — boot 34
  35. 350s — Installed system: first boot — boot 35
  36. 360s — Installed system: reached the login screen / desktop — boot 36
  37. 370s — First boot: language — boot 37
  38. 380s — First boot: keyboard — boot 38
  39. 390s — First boot: time zone — boot 39
  40. 400s — First boot: create account — boot 40
  41. 410s — First boot: account filled in — boot 41
  42. 420s — First boot: look — boot 42
  43. 430s — First boot: terms — boot 43
  44. 440s — First boot: applying settings — boot 44
  45. 450s — Login screen — boot 45
  46. 460s — Login screen — boot 46
  47. 470s — Login screen — boot 47
  48. 480s — Login screen — boot 48
  49. 490s — Login screen — boot 49
  50. 500s — Login screen — boot 50
  51. 510s — Login screen — boot 51
  52. 520s — Login screen — boot 52
  53. 530s — Login screen — boot 53
  54. 540s — Login screen — boot 54
  55. 550s — Logging in — boot 55
  56. 560s — Logging in — boot 56
  57. 570s — Logging in — boot 57
  58. 580s — Logging in — boot 58
  59. 590s — Logging in — boot 59
  60. 600s — Logging in — boot 60
  61. 610s — Logging in — boot 61
  62. 620s — Installed system: desktop — boot 62
  63. 630s — Konsole opened — boot 63
  64. 640s — Konsole: fastfetch — boot 64
  65. 650s — Konsole: pacman -Syyu succeeded — boot 65
  66. 660s — App: Seafari opened — boot 66
  67. 670s — App: Calculator opened — boot 67
  68. 680s — App: Notes opened — boot 68
  69. 690s — App: Finder opened — boot 69
  70. 700s — App: Kate opened — boot 70

UI Sanity Test 📌

Result: menu bar + dock look as expected ✅
Compared against the reference tests/ui-reference/desktop.png (% of pixels within ±16 per channel; pass ≥ 90%).

Area Similarity
Top bar (first 30 px) 95.8%
Dock (last 100 px) 100.0%

Current frame: desktop

Star History

Star History Chart

Copyright and Licensing 📌

This project is released under the GNU Pubilc License v3 or later.

Copyright: Alexandru Balan @ Pear Software and Services S.R.L. based in Romania, Dacia Boulevard 133, floor D, Sector 2, Bucharest CIF: 50888207