News for hackers. Stuff that matters.
Re:Emacs: The most successful malleable system by Myrmornis on Wednesday April 15, 2020 @08:12AM (#22876783)
What are the main examples you have in mind of users who can use emacs but can’t install packages?
Re:Emacs: The most successful malleable system by nickdrozd on Wednesday April 15, 2020 @08:28AM (#22876904)
I use Emacs at work, where unapproved external packages are prohibited. If Python mode were pushed out to a repo, I would basically be forced to use another editor.

Another example might be using Emacs on a device without network access.

If we relax "can't" to include "won't", then there are casual users who might want to try Emacs but can't be bothered to set up package archives, etc. Such a user will start it up, say "What, no Python mode?", and switch to something else.

Re:Emacs: The most successful malleable system by Myrmornis on Wednesday April 15, 2020 @04:06PM (#22882391)
Having never worked at a company like that I'm curious how it works. Is it

- No http/https connections

- No write access to home directory

- Internal prohibition against downloading/using something which is a "software package"

?

Re:Emacs: The most successful malleable system by nickdrozd on Wednesday April 15, 2020 @04:23PM (#22882588)
Internal prohibition. Using Emacs at all requires approval. The "product owner" is not an Emacs user, so building a custom distribution to include, say, Magit, is out of the question. I am stuck using commandline Git :(
Re:Emacs: The most successful malleable system by Myrmornis on Wednesday April 15, 2020 @05:12PM (#22883144)
> so building a custom distribution to include, say, Magit,

I mean, you don't need to really "build" anything, you just need to install the package:

  (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
  (package-initialize)

  M-x package-refresh-contents
  M-x package-install magit
What would happen if you did that?
Re:Emacs: The most successful malleable system by ska on Wednesday April 15, 2020 @04:36PM (#22882727)
this sounds a bit crazy.
Re:Emacs: The most successful malleable system by NateEag on Wednesday April 15, 2020 @05:11PM (#22883131)
It is unfortunately common.

Any organization with high-value data has a responsibility to try not to be the next Equifax.

Programmers, sysadmins, and DB admins are excellent targets for attackers.

So, it's not actually so crazy to require that all tools be vetted by internal security teams, especially third-party extensions for Turing machines like Emacs.

I love Emacs but its architecture is a nightmare for Blue Team, and the easiest stance is definitely "no installing packages", or just "thou shalt use this IDE and no other".

Re:Emacs: The most successful malleable system by ska on Wednesday April 15, 2020 @05:15PM (#22883170)
I get that, but the right approach to securing high value data is to secure the data, not try and control every aspect of the environment it lives within; that's often more security theater. Note I'm not suggesting that the right approach is "wild west", rather that any vetting process that doesn't allow for well established and widely used tools to be adopted is probably too rigid.
Re:Emacs: The most successful malleable system by NateEag on Wednesday April 15, 2020 @06:00PM (#22883604)
I didn't say the "right" stance was to ban extensions, just the "easiest".

Since humans default to lazy, I thought that clearly explained why the phenomenon happens.

Perhaps I should have been clearer that I don't think it's the ideal approach, even if I understand where it comes from.

Re:Emacs: The most successful malleable system by Myrmornis on Wednesday April 15, 2020 @05:15PM (#22883173)
In my experience of US corporate culture it's also unfortunately common for employees at all levels to kowtow unnecessarily to "legal" without considering whether what "legal" are saying is sensible or not.
Re:Emacs: The most successful malleable system by simtel20 on Wednesday April 15, 2020 @09:47AM (#22877635)
Is there a powerful resistance to approving elisp packages that aren't default? Could you lay the groundwork with whoever maintains the list of approved packages by asking about approving certain versions of emacs packages that you use, and make your current setup much richer at the same time (e.g. by adding lsp-mode, ms-lsp, flycheck and whatever else you may be doing without now).
Re:Emacs: The most successful malleable system by craigsmansion on Wednesday April 15, 2020 @10:18AM (#22877963)
What is really an "external package" in emacs?

There should be nothing stopping someone just copying and pasting an entire elisp source text from a website into scratch, evaluate the buffer on the spot, and have the exact same functionality as installing the package would.

I'm not saying that retrieving an external package isn't easier, but due to emacs' nature there isn't really sort of delineation based on how the elisp got into the emacs.

Re:Emacs: The most successful malleable system by Myrmornis on Wednesday April 15, 2020 @03:31PM (#22881996)
It's more complicated than that: Emacs packages should be thought of the same as any other language's packages. They might comprise multiple files, and it's possible that their performance will be noticeably compromised if they are not byte-compiled. Installing Emacs packages should be done with the package manager.
Re:Emacs: The most successful malleable system by tikej on Wednesday April 15, 2020 @08:21AM (#22876849)
Probably someone on the remote machine with restricted or no internet connection and admin privileges. It happens e.g. on company or academic clusters.

It is much easier to ask admin to install emacs and use defaults than to ask to install emacs and packages (and resolve problems that may happen on the way).

Re:Emacs: The most successful malleable system by throwaway7234 on Wednesday April 15, 2020 @08:21AM (#22876842)
I can offer one data point.

The company I'm an on-site (well, usually) contractor for, whose network I use at work, proxies web traffic over HTTP. It's encrypted at the proxy for HTTPS, but everything outbound from the internal network is effectively plain text.

Emacs doesn't allow packages to be installed over HTTP, so in order to use the package repositories, I have to use my phone as a hotspot.

Re:Emacs: The most successful malleable system by zlalanne on Wednesday April 15, 2020 @08:28AM (#22876910)
If you have sufficient disk space (~5GB), you can also keep an elpa-mirror on your machine.

https://github.com/d12frosted/elpa-mirror

Re:Emacs: The most successful malleable system by tikej on Wednesday April 15, 2020 @08:35AM (#22876966)
Didn’t know about this possibility. It’s a good idea to archive it locally and update regularly (just in case something happens with internet ;). Is the same possible for melpa?
Re:Emacs: The most successful malleable system by Myrmornis on Wednesday April 15, 2020 @05:23PM (#22883231)
> Emacs doesn't allow packages to be installed over HTTP

Are you sure about that? I think that you can specify http as usual in the URL:

  (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
See the instructions here which go to an annoyingly extreme level of ugliness to set the protocol in a paranoid fashion: https://melpa.org/#/getting-started