From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id QNO4BnuRBGH0IAEAgWs5BA (envelope-from ) for ; Sat, 31 Jul 2021 01:55:39 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id iDlBAnuRBGFBfQAAbx9fmQ (envelope-from ) for ; Fri, 30 Jul 2021 23:55:39 +0000 Received: from mail.notmuchmail.org (nmbug.tethera.net [144.217.243.247]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 54A3521682 for ; Sat, 31 Jul 2021 01:55:38 +0200 (CEST) Received: from nmbug.tethera.net (localhost [127.0.0.1]) by mail.notmuchmail.org (Postfix) with ESMTP id 281EF2921E; Fri, 30 Jul 2021 19:55:34 -0400 (EDT) Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com [IPv6:2a00:1450:4864:20::62d]) by mail.notmuchmail.org (Postfix) with ESMTPS id CD9E31FBCD for ; Sun, 18 Apr 2021 21:05:31 -0400 (EDT) Received: by mail-ej1-x62d.google.com with SMTP id r20so513426ejo.11 for ; Sun, 18 Apr 2021 18:05:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:from:subject:autocrypt:message-id:date:user-agent:mime-version :content-language; bh=iqW0aXZx4S0/cNWWqJitRFtxPzFUcGPQbYo0hJEzi9A=; b=cGjsYjkDBIT3McZ5gOjmJFWDHpGX4TmLUz6D5fGZWU1EskTP3b8x5lhAX/I7emmdvj 4Zkg7fAGEgb39mv0PjX6DZ/X3gdF0HBKLtNq7t5lp4c7fKGzJMBgaEVGg123ieMvLdFF bhAlJd9WdH76o0L/NT1Eizxdsvy8FdYv9jg4iuL0bp9MO4x6bWazDuQnVsFbnBC5peHY WryGKhqWJMJdn1BaJgIo4e0qW0+fFUD0rRLzwPOc54Xd3e5c0ceuIqB1TIReGF4U4Agq cY7UMqM9k5MqyotylvmT69mWJO8LbfZWhpKtDLF80QcAHLvUWxoKb2UE+eZruN6Xg/d7 EIlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:subject:autocrypt:message-id:date :user-agent:mime-version:content-language; bh=iqW0aXZx4S0/cNWWqJitRFtxPzFUcGPQbYo0hJEzi9A=; b=nYAY40TxWpwVnBRLQfW2H3Y4veR4NEDciy07GQcHX0qfBaRP0NuzEvAsykRsY+UVow fqNQPIpmP15BTP/mnjKIJFyn5uUtQ+NCqwZ29QmA2vrxnhZAvV6siFW+jep0mXjQoLGt G5RO9dSvPXTi8eucIBTmvPdepCb1HgvqH/qsThh/g24QbhBRwQO4zFvFDIQXRy/nEYNM sgZFfiCPncMBCgwDTVS+IPLGunrMPurLNz39I4GDhj3+yZ2wtUu50ht5Qsr4+5NojyD/ jBeGWxm3MG8jAy4Z4+LDivwGKHa+2H+ixCchN0a1LMlWfzYlTKCaKQNOgDlTpSGnf3tY X0hw== X-Gm-Message-State: AOAM533L8lUwzclA8v6RqDSGf8Yo65ykVq9Hiw3cptLzFum9fsQHmfXh 6RIoDCRIe5tuiV52M+cNXFTSDRybI/xEpNSnZbvpjw== X-Google-Smtp-Source: ABdhPJz4iLH1v6K/4tL4Avxoa0TcmMXAu0pdRZiUIccYvZ50Zu2jM54AOFcgZa/aPcOz+2m8oB2pBg== X-Received: by 2002:a17:906:2c4a:: with SMTP id f10mr19808990ejh.63.1618794330667; Sun, 18 Apr 2021 18:05:30 -0700 (PDT) Received: from Margaret-Hamilton.local ([138.199.18.114]) by smtp.gmail.com with ESMTPSA id r25sm11788351edv.78.2021.04.18.18.05.29 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 18 Apr 2021 18:05:30 -0700 (PDT) To: notmuch@notmuchmail.org From: Dominyk Tiller Subject: macOS globals.py issue Autocrypt: addr=dominyktiller@gmail.com; keydata= mQINBFOnIrUBEACvVbvEJfRBvhUKPFgGbplIx+LXkkcv96O28CzGLa1l6qESXi6WsN1ovG71 GJKxRkvK9FKVrxNYVEzHHPKXEBa71Od/aJtBjNYI5Mx8YAGQ7OxIZzPt0DQu3HhA7o/yg2Tk IxT5wD8Np8dBH51ffzcVa17wEJZ255kMP/geQ2Tm7bymiLxnx7M2z1WiMWC+Pihwe7XdlMVs iu7bgiCvCTUcO+1TLs2rNBc1b6d3J1368szNNwuLoSVPAzBHz76cI4YS4bSqxvj6qgfZCUMa WszAa8MPkHMIdyNSY8LXG6uMFV12LrvIMkyrgYnh1bQL2GkQb4Xb2lD4ehyzfY0qCcL+gUzT HRs7qlJUYsZgWTPuv9aIJn8i+tswn0lkanWEFSnWlih3pRhaZrtbk7wqtjENiMvlflWqBVCn cAJx1WJbh8bEJ4KxkYekDLGQvHxeaiTj8eJUsAZ7YSHYt5a+XEGj8gGLkkc8CcGjN/QSqsft MTkk0J6phZSRBu4akk4njd2/CZH4WlqJFnZbptWWa8dpKQ5eziYgwERMrY8lPfMtNHMUtQgi pwZ0LSNa0zDOMhMm2ol+ZnTO5dwNGuwA11Qdo3nfbQXibpW4RGsAQ+znrhlsJRrWLP7VnuA+ gt3ElgL7CW27o/WSsgoRMC13WFS1pM/PMQ4/w9/dYrDG6bl8vQARAQABtC1Eb21pbnlrIFRp bGxlciAoVFMpIDxkb21pbnlrdGlsbGVyQGdtYWlsLmNvbT6JAj0EEwEKACcFAlOnIrUCGwMF CQtJ2AAFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQtEfwU+K/2K095g/7B6oyvXYDlhGR DNSg69svI0Jfqz13a4fytOsZUqhpBt5POOeB3SOUdER6kPVI7X5e7PzNM+TCaIBKjqzNkl5T duR1gcUCwVdyKm+MUz7+E6XSWXsu+LVz6Z1Ys8XMbUE2VSL1EIQxbDwRviGXYtFGEJ2/iuG5 qtlB5mqErqKO6WEvB3d44QNMG0H2HT257GjU8XhP5kApsBwuozInq5cYZaIv8S1lLlqIPsYi 7lrWOarNmWBhtRhhQMRIdgaC2Ff5r5KfKzOi9dlroVf4cB8zX66c99W4abbSNjoPsvypaZ4x kmDLCSm9Wv5cyZAzy/Iv+XV4gN/0exco7mOh3/+TveUrEcdOW0mBuCCv6pe5dQg8arYxoruU AXdZUQafVX6m01ME28yHc/Z1Ko2KPQuiiE2KWVQPEBeFtHGj/WpEOvY+ct62aY6lS464a7qH sx47bnyk1QgQOm/rbi/b7DWuwTJ3DlC1FkMlt1MEyRz1yj2QQbQHk1pjrwwjNx5s3tOm7/Es oghnoWMt26/EzrwW9HRKm4bBOuhD3MfUg8zSjjJ5ioJbYs3N9s/TmaQf5TF3NEBWp4fki2LH 4TcXK88t6OOraxxym8TtAy3C6FU6aWeDIbv7zuhRxfQdpO/nMqniE0I3RQuiPbdOTh8tN7Ac 08IbnsHunY/Hpjuk8WzGIq0= Message-ID: <126f98c9-c42b-7cfd-cdd3-d8d009e61143@gmail.com> Date: Mon, 19 Apr 2021 02:05:27 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.16; rv:52.0) Gecko/20100101 PostboxApp/7.0.47 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------259CB32386C11B936EDD47A0" Content-Language: en-US X-MailFrom: dominyktiller@gmail.com X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-notmuch.notmuchmail.org-0 Message-ID-Hash: POCVVHPKNDZK5YGIHMW6NPVAPX3TT4V7 X-Message-ID-Hash: POCVVHPKNDZK5YGIHMW6NPVAPX3TT4V7 X-Mailman-Approved-At: Fri, 30 Jul 2021 23:55:32 -0400 X-Mailman-Version: 3.2.1 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1627689338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type:list-id: list-help:list-unsubscribe:list-subscribe:list-post:dkim-signature:autocrypt:autocrypt; bh=FPLjMffuHtrdW6YSVMLAjEN+IHOmCI00DsDyqpV1V/I=; b=jKLQaDt2PqYFkx+vVkaHPE3brNvxZMIg9qKubT22k/zsrt68dpQirwh+piuZsu/F6eEhEv dBN5rAmuxgyOFP6WuZf/mHfgBmknXmLrWulnTAyUljaT4+onLOiW3dJa386iioyYDyipPd suIiunUBKH8qDAjBDxRvfafE7M37jFLRQRwJXCKaOMx5g8UQj1W6u4eUDfI333/xyXAEPN hxoi9GRuiO4IXdaFe0EiSLV8J/jkVhGe1MphSxFML3NPVN8JuXrEDZhp/87QEPbPZPr5RN cMyAZhvqmhTTgChNMY4nXAsxhr4iOYkPiQau9aJlzKFmi17HoGDOBkL0ydu11w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1627689338; a=rsa-sha256; cv=none; b=ZIxLe0RLb+8zOizJeq76bfPRuwSYM2XcqT/Jh1jNvUkDFPhAssjvD9KJaPL44rjIXb1Hih g4iL8hP3IpPAbsLU3t1UsPRW3JGzIZrtUenm8zx+2zIAAdmrV4Lms7MJcnKu1ISVGT27mp kjq2W9tuWOxUO0wdLBpXEq2vYH2bAEDpC1t/vSWvqpnzuKhGc+EFyY0wl6haXuuEEzNYQB u95P6VsurRElSJ3DnhJcTWKlG+Cdra5Al1F6pawXjxWspzlh+40lz/4pNWtSHbIohBw+ly +NeyUwzjEtwQ8U0UiQOsc0n3kq6pXxhnAraZn11bwZ6MaLuJ+1SzbetTAiIRrQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=gmail.com header.s=20161025 header.b=cGjsYjkD; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 144.217.243.247 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Spam-Score: 2.19 Authentication-Results: aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=gmail.com header.s=20161025 header.b=cGjsYjkD; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 144.217.243.247 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Queue-Id: 54A3521682 X-Spam-Score: 2.19 X-Migadu-Scanner: scn1.migadu.com X-TUID: nODudQcp3P2K This is a multi-part message in MIME format. --------------259CB32386C11B936EDD47A0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi there, I believe there's potentially a bug in the handling of signposting the notmuch dynamic library when installed in non-standard prefixes. For example, Homebrew moved their standard prefix on macOS from /usr/local to /opt/homebrew for machines running with Apple's ARM-based chip(s), which has caused another piece of software (https://github.com/pazz/alot) to fail to find `notmuch.dylib` because of the way `globals.py` handles it. With notmuch installed in /opt/homebrew and notmuch's library available in /opt/homebrew/lib, alot builds successfully but then aborts at runtime because it cannot find the shared library: ``` ~> alot Traceback (most recent call last): =C2=A0 File "/opt/homebrew/opt/notmuch/lib/python3.9/site-packages/notmuch/globals.py= ", line 28, in =C2=A0=C2=A0=C2=A0 nmlib =3D CDLL("libnotmuch.{0:s}.dylib".format(SOVERSI= ON)) =C2=A0 File "/opt/homebrew/Cellar/python@3.9/3.9.4/Frameworks/Python.framework/Versio= ns/3.9/lib/python3.9/ctypes/__init__.py", line 374, in __init__ =C2=A0=C2=A0=C2=A0 self._handle =3D _dlopen(self._name, mode) OSError: dlopen(libnotmuch.5.dylib, 6): image not found ``` I've attached a patch that resolves the issue for me locally using Homebrew installed in /opt/homebrew, and I expect as long as a user's custom python was configured to search the path it was installed inside (by modifying `DEFAULT_LIBRARY_FALLBACK` in `macholib/dyld.py`) it should work for any custom prefix on macOS. You may well be able to achieve the same result a different way, my python knowledge is fairly rusty. Hope this helps, Dominyk =3D=3D=3D Sent from macOS --------------259CB32386C11B936EDD47A0 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="macos_find_lib.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="macos_find_lib.patch" RnJvbSAwMTNiZGY0NTRkYjAwNjcwMDViZDQ4MWVjMGZhOGU5YmE3ZDU0NmM0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEb21pbnlrIFRpbGxlciA8ZG9taW55a3RpbGxlckBn bWFpbC5jb20+CkRhdGU6IE1vbiwgMTkgQXByIDIwMjEgMDE6NTg6MDggKzAxMDAKU3ViamVj dDogW1BBVENIXSBnbG9iYWxzLnB5OiB1c2UgZmluZF9saWJyYXJ5IHRvIGhlbHAgbG9jYXRl IG1hY29zIGR5bGliCgpUaGlzIChJIHRoaW5rISkgZml4ZXMgYSBidWcgaW4gdGhlIGhhbmRs aW5nIG9mIHNpZ25wb3N0aW5nIHRoZQpub3RtdWNoIGR5bmFtaWMgbGlicmFyeSB3aGVuIGlu c3RhbGxlZCBpbiBub24tc3RhbmRhcmQgcHJlZml4ZXMuCkZvciBleGFtcGxlLCBIb21lYnJl dyBtb3ZlZCB0aGVpciBzdGFuZGFyZCBwcmVmaXggb24gbWFjT1MgZnJvbQovdXNyL2xvY2Fs IHRvIC9vcHQvaG9tZWJyZXcgd2l0aCB0aGUgcmVsZWFzZSBvZiBBcHBsZSdzIEFSTS1iYXNl ZCBjaGlwLAp3aGljaCBoYXMgY2F1c2VkIGFub3RoZXIgcGllY2Ugb2Ygc29mdHdhcmUgKGh0 dHBzOi8vZ2l0aHViLmNvbS9wYXp6L2Fsb3QpCnRvIGZhaWwgdG8gZmluZCBgbm90bXVjaC5k eWxpYmAgYmVjYXVzZSBvZiB0aGUgd2F5IGBnbG9iYWxzLnB5YCBoYW5kbGVzCml0LgoKV2l0 aCBib3RoIGFsb3QgYW5kIG5vdG11Y2ggaW5zdGFsbGVkIGluIC9vcHQvaG9tZWJyZXcgYW5k IG5vdG11Y2gncwpsaWJyYXJ5IGF2YWlsYWJsZSBpbiAvb3B0L2hvbWVicmV3L2xpYiwgYWxv dCBhYm9ydHMgYXQgcnVudGltZSBiZWNhdXNlCml0IGNhbm5vdCBmaW5kIHRoZSBzaGFyZWQg bGlicmFyeToKCmBgYAp+PiBhbG90ClRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0 KToKICBGaWxlICIvb3B0L2hvbWVicmV3L29wdC9ub3RtdWNoL2xpYi9weXRob24zLjkvc2l0 ZS1wYWNrYWdlcy9ub3RtdWNoL2dsb2JhbHMucHkiLCBsaW5lIDI4LCBpbiA8bW9kdWxlPgog ICAgbm1saWIgPSBDRExMKCJsaWJub3RtdWNoLnswOnN9LmR5bGliIi5mb3JtYXQoU09WRVJT SU9OKSkKICBGaWxlICIvb3B0L2hvbWVicmV3L0NlbGxhci9weXRob25AMy45LzMuOS40L0Zy YW1ld29ya3MvUHl0aG9uLmZyYW1ld29yay9WZXJzaW9ucy8zLjkvbGliL3B5dGhvbjMuOS9j dHlwZXMvX19pbml0X18ucHkiLCBsaW5lIDM3NCwgaW4gX19pbml0X18KICAgIHNlbGYuX2hh bmRsZSA9IF9kbG9wZW4oc2VsZi5fbmFtZSwgbW9kZSkKT1NFcnJvcjogZGxvcGVuKGxpYm5v dG11Y2guNS5keWxpYiwgNik6IGltYWdlIG5vdCBmb3VuZApgYGAKCkFzc3VtaW5nIHRoZSB1 c2VyL3BhY2thZ2UgbWFuYWdlci9ldGMgaGFzIGNvbmZpZ3VyZWQgdGhlaXIgUHl0aG9uCmlu IGEgc2FuZSB3YXkgYGZpbmRfbGlicmFyeWAgc2hvdWxkIGVuc3VyZSBub24tc3lzdGVtIFB5 dGhvbnMgY2FuIGZpbmQKbGlicmFyaWVzIGluIG5vbi1zdGFuZGFyZCBsb2NhdGlvbnMsIGFu ZCBJIGNhbiBhdCBsZWFzdCBjb25maXJtIHRoYXQgaXQKZml4ZXMgdGhlIHByb2JsZW0gaW4g SG9tZWJyZXcncyBjYXNlLgoKU2lnbmVkLW9mZi1ieTogRG9taW55ayBUaWxsZXIgPGRvbWlu eWt0aWxsZXJAZ21haWwuY29tPgotLS0KIGJpbmRpbmdzL3B5dGhvbi9ub3RtdWNoL2dsb2Jh bHMucHkgfCAzICsrLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL2JpbmRpbmdzL3B5dGhvbi9ub3RtdWNoL2dsb2JhbHMu cHkgYi9iaW5kaW5ncy9weXRob24vbm90bXVjaC9nbG9iYWxzLnB5CmluZGV4IDExZTMyOGI3 Li42NGY3NTQ0NCAxMDA2NDQKLS0tIGEvYmluZGluZ3MvcHl0aG9uL25vdG11Y2gvZ2xvYmFs cy5weQorKysgYi9iaW5kaW5ncy9weXRob24vbm90bXVjaC9nbG9iYWxzLnB5CkBAIC0xOCw2 ICsxOCw3IEBAIENvcHlyaWdodCAyMDEwIFNlYmFzdGlhbiBTcGFldGggPFNlYmFzdGlhbkBT U3BhZXRoLmRlPgogIiIiCiAKIGZyb20gY3R5cGVzIGltcG9ydCBDRExMLCBTdHJ1Y3R1cmUs IFBPSU5URVIKK2Zyb20gY3R5cGVzLnV0aWwgaW1wb3J0IGZpbmRfbGlicmFyeQogZnJvbSBu b3RtdWNoLnZlcnNpb24gaW1wb3J0IFNPVkVSU0lPTgogCiAjLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KQEAgLTI1LDcgKzI2LDcgQEAgZnJvbSBub3RtdWNoLnZlcnNpb24gaW1wb3J0IFNP VkVSU0lPTgogdHJ5OgogICAgIGZyb20gb3MgaW1wb3J0IHVuYW1lCiAgICAgaWYgdW5hbWUo KVswXSA9PSAnRGFyd2luJzoKLSAgICAgICAgbm1saWIgPSBDRExMKCJsaWJub3RtdWNoLnsw OnN9LmR5bGliIi5mb3JtYXQoU09WRVJTSU9OKSkKKyAgICAgICAgbm1saWIgPSBDRExMKGZp bmRfbGlicmFyeSgibGlibm90bXVjaC57MDpzfS5keWxpYiIuZm9ybWF0KFNPVkVSU0lPTikp KQogICAgIGVsc2U6CiAgICAgICAgIG5tbGliID0gQ0RMTCgibGlibm90bXVjaC5zby57MDpz fSIuZm9ybWF0KFNPVkVSU0lPTikpCiBleGNlcHQ6Ci0tIAoyLjMxLjEKCg== --------------259CB32386C11B936EDD47A0 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline --------------259CB32386C11B936EDD47A0--