summaryrefslogtreecommitdiff
path: root/sys-boot
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-07-14 03:04:44 -0500
committerroot <root@alpha.trunkmasters.com>2026-07-14 03:04:44 -0500
commit22ab5437b999b26eb3960d336dd392ccab062827 (patch)
tree43a85d35f8768ca8bfe5dbff9b129ada4b8c7847 /sys-boot
parentd6c616f80bd44aa3323ca5211338d251e1215938 (diff)
downloadbaldeagleos-repo-22ab5437b999b26eb3960d336dd392ccab062827.tar.gz
baldeagleos-repo-22ab5437b999b26eb3960d336dd392ccab062827.tar.xz
baldeagleos-repo-22ab5437b999b26eb3960d336dd392ccab062827.zip
Adding metadata
Diffstat (limited to 'sys-boot')
-rw-r--r--sys-boot/lamboot/Manifest1
-rw-r--r--sys-boot/lamboot/lamboot-0.16.5.ebuild143
-rw-r--r--sys-boot/lamboot/metadata.xml27
3 files changed, 0 insertions, 171 deletions
diff --git a/sys-boot/lamboot/Manifest b/sys-boot/lamboot/Manifest
deleted file mode 100644
index e16aef7a03d2..000000000000
--- a/sys-boot/lamboot/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST lamboot-0.16.5-x86_64.tar.gz 3190092 BLAKE2B 59be1503f8c8636b7b81222ef3f5302518e5fc93a5e1b4a2a95a8d2a660b45f77d3d8771ca362c19b4649c399a4ac2751c6ebed639f7b29f5e1c2c6348746424 SHA512 33ee1e989c418546da29550b95c3d0c982165cc782d6ceea6192f1a0c8396f3c535b415243a81978271e5e08a02cfdd93ac6cdc502f1cb3da3cb93daba911705
diff --git a/sys-boot/lamboot/lamboot-0.16.5.ebuild b/sys-boot/lamboot/lamboot-0.16.5.ebuild
deleted file mode 100644
index 7faebe3a8658..000000000000
--- a/sys-boot/lamboot/lamboot-0.16.5.ebuild
+++ /dev/null
@@ -1,143 +0,0 @@
-# Copyright 2026 Gentoo Authors
-# Copyright 2026 Lamco Development LLC
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{13..14} )
-inherit python-single-r1 shell-completion
-
-DESCRIPTION="Memory-safe UEFI bootloader for Linux, written in Rust"
-HOMEPAGE="https://lamco.ai/products/lamboot/ https://github.com/lamco-admin/lamboot"
-
-# Prebuilt binary ebuild: this repackages the published Secure Boot-signed
-# -bin release artifact (the same tarball AUR lamboot-bin and apt.lamco.ai
-# consume). It does not build from source, so no nightly Rust toolchain and
-# no signing keys are needed at merge time. A build-from-source ebuild is a
-# separate track, gated on whether LamBoot builds on stable rustc for the
-# *-unknown-uefi targets without -Z build-std (see ../../../PACKAGING.md).
-SRC_URI="https://github.com/lamco-admin/lamboot/releases/download/v${PV}/lamboot-${PV}-x86_64.tar.gz"
-
-LICENSE="MIT Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-# The shipped .efi is a Secure Boot-signed PE binary. Stripping it (or running
-# any ELF post-processing over it) rewrites the file and invalidates the
-# signature, so the firmware rejects it under Secure Boot. Forbid strip.
-RESTRICT="strip"
-
-# efibootmgr: lamboot-install registers the UEFI boot entry through it.
-# python: lamboot-inspect and lamboot-monitor.py are Python 3 programs; the
-# python-single-r1 eclass declares the dependency and pins the script shebangs.
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-RDEPEND="
- sys-boot/efibootmgr
- ${PYTHON_DEPS}
-"
-
-# The signed PE binaries are not ELF; tell the QA scanners not to treat them
-# as broken ELF objects or to expect them to be stripped.
-QA_PREBUILT="usr/share/lamboot/EFI/LamBoot/*.efi
- usr/share/lamboot/EFI/LamBoot/modules/*.efi
- usr/share/lamboot/EFI/LamBoot/drivers/*/*.efi"
-
-src_prepare() {
- default
-
- # Drop any Python bytecode the artifact carried; it is regenerated at
- # runtime and would otherwise pull host paths into the package.
- find . -type d -name __pycache__ -exec rm -rf {} + || die
- find . -type f -name '*.pyc' -delete || die
-
- # Normalise permissions: directories 0755, files 0644, keeping the
- # executable bit where the tarball already set it (lamboot-install,
- # lamboot-inspect, sign-lamboot.sh + its sign-lock/sign-unlock helpers,
- # the .efi loaders). Mirrors the deb's `chmod -R u=rwX,go=rX`. The
- # wholesale cp in src_install then preserves these modes.
- chmod -R u=rwX,go=rX . || die "failed to normalise source perms"
-
- # Pin the Python diagnostic scripts' shebangs to the selected interpreter
- # (python-single-r1). lamboot-host-sampler and the rest are bash, left as-is.
- python_fix_shebang lamboot-inspect lamboot-monitor.py
-}
-
-src_install() {
- # Stage the whole distribution under /usr/share/lamboot — lamboot-install's
- # SRC_DIR (it searches /usr/share/lamboot, /usr/local/share/lamboot, then
- # /opt/lamboot, and copies the .efi to the operator's ESP from there). Copy
- # the tree wholesale to preserve the +x bits on scripts, rather than doins
- # (which forces 0644 and would break lamboot-install's exec of its siblings).
- local share="${ED}/usr/share/lamboot"
- dodir /usr/share/lamboot
- cp -a "${S}"/. "${share}"/ || die "failed to stage distribution"
-
- # Prune the copies installed to their own paths below (man, completions,
- # the README/CHANGELOG/SECURITY docs) or not installed at all (packaging,
- # docs, the license texts, the manifest); lamboot-install reads none of
- # them from SRC_DIR.
- rm -rf \
- "${share}"/packaging \
- "${share}"/man \
- "${share}"/completions \
- "${share}"/docs \
- "${share}"/README.md \
- "${share}"/CHANGELOG.md \
- "${share}"/SECURITY.md \
- "${share}"/LICENSE-MIT \
- "${share}"/LICENSE-APACHE \
- "${share}"/MANIFEST.sha256 \
- || die "failed to prune staged tree"
-
- # esp-deploy.sh at the canonical literal path. lamboot-install checks
- # /usr/lib/lamboot/esp-deploy.sh first, then the script-relative
- # ../lib/esp-deploy.sh. Use the literal /usr/lib (NOT $(get_libdir)):
- # on amd64 that resolves to /usr/lib64, where lamboot-install does not
- # look. It is a sourced shell library, so 0644 is correct.
- insinto /usr/lib/lamboot
- doins lib/esp-deploy.sh
-
- # Operator CLIs on PATH as relative symlinks into the staged tree, so each
- # script's realpath-based sibling lookups resolve: lamboot-inspect imports
- # the adjacent lamboot_inspect package, and sign-lamboot.sh execs the
- # adjacent sign-unlock/sign-lock. The staged systemd units hardcode
- # /usr/bin/lamboot-install, so these must land in /usr/bin, not /usr/sbin.
- dodir /usr/bin
- dosym ../share/lamboot/lamboot-install /usr/bin/lamboot-install
- dosym ../share/lamboot/lamboot-inspect /usr/bin/lamboot-inspect
- dosym ../share/lamboot/sign-lamboot.sh /usr/bin/lamboot-sign
-
- # Man page, shell completions (newbashcomp + dozshcomp from shell-completion).
- doman man/man1/lamboot-inspect.1
- newbashcomp completions/lamboot-inspect.bash lamboot-inspect
- dozshcomp completions/_lamboot-inspect
-
- # Documentation. The MIT and Apache-2.0 license texts are not installed:
- # both are in Gentoo's license tree and tracked via LICENSE above.
- dodoc README.md CHANGELOG.md SECURITY.md
-
- # Note what we deliberately do NOT install: the systemd units, the
- # kernel-install plugin, the kernel-event hooks, and lamboot-kernel-hook.
- # lamboot-install deploys all of those at runtime from /usr/share/lamboot.
- # The package never writes the ESP or /etc. (The AUR package's one
- # exception, the alpm kernel hook, is an Arch-only convention and has no
- # Gentoo equivalent here.)
-}
-
-pkg_postinst() {
- elog "LamBoot is staged under /usr/share/lamboot but is NOT yet installed to"
- elog "the EFI System Partition. To deploy the bootloader and register a UEFI"
- elog "boot entry, run:"
- elog ""
- elog " sudo lamboot-install --signed"
- elog ""
- elog "Secure Boot today means MOK or sbctl enrollment; this package never"
- elog "enrolls a key for you. To trust the shipped signed bootloader under"
- elog "shim, enroll the LamBoot signing certificate:"
- elog ""
- elog " sudo mokutil --import /usr/share/lamboot/lamboot-signing.der"
- elog " (set a one-time password, reboot, complete enrollment in MokManager)"
- elog ""
- elog "Or, with sbctl, sign/enroll through your own Secure Boot key hierarchy."
- elog "Full guide: /usr/share/doc/${PF}/"
-}
diff --git a/sys-boot/lamboot/metadata.xml b/sys-boot/lamboot/metadata.xml
deleted file mode 100644
index faebcf08fa26..000000000000
--- a/sys-boot/lamboot/metadata.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>greg@lamco.io</email>
- <name>Greg Lamberson</name>
- </maintainer>
- <longdescription lang="en">
- LamBoot is a UEFI bootloader for Linux written in Rust. It provides a
- native PE loader, a native ext4 read backend, Boot Loader Specification
- multi-filesystem discovery, TPM measurements, and a structured
- trust-evidence log.
-
- This ebuild installs the prebuilt, Secure Boot-signed bootloader, its
- filesystem drivers and diagnostic modules, the public signing
- certificate, and the host-side tooling (lamboot-install,
- lamboot-inspect, lamboot-sign) under /usr/share/lamboot. It does not
- modify the EFI System Partition: run lamboot-install to deploy LamBoot
- to the ESP and register a UEFI boot entry. Under Secure Boot, enroll
- the shipped signing certificate with mokutil or sbctl first.
- </longdescription>
- <upstream>
- <bugs-to>https://github.com/lamco-admin/lamboot/issues</bugs-to>
- <doc>https://lamco.ai/products/lamboot/</doc>
- </upstream>
- <origin>baldeagleos-repo</origin>
-</pkgmetadata>