From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51138) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d1Ba8-0001tI-Di for guix-patches@gnu.org; Thu, 20 Apr 2017 08:53:09 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d1Ba2-0000lp-M7 for guix-patches@gnu.org; Thu, 20 Apr 2017 08:53:08 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:59885) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1d1Ba2-0000ld-Ap for guix-patches@gnu.org; Thu, 20 Apr 2017 08:53:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1d1Ba2-0003Un-3X for guix-patches@gnu.org; Thu, 20 Apr 2017 08:53:02 -0400 Subject: bug#26559: [PATCH] build: emacs: Install only a subset of files. Resent-Message-ID: Message-Id: <628c0262.AEEAJtCcXW0AAAAAAAAAAAO2CuIAAAACwQwAAAAAAAW9WABY-K8Y@mailjet.com> MIME-Version: 1.0 From: Arun Isaac Date: Thu, 20 Apr 2017 18:22:34 +0530 In-reply-to: <877f2fqpeb.fsf@gmail.com> References: <20170419073525.2357-1-arunisaac@systemreboot.net> <877f2fqpeb.fsf@gmail.com> Content-Type: text/plain Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 26559@debbugs.gnu.org >>> + (include ''(".*.el$" ".*.el.in$" "^dir$" >>> + ".*.info$" ".*.texi$" ".*.texinfo$" >>> + "doc/dir" "doc/*.info$" "doc/*.texi$"= "doc/*.texinfo$")) >>> + (exclude ''("^.dir-locals.el$" "^test.el$" "^tes= ts.el$" ".*-test.el$" ".*-tests.el$")) >> >> I've copied all this from MELPA's default :files property described at >> https://github.com/melpa/melpa . I have no idea what the rationale for >> some of these regexes are. > > What regexps are not clear for you? I don't understand what ".*.el.in$", "^dir$" and "doc/dir" are for. >> Currently, include and exclude are a list of regexes that file names are >> matched against. Should this be combined into one big regex? > > I think it is not needed, it is more clean to separate regexps. Ok. Also, please suggest better names if #:include and #:exclude are not clear. Perhaps #:include-files and #:exclude-files, or #:install-files and #:no-install-files ? Any other style changes to the code are also welcome. > Regarding documentation: note that it is already installed into the > proper place. I mean if the package has ".info" files, they are > installed into "share/info" (look at 'move-doc' procedure in (guix build > emacs-build-system) module). For example, 'emacs-debbugs' has the info > manual and it is installed appropriately. So I think #:documentation is > not needed. Yeah, move-doc is good. I forgot about it. > Also I would like to note that this patch (when it will be ready) > shouldn't be committed alone: there are some emacs packages that should > be adjusted to include additional files. One that comes to mind is > 'emacs-slime' - it *must* contain *.lisp files (and other files as > listed at ). > Otherwise, it wouldn't work at all. For specific packages, we can always override the #:include and #:exclude keyword arguments. Or, even replace the 'install phase if it comes to that. > So I think this patch should be committed with the according fixes for > such "complex" packages (not sure if there are other ones along with > 'emacs-slime'). Is there some standard workflow for testing packages when there is a build system change? There are currently 154 packages in gnu/packages/emacs.scm. Should I test them all? =