From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id KOF1A5ho1GG2agEAgWs5BA (envelope-from ) for ; Tue, 04 Jan 2022 16:32:40 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id QAvXN5do1GEsrAAAG6o9tA (envelope-from ) for ; Tue, 04 Jan 2022 16:32:39 +0100 Received: from mail.notmuchmail.org (yantan.tethera.net [IPv6:2a01:4f9:c011:7a79::1]) (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 1B2423A4B1 for ; Tue, 4 Jan 2022 16:32:39 +0100 (CET) Received: from yantan.tethera.net (localhost [127.0.0.1]) by mail.notmuchmail.org (Postfix) with ESMTP id 097B15F708; Tue, 4 Jan 2022 15:32:34 +0000 (UTC) X-Greylist: delayed 1501 seconds by postgrey-1.36 at yantan; Tue, 04 Jan 2022 15:32:31 UTC Received: from fallback4.mail.ox.ac.uk (fallback4.mail.ox.ac.uk [129.67.1.171]) by mail.notmuchmail.org (Postfix) with ESMTPS id 7B2F95F5F0 for ; Tue, 4 Jan 2022 15:32:31 +0000 (UTC) Received: from relay18.mail.ox.ac.uk ([163.1.2.165]) by fallback4.mail.ox.ac.uk with esmtp (Exim 4.92) (envelope-from ) id 1n4lPO-0003AM-GF for notmuch@notmuchmail.org; Tue, 04 Jan 2022 15:07:30 +0000 Received: from smtp9.mail.ox.ac.uk ([129.67.1.206]) by relay18.mail.ox.ac.uk with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1n4lPN-0004ZE-85 for notmuch@notmuchmail.org; Tue, 04 Jan 2022 15:07:29 +0000 Received: from [82.6.148.234] (port=48520 helo=localhost) by smtp9.mail.ox.ac.uk with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1n4lPN-0007iN-VB for notmuch@notmuchmail.org; Tue, 04 Jan 2022 15:07:29 +0000 From: Aleks Kissinger To: notmuch@notmuchmail.org Subject: Dodo: a new graphical, hackable frontend for notmuch Message-ID: <164130884685.3907990.15412264039205553890@spek> User-Agent: Dodo MIME-Version: 1.0 Date: Tue, 04 Jan 2022 15:07:26 +0000 X-Oxford-Username: scat3509 Message-ID-Hash: 4OVGVJPVH65TLKFVFQH37SYDML7WTLZV X-Message-ID-Hash: 4OVGVJPVH65TLKFVFQH37SYDML7WTLZV X-MailFrom: aleks.kissinger@cs.ox.ac.uk X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-notmuch.notmuchmail.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.3 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Migadu-Flow: FLOW_IN X-Migadu-Country: DE ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1641310359; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-id:list-help: list-owner:list-unsubscribe:list-subscribe:list-post; bh=ubsVg83mDe89CNaq0U4otS0QysVCB75iLizEqTiu+/s=; b=htK4JKTZEKg1j8oErcLby/g1DaApzFDJKevYuHeeqrWXeggcVihdENqmRPhXy43OtbgAh2 BnCLRn81JV/88zSjNbW4RCi8KT4WE2MOw3ymRIKSLyiHk6XqYCCsz0UcwGBG/HaaydlMfX pwxb5dpif/r/Nw7FFO42Xg2WltmK/Qqq+9Vej1E2DEp1oiqCBTxHMTZEwxXGqVwt9gJ14H QZzzxUR417pkK5zkFtH0kZT+CCL3uQ0ioVvEAa4oLwUeP/lqscMAB4nYAcOAG6AYgNcMMw 4OmjpTrdpKdyvQo1JXn4qC4r9CO+tPaYQA6VNvj7hA8FCGRCn7+qzyTaHq6TUQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1641310359; a=rsa-sha256; cv=none; b=GfUHjLH1vrrTz3dU6QVgv+zsHC00b4OO0CrlcwuYndYK173bGuCYh7p5OOW7oAJGInXIUH K0xXaqa+x9m5XCtJnqGcs21rPBnds374tg6NZ+G6vFFN8llbBel9bAvHGVpQDemmP8+z8f YHnxwhKKjp8KVOOmJeq4V5sH7ur4krOsrqnTEQweeoDGC30vhPgAvinWpD7pDLXaOfRgfO tk0rKFvN4gdDKaDzNIL/0b3em29XfnkTF55tRX48dsy9+g++T7vhBWXSd4ez5j3QwIlgvt uLTN5qLxOHpcJFpo0aVPmku7JKPMrNWuv1NYbFNsd1qm3f6hmkt6XRzn4MohOw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 2a01:4f9:c011:7a79::1 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Spam-Score: -3.73 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 2a01:4f9:c011:7a79::1 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Queue-Id: 1B2423A4B1 X-Spam-Score: -3.73 X-Migadu-Scanner: scn0.migadu.com X-TUID: yQws91O9U7Qy Hi all, We all like to unwind in different ways over the holidays. For me, I decided to write a new GUI frontend for notmuch based on PyQt. It's called Dodo: https://github.com/akissinger/dodo The main goals are to: * offer keyboard-oriented mail reading, sorting, and composing * give a mostly text-based email experience by default, but with easy access to HTML support * offload as much work as possible on existing command-line tools * be simple enough to customise and hack on yourself As it's mostly come to life over the past few weeks, Dodo is still pretty rough around the edges, but most of the core functionality is there. I'd be happy to hear what you think! Best, Aleks p.s. I added a link to Dodo on the notmuch site using the instructions (notmuchmail.org/wikiwriteaccess), but maybe didn't do it right or it takes some manual intervention to update the website.