diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2016-07-15 13:59:50 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2016-07-15 13:59:50 +0200 |
commit | ca322d1a7a44f727acdeea59fe87d060f9988f3e (patch) | |
tree | 4f6ab10753e21c112f24f81384b4daa2ceb131b5 | |
parent | 6cef2acb849067e60083a10e6903e45fbfe978b2 (diff) | |
download | itzks-systems-ca322d1a7a44f727acdeea59fe87d060f9988f3e.tar.gz itzks-systems-ca322d1a7a44f727acdeea59fe87d060f9988f3e.tar.bz2 itzks-systems-ca322d1a7a44f727acdeea59fe87d060f9988f3e.zip |
New ITZkS system types: displayserver, display.
29 files changed, 285 insertions, 0 deletions
diff --git a/README.display b/README.display new file mode 100644 index 0000000..1c0a3cd --- /dev/null +++ b/README.display @@ -0,0 +1,7 @@ +IT-Zukunft Schule: Substitue Teacher Schedule Display Chroot Images +------------------ + +This package pulls in software required for running a +ITZkS Diskless Display. + +Mike Gabriel, 20160610
\ No newline at end of file diff --git a/README.displayserver b/README.displayserver new file mode 100644 index 0000000..0376b2c --- /dev/null +++ b/README.displayserver @@ -0,0 +1,7 @@ +IT-Zukunft Schule: Diskless Workstation Server (disklserver.intern) +------------------ + +This package pulls in software required for running a +ITZkS server providing Substitute Teacher Schedule Displays. + +Mike Gabriel, 20160610
\ No newline at end of file diff --git a/debian/control b/debian/control index 435907e..4a35c6c 100644 --- a/debian/control +++ b/debian/control @@ -34,6 +34,8 @@ Replaces: itzks-systems-mainserver, itzks-systems-disklserver, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-terminalserver, itzks-systems-backup, gnu-fdisk, @@ -43,6 +45,8 @@ Breaks: itzks-systems-mainserver, itzks-systems-disklserver, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-terminalserver, itzks-systems-backup, Depends: @@ -161,6 +165,8 @@ Replaces: itzks-systems-workstation, itzks-systems-disklserver, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-terminalserver, itzks-systems-virtman, itzks-systems-backup, @@ -171,6 +177,8 @@ Breaks: itzks-systems-workstation, itzks-systems-disklserver, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-terminalserver, itzks-systems-virtman, itzks-systems-backup, @@ -232,6 +240,8 @@ Replaces: itzks-systems-mainserver, itzks-systems-workstation, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-terminalserver, itzks-systems-virtman, itzks-systems-backup, @@ -242,6 +252,8 @@ Breaks: itzks-systems-mainserver, itzks-systems-workstation, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-terminalserver, itzks-systems-virtman, itzks-systems-backup, @@ -294,6 +306,8 @@ Replaces: itzks-systems-mainserver, itzks-systems-workstation, itzks-systems-disklserver, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-terminalserver, itzks-systems-virtman, itzks-systems-backup, @@ -304,6 +318,8 @@ Breaks: itzks-systems-mainserver, itzks-systems-workstation, itzks-systems-disklserver, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-terminalserver, itzks-systems-virtman, itzks-systems-backup, @@ -498,6 +514,132 @@ Description: Profiling for ITZkS Diskless Workstation Systems ITZkS (IT-Zukunft Schule) is a Nothern German project and based on Debian Edu / Skolelinux. +Package: itzks-systems-displayserver +Architecture: all +Replaces: + itzks-systems-mainserver, + itzks-systems-workstation, + itzks-systems-disklserver, + itzks-systems-diskless, + itzks-systems-display, + itzks-systems-terminalserver, + itzks-systems-virtman, + itzks-systems-backup, + debian-edu-artwork-joy, + gnu-fdisk, +Breaks: + itzks-systems-mainserver, + itzks-systems-workstation, + itzks-systems-disklserver, + itzks-systems-diskless, + itzks-systems-display, + itzks-systems-terminalserver, + itzks-systems-virtman, + itzks-systems-backup, +Depends: + ${misc:Depends}, + itzks-systems-common (>= ${source:Version}), + arj, + atftpd, + bzip2, + debian-edu-artwork-spacefun, + dnsutils, + htop, + gdisk, + itzks-keyring, + links, + linuxlogo, + memtest86, + memtest86+, + mc, + nfs-kernel-server, + nload, + nmap, + ocsinventory-agent, + openvpn, + pxelinux, + reportbug, + syslinux, + sysstat, + tree, + unzip, + vim, + xpdf, + zip, +Description: Profiling ITZkS-DisplayServer systems + Install this package to pull in all dependencies required on + ITZkS Servers providing Substitute Teacher Schedule Displays. + . + ITZkS (IT-Zukunft Schule) is a Nothern German project and based + on Debian Edu / Skolelinux. + +Package: itzks-systems-display +Architecture: all +Replaces: + itzks-systems-mainserver, + itzks-systems-workstation, + itzks-systems-disklserver, + itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-terminalserver, + itzks-systems-virtman, + itzks-systems-backup, + debian-edu-artwork-joy, + gnu-fdisk, +Breaks: + itzks-systems-mainserver, + itzks-systems-workstation, + itzks-systems-disklserver, + itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-terminalserver, + itzks-systems-virtman, + itzks-systems-backup, +Depends: + ${misc:Depends}, + itzks-systems-common (>= ${source:Version}), + acpi, + arj, + bzip2, + debian-edu-artwork-spacefun, + etckeeper, + firmware-linux-free, + firmware-linux-nonfree, + firmware-realtek, + git, + htop, + impressive-display, + itzks-keyring, + nodm, + linux-image, + linuxlogo, + desktop-base, + mc, + memtest86, + memtest86+, + nano, + nload, + nmap, + ocsinventory-agent, + plymouth, + plymouth-themes, + reportbug, + sysstat, + tree, + ttf-mscorefonts-installer, + unzip, + zip, +Conflicts: + debian-edu-artwork-joy, + debian-edu-artwork-lines, + ldm, +Description: Profiling for ITZkS Diskless Displays + Install this package to pull in all dependencies required on + ITZkS Diskless Display systems. + . + ITZkS (IT-Zukunft Schule) is a Nothern German project and based + on Debian Edu / Skolelinux. + Package: itzks-systems-terminalserver Architecture: all Replaces: @@ -506,6 +648,8 @@ Replaces: itzks-systems-workstation, itzks-systems-disklserver, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-virtman, itzks-systems-backup, debian-edu-artwork-joy, @@ -516,6 +660,8 @@ Breaks: itzks-systems-workstation, itzks-systems-disklserver, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-virtman, itzks-systems-backup, Depends: @@ -714,6 +860,8 @@ Breaks: itzks-systems-terminalserver, itzks-systems-disklserver, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-virtman, itzks-systems-backup, Replaces: @@ -721,6 +869,8 @@ Replaces: itzks-systems-terminalserver, itzks-systems-disklserver, itzks-systems-diskless, + itzks-systems-displayserver, + itzks-systems-display, itzks-systems-virtman, itzks-systems-backup, debian-edu-artwork-joy, diff --git a/debian/itzks-systems-display.docs b/debian/itzks-systems-display.docs new file mode 100644 index 0000000..dc219c2 --- /dev/null +++ b/debian/itzks-systems-display.docs @@ -0,0 +1 @@ +README.display diff --git a/debian/itzks-systems-display.links b/debian/itzks-systems-display.links new file mode 100644 index 0000000..50fccc9 --- /dev/null +++ b/debian/itzks-systems-display.links @@ -0,0 +1 @@ +usr/share/doc/itzks-systems-common/README.itzks-common usr/share/doc/itzks-systems-display/README.itzks-common diff --git a/debian/itzks-systems-displayserver.docs b/debian/itzks-systems-displayserver.docs new file mode 100644 index 0000000..ac56f37 --- /dev/null +++ b/debian/itzks-systems-displayserver.docs @@ -0,0 +1 @@ +README.displayserver diff --git a/debian/itzks-systems-displayserver.examples b/debian/itzks-systems-displayserver.examples new file mode 100644 index 0000000..f6f02d7 --- /dev/null +++ b/debian/itzks-systems-displayserver.examples @@ -0,0 +1,2 @@ +examples/displayserver/displayserver-tftp.tar.gz +examples/displayserver/README.tftp diff --git a/debian/itzks-systems-displayserver.install b/debian/itzks-systems-displayserver.install new file mode 100644 index 0000000..6e501e0 --- /dev/null +++ b/debian/itzks-systems-displayserver.install @@ -0,0 +1 @@ +sbin/itzks-display-shell usr/sbin/ diff --git a/debian/itzks-systems-displayserver.links b/debian/itzks-systems-displayserver.links new file mode 100644 index 0000000..2e78d8b --- /dev/null +++ b/debian/itzks-systems-displayserver.links @@ -0,0 +1 @@ +usr/share/doc/itzks-systems-common/README.itzks-common usr/share/doc/itzks-systems-displayserver/README.itzks-common
\ No newline at end of file diff --git a/debian/itzks-systems-displayserver.manpages b/debian/itzks-systems-displayserver.manpages new file mode 100644 index 0000000..66ae7d1 --- /dev/null +++ b/debian/itzks-systems-displayserver.manpages @@ -0,0 +1 @@ +man/diskless-workstation-shell.8
\ No newline at end of file diff --git a/debian/rules b/debian/rules index 320fce6..b2498cc 100755 --- a/debian/rules +++ b/debian/rules @@ -7,6 +7,7 @@ override_dh_installexamples: cd examples/mainserver/ && tar cvf mainserver-tftp.tar tftp && gzip -9n mainserver-tftp.tar cd examples/disklserver/ && tar cvf disklserver-tftp.tar tftp && gzip -9n disklserver-tftp.tar + cd examples/displayserver/ && tar cvf displayserver-tftp.tar tftp && gzip -9n displayserver-tftp.tar cd examples/backup/ && tar cvf backup-dirvish.tar dirvish && gzip -9n backup-dirvish.tar dh_installexamples diff --git a/examples/displayserver/README.tftp b/examples/displayserver/README.tftp new file mode 100644 index 0000000..9a7648e --- /dev/null +++ b/examples/displayserver/README.tftp @@ -0,0 +1,10 @@ +This folder contains a PXE boot environment that provides the +boot menu for display systems as provided by a standalone +ITZkS Substitute Teacher Schedule Display Server (aka displayserver). + +Installation steps: + + 1. Untar these files to displayserver:/srv/tftp + + $ tar xvz -C /srv -f displayserver-tftp.tar.gz + diff --git a/examples/displayserver/tftp/_common_/debian-edu/display.cfg b/examples/displayserver/tftp/_common_/debian-edu/display.cfg new file mode 100644 index 0000000..36d4b67 --- /dev/null +++ b/examples/displayserver/tftp/_common_/debian-edu/display.cfg @@ -0,0 +1,5 @@ +LABEL vplan + MENU LABEL ^Vertretungsplan / Info-Terminal + MENU DEFAULT + KERNEL display/amd64/vmlinuz + APPEND initrd=ltsp/amd64.jessie/initrd.img init=/sbin/init-ltsp nfsroot=/opt/ltsp/amd64.jessie,intr,rsize=1048576,wsize=1048576 boot=nfs ro quiet ipappend 2 diff --git a/examples/displayserver/tftp/_common_/debian-edu/memtest.cfg b/examples/displayserver/tftp/_common_/debian-edu/memtest.cfg new file mode 100644 index 0000000..8bf162a --- /dev/null +++ b/examples/displayserver/tftp/_common_/debian-edu/memtest.cfg @@ -0,0 +1,6 @@ +LABEL memtest86+ + MENU LABEL Speichertest (memtest86+) + kernel debian-edu/memtest86+.bin +LABEL memtest86 + MENU LABEL Speichertest (memtest86) + kernel debian-edu/memtest86.bin diff --git a/examples/displayserver/tftp/_common_/display/amd64/initrd.img b/examples/displayserver/tftp/_common_/display/amd64/initrd.img new file mode 120000 index 0000000..b19c163 --- /dev/null +++ b/examples/displayserver/tftp/_common_/display/amd64/initrd.img @@ -0,0 +1 @@ +/srv/ltsp/amd64.jessie/initrd.img
\ No newline at end of file diff --git a/examples/displayserver/tftp/_common_/display/amd64/vmlinuz b/examples/displayserver/tftp/_common_/display/amd64/vmlinuz new file mode 120000 index 0000000..49f9a5f --- /dev/null +++ b/examples/displayserver/tftp/_common_/display/amd64/vmlinuz @@ -0,0 +1 @@ +/srv/ltsp/amd64.jessie/vmlinuz
\ No newline at end of file diff --git a/examples/displayserver/tftp/_common_/pxelinux/jessie/pxelinux.0 b/examples/displayserver/tftp/_common_/pxelinux/jessie/pxelinux.0 new file mode 120000 index 0000000..f723d02 --- /dev/null +++ b/examples/displayserver/tftp/_common_/pxelinux/jessie/pxelinux.0 @@ -0,0 +1 @@ +/usr/lib/PXELINUX/pxelinux.0
\ No newline at end of file diff --git a/examples/displayserver/tftp/_common_/syslinux/jessie/syslinux b/examples/displayserver/tftp/_common_/syslinux/jessie/syslinux new file mode 120000 index 0000000..7bea767 --- /dev/null +++ b/examples/displayserver/tftp/_common_/syslinux/jessie/syslinux @@ -0,0 +1 @@ +/usr/lib/syslinux/modules/bios
\ No newline at end of file diff --git a/examples/displayserver/tftp/debian-edu/debian-edu-splash.png b/examples/displayserver/tftp/debian-edu/debian-edu-splash.png new file mode 120000 index 0000000..028aa3a --- /dev/null +++ b/examples/displayserver/tftp/debian-edu/debian-edu-splash.png @@ -0,0 +1 @@ +/usr/share/pixmaps/splash/debian-edu-splash.png
\ No newline at end of file diff --git a/examples/displayserver/tftp/debian-edu/default-menu.cfg b/examples/displayserver/tftp/debian-edu/default-menu.cfg new file mode 100644 index 0000000..4697e25 --- /dev/null +++ b/examples/displayserver/tftp/debian-edu/default-menu.cfg @@ -0,0 +1,12 @@ +include debian-edu/display.cfg +MENU SEPARATOR +include debian-edu/memtest.cfg + +menu hshift 13 +menu width 72 +menu background debian-edu/debian-edu-splash.png +menu tabmsg ENTER: System starten; TAB: Menueeintraege editieren +menu autoboot Automatischer Systemstart in # Sekunde{,n} +default syslinux/vesamenu.c32 +prompt 0 +timeout 30 diff --git a/examples/displayserver/tftp/debian-edu/display.cfg b/examples/displayserver/tftp/debian-edu/display.cfg new file mode 120000 index 0000000..5d11f72 --- /dev/null +++ b/examples/displayserver/tftp/debian-edu/display.cfg @@ -0,0 +1 @@ +../_common_/debian-edu/display.cfg
\ No newline at end of file diff --git a/examples/displayserver/tftp/debian-edu/memtest.cfg b/examples/displayserver/tftp/debian-edu/memtest.cfg new file mode 120000 index 0000000..953ea54 --- /dev/null +++ b/examples/displayserver/tftp/debian-edu/memtest.cfg @@ -0,0 +1 @@ +../_common_/debian-edu/memtest.cfg
\ No newline at end of file diff --git a/examples/displayserver/tftp/debian-edu/memtest86+.bin b/examples/displayserver/tftp/debian-edu/memtest86+.bin new file mode 120000 index 0000000..1b74cce --- /dev/null +++ b/examples/displayserver/tftp/debian-edu/memtest86+.bin @@ -0,0 +1 @@ +/boot/memtest86+.bin
\ No newline at end of file diff --git a/examples/displayserver/tftp/debian-edu/memtest86.bin b/examples/displayserver/tftp/debian-edu/memtest86.bin new file mode 120000 index 0000000..2596a63 --- /dev/null +++ b/examples/displayserver/tftp/debian-edu/memtest86.bin @@ -0,0 +1 @@ +/boot/memtest86.bin
\ No newline at end of file diff --git a/examples/displayserver/tftp/display b/examples/displayserver/tftp/display new file mode 120000 index 0000000..e94a655 --- /dev/null +++ b/examples/displayserver/tftp/display @@ -0,0 +1 @@ +./_common_/display
\ No newline at end of file diff --git a/examples/displayserver/tftp/pxelinux.0 b/examples/displayserver/tftp/pxelinux.0 new file mode 120000 index 0000000..d23a196 --- /dev/null +++ b/examples/displayserver/tftp/pxelinux.0 @@ -0,0 +1 @@ +./_common_/pxelinux/jessie/pxelinux.0
\ No newline at end of file diff --git a/examples/displayserver/tftp/pxelinux.cfg/default b/examples/displayserver/tftp/pxelinux.cfg/default new file mode 120000 index 0000000..ec0c12a --- /dev/null +++ b/examples/displayserver/tftp/pxelinux.cfg/default @@ -0,0 +1 @@ +../debian-edu/default-menu.cfg
\ No newline at end of file diff --git a/examples/displayserver/tftp/syslinux b/examples/displayserver/tftp/syslinux new file mode 120000 index 0000000..f6725ad --- /dev/null +++ b/examples/displayserver/tftp/syslinux @@ -0,0 +1 @@ +./_common_/syslinux/jessie/syslinux
\ No newline at end of file diff --git a/sbin/itzks-display-shell b/sbin/itzks-display-shell new file mode 100755 index 0000000..db05bb8 --- /dev/null +++ b/sbin/itzks-display-shell @@ -0,0 +1,66 @@ +#!/bin/bash + +# Copyright (C) 2016 by Mike Gabriel <mike.gabriel@it-zukunft-schule.de> + +# This script is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This script is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the +# Free Software Foundation, Inc., +# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + +set -e + +VERSION=0.1 +DISPLAY_SHELL="bash" +CHROOT="/srv/ltsp/amd64/" + +test -e "$CHROOT" || { + echo "ERROR: ITZkS display system chroot does not exist at $CHROOT." + exit -1 +} + +[ "x$USER" == "xroot" ] || { + echo "ERROR: ITZkS display system management has to be performed as root." + exit -2 +} + +cat > "$CHROOT/itzks_display_shell.sh" <<EOF +#!/bin/bash +mount -tproc proc /proc &> /dev/null +mount /dev/pts &> /dev/null +export HOME=/root +export LTSP_HANDLE_DAEMONS="false" + +# export the proxy server (if any) to the shell. +export http_proxy=http://webcache.intern:3128 +export https_proxy=http://webcache.intern:3128 +export ftp_proxy=http://webcache.intern:3128 + +echo 'This shell has been started in your Diskless Workstation chroot environment.' +echo 'All changes performed here will take effect on your Diskless Workstations' +echo 'after their next (re)boot. So be careful!!!' +echo +echo "To return from this chroot shell hit STRG+D or type ,,exit'' on the" +echo 'command line...' +echo + +/bin/$DISPLAY_SHELL + +umount -l /proc &> /dev/null +umount -l /dev/pts &> /dev/null + +echo +echo "ITZkS Display System Shell has exited." +echo +EOF +chmod u+x "$CHROOT/itzks_display_shell.sh" +chroot "$CHROOT" /itzks_display_shell.sh |