Sådan tvinges apt-get til at installere den nyeste version fra fontforge repository

Komplet Linux noobie, som jeg er, jeg kan ikke synes at få apt-get for at installere den nyeste version af font-forge.

Baggrund: Jeg kører Ubuntu-undersystemet i Windows 10 og fik endda GUI-applikationer, der kører ved hjælp af Xming Server. Ja, jeg kunne køre en VM, men jeg følte, at jeg bare skulle prøve det som et proof-of-concept. Alligevel tror jeg ikke, det har at gøre med mit virkelige problem, jeg troede bare, at jeg nævnt min opsætning bare i tilfælde.

Ubuntu-versionen, som jeg kører, er 18.04.4 LTS (Bionic Beaver). Jeg løb apt-get update og apt-get upgrade, alt er opdateret.

Så jeg fulgte fontforge installationsinstruktioner til Ubuntu og kørte følgende kommandoer:

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

Denne installerede fontforge, og det gør åbne og dukke op, men problemet er, at det er en gammel version: 1:20170731~dfsg-1.

Kommandoen fontforge -v viser

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

Denne side viser 20190413-27-g1acfefa-0ubuntu1~bionic som den nyeste version til Bionic, men den angiver også " (Nyere version tilgængelig) " ved siden af og linker til denne side , som synes at sige, at versionen fra Ubuntu-standardlagrene behandles som værende nyere end den fra fontforge-repoen. Jeg er forvirret over, hvorfor dette er sagen, og jeg vil gerne fortælle apt-get at installere othe r, nyere version.

Jeg antager, at den sikreste vej ville være at kompilere fra kilden, da versionen i fontforge-repoen ser ud til at være et stykke tid bagud, men jeg foretrækker virkelig ikke at skulle gøre det.


som ønsket, output fra 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 

Svar

1: i starten af versionen i Ubuntu repositories (kendt som epoken) forårsager apt for at betragte den version som nyere end versionen i PPA. For at installere sidstnævnte skal du bede apt om at gøre det eksplicit:

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

Du skal derefter bruge for at sætte et greb om det eller tilføje en pinprioritet på PPA for at forhindre apt i at “opgradere” pakken til versionen i Ubuntu repositories:

sudo apt-mark hold fontforge 

Kommentarer

  • Den første kommando resulterer i E: Release '20190413-27-g1acfefa-0ubuntu1~bionic' for 'fontforge' was not found for mig
  • Glem det, skal have haft en tastefejl eller noget. Nu klager det ' over " uopfyldte afhængigheder ", der ikke skal installeres . Jeg ' prøver at installere dem manuelt lige nu
  • Det gjorde tricket! Jeg antager, at jeg ' skal bruge apt-mark også på afhængighederne? Og hvordan kontrollerer jeg for opdateringer og opdateringer fra det andet lager i fremtiden?
  • Jeg tror ikke, du har brug for tilbageholdelse af afhængighederne; når fontforge er installeret, vil det begrænse dem passende. Brug af et hold betyder, at du bliver nødt til at kontrollere opgraderinger manuelt; pinprioriteter ville være bedre (men jeg kan ikke kontrollere den nødvendige konfiguration lige nu). Naturligvis ville den bedste løsning for alle være, at PPA også bruger en epoke ;-).

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *