From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: akater Newsgroups: gmane.emacs.help Subject: Re: use-package, package.el, and system packages cooperation Date: Sun, 02 Aug 2020 10:54:44 +0000 Message-ID: <871rkpgvwr.fsf@gmail.com> References: <931B677D-3813-435D-802C-E1207856CBBD@chaotikum.eu> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="30044"; mail-complaints-to="usenet@ciao.gmane.io" To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Sun Aug 02 16:39:51 2020 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1k2F9T-0007i7-1L for geh-help-gnu-emacs@m.gmane-mx.org; Sun, 02 Aug 2020 16:39:51 +0200 Original-Received: from localhost ([::1]:49738 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1k2F9S-0002qs-3s for geh-help-gnu-emacs@m.gmane-mx.org; Sun, 02 Aug 2020 10:39:50 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51408) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1k2Bn5-0005kP-Fm for help-gnu-emacs@gnu.org; Sun, 02 Aug 2020 07:04:31 -0400 Original-Received: from mail-ej1-x62d.google.com ([2a00:1450:4864:20::62d]:42342) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1k2Bn3-0007vJ-Ed for help-gnu-emacs@gnu.org; Sun, 02 Aug 2020 07:04:31 -0400 Original-Received: by mail-ej1-x62d.google.com with SMTP id g19so21918052ejc.9 for ; Sun, 02 Aug 2020 04:04:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version; bh=4Za8fIagmwC9Uux+gyZLu1nBVyiGMRUO/NTnFWeE6ZY=; b=P/MbEssqrNQtULgjGO11tOBH4DcyMhAfMuTceMF09ArFC2PLLZ2q52Rj7U5Wtg1Cfk 376STJ4d5vI9RKXgdtFcZ/S5q8T+klV7EnGd/zi5gV1wYLPPUp9OqhXB02w5Mj+d/HXm G5hoWf/tKmFtWMpalfVvG22VH0cMBGvsmengTtiL5FIXiwaSrm8Y320Oc9U0yOypw3QY DpIxSWVMdKMPFGHnBDtGQwAjUs630YNJhFGtWCIPSK6Og+rsdaGsKCk//27h5BnZeFQK jRoqBWzng/WMetdPQFCDMU8VLUfPe++T9pNTY2brIwMX5BB3XEzj+rJB8WAPYLnZjudy hbRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version; bh=4Za8fIagmwC9Uux+gyZLu1nBVyiGMRUO/NTnFWeE6ZY=; b=Lko0xkM+hU+OWWG9stxNrnshppP7z78ytWRIRT9cQqzVwucLeVyZQycIPBy+U2k6KK /Y+RKemyT/xAJdotckuHjpN4gRAEEFgiBGllcDUh6l4R+XV79AUwKAKgARMsty/St7D/ 4KJPtFFh9ZbJhDF5Iy5LQBeZxB0pBt96LsCJyQ37kVTJxIoUKTfCokE9+J3Dn1SO4XE1 4hZAIFFSmE9imgjAAf9jW8HYo9WRHo6qt61vAggR6nYbr/k6dizzOG9nTebbjEkctTrw vi0AtIUPvHsswslej6H4qMPd1oRgjkAckxOfFJzoiVvYGgTmxeJHQHJltvKncpNyEKer nDlg== X-Gm-Message-State: AOAM532dTUguinOFgIvJlDDILfbMGeM+6nZkiqpemJ+I/preaGzn9N8O PunjbKUZXDbsT5zEHfkPaVguvK6o2xw= X-Google-Smtp-Source: ABdhPJzpxJeACCaX4CvzTs0Uz98g+Sw2YI7npsj/HIHvQ/2b5jITE6/CMiV6rNfXR1WyHZczBS/AEA== X-Received: by 2002:a17:906:1704:: with SMTP id c4mr12572921eje.525.1596366266670; Sun, 02 Aug 2020 04:04:26 -0700 (PDT) Original-Received: from localhost ([185.220.101.21]) by smtp.googlemail.com with ESMTPSA id m13sm13137401edi.89.2020.08.02.04.04.25 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 Aug 2020 04:04:26 -0700 (PDT) In-Reply-To: <931B677D-3813-435D-802C-E1207856CBBD@chaotikum.eu> Received-SPF: pass client-ip=2a00:1450:4864:20::62d; envelope-from=nuclearspace@gmail.com; helo=mail-ej1-x62d.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -7 X-Spam_score: -0.8 X-Spam_bar: / X-Spam_report: (-0.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_BL_SPAMCOP_NET=1.347, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sun, 02 Aug 2020 10:39:30 -0400 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:123617 Archived-At: --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Thomas Schneider writes: > I=E2=80=99m struggling to combine use-package, package.el, and Emacs pack= ages > installed by the system package manager (e.g., apt). >=20 > I want: > - to install packages via the system package manager as much as possible > This is especially important for packages such as pdf-tools, which > require development headers of several libraries, but are readily > installed via system packages Me too. I am convinced that public Emacs package archives should provide packages for popular package managers, not only for package.el. It is totally feasible to generate most of those automatically. If a package manager installs a package that depends on a C library, it must be able to provide that C library too. Thus, as long as Emacs packages depend on external software, they should be installed by a package manager that is good enough to install (as well as fetch, configure, build, of course) said external software. > - not to install packages again as user, when they are already > installed system-wide >=20=20=20 > - especially as dependencies > For example, Gentoo provides AUCTeX, but not auctex-latexmk. When I > install the latter via package.el, it installs AUCTeX again, even > though it=E2=80=99s already installed system-wide I have an Emacs package available from my Gentoo repository: https://gitlab.com/akater/elpa-to-ebuilds README explains how to add the repository and install the package. It is currently capable of producing, mostly correctly, working ebuilds from non-built-in Emacs features that are currently loaded into Emacs (together with their dependencies, which is what normally happens). I migrated almost all Emacs packages I use to Portage. I have not published those 50-something ebuilds but if you are interested in similar migration, I'll be able to help. I don't have any testers besides myself and thus can't guarantee smooth experience with elpa-to-ebuilds but I'd love to meet some testers and potential collaborators who share the above views on Emacs package management and dissatisfaction with package.el. In fact, due to lack of testers I'm not even sure elpa-to-ebuilds installs OK. > - to continue using use-package, or something else that helps me > structure my init.el I'm using use-package almost exclusively. I think it could be integrated with system package managers but you'd need installation rights (this likely means root, in my experience) anyway. > - not to download half of MELPA the first time I start Emacs on a new > host This sounds impossible if =E2=80=9Cnew host=E2=80=9D implies =E2=80=9Cno Em= acs packages installed=E2=80=9D --- could you clarify? --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBCgAGBQJfJpt5AAoJELK+sWGx7H9ECwQP/RQ9wzo3mfFNpOpU26j0HDcX 8Ct2x9T5cmX+5C8HXZkuSx731wyM0CDFlVsmch+LyFNIe4K/At6YulDjS5vEMlrX GZOIenOCtHkFwlGgVazoRIszKLnU4yw4/DILuh74/hcWn3hb2RekA813To/8tJdS FvpAFe+7EK7qLqrvLfzYUnUtp1iDQHKS5/6eONQOPEEEdQWFBCdcfqcXx0fSZUc2 aCVMYcoksstqPhLx1x3v3pTguY+5D9Lg08BTyFHcMvB6+Yu0RATv6PPeZhCaCSWH Ys4i3qwqrhXubC4S0ohD7wDVEawZlOXkWkbfjwxJy+jyGXyjI5P1aHABk7BY+sE8 NGCC3Ba08UNhBIRUP84+J0DlMMrTCrBemWvkhOg13Gkp3XGkRLpzPCZGxwJPRUlM ZjkTILN9fk4LTyYS0YLA4LRD/++w6kWg3oopRSm/cIHCv5NEEL2LwYpCucAEsuRO agrMxCD7zT0Y3jOPCTgr6uwUKonOj5sBSqL7TcRktfxeJifq70nVkldyKxu74o4h hWmWyBGON+u5WiQrlX3b0iNaSdx4J3IAWjr5b46hCJuAgV5tTGFtZsTtpQs/e3gv NssQtvXQdJtREyS0YSzba69UK/gw+UoMQ9Z+l6fdGXcJn+jAG3etrsiZ6TmtYA1J 6LD9tIRyyer3QqrhxqnW =VGvm -----END PGP SIGNATURE----- --=-=-=--