FDS/OS 1.0

This commit is contained in:
2026-09-21 22:29:23 +08:00
commit 99bc3d15c5
430 changed files with 34876 additions and 0 deletions
@@ -0,0 +1,4 @@
# Supplement the Pi kernel's CONFIG_SPI_CH341=n requirement with scoped autoload
# suppression. An already loaded/built-in driver can bind before userspace.
# Plain RUN assignment is compatible with eudev and replaces earlier queued runs.
ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_interface", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="5512", PROGRAM="/usr/bin/dasungd udev-match-spi %p", RESULT=="yes", RUN="/usr/bin/true"
+22
View File
@@ -0,0 +1,22 @@
# The user's grayscale Paperlike 13K. Do not match arbitrary CH340 adapters.
monitor_serial = "L56051794302"
socket = "/run/dasungd/control.sock"
# Session state survives daemon restart. Persistent machine storage is not built yet.
state_file = "/run/dasungd/settings.json"
transport = "usb"
require_companion = true
require_display = true
keepalive_ms = 2000
reconnect_ms = 2000
watchdog_ms = 30000
[display]
# Pi uses DRM/KMS firmware EDID or its display client, not AMD debugfs hotplug.
enabled = false
edid = "/usr/lib/firmware/edid/dasung-paperlike13k-37hz.bin"
hotplug = "none"
[startup]
# Values read back on this unit in the source task; color-model names do not apply.
mode = 1
contrast = 4
+29
View File
@@ -0,0 +1,29 @@
# FDS-owned overlay. The build helper supplies the verified static ARM payload.
pkgname=fds-dasungd
version=0.1.0
revision=1
archs="aarch64"
nostrip=yes
noverifyrdeps=yes
depends="coreutils execline s6 s6-rc eudev"
short_desc="FDS base-system controller for the Dasung Paperlike 13K"
maintainer="FDS/OS maintainers"
license="MIT, LGPL-2.1-or-later"
# Hardware vendor reference; this local FDS controller is not an official driver.
homepage="https://www.dasung.com/"
conf_files="/etc/dasungd.toml"
do_install() {
local input="${XBPS_SRCDISTDIR}/${pkgname}-${version}"
[ -f "${input}/SHA256SUMS" ] || msg_error "Run make dasung to prepare the verified payload\n"
(cd "$input" && sha256sum -c SHA256SUMS) || return 1
vbin "${input}/dasungd"
vinstall "${FILESDIR}/dasungd.toml" 644 etc
vinstall "${FILESDIR}/99-dasung-spi.rules" 644 usr/lib/udev/rules.d
vinstall "${input}/paperlike13k-37hz.edid" 644 usr/lib/firmware/edid dasung-paperlike13k-37hz.bin
vmkdir etc/s6-rc/source
cp -a "${input}/s6-source/." "${DESTDIR}/etc/s6-rc/source/"
vlicense "${input}/LICENSE"
vlicense "${input}/libusb-COPYING" libusb-COPYING
vdoc "${input}/dasung.md" README.md
}