git: 753f37087249 - main - net/teddycloud: update to 0.6.2
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 05 Nov 2024 06:56:00 UTC
The branch main has been updated by mfechner: URL: https://cgit.FreeBSD.org/ports/commit/?id=753f37087249da4f51266d10e1b7de53cc98bc64 commit 753f37087249da4f51266d10e1b7de53cc98bc64 Author: Matthias Fechner <mfechner@FreeBSD.org> AuthorDate: 2024-11-04 15:02:48 +0000 Commit: Matthias Fechner <mfechner@FreeBSD.org> CommitDate: 2024-11-05 06:51:40 +0000 net/teddycloud: update to 0.6.2 Thanks to Michael (maintainer) for fixing the linker issue, see also here: https://github.com/toniebox-reverse-engineering/teddycloud/pull/242 The next release of teddycloud will include all necessary modifications, so patches can be removed from ports with a newer release. Changes: https://github.com/toniebox-reverse-engineering/teddycloud/releases PR: 282541 Approved by: freebsd@pe82.de (maintainer) --- net/teddycloud/Makefile | 28 ++++++++---- net/teddycloud/distinfo | 26 +++++------ net/teddycloud/files/patch-Makefile | 48 +++++++++++++++++--- .../patch-src_cyclone_common_compiler__port.h | 11 +++++ net/teddycloud/pkg-message | 27 +++++++++++ net/teddycloud/pkg-plist | 52 ++++++++++++++++++---- 6 files changed, 156 insertions(+), 36 deletions(-) diff --git a/net/teddycloud/Makefile b/net/teddycloud/Makefile index f10e5cd2e34b..c977e360fb62 100644 --- a/net/teddycloud/Makefile +++ b/net/teddycloud/Makefile @@ -1,10 +1,10 @@ PORTNAME= teddycloud DISTVERSIONPREFIX= tc_v -DISTVERSION= 0.3.5 +DISTVERSION= 0.6.2 CATEGORIES= net # Get the latest commit hashes here: https://github.com/toniebox-reverse-engineering/tonies-json/commits/release/ # NOTE: remove the existing tonies.json and tonieboxes.json from DISTDIR before you do a `make makesum` -MASTER_SITES= https://raw.githubusercontent.com/toniebox-reverse-engineering/tonies-json/d3bde1c301cc509ffced79bb08b40ec769029bbe/:toniesjson +MASTER_SITES= https://raw.githubusercontent.com/toniebox-reverse-engineering/tonies-json/85a888e355f20ef300e581ad11feb4ac623e62d6/:toniesjson DISTFILES= tonies.json:toniesjson \ tonieboxes.json:toniesjson EXTRACT_ONLY= ${DISTFILES:N*\:toniesjson:C/\:.*//} @@ -34,15 +34,28 @@ GH_SUBDIR= cJSON:cJSON ogg:ogg opus:opus teddycloud_web:teddycloud_web \ # find versions here clone the repository and switch to tag # git submodule update # git submodule -GH_TAGNAME= v1.7.17:cJSON \ - v1.3.5:ogg \ - v1.4:opus \ - ad73bfa:teddycloud_web \ +GH_TAGNAME= v1.7.15-33-gacc7623:cJSON \ + v1.3.5-9-gdb5c7a4:ogg \ + v1.4-7-g101a71e0:opus \ + tcw_v0.6.2:teddycloud_web \ v2.3.2:cyclone_common,cyclone_crypto,cyclone_ssl,cyclone_tcp USE_RC_SUBR= teddycloudd MAKE_ENV+= CONFIG_RUNTIME_BASE_PATH=${PREFIX}/etc/teddycloud \ - RUNTIME_BASE_PATH=${PREFIX}/share/teddycloud + RUNTIME_BASE_PATH=${PREFIX}/share/teddycloud \ + NO_SANITIZERS=1 +# can be used if https://github.com/toniebox-reverse-engineering/teddycloud/pull/243 is included +# and patch for Makefile is then obsolete +# GIT_DIRTY=0 \ +# GIT_BUILD_TIME="2024-10-26 18:14:34 +0000" \ +# GIT_SHORT_SHA=203f12d \ +# GIT_SHA=203f12d3d357d16268b83c7bdedb332820b9e87a \ +# GIT_TAG=tc_v0.6.2 \ +# WEB_GIT_DIRTY=0 \ +# WEB_GIT_BUILD_TIME="2024-10-26 06:25:22 +0200" \ +# WEB_GIT_SHORT_SHA=e4d9fc1 \ +# WEB_GIT_SHA=e4d9fc19e493933c2020be2d40ee5de2f07d7eef \ +# WEB_GIT_TAG=tcw_v0.6.2 # This did reliably fail due to some unknown deps when using parallel build MAKE_JOBS_UNSAFE= yes ALL_TARGET= preinstall @@ -53,7 +66,6 @@ pre-install: @${CP} ${DISTFILES:M*\:toniesjson:C/\:.*//:S,^,${_DISTDIR},} ${WRKSRC}/install/pre/config/ do-install: - ${INSTALL_PROGRAM} ${WRKSRC}/install/pre/teddycloud ${STAGEDIR}${PREFIX}/bin ${INSTALL_PROGRAM} ${WRKSRC}/install/pre/teddycloud ${STAGEDIR}${PREFIX}/bin @${MKDIR} ${STAGEDIR}${DATADIR}/certs @(cd ${WRKSRC}/install/pre/certs && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/certs) diff --git a/net/teddycloud/distinfo b/net/teddycloud/distinfo index fd6908c8e56e..b5004bef8048 100644 --- a/net/teddycloud/distinfo +++ b/net/teddycloud/distinfo @@ -1,18 +1,18 @@ -TIMESTAMP = 1730528281 -SHA256 (tonies.json) = 1316eb7076dc49fe49fd51b8843cb29285090c574201714bf97898955c2cb243 -SIZE (tonies.json) = 5006642 +TIMESTAMP = 1730732169 +SHA256 (tonies.json) = 074396727ba9738c5061bb3e22bb2e505af255adecd00b07444465ee7083156e +SIZE (tonies.json) = 5035861 SHA256 (tonieboxes.json) = de50e30f844dcf743617337ba158b67498117f9c459b9ca4d26097aa3cb6b36f SIZE (tonieboxes.json) = 2736 -SHA256 (toniebox-reverse-engineering-teddycloud-tc_v0.3.5_GH0.tar.gz) = eeec26b7375e4ed4a496564930b382be659f117bdf1a0de2146650dec3b35517 -SIZE (toniebox-reverse-engineering-teddycloud-tc_v0.3.5_GH0.tar.gz) = 4758871 -SHA256 (toniebox-reverse-engineering-teddycloud_web-ad73bfa_GH0.tar.gz) = b9cc6afeca96da521a0014135de87a427cfaed13f55c77acef7b75483a5039fa -SIZE (toniebox-reverse-engineering-teddycloud_web-ad73bfa_GH0.tar.gz) = 386567 -SHA256 (DaveGamble-cJSON-v1.7.17_GH0.tar.gz) = c91d1eeb7175c50d49f6ba2a25e69b46bd05cffb798382c19bfb202e467ec51c -SIZE (DaveGamble-cJSON-v1.7.17_GH0.tar.gz) = 353748 -SHA256 (xiph-ogg-v1.3.5_GH0.tar.gz) = f6f1b04cfa4e98b70ffe775d5e302d9c6b98541f05159af6de2d6617817ed7d6 -SIZE (xiph-ogg-v1.3.5_GH0.tar.gz) = 251765 -SHA256 (xiph-opus-v1.4_GH0.tar.gz) = 659e6b223e42a51b0a898632b9a5f406ccd5c2e00aa526ddd1264789774b94e5 -SIZE (xiph-opus-v1.4_GH0.tar.gz) = 851780 +SHA256 (toniebox-reverse-engineering-teddycloud-tc_v0.6.2_GH0.tar.gz) = 1cb3436f5099ddcaaca4b32021d7fa269c1359b257542ad31aa3bc9fbb13099f +SIZE (toniebox-reverse-engineering-teddycloud-tc_v0.6.2_GH0.tar.gz) = 11587377 +SHA256 (toniebox-reverse-engineering-teddycloud_web-tcw_v0.6.2_GH0.tar.gz) = aecff11ca81d0c2c9af238202e71797f21ddcd2c1ab9f5f7e40cab45a041a2a2 +SIZE (toniebox-reverse-engineering-teddycloud_web-tcw_v0.6.2_GH0.tar.gz) = 6844210 +SHA256 (DaveGamble-cJSON-v1.7.15-33-gacc7623_GH0.tar.gz) = a87a20cbe1245922a8b19fd586b0e2567a5c56a57f9e2d283dbea23a5722a519 +SIZE (DaveGamble-cJSON-v1.7.15-33-gacc7623_GH0.tar.gz) = 354833 +SHA256 (xiph-ogg-v1.3.5-9-gdb5c7a4_GH0.tar.gz) = fac013405bc8ac0e1754b2de64455bc2d73c06ef181df8eb3b48d6addecd69c1 +SIZE (xiph-ogg-v1.3.5-9-gdb5c7a4_GH0.tar.gz) = 251955 +SHA256 (xiph-opus-v1.4-7-g101a71e0_GH0.tar.gz) = d6410f6fb6334672a8b4d1441a8549a6e972a811509b61b77c349a4ef553ac14 +SIZE (xiph-opus-v1.4-7-g101a71e0_GH0.tar.gz) = 855253 SHA256 (Oryx-Embedded-Common-v2.3.2_GH0.tar.gz) = 0a251e8a3674f777e33f01a825be0f55b2092bedbedd058b579b0e00d1b0119d SIZE (Oryx-Embedded-Common-v2.3.2_GH0.tar.gz) = 45692 SHA256 (Oryx-Embedded-CycloneCRYPTO-v2.3.2_GH0.tar.gz) = a37d72648d3e551a9d02106ed42fca5622a3b27d3f7f8540117fe1eb9bfde3cf diff --git a/net/teddycloud/files/patch-Makefile b/net/teddycloud/files/patch-Makefile index 97473952121d..1b889c0270f5 100644 --- a/net/teddycloud/files/patch-Makefile +++ b/net/teddycloud/files/patch-Makefile @@ -1,6 +1,15 @@ ---- Makefile.orig 2024-01-22 13:39:05 UTC +--- Makefile.orig 2024-10-26 18:14:34 UTC +++ Makefile -@@ -40,11 +40,11 @@ else +@@ -24,7 +24,7 @@ else + build_os_id:="windows" + else + SHELL_ENV ?= bash +- build_arch:="$(shell arch)" ++ build_arch:="$(shell uname -m)" + build_os_id:="$(shell grep "^ID=" /etc/os-release | cut -d'=' -f2- | tr -d '"')" + endif + +@@ -47,11 +47,11 @@ endif build_rawDateTime:="${shell date "+%Y-%m-%d %H:%M:%S %z"}" endif @@ -10,10 +19,37 @@ -build_gitSha:=${shell git rev-parse HEAD} -build_gitTag:=${shell git name-rev --tags --name-only $(build_gitSha)} +build_gitDirty:=0 -+build_gitDateTime:="2024-01-22 13:39:05 +0000" -+build_gitShortSha:=8602da9 -+build_gitSha:=8602da92d1080e67c678f476d4cf4de008aa857e -+build_gitTag:=tc_v0.3.5 ++build_gitDateTime:="2024-10-26 18:14:34 +0000" ++build_gitShortSha:=203f12d ++build_gitSha:=203f12d3d357d16268b83c7bdedb332820b9e87a ++build_gitTag:=tc_v0.6.2 build_platform:=$(PLATFORM) build_os:="$(OS)" +@@ -70,12 +70,12 @@ endif + CFLAGS_VERSION+=-DBUILD_VERSION=\"${build_version}\" + endif + +-web_gitDirty:=${shell cd $(WEB_SRC_DIR) && git diff --quiet && echo '0' || echo '1'} +-web_gitDateTime:="${shell cd $(WEB_SRC_DIR) && git log -1 --format=%ai}" +-web_gitShortSha:=${shell cd $(WEB_SRC_DIR) && git rev-parse --short HEAD} +-web_gitSha:=${shell cd $(WEB_SRC_DIR) && git rev-parse HEAD} +-web_gitTag:=${shell cd $(WEB_SRC_DIR) && git name-rev --tags --name-only $(web_gitSha)} +-web_gitTagPrefix:=$(firstword $(subst _, ,$(web_gitTag))) ++web_gitDirty:=0 ++web_gitDateTime:="2024-10-26 06:25:22 +0200" ++web_gitShortSha:=e4d9fc1 ++web_gitSha:=e4d9fc19e493933c2020be2d40ee5de2f07d7eef ++web_gitTag:=tcw_v0.6.2 ++web_gitTagPrefix:=tcw + web_version:=vX.X.X + CFLAGS_VERSION+=-DWEB_GIT_IS_DIRTY=${web_gitDirty} -DWEB_GIT_DATETIME=\"${web_gitDateTime}\" -DWEB_RAW_DATETIME=\"${web_rawDateTime}\" -DWEB_GIT_SHORT_SHA=\"${web_gitShortSha}\" -DWEB_GIT_SHA=\"${web_gitSha}\" -DWEB_GIT_TAG=\"${web_gitTag}\" + ifeq ($(web_gitTagPrefix),tcw) +@@ -153,6 +153,7 @@ CFLAGS_linux += -DFFMPEG_DECODING + endif + CFLAGS_linux += -ggdb + CFLAGS_linux += -DFFMPEG_DECODING ++LFLAGS_linux += -pthread -lm + + # for now enable extensive error checking + # Add flags for extensive error checking if NO_SANITIZERS is not set to 1 diff --git a/net/teddycloud/files/patch-src_cyclone_common_compiler__port.h b/net/teddycloud/files/patch-src_cyclone_common_compiler__port.h new file mode 100644 index 000000000000..87fdd492b8bf --- /dev/null +++ b/net/teddycloud/files/patch-src_cyclone_common_compiler__port.h @@ -0,0 +1,11 @@ +--- src/cyclone/common/compiler_port.h.orig 2024-11-04 17:31:41 UTC ++++ src/cyclone/common/compiler_port.h +@@ -106,7 +106,7 @@ typedef unsigned int uint_t; + #define PRIXSIZE "X" + #define PRIuTIME "lu" + //Linux GCC compiler +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__unix__) + #define PRIuSIZE "zu" + #define PRIXSIZE "zX" + #define PRIuTIME "lu" diff --git a/net/teddycloud/pkg-message b/net/teddycloud/pkg-message new file mode 100644 index 000000000000..ac425a3cd868 --- /dev/null +++ b/net/teddycloud/pkg-message @@ -0,0 +1,27 @@ +[ +{ type: install + message: <<EOM +Teddycloud will require exclusive access to following ports: +80: HTTP port for the webinterface +8443: HTTPS port for the webinterface +443: HTTPS API port for Toniebox API + +If you have already daemons running using these ports like nginx, apache, haproxy +it is best to bind an alias IP (second ip) to your network card and use that exclusively +with teddycloud. + +You can tell teddycloud to use this IP. +At first you must start teddycloud that the config file /usr/local/etc/teddycloud/config.ini is created with command: +teddycloud + +After this you can change the IP teddycloud is using: +core.server.bind_ip=_your_alias_ip_for_teddycloud + +To start teddycloud at startup: +sysrc teddycloudd_enable="YES" + +To start in background: +service teddycloud start +EOM +} +] diff --git a/net/teddycloud/pkg-plist b/net/teddycloud/pkg-plist index 3948fc8ce1bc..fcec3b5efd62 100644 --- a/net/teddycloud/pkg-plist +++ b/net/teddycloud/pkg-plist @@ -1,6 +1,7 @@ bin/teddycloud %%ETCDIR%%/tonies.custom.json %%ETCDIR%%/tonies.json +%%ETCDIR%%/tonieboxes.custom.json %%ETCDIR%%/tonieboxes.json %%DATADIR%%/data/www/404.html %%DATADIR%%/data/www/encode_test.html @@ -8,23 +9,56 @@ bin/teddycloud %%DATADIR%%/data/www/img_custom.png %%DATADIR%%/data/www/img_empty.png %%DATADIR%%/data/www/img_unknown.png -%%DATADIR%%/data/www/index.html +%%DATADIR%%/data/www/legacy.html +%%DATADIR%%/data/www/library/babel.js %%DATADIR%%/data/www/library/esptool.js -%%DATADIR%%/data/www/web/asset-manifest.json +%%DATADIR%%/data/www/library/react-dom.development.js +%%DATADIR%%/data/www/library/react.development.js +%%DATADIR%%/data/www/robots.txt +%%DATADIR%%/data/www/web/assets/3200_pcb-Dxz0Vi-z.png +%%DATADIR%%/data/www/web/assets/3235_pcb-BE0vs2bl.png +%%DATADIR%%/data/www/web/assets/cc3200-B-jSkbsy.jpg +%%DATADIR%%/data/www/web/assets/cc3235-Cr21bWbC.jpg +%%DATADIR%%/data/www/web/assets/cc3235_flash-D2YMWv70.jpg +%%DATADIR%%/data/www/web/assets/cc3235_smd_grippers-MdbEjaZo.jpg +%%DATADIR%%/data/www/web/assets/esp32-BPYaDt9v.js +%%DATADIR%%/data/www/web/assets/esp32-B_b6hCjy.jpg +%%DATADIR%%/data/www/web/assets/esp32_pcb-CWEYHEzm.png +%%DATADIR%%/data/www/web/assets/esp32_pcb_clamp-Cw2o3uco.png +%%DATADIR%%/data/www/web/assets/esp32_write_patched_image_with_esptools-DmsBlrjp.png +%%DATADIR%%/data/www/web/assets/esp32c2-CtjOOsCE.js +%%DATADIR%%/data/www/web/assets/esp32c3-DDsZSfEd.js +%%DATADIR%%/data/www/web/assets/esp32c6-BRG5ZpJ8.js +%%DATADIR%%/data/www/web/assets/esp32h2-Cf8JbGZQ.js +%%DATADIR%%/data/www/web/assets/esp32p4-DfBdIAkh.js +%%DATADIR%%/data/www/web/assets/esp32s2-BOsRKhcm.js +%%DATADIR%%/data/www/web/assets/esp32s3-DkgZlzv1.js +%%DATADIR%%/data/www/web/assets/esp8266-8VKmCx7J.js +%%DATADIR%%/data/www/web/assets/index-BU1Nt4kW.css +%%DATADIR%%/data/www/web/assets/index-ChP2LRih.js +%%DATADIR%%/data/www/web/assets/logo-aw46LCqE.png +%%DATADIR%%/data/www/web/assets/openTB_step1_1-4vwQGflo.png +%%DATADIR%%/data/www/web/assets/openTB_step1_2-DIZc5DI4.png +%%DATADIR%%/data/www/web/assets/openTB_step2-DhjDRq3m.png +%%DATADIR%%/data/www/web/assets/openTB_step3-Dn6Mo3hQ.png +%%DATADIR%%/data/www/web/assets/openTB_step4-Bj5i-Kw_.png +%%DATADIR%%/data/www/web/assets/openTB_step5-DTGOEBgD.png +%%DATADIR%%/data/www/web/assets/rom-Caghk6Eh.js +%%DATADIR%%/data/www/web/assets/tb-esp32-uart-BDPWj6EB.png +%%DATADIR%%/data/www/web/assets/tb-esp32-uart-clamp-D_86EMpu.png %%DATADIR%%/data/www/web/favicon.ico %%DATADIR%%/data/www/web/index.html %%DATADIR%%/data/www/web/manifest.json %%DATADIR%%/data/www/web/robots.txt -%%DATADIR%%/data/www/web/static/css/main.e6c13ad2.css -%%DATADIR%%/data/www/web/static/css/main.e6c13ad2.css.map -%%DATADIR%%/data/www/web/static/js/main.3c1d6764.js -%%DATADIR%%/data/www/web/static/js/main.3c1d6764.js.LICENSE.txt -%%DATADIR%%/data/www/web/static/js/main.3c1d6764.js.map -%%DATADIR%%/data/www/web/static/media/getFetch.40f37ddea2378391108f.cjs -%%DATADIR%%/data/www/web/static/media/logo.2f09160138082fd1c6f8.png %%DATADIR%%/data/www/web/translations/de.json %%DATADIR%%/data/www/web/translations/en.json +%%DATADIR%%/data/www/web/translations/es.json +%%DATADIR%%/data/www/web/translations/fr.json +%%DATADIR%%/data/www/web/web_version.json @dir %%DATADIR%%/certs/client @dir %%DATADIR%%/certs/server @dir %%DATADIR%%/data/content/default +@dir %%DATADIR%%/data/firmware/ota/cc3200 +@dir %%DATADIR%%/data/firmware/ota/cc3235 +@dir %%DATADIR%%/data/firmware/ota/esp32 @dir %%DATADIR%%/data/library