Instalar o emacs sem o sudo?

23

Uso o vim há anos e realmente não gosto disso.

Gostaria de experimentar o emacs por um tempo, mas ele não está instalado em nenhum dos servidores Linux que uso regularmente. Eu não tenho root, então apt-get installnão é uma opção (nem posso pedir permissão ao administrador de sistemas, ele definitivamente diria que não).

Existe uma versão binária do emacs que posso instalar no meu diretório pessoal? A maioria dos servidores está executando o CentOS.

Abhi Beckert
fonte
Você tem ferramentas de compilação? Não pode ser muito difícil compilá-lo com os sinalizadores certos; veja esta pergunta para obter dicas e execute-a diretamente da sua pasta pessoal.
Journeyman Geek
@JourneymanGeek sim, o gcc parece estar disponível para o meu usuário em pelo menos alguns dos servidores. Eu nunca testei. Estou um pouco nervoso com a execução make install, pois algo que o administrador do sistema ficaria irritado ... Eu trabalho com servidores de produção todos os dias e não sou eu quem precisa acordar às 2 da manhã, se algo der errado.
Abhi Beckert 29/08
Votado apenas por estar preocupado com o fato de o administrador do sistema ter uma boa noite de sono; tendo passado vários anos nesse cargo, entre outros, eu poderia desejar que mais usuários tivessem recebido a mesma preocupação.
Aaron Miller
Relacionado, consulte Instalação mínima do emacs24 no ubuntu . Ele mostra como configurar e compilar o emacs a partir de fontes para uma pequena área ocupada. Geralmente, produz uma área menor do que a fornecida com pacotes como emacs-noxou emacs24-nox.
JWW

Respostas:

31

Se você pode compilar código, basta baixar uma distribuição de origem do emacs.

Em vez de começar ./configure, use as opções de configuração para informar ao sistema de construção onde você deseja que os arquivos terminem. Por exemplo:

./configure --prefix=/home/abhi/emacs --bindir=/home/abhi/bin

instalará todos os arquivos de suporte do emacs em /home/abhi/emacse os executáveis ​​do emacs em /home/abhi/bin. Se o último estiver em seu $ PATH, o que geralmente é, as coisas devem funcionar (sm).

Depois disso você pode

make && make install

sem se preocupar com a instalação, colocando outros arquivos além do diretório inicial.

(Tudo é baseado no diretório inicial, é /home/abhiclaro. Edite conforme necessário.)

rici
fonte
5
Só para atirar em meus dois bits aqui: eu não tenho raiz na minha máquina desktop no trabalho, e isso é exatamente como eu construído e instalado Emacs, com a ligeira diferença que o meu comando configure foi ./configure --prefix=~/installse meu $PATHinclui ~/installs/bin- Emacs isn' é a única coisa que construí e instalei para mim, e acho preferível manter tudo em um único diretório para não confundir demais o $ HOME, mas suponho que seja mais uma questão de gosto do que qualquer coisa.
Aaron Miller
2
FWIW, para emacs 24.3: $ ./configure --prefix=~/software --bindir=~/bin rendimentos configure: error: expected an absolute directory name for --prefix: ~/software. Então, talvez use $ HOME.
user100464
2
Isso funcionou principalmente para mim. No servidor em que eu estava compilando, as /libgif/libungifbibliotecas não foram encontradas, então eu tive que adicionar --with-gif=noao ./configurecomando.
22316 Steven Spielberg Howell
@ StevenC.Howell o que essas bandeiras fazem?
Michael
2
@michael: --with-gif=nosuprime o suporte à criação de arquivos de imagem GIF no emacs. (Sim, o emacs pode exibir arquivos de imagem. Consulte gnu.org/software/emacs/manual/html_node/emacs/… ). Existem vários outros sinalizadores desse tipo; executar ./configure --helppara uma lista.
Ric # 06/18
6

A instalação a partir do código-fonte ou o download manual do .rpms e a extração deles são possíveis, mas difíceis, porque todos dependem de outras bibliotecas.

Aqui está uma maneira simples de usar conda

conda install -c conda-forge emacs

Se você não possui o conda e gosta de instalá-lo, consulte [1]

emacs foi pré-construído para as plataformas OS X e linux_64, veja [2] para versões.

[1] https://conda.io/miniconda.html
[2] https://anaconda.org/conda-forge/emacs

Thamme Gowda
fonte
3
Não acredito que posso instalar o emacs usando o conda. Obrigado!
CodyChan
1
:-D. Passei uma hora tentando criar o emacs do zero (porque não tinha privilégios de root em um servidor e os administradores não me ajudaram), e senti que 'deve haver uma maneira mais simples'. Certamente, havia uma maneira mais simples comconda
Thamme Gowda
1
Também não tenho privilégios de root em um servidor, mas costumava compilar o emacs do zero várias vezes (pode ser necessário corrigir algumas bibliotecas perdidas), o ponto principal agora é que não consegui compilar o emacs do zero devido a alguns erros ao compilar . Enfim, consegui instalar a versão mais recente do emacs usando conda, esta é uma maneira nova e limpa de aprender com você. obrigado.
CodyChan
1
incrível, esta é a melhor resposta
Prasad Chalasani
Inacreditável que o conda forneça o emacs! Agora me perguntando o que mais estou perdendo. pesquisa do conda O emacs funciona, mas por curiosidade, existe alguma variante da lista do conda que mostra quais pacotes estão disponíveis ???
Balu
1

Não instale o emacs nos servidores - não há motivo para se forçar a usar a interface através da latência da rede. Em vez disso, instale o emacs em sua estação de trabalho e deixe-o buscar os arquivos dos servidores usando o modo TRAMP . Como alternativa, você pode usar o Filezilla, ele fará o download do arquivo e fará o upload automaticamente após o salvamento.

wingedsubmariner
fonte
1
Tenho menos de 1ms de latência para alguns servidores e latência muito boa para os outros. Usamos um data center próximo. Latência não é um problema para nenhum outro editor e eu quero usá-lo como meu $ EDITOR para coisas como digitar mensagens de confirmação para controle de versão. Eu nunca estou fazendo programação séria em um servidor remoto, eu uso minha estação de trabalho local que já possui o emacs instalado.
Abhi Beckert 29/08
1
@AbhiBeckert Bem, nesse caso, talvez você queira passar pela dor de tentar instalá-lo. Eu não teria medo de fazer um make install, contanto que você não seja root, ele não poderá fazer nada fora do diretório inicial. Além disso, você pode querer ver se nanoestá instalado, se preferir a edição sem modelo.
Wingedsubmariner