From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id zO4NDCrg42ATigAAgWs5BA (envelope-from ) for ; Tue, 06 Jul 2021 06:46:34 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id 8M8VByrg42DrNQAAbx9fmQ (envelope-from ) for ; Tue, 06 Jul 2021 04:46:34 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 6AE521A802 for ; Tue, 6 Jul 2021 06:46:33 +0200 (CEST) Received: from localhost ([::1]:59508 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m0cyd-0003M3-Je for larch@yhetil.org; Tue, 06 Jul 2021 00:46:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46866) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m0cfs-000195-Hv for emacs-orgmode@gnu.org; Tue, 06 Jul 2021 00:27:08 -0400 Received: from smtp.chopps.org ([54.88.81.56]:51170) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m0cfp-0003o2-Rh for emacs-orgmode@gnu.org; Tue, 06 Jul 2021 00:27:08 -0400 Received: from ja.int.chopps.org.chopps.org (047-026-251-217.res.spectrum.com [47.26.251.217]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (Client did not present a certificate) by smtp.chopps.org (Postfix) with ESMTPSA id 70C26803F5; Tue, 6 Jul 2021 04:27:04 +0000 (UTC) References: <5B57CD8B-AA91-4C63-A449-A07364083AEE@gmail.com> <87im1ol2lb.fsf@gmail.com> <7318E1D0-613A-4301-8097-779D3FEF1105@gmail.com> User-agent: mu4e 1.5.13; emacs 27.2 From: Christian Hopps To: stardiviner Subject: Re: [new patch] Re: [PATCH] make org-notify support for macOS desktop notification Date: Tue, 06 Jul 2021 00:21:30 -0400 In-reply-to: <7318E1D0-613A-4301-8097-779D3FEF1105@gmail.com> Message-ID: MIME-Version: 1.0 Content-Type: text/plain; format=flowed Received-SPF: none client-ip=54.88.81.56; envelope-from=chopps@chopps.org; helo=smtp.chopps.org X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Tim Cross , emacs-orgmode@gnu.org Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1625546793; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=lGRBxMDUmyjehwcxa8zgL9Ka1inT7emFCztp4M32gTk=; b=TJY+dPJn6yYmoVd/mjvp62WL/ubWIHqVGpiF9qZfyuxU0auU5FSWEy9W/hwi4744j7Zlpy WAVZ80ofF2mxatM83GvCq1nOjGt7KAtQLCB5pHuXprMRubGb8DcXX+w3FPenzuNa+AMVRH W3nyM+FfSdMVPvlpt0rEJjt00DU7+46VGGEv8PzQocULAj513zCnYreXzZahgDYMjctyJt OD5c4PW47hMiZ+dIGuZB0gnQRn32gd5j5NutGWn+PZUZczI/XhKjqu0eR5pdjF5tOexVvn xy4VM3Gz1El9mJBleYypQbw+Hoi3PBwW42BwR7b2r0Px030aWYpSIbLHUHwxuQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1625546793; a=rsa-sha256; cv=none; b=c0mLg37Kq43ebW0G6I7wmmufxYGlmjU3g4VkPXqp/TfJ0wl0/Vg3bcyPAl54dwHLPH5EUq qPSUl0NsmoGbaespiPF5AremefCAL5PU9YUGVHxpC8ii6yu5yMtb7Y1bFyFSIUkUILnWmN tEwF+n2LWR8TvaOSSW9IecYh6fPK+19LQbIRrEL0gljFgVKRqq6YIO0r0B0ea48/ZdYVKy AY3aaQ+5h7Gvo2GkB1BhI4gQAqi0H3PoF/rXaLj85pUV8qRNBDxDjJnnGvq62MB4aeKvWF n+8TIHrfXUJi2NJb7elAUhnGwlCKQWTrRqbC1nKwMUtJLDLSjIKslESHUI+CBw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Spam-Score: -2.41 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: 6AE521A802 X-Spam-Score: -2.41 X-Migadu-Scanner: scn0.migadu.com X-TUID: 1pbFigqxKbu7 Hi, Please consider: I added full native notification support to the popular OS X Emacs build available in homebrew. This supports rewrites notifications-notify defun to use the native code rather than dbus, and so everything "Just Works". Info can be found here: https://github.com/choppsv1/homebrew-emacsmacport Thanks, Chris. stardiviner writes: > Here is the new patch which invokes notifications though Emacs built-in API `ns-do-applescript`. > > [2. text/x-patch; 0001-org-clock.el-Make-org-notify-support-macOS-notificat.patch]... > > > >> On Jul 6, 2021, at 8:06 AM, Tim Cross wrote: >> >> >> stardiviner writes: >> >>>> On Jul 5, 2021, at 7:55 PM, Maxim Nikulin wrote: >>>> >>>> On 05/07/2021 10:50, stardiviner wrote: >>>>> I updated the patch, I found the package `osx-lib` contains solution. >>>>> So I removed the directly osascript process invocation. >>>> >>>> I have no objections any more. On the other hand I have no access to macOS, so >>>> I have not tested this patch. Feel free to ignore comments from this message, >>>> they are mostly matter of taste. >>>> >>>> I expect that a simple script "notify-send" may allow to avoid modification of >>>> code. Something like (untested, unsure concerning "quoted form of ...") >>>> >>>> #!/usr/bin/env osascript >>>> display notification (item 1 of argv) >>>> >>>> However if osx-lib in is installed automatically, it may be more convenient. >>>> Unsure if some of currently supported linux distributions have notify-send >>>> that can not handle title as the first argument. >>>> >>>>> - ((fboundp 'notifications-notify) >>>>> + ((and (eq system-type 'gnu/linux) (fboundp 'notifications-notify)) >>>> >>>> Does it mean that `notifications-notify' is bound but it does not work on >>>> macOS? If so, maybe it is better to put new clause for 'darwin above and to >>>> drop 'gnu/linux here. From my point of view, it is preferable to avoid >>>> additional requirement for `notifications-notify'. If someone will create a >>>> feature request for `notifications-notify' for macOS, it will just work >>>> without installing of additional packages as soon as such feature is >>>> implemented. >>>> >>>> >>> I indeed tried `notifications-notify`. And it does not work, reports error that >>> it needs dbus. PS. I used the Homebrew formulae version Emacs. >>> I considered the order of conditions. Because notifications and notify-send etc >>> requires dbus. So I guess only Linux supports that. So add system-type detection >>> will be better. WDYT? >> >> I think you can add dbus support to macOS using homebrew and that might >> resolve the issue. At the very least, this will need to be investigated >> because otherwise, adding this patch may break configurations for users >> who have added dbus support via homebrew and have notifications working, >> but have not installed the osx-lib package. >> >> My only small concern with your proposed changes is that it will add a >> dependency on a new package osx-lib, which I think is only available in >> melpa. At the very least, this will need to be documented somewhere. >> However, I'm not sure what the situation is wrt adding code which >> depends on an external package which is not available in either elpa or >> nongnuELPA? As org mode is a part of GNU Emacs, I suspect that any code >> which 'encourages' the use of melpa packages will not be acceptable. >> >> -- >> Tim Cross >>