Как я могу всегда иметь последнюю версию Emacs


14

Я люблю использовать Emacs и хочу всегда иметь последнюю версию Emacs. Но на моей машине с Ubuntu Emacs не будет обновляться автоматически во время регулярных обновлений программного обеспечения. Даже когда я запускаю, sudo apt-get upgrade emacsон говорит, что у меня есть последние версии Emacs, а я нет. Я вижу, что я использую 24.4 версию Emacs, а последняя - 24.5.

Я искал способы обновить Emacs до последней версии, но не смог найти ни одного. Подскажите, пожалуйста, как это сделать?


4
Это вопрос о emacs или о репозиториях Ubuntu?
Дан

Это про emacs.
Сампат Суринени

Ответы:


5

Следуйте этим инструкциям для Ubuntu, заменив 24.5 на шаге 5 загрузки и последующих шагах.


Нужно ли проходить весь процесс для каждой версии? Есть ли более простой способ? Например, мы можем обновить eclipse, выбрав в меню «
Справка» пункт «Обновить

Только для случаев, когда репозитории Ubuntu не обновляются до последней версии. Обычно существует официальная задержка между официальными выпусками, и когда нижестоящие репозитории, такие как ubuntu, готовят их к автоматическим обновлениям apt-get.
Emacs User

2
@EmacsUser этот ответ был бы лучше, если бы он содержал не только ссылку, но и реальные инструкции.
rekado

1
@rekado, у меня нет разрешения копировать с сайта Ubuntu. Если вы это сделаете, не стесняйтесь обновить мой ответ.
Emacs User

2
@EmacsUser: эта сводка, вероятно, недостаточно детальна, чтобы кто-то мог использовать эту комбинацию ответа / комментария самостоятельно. Я прошу больше информации для будущих читателей; OP кажется неопытным с SE и, возможно, принял ответ слишком быстро.
Дан

14

С GNU Guix вы можете легко повторно использовать определение пакета для Emacs с более поздним tarball.

guix build emacs --with-source=http://some/emacs/tarball.tar.xz

Или непосредственно установить его в свой профиль по умолчанию:

guix package -i emacs --with-source=http://some/emacs/tarball.tar.xz

Emacs 24.5 уже доступен через Guix, так что вам просто нужно запустить

guix package -i emacs

установить последнюю версию.

Даже если Guix не предлагал последнюю версию, вы легко создадите вариант пакета, такой как этот:

(define-public my/emacs
  (package (inherit emacs)
    (name "custom-emacs")
    (version "25.7")
    (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnu/emacs/emacs-"
                                  version ".tar.xz"))
              (sha256
               (base32
                "0kn3rzm91qiswi0cql89kbv6mqn27rwsyjfb8xmwy9m5s8fxfiyx"))))))

Вы можете использовать Guix в качестве менеджера пакетов поверх Ubuntu или любой другой системы GNU.


Отлично, я читал о guix раньше, и теперь я попробовал его, когда наткнулся на ваш пост, и все просто заработало :) У вас есть ссылки / ресурсы, как начать работу с guix и как собрать пакеты для него и добавить их в репозитории ?
Клемера

Большой! Вы должны клонировать репозиторий git и добавить определения пакетов в файлы модуля в gnu/packages. См. Раздел о содействии в руководстве. Если вам нужна помощь, вы можете обратиться по IRC-каналу #guix на freenode.
Рекадо

6

Разумеется, вариант компиляции из исходного кода (который может быть или не быть очевидным для вас).

Если вы готовы инвестировать в обучение тому, как это сделать, вы сможете скомпилировать и использовать практически любую версию Emacs, которая вас интересует (будь то последняя стабильная версия; одна из «предварительных» сборок для следующий выпуск или последний код из исходного репозитория).


4

Для дистрибутивов Ubuntu вы можете установить ubuntu-elisp PPA . В настоящее время он содержит Emacs 25.0.50.2, 2015-09-19. Это не последняя стабильная версия, но я нашел, что она работает достаточно хорошо. Установить:

