Initial commit: DarkForge Linux — Phases 0-12
Complete from-scratch Linux distribution targeting AMD Ryzen 9 9950X3D + NVIDIA RTX 5090 on ASUS ROG CROSSHAIR X870E HERO. Deliverables: - dpack: custom package manager in Rust (3,800 lines) - TOML package parser, dependency resolver, build sandbox - CRUX Pkgfile and Gentoo ebuild converters - Shared library conflict detection - 124 package definitions across 4 repos (core/extra/desktop/gaming) - 34 toolchain bootstrap scripts (LFS 13.0 adapted for Zen 5) - Linux 6.19.8 kernel config (hardware-specific, fully commented) - SysVinit init system with rc.d service scripts - Live ISO builder (UEFI-only, squashfs+xorriso) - Interactive installer (GPT partitioning, EFISTUB boot) - Integration test checklist (docs/TESTING.md) No systemd. No bootloader. No display manager. Kernel boots via EFISTUB → auto-login → dwl Wayland compositor. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
48
configs/rc.d/dhcpcd
Executable file
48
configs/rc.d/dhcpcd
Executable file
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
# ============================================================================
|
||||
# DarkForge Linux — dhcpcd service
|
||||
# ============================================================================
|
||||
# DHCP client daemon for ethernet. Uses interface from rc.conf.
|
||||
# ============================================================================
|
||||
|
||||
. /etc/rc.conf
|
||||
|
||||
DAEMON="/usr/sbin/dhcpcd"
|
||||
PIDFILE="/run/dhcpcd-${NETWORK_INTERFACE}.pid"
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo " Starting dhcpcd on ${NETWORK_INTERFACE}..."
|
||||
if [ "${NETWORK_DHCP}" = "yes" ]; then
|
||||
${DAEMON} -q "${NETWORK_INTERFACE}" && echo " dhcpcd started"
|
||||
else
|
||||
# Static IP configuration
|
||||
ip addr add "${NETWORK_IP}/${NETWORK_MASK}" dev "${NETWORK_INTERFACE}"
|
||||
ip link set "${NETWORK_INTERFACE}" up
|
||||
ip route add default via "${NETWORK_GATEWAY}"
|
||||
if [ -n "${NETWORK_DNS}" ]; then
|
||||
echo "# Generated by rc.d/dhcpcd" > /etc/resolv.conf
|
||||
for dns in ${NETWORK_DNS}; do
|
||||
echo "nameserver ${dns}" >> /etc/resolv.conf
|
||||
done
|
||||
fi
|
||||
echo " Static IP configured: ${NETWORK_IP}"
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
echo " Stopping dhcpcd..."
|
||||
if [ -f "${PIDFILE}" ]; then
|
||||
${DAEMON} -x "${NETWORK_INTERFACE}" 2>/dev/null
|
||||
fi
|
||||
echo " dhcpcd stopped"
|
||||
;;
|
||||
restart)
|
||||
$0 stop
|
||||
sleep 2
|
||||
$0 start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user