Jak zmusić apt-get do zainstalowania najnowszej wersji z repozytorium fontforge

Kompletny noobie Linuksa, jakim jestem, nie mogę uzyskać apt-get, aby zainstalować najnowszą wersję font-forge.

W tle: korzystam z podsystemu Ubuntu w systemie Windows 10, a nawet mam Aplikacje GUI działające na serwerze Xming. Tak, mógłbym uruchomić maszynę wirtualną, ale czułem, że po prostu spróbuję, jako dowód słuszności koncepcji. W każdym razie nie sądzę, że ma to związek z moim prawdziwym problemem, po prostu pomyślałem, że wspomnij o mojej konfiguracji na wszelki wypadek.

Używam wersji Ubuntu 18.04.4 LTS (Bionic Beaver). Uruchomiłem apt-get update i apt-get upgrade, wszystko jest aktualne.

Więc postępowałem zgodnie z instrukcje instalacji fontforge dla Ubuntu i uruchomiły następujące polecenia:

sudo apt-get install software-properties-common sudo add-apt-repository ppa:fontforge/fontforge sudo apt-get update sudo apt-get install fontforge 

Ten zainstalowany fontforge i tak otworzyć i pokazać, ale problem polega na tym, że jest to stara wersja: 1:20170731~dfsg-1.

Polecenie fontforge -v programy

... Based on sources from 11:21 UTC 24-Sep-2017-ML-D. Based on source from git with hash: no xdefs_filename! ... fontforge 11:21 UTC 24-Sep-2017 libfontforge 20170924 

Ta strona zawiera listę 20190413-27-g1acfefa-0ubuntu1~bionic jako najnowszą wersję dla Bionic, ale obok znajduje się również " (dostępna nowsza wersja) " i zawiera linki do ta strona , która wydaje się mówić, że wersja z domyślnych repozytoriów Ubuntu jest traktowana jako nowsza niż wersja z repozytorium fontforge. Nie wiem, dlaczego tak się dzieje przypadku, i chciałbym powiedzieć apt-get, aby zainstalować pozostałe r, nowsza wersja.

Wydaje mi się, że najbezpieczniejszą ścieżką byłaby kompilacja ze źródła, ponieważ wersja w repozytorium fontforge wydaje się spóźniona, ale naprawdę wolałbym nie musieć tego robić.


zgodnie z żądaniem, dane wyjściowe apt-cache policy fontforge:

apt-cache policy fontforge fontforge: Installed: 1:20170731~dfsg-1 Candidate: 1:20170731~dfsg-1 Version table: *** 1:20170731~dfsg-1 500 500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages 100 /var/lib/dpkg/status 20190413-27-g1acfefa-0ubuntu1~bionic 500 500 http://ppa.launchpad.net/fontforge/fontforge/ubuntu bionic/main amd64 Packages 

Odpowiedź

1: na początku wersji w repozytoriach Ubuntu (znane jako epoka) powoduje apt, aby uznać tę wersję za nowszą niż wersja w PPA. Aby zainstalować to drugie, musisz zapytać apt, aby zrobić to wyraźnie:

sudo apt install fontforge=20190413-27-g1acfefa-0ubuntu1~bionic 

Będziesz wtedy potrzebować aby go wstrzymać lub dodać priorytet pinów do PPA, aby uniemożliwić apt „uaktualnienie” pakietu do wersji w repozytoriach Ubuntu:

sudo apt-mark hold fontforge 

Komentarze

  • Pierwsze polecenie skutkuje E: Release '20190413-27-g1acfefa-0ubuntu1~bionic' for 'fontforge' was not found
  • Nieważne, musiała mieć literówkę czy coś. Teraz ' narzeka na " niespełnione zależności ", które nie zostaną zainstalowane . ' Próbuję teraz zainstalować je ręcznie
  • To załatwiło sprawę! Wydaje mi się, że ' czy będę musiał użyć apt-mark także w zależnościach? A jak w przyszłości sprawdzać dostępność aktualizacji i aktualizacji z innego repozytorium?
  • Nie sądzę, abyś potrzebował blokad dla zależności; gdy fontforge zostanie zainstalowany, odpowiednio je ograniczy. Korzystanie z blokady oznacza, że będziesz musiał ręcznie sprawdzać dostępność aktualizacji; priorytety pinów byłyby lepsze (ale nie mogę teraz sprawdzić wymaganej konfiguracji). Oczywiście najlepszym rozwiązaniem dla każdego byłoby, gdyby PPA również użyła epoki ;-).

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *