debian/0000755000000000000000000000000012244520300007156 5ustar debian/epoptes.install0000644000000000000000000000041411655013152012233 0ustar usr/bin/ usr/lib/python*/*/*.egg-info usr/lib/python*/*/epoptes/*/*.py usr/lib/python*/*/epoptes/*.py usr/lib/python*/*/twisted/plugins/*.py usr/share/applications/ usr/share/icons/ usr/share/locale/ usr/share/ltsp/plugins/ltsp-build-client/common/ usr/share/epoptes/ debian/epoptes-client.if-up0000644000000000000000000000127212044773770013100 0ustar #!/bin/sh # Don't do anything for the lo interface test "$IFACE" != lo || exit 0 # Only run from ifup test "$MODE" = start || exit 0 # Only care about inet, inet6 and NetworkManager case "$ADDRFAM" in inet|inet6|NetworkManager) ;; *) exit 0 esac if [ -x /usr/bin/logger ]; then logger=logger else logger=true fi $logger -t epoptes -p syslog.info "Running epoptes-client, IFACE=$IFACE, pid=$$" if [ -x /sbin/ethtool ] && [ -f /etc/default/epoptes-client ]; then . /etc/default/epoptes-client if [ -n "$WOL" ]; then # $WOL is unquoted in case someone wants to add sopass ethtool -s "$IFACE" wol $WOL fi fi /usr/sbin/epoptes-client & debian/epoptes.triggers0000644000000000000000000000003711655013152012414 0ustar activate twisted-plugins-cache debian/epoptes.init0000644000000000000000000000315511740352374011544 0ustar #!/bin/sh ### BEGIN INIT INFO # Provides: epoptes # Required-Start: $network $remote_fs $syslog # Required-Stop: $network $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Epoptes service # Description: A twisted-based daemon that manages epoptes-client # and GUI connections. ### END INIT INFO PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/bin/python PIDFILE=/var/run/epoptes.pid LOGFILE=/var/log/epoptes.log DESC="Epoptes service" # If this is an LTSP client, then only run the service if EPOPTES=True if egrep -qs 'ltsp|nfs|nbd' /proc/cmdline && [ -x /usr/bin/getltscfg ]; then case "$(getltscfg EPOPTES || true)" in [Tt][Rr][Uu][Ee]|[Yy]|[Yy][Ee][Ss]) ;; *) exit 0 ;; esac fi . /lib/lsb/init-functions case "$1" in start) log_daemon_msg "Starting the epoptes daemon" start-stop-daemon --start --startas /usr/bin/twistd --quiet --oknodo --pidfile "$PIDFILE" --exec "$DAEMON" -- \ --pidfile "$PIDFILE" --logfile "$LOGFILE" epoptes log_end_msg $? ;; stop) log_daemon_msg "Stopping the epoptes daemon" start-stop-daemon --stop --quiet --oknodo --pidfile "$PIDFILE" || true log_end_msg $? ;; restart|force-reload) "$0" stop sleep 2 "$0" start ;; status) status_of_proc -p $PIDFILE $DAEMON epoptes && exit 0 || exit $? ;; *) echo "Usage: $0 {start|stop|restart|force-reload|status}" >&2 exit 1 ;; esac debian/epoptes.postrm0000644000000000000000000000224511655013152012115 0ustar #!/bin/sh # postrm script for #PACKAGE# # # see: dh_installdeb(1) set -e # summary of how this script can be called: # * `remove' # * `purge' # * `upgrade' # * `failed-upgrade' # * `abort-install' # * `abort-install' # * `abort-upgrade' # * `disappear' # # for details, see http://www.debian.org/doc/debian-policy/ or # the debian-policy package remove() { true } purge() { if getent group epoptes >/dev/null; then delgroup epoptes fi rm -f /etc/epoptes/server.key rm -f /etc/epoptes/server.crt } case "$1" in remove) remove || true ;; purge) purge || true ;; upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) ;; *) echo "postrm called with unknown argument \`$1'" >&2 exit 1 esac # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 debian/control0000644000000000000000000000355012244517534010603 0ustar Source: epoptes Section: admin Priority: extra Maintainer: Epoptes Developers Uploaders: Vagrant Cascadian , Alkis Georgopoulos , Fotis Tsamis Build-Depends: debhelper (>= 7.3.0), python (>= 2.6.5), python-distutils-extra (>= 2.4) Standards-Version: 3.9.5 Vcs-Bzr: http://bazaar.launchpad.net/~epoptes/epoptes/trunk Vcs-Browser: http://bazaar.launchpad.net/~epoptes/epoptes/trunk/files Homepage: http://www.epoptes.org Package: epoptes Architecture: all Depends: ${python:Depends}, ${misc:Depends}, adduser, librsvg2-common, notification-daemon | xfce4-notifyd, openssl, python-openssl, python-dbus, python-gtk2, python-notify, python-twisted-core, python-vte, xvnc4viewer | ssvnc | vnc-viewer Recommends: epoptes-client, xterm Description: Computer lab management tool Epoptes is an open source computer lab management and monitoring tool. It allows for screen broadcasting and monitoring, remote command execution, message sending, imposing restrictions like screen locking or sound muting the clients and much more! . Contains the server daemon and a GUI for controlling client PCs. . It supports LTSP installations, but it also works without LTSP. Package: epoptes-client Architecture: all Depends: ${python:Depends}, ${misc:Depends}, bsdmainutils, iproute, librsvg2-common, procps, python-gtk2, screen, socat, x11vnc, xvnc4viewer | ssvnc | vnc-viewer Recommends: openssl, xterm Suggests: ethtool Description: Computer lab management tool (client) Epoptes is an open source computer lab management and monitoring tool. It allows for screen broadcasting and monitoring, remote command execution, message sending, imposing restrictions like screen locking or sound muting the clients and much more! . Contains the client daemon and some utilities for getting screenshots etc. debian/epoptes-client.manpages0000644000000000000000000000002111655013152013626 0ustar epoptes-client.8 debian/changelog0000644000000000000000000002216512244520300011036 0ustar epoptes (0.5.7-1) unstable; urgency=low * New upstream version: - Add a config option for grabbing the keyboard and the mouse pointer when assisting a user (LP: #977637). - Preserve the clients selection when a client connects, disconnects, or is removed from the selected group (LP: #1045065). - Send WOL to all interfaces (LP: #1157241). - Fix epoptes crashing when running as root (LP: #977049). - Fix logout in Mate. - Improve the thumbnails zooming functionality. - Prefer pactl for muting when available (LP: #1026331). - Grab local input when assisting a client (LP: #977637). - Support xtightvncviewer as an alternative to xvnc4viewer. - Prefer ssvncviewer over xvnc4viewer (LP: #1030853). * epoptes: - Add python-openssl as an epoptes dependency (Closes: #703512). - Start the epoptes service later for LDAP/Samba (LP: #1054665). * epoptes-client: - Enable Wake On Lan when ethtool is installed. Add Suggests on ethtool. * debian/control: - Update Standards-Version to 3.9.5, no changes necessary. -- Vagrant Cascadian Sun, 24 Nov 2013 16:58:37 -0800 epoptes (0.5.6-1) unstable; urgency=low * New upstream version: - Support ssvnc as an alternative to xvnc4viewer. - Disable alias editing for clients in the 'Detected' group. - Correctly parse info for clients with multiple VGAs (LP: #1017140). - Prefix "-" to fullscreen parameter (LP: #1015239). -- Alkis Georgopoulos Wed, 27 Jun 2012 21:11:16 +0300 epoptes (0.5.5-1) unstable; urgency=low * New upstream version: - Split vncport to vncviewerport and vncserverport (LP: #1013808). - New translation: Somali (so). -- Vagrant Cascadian Fri, 15 Jun 2012 14:10:45 -0700 epoptes (0.5.4-1) unstable; urgency=low * New upstream version: - Remove workaround for bug fixed in twisted. - Ensure that epoptes-client is actually booted to LTSP before assuming it is operating as a Fat client. - New translations: Arabic (ar), Catalan (ca), Czech (cs), Galician (gl), Lithuanian (lt), Turkish (tr), Chinese (Simplified) (zh_CN) - Updated translations: Afrikaans (af), Hebrew (he), Malay (ms), Norwegian Bokmal (nb), Dutch (nl), Portuguese (pt), Russian (ru) -- Vagrant Cascadian Sun, 10 Jun 2012 10:58:01 -0700 epoptes (0.5.3-1) unstable; urgency=low * Use better checks to detect LTSP clients (LP: #975784). * Correct start-stop-daemon parameters (LP: #975433). * Add Afrikaans, English (Australia), Malay and Portuguese translations. Many thanks to the translators! -- Alkis Georgopoulos Mon, 09 Apr 2012 18:58:03 +0300 epoptes (0.5.2-1) unstable; urgency=low * Correctly match URLs in execute function. * Introduce EPOPTES_CLIENT_VERIFY_CERTIFICATE lts.conf option. * Make get-display work with older gdm versions (LP: #966060). * findUnusedPort: drop optional 'base' parameter as it may cause delays. * Add Danish translation. Many thanks to the translators! -- Alkis Georgopoulos Sun, 01 Apr 2012 22:09:31 +0300 epoptes (0.5.1-1) unstable; urgency=low * New upstream version: - Updated translations. -- Vagrant Cascadian Fri, 23 Mar 2012 11:05:43 -0700 epoptes (0.5.0-0ubuntu1) precise; urgency=low * Fix typo in remote-assistance (LP: #961907). * Allow more than one epoptes instances to monitor/assist clients. * screenshot: don't crash if the connection breaks (LP: #954441). * epoptes-client: depend on python-gtk2, suggest ssvnc. * Move remote-assistance to epoptes-client to match dependencies. * Hide the remote assistance menu item when epoptes-client is not installed. * Fix windowed broadcast. * get-display: don't fail if DISPLAY has an invalid (cached) value. * Avoid disconnecting clients on broken DNS configurations (LP: #949055). * Fix "unlock" trunk regression (LP: 959522). * Remove the unused Constants class. * Allow pango markup in message sending. * Support ssvncviewer to cope with 24bpp displays (LP: #953512). * Increase certificate validity to 10 years (LP: #954076). * Point to epoptes(1), not (8), in README (LP: #953493). * Use a VNC password instead of allowing only localnet (LP: #937820). * Don't depend on zenity (LP: #955452). * Make `epoptes-client -c` contact localhost in fat chroots. * Allow epoptes-clients using XDMCP (LP: #950720). * Permit VNC'ing to the login screen (LP: #889669). * Fix "mute/unmute not found" error (LP: #953521). * Add Brazilian Portuguese, Hebrew, Slovenian, Ukrainian and Vietnamese translations. Many thanks to the translators! -- Alkis Georgopoulos Tue, 20 Mar 2012 16:43:32 +0200 epoptes (0.4.4-1) unstable; urgency=low [ Alkis Georgopoulos ] * screenshot: exit cleanly when X isn't available. * Handle late connectionLost events better. * Replace the View menu with the Labels menu. * Ability to show real names instead of usernames. * Don't use epoptes-client.init on LTSP 5.3. * Get the active display when executing root commands. * Remember more user settings (labels, history). * Don't hang on close, on Ubuntu 12.04. * Mark epoptes as the owner of /etc/epoptes (Closes: #661083). * Extract shell code from python scripts for maintainability. * Don't crash when clients with a bad certificate connect (LP: #940114). * Add Spanish and Swedish translations. Many thanks to the translators! [ Vagrant Cascadian ] * Update Standards-Version to 3.9.3, no changes necessary. -- Vagrant Cascadian Sun, 04 Mar 2012 13:58:00 -0800 epoptes (0.4.3-0ubuntu1) precise; urgency=low * New icons! * Add some handy actions in the toolbar. * Move the Labels sub-menu under the 'View' menu. * Make the lock screen message translatable. * Users couldn't launch epoptes when SOCKET_GROUP=their primary groups. * Add Polish and Hungarian translations. Many thanks to the translators! -- Alkis Georgopoulos Wed, 22 Feb 2012 22:39:47 +0200 epoptes (0.4.2-1) unstable; urgency=low * If epoptes is ran from a thin client, don't display that client. * Background epoptes-client when running from if-up. * Log less, and let twistd handle the rotation. * Translation updates. * Don't fail when the last thumbnail byte is a space. -- Alkis Georgopoulos Mon, 06 Feb 2012 23:23:38 +0200 epoptes (0.4.1-1) unstable; urgency=low * Optimize the thumbnails logic. * Add the ability to broadcast the screen in a window. * epoptes: Add dependency on adduser (Closes: #656117). * Recommend openssl for epoptes-client. * Fix a mutable default value gotcha in Group class. * Add Dutch and Finnish translations. Many thanks to the translators! -- Alkis Georgopoulos Wed, 01 Feb 2012 10:05:12 +0200 epoptes (0.4.0-1) unstable; urgency=low * Generate an OpenSSL certificate valid for 5 years instead of 1 month. * Implement client groups. * Fix active display detection in recent KDE versions. * Fix logout in XFCE. * Add French, German, Russian and Slovak translations. Many thanks to the translators! -- Alkis Georgopoulos Sat, 14 Jan 2012 22:14:20 +0200 epoptes (0.3.2-1) unstable; urgency=low * Use cairo for screenshot resizing on the X server, to save bandwidth. * Allow screenshot interval to be larger in cases of extreme load. * Install a logrotate configuration file. * Export LTSP_CLIENT_MAC in thin client sessions. * Exit epoptes-client when X is unavailable. * Stop broadcasts: only kill our child x11vnc process. -- Alkis Georgopoulos Mon, 14 Nov 2011 10:37:32 +0200 epoptes (0.3.1-1) experimental; urgency=low * Initial upload to Debian (Closes: #646971). - Use SSL connections by default. - Replace vinagre with xvnc4viewer. - Fix logout in LXDE. * Set Maintainer to Epoptes Developers. * Add Alkis Georgopoulos, Fotis Tsamis and Vagrant Cascadian to Uploaders. * Add dependency on python-dbus. * Add dependency on bsdmainutils, needed for session broadcasting. * Recommend xterm for both client and server. * Improve long descriptions. * Update to Standards-Version 3.9.2. * Switch to using dh --with python2. * Switch to source format: 3.0 (quilt). * Switch to dep5 formatted debian/copyright. -- Vagrant Cascadian Fri, 04 Nov 2011 22:48:18 -0700 epoptes (0.3.0) lucid; urgency=low * Switch from upstart to sysvinit, for Debian compatibility * Use group epoptes instead of admin for the control socket -- Fotis Tsamis Tue, 18 Oct 2011 22:05:50 +0300 epoptes (0.2.0) lucid; urgency=low * Fix console-based remote assistance * Remove Users and Group panes * Basic implementation of configuration files * Add a menu for client monitoring * Allow the execute command dialog to xdg-open URLs * Smoother text fade-in in lock screen * Fix client compatibility check -- Fotis Tsamis Fri, 14 Oct 2011 09:47:54 +0300 epoptes (0.1.0) lucid; urgency=low * Initial release -- Fotis Tsamis Thu, 06 Oct 2011 00:47:26 +0300 debian/epoptes-client.init0000644000000000000000000000214411740137615013014 0ustar #!/bin/sh ### BEGIN INIT INFO # Provides: epoptes-client # Required-Start: $network $remote_fs $syslog # Required-Stop: $network $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: # Short-Description: Epoptes client LTSP helper # Description: Helper sysvinit script that launches epoptes-client on # LTSP clients, as they don't receive an if-up event. ### END INIT INFO PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/sbin/epoptes-client NAME=epoptes-client DESC="Epoptes client LTSP helper" test -x "$DAEMON" || exit 0 # ltsp-build-client in LTSP versions prior to 5.3 used an RC_WHITELIST which # resulted in the network service being deleted, and the clients not getting # an if-up event. # So we only need to run on LTSP chroots earlier than 5.3. test -f /etc/ltsp_chroot || exit 0 grep -qs "init=/sbin/init-ltsp" /proc/cmdline && exit 0 case "$1" in start|restart|force-reload) "$DAEMON" & ;; stop) ;; *) echo "Usage: $0 {start|stop|restart|force-reload}" >&2 exit 1 ;; esac debian/epoptes.dirs0000644000000000000000000000001411723765515011537 0ustar etc/epoptes debian/rules0000755000000000000000000000067612035132264010255 0ustar #!/usr/bin/make -f # -*- makefile -*- # Uncomment this to turn on verbose mode. # export DH_VERBOSE=1 # Fall back to python-central on systems that lack dh_python2 PYTHON_VARIANT = $(shell test -f /usr/bin/dh_python2 && echo "python2") ifeq ($(PYTHON_VARIANT),) PYTHON_VARIANT=python_central export DH_PYCENTRAL=include-links dh_pycentral -i endif %: dh $@ --with $(PYTHON_VARIANT) override_dh_installinit: dh_installinit -u"defaults 30" debian/copyright0000644000000000000000000000226211724743453011135 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: epoptes Source: http://bazaar.launchpad.net/~epoptes/epoptes/trunk/files Files: * Copyright: 2009-2012 Alkis Georgopoulos 2009-2012 Fotis Tsamis License: GPL-3.0+ Files: debian/* Copyright: 2009-2012 Alkis Georgopoulos 2009-2012 Fotis Tsamis 2011-2012 Vagrant Cascadian License: GPL-3.0+ License: GPL-3.0+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3, as published by the Free Software Foundation. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . . On Debian systems, the complete text of the GNU General Public License, version 3, can be found in /usr/share/common-licenses/GPL-3. debian/epoptes.postinst0000644000000000000000000000332011730174642012455 0ustar #!/bin/sh set -e # summary of how this script can be called: # * `configure' # * `abort-upgrade' # * `abort-remove' `in-favour' # # * `abort-remove' # * `abort-deconfigure' `in-favour' # `removing' # # for details, see http://www.debian.org/doc/debian-policy/ or # the debian-policy package # $1 = version of the package being upgraded. install() { if [ -f /etc/default/epoptes ]; then . /etc/default/epoptes || true fi SOCKET_GROUP=${SOCKET_GROUP:-epoptes} if ! getent group "$SOCKET_GROUP" >/dev/null; then addgroup --system "$SOCKET_GROUP" fi if ! [ -f /etc/epoptes/server.key ] || ! [ -f /etc/epoptes/server.crt ] then openssl req -batch -x509 -nodes -newkey rsa:1024 -days 3652 \ -keyout /etc/epoptes/server.key -out /etc/epoptes/server.crt chmod 600 /etc/epoptes/server.key echo ' A new OpenSSL certificate has been generated for epoptes. Please ensure that you transfer /etc/epoptes/server.crt to your clients by issuing `epoptes-client -c` from your regular workstations or from your LTSP chroots.' >&2 fi } case "$1" in configure) install "$2" ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument \`$1'" >&2 exit 1 ;; esac # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 debian/epoptes.preinst0000644000000000000000000000070011655013152012247 0ustar #!/bin/sh set -e # It seems that dh_installinit doesn't remove the upstart symlinks :( # We won't be needing that in the future, it's only for the upstart => # sysvinit migration. if [ "$1" = install ] || [ "$1" = upgrade ]; then test -h /etc/init.d/epoptes && rm -f /etc/init.d/epoptes rm -f /etc/init/epoptes.conf fi # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# debian/compat0000644000000000000000000000000211655013152010363 0ustar 7 debian/epoptes.docs0000644000000000000000000000000711655013152011513 0ustar README debian/epoptes-client.install0000644000000000000000000000011311660040250013476 0ustar etc/xdg/autostart/ usr/sbin/ usr/share/epoptes-client/ usr/share/ldm/rc.d/ debian/epoptes.manpages0000644000000000000000000000001211655013152012352 0ustar epoptes.1 debian/epoptes-client.default0000644000000000000000000000122712044773770013504 0ustar # The server where epoptes-client will be connecting to. # If unset, thin client user sessions running on the server will try to connect # to "localhost", while thin client root sessions and fat or standalone clients # will try to connect to "server". # LTSP automatically puts "server" in /etc/hosts for thin and fat clients, # but you'd need to put "server" in DNS manually for standalone clients. #SERVER=server # The port where the server will be listening on, and where the client will try # to connect to. For security reasons it defaults to a system port, 789. #PORT=789 # Set Wake On LAN for devices that support it. Comment it out to disable it. WOL=g debian/epoptes-client.preinst0000644000000000000000000000072511655013152013532 0ustar #!/bin/sh set -e # It seems that dh_installinit doesn't remove the upstart symlinks :( # We won't be needing that in the future, it's only for the upstart => # sysvinit migration. if [ "$1" = install ] || [ "$1" = upgrade ]; then test -h /etc/init.d/epoptes-client && rm -f /etc/init.d/epoptes-client rm -f /etc/init/epoptes-client.conf fi # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# debian/epoptes.default0000644000000000000000000000056111655142241012216 0ustar # The port where the server will be listening on, and where the client will try # to connect to. For security reasons it defaults to a system port, 789. #PORT=789 # Epoptes server will use the following group for the communications socket. # That means that any user in that group will be able to launch the epoptes UI # and control the clients. #SOCKET_GROUP=epoptes debian/source/0000755000000000000000000000000011655070375010477 5ustar debian/source/format0000644000000000000000000000001411655070374011704 0ustar 3.0 (quilt)