From patchwork Sun Mar 30 12:20:59 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Amy Pillow X-Patchwork-Id: 41029 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 9D55227BBEB; Sun, 30 Mar 2025 14:07:33 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.4 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 44B9A27BBEA for ; Sun, 30 Mar 2025 14:07:31 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tysNd-0001O0-Ji; Sun, 30 Mar 2025 09:07:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tysHe-0000XI-KF for guix-patches@gnu.org; Sun, 30 Mar 2025 09:01:05 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tysHe-0003WR-Ar for guix-patches@gnu.org; Sun, 30 Mar 2025 09:01:02 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:Date:In-Reply-To:From:To:Subject; bh=5txRNx84FfSoZycTs1dHDx0dGHnTWDh6pF0DzLqbO44=; b=RAYSFy6VVdvVIwQ1XpztAR98AuZ5wMRAtD+cnWeo/STxnXxbzywnV6ja7MdIrGN5wCZ8kJfudwxPJu1IY15xLKaD4HjLHWq3jK/jdT5/D3NhZN6d+1Vt0AxlQ4HKF02WAaG5E3NZF16EKXJLa3LJ2xXiEnLY0keqLgjIaIKOYVP4bKgkrqrOCrH1/mNs2eEgVO+TG4UM8DAGJEbuFROWZllQUzCeJSCE02CWo8GCuCb9wObhA/g4fSPTy9c8TC20yKl+aROXfiI3mi7vKTYurYyWujecPF1HgIP0ZPy293CQ3jhnl72uC6olyo9jqFAD2K9DZTuUnpJ5O9kt2pXwJg==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tysHe-0007FZ-5c for guix-patches@gnu.org; Sun, 30 Mar 2025 09:01:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#77258] [PATCH v1] gnu: Add emacs-boxy Resent-From: Amy Pillow Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 30 Mar 2025 13:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 77258 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ian Eure Cc: 77258@debbugs.gnu.org Received: via spool by 77258-submit@debbugs.gnu.org id=B77258.174333964527834 (code B ref 77258); Sun, 30 Mar 2025 13:01:02 +0000 Received: (at 77258) by debbugs.gnu.org; 30 Mar 2025 13:00:45 +0000 Received: from localhost ([127.0.0.1]:35381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tysHM-0007Es-Jh for submit@debbugs.gnu.org; Sun, 30 Mar 2025 09:00:45 -0400 Received: from msg-2.mailo.com ([213.182.54.12]:60298 helo=mailo.com) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tysHJ-0007EX-BD for 77258@debbugs.gnu.org; Sun, 30 Mar 2025 09:00:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=lavache.com; s=mailo; t=1743338732; bh=qYTBie3LfC/vvjKp5N9kWV/i2ztC/Fu/Ca6edScH65s=; h=X-EA-Auth:From:To:Subject:In-Reply-To:Date:References:CC: Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding; b=W7tEIbA1lIrmcKJeBUr/OYBCkNbnn4iLmrALUahqMcl6UWGYsfHUmOe6jSxTsancc +/DuMLyOpqExrwcpkg3Y0dgdsZzTttjgwzTKI9msq2bB9CcF7oXQTNj6s4fcpwwoHo eWH165G0c7Rd8xxgRf6UXaBms/+AzGwjfp7g1dxg= Received: by b221-6.in.mailobj.net [192.168.90.26] with ESMTP via ip-20.mailobj.net [213.182.54.20] Sun, 30 Mar 2025 14:45:27 +0200 (CEST) X-EA-Auth: Dvu835PIqK5Ep/1AAi53/orziIiWemn1rK9sJUyjX26pcSBv4jUogNM5roNt8H9e3DCP9BvUDZ1NqViJ5B4hl3pFuCAksQxY64xE6BW55s8= In-Reply-To: (Amy Grinn's message of "Sun, 30 Mar 2025 13:37:18 +0200") Date: Sun, 30 Mar 2025 14:20:59 +0200 Lines: 185 References: <87r02fet0u.fsf@retrospec.tv> User-Agent: Gnus/5.13 (Gnus v5.13) X-From-Line: nobody Sun Mar 30 14:21:00 2025 Message-ID: <87r02e1yc9.fsf@lavache.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Mailman-Approved-At: Sun, 30 Mar 2025 09:07:00 -0400 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Amy Pillow X-ACL-Warn: , Amy Pillow via Guix-patches X-Patchwork-Original-From: Amy Pillow via Guix-patches via From: Amy Pillow Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/emacs-xyz.scm (emacs-boxy): New variable. --- Hi, sorry, I changed my email address, but I do have a few questions about this contribution: > Hi Amy, > > Amy Grinn writes: > >> Hello, >> >> I would like to add my package, emacs-boxy, to Guix. >> >> This is my first patch to Guix so let me know if I did anything >> wrong! > > Thank you for contributing to Guix! Please see > (guix)Contributing[1] for info about sending patches. The Guix > tooling expects patches to be submitted with `git send-email', and > not mailed as an attachment. > I was going off of these instructions: https://guix.gnu.org/manual/en/html_node/Sending-a-Patch-Series.html which state that "Sending patches as email attachments may make them difficult to review in some mail clients, and git diff does not store commit metadata." I'm not sure how many email clients still have trouble viewing attachments in emails, but you seemed to have no problem, so I'm curious if maybe the instructions should be updated to explicitly state which patch formats are allowed and maybe give a different justification for it. I tried my best here to stick to the git send-email format, let me know if this is acceptable. > Other comments below. > >>>From b3223cec32425d6b8cf2c11545ed63ad6dabae88 Mon Sep 17 >>>00:00:00 2001 >> From: Amy Grinn >> Date: Tue, 25 Mar 2025 18:17:25 +0100 >> Subject: [PATCH] gnu: Add emacs-boxy >> >> * gnu/packages/emacs-xyz.scm (emacs-boxy): New variable. >> --- >> gnu/packages/emacs-xyz.scm | 15 +++++++++++++++ >> 1 file changed, 15 insertions(+) >> >> diff --git a/gnu/packages/emacs-xyz.scm >> b/gnu/packages/emacs-xyz.scm >> index f00c5e4b29..0423858b2f 100644 >> --- a/gnu/packages/emacs-xyz.scm >> +++ b/gnu/packages/emacs-xyz.scm >> @@ -39025,6 +39025,21 @@ (define-public emacs-boxquote >> example code.") >> (license license:gpl3+))) >> >> +(define-public emacs-boxy >> + (package >> + (name "emacs-boxy") >> + (version "2.0.0") >> + (source (origin >> + (method url-fetch) >> + (uri (string-append >> "https://elpa.gnu.org/packages/boxy-" >> + version ".tar")) > > Please prefer the upstream Git repo over M/ELPA. > The upstream repo is not at a stable location, I've changed it once or twice already and I'm planning to do so again soon. Is it acceptable to use GNU ELPA? I see that other packages in emacs-xyz.scm are doing the same thing. >> + (sha256 (base64 >> "6w1QtINpWz9voCrc/ne6q8sPj4UcA3s8E/f/Pebjz+0=")))) >> + (build-system emacs-build-system) >> + (home-page "https://gitlab.com/grinn.amy/boxy") >> + (synopsis "A boxy layout framework") >> + (description "Boxy provides an interface to create a 3D >> representation of boxes.") > > "Boxy" should probably reference the package name > (@code{emacs-boxy}), "This package," or similar. It would also be > nice to have a bit more info about what the package is used for. > Sure, I can do that. > I also noticed a couple issues with the package itself which ought > to be corrected: > > - Your `defcustom' and `defface' forms don’t have `:group boxy', > so won’t appear if you `M-x customize-group RET boxy RET'. I think it's a little rude to point out a bug without actually checking if it exists. `M-x customize-group RET boxy RET' works fine. The `:group' option is unnecessary when you evaluate it after a `defgroup'. > - Several macros from `cl-macs' are used, but `cl-macs' isn’t > required. ex. `cl-defstruct', `cl-flet*', possibly others. > `cl-lib' might also require `cl-macs', but you should always > require your direct dependencies instead of relying on > transitive ones. cl-macs is part of the cl-lib package. You can see more info about how to use Common Lisp in Emacs here: https://www.gnu.org/software/emacs/manual/html_mono/cl.html > - You may want to condsider using symbols or keywords for > `boxy-relationships' instead of strings. > Haha yes, maybe, it's far too late to change that now though. Maybe in version 3. > Thanks, > > -- Ian > > [1]: > https://guix.gnu.org/manual/devel/en/html_node/Sending-a-Patch-Series.html#Single-Patches-1 > I appreciate all of your thoughts, please let me know if you need anything else! Best, Amy gnu/packages/emacs-xyz.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) base-commit: 2ed28b5c24c599b2f9bc60dfc93151cf489ca477 diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index b5dc07acbb..8db221affb 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -156,6 +156,7 @@ ;;; Copyright © 2025 Skylar Hill ;;; Copyright © 2025 Cayetano Santos ;;; Copyright © 2025 Lee Thompson +;;; Copyright @ 2025 Amy Pillow ;;; ;;; This file is part of GNU Guix. ;;; @@ -39170,6 +39171,23 @@ (define-public emacs-boxquote example code.") (license license:gpl3+))) +(define-public emacs-boxy + (package + (name "emacs-boxy") + (version "2.0.0") + (source (origin + (method url-fetch) + (uri (string-append "https://elpa.gnu.org/packages/boxy-" + version ".tar")) + (sha256 (base64 "6w1QtINpWz9voCrc/ne6q8sPj4UcA3s8E/f/Pebjz+0=")))) + (build-system emacs-build-system) + (home-page "https://gitlab.com/grinn.amy/boxy") + (synopsis "A boxy layout framework") + (description "@code{boxy} provides an interface to create a 3D +representation of boxes. Other packages can use this library to create +expandable menus for interacting with hierarchical data.") + (license license:gpl3+))) + (define-public emacs-buffer-env (package (name "emacs-buffer-env")