$ sudo apt-add-repository ppa:ubuntu-elisp/ppa
$ sudo apt-get update
$ sudo apt-get install emacs-snapshot

Затем запустите Emacs emacs-snapshotвместо emacs. Таким образом, вы можете иметь как передовую, так и стабильную версию одновременно.

Новые обновления будут отменены через обычный процесс обновления Ubuntu.


Я бы не рекомендовал этот PPA. Он собирается нечасто, особенно для старых версий Ubuntu. Посмотрите на дату последней сборки для текущей версии LTS.
lunaryorn

Это довольно далеко позади для LTS, но он часто обновляется для последней версии Ubuntu.
Erikstokes

2

Я использую gsrc для этого. Просто следуйте инструкциям на сайте - и обязательно прочитайте инструкцию. В основном, когда у вас есть бег, gsrcвы можете набрать

make -C gnu/emacs

и последняя стабильная версия emacs будет загружена и скомпилирована для вас, включая некоторые зависимости.

Мне не нравятся параметры конфигурации по умолчанию, которые используются в gsrc, поэтому я соответственно изменяю config.mkфайл в gnu/emacsкаталоге. Обратите внимание: если вам нужны сторонние зависимости не от gnu (например, для поддержки изображений в emacs), эти библиотеки должны присутствовать в вашей системе.


0

В ответе Кристиана Херенца упоминается, что использование gsrc - это хороший способ оставаться в курсе. В прошлом я использовал gsrc, хотя иногда его было немного сложно использовать. Кажется, они ввели приложение командной строки, чтобы упростить его использование без запуска makeкоманд. Документация также, возможно , устарел , так как старую make -C gnu/applicationкоманда не будет работать на всех для меня.

Однако, если вы используете новый gsrcисполняемый файл в главном каталоге gsrc, вы можете легко установить и обновить пакеты, например:

gsrc install emacs
gsrc update emacs

gsrc автоматически устанавливается при первой установке или переустановке gsrc (я просто переустанавливал все это).


-2

Обновление до последней версии Emacs НЕ всегда является хорошей идеей.

Например, в Emacs 24.4 есть ошибка, которая приводит к M-xсбою, если используется злой режим ( https://bitbucket.org/lyro/evil/issues/437/mx-is-undefined-in-emacs-244 ).

По моему опыту, лучше подождать 6 месяцев, чтобы дать сторонним плагинам некоторое время на буфер для устранения проблемы совместимости.

Но, если вас не волнует вышеуказанная проблема. Вот самый простой способ установки из исходного кода.

Установите Emacs в вашу домашнюю директорию:

mkdir -p ~/myemacs24.5; ./configure --prefix=~/myemacs/24.5 --without-gtk --without-gtk3 --without-aqua --without-x --without-xpm --without-png --without-gif --without-alsa --without-tiff --without-jpeg --without-aqua --without-rsvg --without-xft --without-xaw3d --without-xim --without-xpm --without-dbus --without-makeinfo --with-x-toolkit=no --without-sound --without-sync-input --without-pop;make;make install

Установите Emacs в каталог по умолчанию:

./configure --without-gtk --without-gtk3 --without-aqua --without-x --without-xpm --without-png --without-gif --without-alsa --without-tiff --without-jpeg --without-aqua --without-rsvg --without-xft --without-xaw3d --without-xim --without-xpm --without-dbus --without-makeinfo --with-x-toolkit=no --without-sound --without-sync-input --without-pop;make;sudo make install

Я на 100% уверен, что мой путь всегда будет работать, потому что я использовал этот путь в Ubuntu / Mint / Debian / Centos / Gentoo / ArchLinux в течение 4 лет без каких-либо проблем.


5
Для удобства новичков в процессе компиляции Emacs, обратите внимание, что описанный выше подход создает исполняемый файл без поддержки графики, звука и графического интерфейса.
Фил
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.