Jak mogę zawsze mieć najnowszą wersję emacsa

14

Uwielbiam używać Emacsa i zawsze chcę mieć najnowszą wersję Emacsa. Ale na moim komputerze Ubuntu Emacs nie będzie aktualizowany automatycznie podczas regularnych aktualizacji oprogramowania. Nawet gdy uruchamiam sudo apt-get upgrade emacs, mówi, że mam najnowsze Emacsy, podczas gdy ich nie mam. Widzę, że używam wersji Emacsa 24.4, a najnowsza to 24.5.

Szukałem sposobów na uaktualnienie Emacsa do najnowszej wersji, ale nie znalazłem żadnej. Czy możesz mi powiedzieć, jak to zrobić?

Sampath Surineni
źródło
4
Czy to pytanie dotyczy emacsa czy repozytoriów Ubuntu?
Dan
Chodzi o emacsa.
Sampath Surineni

Odpowiedzi:

5

Postępuj zgodnie ze wskazówkami dla Ubuntu, zastępując 24.5 w kroku pobierania 5 i kolejnych.

Użytkownik Emacsa
źródło
Czy musimy przejść przez cały proces dla każdej wersji? Czy nie ma prostszego sposobu? Na przykład możemy ulepszyć zaćmienie, wybierając uaktualnienie zaćmienia z menu pomocy
Sampath Surineni
Tylko w przypadku, gdy repozytoria ubuntu nie są aktualizowane do najnowszej wersji. Zwykle występuje opóźnienie między oficjalnymi wydaniami, a gdy repozytoria niższego rzędu, takie jak ubuntu, mają je gotowe do automatycznych aktualizacji apt-get.
Emacs User,
2
@EmacsUser, ta odpowiedź byłaby lepsza, gdyby zawierała nie tylko link, ale rzeczywiste instrukcje.
rekado
1
@rekado, nie mam uprawnień do kopiowania ze strony ubuntu. Jeśli tak, nie wahaj się zaktualizować mojej odpowiedzi.
Użytkownik Emacsa
2
@EmacsUser: to podsumowanie prawdopodobnie nie jest wystarczająco szczegółowe, aby ktoś mógł samodzielnie użyć tej kombinacji odpowiedzi / komentarzy. Proszę o więcej informacji z korzyścią dla przyszłych czytelników; OP wydaje się być niedoświadczony w SE, więc może zbyt szybko zaakceptował odpowiedź.
Dan
14

Z GNU Guix możesz łatwo ponownie użyć definicji pakietu dla Emacsa z późniejszym archiwum.

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

Lub bezpośrednio zainstalować go w domyślnym profilu:

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

Emacs 24.5 jest już dostępny za pośrednictwem Guix, więc wystarczy uruchomić

guix package -i emacs

aby zainstalować najnowszą wersję.

Nawet jeśli Guix nie zaoferował najnowszej wersji, łatwo w chmurze utwórz wariant pakietu, taki jak ten:

(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"))))))

Możesz używać Guix jako menedżera pakietów na Ubuntu lub dowolnym innym systemie GNU.

rekado
źródło
Świetnie, czytałem wcześniej o guix, a teraz wypróbowałem go, gdy natknąłem się na twój post i wszystko po prostu działało :) Czy masz jakieś linki / zasoby, jak zacząć od guix i jak zbudować dla niego pakiety i wnieść je do repozytoriów ?
clemera
Świetny! Powinieneś sklonować repozytorium git i dodać definicje pakietów w plikach modułu w gnu/packages. Zobacz rozdział dotyczący wkładu w podręczniku. Jeśli potrzebujesz pomocy, możesz zapytać na kanale IRC #guix na freenode.
rekado
6

Kompilacja ze źródła jest oczywiście opcją (która może, ale nie musi być dla ciebie oczywista).

Jeśli chcesz zainwestować w naukę, jak to zrobić, będziesz w stanie skompilować i używać praktycznie dowolnej wersji Emacsa, którą jesteś zainteresowany (niezależnie od tego, czy jest to najnowsza stabilna wersja; jedna z kompilacji „testów wstępnych” dla następna wersja lub najnowszy kod z repozytorium źródłowego).

