diff options
-rw-r--r-- | packages/images/nas-server-image.bb | 47 | ||||
-rw-r--r-- | packages/meta/meta-nas-server.bb | 10 | ||||
-rw-r--r-- | packages/tasks/task-nas-server.bb | 94 |
3 files changed, 151 insertions, 0 deletions
diff --git a/packages/images/nas-server-image.bb b/packages/images/nas-server-image.bb new file mode 100644 index 0000000000..d4a012c082 --- /dev/null +++ b/packages/images/nas-server-image.bb @@ -0,0 +1,47 @@ +# This image is intended to provide a configuration +# for a network attached storage server device. + +# Key features are: +# +# 1) Must be able to mount attached storage devices like +# internal disks, external USB disks, etc. Should support +# various filesystem choices, but ext2 at a minimum. +# +# 2) Must be able to boot from internal flash, or directly +# from a filesystem stored on the attached storage. +# +# 3) Must be able to share that storage across the network +# using various protocols like Samba, NFS, etc. +# +# 4) Bonus points for being able to support other central +# network services like a central gateway machine might. + +# Although it is tested with the Angstrom distro, it is +# intended to be distro-agnostic. + +DISTRO_SSH_DAEMON ?= "dropbear" +DISTRO_PACKAGE_MANAGER ?= "ipkg ipkg-collateral" + +DEPENDS = "task-boot task-base-apex \ + task-distro-base task-machine-base \ + ${DISTRO_SSH_DAEMON} \ + ${DISTRO_PACKAGE_MANAGER} \ + task-base-usbhost task-base-ext2 \ + task-nas-server-everything \ + " + +IMAGE_INSTALL_TASKS = "\ + task-nas-server-everything \ + " + +IMAGE_INSTALL = "task-boot task-base-apex \ + ${DISTRO_SSH_DAEMON} \ + ${DISTRO_PACKAGE_MANAGER} \ + task-base-usbhost task-base-ext2 \ + ${IMAGE_INSTALL_TASKS} \ + " + +export IMAGE_BASENAME = "nas-server-image" +IMAGE_LINGUAS = "" + +inherit image diff --git a/packages/meta/meta-nas-server.bb b/packages/meta/meta-nas-server.bb new file mode 100644 index 0000000000..3deb44c2bd --- /dev/null +++ b/packages/meta/meta-nas-server.bb @@ -0,0 +1,10 @@ +DESCRIPTION = "Meta-package for a network attached storage server" +LICENSE = "MIT" +PR = "r0" + +RDEPENDS = "\ + task-nas-server-everything \ + " + +inherit meta + diff --git a/packages/tasks/task-nas-server.bb b/packages/tasks/task-nas-server.bb new file mode 100644 index 0000000000..bfecfc8822 --- /dev/null +++ b/packages/tasks/task-nas-server.bb @@ -0,0 +1,94 @@ +DESCRIPTION = "Tasks for a Network Attached Storage server" +LICENSE = "MIT" +PROVIDES = "task-nas-server-everything" +PR = "r0" + +inherit task + +PACKAGES = "\ + task-nas-server-everything \ + ${NAS_SERVER_PACKAGES} \ +" + +NAS_SERVER_PACKAGES = "\ + task-nas-server-base \ + task-nas-server-samba \ + task-nas-server-dnsmasq \ + task-nas-server-iptables \ + task-nas-server-tzdata \ + task-nas-server-nfs \ + task-nas-server-vfat \ + task-nas-server-ntfs \ + task-nas-server-ext3 \ + task-nas-server-reiserfs \ +" + +RDEPENDS_task-nas-server-everything = "${NAS_SERVER_PACKAGES}" + +DESCRIPTION_task-nas-server-base = "NAS-Server: Base Packages" +RDEPENDS_task-nas-server-base = "\ +" +RRECOMMENDS_task-nas-server-base = "\ +" + +DESCRIPTION_task-nas-server-samba = "NAS-Server: Samba Server" +RDEPENDS_task-nas-server-samba = "\ + samba swat \ +" +RRECOMMENDS_task-nas-server-samba = "\ +" + +DESCRIPTION_task-nas-server-dnsmasq = "NAS-Server: DNS/DHCP Server" +RDEPENDS_task-nas-server-dnsmasq = "\ + dnsmasq \ +" +RRECOMMENDS_task-nas-server-dnsmasq = "\ +" + +DESCRIPTION_task-nas-server-iptables = "NAS-Server: Netfilter/Iptables Support" +RDEPENDS_task-nas-server-iptables = "\ + iptables \ +" +RRECOMMENDS_task-nas-server-iptables = "\ + kernel-module-iptable-nat \ + kernel-module-iptable-mangle \ + kernel-module-ipt-masquerade \ +" + +DESCRIPTION_task-nas-server-tzdata = "NAS-Server: Timezone Support" +RDEPENDS_task-nas-server-tzdata = "\ + tzdata \ +" +RRECOMMENDS_task-nas-server-tzdata = "\ +" + +DESCRIPTION_task-nas-server-nfs = "NAS-Server: NFS Server" +RDEPENDS_task-nas-server-nfs = "\ + nfs-utils portmap \ +" +RRECOMMENDS_task-nas-server-nfs = "\ +" + +DESCRIPTION_task-nas-server-vfat = "NAS-Server: FAT Filesystem" +RDEPENDS_task-nas-server-vfat = "\ +" +RRECOMMENDS_task-nas-server-vfat = "\ +" + +DESCRIPTION_task-nas-server-ntfs = "NAS-Server: NTFS Filesystem" +RDEPENDS_task-nas-server-ntfs = "\ +" +RRECOMMENDS_task-nas-server-ntfs = "\ +" + +DESCRIPTION_task-nas-server-ext3 = "NAS-Server: EXT3 Filesystem" +RDEPENDS_task-nas-server-ext3 = "\ +" +RRECOMMENDS_task-nas-server-ext3 = "\ +" + +DESCRIPTION_task-nas-server-reiserfs = "NAS-Server: ReiserFS Filesystem" +RDEPENDS_task-nas-server-reiserfs = "\ +" +RRECOMMENDS_task-nas-server-reiserfs = "\ +" |