aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/tasks/task-slugos.bb
blob: 69bf6caf111b37bd67a1f0bf711c56a35a4e9fcd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
# This describes a generic SlugOS image, even though the bb file is
# called 'slugos-image.bb' the distro specific configuration is
# done in conf/distro/${DISTRO}.conf (which should always include
# conf/distro/slugos.conf to get the standard settings).
#
DESCRIPTION = "Task packages for the SlugOS distribution"
HOMEPAGE = "http://www.nslu2-linux.org"
LICENSE = "MIT"
PR = "r25"
PACKAGE_ARCH = "${MACHINE_ARCH}"
COMPATIBLE_MACHINE = "(nslu2|ixp4xx|sheevaplug)"
ALLOW_EMPTY = "1"

#----------------------------------------------------------------------------------
# FIRMWARE CONFIGURATION
#----------------------------------------------------------------------------------
# EXTRA PACKAGES
# --------------
# The standard firmware contents and additional packages built as requirements
# of the firmware are defined here in SLUGOS_STANDARD_RDEPENDS.  This represents
# the standard set of software for the 8-MByte NSLU2 device.
SLUGOS_STANDARD_RDEPENDS = ""
SLUGOS_STANDARD_RRECOMMENDS = ""
SLUGOS_MACHINE_RDEPENDS = ""
SLUGOS_MACHINE_RRECOMMENDS = ""

# The full cpio (non-busybox) is required for turnup and sysconfig.
SLUGOS_STANDARD_RRECOMMENDS += "\
cpio \
"

# These lines add support for formatting ext2 and ext3 file systems
# on a hard disk attached to the NSLU2.  ext3 is the standard Linux
# file system.
SLUGOS_STANDARD_RRECOMMENDS += "\
e2fsprogs-mke2fs \
util-linux-ng-fsck \
e2fsprogs-e2fsck \
e2fsprogs-badblocks \
util-linux-ng-blkid \
"

# Filesystem selection.  Adding entries here adds the module to the
# image.  The module must be built as part of nslu2-kernel (i.e. it
# must be specified as a module in the defconfig file).  The NLS
# support charset modules must be given explicitly and must match
# the codepage/iocharset and NLS handling for the file systems which
# require them.  The installed lanugage set is minimal but sufficient
# for any file system (since it uses utf8).  See
# http://www.nslu2-linux.orgwiki/HowTo/MountFATFileSystems
# for more information on the language behaviour of the DOS file
# systems.
#
# KERNEL LEVEL FILE SYSTEM SUPPORT
# --------------------------------
# NOTE: removing kernel-module-nfs from this list will prevent NFS
# boot (however you can do a simple flash file system boot - no
# attached disk - and install the nfs modules from ssh.)
# The altboot mechanism requires kernel-module-loop.
SLUGOS_STANDARD_RRECOMMENDS += "\
kernel-module-ext2 \
kernel-module-jbd \
kernel-module-ext3 \
kernel-module-vfat \
kernel-module-nls-cp437 \
kernel-module-nls-utf8 \
kernel-module-nfs \
"

# Add modules required for usb support
SLUGOS_STANDARD_RRECOMMENDS += "\
kernel-module-ehci-hcd \
kernel-module-ohci-hcd \
kernel-module-uhci-hcd \
"

# Add packages and modules required for RAID-1 support
SLUGOS_STANDARD_RRECOMMENDS += "\
mdadm \
kernel-module-md-mod \
kernel-module-raid1 \
"

# Add the machine-specific RRECOMMENDS_${PN} stuff -- kernel modules required for
# network support.
SLUGOS_MACHINE_RRECOMMENDS_nslu2 = "\
kernel-module-mii \
kernel-module-ixp4xx-mac \
kernel-module-ixp4xx-qmgr \
"

# Add machine-specific RDEPENDS_${PN} stuff - packages such as the NPE firmware
SLUGOS_MACHINE_RDEPENDS_nslu2 = "\
ixp4xx-npe \
"

DISTRO_EXTRA_DEPENDS ?= ""
DEPENDS += "${DISTRO_EXTRA_DEPENDS}"

DISTRO_EXTRA_RDEPENDS ?= ""

## This comment block is temporary, to be removed once SlugOS 5.0 stabilizes
##RDEPENDS_${PN} += "\
##	kernel ixp4xx-npe \
##	base-files base-passwd netbase \
##        busybox initscripts-slugos slugos-init \
##        update-modules sysvinit tinylogin udev \
##	module-init-tools modutils-initscripts \
##        ipkg-collateral ipkg ipkg-link \
##	libgcc \
##	beep \
##	util-linux-mount \
##	util-linux-umount \
##	util-linux-swaponoff \
##	util-linux-losetup \
##	${SLUGOS_STANDARD_RDEPENDS} \
##	${DISTRO_EXTRA_RDEPENDS}"
## SlugOS 5.0 - original RDEPENDS_${PN} above for reference; tinylogin and the
## util-linux-* utilities are now replaced by busybox tools.  Also, ipkg
## is replaced by a trimmed-down version of opkg (no package signatures,
## and it uses the busybox wget command instead of libcurl - MJW
## SlugOS 5.0 - module-init-tools replaced by busybox as well - MJW
## SlugOS 5.2 - module-init-tools reinstated due to busybox bugs - MJW
## SlugOS 5.4 - util-linux-mount reinstated due to busybox bugs - MJW

RDEPENDS_${PN} += "\
	kernel \
	base-files base-passwd netbase \
        busybox initscripts-slugos slugos-init \
        update-modules sysvinit udev \
	module-init-tools modutils-initscripts \
        opkg-collateral ${IPKG_VARIANT} \
	libgcc \
	beep \
	util-linux-mount \
	${SLUGOS_STANDARD_RDEPENDS} \
	${SLUGOS_MACHINE_RDEPENDS} \
	${DISTRO_EXTRA_RDEPENDS}"

DISTRO_EXTRA_RRECOMMENDS ?= ""
RRECOMMENDS_${PN} += "\
	openssh \
	${SLUGOS_STANDARD_RRECOMMENDS} \
        ${SLUGOS_MACHINE_RRECOMMENDS} \
	${DISTRO_EXTRA_RRECOMMENDS}"