diff --git a/packaging/osx.sh b/packaging/osx.sh
index 73f9d123b82f6e4f1f282b7df187e48e27f84dd9..16817245e7d4ee7d2420fc8dfa9581fb9971abb7 100644
--- a/packaging/osx.sh
+++ b/packaging/osx.sh
@@ -52,7 +52,7 @@ then
 	PKG_SIGN_POSSIBLE=0
 fi
 
-PACK() 
+PACK_LINUX() 
 {
     DIST_DIR=$1
     BUILD_DIR=$2
@@ -164,3 +164,84 @@ PACK()
 }
 
 
+
+PACK_OSX() 
+{
+    DIST_DIR=$1
+    BUILD_DIR=$2
+    OUT_DIR=$3
+
+	BRAND=CellframeNode
+
+    #USED FOR PREPARATION OF UNIFIED BUNDLE
+    #all binaries and some structure files are threre
+    PACKAGE_DIR=${DIST_DIR}/osxpackaging
+
+    #USED FOR PROCESSING OF PREPARED BUNDLE: BOM CREATION, ETC
+    OSX_PKG_DIR=${DIST_DIR}/pkg
+
+	BRAND_OSX_BUNDLE_DIR=${DIST_DIR}/Applications/CellframeNode.app
+
+    #prepare correct packaging structure
+    mkdir -p ${PACKAGE_DIR}
+    mkdir -p ${OSX_PKG_DIR}
+
+    echo "Creating unified package structure in [$BRAND_OSX_BUNDLE_DIR]"
+
+    #copy base application bundle
+    #path to it in BRAND_OSX_BUNDLE_DIR
+    #cp -r ${DIST_DIR}/Applications/CellframeNode.app ${PACKAGE_DIR}/CellframeNode.app
+
+    #copy pkginstall
+	cp  ${HERE}/../../os/macos/PKGINSTALL/* ${PACKAGE_DIR}
+
+	echo "Do packaging magic in [$PACKAGE_DIR]"
+	
+	
+	#get version info
+	source "${HERE}/../../version.mk"
+    PACKAGE_NAME="cellframe-node-${VERSION_MAJOR}.${VERSION_MINOR}-${VERSION_PATCH}-amd64.pkg"
+	PACKAGE_NAME_SIGNED="cellframe-node-${VERSION_MAJOR}.${VERSION_MINOR}-${VERSION_PATCH}-amd64-signed.pkg"
+    echo "Building package [$PACKAGE_NAME]"
+
+	#prepare
+	PAYLOAD_BUILD=${PACKAGE_DIR}/payload_build
+	SCRIPTS_BUILD=${PACKAGE_DIR}/scripts_build
+
+	mkdir -p ${PAYLOAD_BUILD}
+	mkdir -p ${SCRIPTS_BUILD}
+
+	cp -r ${BRAND_OSX_BUNDLE_DIR} ${PAYLOAD_BUILD}
+
+	cp ${PACKAGE_DIR}/preinstall ${SCRIPTS_BUILD}
+	cp ${PACKAGE_DIR}/postinstall ${SCRIPTS_BUILD}
+
+	
+	pkgbuild --root ${PAYLOAD_BUILD} \
+			 --component-plist ${PAYLOAD_BUILD}/../CellframeNode.plist \
+			 --identifier "com.demlabs.CellframeNode" \
+			 --version "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}" \
+			 --install-location "/Applications" \
+			 --scripts ${SCRIPTS_BUILD} \
+			 ./${PACKAGE_NAME} 
+}
+
+NAME_OUT="$(uname -s)"
+case "${NAME_OUT}" in
+    Linux*)     MACHINE=Linux;;
+    Darwin*)    MACHINE=Mac;;
+    CYGWIN*)    MACHINE=Cygwin;;
+    MINGW*)     MACHINE=MinGw;;
+    MSYS_NT*)   MACHINE=Git;;
+    *)          MACHINE="UNKNOWN:${NAME_OUT}"
+esac
+
+PACK() 
+{
+	if [ "$MACHINE" != "Mac" ]
+	then
+		PACK_LINUX $@
+	else
+		PACK_OSX $@
+	fi
+}