From 3d346444efa83e1f84f0cf267aebea7022a4172d Mon Sep 17 00:00:00 2001 From: Christian Rößler Date: Mon, 14 Oct 2013 19:08:44 +0200 Subject: [samba] Some openSuse support: conf file and build file extension --- remote/modules/samba/samba.build | 11 ++++++++++- remote/modules/samba/samba.conf.opensuse | 24 ++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 remote/modules/samba/samba.conf.opensuse (limited to 'remote') diff --git a/remote/modules/samba/samba.build b/remote/modules/samba/samba.build index bd189b66..a0a60831 100644 --- a/remote/modules/samba/samba.build +++ b/remote/modules/samba/samba.build @@ -6,9 +6,18 @@ build() { COPYLIST="list_dpkg_output" [ -e "$COPYLIST" ] && rm "$COPYLIST" + if [ "x$PACKET_MANAGER" == "xzypper" ]; then + if [ $(zypper lr | grep -ci filesystems) -eq 0 ]; then + zypper addrepo http://download.opensuse.org/repositories/filesystems/openSUSE_${SYS_VERSION} Filesystems + pinfo "Repository added: OpenSuse Build filesystems" + fi + # Ubuntu writes to /etc, Suse does not: + mkdir "$MODULE_BUILD_DIR"/etc/ + cp /usr/share/doc/packages/smbnetfs/smbnetfs.conf "$MODULE_BUILD_DIR"/etc/ + fi + list_packet_files >> "$COPYLIST" tarcopy "$(cat "$COPYLIST" | sort -u)" "${MODULE_BUILD_DIR}" - return 0 } diff --git a/remote/modules/samba/samba.conf.opensuse b/remote/modules/samba/samba.conf.opensuse new file mode 100644 index 00000000..fd06e50a --- /dev/null +++ b/remote/modules/samba/samba.conf.opensuse @@ -0,0 +1,24 @@ +REQUIRED_INSTALLED_PACKAGES=" + samba + samba-client + samba-winbind + krb5-client + cifs-utils + smbnetfs + fuse + keyutils +" +REQUIRED_CONTENT_PACKAGES=" + samba + samba-client + samba-winbind + krb5-client + cifs-utils + smbnetfs + fuse + keyutils +" + +# This is just a list for grep excludes used in samba.build opensuse branch +# Please use pipe symbol and backslash (\|) as separator as being used in grep +REQUIRED_PACKET_FILES_BLACKLIST="/etc/samba/smbpasswd\|/ding/dong" -- cgit v1.2.3-55-g7522 From 65338824690348c281cad2829ab60290503a9dd7 Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Mon, 14 Oct 2013 20:28:49 +0200 Subject: [printergui] added misisng required libraries --- remote/modules/printergui/printergui.conf.ubuntu | 1 + 1 file changed, 1 insertion(+) (limited to 'remote') diff --git a/remote/modules/printergui/printergui.conf.ubuntu b/remote/modules/printergui/printergui.conf.ubuntu index 3dc662fd..2f679912 100644 --- a/remote/modules/printergui/printergui.conf.ubuntu +++ b/remote/modules/printergui/printergui.conf.ubuntu @@ -1,5 +1,6 @@ REQUIRED_INSTALLED_PACKAGES=" libcups2-dev +libqt4-dev " REQUIRED_CONTENT_PACKAGES=" libcups2-dev -- cgit v1.2.3-55-g7522 From 1920e6f4b59d95ef1de90359bac7782df6e44ea7 Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Mon, 14 Oct 2013 22:23:20 +0200 Subject: [printergui] Nicer comment :D --- remote/modules/printergui/printergui.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'remote') diff --git a/remote/modules/printergui/printergui.build b/remote/modules/printergui/printergui.build index b414230c..624c1209 100644 --- a/remote/modules/printergui/printergui.build +++ b/remote/modules/printergui/printergui.build @@ -8,7 +8,7 @@ build() { local SRCDIR="${MODULE_DIR}/src/" mkdir -p "$MODULE_BUILD_DIR/opt/openslx/bin" - cd "${MODULE_BUILD_DIR}/opt/openslx/bin" || perror "Cpdspofj not cd!" + cd "${MODULE_BUILD_DIR}/opt/openslx/bin" || perror "Could not cd!" pinfo "Running qmake" qmake-qt4 "$SRCDIR/src/printergui.pro" -r -spec linux-g++ || perror "'qmake' failed." pinfo "Running make" -- cgit v1.2.3-55-g7522 From e461340e041f2be4e221388f59bae2ff1a73bc4f Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Tue, 15 Oct 2013 00:14:45 +0200 Subject: [printergui] Opensuse conf. Not tested. --- remote/modules/printergui/printergui.conf.opensuse | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 remote/modules/printergui/printergui.conf.opensuse (limited to 'remote') diff --git a/remote/modules/printergui/printergui.conf.opensuse b/remote/modules/printergui/printergui.conf.opensuse new file mode 100644 index 00000000..2d4c7a95 --- /dev/null +++ b/remote/modules/printergui/printergui.conf.opensuse @@ -0,0 +1,7 @@ +REQUIRED_INSTALLED_PACKAGES=" +cups-devel +libqt4-devel +" +REQUIRED_CONTENT_PACKAGES=" +cups-devel +" -- cgit v1.2.3-55-g7522 From 232e1acc5d629861ebbbf295aa56f4c93f17e06c Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Tue, 15 Oct 2013 13:54:50 +0200 Subject: [consolekit] add missing package as REQUIRED_INSTALLED_PACKAGES --- remote/modules/consolekit/consolekit.conf.opensuse | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'remote') diff --git a/remote/modules/consolekit/consolekit.conf.opensuse b/remote/modules/consolekit/consolekit.conf.opensuse index ef8eff2b..d0f46410 100644 --- a/remote/modules/consolekit/consolekit.conf.opensuse +++ b/remote/modules/consolekit/consolekit.conf.opensuse @@ -1,3 +1,7 @@ +REQUIRED_INSTALLED_PACKAGES=" + ConsoleKit + ConsoleKit-x11 +" REQUIRED_CONTENT_PACKAGES=" ConsoleKit ConsoleKit-x11 -- cgit v1.2.3-55-g7522 From dcb5997d7a389f1c090b313abd813f3c2cd38bdb Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Tue, 15 Oct 2013 14:04:29 +0200 Subject: [vmware] add the domain information received from the dhcp server to the vmware-dhcp server configuration --- .../modules/vmware/data/etc/systemd/system/vmware.service | 4 ++-- .../vmware/data/opt/openslx/scripts/systemd-vmware_env | 2 +- .../rootfs-stage32/data/opt/openslx/scripts/udhcpc-openslx | 13 ++++++++++++- 3 files changed, 15 insertions(+), 4 deletions(-) (limited to 'remote') diff --git a/remote/modules/vmware/data/etc/systemd/system/vmware.service b/remote/modules/vmware/data/etc/systemd/system/vmware.service index 30bb42ff..1f47ac8c 100644 --- a/remote/modules/vmware/data/etc/systemd/system/vmware.service +++ b/remote/modules/vmware/data/etc/systemd/system/vmware.service @@ -1,7 +1,7 @@ [Unit] Description=Sets up the vmware environment -Requires=vmchooser.service -After=vmchooser.service +Requires=vmchooser.service network.target +After=vmchooser.service network.target [Service] Type=oneshot diff --git a/remote/modules/vmware/data/opt/openslx/scripts/systemd-vmware_env b/remote/modules/vmware/data/opt/openslx/scripts/systemd-vmware_env index 4103eae6..175f3bef 100755 --- a/remote/modules/vmware/data/opt/openslx/scripts/systemd-vmware_env +++ b/remote/modules/vmware/data/opt/openslx/scripts/systemd-vmware_env @@ -57,7 +57,7 @@ option dns ${SLX_DNS} option subnet 255.255.255.0 option router CNETWORK.1 option wins CNETWORK.10 -option domain virtual.site ${domain_name} +option domain ${SLX_NET_DOMAIN} virtual.site ${wpad_config} # additional options known to udhcpd diff --git a/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/udhcpc-openslx b/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/udhcpc-openslx index 178e3611..d3310bec 100755 --- a/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/udhcpc-openslx +++ b/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/udhcpc-openslx @@ -48,7 +48,7 @@ case "$1" in CONF="" if [ -n "$domain" ]; then printf -v CONF "domain $domain\nsearch $domain\n" - elif [ -n "$SLX_NET_DOMAIN" ]; then + elif [ -n "$SLX_NET_DOMAIN" ]; then printf -v CONF "domain $SLX_NET_DOMAIN\nsearch $SLX_NET_DOMAIN\n" fi for i in $dns; do @@ -91,6 +91,17 @@ case "$1" in echo "# Config written by openslx-dhcp-script (1)" >> /opt/openslx/config echo "SLX_HOSTNAME='$dns_host'" >> /opt/openslx/config fi + + # if domain is given from dhcp, save it to openslx config for later use in VMs + if [ -n "$domain" ]; then + # check if SLX_NET_DOMAIN is in the config at all + if grep '^SLX_NET_DOMAIN=' /opt/openslx/config 2>/dev/null; then + sed -i "s/^\(SLX_NET_DOMAIN=\).*$/\1'$domain'/" /opt/openslx/config + else + # not set, add it + echo "SLX_NET_DOMAIN='$domain'" >> /opt/openslx/config + fi + fi # Update /etc/issue for proper spacing /opt/openslx/scripts/openslx-create_issue fi -- cgit v1.2.3-55-g7522 From 9c356abbcf6c800760d693bf486aabf73a0998d5 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Tue, 15 Oct 2013 14:46:28 +0200 Subject: [vmware] fix missing renaming of build/conf --- remote/modules/vmware/vmware.build | 162 +++++++++++++++++++++++++++++++++++++ remote/modules/vmware/vmware.conf | 4 + 2 files changed, 166 insertions(+) create mode 100644 remote/modules/vmware/vmware.build create mode 100644 remote/modules/vmware/vmware.conf (limited to 'remote') diff --git a/remote/modules/vmware/vmware.build b/remote/modules/vmware/vmware.build new file mode 100644 index 00000000..85929c17 --- /dev/null +++ b/remote/modules/vmware/vmware.build @@ -0,0 +1,162 @@ +fetch_source() { + [ -e "./src" ] && { rm -r ./src || perror "Could not delete old src dir."; } + mkdir -p "./src" || perror "Could not mkdir src" + cd "./src" || perror "cd fail." + # Get directory listing + wget -O "index.html" "$REQUIRED_DOWNLOAD_BASE" || perror "Could not download vmware dir index" + # # Try to treat it as version listing + # local LATEST=$(grep -o -E '"[0-9]+\.[0-9]+\.[0-9]+/' "index.html" | cut -c 2- | sort --version-sort | tail -n 1) + # if [ -n "$LATEST" ]; then + # REQUIRED_DOWNLOAD_BASE+="$LATEST" + # # Determine latest build + # fi + local FILE=$(grep -E -o -i "href=\"VMware-$REQUIRED_TYPE-[^\"]+[\._\-]$ARCHREGEX[\._\-][^\"]+\"" "index.html" | head -n 1 | awk -F '"' '{printf $2}') + [ -z "$FILE" ] && perror "Could not determine vmware $REQUIRED_TYPE bundle file for current arch from $MODULE_DIR/src/index.html" + # Download file + wget -O "$FILE" "$REQUIRED_DOWNLOAD_BASE/$FILE" || perror "Could not download $FILE from $REQUIRED_DOWNLOAD_BASE" + if [[ "$FILE" == *.tar ]]; then + tar -x "${FILE%.tar}" -f "$FILE" || perror "Could not untar downloaded $FILE" + unlink "$FILE" + FILE="${FILE%.tar}" + fi + pinfo "Extracting bundle of VMware $(echo "$FILE" | grep -o -E '[0-9]+\.[0-9]+\.[0-9]+') build $(echo "$FILE" | grep -o -E '[0-9]{7,9}') for $(echo "$FILE" | grep -o -E "$ARCHREGEX")" + ./$FILE -x "./bundle/" || perror "Extracting the vmware bundle failed." + pinfo "done" +} + +build() { + local SRCDIR="./src/bundle" + [ ! -d "$SRCDIR" ] && perror "Extracted vmplayer bundle not found in $SRCDIR - please clean vmplayer module." + local TARGET="$MODULE_BUILD_DIR/usr/lib/vmware/" + mkdir -p "$TARGET"{lib,share,bin} + pinfo "Copying data to build dir" + cp -r ./$SRCDIR/vmware-installer/lib/lib* "$TARGET" || perror "Could not copy libs from vmware-installer" + cp -r ./$SRCDIR/vmware-network-editor/lib "$MODULE_BUILD_DIR/usr/" || perror "Could not copy libs from vmware-network-config" + cp -r ./$SRCDIR/vmware-$REQUIRED_TYPE/lib/share "$TARGET" || perror "Could not copy lib/share from vmware-player" + cp -r ./$SRCDIR/vmware-$REQUIRED_TYPE/share "$MODULE_BUILD_DIR/usr/" || perror "C0oudld not copy share from vmware-player" + cp -r ./$SRCDIR/vmware-player-app/etc "$MODULE_BUILD_DIR/" || perror "Could not copy bin and etc from vmware-player-app." + cp -r ./$SRCDIR/vmware-player-app/lib/* "$TARGET" || perror "Could not copy lib subtree from vmware-player-app." + cp -r ./$SRCDIR/vmware-player-app/{bin,share} "$MODULE_BUILD_DIR/usr/" || perror "could not copy share from vmware-player-app." + cp -r ./$SRCDIR/vmware-usbarbitrator/bin "$MODULE_BUILD_DIR/usr/" || perror "Could not copy bin from vmware-usbarbitrator." + cp -r ./$SRCDIR/vmware-vmx/{bin,etc,sbin} "$MODULE_BUILD_DIR/usr/" || perror "could not copy bin,etc,sbin to usr for vmare-vmx." + cp -r ./$SRCDIR/vmware-vmx/lib/{bin,icu,lib,libconf,scripts} "$TARGET" || perror "Could not copy many things from vmware-vmx." + [ -d "./$SRCDIR/vmware-workstation-server" ] && cp -r ./$SRCDIR/vmware-workstation-server/{bin,lib} "$TARGET" || perror "Could not copy many things from vmware-workstation-server." + [ ! -L "$TARGET/bin/vmplayer" ] && { ln -s /usr/lib/vmware/bin/appLoader "$TARGET/bin/vmplayer" || perror "Could not link vmplayer to appLoader."; } + chmod +x "$TARGET"/bin/* + chmod u+s "$TARGET"/bin/vmware-vmx* || perror "Error setting suid-bit on vmware-vmx*" + chmod +x "$MODULE_BUILD_DIR"/usr/{bin,sbin}/* + chmod u+s "$MODULE_BUILD_DIR"/usr/bin/vmware-mount || perror "Error setting suid-bit on vmware-mount" + chmod u+s "$MODULE_BUILD_DIR"/usr/sbin/vmware-authd || perror "Error setting suid-bit on vmware-authd" + chmod +x "$TARGET"/lib/*.sh + find "$MODULE_BUILD_DIR" -name '*.sh' -exec chmod +x {} \; + for file in $(grep -rl -E "^#!/" "$MODULE_BUILD_DIR"); do + chmod +x "$file" + done + pinfo "Patching LIBCONF_DIR" + local file="" + for file in $(grep -rl "@@LIBCONF_DIR@@" "$MODULE_BUILD_DIR"); do + sed -i 's#@@LIBCONF_DIR@@#/usr/lib/vmware/libconf#g' "$file" + done + + # Compile kernel modules + pinfo "Compiling required kernel modules." + # build modules + build_modules + +} + +post_copy() { + # FIXME: gconftool is copied without dependencies + tarcopy "$(find /usr/lib/ /usr/lib64 -name gconv -type d)" "$TARGET_BUILD_DIR" + #Update Icon cache for vmplayer + gtk-update-icon-cache-3.0 "${TARGET_BUILD_DIR}/usr/share/icons/hicolor/" || pwarning "update-icon-cache-3.0 failed." + #fix vmware-usbarbotrator bug + date +'%Y.%m.%d' >"${TARGET_BUILD_DIR}/etc/arch-release" + copy_modules +} + +build_modules() { + # need to be in src + cd "$MODULE_DIR/src" || perror "Could not cd to '$MODULE_DIR/src'" + local VMWARE_MODCONFIG="$MODULE_DIR/$SRCDIR/vmware-vmx/bin/vmware-modconfig" + [ -e "$VMWARE_MODCONFIG" ] && chmod +x "$VMWARE_MODCONFIG" || perror "Could not find $VMWARE_MODCONFIG" + # link vmware-modconfig-console in the build dir + local MANIFEST="$MODULE_DIR/$SRCDIR/vmware-vmx/manifest.xml" + local BUILD_NUMBER="$(grep -o -E '[0-9]*' "$MANIFEST"|grep -o -E '[0-9]*')" + local VERSION="$(grep -o -E '[0-9\.]*' "$MANIFEST"|grep -o -E '[0-9\.]*')" + local CORE_VERSION="$(grep -o -E '[0-9\.]*' "$MANIFEST"|grep -o -E '[0-9\.]*')" + # /etc/vmware/config gen + + sed -i.bak1 '/^ETCDIR/d;/^VMISETCDIR/d;/bootstrap/d' "$VMWARE_MODCONFIG" + sed -i.bak2 "s/libdir=.*/libdir=$(echo $MODULE_BUILD_DIR | escape_replace)\/usr\/lib\/vmware/g" "$VMWARE_MODCONFIG" + sed -i.bak3 "s#set -e#set -e\nPREFIX=\"/usr\"\nBINDIR=\"/usr/bin\"\nSBINDIR=\"/usr/sbin\"\nLIBDIR=\"/usr/lib\"\nDATADIR=\"/usr/share\"\nSYSCONFDIR=\"/etc\"\nDOCDIR=\"/usr/share/doc\"\nMANDIR=\"/usr/share/man\"\nINCLUDEDIR=\"/usr/include\"\nINITDIR=\"/etc\"\nINITSCRIPTDIR=\"/etc/init.d\"\nVMWARE_INSTALLER=\"/usr/lib/vmware-installer/$CORE_VERSION\"\nVERSION=\"$CORE_VERSION\"\nVMISVERSION=\"$CORE_VERSION\"\nVMISPYVERSION=\"25\"#g" "$VMWARE_MODCONFIG" + + + [ -e "/etc/vmware/config" ] && cp "/etc/vmware/config" "/etc/vmware/config.mltk.bak" + mkdir -p "/etc/vmware" || perror "Could not create /etc/vmware" + cat > "/etc/vmware/config" << EOF +.encoding = "UTF-8" +installerDefaults.componentDownloadEnabled = "yes" +installerDefaults.dataCollectionEnabled = "no" +installerDefaults.transferVersion = "1" +installerDefaults.autoSoftwareUpdateEnabled = "yes" +NETWORKING = "yes" +VMBLOCK_CONFED = "yes" +gksu.rootMethod = "sudo" +libdir = "$MODULE_BUILD_DIR/usr/lib/vmware" +VMCI_CONFED = "yes" +VSOCK_CONFED = "yes" +initscriptdir = "/etc/init.d" +authd.fullpath = "/usr/sbin/vmware-authd" +bindir = "/usr/bin" +vmware.fullpath = "/usr/bin/vmware" +vix.libdir = "/usr/lib/vmware-vix" +vix.config.version = "1" +player.product.version = "$VERSION" +product.buildNumber = "$BUILD_NUMBER" +authd.client.port = "902" +authd.proxy.nfc = "vmware-hostd:ha-nfc" +authd.soapserver = "TRUE" +product.version = "$VERSION" +workstation.product.version = "$VERSION" +product.name = "VMware Workstation" +EOF + mkdir -p "$MODULE_BUILD_DIR/usr/lib/vmware/modules" + ln -sf "$MODULE_DIR/$SRCDIR/vmware-vmx/extra/modules.xml" "$MODULE_BUILD_DIR/usr/lib/vmware/modules/" + ln -sf "$MODULE_DIR/$SRCDIR/vmware-vmx/lib/modules/source" "$MODULE_BUILD_DIR/usr/lib/vmware/modules/" + + ln -sf "appLoader" "$MODULE_BUILD_DIR/usr/lib/vmware/bin/vmware-modconfig" + ln -sf "appLoader" "$MODULE_BUILD_DIR/usr/lib/vmware/bin/vmware-modconfig-console" + + [ ! -e "$MODULES_DIR/kernel/ksrc/include/generated/utsrelease.h" ] && perror "Could not find uts release!!!" + local UTS_RELEASE="$(cat "$MODULES_DIR/kernel/ksrc/include/generated/utsrelease.h" | awk -F '"' '{print $2}')" + pinfo "Patching vmblock.tar" + cd "$MODULE_BUILD_DIR/usr/lib/vmware/modules/source" || perror "cd failed." + tar xf "vmblock.tar" || perror "untar of vmblock.tar failed." + for sourcefile in $(grep -l -r -E '\sputname' "vmblock-only/"); do + sed -r -i 's/\sputname/__putname/g' "$sourcefile" || perror "sed of $sourcefile failed." + done + tar cf "vmblock.tar" "vmblock-only/" || perror "repacking of vmblock.tar failed." + cd - + + pinfo "KOMPILIERE VMWARE KERNEL MODULE" + for MOD in vsock vmblock vmmon vmnet vmci; do + pinfo "Kompiliere $MOD" + [ -s "/lib/modules/$UTS_RELEASE/vmplayer/$MOD.ko" ] && unlink "/lib/modules/$UTS_RELEASE/vmplayer/$MOD.ko" + "$VMWARE_MODCONFIG" --console --build-mod -k "$UTS_RELEASE" "$MOD" "$(which gcc)" "$MODULES_DIR/kernel/ksrc/include" "vmplayer" "$MOD" + [ ! -s "/lib/modules/$UTS_RELEASE/vmplayer/$MOD.ko" ] && perror "Error compiling via $VMWARE_MODCONFIG" + done + + cd - + + [ -e /etc/vmware/config ] && rm -f /etc/vmware/config + cp /etc/vmware/config.mltk.bak /etc/vmware/config + +} + +function copy_modules() { + local UTS_RELEASE="$(cat "$MODULES_DIR/kernel/ksrc/include/generated/utsrelease.h" | awk -F '"' '{print $2}')" + mkdir -p "$TARGET_BUILD_DIR/lib/modules/vmware/" + cp "/lib/modules/$UTS_RELEASE/vmplayer/"* "$TARGET_BUILD_DIR/lib/modules/vmware/" || perror "Could not cp vmware modules to target!" +} + diff --git a/remote/modules/vmware/vmware.conf b/remote/modules/vmware/vmware.conf new file mode 100644 index 00000000..11b7ca71 --- /dev/null +++ b/remote/modules/vmware/vmware.conf @@ -0,0 +1,4 @@ +REQUIRED_DIRECTORIES="/etc /usr" +REQUIRED_DOWNLOAD_BASE="http://softwareupdate.vmware.com/cds/vmw-desktop/ws/10.0.0/1295980/linux/core/" +REQUIRED_TYPE="workstation" + -- cgit v1.2.3-55-g7522 From e715ec592f2014c0742467efa48b900e1c842adb Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Tue, 15 Oct 2013 15:39:44 +0200 Subject: [rootfs-stage32] catch download failed error for slx addons --- .../rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'remote') diff --git a/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons b/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons index b5e2040b..06460506 100755 --- a/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons +++ b/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons @@ -60,7 +60,10 @@ if [ $# -eq 1 ]; then # download the addon from the given URL ADDON_TARGET_PATH="${SYS_TMP}/$(basename "$ADDON").sqfs" - download "${SLX_BASE_PATH}/${ADDON}.sqfs" "${ADDON_TARGET_PATH}" + if ! download "${SLX_BASE_PATH}/${ADDON}.sqfs" "${ADDON_TARGET_PATH}"; then + echo "Download of ${ADDON} failed." + exit 1 + fi # now mount it to $SLX_MNT/ ADDON_MOUNT_POINT="${SLX_BASE_MNT}/$(basename "$ADDON")" -- cgit v1.2.3-55-g7522 From effe3dfa20669f9d5c9bafa67d2b085d2f760a13 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Tue, 15 Oct 2013 15:53:28 +0200 Subject: [vmchooser/xmlfilter] filter out virtualbox images since vbox is not supported yet. --- .../vmchooser/data/opt/openslx/scripts/vmchooser-xml_filter | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'remote') diff --git a/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-xml_filter b/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-xml_filter index 3e0ee42d..fad8c064 100755 --- a/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-xml_filter +++ b/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-xml_filter @@ -56,11 +56,12 @@ function handlePersistentVM() { for FILE in $(find -L "$1" -iname "*.xml"); do # filter all xmls which aren't set active - if [ $(grep "> "$COPYLIST" - tarcopy "$(cat "$COPYLIST" | sort -u)" "${MODULE_BUILD_DIR}" + local SRCDIR="${MODULE_DIR}/src/" - return 0 + mkdir -p "$MODULE_BUILD_DIR/opt/openslx/bin" + cd "${MODULE_BUILD_DIR}/opt/openslx/bin" || perror "Could not cd!" + pinfo "Running qmake" + qmake-qt4 "$SRCDIR/src/beamergui.pro" -r -spec linux-g++ || perror "'qmake' failed." + pinfo "Running make" + make || perror "'make' failed." } - post_copy() { - : } diff --git a/remote/modules/beamer/beamer.conf b/remote/modules/beamer/beamer.conf index 16f54fcf..4d497389 100644 --- a/remote/modules/beamer/beamer.conf +++ b/remote/modules/beamer/beamer.conf @@ -1,3 +1,7 @@ +REQUIRED_GIT="git://git.openslx.org/openslx-ng/beamergui.git" REQUIRED_BINARIES=" - zenity + beamergui " +REQUIRED_SYSTEM_FILES=" +" + diff --git a/remote/modules/beamer/beamer.conf.debian b/remote/modules/beamer/beamer.conf.debian index 459dd079..525245fb 100644 --- a/remote/modules/beamer/beamer.conf.debian +++ b/remote/modules/beamer/beamer.conf.debian @@ -1,6 +1,7 @@ REQUIRED_INSTALLED_PACKAGES=" - zenity +libqt4-dev +libxrandr-dev " REQUIRED_CONTENT_PACKAGES=" - zenity +libxrandr2 " diff --git a/remote/modules/beamer/beamer.conf.opensuse b/remote/modules/beamer/beamer.conf.opensuse deleted file mode 100644 index 459dd079..00000000 --- a/remote/modules/beamer/beamer.conf.opensuse +++ /dev/null @@ -1,6 +0,0 @@ -REQUIRED_INSTALLED_PACKAGES=" - zenity -" -REQUIRED_CONTENT_PACKAGES=" - zenity -" diff --git a/remote/modules/beamer/beamer.conf.scientific b/remote/modules/beamer/beamer.conf.scientific deleted file mode 100644 index 459dd079..00000000 --- a/remote/modules/beamer/beamer.conf.scientific +++ /dev/null @@ -1,6 +0,0 @@ -REQUIRED_INSTALLED_PACKAGES=" - zenity -" -REQUIRED_CONTENT_PACKAGES=" - zenity -" diff --git a/remote/modules/beamer/beamer.conf.ubuntu b/remote/modules/beamer/beamer.conf.ubuntu index 459dd079..525245fb 100644 --- a/remote/modules/beamer/beamer.conf.ubuntu +++ b/remote/modules/beamer/beamer.conf.ubuntu @@ -1,6 +1,7 @@ REQUIRED_INSTALLED_PACKAGES=" - zenity +libqt4-dev +libxrandr-dev " REQUIRED_CONTENT_PACKAGES=" - zenity +libxrandr2 " -- cgit v1.2.3-55-g7522 From e870ff0ebdff769278ba4db259f3493908b323f6 Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Fri, 18 Oct 2013 11:40:51 +0200 Subject: [beamergui] Renamed module. --- remote/modules/beamer/TODO | 2 - remote/modules/beamer/beamer.build | 18 - remote/modules/beamer/beamer.conf | 7 - remote/modules/beamer/beamer.conf.debian | 7 - remote/modules/beamer/beamer.conf.ubuntu | 7 - .../data/opt/openslx/bin/screenRecognizer.sh | 418 --------------------- remote/modules/beamergui/TODO | 2 + remote/modules/beamergui/beamergui.build | 18 + remote/modules/beamergui/beamergui.conf | 7 + remote/modules/beamergui/beamergui.conf.debian | 7 + remote/modules/beamergui/beamergui.conf.ubuntu | 7 + .../data/opt/openslx/bin/screenRecognizer.sh | 418 +++++++++++++++++++++ 12 files changed, 459 insertions(+), 459 deletions(-) delete mode 100644 remote/modules/beamer/TODO delete mode 100644 remote/modules/beamer/beamer.build delete mode 100644 remote/modules/beamer/beamer.conf delete mode 100644 remote/modules/beamer/beamer.conf.debian delete mode 100644 remote/modules/beamer/beamer.conf.ubuntu delete mode 100755 remote/modules/beamer/data/opt/openslx/bin/screenRecognizer.sh create mode 100644 remote/modules/beamergui/TODO create mode 100644 remote/modules/beamergui/beamergui.build create mode 100644 remote/modules/beamergui/beamergui.conf create mode 100644 remote/modules/beamergui/beamergui.conf.debian create mode 100644 remote/modules/beamergui/beamergui.conf.ubuntu create mode 100755 remote/modules/beamergui/data/opt/openslx/bin/screenRecognizer.sh (limited to 'remote') diff --git a/remote/modules/beamer/TODO b/remote/modules/beamer/TODO deleted file mode 100644 index 651759eb..00000000 --- a/remote/modules/beamer/TODO +++ /dev/null @@ -1,2 +0,0 @@ -Zenity durch eigen QT app ersetzen - diff --git a/remote/modules/beamer/beamer.build b/remote/modules/beamer/beamer.build deleted file mode 100644 index 49fcfe1d..00000000 --- a/remote/modules/beamer/beamer.build +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -fetch_source() { - git clone "${REQUIRED_GIT}" src -} - -build() { - local SRCDIR="${MODULE_DIR}/src/" - - mkdir -p "$MODULE_BUILD_DIR/opt/openslx/bin" - cd "${MODULE_BUILD_DIR}/opt/openslx/bin" || perror "Could not cd!" - pinfo "Running qmake" - qmake-qt4 "$SRCDIR/src/beamergui.pro" -r -spec linux-g++ || perror "'qmake' failed." - pinfo "Running make" - make || perror "'make' failed." -} -post_copy() { -} diff --git a/remote/modules/beamer/beamer.conf b/remote/modules/beamer/beamer.conf deleted file mode 100644 index 4d497389..00000000 --- a/remote/modules/beamer/beamer.conf +++ /dev/null @@ -1,7 +0,0 @@ -REQUIRED_GIT="git://git.openslx.org/openslx-ng/beamergui.git" -REQUIRED_BINARIES=" - beamergui -" -REQUIRED_SYSTEM_FILES=" -" - diff --git a/remote/modules/beamer/beamer.conf.debian b/remote/modules/beamer/beamer.conf.debian deleted file mode 100644 index 525245fb..00000000 --- a/remote/modules/beamer/beamer.conf.debian +++ /dev/null @@ -1,7 +0,0 @@ -REQUIRED_INSTALLED_PACKAGES=" -libqt4-dev -libxrandr-dev -" -REQUIRED_CONTENT_PACKAGES=" -libxrandr2 -" diff --git a/remote/modules/beamer/beamer.conf.ubuntu b/remote/modules/beamer/beamer.conf.ubuntu deleted file mode 100644 index 525245fb..00000000 --- a/remote/modules/beamer/beamer.conf.ubuntu +++ /dev/null @@ -1,7 +0,0 @@ -REQUIRED_INSTALLED_PACKAGES=" -libqt4-dev -libxrandr-dev -" -REQUIRED_CONTENT_PACKAGES=" -libxrandr2 -" diff --git a/remote/modules/beamer/data/opt/openslx/bin/screenRecognizer.sh b/remote/modules/beamer/data/opt/openslx/bin/screenRecognizer.sh deleted file mode 100755 index feabe7ee..00000000 --- a/remote/modules/beamer/data/opt/openslx/bin/screenRecognizer.sh +++ /dev/null @@ -1,418 +0,0 @@ -#! /bin/bash - -RES1610=(1920x1200 1680x1050 1440x900 1280x800 ) -RES169=(1920x1080 1600x900 1280x720 ) -RES54=(1280x1024 ) -RES43=(1280x960 1152x864 1024x768 ) -ALLRES=( ${RES1610[@]} ${RES169[@]} ${RES54[@]} ${RES43[@]} ) - -echo -e "\e[32mSupported resolutions\e[0m" -for i in ${ALLRES[@]} -do - echo -n "$i - " - echo "scale=2; $i" | tr "x" "/" | bc -l -done - -# Get initial data -XRANDR=$( xrandr ) -XRANDRV=$( xrandr --verbose ) - -# Get the connected outputs -declare -a OUTPUTNAMES -while read line; do - OUTPUTNAMES+=("$(echo "$line" | grep -o "^\S*" )") -done < <( echo "$XRANDR" | grep -i " connected" ) -echo -e "Connected outputs: \e[32m${OUTPUTNAMES[@]}\e[0m" - - -if [ ${#OUTPUTNAMES[@]} -eq 1 ]; then - - - # In case of one connected output - xrandr --auto - exit - - -elif [ ${#OUTPUTNAMES[@]} -eq 2 ]; then - - - # In case of two connected outputs - # If one of the two connected outputs is a beamer, based on the assumption - # that a beamer can not output a reasonable dimension. - if ! ( echo "$XRANDR" | egrep "^${OUTPUTNAMES[0]}.*[[:digit:]]{2,}mm x [[:digit:]]{2,}mm" > /dev/null \ - && echo "$XRANDR" | egrep "^${OUTPUTNAMES[1]}.*[[:digit:]]{2,}mm x [[:digit:]]{2,}mm" > /dev/null ); then - - - # If one scree is a beamer. First check which one is the BEAMER - if [[ -z "$(echo "$XRANDR" | egrep "^${OUTPUTNAMES[0]}.*[[:digit:]]{2,}mm x [[:digit:]]{2,}mm")" ]] - then BEAMER=0; else BEAMER=1; fi - echo -ne "${OUTPUTNAMES[$BEAMER]} is a beamer. " - - - # Get the supported modes of the outputs - # Get resolutions of output #0 - for RES in $( echo "$XRANDR" | grep -Pzo \ - "(?s)^${OUTPUTNAMES[0]} connected\N*\n(\t+\N*\n)*(\ +\N*\n)*" \ - | egrep -o "\ \ [[:digit:]]+x[[:digit:]]+" ); do - OUTPUT0+=("$RES"); - done - echo -e "\e[31mOUTPUT0:\e[0m" - for i in ${OUTPUT0[@]}; do echo "$i";done - - # Get resolutions of output #1 - for RES in $( echo "$XRANDR" | grep -Pzo \ - "(?s)^${OUTPUTNAMES[1]} connected\N*\n(\t+\N*\n)*(\ +\N*\n)*" \ - | egrep -o "\ \ [[:digit:]]+x[[:digit:]]+" ); do - OUTPUT1+=("$RES"); - done - echo -e "\e[31mOUTPUT1:\e[0m" - for i in ${OUTPUT1[@]}; do echo "$i";done - - - # Find out, if the beamer transmits reliable EDID data. The data in xrandr - # should be reliable if the EDID is present. - if echo "$XRANDRV" | grep -Pzo \ - "^${OUTPUTNAMES[$BEAMER]}\N*\n((\ |\t)+\N*\n)+" \ - | grep EDID > /dev/null ; then - - - echo "EDID present" - - # If the beamer transmits reliable EDID data, get the perfect match - # Presumed the preferred resolution is the native one, get both native - # resolutions - BEAMERPREF=$(echo "$XRANDRV" \ - | grep -Pzo "^${OUTPUTNAMES[$BEAMER]}\N*\n((\ |\t)+\N*\n)+" \ - | grep preferred | awk '{print $1}') - echo -e "\e[32mBEAMERPREF\e[0m=$BEAMERPREF" - MONITORPREF=$(echo "$XRANDRV" \ - | grep -Pzo "^${OUTPUTNAMES[$((1-$BEAMER))]}\N*\n((\ |\t)+\N*\n)+" \ - | grep preferred | awk '{print $1}') - echo -e "\e[32mMONITORPREF\e[0m=$MONITORPREF" - - # Compute the optimal resolution for presentations - # which is min( 1280, M.X, B.X ) - OPTIMALRESX=$(( ${MONITORPREF%x*} <= ${BEAMERPREF%x*} ? \ - ${MONITORPREF%x*} : ${BEAMERPREF%x*} )) - OPTIMALRESX=$(( $OPTIMALRESX <= 1280 ? $OPTIMALRESX : 1280 )) - AR=$(echo "$BEAMERPREF" | tr "x" "/" | bc -l) # "scale=2; 5/4" - OPTIMALRESY=$(echo "scale=0; $OPTIMALRESX / $(echo "$AR" | bc -l)" | bc -l) - OPTIMALRES="$OPTIMALRESX"x"$OPTIMALRESY" - echo -e "\e[32mOPTIMALRESX\e[0m=$OPTIMALRESX" - echo -e "\e[32mOPTIMALRESY\e[0m=$OPTIMALRESY" - echo -e "\e[32mOPTIMALRES\e[0m=$OPTIMALRES" - echo -e "\e[32mAR\e[0m=$AR" - - # Generate a list of common resolutions (Greedy fun) - for RES1 in ${OUTPUT0[@]}; do - for RES2 in ${OUTPUT1[@]}; do - if [ $RES1 = $RES2 ]; then - COMMONMATCHES+=("$RES1") - fi - done - done - echo -e "\e[31mCOMMONMATCHES:\e[0m" - for i in "${COMMONMATCHES[@]}" - do echo "$i - $( echo "scale=2; $i" | tr "x" "/" | bc -l)" - done - - # Compute the additional resolutions - for i in ${ALLRES[@]}; do - if (( $( echo "$i == $AR" | tr "x" "/" | bc -l ) )); then - if echo ${COMMONMATCHES[@]} | grep "$i" > /dev/null; then - if [ "$OPTIMALRES" = "$i" ]; then continue; fi - ADDITIONALRES+=("$i") - else - xrandr \ - --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} "$i" \ - --addmode ${OUTPUTNAMES[$BEAMER]} "$i" \ - && ADDITIONALRES+=("$i") - fi - fi - done - echo -e "\e[31mADDITIONALRES:\e[0m" - for i in "${ADDITIONALRES[@]}" - do echo "$i - $( echo "scale=2; ${i% *}" | tr "x" "/" | bc -l)" - done - - # Apply the optimal resolution - xrandr \ - --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} $OPTIMALRES \ - --addmode ${OUTPUTNAMES[$BEAMER]} $OPTIMALRES; - xrandr \ - --output ${OUTPUTNAMES[$((1-$BEAMER))]} --mode $OPTIMALRES \ - --primary \ - --output ${OUTPUTNAMES[$BEAMER]} --mode $OPTIMALRES \ - --same-as ${OUTPUTNAMES[$((1-$BEAMER))]} - - # Ask for a resolution - CHOSENRES=$( zenity --list \ - --title="Resolution Chooser" \ - --ok-label="Apply" \ - --cancel-label="Cancel" \ - --text "Choose a resolution\nor press cancel." \ - --width=300 --height=400 \ - --column="Resolution" "$OPTIMALRES (optimal)" "${ADDITIONALRES[@]}" \ - --print-column=1 \ - --hide-header ) || exit - echo "Chosen resolution $CHOSENRES" - - - - # Apply resolution - xrandr \ - --output ${OUTPUTNAMES[0]} --mode ${CHOSENRES%% *} \ - --output ${OUTPUTNAMES[1]} --mode ${CHOSENRES%% *} \ - --same-as ${OUTPUTNAMES[0]} - - - # If beamer DOES NOT transmit reliable EDID data - else - - echo "EDID is not present" - - # Compute the additional resolutions - for i in ${ALLRES[@]}; do - if ! xrandr \ - --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} "$i" \ - --addmode ${OUTPUTNAMES[$BEAMER]} "$i"; then - if xrandr --newmode \ - "$i" $( cvt $(echo "$i" | tr "x" " " ) \ - | grep Modeline | cut -d " " -f3-); then - if ! xrandr --dryrun \ - --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} "$i" \ - --addmode ${OUTPUTNAMES[$BEAMER]} "$i"; then - continue; - fi - else - continue - fi - fi - AR=$(echo "scale=2; $i" | tr "x" "/" | bc -l ) - case $AR in - "1.60") - ADDITIONALRES+=("$i (16:10)") - ;; - "1.77") - ADDITIONALRES+=("$i (16:9)") - ;; - "1.25") - ADDITIONALRES+=("$i (5:4)") - ;; - "1.33") - ADDITIONALRES+=("$i (4:3)") - ;; - *) - esac - done - echo -e "\e[31mADDITIONALRES:\e[0m" - for i in "${ADDITIONALRES[@]}" - do echo "$i - $( echo "scale=2; ${i% *}" | tr "x" "/" | bc -l)" - done - - TEXT="The connected beamer did not transmit reliable configuration\n" \ - TEXT+="data. To avoid clipping or streching, it is recommended to\n" \ - TEXT+="choose a resolution equal to the aspect ratio of the native\n" \ - TEXT+="resolution of the beamer." \ - - # Ask for a resolution - CHOSENRES=$( zenity --list \ - --title="Resolution Chooser" \ - --ok-label="Apply" \ - --cancel-label="Cancel" \ - --text "$TEXT" \ - --width=300 --height=400 \ - --column="Resolution" "${ADDITIONALRES[@]}" \ - --print-column=1 \ - --hide-header ) || exit - echo "Chosen resolution ${CHOSENRES%% *}" - - # Apply resolution - xrandr \ - --addmode ${OUTPUTNAMES[0]} ${CHOSENRES%% *} \ - --addmode ${OUTPUTNAMES[1]} ${CHOSENRES%% *}; - xrandr \ - --output ${OUTPUTNAMES[$((1-$BEAMER))]} --mode ${CHOSENRES%% *} \ - --primary \ - --output ${OUTPUTNAMES[$BEAMER]} --mode ${CHOSENRES%% *} \ - --same-as ${OUTPUTNAMES[$((1-$BEAMER))]} - - fi - else - - - # If neiter of the outputs is a beamer (likely dualscreen - # setup) just apply preferred settings - echo "no beamer" - xrandr \ - --output ${OUTPUTNAMES[0]} --preferred \ - --output ${OUTPUTNAMES[1]} --preferred \ - --right-of ${OUTPUTNAMES[0]} - - - fi - -else - # If there are more than 3 outputs - # its up to the user. Quit. - exit; -fi - - - - # OLD APPROACH - # Find out, if the beamer transmits reliable EDID data. - # For the first assumption the beamer transmits reliable data, if in - # Xorg.log '*EDID for output $BEAMER*' is succeded by '*Manufacturer*' - # and '*Year*'. - # BEAMERELIABILITY=1 - # while read line - # do - # if echo $line | grep "EDID for output ${OUTPUTNAMES[$BEAMER]}" > /dev/null - # then - # read line - # if echo $line | grep "Manufacturer" > /dev/null - # then - # BEAMERELIABILITY=0 - # break - # fi - # fi - # done < "/var/log/Xorg.0.log" - - - - - - -# # if one of the outputs is a beamer, offer a choice -# declare -a OUTPUT1 -# declare -a OUTPUT2 -# - -# # Make sure the desired resolutions are existent -# # FULLHD -# #for in -# -# -# ####################################DEBUG################################### -# echo ${NATIVEMATCHES[@]} -# echo -e "\e[31m--------------------------------\e[0m" -# ############################################################################ -# -# # Add some experimental standard resolutions, which the outputs should be -# # able to display via interpolation. -# declare -a EXPERIMENTALMATCHES=("1920x1080 (16:9)" "1366x768 (16:9)" "1280x960 (4:3)" "1280x720 (16:9)") -# -# ## Form an interactive dialog to suit the users preferred resolution -# #zenity --question \ -# # --timeout=10 \ -# # --text="Do you want to change the resolution?" \ -# # --ok-label "Yes" \ -# # --cancel-label "No" -# -#OfferChoice() -#{ -# false; while [ "$?" != 0 ] #bash do{...}while(...) imitation -# do -# -# -# CHOSENRES=$( zenity --list \ -# --title="Resolution Chooser" \ -# --ok-label="Apply" \ -# --cancel-label="Cancel" \ -# --text "Choose a resolution\nor press cancel." \ -# --width=300 --height=400 \ -# --column="Resolution" 1920x1080 1366x768 1280x720 1024x768 \ -# --print-column=1 \ -# --hide-header ) -# -# ####################################DEBUG################################# -# echo "Chosen resolution $CHOSENRES" -# echo -e "\e[31m--------------------------------\e[0m" -# ########################################################################## -# -# if [ $? != 0 ] -# then -# break -# fi -# -# xrandr \ -# --output ${OUTPUTNAMES[0]} --mode ${CHOSENRES%% *} \ -# --output ${OUTPUTNAMES[1]} --mode ${CHOSENRES%% *} \ -# --same-as ${OUTPUTNAMES[0]} -# -# # in case the mode is unknown -# if [ $? != 0 ] -# then -# xrandr \ -# --addmode ${OUTPUTNAMES[0]} ${CHOSENRES%% *} \ -# --addmode ${OUTPUTNAMES[1]} ${CHOSENRES%% *} -# xrandr \ -# --output ${OUTPUTNAMES[0]} --mode ${CHOSENRES%% *} --primary \ -# --output ${OUTPUTNAMES[1]} --mode ${CHOSENRES%% *} --same-as ${OUTPUTNAMES[0]} -# -# #CVT="$(cvt $(echo ${CHOSENRES%% *} | cut -d " " -f1 | tr "x" " ") | grep Modeline)" -# #MODENAME=echo $CVT | cut -d " " -f2) -# #MODELINE=echo $CVT | cut -d " " -f3-) -# fi -# -# zenity --question \ -# --text="Do you want to stay with this resolution?" \ -# --ok-label "Yes" \ -# --cancel-label "No" -# -# # In case of timeout -# #if [ $? -eq 5]; then ;fi -# -# done -#} -# # If the beamer fits in the monitor, teach the monitor the preferred -# # mode of the beamer -# xrandr --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} $BEAMERPREF -# xrandr --output ${OUTPUTNAMES[$((1-$BEAMER))]} \ -# --mode $BEAMERPREF \ -# --primary \ -# --output ${OUTPUTNAMES[$BEAMER]} \ -# --mode $BEAMERPREF \ -# --same-as ${OUTPUTNAMES[$((1-$BEAMER))]} -# echo -e "\e[32mPERFECTMATCH\e[0m=$BEAMERPREF" -# -# # If the monitor fits in the beamer, teach the beamer the preferred -# # mode of the monitor -# xrandr --addmode ${OUTPUTNAMES[$BEAMER]} $MONITORPREF -# xrandr --output ${OUTPUTNAMES[$((1-$BEAMER))]} \ -# --mode $MONITORPREF \ -# --primary \ -# --output ${OUTPUTNAMES[$BEAMER]} \ -# --mode $MONITORPREF \ -# --same-as ${OUTPUTNAMES[$((1-$BEAMER))]} -# -# -# -# -# -# Offer a mode selection -# 1920x1080, 1366x768, 1280x800 and 1024x800 have to be available. -# Check if the TFT supports the resolution -# if echo "$XRANDRV" \ -# | grep -Pzo "^${OUTPUTNAMES[$((1-$BEAMER))]}\N*\n((\ |\t)+\N*\n)+" \ -# | grep $MODE > /dev/null -# then -# -# # If so, just assign the beamers preferred resolution to the TFT -# xrandr \ -# --output ${OUTPUTNAMES[0]} --mode $MODE \ -# --output ${OUTPUTNAMES[1]} --mode $MODE \ -# --same-as ${OUTPUTNAMES[0]} -# else -# -# # If not, teach the TFT the mode -# xrandr \ -# --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} $MODE -# --output ${OUTPUTNAMES[0]} --mode $MODE \ -# --output ${OUTPUTNAMES[1]} --mode $MODE \ -# --same-as ${OUTPUTNAMES[0]} -# fi -# -# #OfferChoice -# #echo "Offered choice" diff --git a/remote/modules/beamergui/TODO b/remote/modules/beamergui/TODO new file mode 100644 index 00000000..651759eb --- /dev/null +++ b/remote/modules/beamergui/TODO @@ -0,0 +1,2 @@ +Zenity durch eigen QT app ersetzen + diff --git a/remote/modules/beamergui/beamergui.build b/remote/modules/beamergui/beamergui.build new file mode 100644 index 00000000..49fcfe1d --- /dev/null +++ b/remote/modules/beamergui/beamergui.build @@ -0,0 +1,18 @@ +#!/bin/bash + +fetch_source() { + git clone "${REQUIRED_GIT}" src +} + +build() { + local SRCDIR="${MODULE_DIR}/src/" + + mkdir -p "$MODULE_BUILD_DIR/opt/openslx/bin" + cd "${MODULE_BUILD_DIR}/opt/openslx/bin" || perror "Could not cd!" + pinfo "Running qmake" + qmake-qt4 "$SRCDIR/src/beamergui.pro" -r -spec linux-g++ || perror "'qmake' failed." + pinfo "Running make" + make || perror "'make' failed." +} +post_copy() { +} diff --git a/remote/modules/beamergui/beamergui.conf b/remote/modules/beamergui/beamergui.conf new file mode 100644 index 00000000..4d497389 --- /dev/null +++ b/remote/modules/beamergui/beamergui.conf @@ -0,0 +1,7 @@ +REQUIRED_GIT="git://git.openslx.org/openslx-ng/beamergui.git" +REQUIRED_BINARIES=" + beamergui +" +REQUIRED_SYSTEM_FILES=" +" + diff --git a/remote/modules/beamergui/beamergui.conf.debian b/remote/modules/beamergui/beamergui.conf.debian new file mode 100644 index 00000000..525245fb --- /dev/null +++ b/remote/modules/beamergui/beamergui.conf.debian @@ -0,0 +1,7 @@ +REQUIRED_INSTALLED_PACKAGES=" +libqt4-dev +libxrandr-dev +" +REQUIRED_CONTENT_PACKAGES=" +libxrandr2 +" diff --git a/remote/modules/beamergui/beamergui.conf.ubuntu b/remote/modules/beamergui/beamergui.conf.ubuntu new file mode 100644 index 00000000..525245fb --- /dev/null +++ b/remote/modules/beamergui/beamergui.conf.ubuntu @@ -0,0 +1,7 @@ +REQUIRED_INSTALLED_PACKAGES=" +libqt4-dev +libxrandr-dev +" +REQUIRED_CONTENT_PACKAGES=" +libxrandr2 +" diff --git a/remote/modules/beamergui/data/opt/openslx/bin/screenRecognizer.sh b/remote/modules/beamergui/data/opt/openslx/bin/screenRecognizer.sh new file mode 100755 index 00000000..feabe7ee --- /dev/null +++ b/remote/modules/beamergui/data/opt/openslx/bin/screenRecognizer.sh @@ -0,0 +1,418 @@ +#! /bin/bash + +RES1610=(1920x1200 1680x1050 1440x900 1280x800 ) +RES169=(1920x1080 1600x900 1280x720 ) +RES54=(1280x1024 ) +RES43=(1280x960 1152x864 1024x768 ) +ALLRES=( ${RES1610[@]} ${RES169[@]} ${RES54[@]} ${RES43[@]} ) + +echo -e "\e[32mSupported resolutions\e[0m" +for i in ${ALLRES[@]} +do + echo -n "$i - " + echo "scale=2; $i" | tr "x" "/" | bc -l +done + +# Get initial data +XRANDR=$( xrandr ) +XRANDRV=$( xrandr --verbose ) + +# Get the connected outputs +declare -a OUTPUTNAMES +while read line; do + OUTPUTNAMES+=("$(echo "$line" | grep -o "^\S*" )") +done < <( echo "$XRANDR" | grep -i " connected" ) +echo -e "Connected outputs: \e[32m${OUTPUTNAMES[@]}\e[0m" + + +if [ ${#OUTPUTNAMES[@]} -eq 1 ]; then + + + # In case of one connected output + xrandr --auto + exit + + +elif [ ${#OUTPUTNAMES[@]} -eq 2 ]; then + + + # In case of two connected outputs + # If one of the two connected outputs is a beamer, based on the assumption + # that a beamer can not output a reasonable dimension. + if ! ( echo "$XRANDR" | egrep "^${OUTPUTNAMES[0]}.*[[:digit:]]{2,}mm x [[:digit:]]{2,}mm" > /dev/null \ + && echo "$XRANDR" | egrep "^${OUTPUTNAMES[1]}.*[[:digit:]]{2,}mm x [[:digit:]]{2,}mm" > /dev/null ); then + + + # If one scree is a beamer. First check which one is the BEAMER + if [[ -z "$(echo "$XRANDR" | egrep "^${OUTPUTNAMES[0]}.*[[:digit:]]{2,}mm x [[:digit:]]{2,}mm")" ]] + then BEAMER=0; else BEAMER=1; fi + echo -ne "${OUTPUTNAMES[$BEAMER]} is a beamer. " + + + # Get the supported modes of the outputs + # Get resolutions of output #0 + for RES in $( echo "$XRANDR" | grep -Pzo \ + "(?s)^${OUTPUTNAMES[0]} connected\N*\n(\t+\N*\n)*(\ +\N*\n)*" \ + | egrep -o "\ \ [[:digit:]]+x[[:digit:]]+" ); do + OUTPUT0+=("$RES"); + done + echo -e "\e[31mOUTPUT0:\e[0m" + for i in ${OUTPUT0[@]}; do echo "$i";done + + # Get resolutions of output #1 + for RES in $( echo "$XRANDR" | grep -Pzo \ + "(?s)^${OUTPUTNAMES[1]} connected\N*\n(\t+\N*\n)*(\ +\N*\n)*" \ + | egrep -o "\ \ [[:digit:]]+x[[:digit:]]+" ); do + OUTPUT1+=("$RES"); + done + echo -e "\e[31mOUTPUT1:\e[0m" + for i in ${OUTPUT1[@]}; do echo "$i";done + + + # Find out, if the beamer transmits reliable EDID data. The data in xrandr + # should be reliable if the EDID is present. + if echo "$XRANDRV" | grep -Pzo \ + "^${OUTPUTNAMES[$BEAMER]}\N*\n((\ |\t)+\N*\n)+" \ + | grep EDID > /dev/null ; then + + + echo "EDID present" + + # If the beamer transmits reliable EDID data, get the perfect match + # Presumed the preferred resolution is the native one, get both native + # resolutions + BEAMERPREF=$(echo "$XRANDRV" \ + | grep -Pzo "^${OUTPUTNAMES[$BEAMER]}\N*\n((\ |\t)+\N*\n)+" \ + | grep preferred | awk '{print $1}') + echo -e "\e[32mBEAMERPREF\e[0m=$BEAMERPREF" + MONITORPREF=$(echo "$XRANDRV" \ + | grep -Pzo "^${OUTPUTNAMES[$((1-$BEAMER))]}\N*\n((\ |\t)+\N*\n)+" \ + | grep preferred | awk '{print $1}') + echo -e "\e[32mMONITORPREF\e[0m=$MONITORPREF" + + # Compute the optimal resolution for presentations + # which is min( 1280, M.X, B.X ) + OPTIMALRESX=$(( ${MONITORPREF%x*} <= ${BEAMERPREF%x*} ? \ + ${MONITORPREF%x*} : ${BEAMERPREF%x*} )) + OPTIMALRESX=$(( $OPTIMALRESX <= 1280 ? $OPTIMALRESX : 1280 )) + AR=$(echo "$BEAMERPREF" | tr "x" "/" | bc -l) # "scale=2; 5/4" + OPTIMALRESY=$(echo "scale=0; $OPTIMALRESX / $(echo "$AR" | bc -l)" | bc -l) + OPTIMALRES="$OPTIMALRESX"x"$OPTIMALRESY" + echo -e "\e[32mOPTIMALRESX\e[0m=$OPTIMALRESX" + echo -e "\e[32mOPTIMALRESY\e[0m=$OPTIMALRESY" + echo -e "\e[32mOPTIMALRES\e[0m=$OPTIMALRES" + echo -e "\e[32mAR\e[0m=$AR" + + # Generate a list of common resolutions (Greedy fun) + for RES1 in ${OUTPUT0[@]}; do + for RES2 in ${OUTPUT1[@]}; do + if [ $RES1 = $RES2 ]; then + COMMONMATCHES+=("$RES1") + fi + done + done + echo -e "\e[31mCOMMONMATCHES:\e[0m" + for i in "${COMMONMATCHES[@]}" + do echo "$i - $( echo "scale=2; $i" | tr "x" "/" | bc -l)" + done + + # Compute the additional resolutions + for i in ${ALLRES[@]}; do + if (( $( echo "$i == $AR" | tr "x" "/" | bc -l ) )); then + if echo ${COMMONMATCHES[@]} | grep "$i" > /dev/null; then + if [ "$OPTIMALRES" = "$i" ]; then continue; fi + ADDITIONALRES+=("$i") + else + xrandr \ + --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} "$i" \ + --addmode ${OUTPUTNAMES[$BEAMER]} "$i" \ + && ADDITIONALRES+=("$i") + fi + fi + done + echo -e "\e[31mADDITIONALRES:\e[0m" + for i in "${ADDITIONALRES[@]}" + do echo "$i - $( echo "scale=2; ${i% *}" | tr "x" "/" | bc -l)" + done + + # Apply the optimal resolution + xrandr \ + --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} $OPTIMALRES \ + --addmode ${OUTPUTNAMES[$BEAMER]} $OPTIMALRES; + xrandr \ + --output ${OUTPUTNAMES[$((1-$BEAMER))]} --mode $OPTIMALRES \ + --primary \ + --output ${OUTPUTNAMES[$BEAMER]} --mode $OPTIMALRES \ + --same-as ${OUTPUTNAMES[$((1-$BEAMER))]} + + # Ask for a resolution + CHOSENRES=$( zenity --list \ + --title="Resolution Chooser" \ + --ok-label="Apply" \ + --cancel-label="Cancel" \ + --text "Choose a resolution\nor press cancel." \ + --width=300 --height=400 \ + --column="Resolution" "$OPTIMALRES (optimal)" "${ADDITIONALRES[@]}" \ + --print-column=1 \ + --hide-header ) || exit + echo "Chosen resolution $CHOSENRES" + + + + # Apply resolution + xrandr \ + --output ${OUTPUTNAMES[0]} --mode ${CHOSENRES%% *} \ + --output ${OUTPUTNAMES[1]} --mode ${CHOSENRES%% *} \ + --same-as ${OUTPUTNAMES[0]} + + + # If beamer DOES NOT transmit reliable EDID data + else + + echo "EDID is not present" + + # Compute the additional resolutions + for i in ${ALLRES[@]}; do + if ! xrandr \ + --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} "$i" \ + --addmode ${OUTPUTNAMES[$BEAMER]} "$i"; then + if xrandr --newmode \ + "$i" $( cvt $(echo "$i" | tr "x" " " ) \ + | grep Modeline | cut -d " " -f3-); then + if ! xrandr --dryrun \ + --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} "$i" \ + --addmode ${OUTPUTNAMES[$BEAMER]} "$i"; then + continue; + fi + else + continue + fi + fi + AR=$(echo "scale=2; $i" | tr "x" "/" | bc -l ) + case $AR in + "1.60") + ADDITIONALRES+=("$i (16:10)") + ;; + "1.77") + ADDITIONALRES+=("$i (16:9)") + ;; + "1.25") + ADDITIONALRES+=("$i (5:4)") + ;; + "1.33") + ADDITIONALRES+=("$i (4:3)") + ;; + *) + esac + done + echo -e "\e[31mADDITIONALRES:\e[0m" + for i in "${ADDITIONALRES[@]}" + do echo "$i - $( echo "scale=2; ${i% *}" | tr "x" "/" | bc -l)" + done + + TEXT="The connected beamer did not transmit reliable configuration\n" \ + TEXT+="data. To avoid clipping or streching, it is recommended to\n" \ + TEXT+="choose a resolution equal to the aspect ratio of the native\n" \ + TEXT+="resolution of the beamer." \ + + # Ask for a resolution + CHOSENRES=$( zenity --list \ + --title="Resolution Chooser" \ + --ok-label="Apply" \ + --cancel-label="Cancel" \ + --text "$TEXT" \ + --width=300 --height=400 \ + --column="Resolution" "${ADDITIONALRES[@]}" \ + --print-column=1 \ + --hide-header ) || exit + echo "Chosen resolution ${CHOSENRES%% *}" + + # Apply resolution + xrandr \ + --addmode ${OUTPUTNAMES[0]} ${CHOSENRES%% *} \ + --addmode ${OUTPUTNAMES[1]} ${CHOSENRES%% *}; + xrandr \ + --output ${OUTPUTNAMES[$((1-$BEAMER))]} --mode ${CHOSENRES%% *} \ + --primary \ + --output ${OUTPUTNAMES[$BEAMER]} --mode ${CHOSENRES%% *} \ + --same-as ${OUTPUTNAMES[$((1-$BEAMER))]} + + fi + else + + + # If neiter of the outputs is a beamer (likely dualscreen + # setup) just apply preferred settings + echo "no beamer" + xrandr \ + --output ${OUTPUTNAMES[0]} --preferred \ + --output ${OUTPUTNAMES[1]} --preferred \ + --right-of ${OUTPUTNAMES[0]} + + + fi + +else + # If there are more than 3 outputs + # its up to the user. Quit. + exit; +fi + + + + # OLD APPROACH + # Find out, if the beamer transmits reliable EDID data. + # For the first assumption the beamer transmits reliable data, if in + # Xorg.log '*EDID for output $BEAMER*' is succeded by '*Manufacturer*' + # and '*Year*'. + # BEAMERELIABILITY=1 + # while read line + # do + # if echo $line | grep "EDID for output ${OUTPUTNAMES[$BEAMER]}" > /dev/null + # then + # read line + # if echo $line | grep "Manufacturer" > /dev/null + # then + # BEAMERELIABILITY=0 + # break + # fi + # fi + # done < "/var/log/Xorg.0.log" + + + + + + +# # if one of the outputs is a beamer, offer a choice +# declare -a OUTPUT1 +# declare -a OUTPUT2 +# + +# # Make sure the desired resolutions are existent +# # FULLHD +# #for in +# +# +# ####################################DEBUG################################### +# echo ${NATIVEMATCHES[@]} +# echo -e "\e[31m--------------------------------\e[0m" +# ############################################################################ +# +# # Add some experimental standard resolutions, which the outputs should be +# # able to display via interpolation. +# declare -a EXPERIMENTALMATCHES=("1920x1080 (16:9)" "1366x768 (16:9)" "1280x960 (4:3)" "1280x720 (16:9)") +# +# ## Form an interactive dialog to suit the users preferred resolution +# #zenity --question \ +# # --timeout=10 \ +# # --text="Do you want to change the resolution?" \ +# # --ok-label "Yes" \ +# # --cancel-label "No" +# +#OfferChoice() +#{ +# false; while [ "$?" != 0 ] #bash do{...}while(...) imitation +# do +# +# +# CHOSENRES=$( zenity --list \ +# --title="Resolution Chooser" \ +# --ok-label="Apply" \ +# --cancel-label="Cancel" \ +# --text "Choose a resolution\nor press cancel." \ +# --width=300 --height=400 \ +# --column="Resolution" 1920x1080 1366x768 1280x720 1024x768 \ +# --print-column=1 \ +# --hide-header ) +# +# ####################################DEBUG################################# +# echo "Chosen resolution $CHOSENRES" +# echo -e "\e[31m--------------------------------\e[0m" +# ########################################################################## +# +# if [ $? != 0 ] +# then +# break +# fi +# +# xrandr \ +# --output ${OUTPUTNAMES[0]} --mode ${CHOSENRES%% *} \ +# --output ${OUTPUTNAMES[1]} --mode ${CHOSENRES%% *} \ +# --same-as ${OUTPUTNAMES[0]} +# +# # in case the mode is unknown +# if [ $? != 0 ] +# then +# xrandr \ +# --addmode ${OUTPUTNAMES[0]} ${CHOSENRES%% *} \ +# --addmode ${OUTPUTNAMES[1]} ${CHOSENRES%% *} +# xrandr \ +# --output ${OUTPUTNAMES[0]} --mode ${CHOSENRES%% *} --primary \ +# --output ${OUTPUTNAMES[1]} --mode ${CHOSENRES%% *} --same-as ${OUTPUTNAMES[0]} +# +# #CVT="$(cvt $(echo ${CHOSENRES%% *} | cut -d " " -f1 | tr "x" " ") | grep Modeline)" +# #MODENAME=echo $CVT | cut -d " " -f2) +# #MODELINE=echo $CVT | cut -d " " -f3-) +# fi +# +# zenity --question \ +# --text="Do you want to stay with this resolution?" \ +# --ok-label "Yes" \ +# --cancel-label "No" +# +# # In case of timeout +# #if [ $? -eq 5]; then ;fi +# +# done +#} +# # If the beamer fits in the monitor, teach the monitor the preferred +# # mode of the beamer +# xrandr --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} $BEAMERPREF +# xrandr --output ${OUTPUTNAMES[$((1-$BEAMER))]} \ +# --mode $BEAMERPREF \ +# --primary \ +# --output ${OUTPUTNAMES[$BEAMER]} \ +# --mode $BEAMERPREF \ +# --same-as ${OUTPUTNAMES[$((1-$BEAMER))]} +# echo -e "\e[32mPERFECTMATCH\e[0m=$BEAMERPREF" +# +# # If the monitor fits in the beamer, teach the beamer the preferred +# # mode of the monitor +# xrandr --addmode ${OUTPUTNAMES[$BEAMER]} $MONITORPREF +# xrandr --output ${OUTPUTNAMES[$((1-$BEAMER))]} \ +# --mode $MONITORPREF \ +# --primary \ +# --output ${OUTPUTNAMES[$BEAMER]} \ +# --mode $MONITORPREF \ +# --same-as ${OUTPUTNAMES[$((1-$BEAMER))]} +# +# +# +# +# +# Offer a mode selection +# 1920x1080, 1366x768, 1280x800 and 1024x800 have to be available. +# Check if the TFT supports the resolution +# if echo "$XRANDRV" \ +# | grep -Pzo "^${OUTPUTNAMES[$((1-$BEAMER))]}\N*\n((\ |\t)+\N*\n)+" \ +# | grep $MODE > /dev/null +# then +# +# # If so, just assign the beamers preferred resolution to the TFT +# xrandr \ +# --output ${OUTPUTNAMES[0]} --mode $MODE \ +# --output ${OUTPUTNAMES[1]} --mode $MODE \ +# --same-as ${OUTPUTNAMES[0]} +# else +# +# # If not, teach the TFT the mode +# xrandr \ +# --addmode ${OUTPUTNAMES[$((1-$BEAMER))]} $MODE +# --output ${OUTPUTNAMES[0]} --mode $MODE \ +# --output ${OUTPUTNAMES[1]} --mode $MODE \ +# --same-as ${OUTPUTNAMES[0]} +# fi +# +# #OfferChoice +# #echo "Offered choice" -- cgit v1.2.3-55-g7522 From ca9f59f63a12895dca9c537f68448ae0c89f03fd Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Fri, 18 Oct 2013 11:48:46 +0200 Subject: [beamergui] Changed qtmake-qt4 to qmake --- remote/modules/beamergui/beamergui.build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'remote') diff --git a/remote/modules/beamergui/beamergui.build b/remote/modules/beamergui/beamergui.build index 49fcfe1d..e27cf0b3 100644 --- a/remote/modules/beamergui/beamergui.build +++ b/remote/modules/beamergui/beamergui.build @@ -10,9 +10,10 @@ build() { mkdir -p "$MODULE_BUILD_DIR/opt/openslx/bin" cd "${MODULE_BUILD_DIR}/opt/openslx/bin" || perror "Could not cd!" pinfo "Running qmake" - qmake-qt4 "$SRCDIR/src/beamergui.pro" -r -spec linux-g++ || perror "'qmake' failed." + qmake "$SRCDIR/src/beamergui.pro" -r -spec linux-g++ || perror "'qmake' failed." pinfo "Running make" make || perror "'make' failed." } post_copy() { + : } -- cgit v1.2.3-55-g7522 From 8eb339d29def19da2426740fea7d3e4da6be02dc Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Fri, 18 Oct 2013 11:50:42 +0200 Subject: [beamergui] Fixed link to beamergui module --- remote/targets/stage32/beamer | 1 - remote/targets/stage32/beamergui | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) delete mode 120000 remote/targets/stage32/beamer create mode 120000 remote/targets/stage32/beamergui (limited to 'remote') diff --git a/remote/targets/stage32/beamer b/remote/targets/stage32/beamer deleted file mode 120000 index 0fbeaeca..00000000 --- a/remote/targets/stage32/beamer +++ /dev/null @@ -1 +0,0 @@ -../../modules/beamer/ \ No newline at end of file diff --git a/remote/targets/stage32/beamergui b/remote/targets/stage32/beamergui new file mode 120000 index 00000000..5e863316 --- /dev/null +++ b/remote/targets/stage32/beamergui @@ -0,0 +1 @@ +../../modules/beamergui \ No newline at end of file -- cgit v1.2.3-55-g7522 From 00414cbbf3934cb0fa40bcaf6ac25fe67d2e86c9 Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Fri, 18 Oct 2013 16:27:44 +0200 Subject: [cups] Kill LPD when run_virt finishes --- .../modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'remote') diff --git a/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt b/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt index 261ef8f5..81f8c2e1 100755 --- a/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt +++ b/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt @@ -428,6 +428,7 @@ if [ "$vtflag" = "1" -a -n "$kvm_module" ]; then modprobe "$kvm_module" fi + # # # # # # Start printer daemon # # # # # # # USER="$(whoami)" SPOOLDIR="/var/spool" @@ -438,6 +439,9 @@ busybox tcpsvd -E 0.0.0.0 5515 \ busybox lpd "$SPOOLDIR" \ sh -c "printergui $USER $SPOOOLDIR/$QUEUE/\$DATAFILE" & +# PID to kill the process +PID_LPD="$!" + # Copy guest configuration (with added information) config.xml to be accessed # via virtual floppy @@ -527,5 +531,9 @@ if [ -n "${POSTRUN}" ]; then eval ${POSTRUN} >/dev/null 2>&1 fi +# Kill LPD +kill $PID_LPD + + cleanexit 0 exit 0 -- cgit v1.2.3-55-g7522 From 380cd0245c9120d44c162cf666f223513fd5045f Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Fri, 18 Oct 2013 16:34:30 +0200 Subject: [beamergui] removed libxrandr2 in config --- remote/modules/beamergui/beamergui.conf | 4 +++- remote/modules/beamergui/beamergui.conf.debian | 3 ++- remote/modules/beamergui/beamergui.conf.ubuntu | 3 ++- 3 files changed, 7 insertions(+), 3 deletions(-) (limited to 'remote') diff --git a/remote/modules/beamergui/beamergui.conf b/remote/modules/beamergui/beamergui.conf index 4d497389..da786271 100644 --- a/remote/modules/beamergui/beamergui.conf +++ b/remote/modules/beamergui/beamergui.conf @@ -2,6 +2,8 @@ REQUIRED_GIT="git://git.openslx.org/openslx-ng/beamergui.git" REQUIRED_BINARIES=" beamergui " +REQUIRED_LIBRARIES=" +" REQUIRED_SYSTEM_FILES=" " - +# TODO add libraries diff --git a/remote/modules/beamergui/beamergui.conf.debian b/remote/modules/beamergui/beamergui.conf.debian index 525245fb..ea4cd194 100644 --- a/remote/modules/beamergui/beamergui.conf.debian +++ b/remote/modules/beamergui/beamergui.conf.debian @@ -3,5 +3,6 @@ libqt4-dev libxrandr-dev " REQUIRED_CONTENT_PACKAGES=" -libxrandr2 +libqt4-dev +libxrandr-dev " diff --git a/remote/modules/beamergui/beamergui.conf.ubuntu b/remote/modules/beamergui/beamergui.conf.ubuntu index 525245fb..ea4cd194 100644 --- a/remote/modules/beamergui/beamergui.conf.ubuntu +++ b/remote/modules/beamergui/beamergui.conf.ubuntu @@ -3,5 +3,6 @@ libqt4-dev libxrandr-dev " REQUIRED_CONTENT_PACKAGES=" -libxrandr2 +libqt4-dev +libxrandr-dev " -- cgit v1.2.3-55-g7522 From 3456c9ba1c9b6f2b47cf6de26d14af57f3b593b4 Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Fri, 18 Oct 2013 17:19:38 +0200 Subject: [printer] Fixed horrible typo --- remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'remote') diff --git a/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt b/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt index 81f8c2e1..4a0ba8c6 100755 --- a/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt +++ b/remote/modules/vmchooser/data/opt/openslx/scripts/vmchooser-run_virt @@ -437,7 +437,7 @@ QUEUE="STANDARD" # Start the lpdaemon listening on the given port busybox tcpsvd -E 0.0.0.0 5515 \ busybox lpd "$SPOOLDIR" \ - sh -c "printergui $USER $SPOOOLDIR/$QUEUE/\$DATAFILE" & + sh -c "printergui $USER $SPOOLDIR/$QUEUE/\$DATAFILE" & # PID to kill the process PID_LPD="$!" -- cgit v1.2.3-55-g7522