debian/0000755000000000000000000000000012256131325007166 5ustar debian/docs0000644000000000000000000000002112165556211010036 0ustar NEWS README TODO debian/marionnet.install0000644000000000000000000000016312171233431012547 0ustar useful-scripts/marionnet_from_scratch /usr/share/marionnet/ debian/marionnet-prestart-checks /usr/share/marionnet/ debian/copyright0000644000000000000000000001767712165554751011156 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: marionnet Source: https://launchpad.net/marionnet Files: * Copyright: 2007-2013 Luca Saiu 2007-2013 Jean-Vincent Loddo 2007-2013 Université Paris 13 License: GPL-2+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. . This 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 . Files: po/* Copyright: 2010, the Marionnet translators License: BSD-3-clause The following license applies to translation files (the ones with a .po extension), and as a consequence to the .mo files which are automatically generated from them. . Translation contributions coming from the Launchpad interface are automatically licensed under these conditions, as the Launchpad terms of use (at https://help.launchpad.net/TermsofUse as of 27 September 2010) stipulate. The translation copyright belongs to the original submitters. . Please notice that Marionnet and Ocamlbricks are distributed under the GNU GPL rather than this three-clause BSD license. . The following text is the complete three-clause BSD license. . -------------------- . Copyright (c) 2010, the Marionnet translators All rights reserved. . Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Files: share/images/leds/* Copyright: made by Luca Saiu, but public domain License: public-domain Made by Luca Saiu with the GIMP. Public domain. Files: share/images/treeview-icons/* Copyright: made by Luca Saiu, but public domain License: public-domain Images in this directory were made by Luca Saiu with the GIMP. The author releases them into the public domain. Files: share/images/ico.info.orig.png share/images/ico.warning.orig.png share/images/ico.error.orig.png Copyright: same as GNOME Amaranth theme License: Artistic On Debian systems, the complete text of the Artistic license can be found in "/usr/share/common-licenses/Artistic". Comment: see share/images/README taken from GNOME Amaranth theme Files: share/images/ico.question-2.orig.png Copyright: same as GNOME icons Comment: see share/images/README ico.question-2.orig.png is taken from the Gnome icons, released by its authors under the GNU GPL version 2; converted by Luca Saiu in 2008. License: GPL-2 The license paragraph was not included in share/images/README. . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". Files: share/images/ico.splines.png Copyright: the Oxygen Team Comment: see share/images/README "Actions-format-stroke-color-icon" taken from the Oxygen Icons and released by its authors, the "Oxygen Team", under the GNU LGPL v3 (a copy of which is included in this directory); the icon was modified by Jean-Vincent Loddo in 2013. http://www.oxygen-icons.org/ Original file (24x24) downloaded from: http://www.iconarchive.com/show/oxygen-icons-by-oxygen-icons.org/Actions-format-stroke-color-icon.html License: LGPL-3 The license paragraph was not included in share/images/README. . On Debian systems, the complete text of the GNU lesser General Public License version 3 can be found in "/usr/share/common-licenses/LGPL-3". Files: share/images/ico.invert-arcs.png Copyright: the Oxygen Team Comment: see share/images/README "Actions-transform-rotate-icon" taken from the Oxygen Icons and released by its authors, the "Oxygen Team", under the GNU LGPL v3; the icon was modified by Jean-Vincent Loddo in 2013 (simply desatured). http://www.oxygen-icons.org/ Original file (24x24) downloaded from: http://www.iconarchive.com/show/oxygen-icons-by-oxygen-icons.org/Actions-transform-rotate-icon.html License: LGPL-3 The license paragraph was not included in share/images/README. . On Debian systems, the complete text of the GNU lesser General Public License version 3 can be found in "/usr/share/common-licenses/LGPL-3". Files: share/images/ico.action.zoom.in.png share/images/ico.action.zoom.out.png Copyright: Saki Comment: see share/images/README "Actions-zoom-in-icon" taken from the "Snowish Icons" and released by its author "Saki" under the GNU LGPL v3. http://www.oxygen-icons.org/ Original file (24x24) downloaded from: http://www.iconarchive.com/show/snowish-icons-by-saki/Actions-zoom-in-icon.html License: LGPL-3 The license paragraph was not included in share/images/README. . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/LGPL-3". Files: share/vde_switch.lang Copyright: 2012 Jean-Vincent Loddo 2012 Université Paris 13 License: LGPL-2+ This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This library 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 Library 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 Files: debian/* Copyright: 2013 Lucas Nussbaum License: GPL-2+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This package 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 2 can be found in "/usr/share/common-licenses/GPL-2". debian/marionnet.init0000644000000000000000000000602012171233476012053 0ustar #!/bin/sh ### BEGIN INIT INFO # Provides: marionnet # Required-Start: $local_fs $remote_fs $network # Required-Stop: $remote_fs $network # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Support daemon for marionnet # Description: Support daemon for marionnet ### END INIT INFO # Author: Lucas Nussbaum # PATH should only include /usr/* if it runs after the mountnfs.sh script PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="marionnet daemon" # Introduce a short description here NAME=marionnet-daemon # Introduce the short server's name here DAEMON=/usr/sbin/marionnet-daemon # Introduce the server's location here DAEMON_ARGS="" # Arguments to run the daemon with PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$NAME ] && . /etc/default/$NAME # Define LSB log_* functions. # Depend on lsb-base (>= 3.2-14) to ensure that this file is present # and status_of_proc is working. . /lib/lsb/init-functions VERBOSE=yes # VERBOSE=no does not really make sense for this package # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ || return 1 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --background --make-pidfile -- \ $DAEMON_ARGS \ || return 2 } # # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --exec $DAEMON RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" } # check for filesystems and kernels startup_checks() { /usr/share/marionnet/marionnet-prestart-checks } case "$1" in start) startup_checks [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; restart|force-reload) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; *) #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac : debian/changelog0000644000000000000000000000434612256131325011047 0ustar marionnet (0.90.6+bzr434-2build1) trusty; urgency=medium * Rebuild for ocaml-4.01. -- Matthias Klose Mon, 23 Dec 2013 22:01:57 +0000 marionnet (0.90.6+bzr434-2) unstable; urgency=low [ Lucas Nussbaum ] * add warning about -nolisten tcp in init script * Switch Architecture to i386 amd64. user-mode-linux only works on those architectures. * Move startup checks to a separate script. * Add marionnet service file. * Fix lintian warnings: extra-license-file. [ Nicolas Dandrimont ] * Update my email address -- Lucas Nussbaum Sat, 24 Aug 2013 17:17:34 +0200 marionnet (0.90.6+bzr434-1) unstable; urgency=low [ Nicolas Dandrimont ] * New upstream snapshot - Fixes FTBFS from the LedGrid module move (Closes: #713534) * Add myself to uploaders * Bump ocamlbricks requirement * Move to Standards-Version 3.9.4 (no changes) * Use canonical Vcs URIs * Add DEP-3 info to the patches * Add multiarch instructions to run marionnet on amd64 [ Lucas Nussbaum ] * Add patch to add a --download-only option to marionnet_from_scratch. * Document how to install kernels and filesystems in README.Debian * New upstream snapshot (r434). * Drop 0003-Hack-marionnet-from-scratch-to-download-only.patch: the idea was merged upstream. * Bump ocamlbricks dependency to r367. * Do not list README.Debian in debian/docs (not needed). * Add init script: - Display a warning when no kernels or filesystems are found. - Improve doc in README.Debian about kernels and filesystems. - Add depend on lsb-base. * Add missing dependency on uml-utilities. -- Lucas Nussbaum Wed, 10 Jul 2013 10:07:33 +0200 marionnet (0.90.6+bzr407-1) unstable; urgency=low [ Lucas Nussbaum ] * Initial release (Closes: #489392) * This is a preliminary package for marionnet. Missing at the moment: - script to help download kernels/filesystems - init script to start the daemon * Add missing copyright info after first ftpmasters review. [ Nicolas Dandrimont ] * Add missing dependencies on graphviz and vde2 * Update rules and d/clean to allow building twice from the same sourcedir -- Lucas Nussbaum Fri, 29 Mar 2013 15:57:12 +0100 debian/marionnet-prestart-checks0000755000000000000000000000144212171233073014210 0ustar #!/bin/sh FS=$(ls /usr/share/marionnet/filesystems/ | grep -v '\.conf$' | wc -l) if [ ! \( -d /usr/share/marionnet/filesystems/ -a "$FS" -gt 0 -a -d /usr/share/marionnet/kernels \) ]; then cat <<-EOF /!\\ No kernels/filesystems for marionnet found! /!\\ Marionnet will start with very limited functionality. For more information about donwloading kernels and filesystems, read /usr/share/doc/marionnet/README.Debian EOF fi if ps -C Xorg | grep -q -- '-nolisten tcp'; then cat <<-EOF /!\\ Xorg running with -nolisten tcp /!\\ It seems that Xorg is running with -nolisten tcp. You will not be able to run graphical applications inside Marionnet virtual machines. For more information about fixing your Xorg configuration, read /usr/share/doc/marionnet/README.Debian EOF fi debian/compat0000644000000000000000000000000212165554751010377 0ustar 8 debian/patches/0000755000000000000000000000000012165555720010625 5ustar debian/patches/0001-Customize-installation-paths-for-Debian-packaging.patch0000644000000000000000000000227412165554751023720 0ustar From: Lucas Nussbaum Date: Wed, 13 Feb 2013 10:23:01 +0100 Subject: Customize installation paths for Debian packaging Forwarded: not-needed --- CONFIGME | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CONFIGME b/CONFIGME index 4513612..4d9c92c 100644 --- a/CONFIGME +++ b/CONFIGME @@ -34,11 +34,11 @@ # Installation prefix, for example /usr or /usr/local # *No* trailing slash should be included. -prefix=/usr/local +prefix=${DESTDIR:-debian/tmp}/usr # Prefix for host-wide configuration files; you should probably keep the # default setting: -configurationprefix=/etc +configurationprefix=${DESTDIR:-debian/tmp}/etc # Prefix for the locale files localeprefix=${prefix}/share/locale @@ -58,7 +58,7 @@ ocaml_libraryprefix=$(ocamlc -where || exit -1) # By default they will be installed into ${ocaml_libraryprefix}, but you # can change it if you really want to install into a different, custom prefix. # *No* trailing slash should be included. -libraryprefix=${ocaml_libraryprefix} +libraryprefix=${prefix}/${ocaml_libraryprefix} # # This definition may be appropriate for debian packaging: #libraryprefix=debian/tmp/${ocaml_libraryprefix} debian/patches/0002-Tweak-file-installation-paths-in-marionnet.conf.patch0000644000000000000000000000200512165554751023353 0ustar From: Lucas Nussbaum Date: Wed, 13 Feb 2013 11:03:18 +0100 Subject: Tweak file installation paths in marionnet.conf Forwarded: not-needed --- etc/marionnet.conf | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/etc/marionnet.conf b/etc/marionnet.conf index 8eda75e..b7c0197 100644 --- a/etc/marionnet.conf +++ b/etc/marionnet.conf @@ -64,10 +64,10 @@ MARIONNET_VDE_PREFIX= # Leave this alone if you're not sure whether you need this. # # No trailing slashes. -#MARIONNET_PREFIX=/usr/local/share/marionnet -#MARIONNET_FILESYSTEMS_PATH=${MARIONNET_PREFIX}/filesystems -#MARIONNET_KERNELS_PATH=${MARIONNET_PREFIX}/kernels -#MARIONNET_LOCALEPREFIX=/usr/local/share/locale +MARIONNET_PREFIX=/usr/share/marionnet +MARIONNET_FILESYSTEMS_PATH=/usr/share/marionnet/filesystems/ +MARIONNET_KERNELS_PATH=/usr/share/marionnet/kernels/ +MARIONNET_LOCALEPREFIX=/usr/share/locale # Variants could be saved in this local directory MARIONNET_USER_VARIANTS_PATH=.marionnet/filesystems debian/patches/series0000644000000000000000000000017012165555720012040 0ustar 0001-Customize-installation-paths-for-Debian-packaging.patch 0002-Tweak-file-installation-paths-in-marionnet.conf.patch debian/README.Debian0000644000000000000000000000257212167566016011247 0ustar Installing kernels and filesystems ================================== To operate, marionnet requires a kernel for the UML virtual machines, as well as filesystem images. Those are not provided in the package. You can: (1) [RECOMMENDED] Use the provided marionnet_from_scratch to download some kernels and filesystems provided by the Marionnet project. As root, run: /usr/share/marionnet/marionnet_from_scratch -p /usr -O (2) Build your own kernel and filesystem. See http://bazaar.launchpad.net/~marionnet-drivers/marionnet/trunk/files/head:/uml/ The kernel images provided via marionnet_from_scratch are built for an i386 system. You can run them on an amd64 system, provided that you have an i386 libc installed. To install the i386 libc on an amd64 system, as root, run: dpkg --add-architecture i386 apt-get update apt-get install libc6:i386 Allowing TCP connections to the X server ======================================== Marionnet needs your X server to allow TCP connections, so that you can e.g. run wireshark inside virtual machines. If X is started with "-nolisten tcp", then TCP connections to the X server are disabled. gdm3 ---- Edit /etc/gdm3/daemon.conf and make sure you have: [security] DisallowTCP = false lightdm (on Ubuntu) ------------------- Edit /etc/lightdm/lightdm.conf and add xserver-allow-tcp=true in the [SeatDefaults] section. debian/marionnet.service0000644000000000000000000000023412171237320012541 0ustar [Unit] Description=marionnet daemon [Service] Type=simple ExecStart=/usr/sbin/marionnet-daemon ExecStartPre=/usr/share/marionnet/marionnet-prestart-checks debian/control0000644000000000000000000000322112206146161010566 0ustar Source: marionnet Section: net Priority: extra Maintainer: Debian OCaml Maintainers Uploaders: Lucas Nussbaum , Nicolas Dandrimont Build-Depends: debhelper (>= 8.0.0), ocaml-nox (>= 3.12.1), dh-ocaml (>= 0.9.1), camlp4-extra, ocaml-findlib, liblablgtk2-ocaml-dev (>= 2.12.0-2), libocamlbricks-ocaml-dev (>= 0.90+bzr367~), liblablgtksourceview2-ocaml-dev (>= 2.14.2), dh-systemd (>= 1.5) Standards-Version: 3.9.4 Homepage: http://www.marionnet.org/ Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-ocaml-maint/packages/marionnet.git Vcs-Git: git://anonscm.debian.org/pkg-ocaml-maint/packages/marionnet.git Package: marionnet Architecture: i386 amd64 Depends: ${shlibs:Depends}, ${misc:Depends}, ${ocaml:Depends}, graphviz, liblablgtk2-ocaml-dev (>= 2.12.0-2), libocamlbricks-ocaml-dev (>= 0.90+bzr367~), liblablgtksourceview2-ocaml-dev (>= 2.14.2), vde2, lsb-base (>= 3.2-14), uml-utilities Description: Virtual network laboratory Marionnet is a virtual network laboratory: it allows users to define, configure and run complex computer networks without any need for physical setup. Only a single, possibly even non-networked GNU/Linux host machine is required to simulate a whole Ethernet network complete with computers, routers, hubs, switches, cables, and more. Support is also provided for integrating the virtual network with the physical host network. . As Marionnet is meant to be used also by inexperienced people, it features a very intuitive graphical user interface. Marionnet depends on User Mode Linux and VDE Virtual Distributed Ethernet for the simulation part. debian/rules0000755000000000000000000000375612206146561010264 0ustar #!/usr/bin/make -f # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 %: dh $@ --with ocaml --with systemd override_dh_auto_build: cp -f po/messages.pot po/messages.pot.orig dh_auto_build override_dh_auto_install: dh_auto_install rm debian/marionnet/usr/share/marionnet/COPYING # remove duplicate copyright file rm debian/marionnet/usr/share/marionnet/images/Artistic rm debian/marionnet/usr/share/marionnet/images/lgpl-3.0.txt if [ -e debian/marionnet/usr/sbin/marionnet-daemon.native ]; then \ mv debian/marionnet/usr/sbin/marionnet-daemon.native debian/marionnet/usr/sbin/marionnet-daemon ; \ mv debian/marionnet/usr/bin/marionnet.native debian/marionnet/usr/bin/marionnet ; \ rm debian/marionnet/usr/sbin/marionnet-daemon.byte ; \ rm debian/marionnet/usr/bin/marionnet.byte ; \ else \ mv debian/marionnet/usr/sbin/marionnet-daemon.byte debian/marionnet/usr/sbin/marionnet-daemon ;\ mv debian/marionnet/usr/bin/marionnet.byte debian/marionnet/usr/bin/marionnet ; \ fi override_dh_auto_clean: dh_auto_clean if [ -f po/messages.pot.orig ]; then mv po/messages.pot.orig po/messages.pot; fi # see https://launchpad.net/marionnet/trunk PACKAGE = marionnet SRC_VERSION := $(shell dpkg-parsechangelog | sed -ne 's/^Version: \(\([0-9]\+\):\)\?\(.*\)-.*/\3/p') BZR_REVISION := $(shell echo $(SRC_VERSION) | awk -F"+" '{ print $$2 }' | sed 's/bzr//' ) TARBALL = $(PACKAGE)_$(SRC_VERSION).orig.tar.gz get-orig-source: rm -rf get-orig-source $(TARBALL) mkdir get-orig-source bzr branch -r $(BZR_REVISION) lp:$(PACKAGE)/trunk get-orig-source/$(PACKAGE)-$(SRC_VERSION).orig make -C get-orig-source/$(PACKAGE)-$(SRC_VERSION).orig meta.ml.released rm get-orig-source/$(PACKAGE)-$(SRC_VERSION).orig/meta.ml rm -rf get-orig-source/$(PACKAGE)-$(SRC_VERSION).orig/.bzr GZIP=--best tar czf $(TARBALL) -C get-orig-source $(PACKAGE)-$(SRC_VERSION).orig rm -rf get-orig-source echo " "$(TARBALL)" created; move it to the right destination to build the package" .PHONY: get-orig-source debian/source/0000755000000000000000000000000012165554751010501 5ustar debian/source/format0000644000000000000000000000001412165554751011707 0ustar 3.0 (quilt)