Skip to content

Latest commit

 

History

History
80 lines (51 loc) · 2.52 KB

File metadata and controls

80 lines (51 loc) · 2.52 KB

Contributing

Thanks for contributing to Eclipse Linux.

What belongs in this repo

This repository primarily owns:

  • ISO/rootfs build scripts (scripts/)
  • Live boot + branding config (config/)
  • The live installer (scripts/eclipse-install)
  • Top-level build targets (Makefile)

The build expects a dynamod/ source tree to exist locally, but that code is kept separate.

Getting set up

  1. Ensure you have the host dependencies listed in README.md.

  2. Provide a dynamod/ directory at the repo root.

  3. Verify you can build end-to-end:

make dynamod
make rootfs
make iso

Making changes safely

Scripts

  • All scripts are POSIX sh (#!/bin/sh). Avoid bashisms unless you also switch the shebang and test accordingly.
  • Prefer failing fast (set -e) and printing actionable error messages.
  • If you add new required tools, update the dependency checks in the relevant script and update README.md.

Live rootfs changes

Changes in scripts/build-rootfs.sh affect both:

  • the live ISO boot, and
  • the installed system created by eclipse-install (it copies the live rootfs to disk).

When changing packages or init/service wiring, validate:

  • make rootfs completes
  • the ISO boots (make test-qemu)
  • the installer can complete an installation (make test-qemu-install)

Boot configuration

  • Live boot menu is in config/grub-live.cfg.
  • Installed system GRUB config is generated by scripts/eclipse-install.

If you change kernel command line flags for live boot, consider whether the installer’s installed entries should also be updated.

Reporting bugs

  • Use GitHub Issues for build failures, boot issues, and installer problems.
  • Include:
    • host distro + versions of key tools (grub, xorriso, mksquashfs)
    • the exact command you ran (make iso, environment variables, etc.)
    • relevant logs/output (installer logs go to /tmp/eclipse-install.log in the live environment)

Pull request checklist

  • Build still works (make iso)
  • QEMU boot test still works (make test-qemu or make test-qemu-serial)
  • If installer-related: validate make test-qemu-install
  • Keep changes focused; avoid unrelated formatting-only diffs

Code style

  • Shell: keep it simple, quote variables, and prefer explicit, readable steps over clever one-liners.
  • Config files: keep defaults conservative (especially anything that could touch disks/partitioning).

License

By contributing, you agree your contributions are licensed under the project’s GPL-3.0 license (see LICENSE).