diff options
| author | Jonathan Bauer | 2013-03-13 17:34:54 +0100 |
|---|---|---|
| committer | Jonathan Bauer | 2013-03-13 17:34:54 +0100 |
| commit | 28ffb58acc9ee84bc2ff78f0f9c6593b1f86e7a6 (patch) | |
| tree | 0856ea5a4b0942236041e994d93982b49b70b4cb | |
| parent | plymouth for stage3.1 (diff) | |
| parent | delete data/stage3.1. It can be found under remote/stage3.1 now. (diff) | |
| download | tm-scripts-28ffb58acc9ee84bc2ff78f0f9c6593b1f86e7a6.tar.gz tm-scripts-28ffb58acc9ee84bc2ff78f0f9c6593b1f86e7a6.tar.xz tm-scripts-28ffb58acc9ee84bc2ff78f0f9c6593b1f86e7a6.zip | |
Merge branch 'master' of git.openslx.org:openslx-ng/tm-scripts
70 files changed, 1042 insertions, 813 deletions
diff --git a/data/stage3.1/etc/netconfig b/data/stage3.1/etc/netconfig deleted file mode 100644 index effc67eb..00000000 --- a/data/stage3.1/etc/netconfig +++ /dev/null @@ -1,19 +0,0 @@ -# -# The network configuration file. This file is currently only used in -# conjunction with the TI-RPC code in the libtirpc library. -# -# Entries consist of: -# -# <network_id> <semantics> <flags> <protofamily> <protoname> \ -# <device> <nametoaddr_libs> -# -# The <device> and <nametoaddr_libs> fields are always empty in this -# implementation. -# -udp tpi_clts v inet udp - - -tcp tpi_cots_ord v inet tcp - - -udp6 tpi_clts v inet6 udp - - -tcp6 tpi_cots_ord v inet6 tcp - - -rawip tpi_raw - inet - - - -local tpi_cots_ord - loopback - - - -unix tpi_cots_ord - loopback - - - diff --git a/data/stage3.1/etc/networks b/data/stage3.1/etc/networks deleted file mode 100644 index c0608214..00000000 --- a/data/stage3.1/etc/networks +++ /dev/null @@ -1 +0,0 @@ -link-local 169.254.0.0 diff --git a/data/stage3.1/etc/protocols b/data/stage3.1/etc/protocols deleted file mode 100644 index 1eac5963..00000000 --- a/data/stage3.1/etc/protocols +++ /dev/null @@ -1,54 +0,0 @@ -ip 0 IP -icmp 1 ICMP -igmp 2 IGMP -ggp 3 GGP -ipencap 4 IP-ENCAP -st 5 ST -tcp 6 TCP -egp 8 EGP -igp 9 IGP -pup 12 PUP -udp 17 UDP -hmp 20 HMP -xns-idp 22 XNS-IDP -rdp 27 RDP -iso-tp4 29 ISO-TP4 -dccp 33 DCCP -xtp 36 XTP -ddp 37 DDP -idpr-cmtp 38 IDPR-CMTP -ipv6 41 IPv6 -ipv6-route 43 IPv6-Route -ipv6-frag 44 IPv6-Frag -idrp 45 IDRP -rsvp 46 RSVP -gre 47 GRE -esp 50 IPSEC-ESP -ah 51 IPSEC-AH -skip 57 SKIP -ipv6-icmp 58 IPv6-ICMP -ipv6-nonxt 59 IPv6-NoNxt -ipv6-opts 60 IPv6-Opts -rspf 73 RSPF CPHB -vmtp 81 VMTP -eigrp 88 EIGRP -ospf 89 OSPFIGP -ax.25 93 AX.25 -ipip 94 IPIP -etherip 97 ETHERIP -encap 98 ENCAP -pim 103 PIM -ipcomp 108 IPCOMP -vrrp 112 VRRP -l2tp 115 L2TP -isis 124 ISIS -sctp 132 SCTP -fc 133 FC -mobility-header 135 Mobility-Header -udplite 136 UDPLite -mpls-in-ip 137 MPLS-in-IP -manet 138 -hip 139 HIP -shim6 140 Shim6 -wesp 141 WESP -rohc 142 ROHC diff --git a/data/stage3.1/etc/services b/data/stage3.1/etc/services deleted file mode 100644 index 65869e99..00000000 --- a/data/stage3.1/etc/services +++ /dev/null @@ -1,550 +0,0 @@ -tcpmux 1/tcp -echo 7/tcp -echo 7/udp -discard 9/tcp sink null -discard 9/udp sink null -systat 11/tcp users -daytime 13/tcp -daytime 13/udp -netstat 15/tcp -qotd 17/tcp quote -msp 18/tcp -msp 18/udp -chargen 19/tcp ttytst source -chargen 19/udp ttytst source -ftp-data 20/tcp -ftp 21/tcp -fsp 21/udp fspd -ssh 22/tcp -ssh 22/udp -telnet 23/tcp -smtp 25/tcp mail -time 37/tcp timserver -time 37/udp timserver -rlp 39/udp resource -nameserver 42/tcp name -whois 43/tcp nicname -tacacs 49/tcp -tacacs 49/udp -re-mail-ck 50/tcp -re-mail-ck 50/udp -domain 53/tcp -domain 53/udp -mtp 57/tcp -tacacs-ds 65/tcp -tacacs-ds 65/udp -bootps 67/tcp -bootps 67/udp -bootpc 68/tcp -bootpc 68/udp -tftp 69/udp -gopher 70/tcp -gopher 70/udp -rje 77/tcp netrjs -finger 79/tcp -http 80/tcp www -http 80/udp -link 87/tcp ttylink -kerberos 88/tcp kerberos5 krb5 kerberos-sec -kerberos 88/udp kerberos5 krb5 kerberos-sec -supdup 95/tcp -hostnames 101/tcp hostname -iso-tsap 102/tcp tsap -acr-nema 104/tcp dicom -acr-nema 104/udp dicom -csnet-ns 105/tcp cso-ns -csnet-ns 105/udp cso-ns -rtelnet 107/tcp -rtelnet 107/udp -pop2 109/tcp postoffice pop-2 -pop2 109/udp pop-2 -pop3 110/tcp pop-3 -pop3 110/udp pop-3 -sunrpc 111/tcp portmapper -sunrpc 111/udp portmapper -auth 113/tcp authentication tap ident -sftp 115/tcp -uucp-path 117/tcp -nntp 119/tcp readnews untp -ntp 123/tcp -ntp 123/udp -pwdgen 129/tcp -pwdgen 129/udp -loc-srv 135/tcp epmap -loc-srv 135/udp epmap -netbios-ns 137/tcp -netbios-ns 137/udp -netbios-dgm 138/tcp -netbios-dgm 138/udp -netbios-ssn 139/tcp -netbios-ssn 139/udp -imap2 143/tcp imap -imap2 143/udp imap -snmp 161/tcp -snmp 161/udp -snmp-trap 162/tcp snmptrap -snmp-trap 162/udp snmptrap -cmip-man 163/tcp -cmip-man 163/udp -cmip-agent 164/tcp -cmip-agent 164/udp -mailq 174/tcp -mailq 174/udp -xdmcp 177/tcp -xdmcp 177/udp -nextstep 178/tcp NeXTStep NextStep -nextstep 178/udp NeXTStep NextStep -bgp 179/tcp -bgp 179/udp -prospero 191/tcp -prospero 191/udp -irc 194/tcp -irc 194/udp -smux 199/tcp -smux 199/udp -at-rtmp 201/tcp -at-rtmp 201/udp -at-nbp 202/tcp -at-nbp 202/udp -at-echo 204/tcp -at-echo 204/udp -at-zis 206/tcp -at-zis 206/udp -qmtp 209/tcp -qmtp 209/udp -z3950 210/tcp wais -z3950 210/udp wais -ipx 213/tcp -ipx 213/udp -imap3 220/tcp -imap3 220/udp -pawserv 345/tcp -pawserv 345/udp -zserv 346/tcp -zserv 346/udp -fatserv 347/tcp -fatserv 347/udp -rpc2portmap 369/tcp -rpc2portmap 369/udp -codaauth2 370/tcp -codaauth2 370/udp -clearcase 371/tcp Clearcase -clearcase 371/udp Clearcase -ulistserv 372/tcp -ulistserv 372/udp -ldap 389/tcp -ldap 389/udp -imsp 406/tcp -imsp 406/udp -svrloc 427/tcp -svrloc 427/udp -https 443/tcp -https 443/udp -snpp 444/tcp -snpp 444/udp -microsoft-ds 445/tcp -microsoft-ds 445/udp -kpasswd 464/tcp -kpasswd 464/udp -saft 487/tcp -saft 487/udp -isakmp 500/tcp -isakmp 500/udp -rtsp 554/tcp -rtsp 554/udp -nqs 607/tcp -nqs 607/udp -npmp-local 610/tcp dqs313_qmaster -npmp-local 610/udp dqs313_qmaster -npmp-gui 611/tcp dqs313_execd -npmp-gui 611/udp dqs313_execd -hmmp-ind 612/tcp dqs313_intercell -hmmp-ind 612/udp dqs313_intercell -qmqp 628/tcp -qmqp 628/udp -ipp 631/tcp -ipp 631/udp -exec 512/tcp -biff 512/udp comsat -login 513/tcp -who 513/udp whod -shell 514/tcp cmd -syslog 514/udp -printer 515/tcp spooler -talk 517/udp -ntalk 518/udp -route 520/udp router routed -timed 525/udp timeserver -tempo 526/tcp newdate -courier 530/tcp rpc -conference 531/tcp chat -netnews 532/tcp readnews -netwall 533/udp -gdomap 538/tcp -gdomap 538/udp -uucp 540/tcp uucpd -klogin 543/tcp -kshell 544/tcp krcmd -dhcpv6-client 546/tcp -dhcpv6-client 546/udp -dhcpv6-server 547/tcp -dhcpv6-server 547/udp -afpovertcp 548/tcp -afpovertcp 548/udp -idfp 549/tcp -idfp 549/udp -remotefs 556/tcp rfs_server rfs -nntps 563/tcp snntp -nntps 563/udp snntp -submission 587/tcp -submission 587/udp -ldaps 636/tcp -ldaps 636/udp -tinc 655/tcp -tinc 655/udp -silc 706/tcp -silc 706/udp -kerberos-adm 749/tcp -webster 765/tcp -webster 765/udp -rsync 873/tcp -rsync 873/udp -ftps-data 989/tcp -ftps 990/tcp -telnets 992/tcp -telnets 992/udp -imaps 993/tcp -imaps 993/udp -ircs 994/tcp -ircs 994/udp -pop3s 995/tcp -pop3s 995/udp -socks 1080/tcp -socks 1080/udp -proofd 1093/tcp -proofd 1093/udp -rootd 1094/tcp -rootd 1094/udp -openvpn 1194/tcp -openvpn 1194/udp -rmiregistry 1099/tcp -rmiregistry 1099/udp -kazaa 1214/tcp -kazaa 1214/udp -nessus 1241/tcp -nessus 1241/udp -lotusnote 1352/tcp lotusnotes -lotusnote 1352/udp lotusnotes -ms-sql-s 1433/tcp -ms-sql-s 1433/udp -ms-sql-m 1434/tcp -ms-sql-m 1434/udp -ingreslock 1524/tcp -ingreslock 1524/udp -prospero-np 1525/tcp -prospero-np 1525/udp -datametrics 1645/tcp old-radius -datametrics 1645/udp old-radius -sa-msg-port 1646/tcp old-radacct -sa-msg-port 1646/udp old-radacct -kermit 1649/tcp -kermit 1649/udp -groupwise 1677/tcp -groupwise 1677/udp -l2f 1701/tcp l2tp -l2f 1701/udp l2tp -radius 1812/tcp -radius 1812/udp -radius-acct 1813/tcp radacct -radius-acct 1813/udp radacct -msnp 1863/tcp -msnp 1863/udp -unix-status 1957/tcp -log-server 1958/tcp -remoteping 1959/tcp -cisco-sccp 2000/tcp -cisco-sccp 2000/udp -search 2010/tcp ndtp -pipe-server 2010/tcp pipe_server -nfs 2049/tcp -nfs 2049/udp -gnunet 2086/tcp -gnunet 2086/udp -rtcm-sc104 2101/tcp -rtcm-sc104 2101/udp -gsigatekeeper 2119/tcp -gsigatekeeper 2119/udp -gris 2135/tcp -gris 2135/udp -cvspserver 2401/tcp -cvspserver 2401/udp -venus 2430/tcp -venus 2430/udp -venus-se 2431/tcp -venus-se 2431/udp -codasrv 2432/tcp -codasrv 2432/udp -codasrv-se 2433/tcp -codasrv-se 2433/udp -mon 2583/tcp -mon 2583/udp -dict 2628/tcp -dict 2628/udp -f5-globalsite 2792/tcp -f5-globalsite 2792/udp -gsiftp 2811/tcp -gsiftp 2811/udp -gpsd 2947/tcp -gpsd 2947/udp -gds-db 3050/tcp gds_db -gds-db 3050/udp gds_db -icpv2 3130/tcp icp -icpv2 3130/udp icp -mysql 3306/tcp -mysql 3306/udp -nut 3493/tcp -nut 3493/udp -distcc 3632/tcp -distcc 3632/udp -daap 3689/tcp -daap 3689/udp -svn 3690/tcp subversion -svn 3690/udp subversion -suucp 4031/tcp -suucp 4031/udp -sysrqd 4094/tcp -sysrqd 4094/udp -sieve 4190/tcp -epmd 4369/tcp -epmd 4369/udp -remctl 4373/tcp -remctl 4373/udp -f5-iquery 4353/tcp -f5-iquery 4353/udp -iax 4569/tcp -iax 4569/udp -mtn 4691/tcp -mtn 4691/udp -radmin-port 4899/tcp -radmin-port 4899/udp -rfe 5002/udp -rfe 5002/tcp -mmcc 5050/tcp -mmcc 5050/udp -sip 5060/tcp -sip 5060/udp -sip-tls 5061/tcp -sip-tls 5061/udp -aol 5190/tcp -aol 5190/udp -xmpp-client 5222/tcp jabber-client -xmpp-client 5222/udp jabber-client -xmpp-server 5269/tcp jabber-server -xmpp-server 5269/udp jabber-server -cfengine 5308/tcp -cfengine 5308/udp -mdns 5353/tcp -mdns 5353/udp -postgresql 5432/tcp postgres -postgresql 5432/udp postgres -freeciv 5556/tcp rptp -freeciv 5556/udp -amqp 5672/tcp -amqp 5672/udp -amqp 5672/sctp -ggz 5688/tcp -ggz 5688/udp -x11 6000/tcp x11-0 -x11 6000/udp x11-0 -x11-1 6001/tcp -x11-1 6001/udp -x11-2 6002/tcp -x11-2 6002/udp -x11-3 6003/tcp -x11-3 6003/udp -x11-4 6004/tcp -x11-4 6004/udp -x11-5 6005/tcp -x11-5 6005/udp -x11-6 6006/tcp -x11-6 6006/udp -x11-7 6007/tcp -x11-7 6007/udp -gnutella-svc 6346/tcp -gnutella-svc 6346/udp -gnutella-rtr 6347/tcp -gnutella-rtr 6347/udp -sge-qmaster 6444/tcp sge_qmaster -sge-qmaster 6444/udp sge_qmaster -sge-execd 6445/tcp sge_execd -sge-execd 6445/udp sge_execd -mysql-proxy 6446/tcp -mysql-proxy 6446/udp -afs3-fileserver 7000/tcp bbs -afs3-fileserver 7000/udp bbs -afs3-callback 7001/tcp -afs3-callback 7001/udp -afs3-prserver 7002/tcp -afs3-prserver 7002/udp -afs3-vlserver 7003/tcp -afs3-vlserver 7003/udp -afs3-kaserver 7004/tcp -afs3-kaserver 7004/udp -afs3-volser 7005/tcp -afs3-volser 7005/udp -afs3-errors 7006/tcp -afs3-errors 7006/udp -afs3-bos 7007/tcp -afs3-bos 7007/udp -afs3-update 7008/tcp -afs3-update 7008/udp -afs3-rmtsys 7009/tcp -afs3-rmtsys 7009/udp -font-service 7100/tcp xfs -font-service 7100/udp xfs -http-alt 8080/tcp webcache -http-alt 8080/udp -bacula-dir 9101/tcp -bacula-dir 9101/udp -bacula-fd 9102/tcp -bacula-fd 9102/udp -bacula-sd 9103/tcp -bacula-sd 9103/udp -xmms2 9667/tcp -xmms2 9667/udp -nbd 10809/tcp -zabbix-agent 10050/tcp -zabbix-agent 10050/udp -zabbix-trapper 10051/tcp -zabbix-trapper 10051/udp -amanda 10080/tcp -amanda 10080/udp -hkp 11371/tcp -hkp 11371/udp -bprd 13720/tcp -bprd 13720/udp -bpdbm 13721/tcp -bpdbm 13721/udp -bpjava-msvc 13722/tcp -bpjava-msvc 13722/udp -vnetd 13724/tcp -vnetd 13724/udp -bpcd 13782/tcp -bpcd 13782/udp -vopied 13783/tcp -vopied 13783/udp -dcap 22125/tcp -gsidcap 22128/tcp -wnn6 22273/tcp -wnn6 22273/udp -rtmp 1/ddp -nbp 2/ddp -echo 4/ddp -zip 6/ddp -kerberos4 750/udp kerberos-iv kdc -kerberos4 750/tcp kerberos-iv kdc -kerberos-master 751/udp kerberos_master -kerberos-master 751/tcp -passwd-server 752/udp passwd_server -krb-prop 754/tcp krb_prop krb5_prop hprop -krbupdate 760/tcp kreg -swat 901/tcp -kpop 1109/tcp -knetd 2053/tcp -zephyr-srv 2102/udp -zephyr-clt 2103/udp -zephyr-hm 2104/udp -eklogin 2105/tcp -kx 2111/tcp -iprop 2121/tcp -supfilesrv 871/tcp -supfiledbg 1127/tcp -linuxconf 98/tcp -poppassd 106/tcp -poppassd 106/udp -ssmtp 465/tcp smtps -moira-db 775/tcp moira_db -moira-update 777/tcp moira_update -moira-ureg 779/udp moira_ureg -spamd 783/tcp -omirr 808/tcp omirrd -omirr 808/udp omirrd -customs 1001/tcp -customs 1001/udp -skkserv 1178/tcp -predict 1210/udp -rmtcfg 1236/tcp -wipld 1300/tcp -xtel 1313/tcp -xtelw 1314/tcp -support 1529/tcp -cfinger 2003/tcp -frox 2121/tcp -ninstall 2150/tcp -ninstall 2150/udp -zebrasrv 2600/tcp -zebra 2601/tcp -ripd 2602/tcp -ripngd 2603/tcp -ospfd 2604/tcp -bgpd 2605/tcp -ospf6d 2606/tcp -ospfapi 2607/tcp -isisd 2608/tcp -afbackup 2988/tcp -afbackup 2988/udp -afmbackup 2989/tcp -afmbackup 2989/udp -xtell 4224/tcp -fax 4557/tcp -hylafax 4559/tcp -distmp3 4600/tcp -munin 4949/tcp lrrd -enbd-cstatd 5051/tcp -enbd-sstatd 5052/tcp -pcrd 5151/tcp -noclog 5354/tcp -noclog 5354/udp -hostmon 5355/tcp -hostmon 5355/udp -rplay 5555/udp -nrpe 5666/tcp -nsca 5667/tcp -mrtd 5674/tcp -bgpsim 5675/tcp -canna 5680/tcp -sane-port 6566/tcp sane saned -ircd 6667/tcp -zope-ftp 8021/tcp -tproxy 8081/tcp -omniorb 8088/tcp -omniorb 8088/udp -clc-build-daemon 8990/tcp -xinetd 9098/tcp -mandelspawn 9359/udp mandelbrot -git 9418/tcp -zope 9673/tcp -webmin 10000/tcp -kamanda 10081/tcp -kamanda 10081/udp -amandaidx 10082/tcp -amidxtape 10083/tcp -smsqp 11201/tcp -smsqp 11201/udp -xpilot 15345/tcp -xpilot 15345/udp -sgi-cmsd 17001/udp -sgi-crsd 17002/udp -sgi-gcd 17003/udp -sgi-cad 17004/tcp -isdnlog 20011/tcp -isdnlog 20011/udp -vboxd 20012/tcp -vboxd 20012/udp -binkp 24554/tcp -asp 27374/tcp -asp 27374/udp -csync2 30865/tcp -dircproxy 57000/tcp -tfido 60177/tcp -fido 60179/tcp diff --git a/data/stage3.1/init b/data/stage3.1/init deleted file mode 100755 index 8db07f46..00000000 --- a/data/stage3.1/init +++ /dev/null @@ -1,152 +0,0 @@ -#!/bin/sh -# Copyright (c) 2012 - OpenSLX GmbH -# -# This program is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found at http://openslx.org -# -# First script for initial ramfs for OpenSLX linux stateless clients -############################################################################# - -export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/openslx/bin:/openslx/sbin - -mount -n -t tmpfs -o 'mode=755' run "/run" - -# mount the important standard directories -[ ! -f /proc/cpuinfo ] && mount -n -t proc proc /proc -[ ! -d /sys/class ] && mount -n -t sysfs sysfs /sys - -echo "/sbin/mdev" > /proc/sys/kernel/hotplug -# read graphic and network adaptor configuration (without proprietary drivers yet) - -( hwinfo --gfxcard > /etc/hwinfo ) & -( hwinfo --netcard > /etc/netcard ) & - -# read kernel command line for debugging switch -read KCL < /proc/cmdline -export KCL -for opts in ${KCL}; do - case ${opts} in - debug=*) - DEBUG=1;; - ip=*) - # process IP info - ipinfo=${opts#ip=};; - nfs=*) - nfs=${opts#nfs=} - nfspath=${nfs#*:} - nfsserver=${nfs%:/*} - ;; - esac -done - -while ps | grep -v grep | grep -q " hwinfo --gfxcard" ; do usleep 10 ; done - -case $(cat /etc/hwinfo) in - *i915*) - modprobe -a i915 2>/dev/null - ;; - *intel*|*Intel*) - modprobe -a i810 i830 i915 2>/dev/null - ;; - *nvidia*|*NVidia*|*nouveau*) - modprobe -q nouveau 2>/dev/null - ;; - *radeon*|*Radeon*) - modprobe -q radeon 2>/dev/null - ;; - *mga*|*matrox*|*Matrox*) - modprobe -q mga 2>/dev/null - ;; - *VMWARE*) - ;; - *) - modprobe -qa r128 savage sis tdfx ttm via viafb - ;; -esac -( modprobe -a drm fbcon; mdev -s ) & - -# load required network and usb controller drivers, filter out wireless adaptors -while ps | grep -v grep | grep -q " hwinfo --netcard" ; do usleep 10 ; done -nwcardlist="forcedeth|e1000e|e1000|e100|tg3|via-rhine|r8169|pcnet32" -echo "modprobe -qa usbhid hid-bright" >/etc/modprobe.base -grep modprobe /etc/netcard | grep -E "$nwcardlist" \ - | sed 's/.* Cmd: "//;s/"//;s/modprobe/modprobe -qb/' \ - | sort -u >>/etc/modprobe.base -# virtio hack -if [ $(grep -ic "virtio_pci" /etc/modprobe.base) -ge 1 ]; then - echo "modprobe -q virtio_net" >>/etc/modprobe.base -fi -/bin/sh /etc/modprobe.base; mdev -s - -# setup network -nwif="eth0" -# set up loopback networking -[ $DEBUGLEVEL -eq 20 ] && echo "** starting ip config at $(sysup)" -ip link set dev lo up 2>/dev/null -ip addr add 127.0.0.1/8 dev lo 2>/dev/null -ip link set dev $nwif up 2>/dev/null || { echo "No link for $nwif, dropping to shell.."; setsid sh -c 'exec sh </dev/tty1 >/dev/tty1 2>&1'; } - -# analyze ip information from the kernel command line and put parts -# of it into several variables -if [ -n "$ipinfo" ] ; then - getip () { - local val="$ipinfo:"; i=$(($1 - 1)); - while [ $i -gt 0 ] ; do - val=${val#*:} ; i=$(($i - 1)); - done; - echo $val|sed "s/:.*//"; } - clientip=$(getip 1) - serverip=$(getip 2) - gateway=$(getip 3) - subnet_mask=$(getip 4) - broadcast_address=$(ipcalc -s -b $clientip $subnet_mask|sed s/.*=//) - [ -z "$broadcast_address" ] && broadcast_address=255.255.255.255 - # we might have an idea of the dns server via preboot - dns_srv=$(getip 5) - [ -n "$dns_srv" ] && echo nameserver $dns_srv >/etc/resolv.conf; - echo -e "# ip configuration written by $0 script:\nclientip=$clientip\n\ -subnet_mask=$subnet_mask\ngateway=$gateway\nserverip=$serverip\n\ -broadcast_address=$broadcast_address" >>/etc/initramfs-setup - # set static ip address - ip addr add $clientip/$(ipcalc -s -p $clientip $subnet_mask|sed s/.*=//) \ - broadcast $broadcast_address dev $nwif 2>/dev/null - ip route add default via $gateway 2>/dev/null -else - noipyet="yes" -fi - - -# load local file systems -modprobe aufs -modprobe squashfs - -mkdir -p /dev/shm/union /dev/shm/uniontmp /rorootfs -mount -n -t tmpfs none /dev/shm/uniontmp - -if [ -n "$nfs" ] ; then - mount -t nfs -o ro,async,nolock ${nfsserver}:${nfspath} /rorootfs || { echo "Problem mounting NFS-Directory from ${nfsserver}:${nfspath}. Dropping to DEBUG shell."; DEBUG=1; } -else - mount -n /mnt/openslx.sqfs /rorootfs || { echo "Problem mounting Squashfs. Dropping to DEBUG shell."; DEBUG=1; } -fi - -mount -n -t aufs -o br:/dev/shm/uniontmp:/rorootfs=ro none /mnt -mkdir -p /mnt/uniontmp /mnt/tmp -mount -n --move /dev/shm/uniontmp /mnt/uniontmp - -if [ $DEBUG -ge 1 ]; then - echo "Starting debug shell, CTRL + D will start Stage 3.2." - setsid sh -c 'exec sh </dev/tty1 >/dev/tty1 2>&1' -fi - -for mnt in proc sys run ; do - umount -n $mnt -done - -unset BOOT_IMAGE initrd -# new style of pivoting (switch_root or run-init) -exec /sbin/switch_root -c /dev/console /mnt /usr/lib/systemd/systemd diff --git a/data/stage3.1/lib/i386-linux-gnu/ld-2.15.so b/data/stage3.1/lib/i386-linux-gnu/ld-2.15.so Binary files differdeleted file mode 100755 index d2306d9b..00000000 --- a/data/stage3.1/lib/i386-linux-gnu/ld-2.15.so +++ /dev/null diff --git a/data/stage3.1/lib/i386-linux-gnu/libc-2.15.so b/data/stage3.1/lib/i386-linux-gnu/libc-2.15.so Binary files differdeleted file mode 100755 index 8c11121e..00000000 --- a/data/stage3.1/lib/i386-linux-gnu/libc-2.15.so +++ /dev/null diff --git a/data/stage3.1/lib/i386-linux-gnu/libc.so.6 b/data/stage3.1/lib/i386-linux-gnu/libc.so.6 deleted file mode 120000 index a8f42ce3..00000000 --- a/data/stage3.1/lib/i386-linux-gnu/libc.so.6 +++ /dev/null @@ -1 +0,0 @@ -libc-2.15.so
\ No newline at end of file diff --git a/data/stage3.1/lib/i386-linux-gnu/libdbus-1.so.3 b/data/stage3.1/lib/i386-linux-gnu/libdbus-1.so.3 Binary files differdeleted file mode 100644 index 14354c09..00000000 --- a/data/stage3.1/lib/i386-linux-gnu/libdbus-1.so.3 +++ /dev/null diff --git a/data/stage3.1/lib/i386-linux-gnu/libdl.so.2 b/data/stage3.1/lib/i386-linux-gnu/libdl.so.2 Binary files differdeleted file mode 100644 index 01235729..00000000 --- a/data/stage3.1/lib/i386-linux-gnu/libdl.so.2 +++ /dev/null diff --git a/data/stage3.1/lib/i386-linux-gnu/libpthread.so.0 b/data/stage3.1/lib/i386-linux-gnu/libpthread.so.0 Binary files differdeleted file mode 100755 index a4bfc228..00000000 --- a/data/stage3.1/lib/i386-linux-gnu/libpthread.so.0 +++ /dev/null diff --git a/data/stage3.1/lib/i386-linux-gnu/librt.so.1 b/data/stage3.1/lib/i386-linux-gnu/librt.so.1 Binary files differdeleted file mode 100644 index 4d3d88ad..00000000 --- a/data/stage3.1/lib/i386-linux-gnu/librt.so.1 +++ /dev/null diff --git a/data/stage3.1/lib/i386-linux-gnu/libtirpc.so.1 b/data/stage3.1/lib/i386-linux-gnu/libtirpc.so.1 Binary files differdeleted file mode 100644 index a1590656..00000000 --- a/data/stage3.1/lib/i386-linux-gnu/libtirpc.so.1 +++ /dev/null diff --git a/data/stage3.1/lib/ld-linux.so.2 b/data/stage3.1/lib/ld-linux.so.2 deleted file mode 120000 index 2e367466..00000000 --- a/data/stage3.1/lib/ld-linux.so.2 +++ /dev/null @@ -1 +0,0 @@ -i386-linux-gnu/ld-2.15.so
\ No newline at end of file diff --git a/data/stage3.1/lib/libgssglue.so.1 b/data/stage3.1/lib/libgssglue.so.1 Binary files differdeleted file mode 100644 index 6bdfe13a..00000000 --- a/data/stage3.1/lib/libgssglue.so.1 +++ /dev/null diff --git a/data/stage3.1/lib/libhal.so.1 b/data/stage3.1/lib/libhal.so.1 Binary files differdeleted file mode 100644 index a4a4a9f9..00000000 --- a/data/stage3.1/lib/libhal.so.1 +++ /dev/null diff --git a/data/stage3.1/lib/libhd.so.16 b/data/stage3.1/lib/libhd.so.16 Binary files differdeleted file mode 100644 index c7764846..00000000 --- a/data/stage3.1/lib/libhd.so.16 +++ /dev/null diff --git a/data/stage3.1/sbin/hwinfo b/data/stage3.1/sbin/hwinfo Binary files differdeleted file mode 100755 index cd3cc22f..00000000 --- a/data/stage3.1/sbin/hwinfo +++ /dev/null diff --git a/data/stage3.1/sbin/mount.nfs b/data/stage3.1/sbin/mount.nfs Binary files differdeleted file mode 100755 index c764652e..00000000 --- a/data/stage3.1/sbin/mount.nfs +++ /dev/null diff --git a/data/stage3.1/sbin/mount.nfs4 b/data/stage3.1/sbin/mount.nfs4 Binary files differdeleted file mode 100755 index c764652e..00000000 --- a/data/stage3.1/sbin/mount.nfs4 +++ /dev/null diff --git a/data/stage3.1/sbin/umount.nfs b/data/stage3.1/sbin/umount.nfs Binary files differdeleted file mode 100755 index c764652e..00000000 --- a/data/stage3.1/sbin/umount.nfs +++ /dev/null diff --git a/data/stage3.1/sbin/umount.nfs4 b/data/stage3.1/sbin/umount.nfs4 Binary files differdeleted file mode 100755 index c764652e..00000000 --- a/data/stage3.1/sbin/umount.nfs4 +++ /dev/null diff --git a/remote/tools/base/base.conf b/remote/tools/base/base.conf index 29519edb..4af855b3 100644 --- a/remote/tools/base/base.conf +++ b/remote/tools/base/base.conf @@ -19,7 +19,8 @@ REQUIRED_BINARIES=" bash modprobe ps scp - ssh" + ssh + xterm" REQUIRED_LIBRARIES=" libcap libcidn libcom_err diff --git a/remote/tools/consolekit/consolekit.build b/remote/tools/consolekit/consolekit.build new file mode 100644 index 00000000..ff7778aa --- /dev/null +++ b/remote/tools/consolekit/consolekit.build @@ -0,0 +1,21 @@ +#!/bin/bash + +fetch_source() { + pinfo "Extracting from running system..." +} + +build() { + BUILDDIR="${TOOL_DIR}/${TOOL}/build" + COPYLIST="list_dpkg_output" + [ -e "${COPYLIST}" ] && rm "${COPYLIST}" + + list_packet_files >> "${COPYLIST}" + tarcopy "$(cat "${COPYLIST}" | sort -u)" "${BUILDDIR}" + +} +post_copy() { + mkdir -p "${INIT_DIR}/usr/lib/ConsoleKit/run-seat.d" + mkdir -p "${INIT_DIR}/etc/ConsoleKit/run-seat.d" + mkdir -p "${INIT_DIR}/etc/ConsoleKit/run-session.d" + mkdir -p "${INIT_DIR}/var/log/ConsoleKit" +} diff --git a/remote/tools/consolekit/consolekit.conf b/remote/tools/consolekit/consolekit.conf new file mode 100644 index 00000000..38f1718f --- /dev/null +++ b/remote/tools/consolekit/consolekit.conf @@ -0,0 +1,11 @@ +REQUIRED_PACKAGES="consolekit" +REQUIRED_BINARIES=" ck-history + ck-launch-session + ck-list-sessions + ck-log-system-start + ck-log-system-restart + ck-log-system-stop + console-kit-daemon" +REQUIRED_DIRECTORIES=" /usr/lib/ConsoleKit /etc /lib/systemd/system" +REQUIRED_FILES=" /usr/share/dbus-1/system-services/org.freedesktop.ConsoleKit.service + /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy" diff --git a/remote/tools/kdm/data/etc/kde4/kdm/kdmrc b/remote/tools/kdm/data/etc/kde4/kdm/kdmrc new file mode 100644 index 00000000..88f478ea --- /dev/null +++ b/remote/tools/kdm/data/etc/kde4/kdm/kdmrc @@ -0,0 +1,35 @@ +[General] +PidFile=/var/run/kdm.pid +ServerVTs=-7 + +[X-*-Greeter] +UseTheme=true +Theme=/usr/share/desktop/themes/kdm/uni +UseBackground=false +GreetString=OpenSLX Workstation (%h) +SelectedUsers= +UserList=false + +[X-:*-Greeter] +AllowClose=false +UseAdminSession=true + +[X-:0-Core] +AllowRootLogin=true +AllowShutdown=All +AutoLoginEnable=false +Reset=/etc/kde4/kdm/Xreset +ServerAttempts=2 +Session=/etc/kde4/kdm/Xsession +SessionsDirs=/etc/X11/session,/usr/share/xsessions,/usr/share/apps/kdm/sessions +#Setup=/etc/kde4/kdm/Xsetup +Startup=/etc/kde4/kdm/Xstartup + +[X-:0-Greeter] +LogSource=/dev/xconsole +PreselectUser=None +UseAdminSession=false + +[xdmcp] +Enable=false + diff --git a/remote/tools/kdm/data/etc/systemd/system/display-manager.service b/remote/tools/kdm/data/etc/systemd/system/display-manager.service new file mode 120000 index 00000000..640910e3 --- /dev/null +++ b/remote/tools/kdm/data/etc/systemd/system/display-manager.service @@ -0,0 +1 @@ +kdm.service
\ No newline at end of file diff --git a/remote/tools/kdm/data/etc/systemd/system/kdm.service b/remote/tools/kdm/data/etc/systemd/system/kdm.service new file mode 100644 index 00000000..14ff7457 --- /dev/null +++ b/remote/tools/kdm/data/etc/systemd/system/kdm.service @@ -0,0 +1,12 @@ +[Unit] +Description=KDM Display Manager +Conflicts=getty@tty7.service +After=systemd-user-sessions.service getty@tty7.service plymouth-quit.service + +[Service] +ExecStart=/usr/bin/kdm -nodaemon +Restart=always +IgnoreSIGPIPE=no + +[Install] +Alias=display-manager.service diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/KdmGreeterTheme.desktop b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/KdmGreeterTheme.desktop new file mode 100644 index 00000000..36242be4 --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/KdmGreeterTheme.desktop @@ -0,0 +1,8 @@ +[KdmGreeterTheme] +Encoding=UTF-8 +Greeter=theme.xml +Name=Uni KDM theme +Description=Uni Theme based on Daemonic KDM theme for FreeBSD +Author=aceph <aceph@ventcore.net> and modified by MJanc +Copyright=Creative Commons +Screenshot=screenshot.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/color.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/color.png Binary files differnew file mode 100644 index 00000000..c2e998e5 --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/color.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/enter.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/enter.png Binary files differnew file mode 100644 index 00000000..b646e851 --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/enter.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/enter_inactive.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/enter_inactive.png Binary files differnew file mode 100644 index 00000000..e12cfb8e --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/enter_inactive.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/environment.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/environment.png Binary files differnew file mode 100644 index 00000000..b9682822 --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/environment.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/main-runner.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/main-runner.png Binary files differnew file mode 100644 index 00000000..fde2787d --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/main-runner.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/rz-logo.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/rz-logo.png Binary files differnew file mode 100644 index 00000000..d48b2b63 --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/rz-logo.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/sessions.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/sessions.png Binary files differnew file mode 100644 index 00000000..00d05f29 --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/sessions.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/sessions_inactive.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/sessions_inactive.png Binary files differnew file mode 100644 index 00000000..86bbe642 --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/sessions_inactive.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/system.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/system.png Binary files differnew file mode 100644 index 00000000..f7b9e71f --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/system.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/system_inactive.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/system_inactive.png Binary files differnew file mode 100644 index 00000000..c3e1719b --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/system_inactive.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/theme.xml b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/theme.xml new file mode 100644 index 00000000..ab64ecfb --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/theme.xml @@ -0,0 +1,232 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE greeter SYSTEM "greeter.dtd"> +<!-- +KDM-Uni-Theme +--> +<greeter id="theme"> + <style font="Sans 11" window-text-color="#f0f0f0" base-color="#f0f0f0" text-color="#000000"/> + + <!-- background --> + <item type="pixmap" id="background" background="true"> + <normal file="color.png"/> + <pos x="0" y="0" width="100%" height="100%"/> + </item> + + <!-- top / welcome, clock and big logo --> + <item type="rect" id="top" background="true"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="n" x="50%" y="0" width="100%" height="40%"/> + <box orientation="vertical" homogeneous="true"> + + <item type="pixmap" background="true"> + <normal file="welcome-time-shadowed.png"/> + <pos anchor="n" x="50%" y="0" width="80%" height="44"/> + <box orientation="horizontal" homogeneous="true"> + <!-- Welcome on ... --> + <item type="label" background="true"> + <pos anchor="w" x="10%" y="30%"/> + <normal color="#f0f0f0" font="Sans 11"/> + <stock type="welcome-label"/> + </item> + <!-- clock --> + <item type="label" id="clock"> + <pos anchor="e" x="90%" y="30%"/> + <normal color="#f0f0f0" font="Sans 11"/> + <text>%c</text> + </item> + </box> + </item> + + <item type="rect" id="logo"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="c" x="50%" y="10%" width="100%" height="100%"/> + <box orientation="vertical" homogeneous="true"> + <item type="pixmap"> + <normal file="uni-logo.png"/> + <pos anchor="c" x="50%" y="50%"/> + </item> + </box> + </item> + + </box> + </item> + + <!-- main part / login, session, menu, ... --> + <item type="pixmap" id="main-runner" background="true"> + <normal file="main-runner.png"/> + <pos anchor="c" x="50%" y="50%" width="100%" height="160"/> + <box orientation="horizontal" homogeneous="true"> + + <item type="rect" background="true"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="w" x="0%" y="50%" width="100%" height="100%"/> + <box orientation="horizontal" homogeneous="true"> + + <!-- left part / login --> + <item type="rect" background="true"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="w" x="0" y="50%" width="100%" height="100%"/> + <box orientation="horizontal"> + + <!-- small logo --> + <item type="pixmap" background="true"> + <normal file="rz-logo.png"/> + <pos anchor="w" x="30" y="50%"/> + </item> + + <!-- login --> + <item type="rect"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="w" x="70" y="50%" width="box" height="box"/> + <box orientation="horizontal" spacing="10"> + + <item type="rect"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="sw" x="0" y="100%" width="box" height="100%"/> + <box homogeneous="true" spacing="10"> + <!-- username-label --> + <item type="label"> + <pos anchor="nw" x="0" y="0"/> + <normal color="#f0f0f0" font="Sans 11"/> + <stock type="username-label"/> + </item> + <!-- password-label --> + <item type="label"> + <pos anchor="sw" x="0" y="-0"/> + <normal color="#f0f0f0" font="Sans 11"/> + <stock type="password-label"/> + </item> + </box> + </item> + + <item type="rect"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="nw" x="0" y="0" width="box" height="box"/> + <box homogeneous="true" spacing="10"> + <!-- username-entry --> + <item type="entry" id="user-entry"> + <pos anchor="w" x="0" y="50%" height="20" width="100"/> + </item> + <!-- password-entry --> + <item type="entry" id="pw-entry"> + <pos anchor="w" x="0" y="50%" height="20" width="100"/> + </item> + </box> + </item> + + <item type="pixmap" button="true" id="login_button"> + <pos anchor="sw" x="0" y="-0" height="20" width="20"/> + <normal file="enter_inactive.png"/> + <prelight file="enter.png"/> + </item> + + </box> + </item> + + </box> + </item> + + <!-- middle part / errors, caps info, kdm logo --> + <item type="rect"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="c" x="50%" y="50%" width="90%" height="100%"/> + <box orientation="vertical"> + + <!-- Login-Error --> + <item type="rect"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="n" x="50%" y="10" width="100%" height="30"/> + <box> + <item type="label" id="pam-error"> + <normal color="#ff8b00" font="Sans 11"/> + <pos anchor="c" x="50%" y="15"/> + <text/> + </item> + </box> + </item> + + <item type="pixmap"> + <normal file="environment.png"/> + <pos anchor="c" x="50%" y="50%"/> + </item> + + <!-- capslock-warning --> + <item type="rect" id="caps-lock-warning"> + <normal color="#000000" alpha="0.4"/> + <pos anchor="s" x="50%" y="-10" width="100%" height="30"/> + <box> + <item type="label"> + <normal color="#ff8b00" font="Sans 11"/> + <pos anchor="c" x="50%" y="15"/> + <stock type="caps-lock-warning"/> + </item> + </box> + </item> + + </box> + </item> + + <!-- right part / sessions, menu --> + <item type="rect"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="e" x="100%" y="50%" width="100%" height="100%"/> + <box orientation="vertical" homogeneous="true" spacing="10"> + + <!-- session-button --> + <item type="rect" id="session_button" button="true"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="se" x="-50" y="100%" width="box" height="box"/> + <box orientation="horizontal"> + <item type="label"> + <normal color="#bbbbbb" font="Sans 11"/> + <prelight color="#f0f0f0" font="Sans 11"/> + <active color="#ff8b00" font="Sans 11"/> + <pos anchor="e" x="100%" y="-24"/> + <stock type="session"/> + </item> + <item type="rect" id="session_button" button="true"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="c" x="50%" y="50%" width="10"/> + </item> + <item type="pixmap" id="session_button" button="true"> + <normal file="sessions_inactive.png"/> + <prelight file="sessions.png"/> + <pos anchor="se" x="100%" y="100%"/> + </item> + </box> + </item> + + <!-- menu-button --> + <item type="rect" id="system_button" button="true"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="ne" x="-50" y="0" width="box" height="box"/> + <box orientation="horizontal"> + <item type="label"> + <normal color="#bbbbbb" font="Sans 11"/> + <prelight color="#f0f0f0" font="Sans 11"/> + <active color="#ff8b00" font="Sans 11"/> + <pos anchor="e" x="100%" y="24"/> + <stock type="system"/> + </item> + <item type="rect" id="system_button" button="true"> + <normal color="#000000" alpha="0.0"/> + <pos anchor="c" x="50%" y="50%" width="10"/> + </item> + <item type="pixmap" id="system_button" button="true"> + <normal file="system_inactive.png"/> + <prelight file="system.png"/> + <pos anchor="ne" x="100%" y="0%"/> + </item> + </box> + </item> + + </box> + </item> + + </box> + </item> + + </box> + </item> + +</greeter> diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/uni-logo.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/uni-logo.png Binary files differnew file mode 100644 index 00000000..45cef30e --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/uni-logo.png diff --git a/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/welcome-time-shadowed.png b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/welcome-time-shadowed.png Binary files differnew file mode 100644 index 00000000..f9f34c5c --- /dev/null +++ b/remote/tools/kdm/data/usr/share/desktop/themes/kdm/uni/welcome-time-shadowed.png diff --git a/remote/tools/kdm/data/usr/share/xsessions/default.desktop b/remote/tools/kdm/data/usr/share/xsessions/default.desktop new file mode 100755 index 00000000..c6a0f825 --- /dev/null +++ b/remote/tools/kdm/data/usr/share/xsessions/default.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=virtual machine chooser (default) +Name[de]=Virtuelle Maschine auswählen +Comment=This session starts the vm session chooser +Comment[de]=Diese Sitzung startet das Auswahlmenü für die vorhandenen Sitzungen +Exec=/openslx/bin/vmchooser +TryExec=/openslx/bin/vmchooser +Icon= +Type=Application diff --git a/remote/tools/kdm/kdm.build b/remote/tools/kdm/kdm.build new file mode 100644 index 00000000..737853a9 --- /dev/null +++ b/remote/tools/kdm/kdm.build @@ -0,0 +1,36 @@ +#tool/distro specific functions for fetching, building and installing dependencies + + +fetch_source () { + pinfo "Extracting from running system..." +} + +build () { + BUILDDIR="${TOOL_DIR}/${TOOL}/build" + COPYLIST="list_dpkg_output" + [ -e "${COPYLIST}" ] && rm "${COPYLIST}" + + list_packet_files >> "${COPYLIST}" + tarcopy "$(cat "${COPYLIST}" | sort -u)" "${BUILDDIR}" +} + +post_copy() { + # copy static kdm files to stage3.2 + cp -r ${TOOL_DIR}/${TOOL}/data/* ${INIT_DIR} + #create static kdm folders in stage3.2 + mkdir -p ${INIT_DIR}/var/lib/kdm + mkdir -p ${INIT_DIR}/var/run/kdm + + + #copy required icons + tarcopy "/usr/share/icons/oxygen/16x16/actions/system-reboot.png" ${INIT_DIR} + tarcopy "/usr/share/icons/oxygen/16x16/actions/system-shutdown.png" ${INIT_DIR} + tarcopy "/usr/share/icons/oxygen/16x16/actions/dialog-cancel.png" ${INIT_DIR} + tarcopy "/usr/share/icons/oxygen/index.theme" ${INIT_DIR} + tarcopy "/usr/share/kde4/apps/kdm/pics/shutdown.png" ${INIT_DIR} + tarcopy "/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf" ${INIT_DIR} + tarcopy "/usr/share/fonts/truetype/ubuntu-font-family/Ubuntu-R.ttf" ${INIT_DIR} + tarcopy "/usr/share/icons/default/index.theme" ${INIT_DIR} + gtk-update-icon-cache-3.0 "${INIT_DIR}/usr/share/icons/oxygen/" || perror "update-icon-cache-3.0 failed." +} + diff --git a/remote/tools/kdm/kdm.conf b/remote/tools/kdm/kdm.conf new file mode 100644 index 00000000..85f4ae66 --- /dev/null +++ b/remote/tools/kdm/kdm.conf @@ -0,0 +1,15 @@ +REQUIRED_DEPENDENCIES="kdm" +REQUIRED_PACKAGES="kdm kde-workspace-kgreet-plugins" +REQUIRED_BINARIES="" +REQUIRED_DIRECTORIES=" /etc/dbus-1 + /etc/pam.d + /etc/logrotate.d + /etc/insserv.conf.d + /etc/kde4/kdm + /usr/lib/kde4 + /usr/share/dbus-1 + /usr/share/polkit-1 + /usr/share/kde4/services + /usr/bin" +REQUIRED_FILES="" +REQUIRED_LIBRARIES="" diff --git a/remote/tools/ldm-gtk-greeter/ldm-gtk-greeter.conf b/remote/tools/ldm-gtk-greeter/ldm-gtk-greeter.conf index 800e5f79..58d189b7 100644 --- a/remote/tools/ldm-gtk-greeter/ldm-gtk-greeter.conf +++ b/remote/tools/ldm-gtk-greeter/ldm-gtk-greeter.conf @@ -1,9 +1,9 @@ VERSION=lightdm-gtk-greeter-1.3.1 URL=https://launchpad.net/lightdm-gtk-greeter/1.4/1.3.1/+download/lightdm-gtk-greeter-1.3.1.tar.gz REQUIRED_DEPENDENCIES="gtk+-3.0 liblightdm-gobject-1-dev libgdk-pixbuf2.0-0 libpango1.0-0 librsvg2-common shared-mime-info gnome-themes-standard" -REQUIRED_PACKAGES="libgdk-pixbuf2.0-0 libpango1.0-0 librsvg2-common shared-mime-info gnome-themes-standard policykit-1" +REQUIRED_PACKAGES="libgdk-pixbuf2.0-0 libpango1.0-0 librsvg2-common shared-mime-info gnome-themes-standard" REQUIRED_BINARIES="lightdm-gtk-greeter" -REQUIRED_DIRECTORIES="/usr/lib /usr/share/lightdm-gtk-greeter /usr/share/mime /usr/share/xgreeters /usr/share/icons /usr/share/themes /etc /usr/bin /usr/share/polkit-1 /usr/share/dbus-1" +REQUIRED_DIRECTORIES="/usr/lib /usr/share/lightdm-gtk-greeter /usr/share/mime /usr/share/xgreeters /usr/share/icons /usr/share/themes /etc /usr/bin" REQUIRED_FILES="/etc/lightdm/lightdm-gtk-greeter.conf" REQUIRED_MODULES="ldm" diff --git a/remote/tools/policykit-src/policykit.build b/remote/tools/policykit-src/policykit.build new file mode 100644 index 00000000..72d7f246 --- /dev/null +++ b/remote/tools/policykit-src/policykit.build @@ -0,0 +1,44 @@ +#tool/distro specific functions for fetching, building and installing dependencies + + +fetch_source () { + [ ! -e .fetched_source ] && download_untar "$URL" "src/" + touch .fetched_source +} + +build () { + BUILDDIR=$TOOL_DIR/$TOOL/build + + if [ ! -e .built ]; then + cd src/$VERSION + + [ ! -d "${TOOL_DIR}/systemd/build" ] && perror "systemd build directory not found. Build it first." + pinfo "configuring..." + LIBSYSTEMD_LOGIN_LIBS="-L${TOOL_DIR}/systemd/build/usr/lib/" \ + LIBSYSTEMD_LOGIN_CFLAGS="-I${TOOL_DIR}/systemd/build/usr/include -I${TOOL_DIR}/systemd/build/usr/include/systemd -lsystemd-login -lsystemd-daemon" \ + ./configure --enable-libsystemd-login=yes --with-systemdsystemunitdir=/etc/systemd/system -prefix="/" --datarootdir="/usr/share" --enable-man-pages=no --enable-gtk-doc-html=no --enable-examples=no --enable-static=no + pinfo "calling make..." + make || perror "make failed." + [ ! -d "$BUILDDIR" ] && mkdir -p "$BUILDDIR" + pinfo "installing to $BUILDDIR..." + DESTDIR="$BUILDDIR" make install || perror "make install failed..." + + COPYLIST="list_dpkg_output" + [ -e "$COPYLIST" ] && rm "$COPYLIST" + + list_packet_files >> "$COPYLIST" + tarcopy "$(cat "$COPYLIST" | sort -u)" "$BUILDDIR" + + cd - + touch .built + + fi +} + +post_copy() { + + #Add Polkit User/Group/Shadow to Stage3.2 + pinfo "Adding polkitd user to target system..." + add_user "polkitd" +} + diff --git a/remote/tools/policykit-src/policykit.conf b/remote/tools/policykit-src/policykit.conf new file mode 100644 index 00000000..73b04015 --- /dev/null +++ b/remote/tools/policykit-src/policykit.conf @@ -0,0 +1,10 @@ +VERSION=polkit-0.110 +URL=http://www.freedesktop.org/software/polkit/releases/polkit-0.110.tar.gz +REQUIRED_DEPENDENCIES="libmozjs185-1.0" +REQUIRED_PACKAGES="libmozjs185-1.0" +REQUIRED_BINARIES="" +REQUIRED_DIRECTORIES="/bin /etc /lib /usr/share/dbus-1 /usr/share/polkit-1" +REQUIRED_FILES="" +REQUIRED_LIBRARIES="libmozjs185" +REQUIRED_MODULES="systemd" + diff --git a/remote/tools/policykit/policykit.build b/remote/tools/policykit/policykit.build index 72d7f246..08f89290 100644 --- a/remote/tools/policykit/policykit.build +++ b/remote/tools/policykit/policykit.build @@ -2,37 +2,16 @@ fetch_source () { - [ ! -e .fetched_source ] && download_untar "$URL" "src/" - touch .fetched_source + pinfo "Extracting from running system..." } build () { - BUILDDIR=$TOOL_DIR/$TOOL/build + BUILDDIR="${TOOL_DIR}/${TOOL}/build" + COPYLIST="list_dpkg_output" + [ -e "${COPYLIST}" ] && rm "${COPYLIST}" - if [ ! -e .built ]; then - cd src/$VERSION - - [ ! -d "${TOOL_DIR}/systemd/build" ] && perror "systemd build directory not found. Build it first." - pinfo "configuring..." - LIBSYSTEMD_LOGIN_LIBS="-L${TOOL_DIR}/systemd/build/usr/lib/" \ - LIBSYSTEMD_LOGIN_CFLAGS="-I${TOOL_DIR}/systemd/build/usr/include -I${TOOL_DIR}/systemd/build/usr/include/systemd -lsystemd-login -lsystemd-daemon" \ - ./configure --enable-libsystemd-login=yes --with-systemdsystemunitdir=/etc/systemd/system -prefix="/" --datarootdir="/usr/share" --enable-man-pages=no --enable-gtk-doc-html=no --enable-examples=no --enable-static=no - pinfo "calling make..." - make || perror "make failed." - [ ! -d "$BUILDDIR" ] && mkdir -p "$BUILDDIR" - pinfo "installing to $BUILDDIR..." - DESTDIR="$BUILDDIR" make install || perror "make install failed..." - - COPYLIST="list_dpkg_output" - [ -e "$COPYLIST" ] && rm "$COPYLIST" - - list_packet_files >> "$COPYLIST" - tarcopy "$(cat "$COPYLIST" | sort -u)" "$BUILDDIR" - - cd - - touch .built - - fi + list_packet_files >> "${COPYLIST}" + tarcopy "$(cat "${COPYLIST}" | sort -u)" "${BUILDDIR}" } post_copy() { diff --git a/remote/tools/policykit/policykit.conf b/remote/tools/policykit/policykit.conf index fbf997f6..cb16bc79 100644 --- a/remote/tools/policykit/policykit.conf +++ b/remote/tools/policykit/policykit.conf @@ -1,9 +1,14 @@ VERSION=polkit-0.110 URL=http://www.freedesktop.org/software/polkit/releases/polkit-0.110.tar.gz -REQUIRED_DEPENDENCIES="libmozjs185-dev" -REQUIRED_PACKAGES="" +REQUIRED_DEPENDENCIES="libmozjs185-1.0" +REQUIRED_PACKAGES="libmozjs185-1.0 policykit-1" REQUIRED_BINARIES="" -REQUIRED_DIRECTORIES="/bin /etc /lib /usr/share/dbus-1 /usr/share/polkit-1" +REQUIRED_DIRECTORIES=" /etc/pam.d /etc/dbus-1 /etc/polkit-1 + /usr/bin + /usr/share/dbus-1 + /usr/share/polkit-1 + /usr/lib/policykit-1 + /usr/lib/i386-linux-gnu/polkit-1 + /lib/systemd/system" REQUIRED_FILES="" -REQUIRED_MODULES="systemd" - +REQUIRED_LIBRARIES="libmozjs185" diff --git a/remote/tools/vmchooser/data/etc/openslx/vmchooser/vmchooser.conf b/remote/tools/vmchooser/data/etc/openslx/vmchooser/vmchooser.conf new file mode 100644 index 00000000..3dd30ebc --- /dev/null +++ b/remote/tools/vmchooser/data/etc/openslx/vmchooser/vmchooser.conf @@ -0,0 +1,4 @@ +pool=default +theme=unifr +pvs=0 +path=/var/lib/virt diff --git a/remote/tools/vmchooser/data/openslx/bin/run-virt.sh b/remote/tools/vmchooser/data/openslx/bin/run-virt.sh new file mode 100755 index 00000000..b3863a2e --- /dev/null +++ b/remote/tools/vmchooser/data/openslx/bin/run-virt.sh @@ -0,0 +1,440 @@ +#!/bin/bash +# ----------------------------------------------------------------------------- +# Copyright (c) 2007..2010 - RZ Uni FR +# Copyright (c) 2007..2011 - OpenSLX GmbH +# +# This program is free software distributed under the GPL version 2. +# See http://openslx.org/COPYING +# +# If you have any feedback please consult http://openslx.org/feedback and +# send your suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# run-virt.sh +# - This is the generic wrapper for the several virtualization solutions. +# The idea is to setup a set of variables used by at least two different +# tools and then include the specific plugin which configures the speci- +# fied virtualization tool. +################################################################################ + +. /etc/opt/openslx/openslx.conf + +################################################################################ +### Define default dirs / get configs +################################################################################ + +PLUGINCONFROOT=${OPENSLX_DEFAULT_CONFDIR}/plugins +PLUGINCONFDIR=${PLUGINCONFROOT}/vmchooser +# include general configuration from vmchooser +[ -f ${PLUGINCONFROOT}/vmchooser/vmchooser.conf ] && \ + . ${PLUGINCONFROOT}/vmchooser/vmchooser.conf +# load general virtualization information +[ -f ${PLUGINCONFROOT}/virtualization/virtualization.conf ] && \ + . ${PLUGINCONFROOT}/virtualization/virtualization.conf + +################################################################################ +### Functions used throughout the script +################################################################################ + +# function to write to stdout and logfile +LOGFILE=${OPENSLX_DEFAULT_LOGDIR}/run-virt.${USER}.$$.log +writelog () { + # write to stdout + echo -e "$1" + # log into file + echo -e "$1" >> ${LOGFILE} +} + +# remove config dirs when exit +cleanexit () { + if echo "${RMDIRS}" 2>/dev/null | grep -q ${xmlvirt}; then + writelog "${xmlvirt} exited. Cleanning up... \c" + rm -rf ${RMDIRS} >/dev/null 2>&1 + writelog "done" + fi + + exit "$1" +} + +# check for important files used +filecheck () +{ + filecheck=$(LANG=us ls -lh ${diskfile} 2>&1) + writelog "Filecheck:\n${filecheck}\n" + noimage=$(echo ${filecheck} | grep -i "no such file or directory" | wc -l) + rightsfile=${diskfile} + + # check if link + if [ -L "${diskfile}" ]; then + # take link target + rightsfile=$(ls -lh ${diskfile} 2>&1 | awk -F '-> *' '{print $2}') + rightsfile=${vmdir}/${rightsfile} + filecheck=$(LANG=us ls -lh ${rightsfile} 2>&1) + fi + + # does file exist + if [ "${noimage}" -ge "1" ]; then + writelog "Virtual Machine Image Problem:\c " + writelog "\tThe image you've specified doesn't exist." + writelog "Filecheck says:\c " + writelog "\t\t${diskfile}:\n\t\t\tNo such file or directory" + writelog "Hint:\c " + writelog "\t\t\tCompare spelling of the image with your options.\n" + exit 1 + fi + + # readable by calling user + if ! [ -r "${diskfile}" >/dev/null 2>&1 \ + -o -r "${diskfile}" >/dev/null 2>&1 ]; then + writelog "Vmware Image Problem:\c " + writelog "\tThe image you've specified has wrong rights." + writelog "Filecheck says:\t\t$(echo ${filecheck} \ + | awk '{print $1" "$3" "$4}') ${rightsfile}" + writelog "Hint:\t\t\tChange rights with: chmod a+r ${rightsfile}\n" + exit 1 + fi + + # writable (for persistent-mode)? + if ! [ -w "${diskfile}" >/dev/null 2>&1 \ + -o -w "${diskfile}" >/dev/null 2>&1 ] \ + && [ "${np}" = "independent-persistent" ]; then + writelog "Vmware Image Problem:\c " + writelog "\tThe image you have specified has wrong rights." + writelog "Filecheck says:\t\t$(echo ${filecheck} \ + | awk '{print $1" "$3" "$4}') ${rightsfile}" + writelog "Hint:\t\t\tUse nonpersistent-mode or change rights to rw\n" + exit 1 + fi +} + +################################################################################ +### Get XML file and dir +################################################################################ + +# absolute or relative path? +xmlfile=$1 +if ls ${xmlfile} 2>/dev/null | grep '/' >/dev/null 2>&1; then + xmlpath=$(dirname ${xmlfile}) + xmlfile=$(basename ${xmlfile}) +else + xmlpath=${vmchooser_xmlpath} +fi +# full path +xmlfile="${xmlpath}/${xmlfile%.xml}.xml" + +################################################################################ +### Sanity checks +################################################################################ + +# test if the xml file is valid +if ! [ -r "${xmlfile}" ]; then + writelog "${xmlfile} not a readable XML file!" + exit 1 +fi + +# test if XML file +if ! grep '<?xml' "${xmlfile}" >/dev/null 2>&1; then + writelog \ + "Submitted configuration file ${xmlfile} seems to have wrong XML format" + exit 1 +fi + +# check for running in graphical environment otherwise no much use here +[ -z "$DISPLAY" ] && echo -e "\n\tStart only within a graphical desktop!\n" \ + && exit 1 + +################################################################################ +### Logo for console +################################################################################ + +cat <<EOL + __ __ + .----.--.--.-----.___.--.--.|__|.----.| |_ + | _| | | |___| | || || _|| _| + |__| |_____|__|__| \___/ |__||__| |____| + OpenSLX virtual machine environment preparation script ... + +EOL + +################################################################################ +### Read needed variables from XML file +################################################################################ + +writelog "Starting configuration..." +writelog "\tLogfile:\t\t${LOGFILE}" +writelog "\t/tmp info:\t\t$(df -h | grep " /tmp$" | awk '{print $2}') \c" +writelog "$(grep "/tmp " /proc/mounts | awk '{print $1" "$2" "$3" "$4}')" +writelog "\tVM XML dir:\t\t$(dirname ${xmlfile})" +writelog "\tXML file:\t\t${xmlfile}" +writelog "VM config:" + +# Name of the virt image +imgname=$(grep -io '<image_name param=.*"' ${xmlfile} \ + | sed -e "s/&.*;/; /g" | awk -F '"' '{ print $2 }') + +# Imagename /w full path +if echo ${imgname} 2>/dev/null | grep -q '^/' >/dev/null 2>&1; then + imgpath=$(dirname ${imgname}) + imgname=$(basename ${imgname}) + vmpath=${imgpath}/${imgname} +# If old vmchooser binary stuff +# We do not need folder name as it is already included by vmchooser +elif echo ${xmlfile} 2>/dev/null | grep -q '^/tmp/' >/dev/null 2>&1; then + vmpath=$imgname + imgname=$(basename ${imgname}) +# Else use same path as xml +else + imgpath=${xmlpath} + vmpath=${imgpath}/${imgname} +fi + +# Check if virtual machine container file exists +if ! [ -e "${vmpath}" ]; then + writelog "Virtual machine image ${vmpath} not found!" + exit 1 +fi + +# Name of the virt machine, sed because of Windows formatting +vm_name=$(grep -o 'short_description param=.*"' ${xmlfile} \ + | sed -e "s/&.*;/; /g" | awk -F '"' '{print $2}') +# If ${vm_name} not defined use ${xmlfile} +vm_name=${vm_name:-${xmlfile%.xml}} + +# Define vm_shortname since vm_name can be very long +vm_shortname=$(basename ${xmlfile%.xml} | sed -e "s, ,-,g") + +# vm_name = displayname, define for old scripts +displayname=${vm_name} + +# image is for the following virtual machine +xmlvirt=$(grep -o 'virtualmachine param=.*"' ${xmlfile} \ + | sed -e "s/&.*;/; /g" | awk -F '"' '{print $2}') + +# choose the proper virtualization/emulator plugin +[ "x${xmlvirt}" != "x" -a "x${xmlvirt}" != "xqemukvm" -a \ + "x${xmlvirt}" != "xvirtualbox" -a "x${xmlvirt}" != "xvmware" ] && \ + xmlvirt="emufe" + +# make a guess from the filename extension if ${xmlvirt} is empty +# (not set within the XML file) +# TODO: implement possibility to submit own configuration files +if [ -z "${xmlvirt}" ] && [ -n "${additional_config}" ]; then + writelog "No virtual machine parameter defined in ${xmlfile}" + writelog "Trying to guess VM...\c" + case "$(cat ${additional_config} | tr \"[A-Z]\" \"[a-z]\")" in + *config.version*|*virtualhw.version*|*independent-nonpersistent*|*vmdk*) + xmlvirt="vmware" + ;; + *innotek*|*virtualbox*) + xmlvirt="virtualbox" + ;; + *qemu*|*kvm*) + xmlvirt="qemukvm" + ;; + *) + xmlvirt="none" + ;; + esac +elif [ -z "${xmlvirt}" ]; then + case "$(echo ${imgname##*.} | tr \"[A-Z]\" \"[a-z]\")" in + vmdk) + xmlvirt="vmware" + ;; + vbox|vdi) + xmlvirt="virtualbox" + ;; + qcow*) + xmlvirt="qemukvm" + ;; + *) + xmlvirt="emufe" + ;; + esac + writelog "result:\t${xmlvirt}" +fi + +# Definition of the client system +vmostype=$(grep -io '<os param=.*"' ${xmlfile} | awk -F '"' '{ print $2 }' |\ + tr "[A-Z]" "[a-z]") + +# Definition of the networking the client system is connected to +network_kind=$(grep -io '<network param=.*"' ${xmlfile} \ + | awk -F '"' '{ print $2 }' | tr "[A-Z]" "[a-z]") +network_card=$(grep -io '<netcard param=.*"' ${xmlfile} \ + | awk -F '"' '{ print $2 }'| tr "[A-Z]" "[a-z]") + +# Set redirects to 0, see vmgrid if you want to define some +redirects=0 + +# Serial/parallel ports defined (e.g. "ttyS0" or "autodetect") +serial=$(grep -io '<serialport param=.*"' ${xmlfile} \ + | awk -F '"' '{ print $2 }') +parallel=$(grep -io '<parport param=.*"' ${xmlfile} \ + | awk -F '"' '{ print $2 }') + +writelog "\tVirtualization:\t\t$xmlvirt" +writelog "\tVM name:\t\t$vm_name" +writelog "\tVM short name:\t\t$vm_shortname" + +############################################################################### +### Declaration of default variables +############################################################################### + +# VM-ID static (00) +VM_ID="00" +# take last two digits of current pid... +VM_ID=$(expr substr $$ $(expr ${#$} - 1) 2) + +# Make sure cpu_cores is not empty +cpu_cores=${cpu_cores:-"1"} + +# Total amount of memory defined in stage 3 +# TODO: Should be dependent on the setup (if diff is written to RAM ...) +permem=60 +if [ "x${VMCHOOSER_FORCE_HALF_MEM}" == "x1" ]; then + permem=30 +fi +# Get a result which can be divided through 4 +mem=$(expr ${totalmem} / 100 \* ${permem} / 4 \* 4) +if [ -n "${mainvirtmem}" ]; then + forcemem=$(expr ${mainvirtmem} / 4 \* 4) + mem=${forcemem} +fi +hostmem=$(expr ${totalmem} - ${mem}) + +# Configuring ethernet mac address: first 3 bytes are fixed (00:50:56) +# 4th byte is the VM-ID (0D) +# last two bytes are taken from the bridge of the host +# define one MAC per guest +macguestpart="00:50:56:${VM_ID}" +machostpart=$(echo ${hostmacaddr} | awk -F ":" '{print $(NF-1)":"$NF}') +macaddr=$(echo "${macguestpart}:${machostpart}" | tr "[a-z]" "[A-Z]") + +# Virtual fd/cd/dvd and drive devices, floppy b: for configuration +# if $floppy_0 from run-virt.include set then fdtest="TRUE" +fdtest= +fdtest=${floppy_0:+"TRUE"} +# if $fdtest not set floppy0="FALSE", else "TRUE" +floppy0=${fdtest:-"FALSE"} +floppy1="TRUE" +floppy1name="${PLUGINCONFDIR}/loopimg/fd.img" +# if $cdrom_0 from run-virt.include set then cdtest="TRUE" +cdtest= +cdtest=${cdrom_0:+"TRUE"} +# if $cdtest not set cdrom0="FALSE", else "TRUE" +cdrom0=${cdtest:-"FALSE"} +# if $cdrom_1 from run-virt.include set then cdtest="TRUE" +cdtest= +cdtest=${cdrom_1:+"TRUE"} +# if $cdtest not set cdrom1="FALSE", else "TRUE" +cdrom1=${cdtest:-"FALSE"} +# IDE is expected default, test for the virtual disk image type should +# be done while creating the runscripts ... +ide="TRUE" +scsi="FALSE" +hddrv="ide" +audio="true" +remotedesktopport="590${VM_ID}" + +# Display resolution within the host system +hostres=$(xvidtune -show 2>/dev/null| grep -ve "^$") +xres=$(echo "${hostres}" | awk '{print $3}') +yres=$(echo "${hostres}" | awk '{print $7}') + +# Resolution defined via xml parameter: fullscreen, full/X*Y/depth; windowed, +# win/X*Y/depth +userres=$(grep -io '<screen param=.*"' ${xmlfile} | awk -F '"' '{ print $2 }' | \ + tr "A-Z" "a-z") +case "${userres}" in + full*) + res=$(echo "${hostres}" | awk -F "/" '{print $2}') + uxres=${res%\**} + uyres=${#*\*} + userres="full" + ;; + win*) + res=$(echo "${hostres}" | awk -F "/" '{print $2}') + uxres=${res%\**} + uyres=${#*\*} + userres="win" + ;; +esac + + +# Enable 3D +enable3d=$(grep -i "<enable3d param=.*" ${xmlfile} 2>/dev/null | \ + awk -F '=' {'print $2'} | tr "[A-Z]" "[a-z]") + +# Add rw share +sharepath="${HOME}" +sharename="home" + +# Set hostname: using original hostname and adding string +hostname="virt-$(hostname)" + +writelog "\tVM Hostname:\t\t$hostname" + +################################################################################ +### Setup the rest of the environment and run the configured vm +################################################################################ + +# Adjust sound volume +writelog "Unmuting sound...\c " +amixer -q sset Master 80% unmute 2>/dev/null +amixer -q sset PCM 80% unmute 2>/dev/null +amixer -q sset CD 80% unmute 2>/dev/null +amixer -q sset Headphone 80% unmute 2>/dev/null +amixer -q sset Front 80% unmute 2>/dev/null # in SUSE 11.0 it's headphone +amixer -q sset Speaker 80% unmute 2>/dev/null # annoying built-in speaker +writelog "finished\n" + +# Copy guest configuration (with added information) config.xml to be accessed +# via virtual floppy +# fixme -> to be changed (vmchooser adapts the file content!?) +#TODO: wozu echo? +#echo "Please fix the config.xml generation" +cp ${xmlfile} ${PLUGINCONFDIR}/fd-loop/config.xml + +# Get all virtual machine specific stuff from the respective include file +if [ -e ${PLUGINCONFROOT}/${xmlvirt}/run-virt.include ] ; then + self=${xmlvirt} + . ${PLUGINCONFROOT}/${xmlvirt}/run-virt.include + # start a windowmanager for easier handling + # (expect problems /w windows opening in background /w vmware without wm) + for dm in xfwm4 metacity openbox blackbox kwin fvwm2 ; do + if which $dm >/dev/null 2>&1 ; then + if [ "$dm" = "fvwm2" ] ; then + echo "EdgeScroll 0 0" > ${redodir}/fvwm + fvwm2 -f ${redodir}/fvwm >/dev/null 2>&1 & + else + $dm >/dev/null 2>&1 & + fi + break + fi + done + # Start poolvideoswitch if we find the autostarter file + if [ -e /etc/xdg/autostart/pvsgui.desktop ]; then + /usr/local/bin/pvsgui -p 2 -b >/dev/null 2>&1 & + fi + eval ${VIRTCMD} ${VIRTCMDOPTS} + writelog "Bye." + + # Postrun for commands after virtualization finishes + if [ -n "${POSTRUN}" ]; then + eval ${POSTRUN} >/dev/null 2>&1 + fi + + cleanexit 0 +else + writelog "Failed because of missing ${xmlvirt} plugin." + cleanexit 1 +fi + +# Postrun for commands after virtualization finishes +if [ -n "${POSTRUN}" ]; then + eval ${POSTRUN} >/dev/null 2>&1 +fi + +cleanexit 0 +exit 0 diff --git a/remote/tools/vmchooser/data/openslx/bin/vmchooser b/remote/tools/vmchooser/data/openslx/bin/vmchooser Binary files differnew file mode 100755 index 00000000..d8ec07f9 --- /dev/null +++ b/remote/tools/vmchooser/data/openslx/bin/vmchooser diff --git a/remote/tools/vmchooser/data/openslx/bin/xmlfilter.sh b/remote/tools/vmchooser/data/openslx/bin/xmlfilter.sh new file mode 100755 index 00000000..ded5d114 --- /dev/null +++ b/remote/tools/vmchooser/data/openslx/bin/xmlfilter.sh @@ -0,0 +1,50 @@ +#!/bin/bash +# ----------------------------------------------------------------------------- +# Copyright (c) 2007..2009 - RZ Uni FR +# Copyright (c) 2007..2011 - OpenSLX GmbH +# +# This program is free software distributed under the GPL version 2. +# See http://openslx.org/COPYING +# +# If you have any feedback please consult http://openslx.org/feedback and +# send your suggestions, praise, or complaints to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org/ +# ----------------------------------------------------------------------------- +# xmlfilter.sh +# - This script is invoked by the vmchooser tool. It simply filters xml- +# files (taking the path to these files in $1). You might modify it in any +# way to match your needs, e.g. ask some database instead. You can re- +# implement it in any other programming language too. You simply have to +# return a list of proper xml files to be interpreted by the vmchooser +# binary). Please check for vmchooser.sh too ... +# ----------------------------------------------------------------------------- + +# This script . +# +# currently: +# - filter for slxgrp (which comes from /etc/machine-setup) +# + +# include default directories +. /etc/opt/openslx/openslx.conf + +if [ -f ${OPENSLX_DEFAULT_CONFDIR}/plugins/vmchooser/vmchooser.conf ]; then + . ${OPENSLX_DEFAULT_CONFDIR}/plugins/vmchooser/vmchooser.conf +fi + +for FILE in $(find $1 -iname "*.xml"); do + # filter all xmls which aren't set active + if [ $(grep "<active param=.*true.*" ${FILE} | wc -l) -eq 1 ]; then + if [ -n ${vmchooser_env} ]; then + # filter all xmls with pool-param not equal to vmchooser::env + if [ $(grep "<pools param=\"${vmchooser_env}\"" ${FILE} | wc -l) -eq 1 ];\ + then + echo ${FILE}; + fi + else + # if there is no pool set, just take all available xmls + echo -e ${active} + fi + fi +done diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx-left.png b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx-left.png Binary files differnew file mode 100644 index 00000000..900dd867 --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx-left.png diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx-right.png b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx-right.png Binary files differnew file mode 100644 index 00000000..8ca9347b --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx-right.png diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx.ini b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx.ini new file mode 100644 index 00000000..57a22821 --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/openslx/openslx.ini @@ -0,0 +1,4 @@ +background-color=#ffffff +image-right=openslx-right.png +image-left=openslx-left.png + diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets-left.png b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets-left.png Binary files differnew file mode 100644 index 00000000..c8736b72 --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets-left.png diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets-right.png b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets-right.png Binary files differnew file mode 100644 index 00000000..e21f0d8b --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets-right.png diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets.ini b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets.ini new file mode 100644 index 00000000..d9aa17f6 --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/planets/planets.ini @@ -0,0 +1,4 @@ +background-color=#ffffff +image-right=planets-right.png +image-left=planets-left.png + diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/title_l.png b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/title_l.png Binary files differnew file mode 100644 index 00000000..e602ccd1 --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/title_l.png diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/title_r.png b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/title_r.png Binary files differnew file mode 100644 index 00000000..3edbcb0c --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/title_r.png diff --git a/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/unifr.ini b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/unifr.ini new file mode 100644 index 00000000..dadcb4e1 --- /dev/null +++ b/remote/tools/vmchooser/data/usr/share/vmchooser/themes/unifr/unifr.ini @@ -0,0 +1,4 @@ +background-color=#003592 +image-right=title_r.png +image-left=title_l.png + diff --git a/remote/tools/vmchooser/data/vmchooser/default.desktop b/remote/tools/vmchooser/data/vmchooser/default.desktop new file mode 100755 index 00000000..91540228 --- /dev/null +++ b/remote/tools/vmchooser/data/vmchooser/default.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=virtual machine chooser (default) +Name[de]=Virtuelle Maschine auswählen +Comment=This session starts the vm session chooser +Comment[de]=Diese Sitzung startet das Auswahlmenü für die vorhandenen Sitzungen +Exec=/opt/openslx/plugin-repo/vmchooser/vmchooser +TryExec=/opt/openslx/plugin-repo/vmchooser/vmchooser +Icon= +Type=Application diff --git a/remote/tools/vmchooser/data/vmchooser/mesgdisp b/remote/tools/vmchooser/data/vmchooser/mesgdisp Binary files differnew file mode 100755 index 00000000..41e3721c --- /dev/null +++ b/remote/tools/vmchooser/data/vmchooser/mesgdisp diff --git a/remote/tools/vmchooser/data/vmchooser/printer.sh b/remote/tools/vmchooser/data/vmchooser/printer.sh new file mode 100755 index 00000000..8f1d5ffa --- /dev/null +++ b/remote/tools/vmchooser/data/vmchooser/printer.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +#echo "<printer name=\"info\" path=\"//printserver/info\"> some pseudo printer </printer>" + +for(( i=0; $i<10; i=$i+1)); do + echo -e "printserver$i\tprinter$i\tPrinter Description $i" +done + +echo -e "printserver.ruf.uni-freiburg.de\treal-printer-name\tSome really long printer Description" + diff --git a/remote/tools/vmchooser/data/vmchooser/scanner.sh b/remote/tools/vmchooser/data/vmchooser/scanner.sh new file mode 100755 index 00000000..dcb94c68 --- /dev/null +++ b/remote/tools/vmchooser/data/vmchooser/scanner.sh @@ -0,0 +1,4 @@ +#!/bin/bash + + +echo -e "scanserver\tscanner1hp\tThis is a test Scanner" diff --git a/remote/tools/vmchooser/data/vmchooser/smb.conf b/remote/tools/vmchooser/data/vmchooser/smb.conf new file mode 100755 index 00000000..ec757ce4 --- /dev/null +++ b/remote/tools/vmchooser/data/vmchooser/smb.conf @@ -0,0 +1,25 @@ +# basic samba configuration file for OpenSLX host-internal networking +[global] + workgroup = OPENSLX + netbios name = HOMESERVER + security = SHARE + server string = Home and Print Provider + bind interfaces only = Yes + interfaces = NWIF + pid directory = PIDDIR + +[userhome] + comment = Home Directory of USER + path = /home/USER + create mask = 0700 + guest ok = No + read only = No + +[scratch] + comment = Host System Temp Folder + path = /tmp + create mask = 0700 + guest ok = Yes + read only = No + browseable = Yes + diff --git a/remote/tools/vmchooser/vmchooser.build b/remote/tools/vmchooser/vmchooser.build new file mode 100644 index 00000000..536aa5d3 --- /dev/null +++ b/remote/tools/vmchooser/vmchooser.build @@ -0,0 +1,27 @@ +#!/bin/bash + +fetch_source() +{ + [ ! -d src ] && mkdir src + if [ ! -e .fetched_source ]; then + git clone "${GIT}" src + touch .fetched_source + fi +} + +build() +{ + if [ ! -e .built ]; then + cd src + pinfo "Running vmchooser buildscript" + . build.sh + pinfo "" + cd - + touch .built + fi +} + +post_copy() { + : +} + diff --git a/remote/tools/vmchooser/vmchooser.conf b/remote/tools/vmchooser/vmchooser.conf new file mode 100644 index 00000000..ec1ceb86 --- /dev/null +++ b/remote/tools/vmchooser/vmchooser.conf @@ -0,0 +1,5 @@ +GIT=git://git.openslx.org/openslx/tools/vmchooser.git +REQUIRED_DEPENDENCIES=" cmake + libqt4-dev" +TARGET_DIR="openslx" +REQUIRED_BINARIES="vmchooser" |
