diff --git a/.semaphore/semaphore.yml b/.semaphore/semaphore.yml
index 31e315dc..4c08dd70 100644
--- a/.semaphore/semaphore.yml
+++ b/.semaphore/semaphore.yml
@@ -146,7 +146,7 @@ blocks:
               		gothub upload -t latest -n "$program"-dev-mac.7z -l "$program for macOS - rev ${SEMAPHORE_GIT_SHA:0:7} $(date -u -I)" -f "$program"-dev-mac.7z -R;
               	fi;
               done
-        - name: LibraZiK build
+        - name: LibraZiK-2 build
           commands:
             # Build using VeSTige
             - rm -rf thirdparty/vstsdk2.4
@@ -157,10 +157,19 @@ blocks:
               	case "$chip" in OPL3) program=ADLplug;; OPN2) program=OPNplug;; *) false;; esac;
               	mkdir "$program"-dev-lzk;
               	cd "$program"-dev-lzk;
-              	cross cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DADLplug_CHIP="$chip" -DADLplug_PCH=ON ..;
+              	cross cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DADLplug_CHIP="$chip" -DADLplug_PCH=ON ..;
               	cross make -j2;
               	cd ..;
               done
+            - for program in ADLplug OPNplug; do
+              	cd "$program"-dev-lzk;
+              	cross cpack -G DEB;
+              	lower_program=$(echo -n "$program" | tr '[:upper:]' '[:lower:]');
+              	if test "$SEMAPHORE_GIT_BRANCH" = master; then
+              		gothub upload -t latest -n "$lower_program"_amd64.deb -l "$program for 64-bit LibraZiK-2 / Debian Stretch - rev ${SEMAPHORE_GIT_SHA:0:7} $(date -u -I)" -f "$lower_program"_amd64.deb -R;
+              	fi;
+              	cd ..;
+              done
         - name: Source code build
           commands:
             - rm -rf thirdparty/ASIOSDK2.3
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c5b1836f..c0a9e4a4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -3,6 +3,9 @@ cmake_policy(SET CMP0063 NEW)
 list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
 
 project(ADLplug VERSION "1.0.0" LANGUAGES CXX C)
+set(PROJECT_VENDOR "Jean Pierre Cimalando")
+set(PROJECT_CONTACT "Jean Pierre Cimalando <http://jpcima.sdf1.org/>")
+set(PROJECT_HOMEPAGE "https://github.com/jpcima/ADLplug")
 
 enable_language(C)
 enable_language(CXX)
@@ -370,3 +373,5 @@ if(ADLplug_Standalone OR ADLplug_Jack)
       RENAME "${ADLplug_NAME}.png")
   endforeach()
 endif()
+
+include("CPackLists.txt")
diff --git a/CPackLists.txt b/CPackLists.txt
new file mode 100644
index 00000000..b7cc0c58
--- /dev/null
+++ b/CPackLists.txt
@@ -0,0 +1,26 @@
+# -*- cmake -*-
+
+set(CPACK_PACKAGE_VERSION "${PROJECT_VERSION}")
+set(CPACK_PACKAGE_VERSION_MAJOR "${PROJECT_VERSION_MAJOR}")
+set(CPACK_PACKAGE_VERSION_MINOR "${PROJECT_VERSION_MINOR}")
+set(CPACK_PACKAGE_VERSION_PATCH "${PROJECT_VERSION_PATCH}")
+set(CPACK_PACKAGE_VENDOR "${PROJECT_VENDOR}")
+set(CPACK_PACKAGE_CONTACT "${PROJECT_CONTACT}")
+
+set(CPACK_DEBIAN_PACKAGE_NAME "${ADLplug_NAME}")
+set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "${PROJECT_HOMEPAGE}")
+set(CPACK_DEBIAN_PACKAGE_RELEASE "0jpc1")
+set(CPACK_DEBIAN_PACKAGE_SECTION "sound")
+set(CPACK_DEBIAN_COMPRESSION_TYPE "xz")
+set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "FM Yamaha ${ADLplug_CHIP} synthesizer plugin")
+if(CMAKE_SYSTEM_PROCESSOR MATCHES "^i.86$" OR
+    CMAKE_SYSTEM_PROCESSOR STREQUAL "x86")
+  set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "i386")
+elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
+  set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64")
+endif()
+string(TOLOWER "${CPACK_DEBIAN_PACKAGE_NAME}" CPACK_DEBIAN_FILE_NAME)
+set(CPACK_DEBIAN_FILE_NAME "${CPACK_DEBIAN_FILE_NAME}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}.deb")
+set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
+
+include(CPack)