From c986863adf59abb1f8e2d8bb9ae21582f5893b30 Mon Sep 17 00:00:00 2001 From: tdruez Date: Wed, 26 Mar 2025 10:33:43 +0400 Subject: [PATCH 1/2] Provide dummy wheel distributions for installing on Apple Silicon #866 Signed-off-by: tdruez --- Makefile | 5 ++-- etc/thirdparty/dummy_dist/README.txt | 24 ++++++++++++++++++ ...16.5.210525-py3-none-macosx_11_0_arm64.whl | Bin 0 -> 1248 bytes ....5.1.210525-py3-none-macosx_11_0_arm64.whl | Bin 0 -> 1360 bytes ...5.39.210223-py3-none-macosx_11_0_arm64.whl | Bin 0 -> 1285 bytes 5 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 etc/thirdparty/dummy_dist/README.txt create mode 100644 etc/thirdparty/dummy_dist/extractcode_7z-16.5.210525-py3-none-macosx_11_0_arm64.whl create mode 100644 etc/thirdparty/dummy_dist/extractcode_libarchive-3.5.1.210525-py3-none-macosx_11_0_arm64.whl create mode 100644 etc/thirdparty/dummy_dist/typecode_libmagic-5.39.210223-py3-none-macosx_11_0_arm64.whl diff --git a/Makefile b/Makefile index adfac17536..2fbf028828 100644 --- a/Makefile +++ b/Makefile @@ -26,6 +26,7 @@ VENV_LOCATION=.venv ACTIVATE?=. ${VENV_LOCATION}/bin/activate; MANAGE=${VENV_LOCATION}/bin/python manage.py VIRTUALENV_PYZ=etc/thirdparty/virtualenv.pyz +PIP_ARGS=--find-links=./etc/thirdparty/dummy_dist # Do not depend on Python to generate the SECRET_KEY GET_SECRET_KEY=`head -c50 /dev/urandom | base64 | head -c50` # Customize with `$ make envfile ENV_FILE=/etc/scancodeio/.env` @@ -51,11 +52,11 @@ virtualenv: conf: virtualenv @echo "-> Install dependencies" - @${ACTIVATE} pip install -e . + @${ACTIVATE} pip install ${PIP_ARGS} --editable . dev: virtualenv @echo "-> Configure and install development dependencies" - @${ACTIVATE} pip install -e .[dev] + @${ACTIVATE} pip install ${PIP_ARGS} --editable .[dev] envfile: @echo "-> Create the .env file and generate a secret key" diff --git a/etc/thirdparty/dummy_dist/README.txt b/etc/thirdparty/dummy_dist/README.txt new file mode 100644 index 0000000000..cc11d334c6 --- /dev/null +++ b/etc/thirdparty/dummy_dist/README.txt @@ -0,0 +1,24 @@ +Dummy Wheel Distributions for Apple Silicon (macOS ARM64) +========================================================= + +Overview +-------- +This directory provides **empty wheel distributions** designed as a workaround to +allow the installation of `ScanCode.io` on **Apple Silicon (macOS ARM64)** platforms. + +The issue arises because certain required packages, such as `extractcode-7z`, do not +offer pre-built wheels compatible with Apple Silicon. +Consequently, `pip` encounters dependency resolution errors during installation. + +Purpose +------- +The dummy wheels in this project serve as placeholders. These wheels: +- **Contain no functionality** and are completely empty. +- Allow `pip` to resolve dependencies correctly by tricking it into treating the + required package as already installed. + +Caution +------- +These dummy wheels **do not provide any actual functionality**. +They only exist to bypass `pip` dependency resolution issues and allow `ScanCode.io` +to be installed on Apple Silicon. diff --git a/etc/thirdparty/dummy_dist/extractcode_7z-16.5.210525-py3-none-macosx_11_0_arm64.whl b/etc/thirdparty/dummy_dist/extractcode_7z-16.5.210525-py3-none-macosx_11_0_arm64.whl new file mode 100644 index 0000000000000000000000000000000000000000..c18b64dea43c8fd4b24435938b05ddac30e35f37 GIT binary patch literal 1248 zcmWIWW@Zs#U|`^2$TeFT0%R~Sfe0Xw0^-z)lA^@qlH~l9R9*8b{rLFIyv&mLc)fy3 zW`+Q`&SHbAC{d@KMbf5rGgk^fn5T`!%J z`kR6@{B$*SHBO#CuNij1VEYB;Q&~lK+myxbxUWHD)1kCXU@~ zmiy|o)1&Jj*jjzM|K(VIt{d&kh-hRJm&oT&CtE)i=1-UF54&dqx)#^3D>me}nx7B#Y!_qiIPcimF_TJ5q>hwFCM=c;@7-yg_YwpKY*dC$`u z-TX`Ic@E`>^PI_awk*|CTQp5DBVIk6Df{Q2-RyL4kRv_F0)GEdd;sF41o_*c` literal 0 HcmV?d00001 diff --git a/etc/thirdparty/dummy_dist/extractcode_libarchive-3.5.1.210525-py3-none-macosx_11_0_arm64.whl b/etc/thirdparty/dummy_dist/extractcode_libarchive-3.5.1.210525-py3-none-macosx_11_0_arm64.whl new file mode 100644 index 0000000000000000000000000000000000000000..b2c0869133d6e89931835d4cd870844a98ba806e GIT binary patch literal 1360 zcmWIWW@Zs#U|`^2$TeFT0%R~Sfe0W_0^-z)lA^@qlH~l9RNb7+q{O1+jLfoB{rLFI zyv&mLc)fy3W`+Q`3AYTYqRd0uQ}lbAEG>!6oB|pS;ibZVmEStD))Tqvv_f z-}CC(lRjQLUgu8ect34gZF0@{s__+LBNL#ZPnpo%rS(f(GY06MXdpHw*1yg~oIHPCGwg!F_6y9XvWi%rKA--gO6)b; z6tShxQq&?fr-)2lR@ADpELu|}MC$dkr_YzZQhOF!RLF?tSmw024oRRR#evwGWXG1| z7sThJmZj$Cl~j~?V-GF#;E|Wv{*j-Nf#C)an~-c{kgKzQkjvEbyC*dnFgRSim+vXi zB&fUXfuN{>q0O{|YRwa3n-$i$x$dviK7LDnN4lQ;lbsr=H$!F2lH%u_Zr<_HF!_;+ zO0w5~hUw0YAHHNKS+sonnv;5zHKp@*nn1PL{vbKo=slcO`nPqzI@iQ5aghC3K7H@* zfbb2AG(Cb14|%ET33XleH|O(6vPw(Zw=MzuJjpv|FOS@> z(wdPi@3rZ5a125zQycwB9m~rPVU?_vZl130kIHw_-hb^Z;Ok-eJ(&&V09trsl-466z zgRtWk$##JA5V{5EDIH-!J1`|81qu%y*g4E>vlvLfE%%t4J^vq=a`1s7c%#!$c zy@E<+h5)$cCk9nf$?dNX+5t5=1F->;=6IN9T~j?{OFbh)10y42y_C%265Y(aw0wPE z*APb+#}LQQzPg@1o;sdac)fMC&Yd~GImqCW@xxEvXMDE?X{^-o@IB}6dG+i`pHsd* z=Y5_vX&YTN-gd><$OLHIGbS{*X#En`i~+hK8i;jCa7(y{tE&(9c@N*S7ZI+wV*H@U z|E#yJm(EH3O+gxdx|+HgC(obP47*^k{Q~o;tRmK@&!@kr5_`=yMQrJ_6tzgrDI!ys z6}74?i`Engk$U~?>GP$p)SiVF6*8hZ^U}B2Kv3ul0kJ6w&Me6ed;- z%ch@<)q_8ND=&Uq-S}Quc)4qQ(8|Q?X8%)a-5_LV+M4|(!iy$cpMBWu zl&a9~TrJ6Y&hr(Ie!pfhf5-H=Z>zPc-U%(xIb!db7G(5fs%rMCMVZ<=Q<^74l)s*? zE^_-q-`h&h;IDxTbXJ^peE-Tv>X?~quJwn2=lN5&|2$x?|1M7J)}4d5{_ODN=a7AV zICJ^j)py(%Yh2W{Gx{&{=(SzV^}PP8cg}88D}592pU;Lh;??o?7nYeXy3IC89Ia8c z(R5<0_4bTQZeJMYdwxY+bhzNm4|7T<$mY+C3*qx>*!A Date: Wed, 26 Mar 2025 10:53:33 +0400 Subject: [PATCH 2/2] Add changelog entry #1646 Signed-off-by: tdruez --- CHANGELOG.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index a09373e288..977caa159f 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -9,6 +9,9 @@ v34.10.1 (unreleased) Resolving requirements.txt files will now return proper license data. https://github.com/aboutcode-org/scancode.io/issues/1598 +- Add support for installing on Apple Silicon (macOS ARM64) in dev mode. + https://github.com/aboutcode-org/scancode.io/pull/1646 + v34.10.0 (2025-03-21) ---------------------