@@ -4,13 +4,14 @@ INSTALL_TARGET_PROCESSES = Discord
44
55ARCHS := arm64 arm64e
66TARGET := iphone:clang:latest:15.0
7+ COMMIT_HASH := $(shell git rev-parse HEAD)
78
89include $(THEOS ) /makefiles/common.mk
910
1011TWEAK_NAME = Unbound
1112$(TWEAK_NAME)_FILES = $(shell find sources -name "* .x* " -o -name "* .m* ")
12- $(TWEAK_NAME)_CFLAGS = -fobjc-arc -DPACKAGE_VERSION='@"$(THEOS_PACKAGE_BASE_VERSION ) "' -I$(THEOS_PROJECT_DIR ) /headers
13- $(TWEAK_NAME)_FRAMEWORKS = UIKit Foundation UniformTypeIdentifiers UserNotifications
13+ $(TWEAK_NAME)_CFLAGS = -fobjc-arc -DPACKAGE_VERSION='@"$(THEOS_PACKAGE_BASE_VERSION ) "' -DCOMMIT_HASH='@" $( COMMIT_HASH ) "' -I$(THEOS_PROJECT_DIR ) /headers
14+ $(TWEAK_NAME)_FRAMEWORKS = UIKit Foundation UniformTypeIdentifiers UserNotifications Security
1415
1516BUNDLE_NAME = UnboundResources
1617$(BUNDLE_NAME)_INSTALL_PATH = "/Library/Application\ Support/"
@@ -19,17 +20,23 @@ $(BUNDLE_NAME)_RESOURCE_DIRS = "resources"
1920include $(THEOS_MAKE_PATH ) /tweak.mk
2021include $(THEOS_MAKE_PATH ) /bundle.mk
2122
23+ SHELL := /bin/bash
24+
2225before-all ::
2326 @if [ ! -d " resources" ] || [ -z " $$ (ls -A resources 2>/dev/null)" ]; then \
24- echo " Resources folder empty or missing, initializing submodule..." ; \
2527 git submodule update --init --recursive || exit 1; \
2628 fi
2729
28- $(ECHO_NOTHING)VERSION_NUM=$$(echo "$(THEOS_PACKAGE_BASE_VERSION)" | cut -d'.' -f1,2) && \
29- sed "s/VERSION_PLACEHOLDER/$$VERSION_NUM/" sources/preload.js > resources/preload.js$(ECHO_END)
30+ sed "s/VERSION_PLACEHOLDER/'$(THEOS_PACKAGE_BASE_VERSION)'/" sources/preload.js > resources/preload.js
31+
32+ @if [ -n "$$UNBOUND_PK" ]; then \
33+ echo -n "$(COMMIT_HASH)" | openssl dgst -sha256 -sign <(printf '%s' "$$UNBOUND_PK" | tr -d '\r') -out resources/signature.bin 2>/dev/null; \
34+ elif [ -f "private_key.pem" ]; then \
35+ echo -n "$(COMMIT_HASH)" | openssl dgst -sha256 -sign private_key.pem -out resources/signature.bin 2>/dev/null; \
36+ fi
3037
3138after-stage ::
32- $( ECHO_NOTHING ) find $(THEOS_STAGING_DIR ) -name " .DS_Store" -delete$( ECHO_END )
39+ find $(THEOS_STAGING_DIR ) -name " .DS_Store" -delete
3340
3441after-package ::
35- $( ECHO_NOTHING ) rm resources/preload.js$( ECHO_END )
42+ rm -f resources/preload.js resources/signature.bin
0 commit comments