summaryrefslogtreecommitdiffstats
path: root/packaging
diff options
context:
space:
mode:
Diffstat (limited to 'packaging')
-rw-r--r--packaging/CPackConfig.cmake16
-rw-r--r--packaging/CPackDebUploadPPA.cmake116
-rw-r--r--packaging/CPackPackageDescription.txt7
-rw-r--r--packaging/debian/changelog289
-rw-r--r--packaging/debian/compat1
-rw-r--r--packaging/debian/control.in72
-rw-r--r--packaging/debian/copyright27
-rw-r--r--packaging/debian/mixxx.docs1
-rw-r--r--packaging/debian/mixxx.sgml434
-rwxr-xr-xpackaging/debian/rules18
-rw-r--r--packaging/debian/source/format1
-rw-r--r--packaging/debian/watch3
12 files changed, 985 insertions, 0 deletions
diff --git a/packaging/CPackConfig.cmake b/packaging/CPackConfig.cmake
new file mode 100644
index 0000000000..99039b1f3e
--- /dev/null
+++ b/packaging/CPackConfig.cmake
@@ -0,0 +1,16 @@
+# unlike CMakeLists.txt this file is include at cpack time, once per generator after CPack has set CPACK_GENERATOR
+# to the actual generator being used. It allows per-generator setting of CPACK_* variables at cpack time.
+
+if (CPACK_GENERATOR STREQUAL "DEB")
+ set(CPACK_INSTALL_SCRIPT ${CPACK_DEBIAN_INSTALL_SCRIPT})
+endif()
+
+if (CPACK_GENERATOR STREQUAL "External")
+ if (DEB_SOURCEPKG OR DEB_UPLOAD_PPA OR DEB_BUILD)
+ set(CPACK_EXTERNAL_ENABLE_STAGING true)
+ set(CPACK_INSTALLED_DIRECTORIES "${CPACK_DEBIAN_SOURCE_DIR};/")
+ set(CPACK_IGNORE_FILES "${CPACK_SOURCE_IGNORE_FILES}")
+ set(CPACK_INSTALL_CMAKE_PROJECTS "")
+ set(CPACK_EXTERNAL_PACKAGE_SCRIPT "${CPACK_DEBIAN_UPLOAD_PPA_SCRIPT}" )
+ endif ()
+endif()
diff --git a/packaging/CPackDebUploadPPA.cmake b/packaging/CPackDebUploadPPA.cmake
new file mode 100644
index 0000000000..7de7ff7f7e
--- /dev/null
+++ b/packaging/CPackDebUploadPPA.cmake
@@ -0,0 +1,116 @@
+# This file is executed during cpack time.
+# The command is
+# cpack -G External -D DEB_UPLOAD_PPA=true
+
+find_program(CPACK_DEBIAN_DEBUILD debuild)
+if(NOT CPACK_DEBIAN_DEBUILD)
+ message(FATAL_ERROR "debuild not found, required for cpack -G External -D DEB_UPLOAD_PPA=true" )
+endif()
+
+if(DEB_UPLOAD_PPA)
+ find_program(CPACK_DEBIAN_DPUT dput)
+ if(NOT CPACK_DEBIAN_DPUT)
+ message(FATAL_ERROR "dput not found, required for cpack -G External -D DEB_UPLOAD_PPA=true" )
+ endif()
+endif()
+
+find_program(CPACK_DEBIAN_DEBCHANGE debchange)
+if(NOT CPACK_DEBIAN_DEBCHANGE)
+ message(FATAL_ERROR "debchange not found, required for cpack -G External -D DEB_UPLOAD_PPA=true" )
+endif()
+
+find_program(CPACK_DEBIAN_MARKDOWN markdown)
+if(NOT CPACK_DEBIAN_MARKDOWN)
+ message(FATAL_ERROR "markdown not found, required for cpack -G External -D DEB_UPLOAD_PPA=true")
+endif()
+
+# hack from sconscript
+if(DEB_UPLOAD_PPA MATCHES "mixxxbetas")
+ string(REGEX MATCH "^.*(~git[0-9]*).*$" GITVERSION "${CPACK_DEBIAN_DEBIAN_VERSION_EXTRA}")
+ set(CPACK_DEBIAN_UPSTREAM_VERSION "${CPACK_DEBIAN_UPSTREAM_VERSION}${CMAKE_MATCH_1}")
+endif()
+
+# PR branches hav no access to the pgp key. Don't sign.
+find_program(CPACK_DEBIAN_GPG gpg)
+if(CPACK_DEBIAN_GPG)
+ execute_process(COMMAND ${CPACK_DEBIAN_GPG} --fingerprint "${CPACK_PACKAGE_CONTACT}"
+ RESULT_VARIABLE CPACK_DEBIAN_GPG_RET)
+endif()
+if(NOT CPACK_DEBIAN_GPG_RET EQUAL "0")
+ message(WARNING "No secret key found for \"${CPACK_PACKAGE_CONTACT}\", skip signing" )
+ SET(CPACK_DEBIAN_DEBUILD_NOSIGN "--no-sign")
+endif()
+
+message(NOTICE "Creating mixxx_${CPACK_DEBIAN_UPSTREAM_VERSION}.orig.tar.gz")
+execute_process(
+ COMMAND tar -czf "mixxx_${CPACK_DEBIAN_UPSTREAM_VERSION}.orig.tar.gz" ${CPACK_PACKAGE_FILE_NAME}
+ WORKING_DIRECTORY ${CPACK_TOPLEVEL_DIRECTORY}
+)
+
+message( NOTICE "Creating debian folder" )
+file(COPY ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/packaging/debian
+ DESTINATION ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME})
+
+execute_process(
+ COMMAND ${CPACK_DEBIAN_MARKDOWN} ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/CHANGELOG.md
+ OUTPUT_FILE NEWS.html
+ WORKING_DIRECTORY ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/debian
+)
+
+configure_file(${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/debian/control.in
+ ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/debian/control
+ @ONLY)
+file(REMOVE ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/debian/control.in)
+
+file(COPY ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/res/linux/mixxx-usb-uaccess.rules
+ DESTINATION ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/debian)
+file(RENAME
+ ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/debian/mixxx-usb-uaccess.rules
+ ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/debian/mixxx.mixxx-usb-uaccess.udev)
+
+if(DEB_BUILD)
+ execute_process(
+ COMMAND lsb_release --short --codename
+ OUTPUT_VARIABLE BUILD_MACHINE_RELEASE
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+endif()
+
+foreach(RELEASE ${CPACK_DEBIAN_DISTRIBUTION_RELEASES})
+
+ file(COPY ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/packaging/debian/changelog
+ DESTINATION ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}/debian)
+ execute_process(COMMAND ${CPACK_DEBIAN_DEBCHANGE} -v "${CPACK_DEBIAN_UPSTREAM_VERSION}-${CPACK_DEBIAN_DEBIAN_VERSION}~${CPACK_DEBIAN_DEBIAN_VERSION_EXTRA}~${RELEASE}" -M "Build of ${CPACK_DEBIAN_UPSTREAM_VERSION}"
+ WORKING_DIRECTORY ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME})
+ execute_process(COMMAND ${CPACK_DEBIAN_DEBCHANGE} -r -D ${RELEASE} -M "Build of ${CPACK_DEBIAN_UPSTREAM_VERSION}"
+ WORKING_DIRECTORY ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME})
+
+ if (BUILD_MACHINE_RELEASE STREQUAL RELEASE AND DEB_BUILD)
+ set(CPACK_DEBIAN_DEBUILD_BUILD "-b")
+ endif()
+ if (DEB_UPLOAD_PPA OR DEB_SOURCEPKG)
+ execute_process(COMMAND ${CPACK_DEBIAN_DEBUILD} -S -sa -d ${CPACK_DEBIAN_DEBUILD_NOSIGN}
+ WORKING_DIRECTORY ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}
+ RESULT_VARIABLE CPACK_DEBIAN_DEBUILD_RET)
+ if(NOT CPACK_DEBIAN_DEBUILD_RET EQUAL "0")
+ message(FATAL_ERROR "${CPACK_DEBIAN_DEBUILD} retuned exit code ${CPACK_DEBIAN_DEBUILD_RET}")
+ endif()
+ endif()
+ if (BUILD_MACHINE_RELEASE STREQUAL RELEASE AND DEB_BUILD)
+ execute_process(COMMAND ${CPACK_DEBIAN_DEBUILD} -b ${CPACK_DEBIAN_DEBUILD_NOSIGN}
+ WORKING_DIRECTORY ${CPACK_TOPLEVEL_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME})
+ endif()
+ if(DEB_UPLOAD_PPA)
+ execute_process(COMMAND ${CPACK_DEBIAN_DPUT} ${DEB_UPLOAD_PPA} "mixxx_${CPACK_DEBIAN_UPSTREAM_VERSION}-${CPACK_DEBIAN_DEBIAN_VERSION}~${CPACK_DEBIAN_DEBIAN_VERSION_EXTRA}~${RELEASE}_source.changes"
+ WORKING_DIRECTORY ${CPACK_TOPLEVEL_DIRECTORY})
+ endif()
+
+endforeach(RELEASE ${CPACK_DEBIAN_DISTRIBUTION_RELEASES})
+
+if(DEB_SOURCEPKG OR DEB_BUILD)
+ file(GLOB ARTIFACTS
+ "${CPACK_TOPLEVEL_DIRECTORY}/mixxx_${CPACK_DEBIAN_UPSTREAM_VERSION}-${CPACK_DEBIAN_DEBIAN_VERSION}~${CPACK_DEBIAN_DEBIAN_VERSION_EXTRA}*"
+ "${CPACK_TOPLEVEL_DIRECTORY}/mixxx-dbgsym_${CPACK_DEBIAN_UPSTREAM_VERSION}-${CPACK_DEBIAN_DEBIAN_VERSION}~${CPACK_DEBIAN_DEBIAN_VERSION_EXTRA}*")
+ file(COPY ${ARTIFACTS}
+ DESTINATION ${CPACK_PACKAGE_DIRECTORY})
+endif()
diff --git a/packaging/CPackPackageDescription.txt b/packaging/CPackPackageDescription.txt
new file mode 100644
index 0000000000..c6261978c8
--- /dev/null
+++ b/packaging/CPackPackageDescription.txt
@@ -0,0 +1,7 @@
+Mixxx is a digital DJ system, where Wave, Ogg, FLAC and MP3 files can be
+mixed on a computer for use in live performances. Filters, crossfader, and
+speed control are provided. Mixxx can sync the 4 decks automatically, using
+an algorithm to detect the beat.
+
+Mixxx works with ALSA or Jack, can be controlled from the GUI or from external
+controllers, including MIDI devices and joysticks, and supports skins.
diff --git a/packaging/debian/changelog b/packaging/debian/changelog
new file mode 100644
index 0000000000..bb7cf5e2ce
--- /dev/null
+++ b/packaging/debian/changelog
@@ -0,0 +1,289 @@
+mixxx (2.2.4-0ubuntu3) bionic; urgency=medium
+
+ * Bugfix release
+
+ -- Daniel Schürmann <daschuer@mixxx.org> Fri, 15 May 2020 23:22:20 +0200
+
+mixxx (2.2.3-0ubuntu1) bionic; urgency=medium
+
+ * Bugfix release
+
+ -- Be <be@mixxx.org> Wed, 27 Nov 2019 01:02:42 +0200
+
+mixxx (2.2.2-0ubuntu1) bionic; urgency=medium
+
+ * Bugfix release
+
+ -- Uwe Klotz <uklotz@mixxx.org> Thu, 10 Aug 2019 08:50:58 +0200
+
+mixxx (2.2.1-0ubuntu1) bionic; urgency=medium
+
+ * Bugfix release
+
+ -- Daniel Schürmann <daschuer@mixxx.org> Thu, 22 Apr 2019 23:05:28 +0100
+
+mixxx (2.2.0-0ubuntu1) bionic; urgency=medium
+
+ * Bugfix release
+
+ -- Daniel Schürmann <daschuer@mixxx.org> Fri, 11 Jan 2019 23:26:08 +0100
+
+mixxx (2.1.8-0ubuntu1) bionic; urgency=medium
+
+ * New upstream release
+
+ -- Daniel Schürmann <daschuer@mixxx.org> Sun, 07 Apr 2019 12:14:46 +0200
+
+mixxx (2.1.7-0ubuntu1) bionic; urgency=medium
+
+ * New upstream release
+
+ -- Daniel Schürmann <daschuer@mixxx.org> Mon, 14 Jan 2019 00:08:23 +0100
+
+mixxx (2.1.6-0ubuntu1) bionic; urgency=medium
+
+ * New upstream release
+
+ -- Daniel Schürmann <daschuer@mixxx.org> Sun, 23 Dec 2018 11:01:23 +0100
+
+mixxx (2.1.4-0ubuntu1) bionic; urgency=medium
+
+ * New upstream release.
+
+ -- Be <be@mixxx.org> Mon, 30 Aug 2018 07:47:00 +0500
+
+mixxx (2.1.3-0ubuntu1) bionic; urgency=medium
+
+ * New upstream release.
+
+ -- Be <be@mixxx.org> Mon, 20 Aug 2018 12:53:15 +0500
+
+mixxx (2.1.2-0ubuntu1) artful; urgency=medium
+
+ * New upstream release.
+
+ -- RJ Ryan <rryan@mixxx.org> Fri, 10 Aug 2018 13:11:21 +0300
+
+mixxx (2.1.1-0ubuntu1) artful; urgency=medium
+
+ * New upstream release.
+
+ -- RJ Ryan <rryan@mixxx.org> Thu, 17 May 2018 20:42:25 +0200
+
+mixxx (2.1.0-0ubuntu1) artful; urgency=medium
+
+ * New upstream release.
+
+ -- RJ Ryan <rryan@mixxx.org> Sun, 15 Apr 2018 15:06:39 -0700
+
+mixxx (2.0.0-0ubuntu1) precise; urgency=medium
+
+ * New upstream release.
+
+ -- RJ Ryan <rryan@mixxx.org> Mon, 28 Dec 2015 09:15:53 -0800
+
+mixxx (1.12.0-beta1-0ubuntu1) precise; urgency=low
+
+ * New upstream beta release.
+
+ -- RJ Ryan <rryan@mixxx.org> Tue, 28 Apr 2015 20:51:42 -0400
+
+mixxx (1.11.0-0ubuntu1) lucid; urgency=low
+
+ * New upstream release.
+
+ -- RJ Ryan <rryan@mixxx.org> Thu, 09 May 2013 01:19:27 -0400
+
+mixxx (1.11.0~beta1-0ubuntu1) lucid; urgency=low
+
+ * New upstream beta release
+
+ -- RJ Ryan <rryan@mixxx.org> Thu, 21 Jun 2012 15:41:22 -0400
+
+mixxx (1.10.0-0ubuntu1) lucid; urgency=low
+
+ * New upstream release.
+
+ -- RJ Ryan <rryan@mixxx.org> Sat, 24 Dec 2011 23:28:30 -0500
+
+mixxx (1.10.0-beta1-0ubuntu1) lucid; urgency=low
+
+ * New upstream beta release
+ * Bump Qt requirement to 4.6.0
+ * Drop Karmic support
+
+ -- RJ Ryan <rryan@mixxx.org> Wed, 08 Jun 2011 17:28:00 -0500
+
+mixxx (1.9.0-0ubuntu1) karmic; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Thu, 17 Feb 2011 01:17:59 -0500
+
+mixxx (1.8.0-0ubuntu1) karmic; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Thu, 5 August 2010 23:06:22 -0800
+
+mixxx (1.8.0~beta2-0ubuntu1) karmic; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Fri, 18 June 2010 21:06:45 -0800
+
+mixxx (1.8.0~beta1-0ubuntu1) karmic; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Tue, 2 February 2010 21:06:45 -0800
+
+mixxx (1.7.2-0ubuntu1) intrepid; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Tue, 29 December 2009 21:09:12 -0800
+
+mixxx (1.7.1-0ubuntu1) intrepid; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Tue, 13 October 2009 11:21:40 -0800
+
+mixxx (1.7.0-0ubuntu1) intrepid; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Thu, 5 August 2009 11:07:35 -0800
+
+mixxx (1.7.0~beta2-0ubuntu1) intrepid; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Sun, 19 July 2009 12:13:37 -0800
+
+mixxx (1.7.0~beta1-0ubuntu1) intrepid; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <alberts@mixxx.org> Mon, 13 April 2009 13:43:37 -0500
+
+mixxx (1.6.2-0ubuntu1) hardy; urgency=low
+
+ * New upstream release - removes libDJConsole support (new driver from Hercules make this obsolete)
+
+ -- Garth Dahlstrom <ironstorm@users.sourceforge.net> Tue, 13 November 2008 01:45:00 -0500
+
+mixxx (1.6.1-0ubuntu1) hardy; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <gamegod@users.sourceforge.net> Tue, 25 September 2008 15:45:00 -0800
+
+mixxx (1.6.0-0ubuntu1) hardy; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <gamegod@users.sourceforge.net> Tue, 5 August 2008 22:38:00 -0500
+
+mixxx (1.6.0~beta4-0ubuntu1) hardy; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <gamegod@users.sourceforge.net> Sun, 13 July 2008 22:38:00 -0500
+
+mixxx (1.6.0~beta3-0ubuntu1) hardy; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <gamegod@users.sourceforge.net> Sun, 18 May 2008 13:56:00 -0500
+
+mixxx (1.6.0~beta2-0ubuntu1) hardy; urgency=low
+
+ * New upstream release
+ - Improved ATI compatibility (LP: #93814) (LP: #116484) (LP: #124213)
+ - Various stability improvements (LP: #72549)
+ - Rewritten sound core (LP: #72610)
+ - Improved mp3 decoding safety (LP: #122476)
+ * Removed mixxx.desktop from debian dir, already upstream (rules updated
+ accordingly)
+ * Dropped useless main.qbas patch (no longer use qt3)
+ * Dropped direct rendering patch (handled better in upstream now)
+
+ -- Albert Santoni <gamegod@users.sourceforge.net> Tue, 10 Feb 2008 15:32:00 -0500
+
+mixxx (1.6.0~beta1-1ubuntu2) hardy; urgency=low
+
+ * debian/mixxx.desktop
+ - Updated desktop file to reflect icon name change
+ (LP: #189598)
+
+ -- Joseph Jackson IV <jjacksoniv@fluxbuntu.org> Wed, 06 Feb 2008 11:02:37 -0500
+
+mixxx (1.6.0~beta1-1ubuntu1) hardy; urgency=low
+
+ * Merge from debian unstable, remaining changes:
+ - Update desktop file.
+ - Update maintainer field as per spec.
+
+ -- Luke Yelavich <themuso@ubuntu.com> Thu, 03 Jan 2008 23:09:53 +1100
+
+mixxx (1.6.0~beta1-1) unstable; urgency=low
+
+ * New upstream release
+ * debian/patched:
+ - dropped typos.patch (fixed upstream)
+ * debian/control:
+ - build depend on libqt4-dev and scons
+
+ -- Free Ekanayaka <freee@debian.org> Thu, 27 Dec 2007 09:53:41 +0000
+
+mixxx (1.6.0beta1-0ubuntu1) gutsy; urgency=low
+
+ * New upstream release
+ * DFSG changes now upstream, tag no longer needed
+
+ -- Albert Santoni <gamegod@users.sourceforge.net> Tue, 20 Nov 2007 23:02:00 -0500
+
+mixxx (1.5.2svn~20070807dfsg-0ubuntu1) gutsy; urgency=low
+
+ * New upstream release
+
+ -- Albert Santoni <gamegod@users.sourceforge.net> Wed, 8 Aug 2007 20:10:00 -0500
+
+mixxx (1.5.0svn~20070130dfsg-0ubuntu1) feisty; urgency=low
+
+ * New upstream release
+ * Trimmed non-free files
+ * Mixxx now depends on libportaudio2 (PortAudio-v19 instead of -v18)
+
+ -- Albert Santoni <gamegod@users.sourceforge.net> Sun, 28 Jan 2007 19:50:20 -0500
+
+mixxx (1.4.2-1.1ubuntu1) edgy; urgency=low
+
+ * Re-sync with Debian
+ * Drop Ubuntu GL/GLU fixes
+ * Fix .desktop file (Emmet Hikory)
+
+ -- Barry deFreese <bddebian@comcast.net> Wed, 2 Aug 2006 12:46:20 -0400
+
+mixxx (1.4.2-1.1) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * Replace unsatisfiable build-dependency on xlibmesa-glu-dev by
+ libglu1-mesa-dev; fixes FTBFS. (Closes: #374590)
+
+ -- Steinar H. Gunderson <sesse@debian.org> Wed, 28 Jun 2006 00:23:04 +0200
+
+mixxx (1.4.2-1) unstable; urgency=low
+
+ * Initial Release (closes: #227017).
+ * Modified src/mixxx.pro to be happier on debian
+ * Added #ifdef __vbrheadersdk__ to src/soundsourcemp3.c
+ * Removed non-free files in lib/gplot and lib/vbrheadersdk
+ * Converted png to xpm to add to menu icon, added .desktop
+ * Disable directRendering check to avoid crash when Visual=Simple
+ * Prevent latency slider to try setting the latency to 0
+ * Correct a typo on 'rendering' in mixxxview.cpp
+
+ -- Paul Brossier <piem@debian.org> Sat, 13 Aug 2005 00:14:24 +0100
diff --git a/packaging/debian/compat b/packaging/debian/compat
new file mode 100644
index 0000000000..b4de394767
--- /dev/null
+++ b/packaging/debian/compat
@@ -0,0 +1 @@
+11
diff --git a/packaging/debian/control.in b/packaging/debian/control.in
new file mode 100644
index 0000000000..da395c4659
--- /dev/null
+++ b/packaging/debian/control.in
@@ -0,0 +1,72 @@
+Source: mixxx
+Section: @CPACK_DEBIAN_PACKAGE_SECTION@
+Priority: @CPACK_DEBIAN_PACKAGE_PRIORITY@
+Maintainer: @CPACK_PACKAGE_CONTACT@
+Build-Depends: debhelper (>= 11),
+ pkg-config,
+ docbook-to-man,
+ markdown,
+ libglu1-mesa-dev,
+# qt5-default depends on qtbase5-dev, which includes headers for
+# QtConcurrent
+# QtCore
+# QtGui
+# QtNetwork
+# QtPlatformHeaders
+# QtPrintSupport
+# QtSql
+# QtWidgets
+# QtXml
+ qt5-default,
+ qt5keychain-dev,
+# We additionally need headers for QtOpenGL, QtScript, and QtSvg.
+ qtdeclarative5-dev,
+ qtscript5-dev,
+ libqt5opengl5-dev,
+ libqt5svg5-dev,
+# Only needed for running tests that use SQLite.
+ libqt5sql5-sqlite,
+ libqt5x11extras5-dev,
+ cmake (>= 3.13),
+ libjack-dev,
+ portaudio19-dev,
+ libid3tag0-dev,
+ libmad0-dev,
+ libogg-dev,
+ libsndfile1-dev,
+ libasound2-dev,
+ libvorbis-dev,
+ libfaad-dev,
+ libportmidi-dev,
+ libtag1-dev,
+ libshout-dev,
+ libssl-dev,
+ libprotobuf-dev,
+ protobuf-compiler,
+ libusb-1.0-0-dev,
+ libchromaprint-dev,
+ librubberband-dev,
+ libopusfile-dev,
+ libsqlite3-dev,
+ libsoundtouch-dev,
+ libhidapi-dev,
+ libupower-glib-dev,
+ liblilv-dev,
+ libmodplug-dev,
+ libmp3lame-dev,
+ libebur128-dev,
+# for running mixxx-test
+ xvfb
+Rules-Requires-Root: no
+Standards-Version: 4.1.4
+Homepage: @CPACK_DEBIAN_PACKAGE_HOMEPAGE@
+Vcs-Browser: https://github.com/mixxxdj/mixxx
+Vcs-Git: https://github.com/mixxxdj/mixxx.git
+
+Package: mixxx
+Section: @CPACK_DEBIAN_PACKAGE_SECTION@
+Architecture: linux-any
+Depends: ${shlibs:Depends}, ${misc:Depends}, @CPACK_DEBIAN_PACKAGE_DEPENDS@
+Suggests: @CPACK_DEBIAN_PACKAGE_SUGGESTS@
+Replaces: mixxx-data
+Description: @CPACK_DEBIAN_PACKAGE_DESCRIPTION_MERGED@
diff --git a/packaging/debian/copyright b/packaging/debian/copyright
new file mode 100644
index 0000000000..4a958894e3
--- /dev/null
+++ b/packaging/debian/copyright
@@ -0,0 +1,27 @@
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: Mixxx
+Upstream-Contact:
+ RJ Skerry-Ryan <rryan@mixxx.org>
+Source: https://downloads.mixxx.org/
+
+Files: *
+Copyright:
+ 2001-2020 Mixxx development team
+License: GPL-2+
+
+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.
+Comment:
+ On Debian systems the full text of the GNU General Public
+ License can be found in the `/usr/share/common-licenses/GPL-2' file.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/packaging/debian/mixxx.docs b/packaging/debian/mixxx.docs
new file mode 100644
index 0000000000..e1a738961a
--- /dev/null
+++ b/packaging/debian/mixxx.docs
@@ -0,0 +1 @@
+debian/NEWS.html
diff --git a/packaging/debian/mixxx.sgml b/packaging/debian/mixxx.sgml
new file mode 100644
index 0000000000..9277b5cb23
--- /dev/null
+++ b/packaging/debian/mixxx.sgml
@@ -0,0 +1,434 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+
+<!-- Process this file with docbook-to-man to generate an nroff manual
+ page: `docbook-to-man manpage.sgml > 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.
+
+ -->
+
+ <!-- Fill in your name for FIRSTNAME and SURNAME. -->
+ <!ENTITY dhfirstname "<firstname>S.</firstname>">
+ <!ENTITY dhsurname "<surname>Brandt</surname>">
+ <!-- Please adjust the date whenever revising the manpage. -->
+ <!ENTITY dhdate "<date>April 12, 2013</date>">
+ <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
+ allowed: see man(7), man(1). -->
+ <!ENTITY dhsection "<manvolnum>1</manvolnum>">
+ <!ENTITY dhemail "<email>s.brandt@mixxx.org</email>">
+ <!ENTITY dhusername "S.Brandt">
+ <!ENTITY dhucpackage "<refentrytitle>MIXXX</refentrytitle>">
+ <!ENTITY dhpackage "mixxx">
+
+ <!ENTITY debian "<productname>Debian</productname>">
+ <!ENTITY gnu "<acronym>GNU</acronym>">
+ <!ENTITY gpl "&gnu; <acronym>GPL</acronym>">
+]>
+
+<refentry>
+ <refentryinfo>
+ <address>
+ &dhemail;
+ </address>
+ <author>
+ &dhfirstname;
+ &dhsurname;
+ </author>
+ <copyright>
+ <year>2013</year>
+ <holder>&dhusername;</holder>
+ </copyright>
+ &dhdate;
+ </refentryinfo>
+ <refmeta>
+ &dhucpackage;
+
+ &dhsection;
+ </refmeta>
+ <refnamediv>
+ <refname>&dhpackage;</refname>
+
+ <refpurpose>A Digital Disc Jockey Interface</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <cmdsynopsis>
+ <command>&dhpackage;</command>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+
+ <refsect1>
+ <title>DESCRIPTION</title>
+ <para>
+ <command>&dhpackage;</command> is free DJ software that gives you
+ everything you need to perform live DJ mixes. Blend songs together with
+ automatic BPM matching and remix on-the-fly with looping and hot cues.
+ Whether you're a pro DJ or just getting started, Mixxx has you covered.
+ </para>
+
+ <para>
+ &dhpackage; works with ALSA, JACK, OSS and supports many popular DJ
+ controllers.
+ </para>
+
+ <para>
+ This manual page documents briefly the <command>&dhpackage;</command>
+ command line options. It does not describe all of the features
+ of &dhpackage; or how to use it; Instead, it has a documentation in pdf
+ format; see below.
+ </para>
+ <para>
+ <emphasis role="bold">KEY FEATURES</emphasis>
+ </para>
+
+ <itemizedlist mark='opencircle'>
+ <listitem>
+ <para>Parallel or split scratchable waveform displays.</para>
+ </listitem>
+ <listitem>
+ <para>MP3, OGG, WAVE, FLAC, and optional AAC (M4A) playback.</para>
+ </listitem>
+ <listitem>
+ <para>WAVE, OGG, and optional MP3 recording.</para>
+ </listitem>
+ <listitem>
+ <para>Fast, database-powered library.</para>
+ </listitem>
+ <listitem>
+ <para>Crates and playlists for organizing your music.</para>
+ </listitem>
+ <listitem>
+ <para>Reads iTunes, Traktor, and Rhythmbox libraries.</para>
+ </listitem>
+ <listitem>
+ <para>Cross-platform - works on Windows, Mac OS X and Linux.</para>
+ </listitem>
+ <listitem>
+ <para>Shoutcast and Icecast broadcasting.</para>
+ </listitem>
+ <listitem>
+ <para>Support for many DJ MIDI & HID controllers out-of-the-box.</para>
+ </listitem>
+ <listitem>
+ <para>Advanced MIDI scripting engine for maximum flexibility.</para>
+ </listitem>
+ <listitem>
+ <para>Vinyl emulation with Serato,Traktor, and Mixvibes timecode support.</para>
+ </listitem>
+ <listitem>
+ <para>Bulk BPM and beat detection.</para>
+ </listitem>
+ <listitem>
+ <para>ReplayGain volume normalization.</para>
+ </listitem>
+ <listitem>
+ <para>Automatic crossfading with Auto DJ.</para>
+ </listitem>
+ <listitem>
+ <para>Skinnable interface with several skins bundled.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>
+ For a full list of features go to:
+ <ulink url="http://mixxx.org/features/"></ulink>.
+ </para>
+ <para>
+ &dhpackage; does not have AAC (M4A) playback support enabled by default due
+ to licensing restrictions. To enable playback of unprotected AAC (M4A)
+ files, you can build &dhpackage; from source. See also:
+ <ulink url="http://www.mixxx.org/wiki/doku.php/compiling_on_linux#build_with_m4a_file_support"></ulink>
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>OPTIONS</title>
+ <para>
+ Mixxx is designed to be as user-friendly as possible. As such, its command
+ line options are only useful for development or debugging, as they make
+ these tasks easier. <command>&dhpackage;</command> accepts the following
+ case-sensitive options on the command-line:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term>
+ <replaceable class="parameter">&lt;FILE&gt;</replaceable>
+ </term>
+ <listitem>
+ <para>
+ Load the specified music file(s) at start-up. Each file you
+ specify will be loaded into the next virtual deck. Supported file
+ types: mp3, ogg, aiff, aif, wav, flac
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>--resourcePath</option>
+ <replaceable class="parameter">&lt;PATH&gt;</replaceable>
+ </term>
+ <listitem>
+ <para>
+ Top-level directory where Mixxx should look for its resource
+ files such as MIDI mappings, overriding the default installation
+ location.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>--pluginPath</option>
+ <replaceable class="parameter">&lt;PATH&gt;</replaceable>
+ </term>
+ <listitem>
+ <para>
+ Top-level directory where Mixxx should look for sound source
+ plugins in addition to default locations.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>--settingsPath</option>
+ <replaceable class="parameter">&lt;PATH&gt;</replaceable>
+ </term>
+ <listitem>
+ <para>
+ Top-level directory where Mixxx should look for settings.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>--controllerDebug/--midiDebug</option>
+ </term>
+ <listitem>
+ <para>
+ Causes Mixxx to display/log all of the MIDI/HID controller data
+ it receives and script functions it loads.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>--developer</option>
+ </term>
+ <listitem>
+ <para>
+ Enables developer-mode. Includes extra log info, stats on
+ performance, and a Developer tools menu.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>--locale</option>
+ <replaceable class="parameter">&lt;LOCALE&gt;</replaceable>
+ </term>
+ <listitem>
+ <para>
+ Use a custom locale for loading translations (e.g 'fr').
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>--f</option>
+ <option>--fullScreen</option>
+ </term>
+ <listitem>
+ <para>
+ Starts &dhpackage; in full-screen mode.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <option>-h</option>
+ <option>--help</option>
+ </term>
+ <listitem>
+ <para>
+ Display a help message and exit.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>SEE ALSO</title>
+ <para>
+ <filename class='directory'>/usr/share/doc/mixxx/Mixxx-Manual.pdf</filename>
+ </para>
+ <para>
+ The manual in pdf format should have come with your copy of &dhpackage;,
+ however there is an online copy available:
+ <ulink url="http://mixxx.org/wiki/doku.php/manual"></ulink>.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>FILES</title>
+ <variablelist>
+ <varlistentry>
+ <term>
+ <filename class='directory'>~/.mixxx/</filename>
+ </term>
+ <listitem>
+ <para>
+ The directory where &dhpackage; stores its user data.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <filename class='directory'>~/.mixxx/mixxx.cfg</filename>
+ </term>
+ <listitem>
+ <para>
+ The &dhpackage; configuration file.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <filename class='directory'>~/.mixxx/mixxxdb.sqlite</filename>
+ </term>
+ <listitem>
+ <para>
+ The &dhpackage; library file.
+ <emphasis role="bold">Warning:</emphasis> Deleting your library
+ will lose all of your metadata. This includes saved hotcues, loops,
+ comments, ratings, and other library related metadata. Only delete
+ your library if you are fine with losing these.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <filename class='directory'>~/.mixxx/analysis</filename>
+ </term>
+ <listitem>
+ <para>
+ The directory where &dhpackage; stores any additional analysis data
+ that can't fit into the library file. Currently only the waveforms
+ are saved here. If you delete your library file you should also
+ delete this folder as the waveforms around 1MB each and are unusable
+ without the library that generated them.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <filename class='directory'>~/.mixxx/controllers</filename>
+ </term>
+ <listitem>
+ <para>
+ The directory where &dhpackage; stores user controller mappings.
+ All mappings that are created with the MIDI learning wizard are
+ saved here. If there are mappings for a controller in the default
+ resource directory and this directory &dhpackage; will use
+ the one saved here.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
+ <filename class='directory'>/usr/share/mixxx</filename>
+ </term>
+ <listitem>
+ <para>
+ The directory where &dhpackage; stores its default resources like