From a3c0d2bbc3cfd5cb6e0554106425da5cb78cac36 Mon Sep 17 00:00:00 2001 From: Michael Shigorin Date: Tue, 6 Sep 2011 19:11:36 +0300 Subject: [PATCH] initial features.in/dos This was tackled before but it took raorn@'s hint regarding sys-freedos-linux (ms-sys has no bootsectors compatible with freedos currently) and gns@' quick rush at make-freedos-floppy script to wrap things up. Should be further developed to become actually useful though. --- distro.mk | 1 + features.in/dos/README | 6 ++++++ features.in/dos/config.mk | 5 +++++ features.in/dos/stage1/scripts.d/50-make-dos-floppy | 6 ++++++ features.in/syslinux/cfg.in/85dos.cfg | 4 ++++ 5 files changed, 22 insertions(+) create mode 100644 features.in/dos/README create mode 100644 features.in/dos/config.mk create mode 100755 features.in/dos/stage1/scripts.d/50-make-dos-floppy create mode 100644 features.in/syslinux/cfg.in/85dos.cfg diff --git a/distro.mk b/distro.mk index 1eb73411..129da020 100644 --- a/distro.mk +++ b/distro.mk @@ -36,6 +36,7 @@ distro/syslinux: distro/.init distro/.branding sub/stage1 \ distro/live: distro/.base use/live use/syslinux/ui-menu distro/rescue: distro/.base use/rescue use/syslinux/ui-menu +distro/dos: sub/stage1 use/dos use/syslinux/ui-menu # something actually useful (as a network-only installer) # NB: doesn't carry stage3 thus cannot use/bootloader diff --git a/features.in/dos/README b/features.in/dos/README new file mode 100644 index 00000000..269b5a74 --- /dev/null +++ b/features.in/dos/README @@ -0,0 +1,6 @@ +Фича добавляет создание FreeDOS "live floppy" в stage1. + +Текущее состояние -- загружается минимальная система. +Для практического применения (в первую очередь это +перешивка firmware) требуется сделать подключение +CD и/или USB Flash с тем, чтобы класть туда прошивки. diff --git a/features.in/dos/config.mk b/features.in/dos/config.mk new file mode 100644 index 00000000..f6e05b3c --- /dev/null +++ b/features.in/dos/config.mk @@ -0,0 +1,5 @@ +use/dos: use/syslinux + @$(call add,FEATURES,dos) + @$(call add,SYSLINUX_CFG,dos) + @$(call add,SYSLINUX_FILES,/usr/lib/syslinux/memdisk) + @$(call add,STAGE1_PACKAGES,make-freedos-floppy glibc-gconv-modules) diff --git a/features.in/dos/stage1/scripts.d/50-make-dos-floppy b/features.in/dos/stage1/scripts.d/50-make-dos-floppy new file mode 100755 index 00000000..9adeb637 --- /dev/null +++ b/features.in/dos/stage1/scripts.d/50-make-dos-floppy @@ -0,0 +1,6 @@ +#!/bin/sh -x +# create a barebone bootable freedos floppy +# TODO: some sub-framework to populate it as well + +mkdir -p "$WORKDIR/syslinux" +make-freedos-floppy "$WORKDIR/syslinux/freedos.img" diff --git a/features.in/syslinux/cfg.in/85dos.cfg b/features.in/syslinux/cfg.in/85dos.cfg new file mode 100644 index 00000000..a27605b8 --- /dev/null +++ b/features.in/syslinux/cfg.in/85dos.cfg @@ -0,0 +1,4 @@ +label freedos + menu label Live ^FreeDOS + kernel memdisk + append initrd=freedos.img