mirror of
https://github.com/openglow-org/forgefirm.git
synced 2026-09-27 16:51:12 -07:00
Added SPDX
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# forgefirm-image-manifest.bbclass - assemble /etc/forgefirm-manifest.json
|
||||
#
|
||||
# Inherited by the ForgeFIRM images. At rootfs postprocess it collects the
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# forgefirm-manifest.bbclass - source fingerprint of one ForgeFIRM component
|
||||
#
|
||||
# A component recipe that inherits this class records what source it was
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
require conf/distro/include/fslc-base.inc
|
||||
|
||||
DISTRO = "forgefirm"
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# We have a conf and classes directory, add to BBPATH
|
||||
BBPATH .= ":${LAYERDIR}"
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# NXP distributes the i.MX VPU/EPDC firmware blobs under its firmware EULA
|
||||
# (accepted with ACCEPT_FSL_EULA), so an image carrying those blobs has to
|
||||
# carry the license text with them.
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# ForgeFIRM SSH policy, set in the installed files so the release image
|
||||
# carries it as built:
|
||||
# PermitRootLogin no root logs in at the serial console only
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# ForgeFIRM image manifest: source fingerprint of the hardware library
|
||||
# (forgefirm-manifest.bbclass in this layer).
|
||||
inherit forgefirm-manifest
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# ForgeFIRM image manifest: source fingerprint of the cloud-mode service
|
||||
# layer (forgefirm-manifest.bbclass in this layer).
|
||||
inherit forgefirm-manifest
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# urllib3's optional pyOpenSSL/cryptography backend is not used here: the cloud
|
||||
# client and the machine glue talk TLS through the standard library's ssl
|
||||
# module (nothing imports OpenSSL or cryptography). Dropping the two runtime
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "Configurable embedded Linux firmware update creator and runner"
|
||||
DESCRIPTION = "Applies and creates signed .fw firmware archives. ForgeFIRM \
|
||||
uses the factory's own update format: fwup applies ForgeFIRM upgrades and \
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
DESCRIPTION = "Potluck with different functions for C programs (babelouest base library)"
|
||||
HOMEPAGE = "https://github.com/babelouest/orcania"
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# /etc/rsyslog.conf - ForgeFIRM
|
||||
#
|
||||
# rsyslog is the only log writer on the machine. Every ForgeFIRM process
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# rsyslog is the ForgeFIRM system logger: the only log writer, one
|
||||
# directory per logger under /data/log/forgefirm. This appends the
|
||||
# ForgeFIRM /etc/rsyslog.conf (inputs, line format, and the include of
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
DESCRIPTION = "Web Framework to build REST APIs, Webservices or any HTTP endpoint in C"
|
||||
HOMEPAGE = "https://github.com/babelouest/ulfius"
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
DESCRIPTION = "Logging library for C applications (babelouest)"
|
||||
HOMEPAGE = "https://github.com/babelouest/yder"
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "Boot-slot selection and inventory for Glowforge factory hardware"
|
||||
DESCRIPTION = "Inventories the bootable partitions (ffboot -l) and switches \
|
||||
the boot target by rewriting the saved U-Boot environment with read-back \
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# forgectrl pin. Bump deliberately after pushing forgectrl changes; keep
|
||||
# only SRCREV and PV here - the image manifest leaves *-pin.inc out of the
|
||||
# layer content hash because the component entry already identifies the
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
DESCRIPTION = "System Control Daemon for ForgeFIRM powered Glowforge"
|
||||
HOMEPAGE = "https://github.com/openglow-org/forgectrl"
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# forgefirm-app pin (python3-gfhardware repository, forgefirm-app/ tree).
|
||||
# Bump deliberately (AUTOREV is not reproducible); keep only SRCREV and PV
|
||||
# here - the image manifest leaves *-pin.inc out of the layer content hash
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# Shared fetch for the ForgeFIRM web-service apps (gfhome, python3-ffmachine,
|
||||
# gfcloud). Their sources live in the forgefirm-app/ directory of the
|
||||
# python3-gfhardware repository.
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
DESCRIPTION = "Full Glowforge web-service controller daemon for ForgeFIRM (cloud mode)"
|
||||
|
||||
require forgefirm-app.inc
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
DESCRIPTION = "One-shot Glowforge web-service homing for ForgeFIRM"
|
||||
|
||||
require forgefirm-app.inc
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
DESCRIPTION = "Shared ForgeFIRM web-service hardware-machine glue (gfhome + gfcloud)"
|
||||
|
||||
require forgefirm-app.inc
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
#!/bin/sh
|
||||
# Copyright 2026 514 LLC d/b/a OpenGlow
|
||||
# Written by Scott Wiederhold
|
||||
# https://community.openglow.org
|
||||
# SPDX-License-Identifier: MIT
|
||||
### BEGIN INIT INFO
|
||||
# Provides: forgefirm-banner
|
||||
# Required-Start: $network
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "ForgeFIRM console banner: the control panel addresses in /etc/issue"
|
||||
DESCRIPTION = "Keeps an address block in the serial-console login banner \
|
||||
(/etc/issue): one control panel URL per global address of wlan0 and eth0. \
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
#!/bin/sh
|
||||
# Copyright 2026 514 LLC d/b/a OpenGlow
|
||||
# Written by Scott Wiederhold
|
||||
# https://community.openglow.org
|
||||
# SPDX-License-Identifier: MIT
|
||||
### BEGIN INIT INFO
|
||||
# Provides: forgefirm-hostname
|
||||
# Required-Start: $local_fs
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "ForgeFIRM hostname: forgefirm-<xxxx> from the MAC address"
|
||||
DESCRIPTION = "Names the machine forgefirm-<xxxx>, where xxxx is the last \
|
||||
four hex digits of the wlan0 MAC address (eth0 on a machine with no WiFi). \
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "Firmware verification public keys"
|
||||
DESCRIPTION = "Trust anchors for firmware archive verification: the \
|
||||
ForgeFIRM release-signing public key (verifies release downloads and \
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
#!/bin/sh
|
||||
# Copyright 2026 514 LLC d/b/a OpenGlow
|
||||
# Written by Scott Wiederhold
|
||||
# https://community.openglow.org
|
||||
# SPDX-License-Identifier: MIT
|
||||
### BEGIN INIT INFO
|
||||
# Provides: forgefirm-logging
|
||||
# Required-Start: $local_fs
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "ForgeFIRM logging tree: rsyslog rules at boot, rotation"
|
||||
DESCRIPTION = "Boot-time glue for the ForgeFIRM logging tree \
|
||||
(/data/log/forgefirm/<logger>/): renders the per-logger rsyslog rules \
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "ForgeFIRM boot state on /data: the timestamp and the random seed"
|
||||
DESCRIPTION = "The two files the poky init scripts keep across boots, \
|
||||
pointed at /data/forgefirm because the rootfs is read-only: the boot \
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
# Copyright 2026 514 LLC d/b/a OpenGlow
|
||||
# Written by Scott Wiederhold
|
||||
# https://community.openglow.org
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# ForgeFIRM: an interactive root shell (the serial console, or SSH on
|
||||
# the dev image) starts with a warning. Non-interactive shells (scp,
|
||||
# rsync, ssh with a command) print nothing.
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
#!/bin/sh
|
||||
# Copyright 2026 514 LLC d/b/a OpenGlow
|
||||
# Written by Scott Wiederhold
|
||||
# https://community.openglow.org
|
||||
# SPDX-License-Identifier: MIT
|
||||
### BEGIN INIT INFO
|
||||
# Provides: forgefirm-users
|
||||
# Required-Start: $local_fs
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "ForgeFIRM operator accounts: record render and the root shell warning"
|
||||
DESCRIPTION = "Renders the account record (/data/forgefirm/users, written \
|
||||
by forgectrl) into the system account files at boot and on reload. The \
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "ForgeFIRM release acceptance tool (dev image)"
|
||||
DESCRIPTION = "Runs the release acceptance catalog against the machine from a \
|
||||
self-contained web page (HTTP :8090), keeps the append-only result log under \
|
||||
@@ -5,7 +7,7 @@ self-contained web page (HTTP :8090), keeps the append-only result log under \
|
||||
carries the bench diagnostics page. Installed only on the dev image."
|
||||
HOMEPAGE = "https://github.com/openglow-org/forgefirm"
|
||||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
|
||||
LIC_FILES_CHKSUM = "file://forgetest/LICENSE;md5=6657cce322ff8bed163c02ceffb4c60c"
|
||||
|
||||
# The tool's canonical home is forgetest/ in this repo; the bench scripts
|
||||
# it drives live in scripts/bench/. Both are packaged from the same tree
|
||||
@@ -16,6 +18,7 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/../../../:"
|
||||
# host unit tests and their caches would otherwise enter the fetch checksum
|
||||
# and rebuild the dev image after a workstation test run.
|
||||
SRC_URI = " \
|
||||
file://forgetest/LICENSE \
|
||||
file://forgetest/forgetest/ \
|
||||
file://forgetest/forgetest.init \
|
||||
file://scripts/bench/ \
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# grblHAL-glowforge pin. Bump deliberately after pushing grblHAL-glowforge
|
||||
# changes; keep only SRCREV and PV here - the image manifest leaves
|
||||
# *-pin.inc out of the layer content hash because the component entry
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
DESCRIPTION = "grblHAL motion controller for the Glowforge factory board"
|
||||
HOMEPAGE = "https://github.com/openglow-org/grblHAL-glowforge"
|
||||
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
#!/bin/sh
|
||||
# Copyright 2026 514 LLC d/b/a OpenGlow
|
||||
# Written by Scott Wiederhold
|
||||
# https://community.openglow.org
|
||||
# SPDX-License-Identifier: MIT
|
||||
### BEGIN INIT INFO
|
||||
# Provides: grblhal
|
||||
# Required-Start: $local_fs
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
require forgefirm-image.bb
|
||||
|
||||
DESCRIPTION = "OpenGlow/ForgeFIRM development image for Glowforge"
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
require recipes-glowforge/images/glowforge-image.bb
|
||||
|
||||
# /etc/forgefirm-manifest.json: the build-input identity the acceptance tool
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# The release version, and nothing else.
|
||||
#
|
||||
# This file is metadata, not platform content: the image manifest leaves
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
SUMMARY = "Boot-time migration from the legacy ForgeFIRM disk layout"
|
||||
DESCRIPTION = "Reclaims the legacy ForgeFIRM eMMC partition (p4) and grows \
|
||||
/data back to the factory footprint. Runs before mountall; state-derived \
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# ForgeFIRM image manifest: source fingerprint of glowforge.ko.
|
||||
#
|
||||
# kernel-module-split packages the .ko into a versioned package that the
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# ForgeFIRM image manifest: kernel identity (forgefirm-image-manifest.bbclass
|
||||
# collects it from DEPLOY_DIR_IMAGE). The kernel tree is too large to list
|
||||
# per file and every acceptance test depends on it anyway, so the entry
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# forgectrl serves HTTPS on 443 with a self-signed certificate through
|
||||
# this library, so the https option (GnuTLS) is on; curl is the poky
|
||||
# default (it builds the library's own test client). libgcrypt is a
|
||||
|
||||
Reference in New Issue
Block a user