diff options
Diffstat (limited to 'packages/images')
29 files changed, 790 insertions, 0 deletions
diff --git a/packages/images/.mtn2git_empty b/packages/images/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/images/.mtn2git_empty diff --git a/packages/images/bootstrap-image.bb b/packages/images/bootstrap-image.bb new file mode 100644 index 0000000000..1791dd8f56 --- /dev/null +++ b/packages/images/bootstrap-image.bb @@ -0,0 +1,12 @@ +export IMAGE_BASENAME = "bootstrap-image" +export IMAGE_LINGUAS = "" +export IPKG_INSTALL = "task-bootstrap" + +DEPENDS = "task-bootstrap" + +inherit image_ipk + +FEED_URIS_append_familiar = " x11##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/x11 \ + opie##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/opie" + +LICENSE = MIT diff --git a/packages/images/dvb-image.bb b/packages/images/dvb-image.bb new file mode 100644 index 0000000000..fa964b4490 --- /dev/null +++ b/packages/images/dvb-image.bb @@ -0,0 +1,11 @@ +export IMAGE_BASENAME = "dvb-image" + +IMAGE_LINGUAS = "" + +DVB_PACKAGES = "task-bootstrap task-dvb" + +export IPKG_INSTALL = "${DVB_PACKAGES}" +DEPENDS = "${DVB_PACKAGES}" + +inherit image_ipk +LICENSE = MIT diff --git a/packages/images/e-image-core.bb b/packages/images/e-image-core.bb new file mode 100644 index 0000000000..9a1ed51a1a --- /dev/null +++ b/packages/images/e-image-core.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "An X11-based distribution with the Enlightenment Window Manager" +LICENSE = "MIT" +PR = "r1" + +export IMAGE_BASENAME = "e-image-core" +export IMAGE_LINGUAS = "" + +DEPENDS = "task-bootstrap \ + xserver-kdrive \ + task-e-x11-core" + +PREFERRED_PROVIDER_virtual/xserver = "xserver-kdrive" +PREFERRED_PROVIDER_virtual/evas = "evas-x11" +PREFERRED_PROVIDER_virtual/ecore = "ecore-x11" +PREFERRED_PROVIDER_virtual/imlib2 = "imlib2-x11" +PREFERRED_PROVIDER_virtual/libxine = "libxine-x11" +PREFERRED_PROVIDER_libx11 = "libx11" + +export IPKG_INSTALL = "task-bootstrap task-e-x11-core xserver-kdrive-fbdev glibc-charmap-utf-8 glibc-localedata-i18n" + +inherit image_ipk diff --git a/packages/images/e-image.bb b/packages/images/e-image.bb new file mode 100644 index 0000000000..99f3858f66 --- /dev/null +++ b/packages/images/e-image.bb @@ -0,0 +1,36 @@ +include e-image-core.bb +DESCRIPTION = "An X11-based distribution with the Enlightenment Window Manager and Tools" +PR = "r5" + +export IMAGE_BASENAME = "e-image" +export IPKG_INSTALL += "task-e-x11-core \ + gpe-task-pim \ + gpe-task-settings \ + gpe-task-apps \ + gpe-task-connectivity \ + gpe-task-games \ + gpe-task-apps-extra \ + figment \ + xhost \ + gpe-soundserver \ + gpe-confd \ + xauth \ + e17-gpe-menu-convert \ + pango-module-basic-fc \ + gdk-pixbuf-loader-bmp \ + gdk-pixbuf-loader-gif \ + gdk-pixbuf-loader-jpeg \ + gdk-pixbuf-loader-png \ + gdk-pixbuf-loader-pnm \ + gdk-pixbuf-loader-xbm \ + gdk-pixbuf-loader-xpm" +# gdk-pixbuf-loader-pcx \ +# gdk-pixbuf-loader-ico \ +# gdk-pixbuf-loader-ani \ +# gdk-pixbuf-loader-ras \ +# gdk-pixbuf-loader-tga \ +# gdk-pixbuf-loader-wbmp \ + +DEPENDS += "task-e-x11-core task-gpe e17-gpe-menu-convert figment xhost gpe-soundserver gpe-confd xauth" + +RDEPENDS = "${IPKG_INSTALL}" diff --git a/packages/images/essential-image.bb b/packages/images/essential-image.bb new file mode 100644 index 0000000000..53510ddc09 --- /dev/null +++ b/packages/images/essential-image.bb @@ -0,0 +1,29 @@ +# +# Copyright Matthias Hentges <devel@hentges.net> (c) 2006 +# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license) +# +# Filename: essential-image.bb +# Date: 23-Apr-06 + +DESCRIPTION = "<description>" +MAINTAINER = "Matthias 'CoreDump' Hentges <oe@hentges.net>" +HOMEPAGE = "http://www.hentges.net/misc/openzaurus/index.shtml" + +###################################################################################### + +PV = "0.0.1" +PR = "r0" + +###################################################################################### + +inherit image_ipk + +###################################################################################### + +DEPENDS = "task-essential-to-boot" + +###################################################################################### + +export IMAGE_BASENAME = "essential-image" +export IMAGE_LINGUAS = "" +export IPKG_INSTALL = "task-essential-to-boot" diff --git a/packages/images/essential-machine-image.bb b/packages/images/essential-machine-image.bb new file mode 100644 index 0000000000..c3c7b33b92 --- /dev/null +++ b/packages/images/essential-machine-image.bb @@ -0,0 +1,37 @@ +# +# Copyright Matthias Hentges <devel@hentges.net> (c) 2006 +# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license) +# +# Filename: essential-machine-image.bb +# Date: 24-Apr-06 + +DESCRIPTION = "<description>" +MAINTAINER = "Matthias 'CoreDump' Hentges <oe@hentges.net>" +HOMEPAGE = "http://www.hentges.net/misc/openzaurus/index.shtml" + +###################################################################################### + +PV = "0.0.1" +PR = "r0" + +###################################################################################### + +inherit image_ipk + +###################################################################################### + +DEPENDS = "task-essential-to-boot task-essential-parts" + +###################################################################################### + +MACHINE_TASKS_akita = "task-essential-to-boot \ + task-essential-pcmcia task-essential-userspace \ + task-essential-usbhost task-essential-usbclient \ + task-essential-sound task-essential-irda \ + task-essential-sd" + +###################################################################################### + +export IMAGE_BASENAME = "essential-image" +export IMAGE_LINGUAS = "" +export IPKG_INSTALL = "${MACHINE_TASKS}" diff --git a/packages/images/gpe-image-blank-user.bb b/packages/images/gpe-image-blank-user.bb new file mode 100644 index 0000000000..c8e24ae035 --- /dev/null +++ b/packages/images/gpe-image-blank-user.bb @@ -0,0 +1,9 @@ +include gpe-image.bb + +MAINTAINER = "Rob Taylor <rjt@cambridgebroadband.com" + +PR = "r5" + +export IMAGE_BASENAME = "gpe-image-blank-user" + +ROOTFS_POSTPROCESS_COMMAND += "adduser -D user" diff --git a/packages/images/gpe-image.bb b/packages/images/gpe-image.bb new file mode 100644 index 0000000000..92bed0dd5c --- /dev/null +++ b/packages/images/gpe-image.bb @@ -0,0 +1,42 @@ +FEED_URIS_append_familiar = " x11##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/x11" + +PR = "r20" + +export IMAGE_BASENAME = "gpe-image" + +GPE_EXTRA_THEMES = "gpe-theme-industrial" + +GPE_EXTRA_INSTALL_none = "" +GPE_EXTRA_INSTALL_bigscreen = "gpe-task-games ${GPE_EXTRA_THEMES}" +GPE_EXTRA_INSTALL_smallscreen = "gpe-task-games ${GPE_EXTRA_THEMES}" + +GUI_MACHINE_CLASS ?= "none" +GPE_EXTRA_INSTALL += "${GPE_EXTRA_INSTALL_${GUI_MACHINE_CLASS}}" + +#ship more stuff with devices with >16MB of flash +GPE_BIGFLASH_INSTALL := '${@base_conditional("ROOT_FLASH_SIZE", "16", "", "\ + gpe-task-connectivity \ + gpe-theme-clearlooks \ + figment \ +",d)}' + +GPE_EXTRA_INSTALL += ${GPE_BIGFLASH_INSTALL} + +XSERVER ?= "xserver-kdrive-fbdev" + +DEPENDS = "task-bootstrap task-gpe" +RDEPENDS = "${IPKG_INSTALL}" + +export IPKG_INSTALL = "\ + task-bootstrap \ + gpe-task-base \ + gpe-task-pim \ + gpe-task-settings \ + gpe-task-apps \ + ${XSERVER} \ + ${GPE_EXTRA_INSTALL}" + +#ROOTFS_POSTPROCESS_COMMAND += "zap_root_password; " + +inherit image_ipk +LICENSE = MIT diff --git a/packages/images/ludeos-image.bb b/packages/images/ludeos-image.bb new file mode 100644 index 0000000000..669ff49634 --- /dev/null +++ b/packages/images/ludeos-image.bb @@ -0,0 +1 @@ +DEPENDS = slugos-image
\ No newline at end of file diff --git a/packages/images/maemo-image.bb b/packages/images/maemo-image.bb new file mode 100644 index 0000000000..2adc88b958 --- /dev/null +++ b/packages/images/maemo-image.bb @@ -0,0 +1,27 @@ +# +# Meta package for maemo based system image +# + +FEED_URIS_append_familiar = " maemo##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/maemo" + +PR = "r2" + +export IMAGE_BASENAME = "maemo-image" + +GUI_MACHINE_CLASS ?= "none" + +MAEMO_EXTRA_DEPENDS = "scap dosfstools" +MAEMO_EXTRA_INSTALL = "osso-af-services osso-af-base-apps scap dosfstools" + +XSERVER ?= "xserver-kdrive-omap" + +DEPENDS = "task-bootstrap \ + meta-maemo \ + ${MAEMO_EXTRA_DEPENDS}" + +export IPKG_INSTALL = "task-bootstrap maemo-task-base maemo-task-theme \ + maemo-task-apps ${MAEMO_EXTRA_INSTALL} \ + ${XSERVER}" + +inherit image_ipk +LICENSE = MIT diff --git a/packages/images/mythfront-image.bb b/packages/images/mythfront-image.bb new file mode 100644 index 0000000000..7836258940 --- /dev/null +++ b/packages/images/mythfront-image.bb @@ -0,0 +1,13 @@ +export IMAGE_BASENAME = "mythfront-image" + +IMAGE_ROOTFS_SIZE_ext2 = "85000" +IMAGE_ROOTFS_SIZE_ext2.gz = "85000" +IMAGE_LINGUAS = "" + +MYTHFRONT_PACKAGES = "task-bootstrap task-mythfront" + +export IPKG_INSTALL = "${MYTHFRONT_PACKAGES}" +DEPENDS = "${MYTHFRONT_PACKAGES}" + +inherit image_ipk +LICENSE = MIT diff --git a/packages/images/nslu2-linksys-image.bb b/packages/images/nslu2-linksys-image.bb new file mode 100644 index 0000000000..d1bdbe64b9 --- /dev/null +++ b/packages/images/nslu2-linksys-image.bb @@ -0,0 +1,14 @@ +IMAGE_LINGUAS = "" +USE_DEVFS = "1" + +IMAGE_BASENAME = "nslu2-linksys" + +IPKG_INSTALL = "nslu2-linksys-ramdisk" + +DEPENDS = "nslu2-linksys-kernel ${IPKG_INSTALL}" + +NSLU2_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-nslu2.txt')}" +EXTRA_IMAGECMD_ext2.gz = "-f ${NSLU2_DEVICE_TABLE}" + +inherit image_ipk +LICENSE = MIT diff --git a/packages/images/nylon-image-base.bb b/packages/images/nylon-image-base.bb new file mode 100644 index 0000000000..a4f6d17dd8 --- /dev/null +++ b/packages/images/nylon-image-base.bb @@ -0,0 +1,22 @@ +export IMAGE_BASENAME = "nylon-base" + +NYLON_BASE = "base-files base-passwd bash busybox \ + ipkg initscripts less \ + modutils modutils-initscripts mtd-utils \ + nano ncurses netbase \ + openssh sysvinit \ + timezones tinylogin" + +DEPENDS = "virtual/kernel" +RDEPENDS = "kernel modutils-depmod modutils-modinfo \ + ${NYLON_BASE} ${BOOTSTRAP_EXTRA_RDEPENDS}" + +export IPKG_INSTALL = "${RDEPENDS}" + +IMAGE_LINGUAS = "" + +# we dont need the kernel in the image +ROOTFS_POSTPROCESS_COMMAND = "rm -f ${IMAGE_ROOTFS}/tmp/zImage*" + +inherit image_ipk nylon-image +LICENSE = MIT diff --git a/packages/images/nylon-image-extra.bb b/packages/images/nylon-image-extra.bb new file mode 100644 index 0000000000..be20ddde78 --- /dev/null +++ b/packages/images/nylon-image-extra.bb @@ -0,0 +1,11 @@ +include nylon-image-standard.bb + +export IMAGE_BASENAME = "nylon-extra" + +RDEPENDS = "\ + kismet \ + netperf \ + nylon-statistics \ + openvpn" + +LICENSE = MIT diff --git a/packages/images/nylon-image-mini.bb b/packages/images/nylon-image-mini.bb new file mode 100644 index 0000000000..e3ac80720d --- /dev/null +++ b/packages/images/nylon-image-mini.bb @@ -0,0 +1,19 @@ +export IMAGE_BASENAME = "nylon-mini" + +NYLON_BASE = "base-files base-passwd busybox \ + dropbear \ + miniinit \ + modutils-collateral \ + modutils-initscripts \ + netbase \ + wireless-tools" + +RDEPENDS = "kernel \ + ${NYLON_BASE} ${BOOTSTRAP_EXTRA_RDEPENDS}" + +export IPKG_INSTALL = "${RDEPENDS}" + +IMAGE_LINGUAS = "" + +inherit image_ipk +LICENSE = "MIT" diff --git a/packages/images/nylon-image-standard.bb b/packages/images/nylon-image-standard.bb new file mode 100644 index 0000000000..8d10e9a30f --- /dev/null +++ b/packages/images/nylon-image-standard.bb @@ -0,0 +1,29 @@ +include nylon-image-base.bb + +export IMAGE_BASENAME = "nylon-standard" + +NYLON_STANDARD = "\ + bridge-utils \ + dnsmasq \ + hostap-utils \ + hostap-daemon \ + linux-hotplug \ + ifplugd iproute2 iptables \ + madwifi-modules \ + nylon-scripts \ + olsrd \ + ppp pciutils \ + rp-pppoe \ + shorewall \ + tcpdump \ + usbutils \ + wireless-tools \ + wpa-supplicant \ + yamonenv" + +DEPENDS += "hostap-modules ntp \ + ${NYLON_STANDARD}" + +RDEPENDS += "hostap-modules-pci ntpdate \ + ${NYLON_STANDARD}" +LICENSE = MIT diff --git a/packages/images/opie-image.bb b/packages/images/opie-image.bb new file mode 100644 index 0000000000..c786f67e0b --- /dev/null +++ b/packages/images/opie-image.bb @@ -0,0 +1,70 @@ +export IMAGE_BASENAME = "opie-image" +export IMAGE_LINGUAS = "" + +FEED_URIS_append_familiar = " opie##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/opie" + +LICENSE = "MIT" +PR = "r21" + +DEPENDS = "task-bootstrap task-opie" +RDEPENDS = "${INSTALL_PACKAGES}" + +extra_stuff := '${@base_conditional("ROOT_FLASH_SIZE", "24", "", "task-opie-extra-games task-opie-extra-apps task-opie-extra-styles",d)}' + +INSTALL_PACKAGES = "task-bootstrap task-opie-base task-opie-base-applets \ + task-opie-base-inputmethods task-opie-base-apps \ + task-opie-base-settings task-opie-base-decorations \ + task-opie-base-styles task-opie-base-pim \ + task-opie-extra-settings \ + task-opie-bluetooth task-opie-irda \ + ${extra_stuff}" + +export IPKG_INSTALL = "${INSTALL_PACKAGES}" + +# merge feed-sources into ipkg.conf for opie-aqpkg as it can't handle feed-sources outside of ipkg.conf. +merge_feeds() { + + if ! test -z "${FEED_URIS}" + then + # Die gracefully if ipkg-collateral failed + if ! test -e "${IMAGE_ROOTFS}/etc/ipkg.conf" + then + echo "[${IMAGE_ROOTFS}/etc/ipkg.conf] is missing!" + exit 1 + fi + + # comment out existing feed-sources inserted by ipkg-collateral + cat ${IMAGE_ROOTFS}/etc/ipkg.conf | sed "s/^src\ /#src\ /" > ${IMAGE_ROOTFS}/etc/ipkg.conf_ + rm ${IMAGE_ROOTFS}/etc/ipkg.conf && mv ${IMAGE_ROOTFS}/etc/ipkg.conf_ ${IMAGE_ROOTFS}/etc/ipkg.conf + + # extract, then delete destinations + cat ${IMAGE_ROOTFS}/etc/ipkg.conf | egrep "^dest\ " > ${IMAGE_ROOTFS}/etc/ipkg.conf.dest + cat ${IMAGE_ROOTFS}/etc/ipkg.conf | egrep -v "^dest\ " > ${IMAGE_ROOTFS}/etc/ipkg.conf_ + rm ${IMAGE_ROOTFS}/etc/ipkg.conf && mv ${IMAGE_ROOTFS}/etc/ipkg.conf_ ${IMAGE_ROOTFS}/etc/ipkg.conf + + + for line in ${FEED_URIS} + do + # strip leading and trailing spaces/tabs, then split into name and uri + line_clean="`echo "$line"|sed 's/^[ \t]*//;s/[ \t]*$//'`" + feed_name="`echo "$line_clean" | sed -n 's/\(.*\)##\(.*\)/\1/p'`" + feed_uri="`echo "$line_clean" | sed -n 's/\(.*\)##\(.*\)/\2/p'`" + + # insert new feed-sources + echo "src/gz $feed_name $feed_uri" >> ${IMAGE_ROOTFS}/etc/ipkg.conf + done + + # remove temporary files and rebuild ipkg.conf + echo "" >> ${IMAGE_ROOTFS}/etc/ipkg.conf + cat ${IMAGE_ROOTFS}/etc/ipkg.conf.dest >> ${IMAGE_ROOTFS}/etc/ipkg.conf + rm ${IMAGE_ROOTFS}/etc/ipkg.conf.dest + + # remove -feed.conf files which are no longer needed + cd ${IMAGE_ROOTFS}/etc/ipkg/ && rm -- *-feed.conf + fi +} + +# merge feed-sources into ipkg.conf and create /etc/timestamp from build date +IMAGE_PREPROCESS_COMMAND = "merge_feeds; create_etc_timestamp" + +inherit image_ipk diff --git a/packages/images/opie-kdepim-image.bb b/packages/images/opie-kdepim-image.bb new file mode 100644 index 0000000000..113608736a --- /dev/null +++ b/packages/images/opie-kdepim-image.bb @@ -0,0 +1,10 @@ +include opie-image.bb + +DEPENDS += "kdepimpi" +PR = "r1" + +export IMAGE_BASENAME = "opie-kdepim-image" + +INSTALL_PACKAGES += "kopi kapi kammu kopi-applet" + +export IPKG_INSTALL = "${INSTALL_PACKAGES}" diff --git a/packages/images/pivotboot-image.bb b/packages/images/pivotboot-image.bb new file mode 100644 index 0000000000..50634e0353 --- /dev/null +++ b/packages/images/pivotboot-image.bb @@ -0,0 +1,13 @@ +export IMAGE_BASENAME = "pivotboot-image" +export IMAGE_LINGUAS = "" +export IPKG_INSTALL = "task-pivotboot" + +DEPENDS = "task-pivotboot" +PR = "r1" + +inherit image_ipk + +FEED_URIS_append_familiar = " x11##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/x11 \ + opie##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/opie" + +LICENSE = "MIT" diff --git a/packages/images/sdl-image.bb b/packages/images/sdl-image.bb new file mode 100644 index 0000000000..0f3254b56e --- /dev/null +++ b/packages/images/sdl-image.bb @@ -0,0 +1,9 @@ +LICENSE = MIT + +export IMAGE_BASENAME = "sdl-image" + +DEPENDS = "task-bootstrap task-sdl" + +export IPKG_INSTALL = "task-bootstrap sdl-base" + +inherit image_ipk diff --git a/packages/images/sectest-gpe-image.bb b/packages/images/sectest-gpe-image.bb new file mode 100644 index 0000000000..be7f28fb91 --- /dev/null +++ b/packages/images/sectest-gpe-image.bb @@ -0,0 +1,39 @@ +MAINTAINER = "Bob Davies <tyggerbob@rogers.com>" +LICENSE = MIT +PR = "r6" + +FEED_URIS_append_familiar = " x11##http://familiar.handhelds.org/releases/${DISTRO_VERSION}/feed/x11" + +export IMAGE_BASENAME = "sectest-gpe-image" + +GPE_EXTRA_THEMES = "\ + gtk-theme-industrial \ + gtk-industrial-engine \ + matchbox-themes-extra-industrial" + +GPE_EXTRA_INSTALL_none = "" +GPE_EXTRA_INSTALL_smallscreen = "${GPE_EXTRA_THEMES}" +GPE_EXTRA_INSTALL_bigscreen = "minimo gpe-task-games ${GPE_EXTRA_THEMES}" +#GPE_EXTRA_INSTALL_bigscreen = "firefox linphone" + +GUI_MACHINE_CLASS ?= "none" +GPE_EXTRA_INSTALL += "${GPE_EXTRA_INSTALL_${GUI_MACHINE_CLASS}}" + +XSERVER ?= "xserver-kdrive-fbdev" + +DEPENDS = "task-bootstrap task-gpe" +RDEPENDS = "${IPKG_INSTALL}" + +export IPKG_INSTALL = "\ + task-bootstrap \ + gpe-task-base \ + gpe-task-pim \ + gpe-task-settings \ + gpe-task-sectest \ + ${XSERVER} \ + ${GPE_EXTRA_INSTALL}" + +ROOTFS_POSTPROCESS_COMMAND += "zap_root_password; " + +inherit image_ipk + diff --git a/packages/images/slugos-image.bb b/packages/images/slugos-image.bb new file mode 100644 index 0000000000..428a48bc28 --- /dev/null +++ b/packages/images/slugos-image.bb @@ -0,0 +1,140 @@ +# 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 = "Generic SlugOS image" +MAINTAINER = "NSLU2 Linux <nslu2-linux@yahoogroups.com>" +HOMEPAGE = "http://www.nslu2-linux.org" +LICENSE = "MIT" +PR = "r28" + +# SLUGOS_IMAGENAME defines the name of the image to be build, if it +# is not set this package will be skipped! +IMAGE_BASENAME = "${SLUGOS_IMAGENAME}" +IMAGE_FSTYPES = "jffs2" +EXTRA_IMAGECMD_jffs2 = "--pad --${SLUGOS_IMAGESEX} --eraseblock=0x20000 -D ${SLUGOS_DEVICE_TABLE}" +IMAGE_LINGUAS = "" + +# Setting USE_DEVFS prevents *any* entries being created initially +# in /dev +USE_DEVFS = "1" + +# This is passed to the image command to build the correct /dev +# directory (because only the image program can make actual +# dev entries!) +SLUGOS_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-slugos.txt')}" + +# IMAGE_PREPROCESS_COMMAND is run before making the image. In SlugOS the +# kernel image is removed from the root file system to recover the space used - +# SlugOS is assumed to boot from a separate kernel image in flash (not in the +# root file system), if this is not the case the following must not be done! +IMAGE_PREPROCESS_COMMAND += "rm ${IMAGE_ROOTFS}/boot/zImage*;" +IMAGE_PREPROCESS_COMMAND += "install -c -m 644 ${SLUGOS_DEVICE_TABLE} ${IMAGE_ROOTFS}/etc/device_table;" + +# Building a full image. If required do a post-process command which builds +# the full flash image using slugimage. At present this only works for NSLU2 images. +PACK_IMAGE = "" +IMAGE_POSTPROCESS_COMMAND += "${PACK_IMAGE}" +PACK_IMAGE_DEPENDS = "" +EXTRA_IMAGEDEPENDS += "${PACK_IMAGE_DEPENDS}" + +# This hack removes '${MACHINE}' from the end of the arch.conf for ipk, +# preventing _mach.ipk (with no byte sex) taking precedence over everything +# else. +ROOTFS_POSTPROCESS_COMMAND += "sed -i '$d' '${IMAGE_ROOTFS}/etc/ipkg/arch.conf';" + +# These depends define native utilities - they do not get put in the flash and +# are not required to build the image. +IMAGE_TOOLS = "" +EXTRA_IMAGEDEPENDS += "${IMAGE_TOOLS}" + +# CONFIG: +# SLUGOS_EXTRA_RDEPENDS: set in conf, things to add to the image +# SLUGOS_SUPPORT: set to here, see below, added to the image. +# SLUGOS_KERNEL: set here, kernel modules added to the image +# +# Do not override the last two unless you really know what you +# are doing - there is more information below. + +# diff, cpio and find are required for reflash and turnup ram. +# Removing these probably leaves the system bootable, but standard +# openslug and ucslugc stuff won't work, so only take these out in +# very non-standard turnkey slugos builds. +# +# udev is the default way of handling devices, there is no guarantee +# that the static device table is completely correct (it is just +# known to be sufficient for boot.) +SLUGOS_SUPPORT ?= "diffutils cpio findutils udev" + +# kernel-module-af-packet must be in the image for DHCP to work +# kernel-module-netconsole is here because it is small and is +# highly useful on minimal systems (which really don't have anywhere +# other than the network to output error messages!) +SLUGOS_KERNEL ?= "kernel-module-af-packet kernel-module-netconsole" + +RDEPENDS = "kernel ixp-eth \ + base-files base-passwd netbase \ + busybox hotplug-ng initscripts-slugos slugos-init \ + update-modules sysvinit tinylogin \ + module-init-tools modutils-initscripts \ + ipkg-collateral ipkg ipkg-link \ + portmap \ + dropbear \ + beep \ + e2fsprogs-blkid \ + util-linux-mount \ + util-linux-umount \ + util-linux-swaponoff \ + util-linux-losetup \ + ${SLUGOS_SUPPORT} \ + ${SLUGOS_KERNEL} \ + ${SLUGOS_EXTRA_RDEPENDS}" + +IPKG_INSTALL = "${RDEPENDS}" + +inherit image_ipk + +python () { + # Don't build slugos images unless the configuration is set up + # for an image build! + if bb.data.getVar("SLUGOS_IMAGENAME", d, 1) == '' or bb.data.getVar("SLUGOS_IMAGESEX", d, 1) == '': + raise bb.parse.SkipPackage("absent or broken SlugOS configuration") +} + +#-------------------------------------------------------------------------------- +# NSLU2 specific +# +#NOTE: you do not actually need the boot loader in normal use because it is +# *not* overwritten by a standard upslug upgrade, so you can make an image with +# just non-LinkSys software which can be flashed into the NSLU2. Because +# LinkSys have made "EraseAll" available, however, (this does overwrite RedBoot) +# it is a bad idea to produce flash images without a valid RedBoot - that allows +# an innocent user upgrade attempt to instantly brick the NSLU2. +PACK_IMAGE += "${@['', 'nslu2_pack_image;'][bb.data.getVar('SLUGOS_FLASH_IMAGE', d, 1) == 'yes']}" +PACK_IMAGE_DEPENDS += "${@['', 'slugimage-native nslu2-linksys-firmware'][bb.data.getVar('SLUGOS_FLASH_IMAGE', d, 1) == 'yes']}" + +NSLU2_SLUGIMAGE_ARGS ?= "" + +nslu2_pack_image() { + if test '${SLUGOS_FLASH_IMAGE}' = yes + then + install -d ${DEPLOY_DIR_IMAGE}/slug + install -m 0644 ${STAGING_LIBDIR}/nslu2-binaries/RedBoot \ + ${STAGING_LIBDIR}/nslu2-binaries/Trailer \ + ${STAGING_LIBDIR}/nslu2-binaries/SysConf \ + ${DEPLOY_DIR_IMAGE}/slug/ + install -m 0644 ${DEPLOY_DIR_IMAGE}/zImage-nslu2${ARCH_BYTE_SEX} \ + ${DEPLOY_DIR_IMAGE}/slug/vmlinuz + install -m 0644 ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 \ + ${DEPLOY_DIR_IMAGE}/slug/flashdisk.jffs2 + cd ${DEPLOY_DIR_IMAGE}/slug + slugimage -p -b RedBoot -s SysConf -r Ramdisk:1,Flashdisk:flashdisk.jffs2 -t \ + Trailer -o ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.flashdisk.img \ + ${NSLU2_SLUGIMAGE_ARGS} + rm -rf ${DEPLOY_DIR_IMAGE}/slug + fi +} + +# upslug2 (in tmp/work/upslug2-native-*) is the program to write the NSLU2 flash +IMAGE_TOOLS_nslu2 = "upslug2-native" diff --git a/packages/images/slugos-imagename.bb b/packages/images/slugos-imagename.bb new file mode 100644 index 0000000000..2637524407 --- /dev/null +++ b/packages/images/slugos-imagename.bb @@ -0,0 +1,29 @@ +# This is an inglorious hack to provide a package to match +# ${SLUGOS_IMAGENAME}-image +MAINTAINER = "John Bowler <jbowler@acm.org> +LICENSE = "MIT" +PN = "${SLUGOS_IMAGENAME}-image" +PV = "0" +PR = "r0" +DEPENDS = "slugos-image" +PACKAGES = "" +INHIBIT_DEFAULT_DEPS = "1" + +SLUGOS_IMAGENAME ?= "slugos" + +do_fetch() { +} +do_unpack() { +} +do_patch() { +} +do_configure() { +} +do_compile() { +} +do_install() { +} +do_stage() { +} +do_build() { +} diff --git a/packages/images/twin-image.bb b/packages/images/twin-image.bb new file mode 100644 index 0000000000..7015f7020c --- /dev/null +++ b/packages/images/twin-image.bb @@ -0,0 +1,18 @@ +export IMAGE_BASENAME="twin-image" + +DEPENDS = 'task-bootstrap \ + twin \ + orpheus \ + nano \ + vim \ + mutt' + +export IPKG_INSTALL = 'task-bootstrap \ + twin \ + orpheus \ + nano \ + vim \ + mutt' + +inherit image_ipk +LICENSE = MIT diff --git a/packages/images/uml-image.bb b/packages/images/uml-image.bb new file mode 100644 index 0000000000..6ebbf04537 --- /dev/null +++ b/packages/images/uml-image.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "A rootfs for User-Mode-Linux" +MAINTAINER = "Michael 'Mickey' Lauer <mickey@Vanille.de>" + +export IMAGE_BASENAME = "uml-image" + +OPIE_LIBS = "qte qpf-bitstream-vera libqpe-opie libopie2" +OPIE_BASE = "opie-qcop opie-quicklauncher opie-taskbar" + +DEPENDS = "task-bootstrap" +export IPKG_INSTALL = "${DEPENDS}" + +inherit image_ipk +LICENSE = MIT diff --git a/packages/images/unslung-image.bb b/packages/images/unslung-image.bb new file mode 100644 index 0000000000..e57960ecdb --- /dev/null +++ b/packages/images/unslung-image.bb @@ -0,0 +1,90 @@ +LICENSE = MIT +PR = "r17" + +IMAGE_BASENAME = "unslung" + +IMAGE_LINGUAS = "" +USE_DEVFS = "1" + +DEPENDS = "virtual/kernel \ + ${UNSLUNG_EXTRA_DEPENDS}" + +RDEPENDS = "kernel update-modules unslung-rootfs \ + libc6-unslung slingbox ipkg \ + cpio \ + findutils \ + ${UNSLUNG_EXTRA_RDEPENDS}" + +IPKG_INSTALL = "kernel update-modules unslung-rootfs \ + libc6-unslung slingbox ipkg \ + cpio \ + findutils \ + kernel-module-netconsole \ + ${UNSLUNG_EXTRA_INSTALL}" + +IMAGE_PREPROCESS_COMMAND += "unslung_clean_image; " + +inherit image_ipk + +# Note that anything in this function must be repeatable without having to rebuild the rootfs +unslung_clean_image () { + + # Remove the patches + rm -rf ${IMAGE_ROOTFS}/patches + + # Remove the kernel image + rm -rf ${IMAGE_ROOTFS}/boot + # And remove the post and pre scripts for the kernel; saves flash space + rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/info/kernel.postinst + rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/info/kernel.postrm + + # Remove info from the local feed used to build the image + rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/lists/* + rm -f ${IMAGE_ROOTFS}/${sysconfdir}/version + + # Tidy up some thing which are in the wrong place + mv ${IMAGE_ROOTFS}${libdir}/libipkg* ${IMAGE_ROOTFS}/lib/ + + # Remove the ipkg symlink - unsling puts it back in + rm -f ${IMAGE_ROOTFS}${bindir}/ipkg + # and make the ipkg symlink point to the ipkg-fl utility instead. + ln -s ipkg-fl ${IMAGE_ROOTFS}${bindir}/ipkg + + # Hack out the modutils stuff - it's too hard to make it work + rm -f ${IMAGE_ROOTFS}${libdir}/ipkg/info/update-modules.postinst + rm -rf ${IMAGE_ROOTFS}/etc/rcS.d + echo "#!/bin/sh" > ${IMAGE_ROOTFS}/usr/sbin/update-modules + echo "exit 0" >> ${IMAGE_ROOTFS}/usr/sbin/update-modules + chmod ugo+x ${IMAGE_ROOTFS}/usr/sbin/update-modules + echo "#!/bin/sh" > ${IMAGE_ROOTFS}/sbin/depmod + echo "exit 0" >> ${IMAGE_ROOTFS}/sbin/depmod + chmod ugo+x ${IMAGE_ROOTFS}/sbin/depmod + + # Don't need this empty directory hanging around + rm -rf ${IMAGE_ROOTFS}/lib/modules/2.4.22-xfs/pcmcia + + # Strip symbols and fix permissions on the libgcc_s.so.1 library + ${STRIP} ${IMAGE_ROOTFS}/lib/libgcc_s.so.1 + chmod ugo+x ${IMAGE_ROOTFS}/lib/libgcc_s.so.1 + + # We need cpio and find, but we don't need any of the other stuff in the + # packages (users can install the full package with ipkg after unsling). + # (make sure that if the package is not included (i.e. using slingbox + # instead) that the files are not deleted; they might be part of slingbox) + + #-- these are for cpio: + rm -f ${IMAGE_ROOTFS}/usr/bin/mt + rm -rf ${IMAGE_ROOTFS}/usr/libexec + + #-- and these for find: + rm -f ${IMAGE_ROOTFS}/usr/bin/locate + rm -f ${IMAGE_ROOTFS}/usr/bin/updatedb + rm -f ${IMAGE_ROOTFS}/usr/bin/xargs +} + +python () { + # Don't build unslung images unless we're targeting an nslu2 + mach = bb.data.getVar("MACHINE", d, 1) + if mach != 'nslu2': + raise bb.parse.SkipPackage("Unslung only builds for the Linksys NSLU2") +} diff --git a/packages/images/xfce-image.bb b/packages/images/xfce-image.bb new file mode 100644 index 0000000000..5605a6b2ee --- /dev/null +++ b/packages/images/xfce-image.bb @@ -0,0 +1,15 @@ +export IMAGE_BASENAME = "xfce-image" + +IMAGE_LINGUAS = "" + +X_DEPENDS = "virtual/xserver" +X_RDEPENDS = "xserver-kdrive-fbdev" + +XFCE_DEPENDS = "task-bootstrap task-xfce-base" +XFCE_RDEPENDS = "${XFCE_DEPENDS}" + +export IPKG_INSTALL = "${X_RDEPENDS} ${XFCE_RDEPENDS}" +DEPENDS = "${X_DEPENDS} ${XFCE_DEPENDS}" + +inherit image_ipk +LICENSE = MIT diff --git a/packages/images/xterminal-image.bb b/packages/images/xterminal-image.bb new file mode 100644 index 0000000000..2b98ec98fc --- /dev/null +++ b/packages/images/xterminal-image.bb @@ -0,0 +1,11 @@ +export IMAGE_BASENAME = "xterminal-image" + +IMAGE_LINGUAS = "" + +XTERMINAL_PACKAGES = "task-bootstrap task-xterminal" + +export IPKG_INSTALL = "${XTERMINAL_PACKAGES}" +DEPENDS = "${XTERMINAL_PACKAGES}" + +inherit image_ipk +LICENSE = MIT |