From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Rudi C Newsgroups: gmane.emacs.bugs Subject: bug#70071: [FR] Provide official install scripts without requiring root, e.g., by making a static build possible Date: Fri, 29 Mar 2024 16:12:34 +0330 Message-ID: Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="00000000000083981a0614cbfb1d" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="6591"; mail-complaints-to="usenet@ciao.gmane.io" To: 70071@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Mar 29 13:44:25 2024 Return-path: Envelope-to: geb-bug-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 1rqBaq-0001V5-Ah for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 29 Mar 2024 13:44:24 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rqBaZ-0004UD-PC; Fri, 29 Mar 2024 08:44:07 -0400 Original-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 1rqBaT-0004Tn-Gb for bug-gnu-emacs@gnu.org; Fri, 29 Mar 2024 08:44:01 -0400 Original-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 1rqBaS-0008UE-OS for bug-gnu-emacs@gnu.org; Fri, 29 Mar 2024 08:44:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rqBaT-0007aP-Vk for bug-gnu-emacs@gnu.org; Fri, 29 Mar 2024 08:44:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Rudi C Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 29 Mar 2024 12:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 70071 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.171171620429055 (code B ref -1); Fri, 29 Mar 2024 12:44:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 29 Mar 2024 12:43:24 +0000 Original-Received: from localhost ([127.0.0.1]:41916 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rqBZs-0007YY-1n for submit@debbugs.gnu.org; Fri, 29 Mar 2024 08:43:24 -0400 Original-Received: from lists.gnu.org ([2001:470:142::17]:53770) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rqBZp-0007YJ-Oy for submit@debbugs.gnu.org; Fri, 29 Mar 2024 08:43:22 -0400 Original-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 1rqBZj-0004Pp-3F for bug-gnu-emacs@gnu.org; Fri, 29 Mar 2024 08:43:15 -0400 Original-Received: from mail-oa1-x2c.google.com ([2001:4860:4864:20::2c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rqBZh-0008Jf-58 for bug-gnu-emacs@gnu.org; Fri, 29 Mar 2024 08:43:14 -0400 Original-Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-22a8df1df8fso1093520fac.2 for ; Fri, 29 Mar 2024 05:43:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1711716191; x=1712320991; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=UJFDTaaZzNsrsn/tLnX+1+bYi1hEtXB4lkS3nIBR1Zk=; b=itfnwSFoGqlDxFsuRilkqjL0MlH7AdDDmIBFMnMHAYZvmMqa5zHtI2mPa250sjHrtw SCg0kwKG3PA+PJViWPhkelYUafWAsmwPVXt8uq4uc/DxhdEgSJ3tg2i4YK5muaL7oyPm V9WL1mIVB/18fC9I8zl572ySa+oA9ZmJhChUgqLMlKRZHcB/yYmHWyrkthSpgLNPeZ/J ZHOe1j46Df/5p+LoIwRFUHtnLdz0NIycSZZpqLAouh2xSAutUPpobv0HvE/JOUx68/NN 2CB2VUMO96Zrc4EBw0/Meqz07hL8XhUNJZdfshOEbPhzjDVsulg0EtAZgKhQmPSNfOOi zxng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711716191; x=1712320991; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=UJFDTaaZzNsrsn/tLnX+1+bYi1hEtXB4lkS3nIBR1Zk=; b=UK/C46w/bUqotgJXVCgkUOgGVf6kFmS2khc/1YS40bKE+UdeeZu63gGy6ZOtUknyDx Lmo47w25038cAQPedh26umHN+QxfyKYPca1YmaF/XEG0hzgFkM3ZxO19CIeRlNlLLYVJ erXsBfIodRsFcTRaXd9jLGYYS9977cBO31sasy8q1hkBMteC/J5/GQ1vU0SKxRpkp65G yQtLJrXLlHPWHKttL9gkEeT0jqJikbaB8y/yVpeTvA+MXIM5U6aS43Onn+wuxCM2BuCe bguJ4pW4oRW0PRhQ2satuUMDlSPuybaLgZw/JSQR9vZdEX8alwfZ6p1eUmoRSHriYasn w6Aw== X-Gm-Message-State: AOJu0YwRoWpMKr10T/4+6HEMft+2zoiWIb1ikd+W7qflwsHAOJXtoSDC Jm2Gwq9QhsW3bubRPj8yACZaNAH9RgF9o38oOqxDQJKvUYRP64T6DBdG3M+zpsKAcVG+WterAZR xiG41otOgqRAvPbMY0x1GpYC1n/X/qLwEwyWV6g== X-Google-Smtp-Source: AGHT+IG5FAIC4Uer8m8Sb9U9XZbdB0tPwg0RaU93PqyPPmgBDjiRTVJ4SUc15qKHS58/Fdi/kLTSbSV7NjhYVQ04Pnw= X-Received: by 2002:a05:6870:1697:b0:229:f61d:7e52 with SMTP id j23-20020a056870169700b00229f61d7e52mr2275482oae.34.1711716190883; Fri, 29 Mar 2024 05:43:10 -0700 (PDT) Received-SPF: pass client-ip=2001:4860:4864:20::2c; envelope-from=rudiwillalwaysloveyou@gmail.com; helo=mail-oa1-x2c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:282292 Archived-At: --00000000000083981a0614cbfb1d Content-Type: text/plain; charset="UTF-8" I've been struggling to install Emacs on university servers where I don't have root access, and it's been a frustrating experience. It seems like such a trivial issue to prevent people from using Emacs, especially when Vim is usually pre-installed on most servers. After searching the web, I've discovered that there are challenges in building Emacs in a static way. (E.g., https://unix.stackexchange.com/questions/472989/how-to-build-instance-of-emacs-to-run-on-an-x86-64-system-different-from-the-one) It would be fantastic if Emacs could be modified to allow for static, portable builds for common Linux architectures. Imagine being able to install Emacs using a simple command like `curl -sS https://gnu.com/emacs-install-portable.sh | bash`, which would automatically detect the correct build, download it, and install it. While it might be possible to build Emacs without root access on each server from scratch, it's a difficult and time-consuming process. Unfortunately, there isn't a reliable official script like `gnu.com/emacs-install-no-root.sh` to streamline this process. I've tried using Linuxbrew to build Emacs from source without root, and while it sometimes (50%) works, it's very slow. As brew is primarily developed for macOS, not Linux, the bugs are not fixed. (See, e.g., https://github.com/d12frosted/homebrew-emacs-plus/issues/603) To address these issues, I have three suggestions, listed in order of preference: 1. Provide portable builds of Emacs, along with a script that automatically installs the correct build without requiring root access. 2. Offer semi-portable builds of Emacs that only require building a handful of libraries on the host. This should be handled by an official install script, allowing users to simply run `curl ... | bash`. 3. Create an official install script that builds Emacs from source, thoroughly tested on popular distributions like Ubuntu (including different versions, not just the latest). This should still be as straightforward as running `curl ... | bash`, even if it takes some time to complete. I consider myself a persistent and patient person, and I've explored various options, including `nix-env`, `guix`, and more. However, I've reached my wit's end; installing Emacs is simply too complicated. While I HAVE installed emacs on many servers and I use it remotely almost every day, on servers that I use less often, I often resort to vim or editing files locally and using Git to sync my changes back to the server. I'm aware of Tramp, but it's buggy and slow on my setup, and I don't have the time to debug it or fix the extensions that are causing issues. Similarly, sshfs is unreliable on my unstable connections. All I want is a way to easily install Emacs on a server without root access, without having to manually inspect the installation process or engage in a debugging session. Is a one-liner installer too much to ask for in 2024?! PS: Please use reply-to-all. --00000000000083981a0614cbfb1d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I've been struggling to install Emacs on university se= rvers where I don't have root access, and it's been a frustrating e= xperience. It seems like such a trivial issue to prevent people from using = Emacs, especially when Vim is usually pre-installed on most servers.
After searching the web, I've discovered that there are challenges in = building Emacs in a static way. (E.g., https://unix.stackexchange.com/questions/4729= 89/how-to-build-instance-of-emacs-to-run-on-an-x86-64-system-different-from= -the-one) It would be fantastic if Emacs could be modified to allow for= static, portable builds for common Linux architectures. Imagine being able= to install Emacs using a simple command like `curl -sS https://gnu.com/emacs-install-portable.s= h | bash`, which would automatically detect the correct build, download= it, and install it. While it might be possible to build Emacs without root= access on each server from scratch, it's a difficult and time-consumin= g process. Unfortunately, there isn't a reliable official script like `= gnu.com/emacs-install-= no-root.sh` to streamline this process. I've tried using Linuxbrew = to build Emacs from source without root, and while it sometimes (50%) works= , it's very slow. As brew is primarily developed for macOS, not Linux, = the bugs are not fixed. (See, e.g., https://github.com/d12frosted/homebrew-em= acs-plus/issues/603)

