diff --git a/bootanimation/Android.mk b/bootanimation/Android.mk
index 19c51c4..e5bfe62 100644
--- a/bootanimation/Android.mk
+++ b/bootanimation/Android.mk
@@ -1,5 +1,6 @@
-# Copyright (C) 2016 The SlimRom Project
-# Copyright (C) 2017 The BlissRoms Project
+#
+# Copyright (C) 2016 The CyanogenMod Project
+#               2017 The LineageOS Project
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -12,12 +13,41 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
+#
 
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-LOCAL_MODULE := BlissBootAnimation
-
-BOOTANIMATION := $(shell $(ANDROID_BUILD_TOP)/vendor/bliss/bootanimation/generate-bootanimation.sh \
+define build-bootanimation
+    sh vendor/bliss/bootanimation/generate-bootanimation.sh \
     $(TARGET_SCREEN_WIDTH) \
-    $(TARGET_BOOTANIMATION_HALF_RES))
+    $(TARGET_SCREEN_HEIGHT) \
+    $(TARGET_BOOTANIMATION_HALF_RES)
+endef
 
+TARGET_GENERATED_BOOTANIMATION := $(TARGET_OUT_INTERMEDIATES)/BOOTANIMATION/bootanimation.zip
+$(TARGET_GENERATED_BOOTANIMATION):
+	@echo "Building bootanimation"
+	$(build-bootanimation)
+
+ifeq ($(TARGET_BOOTANIMATION),)
+    TARGET_BOOTANIMATION := $(TARGET_GENERATED_BOOTANIMATION)
+    ifeq ($(shell command -v mogrify),)
+        $(info **********************************************)
+        $(info The boot animation could not be generated as)
+        $(info ImageMagick is not installed in your system.)
+        $(info $(space))
+        $(info Please install ImageMagick from this website:)
+        $(info https://imagemagick.org/script/binary-releases.php)
+        $(info **********************************************)
+        $(error stop)
+    endif
+endif
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := bootanimation.zip
+LOCAL_MODULE_CLASS := ETC
+LOCAL_MODULE_PATH := $(TARGET_OUT)/media
+
+include $(BUILD_SYSTEM)/base_rules.mk
+
+$(LOCAL_BUILT_MODULE): $(TARGET_BOOTANIMATION)
+	@mkdir -p $(dir $@)
+	@cp $(TARGET_BOOTANIMATION) $@
diff --git a/bootanimation/CleanSpec.mk b/bootanimation/CleanSpec.mk
new file mode 100644
index 0000000..a32a883
--- /dev/null
+++ b/bootanimation/CleanSpec.mk
@@ -0,0 +1,17 @@
+#
+# Copyright (C) 2017 The LineageOS Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/BOOTANIMATION)
diff --git a/bootanimation/bootanimation.tar b/bootanimation/bootanimation.tar
index 2e43e04..3b97ccd 100644
--- a/bootanimation/bootanimation.tar
+++ b/bootanimation/bootanimation.tar
Binary files differ
diff --git a/bootanimation/desc.txt b/bootanimation/desc.txt
index 5e680a8..6fa3322 100644
--- a/bootanimation/desc.txt
+++ b/bootanimation/desc.txt
@@ -1,3 +1,3 @@
-c 1 0 part0 #44C9F6
-c 0 0 part1 #44C9F6
-c 1 0 part2 #44C9F6
+c 1 0 part0
+c 0 0 part1
+
diff --git a/bootanimation/generate-bootanimation.sh b/bootanimation/generate-bootanimation.sh
old mode 100755
new mode 100644
index 39b5619..1c3937f
--- a/bootanimation/generate-bootanimation.sh
+++ b/bootanimation/generate-bootanimation.sh
@@ -1,37 +1,34 @@
 #!/bin/bash
 
-CWD=`pwd`
-WIDTH=$1
-HEIGHT=$(echo "$WIDTH/1.5" | bc)
-RWIDTH=$WIDTH
-RHEIGHT=$HEIGHT
-HALF_RES=$2
-if [ "$HALF_RES" = "true" ]; then
-    WIDTH=`expr $WIDTH / 2`
-    HEIGHT=`expr $HEIGHT / 2`
-fi
+WIDTH="$1"
+HEIGHT="$2"
+BOOTANIOUT="$ANDROID_PRODUCT_OUT/obj/BOOTANIMATION"
 
-if [ -f "/usr/bin/convert" ]; then
-if [ -f "$ANDROID_PRODUCT_OUT/system/media/bootanimation.zip" ]; then
-    echo "$ANDROID_PRODUCT_OUT/system/media/bootanimation.zip"
+if [ "$HEIGHT" -lt "$WIDTH" ]; then
+    IMAGEWIDTH="$HEIGHT"
 else
-RESOLUTION=""$WIDTH"x"$HEIGHT""
-
-mkdir -p $ANDROID_PRODUCT_OUT/obj/BOOTANIMATION/bootanimation/part{0..4}
-tar xvfp "$PWD/vendor/bliss/bootanimation/bootanimation.tar" --to-command="convert - -resize '$RESOLUTION' \"png8:$ANDROID_PRODUCT_OUT/obj/BOOTANIMATION/bootanimation/\$TAR_FILENAME\""
-# create desc.txt
-echo "$RWIDTH" "$RHEIGHT" 60 > "$ANDROID_PRODUCT_OUT/obj/BOOTANIMATION/bootanimation/desc.txt"
-cat "$PWD/vendor/bliss/bootanimation/desc.txt" >> "$ANDROID_PRODUCT_OUT/obj/BOOTANIMATION/bootanimation/desc.txt"
-
-# create bootanimation.zip
-cd "$ANDROID_PRODUCT_OUT/obj/BOOTANIMATION/bootanimation"
-
-if [ ! -d "$ANDROID_PRODUCT_OUT/system/media" ]; then
-mkdir -p "$ANDROID_PRODUCT_OUT/system/media"
+    IMAGEWIDTH="$WIDTH"
 fi
 
-zip -r0 "$ANDROID_PRODUCT_OUT/system/media/bootanimation.zip" .
-echo "$ANDROID_PRODUCT_OUT/system/media/bootanimation.zip"
+IMAGESCALEWIDTH="$IMAGEWIDTH"
+IMAGESCALEHEIGHT=$(expr $IMAGESCALEWIDTH / 2)
 
-fi
-fi
+IMAGEHEIGHT=$(expr $IMAGEWIDTH / 2)
+
+RESOLUTION=""$IMAGEWIDTH"x"$IMAGEHEIGHT""
+
+for part_cnt in 0 1 2
+do
+    mkdir -p $ANDROID_PRODUCT_OUT/obj/BOOTANIMATION/bootanimation/part$part_cnt
+done
+tar xfp "vendor/bliss/bootanimation/bootanimation.tar" -C "$BOOTANIOUT/bootanimation/"
+mogrify -resize $RESOLUTION -colors 250 "$BOOTANIOUT/bootanimation/"*"/"*".jpg"
+
+# Create desc.txt
+echo "$IMAGESCALEWIDTH $IMAGESCALEHEIGHT" 25 > "$BOOTANIOUT/bootanimation/desc.txt"
+cat "vendor/bliss/bootanimation/desc.txt" >> "$BOOTANIOUT/bootanimation/desc.txt"
+
+# Create bootanimation.zip
+cd "$BOOTANIOUT/bootanimation"
+
+zip -qr0 "$BOOTANIOUT/bootanimation.zip" .
diff --git a/config/bliss_packages.mk b/config/bliss_packages.mk
index f382265..daa438f 100644
--- a/config/bliss_packages.mk
+++ b/config/bliss_packages.mk
@@ -1,3 +1,3 @@
-# Bliss Packages
+# Boot Animation
 PRODUCT_PACKAGES += \
-    BlissBootAnimation
+    bootanimation.zip
diff --git a/prebuilt/common/bin/blacklist b/prebuilt/common/bin/blacklist
old mode 100644
new mode 100755
