Big script
This commit is contained in:
52
toolchain/scripts/172-eudev.sh
Executable file
52
toolchain/scripts/172-eudev.sh
Executable file
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
# ============================================================================
|
||||
# DarkForge Linux — Phase 3, Chapter 8: eudev
|
||||
# ============================================================================
|
||||
# Purpose: Build eudev (udev without systemd dependencies).
|
||||
# Device manager for /dev and /sys — required for kernel device support.
|
||||
# This replaces LFS §8.78 (systemd-udev) as per DarkForge spec.
|
||||
# Inputs: /sources/eudev-3.2.14.tar.gz
|
||||
# Outputs: eudev daemon, rules, and libraries in /usr/, /etc/udev/
|
||||
# Assumes: Running inside chroot
|
||||
# Ref: LFS 13.0 §8.78 (adapted for eudev instead of systemd-udev)
|
||||
# https://github.com/eudev-project/eudev
|
||||
# ============================================================================
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
source /sources/toolchain-scripts/100-chroot-env.sh
|
||||
|
||||
PACKAGE="eudev"
|
||||
VERSION="3.2.14"
|
||||
|
||||
echo "=== Building ${PACKAGE}-${VERSION} ==="
|
||||
|
||||
cd /sources
|
||||
tar -xf "${PACKAGE}-${VERSION}.tar.gz"
|
||||
cd "${PACKAGE}-${VERSION}"
|
||||
|
||||
# eudev can be built standalone without systemd
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--with-rootprefix=/ \
|
||||
--enable-manpages \
|
||||
--disable-static
|
||||
|
||||
make
|
||||
# Optional: run tests
|
||||
# make check || true
|
||||
make install
|
||||
|
||||
# Create the udev rules directory (may not be created by default)
|
||||
mkdir -pv /etc/udev/rules.d
|
||||
|
||||
# Create udev control socket directory
|
||||
mkdir -pv /run/udev
|
||||
|
||||
# Set permissions on the udev socket
|
||||
chmod -v 755 /run/udev
|
||||
|
||||
cd /sources
|
||||
rm -rf "${PACKAGE}-${VERSION}"
|
||||
echo "=== ${PACKAGE}-${VERSION} complete ==="
|
||||
Reference in New Issue
Block a user