To address these issues, I have three sugge= stions, listed in order of preference:

1. Provide portable builds of= Emacs, along with a script that automatically installs the correct build w= ithout requiring root access.
2. Offer semi-portable builds of Emacs tha= t only require building a handful of libraries on the host. This should be = handled by an official install script, allowing users to simply run `curl .= .. | bash`.
3. Create an official install script that builds Emacs from = source, thoroughly tested on popular distributions like Ubuntu (including d= ifferent versions, not just the latest). This should still be as straightfo= rward as running `curl ... | bash`, even if it takes some time to complete.=

I consider myself a persistent and patient person, and I've exp= lored various options, including `nix-env`, `guix`, and more. However, I= 9;ve reached my wit's end; installing Emacs is simply too complicated. = While I HAVE installed emacs on many servers and I use it remotely almost e= very day, on servers that I use less often, I often resort to vim or editin= g files locally and using Git to sync my changes back to the server. I'= m aware of Tramp, but it's buggy and slow on my setup, and I don't = have the time to debug it or fix the extensions that are causing issues. Si= milarly, sshfs is unreliable on my unstable connections. All I want is a wa= y to easily install Emacs on a server without root access, without having t= o manually inspect the installation process or engage in a debugging sessio= n. Is a one-liner installer too much to ask for in 2024?!

PS: Please use reply-to-all.
--00000000000083981a0614cbfb1d--