phils
źródło
4

W przypadku dystrybucji Ubuntu możesz zainstalować PPA ubuntu-elisp . Obecnie zawiera Emacsa 25.0.50.2, od 19.09.2015. To nie jest najnowsza stabilna wersja, ale uważam, że działa wystarczająco dobrze. Żeby zainstalować:

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

Następnie uruchom Emacsa jak emacs-snapshotzamiast emacs. W ten sposób możesz mieć jednocześnie najnowocześniejszą i stabilną wersję.

Nowe aktualizacje zostaną usunięte w trakcie normalnego procesu aktualizacji Ubuntu.

erikstokes
źródło
Nie poleciłbym tego PPA. Kompiluje się rzadko, szczególnie w starszych wersjach Ubuntu. Spójrz na datę ostatniej kompilacji dla bieżącej wersji LTS.
lunaryorn
Jest dość daleko w tyle w przypadku LTS, ale często aktualizuje się w najnowszym Ubuntu.
erikstokes
2

Używam gsrc do tego. Postępuj zgodnie z instrukcjami na stronie - i przeczytaj instrukcję. Zasadniczo, gdy masz bieg gsrc, możesz pisać

make -C gnu/emacs

najnowsza stabilna wersja emacsa zostanie dla Ciebie pobrana i skompilowana, w tym niektóre zależności.

Nie podoba mi się domyślne parametry konfiguracyjne, w których są używane gsrc, dlatego odpowiednio zmieniam config.mkplik w gnu/emacskatalogu. Zauważ, że jeśli chcesz mieć jakieś niezależne od GNU zależności (np. Do obsługi obrazów w emacsie), biblioteki te muszą być obecne w twoim systemie.

Christian Herenz
źródło
0

W odpowiedzi Christian Herenz wspomina, że ​​używanie gsrc jest dobrym sposobem na pozostawanie na bieżąco. W przeszłości korzystałem z gsrc, chociaż czasami było to trochę trudne. Wygląda na to, że wprowadzili aplikację wiersza polecenia, która ułatwia korzystanie z niej bez uruchamiania makepoleceń. Dokumentacja jest również możliwie nieaktualne od starego make -C gnu/applicationpolecenia nie działa w ogóle dla mnie.

Jeśli jednak użyjesz nowego gsrcpliku wykonywalnego w głównym katalogu gsrc, możesz łatwo zainstalować i zaktualizować pakiety, np .:

gsrc install emacs
gsrc update emacs

gsrc jest instalowany automatycznie przy pierwszej instalacji lub ponownej instalacji gsrc (właśnie ponownie zainstalowałem cały program).

Salotz
źródło
-2

Aktualizacja do najnowszej wersji Emacsa jak najszybciej nie zawsze jest dobrym pomysłem.

Na przykład Emacs 24.4 ma błąd, który spowoduje błąd, M-xjeśli zostanie użyty tryb zła ( https://bitbucket.org/lyro/evil/issues/437/mx-is-undefined-in-emacs-244 ).

Z mojego doświadczenia wynika, że ​​lepiej jest poczekać 6 miesięcy, aby dać wtyczkom stron trzecich trochę czasu na rozwiązanie problemu ze zgodnością.

Ale jeśli nie zależy ci na powyższym problemie. Oto najprostszy sposób instalacji z kodu źródłowego.

Zainstaluj Emacsa w katalogu HOME:

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

Zainstaluj Emacsa w domyślnym katalogu:

./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

Jestem w 100% pewien, że mój sposób zawsze będzie działał, ponieważ używam tego w Ubuntu / Mint / Debian / Centos / Gentoo / ArchLinux przez 4 lata bez żadnych problemów.

Chen Bin
źródło
5
Z korzyścią dla osób początkujących w procesie kompilacji Emacsa, zwróć uwagę, że powyższe podejście tworzy plik wykonywalny bez obsługi grafiki, dźwięku lub GUI.
phils