Add self-hosted development system example

This commit is contained in:
2026-04-10 08:56:41 +02:00
parent 9b7b1e2807
commit 558f8e9f85
+43
View File
@@ -0,0 +1,43 @@
;; Example self-hosted Fruix development system declaration.
;;
;; This is intended for a Fruix node that should be able to:
;; - run Fruix locally
;; - enter a development environment with the recovered developer tooling
;; - enter a sanitized build environment for package/base work
;; - host the pi agent runtime from the development profile
;;
;; Build it with:
;; fruix system build examples/system/self-hosted-dev.scm \
;; --system self-hosted-development-operating-system
;;
;; After boot, typical workflows are:
;; eval "$(/usr/local/bin/fruix-development-environment)"
;; eval "$(/usr/local/bin/fruix-build-environment)"
;;
;; The development/build profiles currently include:
;; - FreeBSD runtime + headers
;; - Clang toolchain
;; - GNU make
;; - Autotools
;; - OpenSSL
;; - zlib
;; - sh + bash
;; - nodejs + npm
;; - ripgrep
;; - tmux
;; - neovim
(use-modules (fruix system freebsd)
(fruix packages freebsd))
(define self-hosted-development-operating-system
(operating-system
#:host-name "fruix-selfhosted"
;; Enable SSH on the node so it can be used as an operator/development host.
#:rc-conf-entries '(("clear_tmp_enable" . "YES")
("sendmail_enable" . "NONE")
("sshd_enable" . "YES"))
;; For real deployments, add keys with #:root-authorized-keys or customize
;; the default operator account as needed.
#:development-packages %freebsd-development-profile-packages
#:build-packages %freebsd-development-profile-packages))