diff --git a/package/Makefile.linux b/package/Makefile.linux index c966ff6f2..7bb0afc99 100644 --- a/package/Makefile.linux +++ b/package/Makefile.linux @@ -2,9 +2,74 @@ # Linux-specific packaging # +define CP_DEB_FILES_TEMPLATE +.PHONY: $(1) +$(2)/$(1): $(3)/$(1) + $(V1)cp -a $$< $$@ +endef + +# Update this number for every formal release. The Deb packaging system relies on this to know to update a +# package or not. Otherwise, the user has to uninstall first. +VERNUM := 0.1.0 +VERSION_FULL := $(VERNUM)-$(PACKAGE_LBL) + +FLIGHT_FW := coptercontrol revolution + +DEB_BUILD_DIR := $(ROOT_DIR)/debian + +SED_DATE_STRG = $(shell date -R) +SED_SCRIPT = s//$(VERSION_FULL)/;s//$(SED_DATE_STRG)/ + +DEB_CFG_CMN := $(ROOT_DIR)/package/linux/deb_common +DEB_CFG_CMN_FILES := $(shell ls $(DEB_CFG_CMN)) +DEB_CFG_I386_DIR := $(ROOT_DIR)/package/linux/deb_i386 +DEB_CFG_I386_FILES := $(shell ls $(DEB_CFG_I386_DIR)) +DEB_CFG_AMD64_DIR := $(ROOT_DIR)/package/linux/deb_amd64 +DEB_CFG_AMD64_FILES := $(shell ls $(DEB_CFG_AMD64_DIR)) +DEB_PLATFORM := amd64 +DEB_MACHINE_DIR := $(DEB_CFG_AMD64_DIR) +DEB_MACHINE_FILES := $(DEB_CFG_AMD64_FILES) +MACHINE_TYPE := $(shell uname -m) +ifneq ($(MACHINE_TYPE), x86_64) + DEB_PLATFORM := i386 + DEB_MACHINE_DIR := $(DEB_CFG_I386_DIR) + DEB_MACHINE_FILES := $(DEB_CFG_I386_FILES) +endif +ALL_DEB_FILES = $(foreach f, $(DEB_CFG_CMN_FILES), $(DEB_BUILD_DIR)/$(f)) +ALL_DEB_FILES += $(foreach f, $(DEB_MACHINE_FILES), $(DEB_BUILD_DIR)/$(f)) + +DEB_PACKAGE_NAME := openpilot_$(VERSION_FULL)_$(DEB_PLATFORM) + +linux_deb_package: gcs deb_build package_flight + @echo $@ starting + cd .. && dpkg-buildpackage -b + $(V1)mv $(ROOT_DIR)/../$(DEB_PACKAGE_NAME).deb $(BUILD_DIR) + $(V1)mv $(ROOT_DIR)/../$(DEB_PACKAGE_NAME).changes $(BUILD_DIR) + $(V1)rm -rf $(DEB_BUILD_DIR) + +deb_build: | $(DEB_BUILD_DIR) $(ALL_DEB_FILES) + @echo $@ starting + $(V1)$(shell echo $(PACKAGE_DIR) > $(BUILD_DIR)/package_dir) + $(V1)sed -i -e "$(SED_SCRIPT)" $(DEB_BUILD_DIR)/changelog + +$(DEB_BUILD_DIR): + @echo $@ starting + $(V1)mkdir -p $(DEB_BUILD_DIR) + +$(foreach cpfile, $(DEB_CFG_CMN_FILES), $(eval $(call CP_DEB_FILES_TEMPLATE,$(cpfile),$(DEB_BUILD_DIR),$(DEB_CFG_CMN)))) + +$(foreach cpfile, $(DEB_MACHINE_FILES), $(eval $(call CP_DEB_FILES_TEMPLATE,$(cpfile),$(DEB_BUILD_DIR),$(DEB_MACHINE_DIR)))) + gcs: uavobjects + @echo "Linux Package Make of GCS." $(V1) $(MAKE) -C $(ROOT_DIR) GCS_BUILD_CONF=release $@ -ground_package: | gcs +identify: + @echo "" + @echo "We are in the Linux Package Make system." + @echo "" + $(V1)rm -rf $(DEB_BUILD_DIR) -.PHONY: gcs ground_package +ground_package: | identify linux_deb_package + +.PHONY: identify gcs ground_package linux_deb_package deb_build $(DEB_BUILD_DIR) diff --git a/package/linux/45-openpilot-permissions.rules b/package/linux/45-openpilot-permissions.rules new file mode 100644 index 000000000..d04d31b7f --- /dev/null +++ b/package/linux/45-openpilot-permissions.rules @@ -0,0 +1,13 @@ + # OpenPilot openpilot flight control board + SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="4117", MODE="0664", GROUP="plugdev" + SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415a", MODE="0664", GROUP="plugdev" + # OpenPilot coptercontrol flight control board + SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415b", MODE="0664", GROUP="plugdev" + # OpenPilot Pipx radio modem board + SUBSYSTEM=="usb", ATTRS{idVendor}=="20a0", ATTRS{idProduct}=="415c", MODE="0664", GROUP="plugdev" + # unprogrammed openpilot flight control board + SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5750", MODE="0664", GROUP="plugdev" + # FTDI FT2232C Dual USB-UART/FIFO IC + SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE="0664", GROUP="plugdev" + # Olimex Ltd. OpenOCD JTAG TINY + SUBSYSTEM=="usb", ATTRS{idVendor}=="15ba", ATTRS{idProduct}=="0004", MODE="0664", GROUP="plugdev" diff --git a/package/linux/deb_amd64/control b/package/linux/deb_amd64/control new file mode 100644 index 000000000..eab1547b1 --- /dev/null +++ b/package/linux/deb_amd64/control @@ -0,0 +1,15 @@ +Source: openpilot +Section: unknown +Priority: extra +Maintainer: naiiawah +Build-Depends: debhelper (>= 7.0.50~) +Standards-Version: 3.8.4 +Homepage: http://www.openpilot.org +#Vcs-Git: git://git.debian.org/collab-maint/openpilot.git +#Vcs-Browser: http://git.debian.org/?p=collab-maint/openpilot.git;a=summary + +Package: openpilot +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: OpenPilot GCS & FW + OpenPilot GCS and Firmware for CopterControl (CC) board. diff --git a/package/linux/deb_common/changelog b/package/linux/deb_common/changelog new file mode 100644 index 000000000..c6f9e1519 --- /dev/null +++ b/package/linux/deb_common/changelog @@ -0,0 +1,5 @@ +openpilot () unstable; urgency=low + + * Initial release (testing - unstable) + + -- naiiawah diff --git a/package/linux/deb_common/compat b/package/linux/deb_common/compat new file mode 100644 index 000000000..7f8f011eb --- /dev/null +++ b/package/linux/deb_common/compat @@ -0,0 +1 @@ +7 diff --git a/package/linux/deb_common/copyright b/package/linux/deb_common/copyright new file mode 100644 index 000000000..561d0b327 --- /dev/null +++ b/package/linux/deb_common/copyright @@ -0,0 +1,37 @@ +This work was packaged for Debian by: + + naiiawah on Thu, 27 Oct 2011 01:35:37 -0600 + +It was downloaded from: + + + +Upstream Author(s): + + + + +Copyright: + + + + +License: + + + +The Debian packaging is: + + Copyright (C) 2011 naiiawah + +# Please chose a license for your packaging work. If the program you package +# uses a mainstream license, using the same license is the safest choice. +# Please avoid to pick license terms that are more restrictive than the +# packaged work, as it may make Debian's contributions unacceptable upstream. +# If you just want it to be GPL version 3, leave the following lines in. + +and is licensed under the GPL version 3, +see "/usr/share/common-licenses/GPL-3". + +# Please also look if there are files or directories which have a +# different copyright/license attached and list them here. diff --git a/package/linux/deb_common/docs b/package/linux/deb_common/docs new file mode 100644 index 000000000..e69de29bb diff --git a/package/linux/deb_common/init.d.ex b/package/linux/deb_common/init.d.ex new file mode 100644 index 000000000..fb3e26243 --- /dev/null +++ b/package/linux/deb_common/init.d.ex @@ -0,0 +1,154 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: openpilot +# Required-Start: $network $local_fs +# Required-Stop: +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: +# Description: +# <...> +# <...> +### END INIT INFO + +# Author: naiiawah + +# PATH should only include /usr/* if it runs after the mountnfs.sh script +PATH=/sbin:/usr/sbin:/bin:/usr/bin +DESC=openpilot # Introduce a short description here +NAME=openpilot # Introduce the short server's name here +DAEMON=/usr/sbin/openpilot # 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 + +# Load the VERBOSE setting and other rcS variables +. /lib/init/vars.sh + +# Define LSB log_* functions. +# Depend on lsb-base (>= 3.0-6) to ensure that this file is present. +. /lib/lsb/init-functions + +# +# 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 -- \ + $DAEMON_ARGS \ + || return 2 + # Add code here, if necessary, that waits for the process to be ready + # to handle requests from services started subsequently which depend + # on this one. As a last resort, sleep for some time. +} + +# +# 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 --name $NAME + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + # Wait for children to finish too if this is a daemon that forks + # and if the daemon is only ever run from this initscript. + # If the above conditions are not satisfied then add some other code + # that waits for the process to drop all resources that could be + # needed by services started subsequently. A last resort is to + # sleep for some time. + start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON + [ "$?" = 2 ] && return 2 + # Many daemons don't delete their pidfiles when they exit. + rm -f $PIDFILE + return "$RETVAL" +} + +# +# Function that sends a SIGHUP to the daemon/service +# +do_reload() { + # + # If the daemon can reload its configuration without + # restarting (for example, when it is sent a SIGHUP), + # then implement that here. + # + start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME + return 0 +} + +case "$1" in + start) + [ "$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 $? + ;; + #reload|force-reload) + # + # If do_reload() is not implemented then leave this commented out + # and leave 'force-reload' as an alias for 'restart'. + # + #log_daemon_msg "Reloading $DESC" "$NAME" + #do_reload + #log_end_msg $? + #;; + restart|force-reload) + # + # If the "reload" option is implemented then remove the + # 'force-reload' alias + # + 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 + +: diff --git a/package/linux/deb_common/manpage.1.ex b/package/linux/deb_common/manpage.1.ex new file mode 100644 index 000000000..1d0199483 --- /dev/null +++ b/package/linux/deb_common/manpage.1.ex @@ -0,0 +1,59 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH OPENPILOT SECTION "October 27, 2011" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +openpilot \- program to do something +.SH SYNOPSIS +.B openpilot +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B openpilot +and +.B bar +commands. +.PP +.\" TeX users may be more comfortable with the \fB\fP and +.\" \fI\fP escape sequences to invode bold face and italics, +.\" respectively. +\fBopenpilot\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +For a complete description, see the Info files. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +openpilot was written by . +.PP +This manual page was written by naiiawah , +for the Debian project (and may be used by others). diff --git a/package/linux/deb_common/manpage.sgml.ex b/package/linux/deb_common/manpage.sgml.ex new file mode 100644 index 000000000..76b474e3e --- /dev/null +++ b/package/linux/deb_common/manpage.sgml.ex @@ -0,0 +1,154 @@ + manpage.1'. You may view + the manual page with: `docbook-to-man manpage.sgml | nroff -man | + less'. A typical entry in a Makefile or Makefile.am is: + +manpage.1: manpage.sgml + docbook-to-man $< > $@ + + + The docbook-to-man binary is found in the docbook-to-man package. + Please remember that if you create the nroff version in one of the + debian/rules file targets (such as build), you will need to include + docbook-to-man in your Build-Depends control field. + + --> + + + FIRSTNAME"> + SURNAME"> + + October 27, 2011"> + + SECTION"> + naiiawah@none"> + + OPENPILOT"> + + + Debian"> + GNU"> + GPL"> +]> + + + +
+ &dhemail; +
+ + &dhfirstname; + &dhsurname; + + + 2003 + &dhusername; + + &dhdate; +
+ + &dhucpackage; + + &dhsection; + + + &dhpackage; + + program to do something + + + + &dhpackage; + + + + + + + + DESCRIPTION + + This manual page documents briefly the + &dhpackage; and bar + commands. + + This manual page was written for the &debian; distribution + because the original program does not have a manual page. + Instead, it has documentation in the &gnu; + Info format; see below. + + &dhpackage; is a program that... + + + + OPTIONS + + These programs follow the usual &gnu; command line syntax, + with long options starting with two dashes (`-'). A summary of + options is included below. For a complete description, see the + Info files. + + + + + + + + Show summary of options. + + + + + + + + Show version of program. + + + + + + SEE ALSO + + bar (1), baz (1). + + The programs are documented fully by The Rise and + Fall of a Fooish Bar available via the + Info system. + + + AUTHOR + + This manual page was written by &dhusername; &dhemail; for + the &debian; system (and may be used by others). Permission is + granted to copy, distribute and/or modify this document under + the terms of the &gnu; General Public License, Version 2 any + later version published by the Free Software Foundation. + + + On Debian systems, the complete text of the GNU General Public + License can be found in /usr/share/common-licenses/GPL. + + + +
+ + diff --git a/package/linux/deb_common/manpage.xml.ex b/package/linux/deb_common/manpage.xml.ex new file mode 100644 index 000000000..b8c0d8411 --- /dev/null +++ b/package/linux/deb_common/manpage.xml.ex @@ -0,0 +1,291 @@ + +.
will be generated. You may view the +manual page with: nroff -man .
| less'. A typical entry +in a Makefile or Makefile.am is: + +DB2MAN = /usr/share/sgml/docbook/stylesheet/xsl/docbook-xsl/manpages/docbook.xsl +XP = xsltproc -''-nonet -''-param man.charmap.use.subset "0" + +manpage.1: manpage.xml + $(XP) $(DB2MAN) $< + +The xsltproc binary is found in the xsltproc package. The XSL files are in +docbook-xsl. A description of the parameters you can use can be found in the +docbook-xsl-doc-* packages. Please remember that if you create the nroff +version in one of the debian/rules file targets (such as build), you will need +to include xsltproc and docbook-xsl in your Build-Depends control field. +Alternatively use the xmlto command/package. That will also automatically +pull in xsltproc and docbook-xsl. + +Notes for using docbook2x: docbook2x-man does not automatically create the +AUTHOR(S) and COPYRIGHT sections. In this case, please add them manually as + ... . + +To disable the automatic creation of the AUTHOR(S) and COPYRIGHT sections +read /usr/share/doc/docbook-xsl/doc/manpages/authors.html. This file can be +found in the docbook-xsl-doc-html package. + +Validation can be done using: `xmllint -''-noout -''-valid manpage.xml` + +General documentation about man-pages and man-page-formatting: +man(1), man(7), http://www.tldp.org/HOWTO/Man-Page/ + +--> + + + + + + + + + + + + + +]> + + + + &dhtitle; + &dhpackage; + + + &dhfirstname; + &dhsurname; + Wrote this manpage for the Debian system. +
+ &dhemail; +
+
+
+ + 2007 + &dhusername; + + + This manual page was written for the Debian system + (and may be used by others). + Permission is granted to copy, distribute and/or modify this + document under the terms of the GNU General Public License, + Version 2 or (at your option) any later version published by + the Free Software Foundation. + On Debian systems, the complete text of the GNU General Public + License can be found in + /usr/share/common-licenses/GPL. + +
+ + &dhucpackage; + &dhsection; + + + &dhpackage; + program to do something + + + + &dhpackage; + + + + + + + + + this + + + + + + + + this + that + + + + + &dhpackage; + + + + + + + + + + + + + + + + + + + DESCRIPTION + This manual page documents briefly the + &dhpackage; and bar + commands. + This manual page was written for the Debian distribution + because the original program does not have a manual page. + Instead, it has documentation in the GNU + info + 1 + format; see below. + &dhpackage; is a program that... + + + OPTIONS + The program follows the usual GNU command line syntax, + with long options starting with two dashes (`-'). A summary of + options is included below. For a complete description, see the + + info + 1 + files. + + + + + + + Does this and that. + + + + + + + Show summary of options. + + + + + + + Show version of program. + + + + + + FILES + + + /etc/foo.conf + + The system-wide configuration file to control the + behaviour of &dhpackage;. See + + foo.conf + 5 + for further details. + + + + ${HOME}/.foo.conf + + The per-user configuration file to control the + behaviour of &dhpackage;. See + + foo.conf + 5 + for further details. + + + + + + ENVIONMENT + + + FOO_CONF + + If used, the defined file is used as configuration + file (see also ). + + + + + + DIAGNOSTICS + The following diagnostics may be issued + on stderr: + + + Bad configuration file. Exiting. + + The configuration file seems to contain a broken configuration + line. Use the option, to get more info. + + + + + &dhpackage; provides some return codes, that can + be used in scripts: + + Code + Diagnostic + + 0 + Program exited successfully. + + + 1 + The configuration file seems to be broken. + + + + + + BUGS + The program is currently limited to only work + with the foobar library. + The upstreams BTS can be found + at . + + + SEE ALSO + + + bar + 1 + , + baz + 1 + , + foo.conf + 5 + + The programs are documented fully by The Rise and + Fall of a Fooish Bar available via the + info + 1 + system. + +
+ diff --git a/package/linux/deb_common/menu.ex b/package/linux/deb_common/menu.ex new file mode 100644 index 000000000..c5a80a7bc --- /dev/null +++ b/package/linux/deb_common/menu.ex @@ -0,0 +1,2 @@ +?package(openpilot):needs="X11|text|vc|wm" section="Applications/see-menu-manual"\ + title="openpilot" command="/usr/bin/openpilot" diff --git a/package/linux/deb_common/openpilot.cron.d.ex b/package/linux/deb_common/openpilot.cron.d.ex new file mode 100644 index 000000000..bc3507489 --- /dev/null +++ b/package/linux/deb_common/openpilot.cron.d.ex @@ -0,0 +1,4 @@ +# +# Regular cron jobs for the openpilot package +# +0 4 * * * root [ -x /usr/bin/openpilot_maintenance ] && /usr/bin/openpilot_maintenance diff --git a/package/linux/deb_common/openpilot.debhelper.log b/package/linux/deb_common/openpilot.debhelper.log new file mode 100644 index 000000000..34de80b19 --- /dev/null +++ b/package/linux/deb_common/openpilot.debhelper.log @@ -0,0 +1,15 @@ +dh_prep +dh_installdirs +dh_installchangelogs +dh_installdocs +dh_installexamples +dh_installman +dh_link +dh_strip +dh_compress +dh_fixperms +dh_installdeb +dh_shlibdeps +dh_gencontrol +dh_md5sums +dh_builddeb diff --git a/package/linux/deb_common/openpilot.default.ex b/package/linux/deb_common/openpilot.default.ex new file mode 100644 index 000000000..0b172a1fc --- /dev/null +++ b/package/linux/deb_common/openpilot.default.ex @@ -0,0 +1,10 @@ +# Defaults for openpilot initscript +# sourced by /etc/init.d/openpilot +# installed at /etc/default/openpilot by the maintainer scripts + +# +# This is a POSIX shell fragment +# + +# Additional options that are passed to the Daemon. +DAEMON_OPTS="" diff --git a/package/linux/deb_common/openpilot.dirs b/package/linux/deb_common/openpilot.dirs new file mode 100644 index 000000000..2fa7142b6 --- /dev/null +++ b/package/linux/deb_common/openpilot.dirs @@ -0,0 +1,7 @@ +etc/udev/rules.d +etc/xdg/menus/applications-merged +usr/share/applications +usr/share/pixmaps +usr/share/desktop-directories +usr/local/OpenPilot/firmware +usr/bin diff --git a/package/linux/deb_common/openpilot.doc-base.EX b/package/linux/deb_common/openpilot.doc-base.EX new file mode 100644 index 000000000..9e24da0dc --- /dev/null +++ b/package/linux/deb_common/openpilot.doc-base.EX @@ -0,0 +1,20 @@ +Document: openpilot +Title: Debian openpilot Manual +Author: +Abstract: This manual describes what openpilot is + and how it can be used to + manage online manuals on Debian systems. +Section: unknown + +Format: debiandoc-sgml +Files: /usr/share/doc/openpilot/openpilot.sgml.gz + +Format: postscript +Files: /usr/share/doc/openpilot/openpilot.ps.gz + +Format: text +Files: /usr/share/doc/openpilot/openpilot.text.gz + +Format: HTML +Index: /usr/share/doc/openpilot/html/index.html +Files: /usr/share/doc/openpilot/html/*.html diff --git a/package/linux/deb_common/openpilot.substvars b/package/linux/deb_common/openpilot.substvars new file mode 100644 index 000000000..39006599c --- /dev/null +++ b/package/linux/deb_common/openpilot.substvars @@ -0,0 +1,2 @@ +shlibs:Depends=libc6 (>= 2.3.6-6~), libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libgl1-mesa-glx | libgl1, libglu1-mesa | libglu1, libphonon4 (>= 4:4.3.0), libqt4-network (>= 4:4.6.1), libqt4-opengl (>= 4:4.6.1), libqt4-script (>= 4:4.5.3), libqt4-sql (>= 4:4.5.3), libqt4-svg (>= 4:4.5.3), libqt4-test (>= 4:4.5.3), libqt4-xml (>= 4:4.5.3), libqtcore4 (>= 4:4.7.0~beta1), libqtgui4 (>= 4:4.6.2), libsdl1.2debian (>= 1.2.10-1), libstdc++6 (>= 4.1.1), libudev0 (>= 147), libusb-0.1-4 (>= 2:0.1.12), phonon +misc:Depends= diff --git a/package/linux/deb_common/postinst b/package/linux/deb_common/postinst new file mode 100644 index 000000000..df8022075 --- /dev/null +++ b/package/linux/deb_common/postinst @@ -0,0 +1,40 @@ +#!/bin/sh +# postinst script for openpilot +# +# see: dh_installdeb(1) + +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 + + +case "$1" in + configure) + sudo udevadm control --reload-rules >&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 diff --git a/package/linux/deb_common/postinst.ex b/package/linux/deb_common/postinst.ex new file mode 100644 index 000000000..e8295471c --- /dev/null +++ b/package/linux/deb_common/postinst.ex @@ -0,0 +1,39 @@ +#!/bin/sh +# postinst script for openpilot +# +# see: dh_installdeb(1) + +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 + + +case "$1" in + configure) + ;; + + 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 diff --git a/package/linux/deb_common/postrm.ex b/package/linux/deb_common/postrm.ex new file mode 100644 index 000000000..7494eff83 --- /dev/null +++ b/package/linux/deb_common/postrm.ex @@ -0,0 +1,37 @@ +#!/bin/sh +# postrm script for openpilot +# +# 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 + + +case "$1" in + purge|remove|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 diff --git a/package/linux/deb_common/preinst.ex b/package/linux/deb_common/preinst.ex new file mode 100644 index 000000000..32ac40cc3 --- /dev/null +++ b/package/linux/deb_common/preinst.ex @@ -0,0 +1,35 @@ +#!/bin/sh +# preinst script for openpilot +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `install' +# * `install' +# * `upgrade' +# * `abort-upgrade' +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + install|upgrade) + ;; + + abort-upgrade) + ;; + + *) + echo "preinst 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 diff --git a/package/linux/deb_common/prerm.ex b/package/linux/deb_common/prerm.ex new file mode 100644 index 000000000..a46c87175 --- /dev/null +++ b/package/linux/deb_common/prerm.ex @@ -0,0 +1,38 @@ +#!/bin/sh +# prerm script for openpilot +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `upgrade' +# * `failed-upgrade' +# * `remove' `in-favour' +# * `deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + remove|upgrade|deconfigure) + ;; + + failed-upgrade) + ;; + + *) + echo "prerm 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 diff --git a/package/linux/deb_common/rules b/package/linux/deb_common/rules new file mode 100755 index 000000000..124d28ce2 --- /dev/null +++ b/package/linux/deb_common/rules @@ -0,0 +1,81 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. +# +# Modified to make a template file for a multi-binary package with separated +# build-arch and build-indep targets by Bill Allombert 2001 + +# Uncomment this to turn on verbose mode. +# export DH_VERBOSE=1 + +# This has to be exported to make some magic below work. +export DH_OPTIONS=-v + +#%: +# dh $@ + +PACKAGE_DIR := $(shell cat build/package_dir) + +clean: + dh_testdir + dh_testroot + dh_clean + +install: + dh_testdir + dh_testroot + dh_prep + dh_installdirs + # Add here commands to install the package into debian/ + cp -arp build/ground/openpilotgcs/bin debian/openpilot/usr/local/OpenPilot + cp -arp build/ground/openpilotgcs/lib debian/openpilot/usr/local/OpenPilot + cp -arp build/ground/openpilotgcs/share debian/openpilot/usr/local/OpenPilot + cp -arp build/ground/openpilotgcs/.obj debian/openpilot/usr/local/OpenPilot + cp -arp build/ground/openpilotgcs/gcsversioninfo.h debian/openpilot/usr/local/OpenPilot + cp -arp package/linux/openpilot.desktop debian/openpilot/usr/share/applications + cp -arp package/linux/openpilot.png debian/openpilot/usr/share/pixmaps + cp -arp package/linux/rc_applications.png debian/openpilot/usr/share/pixmaps + cp -arp package/linux/rc_applications.menu debian/openpilot/etc/xdg/menus/applications-merged + cp -arp package/linux/rc_applications.directory debian/openpilot/usr/share/desktop-directories + cp -arp package/linux/45-openpilot-permissions.rules debian/openpilot/etc/udev/rules.d + cp -ar $(PACKAGE_DIR)/* debian/openpilot/usr/local/OpenPilot/firmware/ + ln -s /usr/local/OpenPilot/bin/openpilotgcs.bin `pwd`/debian/openpilot/usr/bin/openpilot-gcs + rm -rf debian/openpilot/usr/local/OpenPilot/share/openpilotgcs/sounds/sounds + rm -rf debian/openpilot/usr/local/OpenPilot/share/openpilotgcs/pfd/pfd + rm -rf debian/openpilot/usr/local/OpenPilot/share/openpilotgcs/models/models + rm -rf debian/openpilot/usr/local/OpenPilot/share/openpilotgcs/mapicons/mapicons + rm -rf debian/openpilot/usr/local/OpenPilot/share/openpilotgcs/dials/dials + rm -rf debian/openpilot/usr/local/OpenPilot/share/openpilotgcs/diagrams/diagrams + + +# Build architecture-independent files here. +binary-indep: install + +# We have nothing to build by default. Got taken care of by OPs build system +# Build architecture-dependent files here. +binary-arch: install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installexamples + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps -l/usr/local/OpenPilot/lib/openpilotgcs --dpkg-shlibdeps-params="--ignore-missing-info -v" + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch + +.PHONY: clean binary-indep binary-arch binary install + diff --git a/package/linux/deb_common/watch.ex b/package/linux/deb_common/watch.ex new file mode 100644 index 000000000..7e9872e99 --- /dev/null +++ b/package/linux/deb_common/watch.ex @@ -0,0 +1,23 @@ +# Example watch control file for uscan +# Rename this file to "watch" and then you can run the "uscan" command +# to check for upstream updates and more. +# See uscan(1) for format + +# Compulsory line, this is a version 3 file +version=3 + +# Uncomment to examine a Webpage +# +#http://www.example.com/downloads.php openpilot-(.*)\.tar\.gz + +# Uncomment to examine a Webserver directory +#http://www.example.com/pub/openpilot-(.*)\.tar\.gz + +# Uncommment to examine a FTP server +#ftp://ftp.example.com/pub/openpilot-(.*)\.tar\.gz debian uupdate + +# Uncomment to find new files on sourceforge, for devscripts >= 2.9 +# http://sf.net/openpilot/openpilot-(.*)\.tar\.gz + +# Uncomment to find new files on GooglePages +# http://example.googlepages.com/foo.html openpilot-(.*)\.tar\.gz diff --git a/package/linux/deb_i386/control b/package/linux/deb_i386/control new file mode 100644 index 000000000..7c274850c --- /dev/null +++ b/package/linux/deb_i386/control @@ -0,0 +1,15 @@ +Source: openpilot +Section: unknown +Priority: extra +Maintainer: naiiawah +Build-Depends: debhelper (>= 7.0.50~) +Standards-Version: 3.8.4 +Homepage: http://www.openpilot.org +#Vcs-Git: git://git.debian.org/collab-maint/openpilot.git +#Vcs-Browser: http://git.debian.org/?p=collab-maint/openpilot.git;a=summary + +Package: openpilot +Architecture: i386 +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: OpenPilot GCS & FW + OpenPilot GCS and Firmware for CopterControl (CC) board. diff --git a/package/linux/openpilot.desktop b/package/linux/openpilot.desktop new file mode 100644 index 000000000..fc3099641 --- /dev/null +++ b/package/linux/openpilot.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Version=0.1.0 +Encoding=UTF-8 +Name=OpenPilot GCS +Exec=openpilot-gcs +TryExec=openpilot-gcs +Comment=Configure, Tune, Diagnose, Track, & Upgrade FW for OpenPilot solutions +Terminal=false +Categories=RCApplications;Qt;Other; +Icon=openpilot +Type=Application +MimeType=application/openpilot.snapshot; diff --git a/package/linux/openpilot.png b/package/linux/openpilot.png new file mode 100755 index 000000000..e9c4ee868 Binary files /dev/null and b/package/linux/openpilot.png differ diff --git a/package/linux/rc_applications.directory b/package/linux/rc_applications.directory new file mode 100644 index 000000000..f375c7f13 --- /dev/null +++ b/package/linux/rc_applications.directory @@ -0,0 +1,5 @@ +[Desktop Entry] +Type=Directory +Encoding=UTF-8 +Name=RCApplications +Icon=rc_applications.png diff --git a/package/linux/rc_applications.menu b/package/linux/rc_applications.menu new file mode 100644 index 000000000..185678f94 --- /dev/null +++ b/package/linux/rc_applications.menu @@ -0,0 +1,12 @@ + + + Applications + + RCApplications + rc_applications.directory + + RCApplications + + + diff --git a/package/linux/rc_applications.png b/package/linux/rc_applications.png new file mode 100755 index 000000000..b5e10befa Binary files /dev/null and b/package/linux/rc_applications.png differ