Copyright © 1999-2024 The BLFS Development Team
Copyright © 1999-2024, The BLFS Development Team
Alle rettigheter forbeholdt.
Denne boken er lisensiert under Creative Commons License.
Datainstruksjoner kan trekkes ut fra boken under MIT License.
Linux® er et registrert varemerke av Linus Torvalds.
Publisert 01.09.2024
| Revision History | ||
|---|---|---|
| Revision 12.2 | 01.09.2024 | Trettiende utgivelse |
| Revision 12.1 | 01.03.2024 | Tjueniende utgivelse |
| Revision 12.0 | 01.09.2023 | Tjueåttende Utgivelse |
| Revision 11.3 | 01.03.2023 | Tjuesjuende Utgivelse |
| Revision 11.2 | 01.09.2022 | Tjueseksende Utgivelse |
| Revision 11.1 | 01.03.2022 | Tjuefemte Utgivelse |
| Revision 11.0 | 01.09.2021 | Tjuefjerde Utgivelse |
| Revision 10.1 | 01.03.2021 | Tjuetredje Utgivelse |
| Revision 10.0 | 01.09.2020 | Tjueandre Utgivelse |
| Revision 9.1 | 01.03.2020 | Tjueførste Utgivelse |
| Revision 9.0 | 01.09.2019 | Tjuende Utgivelse |
| Revision 8.4 | 01.03.2019 | Nittende Utgivelse |
| Revision 8.3 | 01.09.2018 | Attende Utgivelse |
| Revision 8.2 | 02.03.2018 | Syttende Utgivelse |
| Revision 8.1 | 01.09.2017 | Sekstende Utgivelse |
| Revision 8.0 | 25.02.2017 | Femtende Utgivelse |
| Revision 7.10 | 07.09.2016 | Fjortende Utgivelse |
| Revision 7.9 | 08.03.2016 | Trettende Utgivelse |
| Revision 7.8 | 01.10.2015 | Tolvte Utgivelse |
| Revision 7.7 | 06.03.2015 | Ellevte Utgivelse |
| Revision 7.6 | 23.09.2014 | Tiende Utgivelse |
| Revision 7.5 | 05.03.2014 | Niende Utgivelse |
| Revision 7.4 | 14.09.2013 | Åttende Utgivelse |
| Revision 6.3 | 24.08.2008 | Syvende Utgivelse |
| Revision 6.2 | 24.02.2007 | Sjette Utgivelse |
| Revision 6.1 | 14.08.2005 | Femte Utgivelse |
| Revision 6.0 | 02.04.2005 | Fjerde Utgivelse |
| Revision 5.1 | 05.06.2004 | Tredje Utgivelse |
| Revision 5.0 | 06.11.2003 | Andre Utgivelse |
| Revision 1.0 | 25.04.2003 | Første Utgivelse |
Abstract
Denne boken følger opp fra Linux From Scratch boken. Det introduserer og guider leseren gjennom tillegg til systemet inkludert nettverk, grafiske grensesnitt, lydstøtte og skriver og skanner brukerstøtte.
Etter å ha hjulpet til med Linux From Scratch en kort tid, la jeg merke til at vi fikk mange spørsmål om hvordan vi skulle gjøre ting utover basis LFS systemet. På det tidspunktet var den eneste hjelpen tilbudt spesielt relatert til LFS var LFS hintene (https://www.linuxfromscratch.org/hints). De fleste av LFS tipsene er ekstremt gode og godt skrevet men jeg (og andre) kunne fortsatt se et behov for mer omfattende hjelp til gå utover LFS — derfor BLFS.
BLFS har som mål å være mer enn LFS hintene konvertert til XML selv om mye av arbeidet vårt er basert på hintene, og noen forfattere skriver faktisk både hint og relevante BLFS seksjoner. Vi håper at vi kan gi deg med nok informasjon til å ikke bare klare å bygge systemet opp til hva du vil ha, enten det er en webserver eller et multimedia skrivebord system, men også at du vil lære mye om systemkonfigurasjon.
Takk som alltid til alle i LFS/BLFS samfunnet; spesielt de som har bidratt med instruksjoner, skrevet tekst, svart på spørsmål og generelt ropte når ting var galt!
Til slutt oppfordrer vi deg til å engasjere deg i fellesskapet; spørre spørsmål på mailinglisten eller nyhetsgatewayen og bli med på moroa på #lfs og #lfs-support at Libera. Du kan finne mer informasjon om alle disse i Introduksjon delen av boken.
Gled deg over å bruke BLFS.
Mark Hymers
markh <at> linuxfromscratch.org
BLFS Redaktør (Juli 2001–Mars 2003)
Jeg husker fortsatt hvordan jeg fant BLFS prosjektet og begynte å bruke instruksjonene som ble fullført på det tidspunktet. jeg kunne ikke tro hvor fantastisk det var å få en applikasjon opp og kjøre veldig raskt, med forklaringer på hvorfor ting ble gjort på en bestemt måte. Dessverre, for meg, tok det ikke lang tid før jeg åpnet applikasjoner som hadde ikke noe mer enn "To be done" på siden. Jeg gjorde det de fleste ville gjøre, Jeg ventet på at noen andre skulle gjøre det. Det tok ikke lang tid før jeg så gjennom Bugzilla for noe enkelt å gjøre. Som med enhver læringsopplevelse, endres definisjonen av hva som var lett å gjøre.
Vi oppfordrer deg fortsatt til å engasjere deg i BLFS siden den aldri egentlig er ferdig. Bidra eller bare bruke, vi håper du liker din BLFS opplevelse.
Larry Lawrence
larry <at> linuxfromscratch.org
BLFS Redaktør (Mars 2003–Juni 2004)
BLFS prosjektet er en naturlig progresjon av LFS. Til sammen gir disse prosjektene en unik ressurs for åpen kildekode fellesskapet. Det tar mysteriet ut av prosessen med å bygge et komplett, funksjonelt programvaresystem fra kildekoden bidratt av mange talentfulle individer over hele verden. Det tillater virkelig brukere å implementere slagordet “Din distro, dine regler.”
Målet vårt er å fortsette å tilby den beste tilgjengelige ressursen som viser hvordan du integrerer mange viktige Open Source applikasjoner. Siden disse applikasjoner oppdateres hele tiden og nye applikasjoner utvikles, denne boken vil aldri bli komplett. I tillegg er det alltid plass til forbedring i å forklare nyansene i hvordan du installerer de forskjellige pakker. For å gjøre disse forbedringene trenger vi tilbakemeldingen din. Jeg oppmuntrer deg til å delta på de forskjellige e-postlistene, nyhetsgruppene og IRC kanaler for å hjelpe deg med å nå disse målene.
Bruce Dubbs
bdubbs <at> linuxfromscratch.org
BLFS Redaktør (Juni 2004–Desember 2006 og Februar 2011–nå)
Min introduksjon til [B]LFS prosjektet var faktisk ved et uhell. Jeg prøvde å bygge et GNOME miljø ved bruk av noen fremgangsmåter og annen informasjon jeg fant på nettet. Et par ganger fikk jeg noen byggeproblemer, og google hentet opp noen gamle BLFS post liste meldinger. Av nysgjerrighet besøkte jeg Linux From Scratch nettstedet og kort tid etter ble han hektet. Jeg har ikke brukt noen annen Linux distribusjon til personlig bruk siden.
Jeg kan ikke love at noen vil føle den følelsen av tilfredshet jeg følte etter å ha bygget mine første systemer ved å bruke [B]LFS instruksjoner, men jeg håper inderlig at BLFS opplevelsen din er like givende for deg som den har vært for meg.
BLFS prosjektet har vokst betydelig de siste par årene. Det er flere pakkeinstruksjoner og relaterte avhengigheter enn noen gang før. Prosjektet krever dine innspill for fortsatt suksess. Hvis du oppdager at du liker å bygge BLFS, kan du vurdere å hjelpe til med måten du kan. BLFS krever hundrevis av timer med vedlikehold for å beholde den selv halvaktuell. Hvis du føler deg trygg nok på redigeringsferdighetene dine, vurder å bli med i BLFS teamet. Bare å bidra til utsendelseslistens diskusjoner med gode råd og/eller gi oppdateringer til bokens XML vil sannsynligvis føre til at du mottar en invitasjon til å bli med i teamet.
Randy McMurchy
randy <at> linuxfromscratch.org
BLFS Redaktør (Desember 2006–Januar 2011)
Denne versjonen av boken er ment å brukes når man bygger på toppen av et system bygget ved hjelp av LFS boken. Alt har blitt gjort for å sikre nøyaktigheten og påliteligheten til instruksjonene. Mange finner det å bruke instruksjonene i denne boken etter å ha bygget den nåværende stabile eller utviklingsversjon av LFS gir et stabilt og svært moderne Linux-system.
Kos deg!
Randy McMurchy
August 24th, 2008
Denne boken er hovedsakelig rettet mot de som har bygget et system basert på LFS boken. Det vil også være nyttig for de som bruker andre distribusjoner, og av en eller annen grunn ønsker å bygge programvare manuelt og trenger litt hjelp. Merk at materialet i denne boken, spesielt avhengighetsoppføringene, forutsetter at du bruker et grunnleggende LFS system med hver pakke som er oppført i LFS boken, allerede installert og konfigurert. BLFS kan brukes til å lage en rekke forskjellige systemer og slik er målgruppen sannsynligvis like bred som LFS boken. Hvis du fant LFS nyttig, burde du også like dette!
Siden utgivelse 7.4 har BLFS bokversjonen matchet LFS bokversjonen. Denne boken kan være inkompatibel med en tidligere eller senere utgivelse av LFS boken.
Denne boken er delt inn i følgende fjorten deler.
Denne delen inneholder viktig informasjon som er nødvendig for å forstå resten av boken.
Her introduserer vi grunnleggende konfigurasjon og sikkerhetsproblemer. Vi diskutere også en rekke tekstredigerere, filsystemer og skall som ikke dekkes i hovedboken LFS.
I denne delen dekker vi biblioteker som ofte er nødvendige gjennom boken, samt systemverktøy. Informasjon om programmering (inkludert rekompilering av GCC å støtte dens fulle rekke av språk) avslutter i denne delen.
Her forklarer vi hvordan du kobler til et nettverk når du ikke bruker enkelt statisk IP oppsett presentert i hovedboken LFS. Nettverksbiblioteker og kommandolinjenettverksverktøy er også dekket her.
Her viser vi deg hvordan du setter opp e-post og andre servere (som f.eks FTP, Apache, etc.).
Denne delen forklarer hvordan du setter opp et grunnleggende X Window System, sammen med noe generiske X biblioteker og vindusbehandlere.
Denne delen er for de som ønsker å bruke K Desktop Environment, eller deler av den.
GNOME er hovedalternativet til KDE i Skrivebordsmiljø arenaen.
Xfce er et lettvektsalternativ til GNOME og KDE.
LXDE er et annet lettvektsalternativ til GNOME og KDE.
Kontorprogrammer og grafiske nettlesere er viktige for de fleste. De, og noen generiske X programvarer, kan bli funnet i denne delen av boken.
Her dekker vi multimediebiblioteker og drivere, sammen med noen lyd, video og CD skriveprogrammer.
Denne delen dekker dokumenthåndtering, fra applikasjoner som Ghostscript, CUPS, og DocBook, hele veien til texlive.
Vedleggene presenterer informasjon som ikke hører hjemme i hoveddelen av boken; de er inkludert som referansemateriale. Ordlisten over akronymer er en praktisk funksjon.
Boken Beyond Linux From Scratch er designet for å fortsette hvor LFS boka slutter. Men i motsetning til LFS boken, er den ikke laget for å følge rett igjennom. Lese Hvilke deler av boken? delen av dette kapittelet skal hjelpe deg med å veilede deg gjennom boken.
Les det meste av denne delen av boken nøye for den forklarer ganske mange av konvensjonene som brukes gjennom hele boken.
I motsetning til Linux From Scratch boken, er ikke BLFS laget for å bli fulgt på en lineær måte. LFS gir instruksjoner om hvordan lage et basissystem som kan bli hva som helst fra en webserver til et multimedia desktop system. BLFS forsøker å veilede deg i prosessen med å gå fra basissystemet til det tiltenkte systemets mål. Valg er veldig involvert.
Alle som leser denne boken vil ønske å lese visse deler. Introduksjon, som du leser nå, inneholder generisk informasjon. Legg spesielt merke til informasjonen i Chapter 2, Viktig informasjon, da denne inneholder kommentarer om hvordan pakke ut programvare, problemer knyttet til bruken av forskjellige lokaliteter og diverse andre hensyn som gjør seg gjeldende gjennom hele boken.
Delen på Etter LFS Konfigurasjon og Ekstra Programvare er der de fleste vil ønske å gå til som neste lesing. Dette omhandler ikke bare konfigurasjon, men også sikkerhet (Chapter 4, Sikkerhet), Filsystemer (Chapter 5, Filsystemer og Diskbehandling -- inkludert GRUB for UEFI), Tekstredigerere (Chapter 6, Redigeringsprogrammer), og Skall (Chapter 7, Skall). Faktisk kan det være lurt å referere til noen deler av dette kapittelet (spesielt delene om Tekstredigerere og filsystemer) mens du bygger ditt LFS system.
Etter disse grunnleggende elementene vil de fleste i det minste ønske å surfe gjennom Generelle Biblioteker og Verktøy en del av boken. Dette inneholder informasjon om mange elementer som er forutsetninger for andre deler av boken, samt noen elementer (som f.eks Chapter 13, Programmering) som er nyttige i seg selv. Du trenger ikke å installere alt av biblioteker og pakker som finnes i denne delen; Hver BLFS installasjonsprosedyre forteller deg hvilke andre pakker denne avhenger av. Du kan velge programmet du vil installere, og se hva den trenger. (Ikke glem å se etter nestede avhengigheter!)
På samme måte vil nok de fleste ønsker å se på Nettverk seksjon. Den omhandler tilkobling til Internett eller ditt LAN (Chapter 14, Koble til et Nettverk) ved hjelp av en rekke metoder som DHCP og PPP, og med elementer som nettverksbiblioteker (Chapter 17, Nettverksbiblioteker), pluss diverse grunnleggende nettverksprogrammer og nettverksverktøy.
Når du har behandlet dette grunnleggende, kan det være lurt å konfigurere mer avanserte nettverkstjenester. Disse er behandlet i Servere delen av boken. De som ønsker å bygge servere burde finne et godt utgangspunkt der. Merk at denne delen inneholder også informasjon om flere databasepakker.
De neste tolv kapitlene omhandler skrivebordssystemer. Denne delen av boken starter med en del som snakker om Grafiske Komponenter. Denne delen omhandler også noen generiske X-baserte biblioteker (Chapter 25, Grafiske Miljøbiblioteker). Etter det, KDE, GNOME, Xfce, og LXQt får sine egne deler, etterfulgt av en om X Programvare.
Boken går så videre til å behandle Multimedia pakker. Merk at mange kanskje vil bruke ALSA instruksjoner fra dette kapittelet første gang de starter BLFS reisen; instruksjonene er plassert her fordi det er det mest logiske plassen for dem.
Den siste delen av BLFS hovedboken omhandler Utskrift, Skanning og Skriftsetting. Dette er nyttig for de fleste med skrivebordssystemer, men selv de som lager dedikerte serversystemer kan finne det nyttig.
Vi håper du liker å bruke BLFS. Måtte du realisere drømmen din om å bygge det perfekt tilpassede Linux systemet!
For å gjøre ting enkelt å følge, brukes en rekke konvensjoner gjennom hele boka. Her er noen eksempler:
./configure --prefix=/usr
Denne formen for tekst skal skrives nøyaktig som vist med mindre ellers notert i den omkringliggende teksten. Det brukes også til å identifisere referanser til spesifikke kommandoer.
install-info: unknown option
`--dir-file=/mnt/lfs/usr/info/dir'
Denne formen for tekst (font med fast bredde) viser skjermens utdata, sannsynligvis resultatet av å gi en kommando. Det er også brukt til å vis filnavn som f.eks
/boot/grub/grub.conf
Vennligst konfigurer nettleseren din til å vise tekst med
fast bredde en god monospace font, som du kan skille
glyphene til Il1 eller
O0 helt klart.
Uthevet
Denne formen for tekst brukes til flere formål, men hovedsakelig for å understreke viktige poenger, eller for å gi eksempler på hva du skal skrive.
https://www.linuxfromscratch.org/
Denne formen for tekst brukes for hypertekstlenker eksternt til boken, for eksempel veiledninger, nedlastingssteder, nettsteder osv.
Denne tekstformen brukes for lenker internt til boken, for eksempel en annen del som beskriver en annen pakke.
cat > $LFS/etc/group << "EOF"
root:x:0:
bin:x:1:
......
EOF
Denne stilen brukes hovedsakelig når du oppretter konfigurasjonsfiler. Den første kommandoen (i fet skrift) forteller systemet om å opprette filen
$LFS/etc/groupfra det som er skrevet på følgende linjer, inntil sekvensen EOF påtreffes. Derfor skrives vanligvis hele denne delen nøyaktig som vist. Husk at kopier og lim er din venn!
<REPLACED
TEXT>
Denne formen for tekst brukes til å kapsle inn tekst som burde være endret, og skal ikke skrives inn som vist, eller kopieres og limes inn. Vinkelparentesene er ikke en del av den bokstavelige teksten; de er en del av substitusjon.
root
Denne formen for tekst brukes til å vise en spesifikk systembruker eller gruppe referanse i instruksjonene.
Når nye pakker opprettes, er programvarens forfattere avhengig av tidligere arbeid. For å bygge en pakke i BLFS, må disse avhengighetene bygges før ønsket pakke kan kompileres. For hver pakke er forutsetninger oppført i en eller flere separate seksjoner: Påkrevd, Anbefalt, og Valgfri.
Disse avhengighetene er det minste nødvendig for å bygge pakken. Pakker i LFS, og de nødvendige avhengigheter av disse nødvendige pakkene, er utelatt fra denne listen. Husk alltid å se etter nestede avhengigheter. Hvis en avhengighet sies å være “kjøretid,” da er den ikke nødvendig for å bygge pakken, men bare for å bruke den etter installasjon.
Dette er avhengigheter BLFS-redaktørene har bestemt er viktige for å gi pakken rimelige muligheter. Hvis en anbefalt avhengighet sies ikke å være “kjøretid,” pakke installasjonsinstruksjonene forutsetter at den er installert. Hvis den ikke er installert, kan instruksjonene kreve endringer, for å imøtekomme den manglende pakken. En anbefalt “kjøretid” avhengighet trenger ikke å være installert før du bygger pakken, men må bygges i etterkant for å kjøre pakken med rimelig evner.
Dette er avhengigheter pakken kan bruke. Integrering av valgfrie avhengigheter kan være automatiske av pakken, eller ytterligere trinn som ikke presenteres av BLFS kan være nødvendig. Valgfrie avhengigheter er noen ganger oppført uten eksplisitte BLFS- nstruksjoner. I dette tilfellet må du bestemme hvordan du skal utføre installasjonen selv.
Noen pakker krever spesifikke kjernekonfigurasjonsalternativer. Den generelle layouten for disse ser slik ut:
Master section ---> Subsection ---> [*] Required parameter [REQU_PAR] <*> Required parameter (not as module) [REQU_PAR_NMOD] <*/M> Required parameter (could be a module) [REQU_PAR_MOD] <M> Required parameter (as a module) [REQU_PAR_MOD_ONLY] < /*/M> Optional parameter [OPT_PAR] < /M> Optional parameter (as a module if enabled) [OPT_PAR_MOD_ONLY] [ ] Incompatible parameter [INCOMP_PAR] < > Incompatible parameter (even as module) [INCOMP_PAR_MOD]
[...] til høyre gir navnet på alternativet, slik at du kan
enkelt sjekke om det er satt i din .config fil. Merk at .config filen inneholder et CONFIG_ prefiks foran alle symbolske navn.
Betydningen av de ulike oppføringene er:
Master section menyelement på øverste nivå Subsection undermenyelement Required parameter alternativet kan enten være innebygd eller ikke valgt: det må være valgt Required parameter (not as module) alternativet kan være innebygd, en modul eller ikke valgt (tri-state): den må velges som innebygd Required parameter (could be a module) alternativet kan være innebygd, en modul eller ikke valgt: den må velges, enten som innebygd eller som modul Required parameter (as a module) alternativet kan være innebygd, en modul eller ikke valgt: den må velges som en modul; velge den som innebygd kan forårsake uønskede effekter Optional parameter alternativet kan være innebygd, en modul eller ikke valgt: den kan velges som en modul eller innebygd hvis du trenger det for å drive maskinvaren eller valgfrie kjernefunksjoner Optional parameter (as a module if enabled) alternativet kan være innebygd, en modul eller ikke valgt: det kan velges som en modul hvis du trenger det for å drive maskinvaren eller valgfrie kjernefunksjoner, men å velge den som innebygd kan forårsake uønskede effekter Incompatible parameter alternativet kan enten være innebygd eller ikke valgt: det må ikke bli valgt Incompatible parameter (even as module) alternativet kan være innebygd, en modul eller ikke valgt: det må ikke bli valgt
Merk at, avhengig av andre valg, vinkelparentesene (<>) i konfigurasjonsmenyen kan vises som klammeparenteser ({}) hvis alternativet ikke kan fjernes, eller til og med som bindestreker (-*- or -M-), når valget er pålagt. Hjelpeteksten som beskriver alternativet spesifiserer de andre valgene som dette alternativet avhenger av, og hvordan de andre valgene er satt.
Bokstaven i blå er hurtigtasten for dette alternativet. Hvis du kjører make menuconfig, kan du trykke på en tast for å raskt gå gjennom alle alternativene med denne tasten som hurtigtast på skjermen.
Som i LFS, har hver pakke i BLFS en byggetid oppført i Standard Bygge enheter (SBUs). Disse tidene er i forhold til tiden det tok å bygge binutils i LFS, og er ment å gi litt innsikt i hvor lang tid det vil ta å bygge en pakke. De fleste tidene som er oppført er for en enkelt prosessor eller kjerne for å bygge pakken. I noen tilfeller store, langvarige bygg testet på flerkjernesystemer har SBU tider oppført med kommentarer som f.eks som '(parallelisme=4)'. Disse verdiene indikerer at testing ble utført ved hjelp av flere kjerner. Vær oppmerksom på at mens dette øker hastigheten på byggimng på systemer med den riktige maskinvaren, er speedupen ikke lineær og til en viss grad avhenger av den individuelle pakken og den spesifikke maskinvaren som brukes.
For pakker som bruker ninja (dvs. alt som bruker meson) eller rust, som standard brukes alle kjerner; lignende kommentarer vil bli sett på slike pakker selv når byggetiden er minimal.
Hvor selv en parallell bygging tar mer enn 15 SBU, på visse maskiner kan tiden være betydelig lengre selv når maskinen ikke bruker vekselminne. Spesielt vil forskjellige mikroarkitekturer bygge noen filer med forskjellige relative hastigheter, og dette kan introdusere forsinkelser når visse gjør at mål venter på at en annen fil blir opprettet. Hvor en stor build bruker mange C++ filer, prosessorer med simultan multithreading vil dele flytepunktsenheten og kan ta 45 % lengre tid enn ved å bruke fire 'prime' kjerner (målt på en intel i7 ved å bruke oppgavesett og holde andre kjerner inaktiv).
Noen pakker støtter ikke parallellbygg; for disse make kommandoen må spesifisere -j1. Pakker som er kjent for å pålegge slike grenser er markert i teksten.
Dette er BLFS-BOK versjon 12.2 datert 1. september 2024. Dette er 12.2-systemd gren av BLFS boken, for øyeblikket rettet mot LFS 12.2-systemd boken. For utviklingsversjoner, hvis denne versjonen er eldre enn en måned, er det sannsynlig at speilet ditt ikke har blitt synkronisert nylig og en nyere versjon er sannsynligvis tilgjengelig for nedlasting eller visning. Sjekk en av speilsider på https://www.linuxfromscratch.org/mirrors.html for en oppdatert versjon.
BLFS prosjektet har en rekke speil satt opp over hele verden for å gjøre det enklere og mer praktisk for deg å få tilgang til nettstedet. Vennligst besøk https://www.linuxfromscratch.org/mirrors.html nettstedet for en liste over gjeldende speil.
Innenfor BLFS instruksjonene har hver pakke to referanser for å finne kildefilene for pakken—en HTTP kobling og en FTP kobling (noen pakker kan bare vise en av disse koblingene). Alle anstrengelser er gjort for å sikre at disse koblingene er nøyaktige. Imidlertid er World Wide Web i kontinuerlig forandring. Noen ganger flyttes eller oppdateres pakker og den eksakte URLen spesifisert er ikke alltid tilgjengelig.
For å overvinne dette problemet, BLFS teamet, med hjelp fra Oregon State University Open Source Lab, har gjort en HTTP/FTP side tilgjengelig gjennom verdensomspennende speil. Se https://www.linuxfromscratch.org/blfs/download.html#sources for en liste. Disse nettstedene har alle kildene til de eksakte versjonene av pakkene brukt i BLFS. Hvis du ikke finner BLFS pakken du trenger på referanse adressene, få det fra disse nettstedene.
Vi ønsker imidlertid å be om en tjeneste. Selv om dette er en offentlig ressurs du kan bruke, ikke misbruk den. Vi har allerede hatt en tankeløs individuell nedlasting over 3 GB med data, inkludert flere kopier av de samme filene som er plassert på forskjellige steder (via symbolkoblinger) for å lettere å finne riktig pakke. Denne personen visste tydeligvis ikke hvilke filer han trengte og lastet ned alt. Det beste stedet å laste ned filer er nettstedet eller nettstedene som er satt opp av kildekodeutvikleren. Vennligst prøv der først.
Nåværende utgivelse: 12.2 – 1. september 2024
Endringsloggoppføringer:
1. september 2024
[bdubbs] - Utgivelse av BLFS-12.2.
30. august 2024
[renodr] - Update to libreoffice-24.8.0.3. Fixes #20263.
27. august 2024
[renodr] - Fiks bygging av Brasero med GCC-14. Fikser #20278.
[renodr] - Gjenopprett libgedit-gtksourceview siden den er nødvendig for gedit.
[renodr] - Oppdater til pipewire-1.2.3. Fikser #20264.
[bdubbs] - Oppdater til kde-gear-24.08.0. Inkludert falkon, kate, og k3b. Fikser 19954.
[renodr] - Oppdater til gnome-desktop-44.1. Fikser #20255.
26. august 2024
[bdubbs] - Arkiver libquicktime og transcode.
[bdubbs] - Oppdater til mlt-7.26.0. Fikser 20272.
25. august 2024
23. august 2024
23. august 2024
21. august 2024
20. august 2024
[renodr] - Rett opp tre sikkerhetssårbarheter i p7zip. Fikser #20251.
19. august 2024
18. august 2024
[renodr] - Oppdater til dtc-1.7.1. Fikser #20245.
[renodr] - Oppdater til pax-20240817. Fikser #20244.
[renodr] - Oppdater til vulkan-headers og vulkan-loader 1.3.293. Fikser #20242.
[renodr] - Oppdater til gtk-4.14.5. Fikser #20243.
[renodr] - Rett opp en segmenteringsfeil i Libreoffice forårsaket av Boost oppdateringen. Fikser #20229.
17. august 2024
16. august 2024
[renodr] - Rett opp en regresjon i WebKitGTK som forårsaker krasj når du gjengir enkelte nettsteder. Fikser #20235.
[renodr] - Oppdater til asymptote-2.91. Fikser #20239.
[renodr] - Oppdater cups-browsed og cups-filters to 2.0.1. Fikser #20233.
[renodr] - Oppdater til dovecot-2.3.17.1 (Sikkerhetsoppdatering). Fikser #20231.
[renodr] - Oppdater til enchant-2.8.2. Fikser #20230.
[renodr] - Fiks å bygge Libreoffice med boost-1.86.0.
[renodr] - Oppdater til boost-1.86.0. Fikser #20229.
[bdubbs] - Oppdater til unbound-1.21.0. Fikser #20238.
[bdubbs] - Oppdater til btrfs-progs-6.10.1. Fikser #20237.
[bdubbs] - Oppdater til gnutls-3.8.7.1. Fikser #20236.
15. august 2024
[renodr] - Oppdater til sentry_sdk-2.13.0 (Python Modul). Fikser #20062.
[renodr] - Oppdater til x265-3.6. Fikser #20234.
[bdubbs] - Oppdater til xfce4-notifyd-0.9.6. Fikser #20227.
[bdubbs] - Oppdater til sqlite-autoconf-3460100. Fikser #20226.
[bdubbs] - Oppdater til freetype-2.13.3. Fikser #20223.
[bdubbs] - Oppdater til python3-3.12.5. Fikser #20202.
12. august 2024
12. august 2024
[renodr] - Oppdater til x264-20240812. Fikser #20221.
[renodr] - Oppdater til ImageMagick-7.1.1-36. Fikser #20222.
[renodr] - Oppdater python modul avhengigheter for BLFS 12.2. Disse inkluderer alabaster-1.0.0, attrs-24.2.0, babel-2.16.0, certifi-2024.7.4, chardet-5.2.0, charset-normalizer-3.3.2, idna-3.7, markdown-3.6, msgpack-1.0.8, sphinxcontrib-devhelp-2.0.0, sphinxcontrib-qthelp-2.0.0, sphinxcontrib-serializinghtml-2.0.0, and urllib3-2.2.2. Merk at urllib3 og idna er sikkerhetsoppdateringer. Fikser #20220.
[renodr] - Oppdater perl modul avhengigheter for BLFS 12.2. Disse inkluderer Alien-Build-2.83, Business-ISBN-Data-20240807.001, DateTime-Locale-1.43, HTTP-Message-6.46, Path-Tiny-0.146, Term-Table-0.022, Test-Without-Module-0.23, Test2-Plugin-NoWarnings-0.10, og Text-CSV_XS-1.56. Fikser #20219.
[renodr] - Erstatt Test2-Suite med Test-Simple. Fikser #20219.
[renodr] - Oppdater til lxml-5.3.0 (Python Modul). Fikser #20215.
[renodr] - Oppdater til NetworkManager-1.48.8. Fikser #20212.
[renodr] - Oppdater til sentry_sdk-2.12.0 (Python Modul). Fikser #20062.
[bdubbs] - Oppdater til vim-9.1.0660 (synkronisere med LFS). Adresserer #12241.
[bdubbs] - Oppdater til highlight-4.13. Fikser #20218.
[bdubbs] - Oppdater til graphviz-12.1.0. Fikser #20217.
[xry111] - Oppdater til cbindgen-0.27.0. Fikser #20214.
[thomas] - Oppdater til vte-0.76.4. Fikser #20213.
11. august 2024
[bdubbs] - Oppdater til plasma-6.1.4. Fikser #19973.
[bdubbs] - Legg til ny pakke pulseaudio-qt-1.5.0 til støtte for plasma-pa-6.1.4-pakken i plasma-6.1.4-pakken.
[rahul] - Oppdater til protobuf-27.3. Fikser #20163.
[rahul] - Oppdater til pipewire-1.2.2. Fikser #20165.
[bdubbs] - Oppdater til kirigami-addons-1.4.0. Fikser #20131.
[bdubbs] - Oppdater til kf6-6.5.0. Inkluderer extra-cmake-modules, og breeze-icons. Fikser #19921.
9. august 2024
[renodr] - Oppdater til FreeRDP-3.7.0. Fikser #20211.
[renodr] - Oppdater til postgresql-16.4 (Sikkerhetsoppdatering). Fikser #20210.
[renodr] - Oppdater til Regexp-Common-2024080801 (Perl Modul). Fikser #20208.
[xry111] - Oppdater til polkit-125. Fikser #20207.
[xry111] - Oppdater til rustc-1.80.1. Fikser #20209.
8. august 2024
7. august 2024
[renodr] - Oppdater til gnome-online-accounts-3.50.4. Fikser #20200.
[renodr] - Oppdater evolution og evolution-data-server to 3.52.4. Fikser #20199.
[renodr] - Oppdater til samba-4.20.4. Fikser #20196.
[renodr] - Oppdater til gnome-control-center-46.4. Fikser #20193.
[renodr] - Oppdater til pavucontrol-6.1. Fikser #20185.
[renodr] - Oppdater til thunderbird-128.1.0esr (Sikkerhetsoppdatering). Fikser #20153.
[renodr] - Oppdater til firefox-128.1.0esr (Sikkerhetsoppdatering). Fikser #20194.
[renodr] - Oppdater til spidermonkey-115.14.0 (Sikkerhetsoppdatering). Fikser #20195.
6. august 2024
5. august 2024
[rahul] - Oppdater til nss-3.103. Fikser #20167.
[renodr] - Oppdater til gnome-user-docs-46.4. Fikser #20191.
[renodr] - Oppdater til mutter-46.4. Fikser #20189.
[renodr] - Oppdater til gnome-shell-46.4. Fikser #20188.
[renodr] - Oppdater til ffmpeg-7.0.2. Fikser #20184.
[renodr] - Oppdater til epiphany-46.3. Fikser #20183.
[renodr] - Oppdater til gnome-bluetooth-46.1. Fikser #20182.
[renodr] - Oppdater til cmake-3.30.2. Fikser #20180.
4. august 2024
[bdubbs] - Oppdater til sysmon-qt-2.0.1.
[bdubbs] - Oppdater til cracklib-2.10.2. Fikser #20187.
3. august 2024
2. august 2024
[renodr] - Oppdater til c-ares-1.33.0. Fikser #20178.
[renodr] - Oppdater til samba-4.20.3. Fikser #20177.
[renodr] - Oppdater til lcms2-2.16. Fikser #20175.
[renodr] - Oppdater til eog-45.4. Fikser #20173.
[renodr] - Oppdater til libshumate-1.2.3. Fikser #20173.
[bdubbs] - Oppdater til libFS-1.0.10, libXfont2-2.0.7, og libXtst-1.2.5 (Xorg biblioteker). Fikser #20172.
[bdubbs] - Oppdater til poppler-24.08.0. Fikser #20169.
[bdubbs] - Oppdater til gcc-14.2.0. Fikser #20166.
[renodr] - Oppdater til php-8.3.10. Fikser #20171.
[renodr] - Oppdater til mercurial-6.8.1. Fikser #20170.
[renodr] - Oppdater til abseil-cpp-20240722.0. Fikser #20168.
1. august 2024
[bdubbs] - Oppdater til btrfs-progs-v6.10. Fikser #20155.
[bdubbs] - Oppdater til sphinx-8.0.2. Også oppdatert til sphinxcontrib-applehelp-2.0.0. Fikser #20117.
[bdubbs] - Oppdater til gstreamer, gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, og gst-libav versjoner 1.24.6. Fikser #19984.
[thomas] - Oppdater til ISC Kea-dhcpd-2.6.1. Fikser #20164.
[renodr] - Oppdater til SPIRV-LLVM-Translator-18.1.3. Fikser #20162.
31. juli 2024
[renodr] - Oppdater til mesa-24.1.5. Fikser #20159.
[renodr] - Oppdater til HTML-Parser-3.83 (Perl Modul). Fikser #20157.
[renodr] - Oppdater til libavif-1.1.1. Fikser #20156.
[renodr] - Oppdater til cryptsetup-2.7.4. Fikser #20154.
[renodr] - Oppdater til curl-8.9.1 (Sikkerhetsoppdatering). Fikser #20160.
[thomas] - Oppdater til thunar-4.18.11. Fikser #20158.
[renodr] - Oppdater til systemd-256.4 (synkronisere med LFS). Fikser #20084.
30. juli 2024
[bdubbs] - Oppdater til git-2.46.0. Fikser #20151.
29. juli 2024
27. juli 2024
26. juli 2024
25. juli 2024
[bdubbs] - Oppdater til tigervnc-1.14.0. Fikser #20140.
[renodr] - Oppdater til libtirpc-1.3.5. Fikser #20139.
[renodr] - Oppdater til libxml2-2.13.3 (Sikkerhetsoppdatering). Fikser #20136.
[renodr] - Oppdater til node.js-20.16.0. Fikser #20137.
[bdubbs] - Oppdater til mupdf-1.24.8. Fikser #20142.
[bdubbs] - Oppdater til nss-3.102.1. Fikser #20135.
[renodr] - Oppdater til dvisvgm-3.4. Fikser #20141.
[thomas] - Oppdater til c-ares-1.32.3. Fikser #20136.
[renodr] - Oppdater til OpenJDK-22.0.2 (Sikkerhetsoppdatering). Fikser #20101.
24. juli 2024
23. juli 2024
22. juli 2024
[renodr] - Oppdater til fetchmail-6.4.39. Fikser #20119.
[renodr] - Fiks CVE-2023-43361 i vorbis-tools (Sikkerhetsoppdatering). Fikser #20125.
[renodr] - Fiks bygging av compface med GCC 14. Fikser #20126.
[renodr] - Tilpass QtWebEngine til å bruke systemets ffmpeg. Fikser #20102.
[bdubbs] - Oppdater til intel-media-24.2.5/intel-gmmlib-22.4.1. Fikser #20124.
[bdubbs] - Oppdater til numpy-2.0.1 (Python modul). Fikser #20123.
21. juli 2024
[bdubbs] - Oppdater til libcdio-paranoia-10.2+2.0.2 (Del av libcdio). Fikser #20121.
[bdubbs] - Oppdater til ldns-1.8.4. Fikser #20120.
[bdubbs] - Oppdater til wpa_supplicant-2.11. Fikser #20118.
[bdubbs] - Oppdater til fmt-11.0.2. Fikser #20115.
[bdubbs] - Oppdater til pytest-8.3.1 (Python modul). Fikser #20116.
20. juli 2024
18. juli 2024
18. juli 2024
[bdubbs] - Oppdater til httpd-2.4.62. Fikser #20103.
[bdubbs] - Oppdater til cmake-3.30.1. Fikser #20106.
[bdubbs] - Oppdater til mesa-24.1.4. Fikser #20104.
[bdubbs] - Arkiver gtk2. Fikser #18531. Også arkiver pygtk, mplayer, gtk-engines, hexchat, og pidgin.
[bdubbs] - Arkiver python2. Fikser #11549.
[bdubbs] - Oppdater til gimp-20240711 (gimp-3.0 snapshot). Fikser #19886.
17. juli 2024
16. juli 2024
[renodr] - Oppdater til gsettings-desktop-schemas-46.1. Fikser #20097.
[renodr] - Oppdater til python-dbusmock-0.32.1 (Python Modul). Fikser #20093.
[renodr] - Oppdater til gnome-keyring-46.2. Fikser #20085.
[renodr] - Oppdater til gvfs-1.54.2. Fikser #20075.
[renodr] - Oppdater til gnome-online-accounts-3.50.3. Fikser #20074.
[xry111] - Oppdater til hatchling-1.25.0 (Python avhengighet). Adresserer #18562.
[xry111] - Oppdater til trove_classifiers-2024.7.2 (Python avhengighet). Adresserer #18562.
[renodr] - Oppdater til evolution-3.52.3. Fikser #20073.
[renodr] - Oppdater til evolution-data-server-3.52.3. Fikser #20073.
[renodr] - Oppdater til gnome-control-center-46.3. Fikser #20036.
[renodr] - Oppdater til epiphany-46.2. Fikser #20024.
[renodr] - Oppdater til mutter-46.3.1. Fikser #20023.
[renodr] - Oppdater til gnome-shell-46.3.1. Fikser #20022.
[renodr] - Oppdater til mercurial-6.8. Fikser #20060.
[renodr] - Arkiver telepathy-glib fordi ingenting bruker det lenger.
[renodr] - Legg til FreeRDP i boken til støtte for gnome forbindelser. Dette er en del av #19960.
[renodr] - Oppdater til Thunderbird-128.0esr (Sikkerhetsoppdatering). Fikser #19717.
[xry111] - Arkiver typing_extensions (Python avhengighet).
[bdubbs] - Oppdater til c-ares-1.32.2. Fikser #20096.
[bdubbs] - Oppdater til sphinx-7.4.4 (Python modul). Fikser #20095.
[bdubbs] - Oppdater til babel-2.15.0 (Python modul). Trengs av sphinx-7.4.4.
15. juli 2024
14. juli 2024
[bdubbs] - Legg til konversation i kf6 applikasjonene i boken.
[rahul] - Oppdater til nodejs-20.15.1. Fikser #19983.
[rahul] - Oppdater til bluez-5.77. Fikser #20058.
[rahul] - Oppdater til nss-3.102. Fikser #20012.
[bdubbs] - Oppdater til SDL2-2.30.5. Fikser #20091.
[bdubbs] - Oppdater til make-ca-1.14. Fikser #20090.
[bdubbs] - Oppdater til cracklib-2.10.0. Fikser #20089.
[bdubbs] - Oppdater til Vulkan-Headers og Vulkan-Loader 1.3.290. Fikser #20087.
[bdubbs] - Oppdater til imlib2-1.12.3. Fikser #20088.
13. juli 2024
[bdubbs] - Oppdater til libreoffice-24.2.5.2. Fikser #20078.
[bdubbs] - Oppdater til pipewire-1.2.1. Fikser #20086.
[bdubbs] - Oppdater til librsvg-2.58.2. Fikser #20083.
[bdubbs] - Oppdater til LVM2.2.03.25. Fikser #20082.
[bdubbs] - Oppdater til libavif-1.1.0. Fikser #20080.
[bdubbs] - Oppdater til gdb-15.1. Fikser #20054.
12. juli 2024
[bdubbs] - Oppdater til mupdf-1.24.6. Fikser #20069.
[bdubbs] - Oppdater til xwayland-24.1.1. Fikser #20067.
[bdubbs] - Oppdater til wireshark-4.2.6. Fikser #20065.
[bdubbs] - Oppdater til c-ares-1.32.1. Fikser #20064.
[bdubbs] - Oppdater til unix-tree-2.1.3. Fikser #20063.
[renodr] - Oppdater til firefox-128.0esr (Sikkerhetsoppdatering). Fikser #20056.
[renodr] - Oppdater til mozjs-115.13.0. Fikser #20076.
[renodr] - Oppdater til gtk+-3.24.43 (Sikkerhetsoppdatering). Fikser #20068.
[renodr] - Oppdater til ruby-3.3.4. Fikser #20061.
[renodr] - Oppdater til NetworkManager-1.48.4. Fikser #20052.
[renodr] - Fiks å bygge libgsf med libxml2-2.13. Fikser #20071.
[renodr] - Oppdater til asymptote-2.90. Fikser #19989.
[renodr] - Oppdater til libwacom-2.12.2. Fikser #19987.
[renodr] - Oppdater til systemd-256.1. Fikser #19967.
[ken] - Oppdater gimp-2.10.38 til å bygge med gcc14.. Fikser 19886.
[thomas] - Oppdater til nano-8.1. Fikser 20081.
[thomas] - Oppdater til xterm-393. Fikser 20079.
[ken] - Oppdater gtk+-2.24.33 til å bygge med gcc14.. Fikser 19887.
11. juli 2024
8. juli 2024
[rahul] - Oppdater til mesa-24.1.3. Fikser #20041.
[rahul] - Oppdater til php-8.3.9. Fikser #20049.
[rahul] - Oppdater til libxslt-1.1.42. Fikser #20046.
[rahul] - Oppdater til graphviz-12.0.0. Fikser #20047.
[rahul] - Oppdater til p11-kit-0.25.5. Fikser #20044.
[rahul] - Oppdater til libxml2-2.13.2. Fikser #20045.
[rahul] - Oppdater til gnutls-3.8.6. Fikser #20038.
[rahul] - Oppdater til c-ares-1.32.0. Fikser #20050.
6. juli 2024
5. juli 2024
4. juli 2024
[timtas] - Oppdater til httpd-2.4.61 (Sikkerhetsoppdatering). Fikser #20031.
3. juli 2024
[bdubbs] - Oppdater til libass-0.17.3. Fikser #20037.
[bdubbs] - Oppdater til libva-2.22.0. Fikser #20034.
[bdubbs] - Oppdater til libplacebo-7.349.0 (merk uvanlig endring av versjonsnummer). Fikser #20033.
[bdubbs] - Oppdater til p11-kit-0.25.4. Fikser #20032.
[bdubbs] - Oppdater til unix-tree-2.1.2. Fikser #20030.
[bdubbs] - Oppdater til libqalculate-5.2.0. Fikser #20029.
[bdubbs] - Oppdater til fmt-11.0.0. Fikser #20028.
1. juli 2024
[bdubbs] - Oppdater til poppler-24.07.0. Fikser #19947.
[bdubbs] - Oppdater til SPIRV-LLVM-Translator-18.1.2. Fikser #20025.
[bdubbs] - Oppdater til openssh-9.8p1 (Sikkerhetsoppdatering). Fikser #20027.
[bdubbs] - Oppdater til feh-3.10.3. Fikser #20026.
[bdubbs] - Oppdater til shadow-4.16.0. Fikser #19965.
29. juni 2024
28. juni 2024
[bdubbs] - Oppdater til qtermwidget og qterminal-2.0.1. Fikser #20007.
[bdubbs] - Oppdater til libjxl-0.10.3. Fikser #20010.
[bdubbs] - Oppdater til libinput-1.26.1 (Xorg inndatadriver). Fikser #20009.
[bdubbs] - Oppdater til mupdf-1.24.5. Fikser #20008.
[bdubbs] - Oppdater til harfbuzz-9.0.0. Fikser #20011.
27. juni 2024
[rahul] - Oppdater til wireplumber-0.5.4. Fikser #20004.
[rahul] - Oppdater til pipewire-1.2.0. Fikser #20005.
[bdubbs] - Oppdater til kirigami-addons-1.3.0. Fikser #20002.
[bdubbs] - Oppdater til btrfs-progs-v6.9.2. Fikser #20001.
[bdubbs] - Oppdater til xmlto-0.0.29. Fikser #20006.
[bdubbs] - Oppdater til krb5-1.21.3 (Sikkerhetsoppdatering). Fikser #20000.
[bdubbs] - Oppdater til libdrm-2.4.122. Fikser #20003.
[bdubbs] - Oppdater til glslang-14.3.0. Fikser #19999.
[bdubbs] - Oppdater til lua-5.4.7. Fikser #19998.
[bdubbs] - Oppdater til protobuf-27.2. Fikser #19997.
25. juni 2024
23. juni 2024
[bdubbs] - Oppdater til guile-3.0.10. Fikser #19992.
22. juni 2024
[bdubbs] - Oppdater til emacs-29.4 (Sikkerhetsoppdatering). Fikser #19991.
[bdubbs] - Oppdater til mupdf-1.24.4. Fikser #19990.
[bdubbs] - Oppdater til pycairo-1.26.1 (Python modul). Fikser #19988.
[bdubbs] - Oppdater til libksba-1.6.7. Fikser #19986.
[timtas] - Oppdater til samba-4.20.2. Fikser #19979.
21. juni 2024
[bdubbs] - Oppdater til libdisplay-info-0.2.0. Fikser #19982.
20. juni 2024
19. juni 2024
[xry111] - Fjern qtlocation fra qt5- og qt5-components. Adresser #19442.
[bdubbs] - Oppdater til uhttpmock-0.11.0. Fikser #19972.
[bdubbs] - Oppdater til psutil-6.0.0 (Python modul). Fikser #19971.
[bdubbs] - Oppdater til c-ares-1.31.0. Fikser #19969.
[bdubbs] - Oppdater til libassuan-3.0.0. Fikser #19966.
[bdubbs] - Oppdater til qt6-6.7.2 og qtwebengine-6.7.2. Fikser #19970.
[timtas] - Oppdater til cups-2.4.10. Fikser #19974.
18. juni 2024
[rahul] - Oppdater til cryptsetup-2.7.3 (Sikkerhetsoppdatering). Fikser #19964.
17. juni 2024
15. juni 2024
[bdubbs] - Oppdater til libinput-1.26.0 (Xorg inndatadriver). Fikser #19905.
[bdubbs] - Oppdater til SDL2-2.30.3. Fikser #19904.
[bdubbs] - Oppdater til protobuf-27.1. Fikser #19902.
[bdubbs] - Oppdater Vulkan-Headers og Vulkan-Loader til versjon 1.3.288. Fikser #19957.
[bdubbs] - Oppdater til enchant-2.8.1. Fikser #19952.
[bdubbs] - Oppdater til freeglut-3.6.0. Fikser #19949.
[bdubbs] - Oppdater til mercurial-6.7.4. Fikser #19948.
[ken] - Oppdater OpenSP til å kompilere med gcc-14. Fikser #19956.
14. juni 2024
[xry111] - Oppdater til systemd-256. Fikser #19940.
[xry111] - Oppdater libxml2-2.13.0 for å fikse flere problemer som bryter ulike nedstrømspakker. Fikser #19955.
[bdubbs] - Oppdater til audacious/audacious-plugins-4.4. Fikser #19950.
[bdubbs] - Oppdater til libxslt-1.1.40. Fikser #19946.
[bdubbs] - Oppdater til tcsh-6.24.13. Fikser #19945.
[bdubbs] - Oppdater til Python3-3.12.4. (Sikkerhetsoppdatering) Fikser #19909.
12. juni 2024
[bdubbs] - Oppdater til alsa-lib alsa-plugins alsa-utils 1.2.12. Fikser #19939.
[bdubbs] - Oppdater til ruby-3.3.3. Fikser #19941.
[bdubbs] - Oppdater til XML-LibXSLT-2.003000 (Perl Modul). Fikser #19942.
[renodr] - Oppdater til libxml2-2.13.0. Fikser #19944.
[renodr] - Oppdater til libwacom-2.12.1. Fikser #19938.
11. juni 2024
[renodr] - Oppdater til Spidermonkey-115.12.0 (Sikkerhetsoppdatering). Fikser #19933.
[renodr] - Oppdater til firefox-115.12.0esr (Sikkerhetsoppdatering). Fikser #19934.
[renodr] - Oppdater til cups-2.4.9 (Sikkerhetsoppdatering). Fikser #19937.
[renodr] - Oppdater til mesa-24.1.1. Inkluderer å legge til Ply python Modulen, rust-bindgen, SPIRV-LLVM-Translator og libclc pakker. Fikser #19832.
[renodr] - Oppdater til xfce4-settings-4.18.6. Fikser #19936.
[renodr] - Arkiver telepathy-mission-control siden den ikke er nødvendig av andre pakker.
[bdubbs] - Oppdater til qemu-9.0.1. Fikser #19926.
[bdubbs] - Oppdater til glib-2.80.3. Fikser #19932.
[bdubbs] - Oppdater til libaom-3.9.1 (Sikkerhetsoppdatering). Fikser #19935.
[bdubbs] - Oppdater til btrfs-progs-v6.9. Fikser #19915.
10. juni 2024
[bdubbs] - Oppdater til pango-1.54.0. Fikser #19928.
[bdubbs] - Oppdater til packaging-24.1 (Python Modul). Fikser #19927.
[timtas] - Oppdater til xfce4-settings-4.18.5. Fikser #19931.
[timtas] - Oppdater til xfce4-session-4.18.4. Fikser #19930.
[timtas] - Oppdater til xfce4-power-manager-4.18.4. Fikser #19929.
9. juni 2024
8. juni 2024
[bdubbs] - Oppdater til nss-3.101. Fikser #19923.
[bdubbs] - Oppdater til xkeyboard-config-2.42. Fikser #19920.
[bdubbs] - Oppdater til c-ares-1.30.0. Fikser #19919.
[bdubbs] - Oppdater til qpdf-11.9.1. Fikser #19918.
[bdubbs] - Oppdater til fribidi-1.0.15. Fikser #19917.
[bdubbs] - Oppdater til pcre2-10.44. Fikser #19916.
7. juni 2024
[bdubbs] - Oppdater Vulkan-Headers og Vulkan-Loader til versjon 1.3.287. Fikser #19879.
[bdubbs] - Oppdater til llvm-18.1.7. Fikser #19903.
[bdubbs] - Oppdater til mupdf-1.24.3. Fikser #19914.
[bdubbs] - Oppdater til icewm-3.5.1. Fikser #19911.
[renodr] - Oppdater til libreoffice-24.2.4.2 (Sikkerhetsoppdatering). Fikser #19912.
[renodr] - Oppdater til php-8.3.8 (Sikkerhetsoppdatering). Fikser #19908.
[renodr] - Oppdater til vlc-3.0.21 (Sikkerhetsoppdatering). Fikser #19913.
[renodr] - Oppdater til libwacom-2.12.0. Fikser #19906.
[renodr] - Oppdater til cmake-3.29.5. Fikser #19907.
5. juni 2024
[bdubbs] - Arkiver gstreamer-vaapi. Fikser #19899.
[bdubbs] - Oppdater til sentry_sdk-2.4.0 (Python Modul). Fikser #19901.
[bdubbs] - Oppdater til pytest-8.2.2 (Python Modul). Fikser #19900.
[bdubbs] - Oppdater til cmake-3.29.4. Fikser #19898.
[bdubbs] - Oppdater til poppler-24.06.0. Fikser #19896.
[bdubbs] - Oppdater til opencv og opencv_contrib-4.10.0. Fikser #19895.
[renodr] - Oppdater til vte-0.76.3. (Sikkerhetsoppdatering) Fikser #19897.
[renodr] - Oppdater til wireplumber-0.5.3. Fikser #19894.
[renodr] - Oppdater til NetworkManager-1.48.0. Fikser #19876.
[renodr] - Oppdater til procmail-3.24. Fikser #19891.
[renodr] - Fiks bygging av ncftp-3.2.7 med gcc-14. Fikser #19889.
[renodr] - Fiks bygging av libgee-0.20.6 med gcc-14. Fikser #19884.
4. juni 2024
2. juni, 2024
[bdubbs] - Oppdater til logrotate-3.22.0. Fikser #19892.
[bdubbs] - Oppdater til highway-1.2.0. Fikser #19881.
[bdubbs] - Oppdater xorg-server tearfree oppdatering for gcc13.
[bdubbs] - Oppdater til libevdev-1.13.2. Fikser #19878.
[bdubbs] - Oppdater til libdrm-2.4.121. Fikser #19893.
[thomas] - Løs et gcc14 problem i cyrus-sasl. Fikser #19890.
1. juni 2024
31. mai 2024
[renodr] - Oppdater til epiphany-46.1. Fikser #19872.
[renodr] - Oppdater til gtksourceview-5.12.1. Fikser #19871.
[renodr] - Oppdater til gucharmap-15.1.5. Fikser #19856.
[renodr] - Oppdater til gnome-terminal-3.52.2. Fikser #19855.
[renodr] - Oppdater til nautilus-46.2. Fikser #19852.
[renodr] - Oppdater til libshumate-1.2.2. Fikser #19850.
[renodr] - Oppdater til transmission-4.0.6. Fikser #19867.
[bdubbs] - Oppdater til libvpx-1.14.1. Fikser #19873.
[bdubbs] - Oppdater til ruby-3.3.2. Fikser #19870.
[bdubbs] - Oppdater til wayland-1.23.0. Fikser #19869.
[bdubbs] - Oppdater til libcap-2.70. Fikser #19814.
[renodr] - Oppdater til gdm-46.2. Fikser #19868.
[renodr] - Oppdater til gnome-control-center-46.2. Fikser #19860.
[renodr] - Oppdater til xdg-desktop-portal-gnome-46.2. Fikser #19854.
[renodr] - Oppdater til mutter-46.2. Fikser #19851.
[renodr] - Oppdater gnome-shell og gnome-shell-extensions til 46.2. Fikser #19849.
[renodr] - Oppdater til gnome-online-accounts-3.50.2. Fikser #19848.
[renodr] - Oppdater til evolution-data-server og evolution 3.52.2. Fikser #19842.
[bdubbs] - Gjenopprett PyYAML.
30. mai 2024
[renodr] - Oppdater til firefox-115.11.0esr (Sikkerhetsoppdatering). Fikser #19792.
[renodr] - Deaktiver sandkassen i Firefox på i686 på grunn av problemer med systemanropsfiltrering. Fikser #19775.
[renodr] - Oppdater til spidermonkey-115.11.0 (Sikkerhetsoppdatering). Fikser #19787.
[renodr] - Oppdater til thunderbird-115.11.1 (Sikkerhetsoppdatering). Fikser #19798.
[bdubbs] - Oppdater til gstreamer-1.24.4 og tilhørende programtillegg. Fikser #19864.
[bdubbs] - Oppdater til mariadb-10.11.8 (Sikkerhetsoppdatering). Fikser #19865.
[bdubbs] - Oppdater til requests-2.32.3 (Python Modul). Fikser #19866.
29. mai 2024
[renodr] - Oppdater til OpenJDK-22.0.1 (Sikkerhetsoppdatering). Fikser #19508.
[renodr] - Oppdater til webkitgtk-2.44.2 (Sikkerhetsoppdatering). Fikser #19805.
[renodr] - Oppdater til postgresql-16.3 (Sikkerhetsoppdatering). Fikser #19779.
[bdubbs] - Oppdater til node-20.14.0. Fikser #19862.
[bdubbs] - Legger til dolphin og dolphin-plugins til KDE applikasjoner.
[thomas] - Oppdater til ISC Kea-2.6.0. Fikser #19863.
28. mai 2024
27. mai 2024
[bdubbs] - Legg til en korreksjon til xine-lib for å håndtere ffmpeg-7. Fikser #19718.
[bdubbs] - Legg til oppdateringer til vlc for å håndtere ffmpeg-7 og gcc-14. Adresserer #19718.
[bdubbs] - Oppdater til protobuf-27.0. Fikser #19834.
[bdubbs] - Oppdater til libadwaita-1.5.1. Fikser #19841.
[bdubbs] - Oppdater til librsvg-2.58.1. Fikser #19838.
[bdubbs] - Oppdater til plasma-wayland-protocols-1.13.0. Fikser #19837.
[bdubbs] - Oppdater til sentry_sdk-2.3.1 (Python Modul). Fikser #19835.
[thomas] - Oppdater til evince-46.3. Fikser #19844.
26. mai 2024
[bdubbs] - Oppdater til kf6 og plasma pakker brukt av lxqt. Fikser #19781.
[bdubbs] - Oppdater til plasma-6.0.5. Fikser #19680.
[timtas] - Oppdater til vte-0.76.2. Fikser #19853.
[timtas] - Oppdater til gvfs-1.54.1. Fikser #19843.
[bdubbs] - Oppdater til kde-gear-24.05.0 inkludert falkon og kate. Fikser #19833.
[thomas] - Oppdater til ntp-4.2.8p18. Fikser #19847.
25. mai 2024
23. mai 2024
[bdubbs] - Oppdater til xterm-392. Fikser #19831.
[bdubbs] - Oppdater til pavucontrol-6.0. Fikser #19830.
[bdubbs] - Oppdater til curl-8.8.0. Fikser #19829.
[bdubbs] - Oppdater til umockdev-0.18.3. Fikser #19825.
[bdubbs] - Oppdater til qt6-6.7.1 og qtwebengine-6.7.1. Fikser #19822.
[bdubbs] - Oppdater nyeste Intel microcode versjon (Sikkerhetsoppdatering). Fikser #19797.
22. mai, 2024
[renodr] - Oppdater til SPIRV-Headers og SPIRV-Tools 1.3.283.0. Fikser #19795.
[renodr] - Oppdater Vulkan-Headers og Vulkan-Loader til 1.3.285. Fikser #19760.
[renodr] - Oppdater til gnome-maps-46.11. Fikser #19785.
[renodr] - Oppdater til file-roller-44.3. Fikser #19770.
[renodr] - Oppdater til snapshot-46.3. Fikser #19759.
[renodr] - Oppdater til gnome-calculator-46.1. Fikser #19758.
[renodr] - Fiks en regresjon i gnome-shell som vises ved bruk av glib-2.80.2.
[renodr] - Oppdater til glib-2.80.2 (Sikkerhetsoppdatering). Fikser #19764.
[bdubbs] - Oppdater til icewm-3.5.0. Fikser #19824.
[bdubbs] - Oppdater til hicolor-icon-theme-0.18. Fikser #19823.
[bdubbs] - Oppdater til libass-0.17.2. Fikser #19817.
[rahul] - Oppdater til nodejs-20.13.1. Fikser #19765.
[rahul] - Oppdater til mesa-24.0.8. Fikser #19767.
[rahul] - Oppdater til harfbuzz-8.5.0. Fikser #19789.
[rahul] - Oppdater til bluez-5.76. Fikser #19806.
[rahul] - Oppdater til pipewire-1.0.6. Fikser #19782.
[bdubbs] - Oppdater til requests-2.32.2 (Python Modul). Fikser #19821.
[bdubbs] - Oppdater til gi_docgen-2024.1 (Python Modul). Fikser #19820.
[bdubbs] - Oppdater til Mako-1.3.5 (Python Modul). Fikser #19790.
[bdubbs] - Oppdater til lxml-5.2.2 (Python Modul). Fikser #19783.
[bdubbs] - Oppdater til sentry_sdk-2.2.1 (Python Modul). Fikser #19826.
[timtas] - Oppdater til openldap-2.6.8. Fikser #19827.
21. mai 2024
20. mai 2024
19. mai 2024
18. mai 2024
[bdubbs] - Oppdater til iw-6.9. Fikser #19811.
[bdubbs] - Oppdater til asciidoctor-2.0.23. Fikser #19810.
[bdubbs] - Oppdater til sentry_sdk-2.2.0 (Python Modul). Fikser #19807.
[bdubbs] - Oppdater til lxqt-openssh-askpass-2.0.1. Fikser #19786.
[bdubbs] - Oppdater til qtermwidget og qterminal-2.0.0. Fikser #19812.
[bdubbs] - Oppdater til kirigami-Legg tilons-1.2.1. Fikser #19776.
[bdubbs] - Oppdater til gcc-14.1. Fikser #19762.
[bdubbs] - Oppdater til lxqt-panel-2.0.1. Fikser #19772.
[bdubbs] - Oppdater til libfm-qt-2.0.2. Fikser #19771.
[bdubbs] - Oppdater til unbound-1.20.0. Fikser #19769.
[timtas] - Oppdater til gtk+3-3.24.42. Fikser #19804.
16. mai 2024
15. mai 2024
14. mai 2024
[renodr] - Fiks bygging av Inkscape med poppler-24.05.0. Fikser #19794.
[renodr] - Fiks bygging av gst-libav med ffmpeg-7.
13. mai 2024
[renodr] - Fiks bygging av sphinx_rtd_theme med docutils-0.21.x. Denne fikser en feil om inkompatible versjoner, men oppstrøms har endret versjonsområdet slik at det er kompatibelt.
[timtas] - Oppdater til samba-4.20.1. Fikser #19768.
11. mai 2024
[thomas] - Oppdater til nss-3.100. Fikser #19763.
10. mai 2024
[thomas] - Oppdater til cmake-3.29.3. Fikser #19766.
6. mai 2024
6. mai 2024
[bdubbs] - Oppdater til lxml-5.2.1 (Python Modul). Fikser #19068.
[bdubbs] - Oppdater til sphinx-7.3.7 (Python Modul). Fikser #19676.
[bdubbs] - Oppdater til sphinxcontrib_applehelp-1.0.8 (Python Modul).
[bdubbs] - Oppdater til alabaster-0.7.16 (Python Modul).
[bdubbs] - Oppdater til Cython-3.0.10 (Python Modul). Fikser #18303.
[bdubbs] - Arkiver PyYaml. Adresserer #18303.
5. mai 2024
[xry111] - Oppdater til rustc-1.78.0. Fikser #19557.
[bdubbs] - Oppdater til libfm-qt-2.0.1, lximage-qt-2.0.1, og lxqt-notificationd-2.0.1. Fikser #19753.
[bdubbs] - Oppdater til xdg-desktop-portal-lxqt-1.0.2. Fikser #19754.
[bdubbs] - Oppdater til pygments-2.18.0 (Python Modul). Fikser #19752.
[bdubbs] - Oppdater til enchant-2.7.3. Fikser #19751.
[xry111] - Oppdater Python avhengigheter: attrs-23.2.0, meson_python-0.16.0, og pyproject-metadata-0.8.0. Legg til hatch-fancy-pypi-readme-24.1.0 for å støtte attrs-23.2.0. Adresserer #18562.
[xry111] - Oppdater Python avhengigheter: editables-0.5, hatchling-1.24.2, hatch-vcs-0.4.0, pathspec-0.12.1, pluggy-1.5.0, setuptools_scm-8.0.4, og typing_extensions-4.11.0. Legg til trove-classifiers-2024.4.10 for å støtte hatchling-1.24.2. Adresserer #18562.
4. mai 2024
[xry111] - Arkiver py som ikke lenger er nødvendig av pytest.
3. mai 2024
[bdubbs] - Oppdater til libnvme-1.9. Fikser #19749.
[bdubbs] - Oppdater til hwdata-0.382. Fikser #19750.
[bdubbs] - Oppdater til libreoffice-24.2.3.2. Fikser #19745.
[bdubbs] - Oppdater til ibus-1.5.30. Fikser #19747.
[bdubbs] - Oppdater til lynx2.9.1. Fikser #19748.
[thomas] - Oppdater til btrfs-progs-6.8.1. Fikser #19742.
2. mai 2024
[renodr] - Oppdater til Net-DNS-1.45 (Perl Modul). Fikser #19743.
[renodr] - Oppdater til glslang-14.2.0. Fikser #19744.
[renodr] - Oppdater til gtk4-4.14.4. Fikser #19746.
[renodr] - Oppdater til tracker og tracker-miners 3.7.3. Fikser #19716.
[bdubbs] - Oppdater til poppler-24.05.0. Fikser #19741.
[bdubbs] - Oppdater til nano-8.0. Fikser #19740.
1. mai 2024
[timtas] - Oppdater til cups-2.4.8. Fikser #19729.
30. april 2024
29. april 2024
28. april 2024
27. april 2024
[bdubbs] - Oppdater til valgrind-3.23.0. Fikser #19727.
[bdubbs] - Oppdater til libArkiver-3.7.4 (Sikkerhetsoppdatering). Fikser #19724.
[bdubbs] - Oppdater til AppStream-1.0.3. Fikser #19714.
[bdubbs] - Oppdater til pytest-8.2.0 (Python Modul). Fikser #19726.
[bdubbs] - Oppdater til wayland-protocols-1.36. Fikser #19725.
[bdubbs] - Oppdater til unrar-7.0.8. Fikser #19722.
[bdubbs] - Oppdater til fribidi-1.0.14. Fikser #19721.
[bdubbs] - Oppdater til enchant-2.7.2. Fikser #19719.
[bdubbs] - Oppdater til libgpg-error-1.49. Fikser #19720.
[bdubbs] - Oppdater til ed-1.20.2. Fikser #19713.
[bdubbs] - Oppdater til libaom-3.9.0. Fikser #19712.
26. april 2024
[bdubbs] - Oppdater til docutils-0.21.2 (Python Modul). Fikser #19710.
25. april 2024
24. april 2024
[renodr] - Oppdater til ruby-3.3.1 (Sikkerhetsoppdatering). Fikser #19711.
23. april 2024
[renodr] - Oppdater til gnome-control-center-46.1. Fikser #19708.
[renodr] - Oppdater til xdg-desktop-portal-gnome-46.1. Fikser #19702.
[renodr] - Oppdater til nautilus-46.1. Fikser #19701.
[renodr] - Oppdater til mutter-46.1. Fikser #19700.
[renodr] - Oppdater til gnome-user-docs-46.1. Fikser #19699.
[renodr] - Oppdater til gnome-shell-extensions-46.1. Fikser #19698.
[renodr] - Oppdater til gnome-shell-46.1. Fikser #19698.
[renodr] - Oppdater til gucharmap-15.1.4. Fikser #19696.
[renodr] - Oppdater til wireplumber-0.5.2. Fikser #19709.
[renodr] - Oppdater til gnome-terminal-3.52.1. Fikser #19695.
[renodr] - Oppdater til gnome-maps-46.10. Fikser #19694.
[renodr] - Oppdater til vte-0.76.1. Fikser #19693.
[renodr] - Oppdater til libshumate-1.2.1. Fikser #19692.
[renodr] - Oppdater til evolution-3.52.1. Fikser #19690.
[renodr] - Oppdater til evolution-data-server-3.52.1. Fikser #19690.
[renodr] - Oppdater Vulkan-Headers og Vulkan-Loader to 1.3.283. Fikser #19689.
[bdubbs] - Oppdater til nmap-7.95. Fikser #19707.
[bdubbs] - Oppdater til libxmlb-0.3.19. Fikser #19706.
[bdubbs] - Oppdater til libgusb-0.4.9. Fikser #19705.
22. april 2024
21. april 2024
20. april 2024
19. april 2024
18. april 2024
[renodr] - Oppdater til mpv-0.38.0. Fikser #19682.
[bdubbs] - Oppdater til icu-75.1. Fikser #19674.
[bdubbs] - Oppdater til wayland-protocols-1.35. Fikser #19675.
[bdubbs] - Oppdater til glibmm-2.66.7. Fikser #19673.
[thomas] - Oppdater til bind-9.18.26, bind-utils-9.18.26. Fikser #19679.
[thomas] - Oppdater til xfsprogs-6.7.0. Fikser #19677.
[thomas] - Oppdater til NASM-2.16.03. Fikser #19678.
17. april 2024
[bdubbs] - Oppdater til Vulkan-Loader-1.3.282. Fikser #19670.
[bdubbs] - Oppdater til util-macros-1.20.1. Fikser #19669.
[bdubbs] - Oppdater til libXmu-1.2.1 (Xorg bibliotek). Fikser #19668.
[renodr] - Oppdater til thunderbird-115.10.0 (Sikkerhetsoppdatering). Fikser #19671.
[renodr] - Oppdater til firefox-115.10.0esr (Sikkerhetsoppdatering). Fikser #19664.
[renodr] - Oppdater til spidermonkey-115.10.0 (Sikkerhetsoppdatering). Fikser #19666.
[renodr] - Oppdater til pipewire-1.0.5. Fikser #19665.
16. april 2024
[bdubbs] - Oppdater til php-8.3.6 (Sikkerhetsoppdatering). Fikser #19645.
[bdubbs] - Oppdater til sqlite-autoconf-3450300 (3.45.3). Fikser #19662.
[bdubbs] - Oppdater til boost-1.85.0. Fikser #19660.
[ken] - Endre detaljer for KDE i innstilling av fontconfig og merk mye tidligere at innstillingene for fontconfig kan ignoreres av applikasjoner og skrivebordsmiljøer. Fikser #19667.
[renodr] - Oppdater til xf86-input-wacom-1.2.2. Fikser #19663.
[renodr] - Oppdater til libwacom-2.11.0. Fikser #19661.
[renodr] - Oppdater til gnome-system-monitor-46.0. Fikser #19606.
[renodr] - Legg gtkmm-4.14.0 til boken. Fikser #14443.
[renodr] - Legg atkmm-2.36.3 til boken. Fikser #14406.
[renodr] - Legg pangomm-2.52.0 til boken. Fikser #14405.
[renodr] - Legg cairomm-1.18.0 til boken. Fikser #14172.
[renodr] - Legg glibmm-2.80.0 til boken. Fikser #14403.
[renodr] - Legg libsigc++3 til boken. Fikser #16086.
[bdubbs] - Oppdater til bluez-5.75. Fikser #19655.
[bdubbs] - Løs et byggeproblem for sphinx-7.2.6. Fikser #19659.
[bdubbs] - Oppdater til elogind-255.4-r2. Fikser #19298.
15. april 2024
[renodr] - Oppdater til gucharmap-15.1.3. Fikser #19477.
[renodr] - Oppdater til gnome-terminal-3.52.0. Fikser #19476.
[renodr] - Oppdater til gnome-logs-45.0. Fikser #19603.
[renodr] - Oppdater til gnome-disk-utility-46.0. Fikser #19602.
[renodr] - Oppdater til gnome-calculator-46.0. Fikser #19599.
[renodr] - Oppdater til file-roller-44.1. Fikser #19598.
[renodr] - Oppdater til evince-46.0. Fikser #19490.
[renodr] - Oppdater til dvisvgm-3.3. Fikser #19642.
[renodr] - Oppdater til asymptote-2.89. Fikser #19543.
[renodr] - Rett opp feil i latex2e og dvipdfm-x i texlive. Fikser #19571.
[renodr] - Oppdater til EOG-45.3. Fikser #19475.
[renodr] - Oppdater til baobab-46.0. Fikser #19601.
[renodr] - Oppdater til simple-scan-46.0. Fikser #19620.
[bdubbs] - Oppdater til Python3-3.12.3. Fikser #19633.
[renodr] - Fiks CVE-2024-25081 og CVE-2024-25082 i FontForge. Fikser #19545.
[renodr] - Oppdater til libxcb-1.17.0. Fikser #19658.
[renodr] - Oppdater til xcb-proto-1.17.0. Fikser #19657.
[renodr] - Oppdater til vulkan-headers-1.3.282. Fikser #19656.
[renodr] - Oppdater til gtk-4.14.2. Fikser #19583.
14. april 2024
[bdubbs] - Oppdater gstreamer stack to 1.24.2. Fikser #19634.
[bdubbs] - Fjern overskriving av terminfo data i xterm. Fikser #19611.
[bdubbs] - Oppdater til lxqt-qtplugin-1.4.1. Fikser #19652.
[bdubbs] - Oppdater til plasma-6.0.3. Fikser #19733.
[thomas] - Oppdater til libwebp-1.4.0. Fikser #19654.
[thomas] - Oppdater til opus-1.5.2. Fikser #19653.
12. april 2024
[bdubbs] - Oppdater til kf6-6.1.0. Fikser #19649.
12. april 2024
[renodr] - Oppdater til gnome-user-docs-46.0. Fikser #19497.
[renodr] - Oppdater til gnome-tweaks-46.0. Fikser #19496.
[renodr] - Oppdater til gnome-session-46.0. Fikser #19504.
[renodr] - Oppdater til gnome-shell-extensions-46.0. Fikser #19472.
[bdubbs] - Oppdater til cmake-3.29.2. Fikser #19644.
[bdubbs] - Oppdater til cryptsetup-2.7.2. Fikser #19630.
[renodr] - Oppdater til gdm-46.0. Fikser #19505.
[renodr] - Oppdater til gnome-shell-46.0. Fikser #19472.
[renodr] - Oppdater til mutter-46.0. Fikser #19473.
[renodr] - Oppdater til gnome-control-center-46.0.1. Fikser #19502.
[renodr] - Oppdater til tecla-46.0. Fikser #19486.
[renodr] - Oppdater til gnome-settings-daemon-46.0. Fikser #19485.
[renodr] - Oppdater til gnome-bluetooth-46.0. Fikser #19503.
[renodr] - Oppdater til nautilus-46.0. Fikser #19501.
[bdubbs] - Oppdater til libxmlb-0.3.18. Fikser #19631.
[bdubbs] - Oppdater til taglib-2.0.1. Fikser #19635.
[bdubbs] - Oppdater til sentry-sdk-1.45.0 (Python Modul). Fikser #19640.
[bdubbs] - Oppdater til xorg-server-21.1.13. Fikser #19650.
[bdubbs] - Oppdater til xwayland-23.2.6. Fikser #19623.
[renodr] - Oppdater til snapshot-46.2. Fikser #19648.
[renodr] - Oppdater til gnome-online-accounts-3.50.1. Fikser #19647.
[renodr] - Oppdater til gcr4-4.3.0. Fikser #19646.
[renodr] - Oppdater til libgtop-2.41.3. Fikser #19627.
[renodr] - Oppdater til epiphany-46.0. Fikser #19491.
[renodr] - Oppdater til WebKitGTK-2.44.1. Fikser #19622.
[bdubbs] - Oppdater til docutils-0.21.1 (Python Modul). Fikser #19632.
[bdubbs] - Oppdater til Mako-1.3.3 (Python Modul). Fikser #19639.
11. april 2024
10. april 2024
[bdubbs] - Oppdater til upower-v1.90.4. Fikser #19621.
[bdubbs] - Oppdater til libArkiver-3.7.3. Fikser #19618.
[bdubbs] - Oppdater til js-115.9.1 (spidermonkey). Fikser #19616.
[timtas] - Oppdater til rsync-3.3.0. Fikser #19614.
[xry111] - Oppdater pipewire-1.0.4 for å fikse et problem som bryter snapshot-46.1. Fikser #19637.
9. april 2024
[renodr] - Oppdater til xdg-desktop-portal-gnome-46.0. Fikser #19624.
[bdubbs] - Oppdater til qt6-6.7.0 og qtwebengine-6.7.0. Fikser #19575.
[renodr] - Oppdater til gnome-backgrounds-46.0. Fikser #19625.
[renodr] - Oppdater til tracker-miners-3.7.1. Fikser #19482.
[renodr] - Oppdater til tracker-3.7.1. Fikser #19482.
[renodr] - Oppdater til evolution-3.52.0. Fikser #19481.
[renodr] - Oppdater til evolution-data-server-3.52.0. Fikser #19481.
[renodr] - Oppdater til gnome-maps-46.0. Fikser #19506.
[renodr] - Oppdater til libshumate-1.2.0. Fikser #19492.
[renodr] - Legg til abseil-cpp, protobuf, og protobuf-c for å støtte libshumate og andre pakker. Del av #19492.
8. april 2024
[renodr] - Oppdater TigerVNC til å bruke xorg-server-21.1.12. Dette beskytter Xvnc mot sikkerhetssvakhetene som er løst i den Oppdater.
[bdubbs] - Oppdater til httpd-2.4.59 (Sikkerhetsoppdatering). Fikser #19507.
[renodr] - Oppdater til gnome-online-accounts-3.50.0. Fikser #19480.
[renodr] - Oppdater til pygobject-3.48.2 (Python Modul). Fikser #19613.
[renodr] - Arkiver gnome-video-effects. Fikser #19488.
[renodr] - Oppdater til gtksourceview-5.12.0. Fikser #19590.
[renodr] - Oppdater til gnome-keyring-46.1. Fikser #19484.
[bdubbs] - Oppdater til xwayland-23.2.5 (Sikkerhetsoppdatering). Fikser #19579.
[bdubbs] - Oppdater til xorg-server-21.1.12 (Sikkerhetsoppdatering). Adresserer #19579.
[bdubbs] - Oppdater til nghttp2-1.61.0 (Sikkerhetsoppdatering). Fikser #19596.
7. april 2024
[bdubbs] - Oppdater til libX11-1.8.9 (Xorg bibliotek). Fikser #19610.
[bdubbs] - Oppdater til mtdev-1.1.7. Fikser #19608.
[bdubbs] - Oppdater til tcsh-6.24.12. Fikser #19607.
[bdubbs] - Oppdater til tepl-6.9.0. Fikser #19591.
[bdubbs] - Oppdater til libgedit-gtksourceview-299.1.0. Fikser #19515.
[rahul] - Oppdater til nodejs-20.12.1 (Sikkerhetsoppdatering). Fikser #19552.
[rahul] - Oppdater til samba-4.20.0 (Sikkerhetsoppdatering). Fikser #19554.
[rahul] - Oppdater til mesa-24.0.4. Fikser #19556.
6. april 2024
[bdubbs] - Flytt luit fra xorg apper til sin egen side. Fikser #19578.
[bdubbs] - Oppdater til gnutls-3.8.5. Fikser #19592.
[bdubbs] - Oppdater til enchant-2.6.9. Fikser #19593.
[bdubbs] - Oppdater til hwdata-0.381. Fikser #19594.
[bdubbs] - Oppdater til at-spi2-core-2.52.0. Fikser #19587.
[bdubbs] - Oppdater til sentry-sdk-1.44.1. Fikser #19582.
[bdubbs] - Flytt libwnck fra gnome seksjonen til xfce seksjonen. Fikser #19577.
[thomas] - Oppdater til pciutils-3.12.0. Fikser #19609.
5. april 2024
[bdubbs] - Oppdater til libxmlb-0.3.17. Fikser #19580.
[thomas] - Oppdater til gtkmm-3.24.9. Fikser #19589.
[thomas] - Oppdater til cairomm-1.14.5. Fikser #19588.
[thomas] - Oppdater til poppler-24.04.0. Fikser #19574.
[thomas] - Oppdater til mupdf-1.24.1. Fikser #19576.
[thomas] - Oppdater til mpg123-1.32.6. Fikser #19605.
[thomas] - Oppdater til nasm-2.16.02. Fikser #19595.
[xry111] - Oppdater til LLVM-18.1.2. Adresserer #19438.
4. april 2024
[renodr] - Oppdater til gnome-weather-46.0. Fikser #19586.
[renodr] - Oppdater til libgweather-4.4.2. Fikser #19522.
[renodr] - Tilpass Firefox til å bruke Googles posisjonstjeneste ved å fjerne vår MLS API nøkkel. Fikser #19541.
[renodr] - Tilpass Geoclue for å bruke Googles posisjonstjeneste siden Mozilla Location Service er avsluttet. Fikser #19541.
[renodr] - Oppdater til gjs-1.80.2. Fikser #19487.
[renodr] - Oppdater til snapshot-46.1. Fikser #19507.
[renodr] - Oppdater til wireplumber-0.5.1. Fikser #19567.
[thomas] - Oppdater til pango-1.52.2. Fikser #19585.
[thomas] - Oppdater til cmake-3.29.1. Fikser #19584.
3. april 2024
2. april 2024
[bdubbs] - Oppdater til libreoffice-24.2.2.2. Fikser #19559.
[bdubbs] - Oppdater til kirigami-Legg tilons-1.1.0. Fikser #19573.
[bdubbs] - Oppdater til gobject-introspection-1.80.1. Fikser #19572.
[ken] - Oppdater til biber-2.20 med biblatex-3.20 og oppdater relaterte perl elementer: Modul-Build-0.4234 (Perl Modul), Alien-Build-2.80, B-Hooks-EndOfScope-0.28, CPAN-Meta-Check-0.18, DateTime-1.65, DateTime-Locale-1.40, DateTime-TimeZone=2.62, Devel-StackTrace-2.05, Exporter-Tiny-1.006002, File-Listing-6.16, HTML-Tagset-3.24, HTTP-Cookies-6.11, HTTP-Date-6.06, HTTP-Message-6.45, Net-SSLeay-1.94, Test-Warnings-0.033, Tie-Cycle-1.228, Variable-Magic-0.64, XML-LibXML-2.0210 (Perl Avhengige Moduler). Arkiver: Importer, Modul-Pluggable, Sub-Info (Perl Avhengige Moduler). Takk til Stephen Berman for å rapportere at Net-SSLeay ikke lenger bestod testene, og til Bruce for å ha diagnostisert dette. Fikser #19528.
1. april 2024
[thomas] - Upgrade c-ares-1.28.1. Fikser #19566.
[renodr] - Fiks bygging av Inkscape med poppler-24.03.0. Fikser #19570.
[bdubbs] - Oppdater til libical-3.0.18. Fikser #19568.
[bdubbs] - Oppdater til jasper-4.2.3. Fikser #19565.
[bdubbs] - Oppdater til soundtouch-2.3.3. Fikser #19564.
[bdubbs] - Oppdater til mercurial-6.7.2. Fikser #19562.
[bdubbs] - Oppdater til harfbuzz-8.4.0. Fikser #19561.
31. mars 2024
[renodr] - Oppdater til librsvg-2.58.0. Fikser #19433.
30. mars 2024
29. mars 2024
[thomas] - Oppdater til shadow-4.15.1. Fikser #19532.
28. mars 2024
[bdubbs] - Oppdater til qt6-6.6.3 og qtwebengine-6.6.3. Fikser #19551.
28. mars 2024
[timtas] - Oppdater til libva-2.21.0. Fikser #19546.
[bdubbs] - Oppdater til bubblewrap-0.9.0. Fikser #19549.
[bdubbs] - Oppdater til URI-5.28 (Perl Modul). Fikser #19550.
[bdubbs] - Oppdater til libblockdev-3.1.1. Fikser #19548.
[bdubbs] - Oppdater til btrfs-progs-v6.8. Fikser #19547.
[bdubbs] - Oppdater til xorgproto-2024.1. Fikser #19544.
27. mars 2024
[timtas] - Oppdater til cURL-8.7.1 (Sikkerhetsoppdatering). Fikser #19553.
[thomas] - Rett opp en feilkonfigurasjon i LibreOffice på i686 systemer.
[timtas] - Tving vlc til å kompilere mot lua52.
26. mars 2024
25. mars 2024
24. mars 2024
24. mars 2024
23. mars 2024
22. mars 2024
[rahul] - Oppdater til cmake-3.29.0. Fikser #19525.
[rahul] - Oppdater til gtk4-4.14.1. Fikser #19464.
[rahul] - Oppdater til pipewire-1.0.4. Fikser #19462.
[renodr] - Oppdater til spidermonkey-115.9.1 (Sikkerhetsoppdatering). Fikser #19500.
[ken] - Oppdater til firefox-115.9.1 (Sikkerhetsoppdatering). Fikser #19529.
[bdubbs] - Oppdater til mercurial-6.7.1. Fikser #19526.
21. mars 2024
[bdubbs] - Oppdater til bind utilities/bind-9.18.25. Fikser #19521.
[bdubbs] - Oppdater til wayland-protocols-1.34. Fikser #19520.
[bdubbs] - Oppdater til libcloudproviders-0.3.6. Fikser #19519.
[bdubbs] - Oppdater til SPIRV-Headers-1.3.280.0. Fikser #19518.
[bdubbs] - Oppdater til mupdf-1.24.0. Fikser #19516.
[bdubbs] - Oppdater til adwaita-icon-theme-46.0. Fikser #19514.
[bdubbs] - Oppdater til pinentry-1.3.0. Fikser #19513.
[bdubbs] - Oppdater til glad-2.0.6. Fikser #19512.
20. mars 2024
[bdubbs] - Oppdater til elogind-252.23. Fikser #19509.
[bdubbs] - Oppdater til harfbuzz-8.3.1. Fikser #19494.
[bdubbs] - Oppdater til mercurial-6.7. Fikser #19469.
[ken] - Oppdater til texlive 2024. Fikser #19463.
[ken] - Fjern gamle ConTeXt fikser fra texlive kilden. Fikser #18349.
[timtas] - Oppdater til vte-0.76.0. Fikser #19474.
[renodr] - Tilpass rsync til LZ4 som nå er i LFS.
[bdubbs] - Oppdater til bluefish-2.2.15. Fikser #19493.
[bdubbs] - Oppdater til wireplumber-0.5.0. Fikser #19089.
[timtas] - Oppdater til thunderbird-115.9.0. Fikser #19515.
[thomas] - Oppdater til libpaper-2.2.5. Fikser #19511.
19. mars 2024
[bdubbs] - Oppdater til tk8.6.14. Fikser #19498.
[bdubbs] - Oppdater til SCons-4.7.0. Fikser #19495.
[bdubbs] - Oppdater til glib-networking-2.80.0. Fikser #19470.
[ken] - Oppdater til firefox-115.9.0 (Sikkerhetsoppdatering). Fikser #19499.
[bdubbs] - Oppdater til nss-3.99. Fikser #19467.
[bdubbs] - Oppdater til vala-0.56.16. Fikser #19465.
[bdubbs] - Oppdater til libaom-3.8.2. Fikser #19461.
[thomas] - Oppdater til libpaper-2.2.3. Fikser #19445.
[bdubbs] - Oppdater til tcsh-6.24.11. Fikser #19457.
[bdubbs] - Oppdater til jasper-4.2.2. Fikser #19454.
[bdubbs] - Oppdater til libqalculate-5.0.0. Fikser #19453.
18. mars 2024
[bdubbs] - Oppdater til xapian-core-1.4.25. Fikser #19427.
[bdubbs] - Oppdater til iceauth-1.0.10 (Xorg app). Fikser #19450.
[bdubbs] - Oppdater til libXaw-1.0.16 (Xorg bibliotek). Fikser #19451.
[bdubbs] - Oppdater til packaging-24.0 (Python Modul). Fikser #19448.
[bdubbs] - Oppdater til pygobject3-3.48.1 (Python Modul). Fikser #19440.
[bdubbs] - Oppdater til pytest-8.1.1 (Python Modul). Fikser #19443.
[timtas] - Oppdater til gvfs-1.54.0. Fikser #19483.
[bdubbs] - Oppdater til HTML-Parser-3.82 (Perl Modul). Fikser #19458.
[bdubbs] - Oppdater til libwww-perl-6.77 (Perl Modul). Fikser #19447.
[bdubbs] - Oppdater til LWP-Protocol-https-6.14 (Perl Modul). Fikser #19446.
[bdubbs] - Oppdater til asciidoctor-2.0.22. Fikser #19437.
[bdubbs] - Oppdater til shadow-4.15.0. Fikser #19432.
[thomas] - Oppdater til glslang-14.1.0. Fikser #19435.
[thomas] - Oppdater til php-8.3.4. Fikser #19466.
[thomas] - Oppdater til wget-1.24.5. Fikser #19449.
[thomas] - Oppdater til at-spi2-core-2.50.2. Fikser #19471.
17. mars 2024
[bdubbs] - Oppdater til sddm-0.21.0. Fikser #19360.
[bdubbs] - Legg til xdotool-3.20211022.1 for å støtte plasma6. Adresserer #19373.
[bdubbs] - Legg til libdisplay-info-0.1.1 for å støtte plasma6. Adresserer #19373.
[bdubbs] - Legg til hwdata-0.380 for å støtte plasma6. Adresserer #19373.
[bdubbs] - Legg til kirigami-Legg tilons-1.0.1 for å støtte plasma6. Adresserer #19373.
[bdubbs] - Legg til qcoro-0.10.0 for å støtte plasma6. Adresserer #19373.
[thomas] - Oppdater til libxml2-2.12.6. Fikser #19468.
[xry111] - Arkiver wpebackend-fdo og libwpe. Fikser #18460.
[xry111] - Oppdater til WebKitGTK-2.44.0. Fikser #19478.
16. mars 2024
[timtas] - Oppdater til mesa-24.0.3. Fikser #19459.
15. mars 2024
14. mars 2024
[xry111] - Legg til dtc-1.7.0 for å støtte qemu-8.2.2.
12. mars 2024
10. mars 2024
[ken] - Oppdater til asymptote-2.88. Fikser #19372.
[xry111] - Oppdater til glib-2.80.0. Fikser #19444.
[xry111] - Oppdater til gobject-introspection-1.80.0. Fikser #19439.
[xry111] - Kombiner gobject-introspeksjon til glib siden for å bedre håndtere den sirkulære avhengigheten mellom disse to pakkene.
9. mars 2024
7. mars 2024
[bdubbs] - Tilbakestill til pytest-8.0.2 (Python Modul). Fikser #19417.
[renodr] - Oppdater til pyparsing-3.1.2 (Python Modul). Fikser #19416.
[renodr] - Oppdater til libassuan-2.5.7. Fikser #19415.
[renodr] - Oppdater til SDL2-2.30.1. Fikser #19412.
[renodr] - Oppdater til umockdev-0.18.0. Fikser #19399.
[renodr] - Oppdater til opus-1.5.1. Fikser #19409.
[renodr] - Oppdater til uhttpmock-0.10.0. Fikser #19406.
[renodr] - Oppdater til vala-0.56.15. Fikser #19405.
[renodr] - Oppdater til mkfontscale-1.2.3, xauth-1.1.3, xev-1.2.6, xmessage-1.0.7, xpr-1.2.0, og xrefresh-1.1.0 (Xorg Applikasjoner). Fikser #19402.
[renodr] - Oppdater til gdb-14.2. Fikser #19398.
6. mars 2024
[xry111] - Oppdater til SeaMonkey-2.53.18.1 (Sikkerhetsoppdatering). Fikser #19420.
[xry111] - Oppdater til LLVM-18.1.0. Fikser #19413.
[renodr] - Oppdater til thunderbird-115.8.1 (Sikkerhetsoppdatering). Fikser #19411.
[renodr] - Oppdater til xf86-input-wacom-1.2.1 (Xorg Driver). Fikser #19403.
[renodr] - Oppdater til gtk-doc-1.34.0. Fikser #19410.
[renodr] - Oppdater til gnome-maps-45.5. Fikser #19397.
[renodr] - Oppdater til gcr-4.2.1. Fikser #19396.
[renodr] - Oppdater til libadwaita-1.4.4. Fikser #19395.
[renodr] - Oppdater til pytest-8.1.0 (Python Modul). Fikser #19401.
[bdubbs] - Fullfør oppdateringen til kf6-apps. Fikser #19375.
[xry111] - Arkiver PCRE1. Fikser #18893.
5. mars 2024
4. mars 2024
[bdubbs] - Oppdater til poppler-24.03.0. Fikser #19400.
4. mars 2024
3. mars 2024
[bdubbs] - Oppdater til encodings-1.1.0 (Xorg Font). Fikser #19393.
[bdubbs] - Oppdater til libXcursor-1.2.2 (Xorg Bibliotek) og libfontenc-1.1.8 (Xorg Bibliotek). Fikser #19392 og #19389.
[bdubbs] - Oppdater til libxcb-1.16.1. Fikser #19391.
[bdubbs] - Oppdater til libXdmcp-1.1.5. Fikser #19394.
[bdubbs] - Oppdater til nghttp2-1.60.0. Fikser #19386.
[bdubbs] - Oppdater til mdadm-4.3. Fikser #19377.
[bdubbs] - Oppdater til pixman-0.43.4. Fikser #19376.
[bdubbs] - Oppdater til mesa-24.0.2. Fikser #19374.
[bdubbs] - Oppdater til a52dec-0.8.0. Fikser #19368.
[bdubbs] - Oppdater til swig-4.2.1. Fikser #19365.
[bdubbs] - Oppdater til qpdf-11.9.0. Fikser #19363.
[bdubbs] - Oppdater til libunistring-1.2. Fikser #19361.
[bdubbs] - Oppdater til libpng-1.6.43. Fikser #19354.
[bdubbs] - Oppdater til mupdf-1.23.11. Fikser #19347.
[bdubbs] - Oppdater til polkit-qt-1-0.200.0. Fikser #19345.
[bdubbs] - Oppdater til python-dbusmock-0.31.1 (Python Modul). Fikser #19356.
[bdubbs] - Oppdater til npth-1.7. Fikser #19353.
[bdubbs] - Oppdater til libksba-1.6.6. Fikser #19352.
[bdubbs] - Oppdater til libgpg-error-1.48. Fikser #19351.
[thomas] - Oppdater til pciutils-3.11.1. Fikser #19364.
[xry111] - Oppdater til shadow-4.14.6. Fikser #19385.
2. mars 2024
[renodr] - Oppdater til epiphany-45.3. Fikser #19381.
[renodr] - Oppdater til glib-networking-2.78.1. Fikser #19378.
[renodr] - Oppdater til AppStream-1.0.2. Fikser #19362.
[renodr] - Oppdater til libsecret-0.21.4. Fikser #19358.
[renodr] - Oppdater til glm-1.0.1. Fikser #19369.
[renodr] - Oppdater til OpenJPEG-2.5.2 (Sikkerhetsoppdatering). Fikser #19370.
[renodr] - Oppdater til c-ares-1.27.0 (Sikkerhetsoppdatering). Fikser #19357.
[renodr] - Oppdater til NetworkManager-1.46.0. Fikser #19350.
[renodr] - Oppdater til Spidermonkey-115.8.0. Fikser #19344.
[bdubbs] - Oppdater til asciidoctor-2.0.21. Fikser #19341.
[bdubbs] - Oppdater til mpg123-1.32.5. Fikser #19328.
[bdubbs] - Oppdater til pytest-8.0.2 (Python Modul). Fikser #19326.
[bdubbs] - Oppdater til pcre2-10.43. Fikser #19062.
[renodr] - Aktiver støtte for Vulkan i ffmpeg igjen. Fikser #19390.
[renodr] - Oppdater til jasper-4.2.1. Fikser #19340.
[renodr] - Oppdater til Vulkan-Headers og Vulkan-Loader 1.3.279. Fikser #19327.
[renodr] - Oppdater til giflib-5.2.2 (Sikkerhetsoppdatering). Fikser #19335.
[bdubbs] - Oppdater til unrar-7.0.7. Fikser #18768.
[timtas] - Oppdater til xfce4-panel-4.18.6. Fikser #19379.
[timtas] - Oppdater til xArkiverr-0.5.4.23. Fikser #19383.
[timtas] - Oppdater til xfce4-terminal-1.1.3. Fikser #19380.
1. mars 2024
[bdubbs] - Utgivelse av BLFS-12.1.
linuxfromscratch.org serveren er vert for en rekke postlister som brukes til utviklingen av BLFS boken. Disse listene inkluderer, blant annet hovedutviklings- og støttelistene.
For mer informasjon om hvilke lister som er tilgjengelige, hvordan abonnere på dem, arkivsteder osv., besøk https://www.linuxfromscratch.org/mail.html.
BLFS-prosjektet har opprettet en Wiki for redaktører å kommentere på sider og instruksjoner på https://wiki.linuxfromscratch.org/blfs/wiki.
Når redaktørens notater
er tilstede, en lenke vises i form av https://wiki.linuxfromscratch.org/blfs/wiki/pkgname
til høyre under avhengighetslisten. Tanken bak redaktørnotatene
er å gi ytterligere informasjon om pakken og/eller dens
oppbygning instruksjoner, vanlige fallgruver eller kanskje enda
mer sofistikerte konfigurasjon for spesielle brukstilfeller.
De aller fleste pakkene har ikke redaktørnotater.
Redaktørens notater kan være utdatert. Selv om sidene bør gjennomgås når en pakke oppdateres, kan det skje at det er notater som refererer til en foreldet versjon og derfor kan notatene være utdaterte. Alltid sjekk datoen for notatene og enda viktigere, versjonen av pakken notatene refererer til.
Hvis du støter på et problem mens du bruker denne boken, og problemet ditt ikke er oppført i FAQ (https://www.linuxfromscratch.org/faq), vil du finne at de fleste på Internet Relay Chat (IRC) og på e-postlister er villige til å hjelpe deg. En oversikt over LFS utsendelseslister finner du i E-postlister. For å hjelpe oss med å diagnostisere og løse problemet ditt, ta med så mye relevant informasjon som mulig i din forespørsel om hjelp.
Før du ber om hjelp, bør du gå gjennom følgende elementer:
Er maskinvarestøtten kompilert inn i kjernen eller
tilgjengelig som en modul til kjernen? Hvis det er en
modul, er det konfigurert riktig i modprobe.conf og har det blitt
lastet? Du bør bruke lsmod som
root bruker for å se om
det er det lastet. Undersøk sys.log filen eller kjør modprobe <driver>
til å gjennomgå eventuelle feilmeldinger. Hvis den
laster riktig, må du kanskje legge til modprobe kommandoen
til oppstartsskriptene dine.
Er tillatelsene dine riktig angitt, spesielt for
enheter? LFS bruker grupper for å gjøre disse
innstillingene enklere, men den legger også til trinnet
å legge til brukere i grupper for å tillate tilgang. En
enkel usermod -G audio
<user>
kan være alt som er nødvendig for at brukeren skal ha
tilgang til lydsystemet. Noen spørsmål som starter med
“Det fungerer
som root, men ikke som ...” krever en
grundig gjennomgang av tillatelser før du spør.
BLFS bruker hovedsaklig /opt/.
Hovedinnvendingen mot dette dreier seg om behovet for å
utvide din miljøvariabler for hver pakke plassert der
(f.eks., PATH=$PATH:/opt/kde/bin). I de fleste
tilfeller vil pakkeinstruksjonene lede deg gjennom
endringene, men noen vil ikke. Seksjonen kalt
“Gå Utover
BLFS” er tilgjengelig for å hjelpe
deg å sjekke.
<package>
Bortsett fra en kort forklaring på problemet du har, viktige ting å inkludere i forespørselen din er:
versjonen av boken du bruker (er 12.2),
pakken eller delen som gir deg problemer,
den nøyaktige feilmeldingen eller symptomet du mottar,
om du i det hele tatt har avviket fra boken eller LFS,
om du installerer en BLFS pakke på et ikke-LFS system.
(Merk at det å si at du har avviket fra boken ikke betyr at vi ikke vil hjelpe deg. Det vil bare hjelpe oss å se andre mulige årsaker av problemet ditt.)
Forvent veiledning i stedet for spesifikke instruksjoner. Hvis du er bedt om å lese noe, vennligst gjør det. Det innebærer generelt at svaret var altfor åpenbart, og det spørsmålet ikke ville bli spurt om det ble gjort litt research før du spurte. De frivillige i e-postlisten foretrekker ikke å bli brukt som et alternativ til å gjøre rimelig forskning på din side. I tillegg er kvaliteten på din erfaring med BLFS også sterkt forbedret av denne forskningen, og kvaliteten på frivillige er forbedret fordi de ikke føler at deres tid har blitt misbrukt, så det er langt mer sannsynlig at de deltar.
En utmerket artikkel om å be om hjelp på Internett generelt er skrevet av Eric S. Raymond. Den er tilgjengelig online på http://www.catb.org/~esr/faqs/smart-questions.html. Les og følg tipsene i det dokumentet, og det er mye mer sannsynlig at du får svar til å begynne med og også for å få den hjelpen du faktisk trenger.
Mange har bidratt både direkte og indirekte til BLFS. Denne siden viser alle de vi kan tenke på. Det kan godt hende vi har utelatt folk, og hvis du føler at dette er tilfelle, send oss en linje. Mange takk til hele LFS fellesskapet for deres hjelp med dette prosjektet.
Rahul Chandra
Bruce Dubbs
Pierre Labastie
Ken Moffat
Douglas Reno
Xi Ruoyao
Thomas Trepl
Listen over bidragsytere er altfor stor til å gi detaljert informasjon om bidragene for hver bidragsyter. I løpet av årene, følgende personer har gitt betydelige innspill til boken:
Timothy Bauscher
Daniel Bauman
Jeff Bauman
Andy Benton
Wayne Blaszczyk
Paul Campbell
Nathan Coulson
Jeroen Coumans
Guy Dalziel
Robert Daniels
Richard Downing
Manuel Canales Esparcia
Jim Gifford
Manfred Glombowski
Ag Hatzimanikas
Mark Hymers
James Iwanek
David Jensen
Jeremy Jones
Seth Klein
Alex Kloss
Eric Konopka
Larry Lawrence
D-J Lucas
Chris Lynn
Andrew McMurry
Randy McMurchy
Denis Mugnier
Billy O'Connor
Fernando de Oliveira
Alexander Patrakov
Olivier Peres
Andreas Pedersen
Henning Rohde
Matt Rogers
James Robertson
Henning Rohde
Chris Staub
Jesse Tie-Ten-Quee
Ragnar Thomsen
Tushar Teredesai
Jeremy Utley
Zack Winkles
Christian Wurst
Igor Živković
Fernando Arbeiza
Miguel Bazdresch
Gerard Beekmans
Oliver Brakmann
Jeremy Byron
Ian Chilton
David Ciecierski
Jim Harris
Lee Harris
Marc Heerdink
Steffen Knollmann
Eric Konopka
Scot McPherson
Ted Riley
Send e-postene dine til en av BLFS postlistene. Se E-postlister for mer informasjon om de tilgjengelige e-postlistene.
Dette kapittelet brukes til å forklare noen av retningslinjene som brukes gjennom boken, for å introdusere viktige begreper og for å forklare noen problemer du kanskje ser med noen av de inkluderte pakkene.
De personene som har bygget et LFS system kan være klar over de generelle prinsippene for nedlasting og utpakking av programvare. Noe av denne informasjonen gjentas her for de som er nye i byggingen av deres egen programvare.
Hvert sett med installasjonsinstruksjoner inneholder en URL hvor du kan laste ned pakken. Oppdateringer; lagres imidlertid på LFS servere og er tilgjengelige via HTTP. Disse er referert etter behov i installasjonsinstruksjoner.
Selv om du kan beholde kildefilene hvor som helst du vil, antar vi at du har pakket ut pakken og endret til mappen opprettet av utpakkingsprosessen (kildemappen). Vi antar også at du har dekomprimerte eventuelle nødvendige oppdateringer, og de er i mappen rett over kildemappen.
Vi kan ikke understreke sterkt nok at du bør ta utgangspunkt i
et rent kildetre hver
gang. Dette betyr at hvis du har hatt en feil under
konfigurasjon eller kompilering, er det vanligvis best å slette
kildetreet og pakke den ut på nytt før du prøver igjen. Dette gjelder
åpenbart ikke hvis du er en avansert bruker som er vant til å
hacke Makefileer og C kode, men
hvis du er i tvil, start fra et rent tre.
Den gylne regelen for Unix System Administrasjon er å bruke
dine superkrefter bare når det er nødvendig. Derfor anbefaler
BLFS at du bygger programvaren som en uprivilegert bruker og
bare bli root bruker når du
installerer programvaren. Denne filosofien følges i alle
pakkene i denne boken. Med mindre annet er spesifisert, skal
alle instruksjoner utføres som en uprivilegert bruker. Boken
vil gi deg råd om instruksjoner som trenger root privilegier.
Hvis en fil er i .tar formatet
og komprimert, pakkes den ut ved å kjøre en av følgende
kommandoer:
tar -xvf filename.tar.gz tar -xvf filename.tgz tar -xvf filename.tar.Z tar -xvf filename.tar.bz2
Du kan utelate å bruke v
parameteren i kommandoene vist over og under hvis du ønsker
å undertrykke den detaljerte listen over alle filene i
arkivet etter hvert som de pakkes ut. Dette kan bidra til å
øke hastigheten på utpakkingen samt gjøre eventuelle feil
som oppstår under utpakkingen mer tydelig for deg.
Du kan også bruke en litt annen metode:
bzcat filename.tar.bz2 | tar -xv
Til slutt, noen ganger har vi en komprimert oppdateringsfil i
.patch.gz eller .patch.bz2 formatet. Den beste måten å
anvende oppdateringen på er å kanalisere utdataen av
dekomprimeringen til patch verktøyet. For
eksempel:
gzip -cd ../patchname.patch.gz | patch -p1
Eller for en oppdatering komprimert med bzip2:
bzcat ../patchname.patch.bz2 | patch -p1
Generelt, for å bekrefte at den nedlastede filen er
fullstendig, mange pakkevedlikeholdere distribuerer også
md5sum av filene. For å bekrefte md5sum av de nedlastede
filene, last ned både filen og tilsvarende md5sum fil til
samme katalog (helst fra en annen nettplasseringer), og
(forutsatt file.md5sum er
md5sum filen lastet ned) kjør følgende kommando:
md5sum -c file.md5sum
Hvis det er noen feil, vil de bli rapportert. Merk at BLFS
boken også inkluderer md5sum for alle kildefilene. For å
bruke BLFS medfølgende md5sum, kan du opprette en
file.md5sum (plasser md5sum
dataene og det nøyaktige navnet på den nedlastede filen på
samme linje i en fil, atskilt med mellomrom) og kjør
kommandoen vist ovenfor. Alternativt kan du bare kjøre
kommandoen vist nedenfor og sammenligne utdataene til md5sum
dataene vist i BLFS boken.
md5sum <navn_på_nedlastet_fil>
MD5 er ikke kryptografisk sikker, så md5summene er kun for å oppdage uønskede endringer i filinnholdet. For eksempel en feil eller avkorting som ble introdusert under nettverksoverføring, eller en “stealth” oppdatering til pakken fra oppstrøms (oppdaterer innholdet i en utgitt tarball i stedet for å lage et nytt slipp riktig).
Det er ingen måte å være “100%” sikker på ektheten til kildefilene. Forutsatt at oppstrøms styrer nettstedet deres riktig (den private nøkkelen lekkes ikke og domenet ikke er kapret), og tillitsankrene er satt opp riktig ved hjelp av make-ca-1.14 på BLFS systemet kan vi med rimelighet stole på nedlastings URL-er til oppstrøms offisielle nettsted med https protokoll. Noter at selve BLFS boken er publisert på en nettside med https, så du bør allerede ha litt tillit til https protokollen, ellers ville du ikke stole på bokens innhold.
Hvis pakken er lastet ned fra et uoffisielt sted (for eksempel et lokalt speil), kontrollsummer generert av kryptografisk sikre sammendragsalgoritmer (for eksempel SHA256) kan brukes til å bekrefte ektheten av pakken. Last ned kontrollsumfilen fra oppstrøms offisielle nettsted (eller et sted du kan stole på) og sammenligne sjekksummen av pakken fra uoffisiell plassering av den. For eksempel, SHA256 sjekksummen kan sjekkes med kommandoen:
Hvis kontrollsummen og pakken er lastet ned fra samme uklarerte plassering, vil du ikke oppnå sikkerhetsforbedring ved å bekrefte pakken med sjekksummen. Angriperen kan forfalske kontrollsummen i tillegg til å kompromittere selve pakken.
sha256sum -c fil.sha256sum
Hvis GnuPG-2.4.5 er installert, kan du også bekrefte ektheten til pakken med en GPG signatur. Importer oppstrøms GPG offentlig nøkkel med:
gpg --recv-key nøkkelID
nøkkelID bør
erstattes med nøkkelID fra et sted du kan stole på (for eksempel,
kopier den fra oppstrøms offisielle nettside ved å bruke
https). Nå kan du verifisere signaturen med:
gpg --recv-keyfil.sigfil
Fordelen med GnuPG signaturen er, at når du har importert en offentlig nøkkel som du kan stole på, kan du laste ned både pakken og dens signatur fra samme uoffisielle sted og verifiser dem med den offentlige nøkkelen. Så du trenger ikke å koble til offisielle oppstrømsnettsted for å hente en kontrollsum for hver nye utgivelse. Du trenger bare å oppdatere den offentlige nøkkelen hvis den er utløpt eller tilbakekalt.
For større pakker er det praktisk å lage loggfiler i stedet
for å stirre på skjermen i håp om å fange en bestemt feil
eller advarsel. Loggfiler er også nyttige for feilsøking og
journalføring. Følgende kommando lar deg lage en
installasjonslogg. Erstatt <kommando> med
kommandoen du har tenkt å utføre.
( <kommando> 2>&1 | tee compile.log && exit $PIPESTATUS )
2>&1 omdirigerer
feilmeldinger til den samme plassering som standard utdata.
tee kommandoen
tillater visning av utdata mens du logger resultatene til en
fil. Parentesene rundt kommandoen kjører hele kommandoen i et
underskall og til slutt exit
$PIPESTATUS kommando sikrer resultatet av
<kommando>
returneres som resultatet og ikke resultatet av tee kommandoen.
For mange moderne systemer med flere prosessorer (eller kjerner) kan kompileringstiden for en pakke reduseres ved å utføre en "parallell make" ved enten å sette en miljøvariabel eller fortelle make programmet å utføre flere jobber samtidig.
For eksempel inneholder en Intel Core i9-13900K CPU 8 ytelse (P) kjerner og 16 effektivitet (E) kjerner, og P-kjernene støtter SMT (Simultaneous MultiThreading, også kjent som “Hyper-Threading”) slik at hver P-kjerne kan kjøre to tråder samtidig og Linux-kjernen vil behandle hver P-kjerne som to logiske kjerner. Som et resultat er det totalt 32 logiske kjerner. For å bruke alle disse logiske kjernene som kjører make, vi kan sette en miljøvariabel for å fortelle make til å kjøre 32 jobber samtidig:
export MAKEFLAGS='-j32'
eller bare bygge med:
make -j32
Hvis du har brukt den valgfrie sed når du bygget ninja i LFS, kan du bruke:
export NINJAJOBS=32
når en pakke bruker ninja, eller bare:
ninja -j32
Hvis du ikke er sikker på antall logiske kjerner, kjør nproc kommandoen.
For make, standard antall jobber er 1. Men for ninja, standard antall jobber er N + 2 hvis antallet logiske kjerner N er større enn 2; eller N + 1 hvis N er 1 eller 2. Grunnen til å bruke en rekke jobber litt større enn antallet logiske kjerner er å holde alle logiske prosessorer opptatt selv om noen jobber utfører I/O operasjoner.
Merk at -j brytere begrenser bare
parallellen jobber startet av make eller ninja, men hver jobb kan
fortsatt skape sine egne prosesser eller tråder. Til
eksempel, ld.gold vil bruke flere
tråder for kobling, og noen tester av pakker kan skape flere
tråder for testing av trådsikkerhetsegenskaper. Det er ingen
generisk måte for byggesystem for å kjenne antall prosesser
eller tråder skapt av en jobb. Så generelt bør vi ikke
vurdere verdien som er gått med -j en hard grense for antall logiske kjerner
å bruke. Les the
section called “Bruk Linux Control Group for å begrense
ressursbruken” hvis du vil sette slikt en hard grense.
Generelt bør antallet prosesser ikke overstige antallet
kjerner støttet av CPU. For å liste opp prosessorene på ditt
system, utsted: grep
processor /proc/cpuinfo.
I noen tilfeller kan bruk av flere prosesser resultere i en "løps" tilstand hvor suksessen til bygget avhenger av rekkefølgen til kommandoer som kjøres av make programmet. For eksempel, hvis en kjørbar trenger fil A og fil B, og prøver å koble programmet før en av de avhengige komponentene er tilgjengelig vil resultere i en feil. Denne tilstanden oppstår vanligvis fordi oppstrømsutvikleren ikke har angitt alle forutsetningene riktig som trengs for å oppnå et trinn i Makefile.
Hvis dette skjer, er den beste måten å fortsette på å gå
tilbake til en enkelt prosessor bygg. Legg til -j1 til en make kommando vil overstyre den
lignende innstillingen i MAKEFLAGS
miljøvariabel.
Et annet problem kan oppstå med moderne CPUer, som har mange kjerner. Hver påbegynt jobb bruker minne, og hvis summen av det nødvendige minnet for hver jobb overskrider tilgjengelig minne, kan du støte på enten et OOM kjerneavbrudd (tom minne) eller intens bruk av vekselfilen som vil bremse byggingen utover rimelige grenser.
Noen kompilasjoner med g++ kan bruke opptil 2,5 GB minne, så for å være sikker bør du begrense antall jobber til (Totalt minne i GB)/2,5, i det minste for store pakker som LLVM, WebKitGtk, QtWebEngine eller libreoffice.
Noen ganger ønsker vi å begrense ressursbruken når vi bygger en pakke. For eksempel, når vi har 8 logiske kjerner, vil vi kanskje bruke bare 6 kjerner for å bygge pakken og reservere 2 kjerner for å spille av en film. Linux-kjernen har en funksjon kalt kontrollgrupper (cgroup) for et slikt behov.
Aktiver control group i kjernekonfigurasjonen, og bygg deretter opp igjen kjernen og start om nødvendig:
General setup ---> [*] Control Group support ---> [CGROUPS] [*] Memory controller [MEMCG] [*] Cpuset controller [CPUSETS]
Forsikre at Systemd-256.4 og Shadow-4.16.0 har blitt
ombygd med Linux-PAM-1.6.1 støtte (hvis du
samhandler via en SSH eller grafisk sesjon, sørg også for
OpenSSH-9.8p1 serveren eller
skrivebordbehandleren er bygget med Linux-PAM-1.6.1).
som root bruker, opprett en
konfigurasjonsfil for å tillate ressurskontroll uten
root privilegium og instruere
systemd å laste
konfigurasjon på nytt:
mkdir -pv /etc/systemd/system/user@.service.d &&
cat > /etc/systemd/system/user@.service.d/delegate.conf << EOF &&
[Service]
Delegate=memory cpuset
EOF
systemctl daemon-reload
Logg deretter ut og logg på igjen. Nå for å kjøre make -j5 med de første 4 logiske kjernene og 8 GB systemminne, utsted:
systemctl --user start dbus &&
systemd-run --user --pty --pipe --wait -G -d \
-p MemoryHigh=8G \
-p AllowedCPUs=0-3 \
make -j5
Med MemoryHigh=8G , en myk
grense for minnebruk er satt. Hvis prosessene i cgroup
(make og alle
underprosesser av den) bruker mer enn 8 GB systemminne
totalt, kjernen vil strupe ned prosessene og prøve å
gjenvinne systemminne fra dem. Men de kan fortsatt bruke mer
enn 8 GB systemminne. Hvis du vil sette en hard grense i
stedet, erstatt MemoryHigh med MemoryMax. Men å gjøre
det vil føre til at prosessene drepes hvis 8 GB ikke er nok
for dem.
AllowedCPUs=0-3 gjør at
kjernen bare kjører prosessene i cgroup på de logiske
kjernene med tallene 0, 1, 2 eller 3. Det kan hende du må
juster denne innstillingen basert på kartleggingen mellom de
logiske kjernene og fysiske kjerner. For eksempel, med en
Intel Core i9-13900K CPU, de logiske kjernene 0, 2, 4, ...,
14 er tilordnet de første trådene til de åtte fysiske
P-kjernene, de logiske kjernene 1, 3, 5, ..., 15 er kartlagt
til de andre trådene til de fysiske P-kjernene, og den
logiske kjernene 16, 17, ..., 31 er kartlagt til de 16
fysiske E-kjernene. Så hvis vi ønsker å bruke fire tråder fra
fire forskjellige P-kjerner, må vi spesifisere 0,2,4,6 i stedet for 0-3. Merk at de andre CPU modeller kan bruke
et annet kartleggingsskjema. Hvis du ikke er sikker på
kartleggingen mellom de logiske kjernene og de fysiske
kjernene, kjør lscpu
--extended kommandoen som vil gi ut logiske
kjerne IDer i CPU
kolonnen og fysisk kjerne IDer i CORE kolonnen.
Når nproc eller
ninja
kommandoer kjører i en cgroup, vil den bruke antallet logiske
kjerner som er tildelt cgroup som “system logical core
count.” For eksempel i en cgroup med logiske
kjerner 0-3 tildelt, nproc vil skrive ut
4, og ninja vil kjøre 6 (4 + 2)
jobber samtidig hvis ingen -j
innstilling er eksplisitt gitt.
Les manualsidene systemd-run(1) og systemd.resource-control(5) for detaljert forklaring av parametere i kommandoen.
Det er tider når automatisering av byggingen av en pakke kan
være praktisk. Alle har sine egne grunner til å ønske å
automatisere byggingen, og alle gjør det på sin egen måte. Å
opprette Makefileer,
Bash skripter, Perl skripter eller bare en liste over
kommandoer som brukes til å klippe og lime er bare noen av
metodene du kan bruke for å automatisere byggingen av BLFS
pakker. Detaljert hvordan og eksempler på de mange måter du
kan automatisere byggingen av pakker på er utenfor rammen av
denne seksjonen. Denne delen vil vise deg bruk av
filomdirigering og yes kommandoer for å gi
ideer om hvordan du kan automatisere byggene dine.
Du vil finne tidspunkter gjennom hele BLFS reisen din at du kommer over en pakke som har en kommando som ber deg om informasjon. Denne informasjon kan være konfigurasjonsdetaljer, en mappebane eller et svar til en lisensavtale. Dette kan by på en utfordring for å automatisere byggingen av den pakken. Noen ganger vil du bli bedt om annen informasjon i en rekke spørsmål. En metode for å automatisere denne typen scenario krever å legge de ønskede svarene i en fil og bruke omdirigering slik at programmet bruker dataene i filen som svar på spørsmålene.
Dette gjør effektivt at testpakken bruker svarene i filen som innspill til spørsmålene. Av og til kan du ende opp med å gjøre litt prøving og feiling for å bestemme det nøyaktige formatet på inndatafilen for noen ting, men når du har funnet ut og dokumentert, kan du bruke dette til å automatisere byggingen av pakken.
Noen ganger trenger du bare å gi ett svar, eller gi samme svar på mange spørsmål. For disse tilfellene, yes kommandoen fungerer veldig bra. yes kommandoen kan brukes til å gi et svar (det samme ett) til ett eller flere forekomster av spørsmål. Den kan brukes til å simulere å trykke på Enter tasten, skrive inn Y tasten eller skrive inn en tekststreng. Kanskje den enkleste måten er å vise bruken på er i et eksempel.
Først lager du et kort Bash skript ved å skrive inn følgende kommandoer:
cat > blfs-yes-test1 << "EOF"
#!/bin/bash
echo -n -e "\n\nPlease type something (or nothing) and press Enter ---> "
read A_STRING
if test "$A_STRING" = ""; then A_STRING="Just the Enter key was pressed"
else A_STRING="You entered '$A_STRING'"
fi
echo -e "\n\n$A_STRING\n\n"
EOF
chmod 755 blfs-yes-test1
Kjør nå skriptet ved å utstede ./blfs-yes-test1 fra kommandolinjen. Den vil vente på et svar, som kan være hva som helst (eller ingenting) etterfulgt av Enter tasten. Etter å ha skrevet inn noe, vil resultatet bli ekkoet til skjermen. Bruk nå yes kommandoen for å automatisere inntasting av en respons:
yes | ./blfs-yes-test1
Legg merke til videreledingen av yes til skriptet resulterer i at y blir overført til skriptet. Prøv nå med en tekststreng:
yes 'This is some text' | ./blfs-yes-test1
Den nøyaktige strengen ble brukt som respons på skriptet. Endelig, prøv det med en tom (null) streng:
yes '' | ./blfs-yes-test1
Legg merke til at dette resulterer i at du bare videreleder pressingen av Enter tasten til skriptet. Dette er nyttig for når standardsvar på ledeteksten er tilstrekkelig. Denne syntaksen brukes i Net-tools instruksjoner for å godta alle standardsvarene til de mange ledetekstene under konfigurasjonstrinnet. Du kan nå fjerne testskriptet om ønskelig.
For å automatisere byggingen av noen pakker, spesielt de som krever at du leser en lisensavtale en side om gangen, krever å bruke en metode som unngår å måtte trykke på en tast for å vise hver side. Omdirigere utdataene til en fil kan brukes i disse tilfellene for å hjelpe med automatiseringen. Den forrige delen på denne siden berørte opprettelse av loggfiler for byggeutdataen. Omdirigeringsmetoden vist der brukte tee kommandoen for å omdirigere utdata til en fil men også vise utdataene på skjermen. Her vil utdataen kun sendes til en fil.
Igjen, den enkleste måten å demonstrere teknikken på er å vise et eksempel. Usted først kommandoen:
ls -l /usr/bin | less
Selvfølgelig må du se utdataene en side om gangen fordi
less filteret
ble brukt. Prøv nå den samme kommandoen, men denne gangen
omdirigerer utdataene til en fil. Den spesielle filen
/dev/null kan brukes i stedet
for filnavnet som vises, men du vil ikke ha noen loggfil å
undersøke:
ls -l /usr/bin | less > redirect_test.log 2>&1
Legg merke til at denne gangen kom kommandoen umiddelbart tilbake til skallets ledetekst uten å måtte bla gjennom utdataene. Du kan nå fjerne loggfilen.
Det siste eksemplet vil bruke yes kommandoen i
kombinasjon med utdataomdirigering for å omgå å måtte bla
gjennom utdataen og deretter gi en y til en spørring. Denne
teknikken kan brukes i tilfeller der du ellers måtte bla
gjennom utdata fra en fil (for eksempel en lisensavtale) og
svare deretter på spørsmål om do
you accept the above?. For dette eksempelet, et annen
kort Bash skript kreves:
cat > blfs-yes-test2 << "EOF"
#!/bin/bash
ls -l /usr/bin | less
echo -n -e "\n\nDid you enjoy reading this? (y,n) "
read A_STRING
if test "$A_STRING" = "y"; then A_STRING="You entered the 'y' key"
else A_STRING="You did NOT enter the 'y' key"
fi
echo -e "\n\n$A_STRING\n\n"
EOF
chmod 755 blfs-yes-test2
Dette skriptet kan brukes til å simulere et program som krever at du leser en lisensavtale, og svarer deretter på riktig måte for å godta avtalen før programmet vil installere noe. Kjør først skriptet uten automatiseringsteknikker ved å utstede ./blfs-yes-test2.
Utfør nå følgende kommando som bruker to automatiseringsteknikker, gjøre det egnet for bruk i et automatisert byggeskript:
yes | ./blfs-yes-test2 > blfs-yes-test2.log 2>&1
Hvis ønskelig, utsted tail blfs-yes-test2.log for å se slutten av den sidesøkte utdataen, og bekreftelse på at y ble sendt videre til skriptet. Når du er overbevist om at den fungerer som den skal, kan du fjerne skriptet og loggfilen.
Til slutt, husk at det er mange måter å automatisere og/eller skripte byggekommandoene. Det er ikke en eneste “riktig” måte å gjøre det på. Det er bare fantasien din som setter grenser.
For hver pakke som er beskrevet, viser BLFS de kjente avhengighetene. Disse er oppført under flere overskrifter, hvis betydning er som følger:
Påkrevd betyr at målpakken ikke kan bygges riktig uten at avhengigheten først har blitt installert, bortsett fra hvis avhengigheten sies å være “kjøretid” som betyr at målpakken kan bygges men kan ikke fungere uten den.
Merk at en målpakke kan begynne å “fungere” på mange subtile måter: en installert konfigurasjonsfil kan gjøre init systemet, cron nissen eller buss nissen for å kjøre et program automatisk; en annen pakke som bruker målpakken som en avhengighet kan kjøre et program fra målpakken i byggesystemet; og konfigurasjonsdelene i BLFS boken kan også kjøre et program fra en nettopp installert pakke. Så hvis du installerer målpakken uten en Påkrevd (kjøretid) avhengighet installert, Bør du installere avhengigheten så snart som mulig etter installasjonen av målpakken.
Anbefalt betyr at BLFS sterkt foreslår at denne pakken installeres først (bortsett fra hvis det sies å være “kjøretid,” se nedenfor) for et rent og problemfritt bygg, som ikke vil ha problemer verken under byggeprosessen eller ved kjøretid. Instruksjonene i boken forutsetter at disse pakkene er installert. Noen endringer eller løsninger kan være nødvendige hvis disse pakker ikke er installert. Hvis en anbefalt avhengighet er sagt å være “kjøretid,” betyr det at BLFS sterkt foreslår at denne avhengigheten er installert før du bruker pakken, for å få full funksjonalitet.
Valgfri betyr at denne pakken kan bli installert for ekstra funksjonalitet. Ofte vil BLFS beskrive avhengighet for å forklare den ekstra funksjonalitetenen som vil bli resultatet. Noen valgfrie avhengigheter kan automatisk plukkes opp av målpakken hvis avhengigheten er installert, mens andre trenger flere konfigurasjonsalternativer for å bli aktivert når målpakken er bygget. Slike tilleggsalternativer er ofte dokumentert i BLFS boken. Hvis en valgfri avhengighet er sagt å være “kjøretid,” betyr det at du kan installere avhengigheten etter installasjon av målpakken for å støtte noen valgfrie funksjoner i målpakken hvis du trenger disse egenskapene.
En valgfri avhengighet kan være utenfor BLFS. Hvis du trenger en slik ekstern valgfri avhengighet for noen funksjoner du trenger, les Gå Utover BLFS for generelle hint om å installere en pakke utenfor BLFS.
Noen ganger kan du støte på en situasjon i boken når en pakke ikke vil bygge eller fungere skikkelig. Selv om redaktørene prøver å sikre at hver pakke i boken bygger og fungerer som den skal, noen ganger har pakken blitt oversett eller ble ikke testet med denne versjonen av BLFS.
Hvis du oppdager at en pakke ikke vil bygge eller fungere som den skal, bør du se om det finnes en mer oppdatert versjon av pakken. Typisk betyr dette at du går til vedlikeholderens nettsted og laster ned den nyeste tarballen og forsøke å bygge pakken. Hvis du ikke kan bestemme vedlikeholderens nettsted ved å se på nedlastingsadressene, bruk Google og spør etter pakkens navn. Skriv for eksempel i Google-søkefeltet: 'pakkenavn nedlasting' (utelat anførselstegn) eller noe lignende. Noen ganger å skrive: 'pakkenavn hjemmeside' vil resultere i at du finner vedlikeholderens nettsted.
I LFS, stripping av feilsøkingssymboler og unødvendige symboltabell oppføringer ble diskutert et par ganger. Når du bygger BLFS pakker, er det generelt ingen spesielle instruksjoner som diskuterer stripping en gang til. Stripping kan gjøres mens du installerer en pakke, eller etterpå.
Det er flere måter å strippe kjørbare filer installert av en pakke. Det avhenger av byggesystemet som brukes (se nedenfor avsnittet om byggesystemer), så bare noen generelle forhold kan listes opp her:
Følgende metoder ved hjelp av funksjonen til et byggesystem (autoverktøy, meson eller cmake) vil ikke strippe statiske biblioteker hvis noen er installert. Heldigvis er det ikke for mange statiske biblioteker i BLFS, og et statisk bibliotek kan alltid strippes trygt med å kjøre strip --strip-unneeded på den manuelt.
Pakkene som bruker autoverktøy har vanligvis et
install-strip
mål i deres genererte Makefile filer. Så å installere
strippede kjørbare er bare et spørsmål om å bruke
make
install-strip i stedet for make install.
Pakkene som bruker meson byggesystemet kan godta
-D strip=true
når du kjører meson. Hvis du har
glemt å legge til dette alternativet ved kjøring av
meson,
kan du også kjøre meson
install --strip i stedet for
ninja
install.
cmake
genererer install/strip mål for
både Unix
Makefiles og Ninja generatorer
(standard er Unix
Makefiles på linux). Så bare kjør
make
install/strip eller ninja install/strip i
stedet for install motparter.
Å strippe (eller ikke generere) feilsøkingssymboler kan
også oppnås ved å strippe -g<noe>
alternativer i C/C++ anrop. Hvordan du gjør det er
veldig spesifikt for hver enkelt pakke. Og den stripper
ikke unødvendige symboltabelloppføringer. Så det vil
ikke bli forklart i detalj her. Se også nedenfor
avsnittene om optimalisering.
strip verktøyet
endrer filer på plass, noe som kan bryte noe ved å bruke det
hvis det er lastet inn i minnet. Merk at hvis en fil er i
bruk, men nettopp strippet fra disken (dvs. ikke overskrevet
eller modifisert), er dette ikke et problem siden kjernen kan
bruke “slettede” filer. Se på /proc/*/maps og det er sannsynlig at du vil
se noen (slettede)
oppføringer. mv
fjerner bare målfilen fra mappen, men berører ikke innholdet,
slik at den tilfredsstiller betingelsen for at kjernen skal
bruke den gamle (slettede) filen. Men denne tilnærmingen kan
løsne harde lenker til dupliserte kopier, forårsaker det en
oppblåsthet som åpenbart er uønsket når vi stripper for å
redusere systemstørrelsen. Hvis to filer i samme filsystem
deler samme inodenummer, de er harde lenker til hverandre, og
vi burde rekonstruere koblingen. Skriptet nedenfor er bare et
eksempel. Det skal kjøres som root bruker:
cat > /usr/sbin/strip-all.sh << "EOF"
#!/usr/bin/bash
if [ $EUID -ne 0 ]; then
echo "Need to be root"
exit 1
fi
last_fs_inode=
last_file=
{ find /usr/lib -type f -name '*.so*' ! -name '*dbg'
find /usr/lib -type f -name '*.a'
find /usr/{bin,sbin,libexec} -type f
} | xargs stat -c '%m %i %n' | sort | while read fs inode file; do
if ! readelf -h $file >/dev/null 2>&1; then continue; fi
if file $file | grep --quiet --invert-match 'not stripped'; then continue; fi
if [ "$fs $inode" = "$last_fs_inode" ]; then
ln -f $last_file $file;
continue;
fi
cp --preserve $file ${file}.tmp
strip --strip-unneeded ${file}.tmp
mv ${file}.tmp $file
last_fs_inode="$fs $inode"
last_file=$file
done
EOF
chmod 744 /usr/sbin/strip-all.sh
Hvis du installerer programmer i andre mapper som f.eks
/opt eller /usr/local, kan det være lurt å strippe
filene der også. Bare legg til andre mapper for å skanne i
den sammensatte find kommandoen mellom
krøllparentesene i listen over.
For mer informasjon om stripping, se https://www.technovelty.org/linux/stripping-shared-libraries.html.
Det er nå tre forskjellige byggesystemer i vanlig bruk for å
konvertere C eller C++ kildekode til kompilerte programmer
eller biblioteker og deres detaljer (spesielt å finne ut om
tilgjengelige alternativer og deres standardverdier) er
forskjellige. Det er kanskje lettest å forstå problemene
forårsaket av noen valg (vanligvis langsom utførelse eller
uventet bruk av, eller utelatelse av, optimaliseringer) ved å
starte med CFLAGS, CXXFLAGS, og LDFLAGS miljøvariabler. Det er også noen
programmer som bruker Rust.
De fleste LFS og BLFS byggere er sannsynligvis klar over det
grunnleggende om CFLAGS og
CXXFLAGS for å endre hvordan et
program er kompilert. Vanligvis brukes en eller annen form
for optimalisering av oppstrøms utviklere (-O2 eller -O3),
noen ganger med opprettelse av feilsøkingssymboler
(-g), som standard.
Hvis det er motstridende flagg (f.eks. flere forskjellige
-O verdier), den siste verdien vil bli brukt. Noen
ganger betyr dette at flagg spesifisert i miljøvariabler vil
bli plukket opp før verdier hardkodet i Makefilen, og derfor
ignorert. For eksempel, der en bruker spesifiserer
-O2 og det blir etterfulgt av
-O3 vil byggingen bruke
-O3.
Det er forskjellige andre ting som kan sendes i CFLAGS eller
CXXFLAGS, for eksempel å tillate bruk av instruksjonssettet
utvidelser tilgjengelig med en spesifikk mikroarkitektur
(f.eks. -march=amdfam10 eller
-march=native), stille inn den
genererte koden for en spesifikk mikroarkitektur (f.eks.
-mtune=tigerlake or -mtune=native, hvis -mtune= ikke brukes, mikroarkitekturen fra
-march= innstillingen vil bli
brukt), eller spesifisere en spesifikk standard for C eller
C++ (-std=c++17 for eksempel).
Men en ting som nå har kommet frem er at programmerere kan
inkludere feilsøkingspåstander i koden sin, forventer de skal
deaktiveres i utgivelser ved å bruke -D
NDEBUG. Spesielt hvis Mesa-24.1.5 er bygget med disse
påstander aktivert, noen aktiviteter som lasting av spill kan
ta ekstremt lang tid, selv på skjermkort av høy klasse.
Denne kombinasjonen beskrives ofte som “CMMI” (configure, make, make install) og brukes her til også å dekke de få pakkene som har et konfigureringsskript som ikke er generert av autoverktøy.
Noen ganger å kjøre ./configure --help vil produsere nyttige alternativer om brytere som kan brukes. Andre ganger, etter å ha sett på utdataene fra configure må du kanskje se på detaljene i skriptet for å finne ut hva det faktisk søkte for.
Mange konfigureringsskript vil plukke opp alle CFLAGS eller CXXFLAGS fra miljøet, men CMMI pakker varierer med hvordan disse vil bli blandet med flagg som ellers ville blitt brukt (forskjellig: ignorert, brukt til å erstatte programmererens forslag, brukt før programmerers forslag, eller brukt etter programmererens forslag).
I de fleste CMMI pakkene vil kjøring av make liste hver kommando og
kjøre det, ispedd eventuelle advarsler. Men noen pakker
prøver å være “stille” og bare vise hvilken fil de
kompilerer eller kobler i stedet for å vise kommandolinjen.
Hvis du trenger å inspisere kommandoen, enten på grunn av en
feil, eller bare for å se hvilke alternativer og flagg som
brukes, legg til V=1 for å lage
påkallelsen kan hjelpe.
CMake fungerer på en helt annen måte, og den har to
bakstykker som kan brukes på BLFS: make og ninja. Standard bakstykke
er make, men ninja kan være raskere på store pakker med flere
prosessorer. For å bruke ninja, spesifiser -G Ninja i cmake kommandoen. Imidlertid er
det noen pakker som skaper fatale feil i deres ninja filer,
men bygd vellykket ved å bruke standard Unix Makefiler.
Den vanskeligste delen med å bruke CMake er å vite hvilke alternativer du måtte ønske å spesifisere. Den eneste måten å få en liste over hva pakken vet er å kjøre cmake -LAH og se på utdataen for standardkonfigurasjon.
Det kanskje viktigste med CMake er at den har en variasjon av
CMAKE_BUILD_TYPE verdier, og disse påvirker flaggene.
Standaren er at dette ikke er satt og ingen flagg blir
generert. Eventuelle CFLAGS eller
CXXFLAGS i miljøet vil bli brukt.
Hvis programmereren har kodet noen feilsøkingspåstander,
disse vil være aktivert med mindre -D NDEBUG brukes. Følgende
CMAKE_BUILD_TYPE verdier vil generere flaggene som vises, og
disse skal komme etter
eventuelle flagg i miljøet og har derfor forrang.
| Verdi | Flagg |
|---|---|
| Debug |
-g
|
| Release |
-O3 -D NDEBUG
|
| RelWithDebInfo |
-O2 -g -D NDEBUG
|
| MinSizeRel |
-Os -D NDEBUG
|
CMake prøver å produsere stille bygginger. For å se detaljene til kommandoene som kjøres, bruk make VERBOSE=1 eller ninja -v.
Som standard behandler CMake filinstallasjon annerledes enn
andre byggesystemer: hvis en fil allerede eksisterer og ikke
er nyere enn en fil som ville overskrive den, så blir ikke
filen installert. Dette kan være et problem hvis en bruker
ønsker å registrere hvilken fil som tilhører en pakke, enten
ved hjelp av LD_PRELOAD, eller ved
å liste nyere filer enn et tidsstempel. Standarden kan endres
ved å angi variabelen CMAKE_INSTALL_ALWAYS til 1 i miljøet, for eksempel med å
export det.
Meson har noen likheter med CMake, men mange forskjeller. Å
få detaljer om definisjonene som du kanskje ønsker å endre
kan du se på meson_options.txt
som vanligvis er i mappen på øverste nivå.
Hvis du allerede har konfigurert pakken ved å kjøre meson og nå ønsker å endre en eller flere innstillinger, kan du enten fjerne byggemappen, gjenskape den og bruke de endrede alternativene, eller kjøre i byggemappen meson configure, f.eks. for å angi et alternativ:
meson configure -D <some_option>=true
Hvis du gjør det, filen meson-private/cmd_line.txt vil vise den
siste kommandoen som
ble brukt.
Meson gir følgende byggetype verdier, og flaggene de aktiverer kommer etter eventuelle flagg som leveres i miljøet og har derfor forrang.
plain: ingen flagg lagt til. Dette er for distributører
for å levere sine egne CFLAGS, CXXFLAGS og LDFLAGS. Det er ingen åpenbar grunn til
å bruke dette i BLFS.
debug: -g - dette er
standard hvis ingenting er spesifisert i enten
meson.build eller
kommandolinjen. Men det resulterer i store og langsomme
binærfiler, så vi bør overstyre det i BLFS.
debugoptimized: -O2 -g -
dette er standard spesifisert i meson.build av noen pakker.
release: -O3 (noen ganger
vil en pakke tvinge -O2
her) - dette er byggetypen vi bruker for de fleste
pakker med Meson byggesystem i BLFS.
-D NDEBUG flagget antydes av
utgivelsen byggetype for noen pakker (for eksempel Mesa-24.1.5). Det
kan også gis eksplisitt ved å sende -D
b_ndebug=true.
For å se detaljene for kommandoene som kjøres i en pakke ved hjelp av meson, bruk ninja -v.
De fleste utgitte rustc programmer leveres som crates (kilde
tarballer) som vil spørre en server om å sjekke gjeldende
versjoner av avhengigheter og last dem ned etter behov. Disse
pakkene er bygget med cargo
--release. I teorien kan du manipulere
RUSTFLAGS for å endre optimaliseringsnivået (standard for
--release er 3, dvs -Copt-level=3, er lik -O3) eller for å tvinge den til å bygge for
maskinen den blir kompilert på, ved hjelp av -Ctarget-cpu=native men i praksis ser dette
ut til å ikke gjøre noen vesentlig forskjell.
Hvis du kompilerer et frittstående Rust program (som et
upakket .rs fil) ved å kjøre
rustc direkte,
bør du spesifisere -O
(forkortelsen av -Copt-level=2)
eller -Copt-level=3 ellers vil
den gjøre en uoptimalisert kompilering og kjøre mye langsommere. Hvis du
kompilerer programmet for å feilsøke det, bytt ut
-O eller -Copt-level= alternativer med -g for å produsere et uoptimalisert program
med feilsøkingsinformasjon.
Lik ninja, som
standard cargo
bruker alle logiske kjerner. Dette kan ofte omgås, enten ved
å eksportere CARGO_BUILD_JOBS= eller sende
<N>--jobs til
cargo. For å
kompilere rustc selv, spesifisere <N>--jobs
for påkallelser av x.py (sammen med
<N>CARGO_BUILD_JOBS miljøvariabel,
som ser ut som en “belte og seler” tilnærming, men ser ut
til å være nødvendig) fungerer for det meste. Unntaket er
kjører testene når du bygger rustc, noen av dem vil bruk
likevel alle tilgjengelige CPUer, i det minste fra og med
rustc-1.42.0.
Mange mennesker vil foretrekke å optimalisere kompileringer
slik de finner passende, ved å tilby CFLAGS eller CXXFLAGS. For en introduksjon til
alternativene tilgjengelig med gcc og g++ se
https://gcc.gnu.org/onlinedocs/gcc-14.2.0/gcc/Optimize-Options.html.
Det samme innholdet finnes også i info gcc.
Noen pakker er som standard -O2
-g, andre -O3 -g, og hvis
CFLAGS eller CXXFLAGS leveres, kan de legges til pakkens
standardinnstillinger, erstatte pakkens
standardinnstillinger, eller til og med bli ignorert. Det er
detaljer om noen skrivebordspakker som var stort sett aktuelt
i april 2019 på https://www.linuxfromscratch.org/~ken/tuning/
- i spesielt, README.txt,
tuning-1-packages-and-notes.txt, og
tuning-notes-2B.txt. Det
spesielle å huske er at hvis du ønsker å prøve noen av de mer
interessante flagg trenger du kanskje å tvinge detaljerte
bygg for å bekrefte hva som blir brukt.
Klart, hvis du optimaliserer ditt eget program kan du bruke
tid på det profilere det og kanskje omkode noe av det hvis
det er for tregt. Men for å bygge et helt system er det
upraktisk. Generelt, -O3
produserer vanligvis raskere programmer enn -O2. Spesifisere -march=native er også gunstig, men det betyr
at du ikke kan flytte binærfilene til en inkompatibel maskin
- dette gjelder også for nyere maskiner, ikke bare for eldre
maskiner. For eksempelprogrammer kompilert for amdfam10 kjører på gamle Phenoms, Kaveris og
Ryzens, men programmer kompilert for en Kaveri vil ikke kjøre
på en Ryzen fordi visse op-koder ikke er tilstede. På samme
måte, hvis du bygger for en Haswell, vil ikke alt kjøre på en
SandyBridge.
Pass på at navnet på en -march
innstilling samsvarer ikke alltid med basislinjen til
mikroarkitekturen med samme navn. For eksempel Skylake
baserte Intel Celeron prosessorer støtter ikke AVX i det
hele tatt, men -march=skylake
antar AVX og til og med AVX2.
Når et delt bibliotek bygges av GCC, en funksjon kalt
“semantic
interposition” er aktivert som standard. Når
det delte biblioteket refererer til et symbolnavn med ekstern
kobling og standard synlighet, hvis symbolet finnes i begge
de delte biblioteket og de viktigste kjørbare, semantiske
interposisjonsgarantiene symbolet i den kjørbare hovedfilen
brukes alltid. Denne funksjonen ble oppfunnet i et forsøk på
å gjøre oppførselen til å koble til en delt bibliotek og
koble et statisk bibliotek så likt som mulig. I dag bare et
lite antall pakker er fortsatt avhengig av semantikk
interposisjon, men funksjonen er fortsatt på som standard for
GCC, forårsaker mange optimaliseringer deaktivert for delte
biblioteker fordi de er i konflikt med semantisk
interposisjon. -fno-semantic-interposition alternativet kan
bli sendt til gcc eller g++ for å deaktivere
semantisk interposisjon og muliggjør flere optimaliseringer
for delt biblioteker. Dette alternativet brukes som standard
for enkelte pakker (for eksempel Python-3.12.5), og det
er også standard for Clang.
Det er også forskjellige andre alternativer som noen hevder er gunstige. I verste fall får du rekompilere og teste, og så oppdage at i din bruk gir alternativene ikke en fordel.
Hvis du bygger Perl eller Python moduler, generelt
CFLAGS og CXXFLAGS brukt er de som ble brukt av disse
“foreldre” pakker.
For LDFLAGS, det er tre
alternativer som kan brukes for optimalisering. De er ganske
trygge å bruke og byggesystemet for noen pakker bruker noen
av disse alternativene som standard.
Med -Wl,-O1, linkeren vil optimer
hash tabellen for å øke hastigheten på den dynamiske
koblingen. Merk at -Wl,-O1 er
helt urelatert til kompilatoroptimaliseringsflagg
-O1.
Med -Wl,--as-needed, linkeren vil
se bort fra unødvendige -l alternativer fra
kommandolinjen, dvs. e. det delte biblioteket foolib vil bare bli
koblet hvis et symbol i foolib
er virkelig henvist fra det kjørbare eller delte biblioteket
som kobles til. Dette kan noen ganger dempe “overdreven avhengighet til delte
biblioteker” problemer forårsaket av
libtool.
foo
Med -Wl,-z,pack-relative-relocs,
linkeren genererer en mer komprimert form av de relative
flytteoppføringene for PIE-er og delte biblioteker. Det
reduserer størrelsen på den tilknyttede PIE eller delt
bibliotek, og fremskynder lasting av PIE eller delt
bibliotek.
-Wl, prefiks er nødvendig fordi
til tross for at variabelen er navngitt LDFLAGS, innholdet er faktisk sendt til
gcc (eller
g++,
clang, etc.)
under koblingsstadiet, ikke direkte sendt til ld.
Selv på stasjonære systemer er det fortsatt mye som kan utnytte sårbarheter. For mange av disse kommer angrepet via javascript i en nettleser. Ofte brukes en rekke sårbarheter for å få tilgang til data (eller noen ganger til pwn, dvs. eie, maskinen og installer rootkits). De fleste kommersielle distros vil bruke ulike sikringstiltak.
Tidligere var det Hardened LFS der gcc (en mye eldre versjon)
ble tvunget til å bruke herding (med alternativer for å slå
av noe av det på en per pakke-basis). De nåværende LFS- og
BLFS-bøkene fører videre en del av sin ånd ved å aktivere PIE
(-fPIE -pie) og SSP (-fstack-protector-strong) som standard for
GCC og clang. Og, linkerene (ld.bfd og ld.gold) har også aktivert
-Wl,-z,relro som gjør en del av
Global Offset Table (GOT) uforanderlig, som standard siden
Binutils 2.27. Det som blir dekket her er annerledes - først
må du sørge for at pakken faktisk bruker flaggene du har lagt
til, og ikke overstyrer dem.
For herdealternativer som er rimelig billige, finnes det noen
diskusjon i "tuning" lenken ovenfor (noen ganger kan en eller
flere av disse alternativene være upassende for en pakke).
Disse alternativene er -D
_FORTIFY_SOURCE=2 (eller -D
_FORTIFY_SOURCE=3 som er sikrere men med større
ytelsesoverhead) og (for C++) -D
_GLIBCXX_ASSERTIONS. På moderne maskiner skal disse
bare ha en liten innvirkning på hvor raskt ting kjører, og
ofte vil de ikke merkes.
De største distroene bruker mye mer, som f.eks:
-Wl,-z,now: deaktiverer
lazy binding for å forbedre -Wl,-z,relro, sånn at hele GOT kan gjøres
uforanderlig.
-fstack-clash-protection:
hindrer angriperen fra å bruke en offset som er stor
nok og ikke tilstrekkelig kontrollert til å hoppe over
stabel guard siden plassert av kjernen og stabel canary
plassert ved -fstack-protector=strong, og endre
stabelen fra en heapadresse, eller omvendt.
-ftrivial-auto-var-init=zero:
initialiserer noen variabler ved å fylle null byte hvis
de ikke er initialisert på andre måter.
-fcf-protection=full:
bruker Intel og AMD CET teknologi for å begrense
måladressene for control-flow overføringsinstruksjoner.
For å gjøre det virkelig effektivt for en pakke, alle
pakker som gir et delt bibliotek for pakken som skal
brukes må bygges med dette alternativet, så vel som
selve pakken, Glibc må konfigureres med --enable-cet alternativet aktivert, og
systemet må kjøre på Intel Tiger Lake eller nyere,
eller AMD Zen 3 eller nyere. Dersom kriteriene ikke er
oppfylt, vil programmet satt sammen med dette
alternativet fortsatt kjøre, men er egentlig ikke
beskyttet av CET.
I GCC 14, alternativet -fhardened
er en forkortelse for å aktivere alle herdealternativene
nevnt ovenfor. Det setter -D
_FORTIFY_SOURCE=3 istedenfor -D
_FORTIFY_SOURCE=2.
Du kan også møte den såkalte “userspace
retpoline” (-mindirect-branch=thunk etc.) hvilken
tilsvarer spekter begrensninger som ble tatt i bruk i
linuxkjernen sent i 2018. Kjernebegrensningene forårsaket
mange klager om tapt ytelse, hvis du har en produksjonsserver
ønsker du kanskje å vurdere å teste det, sammen med de andre
tilgjengelige alternativene, å se om ytelsen fortsatt er
tilstrekkelig.
Mens gcc har mange herdealternativer, ligger clang/LLVMs styrke andre steder. Noen alternativer som gcc tilbyr sies å være mindre effektive i clang/LLVM.
Bør jeg installere XXX i
/usr eller /usr/local?
Dette er et spørsmål uten et åpenbart svar for et LFS basert system.
I tradisjonelle Unix systemer, /usr inneholder vanligvis filer som kommer
med systemdistribusjonen, og /usr/local treet er ledig for lokale
administratorer å administrere. Den eneste virkelig harde og
raske regelen er at Unix distribusjoner bør ikke røre
/usr/local, unntatt kanskje å
opprette de grunnleggende mappene i den.
Med Linux distribusjoner som Red Hat, Debian, etc., en mulig
regel er at /usr administreres av
distribusjonens pakkesystem og /usr/local er ikke. På denne måten kan
pakkebehandlerens database vite om hver fil innenfor
/usr.
LFS brukere bygger sitt eget system og bestemme hvor systemet
slutter og lokale filer begynner er ikke enkelt. Så valget bør
gjøres for å gjøre ting enklere å administrere. Det er flere
grunner til å dele filer mellom /usr og /usr/local.
På et nettverk av flere maskiner som alle kjører LFS,
eller blandet LFS og andre Linux distribusjoner,
/usr/local kan brukes til å
holde pakker som er felles mellom alle datamaskinene i
nettverket. Det kan være NFS montert eller speilet fra en
enkelt server. Her indikerer lokalt, lokalt på stedet.
På et nettverk av flere datamaskiner som alle kjører et
identisk LFS system, /usr/local kunne holde pakker som er
forskjellige mellom maskinene. I dette tilfellet lokalt
refererer til de enkelte datamaskinene.
Selv på en enkelt datamaskin, /usr/local kan være nyttig hvis du har
flere distribusjoner installert samtidig, og ønsker et
sted å legge pakker som vil være like på dem alle.
Eller du kan regelmessig gjenoppbygge LFS, men vil ha et sted å plassere filer som du ikke vil gjenoppbygge hver gang. Denne måten kan du slette LFS filsystemet og starte fra en ren partisjoner hver gang uten å miste alt.
Noen spør hvorfor ikke bruke ditt eget mappetre, f.eks.,
/usr/site, i stedet for
/usr/local?
Det er ingenting som stopper deg, mange nettsteder lager sine
egne trær, men det gjør det vanskeligere å installere ny
programvare. Automatiske installatører ser ofte etter
avhengigheter i /usr og
/usr/local, og hvis filen den
leter etter er i /usr/site i
stedet, installasjonsprogrammet vil sannsynligvis mislykkes med
mindre du spesifikt forteller det hvor den skal se.
Hva er BLFS holdning til dette?
Alle BLFS instruksjonene installerer programmer i /usr med valgfrie instruksjoner til å
installere i /opt for noen
spesifikke pakker.
Når du følger de ulike avsnittene i boken, vil du observere at boken av og til inneholder oppdateringer som kreves for en vellykket og sikker installasjon av pakkene. Bokens generelle praksis er å inkludere oppdateringer som faller inn under ett av følgende kriterier:
Løser et kompileringsproblem.
Løser et sikkerhetsproblem.
Retter en ødelagt funksjonalitet.
Kort fortalt inneholder boken kun oppdateringer som er enten påkrevd eller anbefalt. Det er en Oppdateringer delprosjekt som er vert for forskjellige oppdateringer (inkludert oppdateringene det refereres til i bøkene) slik at du kan konfigurere LFS slik du liker den.
BLFS Systemd Units pakken inneholder systemd enhetsfilene som brukes gjennom hele boken.
Pakkeinformasjon
BLFS Systemd Units pakken vil bli brukt gjennom hele BLFS boken
for systemd enhetsfiler. Hver systemd enhet har et eget
installasjonsmål. Det anbefales at du beholder pakkekildemappen
til BLFS systemet ditt er fullført. Når en systemd enhet er
forespurt fra BLFS Systemd Units, bytt til mappen, og som
root bruker, utfør den gitte
make install-<systemd-unit>
kommandoen. Denne kommandoen installerer systemd enheten på
riktig plassering (sammen med eventuelle
hjelpekonfigurasjonsskript) og aktiverer det som standard.
Det anbefales å lese hver systemd enhet før installasjon for å finne ut om de installerte filene oppfyller dine behov.
I LFS og BLFS bruker mange pakker en internt sendt kopi av libtool for å bygge på en rekke Unix plattformer. Dette inkluderer plattformer som f.eks AIX, Solaris, IRIX, HP-UX og Cygwin samt Linux. Opprinnelsen til dette verktøyet er ganske utdatert. Det var ment å administrere biblioteker på systemer med mindre avanserte funksjoner enn et moderne Linux system.
På et Linux system er libtool spesifikke filer generelt unødvendige. Normalt spesifiseres biblioteker i byggeprosessen under koblingsfasen. Siden et linux basert system bruker Executable and Linkable Format (ELF) for kjørbare filer og dynamiske biblioteker, er informasjon som trengs for å fullføre oppgaven innebygd i filene. Både linkeren og programlasteren kan spørre om passende filer og koble eller kjøre programmet på riktig måte.
Statiske biblioteker brukes sjelden i LFS og BLFS. Og i dag lagrer de fleste pakker informasjonen som trengs for å koble til et statisk biblioteket til en .pc fil, i stedet for å stole på libtool. pkg-config --static --libs kommandoen sender ut de tilstrekkelige flaggene til at linkeren kan kobles mot et statisk bibliotek uten libtool-magi.
Problemet er at libtool vanligvis lager en eller flere tekstfiler for pakkebiblioteker kalt libtool arkiver. Disse små filene har en ".la" filtype og inneholder informasjon som ligner på den innebygde i bibliotekene eller pkg-config-filene. Når du bygger en pakke som bruker libtool, ser prosessen automatisk etter disse filene. Noen ganger kan en .la fil inneholde navnet eller banen til et statisk bibliotek som brukes under bygging, men ikke er installert, da vil byggeprosessen bryte fordi .la filen refererer til noe som ikke eksisterer på systemet. På samme måte, hvis en pakke er oppdatert og ikke lenger bruker .la-filen, da kan byggeprosessen bryte med de gamle .la-filene.
Løsningen er å fjerne .la filene. Men det er en hake. Noen pakker, som f.eks ImageMagick-7.1.1-36, bruk en libtool funksjon, lt_dlopen, for å laste biblioteker etter behov under kjøring og løse deres avhengigheter under kjøring. I dette tilfellet bør .la filene bli værende.
Skriptet nedenfor fjerner alle unødvendige .la filer og lagrer dem i en katalog, /var/local/la-files som standard, ikke i den vanlige bibliotek stien. Den søker også i alle pkg-config filer (.pc) etter innebygde referanser til .la filer og fikser dem til å være konvensjonelle bibliotek referanser som trengs når en applikasjon eller et bibliotek bygges. Den kan kjøres etter behov for å rydde opp i katalogene som kan være årsaken til problemer.
cat > /usr/sbin/remove-la-files.sh << "EOF"
#!/bin/bash
# /usr/sbin/remove-la-files.sh
# Written for Beyond Linux From Scratch
# by Bruce Dubbs <bdubbs@linuxfromscratch.org>
# Make sure we are running with root privs
if test "${EUID}" -ne 0; then
echo "Error: $(basename ${0}) must be run as the root user! Exiting..."
exit 1
fi
# Make sure PKG_CONFIG_PATH is set if discarded by sudo
source /etc/profile
OLD_LA_DIR=/var/local/la-files
mkdir -p $OLD_LA_DIR
# Only search directories in /opt, but not symlinks to directories
OPTDIRS=$(find /opt -mindepth 1 -maxdepth 1 -type d)
# Move any found .la files to a directory out of the way
find /usr/lib $OPTDIRS -name "*.la" ! -path "/usr/lib/ImageMagick*" \
-exec mv -fv {} $OLD_LA_DIR \;
###############
# Fix any .pc files that may have .la references
STD_PC_PATH='/usr/lib/pkgconfig
/usr/share/pkgconfig
/usr/local/lib/pkgconfig
/usr/local/share/pkgconfig'
# For each directory that can have .pc files
for d in $(echo $PKG_CONFIG_PATH | tr : ' ') $STD_PC_PATH; do
# For each pc file
for pc in $d/*.pc ; do
if [ $pc == "$d/*.pc" ]; then continue; fi
# Check each word in a line with a .la reference
for word in $(grep '\.la' $pc); do
if $(echo $word | grep -q '.la$' ); then
mkdir -p $d/la-backup
cp -fv $pc $d/la-backup
basename=$(basename $word )
libref=$(echo $basename|sed -e 's/^lib/-l/' -e 's/\.la$//')
# Fix the .pc file
sed -i "s:$word:$libref:" $pc
fi
done
done
done
EOF
chmod +x /usr/sbin/remove-la-files.sh
De originale bibliotekene var rett og slett et arkiv av
rutiner som de nødvendige rutinene ble trukket ut fra og
koblet inn i det kjørbare programmet. Disse beskrives som
statiske biblioteker, med navn på formen libfoo.a på UNIX lignende operativsystemer.
På noen gamle operativsystemer er de den eneste tilgjengelige
typen.
På nesten alle Linux plattformer er det også “delte” (eller
tilsvarende “dynamiske”) biblioteker (med navn på
formen libfoo.so) – en kopi av
biblioteket lastes inn i det virtuelle minnet, og deles av
alle programmene som kaller noen av funksjonene. Dette er
plass effektiv.
Tidligere ble essensielle programmer som et skall ofte koblet
sammen statisk slik at en form for minimalt
gjenopprettingssystem til og med ville eksistere hvis delte
biblioteker, som f.eks libc.so,
ble skadet (f.eks. flyttet til lost+found av fsck etter en uren
nedstengning). Nå for tiden, de fleste bruker en alternativ
systeminstallasjon eller en USB pinne hvis de må
gjenopprette. Journalføring av filsystemer reduserer også
sannsynligheten for denne typen problem.
Inne i boken er det forskjellige steder hvor
konfigureringsbrytere som for eksempel --disable-static er brukt, og
andre steder hvor muligheten for å bruke systemversjoner av
biblioteker i stedet for versjonene som er inkludert i en
annen pakke er diskutert. Hovedgrunnen til dette er å
forenkle oppdateringer av biblioteker.
Hvis en pakke er koblet til et dynamisk bibliotek,
oppdatering til et nyere bibliotekversjon er automatisk når
det nyere biblioteket er installert og programmet (på nytt)
startes (forutsatt at bibliotekets hovedversjon er uendret,
f.eks. går fra libfoo.so.2.0
til libfoo.so.2.1. Gå til
libfoo.so.3 vil kreve
rekompilering – ldd kan brukes til å finne
hvilke programmer som bruker den gamle versjonen). Hvis et
program er knyttet til et statisk biblioteket, må programmet
alltid kompileres på nytt. Hvis du vet hvilke programmer som
er knyttet til et bestemt statisk bibliotek, er dette bare en
irritasjon. Men vanligvis vil du ikke vite hvilke programmer å
rekompilere.
En måte å identifisere når et statisk bibliotek brukes, er å
håndtere det på slutten av installasjonen av hver pakke.
Skriv et skript for å finne alle de statiske bibliotekene i
/usr/lib eller hvor enn du
installerer til, og enten flytte dem til en annen mappe slik
at de er ikke lenger blir funnet av linkeren, eller gi dem
nytt navn slik at libfoo.a blir
f.eks. libfoo.a.hidden. Det
statiske biblioteket kan da midlertidig gjenopprettes hvis
det noen gang er nødvendig, og pakken som trenger det kan
identifiseres. Dette bør ikke gjøres blindt siden mange
biblioteker eksisterer bare i en statisk versjon. For
eksempel noen biblioteker fra glibc og gcc pakkene skal alltid være presentert
på systemet som (libc_nonshared.a,
libg.a, libpthread_nonshared.a, libssp_nonshared.a,
libsupc++.a fra glibc-2.36 og gcc-12.2).
Hvis du bruker denne tilnærmingen, kan du oppdage at flere pakker enn du ventet bruker et statisk bibliotek. Det var tilfellet med nettle-2.4 i standard kun statisk konfigurasjon: Det ble påkrevd av GnuTLS-3.0.19, men også koblet til pakke(r) som bruker GnuTLS, som for eksempel glib-networking-2.32.3.
Mange pakker legger noen av sine vanlige funksjoner inn i et statisk bibliotek som bare brukes av programmene i pakken og, avgjørende, biblioteket er ikke installert som en frittstående bibliotek. Disse interne bibliotekene er ikke et problem – hvis pakken må bygges om for å fikse en feil eller sårbarhet, ingenting annet er knyttet til dem.
Når BLFS nevner systembiblioteker, betyr det delte versjoner av biblioteker. Noen pakker som f.eks Firefox-128.1.0 og ghostscript-10.03.1 samler mange andre biblioteker i byggetreet deres. Versjonen de sender er ofte eldre enn versjonen som brukes i systemet, så det kan inneholde feil – noen ganger tar utviklere bryet med å fikse feil i de inkluderte bibliotekene, andre ganger gjør de det ikke.
Noen ganger er det en enkel avgjørelse å bestemme seg for å bruke systembiblioteker. Andre ganger kan det kreve at du endrer systemversjonen (f.eks libpng-1.6.43 hvis det brukes til Firefox-128.1.0). Noen ganger sender en pakke et gammelt bibliotek og kan ikke lenger koble til gjeldende versjon, men kan lenke til en eldre versjon. I dette tilfellet, BLFS vil vanligvis bare bruke den leverte versjonen. Noen ganger det er det inkluderte biblioteket ikke lenger utviklet separat, eller oppstrøms er nå det samme som pakkens oppstrøms og du har ingen andre pakker som vil bruke den. I slike tilfeller vil du bli ledet til å bruke det inkluderte biblioteket selv om du vanligvis foretrekker å bruke systembiblioteker.
Denne siden inneholder informasjon om lokalitetsrelaterte problemer og problemstillinger. I de følgende avsnittene finner du en generisk oversikt over ting som kan dukke opp når du konfigurerer systemet ditt for ulike steder. Mange (men ikke alle) eksisterende lokalitetsrelaterte problemer kan klassifiseres og faller inn under en av overskriftene nedenfor. Alvorlighetsgradene nedenfor bruker følgende kriterier:
Kritisk: Programmet utfører ikke hovedfunksjonen sin. Løsningen ville være veldig omfattende, det er bedre å søke etter en erstatning.
Høy: En del av funksjonaliteten som programmet gir er ikke brukbar. Hvis den funksjonaliteten er nødvendig, er det bedre å søke etter en erstatning.
Lav: Programmet fungerer i alle typiske brukstilfeller, men mangler noe funksjonalitet som normalt leveres av dets ekvivalenter.
Hvis det er en kjent løsning for en bestemt pakke, vil den vises på pakkens side.
Alvorlighet: Kritisk
Noen programmer krever at brukeren spesifiserer tegnkodingen
for deres inndata eller utdata og presenterer bare et
begrenset utvalg av kodinger. Dette er tilfellet for
-X alternativet i Enscript-1.6.6,
-input-charset alternativet i
uoppdatert Cdrtools-3.02a09, og tegnsettene som
tilbys for visning i menyen til Links-2.30. Hvis den nødvendige
kodingen ikke er i listen blir programmet vanligvis helt
ubrukelig. Til ikke-interaktive programmer, kan det være
mulig å omgå dette ved å konvertere dokumentet til et støttet
inndatategnsett før innsending til programmet.
En løsning på denne typen problemer er å implementere den nødvendige støtten for den manglende kodingen som en oppdatering til det originale programmet eller å finne en erstatning.
Alvorlighet: Høy for ikke-tekst dokumenter, lav for tekst dokumenter
Noen programmer, nano-8.1 eller JOE-4.6 for eksempel, antar at dokumenter alltid er i kodingen antydet av gjeldende lokalitet. Mens denne antakelsen kan være gyldig for de brukeropprettede dokumentene, er det ikke trygt for eksterne. Når denne antagelsen mislykkes, blir ikke-ASCII tegn vist feil, og dokumentet kan bli uleselig.
Hvis det eksterne dokumentet er helt tekstbasert, kan det bli konvertert til gjeldende lokalitetskoding ved hjelp av iconv programmet.
For dokumenter som ikke er tekstbaserte er dette ikke mulig. Faktisk kan forutsetningen i programmet være fullstendig ugyldig for dokumenter der Microsoft Windows operativsystemet har satt de facto standarder. Et eksempel på dette problemet er ID3v1 koder i MP3-filer. For disse tilfellene er den eneste løsningen å finne et erstatningsprogram som ikke har problemet (f.eks. et som lar deg spesifisere den antatte dokumentkodingen).
Blant BLFS pakker gjelder dette problemet nano-8.1, JOE-4.6, og alle mediespillere unntatt Audacious-4.4.
Et annet problem i denne kategorien er når noen ikke kan lese dokumentene du har sendt dem fordi deres operativsystem er satt opp til å håndtere tegnkodinger annerledes. Dette kan skje ofte når den andre personen bruker Microsoft Windows, som kun gir en tegnkoding for et gitt land. For eksempel, dette forårsaker problemer med UTF-8 kodede TeX dokumenter opprettet i Linux. På Windows vil de fleste applikasjoner anta at disse dokumentene har blitt opprettet med standard Windows 8-bits koding.
I ekstreme tilfeller kan problemer med Windows kodingskompatibilitet kun løses ved å kjøre Windows programmer under Wine.
Alvorlighet: Kritisk
POSIX standarden krever at filnavnkodingen er kodingen
implisert av gjeldende LC_CTYPE lokalekategori. Denne
informasjon er godt skjult på siden som spesifiserer atferden
av Tar og Cpio programmer. Noen programmer tar
feil som standard (eller har rett og slett ikke nok
informasjon til å få det riktig). Resultatet er at de
oppretter filnavn som senere ikke vises riktig av
ls, eller de
nekter å godta filnavn som ls vises ordentlig. For
GLib-2.80.4 biblioteket, kan problemet
rettes ved å stille inn G_FILENAME_ENCODING miljøvariabel til den
spesielle "@locale" verdien. Glib2 baserte programmer som ikke
respekter den miljøvariabelen er buggy.
Zip-3.0 og UnZip-6.0 har dette problemet fordi de hardkoder den forventede filnavnkodingen. UnZip inneholder en hardkodet konverteringstabell mellom kodingene CP850 (DOS) og ISO-8859-1 (UNIX) og bruker denne tabellen når du trekker ut arkiver opprettet under DOS eller Microsoft Windows. Men, denne antagelsen fungerer bare for de i USA og ikke for alle som bruker en UTF-8 lokalitet. Ikke-ASCII tegn vil bli ødelagt i de utpakkede filnavn.
Den generelle regelen for å unngå denne klassen av problemer er å unngå å installere ødelagte programmer. Hvis dette er umulig, vil convmv kommandolinjeverktøy kunne brukes til å fikse filnavn opprettet av disse ødelagte programmene, eller med vilje mangle de eksisterende filnavnene for å møte de brutte forventningene til slike programmer.
I andre tilfeller er et lignende problem forårsaket av import av filnavn fra et system som bruker en annen lokalitet med et verktøy som er ikke lokalbevisst (f.eks., OpenSSH-9.8p1). For å unngå mangling av ikke-ASCII tegn når du overfører filer til et system med en annen lokalitet, kan en av følgende metoder brukes:
Overfør uansett, fiks skaden med convmv.
På avsendersiden oppretter du et tar arkiv med
--format=posix
bryteren overført til tar (dette vil være
standard i fremtidige versjoner av tar).
Send filene som vedlegg. E-postklienter spesifiserer koding av vedlagte filnavn.
Skriv filene til en flyttbar disk formatert med et FAT eller FAT32 filsystem.
Overfør filene med Samba.
Overfør filene via FTP ved å bruke en RFC2640-bevisst server (dette betyr for øyeblikket bare wu-ftpd, som har dårlig sikkerhetshistorikk) og klient (f.eks. lftp).
De siste fire metodene fungerer fordi filnavnene blir automatisk konvertert fra avsenderens lokalitet til UNICODE og lagret eller sendt i denne formen. De blir deretter transparent konvertert fra UNICODE til mottakerens lokalitetskoding.
Alvorlighet: Høy eller kritisk
Mange programmer ble skrevet i en eldre tid hvor multibyte lokaliteter ikke var vanlige. Slike programmer antar at C "char" data type, som er en byte, kan brukes til å lagre enkelttegn. Videre antar de at enhver sekvens av tegn er en gyldig streng og at hvert tegn opptar en enkelt tegncelle. Slike forutsetninger bryter fullstendig i UTF-8 lokaliteter. Den synlige manifestasjon er at programmet trunkerer strenger for tidlig (dvs. ved 80 byte i stedet for 80 tegn). Terminalbaserte programmer plasserer ikke markøren riktig på skjermen, reager ikke på "Tilbake" tasten med å slette ett tegn, og lar søppeltegn stå igjen rundt når du oppdaterer skjermen, som vanligvis gjør skjermen til et komplett rot.
Å fikse denne typen problemer er en kjedelig oppgave fra en programmerers synspunkt, som alle andre tilfeller av ombygging av nye konsepter inn i det gamle feilaktige designet. I dette tilfellet må man redesigne alle datastrukturer for å imøtekomme det faktum at en komplett karakter kan spenne over et variabelt antall "char"-er (eller bytte til wchar_t og konvertere etter behov). Også for hver kall til "strlen" og lignende funksjoner, finne ut om et antall byte, et antall tegn, eller bredden på strengen var egentlig ment. Noen ganger er det raskere å skrive et program med samme funksjonalitet fra bunnen av.
Blant BLFS pakker gjelder dette problemet xine-ui-0.99.14 og alle skallene.
Alvorlighet: Lav
LFS forventer at manuelle sider er på det språkspesifikke (vanligvis 8-bit) koding, som spesifisert på LFS Man DB side. Men, noen pakker installerer oversatte manualsider i UTF-8 koding (f.eks. Shadow, allerede behandlet), eller manualsider på språk som ikke er i tabellen. Ikke alle BLFS pakker har blitt revidert for samsvar med krav satt i LFS (de aller fleste er sjekket, og fikser plassert i boken for pakker som er kjent for å installere ikke-konform manualsider). Hvis du finner en manualside installert av noen av BLFS pakkene, dvs åpenbart i feil koding, vennligst fjern eller konverter den etter behov, og rapporter dette til BLFS teamet som en feil.
Du kan enkelt sjekke systemet for eventuelle ikke-konforme manualsider ved å kopiere følgende korte shell skript til et tilgjengelig sted,
#!/bin/sh
# Begin checkman.sh
# Usage: find /usr/share/man -type f | xargs checkman.sh
for a in "$@"
do
# echo "Checking $a..."
# Pure-ASCII manual page (possibly except comments) is OK
grep -v '.\\"' "$a" | iconv -f US-ASCII -t US-ASCII >/dev/null 2>&1 \
&& continue
# Non-UTF-8 manual page is OK
iconv -f UTF-8 -t UTF-8 "$a" >/dev/null 2>&1 || continue
# Found a UTF-8 manual page, bad.
echo "UTF-8 manual page: $a" >&2
done
# End checkman.sh
og deretter utstede følgende kommando (endre kommandoen
nedenfor hvis checkman.sh skriptet ikke
er i din PATH miljøvariabel):
find /usr/share/man -type f | xargs checkman.sh
Merk at hvis du har manualsider installert på et annet sted
enn /usr/share/man (f.eks.,
/usr/local/share/man), må du
endre kommandoen ovenfor for å inkludere denne ekstra
plasseringen.
Pakkene som er installert i denne boken er bare toppen av isfjellet. Vi håper at erfaringen du fikk med LFS boken og BLFS boken vil gi deg bakgrunnen som trengs for å kompilere, installere og konfigurere pakker som ikke er inkludert i denne boken.
Når du vil installere en pakke til et annet sted enn
/, eller /usr, du installerer utenfor standard
miljøinnstillinger på de fleste maskiner. Følgende eksempler
bør hjelpe deg med å finne ut hvordan du kan rette opp denne
situasjonen. Eksemplene dekker hele spekteret av innstillinger
som kan trenge oppdatering, men alle er ikke nødvendige i alle
situasjoner.
Utvid PATH til å inkludere
$PREFIX/bin.
Utvid PATH for root til å inkludere $PREFIX/sbin.
Legg til $PREFIX/lib til
/etc/ld.so.conf eller utvid
LD_LIBRARY_PATH til å
inkludere det. Før du bruker sistnevnte alternativ, sjekk
ut http://xahlee.info/UnixResource_dir/_/ldpath.html.
Hvis du endrer /etc/ld.so.conf, husk å oppdatere
/etc/ld.so.cache ved å
utføre ldconfig som
root bruker.
Legg til $PREFIX/man til
/etc/man_db.conf.
Legg til $PREFIX/info til
INFOPATH.
Legg til $PREFIX/lib/pkgconfig til PKG_CONFIG_PATH. Noen pakker installerer
nå .pc filer i $PREFIX/share/pkgconfig, så du må
kanskje inkludere denne mappen også.
Legg til $PREFIX/include
til CPPFLAGS ved kompilering
av pakker som avhenger av pakken du installerte.
Legg til $PREFIX/lib til
LDFLAGS når du kompilerer
pakker som er avhengige av et bibliotek installert av
pakken.
Hvis du er på søker etter en pakke som ikke er i boken, følgende er forskjellige måter du kan søke etter ønsket pakke på.
Hvis du vet navnet på pakken, søk på SourceForge etter
den på https://sourceforge.net/directory/,
og søk GitHub for den på https://github.com/. Søk også
Google på https://google.com/. Noen
ganger et søk etter rpm på
https://rpmfind.net/ eller
deb på
https://www.debian.org/distrib/packages#search_packages
kan også føre til en lenke til pakken.
Hvis du kjenner navnet på den kjørbare filen, men ikke pakken som den kjørbare filen tilhører, prøv først et Google søk med navnet på den kjørbare. Hvis resultatene er overveldende, prøv å søke etter en gitt kjørbar i Debian depotet på https://www.debian.org/distrib/packages#search_contents.
Noen generelle tips om håndtering av nye pakker:
Mange av de nyere pakkene følger ./configure && make && make install prosessen. Hjelp til alternativene som godtas av configure kan fås via kommandoen ./configure --help.
De fleste pakkene inneholder dokumentasjon om kompilering og installering av pakken. Noen av dokumentene er utmerkede, andre ikke så utmerket. Sjekk ut hjemmesiden til pakken for ytterligere og oppdaterte tips for kompilering og konfigurering av pakken.
Hvis du har problemer med å kompilere pakken, prøv å søke i LFS arkivet på https://www.linuxfromscratch.org/search.html for feilen eller hvis det mislykkes, prøv å søke på Google. Ofte vil en distribusjon allerede ha løst problemet (mange av dem bruker utviklingsversjoner av pakker, så de ser endringene raskere enn de av oss som vanligvis bruker stabile utgitte versjoner). Men vær forsiktig - alle byggere har en tendens til å bære oppdateringer som ikke er nødvendig lenger, og å ha rettelser som bare er nødvendige på grunn av deres bestemte valg i hvordan de bygger en pakke. Du må kanskje søke dypt for å finne en løsning for pakkeversjonen du prøver å bruke, eller til og med for å finne pakken (navnene er noen ganger ikke det du kan forvente, f.eks. ghostscript har ofte et prefiks eller et suffiks i sitt navn), men følgende merknader kan hjelpe, spesielt for de, som redaktørene, prøver å bygge de nyeste versjonene og møter problemer:
Arch https://www.archlinux.org/packages/
- Tast inn pakkenavnet i 'Søkeord' boksen, velg
pakkenavnet, velg 'Kildefiler' feltet, og velg
deretter PKGBUILD
oppføring for å se hvordan de bygger denne pakken.
Debian http://ftp.debian.org/debian/pool
(bruk ditt lands versjon hvis det er en) - kilden
vil være i .tar.gz tarballen (enten den
opprinnelige oppstrøms .orig kilden, eller dfsg som inneholder de delene som
er i samsvar med Debians retningslinjer for gratis
programvare) akkompagnert av versjonert .diff.gz
eller .tar.gz tillegg. Disse tilleggene viser ofte
hvordan pakken er bygget, og kan inneholde
oppdateringer. I .diff.gz-versjonene opprettes alle
oppdateringsfiler i debian/patches.
Fedora pakkekilden blir omorganisert fra tid til annen. For øyeblikket er pakkekilden for rpms på https://src.fedoraproject.org/projects/rpms/%2A og derfra kan du prøve å legge inn et pakkenavn i søkeboksen. Hvis pakken er funnet kan du se på filene (spesifikasjonsfil for å kontrollere bygget, diverse oppdateringer) eller commits. Hvis det mislykkes, kan du laste ned en srpm (kilde rpm) og bruke rpm2cpio (se tipset nederst på siden). For rpms gå til https://dl.fedoraproject.org/pub/fedora/linux/ og velg deretter hvilken repo du ønsker å se på - development/rawhide er den siste utvikling, eller velg utgivelser for det som ble sendt i en utgivelse, updates for oppdateringer til en utgivelse, eller updates/testing for de siste oppdateringer som kan fungere eller ha problemer.
Gentoo - Bruk først en søkemotor for å finne et
ebuild som ser ut som det løser problemet, eller
søk på https://packages.gentoo.org/
- bruk søkefeltet. Legg merke til hvor pakken bor i
porterings hierarkiet, f.eks. app-something/. Generelt kan du
behandle ebuild som en slags pseudo-kode / skall
kombinasjon med noen funksjoner du kan som du kan
gjøre en gjetning på, som f.eks dodoc. Hvis
løsningen bare er en sed, Prøv det.
Imidlertid vil reparasjonen i de fleste tilfeller
bruke en oppdatering. For å finne oppdateringen,
bruk et gentoo-portage speil: To lenker til speil i
U.S.A. som vanligvis ser ut til å være oppdatert er
https://mirror.rackspace.com/gentoo-portage/
og https://mirror.steadfast.net/gentoo-portage/.
Naviger ned treet til pakken, deretter til
files/ mappen for å
se etter oppdateringen. Noen ganger har ikke et
porteringsspeil blitt oppdatert, spesielt for en
nylig ny oppdatering. I noen få tilfeller, gentoo
batch oppdaterer inn i en tarball og ebuild vil ha
en lenke i skjemaet
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz
her, se etter PATCH_DEV og PATCH_VER i bygget og
formater hele URL i nettleseren din eller for wget.
Husk '~' før utviklerens ID og merk at å prøve å
søke på de tidligere nivåene av URLen i en
nettleseren kan sende deg til www.gentoo.org eller
returnere 403 (forbudt).
openSUSE gi en rullende utgivelse, noen pakkeversjoner er i https://download.opensuse.org/source/tumbleweed/repo/oss/src/ men andre er i ../update/openSUSE-current/src - kilden ser bare ut til å være tilgjengelig i kilde rpms.
Slackware - den offisielle pakkenettleseren er for
øyeblikket ødelagt. Stedet https://slackbuilds.org/
har nåværende og tidligere versjoner i deres
uoffisielle depot med lenker til hjemmesider,
nedlastinger, og noen individuelle filer, spesielt
.SlackBuild filer.
Ubuntu http://ftp.ubuntu.com/ubuntu/pool/ - se Debian merknader ovenfor.
Hvis alt annet mislykkes, prøv blfs-support e-postlisten.
Hvis du har funnet en pakke som kun er tilgjengelig i
.deb eller .rpm format, det er to små skript,
rpm2targz og
deb2targz som
er tilgjengelig på
https://anduin.linuxfromscratch.org/BLFS/extras/deb2targz.tar.bz2
og
https://anduin.linuxfromscratch.org/BLFS/extras/rpm2targz.tar.bz2
å konvertere arkivene til en enkel tar.gz format.
Du kan også finne et rpm2cpio skript nyttig. Perl versjonen i linux kjernearkiver på https://lore.kernel.org/all/20021016121842.GA2292@ncsu.edu/2-rpm2cpio fungerer for de fleste kilderpm. rpm2targz skriptet vil bruke et rpm2cpio skript eller binær hvis en er på vei. Merk at rpm2cpio vil pakke ut en kilde rpm i gjeldende mappe, og gir en tarball, en spesifikasjonsfil og kanskje oppdateringer eller andre filer.
Intensjonen til LFS er å tilby et grunnleggende system som du kan bygge på. Det er flere ting ved å rydde opp i systemet som mange lurer på når de har gjort grunninstallasjonen. Vi håper å dekke disse problemene i dette kapittelet.
De fleste som kommer fra ikke-Unix lignende bakgrunner til Linux
synes konseptet med konfigurasjonsfiler med kun tekst er litt
merkelig. I Linux, nesten all konfigurasjon gjøres via
manipulering av tekstfiler. Flertallet av disse filene finnes i
/etc hierarkiet. Det er ofte
grafiske konfigurasjonsprogrammer tilgjengelig for forskjellige
undersystemer, men de fleste er ganske enkelt pene grensesnitt
for prosessen med å redigere en tekstfil. Fordelen med kun
tekstkonfigurasjon er at du kan redigere parametere ved hjelp av
din favoritt tekstredigerer, enten det er vim, emacs, eller en annen
tekstredigerer.
Den første oppgaven er å lage en oppstartsenhet for gjenoppretting Opprette en Tilpasset Oppstartsenhet fordi det er det mest kritiske behovet. Maskinvareproblemer som er relevante for fastvare og andre enheter tas opp neste gang. Systemet er da konfigurert for å lett legge til nye brukere, fordi dette kan påvirke valgene du gjør i de to påfølgende emner—Oppstartsfilene til Bash Skallet og Vimrc Filer.
Det er ett tema igjen: Tilpasse Påloggingen med /etc/issue. Den har ikke mye interaksjon med de andre emnene i dette kapittelet.
Denne delen handler egentlig om å lage en rednings enhet. Siden navnet rednings innebærer, vertens system har et problem, ofte tapt partisjonsinformasjon eller ødelagte fil systemer, som hindrer den i å starte opp og/eller fungere normalt. Av denne grunnen, du må ikke avhenge av at ressurser fra verten blir "reddet". Å anta at en gitt partisjon eller harddisk vil være tilgjengelig er en risikabel antagelse.
I et moderne system er det mange enheter som kan brukes som en redningsenhet: diskett, cdrom, usb stasjon eller til og med et nettverkskort. Hvilken du bruker avhenger av maskinvaren din og BIOS. I fortiden, en redningsenhet ble antatt å være en diskett. I dag, mange systemer har ikke engang en diskettstasjon.
Å bygge en komplett redningsenhet er en utfordrende oppgave. På mange måter, tilsvarer det å bygge et helt LFS-system. I tillegg vil det være en repetisjon av informasjon som allerede er tilgjengelig. Av disse grunnene er ikke prosedyrene for et redningsenhetsbilde presentert her.
Programvaren til dagens systemer har vokst seg stor. Linux 2.6 støtter ikke lenger oppstart direkte fra en diskett. Til tross for dette er det løsninger tilgjengelig ved bruk av eldre versjoner av Linux. En av de beste er Toms Root/Boot Disk tilgjengelig på http://www.toms.net/rb/. Dette vil gi et minimalt Linux system på en enkelt diskett og gir muligheten til å tilpasse innholdet på disken om nødvendig.
Det er flere kilder som kan brukes til en rednings CD-ROM. Omtrent enhver kommersiell distribusjons installasjons CD-ROM eller DVDer vil fungere. Disse inkluderer RedHat, Ubuntu og SuSE. Et veldig populært alternativ er Knoppix.
LFS fellesskapet har også utviklet sin egen LiveCD tilgjengelig på https://www.linuxfromscratch.org/livecd/. Denne LiveCDen er ikke lenger i stand til å bygge et helt LFS/BLFS-system, men er fortsatt en god rednings CD-ROM. Hvis du laster ned ISO bildet, bruk xorriso å kopiere bildet til en CD-ROM.
Instruksjonene for bruk av GRUB2 til å lage en tilpasset rednings CD-ROM er også tilgjengelig i LFS Kapittel 10.
En USB enhet, noen ganger kalt en Thumb Drive, gjenkjennes av Linux som en SCSI enhet. Bruk av en av disse enhetene som en redningsenhet har fordelen at den vanligvis er stor nok til å holde mer enn et minimalt oppstartsbilde. Du kan også lagre kritiske data på enheten samt å bruke den til å diagnostisere og gjenopprette et skadet system. Oppstart av en slik stasjonen krever BIOS støtte, men å bygge systemet består av å formatere stasjonen, legge til GRUB samt Linux kjernen og støttefiler.
Et LFS system kan brukes uten et grafisk skrivebord, og med mindre eller til du installerer et grafiske miljø må du jobbe i konsollen. De fleste, om ikke alle, PC-er starter opp med en 8x16 font - uansett hva den faktiske skjermstørrelsen er. Det er et par ting du kan gjøre for å endre skjermen på konsollen. De fleste av dem involverer endring av fonten, men den første endrer kommandolinjen brukt av grub.
Moderne skjermer har ofte mye flere piksler enn skjermene som ble brukt før. Hvis skjermen din er 1600 piksler bred, vil en font på 8x16 gi deg 200 kolonner med tekst - med mindre skjermen din er enorm, vil teksten være liten. En av måtene å omgå dette på er å fortelle grub å bruke en mindre størrelse, for eksempel 1024x768 eller 800x600 eller til og med 640x480. Selv om skjermen ikke har et sideforhold på 4:3, bør dette fungere.
For å prøve dette kan du starte på nytt og redigere grubs
kommandolinje for å sette inn en 'video='-parameter mellom
'root=/dev/sdXn' og 'ro', for eksempel root=/dev/sda2 video=1024x768 ro basert på
eksempelet i LFS avsnitt 10.4.4: ../../../../lfs/view/12.2-systemd/chapter10/grub.html.
Hvis du bestemmer deg for at du ønsker å gjøre dette, kan du
(som root bruker) redigere
/boot/grub/grub.cfg.
I LFS kbd pakken er brukt.
Fontene den gir er PC Screen Fonts, vanligvis kalt PSF, og de
ble installert i /usr/share/consolefonts mappen. Hvor disse
inkluderer en unicode tilordningstabell, endres filsuffikset
ofte til .psfu selv om pakker
som f.eks terminus-font (se
nedenfor) ikke legger til "u". Disse skriftene er vanligvis
komprimert med gzip for å spare plass, men det er ikke
avgjørende.
De første PC-tekstskjermene hadde 8 farger, eller 16 farger hvis lyse versjoner av de originale 8 fargene ble brukt. En PSF-font kan inkludere opp til 256 tegn (teknisk, glyfer) mens det tillater 16 farger eller oppover til 512 tegn (i så fall vil de lyse fargene ikke være tilgjengelig). Disse konsollfontene kan tydeligvis ikke brukes til å vise CJK tekst - som vil trenge tusenvis av tilgjengelige glyfer.
Noen fonter i kbd kan dekke mer enn 512 kodepunkter ('karakterer'), med varierende grad av troskap: unicode inneholder flere mellomromskodepunkter som alle kan tilordnes til et mellomrom, varianter av bindestreker kan kartlegges til et minustegn, smarte anførselstegn kan kartlegges til de vanlige ASCII-sitatene i stedet for til det som brukes for "kodepunkt ikke tilstede eller ugyldig", og de kyrilliske eller greske bokstavene som ser ut som latinske bokstaver kan kartlegges på dem, så 'A' kan også gjøre jobben for kyrillisk A og gresk alfa, og 'P' kan også gjøre jobben for kyrillisk ER og gresk RHO. Dessverre, hvor en font er opprettet fra en BDF-fil (metoden i terminus og Debian's console-setup ) slik kartlegging av ekstra kodepunkter på en eksisterende glyf er ikke alltid gjort, selv om terminus ter-vXXn-fontene gjør dette bra.
Det er over 120 kombinasjoner av font og størrelse i
kbd: ofte er en font gitt på
flere tegnstørrelser, og noen ganger dekker varianter
forskjellige undergrupper av unicode. De fleste er 8 piksler
brede, i høyder fra 8 til 16 piksler, men det er noen få som
er 9 piksler brede, noen andre som er 12x22 og til og med en
(latarcyrheb-sun32.psfu) som er
oppskalert til 16x32. Å bruke en større skrift er en annen
måte å gjøre tekst på en stor skjerm lettere å lese.
Du kan teste fonter som en vanlig bruker. Hvis du har en font som ikke har vært installert, kan du laste den med :
setfont /path/to/yourfont.ext
For fontene som allerede er installert trenger du bare
navnet, så å bruke gr737a-9x16.psfu.gz som et eksempel:
setfont gr737a-9x16
For å se glyfene i fonten, bruk:
showconsolefont
Hvis fonten ser ut som om den kan være nyttig, kan du fortsette å teste den mer grundig.
Når du finner en font du ønsker å bruke, som root bruker) rediger /etc/vconsole.conf som
beskrevet i LFS seksjon 9.6 ../../../../lfs/view/12.2-systemd/chapter09/console.html..
For fonter som ikke følger med kbd pakken må du eventuelt komprimere
den/dem med gzip og installer den/dem
som root bruker.
Selv om noen konsollfonter er laget av BDF-filer, som er et tekst format med hex-verdier for pikslene i hver rad av tegnet, det er mer moderne verktøy tilgjengelig for redigering av psf-fonter. psftools pakken lar deg dumpe en font til en tekstrepresentasjon med en bindestrek for en piksel som er av (svart) og en hash for en piksel som er på (hvit). Du kan deretter redigere tekstfilen for å legge til flere tegn, eller omforme dem, eller kartlegg ekstra kodepunkter på dem, og lage deretter en ny psf-font med endringene dine.
Terminus Font
pakken gir bitmap-fonter med fast bredde designet for lange
(8 timer og mer pr dag) arbeid med datamaskiner. Under
'Tegnvarianter' på den siden er en liste over oppdateringer
(i alt/ mappen). Hvis du bruker
en grafisk nettleser for å se på den siden, kan du se hva
patchene gjør, f.eks. 'll2' gjør 'l' mer synlig forskjell fra
'i' og '1'.
Som standard terminus-fonts vil prøve å lage flere typer fonter, og den vil mislykkes hvis bdftopcf fra Xorg Applikasjoner ikke er installert. Konfigurasjonsskriptet er bare veldig nyttig hvis du fortsetter å installere alle fontene (konsoll og X11 bitmap) til riktige mapper, som i en distro. Å bygge bare PSF-fontene og deres avhengigheter, kjør:
make psf
Dette vil lage mer enn 240 ter-*.psf fonter. 'b'-suffikset indikerer lys, 'n' indikerer normal. Du kan deretter teste dem for å se om de passer dine krav. Med mindre du lager en distro, er det lite poeng i å installere dem alle.
Som et eksempel, for å installere den siste av disse fontene,
kan du gzippe den og deretter som root bruker:
install -v -m644 ter-v32n.psf.gz /usr/share/consolefonts
På noen nyere PC-er kan det være nødvendig, eller ønskelig, å
laste fastvare for å få dem til å fungere på sitt beste. Det er
en mappe, /lib/firmware, hvor
kjernen eller kjernedrivere ser etter fastvarebilder.
For øyeblikket kan det meste av fastvaren finnes på et
git depoet som
kan vises i nettleseren med URLen
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain.
For enkelhets skyld har LFS prosjektet laget et speil, som
oppdateres daglig, hvor disse fastvarefilene kan nås via
wget eller en
nettleser på https://anduin.linuxfromscratch.org/BLFS/linux-firmware/.
For å få fastvaren, pek en nettleser til en av de ovennevnte
depoer og last ned varen(e) du trenger. Hvis du vil ha alle
disse fastvarefilene (for eksempel distribuerer du systemet på
flere maskinvaresystemer), enten installer git-2.46.0 og klon
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git,
eller åpne denne URL-en i en nettleser og last ned det siste
øyeblikksbildet som er oppført i Tag tabellen.
For noen annen fastvare, spesielt for Intel mikrokode og visse wifi enheter, den nødvendige fastvaren er ikke tilgjengelig i depotet ovenfor. Noe av dette vil bli behandlet nedenfor, men et søk på Internett etter nødvendig fastvare er noen ganger nødvendig.
Fastvarefiler blir konvensjonelt referert til som blobs fordi du ikke kan bestemme hva de vil gjøre. Merk at fastvaren er distribuert under ulike lisenser som ikke tillater demontering eller revers-engineering.
Fastvare for PC-er faller inn i fire kategorier:
Oppdateringer til CPU for å omgå errata, vanligvis referert til som mikrokode.
Firmware for videokontrollere. På x86-maskiner kreves dette for ATI-enheter (Radeon- og AMDGPU-brikker) og kan være nyttige for Intel (Skylake og senere) og Nvidia (Kepler og senere) GPUer.
ATI Radeon- og AMDGPU-enheter krever alle fastvare for å kunne bruke KMS (kjernemodusinnstilling - det foretrukne alternativet) så vel som for Xorg. Til gamle radeon-brikker (før R600), er fastvaren fortsatt i kjernekilden.
Intel integrerte GPUer fra Skylake og utover kan bruke fastvare for GuC (grafikkmikrokontrolleren), og også for HuC (HEVC/H265 mikrokontroller som avlastes til GPUen) og DMC (skjerm Mikrokontroller) for å gi ytterligere laveffekttilstander. GuC og HuC har hatt en kontrollert historikk i kjernen og oppdatert firmware kan være deaktivert som standard, avhengig av kjerneversjonen din. Lengre detaljer kan finnes på 01.org og Arch linux.
Nvidia GPUer fra Kepler og utover krever signert fastvare, ellers er nouveau-driveren ikke i stand til å gi maskinvareakselerasjon. Nvidia har nå utgitt firmware opp til Ampere (GeForce30-serien) til linux-firmware. Merk at raskere klokker enn standard ikke er aktivert av den utgitte fastvaren.
Fastvareoppdateringer for kablede nettverksporter. De fleste av dem fungerer til og med uten oppdateringene, men de vil nok fungere bedre med den oppdaterte fastvaren. For noen moderne bærbare datamaskiner, fastvare for begge kablet ethernet (f.eks. rtl_nic) og også for bluetooth-enheter (f.eks. qca) er påkrevd før det kablede nettverket kan brukes.
Fastvare for andre enheter, for eksempel trådløse NICs. Disse enhetene er ikke nødvendug for at PC-en skal starte opp, men trenger fastvaren før disse enhetene kan bli brukt.
Selv om det ikke er nødvendig for å laste inn en fastvareblob, kan følgende verktøy være nyttige for å bestemme, skaffe eller forberede den nødvendige fastvaren for å laste den inn i systemet: cpio-2.15, git-2.46.0, pciutils-3.13.0, og Wget-1.24.5
Generelt kan mikrokode lastes av BIOS eller UEFI, og det kan bli oppdatert ved å oppgradere til en nyere versjon av disse. På linux kan du også laste inn mikrokoden fra kjernen hvis du bruker en AMD-familie 10h eller senere prosessor (først introdusert sent i 2007), eller en Intel-prosessor fra 1998 og senere (Pentium4, Core, etc), hvis oppdatert mikrokode har vært utgitt. Disse oppdateringene varer bare til maskinen slås av, så de må brukes på hver oppstart.
Intel tilbyr oppdateringer av mikrokoden deres for Skylake og senere prosessorer etter som nye sårbarheter dukker opp, og har tidligere gitt oppdateringer for prosessorer fra SandyBridge og utover, selv om de ikke støttes for nye rettelser lenger. Nye versjoner av AMD fastvare er sjeldne og gjelder vanligvis bare for noen få modeller hovedkortprodusenter får AGESA (AMD Generic Encapsulated Software Architecture) oppdateringer for å endre BIOS verdier, f.eks. for å støtte flere minnevarianter, nye sårbarhetsrettinger eller nyere CPUer.
Det var to måter å laste mikrokoden på, beskrevet som "tidlig" og 'sent'. Tidlig lasting skjer før brukerområdet er startet, sen lasting skjer etter at brukerområdet har startet. Men sen lasting er kjent for å være problematisk og støttes ikke lenger (se kjerne-commit x86/microcode: Taint and warn on late loading). Faktisk tidlig lasting er nødvendig for å omgå en bestemt feil i tidlig Intel Haswell-prosessorer som hadde TSX aktivert. (Se Intel Disables TSX Instructions: Erratum Found in Haswell, Haswell-E/EP, Broadwell-Y.) Uten denne oppdateringen kan glibc gjøre feil ting i uvanlig situasjoner.
I tidligere versjoner av denne boken, sen lasting av mikrokode for å se om det ble brukt ble anbefalt, etterfulgt av bruk av en initrd for å tvinge tidlig lasting. Men nå som innholdet i Intel mikrokode tarballen er dokumentert, og AMD-mikrokode kan leses av et Python skript til å bestemme hvilke maskiner det dekker, er det ingen reell grunn til å bruke sen lasting.
Det kan fortsatt være mulig å manuelt tvinge sen innlasting av mikrokode. Men det kan forårsake kjernefeil, og du bør ta risikoen selv. Du må rekonfigurere kjernen for sen lasting, men tidlig lasting støttes alltid av Linux kjerneversjon 6.6 eller senere på et x86 (uansett 32-bit eller 64-bit) system. Instruksjonene her vil vise deg hvordan du oppretter en initrd for tidlig lasting. Det er også mulig å bygge inn den samme mikrokode bin-filen i kjernen, som tillater tidlig lasting, men krever at kjernen blir kompilert på nytt for å oppdatere mikrokoden.
For å bekrefte hvilken(e) prosessor(er) du har (hvis flere enn én, vil de være identisk) se i /proc/cpuinfo. Bestem desimalverdiene til cpuen familie, modell og stepping ved å kjøre følgende kommando (det vil også rapportere gjeldende mikrokodeversjon):
head -n7 /proc/cpuinfo
Konverter cpu familien, modellen og stepping til par med heksadesimal sifre, og husk verdien av “mikrokode” feltet. Du kan nå sjekke om det er en tilgjengelig mikrokode.
Hvis du oppretter en initrd for å oppdatere fastvare for forskjellige maskiner, som en distro ville gjort, gå ned til 'Tidlig lasting av mikrokode' og cat alle Intel blobs til GenuineIntel.bin eller cat alle AMD blobs til AuthenticAMD.bin. Dette skaper en større initrd - for alle Intel maskiner i 20200609 oppdateringen var størrelsen 3,0 MB sammenlignet med typisk 24 KB for en maskin.
Det første trinnet er å få den nyeste versjonen av Intel
mikrokode. Dette må gjøres ved å navigere til
https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/
og laster ned den nyeste filen der. Når dette skrives den
mest sikre versjonen av mikrokoden er microcode-20240813.
Pakk ut denne filen på vanlig måte, mikrokoden er i
intel-ucode mappen, som
inneholder ulike blobs med navn i formen XX-YY-ZZ. Det er
også forskjellige andre filer, og en utgivelsesnotat.
Tidligere ga ikke Intel noen detaljer om hvilke blobs som
hadde endret versjoner, men nå beskriver
utgivelsesmerknaden dette. Du kan sammenligne
mikrokodeversjonen i /proc/cpuinfo med versjonen for din CPU
modell i utgivelsesmerknaden for å vite om det er en
oppdatering.
Den nylige fastvaren for eldre prosessorer er tilgjengelig for å håndtere sårbarheter som nå er offentliggjort, og for noen av disse for eksempel Microarchitectural Data Sampling (MDS) vil du kanskje øke beskyttelsen ved å deaktivere hyperthreading, eller alternativt å deaktivere kjernens standardredusering på grunn av dens innvirkning på kompileringstider. Vennligst les dokumentasjonen på https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/index.html.
For en Tigerlake bærbar (beskrevet som Intel(R) Core(TM)
i5-11300H CPU) de relevante verdiene er cpu familie 6,
modell 140, stepping 1 så i dette tilfellet er nødvendig
identifikasjon 06-8c-01. Utgivelsesnotat sier at den nyeste
mikrokoden for den er versjonert 0xb8. Hvis verdien av
“mikrokode” feltet i /proc/cpuinfo er 0xb8 eller høyere,
indikerer det at mikrokodeoppdateringen allerede er tatt i
bruk av BIOS. Ellers, fortsett til the
section called “Tidlig lasting av mikrokode”:
Begynn med å laste ned en beholder med fastvare for CPU familien din fra https://anduin.linuxfromscratch.org/BLFS/linux-firmware/amd-ucode/. Familien er alltid spesifisert i hex. Familier 10-14 (16-20) er i microcode_amd.bin. Familier 15t, 16t, 17t (Zen, Zen+, Zen2) og 19h (Zen3) har sine egne beholdere, men sannsynligvis er det få maskiner som får oppdatert mikrokode. I stedet gir AMD en oppdatert AGESA til hovedkortprodusenter, som kan gi en oppdatert BIOS ved å bruke dette. Det er et Python3 skript på https://github.com/AMDESE/amd_ucode_info/blob/master/amd_ucode_info.py. Last ned det skriptet og kjør det mot bin filen for å sjekke hvilke prosessorer som har oppdateringer.
For den svært gamle Athlon(tm) II X2 i disse eksemplene var verdiene cpu familie 16, modell 5, trinn 3 gir en identifikasjon av Familie=0x10 Modell=0x05 Stepping=0x03. En linje av amd_ucode_info.py skriptutdataen beskriver mikrokodeversjon for det:
Family=0x10 Model=0x05 Stepping=0x03: Patch=0x010000c8 Length=960 bytes
Hvis verdien av “mikrokode” feltet i /proc/cpuinfo er 0x10000c8 eller høyere,
indikerer det at BIOS allerede har tatt i bruk
mikrokodeoppdateringen. Ellers, fortsett deretter til
the section called “Tidlig
lasting av mikrokode”:
Hvis du har etablert at en oppdatert mikrokode er tilgjengelig for systemet ditt, er det på tide å forberede det for tidlig lasting. Dette krever en ekstra pakke, cpio-2.15 og opprettelsen av en initrd som må legges til grub.cfg.
Det spiller ingen rolle hvor du forbereder initrd, og når det virker kan du bruke samme initrd til senere LFS systemer eller nyere kjerner på samme maskin, i det minste inntil en nyere mikrokode er utgitt. Bruk følgende kommandoer:
mkdir -p initrd/kernel/x86/microcode cd initrd
For en AMD maskin, bruk følgende kommando (erstatt <MYCONTAINER> med navnet på beholderen for CPU familien din):
cp -v ../<MYCONTAINER> kernel/x86/microcode/AuthenticAMD.bin
Eller for en Intel maskin, kopier den aktuelle bloben ved å bruke denne kommandoen:
cp -v ../intel-ucode/<XX-YY-ZZ> kernel/x86/microcode/GenuineIntel.bin
Forbered nå initrd:
find . | cpio -o -H newc > /boot/microcode.img
Du må nå legge til en ny oppføring i /boot/grub/grub.cfg og her bør du legge til en ny linje etter linux linjen i strofen. Hvis /boot er et separat monteringspunkt:
initrd /microcode.img
eller dette hvis det ikke er det:
initrd /boot/microcode.img
Hvis du allerede starter opp med en initrd (se the section
called “Om initramfs”), bør du bør kjøre mkinitramfs igjen etter å
ha puttet den riktige bloben eller beholderen i
/lib/firmware. Mer presist,
putt en intel blob i /lib/firmware/intel-ucode mappen eller en
AMD beholder i /lib/firmware/amd-ucode mappen før du
kjører mkinitramfs. Alternativt
kan du ha begge initrd på samme linje, som f.eks
initrd /microcode.img
/other-initrd.img (tilpass som ovenfor hvis
/boot ikke er et separat monteringspunkt).
Du kan nå starte på nytt med den ekstra initrd, og deretter bruke følgende kommando for å sjekke at den tidlige lastingen fungerte:
dmesg | grep -e 'microcode' -e 'Linux version' -e 'Command line'
Hvis du oppdaterte for å adressere sårbarheter, kan du se på utdataen til lscpu kommandoen for å se hva som er rapportert nå.
Stedene og tidspunktene hvor tidlig lasting skjer er svært forskjellige i AMD- og Intel-maskiner. Først et eksempel på en Intel (Tigerlake bærbar) med tidlig lasting:
[ 0.000000] Linux version 6.10.4 (xry111@stargazer) (gcc (GCC) 14.2.0, GNU ld (GNU Binutils) 2.43) #4 SMP PREEMPT_DYNAMIC Tue Aug 15 18:04:11 CST 2024
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-6.10.0 root=PARTUUID=<CLASSIFIED> ro
[ 0.585605] microcode: Current revision: 0x000000b8
[ 0.585611] microcode: Updated early from: 0x00000086
Et historisk AMD eksempel:
[ 0.000000] Linux version 4.15.3 (ken@testserver) (gcc version 7.3.0 (GCC))
#2 SMP Sun Feb 18 02:32:03 GMT 2018
[ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-4.15.3-sda5 root=/dev/sda5 ro
[ 0.307619] microcode: microcode updated early to new patch_level=0x010000c8
[ 0.307678] microcode: CPU0: patch_level=0x010000c8
[ 0.307723] microcode: CPU1: patch_level=0x010000c8
[ 0.307795] microcode: Microcode Update Driver: v2.2.
Disse instruksjonene gjelder IKKE gamle radeoner før R600
familien. For dem er fastvaren i kjernen sin /lib/firmware/ mappen. Det gjør det
heller ikke hvis du har tenkt å unngå et grafisk oppsett
som Xorg og er komfortabel med å bruke standard
80x25-skjerm i stedet for en rammebuffer.
Tidlige radeon enheter trengte bare en enkelt 2K blob med fastvare. Nylige enheter trenger flere forskjellige blobs, og noen av dem er mye større. Den totale størrelsen på radeon fastvarekatalogen er over 500K — på et stort moderne system kan du nok spare plassen, men det er fortsatt overflødig å installere alle ubrukte filer hver gang du bygger et system.
En bedre tilnærming er å installere pciutils-3.13.0 og
så bruke lspci for å identifisere
hvilken VGA kontroller som er installert.
Med den informasjonen, sjekk RadeonFeature siden til Xorg wikien Decoder ring for engineering vs marketing names for å identifisere familien (det kan hende du må vite dette for Xorg driveren i BLFS — Southern Islands og Sea Islands bruker radeonsi driveren) og den spesifikke modellen.
Nå som du vet hvilken kontroller du bruker, se Radeon siden til Gentoo wikien som har en tabellliste over de nødvendige fastvare blobene for de forskjellige brikkesettene. Merk at Southern Islands og Sea Islands chips bruker forskjellig fastvare for kernel 3.17 og senere sammenlignet med tidligere kjerner. Identifiser og last ned de nødvendige blobene og installer dem:
mkdir -pv /lib/firmware/radeon cp -v <YOUR_BLOBS> /lib/firmware/radeon
Det anbefales å bygge kjerne amdgpu driveren som en modul fordi fastvarefilene må være tilgjengelige når den lastes. Hvis du bygger det som en del av kjernebildet av en eller annen grunn, må du enten inkludere fastvarefilene i initramfs (les the section called “Om initramfs” for detaljer), eller inkludere dem i selve kjernebildet (les the section called “Inkluder fastvare blobber i kjernebildet” for detaljer).
Alle videokontrollere som bruker amdgpu kjernedriveren krever fastvare, om du skal bruke xorg amdgpu driveren, xserverens modusinnstillings driver, eller bare kjernemodusinnstilling for å få en konsollrammebuffer større enn 80 x 25.
Installer pciutils-3.13.0 og bruk det for å sjekke modellnavnet (se etter 'VGA-kompatibel kontroller:'). Hvis du har en APU (akselerert Processing Unit, dvs. CPU og video på samme brikke) som sannsynligvis vil fortelle deg navnet. Hvis du har et eget amdgpu skjermkort trenger du å søke for å finne ut hvilket navn den bruker (f.eks. et kort beskrevet som Advanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 550 640SP / RX 560/560X] trenger Polaris11 fastvare. Det er en tabell med "Familie, Chipset navn, produktnavn og fastvare" på slutten av kjernedelene i AMDGPU siden til Gentoo wikien.
Når du har identifisert fastvarenavnet, installer alle relevante filer for det. For eksempel har Baffin kortet nevnt ovenfor 21 forskjellige polaris11*-filer, APUer som renoir og picasso har minst 12 filer og kan få mer i fremtidige oppdateringer (f.eks. har raven APU nå en 13. fil, raven_ta.bin).
mkdir -pv /lib/firmware/amdgpu cp -v <YOUR_BLOBS> /lib/firmware/amdgpu
Hvis diskplass ikke er et problem, kan du installere all gjeldende amdgpu fastvarefiler og ikke bekymre deg for nøyaktig hvilket brikkesett som er installert.
Det anbefales å bygge kjerne amdgpu driveren som en modul fordi fastvarefilene må være tilgjengelige når den lastes. Hvis du bygger det som en del av kjernebildet av en eller annen grunn, må du enten inkludere fastvarefilene i initramfs (les the section called “Om initramfs” for detaljer), eller inkludere dem i selve kjernebildet (les the section called “Inkluder fastvare blobber i kjernebildet” for detaljer).
Nvidia har gitt ut grunnleggende signert fastvare for nyere grafikkbrikker, men betydelig etter at chipene og dens egne binære drivere var først tilgjengelig. For andre brikker har det vært nødvendig å trekke ut fastvaren fra den binære driveren.
For mer nøyaktig informasjon om hvilke brikker som trenger uttrukket fastvare, se https://nouveau.freedesktop.org/VideoAcceleration.html.
Hvis den nødvendige fastvaren er tilgjengelig i
nvidia/ mappen over linux
fastvare, kopier den til /lib/firmware/nouveau.
Hvis fastvaren ikke er gjort tilgjengelig i linux fastvaren, for de gamle brikkene nevnt i nouveau wiki lenken ovenfor kjør følgende kommandoer:
wget https://anduin.linuxfromscratch.org/BLFS/nvidia-firmware/extract_firmware.py wget https://us.download.nvidia.com/XFree86/Linux-x86/340.32/NVIDIA-Linux-x86-340.32.run sh NVIDIA-Linux-x86-340.32.run --extract-only python3 extract_firmware.py mkdir -p /lib/firmware/nouveau cp -d nv* vuc-* /lib/firmware/nouveau/
Kjernen liker å laste fastvare for noen nettverksdrivere,
spesielt de fra Realtek (/lib/linux-firmware/rtl_nic/)
mappen, men de ser vanligvis ut til å fungere uten. Derfor
kan du starte opp kjernen, sjekke dmesg for meldinger om
denne manglende fastvaren, og hvis nødvendig last ned
fastvaren og legg den i den angitte katalogen i /lib/firmware slik at det vil finnes på
neste oppstart. Merk at med nåværende kjerne fungerer dette
uansett om driveren er kompilert eller bygget som en modul,
det er ikke nødvendig å bygge denne fastvaren inn i kjernen.
Her er et eksempel hvor R8169 driveren har blitt kompilert
inn men fastvaren ble ikke gjort tilgjengelig. Når fastvaren
ble levert, var det var ingen omtale av det på senere
oppstarter.
dmesg | grep firmware | grep r8169
[ 7.018028] r8169 0000:01:00.0: Direct firmware load for rtl_nic/rtl8168g-2.fw failed with error -2
[ 7.018036] r8169 0000:01:00.0 eth0: unable to load firmware patch rtl_nic/rtl8168g-2.fw (-2)
Ulike land har ulike regler for radiospekteret brukt av
trådløse enheter. Du kan installere en fastvare for å at
trådløse enheter overholder lokale spektrumforskrifter, så du
ikke vil bli forespurt av lokale myndigheter eller finne ut
at det trådløse NIC kortet blokkerer frekvenser til andre
enheter (for eksempel fjernkontroller). Forskriftsdatabasens
fastvare kan lastes ned fra https://kernel.org/pub/software/network/wireless-regdb/.
For å installere det, bare pakk ut regulatory.db og regulatory.db.p7s fra tarballen til
/lib/firmware. Merk at enten
cfg80211 driver må velges som en
modul for regulatory.* filer
som skal lastes, eller må disse filene inkluderes som
fastvare i kjernen, som forklart ovenfor i the
section called “Firmware for Skjermkort”.
Tilgangspunktet (AP) vil sende en landskode til det trådløse
NIC, og wpa_supplicant-2.11 ville fortelle
kjernen å laste reguleringen av dette landet fra regulatory.db, og håndhever det. Merk at
flere AP ikke sender denne landskoden, så du kan være låst
til en heller begrenset bruk (spesielt hvis du vil bruke
grensesnittet ditt som en AP).
Noen systemer (spesielt budsjett bærbare datamaskiner) bruker
en DSP som leveres med CPU for tilkobling med lydkodeken.
Åpen lyd fastvare må lastes inn på DSP for å gjøre den
funksjonell. Disse fastvarene filer kan lastes ned fra
https://github.com/thesofproject/sof-bin/releases.
Pakk ut tarballen og bytt til den utpakkede mappen, deretter
som root bruker installer
fastvaren:
install -vdm755 /usr/lib/firmware/intel && cp -av -T --no-preserve=ownership sof \ /usr/lib/firmware/intel/sof && cp -av -T --no-preserve=ownership sof-tplg \ /usr/lib/firmware/intel/sof-tplg
alsa-lib-1.2.12 behøver Use Case Manager konfigurasjonsfiler for systemene som bruker Sound Open Firmware også. Les alsa-lib-1.2.12 siden for instruksjoner for å installere dem. Når fastvaren er lastet inn (kan det hende du trenger en omstart slik at kjernen vil laste dem) og UCM konfigurasjonsfilene installeres, følg the section called “Konfigurere ALSA Verktøy” for å sette opp lydkortet ditt for ALSA skikkelig.
Å identifisere riktig firmware vil vanligvis kreve at du
installerer pciutils-3.13.0, og deretter bruke
lspci for å
identifisere enheten. Du bør deretter søke på nettet for å
sjekke hvilken modul den bruker, hvilken fastvare og hvor du
kan få tak i fastvaren — ikke alt er i linux fastvare.
Hvis det er mulig, bør du begynne med å bruke en kablet tilkobling når du først starter opp LFS systemet. For å bruke en trådløs tilkobling må du bruke et nettverksverktøy som f.eks iw-6.9, Wireless Tools-29, eller wpa_supplicant-2.11.
Fastvare kan også være nødvendig for andre enheter, for eksempel noen SCSI kontrollere, bluetooth adaptere eller TV opptakere. De samme prinsippene gjelder.
Noen drivere, spesielt driverne for ATI eller AMD GPU, krever
fastvarefiler tilgjengelig når den lastes. Den letteste
metoden for å håndtere disse driverne er å bygge dem som en
kjernemodul. En alternativ metode er å lage en initramfs (les
the
section called “Om initramfs” for detaljer), inkludert
fastvarefilene. Hvis du ikke vil bruke noen av metodene, kan
du inkludere fastvare filer i selve kjernebildet. Installer
de nødvendige fastvarefilene inn i /lib/firmware først angi følgende
kjernekonfigurasjon og gjenoppbygg kjernen:
Device Drivers ---> Generic Driver Options ---> Firmware loader ---> <*> Firmware loading facility [FW_LOADER] (xx/aa.bin xx/bb.bin) Build named firmware blobs into the kernel binary ... [EXTRA_FIRMWARE] (/lib/firmware) Firmware blobs root directory ... [EXTRA_FIRMWARE_DIR]
Erstatt xx/aa.bin
xx/bb.bin med en mellomromseparert liste over
stier til de nødvendige fastvare filer, i forhold til
/lib/firmware. En metode
enklere enn å manuelt skrive inn listen (den kan være lang)
kjør følgende kommando:
echo CONFIG_EXTRA_FIRMWARE='"'$({ cd /lib/firmware; echo amdgpu/* })'"' >> .config
make oldconfig
Erstatt amdgpu/*
med et skallmønster som samsvarer med de nødvendige
fastvarefilene.
Ikke distribuer et kjernebilde som inneholder fastvaren til andre da kan du bryte GPL.
Selv om de fleste enheter som trengs av pakker i BLFS og utover
er satt opp skikkelig av udev
ved å bruke standardreglene installert av LFS i /etc/udev/rules.d, det er tilfeller der
reglene må endres eller utvides.
Hvis det er flere lydkort i et system, vil "standard"
lydkortet blir tilfeldig. Metoden for å etablere
lydkortrekkefølge avhenger av om driverne er moduler eller
ikke. Hvis lydkortets drivere er kompilert inn i kjernen,
kontroll er via kjernekommandolinjens parametere i
/boot/grub/grub.cfg. For
eksempel, hvis et system har både et FM801-kort og et
SoundBlaster PCI-kort, følgende kan legges til
kommandolinjen:
snd-fm801.index=0 snd-ens1371.index=1
Hvis lydkortdriverne er bygget som moduler, kan rekkefølgen
bli etablert i /etc/modprobe.conf filen med:
options snd-fm801 index=0
options snd-ens1371 index=1
USB enheter har vanligvis to typer enhetsnoder knyttet til seg.
Den første typen er laget av enhetsspesifikke drivere (f.eks. usb_storage/sd_mod eller usblp) i kjernen. For eksempel en USB masselagringsenhet ville være /dev/sdb, og en USB skriver ville være /dev/usb/lp0. Disse enhetsnodene eksisterer bare når den enhetensspesifikke driveren er lastet inn.
Den andre typen enhetsnoder (/dev/bus/usb/BBB/DDD, der BBB er bussnummeret og DDD er enhetsnummeret) opprettes selv om enheten ikke har en kjernedriver. Ved å bruke disse "rå" USB enhetenes noder, kan en applikasjon utveksle vilkårlige USB pakker med enheten, dvs. omgå den muligens eksisterende kjernedriveren.
Tilgang til rå USB enhetsnoder er nødvendig når et brukerromsprogram fungerer som enhetsdriver. Men for at programmet skal lykkes med å åpne enheten, må tillatelsene settes riktig. Som standard, pga av sikkerhetshensyn eies alle rå USB enheter av bruker root og gruppe root, og har 0664-tillatelser (lesetilgangen er nødvendig, f.eks. for at lsusb skal fungere og for at programmer skal få tilgang til USB huber). Pakker (f.eks som SANE og libgphoto2) som også inneholder USB enhetsdrivere for brukerområdet send udev-regler som endrer tillatelsene til den kontrollerte rå USB enheten. Det vil si at regler installert av SANE endrer tillatelser for kjente skannere, men ikke skrivere. Hvis en pakkevedlikeholder glemte å skrive en regel for enheten din, rapporter en feil til både BLFS (hvis pakken er der) og oppstrøms, og du må skrive din egen regel.
Før Linux-2.6.15 ble tilgang til rå USB enheter ikke utført med /dev/bus/usb/BBB/DDD enhetsnoder, men med /proc/bus/usb/BBB/DDD pseudofiles. Noen applikasjoner bruker fortsatt bare denne foreldede teknikken og kan ikke bruke de nye enhetsnodene. De kan ikke fungere med Linux kjerne versjon 3.5 eller nyere. Hvis du trenger å kjøre en slik applikasjon, kontakt utvikleren av den for en løsning.
Finjustering av enhetsattributter som gruppenavn og
tillatelser er mulig ved å lage ekstra udev regler, samsvarende på noe slikt.
Leverandøren og produktet kan finnes med å søke på
/sys/devices mappegoppføringer
eller bruk udevadm
info etter at enheten er koblet til. Se
dokumentasjonen i gjeldende udev mappen til /usr/share/doc for detaljer.
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="05d8", SYSFS{idProduct}=="4002", \
GROUP:="scanner", MODE:="0660"
Linjen ovenfor brukes kun for beskrivende formål. udev skanner regler settes på plass når SANE-1.2.1 installeres.
Hvis den første oppstartsprosessen ikke konfigurerer
/dev/dvd enheten riktig, kan
den installeres ved å bruke følgende modifikasjon av standard
udev regler. Som root bruker,
kjør:
sed '1d;/SYMLINK.*cdrom/ a\
KERNEL=="sr0", ENV{ID_CDROM_DVD}=="1", SYMLINK+="dvd", OPTIONS+="link_priority=-100"' \
/lib/udev/rules.d/60-cdrom_id.rules > /etc/udev/rules.d/60-cdrom_id.rules
Sammen er /usr/sbin/useradd kommandoen
og /etc/skel mappen (begge er
enkle å sette opp og bruke) gir en måte å sikre at nye brukere
legges til i LFS systemet med samme startinnstillinger for ting
som f.eks PATH, tastaturbehandling
og andre miljøvariabler. Å bruke disse to fasilitetene gjør det
lettere å sikre den første tilstanden for nye brukere lagt til
i systemet.
/etc/skel mappen holder kopier av
ulike initialiseringer og andre filer som kan kopieres til nye
brukers hjemmemappe når /usr/sbin/useradd programmet
legger til den nye brukeren.
useradd
programmet bruker en samling av standard verdier holdt i
/etc/default/useradd. Denne filen
er opprettet i en basis LFS installasjon av Shadow pakken. Hvis den er fjernet eller
omdøpt, useradd
programmet bruker noen interne standardinnstillinger. Du kan se
standardverdiene ved å kjøre /usr/sbin/useradd -D.
For å endre disse verdiene, endre ganske enkelt /etc/default/useradd filen som root bruker. Et alternativ til direkte
modifisering av filen er å kjøre useradd som root bruker mens man leverer ønskede
modifikasjoner på kommandolinjen. Informasjon om hvordan du
gjør dette finnes i useradd man side.
For å komme i gang, opprette en /etc/skel katalog og sørg for at det bare kan
skrives av systemadministratoren, vanligvis root. Opprette mappen som root er den beste veien å gå.
Modusen til alle filer fra denne delen av boken du legger i
/etc/skel skal bare kunne skrives
av eieren. Også siden det er umulig å si hva slags sensitiv
informasjon en bruker kan plassere i sin kopi av disse filene,
bør du gjør dem uleselige av "group" og "other".
Du kan også legge inn andre filer i /etc/skel og andre tillatelser kan være
nødvendig for dem.
Bestem hvilke initialiseringsfiler som skal leveres i alle
(eller de fleste) nye brukers hjemmemappe. Avgjørelsene du tar
vil påvirke det du gjør i de neste to delene, Oppstartsfilene til Bash
Skallet og Vimrc Filer. Noen
eller alle disse filene vil være nyttig for root, noen allerede eksisterende brukere og
nye brukere.
Filene fra de delene som du kanskje vil plassere i /etc/skel inkluderer .inputrc, .bash_profile, .bashrc, .bash_logout, .dircolors, og .vimrc. Hvis du er usikker på hvilken av
disse som skal plasseres der, bare fortsett til følgende
seksjoner, les hver seksjon og eventuelle referanser, og ta
deretter avgjørelsen din.
Du vil kjøre et litt modifisert sett med kommandoer for filer
som er plassert i /etc/skel. Hver
seksjon vil minne deg på dette. Kort fortalt er bokens
kommandoer skrevet for filer ikke lagt til /etc/skel og i stedet bare sender resultatene
til brukerens hjemmemappe. Hvis filen skal være med i
/etc/skel, endre bokens
kommando(er) for å sende utdata dit i stedet og så er det bare
å kopiere filen fra /etc/skel til
de aktuelle mappene, som /etc,
~ eller hjemmemappen til en
bruker som allerede er i systemet.
Når du legger til en ny bruker med useradd, bruk -m parameteren, som forteller useradd om å opprette
brukerens hjemmemappe og kopiere filer fra /etc/skel (kan bli overstyrt) til den nye
brukerens hjemmemappe. For eksempel (utfør som root bruker):
useradd -m <newuser>
Hvis du deler et /home eller
/usr/src med en annen Linux
distro (for eksempel vertsdistroen som brukes til å bygge LFS),
kan du opprette en bruker med samme UID (og samme
primærgruppe-GID) for å holde fileierskapet konsistent på tvers
av systemene. Først på den andre
distroen, få UID til brukeren og GID for brukerens
primære gruppe:
getent passwd <username> | cut -d ':' -f 3,4
Kommandoen skal gi ut UID og GID, atskilt med et kolon. Nå på BLFS systemet oppretter du primærgruppen og brukeren:
groupadd -g<GID><username>&& useradd -u<UID>-g<username><username>
Gjennom BLFS installerer mange pakker programmer som kjører som
nisser eller i en eller annen måte bør ha et bruker- eller
gruppenavn tildelt. Generelt disse navnene brukes til å
kartlegge en bruker-ID (uid) eller gruppe-ID (gid) for
systembruk. Vanligvis er de spesifikke uid- eller gid-numrene
som brukes av disse applikasjonene ikke viktig. Unntaket er
selvfølgelig at root har en uid
og gid på 0 (null) det er virkelig spesielt. Uid verdiene er
lagret i /etc/passwd og gid
verdiene finnes i /etc/group.
Vanligvis klassifiserer Unix systemer brukere og grupper i to
kategorier: systembrukere og vanlige brukere. Systembrukere og
grupper er gitt lave tall og vanlige brukere og grupper har
numeriske verdier større enn alle systemverdiene.
Skjæringspunktet for disse tallene finnes i to parametere i
/etc/login.defs
konfigurasjonfilen. Standard UID_MIN verdi er 1000 og standard
GID_MIN verdi er 1000. Hvis en spesifikk uid- eller gid-verdi
ikke er spesifisert når du oppretter en bruker med useradd eller en gruppe med
groupadd verdiene
som er tildelt vil alltid være over disse grenseverdiene.
I tillegg Linux Standard Base anbefaler at systemets uid og gid verdier skal være under 100.
Nedenfor er en tabell over foreslåtte uid/gid-verdier brukt i BLFS utover de definert i en basis LFS installasjon. Disse kan endres etter ønske, men gir et foreslått sett med konsistente verdier.
Table 3.1. UID/GID Foreslåtte Verdier
| Navn | uid | gid |
|---|---|---|
| bin | 1 | |
| lp | 9 | |
| adm | 16 | |
| atd | 17 | 17 |
| messagebus | 18 | 18 |
| lpadmin | 19 | |
| named | 20 | 20 |
| gdm | 21 | 21 |
| fcron | 22 | 22 |
| systemd-journal | 23 | 23 |
| apache | 25 | 25 |
| smmsp | 26 | 26 |
| polkitd | 27 | 27 |
| rpc | 28 | 28 |
| exim | 31 | 31 |
| postfix | 32 | 32 |
| postdrop | 33 | |
| sendmail | 34 | |
| 34 | ||
| vmailman | 35 | 35 |
| news | 36 | 36 |
| kdm | 37 | 37 |
| fetchmail | 38 | |
| mysql | 40 | 40 |
| postgres | 41 | 41 |
| dovecot | 42 | 42 |
| dovenull | 43 | 43 |
| ftp | 45 | 45 |
| proftpd | 46 | 46 |
| vsftpd | 47 | 47 |
| rsyncd | 48 | 48 |
| sshd | 50 | 50 |
| stunnel | 51 | 51 |
| dhcpcd | 52 | 52 |
| svn | 56 | 56 |
| svntest | 57 | |
| git | 58 | 58 |
| games | 60 | 60 |
| kvm | 61 | |
| wireshark | 62 | |
| sddm | 64 | 64 |
| lightdm | 65 | 65 |
| scanner | 70 | |
| colord | 71 | 71 |
| systemd-journal-gateway | 73 | 73 |
| systemd-journal-remote | 74 | 74 |
| systemd-journal-upload | 75 | 75 |
| systemd-network | 76 | 76 |
| systemd-resolve | 77 | 77 |
| systemd-timesync | 78 | 78 |
| systemd-coredump | 79 | 79 |
| uuidd | 80 | 80 |
| systemd-oom | 81 | 81 |
| ldap | 83 | 83 |
| avahi | 84 | 84 |
| avahi-autoipd | 85 | 85 |
| netdev | 86 | |
| ntp | 87 | 87 |
| unbound | 88 | 88 |
| plugdev | 90 | |
| wheel | 97 | |
| anonymous | 98 | |
| nobody | 65534 | |
| nogroup | 65534 |
Skallprogrammet /bin/bash
(heretter referert til som bare "skallet") bruker en samling
oppstartsfiler for å hjelpe til med å lage et miljø. Hver fil
har en spesifikk bruk og kan påvirke innlogging og interaktive
miljøer annerledes. Filene i /etc
mappen gir generelt globale innstillinger. Hvis en tilsvarende
fil finnes i hjemmemappen din, kan den overstyre de globale
innstillingene.
Et interaktivt påloggingsskall startes etter en vellykket
pålogging ved hjelp av /bin/login, ved å lese /etc/passwd filen. Denne skall påkallelsen
leser normalt /etc/profile og
dets private motsvar ~/.bash_profile (eller ~/.profile hvis kalt som /bin/sh) ved oppstart.
Et interaktivt ikke-påloggingsskall startes vanligvis på
kommandolinjen ved å bruke et skallprogram (f.eks.,
[prompt]$/bin/bash) eller av
/bin/su
kommandoen. Et interaktivt ikke-påloggingsskall er også startet
med et terminalprogram som f.eks xterm eller konsole fra et grafisk miljø.
Denne typen av skallpåkalling kopierer normalt det overordnede
miljøet og leser deretter brukerens fil ~/.bashrc for ytterligere oppstart
konfigurasjonsinstruksjoner.
Et ikke-interaktivt skall er vanligvis til stede når et skallskript kjører. Det er ikke-interaktivt fordi det behandler et skript og ikke venter på brukerinndata mellom kommandoer. For disse skallpåkallelsene brukes kun miljøet arvet fra overordnet skall.
Filen ~/.bash_logout brukes ikke
til en påkalling av skallet. Den leses og kjøres når en bruker
går ut av et interaktivt påloggingsskall.
Mange distribusjoner bruker /etc/bashrc for hele systemets initialisering
av skall som ikke er pålogget. Denne filen kalles vanligvis fra
brukerens ~/.bashrc fil og er
ikke bygget direkte inn i selve bash. Denne konvensjonen
følges i denne seksjonen.
For mer informasjon se info bash -- Punkt: Bash Startup Files and Interactive Shells.
De fleste av instruksjonene nedenfor brukes til å lage filer
som ligger i /etc
mappestrukturen som krever at du utfører kommandoene som
root bruker. Hvis du velger å
opprette filer i brukerens hjemmekataloger i stedet, bør du
kjøre kommandoene som en uprivilegert bruker.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/bash-shell-startup-files
Her er en grunnleggende /etc/profile. Denne filen starter med å
sette opp noen hjelpefunksjoner og noen grunnleggende
parametere. Det spesifiserer noen bash historie parametere
og, for sikkerhets formål, deaktiverer lagring av en
permanent historikkfil for root bruker. Den angir også en
standardbrukers ledetekst. Den kaller så små,
enkeltformålsskripter i /etc/profile.d mappen for å gi det meste av
initialiseringen.
For mer informasjon om skiftesekvensene du kan bruke for
forespørselen (dvs. PS1
miljøvariabelen) se info
bash -- Punkt:
Printing a Prompt.
cat > /etc/profile << "EOF"
# Begin /etc/profile
# Written for Beyond Linux From Scratch
# by James Robertson <jameswrobertson@earthlink.net>
# modifications by Dagmar d'Surreal <rivyqntzne@pbzpnfg.arg>
# System wide environment variables and startup programs.
# System wide aliases and functions should go in /etc/bashrc. Personal
# environment variables and startup programs should go into
# ~/.bash_profile. Personal aliases and functions should go into
# ~/.bashrc.
# Functions to help us manage paths. Second argument is the name of the
# path variable to be modified (default: PATH)
pathremove () {
local IFS=':'
local NEWPATH
local DIR
local PATHVARIABLE=${2:-PATH}
for DIR in ${!PATHVARIABLE} ; do
if [ "$DIR" != "$1" ] ; then
NEWPATH=${NEWPATH:+$NEWPATH:}$DIR
fi
done
export $PATHVARIABLE="$NEWPATH"
}
pathprepend () {
pathremove $1 $2
local PATHVARIABLE=${2:-PATH}
export $PATHVARIABLE="$1${!PATHVARIABLE:+:${!PATHVARIABLE}}"
}
pathappend () {
pathremove $1 $2
local PATHVARIABLE=${2:-PATH}
export $PATHVARIABLE="${!PATHVARIABLE:+${!PATHVARIABLE}:}$1"
}
export -f pathremove pathprepend pathappend
# Set the initial path
export PATH=/usr/bin
# Attempt to provide backward compatibility with LFS earlier than 11
if [ ! -L /bin ]; then
pathappend /bin
fi
if [ $EUID -eq 0 ] ; then
pathappend /usr/sbin
if [ ! -L /sbin ]; then
pathappend /sbin
fi
unset HISTFILE
fi
# Set up some environment variables.
export HISTSIZE=1000
export HISTIGNORE="&:[bf]g:exit"
# Set some defaults for graphical systems
export XDG_DATA_DIRS=${XDG_DATA_DIRS:-/usr/share}
export XDG_CONFIG_DIRS=${XDG_CONFIG_DIRS:-/etc/xdg}
export XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR:-/tmp/xdg-$USER}
# Set up a red prompt for root and a green one for users.
NORMAL="\[\e[0m\]"
RED="\[\e[1;31m\]"
GREEN="\[\e[1;32m\]"
if [[ $EUID == 0 ]] ; then
PS1="$RED\u [ $NORMAL\w$RED ]# $NORMAL"
else
PS1="$GREEN\u [ $NORMAL\w$GREEN ]\$ $NORMAL"
fi
for script in /etc/profile.d/*.sh ; do
if [ -r $script ] ; then
. $script
fi
done
unset script RED GREEN NORMAL
# End /etc/profile
EOF
Nå opprett /etc/profile.d
mappen, hvor de individuelle initialiseringsskriptene er
plassert:
install --directory --mode=0755 --owner=root --group=root /etc/profile.d
Å bruke bash fullføringsskriptet nedenfor er kontroversielt. Ikke alle brukere liker det. Den legger til mange (vanligvis over 1000) linjer til bash miljøet og gjør det vanskelig å bruke 'set' kommandoen for å undersøke enkle miljøvariabler. Å utelate dette skriptet forstyrrer ikke bash sin evne til å bruke tabulatortasten for filnavnfullføring.
Dette skriptet importerer bash fullføringsskript, installert av mange andre BLFS pakker, for å tillate fullføring av TAB kommandolinje.
cat > /etc/profile.d/bash_completion.sh << "EOF"
# Begin /etc/profile.d/bash_completion.sh
# Import bash completion scripts
# If the bash-completion package is installed, use its configuration instead
if [ -f /usr/share/bash-completion/bash_completion ]; then
# Check for interactive bash and that we haven't already been sourced.
if [ -n "${BASH_VERSION-}" -a -n "${PS1-}" -a -z "${BASH_COMPLETION_VERSINFO-}" ]; then
# Check for recent enough version of bash.
if [ ${BASH_VERSINFO[0]} -gt 4 ] || \
[ ${BASH_VERSINFO[0]} -eq 4 -a ${BASH_VERSINFO[1]} -ge 1 ]; then
[ -r "${XDG_CONFIG_HOME:-$HOME/.config}/bash_completion" ] && \
. "${XDG_CONFIG_HOME:-$HOME/.config}/bash_completion"
if shopt -q progcomp && [ -r /usr/share/bash-completion/bash_completion ]; then
# Source completion code.
. /usr/share/bash-completion/bash_completion
fi
fi
fi
else
# bash-completions are not installed, use only bash completion directory
if shopt -q progcomp; then
for script in /etc/bash_completion.d/* ; do
if [ -r $script ] ; then
. $script
fi
done
fi
fi
# End /etc/profile.d/bash_completion.sh
EOF
Kontroller at mappen eksisterer:
install --directory --mode=0755 --owner=root --group=root /etc/bash_completion.d
For en mer fullstendig installasjon, se https://wiki.linuxfromscratch.org/blfs/wiki/bash-shell-startup-files#bash-completions.
Dette skriptet bruker ~/.dircolors og /etc/dircolors filer for å kontrollere
fargene på filnavn i en mappeoppføring. De kontrollerer
farget utdata av ting som ls
--color. Forklaringen på hvordan å
initialisere disse filene er på slutten av denne delen.
cat > /etc/profile.d/dircolors.sh << "EOF"
# Setup for /bin/ls and /bin/grep to support color, the alias is in /etc/bashrc.
if [ -f "/etc/dircolors" ] ; then
eval $(dircolors -b /etc/dircolors)
fi
if [ -f "$HOME/.dircolors" ] ; then
eval $(dircolors -b $HOME/.dircolors)
fi
alias ls='ls --color=auto'
alias grep='grep --color=auto'
EOF
Dette skriptet legger til noen nyttige stier til
PATH og kan brukes til å
tilpasse andre PATH relaterte miljøvariabler (f.eks.
LD_LIBRARY_PATH, etc) som kan være nødvendig for alle
brukere.
cat > /etc/profile.d/extrapaths.sh << "EOF"
if [ -d /usr/local/lib/pkgconfig ] ; then
pathappend /usr/local/lib/pkgconfig PKG_CONFIG_PATH
fi
if [ -d /usr/local/bin ]; then
pathprepend /usr/local/bin
fi
if [ -d /usr/local/sbin -a $EUID -eq 0 ]; then
pathprepend /usr/local/sbin
fi
if [ -d /usr/local/share ]; then
pathprepend /usr/local/share XDG_DATA_DIRS
fi
# Set some defaults before other applications add to these paths.
pathappend /usr/share/info INFOPATH
EOF
man
programmet automatisk utleder søkebanen for manualsider
ved å undersøke innholdet i PATH variabelen, se manpath(5)
for detaljer. Innstilling av MANPATH variabel kan overstyre den
automatiske utlederen, så BLFS redaksjonen anbefaler ikke
å sett det. Hvis du må sette den av en eller annen grunn,
er det bedre å starte verdien med et kolon (:), for eksempel MANPATH=:/opt/somepkg/share/man:/opt/otherpkg/share/man
så stiene som er oppført i MANPATH variabeln vil legges til den
automatisk utledede verdien i stedet for å overstyre det.
Dette skriptet setter opp standard inputrc konfigurasjonsfil. Hvis brukeren
ikke har individuelle innstillinger, brukes den globale
filen.
cat > /etc/profile.d/readline.sh << "EOF"
# Set up the INPUTRC environment variable.
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ] ; then
INPUTRC=/etc/inputrc
fi
export INPUTRC
EOF
Innstilling av umask verdien er viktig for sikkerheten. Her er standard gruppe skrivetillatelser slått av for systemets brukere og når brukernavnet og gruppenavnet ikke er det samme.
cat > /etc/profile.d/umask.sh << "EOF"
# By default, the umask should be set.
if [ "$(id -gn)" = "$(id -un)" -a $EUID -gt 99 ] ; then
umask 002
else
umask 022
fi
EOF
Dette skriptet setter en miljøvariabel som er nødvendig for støtte for morsmål. En full diskusjon om å bestemme denne variabelen kan finnes på siden Konfigurere systemlokaliteten siden.
cat > /etc/profile.d/i18n.sh << "EOF"
# Set up i18n variables
for i in $(locale); do
unset ${i%=*}
done
if [[ "$TERM" = linux ]]; then
export LANG=C.UTF-8
else
source /etc/locale.conf
for i in $(locale); do
key=${i%=*}
if [[ -v $key ]]; then
export $key
fi
done
fi
EOF
Her er en grunnleggende /etc/bashrc. Kommentarer i filen skal
forklare alt du trenger.
cat > /etc/bashrc << "EOF"
# Begin /etc/bashrc
# Written for Beyond Linux From Scratch
# by James Robertson <jameswrobertson@earthlink.net>
# updated by Bruce Dubbs <bdubbs@linuxfromscratch.org>
# System wide aliases and functions.
# System wide environment variables and startup programs should go into
# /etc/profile. Personal environment variables and startup programs
# should go into ~/.bash_profile. Personal aliases and functions should
# go into ~/.bashrc
# Provides colored /bin/ls and /bin/grep commands. Used in conjunction
# with code in /etc/profile.
alias ls='ls --color=auto'
alias grep='grep --color=auto'
# Provides prompt for non-login shells, specifically shells started
# in the X environment. [Review the LFS archive thread titled
# PS1 Environment Variable for a great case study behind this script
# addendum.]
NORMAL="\[\e[0m\]"
RED="\[\e[1;31m\]"
GREEN="\[\e[1;32m\]"
if [[ $EUID == 0 ]] ; then
PS1="$RED\u [ $NORMAL\w$RED ]# $NORMAL"
else
PS1="$GREEN\u [ $NORMAL\w$GREEN ]\$ $NORMAL"
fi
unset RED GREEN NORMAL
# End /etc/bashrc
EOF
Her er en grunnleggende ~/.bash_profile. Hvis du vil ha at hver ny
bruker skal få denne filen automatisk, bare endre utdataene
til kommandoen til /etc/skel/.bash_profile og sjekk
tillatelser etter at kommandoen er kjørt. Deretter kan du
kopiere /etc/skel/.bash_profile
til hjemmemappene til allerede eksisterende brukere,
inkludert root, og angi
eieren og gruppen riktig.
cat > ~/.bash_profile << "EOF"
# Begin ~/.bash_profile
# Written for Beyond Linux From Scratch
# by James Robertson <jameswrobertson@earthlink.net>
# updated by Bruce Dubbs <bdubbs@linuxfromscratch.org>
# Personal environment variables and startup programs.
# Personal aliases and functions should go in ~/.bashrc. System wide
# environment variables and startup programs are in /etc/profile.
# System wide aliases and functions are in /etc/bashrc.
if [ -f "$HOME/.bashrc" ] ; then
source $HOME/.bashrc
fi
if [ -d "$HOME/bin" ] ; then
pathprepend $HOME/bin
fi
# Having . in the PATH is dangerous
#if [ $EUID -gt 99 ]; then
# pathappend .
#fi
# End ~/.bash_profile
EOF
Her er en grunnleggende ~/.profile. Kommentarene og
bruksanvisningen /etc/skel for
.bash_profile ovenfor gjelder
også her. Bare målfilnavnet er forskjellige.
cat > ~/.profile << "EOF"
# Begin ~/.profile
# Personal environment variables and startup programs.
if [ -d "$HOME/bin" ] ; then
pathprepend $HOME/bin
fi
# Set up user specific i18n variables
#export LANG=<ll>_<CC>.<charmap><@modifiers>
# End ~/.profile
EOF
Her er en grunnleggende ~/.bashrc.
cat > ~/.bashrc << "EOF"
# Begin ~/.bashrc
# Written for Beyond Linux From Scratch
# by James Robertson <jameswrobertson@earthlink.net>
# Personal aliases and functions.
# Personal environment variables and startup programs should go in
# ~/.bash_profile. System wide environment variables and startup
# programs are in /etc/profile. System wide aliases and functions are
# in /etc/bashrc.
if [ -f "/etc/bashrc" ] ; then
source /etc/bashrc
fi
# Set up user specific i18n variables
#export LANG=<ll>_<CC>.<charmap><@modifiers>
# End ~/.bashrc
EOF
Dette er en tom ~/.bash_logout
som kan brukes som en mal. Du vil legge merke til at
grunnleggende ~/.bash_logout
inkluderer ikke en clear kommando. Dette er
fordi det clear håndteres i /etc/issue filen.
cat > ~/.bash_logout << "EOF"
# Begin ~/.bash_logout
# Written for Beyond Linux From Scratch
# by James Robertson <jameswrobertson@earthlink.net>
# Personal items to perform on logout.
# End ~/.bash_logout
EOF
Hvis du ønsker å bruke dircolors kapasiteten, kjør følgende
kommando. /etc/skel
oppsettstrinn vist ovenfor kan også brukes her for å gi en
~/.dircolors fil når en ny
bruker settes opp. Som før, bare endre utdatafilnavnet på
følgende kommando og sikre at tillatelsene, eieren og gruppen
er korrekte på filene opprettet og/eller kopiert.
dircolors -p > /etc/dircolors
Hvis du ønsker å tilpasse fargene som brukes for forskjellige
filtyper, kan du redigere /etc/dircolors filen. Instruksjonene for å
sette fargene er innebygd i filen.
Endelig har Ian Macdonald skrevet en utmerket samling tips og triks for å forbedre skallmiljøet ditt. Du kan lese den på nett https://www.caliban.org/bash/index.shtml.
LFS boken installerer Vim som tekstredigerer. På dette tidspunktet bør det bemerkes at det er mange forskjellige redigeringsapplikasjoner der ute, inkludert Emacs, nano, Joe og mange flere. Alle som har vært rundt Internett (spesielt usenet) for en kort tid vil sikkert ha observert minst en flammekrig, vanligvis involvert Vim og Emacs brukere!
LFS boken skaper en grunnleggende vimrc fil. I denne seksjonen finner du et
forsøk på å forbedre denne filen. Ved oppstart, vim leser den globale
konfigurasjonsfilen (/etc/vimrc)
samt en brukerspesifikk fil (~/.vimrc). En eller begge kan skreddersys for
å passe behovene til ditt spesielle system.
Her er en litt utvidet .vimrc som
du kan putte i ~/.vimrc for å gi
brukerspesifikke effekter. Selvfølgelig, hvis du legger det i
/etc/skel/.vimrc i stedet, vil
den bli gjort tilgjengelig for brukere du legger til i systemet
senere. Du kan også kopiere filen fra /etc/skel/.vimrc til hjemmemappen til brukere
som allerede er på systemet, for eksempel root. Sørg for å angi tillatelser, eier, og
grupper hvis du kopierer noe direkte fra /etc/skel.
" Begin .vimrc
set columns=80
set wrapmargin=8
set ruler
" End .vimrc
Merk at kommentartaggene er " i stedet for de mer vanlige #
eller //. Dette er riktig, syntaksen for vimrc er litt uvanlig.
Nedenfor finner du en rask forklaring på hva hver av alternativene i denne eksempelfilen betyr her:
set columns=80: Dette setter
ganske enkelt antall kolonner brukt på skjermen.
set wrapmargin=8: Dette er
antallet tegn fra høyre vinduskant der linjebrytingen
starter.
set ruler: Dette gjør at
vim viser
gjeldende rad og kolonne nederst til høyre på skjermen.
Mer informasjon om mange
vim alternativer
finner du ved å lese hjelpen inne i vim. Gjør dette ved å skrive
:help i vim for å få generell hjelp,
eller ved å skrive :help
usr_toc.txt for å se Brukerhåndbokens
Innholdsfortegnelse.
Første gang du starter opp ditt nye LFS system, vil
påloggingsskjermen vises fin og vanlig (som det skal være i et
basis system). Mange folk vil imidlertid at systemet deres skal
vise noe informasjon i påloggings beskjeden. Dette kan gjøres
ved å bruke filen /etc/issue.
/etc/issue filen er en ren
tekstfil som også vil akseptere visse skiftesekvenser (se
nedenfor) for å legge inn informasjon om systemet. Det er også
filen issue.net som kan brukes
ved ekstern pålogging. ssh vil imidlertid bare bruke
det hvis du angir alternativet i konfigurasjonsfilen og vil
ikke tolke
skiftesekvensene vist nedenfor.
En av de vanligste tingene som folk ønsker å gjøre er å rydde
skjermen ved hver pålogging. Den enkleste måten å gjøre det på
er å sette en "clear" skiftesekvens inn i /etc/issue. En enkel måte å å gjøre dette er
å gi kommandoen clear >
/etc/issue. Dette vil sette inn den relevante
skiftesekvensen i starten på /etc/issue filen. Merk at hvis du gjør dette,
når du redigerer filen, bør du la tegnene på første linje
(normalt '^[[H^[[2J') stå alene.
Terminal skiftesekvenser er spesielle koder som gjenkjennes av terminalen. ^[ representerer et ASCII ESC tegn. Sekvensen ESC [ H plasserer markøren i øvre venstre hjørne av skjermen og ESC 2 J sletter skjermen. For mer informasjon om terminal skiftesekvenser, se https://invisible-mirror.net/xterm/ctlseqs/ctlseqs.html
Følgende sekvenser gjenkjennes av agetty (programmet som
vanligvis analyserer /etc/issue).
Denne informasjon er fra man
agetty hvor du kan finne ekstra informasjon om
påloggingsprosessen.
issue filen kan inneholde visse
tegn sekvenser for å vise forskjellig informasjon. Alle
issue sekvenser består av en
omvendt skråstrek (\) umiddelbart etterfulgt av en av
bokstavene forklart nedenfor (så \d
i /etc/issue vil sette inn
gjeldende dato).
b Setter inn baudraten til gjeldende linje.
d Setter inn gjeldende dato.
s Setter inn systemnavnet, navnet på operativsystemet.
l Setter inn navnet på gjeldende tty linje.
m Setter inn arkitekturidentifikatoren for maskinen, f.eks., i686.
n Setter inn nodenavn på maskinen, også kjent som vertsnavnet.
o Setter inn domenenavnet til maskinen.
r Setter inn utgivelsesnummer for kjernen, f.eks., 2.6.11.12.
t Setter inn nåværende tid.
u Setter inn antall nåværende brukere pålogget.
U Setter inn streng "1 bruker" eller "<n> brukere" hvor <n> er
antall nåværende brukere pålogget.
v Setter inn versjonen av OS, f.eks., byggedato osv.
Sikkerhet tar mange former i et datamiljø. Etter noen innledende diskusjon, gir dette kapittelet eksempler på tre ulike typer sikkerhet: tilgang, forebygging og deteksjon.
Tilgang for brukere håndteres vanligvis av login eller en applikasjon designet for å håndtere påloggingsfunksjonen. I dette kapittelet viser vi hvordan å forbedre login ved å sette retningslinjer med PAM moduler. Tilgang via nettverk kan også bli sikret med retningslinjer satt av iptables, vanlig referert til som en brannmur. Network Security Services (NSS) og Netscape Portable Runtime (NSPR) biblioteker kan installeres og deles blant de mange applikasjonene som krever dem. For applikasjoner som ikke tilbyr den beste sikkerheten, kan du bruke Stunnel pakke for å pakke inn en programnisse inn i en SSL tunnel.
Forebygging av brudd, som en trojaner, assisteres av applikasjoner som GnuPG, spesielt evnen til å bekrefte signerte pakker, som gjenkjenner modifikasjoner av tarballen etter at pakkeren har opprettet den.
Til slutt berører vi deteksjon med en pakke som lagrer "signaturer" av kritiske filer (definert av administratoren) og regenerer deretter disse "signaturer" og sammenligner for filer som er endret.
All programvare har feil. Noen ganger kan en feil utnyttes, for eksempel til å la brukere få forbedrede privilegier (kanskje få et rootskall, eller bare få tilgang til eller slette andre brukere sine filer), eller å tillate et eksternt nettsted å krasje et program (denial of service), eller for tyveri av data. Disse feilene er merket som sårbarheter.
Det viktigste stedet hvor sårbarheter blir logget er cve.mitre.org. Dessverre, mange sårbarhetsnumre (CVE-yyyy-nnnn) er i utgangspunktet bare merket som "reservert" når distribusjoner begynner å gi feilrettinger. Også noen sårbarheter gjelder spesielle kombinasjoner av configure alternativer, eller bare gjelde for gamle versjoner av pakker som for lengst er oppdatert i BLFS.
BLFS skiller seg fra distribusjoner—det er ingen BLFS sikkerhetsteam, og redaktørene blir først oppmerksomme på sårbarheter etter at de er offentlige kunnskap. Noen ganger vil ikke en pakke med en sårbarhet bli oppdatert i boken på lenge. Problemer kan logges i Trac systemet, som kan øke hastigheten på løsningen.
Den normale måten for BLFS å fikse en sårbarhet på er, ideelt sett, å oppdatere boken til en ny fast utgivelse av pakken. Noen ganger skjer det selv før sårbarheten er offentlig kjent, så det er ingen garantier at den vil bli vist som en sårbarhetsfiks i endringsloggen. Alternativt, en sed kommando, eller en oppdatering hentet fra en distribusjon, kan være aktuelt.
Poenget er at du er ansvarlig for din egen sikkerhet, og for å vurdere den potensielle konsekvensen av eventuelle problemer.
Redaktørene utsteder nå sikkerhetsråd for pakker i BLFS (og LFS), som finnes på BLFS Security Advisories, og gradere alvorlighetsgraden etter hva oppstrøms rapporter, eller til det som vises på nvd.nist.gov hvis det har detaljer.
For å holde styr på hva som blir oppdaget, kan det være lurt å følge sikkerhetskunngjøringer av en eller flere distribusjoner. For eksempel Debian har Debian security. Fedoras lenker om sikkerhet er på the Fedora wiki. Detaljer om Gentoo linux sikkerhetskunngjøringer er diskutert på Gentoo security. Endelig er Slackware arkivene med sikkerhetskunngjøringer på Slackware security.
Den mest generelle engelske kilden er kanskje the Full Disclosure Mailing List, men vennligst les kommentaren på den siden. Hvis du bruke andre språk kanskje foretrekker du andre nettsteder som heise.de (Tysk) eller cert.hr (Kroatisk). Disse er ikke linux spesifikke. Det er også en daglig oppdatering på lwn.net for abonnenter (gratis tilgang til dataene etter 2 uker, men deres sårbarheter database på lwn.net/Alerts er ubegrenset).
For noen pakker, å abonnere på deres 'announce' lister vil gi umiddelbare nyheter om nyere versjoner.
Offentlig nøkkelinfrastruktur (PKI) er en metode for å validere ektheten av en ellers ukjent enhet på tvers av uklarerte nettverk. PKI fungerer med å etablere en tillitskjede, i stedet for å stole på hver enkelt vert eller enhet eksplisitt. For å få et sertifikat presentert av en fjern enhet som skal stoles på, må sertifikatet presentere en komplett kjede av sertifikater som kan valideres ved hjelp av rotsertifikatet til en Sertifiseringsinstans (CA) som er klarert av den lokale maskinen.
Å etablere tillit med en CA innebærer å validere ting som selskap adresse, eierskap, kontaktinformasjon osv., og sikre at CA har fulgt beste praksis, som å gjennomgå periodiske sikkerhetsrevisjoner av uavhengige etterforskere og opprettholde en alltid tilgjengelig sertifikatopphevelsesliste. Dette er godt utenfor omfanget av BLFS (som det er for de fleste Linux distribusjoner). Sertifikatlageret som oppgis her er hentet fra Mozilla Foundation, som har etablert svært strenge retningslinjer for inkludering beskrevet her.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/make-ca/archive/v1.14/make-ca-1.14.tar.gz
Nedlastingsstørrelse: 40 KB
Nedlasting MD5 Sum: e99d2985ead0037caedb765fd66b33f0
Estimert diskplass som kreves: 164 KB (med alle kjøretidsdeps)
Estimert byggetid: 0.1 SBU (med alle kjøretidsdeps)
Denne pakken sender et CA sertifikat for å validere
identiteten til https://hg.mozilla.org/. Hvis
tillitskjeden til denne nettsiden har blitt endret etter
utgivelsen av make-ca-1.14, det kan mislykkes å få
revisjonen av certdata.txt
fra serveren. Bruk en oppdatert make-ca utgivelse på
the release
page hvis dette problemet oppstår.
p11-kit-0.25.5 (kjøretid, bygget etter libtasn1-4.19.0, kreves i de følgende instruksjoner for å generere sertifikatlagre fra tillitsankere, og hver gang make-ca kjøres)
nss-3.103 (å generere en delt NSSDB)
make-ca skriptet vil laste
ned og behandle sertifikatene som er inkludert i certdata.txt filen til bruk som
tillitsankere for p11-kit-0.25.5 tillitsmodulen. I tillegg
vil den generere systemsertifikatlagre som brukes av BLFS
applikasjoner (hvis de anbefalte og valgfrie applikasjonene
finnes på systemet). Eventuelle lokale sertifikater lagret i
/etc/ssl/local vil bli
importert til både tillitsankere og de genererte
sertifikatlagrene (overstyrer Mozillas tillit). I tillegg vil
eventuelle modifiserte tillitsverdier bli kopiert fra
tillitsankere til /etc/ssl/local før evt oppdateringer, som
bevarer tilpassede tillitsverdier som er forskjellige fra
Mozilla når det brukes trust verktøy fra
p11-kit for å operere på
tillitslageret.
For å installere de forskjellige sertifikatlagrene, installer
først make-ca skriptet til
riktig plassering. Som root
bruker:
make install && install -vdm755 /etc/ssl/local
Teknisk sett er denne pakken allerede installert på dette tidspunktet. Men de fleste pakker som lister make-ca som en avhengighet krever faktisk at systemsertifikatlageret er satt opp av denne pakken, heller enn make-ca programmet i seg selv. Så instruksjonene for å bruke make-ca for å sette opp systemsertifikatlageret er inkludert i denne delen. Du bør sørge for at nødvendige kjøretidsavhengighet for make-ca er tilfredstilt nå, og fortsett å følge instruksjonene.
Som root bruker, last ned
sertifikatkilden og klargjør for systembruk med følgende
kommando:
Hvis du kjører skriptet en gang til med samme versjon av
certdata.txt, for eksempel
for å oppdatere lagre når make-ca er oppgradert, eller for å
legge til flere lagre etter hvert som den nødvendige
programvaren er installert, erstatt -g bryteren med -r bryter i kommandolinjen.
Hvis innpakning, kjør make-ca
--help for å se alle tilgjengelige
kommandoers linjealternativer.
/usr/sbin/make-ca -g
Du bør periodisk oppdatere lagrene med kommandoen ovenfor,
enten manuelt eller via en systemd
timer. En timer er installert i /usr/lib/systemd/system/update-pki.timer
det, hvis aktivert, vil se etter oppdateringer
ukentlig. Kjør følgende
kommandoer, som root bruker,
for å aktiver systemd timer:
systemctl enable update-pki.timer
For de fleste brukere er ingen ekstra konfigurasjon
nødvendig, men standard certdata.txt filen levert av make-ca er
hentet fra mozilla-release grenen, og er modifisert for å gi
en Mercurial revisjon. Dette vil være riktig versjon for de
fleste systemer. Det er flere andre varianter av filen
tilgjengelig for bruk som kan foretrekkes av en eller annen
grunn, inkludert filene som leveres med Mozilla produkter i
denne boken. RedHat og OpenSUSE, for eksempel, bruker
versjonen inkludert i nss-3.103. Ytterligere oppstrømsnedlastinger
er tilgjengelig på lenkene som er inkludert i /etc/make-ca/make-ca.conf.dist. Bare kopier
filen til /etc/make-ca.conf og
rediger etter behov.
Det er tre tillitstyper som er anerkjent av make-ca skriptet, SSL/TLS, S/Mime, og
code signing. For OpenSSL,
er disse serverAuth,
emailProtection, og
codeSigning
henholdsvis. Hvis en av de tre tillitsargumentene er utelatt,
er sertifikatet verken klarert, eller avvist for den rollen.
Klienter som bruker OpenSSL
eller NSS som støter på
dette sertifikatet vil gi en advarsel til brukeren. Klienter
som bruker GnuTLS uten
p11-kit støtte er ikke klar
over klarerte sertifikater. For å inkludere denne CA i
ca-bundle.crt, email-ca-bundle.crt, eller objsign-ca-bundle.crt filer (GnuTLS gamle pakker), den må ha passende
tillitsargumenter.
/etc/ssl/local mappen er
tilgjengelig for å legge til flere CA sertifikater til
systemtillitslageret. Denne katalogen brukes også til å lagre
sertifikater som ble lagt til eller endret i
systemtillitslageret av p11-kit-0.25.5 sånn at
tillitsverdier opprettholdes på tvers av oppgraderinger.
Filer i denne mappen må være i OpenSSL klarert sertifikatformat.
Sertifikater importert ved hjelp av trust verktøyet fra
p11-kit-0.25.5 vil bruke x509 Extended
Key Usage verdiene for å tildele standard tillitsverdier for
systemankrene.
Hvis du trenger å overstyre tillitsverdier, eller på annen
måte trenger å opprette et OpenSSL klarert sertifikat manuelt fra
en vanlig PEM kodet fil, må du legge til tillitsargumenter
til openssl
kommandoen, og opprette et nytt sertifikat. For eksempel ved
å bruke CAcert roots, hvis du vil stole
på begge for alle tre rollene, følgende kommandoer vil
opprette passende OpenSSL klarerte sertifikater (kjør som
root etter at Wget-1.24.5 er
installert):
wget http://www.cacert.org/certs/root.crt &&
wget http://www.cacert.org/certs/class3.crt &&
openssl x509 -in root.crt -text -fingerprint -setalias "CAcert Class 1 root" \
-addtrust serverAuth -addtrust emailProtection -addtrust codeSigning \
> /etc/ssl/local/CAcert_Class_1_root.pem &&
openssl x509 -in class3.crt -text -fingerprint -setalias "CAcert Class 3 root" \
-addtrust serverAuth -addtrust emailProtection -addtrust codeSigning \
> /etc/ssl/local/CAcert_Class_3_root.pem &&
/usr/sbin/make-ca -r
Noen ganger kan det være tilfeller der du ikke er enig med
Mozillas inkludering av en bestemt sertifiseringsinstans.
Hvis du vil overstyre standardtilliten til en bestemt CA, lag
ganske enkelt en kopi av det eksisterende sertifikatet i
/etc/ssl/local med ulik
tillitsargumenter. For eksempel, hvis du ønsker å mistro
"Makebelieve_CA_Root" filen, kjør følgende kommandoer:
openssl x509 -in /etc/ssl/certs/Makebelieve_CA_Root.pem \
-text \
-fingerprint \
-setalias "Disabled Makebelieve CA Root" \
-addreject serverAuth \
-addreject emailProtection \
-addreject codeSigning \
> /etc/ssl/local/Disabled_Makebelieve_CA_Root.pem &&
/usr/sbin/make-ca -r
Når Python3 ble installert i LFS, inkluderte det pip3 modulen med forhandlersertifikater fra Certifi modulen. Det var nødvendig, men det betyr at når som helst pip3 brukes kan den referere til disse sertifikatene, først og fremst når du oppretter et virtuelt miljø eller når installere en modul med alle dens wheel avhengigheter på en gang.
Det anses generelt at systemadministratoren bør være ansvarlig for hvilke sertifikater som er tilgjengelige. Nå som make-ca-1.14 og p11-kit-0.25.5 har blitt installert og make-ca er konfigurert, er det mulig å få pip3 til å bruke systemsertifikatene.
Sertifikatene som er installert i LFS er et øyeblikksbilde fra når en trukket inn versjon av Certifi ble laget. Hvis du regelmessig oppdaterer systemsertifikatene, vil leverandørversjonen bli utdatert.
For å bruke systemsertifikatene i Python3, bør du sette _PIP_STANDALONE_CERT til å peke på dem, f.eks
for bash skallet:
export _PIP_STANDALONE_CERT=/etc/pki/tls/certs/ca-bundle.crt
Hvis du har laget virtuelle miljøer, for eksempel når du
tester moduler, og de inkluderer Requests og Certifi moduler i ~/.local/lib/python3.12/, da vil de
lokale modulene bli brukt i stedet for systemsertifikatene
med mindre du fjerner de lokale modulene.
For å bruke systemsertifikatene i Python3 med BLFS profilene, legg til følgende variabel til systemet eller personlig profil:
mkdir -pv /etc/profile.d &&
cat > /etc/profile.d/pythoncerts.sh << "EOF"
# Begin /etc/profile.d/pythoncerts.sh
export _PIP_STANDALONE_CERT=/etc/pki/tls/certs/ca-bundle.crt
# End /etc/profile.d/pythoncerts.sh
EOF
CrackLib pakken inneholder et bibliotek som brukes til å håndheve sterke passord ved å sammenligne valgte brukeres passord med ord i valgte ordlister.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/cracklib/cracklib/releases/download/v2.10.2/cracklib-2.10.2.tar.xz
Nedlasting MD5 sum: a99e0aef4c677df7063624690b634988
Nedlastingsstørrelse: 456 KB
Estimert diskplass som kreves: 5.0 MB
Estimert byggetid: mindre enn 0.1 SBU
Anbefalt ordliste for engelsktalende land (størrelse:
Nedlasting (HTTP): https://github.com/cracklib/cracklib/releases/download/v2.10.2/cracklib-words-2.10.2.xz
Nedlasting MD5 sum: f27804022dbf2682a7f7c353317f9a53
Nedlastingsstørrelse: 4.0 MB
Det er flere ordlister tilgjengelig for nedlasting, for eksempel fra https://wiki.skullsecurity.org/index.php/Passwords. CrackLib kan bruke så mange eller så få ordlister du velger å installere.
Brukere har en tendens til å basere passordene sine på vanlige ord fra det talte språk, og crackers vet det. CrackLib er ment å filtrere ut slike dårlige passord ved kilden ved å bruke en ordbok laget av ordlister. For å oppnå dette, ordliste(r) for bruk med CrackLib må være en uttømmende liste over ord og ordbaserte tastetrykkkombinasjoner brukere av systemet sannsynligvis velger som (gjettbare) passord.
Standardordlisten anbefalt ovenfor for nedlasting tilfredsstiller det meste denne rollen i engelsktalende land. I andre situasjoner, kan det være nødvendig å laste ned (eller til og med lage) flere ordlister.
Merk at ordlister som er egnet for stavekontroll ikke er brukbare som CrackLib ordlister i land med ikke-latinbaserte alfabeter, på grunn av “ordbaserte tastetrykk kombinasjoner” som lager dårlige passord.
Installer CrackLib ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--with-default-dict=/usr/lib/cracklib/pw_dict &&
make
Nå, som root bruker:
make install
Kjør følgende kommandoer som root brukeren for å installere anbefalt
ordliste og opprett CrackLib
ordbok. Andre ordlister (tekstbasert, ett ord per linje) kan
også brukes ved ganske enkelt å installere dem i /usr/share/dict og legger dem til
create-cracklib-dict
kommandoen.
install -v -m644 -D ../cracklib-words-2.10.2.xz \
/usr/share/dict/cracklib-words.xz &&
unxz -v /usr/share/dict/cracklib-words.xz &&
ln -v -sf cracklib-words /usr/share/dict/words &&
echo $(hostname) >> /usr/share/dict/cracklib-extra-words &&
install -v -m755 -d /usr/lib/cracklib &&
create-cracklib-dict /usr/share/dict/cracklib-words \
/usr/share/dict/cracklib-extra-words
Hvis ønskelig, kontroller at biblioteket fungerer som en uprivilegert bruker ved å kjøre følgende kommando:
make test
Hvis du installerer CrackLib etter at LFS systemet ditt er fullført og du har Shadow pakken installert, må du installere Shadow-4.16.0 på nytt hvis du ønsker å gi sterk passordstøtte på systemet ditt. Hvis du nå skal installere Linux-PAM-1.6.1 pakken, kan du se bort fra denne merknaden ettersom Shadow vil bli reinstallert etter Linux-PAM installasjonen.
--with-default-dict=/usr/lib/cracklib/pw_dict:
Denne parameteren tvinger installasjonen av CrackLib ordboken til /lib hierarkiet.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
install -v -m644 -D
...: Denne kommandoen oppretter /usr/share/dict mappen (hvis den ikke
eksisterer allerede) og installerer den komprimerte ordlisten
der.
ln -v -s cracklib-words
/usr/share/dict/words: ordliste er lenket til
/usr/share/dict/words,
historisk sett er words den
primære ordlisten i /usr/share/dict mappen. Utelate denne
kommandoen hvis du allerede har /usr/share/dict/words filen installert på
systemet ditt.
echo $(hostname)
>>...: Verdien av hostname er ekkoet til en
fil kalt cracklib-extra-words.
Denne ekstra filen er ment å være en nettstedsspesifikk liste
som inkluderer enkle å gjette passord som f.eks som firma-
eller avdelingsnavn, brukernavn, produktnavn, datamaskin
navn, domenenavn osv.
create-cracklib-dict ...: Denne kommandoen oppretter CrackLib ordbok fra ordlistene. Endre kommandoen for å legge til eventuelle ekstra ordlister du har installert.
|
brukes til å finne ut om et passord er sterkt |
|
|
brukes til å formatere tekstfiler (små bokstaver i alle ord, fjerner kontrolltegn og sorterer listene) |
|
|
oppretter en database med ord lest fra standard inndata |
|
|
viser på standard utdata den spesifiserte databasen |
|
|
brukes til å lage CrackLib ordbok fra gitte ordliste(r) |
|
|
gir en rask ordbokoppslagsmetode for sterk passordhåndhevelse |
cryptsetup brukes til å sette opp transparent kryptering av blokkenheter ved å bruke kjernens krypterings API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/cryptsetup/v2.7/cryptsetup-2.7.4.tar.xz
Nedlasting MD5 sum: 26ffe48f65d144af91b2a9639425d08c
Nedlastingsstørrelse: 11 MB
Estimated disk space required: 35 MB MB (legg til 5 MB for tester)
Estimert byggetid: 0.2 SBU (legg til 8.1 SBU for tester)
JSON-C-0.17, LVM2-2.03.26, og popt-1.19
asciidoctor-2.0.23, libpwquality-1.4.5, argon2, libssh, og passwdqc
Krypterte blokkenheter krever kjernestøtte. For å bruke det passende kjernekonfigurasjonsparametere må angis:
Device Drivers ---> [*] Multiple devices driver support (RAID and LVM) ---> [MD] <*/M> Device mapper support [BLK_DEV_DM] <*/M> Crypt target support [DM_CRYPT] -*- Cryptographic API ---> [CRYPTO] Block ciphers ---> <*/M> AES (Advanced Encryption Standard) [CRYPTO_AES] # For tests: <*/M> Twofish [CRYPTO_TWOFISH] Length-preserving ciphers and modes ---> <*/M> XTS (XOR Encrypt XOR with ciphertext stealing) [CRYPTO_XTS] Hashes, digests, and MACs ---> <*/M> SHA-224 and SHA-256 [CRYPTO_SHA256] Userspace interface ---> <*/M> Symmetric key cipher algorithms [CRYPTO_USER_API_SKCIPHER]
Installer cryptsetup ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-ssh-token \
--disable-asciidoc &&
make
For å teste resultatet, kjør som root bruker: make check. Noen tester vil
mislykkes hvis de riktige kjernekonfigurasjonsalternativene
ikke er satt. Noen tilleggsalternativer som kan være
nødvendige for tester er:
CONFIG_SCSI_LOWLEVEL,
CONFIG_SCSI_DEBUG,
CONFIG_BLK_DEV_DM_BUILTIN,
CONFIG_CRYPTO_USER,
CONFIG_CRYPTO_CRYPTD,
CONFIG_CRYPTO_LRW,
CONFIG_CRYPTO_XTS,
CONFIG_CRYPTO_ESSIV,
CONFIG_CRYPTO_CRCT10DIF,
CONFIG_CRYPTO_AES_TI,
CONFIG_CRYPTO_AES_NI_INTEL,
CONFIG_CRYPTO_BLOWFISH,
CONFIG_CRYPTO_CAST5,
CONFIG_CRYPTO_SERPENT,
CONFIG_CRYPTO_SERPENT_SSE2_X86_64,
CONFIG_CRYPTO_SERPENT_AVX_X86_64,
CONFIG_CRYPTO_SERPENT_AVX2_X86_64, and
CONFIG_CRYPTO_TWOFISH_X86_64
Nå, som root bruker:
make install
--disable-ssh-token:
Dette alternativet er nødvendig hvis den valgfrie libssh
avhengigheten ikke er installert.
--disable-asciidoc:
Denne bryteren deaktiverer regenerering av manualsidene.
Fjern denne bryteren hvis du har asciidoctor-2.0.23 installert og
ønsker å regenerer manualsidene. Vær oppmerksom på at selv om
denne bryteren brukes, de forhåndsgenererte manualsidene
sendes i tarballen, og de vil fortsatt være installert.
På grunn av antall mulige konfigurasjoner, oppsett av krypterte volumer ligger utenfor BLFS bokens omfang. Vennligst se konfigurasjonsveiledning i cryptsetup FAQ.
|
brukes til å konfigurere dm-crypt administrerte enhets mappetilordninger |
|
|
er et verktøy for frakoblet LUKS enhets rekryptering |
|
|
er et verktøy for å administrere dm-integrity (blokknivåintegritet) volumer |
|
|
brukes til å konfigurere dm-verity administrerte enhetsmappe tilordninger. Enhetskartlegging verifiseringsmål gir skrivebeskyttet transparent integritets kontroll av blokkenheter ved hjelp av kjernekrypterings API |
Cyrus SASL pakken inneholder en enkel autentiserings og sikkerhetslags implementering, en metode for å legge til autentiseringsstøtte til tilkoblingsbaserte protokoller. For å bruke SASL, protokollen inkluderer en kommando for å identifisere og autentisere en bruker til en server og for eventuelt å forhandle beskyttelse av etterfølgende protokoll interaksjoner. Hvis bruken er forhandlet, settes et sikkerhetslag inn mellom protokollen og forbindelsen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/cyrusimap/cyrus-sasl/releases/download/cyrus-sasl-2.1.28/cyrus-sasl-2.1.28.tar.gz
Nedlasting MD5 sum: 6f228a692516f5318a64505b46966cfa
Nedlastingsstørrelse: 3.9 MB
Estimert diskplass som kreves: 28 MB
Estimert byggetid: 0.2 SBU
Linux-PAM-1.6.1, MIT Kerberos V5-1.21.3, MariaDB-10.11.8 eller MySQL, OpenLDAP-2.6.8, PostgreSQL-16.4, sphinx-8.0.2, SQLite-3.46.1, Berkeley DB (deprecated), krb4, Dmalloc, og Pod::POM::View::Restructured
Denne pakken støtter ikke parallellbygging.
Først, fikse et problem avslørt av gcc-14:
sed '/saslint/a #include <time.h>' -i lib/saslutil.c && sed '/plugin_common/a #include <time.h>' -i plugins/cram.c
Installer Cyrus SASL ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-auth-sasldb \
--with-dblib=lmdb \
--with-dbpath=/var/lib/sasl/sasldb2 \
--with-sphinx-build=no \
--with-saslauthd=/var/run/saslauthd &&
make -j1
Denne pakken kommer ikke med en testpakke. Hvis du planlegger bruk av GSSAPI autentiseringsmekanismen, test det etter å ha installert pakken ved å bruke eksempelserveren og klient programmet som ble bygget i det foregående trinnet. Instruksjoner for å utføre testene finner du på https://www.linuxfromscratch.org/hints/downloads/files/cyrus-sasl.txt.
Nå, som root bruker:
make install && install -v -dm755 /usr/share/doc/cyrus-sasl-2.1.28/html && install -v -m644 saslauthd/LDAP_SASLAUTHD /usr/share/doc/cyrus-sasl-2.1.28 && install -v -m644 doc/legacy/*.html /usr/share/doc/cyrus-sasl-2.1.28/html && install -v -dm700 /var/lib/sasl
--with-dbpath=/var/lib/sasl/sasldb2:
Denne bryteren tvinger sasldb database å bli
opprettet i /var/lib/sasl i
stedet for /etc.
--with-saslauthd=/var/run/saslauthd:
Denne bryteren tvinger saslauthd å bruke FHS
kompatibel mappe /var/run/saslauthd for variable
kjøretidsdata.
--enable-auth-sasldb:
Denne bryteren aktiverer SASLDB autentiseringsbakstykke.
--with-dblib=gdbm: Denne bryteren
tvinger at GDBM skal brukes
i stedet for LMDB.
--with-ldap: Denne bryteren
aktiverer OpenLDAP støtte.
--enable-ldapdb: Denne bryteren
aktiverer LDAPDB autentiseringsbakstykke.
--enable-login: Dette
alternativet aktiverer ustøttet LOGIN autentisering.
--enable-ntlm: Dette alternativet
aktiverer ustøttet NTLM autentisering.
install -v -m644 ...: Disse kommandoene installer dokumentasjon som ikke er installert av make install kommandoen.
install -v -m700 -d /var/lib/sasl: Denne mappen må eksistere ved oppstart av saslauthd eller ved bruk av sasldb programtillegget. Hvis du ikke skal kjøre nissen eller bruke programtillegg, kan du utelate opprettelsen av denne katalogen.
/etc/saslauthd.conf (for
saslauthd
LDAP konfigurasjon) og /etc/sasl2/Appnavn.conf (hvor "Appnavn"
er det applikasjonsdefinerte navnet på applikasjonen)
Se https://www.cyrusimap.org/sasl/sasl/sysadmin.html for informasjon om hva som skal inkluderes i programkonfigurasjonsfilene.
Se file:///usr/share/doc/cyrus-sasl-2.1.28/LDAP_SASLAUTHD for å konfigurere saslauthd med OpenLDAP.
Se https://www.cyrusimap.org/sasl/sasl/gssapi.html#gssapi for å konfigurere saslauthd med Kerberos.
Hvis du trenger å kjøre saslauthd nissen ved
systemets oppstart, installer saslauthd.service enheten inkludert i
blfs-systemd-units-20240801 pakken
ved å bruke følgende kommando:
make install-saslauthd
Du må modifiserer /etc/default/saslauthd og modifiserer
MECHANISM parameter med
ønsket autentiseringsmekanisme. Standard autentisering mekanisme er
"shadow".
|
brukes til å liste opp lastbare SASL programtillegg og deres egenskaper |
|
|
er SASL autentiseringsserveren |
|
|
brukes til å liste brukerne i SASL passorddatabasen
|
|
|
brukes til å angi og slette en brukers SASL passord
og mekanismespesifikke hemmeligheter i SASL
passordets database |
|
|
er et testverktøy for SASL autentiseringsserveren |
|
|
er en generell autentiseringsbibliotek for server og klientapplikasjoner |
GnuPG pakken er GNU sitt verktøy for sikker kommunikasjon og datalagring. Den kan brukes til å kryptere data og å lage digitale signaturer. Den inkluderer en avansert nøkkelstyringsadministrasjon og er i samsvar med den foreslåtte OpenPGP Internett standarden som beskrevet i RFC2440 og S/MIME-standarden som beskrevet av flere RFCer. GnuPG 2 er den stabile versjonen av GnuPG som integrerer støtte for OpenPGP og S/MIME.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/gnupg/gnupg-2.4.5.tar.bz2
Nedlasting MD5 sum: 49c3534e87744e994250d37c1b43f928
Nedlastingsstørrelse: 7.6 MB
Estimert diskplass som kreves: 164 MB (med tester)
Estimert byggetid: 1.2 SBU (med tester; bruke parallellisme=4)
libassuan-3.0.1, libgcrypt-1.11.0, libksba-1.6.7, npth-1.7 og OpenLDAP-2.6.8
GnuTLS-3.8.7.1 (kreves for å kommunisere med nøkkelservere ved å bruke https- eller hkps-protokollen) og pinentry-1.3.1 (Kjøretidskrav for de fleste pakkens funksjonalitet)
cURL-8.9.1, Fuse-3.16.2, ImageMagick-7.1.1-36 (for convert verktøyet, brukes til å generere dokumentasjonen), libusb-1.0.27, en MTA, SQLite-3.46.1, texlive-20240312 (or install-tl-unx), fig2dev (for å generere dokumentasjonen), og GNU adns
Installer GnuPG ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
../configure --prefix=/usr \
--localstatedir=/var \
--sysconfdir=/etc \
--docdir=/usr/share/doc/gnupg-2.4.5 &&
make &&
makeinfo --html --no-split -I doc -o doc/gnupg_nochunks.html ../doc/gnupg.texi &&
makeinfo --plaintext -I doc -o doc/gnupg.txt ../doc/gnupg.texi &&
make -C doc html
Hvis du har texlive-20240312 installert og du ønsker å lage dokumentasjon i pdf formatet, utsted følgende kommando:
make -C doc pdf
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install &&
install -v -m755 -d /usr/share/doc/gnupg-2.4.5/html &&
install -v -m644 doc/gnupg_nochunks.html \
/usr/share/doc/gnupg-2.4.5/html/gnupg.html &&
install -v -m644 ../doc/*.texi doc/gnupg.txt \
/usr/share/doc/gnupg-2.4.5 &&
install -v -m644 doc/gnupg.html/* \
/usr/share/doc/gnupg-2.4.5/html
Hvis du opprettet pdf formatet for dokumentasjonen, installer
dem ved å bruke følgende kommando som root bruker:
install -v -m644 doc/gnupg.pdf \
/usr/share/doc/gnupg-2.4.5
mkdir build && cd build: Gnupg2 utviklere anbefaler å bygge pakken i en dedikert mappe.
--docdir=/usr/share/doc/gnupg-2.4.5:
Denne bryteren endrer standard docdir til /usr/share/doc/gnupg-2.4.5.
--enable-all-tests: Denne
bryteren tillater flere tester å kjøre med make check.
--enable-g13: Denne bryteren gjør
det mulig å bygge g13 programmet.
|
brukes til å opprette og fylle ut en brukers
|
|
|
er et innpakningsskript som brukes til å kjøre
gpgconf med
|
|
|
er et verktøy som tar seg av tilgang til OpenPGP nøkkelservere |
|
|
er et verktøy for å kontakte en kjørende dirmngr og teste om et sertifikatet er tilbakekalt |
|
|
er et verktøy for å opprette, montere eller avmontere et kryptert filsystem sin beholder (valgfritt) |
|
|
er en nisse som brukes til å administrere hemmelige (private) nøkler uavhengig fra enhver protokoll. Den brukes som bakstykke for gpg og gpgsm i tillegg til til et par andre verktøy |
|
|
er et verktøy for å administrere smartkort og symboler |
|
|
er et verktøy som brukes til å kommunisere med en kjørende gpg-agent |
|
|
er OpenPGP delen av GNU Privacy Guard (GnuPG). Det er et verktøy som brukes til å tilby digital kryptering og signeringstjenester ved hjelp av OpenPGP standarden |
|
|
er et verktøy som brukes til å automatisk og
rimelig sikkert spørre og endre konfigurasjonsfiler
i |
|
|
er et verktøy som for øyeblikket bare er nyttig for
feilsøking. Kjør den med |
|
|
kjører det gitte skjemaprogrammet eller skaper et interaktivt skall |
|
|
er et verktøy som ligner på gpg brukes til å gi digital kryptering og signeringstjenester på X.509 sertifikater og CMS protokollen. Den brukes hovedsakelig som bakstykke for S/MIME postbehandling |
|
|
deler en OpenPGP melding i pakker |
|
|
er et verktøy for å kryptere eller signere filer i et arkiv |
|
|
er en verifiser bare versjon av gpg |
|
|
er en klient for Web Key Service protokollen |
|
|
gir en server for Web Key Service protokollen |
|
|
brukes til å liste, eksportere og importere Keybox data |
|
|
brukes til å lytte til en Unix Domain socket opprettet av noen GnuPG verktøy |
GnuTLS pakken inneholder biblioteker og brukerromsverktøy som gir et sikkert lag over et pålitelig transport lag. For tiden GnuTLS biblioteket implementerer de foreslåtte standardene av IETFs TLS arbeidsgruppe. Siterer fra TLS 1.3 protokollspesifikasjon :
“ TLS lar klient/server-applikasjoner kommunisere over Internett på en måte som er utformet for å forhindre avlytting, tukling og meldingsforfalskning. ”
GnuTLS gir støtte for TLS 1.3, TLS 1.2, TLS 1.1, TLS 1.0 og (valgfritt) SSL 3.0-protokoller. Den støtter også TLS utvidelser, inkludert servernavn og maksimal poststørrelse. I tillegg, støtter biblioteket autentisering ved hjelp av SRP protokollen, X.509 sertifikater og OpenPGP nøkler, sammen med støtte for TLS Pre-Shared-Keys (PSK) utvidelse, den indre applikasjonen (TLS/IA) utvidelse, og X.509 og OpenPGP sertifikathåndtering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/gnutls/v3.8/gnutls-3.8.7.1.tar.xz
Nedlasting MD5 sum: 46777802233eb7203d47a8b8880c8c90
Nedlastingsstørrelse: 6.4 MB
Estimert diskplass som kreves: 154 MB (legg til 115 MB for tester)
Estimert byggetid: 0.5 SBU (legg til 1.5 SBU for tester; begge bruker parallellisme=8)
Når du pakker ut denne pakkens tarball, pakker den ut til gnutls-3.8.7 mappen, i stedet for den forventede gnutls-3.8.7.1 mappen.
make-ca-1.14, libunistring-1.2, libtasn1-4.19.0, og p11-kit-0.25.5
Brotli-1.1.0, Doxygen-1.12.0, GTK-Doc-1.34.0, libidn-1.42 eller libidn2-2.3.7, libseccomp-2.5.5, Net-tools-2.10 (brukt under testpakken), texlive-20240312 eller install-tl-unx, Unbound-1.21.0 (for å bygge DANE biblioteket), Valgrind-3.23.0 (brukt under testpakken), autogen, cmocka og datefudge (brukt under testpakken hvis DANE bibliteket er bygget), og Trousers (Trusted Platform Module støtte)
Merk at hvis du ikke installerer libtasn1-4.19.0, en versjon sendt i GnuTLS tarballen blir brukt i stedet.
Installer GnuTLS ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--docdir=/usr/share/doc/gnutls-3.8.7.1 \
--with-default-trust-store-pkcs11="pkcs11:" &&
make
En test henger testprosedyren. Deaktiver den: sed '/ocsp-must-staple-connection/d' -i tests/Makefile. For å teste resultatene, utsted nå: make check.
Installer nå pakken som root
bruker:
make install
--with-default-trust-store-pkcs11="pkcs11:":
Denne bryteren ber gnutls om å bruke PKCS #11 tillitslageret
som standard tillit. Utelat denne bryteren hvis p11-kit-0.25.5 ikke er installert.
--with-default-trust-store-file=/etc/pki/tls/certs/ca-bundle.crt:
Denne bryteren forteller configure hvor man finner
eldre CA sertifikatbunter og bruke den i stedet for PKCS #11
modulen som standard. Bruk denne hvis p11-kit-0.25.5 ikke er
installert.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
--enable-openssl-compatibility:
Bruk denne bryteren hvis du ønsker å bygge OpenSSL
kompatibilitetsbiblioteket.
--without-p11-kit: bruk denne
bryteren hvis du ikke har installert p11-kit.
--with-included-unistring: bruker
den medfølgende versjonen av libunistring, i stedet for
systems. Bruk denne bryteren hvis du ikke har installert
libunistring-1.2.
--disable-dsa: deaktiverer støtte
for DSA algoritme fullstendig.
|
brukes til å generere X.509 sertifikater, sertifikatforespørsler, og private nøkler |
|
|
er et verktøy som brukes til å generere og sjekke DNS-ressursposter for DANE protokollen |
|
|
er et enkelt klientprogram for å sette opp en TLS tilkobling til en annen datamaskin |
|
|
er et enkelt klientprogram for å sette opp en TLS-tilkobling til en annen datamaskin og gir svært detaljerte fremdriftsresultater |
|
|
er et enkelt serverprogram som lytter til innkommende TLS forbindelser |
|
|
er et program som kan analysere og skrive ut informasjon om OCSP forespørsler/svar, generere forespørsler og verifisere svar |
|
|
er et program som tillater håndtering av data fra PKCS #11 smartkort og sikkerhetsmoduler |
|
|
er et enkelt program som genererer tilfeldige nøkler for bruk med TLS-PSK |
|
|
er et enkelt program som emulerer programmene i Stanford SRP biblioteker (Secure Remote Password) som bruker GnuTLS |
|
|
inneholder kjerne API funksjonene og X.509 sertifikat API funksjonene |
GPGME pakken er et C bibliotek som lar kryptografistøtte legges til et program. Den er designet for å gi tilgang til offentlig nøkkelkrypto motorer som GnuPG eller GpgSM lettere for applikasjoner. GPGME gir et høyt nivå krypto API for kryptering, dekryptering, signering, signaturverifisering og nøkkelhåndtering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/gpgme/gpgme-1.23.2.tar.bz2
Nedlasting MD5 sum: 01a8c05b409847e87daf0543e91f8c37
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 260 MB (med tester)
Estimert byggetid: 1.0 SBU (med alle bindinger og tester; med parallellitet=4)
Doxygen-1.12.0 og Graphviz-12.1.0 (for API dokumentasjon), GnuPG-2.4.5 (nødvendig hvis Qt eller SWIG er installert; brukt under testpakken), Clisp-2.49, qt5-components-5.15.14, og SWIG-4.2.1 (for språkbindinger)
Installer GPGME ved å kjøre følgende kommandoer:
mkdir build && cd build && ../configure --prefix=/usr --disable-gpg-test && make PYTHONS=
Hvis SWIG-4.2.1 er installert, bygg Python 3 bindingen som et wheel:
if swig -version > /dev/null; then srcdir=$PWD/../lang/python \ top_builddir=$PWD \ pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD/lang/python fi
For å teste resultatene, bør du ha GnuPG-2.4.5 installert og
fjerne --disable-gpg-test
ovenfor. Hvis SWIG-4.2.1 er installert, er det nødvendig å
tilpasse testpakken for å bruke Python 3 bindingen bare
bygget som et wheel også. Utsted:
if swig -version > /dev/null; then
python3 -m venv testenv &&
testenv/bin/pip3 install --no-index --find-links=dist --no-cache-dir \
gpg &&
sed '/PYTHON/s#run-tests.py#& --python-libdir=/dev/null#' \
-i lang/python/tests/Makefile
fi &&
make -k check PYTHONS= PYTHON=$PWD/testenv/bin/python3
En test navngitt t-quick-key-manipulation.py er kjent for å
mislykkes.
Nå, som root bruker:
make install PYTHONS=
Hvis SWIG-4.2.1 er installert, fortsatt som
root bruker, installer Python
3 bindinger:
if swig -version > /dev/null; then pip3 install --no-index --find-links=dist --no-cache-dir --no-user gpg fi
--disable-gpg-test:
hvis denne parameteren ikke er sendt til configure, bygges
testprogrammene under make steget, som krever
GnuPG-2.4.5. Denne parameteren er ikke
nødvendig hvis GnuPG-2.4.5 er installert.
PYTHONS=: Deaktiver
bygging av Python bindinger ved å bruke det foreldede
python3 setup.py
build kommando. Den eksplisitte instruksjonen
for å bygge Python 3 bindingen med pip3 wheel kommandoen er
gitt.
|
sender GPGME kommandoer i JSON format |
|
|
er en assuan server som avslører GPGME operasjoner, slik som å skrive ut fingeravtrykk og nøkkelkoder med nøkkelservere |
|
|
inneholder GPGME API funksjoner |
|
|
inneholder C++ GPGME API funksjoner |
|
|
inneholder API funksjoner for å håndtere GPG operasjoner i Qt applikasjoner |
iptables er et kommandolinjeprogram for brukerområdet som brukes til å konfigurere Linux 2.4 og nyere regelsett for kjernepakkefiltrering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.netfilter.org/projects/iptables/files/iptables-1.8.10.tar.xz
Nedlasting MD5 sum: 5eaa3bb424dd3a13c98c0cb026314029
Nedlastingsstørrelse: 628 KB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 SBU
libpcap-1.10.4 (kreves for BPFkompilator eller nfsynproxy støtte), bpf-utils (kreves for støtte for Berkeley Packet Filter), libnfnetlink (kreves for connlabel støtte), libnetfilter_conntrack (kreves for connlabel støtte), og nftables
En brannmur i Linux oppnås gjennom netfilter grensesnittet. For å bruke iptables til å konfigurere netfilter Følgende kjernekonfigurasjonsparametere kreves:
[*] Networking support ---> [NET] Networking options ---> [*] Network packet filtering framework (Netfilter) ---> [NETFILTER] [*] Advanced netfilter configuration [NETFILTER_ADVANCED] Core Netfilter Configuration ---> <*/M> Netfilter connection tracking support [NF_CONNTRACK] <*/M> Netfilter Xtables support (required for ip_tables) ... [NETFILTER_XTABLES] <*/M> LOG target support [NETFILTER_XT_TARGET_LOG] IP: Netfilter Configuration ---> <*/M> IP tables support (required for filtering/masq/NAT) ... [IP_NF_IPTABLES]
Inkluder eventuelle tilkoblingssporingsprotokoller som vil bli brukt, så vel som eventuelle protokoller du ønsker å bruke for matchende støtte under "Core Netfilter Configuration" delen. Alternativene ovenfor er nok for kjøre Opprette en Personlig Brannmur med iptables under.
Installasjonen nedenfor inkluderer ikke å bygge noen
spesialiserte utvidelsesbiblioteker som krever de rå
deklarasjonene i Linux
kildekoden. Hvis du ønsker å bygge ekstra utvidelser (hvis
du ikke er sikker, så trenger du sannsynligvis ikke det),
du kan se på INSTALL filen
for å se et eksempel på hvordan å endre KERNEL_DIR= parameteren til å
peke på Linux kildekoden.
Merk at hvis du oppgradere kjerneversjonen, kan det hende
at du også må kompilere iptables på nytt og at BLFS teamet
ikke har testet ved hjelp av rå kjernedeklarasjoner.
Installer iptables ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-nftables \
--enable-libipq &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-nftables:
Denne bryteren deaktiverer bygging av nftables
kompatibilitet.
--enable-libipq:
Denne bryteren gjør det mulig å bygge libipq.so som kan brukes av noen pakker
utenfor BLFS.
--enable-nfsynproxy: Denne
bryteren muliggjør installasjon av nfsynproxy SYNPROXY
konfigurasjonsverktøy.
I følgende eksempelkonfigurasjoner, LAN1 brukes for det interne LAN grensesnittet, og WAN1 brukes til det ytre grensesnittet koblet til Internett. Du må erstatte disse verdiene med passende grensesnittnavn for systemet ditt.
En Personlig Brannmur er designet for å gi deg tilgang til alle tjenester som tilbys på Internett mens du holder datamaskinen sikker og dataene dine private.
Nedenfor er en litt modifisert versjon av Rusty Russells anbefaling fra Linux 2.4 Packet Filtering HOWTO. Det gjelder fortsatt for Linux 6.x kjernene.
install -v -dm755 /etc/systemd/scripts
cat > /etc/systemd/scripts/iptables << "EOF"
#!/bin/sh
# Begin /etc/systemd/scripts/iptables
# Insert connection-tracking modules
# (not needed if built into the kernel)
modprobe nf_conntrack
modprobe xt_LOG
# Enable broadcast echo Protection
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# Disable Source Routed Packets
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo 0 > /proc/sys/net/ipv4/conf/default/accept_source_route
# Enable TCP SYN Cookie Protection
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
# Disable ICMP Redirect Acceptance
echo 0 > /proc/sys/net/ipv4/conf/default/accept_redirects
# Do not send Redirect Messages
echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects
echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects
# Drop Spoofed Packets coming in on an interface, where responses
# would result in the reply going out a different interface.
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
# Log packets with impossible addresses.
echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
echo 1 > /proc/sys/net/ipv4/conf/default/log_martians
# be verbose on dynamic ip-addresses (not needed in case of static IP)
echo 2 > /proc/sys/net/ipv4/ip_dynaddr
# disable Explicit Congestion Notification
# too many routers are still ignorant
echo 0 > /proc/sys/net/ipv4/tcp_ecn
# Set a known state
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
# These lines are here in case rules are already in place and the
# script is ever rerun on the fly. We want to remove all rules and
# pre-existing user defined chains before we implement new rules.
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
# Allow local-only connections
iptables -A INPUT -i lo -j ACCEPT
# Free output on any interface to any ip for any service
# (equal to -P ACCEPT)
iptables -A OUTPUT -j ACCEPT
# Permit answers on already established connections
# and permit new connections related to established ones
# (e.g. port mode ftp)
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# Log everything else.
iptables -A INPUT -j LOG --log-prefix "FIREWALL:INPUT "
# End /etc/systemd/scripts/iptables
EOF
chmod 700 /etc/systemd/scripts/iptables
Dette skriptet er ganske enkelt, det dropper all trafikk som kommer inn til datamaskinen din som ikke ble startet fra datamaskinen din, men så lenge du bare surfer på Internett er det usannsynlig at du overskride sine grenser.
Hvis du ofte møter visse forsinkelser ved tilgang til FTP servere, ta en titt på BusyBox with iptables example number 4.
Selv om du har nisser eller tjenester som kjører på systemet ditt, vil disse være utilgjengelige overalt bortsett fra datamaskinen selv. Hvis du vil tillate tilgang til tjenester på maskinen din, som f.eks ssh eller ping, se på Opprette BusyBox med iptables.
En nettverksbrannmur har to grensesnitt, ett koblet til et intranett, i dette eksemplet LAN1, og en koblet til Internett, her WAN1. For å gi maksimal sikkerhet for selve brannmuren, sørg for at det ikke er unødvendige servere som kjører på den, f.eks X11. Som et generelt prinsipp skal selve brannmuren ikke ha tilgang til enhver upålitelig tjeneste (tenk på en ekstern server som gir et svar som får en nisse på systemet til å krasjer, eller enda verre, som implementerer en orm via et buffer-overflow.
install -v -dm755 /etc/systemd/scripts
cat > /etc/systemd/scripts/iptables << "EOF"
#!/bin/sh
# Begin /etc/systemd/scripts/iptables
echo
echo "You're using the example configuration for a setup of a firewall"
echo "from Beyond Linux From Scratch."
echo "This example is far from being complete, it is only meant"
echo "to be a reference."
echo "Firewall security is a complex issue, that exceeds the scope"
echo "of the configuration rules below."
echo "You can find additional information"
echo "about firewalls in Chapter 4 of the BLFS book."
echo "https://www.linuxfromscratch.org/blfs"
echo
# Insert iptables modules (not needed if built into the kernel).
modprobe nf_conntrack
modprobe nf_conntrack_ftp
modprobe xt_conntrack
modprobe xt_LOG
modprobe xt_state
# Enable broadcast echo Protection
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# Disable Source Routed Packets
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
# Enable TCP SYN Cookie Protection
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
# Disable ICMP Redirect Acceptance
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects
# Don't send Redirect Messages
echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects
# Drop Spoofed Packets coming in on an interface where responses
# would result in the reply going out a different interface.
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
# Log packets with impossible addresses.
echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
# Be verbose on dynamic ip-addresses (not needed in case of static IP)
echo 2 > /proc/sys/net/ipv4/ip_dynaddr
# Disable Explicit Congestion Notification
# Too many routers are still ignorant
echo 0 > /proc/sys/net/ipv4/tcp_ecn
# Set a known state
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
# These lines are here in case rules are already in place and the
# script is ever rerun on the fly. We want to remove all rules and
# pre-existing user defined chains before we implement new rules.
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
# Allow local connections
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# Allow forwarding if the initiated on the intranet
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD ! -i WAN1 -m conntrack --ctstate NEW -j ACCEPT
# Do masquerading
# (not needed if intranet is not using private ip-addresses)
iptables -t nat -A POSTROUTING -o WAN1 -j MASQUERADE
# Log everything for debugging
# (last of all rules, but before policy rules)
iptables -A INPUT -j LOG --log-prefix "FIREWALL:INPUT "
iptables -A FORWARD -j LOG --log-prefix "FIREWALL:FORWARD "
iptables -A OUTPUT -j LOG --log-prefix "FIREWALL:OUTPUT "
# Enable IP Forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# The following sections allow inbound packets for specific examples
# Uncomment the example lines and adjust as necessary
# Allow ping on the external interface
#iptables -A INPUT -p icmp -m icmp --icmp-type echo-request -j ACCEPT
#iptables -A OUTPUT -p icmp -m icmp --icmp-type echo-reply -j ACCEPT
# Reject ident packets with TCP reset to avoid delays with FTP or IRC
#iptables -A INPUT -p tcp --dport 113 -j REJECT --reject-with tcp-reset
# Allow HTTP and HTTPS to 192.168.0.2
#iptables -A PREROUTING -t nat -i WAN1 -p tcp --dport 80 -j DNAT --to 192.168.0.2
#iptables -A PREROUTING -t nat -i WAN1 -p tcp --dport 443 -j DNAT --to 192.168.0.2
#iptables -A FORWARD -p tcp -d 192.168.0.2 --dport 80 -j ACCEPT
#iptables -A FORWARD -p tcp -d 192.168.0.2 --dport 443 -j ACCEPT
# End /etc/systemd/scripts/iptables
EOF
chmod 700 /etc/systemd/scripts/iptables
Med dette skriptet skal intranettet ditt være rimelig sikkert mot ytre angrep. Ingen skal kunne sette opp en ny tilkobling til en hvilken som helst intern tjeneste, og hvis den er maskert, gjør intranettet ditt usynlig for Internett. Videre, brannmuren din skal være relativt trygg fordi det ikke finnes noen tjenester som kjører som en angriper kunne angripe.
Dette scenariet er ikke så forskjellig fra Opprette Maskering av Ruter med iptables, men tilbyr i tillegg noen tjenester til intranettet ditt. Eksempler på dette kan være når du ønsker å administrere brannmuren fra en annen vert på intranettet ditt eller bruke det som en proxy eller en navneserver.
Å skisserer spesifikt hvordan du beskytter en server som tilbyr tjenester på Internett går langt utover omfanget av dette dokumentet. Se referansene i the section called “Ekstra Informasjon” for mer informasjon.
Vær forsiktig. Hver tjeneste du har aktivert gjør oppsettet ditt mer komplekst og brannmuren din mindre sikker. Du er utsatt for risikoen for feilkonfigurerte tjenester eller kjører en tjeneste med en utnyttbar feil. En brannmur bør generelt ikke kjøre noen ekstra tjenester. Se introduksjonen til Opprette Maskering av Ruter med iptables for flere detaljer.
Hvis du ønsker å legge til tjenester som intern Samba eller navneservere som ikke trenger tilgang til Internett selv, tilleggsutsagnene er ganske enkle og bør fortsatt være akseptabelt fra et sikkerhetssynspunkt. Bare legg til følgende linjer inn i skriptet før loggingsreglene.
iptables -A INPUT -i ! WAN1 -j ACCEPT
iptables -A OUTPUT -o ! WAN1 -j ACCEPT
Hvis nisser, for eksempel squid, må få tilgang til Internett, kan du åpne OUTPUT generelt og begrense INPUT.
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -j ACCEPT
Det er imidlertid generelt ikke tilrådelig å forlate OUTPUT ubegrenset. Du mister all kontroll over trojanere som vil "ringe hjem", og litt redundans i tilfelle du har (feil-)konfigurert en tjeneste slik at den kringkaster dens eksistens til verden.
For å oppnå dette bør du begrense INPUT og OUTPUT på alle porter unntatt de som er absolutt nødvendig å ha åpen. Hvilke porter du må åpne avhenger av dine behov: stort sett finner du dem ved å se etter mislykkede tilganger i loggfilene dine.
Ta en Titt på Følgende Eksempler:
Squid mellomlagrer nettet:
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED \
-j ACCEPT
Din mellomlagrings navneserver (f.eks. named) gjør sine oppslag via UDP:
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
Du vil ha mulighet å pinge datamaskinen for å sikre at den fortsatt er i live:
iptables -A INPUT -p icmp -m icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp -m icmp --icmp-type echo-reply -j ACCEPT
Hvis du ofte bruker FTP servere eller liker å chatte, kan du merke forsinkelser fordi noen implementeringer av disse nissene spør en identd nisse på systemet ditt for å få brukernavn. Selv om det egentlig er lite skade i dette, å ha en identd kjørende er ikke anbefalt fordi mange sikkerhetseksperter føler tjenesten gir ut for mye tilleggsinformasjon.
For å unngå disse forsinkelsene kan du avvise forespørslene med et 'tcp-reset' svar:
iptables -A INPUT -p tcp --dport 113 -j REJECT --reject-with tcp-reset
For å logge og droppe ugyldige pakker (pakker som kom inn etter netfilters tidsavbrudd eller noen typer nettverksskanninger) sett inn disse reglene øverst i kjeden:
iptables -I INPUT 0 -p tcp -m conntrack --ctstate INVALID \
-j LOG --log-prefix "FIREWALL:INVALID "
iptables -I INPUT 1 -p tcp -m conntrack --ctstate INVALID -j DROP
Alt som kommer utenfra skal ikke ha en privat adresse, dette er et vanlig angrep kalt IP-spoofing:
iptables -A INPUT -i WAN1 -s 10.0.0.0/8 -j DROP
iptables -A INPUT -i WAN1 -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i WAN1 -s 192.168.0.0/16 -j DROP
Det er andre adresser du kanskje også vil droppe: 0.0.0.0/8, 127.0.0.0/8, 224.0.0.0/3 (multicast og eksperimentell), 169.254.0.0/16 (Koble til lokale nettverk), og 192.0.2.0/24 (IANA definert testnettverk).
Hvis brannmuren din er en DHCP klient, må du tillate disse pakkene:
iptables -A INPUT -i WAN1 -p udp -s 0.0.0.0 --sport 67 \
-d 255.255.255.255 --dport 68 -j ACCEPT
For å forenkle feilsøking og være rettferdig mot alle som vil ha tilgang til en tjeneste du har deaktivert, med vilje eller ved en feiltakelse, du kan AVVISE (REJECT) de pakkene som blir droppet.
Åpenbart må dette gjøres direkte etter logging på siste linjer før pakkene droppes av retningslinjer::
iptables -A INPUT -j REJECT
Dette er bare eksempler for å vise deg noen av egenskapene
til brannmurkoden i Linux. Ta en titt på mansiden til
iptables. Der finner du mye mer informasjon. Portnumrene
som trengs for dette finner du i /etc/services, i tilfelle du ikke fant
dem ved prøving og feiling i loggfilen din.
For å sette opp iptables brannmuren ved oppstart, installer
iptables.service enheten
inkludert i blfs-systemd-units-20240801
pakken.
make install-iptables
|
brukes til å sette opp, vedlikeholde og inspisere tabellene til IP pakkefilterregler i Linux kjernen |
|
|
er en tryggere måte å oppdatere iptables eksternt |
|
|
brukes til å samhandle med iptables ved å bruke det gamle kommandosettet |
|
|
brukes til å gjenopprette et sett med eldre iptables regler |
|
|
brukes til å lagre et sett med eldre iptables regler |
|
|
brukes til å gjenopprette IP-tabeller fra data spesifisert på STDIN. Bruk I/O omdirigering levert av ditt skall for å lese fra en filen |
|
|
brukes til å enkelt dumpe innholdet i en IP tabell parsebart format til STDOUT. Bruk I/O omdirigering levert av skallet ditt for å skrive til en fil |
|
|
brukes til å konvertere utdataene til iptables-save til
et XML format. Å bruke |
|
|
er et sett med kommandoer for IPV6 som er parallelle med iptables kommandoene ovenfor |
|
|
(valgfritt) konfigurasjonsverktøy. SYNPROXY mål gjør håndtering av store SYN flommer mulig uten de store ytelsesstraffene pålagt av tilkoblingssporingen i slike tilfeller |
|
|
er en binær som oppfører seg i henhold til navnet sitt |
Formålet med en brannmur er å beskytte en datamaskin eller et nettverk mot ondsinnet tilgang. I en perfekt verden hver nisse eller tjeneste, på hver maskin, er perfekt konfigurert og immun mot sikkerhetsfeil og alle brukere er implisitt klarert til å bruke utstyret som tiltenkt. Derimot, dette er sjelden eller aldri tilfelle. Nisser kan være feilkonfigurert, eller oppdateringer kan ikke ha blitt brukt for kjente utnyttelser mot essensielle tjenester. I tillegg kan det være lurt å velge hvilke tjenester som er tilgjengelig for visse maskiner eller brukere, eller du vil kanskje begrense hvilke maskiner eller applikasjoner som er tillatt ekstern tilgang. Alternativt kan du ganske enkelt ikke stole på noen av programmene eller brukerne dine. For disse grunner bør en nøye utformet brannmur være en viktig del av systemsikkerheten.
Selv om en brannmur i stor grad kan begrense omfanget av problemene ovenfor, ikke anta at det å ha en brannmur gjør nøye konfigurasjon overflødig, eller at enhver uaktsom feilkonfigurasjon er ufarlig. En brannmur forhindrer ikke utnyttelse av enhver tjeneste du tilbyr utenfor den. På tross av å ha en brannmur, må du holde applikasjoner og nisser riktig konfigurert og oppdatert.
Ordet brannmur kan ha flere forskjellige betydninger.
Dette er en maskinvareenhet eller programvare, beregnet på å sikre en hjemme- eller stasjonær datamaskin koblet til Internett. Denne typen brannmur er svært relevant for brukere som ikke vet hvordan deres datamaskiner kan nås via Internett eller hvordan de kan deaktivere denne tilgangen, spesielt hvis de alltid er pålogget og tilkoblet via bredbåndsforbindelser.
Et eksempel på konfigurasjon for en personlig brannmur er gitt på Opprette en Personlig Brannmur med iptables.
Dette er et system plassert mellom Internett og et intranett. For å minimere risikoen for å kompromittere selve brannmuren, bør den vanligvis bare ha en rolle—det å beskytte intranettet. Selv om det ikke er helt risikofritt, er oppgavene med å gjøre ruting og IP-maskering (omskriver IP-hoder for pakkene den ruter fra klienter med private IP-adresser på Internett slik at de virker å komme fra selve brannmuren) anses vanligvis som relativt sikre.
Et eksempel på konfigurasjon for en maskerende brannmur er gitt på Opprette Maskering av Ruter med iptables.
Dette er ofte en gammel datamaskin du kanskje har pensjonert og nesten har glemt, utfører maskerings- eller rutingfunksjoner, men tilbyr ikke brannmurtjenester som en web-cache eller e-post. Dette kan brukes for hjemmenettverk, men er ikke å anse som like sikker som en enkelt maskin som brannmur fordi kombinasjonen av server og ruter/brannmur på en maskin øker kompleksiteten til oppsettet.
Et eksempel på konfigurasjon for en BusyBox er gitt på Opprette BusyBox med iptables.
Denne typen brannmur utfører maskering eller ruting, men gir offentlig tilgang til en gren av nettverket ditt som er fysisk skilt fra ditt vanlige intranett og er i hovedsak et separat nettverk med direkte Internett tilgang. Serverne på dette nettverket er de som må være lett tilgjengelige fra både Internett og intranett. Brannmuren beskytter begge nettverkene. Denne typen brannmur har minimum tre nettverksgrensesnitt.
Eksempelkonfigurasjonene som er gitt for iptables-1.8.10 er ikke ment å være en komplett guide til sikringssystemer. Brannmur er et komplekst problem som krever forsiktig konfigurasjon. Konfigurasjonene levert av BLFS er kun ment å gi eksempler på hvordan en brannmur fungerer. De er ikke ment å passe til noen bestemt konfigurasjon og gir kanskje ikke fullstendig beskyttelse mot et angrep.
BLFS gir et verktøy for å administrere kjernens Netfilter grensesnitt, iptables-1.8.10. Det har eksistert siden tidlige 2.4-kjerner, og har vært standard siden. Dette er sannsynligvis settet med verktøy som vil være mest kjent for eksisterende administratorer. Andre verktøy har vært utviklet mer nylig, se listen over ytterligere lesninger nedenfor for flere detaljer. Her finner du en liste over nettadresser som inneholder omfattende informasjon om bygging av brannmurer og ytterligere sikring av systemet ditt.
www.netfilter.org - Hjemmesiden til netfilter/iptables/nftables prosjekter
Netfilter relatert FAQ
Netfilter relatert HOWTO's
nftables HOWTO
tldp.org/LDP/nag2/x-087-2-firewall.html
tldp.org/HOWTO/Security-HOWTO.html
tldp.org/HOWTO/Firewall-HOWTO.html
linuxsecurity.com/howtos
www.circlemud.org/jelson/writings/security/index.htm
insecure.org/reading.html
libcap pakken ble installert i LFS, men hvis Linux-PAM støtte ønskes, må PAM modulen bygges (etter installasjonen av Linux-PAM).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.70.tar.xz
Nedlasting MD5 sum: df0e20c6eeca849347b87d5d6a8870c0
Nedlastingsstørrelse: 188 KB
Estimert diskplass som kreves: 2.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Hvis du oppgraderer libcap fra en tidligere versjon, bruk instruksjoner i LFS libcap siden for å oppgradere libcap. Hvis Linux-PAM-1.6.1 har vært bygget, vil PAM modulen bygges automatisk.
Installer libcap ved å kjøre følgende kommandoer:
make -C pam_cap
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
install -v -m755 pam_cap/pam_cap.so /usr/lib/security && install -v -m644 pam_cap/capability.conf /etc/security
For å tillate Linux-PAM å gi
privilegier basert på POSIX funksjoner, må du legge til
libcap modulen i begynnelsen av /etc/pam.d/system-auth filen. Gjør de
nødvendige endringene med følgende kommandoer:
mv -v /etc/pam.d/system-auth{,.bak} &&
cat > /etc/pam.d/system-auth << "EOF" &&
# Begin /etc/pam.d/system-auth
auth optional pam_cap.so
EOF
tail -n +3 /etc/pam.d/system-auth.bak >> /etc/pam.d/system-auth
I tillegg må du endre /etc/security/capability.conf filen for å
gi nødvendige rettigheter til brukere, og bruke setcap verktøyet for å angi
funksjoner på spesifikke verktøy etter behov. Se man 8 setcap og
man 3
cap_from_text for ytterligere informasjon.
Linux PAM pakken inneholder pluggbare autentiseringsmoduler brukt av den lokale systemadministratoren for å kontrollere hvordan applikasjonsprogrammer autentiseres brukere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/linux-pam/linux-pam/releases/download/v1.6.1/Linux-PAM-1.6.1.tar.xz
Nedlasting MD5 sum: 8ad1e72d1ff6480d8e0af658e2d7b768
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 39 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
Valgfri Dokumentasjon
Nedlasting (HTTP): https://github.com/linux-pam/linux-pam/releases/download/v1.6.1/Linux-PAM-1.6.1-docs.tar.xz
Nedlasting MD5 sum: 46dc9f9a27ef73a2fbe3b667877e88da
Nedlastingsstørrelse: 455 KB
libnsl-2.0.1, libtirpc-1.3.5, rpcsvc-proto-1.4.4, Berkeley DB (deprecated), libaudit, libeconf, og Prelude
Shadow-4.16.0 og Systemd-256.4 må installeres på nytt og rekonfigurert etter installasjon og konfigurering av Linux PAM.
Med Linux-PAM-1.4.0 og høyere er ikke pam_cracklib modulen installert som standard. Bruk libpwquality-1.4.5 å håndheve sterke passord.
For PAM modulen pam_loginuid.so
(henvist av PAM konfigurasjonsfilen system-session hvis Systemd-256.4 er bygget med PAM
støtte senere) for å virke, en
kjernekonfigurasjonsparameter må angis, ellers vil modulen
bare gjøre ingenting:
General setup ---> [*] Auditing support [AUDIT]
Den sendte libtool.m4 filen har
en konfigurasjon inkonsistent med LFS /usr hierarkiet. Dette problemet ville
forårsake libpam_misc.so
Knyttet til et rpath flagg som noen ganger kan forårsake
problemer eller til og med sikkerhetsproblemer. Regenerer
byggesystemet for å fikse inkonsekvensen:
autoreconf -fi
Hvis du lastet ned dokumentasjonen, pakk ut tarballen ved å kjøre følgende kommando.
tar -xf ../Linux-PAM-1.6.1-docs.tar.xz --strip-components=1
Kompiler og link Linux PAM med å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sbindir=/usr/sbin \
--sysconfdir=/etc \
--libdir=/usr/lib \
--enable-securedir=/usr/lib/security \
--docdir=/usr/share/doc/Linux-PAM-1.6.1 &&
make
For å teste resultatene, må en passende /etc/pam.d/other konfigurasjonsfil
eksistere.
Hvis du har et system med Linux PAM installert og som
fungerer, vær forsiktig når du endrer filene i /etc/pam.d, siden systemet ditt kan bli
helt ubrukelig. Hvis du vil kjøre testene, trenger du ikke
å lage en annen /etc/pam.d/other fil. Eksisterende fil
kan brukes til testene.
Du også være klar over at make install overskriver
konfigurasjonsfilene i /etc/security i tillegg til /etc/environment. Hvis du har endret
disse filene, sørg for å sikkerhetskopiere dem.
For førstegangsinstallasjon oppretter du en konfigurasjonsfil
ved å kjøre følgende kommandoer som root bruker:
install -v -m755 -d /etc/pam.d &&
cat > /etc/pam.d/other << "EOF"
auth required pam_deny.so
account required pam_deny.so
password required pam_deny.so
session required pam_deny.so
EOF
Kjør nå testene ved å kjøre make check. Pass på at testene ikke produserer noe feil før du fortsetter installasjonen. Merk at testene er veldig lange. Omdiriger utdataene til en loggfil, slik at du kan inspisere den grundig.
For førstegangsinstallasjon fjerner du konfigurasjonsfilen
opprettet tidligere ved å utstede følgende kommando som
root bruker:
rm -fv /etc/pam.d/other
Nå, som root bruker:
make install && chmod -v 4755 /usr/sbin/unix_chkpwd
--enable-securedir=/usr/lib/security:
Denne bryteren angir installasjonsstedet for PAM moduler.
chmod -v 4755
/usr/sbin/unix_chkpwd: setuid biten for
unix_chkpwd
hjelpeprogram må være slått på, slik at ikke-root prosesser kan få tilgang til shadow
filen.
Konfigurasjonsinformasjon er plassert i /etc/pam.d/. Her er en eksempelfil:
# Begin /etc/pam.d/other
auth required pam_unix.so nullok
account required pam_unix.so
session required pam_unix.so
password required pam_unix.so nullok
# End /etc/pam.d/other
Lag nå noen generiske konfigurasjonsfiler. Som root bruker:
install -vdm755 /etc/pam.d && cat > /etc/pam.d/system-account << "EOF" &&# Begin /etc/pam.d/system-account account required pam_unix.so # End /etc/pam.d/system-accountEOF cat > /etc/pam.d/system-auth << "EOF" &&# Begin /etc/pam.d/system-auth auth required pam_unix.so # End /etc/pam.d/system-authEOF cat > /etc/pam.d/system-session << "EOF" &&# Begin /etc/pam.d/system-session session required pam_unix.so # End /etc/pam.d/system-sessionEOF cat > /etc/pam.d/system-password << "EOF"# Begin /etc/pam.d/system-password # use yescrypt hash for encryption, use shadow, and try to use any # previously defined authentication token (chosen password) set by any # prior module. password required pam_unix.so yescrypt shadow try_first_pass # End /etc/pam.d/system-passwordEOF
Hvis du ønsker å aktivere sterk passordstøtte, installer libpwquality-1.4.5, og følg instruksjoner på siden for å konfigurere pam_pwquality PAM modulen med sterk passordstøtte.
Deretter legger du til en restriktiv /etc/pam.d/other konfigurasjonsfil. Med
denne filen vil programmer som er klar over PAM ikke kjøre
med mindre en konfigurasjonsfil spesifikt for det
programmet finnes.
cat > /etc/pam.d/other << "EOF"
# Begin /etc/pam.d/other
auth required pam_warn.so
auth required pam_deny.so
account required pam_warn.so
account required pam_deny.so
password required pam_warn.so
password required pam_deny.so
session required pam_warn.so
session required pam_deny.so
# End /etc/pam.d/other
EOF
PAM man side (man pam) gir et godt utgangspunkt for å lære om de mange feltene og tillatte oppføringer. Linux-PAM System Administrators' Guide anbefales for ytterligere informasjon.
Du bør nå installere på nytt Shadow-4.16.0 og Systemd-256.4 pakkene.
|
viser og endrer registreringsfilene for autentiseringsfeil |
|
|
er en hjelpebinær som lager hjemmemapper |
|
|
er et hjelpeprogram som brukes til å konfigurere et privat navneområde for en brukerøkt |
|
|
er et hjelpeprogram som overfører passordhasher fra passwd eller shadow til opasswd |
|
|
brukes til å sjekke om standard tidsstempel er gyldig |
|
|
er en hjelpebinær som bekrefter passordet til gjeldende bruker |
|
|
er en hjelpebinær som oppdaterer passordet til en gitt bruker |
|
|
gir grensesnittene mellom applikasjoner og PAM moduler |
liboauth er en samling av POSIX-C funksjoner implementere OAuth Core RFC 5849 standarden. Liboaut tilbyr funksjoner for å unnslippe og kode parametere i henhold til OAuth spesifikasjon og tilbyr funksjonalitet på høyt nivå for å signere forespørsler eller verifisere OAuth signaturer samt utføre HTTP forespørsler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/liboauth/liboauth-1.0.3.tar.gz
Nedlasting MD5 sum: 689b46c2b3ab1a39735ac33f714c4f7f
Nedlastingsstørrelse: 496 KB
Estimert diskplass som kreves: 3.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering for bruk med openssl: https://www.linuxfromscratch.org/patches/blfs/12.2/liboauth-1.0.3-openssl-1.1.0-3.patch
nss-3.103 og Doxygen-1.12.0 (for å bygge dokumentasjon)
Bruk en oppdatering for gjeldende versjon av openssl:
patch -Np1 -i ../liboauth-1.0.3-openssl-1.1.0-3.patch
Installer liboauth ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis du ønsker å bygge dokumentasjonen (trenger Doxygen-1.12.0), kjør:
make dox
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Hvis du tidligere har bygget dokumentasjonen, installer den
ved å kjører følgende kommandoer som root bruker:
install -v -dm755 /usr/share/doc/liboauth-1.0.3 && cp -rv doc/html/* /usr/share/doc/liboauth-1.0.3
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-nss: Bruk denne bryteren
hvis du vil bruk Mozilla NSS i stedet for OpenSSL.
libpwquality pakken gir vanlige funksjoner for kvalitetskontroll av passord og også poengsum basert på deres tilsynelatende tilfeldighet. Biblioteket gir også en funksjon for å generere tilfeldige passord med god uttalbarhet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libpwquality/libpwquality/releases/download/libpwquality-1.4.5/libpwquality-1.4.5.tar.bz2
Nedlasting MD5 sum: 6b70e355269aef0b9ddb2b9d17936f21
Nedlastingsstørrelse: 424 KB
Estimert diskplass som kreves: 5.4 MB
Estimert byggetid: 0.1 SBU
Installer libpwquality ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--with-securedir=/usr/lib/security \
--disable-python-bindings &&
make &&
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD/python
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && pip3 install --no-index --find-links=dist --no-cache-dir --no-user pwquality
--disable-python-bindings:
Denne parameteren deaktiverer bygging av Python bindinger med
de foreldede python3 setup.py
build kommando. Eksplisitte instruksjon for å
bygge Python 3 bindingen med pip3 wheel kommandoen er
gitt.
libpwquality er ment å være
en funksjonell erstatning for den nå foreldede pam_cracklib.so PAM modulen. For å
konfigurere systemet å bruke pam_pwquality modulen, kjør følgende
kommandoer som root bruker:
mv /etc/pam.d/system-password{,.orig} &&
cat > /etc/pam.d/system-password << "EOF"
# Begin /etc/pam.d/system-password
# check new passwords for strength (man pam_pwquality)
password required pam_pwquality.so authtok_type=UNIX retry=1 difok=1 \
minlen=8 dcredit=0 ucredit=0 \
lcredit=0 ocredit=0 minclass=1 \
maxrepeat=0 maxsequence=0 \
maxclassrepeat=0 gecoscheck=0 \
dictcheck=1 usercheck=1 \
enforcing=1 badwords="" \
dictpath=/usr/lib/cracklib/pw_dict
# use yescrypt hash for encryption, use shadow, and try to use any
# previously defined authentication token (chosen password) set by any
# prior module.
password required pam_unix.so yescrypt shadow try_first_pass
# End /etc/pam.d/system-password
EOF
|
er et enkelt konfigurerbart verktøy for å generere tilfeldig og relativt lett uttalbare passord |
|
|
er et enkelt verktøy for å sjekke kvaliteten på et passord |
|
|
inneholder API funksjoner for å sjekke passordkvaliteten |
|
|
er en Linux PAM modul som brukes til å utføre kvalitetskontroll av passord |
MIT Kerberos V5 er en gratis implementering av Kerberos 5. Kerberos er en nettverksautentiseringsprotokoll. Den sentraliserer autentiseringsdatabasen og bruker kerberized applikasjoner som fungerer med servere eller tjenester som støtter Kerberos tillater enkeltpålogginger og kryptert kommunikasjon over intern nettverk eller Internett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://kerberos.org/dist/krb5/1.21/krb5-1.21.3.tar.gz
Nedlasting MD5 sum: beb34d1dfc72ba0571ce72bed03e06eb
Nedlastingsstørrelse: 8.7 MB
Estimert diskplass som kreves: 95 MB (legg til 14 MB for tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; legg til 1.1 SBU for tester)
BIND Utilities-9.20.0, CrackLib-2.10.2 (/usr/share/dict/words referert av noen
tester), GnuPG-2.4.5 (for å autentisere pakken),
keyutils-1.6.3, OpenLDAP-2.6.8,
Valgrind-3.23.0 (brukt under
testpakken), yasm-1.3.0, libedit, cmocka, kdcproxy, pyrad, og
resolv_wrapper
En slags tidssynkroniseringsfunksjon på systemet ditt (som ntp-4.2.8p18) er nødvendig siden Kerberos ikke vil autentisere hvis det er en tidsforskjell mellom en kerberisert klient og KDC serveren.
Bygg MIT Kerberos V5 ved å kjøre følgende kommandoer:
cd src &&
sed -i -e '/eq 0/{N;s/12 //}' plugins/kdb/db2/libdb2/test/run.test &&
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var/lib \
--runstatedir=/run \
--with-system-et \
--with-system-ss \
--with-system-verto=no \
--enable-dns-for-realm \
--disable-rpath &&
make
For å teste bygget, utsted make
-j1 -k check. Noen tester kan mislykkes med
den nyeste versjonen av dejagnu og glibc. Noen tester kan
henge for en lang tid og mislykkes hvis systemet ikke er
koblet til et nettverk. En test, t_kadm5srv, er kjent for å mislykkes. Hvis
keyutils-1.6.3 er installert men
Keyutils Kjernekonfigurasjon ikke
er fornøyd, noen tester vil mislykkes ved å klage
keyctl failed with code
1.
Nå, som root bruker:
make install && cp -vfr ../doc -T /usr/share/doc/krb5-1.21.3
sed kommandoene fjerner en test som er kjent for å mislykkes.
--localstatedir=/var/lib: Dette
alternativet brukes slik at Kerberos variablens kjøretidsdata
er plassert i /var/lib i stedet
for /usr/var.
--runstatedir=/run:
Dette alternativet brukes slik at informasjonen om Kerberos
kjøretidstilstand er plassert i /run istedenfor det foreldede /var/run.
--with-system-et:
Denne bryteren gjør at bygget bruker de systeminstallerte
versjonene av feiltabell støtte programvaren.
--with-system-ss:
Denne bryteren gjør at bygget bruker de systeminstallerte
versjonene av undersystemets kommandolinje grensesnitt
programvaren.
--with-system-verto=no: Denne
bryteren fikser en feil i pakken: den gjenkjenner ikke sitt
eget tidligere installerte verto bibliotek. Dette er ikke et
problem, hvis du installerer samme versjon på nytt, men hvis
du oppdaterer, brukes det gamle biblioteket som systemets
bibliotek, i stedet for å installere den nye versjonen.
--enable-dns-for-realm: Denne
bryteren tillater realms som skal løses ved hjelp av DNS
serveren.
--disable-rpath:
Denne bryteren forhindrer hardkodende biblioteksøkestier
(rpath) inn i den binære kjørbare filen og delte biblioteker.
Denne pakken trenger ikke rpath for en installasjon på
standardplasseringen, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
--with-ldap: Bruk denne bryteren
hvis du vil kompilere OpenLDAP database bakstykke modul.
Du bør vurdere å installere en slags passordkontroll
ordbok slik at du kan konfigurere installasjonen til
kun å godta sterke passord. En passende ordbok å bruke
vises i CrackLib-2.10.2 bruksanvisning.
Merk at kun en fil kan brukes, men du kan sette sammen
mange filer til en. Konfigurasjonsfilen vist nedenfor
forutsetter at du har installert en ordbok i
/usr/share/dict/words.
Opprett Kerberos konfigurasjonsfilen med følgende
kommandoer kjørt som root
bruker:
cat > /etc/krb5.conf << "EOF"
# Begin /etc/krb5.conf
[libdefaults]
default_realm = <EXAMPLE.ORG>
encrypt = true
[realms]
<EXAMPLE.ORG> = {
kdc = <belgarath.example.org>
admin_server = <belgarath.example.org>
dict_file = /usr/share/dict/words
}
[domain_realm]
.<example.org> = <EXAMPLE.ORG>
[logging]
kdc = SYSLOG:INFO:AUTH
admin_server = SYSLOG:INFO:AUTH
default = SYSLOG:DEBUG:DAEMON
# End /etc/krb5.conf
EOF
Du må erstatte domenet ditt og det riktige vertsnavnet
for forekomster av <belgarath> og
<example.org> navn.
default_realm skal være
navnet på ditt domene endret til ALL STORE BOKSTAVER.
Dette er ikke nødvendig, men både Heimdal og MIT anbefaler det.
encrypt = true gir kryptering
av all trafikk mellom kerberiserte klienter og servere.
Det er ikke nødvendig og kan bli utelatt. Hvis du lar det
være av, kan du kryptere all trafikk fra klienten til
serveren ved hjelp av en bryter på klientprogrammet i
stedet.
[realms] parametere forteller
klientprogrammene hvor de skal se etter KDC
autentiseringstjenestene.
[domain_realm] seksjonen
kartlegger et domene til realm.
Opprett KDC databasen:
kdb5_util create -r <EXAMPLE.ORG> -s
Nå bør du fylle databasen med fullmakt (brukere). For nå
er det bare å bruke ditt vanlige påloggingsnavn eller
root.
kadmin.localkadmin.local:add_policy dict-onlykadmin.local:addprinc -policy dict-only<loginname>
KDC serveren og enhver maskin som kjører kerberisert servernisser må ha en vertsnøkkel installert:
kadmin.local:addprinc -randkey host/<belgarath.example.org>
Etter å ha valgt standardinnstillingene når du blir bedt om det, må du eksporter dataene til en keytab fil:
kadmin.local:ktadd host/<belgarath.example.org>
Dette burde ha opprettet en fil i /etc navngitt krb5.keytab (Kerberos 5). Denne filen
skal ha 600 (root rw
bare) tillatelser. Å holde keytab filene fra offentlig
tilgang er avgjørende for den generelle sikkerheten til
Kerberos installasjonen.
Gå ut av kadmin programmet (bruk quit eller exit) og returner tilbake til skall ledeteksten. Start KDC nissen manuelt, bare for å teste installasjonen:
/usr/sbin/krb5kdc
Forsøk å få en billett med følgende kommando:
kinit <loginname>
Du vil bli bedt om passordet du opprettet. Etter at du har fått billetten din, kan du liste den med følgende kommando:
klist
Informasjon om billetten skal vises på skjermen.
For å teste funksjonaliteten til keytab filen, kjør
følgende kommando som root bruker:
ktutilktutil:rkt /etc/krb5.keytabktutil:l
Dette bør dumpe en liste over vertens fullmakt, sammen med krypteringsmetodene som brukes for å få tilgang til fullmakter.
Opprett en tom ACL fil som kan endres senere:
touch /var/lib/krb5kdc/kadm5.acl
På dette tidspunktet, hvis alt har vært vellykket så langt, kan du føle deg ganske trygg på installasjon og konfigurasjon av pakken.
For ytterligere informasjon se dokumentasjon for krb5-1.21.3 hvor ovennevnte instruksjoner er basert på.
Hvis du vil starte Kerberos tjenester ved oppstart,
installer krb5.service enhet
inkludert i blfs-systemd-units-20240801 pakke
ved å bruke følgende kommando:
make install-krb5
|
er en GSSAPI testklient |
|
|
er en GSSAPI testserver |
|
|
er et vertsnøkkeltabellmanipulasjonsverktøy |
|
|
er et verktøy som brukes til å gjøre endringer til Kerberos databasen |
|
|
er et verktøy som ligner på kadmin, men hvis databasen er db2, den lokale klienten kadmin.local, er ment å kjøre direkte på master KDC uten Kerberos autentisering |
|
|
er en server for administrativ tilgang til en Kerberos database |
|
|
lar en administrator administrere realms, Kerberos tjenester og billettpolitikk |
|
|
er KDC databaseverktøyet |
|
|
fjerner gjeldende sett med billetter |
|
|
brukes til å autentisere til Kerberos serveren som en fullmakt og anskaffe en billettbevilgningsbillett som senere kan brukes til å skaffe billetter til andre tjenester |
|
|
leser og viser gjeldende billetter i legitimasjonsbufferen |
|
|
er et program for å endre Kerberos 5 passord |
|
|
tar en hoveddatabase i et spesifisert format og konverterer den til en strøm av databaseposter |
|
|
mottar en database sendt av kprop og skriver den som en lokal database |
|
|
viser innholdet i KDC databaseoppdateringsloggen til standard utgang |
|
|
gir informasjon om hvordan man kobler programmer mot biblioteker |
|
|
er Kerberos 5 server |
|
|
sender en problemrapport (PR) til en sentral støtteside |
|
|
er superbrukerprogrammet som bruker Kerberos
protokollen. Krever en riktig konfigurert
|
|
|
gjør den spesifiserte legitimasjonsbufferen til primær buffer for samlingen, hvis en buffer samling er tilgjengelig |
|
|
er et program for å administrere Kerberos keytabs |
|
|
skriver ut nøkkelversjonsnummer for Kerberos fullmakter |
|
|
brukes til å kontakte en eksempelserver og autentisere til den ved å bruke Kerberos 5 billetter, og vis deretter serverens respons |
|
|
er et enkelt UDP-basert eksempelklientprogram, for demonstrasjon |
|
|
er en enkel UDP-basert serverapplikasjon, for demonstrasjon |
|
|
er eksempelet på Kerberos 5 serveren |
|
|
er en annen eksempelklient |
|
|
er en annen eksempelserver |
|
|
inneholder Generisk sikkerhetstjenesteapplikasjonsprogrammering Grensesnitt (GSSAPI) funksjoner som gir sikkerhetstjenester til kallere på en generisk måte, støttes med en rekke underliggende mekanismer og teknologier og dermed tillate kildenivå portabilitet av applikasjoner til forskjellige miljøer |
|
|
inneholder administrativ autentisering og passordkontrolls funksjoner som kreves av Kerberos 5 klientsideprogrammer |
|
|
inneholder administrativ autentisering og passord sjekke funksjoner som kreves av Kerberos 5 servere |
|
|
er en Kerberos 5 autentiserings-/autorisasjonsdatabase tilgang til biblioteket |
|
|
inneholder det interne støttebiblioteket for RADIUS funksjonalitet |
|
|
er et allsidig formåls Kerberos 5 bibliotek |
Nettle pakken inneholder et lavt nivå kryptografisk bibliotek som er designet for å passe lett inn i mange sammenhenger.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/nettle/nettle-3.10.tar.gz
Nedlasting MD5 sum: c61453139d5fb44e9cdcc5b684b26e55
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 100 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester; begge bruker parallellisme=4)
Valgrind-3.23.0 (Valgfri for testene)
Installer Nettle ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install &&
chmod -v 755 /usr/lib/lib{hogweed,nettle}.so &&
install -v -m755 -d /usr/share/doc/nettle-3.10 &&
install -v -m644 nettle.{html,pdf} /usr/share/doc/nettle-3.10
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
beregner en hashverdi ved hjelp av en spesifisert algoritme |
|
|
sender ut en sekvens av pseudorandom (ikke-kryptografiske) byte, ved hjelp av Knuths lagged fibonacci-generator. Strømmen er nyttig for testing, men skal ikke brukes til å generere kryptografiske nøkler eller alt annet som trenger ekte tilfeldighet |
|
|
er en passordbasert nøkkelavledningsfunksjon som tar et passord eller en passordfrase som inndata og returnerer et styrket passord, som er beskyttet mot forhåndsberegningsangrep ved å bruke salting og andre kostbare beregninger. |
|
|
konverterer private og offentlige RSA-nøkler fra PKCS #1 format til sexp format |
|
|
konverterer et s-uttrykk til en annen koding |
Nettverkssikkerhetstjenester (NSS) pakken er et sett med biblioteker designet for å støtte utvikling på tvers av plattformer med sikkerhetsaktiverte klient- og serverapplikasjoner. Applikasjoner bygget med NSS kan støtte SSL v2 og v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 sertifikater og andre sikkerhetsstandarder. Dette er nyttig for implementering av SSL og S/MIME eller andre Internett sikkerhetsstandarder inn i en applikasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.mozilla.org/pub/security/nss/releases/NSS_3_103_RTM/src/nss-3.103.tar.gz
Nedlasting MD5 sum: 2823082a44b9dd71d6281108e0bab03f
Nedlastingsstørrelse: 73 MB
Estimert diskplass som kreves: 304 MB (legg til 149 MB for tester)
Estimert byggetid: 0.8 SBU (med parallellisme = 4, legg til 16 SBU for tester på AMD ryzens eller minst 30 SBU på Intel-maskiner)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/nss-3.103-standalone-1.patch
SQLite-3.46.1 og p11-kit-0.25.5 (kjøretid)
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/nss
Installer NSS ved å kjøre følgende kommandoer:
patch -Np1 -i ../nss-3.103-standalone-1.patch && cd nss && make BUILD_OPT=1 \ NSPR_INCLUDE_DIR=/usr/include/nspr \ USE_SYSTEM_ZLIB=1 \ ZLIB_LIBS=-lz \ NSS_ENABLE_WERROR=0 \ $([ $(uname -m) = x86_64 ] && echo USE_64=1) \ $([ -f /usr/include/sqlite3.h ] && echo NSS_USE_SYSTEM_SQLITE=1)
For å kjøre testene, kjør følgende kommandoer:
cd tests && HOST=localhost DOMSUF=localdomain ./all.sh cd ../
Litt informasjon om testene:
HOST=localhost og DOMSUF=localdomain er påkrevd. Uten
disse variablene kreves er en FQDN spesifisert og
denne generiske måten bør fungere for alle, gitt
localhost.localdomain
er definert ved myhostname Name Service Switch
modulen, som spesifisert i
LFS boken.
Testene tar lang tid å kjøre. Om ønskelig er det informasjon i all.sh skriptet om kjøring av delsett av total testpakke.
Når du avbryter testene, testpakken klarer ikke å avslutte testservere som kjøres. Dette fører til en uendelig løkke i testene der testpakken prøver å drepe en server som ikke eksisterer lenger fordi den bruker feil PID.
Testresultater (i HTML-format!) finner du på ../../test_results/security/localhost.1/results.html
Noen få tester kan mislykkes på noen Intel maskiner av ukjente årsaker.
Nå, som root bruker:
cd ../dist &&
install -v -m755 Linux*/lib/*.so /usr/lib &&
install -v -m644 Linux*/lib/{*.chk,libcrmf.a} /usr/lib &&
install -v -m755 -d /usr/include/nss &&
cp -v -RL {public,private}/nss/* /usr/include/nss &&
install -v -m755 Linux*/bin/{certutil,nss-config,pk12util} /usr/bin &&
install -v -m644 Linux*/lib/pkgconfig/nss.pc /usr/lib/pkgconfig
BUILD_OPT=1: Dette
alternativet sendes til make slik at byggingen
utføres uten feilsøkingssymboler innebygd i binærfiler og
standard kompilatoroptimaliseringer er brukt.
NSPR_INCLUDE_DIR=/usr/include/nspr:
Dette alternativet angir plasseringen av nspr deklarasjonene.
USE_SYSTEM_ZLIB=1:
Dette alternativet sendes til make for å sikre at
libssl3.so biblioteket er
knyttet til systemets installerte zlib i stedet for versjon i pakken.
ZLIB_LIBS=-lz: Dette
alternativet gir linkerflagg som trengs for å koble til
systemets zlib.
$([ $(uname -m) = x86_64 ]
&& echo USE_64=1): USE_64=1 alternativet er
påkrevd på x86_64,
ellers vil make
prøve (og mislykkes) å lage 32-bits objekter. [ $(uname -m) =
x86_64 ] testen sikrer at det ikke har noe effekt på et
32-bitssystem.
([ -f /usr/include/sqlite3.h ]
&& echo NSS_USE_SYSTEM_SQLITE=1):
Dette tester om sqlite er
installert og i så fall echoer det valget
NSS_USE_SYSTEM_SQLITE=1 til make sånn at libsoftokn3.so vil lenke mot
systemversjonen av sqlite.
NSS_DISABLE_GTESTS=1: Hvis du
ikke trenger å kjøre NSS testpakken, legg til dette
alternativet til make kommandoen, for å
forhindre kompilering av tester og spare litt byggetid.
Hvis p11-kit-0.25.5 er installert,
p11-kit tillitsmodul
(/usr/lib/pkcs11/p11-kit-trust.so) kan
brukes som en erstatning for /usr/lib/libnssckbi.so for å gjøre systems
CA tilgjengelig på en transparent måte for NSS bevisste applikasjoner, snarere enn
de statiske bibliotekene levert av /usr/lib/libnssckbi.so. Somm root bruker, utføre følgende kommando:
ln -sfv ./pkcs11/p11-kit-trust.so /usr/lib/libnssckbi.so
I tillegg for avhengige applikasjoner som ikke bruker den
interne databasen (/usr/lib/libnssckbi.so), /usr/sbin/make-ca skriptet inkludert på
make-ca-1.14 siden kan generere en
systemomfattende NSS DB med -n bryteren, eller ved å endre
/etc/make-ca/make-ca.conf
filen.
|
er Mozilla Certificate Database Tool. Det er et kommandolinje verktøy som kan opprette og endre Netscape Communicator cert8.db og key3.db databasefiler. Den kan også liste, generere, endre eller slette sertifikater i cert8.db-filen og opprette eller endre passordet, generer nye offentlige og private nøkkelpar, vise innholdet i nøkkeldatabasen, eller slette nøkkelpar innenfor filen key3.db |
|
|
brukes til å bestemme NSS bibliotekinnstillingene for de installerte NSS bibliotekene |
|
|
er et verktøy for å importere sertifikater og nøkler fra pkcs #12 filer inn i NSS eller eksportere dem. Den kan også liste sertifikater og nøkler i slike filer |
OpenSSH pakken inneholder ssh klienter og sshd nissen. Dette er nyttig for kryptering av autentisering og påfølgende trafikk over et nettverk. ssh og scp kommandoene er sikre implementeringer av telnet og rcp henholdsvis.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
Nedlasting MD5 sum: bc04ff77796758c0b37bd0bc9314cd3f
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 44 MB (legg til 22 MB for tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; å kjøre testene tar omtrent 20 minutter, uavhengig av prosessorhastighet)
GDB-15.1 (for tester), Linux-PAM-1.6.1 (PAM konfigurasjonsfiler fra Shadow-4.16.0 brukes til å lage openssh sine), Xorg Applikasjoner (eller Xorg build environment, se Parameterforklaringer), MIT Kerberos V5-1.21.3, Which-2.21 (for tester), libedit, LibreSSL Portable, OpenSC, og libsectok
OpenSSH kjører som to
prosesser ved tilkobling til andre datamaskiner. Den første
prosessen er en privilegert prosess og kontroller utstedelse
av privilegier etter behov. Den andre prosessen kommuniserer
med nettverket. Ytterligere installasjonstrinn er nødvendig
for å sette opp det riktige miljøet, som utføres ved å kjøre
følgende kommandoer som root
bruker:
install -v -g sys -m700 -d /var/lib/sshd &&
groupadd -g 50 sshd &&
useradd -c 'sshd PrivSep' \
-d /var/lib/sshd \
-g sshd \
-s /bin/false \
-u 50 sshd
Installer OpenSSH ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc/ssh \
--with-privsep-path=/var/lib/sshd \
--with-default-path=/usr/bin \
--with-superuser-path=/usr/sbin:/usr/bin \
--with-pid-dir=/run &&
make
For å teste resultatene, utsted: make -j1 tests.
Nå, som root bruker:
make install &&
install -v -m755 contrib/ssh-copy-id /usr/bin &&
install -v -m644 contrib/ssh-copy-id.1 \
/usr/share/man/man1 &&
install -v -m755 -d /usr/share/doc/openssh-9.8p1 &&
install -v -m644 INSTALL LICENCE OVERVIEW README* \
/usr/share/doc/openssh-9.8p1
--sysconfdir=/etc/ssh: Dette
forhindrer at konfigurasjonsfiler blir installert i
/usr/etc.
--with-default-path=/usr/bin og
--with-superuser-path=/usr/sbin:/usr/bin:
Dette setter PATH i samsvar med
LFS og BLFS Shadow pakke.
--with-pid-dir=/run:
Dette forhindrer OpenSSH fra
å referere til utdaterte /var/run.
--with-pam: Denne parameteren
aktiverer Linux-PAM støtte i
bygget.
--with-xauth=$XORG_PREFIX/bin/xauth: Angi
standard plassering for xauth binære for X
autentisering. Miljøvariabelen XORG_PREFIX bør settes ved å følge Xorg build environment.
Denne kan også styres fra sshd_config med nøkkelordet XAuthLocation.
Du kan se bort fra denne bryteren hvis Xorg allerede er installert.
--with-kerberos5=/usr: Dette
alternativet brukes til å inkludere Kerberos 5 støtte i
bygget.
--with-libedit: Dette
alternativet aktiverer linjeredigering og historiefunksjoner
for sftp.
~/.ssh/*, /etc/ssh/ssh_config, og /etc/ssh/sshd_config
Det er ingen nødvendige endringer i noen av disse filene.
Derimot, du ønsker kanskje å se /etc/ssh/ filer og lag eventuelle
endringer som passer for sikkerheten til systemet ditt. En
anbefalt endring er at du deaktiverer root innlogging via ssh. Utfør følgende
kommando som root bruker
for å deaktivere root
innlogging via ssh:
echo "PermitRootLogin no" >> /etc/ssh/sshd_config
Hvis du vil kunne logge inn uten å skrive inn passordet ditt, først opprett ~/.ssh/id_rsa og ~/.ssh/id_rsa.pub med ssh-keygen og kopier deretter ~/.ssh/id_rsa.pub til ~/.ssh/authorized_keys på den eksterne datamaskinen du vil logge på. Du må endre REMOTE_USERNAME og REMOTE_HOSTNAME for brukernavnet og vertsnavnet til den eksterne datamaskin, og du må også skrive inn passordet for kommandoen ssh-copy-id for å lykkes:
ssh-keygen && ssh-copy-id -i ~/.ssh/id_ed25519.pubREMOTE_USERNAME@REMOTE_HOSTNAME
Når du først har fått passordløse pålogginger til å
fungere, er det faktisk sikrere enn å logge på med et
passord (da den private nøkkelen er mye lengre enn de
flestes passord). Hvis du vil deaktivere
passordpålogginger, som root bruker:
echo "PasswordAuthentication no" >> /etc/ssh/sshd_config && echo "KbdInteractiveAuthentication no" >> /etc/ssh/sshd_config
Hvis du har lagt til Linux-PAM støtte og du ønsker at ssh
bruker den, må du legge til en konfigurasjonsfil for
sshd og muliggjør bruk av
LinuxPAM. Merk at ssh bare
bruker PAM for å sjekke passord, hvis du har deaktivert
passordpålogging er ikke behov for disse kommandoene. Hvis
du vil bruke PAM, utfør følgende kommandoer som
root bruker:
sed 's@d/login@d/sshd@g' /etc/pam.d/login > /etc/pam.d/sshd && chmod 644 /etc/pam.d/sshd && echo "UsePAM yes" >> /etc/ssh/sshd_config
Ytterligere konfigurasjonsinformasjon finnes i mansider for sshd, ssh og ssh-agent.
For å starte SSH serveren ved systemoppstart, installer
sshd.service enheten
inkludert i blfs-systemd-units-20240801
pakken.
Endring av innstillingen for ListenAddress i /etc/sshd/sshd_config er ikke støttet
med BLFS sshd systemd unit.
make install-sshd
|
er et filkopieringsprogram som fungerer som rcp unntatt at den bruker en kryptert protokoll |
|
|
er et FTP lignende program som fungerer over SSH1 og SSH2 protokollene |
|
|
er en rlogin/rsh lignende klientprogram bortsett fra at det bruker en kryptert protokoll |
|
|
er en nisse som lytter etter ssh påloggingsforespørsler |
|
|
er et verktøy som legger til nøkler til ssh-agent |
|
|
er en autentiseringsagent som kan lagre private nøkler |
|
|
er et skript som muliggjør pålogging på eksterne maskiner ved hjelp av lokale nøkler |
|
|
er et nøkkelgenereringsverktøy |
|
|
er et verktøy for å samle offentlige vertsnøkler fra en rekke verter |
p11-kit pakken gir en måte å laste og telle opp PKCS #11 (en Cryptographic Token Interface Standard) moduler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/p11-glue/p11-kit/releases/download/0.25.5/p11-kit-0.25.5.tar.xz
Nedlasting MD5 sum: e9c5675508fcd8be54aa4c8cb8e794fc
Nedlastingsstørrelse: 980 KB
Estimert diskplass som kreves: 94 MB (med tester)
Estimert byggetid: 0.7 SBU (med tester)
GTK-Doc-1.34.0, libxslt-1.1.42, og nss-3.103 (kjøretid)
Klargjør den distribusjonsspesifikke ankerkroken:
sed '20,$ d' -i trust/trust-extract-compat &&
cat >> trust/trust-extract-compat << "EOF"
# Copy existing anchor modifications to /etc/ssl/local
/usr/libexec/make-ca/copy-trust-modifications
# Update trust stores
/usr/sbin/make-ca -r
EOF
Installer p11-kit ved å kjøre følgende kommandoer:
mkdir p11-build &&
cd p11-build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D trust_paths=/etc/pki/anchors &&
ninja
For å teste resultatene, kjør: LC_ALL=C ninja test.
Nå, som root bruker:
ninja install &&
ln -sfv /usr/libexec/p11-kit/trust-extract-compat \
/usr/bin/update-ca-certificates
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
trust_paths=/etc/pki/anchors: denne bryteren
angir plasseringen av klarerte sertifikater som brukes av
libp11-kit.so.
-D hash_impl=freebl: Bruk denne
bryteren hvis du vil bruke Freebl biblioteket fra
NSS for SHA1 og MD5 hashing.
-D gtk_doc=true: Bruk denne
bryteren hvis du har installert GTK-Doc-1.34.0 og
libxslt-1.1.42 og ønsker å bygge
dokumentasjonen på nytt og generere manualsider.
p11-kit tillitsmodul
(/usr/lib/pkcs11/p11-kit-trust.so) kan
brukes som en drop-in erstatning for /usr/lib/libnssckbi.so til å gjøre system
CA-ene på en transparent måte tilgjengelig for NSS bevisste applikasjoner, snarere enn
den statiske listen levert av /usr/lib/libnssckbi.so. Som root bruker, kjør følgende kommandoer:
ln -sfv ./pkcs11/p11-kit-trust.so /usr/lib/libnssckbi.so
|
er et kommandolinjeverktøy som kan brukes til å utføre operasjoner på PKCS#11 moduler konfigurert på systemet |
|
|
er et kommandolinjeverktøy for å undersøke og endre den delte trust policy store |
|
|
er et kommandolinjeverktøy for både å trekke ut
lokale sertifikater fra en oppdatert ankerlager, og
regenerer alle ankere og sertifikater lagret på
systemet. Dette gjøres ubetinget på BLFS ved hjelp
av |
|
|
inneholder funksjoner som brukes til å koordinere initialisering og sluttføring av enhver PKCS#11 modul |
|
|
er PKCS#11 proxy modulen |
Polkit er et verktøysett for å definere og håndtere autorisasjoner. Den brukes for å tillate uprivilegerte prosesser å kommunisere med privilegerte prosesser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/polkit-org/polkit/archive/125/polkit-125.tar.gz
Nedlasting MD5 sum: 8e9f2377fc7b4010bd29b97d2e288b4f
Nedlastingsstørrelse: 444 KB
Estimert diskplass som kreves: 7.2 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester; bruke parallellisme=4)
GLib-2.80.4 (GObject Introspection anbefalt)
duktape-2.7.0, libxslt-1.1.42, og Linux-PAM-1.6.1
Siden systemd-logind bruker PAM til å registrere brukerøkter, er det en god idé å bygge Polkit med PAM støtte så systemd-logind kan spore Polkit økter.
GTK-Doc-1.34.0, dbusmock-0.32.1 (påkrevd for tester), og SpiderMonkey from Firefox-115.14.0 (kan brukes i stedet for duktape)
Én polkit autentiseringsagent for bruk av polkit i et grafiske miljø: polkit-kde-agent i Plasma-6.1.4 for KDE, agenten bygd inn gnome-shell-46.4 for GNOME3, polkit-gnome-0.105 for XFCE, og lxqt-policykit-2.0.0 for LXQt
Hvis libxslt-1.1.42 er installert, da er
docbook-xml-4.5 og docbook-xsl-nons-1.79.2
nødvendig. Hvis du har installert libxslt-1.1.42, men
du ikke ønsker å installere noen av DocBook pakkene som er
nevnt, vil du trenge å bruke -D
man=false i instruksjonene under.
Noen tester trenger namespace. Hvis du kjører testpakken, aktiver den:
General setup ---> -*- Namespaces support ---> [NAMESPACES] [*] User namespace [USER_NS]
Det bør være en dedikert bruker og gruppe til å ta kontroll
på polkitd
nissen etter at det er startet. Utfør følgende kommandoer som
root bruker:
groupadd -fg 27 polkitd &&
useradd -c "PolicyKit Daemon Owner" -d /etc/polkit-1 -u 27 \
-g polkitd -s /bin/false polkitd
Installer Polkit ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D man=true \
-D session_tracking=logind \
-D tests=true
Bygg pakken:
ninja
For å teste resultatene, sørg først for at systemets D-Bus nisse kjører, og både D-Bus Python-1.3.2 og dbusmock-0.32.1 er installert. Kjør så ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D tests=true: Denne
bryteren lar deg kjøre testpakken av denne pakken. Siden
Polkit er brukt for
autorisasjoner, kan integriteten påvirke systemsikkerheten.
Så det anbefales å kjøre testpakken som bygger denne pakken.
-D js_engine=mozjs: Denne
bryteren tillater bruk av SpiderMonkey from
Firefox-115.14.0 JavaScript motoren i stedet for
duktape-2.7.0 JavaScript motoren.
-D os_type=lfs: Bruk denne
bryteren hvis du ikke opprettet /etc/lfs-release filen ellers vil
distribusjons automatiske deteksjon mislykkes, og du vil ikke
kunne bruke Polkit.
-D authfw=shadow: Denne bryteren
aktiverer pakken til å bruke Shadow i stedet for Linux PAM Autentiseringsrammeverk. Bruk
det hvis du ikke har installert Linux PAM.
-D introspection=false: Bruk
dette alternativet hvis du er sikker på at du ikke trenger
gobject-introspection filer for polkit, eller ikke har
installert GLib-2.80.4 med GObject Introspection.
-D man=false: Bruk dette
alternativet til å deaktivere generering og installasjon av
manualsider. Dette er nyttig hvis libxslt ikke er installert.
-D examples=true: Bruk dette
alternativet til å bygge eksempel programmer.
-D gtk_doc=true: Bruk dette
alternativet for å aktivere bygging og installering av API
dokumentasjonen.
|
brukes til å innhente informasjon om registrerte PolicyKit handlinger |
|
|
brukes til å sjekke om en prosess er autorisert for handling |
|
|
lar en autorisert bruker utføre en kommando som en annen bruker |
|
|
brukes til å starte en tekstlig autentiseringsagent for emnet |
|
|
gir org.freedesktop.PolicyKit1 D-Bus tjeneste på systemmeldingsbussen |
|
|
inneholder Polkit autentiseringagent API funksjoner |
|
|
inneholder Polkit autentiserings API funksjoner |
Polkit GNOME pakken gir en Autentiseringsagent for Polkit som integreres godt med GNOME Skrivebordsmiljø.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/polkit-gnome/0.105/polkit-gnome-0.105.tar.xz
Nedlasting MD5 sum: 50ecad37c8342fb4a52f590db7530621
Nedlastingsstørrelse: 305 KB
Estimert diskplass som kreves: 5.0 MB
Estimert byggetid: 0.1 SBU
Først, bruk noen rettelser som gjør at det riktige brukerikonet kan brukes, samt noen sikkerhetsrettinger:
patch -Np1 -i ../polkit-gnome-0.105-consolidated_fixes-1.patch
Installer Polkit GNOME ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
For at autentiseringsrammeverket skal fungere, må polkit-gnome-authentication-agent-1 bli startet. Imidlertid, make install installerte ikke en oppstartsfil for Polkit GNOME så du må lage den selv.
Utfør følgende kommandoer som root bruker for å opprette en
oppstartsfil for Polkit
GNOME:
mkdir -p /etc/xdg/autostart &&
cat > /etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop << "EOF"
[Desktop Entry]
Name=PolicyKit Authentication Agent
Comment=PolicyKit Authentication Agent
Exec=/usr/libexec/polkit-gnome-authentication-agent-1
Terminal=false
Type=Application
Categories=
NoDisplay=true
OnlyShowIn=GNOME;XFCE;Unity;
AutostartCondition=GNOME3 unless-session gnome
EOF
Shadow ble faktisk installert i LFS og det er det ingen grunn til å installere den på nytt med mindre du har installert CrackLib eller Linux-PAM etter at LFS systemet ditt ble fullført. Hvis du har installert CrackLib etter LFS, så å installere Shadow på nytt vil aktivere sterkt passord brukerstøtte. Hvis du har installert Linux-PAM, installere Shadow på nytt vil tillate programmer som f.eks login og su å bruke PAM.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/shadow-maint/shadow/releases/download/4.16.0/shadow-4.16.0.tar.xz
Nedlasting MD5 sum: eb70bad3316d08f0d3bb3d4bbeccb3b4
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 100 MB
Estimert byggetid: 0.2 SBU
Linux-PAM-1.6.1 eller CrackLib-2.10.2
Installasjonskommandoene vist nedenfor er for installasjoner hvor Linux-PAM er installert og Shadow blir reinstallert for å støtte Linux-PAM installasjon.
Hvis du installerer Shadow
på nytt for å gi sterk passordstøtte ved å bruke
CrackLib biblioteket uten
å bruke Linux-PAM,
forsikre deg å legge til --with-libcrack parameteren
til configure
skriptet nedenfor og kjør også følgende kommando:
sed -i 's@DICTPATH.*@DICTPATH\t/lib/cracklib/pw_dict@' etc/login.defs
Hvis du installerer shadow på nytt for en
versjonsoppdatering, sørg for å gjenoppnå Linux-PAM
konfigurasjonen nedenfor. Installasjonen av shadow
overskriver mange av filene i /etc/pam.d/.
Installer Shadow på nytt ved å kjøre følgende kommandoer:
sed -i 's/groups$(EXEEXT) //' src/Makefile.in &&
find man -name Makefile.in -exec sed -i 's/groups\.1 / /' {} \; &&
find man -name Makefile.in -exec sed -i 's/getspnam\.3 / /' {} \; &&
find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \; &&
sed -e 's@#ENCRYPT_METHOD DES@ENCRYPT_METHOD YESCRYPT@' \
-e 's@/var/spool/mail@/var/mail@' \
-e '/PATH=/{s@/sbin:@@;s@/bin:@@}' \
-i etc/login.defs &&
./configure --sysconfdir=/etc \
--disable-static \
--without-libbsd \
--with-{b,yes}crypt &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make exec_prefix=/usr pamddir= install
Mansidene ble installert i LFS, men hvis ominstallering er
ønsket, kjør (som root
bruker):
make -C man install-man
sed -i 's/groups$(EXEEXT) //' src/Makefile.in: Denne sed brukes til å undertrykke installasjonen av groups programmet ettersom versjonen fra Coreutils pakken installert under LFS foretrekkes.
find man -name Makefile.in -exec ... {} \;: Den første kommandoen brukes til å undertrykke installasjonen av groups mansider slik at de eksisterende installert fra Coreutils pakken ikke blir erstattet. De to andre kommandoene forhindrer installasjon av manual sider som allerede er installert av Man-pages i LFS.
sed -e 's@#ENCRYPT_METHOD
DES@ENCRYPT_METHOD YESCRYPT@' -e 's@#\(SHA_CRYPT_..._ROUNDS
5000\)@\100@' -e 's@/var/spool/mail@/var/mail@' -e
'/PATH=/{s@/sbin:@@;s@/bin:@@}' -i
etc/login.defs: I stedet for å bruke standard
'DES' metoden, endrer denne kommandoen installasjonen til å
bruke den mye mer sikre 'YESCRYPT' metode for hashing
passord, som også tillater passord lengre enn åtte tegn.
Kommandoen endrer også utdaterte /var/spool/mail plasseringen for
brukerpostkasser som Shadow
bruker som standard til /var/mail plasseringen. Det endrer også
standardbanen for å være i samsvar med det satt i LFS.
--without-libbsd:
Hindrer å lete etter readpassphrase funksjon,
som bare finnes i libbsd, som
vi ikke har i BLFS. En intern implementasjon av readpassphrase brukes i
stedet.
pamddir=: Hindrer
installasjon av de leverte PAM konfigurasjonsfiler til
/etc/pam.d. Den sendte
konfigurasjonen fungerer ikke med BLFS PAM konfigurasjonen og
vi vil opprette disse konfigurasjonsfilene eksplisitt.
Resten av denne siden er viet til å konfigurere Shadow å virke skikkelig med Linux-PAM. Hvis du ikke har Linux-PAM installert, og du installerte Shadow på nytt for å støtte sterke passord via CrackLib biblioteket, ingen ytterligere konfigurasjon er nødvendig.
/etc/pam.d/* eller
alternativt /etc/pam.conf,
/etc/login.defs og
/etc/security/*
Konfigurere systemet ditt til å bruke Linux-PAM kan være en kompleks oppgave. Informasjonen nedenfor vil gi et grunnleggende oppsett sånn at Shadow sin innlogging og passord funksjonalitet vil fungere effektivt med Linux-PAM. Se gjennom informasjonen og lenkene på Linux-PAM-1.6.1 side for videre konfigurasjons informasjon. For informasjon spesifikk for å integrere Shadow, Linux-PAM og libpwquality, kan du besøke følgende lenke:
login
programmet utfører for tiden mange funksjoner som
Linux-PAM modulene skal
håndtere. Følgende sed kommandoen vil
kommentere ut passende linjer i /etc/login.defs, og stoppe login fra å utføre
disse funksjonene (en sikkerhetskopi fil navngitt
/etc/login.defs.orig er
også opprettet for å bevare originalfilens innhold). Kjør
følgende kommandoer som root bruker:
install -v -m644 /etc/login.defs /etc/login.defs.orig &&
for FUNCTION in FAIL_DELAY \
FAILLOG_ENAB \
LASTLOG_ENAB \
MAIL_CHECK_ENAB \
OBSCURE_CHECKS_ENAB \
PORTTIME_CHECKS_ENAB \
QUOTAS_ENAB \
CONSOLE MOTD_FILE \
FTMP_FILE NOLOGINS_FILE \
ENV_HZ PASS_MIN_LEN \
SU_WHEEL_ONLY \
CRACKLIB_DICTPATH \
PASS_CHANGE_TRIES \
PASS_ALWAYS_WARN \
CHFN_AUTH ENCRYPT_METHOD \
ENVIRON_FILE
do
sed -i "s/^${FUNCTION}/# &/" /etc/login.defs
done
Som nevnt tidligere i Linux-PAM instruksjonene,
Linux-PAM har støtte for
to metoder for konfigurasjon. Kommandoene nedenfor antar
at du har valgt å bruke en mappebasert konfigurasjon,
hvor hvert program har sin egen konfigurasjonsfil. Du kan
valgfritt bruke en singel /etc/pam.conf konfigurasjonsfilen ved å
bruke tekst fra filene nedenfor, og oppgi programnavnet
som en ekstra første felt for hver linje.
Som root bruker, opprett
følgende Linux-PAM
konfigurasjonsfiler i /etc/pam.d/ mappen (eller legg til
innholdet i /etc/pam.conf
filen) ved å bruke følgende kommandoer:
cat > /etc/pam.d/login << "EOF"
# Begin /etc/pam.d/login
# Set failure delay before next prompt to 3 seconds
auth optional pam_faildelay.so delay=3000000
# Check to make sure that the user is allowed to login
auth requisite pam_nologin.so
# Check to make sure that root is allowed to login
# Disabled by default. You will need to create /etc/securetty
# file for this module to function. See man 5 securetty.
#auth required pam_securetty.so
# Additional group memberships - disabled by default
#auth optional pam_group.so
# include system auth settings
auth include system-auth
# check access for the user
account required pam_access.so
# include system account settings
account include system-account
# Set default environment variables for the user
session required pam_env.so
# Set resource limits for the user
session required pam_limits.so
# Display the message of the day - Disabled by default
#session optional pam_motd.so
# Check user's mail - Disabled by default
#session optional pam_mail.so standard quiet
# include system session and password settings
session include system-session
password include system-password
# End /etc/pam.d/login
EOF
cat > /etc/pam.d/passwd << "EOF"
# Begin /etc/pam.d/passwd
password include system-password
# End /etc/pam.d/passwd
EOF
cat > /etc/pam.d/su << "EOF"
# Begin /etc/pam.d/su
# always allow root
auth sufficient pam_rootok.so
# Allow users in the wheel group to execute su without a password
# disabled by default
#auth sufficient pam_wheel.so trust use_uid
# include system auth settings
auth include system-auth
# limit su to users in the wheel group
# disabled by default
#auth required pam_wheel.so use_uid
# include system account settings
account include system-account
# Set default environment variables for the service user
session required pam_env.so
# include system session settings
session include system-session
# End /etc/pam.d/su
EOF
cat > /etc/pam.d/chpasswd << "EOF"
# Begin /etc/pam.d/chpasswd
# always allow root
auth sufficient pam_rootok.so
# include system auth and account settings
auth include system-auth
account include system-account
password include system-password
# End /etc/pam.d/chpasswd
EOF
sed -e s/chpasswd/newusers/ /etc/pam.d/chpasswd >/etc/pam.d/newusers
cat > /etc/pam.d/chage << "EOF"
# Begin /etc/pam.d/chage
# always allow root
auth sufficient pam_rootok.so
# include system auth and account settings
auth include system-auth
account include system-account
# End /etc/pam.d/chage
EOF
for PROGRAM in chfn chgpasswd chsh groupadd groupdel \
groupmems groupmod useradd userdel usermod
do
install -v -m644 /etc/pam.d/chage /etc/pam.d/${PROGRAM}
sed -i "s/chage/$PROGRAM/" /etc/pam.d/${PROGRAM}
done
På dette tidspunktet bør du gjøre en enkel test for å
se om Shadow fungerer
som forventet. Åpne en annen terminal og logg på som
root, og kjør så
login og
logg inn som en annen bruker. Hvis du ikke ser noen
feil, så er alt bra og du bør fortsette med resten av
konfigurasjonen. Hvis du fikk feil, stopp nå og
dobbeltsjekk konfigurasjonsfilene ovenfor manuelt.
Enhver feil er et tegn på en feil i prosedyren ovenfor.
Du kan også kjøre testpakken fra Linux-PAM pakken for å hjelpe deg
med å finne problemet. Hvis du ikke finner og fikser
feilen, bør du kompilere Shadow på nytt å legge til
--without-libpam bryteren
til configure kommandoen
i instruksjonene ovenfor (flytt også /etc/login.defs.orig
sikkerhetskopifil til /etc/login.defs). Hvis du ikke klarer
å gjøre dette og feilene gjenstår, vil du ikke kunne
logge inn på ditt system.
I stedet for å bruke /etc/login.access filen for å
kontrollere tilgangen til systemet, Linux-PAM bruker pam_access.so modulen sammen med
/etc/security/access.conf
filen. Gi nytt navn til /etc/login.access filen ved hjelp av
følgende kommando:
if [ -f /etc/login.access ]; then mv -v /etc/login.access{,.NOUSE}; fi
I stedet for å bruke /etc/limits filen for å begrense bruken
av systemressurser, Linux-PAM bruker pam_limits.so modulen sammen med
/etc/security/limits.conf
filen. Gi nytt navn til /etc/limits filen ved å bruke følgende
kommando:
if [ -f /etc/limits ]; then mv -v /etc/limits{,.NOUSE}; fi
Sørg for å teste påloggingsmulighetene til systemet før du logger ut. Feil i konfigurasjonen kan forårsake en permanent utestengelse som krever oppstart fra en ekstern kilde for å korrigere problemet.
En liste over de installerte filene, sammen med deres korte beskrivelser kan bli funnet på ../../../../lfs/view/12.2-systemd/chapter08/shadow.html#contents-shadow.
ssh-askpass er et generisk kjørbart navn for mange pakker, med lignende navn, som gir en interaktiv X-tjeneste til å hente passord for pakker som krever administrative rettigheter for å kjøres. Den spør brukeren med en vindusboks hvor det nødvendige passordet kan bli satt inn. Her velger vi Damien Millers pakke distribuert i OpenSSH tarball.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
Nedlasting MD5 sum: bc04ff77796758c0b37bd0bc9314cd3f
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK+-3.24.43, Sudo-1.9.15p5 (kjøretid), Xorg Biblioteker, og et grafiske miljø (kjøretid)
Installer ssh-askpass ved å kjøre følgende kommandoer:
cd contrib && make gnome-ssh-askpass3
Nå, som root bruker:
install -v -d -m755 /usr/libexec/openssh/contrib && install -v -m755 gnome-ssh-askpass3 /usr/libexec/openssh/contrib && ln -sv -f contrib/gnome-ssh-askpass3 /usr/libexec/openssh/ssh-askpass
Bruken av /usr/libexec/openssh/contrib og en symbolkobling er rettferdiggjort av eventuell nødvendighet av et annet program for den tjenesten.
Som root bruker, konfigurer
Sudo-1.9.15p5 til å bruke ssh-askpass:
cat >> /etc/sudo.conf << "EOF" &&
# Path to askpass helper program
Path askpass /usr/libexec/openssh/ssh-askpass
EOF
chmod -v 0644 /etc/sudo.conf
Dersom en gitt grafisk <applikasjon> krever administrative privilegier, bruk sudo -A <application> fra en x-terminal, fra en Vindusbehandler meny og/eller erstatt "Exec=<application> ..." med "Exec=sudo -A <application> ..." i <application>.skrivebordsfilen.
gnome-ssh-askpass3)
stunnel pakken inneholder et program som lar deg kryptere vilkårlige TCP tilkoblinger i SSL (Secure Sockets Layer) slik at du enkelt kan kommunisere med klienter over en sikker kanal. stunnel kan også brukes til å tunnelere PPP over nettverkskontakter uten endringer i serverpakkens kildekode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.stunnel.org/downloads/archive/5.x/stunnel-5.72.tar.gz
Nedlasting MD5 sum: 61d35d2df1b96b23ed6fb20cf5ddb613
Nedlastingsstørrelse: 880 KB
Estimert diskplass som kreves: 7.5 MB
Estimert byggetid: mindre enn 0.1 SBU
libnsl-2.0.1, netcat (nødvendig for tester), tcpwrappers, og TOR
stunnel nissen
vil bli kjørt i et chroot fengsel av en
uprivilegert bruker. Opprett en ny bruker og gruppe ved å
bruke følgende kommandoer som root bruker:
groupadd -g 51 stunnel &&
useradd -c "stunnel Daemon" -d /var/lib/stunnel \
-g stunnel -s /bin/false -u 51 stunnel
Et signert SSL sertifikat og en privat nøkkel er nødvendig
for å kjøre stunnel nissen. Etter at
pakken er installert, er det instruksjoner for å generere
dem. Men hvis du eier eller allerede har opprettet et
signert SSL sertifikat du ønsker å bruke, kopier det til
/etc/stunnel/stunnel.pem før
du starter å bygge (bare sikre at root har lese- og skrivetilgang).
.pem filen må formateres som
vist nedenfor:
-----BEGIN PRIVATE KEY-----
<many encrypted lines of private key>
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
<many encrypted lines of certificate>
-----END CERTIFICATE-----
-----BEGIN DH PARAMETERS-----
<encrypted lines of dh parms>
-----END DH PARAMETERS-----
Installer stunnel ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var &&
make
Hvis du har installert den valgfrie netcat applikasjonen, regresjonstester kan kjøres med make check.
Nå, som root bruker:
make docdir=/usr/share/doc/stunnel-5.72 install
Installer den medfølgende systemd enheten ved å kjøre
følgende kommando som root
bruker:
install -v -m644 tools/stunnel.service /usr/lib/systemd/system
Hvis du ikke allerede har et signert SSL sertifikat og privat
nøkkel, opprett stunnel.pem
filen i /etc/stunnel mappen ved
å bruke kommandoen nedenfor. Du vil bli bedt om å angi
nødvendig informasjon. Sørg for at du svarer på
Common Name (FQDN of your server) [localhost]:
ledeteksten med navnet eller IP adressen du skal bruke for å få tilgang til tjenesten(e).
For å generere et sertifikat, som root bruker, kjør:
make cert
make docdir=... install: Denne kommandoen installerer pakken og endrer dokumentasjonsinstallasjonsmappen til standard navnekonvensjoner.
Som root bruker, opprett
mappen som brukes til .pid
fil opprettet når stunnel
nissen startet:
install -v -m750 -o stunnel -g stunnel -d /var/lib/stunnel/run && chown stunnel:stunnel /var/lib/stunnel
Deretter lager du en grunnleggende /etc/stunnel/stunnel.conf
konfigurasjonsfil ved å bruke følgende kommandoer som
root bruker:
cat > /etc/stunnel/stunnel.conf << "EOF"
; File: /etc/stunnel/stunnel.conf
; Note: The pid and output locations are relative to the chroot location.
pid = /run/stunnel.pid
chroot = /var/lib/stunnel
client = no
setuid = stunnel
setgid = stunnel
cert = /etc/stunnel/stunnel.pem
;debug = 7
;output = stunnel.log
;[https]
;accept = 443
;connect = 80
;; "TIMEOUTclose = 0" is a workaround for a design flaw in Microsoft SSL
;; Microsoft implementations do not use SSL close-notify alert and thus
;; they are vulnerable to truncation attacks
;TIMEOUTclose = 0
EOF
Til slutt legger du til tjenesten(e) du ønsker å kryptere til konfigurasjonsfilen. Formatet er som følger:
[<service>]
accept = <hostname:portnumber>
connect = <hostname:portnumber>
For en fullstendig forklaring av kommandoene og syntaksen som brukes i konfigurasjonsfilen, kjør man stunnel.
Sudo pakken tillater en
systemadministrator å gi visse brukere (eller grupper av
brukere) muligheten til å kjøre noen (eller alle) kommandoer
som root eller en annen
bruker mens kommandoer og argumenter logges.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.sudo.ws/dist/sudo-1.9.15p5.tar.gz
Nedlasting MD5 sum: 4166279cb188ecb6641c7a2ba5f68270
Nedlastingsstørrelse: 5.1 MB
Estimert diskplass som kreves: 53 MB (legg til 18 MB for tester)
Estimert byggetid: 0.2 SBU (med parallellitet=4; legg til 0,1 SBU for tester)
Linux-PAM-1.6.1, MIT Kerberos V5-1.21.3, OpenLDAP-2.6.8, MTA (som gir en sendmail kommando), AFS, libaudit, Opie, og Sssd
Installer Sudo ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--libexecdir=/usr/lib \
--with-secure-path \
--with-env-editor \
--docdir=/usr/share/doc/sudo-1.9.15p5 \
--with-passprompt="[sudo] password for %p: " &&
make
For å teste resultatene, utsted: env LC_ALL=C make check |& tee make-check.log. Sjekk resultatene med grep failed make-check.log.
Nå, som root bruker:
make install
--libexecdir=/usr/lib: Denne
bryteren kontrollerer hvor private programmer er installert.
Alt i den mappen er et bibliotek, så de hører under
/usr/lib i stedet for
/usr/libexec.
--with-secure-path:
Denne bryteren legger transparent til /sbin og /usr/sbin mappene til PATH miljøvariabelen.
--with-env-editor:
Denne bryteren muliggjør bruk av miljøvariabel EDITOR for
visudo.
--with-passprompt:
Denne bryteren angir passordforespørselen. %p utvides til navnet på
brukeren hvis passord blir bedt om.
--without-pam: Denne bryteren
unngår bygging av Linux-PAM
støtte når Linux-PAM er
installert på systemet.
--with-all-insults: Denne
bryteren inkluderer alle sudo insult sett. Insults skrives ut
hvis brukeren skriver en dårlig passord, og hvis aktivert i
/etc/sudoers. Bruk --with-insults for å ha dem aktivert som
standard. Ulike sett med insults kan velges med noen andre
brytere.
Det er mange alternativer til sudo sin configure kommandoen. Undersøk configure --help utdata for en fullstendig liste.
sudoers fil kan være ganske
komplisert. Den er sammensatt av to typer oppføringer:
aliaser (i utgangspunktet variabler) og
brukerspesifikasjoner (som spesifiserer hvem som kan kjøre
hva). Installasjonen installerer en standardkonfigurasjon
som ikke har noen rettigheter installert for noen bruker.
Et par vanlige konfigurasjonsendringer er å angi banen for
superbruker og for å tillate medlemmer av wheel gruppen å
utføre alle kommandoer etter å ha oppgitt sin egen
legitimasjon. Bruk følgende kommandoer for å lage
/etc/sudoers.d/00-sudo
konfigurasjonsfilen som root bruker:
cat > /etc/sudoers.d/00-sudo << "EOF"
Defaults secure_path="/usr/sbin:/usr/bin"
%wheel ALL=(ALL) ALL
EOF
I svært enkle installasjoner hvor det kun er en bruker,
kan det være lettere å bare redigere /etc/sudoers filen direkte. I så fall
secure_path oppføring er
kanskje ikke nødvendig og bruke sudo -E ... kan
importer den ikke-privilegerte brukerens fullstendige
miljø inn i privilegert økt.
Filene i /etc/sudoers.d
mappen analyseres i sortert leksikalsk rekkefølge. Vær
forsiktig med at oppføringer i en tillagt fil ikke
overskriv tidligere oppføringer.
For detaljer, se man sudoers.
Sudo utviklere anbefaler
på det sterkeste å bruke visudo programmet for å
redigere sudoers filen.
Dette vil gi grunnleggende tilregnelighetssjekk som
syntaksanalyse og filtillatelse for å unngå noen mulige
feil som kan føre til en sårbar konfigurasjon.
Hvis PAM er installert på
systemet, Sudo er bygget
med PAM støtte. Kjør i så
fall følgende kommando som root bruker for å opprette PAM konfigurasjonsfil:
cat > /etc/pam.d/sudo << "EOF"
# Begin /etc/pam.d/sudo
# include the default auth settings
auth include system-auth
# include the default account settings
account include system-account
# Set default environment variables for the service user
session required pam_env.so
# include system session defaults
session include system-session
# End /etc/pam.d/sudo
EOF
chmod 644 /etc/pam.d/sudo
|
konverterer mellom sudoers filformater |
|
|
utfører en kommando som en annen bruker som tillatt
av |
|
|
er en sudo hendelse og I/O loggserver |
|
|
sender sudo I/O logger til loggserveren |
|
|
er en symbolkobling til sudo som
innebærer |
|
|
brukes til å spille av eller vise utdataens logger opprettet av sudo |
|
|
gir mulighet for sikrere redigering av |
Tripwire pakken inneholder programmer som brukes til å verifisere integriteten til filene på et gitt system.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/Tripwire/tripwire-open-source/releases/download/2.4.3.7/tripwire-open-source-2.4.3.7.tar.gz
Nedlasting MD5 sum: a5cf1bc2f235f5d8ca458f00548db6ee
Nedlastingsstørrelse: 980 KB
Estimert diskplass som kreves: 29 MB
Estimert byggetid: 1.6 SBU (skriptinstallasjon)
Kompilere Tripwire ved å kjøre følgende kommandoer:
sed -e '/^CLOBBER/s/false/true/' \
-e 's|TWDB="${prefix}|TWDB="/var|' \
-e '/TWMAN/ s|${prefix}|/usr/share|' \
-e '/TWDOCS/s|${prefix}/doc/tripwire|/usr/share/doc/tripwire-2.4.3.7|' \
-i installer/install.cfg &&
find . -name Makefile.am | xargs \
sed -i 's/^[[:alpha:]_]*_HEADERS.*=/noinst_HEADERS =/' &&
sed '/dist/d' -i man/man?/Makefile.am &&
autoreconf -fi &&
./configure --prefix=/usr --sysconfdir=/etc/tripwire &&
make CPPFLAGS=-std=c++11
Standardkonfigurasjonen er å bruke en lokal MTA. Hvis du
ikke har en MTA installert og ikke ønsker å installere en,
endre install/install.cfg å
bruke en SMTP server i stedet. Ellers vil installasjonen
mislykkes.
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && cp -v policy/*.txt /usr/share/doc/tripwire-2.4.3.7
I løpet av make install, flere spørsmål blir spurt, inkludert passord. Hvis du vil lage et skript, må du anvende en sed før du kjører make install:
sed -i -e 's@installer/install.sh@& -n -s<site-password>-l<local-password>@' Makefile
Selvfølgelig bør du gjøre dette med dummy passord og endre dem seinere.
Et annet problem ved skripting er at installasjonsprogrammet avsluttes når standard inngang ikke er en terminal. Du kan deaktivere denne oppførselen med følgende sed:
sed '/-t 0/,+3d' -i installer/install.sh
sed ...
installer/install.cfg: Denne kommandoen
forteller pakken å installere programdatabasen og rapporter i
/var/lib/tripwire og setter inn
riktig plassering for mansider og dokumentasjon.
find ..., sed ..., og autoreconf -fi: Byggesystemet er ubrukelig som det er, og må endres for at byggingen skal lykkes.
CPPFLAGS=-std=c++11:
Innstilling av C++ forprosessorens flagg til versjon 11 er
nødvendig for å forhindre konflikt med standardversjon som er
c++17 i nyere versjon av gcc.
make install:
Denne kommandoen oppretter Tripwire sikkerhetsnøkler samt
installerer binærfilene. Det er to nøkler: en stedsnøkkel og
en lokal nøkkel som er lagret i /etc/tripwire/.
cp -v policy/*.txt /usr/doc/tripwire-2.4.3.7: Denne kommandoen installerer tripwire eksempel regelfiler med den andre tripwire dokumentasjonen.
Tripwire bruker en
regelfil til å finne ut hvilke filer som er
integritetssjekket. Standard regelfil (/etc/tripwire/twpol.txt) er for en
standardinstallasjon og må oppdateres for ditt system.
Regelfiler bør skreddersys til hver enkelt distribusjon
og/eller installasjon. Noen eksempler på regelfiler kan
finnes i /usr/share/doc/tripwire/.
Hvis ønskelig, kopier regelfilen du vil prøve til
/etc/tripwire/ i stedet for å
bruke standard regelfil, twpol.txt. Det er imidlertid anbefalt at
du redigerer regelfilen. Få ideer fra eksempler ovenfor og
les /usr/share/doc/tripwire/policyguide.txt
for tilleggsinformasjon. twpol.txt er en god regelfil for å lære
om Tripwire da den vil
merke eventuelle endringer i filsystemet og til og med kan
brukes som en irriterende måte å holde styr på endringer
for avinstallering av programvare.
Etter at regelfilen din er redigert til din tilfredshet kan
du starte konfigurasjonstrinnene (kjør som root) bruker:
twadmin --create-polfile --site-keyfile /etc/tripwire/site.key \
/etc/tripwire/twpol.txt &&
tripwire --init
Avhengig av systemet ditt og innholdet i regelfilen, vil initialiseringsfasen ovenfor kan ta relativt lang tid.
Tripwire vil identifisere filendringer i de kritiske systemfilene som er spesifisert i regelfilen. Bruk av Tripwire mens du gjør hyppige endringer i disse mappene vil flagge alle disse endringene. Det er mest nyttig etter at et system har nådd en konfigurasjon som brukeren vurderer stabil.
Å bruke Tripwire etter å ha opprettet en regelfil for å kjøre en rapport, bruk følgende kommando:
tripwire --check > /etc/tripwire/report.txt
Se utdataene for å sjekke integriteten til filene dine. En automatisk integritetsrapport kan produseres ved å bruke en cron fasilitet for å planlegge kjøringene.
Rapporter lagres binært og om ønskelig kryptert. Se
rapporter, som root bruker,
med:
twprint --print-report -r /var/lib/tripwire/report/<report-name.twr>
Etter at du har kjørt en integritetssjekk, bør du undersøke
rapporten (eller e-posten) og endre deretter Tripwire database for å gjenspeile de
endrede filene på systemet ditt. Dette er for at
Tripwire vil ikke varsle
deg kontinuerlig om filer du har endret med vilje er et
sikkerhetsbrudd. Å gjøre dette må du først ls -l
/var/lib/tripwire/report/ og legg merke til
navnet på den nyeste filen som starter med systemnavnet
ditt som presentert av kommandoen uname -n og ender med
.twr. Disse filene ble
opprettet under rapportoppretting og den nyeste er
nødvendig for å oppdatere Tripwire databasen til systemet ditt.
Som root bruker, skriv inn
følgende kommando og bruk det riktige rapportnavnet:
tripwire --update --twrfile /var/lib/tripwire/report/<report-name.twr>
Du vil bli plassert i Vim med en kopi av rapporten foran deg. Hvis alle endringene var gode, så bare skriv :wq og etter å ha tastet inn din lokale nøkkel, databasen vil bli oppdatert. Hvis det er filer du fortsatt vil bli advart om, fjern 'x' før filnavnet i rapporten og skriv :wq.
|
er et signaturinnsamlingsverktøy som viser hash funksjonsverdiene for de angitte filene |
|
|
er hovedprogrammet for kontroll av filintegritet |
|
|
administrativt og verktøy som brukes til å utføre visse administrative funksjoner knyttet til Tripwire filer og konfigurasjons alternativer |
|
|
printer Tripwire database- og rapportfiler i klartekstformat |
Journalføring av filsystemer reduserer tiden det tar å gjenopprette et filsystem som ikke var riktig avmontert. Selv om dette kan være ekstremt viktig i å redusere nedetid for servere, har det også blitt populært for skrivebordsmiljøer. Dette kapittelet inneholder andre journalføringsfilsystemer du kan bruke i stedet for standard LFS utvidet filsystem (ext2/3/4). Det gir også introduksjonsmateriell om administrasjon av diskmatriser.
Det eneste formålet med en initramfs er å montere root filsystemet. initramfs er et komplett sett med mapper som du finner på et normalt root filsystem. Den er samlet i et enkelt cpio arkiv og komprimert med en av flere komprimeringsalgoritmer.
Ved oppstart laster oppstartslasteren inn kjernen og initramfs bildet inn i minnet og starter kjernen. Kjernen sjekker tilstedeværelsen av initramfs og, hvis funnet, monterer den som / og kjører /init. Init programmet er vanligvis et skallskript. Merk at oppstartsprosessen tar lengre tid, muligens betydelig lengre, hvis en initramfs brukes.
For de fleste distribusjoner er kjernemoduler den største grunnen til å ha en initramfs. I en generell distribusjon er det mange ukjente slikt som filsystemtyper og diskoppsett. På en måte er dette det motsatte av LFS hvor systemkapasiteten og oppsettet er kjent og en tilpasset kjerne er normalt bygget. I denne situasjonen er det sjeldent behov for initramfs.
Det er bare fire primære grunner til å ha en initramfs i et LFS miljø: laste rootfs fra et nettverk, laste det fra et LVM logisk volum, ha en kryptert rootfs der et passord kreves, eller for enkelhets skyld å spesifisere rootfs som en LABEL eller UUID. Hva som helst annet betyr vanligvis at kjernen ikke var riktig konfigurert.
Hvis du bestemmer deg for å bygge en initramfs, vil følgende skript gi et grunnlag for å gjøre det. Skriptene vil tillate å spesifisere en rootfs via partisjon UUID eller partisjon LABEL eller en rootfs på en LVM logisk volum. De støtter ikke et kryptert rootfilsystem eller montering rootfs over et nettverkskort. For en mer fullstendig funksjon se LFS Hint eller dracut.
For å installere disse skriptene, kjør følgende kommandoer
som root bruker:
cat > /usr/sbin/mkinitramfs << "EOF"
#!/bin/bash
# This file based in part on the mkinitramfs script for the LFS LiveCD
# written by Alexander E. Patrakov and Jeremy Huntwork.
copy()
{
local file
if [ "$2" = "lib" ]; then
file=$(PATH=/usr/lib type -p $1)
else
file=$(type -p $1)
fi
if [ -n "$file" ] ; then
cp $file $WDIR/usr/$2
else
echo "Missing required file: $1 for directory $2"
rm -rf $WDIR
exit 1
fi
}
if [ -z $1 ] ; then
INITRAMFS_FILE=initrd.img-no-kmods
else
KERNEL_VERSION=$1
INITRAMFS_FILE=initrd.img-$KERNEL_VERSION
fi
if [ -n "$KERNEL_VERSION" ] && [ ! -d "/usr/lib/modules/$1" ] ; then
echo "No modules directory named $1"
exit 1
fi
printf "Creating $INITRAMFS_FILE... "
binfiles="sh cat cp dd killall ls mkdir mknod mount "
binfiles="$binfiles umount sed sleep ln rm uname"
binfiles="$binfiles readlink basename"
# Systemd installs udevadm in /bin. Other udev implementations have it in /sbin
if [ -x /usr/bin/udevadm ] ; then binfiles="$binfiles udevadm"; fi
sbinfiles="modprobe blkid switch_root"
# Optional files and locations
for f in mdadm mdmon udevd udevadm; do
if [ -x /usr/sbin/$f ] ; then sbinfiles="$sbinfiles $f"; fi
done
# Add lvm if present (cannot be done with the others because it
# also needs dmsetup
if [ -x /usr/sbin/lvm ] ; then sbinfiles="$sbinfiles lvm dmsetup"; fi
unsorted=$(mktemp /tmp/unsorted.XXXXXXXXXX)
DATADIR=/usr/share/mkinitramfs
INITIN=init.in
# Create a temporary working directory
WDIR=$(mktemp -d /tmp/initrd-work.XXXXXXXXXX)
# Create base directory structure
mkdir -p $WDIR/{dev,run,sys,proc,usr/{bin,lib/{firmware,modules},sbin}}
mkdir -p $WDIR/etc/{modprobe.d,udev/rules.d}
touch $WDIR/etc/modprobe.d/modprobe.conf
ln -s usr/bin $WDIR/bin
ln -s usr/lib $WDIR/lib
ln -s usr/sbin $WDIR/sbin
ln -s lib $WDIR/lib64
# Create necessary device nodes
mknod -m 640 $WDIR/dev/console c 5 1
mknod -m 664 $WDIR/dev/null c 1 3
# Install the udev configuration files
if [ -f /etc/udev/udev.conf ]; then
cp /etc/udev/udev.conf $WDIR/etc/udev/udev.conf
fi
for file in $(find /etc/udev/rules.d/ -type f) ; do
cp $file $WDIR/etc/udev/rules.d
done
# Install any firmware present
cp -a /usr/lib/firmware $WDIR/usr/lib
# Copy the RAID configuration file if present
if [ -f /etc/mdadm.conf ] ; then
cp /etc/mdadm.conf $WDIR/etc
fi
# Install the init file
install -m0755 $DATADIR/$INITIN $WDIR/init
if [ -n "$KERNEL_VERSION" ] ; then
if [ -x /usr/bin/kmod ] ; then
binfiles="$binfiles kmod"
else
binfiles="$binfiles lsmod"
sbinfiles="$sbinfiles insmod"
fi
fi
# Install basic binaries
for f in $binfiles ; do
ldd /usr/bin/$f | sed "s/\t//" | cut -d " " -f1 >> $unsorted
copy /usr/bin/$f bin
done
for f in $sbinfiles ; do
ldd /usr/sbin/$f | sed "s/\t//" | cut -d " " -f1 >> $unsorted
copy $f sbin
done
# Add udevd libraries if not in /usr/sbin
if [ -x /usr/lib/udev/udevd ] ; then
ldd /usr/lib/udev/udevd | sed "s/\t//" | cut -d " " -f1 >> $unsorted
elif [ -x /usr/lib/systemd/systemd-udevd ] ; then
ldd /usr/lib/systemd/systemd-udevd | sed "s/\t//" | cut -d " " -f1 >> $unsorted
fi
# Add module symlinks if appropriate
if [ -n "$KERNEL_VERSION" ] && [ -x /usr/bin/kmod ] ; then
ln -s kmod $WDIR/usr/bin/lsmod
ln -s kmod $WDIR/usr/bin/insmod
fi
# Add lvm symlinks if appropriate
# Also copy the lvm.conf file
if [ -x /usr/sbin/lvm ] ; then
ln -s lvm $WDIR/usr/sbin/lvchange
ln -s lvm $WDIR/usr/sbin/lvrename
ln -s lvm $WDIR/usr/sbin/lvextend
ln -s lvm $WDIR/usr/sbin/lvcreate
ln -s lvm $WDIR/usr/sbin/lvdisplay
ln -s lvm $WDIR/usr/sbin/lvscan
ln -s lvm $WDIR/usr/sbin/pvchange
ln -s lvm $WDIR/usr/sbin/pvck
ln -s lvm $WDIR/usr/sbin/pvcreate
ln -s lvm $WDIR/usr/sbin/pvdisplay
ln -s lvm $WDIR/usr/sbin/pvscan
ln -s lvm $WDIR/usr/sbin/vgchange
ln -s lvm $WDIR/usr/sbin/vgcreate
ln -s lvm $WDIR/usr/sbin/vgscan
ln -s lvm $WDIR/usr/sbin/vgrename
ln -s lvm $WDIR/usr/sbin/vgck
# Conf file(s)
cp -a /etc/lvm $WDIR/etc
fi
# Install libraries
sort $unsorted | uniq | while read library ; do
# linux-vdso and linux-gate are pseudo libraries and do not correspond to a file
# libsystemd-shared is in /lib/systemd, so it is not found by copy, and
# it is copied below anyway
if [[ "$library" == linux-vdso.so.1 ]] ||
[[ "$library" == linux-gate.so.1 ]] ||
[[ "$library" == libsystemd-shared* ]]; then
continue
fi
copy $library lib
done
if [ -d /usr/lib/udev ]; then
cp -a /usr/lib/udev $WDIR/usr/lib
fi
if [ -d /usr/lib/systemd ]; then
cp -a /usr/lib/systemd $WDIR/usr/lib
fi
if [ -d /usr/lib/elogind ]; then
cp -a /usr/lib/elogind $WDIR/usr/lib
fi
# Install the kernel modules if requested
if [ -n "$KERNEL_VERSION" ]; then
find \
/usr/lib/modules/$KERNEL_VERSION/kernel/{crypto,fs,lib} \
/usr/lib/modules/$KERNEL_VERSION/kernel/drivers/{block,ata,nvme,md,firewire} \
/usr/lib/modules/$KERNEL_VERSION/kernel/drivers/{scsi,message,pcmcia,virtio} \
/usr/lib/modules/$KERNEL_VERSION/kernel/drivers/usb/{host,storage} \
-type f 2> /dev/null | cpio --make-directories -p --quiet $WDIR
cp /usr/lib/modules/$KERNEL_VERSION/modules.{builtin,order} \
$WDIR/usr/lib/modules/$KERNEL_VERSION
if [ -f /usr/lib/modules/$KERNEL_VERSION/modules.builtin.modinfo ]; then
cp /usr/lib/modules/$KERNEL_VERSION/modules.builtin.modinfo \
$WDIR/usr/lib/modules/$KERNEL_VERSION
fi
depmod -b $WDIR $KERNEL_VERSION
fi
( cd $WDIR ; find . | cpio -o -H newc --quiet | gzip -9 ) > $INITRAMFS_FILE
# Prepare early loading of microcode if available
if ls /usr/lib/firmware/intel-ucode/* >/dev/null 2>&1 ||
ls /usr/lib/firmware/amd-ucode/* >/dev/null 2>&1; then
# first empty WDIR to reuse it
rm -r $WDIR/*
DSTDIR=$WDIR/kernel/x86/microcode
mkdir -p $DSTDIR
if [ -d /usr/lib/firmware/amd-ucode ]; then
cat /usr/lib/firmware/amd-ucode/microcode_amd*.bin > $DSTDIR/AuthenticAMD.bin
fi
if [ -d /usr/lib/firmware/intel-ucode ]; then
cat /usr/lib/firmware/intel-ucode/* > $DSTDIR/GenuineIntel.bin
fi
( cd $WDIR; find . | cpio -o -H newc --quiet ) > microcode.img
cat microcode.img $INITRAMFS_FILE > tmpfile
mv tmpfile $INITRAMFS_FILE
rm microcode.img
fi
# Remove the temporary directories and files
rm -rf $WDIR $unsorted
printf "done.\n"
EOF
chmod 0755 /usr/sbin/mkinitramfs
mkdir -p /usr/share/mkinitramfs &&
cat > /usr/share/mkinitramfs/init.in << "EOF"
#!/bin/sh
PATH=/usr/bin:/usr/sbin
export PATH
problem()
{
printf "Encountered a problem!\n\nDropping you to a shell.\n\n"
sh
}
no_device()
{
printf "The device %s, which is supposed to contain the\n" $1
printf "root file system, does not exist.\n"
printf "Please fix this problem and exit this shell.\n\n"
}
no_mount()
{
printf "Could not mount device %s\n" $1
printf "Sleeping forever. Please reboot and fix the kernel command line.\n\n"
printf "Maybe the device is formatted with an unsupported file system?\n\n"
printf "Or maybe filesystem type autodetection went wrong, in which case\n"
printf "you should add the rootfstype=... parameter to the kernel command line.\n\n"
printf "Available partitions:\n"
}
do_mount_root()
{
mkdir /.root
[ -n "$rootflags" ] && rootflags="$rootflags,"
rootflags="$rootflags$ro"
case "$root" in
/dev/* ) device=$root ;;
UUID=* ) eval $root; device="/dev/disk/by-uuid/$UUID" ;;
PARTUUID=*) eval $root; device="/dev/disk/by-partuuid/$PARTUUID" ;;
LABEL=* ) eval $root; device="/dev/disk/by-label/$LABEL" ;;
"" ) echo "No root device specified." ; problem ;;
esac
while [ ! -b "$device" ] ; do
no_device $device
problem
done
if ! mount -n -t "$rootfstype" -o "$rootflags" "$device" /.root ; then
no_mount $device
cat /proc/partitions
while true ; do sleep 10000 ; done
else
echo "Successfully mounted device $root"
fi
}
do_try_resume()
{
case "$resume" in
UUID=* ) eval $resume; resume="/dev/disk/by-uuid/$UUID" ;;
LABEL=*) eval $resume; resume="/dev/disk/by-label/$LABEL" ;;
esac
if $noresume || ! [ -b "$resume" ]; then return; fi
ls -lH "$resume" | ( read x x x x maj min x
echo -n ${maj%,}:$min > /sys/power/resume )
}
init=/sbin/init
root=
rootdelay=
rootfstype=auto
ro="ro"
rootflags=
device=
resume=
noresume=false
mount -n -t devtmpfs devtmpfs /dev
mount -n -t proc proc /proc
mount -n -t sysfs sysfs /sys
mount -n -t tmpfs tmpfs /run
read -r cmdline < /proc/cmdline
for param in $cmdline ; do
case $param in
init=* ) init=${param#init=} ;;
root=* ) root=${param#root=} ;;
rootdelay=* ) rootdelay=${param#rootdelay=} ;;
rootfstype=*) rootfstype=${param#rootfstype=} ;;
rootflags=* ) rootflags=${param#rootflags=} ;;
resume=* ) resume=${param#resume=} ;;
noresume ) noresume=true ;;
ro ) ro="ro" ;;
rw ) ro="rw" ;;
esac
done
# udevd location depends on version
if [ -x /sbin/udevd ]; then
UDEVD=/sbin/udevd
elif [ -x /lib/udev/udevd ]; then
UDEVD=/lib/udev/udevd
elif [ -x /lib/systemd/systemd-udevd ]; then
UDEVD=/lib/systemd/systemd-udevd
else
echo "Cannot find udevd nor systemd-udevd"
problem
fi
${UDEVD} --daemon --resolve-names=never
udevadm trigger
udevadm settle
if [ -f /etc/mdadm.conf ] ; then mdadm -As ; fi
if [ -x /sbin/vgchange ] ; then /sbin/vgchange -a y > /dev/null ; fi
if [ -n "$rootdelay" ] ; then sleep "$rootdelay" ; fi
do_try_resume # This function will not return if resuming from disk
do_mount_root
killall -w ${UDEVD##*/}
exec switch_root /.root "$init" "$@"
EOF
LVM2-2.03.26 og/eller mdadm-4.3 må installeres før generering av initramfs, hvis systempartisjonen bruker dem.
For å bygge en initramfs, kjør følgende som root bruker:
mkinitramfs [KERNEL VERSION]
Det valgfrie argumentet er mappen der de aktuelle
kjernenmodulene er plassert. Dette må være en undermappe av
/lib/modules. Hvis ingen
moduler er spesifisert, så blir initramfs navngitt
initrd.img-no-kmods.
Hvis en kjerneversjon er spesifisert, får initrd navnet
initrd.img-$KERNEL_VERSION og er
bare passende for den spesifiserte kjernen. Utdatafilen vil
bli plassert i gjeldende mappe.
Hvis tidlig lasting av mikrokode er nødvendig (se the section called
“Mikrokodeoppdateringer for CPUer”), du kan installere
passende blob eller beholder i /lib/firmware. Den blir automatisk lagt til
initrd når mkinitramfs kjøres.
Etter å ha generert initrd, kopier den til /boot mappen.
Rediger nå /boot/grub/grub.cfg
og legg til en ny menyinngang. Nedenfor er flere eksempler.
# Generic initramfs and root fs identified by UUID
menuentry "LFS Dev (LFS-7.0-Feb14) initrd, Linux 3.0.4"
{
linux /vmlinuz-3.0.4-lfs-20120214 root=UUID=54b934a9-302d-415e-ac11-4988408eb0a8 ro
initrd /initrd.img-no-kmods
}
# Generic initramfs and root fs on LVM partition
menuentry "LFS Dev (LFS-7.0-Feb18) initrd lvm, Linux 3.0.4"
{
linux /vmlinuz-3.0.4-lfs-20120218 root=/dev/mapper/myroot ro
initrd /initrd.img-no-kmods
}
# Specific initramfs and root fs identified by LABEL
menuentry "LFS Dev (LFS-7.1-Feb20) initrd label, Linux 3.2.6"
{
linux /vmlinuz-3.2.6-lfs71-120220 root=LABEL=lfs71 ro
initrd /initrd.img-3.2.6-lfs71-120220
}
Til slutt starter du systemet på nytt og velger ønsket system.
btrfs-progs pakken inneholder administrasjons- og feilsøkingsverktøy for B-tree filsystemet (btrfs).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v6.10.1.tar.xz
Nedlasting MD5 sum: a72e76a634ad70dd183153bb99034e4c
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 65 MB (midlertidige filer opprettet under tester trenger opptil 10 GB)
Estimert byggetid: 0.3 SBU (med parallellitet=4; legg til 4.0 SBU for tester, opptil 14 SBU på trege disker)
LVM2-2.03.26 (dmsetup brukes i tester), sphinx-8.0.2 og sphinx_rtd_theme-2.0.0 (kreves for å bygge dokumentasjonen), og reiserfsprogs (for tester).
Aktiver følgende alternativ i kjernekonfigurasjonen og kompiler kjernen på nytt:
File systems ---> <*/M> Btrfs filesystem support [BTRFS_FS]
I tillegg til ovennevnte og til alternativene som kreves for LVM2-2.03.26, må følgende alternativer være aktivert for å kjøre tester. Alternativene som er merket som tomme bør ikke velges fordi de er for utviklere og får noen tester til å mislykkes.
File systems ---> <*/M> Btrfs filesystem support [BTRFS_FS] [*] Btrfs POSIX Access Control Lists [BTRFS_FS_POSIX_ACL] [ ] Btrfs will run sanity tests upon loading [BTRFS_FS_RUN_SANITY_TESTS] [ ] Btrfs debugging support [BTRFS_DEBUG] [ ] Btrfs assert support [BTRFS_ASSERT] [ ] Btrfs with the ref verify tool compiled in [BTRFS_FS_REF_VERIFY]
Installer btrfs-progs ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--disable-documentation &&
make
Noen tester krever at grep bygges med perl regulære uttrykk. For å få dette, gjenoppbygg grep med LFS kapittel 8 instruksjonene etter installeringen av pcre2-10.44.
Før du kjører tester, bygg et støtteprogram:
make fssum
For å teste resultatene, kjør (som root bruker):
pushd tests ./fsck-tests.sh ./mkfs-tests.sh ./cli-tests.sh ./convert-tests.sh ./misc-tests.sh ./fuzz-tests.sh popd
Hvis de ovennevnte kjernealternativene ikke er aktivert, vil noen tester mislykkes, og forhindre at alle gjenværende tester fra å kjøre fordi testens diskbilde ikke er rent avmontert. Pass også på at btrfs kjernemodulen er lastet inn.
Installer pakken som root
bruker:
make install
Hvis du har sendt --disable-documentation til
configure og du
trenger manualsidene, installer dem ved å kjøre, som
root bruker:
for i in 5 8; do install Documentation/*.$i /usr/share/man/man$i done
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-documentation: Denne
bryteren deaktiverer gjenoppbygging av manuelle sider, fordi
det krever sphinx-8.0.2.
|
er hovedgrensesnittet i btrfs filsystemoperasjoner |
|
|
konverterer fra et ext2/3/4 eller reiserfs filsystem til btrfs |
|
|
er et filter for å finne btrfs root |
|
|
kartlegger btrfs logiske utstrekning til fysisk utstrekning |
|
|
overskriver den primære superblokken med en sikkerhetskopi |
|
|
justerer ulike filsystemparametere |
|
|
gjør ingenting, men er tilstede for konsistens med fstab |
|
|
oppretter et btrfs filsystem |
dosfstools pakken inneholder ulike verktøy for bruk med FAT familien av filsystemer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/dosfstools/dosfstools/releases/download/v4.2/dosfstools-4.2.tar.gz
Nedlasting MD5 sum: 49c8e457327dc61efab5b115a27b087a
Nedlastingsstørrelse: 314 KB
Estimert diskplass som kreves: 4.5 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU
Aktiver følgende alternativ i kjernekonfigurasjonen og kompiler kjernen på nytt hvis du trenger å montere et FAT familie filsystem:
File systems ---> DOS/FAT/EXFAT/NT Filesystems ---> < /*/M> MSDOS fs support [MSDOS_FS] <*/M> VFAT (Windows-95) fs support [VFAT_FS]
Merk at CONFIG_MSDOS_FS bevisst
ikke støtter lange filnavn. CONFIG_VFAT_FS bør brukes i stedet med mindre
du virkelig ønsker å håndheve DOS stilen “8.3” filnavn.
Du kan montere et FAT familie filsystem når kjernen støtter det. Hvis du ikke trenger å opprette, sjekke eller ommerke et FAT familiesystem, kan du hoppe over denne pakken.
Installer dosfstools ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-compat-symlinks \
--mandir=/usr/share/man \
--docdir=/usr/share/doc/dosfstools-4.2 &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--enable-compat-symlinks: Denne
bryteren oppretter dosfsck,
dosfslabel, fsck.msdos, fsck.vfat, mkdosfs, mkfs.msdos, og mkfs.vfat symbolkoblinger som kreves av
enkelte programmer.
FUSE (Filesystem in Userspace) er en enkel grensesnitt for brukerromsprogrammer for å eksportere et virtuelt filsystem til Linux kjernen. Fuse har også som mål å gi en sikker metode for ikke-privilegerte brukere å lage og montere sine egne filsystemimplementeringer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libfuse/libfuse/releases/download/fuse-3.16.2/fuse-3.16.2.tar.gz
Nedlasting MD5 sum: b00bf08b27ead4a9411578777e94a1cc
Nedlastingsstørrelse: 14 MB
Estimert diskplass som kreves: 222 MB (med tester og dokumentasjon)
Estimert byggetid: 0.2 SBU (legg til 0.3 SBU for tester)
Doxygen-1.12.0 (for å gjenoppbygge API dokumentasjonen) pytest-8.3.2 (nødvendig for tester) og looseversion (for tester)
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
File systems ---> <*/M> FUSE (Filesystem in Userspace) support [FUSE_FS]
Tegnenheter i brukerområdet bør også være aktivert for å kjøre tester:
File systems ---> <*/M> FUSE (Filesystem in Userspace) support [FUSE_FS] <*/M> Character device in Userspace support [CUSE]
Installer Fuse ved å kjøre følgende kommandoer:
sed -i '/^udev/,$ s/^/#/' util/meson.build && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
API dokumentasjonen er inkludert i pakken, men hvis du har Doxygen-1.12.0 installert og ønsker å bygge det det om, kjør:
pushd .. && doxygen doc/Doxyfile && popd
For å teste resultatene, utsted følgende kommandoer (som
root bruker):
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install looseversion && python3 -m pytest deactivate
pytest-8.3.2 Python modulen er nødvendig
for testene. En test navngitt test_cuse vil mislykkes hvis CONFIG_CUSE
konfigurasjonselementet ikke ble aktivert når kjernen ble
bygget. En test, test/util.py,
vil gi en advarsel på grunn av bruken av en ukjent mark i
pytest.
Nå, som root bruker:
ninja install &&
chmod u+s /usr/bin/fusermount3 &&
cd .. &&
cp -Rv doc/html -T /usr/share/doc/fuse-3.16.2 &&
install -v -m644 doc/{README.NFS,kernel.txt} \
/usr/share/doc/fuse-3.16.2
sed ... util/meson.build: Denne kommandoen deaktiverer installasjonen av et oppstartsskript og en udev regel som ikke er nødvendig.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Noen alternativer angående monteringsregler kan angis i
filen /etc/fuse.conf. For å
installere filen, kjør følgende kommando som root bruker:
cat > /etc/fuse.conf << "EOF"
# Set the maximum number of FUSE mounts allowed to non-root users.
# The default is 1000.
#
#mount_max = 1000
# Allow non-root users to specify the 'allow_other' or 'allow_root'
# mount options.
#
#user_allow_other
EOF
Ytterligere informasjon om betydningen av konfigurasjonalternativene finnes på man siden.
jfsutils pakken inneholder administrasjon og feilsøkingsverktøy for jfs filsystemet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://jfs.sourceforge.net/project/pub/jfsutils-1.1.15.tar.gz
Nedlasting MD5 sum: 8809465cd48a202895bc2a12e1923b5d
Nedlastingsstørrelse: 532 KB
Estimert diskplass som kreves: 8.9 MB
Estimert byggetid: 0.1 SBU
Nødvendig oppdatering for å fikse problemer avdekket av GCC 10 og nyere: https://www.linuxfromscratch.org/patches/blfs/12.2/jfsutils-1.1.15-gcc10_fix-1.patch
Aktiver følgende alternativ i kjernekonfigurasjonen og kompiler kjernen på nytt:
File systems ---> <*/M> JFS filesystem support [JFS_FS]
Først, fiks noen problemer avdekket av GCC 10 og senere:
patch -Np1 -i ../jfsutils-1.1.15-gcc10_fix-1.patch
Installer jfsutils ved å kjøre følgende kommandoer:
sed -i "/unistd.h/a#include <sys/types.h>" fscklog/extract.c && sed -i "/ioctl.h/a#include <sys/sysmacros.h>" libfs/devices.c && ./configure && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
sed ...: Fikser bygging med glibc 2.28.
|
brukes til å spille av JFS transaksjonsloggen på nytt, sjekk en JFS formatert enhet for feil, og fiks eventuelle feil funnet |
|
|
er en hard link til fsck.jfs |
|
|
konstruerer et JFS filsystem |
|
|
er en hard link til mkfs.jfs |
|
|
er et program som kan brukes til å utføre ulike lavnivå handlinger på en JFS formatert enhet |
|
|
trekker ut en JFS fsck tjenestelogg til en fil og/eller formater og viser den utpakkede filen |
|
|
dumper innholdet i journalloggen fra den spesifiserte JFS formaterte enheten til utdatafil ./jfslog.dmp |
|
|
justerer justerbare filsystemparametere på JFS filsystemer |
LVM2 pakken er et sett med verktøy som administrerer logiske partisjoner. Det tillater spenning over filsystemer på tvers av flere fysiske disker og diskpartisjoner og sørger for dynamisk vekst eller krymping av logiske partisjoner, speiling og lavt lagringsfotavtrykk av øyeblikksbilder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://sourceware.org/ftp/lvm2/LVM2.2.03.26.tgz
Nedlasting MD5 sum: 276620e7071b4f0ba18b0c5cf2150c79
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 38 MB (legg til 20 MB for tester; midlertidige filer kan vokse opp til rundt 300 MB i /tmp mappen under tester)
Estimert byggetid: 0.3 SBU (legg til 9 til 48 SBU for tester, avhengig av diskhastighet og om ram-blokkeringsenhet er aktivert i kjernen)
mdadm-4.3, Valgrind-3.23.0, Which-2.21, xfsprogs-6.9.0 (alle fire kan brukes, men er ikke påkrevd, for tester), reiserfsprogs, thin-provisioning-tools, og vdo
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt:
Det er flere andre Device Mapper alternativer i kjernen utover disse oppført nedenfor. For å få rimelige resultater hvis du kjører regresjonstester, må alle være aktivert enten internt eller som en modul. Testene vil alltid stoppe hvis Magic SysRq nøkkelen ikke er aktivert.
Device Drivers ---> [*] Block devices ---> [BLK_DEV] <*/M> RAM block device support [BLK_DEV_RAM] [*] Multiple devices driver support (RAID and LVM) ---> [MD] <*/M> Device mapper support [BLK_DEV_DM] <*/M> Crypt target support [DM_CRYPT] <*/M> Snapshot target [DM_SNAPSHOT] <*/M> Thin provisioning target [DM_THIN_PROVISIONING] <*/M> Cache target (EXPERIMENTAL) [DM_CACHE] <*/M> Mirror target [DM_MIRROR] <*/M> Zero target [DM_ZERO] <*/M> I/O delaying target [DM_DELAY] Kernel hacking ---> Generic Kernel Debugging Instruments ---> [*] Magic SysRq key [MAGIC_SYSRQ]
Installer LVM2 ved å kjøre følgende kommandoer:
PATH+=:/usr/sbin \
./configure --prefix=/usr \
--enable-cmdlib \
--enable-pkgconfig \
--enable-udev_sync &&
make
Testene bruker udev for
logisk volum synkronisering, så LVM udev reglene og noen
verktøy trenger å installeres før testene kjøres. Hvis du
installerer LVM2 for første
gang, og ikke ønsker å installere hele pakken før du kjører
testene, minimum sett med verktøy kan installeres ved å kjøre
følgende instruksjoner som root bruker:
make -C tools install_tools_dynamic && make -C udev install && make -C libdm install
For å teste resultatene, kjør, som root bruker:
LC_ALL=en_US.UTF-8 make check_local
Noen tester kan henge. I dette tilfellet kan de hoppes over ved å legge til S=<testname> til make kommandoen. Andre mål er tilgjengelige og kan listes med make -C test help. Testtiden er veldig avhengig av hastigheten til disken(e), og på antall aktiverte kjernealternativer.
Testene implementerer ikke “expected fail” mulighet, og et lite antall testfeil forventes oppstrøms. Flere feil kan skje fordi noen kjernealternativer mangler. For eksempel mangelen på dm-delay enhets kartleggermålet forklarer noen feil. Noen tester kan mislykkes hvis det ikke er nok ledig plass i partisjonen med /tmp mappen. Minst én test mislykkes hvis 16 TB ikke er tilgjengelig. Noen tester er flagget “warned” hvis thin-provisioning-tools ikke er installert. En løsning er å legge til følgende flagg i configure:
--with-thin-check= \
--with-thin-dump= \
--with-thin-repair= \
--with-thin-restore= \
--with-cache-check= \
--with-cache-dump= \
--with-cache-repair= \
--with-cache-restore= \
Noen tester kan henge. De kan fjernes om nødvendig, for eksempel: rm test/shell/lvconvert-raid-reshape.sh. Testene generere mange kjernemeldinger, som kan rote til terminalen din. Du kan deaktivere dem ved å utstede dmesg -D før du kjører testene (ikke glem å utstede dmesg -E når testene er ferdig).
Kontrollene oppretter enhetsnoder i /tmp mappen. Tester vil mislykkes hvis /tmp er montert med nodev alternativet.
Nå, som root bruker:
make install make install_systemd_units
PATH+=:/usr/sbin: Stien må
inneholde /usr/sbin for riktig
systemverktøy påvisning av configure skriptet. Denne
instruksen sikrer at PATH er riktig satt selv om du bygger
som en uprivilegert bruker.
--enable-cmdlib:
Denne bryteren aktiverer bygging av det delte
kommandobiblioteket. Det kreves når du bygger
hendelsesnissen.
--enable-pkgconfig:
Denne bryteren aktiverer installasjon av pkg-config støttefiler.
--enable-udev_sync:
Denne bryteren aktiverer synkronisering med Udev prosessering.
--enable-dmeventd: Denne bryteren
aktiverer bygging av Device
Mapper hendelsesnisse.
make install_systemd_units: Dette er nødvendig for å installere en enhet som aktiverer logiske volumer ved oppstart. Den er ikke installert som standard.
|
er et verktøy for å deaktivere blokkenheter |
|
|
(valgfri) er Device Mapper hendelsesnissen |
|
|
er et logisk volum styringsverktøy på lavt nivå |
|
|
er et verktøy som brukes til å endre størrelse på eller sjekke filsystemet på en enhet |
|
|
gir kommandolinjeverktøy for LVM2. Kommandoer implementeres via symbolske lenker til dette programmet for å administrere fysiske enheter (pv*), volumgrupper (vg*) og logiske volumer (lv*) |
|
|
er et verktøy som brukes til å dumpe diverse informasjon om LVM2 |
|
|
brukes til å importere en duplisert VG (f.eks. maskinvare øyeblikksbilde) |
|
|
inneholder Device Mapper API funksjoner |
LVM administrerer diskstasjoner. Den tillater at flere stasjoner og partisjoner blir kombinert til større volumgrupper, bistår i å lage sikkerhetskopier gjennom et øyeblikksbilde, og gir rom for dynamisk volumendring. Det kan også gi speiling tilsvarende et RAID 1 matrise.
En fullstendig diskusjon av LVM er utenfor rammen av denne introduksjonen, men grunnleggende konsepter presenteres nedenfor.
For å kjøre noen av kommandoene som presenteres her, må
LVM2-2.03.26 pakken installeres. Alle
kommandoer må kjøres som root
bruker.
Administrering av disker med lvm utføres ved å bruke følgende konsepter:
Dette er fysiske disker eller partisjoner som f.eks /dev/sda3 eller /dev/sdb.
Disse er navngitte grupper av fysiske volumer som kan manipuleres av administratoren. Antall fysiske volumer som utgjør en volumgruppe er vilkårlige. Fysiske volumer kan dynamisk legges til eller fjernes fra en volumgruppe.
Volumgrupper kan deles inn i logiske volumer. Hvert logisk volum kan deretter formateres individuelt som om det var en vanlig Linux partisjon. Logiske volumer kan endres dynamisk etter administratorens behov.
For å gi et konkret eksempel, anta at du har to 2 TB disker.
Også anta at det kreves veldig mye plass for en veldig stor
database, montert på /srv/mysql.
Slik vil det første settet med partisjoner se ut:
Partition Use Size Partition Type
/dev/sda1 /boot 100MB 83 (Linux)
/dev/sda2 / 10GB 83 (Linux)
/dev/sda3 swap 2GB 82 (Swap)
/dev/sda4 LVM remainder 8e (LVM)
/dev/sdb1 swap 2GB 82 (Swap)
/dev/sdb2 LVM remainder 8e (LVM)
Initialiser først de fysiske volumene:
pvcreate /dev/sda4 /dev/sdb2
En full disk kan brukes som en del av et fysisk volum, men pass på at pvcreate kommando vil ødelegge all partisjonsinformasjon på den disken.
Deretter oppretter du en volumgruppe med navnet lfs-lvm:
vgcreate lfs-lvm /dev/sda4 /dev/sdb2
Statusen til volumgruppen kan kontrolleres ved å kjøre kommandoen vgscan. Lag nå de logiske volumene. Siden det er ca 3900 GB tilgjengelig, la ca 900 GB være ledig for utvidelse. Merk at det logiske volumet som heter mysql er større enn hvilken som helst fysisk disk.
lvcreate --name mysql --size 2500G lfs-lvm lvcreate --name home --size 500G lfs-lvm
Til slutt kan de logiske volumene formateres og monteres. I dette eksempel filsystemet jfs (jfsutils-1.1.15) brukes for demonstrasjonsformål.
mkfs -t ext4 /dev/lfs-lvm/home mkfs -t jfs /dev/lfs-lvm/mysql mount /dev/lfs-lvm/home /home mkdir -p /srv/mysql mount /dev/lfs-lvm/mysql /srv/mysql
Det kan være nødvendig å aktivere de logiske volumene, for at
de skal vises i /dev. De kan alle
aktiveres samtidig ved å kjøre, som root bruker:
vgchange -a y
Et LVM logisk volum kan være vert for et rootfilsystem, men
krever bruk av initramfs (opprinnelig RAM filsystem). Initramfs
foreslått i the section called “Om initramfs” lar lvm
volumet sende inn root=
bryteren til kjernekommandolinjen.
Hvis du ikke bruker initramfs, er det en rasetilstand i
systemd som forhindrer
montering av logiske volumer gjennom /etc/fstab. Du må opprette en “mount” enhet (se
systemd.mount(5))
som i det følgende eksempel, som monterer /home mappen automatisk ved oppstart:
cat > /etc/systemd/system/home.mount << EOF
[Unit]
Description=Mount the lvm volume /dev/lfs-lvm/home to /home
[Mount]
What=/dev/lfs-lvm/home
Where=/home
Type=ext4
Options=default
[Install]
WantedBy=multi-user.target
EOF
Navnet på enheten må være navnet på monteringspunktet med `/'-tegnet erstattet av `-', og utelate den innledende.
Deretter må enheten aktiveres med:
systemctl enable home.mount
For mer informasjon om LVM, se LVM HOWTO og lvm mansidene. En god dybde veiledning er tilgjengelig fra RedHat®, selv om det noen ganger refererer til proprietære verktøy.
Lagringsteknologien kjent som RAID (Redundant Array of Independent Disks) kombinerer flere fysiske disker til en logisk enhet. Stasjonene kan vanligvis kombineres for å gi data redundans eller for å utvide størrelsen på logiske enheter utover funksjonen til de fysiske diskene eller begge deler. Teknologien gir også mulighet for vedlikehold av maskinvare uten å slå av systemet.
Typene RAID organisering er beskrevet i RAID Wiki.
Merk at mens RAID gir beskyttelse mot diskfeil, er det ikke en erstatning for sikkerhetskopiering. En fil slettet er fortsatt slettet på alle diskene i en RAID matrise. Moderne sikkerhetskopier gjøres vanligvis via rsync-3.3.0.
Det er tre hovedtyper av RAID implementering: Maskinvare RAID, BIOS-basert RAID og programvare RAID.
Maskinvarebasert RAID gir kapasitet gjennom proprietær maskinvare og dataoppsett. Kontrollen og konfigurasjonen er generelt gjort via fastvare i forbindelse med kjørbare programmer gjort tilgjengelig av enhetsprodusenten. Mulighetene leveres vanligvis via et PCI-kort, selv om det er noen forekomster av RAID komponenter integrert i hovedkortet. Hardware RAID kan også være tilgjengelig i et frittstående kabinett.
En fordel med maskinvarebasert RAID er at stasjonene tilbys til operativsystemet som en logisk stasjon og ingen operativsystemavhengig konfigurasjon er nødvendig.
Ulemper inkluderer vanskeligheter med å overføre stasjoner fra ett system til et annet, oppdatere fastvare eller erstatte ødelagt RAID-maskinvare.
Noen datamaskiner tilbyr en maskinvarelignende RAID-implementering i system-BIOS. Noen ganger blir dette referert til som "falsk" RAID siden funksjoner vanligvis er integrert i fastvare uten maskinvare akselerasjon.
Fordelene og ulempene med BIOS-basert RAID er generelt det samme som hardware RAID med den ekstra ulempen at det ikke er maskinvareakselerasjon.
I noen tilfeller er BIOS-basert RAID-fastvare aktivert som standard (f.eks. noen DELL systemer). Hvis programvare RAID er ønsket, må dette alternativet være eksplisitt deaktivert i BIOS.
Programvarebasert RAID er den mest fleksible formen for RAID. Det er enkelt å installere og oppdatere og gir full kapasitet på alle eller del av alle stasjoner som er tilgjengelige for systemet. I BLFS, RAID-programvaren finnes i mdadm-4.3.
Det er enkelt å konfigurere en RAID enhet mdadm. Vanligvis opprettes enheter i
/dev mappen som /dev/mdx hvor x er et heltall.
Det første trinnet i å lage en RAID matrise er å bruke
partisjoneringsprogramvare som for eksempel fdisk eller parted-3.6 til å
definere partisjonene som trengs for matrisen. Vanligvis vil
det være en partisjon på hver stasjon som deltar i RAID
matrisen, men det er ikke strengt nødvendig. For dette
eksemplet vil det være fire harddisker: /dev/sda, /dev/sdb, /dev/sdc, og /dev/sdd. De vil bli delt opp som følger:
Partition Size Type Use
sda1: 100 MB fd Linux raid auto /boot (RAID 1) /dev/md0
sda2: 10 GB fd Linux raid auto / (RAID 1) /dev/md1
sda3: 2 GB 83 Linux swap swap
sda4 300 GB fd Linux raid auto /home (RAID 5) /dev/md2
sdb1: 100 MB fd Linux raid auto /boot (RAID 1) /dev/md0
sdb2: 10 GB fd Linux raid auto / (RAID 1) /dev/md1
sdb3: 2 GB 83 Linux swap swap
sdb4 300 GB fd Linux raid auto /home (RAID 5) /dev/md2
sdc1: 12 GB fd Linux raid auto /usr/src (RAID 0) /dev/md3
sdc2: 300 GB fd Linux raid auto /home (RAID 5) /dev/md2
sdd1: 12 GB fd Linux raid auto /usr/src (RAID 0) /dev/md3
sdd2: 300 GB fd Linux raid auto /home (RAID 5) /dev/md2
I dette arrangementet opprettes en egen oppstartspartisjon
som første RAID matrise og et rootfilsystem som den andre
RAID matrisen, begge speilet. Den tredje partisjonen er en
stor (omtrent 1 TB) matrise for /home mappen. Dette gir en evne til å
stripe data på tvers av flere enheter, og forbedre
hastigheten for både lesing og skriving av store filer. Til
slutt opprettes en fjerde matrise som kobler sammen to
partisjoner til en større enhet.
Alle mdadm kommandoer må
kjøres som root bruker.
For å opprette disse RAID matrisene er kommandoene:
/sbin/mdadm -Cv /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
/sbin/mdadm -Cv /dev/md1 --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2
/sbin/mdadm -Cv /dev/md3 --level=0 --raid-devices=2 /dev/sdc1 /dev/sdd1
/sbin/mdadm -Cv /dev/md2 --level=5 --raid-devices=4 \
/dev/sda4 /dev/sdb4 /dev/sdc2 /dev/sdd2
Enhetene som er opprettet kan undersøkes enhet for enhet. For
eksempel, å se detaljene om /dev/md1, bruk /sbin/mdadm --detail
/dev/md1:
Version : 1.2
Creation Time : Tue Feb 7 17:08:45 2012
Raid Level : raid1
Array Size : 10484664 (10.00 GiB 10.74 GB)
Used Dev Size : 10484664 (10.00 GiB 10.74 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Tue Feb 7 23:11:53 2012
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Name : core2-blfs:0 (local to host core2-blfs)
UUID : fcb944a4:9054aeb2:d987d8fe:a89121f8
Events : 17
Number Major Minor RaidDevice State
0 8 1 0 active sync /dev/sda1
1 8 17 1 active sync /dev/sdb1
Fra dette tidspunktet kan partisjonene formateres med
filsystemet du velger (f.eks. ext3, ext4, xfsprogs-6.9.0,
etc). De formaterte partisjonene kan da bli montert.
/etc/fstab filen kan bruke
enhetene som er opprettet for montering ved oppstart og linux
kommandolinjen i /boot/grub/grub.cfg kan spesifisere
root=/dev/md1.
vekselminnet bør spesifiseres i /etc/fstab filen som normalt. Kjernen
striper normalt vekselminnets data på tvers av flere
vekselminnefiler og bør ikke lages som del av en RAID
matrise.
For ytterligere alternativer og administrasjonsdetaljer for
RAID enheter, se man
mdadm.
Ytterligere detaljer for å overvåke RAID matriser og håndtere problemer finner du på Linux RAID Wiki.
mdadm pakken inneholder verktøy for å administrere programvare RAID.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-4.3.tar.xz
Nedlasting MD5 sum: a42def84e31734a529111394f2289e0e
Nedlastingsstørrelse: 456 KB
Estimert diskplass som kreves: 5.5 MB
Estimert byggetid: 0.1 SBU
En MTA
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig. Bare de ønskede RAID typene err påkrevd.
Device Drivers ---> [*] Multiple devices driver support (RAID and LVM) ---> [MD] <*/M> RAID support [BLK_DEV_MD] [*] Autodetect RAID arrays during kernel boot [MD_AUTODETECT] # Only the RAID types desired are required: < /*/M> RAID-0 (striping) mode [MD_RAID0] < /*/M> RAID-1 (mirroring) mode [MD_RAID1] < /*/M> RAID-10 (mirrored striping) mode [MD_RAID10] < /*/M> RAID-4/RAID-5/RAID-6 mode [MD_RAID456]
Bygg mdadm ved å kjøre følgende kommandoer:
make
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
make BINDIR=/usr/sbin install
make everything: Dette valgfrie målet skaper ekstra programmer, spesielt en statisk koblet versjon av mdadm. Disse må installeres manuelt.
En ny lese-skrive driver for NTFS, kalt NTFS3, er lagt til inn i Linux kjernen siden 5.15 utgivelsen. Ytelsen til NTFS3 er mye bedre enn ntfs-3g. For å aktivere NTFS3, aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt hvis nødvendig:
File systems ---> DOS/FAT/EXFAT/NT Filesystems ---> <*/M> NTFS Read-Write file system support [NTFS3_FS]
For å sikre at mount kommandoen bruker NTFS3 for ntfs partisjoner, lag et innpakningsskript:
cat > /usr/sbin/mount.ntfs << "EOF" &&
#!/bin/sh
exec mount -t ntfs3 "$@"
EOF
chmod -v 755 /usr/sbin/mount.ntfs
Med kjernestøtten tilgjengelig, er ntfs-3g bare nødvendig hvis du trenger verktøyene fra den (for eksempel for å lage NTFS filsystemer).
Ntfs-3g pakken inneholder en stabil, lese-skrive åpen kildekodedriver for NTFS partisjoner. NTFS partisjoner brukes av de fleste Microsoft operativsystemer. Ntfs-3g lar deg montere NTFS partisjoner i lese-skrivemodus fra Linux systemet. Den bruker FUSE kjernemodul for å kunne implementere NTFS støtte i brukerrom. Pakken inneholder også forskjellige verktøy som er nyttige for å manipulere NTFS partisjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2022.10.3.tgz
Nedlasting MD5 sum: a038af61be7584b79f8922ff11244090
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 22 MB
Estimert byggetid: 0.2 SBU
fuse 2.x (dette deaktiverer brukermontering)
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
File systems ---> <*/M> FUSE (Filesystem in Userspace) support [FUSE_FS]
Merk at det kun er nødvendig for å montere NTFS partisjoner med ntfs-3g. Hvis du vil bruke NTFS3 driveren i kjernen for å montere NTFS partisjoner (som BLFS redaktørene anbefaler) i stedet, kan du hoppe over dette konfigurasjonselementet.
Installer Ntfs-3g ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--with-fuse=internal \
--docdir=/usr/share/doc/ntfs-3g-2022.10.3 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
Det anbefales å bruke NTFS3 driveren i kjernen for å montere NTFS filsystemer, i stedet for ntfs-3g (se notatet i begynnelsen av denne siden). Men hvis du vil bruke ntfs-3g for å montere NTFS filsystemer uansett, lag en symbolkobling for mount kommandoen:
ln -sv ../bin/ntfs-3g /usr/sbin/mount.ntfs && ln -sv ntfs-3g.8 /usr/share/man/man8/mount.ntfs.8
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-fuse=internal:
Denne bryteren dynamisk tvinger ntfs-3g å bruke en intern kopi av
fuse-2.x biblioteket. Dette
kreves hvis du ønsker å tillate brukere å montere NTFS
partisjoner.
--disable-ntfsprogs: Deaktiverer
installasjon av diverse verktøy som brukes til å manipulere
NTFS partisjoner.
chmod -v 4755 /usr/bin/ntfs-3g: Gjør at mount.ntfs setuid root lar ikke-rootbrukere montere NTFS partisjoner.
For å montere en Windows partisjon ved oppstart, legg inn en linje som denne i /etc/fstab:
/dev/sda1 /mnt/windows auto defaults 0 0
For å tillate brukere å montere en usb-pinne med et NTFS filsystem på, sett inn en linje som ligner på denne (endre sdc1 til hva en usb-pinne vil være på ditt system) i /etc/fstab:
/dev/sdc1 /mnt/usb auto user,noauto,umask=0,utf8 0 0
For at en bruker skal kunne montere usb-pinnen, trenger de å
kunne skrive til /mnt/usb, så
som root bruker:
chmod -v 777 /mnt/usb
|
ligner på ntfs-3g, men bruker Fuse grensesnittet på lavt nivå |
|
|
er en symbolkobling til mkntfs |
|
|
oppretter et NTFS filsystem |
|
|
er en symbolkobling til lowntfs-3g |
|
|
monterer er NTFS filsystem |
|
|
er en symbolkobling til to ntfs-3g |
|
|
er en NTFS driver, som kan opprette, fjerne, gi nytt navn, flytte filer, mapper, harde lenker og strømmer. Den kan også lese og skrive filer, inkludert strømmer, sparsomme filer og transparent komprimerte filer. Den kan også håndtere spesielle filer som symbolske lenker, enheter og FIFOer; dessuten gir det standard administrasjon av fileierskap og tillatelser, inkludert POSIX tilgangskontrollister |
|
|
tester om et NTFS volum kan monteres skrivebeskyttet eller lese-skrive, og avsluttes med en tilsvarende statusverdi. Volumet kan være en blokkenhet eller bildefil |
|
|
identifiserer filer i et spesifisert område av et NTFS volum |
|
|
kopierer en fil til et NTFS volum |
|
|
løser vanlige feil og tvinger Windows til å sjekke en NTFS partisjon |
|
|
viser mappeinnhold på et NTFS filsystem |
|
|
skriver ut NTFS filer og strømmer på standardutgangen |
|
|
kloner et NTFS filsystem |
|
|
sammenligner to NTFS filsystemer og viser forskjellene |
|
|
dumper en fils attributter |
|
|
viser eller endrer etiketten på et ntfs filsystem |
|
|
endrer størrelse på et NTFS filsystem uten tap av data |
|
|
gjenoppretter en slettet fil fra et NTFS volum |
|
|
inneholder Ntfs-3g API funksjoner |
gptfdisk pakken er et sett med programmer for opprettelse og vedlikehold av GUID Partition Table (GPT) diskstasjoner. En GPT partisjonert disk kreves for stasjoner større enn 2 TB og er en moderne erstatning for eldre PC-BIOS partisjonerte diskstasjoner som bruker en Master Boot Record (MBR). Hovedprogrammet, gdisk, har et grensesnitt som ligner det klassiske fdisk programmet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/gptfdisk/gptfdisk-1.0.10.tar.gz
Nedlasting MD5 sum: 1970269eb7a97560e238611524b7797a
Nedlastingsstørrelse: 216 KB
Estimert diskplass som kreves: 2.4 MB
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.2 SBU for tester)
Anbefalt oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/gptfdisk-1.0.10-convenience-1.patch
gptfdisk pakken kommer med
en grunnleggende Makefile.
Først oppdaterer vi den for å gi et enkelt bygge- og
installeringsgrensesnitt og fikse plassering av en
deklarasjonsfil og fikse noen mindre plasseringsproblemer.
Installer gptfdisk ved å
kjøre følgende kommandoer:
patch -Np1 -i ../gptfdisk-1.0.10-convenience-1.patch && sed -i 's|ncursesw/||' gptcurses.cc && sed -i 's|sbin|usr/sbin|' Makefile && make
For å teste resultatene, kjør: make test.
Nå, som root bruker:
make install
patch -Np1 ...:
Denne oppdateringen endrer Makefile filen slik at den gir et
“install” mål.
Parted pakken er et verktøy for diskpartisjonering og endre størrelsen på en partisjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/parted/parted-3.6.tar.xz
Nedlasting MD5 sum: 93d2d8f22baebc5eb65b85da05a79e4e
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 29 MB (ytterligere 3 MB for testene og ytterligere 2 MB for valgfri PDF- og Postscript-dokumentasjon)
Estimert byggetid: 0.3 SBU (i tillegg 3,6 SBU for testene)
LVM2-2.03.26 (enhetskartlegging, nødvendig hvis du bygger udisks)
dosfstools-4.2, texlive-20240312 (eller install-tl-unx), og Digest::CRC (for testene)
Omtrent 20 % flere tester kjøres hvis følgende kjernemodul er bygget:
Device Drivers ---> SCSI device support ---> [*] SCSI low-level drivers ---> [SCSI_LOWLEVEL] <M> SCSI debugging host and device simulator [SCSI_DEBUG]
Installer Parted ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make && make -C doc html && makeinfo --html -o doc/html doc/parted.texi && makeinfo --plaintext -o doc/parted.txt doc/parted.texi
Hvis du har texlive-20240312 installert og ønsker å lage PDF og Postscript dokumentasjon kjør følgende kommandoer:
cp build-aux/texinfo.tex doc && texi2pdf -o doc/parted.pdf doc/parted.texi && texi2dvi -o doc/parted.dvi doc/parted.texi && dvips -o doc/parted.ps doc/parted.dvi
For å teste resultatene, utsted, som root bruker:
make check
Mange tester blir hoppet over hvis de ikke kjøres som
root bruker.
Nå, som root bruker:
make install &&
install -v -m755 -d /usr/share/doc/parted-3.6/html &&
install -v -m644 doc/html/* \
/usr/share/doc/parted-3.6/html &&
install -v -m644 doc/{FAT,API,parted.{txt,html}} \
/usr/share/doc/parted-3.6
Installer den valgfrie PDF- og Postscript-dokumentasjonen ved
å kjøre følgende kommando som root bruker:
install -v -m644 doc/FAT doc/API doc/parted.{pdf,ps,dvi} \
/usr/share/doc/parted-3.6
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-device-mapper: Dette
alternativet deaktiverer støtte for enhetskartlegging. Legg
til denne parameteren hvis du ikke har installert
LVM2.
smartmontools pakken inneholder verktøyprogrammer (smartctl, smartd) for å kontrollere/overvåke lagringssystemer ved hjelp av System for selvovervåking, analyse og rapporteringsteknologi (S.M.A.R.T.) innebygd i de fleste moderne ATA- og SCSI-disker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/smartmontools/smartmontools-7.4.tar.gz
Nedlasting MD5 sum: 178d31a6ff5256c093227ab45a3f52aa
Nedlastingsstørrelse: 1 MB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.2 SBU
cURL-8.9.1 eller Lynx-2.9.2 eller Wget-1.24.5 (nedlastingsverktøy), og GnuPG-2.4.5 (krypterte harddisker)
Installer smartmontools ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--docdir=/usr/share/doc/smartmontools-7.4 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Se de innebygde kommentarene i /etc/smartd.conf for detaljerte
instruksjoner om tilpasning av smartd nissen.
Sshfs pakken inneholder en filsystem klient basert på SSH File Transfer Protocol. Dette er nyttig for å montere en ekstern datamaskin som du har ssh tilgang til som et lokalt filsystem. Dette lar deg dra og slippe filer eller kjøre skallkommandoer på de eksterne filene som om de var på din lokale datamaskin.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libfuse/sshfs/releases/download/sshfs-3.7.3/sshfs-3.7.3.tar.xz
Nedlasting MD5 sum: f704f0d1800bdb5214030a1603e8c6d6
Nedlastingsstørrelse: 56 KB
Estimert diskplass som kreves: 0.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Fuse-3.16.2, GLib-2.80.4, og OpenSSH-9.8p1.
docutils-0.21.2 (kreves for å bygge mansiden)
Installer Sshfs ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
For å montere en ssh server må du kunne logge på serveren. For eksempel for å montere den eksterne hjemmemappen til den lokale ~/eksempelsti (denne mappen må eksistere og du må ha tillatelser for å skrive til den):
sshfs eksempel.no:/home/userid ~/eksempelsti
Når du er ferdig med arbeidet og vil demontere den igjen:
fusermount3 -u ~/eksempel
Du kan også montere et sshfs
filsystem ved oppstart ved å legge til en oppføring som
ligner på følgende i /etc/fstab
filen:
userid@eksempel.no:/path /media/path fuse.sshfs _netdev,IdentityFile=/home/userid/.ssh/id_rsa 0 0
Se man 1 sshfs og man 8 mount.fuse3 for alle tilgjengelige monteringsalternativer.
xfsprogs pakken inneholder administrasjons- og feilsøkingsverktøy for XFS filsystemet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-6.9.0.tar.xz
Nedlasting MD5 sum: 8744b22c73764320bcdb577d98dbc4f2
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 57 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
ICU-75.1 (for unicode navneskanning i xfs_scrub)
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt:
File systems ---> <*/M> XFS filesystem support [XFS_FS]
Installer xfsprogs ved å kjøre følgende kommandoer:
make DEBUG=-DNDEBUG \
INSTALL_USER=root \
INSTALL_GROUP=root
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PKG_DOC_DIR=/usr/share/doc/xfsprogs-6.9.0 install &&
make PKG_DOC_DIR=/usr/share/doc/xfsprogs-6.9.0 install-dev &&
rm -rfv /usr/lib/libhandle.{a,la}
DEBUG=-DNDEBUG: Slår
av feilsøkingssymboler.
INSTALL_USER=root
INSTALL_GROUP=root:
Dette angir eieren og gruppen av de installerte filene.
OPTIMIZER="...": Legge denne
parameteren til slutten av make kommandoen overstyrer
standard optimaliseringsinnstillinger.
|
avsluttes ganske enkelt med nullstatus, siden XFS partisjoner kontrolleres ved montering |
|
|
konstruerer et XFS filsystem |
|
|
endrer parametrene til et XFS filsystem |
|
|
skriver ut blokkkartlegging for en XFS fil |
|
|
kopierer innholdet i et XFS filsystem til ett eller flere mål parallelt |
|
|
for hvert mappeargument, estimerer plassen den mappen ville tatt hvis den ble kopiert til et XFS filsystem (krysser ikke monteringspunkter) |
|
|
brukes til å feilsøke et XFS filsystem |
|
|
suspenderer tilgang til et XFS filsystem |
|
|
gjelder kun for XFS filsystemer, forbedrer organiseringen av monterte filsystemer, opererer omorganiseringsalgoritmen på en fil om gangen, komprimere eller på annen måte forbedre utformingen av filomfang (sammenhengende blokker med fildata) |
|
|
utvider et XFS filsystem |
|
|
tilsvarer å påberope xfs_growfs, men spesifisere at ingen endring i filsystemet skal gjøres |
|
|
er et feilsøkingsverktøy som xfs_db, men er rettet mot å undersøke den vanlige I/O banen for filen i stedet for det rå XFS volumet |
|
|
skriver ut loggen til et XFS filsystem |
|
|
gjenoppretter et XFS metadumpbilde til et filsystembilde |
|
|
kopierer XFS filsystemmetadata til en fil |
|
|
oppretter en XFS fil, polstret med nuller som standard |
|
|
genererer banenavn fra inodenumre for et XFS filsystem |
|
|
er et verktøy for rapportering og redigering av ulike aspekter ved filsystemkvoter |
|
|
reparerer korrupte eller skadede XFS filsystemer |
|
|
kopierer en fil til sanntidspartisjonen på et XFS filsystem |
|
|
sjekker og reparerer innholdet i en montert XFS filsystem |
|
|
skrubber alle monterte XFS filsystemer |
|
|
rapporterer og kontrollerer ledig plassbruk i et XFS filsystem |
|
|
inneholder XFS spesifikke funksjoner som gir en måte å utføre visse filsystemoperasjoner uten å bruke en filbeskrivelse for tilgang til filsystemobjekter |
efivar pakken gir verktøy og biblioteker for å manipulere EFI variabler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/rhboot/efivar/archive/39/efivar-39.tar.gz
Nedlasting MD5 sum: a8fc3e79336cd6e738ab44f9bc96a5aa
Nedlastingsstørrelse: 456 KB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: less than 0.1 SBU
Denne pakken kan ikke fungere ordentlig på et 32-bitssystem med en 64-biters UEFI implementering. Ikke installer denne pakken (eller efibootmgr) på 32-bits system med mindre du er helt sikker på at du har en 32-biters UEFI implementering, som er svært sjelden i praksis.
Bygg efivar med følgende kommandoer:
make
Testpakken til denne pakken er farlig. Å kjøre den kan utløse fastvarefeil og gjøre systemet ditt ubrukelig uten å bruke en spesielle maskinvare for å omprogrammere fastvaren.
Nå, som root bruker:
make install LIBDIR=/usr/lib
LIBDIR=/usr/lib:
Dette alternativet overstyrer standard bibliotekmappe for
pakken (/usr/lib64, som ikke
brukes av LFS).
ENABLE_DOCS=0: Deaktiver
generering av manualsider. Legg til dette alternativet etter
make og
make install
kommandoer hvis du ikke trenger manualsider for å tillate å
bygge denne pakken uten mandoc-1.14.6 installert.
efibootmgr pakken gir verktøy og biblioteker for å manipulere EFI variabler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/rhboot/efibootmgr/archive/18/efibootmgr-18.tar.gz
Nedlasting MD5 sum: e170147da25e1d5f72721ffc46fe4e06
Nedlastingsstørrelse: 48 KB
Estimert diskplass som kreves: 1.1 MB
Estimert byggetid: less than 0.1 SBU
Bygg efibootmgr med følgende kommandoer:
make EFIDIR=LFS EFI_LOADER=grubx64.efi
Denne pakken har ikke en testpakke.
Nå, som root bruker:
make install EFIDIR=LFS
EFIDIR=LFS: Dette
alternativet spesifiserer distroens undermappenavn under
/boot/efi/EFI. Byggesystemet
til denne pakken trenger at det angis eksplisitt.
EFI_LOADER=grubx64.efi: Dette
alternativet spesifiserer navnet på standard EFI
oppstartslasteren. Det er satt til å samsvare EFI
oppstartslasteren levert av GRUB .
GRUB pakken gir GRand Unified Bootloader. På denne siden vil den bygges med UEFI støtte, som ikke er aktivert for GRUB innebygd i LFS.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/grub/grub-2.12.tar.xz
Nedlasting MD5 sum: 60c564b1bdc39d8e43b3aab4bc0fb140
Nedlastingsstørrelse: 6.4 MB
Estimert diskplass som kreves: 183 MB
Estimert byggetid: 0.4 SBU (på 64-bits LFS, ved å bruke parallellisme=4)
Unicode skriftdata som brukes til å vise GRUB menyen
Nedlasting (HTTP): https://unifoundry.com/pub/unifont/unifont-15.1.05/font-builds/unifont-15.1.05.pcf.gz
Nedlasting MD5 sum: da47e9c7a2cec3b68a0fad5d2a341dcc
Nedlastingsstørrelse: 1.4 MB
GCC (bare nødvendig hvis du bygger på 32-bits LFS)
Referer til GCC-14.2.0 siden for nedlastingsinformasjon.
efibootmgr-18 (kjøretid) og FreeType-2.13.3
Installer først skriftdata som root bruker:
mkdir -pv /usr/share/fonts/unifont && gunzip -c ../unifont-15.1.05.pcf.gz > /usr/share/fonts/unifont/unifont.pcf
Fjern eventuelle miljøvariabler som kan påvirke byggingen:
unset {C,CPP,CXX,LD}FLAGS
Ikke prøv å “tilpasse” denne pakken med tilpassete kompilasjonsflagg: denne pakken er en oppstartslaster, med lav nivå operasjoner i kildekoden som sannsynligvis vil bli ødelagt av aggressive optimaliseringer.
Legg til en fil som mangler fra utgivelsens tarball:
echo depends bli part_gpt > grub-core/extra_deps.lst
Hvis du kjører en 32-bits LFS, klargjør en 64-bits kompilator:
case $(uname -m) in i?86 )
tar xf ../gcc-14.2.0.tar.xz
mkdir gcc-14.2.0/build
pushd gcc-14.2.0/build
../configure --prefix=$PWD/../../x86_64-gcc \
--target=x86_64-linux-gnu \
--with-system-zlib \
--enable-languages=c,c++ \
--with-ld=/usr/bin/ld
make all-gcc
make install-gcc
popd
export TARGET_CC=$PWD/x86_64-gcc/bin/x86_64-linux-gnu-gcc
esac
Bygg GRUB med følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-efiemu \
--enable-grub-mkfont \
--with-platform=efi \
--target=x86_64 \
--disable-werror &&
unset TARGET_CC &&
make
Denne pakken har ikke en testpakke som gir meningsfulle resultater.
Nå, hvis du har hoppet over LFS GRUB pakken, som root user:
make install && mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions
Hvis du ikke har hoppet over LFS GRUB pakken, som
root bruker, installer bare
komponentene som ikke er installert fra LFS GRUB pakken i
stedet:
make DESTDIR=$PWD/dest install
cp -av dest/usr/lib/grub/x86_64-efi -T /usr/lib/grub/x86_64-efi
cp -av dest/usr/share/grub/*.{pf2,h} /usr/share/grub
cp -av dest/usr/bin/grub-mkfont /usr/bin
Hvis de valgfrie avhengighetene er installert, installer også grub-mount programmet:
cp -av dest/usr/bin/grub-mount /usr/bin
--enable-grub-mkfont:
Bygg verktøyet som heter grub-mkfont for å generere
fontfilen for oppstartslasteren fra fontdataene vi har
installert.
Hvis den anbefalte avhengigheten FreeType-2.13.3 ikke er installert, er det mulig å utelate dette alternativet og bygge GRUB. Derimot, hvis grub-mkfont ikke er bygget, eller unicode fontdataen ikke er tilgjengelig på det tidspunktet GRUB bygges, vil GRUB ikke installere hvilken som helst font for oppstartslasteren. GRUB oppstartsmenyen vil vises ved hjelp av en grov skrift eller i et mindre område på skjermen.
--with-platform=efi:
Sikrer å bygge GRUB med EFI aktivert.
--target=x86_64:
Sikrer at GRUB bygges for x86_64 selv om du bygger på et
32-bits LFS system. De fleste EFI fastvare på x86_64 støtter
ikke 32-biters oppstartslastere.
--target=i386: Noen få 32-bits
x86 plattformer har EFI støtte. Og noen x86_64 plattformer
har en 32-biters EFI implementering, men de er veldig gamle
og sjeldne. Bruk dette i stedet for --target=x86_64 hvis du er
helt sikker på at
LFS kjører på et slikt system.
Å bruke GRUB for å gjøre LFS systemet oppstartbart på UEFI plattformen vil bli diskutert i Using GRUB to Set Up the Boot Process with UEFI.
En liste over installerte filer, sammen med deres korte beskrivelser finner du på ../../../../lfs/view/12.2-systemd/chapter08/grub.html#contents-gRUB.
Listet nedenfor er de nylig installerte programmene sammen med korte beskrivelser.
BLFS har ikke de nødvendige pakkene for å støtte Sikker Oppstart. Til å sette opp oppstartsprosessen med GRUB og UEFI i BLFS, Sikker Oppstart må slås av fra konfigurasjonsgrensesnittet til fastvaren. Les dokumentasjonen fra produsenten av dtt system for å finne ut hvordan.
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
Processor type and features ---> [*] EFI runtime service support [EFI] [*] EFI stub support [EFI_STUB] -*- Enable the block layer ---> [BLOCK] Partition Types ---> [ /*] Advanced partition selection [PARTITION_ADVANCED] [*] EFI GUID Partition support [EFI_PARTITION] Device Drivers ---> Firmware Drivers ---> [*] Mark VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB] Graphics support ---> <*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> ... [DRM] [*] Enable legacy fbdev support for your modesetting driver ... [DRM_FBDEV_EMULATION] <*> Simple framebuffer driver [DRM_SIMPLEDRM] Console display driver support ---> [*] Framebuffer Console support [FRAMEBUFFER_CONSOLE] File systems ---> DOS/FAT/EXFAT/NT Filesystems ---> <*/M> VFAT (Windows-95) fs support [VFAT_FS] Pseudo filesystems ---> <*/M> EFI Variable filesystem [EFIVAR_FS] -*- Native language support ---> [NLS] <*/M> Codepage 437 (United States, Canada) [NLS_CODEPAGE_437] <*/M> NLS ISO 8859-1 (Latin 1; Western European Languages) [NLS_ISO8859_1]
Betydningen av konfigurasjonsalternativene:
CONFIG_PARTITION_ADVANCED
Hvis det ikke er aktivert, CONFIG_EFI_PARTITION vil
bli aktivert automatisk. Men når den er aktivert, må du
stille inn CONFIG_EFI_PARTITION til
å aktiveres også.
CONFIG_SYSFB_SIMPLEFB,
CONFIG_DRM,
CONFIG_DRM_FBDEV_EMULATION,
CONFIG_DRM_SIMPLEDRM,
CONFIG_FB, and
CONFIG_FRAMEBUFFER_CONSOLE
Kombinasjonen av disse alternativene gir Linux konsollen støtte på toppen av UEFI rammebufferen. For å tillate kjernen å skrive ut feilsøkingsmeldinger på et tidlig oppstartsstadium, bør de ikke bli bygget som kjernemoduler med mindre en initramfs skal brukes.
Sørg for at en nødoppstartsdiskett er klar til å “redde” systemet i
tilfelle systemet blir uoppstartbart. Å lage en
nødoppstartsdisk med GRUB for et EFI basert system, finn en
ekstra USB flashstasjon og opprett et vfat filsystemet på den. Installer
dosfstools-4.2 først, som root bruker:
Følgende kommando vil slette alle mapper og filer på
partisjonen. Sørg for at USB flashstasjonen ikke inneholder
data som du trenger, og endre sdx1 til enhetsnoden som
tilsvarer den første partisjonen til USB flashstasjonen.
Vær forsiktig så du ikke overskriver harddisken med en
skrivefeil!
mkfs.vfat /dev/sdx1
Fortsatt som root bruker,
bruk fdisk
verktøyet for å sette den første partisjonen av USB
flashstasjonen til å være en “EFI system”
partisjon (endre sdx til enhetsnoden
tilsvarende til USB flashstasjonen):
fdisk /dev/sdxWelcome to fdisk (util-linux 2.39.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help):tPartition number (1-9, default 9):1Partition type or alias (type L to list all):uefiChanged type of partition 'Linux filesystem' to 'EFI System'. Command (m for help):wThe partition table has been altered. Syncing disks.
Fortsatt som root bruker,
opprette et monteringspunkt for EFI partisjonen på USB
flashstasjonen og monter den:
mount --mkdir -v -t vfat /dev/sdx1 -o codepage=437,iocharset=iso8859-1 \
/mnt/rescue
Installer GRUB for EFI på partisjonen:
grub-install --target=x86_64-efi --removable \
--efi-directory=/mnt/rescue --boot-directory=/mnt/rescue
Avmonter partisjonen:
umount /mnt/rescue
Nå kan USB flashstasjonen brukes som en nødoppstartsdisk på hvilken som helst x86-64 UEFI plattform. For å lære hvordan du velger denne flashstasjonen som oppstartsenhet. les bruksanvisningen til hovedkortet eller den bærbare datamaskinen. Det vil starte opp systemet og vise GRUB skallet. Så du kan skrive kommandoer for å starte operativsystemet fra harddisken.
På EFI baserte systemer er oppstartslastere installert i en
spesiell FAT32 partisjon kalt EFI
System Partition (ESP). Hvis systemet ditt
støtter EFI, og en nyere versjon av en Linux distribusjon
eller Windows er forhåndsinstallert, er det sannsynlig at ESP
allerede er opprettet. Som root bruker, list opp alle partisjoner på
harddisken (erstatt sda med enheten som
tilsvarer den aktuelle harddisken):
fdisk -l /dev/sda
The “Type” kolonnen i ESP skal være
EFI System.
Hvis systemet eller harddisken er ny, eller det er den første
installasjon av et UEFI oppstartet OS på systemet, kan det
hende at ESP ikke eksisterer. Installer i så fall dosfstools-4.2 først. Deretter oppretter
du en ny partisjon, lag et vfat filsystem på den, og sett
partisjonstypen til “EFI system.” Se instruksjoner for
nødoppstartsenheten ovenfor som referanse.
Noen (gamle) UEFI implementeringer kan kreve at ESP er den første partisjon på disken.
Nå, som root bruker, lag
monteringspunktet for ESP, og monter det (erstatt
sda1 med
enhetsnoden som tilsvarer ESP):
mount --mkdir -v -t vfat /dev/sda1 -o codepage=437,iocharset=iso8859-1 \
/boot/efi
Hvis du vil montere ESP automatisk under systemoppstart, som
root bruker, legg til en
oppføring for ESP i /etc/fstab:
cat >> /etc/fstab << EOF
/dev/sda1 /boot/efi vfat codepage=437,iocharset=iso8859-1 0 1
EOF
På UEFI baserte systemer fungerer GRUB ved å installere en
EFI applikasjon (en spesiell type kjørbar) inn i ESP. EFI
fastvaren vil søke oppstartslastere i EFI applikasjoner fra
registrerte oppstartsoppføringer i EFI variabler, og i
tillegg en hardkodet bane EFI/BOOT/BOOTX64.EFI. Vanligvis en
oppstartslaster som skal installeres i en tilpasset bane, og
banen skal registreres i EFI variablene. Bruken av den
hardkodede banen bør unngås hvis mulig. Men i noen tilfeller
må vi bruke den hardkodede banen:
Systemet er ikke oppstartet med EFI ennå, noe som gjør EFI variabler utilgjengelig.
EFI fastvaren er 64-bit, men LFS-systemet er 32-bit, noe som gjør EFI variabler utilgjengelige fordi kjernen ikke kan påkalle EFI kjøretidstjenester med en annen virtuell adresselengde.
LFS er bygget for en Live USB, så vi kan ikke stole på EFI variabler, som er lagret i NVRAM eller EEPROM på den lokale maskinen.
Du er ikke i stand til eller vil ikke installere efibootmgr for å manipulere oppstartsoppføringer i EFI variabler.
I disse tilfellene, følg disse instruksjonene for å installere GRUB EFI applikasjonen inn i den hardkodede banen og lag en minimal oppstartskonfigurasjon. Ellers er det bedre å gå videre og sette opp oppstartskonfigurasjon normalt.
For å installere GRUB med EFI applikasjonen i den hardkodede
banen EFI/BOOT/BOOTX64.EFI,
sørg først for at oppstartspartisjonen er montert som
/boot og ESP er montert som
/boot/efi. Deretter, som
root bruker, kjør kommandoen:
Denne kommandoen vil overskrive /boot/efi/EFI/BOOT/BOOTX64.EFI. Det kan
ødelegge en oppstartslaster allerede installert der.
Sikkerhetskopier den hvis du ikke er sikker.
grub-install --target=x86_64-efi --removable
Denne kommandoen vil installere GRUB EFI applikasjonen i den
hardkodede banen /boot/efi/EFI/BOOT/BOOTX64.EFI, så EFI
fastvaren kan finne og laste den. De resterende GRUB filene
er installert i /boot/grub
mappen og vil bli lastet av BOOTX64.EFI under systemoppstart.
EFI fastvaren foretrekker vanligvis EFI applikasjonene med en bane lagret i EFI variabler til EFI applikasjon på den hardkodede banen. Så du må kanskje påkalle oppstartsmeny eller fastvareinnstillingsgrensesnitt for å velge den nyinstallert GRUB manuelt ved neste oppstart. Les manualen til hovedkortet eller den bærbare datamaskinen for å lære hvordan.
Hvis du har fulgt instruksjonene i denne delen og satt opp en minimal oppstartskonfigurasjon, hopp nå videre til “Opprette GRUB Konfigurasjonsfilen.”
Installasjonen av GRUB på en UEFI plattform krever at et EFI
variabelt filsystem, efivarfs, er montert. Som root bruker, monter det hvis det ikke
allerede er montert:
mountpoint /sys/firmware/efi/efivars || mount -v -t efivarfs efivarfs /sys/firmware/efi/efivars
Hvis systemet startes opp med UEFI og systemd, efivarfs vil bli montert automatisk.
Men i LFS chrootmiljøet trenger det fortsatt å monteres
manuelt.
Hvis systemet ikke er startet opp med UEFI, vil mappen
/sys/firmware/efi mangle. I
dette tilfellet bør du starte systemet i UEFI modus med
nødoppstartsdisken eller ved å bruke en minimal
oppstartskonfigurasjon opprettet som over, og monter
deretter efivarfs og
fortsett.
På UEFI baserte systemer fungerer GRUB ved å installere en
EFI applikasjon (en spesiell type kjørbar) i /boot/efi/EFI/[id]/grubx64.efi, hvor
/boot/efi er monteringspunktet
til ESP, og [id] erstattes med
en identifikator spesifisert i grub-install
kommandolinjen. GRUB vil opprette en oppføring i EFI
variablene som inneholder banen EFI/[id]/grubx64.efi så EFI fastvaren kan
finne grubx64.efi og laste den.
grubx64.efi er veldig lite (136
KB med GRUB-2.06), så den vil ikke bruke mye plass i ESP. En
typisk ESP størrelse er 100 MB (for Windows
oppstartsbehandler, som bruker omtrent 50 MB i ESP). Med en
gang grubx64.efi har blitt
lastet av fastvare, vil den laste GRUB moduler fra
oppstartspartisjonen. Standardplasseringen er /boot/grub.
Som root bruker, installer
GRUB filer i /boot/efi/EFI/LFS/grubx64.efi og
/boot/grub. Sett deretter opp
oppstartsoppføringer i EFI variablene:
grub-install --bootloader-id=LFS --recheck
Hvis installasjonen er vellykket, bør utdataen være:
Installing for x86_64-efi platform.
Installation finished. No error reported.
Kjør efibootmgr | cut -f 1 kommandoen for å kontrollere EFI oppstarskonfigurasjonen på nytt. Et eksempel på utdataen er:
BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0005,0000,0002,0001,0003,0004
Boot0000* ARCH
Boot0001* UEFI:CD/DVD Drive
Boot0002* Windows Boot Manager
Boot0003* UEFI:Removable Device
Boot0004* UEFI:Network Device
Boot0005* LFS
Merk at 0005 er den første i
BootOrder, og Boot0005 er LFS. Dette betyr at på neste oppstart, vil
versjonen av GRUB installert av LFS bli brukt til å starte
opp systemet.
Generer /boot/grub/grub.cfg for
å konfigurere oppstartsmenyen for GRUB:
cat > /boot/grub/grub.cfg << EOF
# Begin /boot/grub/grub.cfg
set default=0
set timeout=5
insmod part_gpt
insmod ext2
set root=(hd0,2)
insmod efi_gop
insmod efi_uga
if loadfont /boot/grub/fonts/unicode.pf2; then
terminal_output gfxterm
fi
menuentry "GNU/Linux, Linux 6.10.5-lfs-12.2" {
linux /boot/vmlinuz-6.10.5-lfs-12.2 root=/dev/sda2 ro
}
menuentry "Firmware Setup" {
fwsetup
}
EOF
Referer til LFS
boken for grunnleggende kunnskap om grub.cfg filen. (hd0,2), sda2,
og 6.10.5-lfs-12.2 må stemme
overens med din konfigurasjon.
insmod efi_gop
og insmod
efi_uga direktiver laster to moduler for EFI
basert videostøtte. På de fleste systemer er efi_gop modulen nok. efi_uga modulen er bare nyttig for eldre
systemer, men det er ufarlig å laste den uansett.
Videostøtten er nødvendig for at terminal_output gfxterm
direktivet egentlig skal virke.
terminal_output
gfxterm direktivet endrer skjermoppløsningen
til GRUB menyen for å matche skjermenheten din. Det vil bryte
gjengivelsen hvis unicode.pf2
fontdatafilen ikke er lastet inn, så den er beskyttet av et
if direktiv.
Fra GRUB sitt perspektiv er filene i forhold til
partisjonene brukt. Hvis du brukte en separat
/bootpartisjon, fjern /boot fra overstående stier (til
kjernen og til unicode.pf2).
Du må også endre "set root" linjen for å peke til
oppstartspartisjonen.
The Firmware Setup oppføringen
kan brukes til å angi konfigurasjonsgrensesnitt levert av
fastvaren (noen ganger kalt “BIOS configuration”).
Legg til en menyoppføring for Windows i grub.cfg:
cat >> /boot/grub/grub.cfg << EOF
# Begin Windows addition
menuentry "Windows 11" {
insmod fat
insmod chain
set root=(hd0,1)
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
EOF
(hd0,1) bør erstattes med det
GRUB utpekte navnet for ESP. chainloader direktivet kan brukes til å
fortelle GRUB om å kjøre en annen EFI kjørbar, i dette
tilfellet Windows Boot Manager. Du kan bruke mer brukbare
verktøy i EFI kjørbart format (for eksempel et EFI skall) inn
i ESP og lage GRUB oppføringer for dem også.
Dette kapittelet er referert i LFS boken for de som ønsker å bruke andre skriveprogrammer på deres LFS system. Du blir også vist hvordan noen LFS installerte programmer drar nytte av å bli rekompilert etter at GUI biblioteker har blitt installert.
Bluefish er en GTK+ tekstredigerer rettet mot programmerere og webdesignere, med mange muligheter for å skrive nettsider, skript og programmeringskode. Bluefish støtter mange programmerings- og markup-språk, og den fokuserer på redigering av dynamiske og interaktive nettsider.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.bennewitz.com/bluefish/stable/source/bluefish-2.2.15.tar.bz2
Nedlasting MD5 sum: 48018bcfef0faeceb66b0f2d814ded03
Nedlastingsstørrelse: 4.5 MB
Estimert diskplass som kreves: 52 MB
Estimert byggetid: 0.4 SBU
desktop-file-utils-0.27 (for oppdatering av skrivebordets database)
enchant-2.8.2 (for stavekontroll), Gucharmap-15.1.5, og Jing
Først, deaktiver et programtillegg som krever funksjoner som er fjernet i libxml-2.13.0 eller senere:
sed '/infbrowser/d' -i src/Makefile.am && autoreconf
Installer Bluefish ved å kjøre følgende kommandoer:
./configure --prefix=/usr --docdir=/usr/share/doc/bluefish-2.2.15 && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/icon-theme.cache
og /usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen du må ha desktop-file-utils-0.27 (for
skrivebordsbufferen) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -t -f --include-image-data /usr/share/icons/hicolor && update-desktop-database
Ed er en linjeorientert tekstredigerer. Den brukes til å lage, vise, endre og på annen måte manipulere tekstfiler, både interaktivt og via skallskript. Ed er ikke noe mange folk bruker. Det er beskrevet her fordi det kan brukes av oppdateringsprogrammet hvis du støter på en ed basert oppdateringsfil. Dette skjer sjelden fordi diff baserte oppdateringer foretrekkes i disse dager.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/ed/ed-1.20.2.tar.lz
Nedlasting MD5 sum: 8f31ca1cb5a2e2ca8ee2598cc0bf53e1
Nedlastingsstørrelse: 68 KB
Estimert diskplass som kreves: 1.0 MB
Estimert byggetid: less than 0.1 SBU
libarchive-3.7.4 (for bsdtar)
Installer Ed ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Emacs pakken inneholder en utvidbar, tilpassbar, selvdokumenterende sanntidsvisningsredigerer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/emacs/emacs-29.4.tar.xz
Nedlasting MD5 sum: b9cc42f7d8066152535cf267418b8ced
Nedlastingsstørrelse: 50 MB
Estimert diskplass som kreves: 525 MB
Estimert byggetid: 0.7 SBU (Using parallelism=4)
harfBuzz-9.0.0, giflib-5.2.2, GnuTLS-3.8.7.1, jansson-2.14, og libtiff-4.6.0
et grafiske miljø, alsa-lib-1.2.12, Cairo-1.18.0, dbus-1.14.10, GLib-2.80.4 (med GObject Introspection), gsettings-desktop-schemas-46.1, GPM-1.20.7, GTK+-3.24.43, ImageMagick-7.1.1-36, Little CMS-2.16, libjpeg-turbo-3.0.1, libpng-1.6.43, librsvg-2.58.3, libseccomp-2.5.5, libwebp-1.4.0, libxml2-2.13.3, MIT Kerberos V5-1.21.3, SQLite-3.46.1, Valgrind-3.23.0, intlfonts, libungif, libotf, og m17n-lib - til å riktig vise så komplekse skript som Indic og Khmer, og også for skript som krever arabisk formingsstøtte (Arabic og Farsi), mailutils, og libXaw3d
Installer Emacs ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke. Hvis make lykkes, kan du teste resultatet ved å kjøre src/emacs -Q, hvilket er det programmet som vil bli installert, med tilleggsfiler. Dette burde starte og vise applikasjonens åpningsskjerm.
Nå, som root bruker:
make install && chown -v -R root:root /usr/share/emacs/29.4
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme. For
å utføre oppdateringen må du ha GTK+-3.24.43 installert og
utstede følgende kommando som root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor
--with-imagemagick: Bruk denne
hvis du har installert ImageMagick-7.1.1-36 og
ønsker å lenke mot det.
--with-gif=no: Bruk denne hvis du
ikke har installert giflib-5.2.2 eller libungif.
--with-tiff=no: Bruk denne hvis
du ikke har installert libtiff-4.6.0.
--with-gnutls=no: Bruk denne hvis
du ikke har installert GnuTLS-3.8.7.1.
--without-harfbuzz: Bruk denne
hvis du ikke har installert harfBuzz-9.0.0.
--with-json=no: Bruk denne hvis
du ikke har installert jansson-2.14.
Gedit pakken inneholder en lettvekts UTF-8 tekstredigerer for GNOME skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gedit/47/gedit-47.0.tar.xz
Nedlasting MD5 sum: 88aa416009439007815a3c01ce45e4fe
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 66 MB (med tester)
Estimert byggetid: 0.2 SBU (bruker parallellisme=4; med tester)
Nedlasting (HTTP): https://github.com/gedit-technology/libgedit-tepl/releases/download/6.10.0/libgedit-tepl-6.10.0.tar.xz
Nedlasting MD5 sum: 0bc684817b93abbcba290094bc94abdb
Nedlastingsstørrelse: 168 KB
Estimert diskplass som kreves: 10 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
Nedlasting (HTTP): https://github.com/gedit-technology/libgedit-gfls/releases/download/0.1.0/libgedit-gfls-0.1.0.tar.xz
Nedlasting MD5 sum: fa465c84be20de668b00deb2723334f3
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 1.0 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
gsettings-desktop-schemas-46.1, itstool-2.0.7, libgedit-amtk-5.8.0, libgeditsourceview-299.2.1 libhandy-1.8.3, og libpeas-1.36.0
gspell-1.12.2, Gvfs-1.54.2 (runtime), ISO Codes-4.16.0, og PyGObject-3.48.2 (Python3 modul)
Bygg først gfls biblioteket:
tar -xf ../libgedit-gfls-0.1.0.tar.xz &&
pushd libgedit-gfls-0.1.0 &&
mkdir gfls-build &&
cd gfls-build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
.. &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install && popd
For det andre, bygg tepl biblioteket:
tar -xf ../libgedit-tepl-6.10.0.tar.xz &&
pushd libgedit-tepl-6.10.0 &&
mkdir tepl-build &&
cd tepl-build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
.. &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install && popd
Til slutt, installer Gedit ved å kjøre følgende kommandoer:
mkdir gedit-build &&
cd gedit-build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
.. &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
-D gtk_doc=false:
Denne bryteren deaktiverer genereringen av API
dokumentasjonen. Utelat denne bryteren hvis du har GTK-Doc-1.34.0 installert og ønsker å
generere API dokumentasjon.
JOE (Joe's own editor) er en liten tekst tekstredigerer som er i stand til å emulere WordStar, Pico, og Emacs.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/joe-editor/joe-4.6.tar.gz
Nedlasting MD5 sum: 9017484e6116830d846678b625ea5c43
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 22 MB
Estimert byggetid: 0.2 SBU
Installer JOE ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--docdir=/usr/share/doc/joe-4.6 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
install -vm 755 joe/util/{stringify,termidx,uniproc} /usr/bin
|
er en symbolsk kobling til joe brukt til å starte Emacs emuleringsmodus |
|
|
er et lite tekstredigeringsprogram som kan emulere WordStar, Pico, og Emacs |
|
|
er en symbolsk kobling til joe brukt til å starte Pico emuleringsmodus |
|
|
er en symbolsk kobling til joe brukt til å starte WordStar emuleringsmodus |
|
|
er en symbolsk kobling til joe som begrenser JOE til å redigere bare filer som er spesifisert på kommandolinjen |
|
|
er et program som brukt av joe for å konvertere rc og .jsf-filer til en C-fil (se /usr/share/doc/joe-4.6/util/README) |
|
|
er et program som brukt av joe for å generere termcap indeksfil (se /usr/share/doc/joe-4.6/util/README) |
|
|
er et program som brukt av joe for å generere joe's unicode database filen unicat.c fra Blocks.txt CaseFolding.txt EastAsianWidth.txt og UnicodeData.txt (finn dem på /usr/share/doc/joe-4.6/util; se usr/share/doc/joe-4.6/util/README) |
Kate pakken inneholder en avansert KF6 basert grafisk tekstredigerer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/kate-24.08.0.tar.xz
Nedlasting MD5 sum: bdb43ea4ec735e3a9c81701257581ad6
Nedlastingsstørrelse: 7.8 MB
Estimert diskplass som kreves: 299 MB
Estimert byggetid: 1.0 SBU (using parallelism=4)
Installer Kate ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Mousepad er en enkel GTK+ 3 tekstredigerer for Xfce skrivebordsmiljøet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/mousepad/0.6/mousepad-0.6.2.tar.bz2
Nedlasting MD5 sum: 3ad46198202d2696cac27d5a0f08bab0
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 SBU
DConf-0.40.0 (kjøretid) og dbus-glib-0.112
Installer Mousepad ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-gtksourceview4 \
--enable-keyfile-settings &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-keyfile-settings: Bruk
GSettings nøkkelfil bakstykke i stedet for standard DConf-0.40.0.
Nano pakken inneholder en liten, enkel tekstredigerer som tar sikte på å erstatte Pico, standardredigeringsprogrammet i Pine pakken.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.nano-editor.org/dist/v8/nano-8.1.tar.xz
Nedlasting MD5 sum: 9eb581845590ad70ba89c04509c7a386
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 23 MB
Estimert byggetid: 0.2 SBU
Installer Nano ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-utf8 \
--docdir=/usr/share/doc/nano-8.1 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
install -v -m644 doc/{nano.html,sample.nanorc} /usr/share/doc/nano-8.1
--enable-utf8: Denne
bryteren muliggjør unicode støtte i Nano.
Eksempelkonfigurasjon (opprett som systemomfattende
/etc/nanorc eller en
personlig ~/.nanorc fil)
set autoindent
set constantshow
set fill 72
set historylog
set multibuffer
set nohelp
set positionlog
set quickblank
set regexp
Sjekk sample.nanorc filen i
den installerte dokumentasjonsmappen. Den inkluderer
fargekonfigurasjoner og har noe dokumentasjon inkludert i
kommentarene.
Syntaksutheving er gitt for flere filtyper, i /usr/share/nano/ mappen. For eksempel for
skallskript kan du sette inn include
/usr/share/nano/sh.nanorc i det personlige eller
globalw konfigurasjonsfilen. Hvis du ønsker fremheving for
alle som støttede filer, bruk include
/usr/share/nano/*.nanorc. Denne inkluderingen går
ikke ned i extra mappen.
Flytt nødvendige filer ett nivå opp.
Vim pakken, som er en forkortelse for VI IMproved, inneholder en vi klone med ekstra funksjoner sammenlignet med originalen vi.
Standard LFS instruksjoner installerer vim som en del av basissystemet. Hvis du foretrekker å linke vim imot X, du bør kompilere vim på nytt for å aktivere GUI modus. Det er ikke behov for spesielle instruksjoner siden X støtte oppdages automatisk.
Versjonen av vim endres daglig. For å få den siste versjonen, gå til https://github.com/vim/vim/releases.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/vim/vim/archive/v9.1.0660/vim-9.1.0660.tar.gz
Nedlasting MD5 sum: c512a99b3704f193be1a181cc644b2b2
Nedlastingsstørrelse: 17 MB
Estimert diskplass som kreves: 134 MB (add 74 MB for tests)
Estimert byggetid: 0.3 SBU (med parallellitet=4; legg til 11 SBU for tester)
et grafiske miljø og GTK+-3.24.43
Hvis du rekompilerer Vim
for å linke mot X og dine
X biblioteker ikke er på
root partisjonen, vil du ikke lenger ha en tekstredigerer
for bruk i nødstilfeller. Du kan velge å installere en
ekstra tekstredigerer, ikke lenke Vim mot X, eller flytt den gjeldende
vim kjørbare
til /bin mappen under et
annet navn som f.eks vi.
Installer Vim ved å kjøre følgende kommandoer:
Hvis du har tenkt å kjøre testene og ikke har installert Xorg i /usr, legg til LDFLAGS='-L$XORG_PREFIX/lib' til konfigureringslinjen nedenfor.
echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h &&
echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' >> src/feature.h &&
./configure --prefix=/usr \
--with-features=huge \
--enable-gui=gtk3 \
--with-tlib=ncursesw &&
make
Hvis den globale konfigurasjonsfilen /etc/vimrc refererer til VIMRUNTIME miljøvariabel, noen tester kan
klage på at de ikke kan finne tilsvarende mappe og vente på
brukerinndata. Hvis dette er tilfelle, bør denne filen
lagres og fjernes før testene kjøres. Eller hvis bubblewrap-0.9.0 er installert, er
det også mulig å lage et lett containermiljø der denne
filen er skjult og kjør testene i beholderen.
For å teste resultatene, utsted: make -j1 test Testfeil,
hvis noen, vil produsere filen test.log i src/testdir. De resterende testene vil
fortsatt bli utført. Hvis alt går bra, vil loggen rapportere
ALL DONE. Noen tester merket som
“flaky”
kan av og til mislykkes og kan ignoreres. Testene er kjent
for å mislykkes hvis utdata blir omdirigert til en fil, og
også hvis de kjøres i en 'screen' økt.
Hvis du kjører testene med bubblewrap-0.9.0
og /etc/vimrc skjult, bruk
bwrap --dev-bind / /
--dev-bind /dev/null /etc/vimrc make -j1
test.
Noen fargetester forventer å bli utført under xterm terminalemulator.
Nå, som root bruker:
make install
Som standard er Vims dokumentasjon installert i /usr/share/vim. Følgende symbolkobling
tillater dokumentasjonen å bli nådd via /usr/share/doc/vim-9.1.0660, som gjør at
det samsvarer med plasseringen av dokumentasjonen for andre
pakker:
ln -snfv ../vim/vim91/doc /usr/share/doc/vim-9.1.0660
Hvis du ønsker å oppdatere kjøretidsfiler, utfør følgende kommando (krever rsync-3.3.0) for å laste den ned:
rsync -avzcP --exclude="/dos/" --exclude="/spell/" \
ftp.nluug.nl::Vim/runtime/ ./runtime/
Og installer deretter de oppdaterte kjøretidsfilene og
regener tags filene, som
root bruker kjør:
make -C src installruntime && vim -c ":helptags /usr/share/doc/vim-9.1.0660" -c ":q"
--with-features=huge:
Denne bryteren aktiverer alle tilleggsfunksjonene som er
tilgjengelige i Vim,
inkludert støtte for multibyte tegn.
--with-tlib=ncursesw:
Denne bryteren tvinger Vim til å lenke mot libncursesw biblioteket.
--enable-gui=no: Dette vil
forhindre kompilering av GUI. Vim vil fortsatt lenke mot X, slik at noen funksjoner som f.eks
klient-servermodell eller x11-utvalg (utklippstavle) fortsatt
er tilgjengelig.
--without-x: Hvis du foretrekker
å ikke linke Vim mot
X, bruk denne bryteren.
--enable-luainterp, --enable-perlinterp, --enable-python3interp=dynamic, --enable-tclinterp --with-tclsh=tclsh,
--enable-rubyinterp: Disse
alternativene inkluderer Lua-, Perl-, Python3-, Tcl- eller
Ruby-tolkene som tillater bruk av annen applikasjonskode i
vim skript. Alle
--enable-* alternativene kan
godta =dynamic å dynamisk laste
tolken etter behov. Dette kreves for Python 3 for å forhindre
segmenteringsfeil. Til tcl,
er det nødvendig å angi navnet på tclsh kjørbare, siden
configure bare
søker versjonerte navn med gamle versjoner.
Vim har en integrert stavekontroll som du kan aktivere ved å utstede følgende i et vim vindu:
:setlocal spell spelllang=ru
Denne innstillingen vil aktivere stavekontroll for russisk språk for gjeldende økt.
Som standard, Vim
installerer kun språkfiler for det engelske språket. Hvis
en språkfil ikke er tilgjengelig for et språk vil
Vim kalle $VIMRUNTIME/plugin/spellfile.vim
programtillegget og vil prøve å få tak i *.spl og eventuelt
*.sug fra vim ftp serveren, ved å bruke $VIMRUNTIME/plugin/netrwPlugin.vim
programtillegget.
Alternativt kan du laste ned *.spl- og *.sug-filene manuelt
fra: ftp://ftp.vim.org/pub/vim/runtime/spell/
og lagre dem til ~/.vim/spell
eller i /usr/share/vim/vim91/spell/.
For å finne ut hva som er nytt i Vim-9.1.0660 kjør følgende kommando:
:help version-9.1.0660
For ytterligere informasjon om oppsett av Vim konfigurasjonsfiler, se Vimrc Filer og https://vim.fandom.com/wiki/Example_vimrc.
En liste over de reinstallerte filene, sammen med deres korte beskrivelser finner du i LFS Vim Installasjonsinstruksjoner.
|
starter gvim i skrivebeskyttet modus |
|
|
er redigeringsprogrammet som kjører under X og inkluderer en GUI |
|
|
redigerer to eller tre versjoner av en fil med gvim og viser forskjellene |
|
|
lærer de grunnleggende tastene og kommandoene til gvim |
|
|
er en begrenset versjon av gview |
|
|
er en begrenset versjon av gvim |
Vi er alle kjent med Bourne Again SHell, men det er to andre brukergrensesnitt som anses som nyttige moderne skall – Berkeley Unix C skallet og Korn skallet. Dette kapittelet installerer pakker som er kompatible med disse ekstra skalltypene.
Dash er et POSIX kompatibelt
skall. Det kan bli installert som /bin/sh eller som standard
skall for både root eller en
annen bruker med bruker-ID på 0. Det avhenger av færre
biblioteker enn Bash skallet
og er derfor mindre sannsynlig at det blir påvirket av et
oppgraderingsproblem eller diskfeil. Dash er også nyttig for å kontrollere at
et skript er fullstendig kompatibelt med POSIX syntakset.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://gondor.apana.org.au/~herbert/dash/files/dash-0.5.12.tar.gz
Nedlasting MD5 sum: 57222b768b84003ea4b801e5d5e0e52b
Nedlastingsstørrelse: 244 KB
Estimated disk space required: 2.9 MB
Estimert byggetid: mindre enn 0.1 SBU
libedit (kommandolinjeredigeringsbibliotek)
Installer Dash ved å kjøre følgende kommandoer:
./configure --bindir=/bin --mandir=/usr/share/man && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du vil gjøre dash standard sh, gjenskap /bin/sh symbolkobling som root bruker:
Hvis du oppretter den symbolske lenken fra dash til sh, må du tilbakestille lenken til bash for å bygge LFS.
ln -svf dash /bin/sh
--bindir=/bin: Denne
parameteren plasserer dash binær inn i
rotfilsystemet.
--with-libedit: For å kompilere
Dash med libedit støtte.
Tcsh pakken inneholder “en forbedret, men fullstendig kompatibel versjon av Berkeley Unix C skallet (csh).” Dette er nyttig som et alternativt skall for de som foretrekker C syntaksen fremfor bash skallet, og også fordi noen programmer krever C skallet for å kunne utføre installasjonsoppgaver.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://astron.com/pub/tcsh/tcsh-6.24.13.tar.gz
Nedlasting MD5 sum: 7467f2a08b758d3439aad332322e6a98
Nedlastingsstørrelse: 940 KB
Estimert diskplass som kreves: 11 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Installer Tcsh ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install install.man && ln -v -sf tcsh /bin/csh && ln -v -sf tcsh.1 /usr/share/man/man1/csh.1
ln -v -sf tcsh
/bin/csh: FHS opplyser at hvis det er et
C skall installert, bør det
være en symbolkobling fra /bin/csh til det. Dette skaper den
symbolkoblingen.
Det er mange konfigurasjonsfiler for C skallet. Eksempler
på disse er /etc/csh.cshrc,
/etc/csh.login, /etc/csh.logout, ~/.tcshrc, ~/.cshrc, ~/.history, ~/.cshdirs, ~/.login, og ~/.logout. Mer informasjon om disse
filene finnes i tcsh(1)
manualside.
Oppdater /etc/shells til å
inkludere C skallets programnavn (som root bruker):
cat >> /etc/shells << "EOF"
/bin/tcsh
/bin/csh
EOF
Følgende ~/.cshrc gir to
alternative fargemeldinger og farget ls utdata. Hvis du
foretrekker en global modifikasjon, utsted kommandoen som
root bruker, erstatt
~/.cshrc med /etc/csh.cshrc.
cat > ~/.cshrc << "EOF"
# Original at:
# https://www.cs.umd.edu/~srhuang/teaching/code_snippets/prompt_color.tcsh.html
# Modified by the BLFS Development Team.
# Add these lines to your ~/.cshrc (or to /etc/csh.cshrc).
# Colors!
set red="%{\033[1;31m%}"
set green="%{\033[0;32m%}"
set yellow="%{\033[1;33m%}"
set blue="%{\033[1;34m%}"
set magenta="%{\033[1;35m%}"
set cyan="%{\033[1;36m%}"
set white="%{\033[0;37m%}"
set end="%{\033[0m%}" # This is needed at the end...
# Setting the actual prompt. Two separate versions for you to try, pick
# whichever one you like better, and change the colors as you want.
# Just don't mess with the ${end} guy in either line... Comment out or
# delete the prompt you don't use.
set prompt="${green}%n${blue}@%m ${white}%~ ${green}%%${end} "
set prompt="[${green}%n${blue}@%m ${white}%~ ]${end} "
# This was not in the original URL above
# Provides coloured ls
alias ls ls --color=always
# Clean up after ourselves...
unset red green yellow blue magenta cyan yellow white end
EOF
zsh pakken inneholder en kommando tolk (skall) som kan brukes som et interaktivt påloggingsskall og som en skallscript kommandoprosessor. Av standard skall, zsh ligner mest på ksh men inkluderer mange forbedringer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.zsh.org/pub/zsh-5.9.tar.xz
Nedlasting MD5 sum: 182e37ca3fe3fa6a44f69ad462c5c30e
Nedlastingsstørrelse: 3.2 MB
Estimert diskplass som kreves: 48 MB (inkluderer dokumentasjon og tester)
Estimert byggetid: 1.6 SBU (Bruker parallellisme=4; inkludert dokumentasjon og tester)
Når det er en ny zsh utgivelse, gamle filer vist ovenfor flyttes til en ny servermappe: https://www.zsh.org/pub/old/.
Tilpass dokumentasjonsbyggesystemet for texinfo-7.0 eller nyere:
sed -e 's/set_from_init_file/texinfo_&/' \
-i Doc/Makefile.in
Noen programmer ble levert i byggesystemet for å oppdage systemfunksjoner bruker pre-C99 syntaks som er avvist av GCC-14.1 eller nyere. Fiks dem ellers vil Zsh være feilkonfigurert og mislykkes i å bygge:
sed -e 's/^main/int &/' \
-e 's/exit(/return(/' \
-i aczsh.m4 configure.ac &&
sed -e 's/test = /&(char**)/' \
-i configure.ac &&
autoconf
Dokumentasjonsfilene inneholder referanser til zsh
konfigurasjon filer i /etc, men
vi vil bruke /etc/zsh for å
holde disse konfigurasjonsfiler i stedet. Byggesystemet vil
fikse de referanser hvis yodl pakken er tilgjengelig, men det er
utenfor omfanget av BLFS. Så vi må ordne opp referansene
manuelt:
sed -e 's|/etc/z|/etc/zsh/z|g' \
-i Doc/*.*
Installer zsh ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc/zsh \
--enable-etcdir=/etc/zsh \
--enable-cap \
--enable-gdbm &&
make &&
makeinfo Doc/zsh.texi --html -o Doc/html &&
makeinfo Doc/zsh.texi --plaintext -o zsh.txt &&
makeinfo Doc/zsh.texi --html --no-split --no-headers -o zsh.html
Hvis du har texlive-20240312 installert, kan du bygge PDF format av dokumentasjonen ved å kjøre følgende kommando:
texi2pdf Doc/zsh.texi -o Doc/zsh.pdf
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install &&
make infodir=/usr/share/info install.info &&
make htmldir=/usr/share/doc/zsh-5.9/html install.html &&
install -v -m644 zsh.{html,txt} Etc/FAQ /usr/share/doc/zsh-5.9
Hvis du har bygget PDF formatet til dokumentasjonen,
installer den ved å kjøre følgende kommando som root bruker:
install -v -m644 Doc/zsh.pdf /usr/share/doc/zsh-5.9
--sysconfdir=/etc/zsh
og --enable-etcdir=/etc/zsh: Disse
parameterne brukes slik at alle zsh konfigurasjonsfiler er konsolidert
inn i /etc/zsh mappen. Utelat
disse parameterne hvis du ønsker å beholde historisk
kompatibilitet ved å ha alle filene plassert i /etc mappen.
--enable-cap: Dette
alternativet aktiverer POSIX funksjoner.
--enable-gdbm: Dette
alternativet aktiverer bruk av GDBM biblioteket.
Det finnes en hel rekke konfigurasjonsfiler for
zsh Inkludert /etc/zsh/zshenv, /etc/zsh/zprofile, /etc/zsh/zshrc, /etc/zsh/zlogin og /etc/zsh/zlogout. Du finner mer
informasjon om disse i zsh(1) og
relaterte manualsider.
Første gang zsh kjøres, vil du bli spurt av meldinger som
spør flere spørsmål. Svarene vil bli brukt til å lage en
~/.zshrc fil. Hvis du ønsker
å kjøre disse spørsmålene igjen, kjør zsh
/usr/share/zsh/5.9/functions/zsh-newuser-install
-f.
Det er flere innebygde avanserte ledetekster. I
zsh skallet,
start avansert støtte med autoload -U promptinit,
deretter promptinit. Tilgjengelige
ledetekstnavn er oppført med prompt -l. Velg en
bestemt med prompt
<prompt-name>. Vis
alle tilgjengelige ledetekster med prompt -p. Bortsett fra
listen og viste kommandoer ovenfor, kan du sette inn de
andre i ~/.zshrc sånn at de
utføres automatisk ved skallstart, med ledeteksten du
valgte.
Virtualisering gjør det mulig å kjøre et komplett operativsystem, eller virtuell maskin (VM), innenfor et annet driftsmiljø som en oppgave. Det er flere kommersielle og åpen kildekodemiljøer som enten emulerer en annet prosessor eller bruke maskinvarevirtualiseringsfunksjonene til vertens prosessor.
qemu er en full virtualiseringsløsning for Linux på x86 maskinvare som inneholder virtualiseringsutvidelser (Intel VT eller AMD-V).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.qemu.org/qemu-9.0.2.tar.xz
Nedlasting MD5 sum: f7f0462262d2571f146c6a8adda33b29
Nedlastingsstørrelse: 126 MB
Estimert diskplass som kreves: 2.2 GB (374 MB installert)
Estimert byggetid: 1.6 SBU (add 1.0 SBU for tester, begge med parallellisme=4)
alsa-lib-1.2.12, dtc-1.7.1, Libslirp-4.8.0, og SDL2-2.30.6
hvis dtc-1.7.1 ikke er installert, byggesystemet vil prøve å laste ned en kopi av dtc kildekoden fra Internett.
pipewire-1.2.3 eller PulseAudio-17.0 (kan brukes i stedet for alsa-lib), BlueZ-5.77, cURL-8.9.1, Cyrus SASL-2.1.28, Fuse-3.16.2, GnuTLS-3.8.7.1, GTK+-3.24.43, keyutils-1.6.3, libaio-0.3.113, libusb-1.0.27, libgcrypt-1.11.0, libjpeg-turbo-3.0.1, libseccomp-2.5.5, libssh2-1.11.0, libpng-1.6.43, libtasn1-4.19.0, Linux-PAM-1.6.1, LZO-2.10, Nettle-3.10, Mesa-24.1.5, VTE-0.76.4, capstone, ceph, daxctl, JACK, glusterfs, libbpf, libcacard, libcap-ng, libdw, libiscsi, libnfs, libpmem, libssh, libu2f-emu, lzfse, netmap, numactl, rdma-core, SELinux, snappy, spice, usbredir, og VDE
Denne valgfrie avhengighetslisten er ikke uttømmende. Se utdataen fra ./configure --help for en mer komplett liste.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/qemu
Før byggingen av qemu, sjekk for å se om prosessoren din støtter virtualiseringsteknologi (VT):
grep -E '^flags.*(vmx|svm)' /proc/cpuinfo
Hvis du får noe utdata, har du VT teknologi (vmx for Intel prosessorer og svm for AMD prosessorer). Du må da gå inn i din system BIOS og sørge for at den er aktivert. Etter å ha aktivert den, start på nytt din LFS forekomst.
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
[*] Virtualization ---> [VIRTUALIZATION] <*/M> Kernel-based Virtual Machine (KVM) support [KVM] # Enable the option for your CPU: < /*/M> KVM for Intel (and compatible) processors support [KVM_INTEL] < /*/M> KVM for AMD processors support [KVM_AMD]
Begge Intel- eller AMD-innstillingene er ikke nødvendige, men den som samsvarer din systemprosessor er nødvendig.
For å bruke “bridge” nettverksenhet, som forklart nedenfor, Sjekk at bridge-utils-1.7.1 er installert og følgende alternativer i kjernekonfigurasjonen er aktivert:
[*] Networking support ---> [NET] Networking options ---> <*/M> 802.1d Ethernet Bridging [BRIDGE] Device Drivers ---> [*] Network device support ---> [NETDEVICES] [*] Network core driver support [NET_CORE] <*/M> Universal TUN/TAP device driver support [TUN]
Udev regelen til LFS tillater bare root bruker, brukerne som eier en lokal
påloggingsøkt støttet av den valgfrie kjøretidsavhengigheten
Systemd-256.4, eller brukerne i
kvm gruppen å bruke KVM
enheten. Som root bruker,
legg til eventuelle ikke-root
brukere som kan bruke KVM enheten enten uten Systemd-256.4 installert eller
eksternt (via en SSH tilkobling) til kvm gruppen:
usermod -a -G kvm <username>
Installer qemu ved å kjøre følgende kommandoer:
Qemu er i stand til å kjøre mange mål. Byggeprosessen er
også i stand til å bygge flere mål samtidig i en kommadelt
liste tilordnet --target-list.
Kjør ./configure
--help for å få en fullstendig liste over
tilgjengelige mål.
if [ $(uname -m) = i686 ]; then
QEMU_ARCH=i386-softmmu
else
QEMU_ARCH=x86_64-softmmu
fi
mkdir -vp build &&
cd build &&
../configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--target-list=$QEMU_ARCH \
--audio-drv-list=alsa \
--disable-pa \
--enable-slirp \
--docdir=/usr/share/doc/qemu-9.0.2 &&
unset QEMU_ARCH &&
make
qemu bruker ninja som en delprosess ved byggingen. For å kjøre testene, kjør: ninja test. En test, bios-tables-test, er kjent for å mislykkes.
Nå, som root bruker:
make install
Endre tillatelsene og eierskapet til et hjelpeskript, som er
nødvendig når du bruker “bridge” nettverksenhet (se nedenfor).
En gang til som root bruker,
kjør:
Du må legge til brukere som kan bruke “bridge”
nettverksenhet i kvm
gruppen selv om Systemd-256.4
er installert.
chgrp kvm /usr/libexec/qemu-bridge-helper && chmod 4750 /usr/libexec/qemu-bridge-helper
For enkelhets skyld kan det være lurt å lage en symbolsk
lenke for å kjøre det installerte programmet. For eksempel
(som root bruker):
ln -sv qemu-system-`uname -m` /usr/bin/qemu
--audio-drv-list=alsa: Denne
bryteren setter lyddriveren til ALSA. Se nedenfor for å
aktivere andre lyddrivere.
--disable-pa: selv om
pa ikke er i
--audio-drv-list
listen, pulseaudio driveren blir bygget, med mindre den er
deaktivert av denne parameteren.
--enable-slirp: Denne
bryteren tvinger byggesystemet å se etter Libslirp-4.8.0.
Fjern den hvis du ikke trenger -netdev
user støtte.
--audio-drv-list=pa
--disable-alsa: Denne bryteren setter lyddriveren til
pulsaudio. For andre drivere se --audio-drv-list valg i
utdaten fra ./configure
--help. Standard lyddriver er OSS. For å
aktivere støtte for både alsa og pulsaudio, bruk --audio-drv-list=alsa,pa.
Siden bruk av qemu betyr å bruke en virtuell datamaskin,
trinnene for å sette opp den virtuelle maskinen er i nær
analogi med de for å sette opp en ekte datamaskin. Du må
bestemme deg for CPU, minne, disk, USB enheter,
nettverkskort(er), skjermstørrelse osv. Når “maskinvaren” er
bestemt, må du for eksempel velge hvordan du kobler til
maskinenen til internett og/eller for å installere et OS. I
det følgende viser vi grunnleggende måter å utføre disse
trinnene på. Men qemu er mye mer enn dette, og det anbefales
på det sterkeste å lese qemu dokumentasjonen i /usr/share/doc/qemu-9.0.2/qemu-doc.html.
Det er standard praksis å navngi datamaskinen som kjører qemu “host” og den emulerte maskinen som kjører under qemu “guest.” Vi bruker disse notasjonene nedenfor.
Følgende instruksjoner forutsetter at den valgfrie
symbolske lenken, qemu, har
blitt opprettet. I tillegg, qemu skal kjøres i et
grafisk miljø. Men det er mulig å bruke qemu “headless” eller
gjennom SSH. Se dokumentasjonen for de ulike mulighetene.
En virtuell disk kan settes opp på følgende måte:
VDISK_SIZE=50GVDISK_FILENAME=vdisk.imgqemu-img create -f qcow2 $VDISK_FILENAME $VDISK_SIZE
Den virtuelle diskstørrelsen og filnavnet bør justeres etter ønske. Den faktiske størrelse på filen vil være mindre enn spesifisert, men vil utvides etter behov, så det er trygt å sette en høy verdi.
For å installere et operativsystem, last ned et iso bilde fra
din foretrukne Linux distribusjon. For formålet med dette
eksemplet vil vi bruke Fedora-16-x86_64-Live-LXDE.iso i gjeldende
mappe. Kjør følgende:
qemu -enable-kvm \
-drive file=$VDISK_FILENAME \
-cdrom Fedora-16-x86_64-Live-LXDE.iso \
-boot d \
-m 1G
Følg de vanlige installasjonsprosedyrene for den valgte
distribusjonen. -boot
alternativet spesifiserer oppstartsrekkefølgen til stasjoner
som en streng med stasjonsbokstaver. Gyldige
stasjonsbokstaver er: a, b (diskett 1 og 2), c (første
harddisk), d (første CD-ROM). -m alternativet er mengden
minne som skal brukes til den virtuelle maskinen. Valget
avhenger av belastningen til verten. Moderne distribusjoner
bør være komfortable med 1 GB. -enable-kvm alternativet
tillater maskinvare akselerasjon. Uten denne bryteren er
emuleringen mye tregere.
Den virtuelle maskinvaren er definert av kommandolinjen til qemu. En eksempelkommando er gitt nedenfor:
qemu -enable-kvm \
-smp 4 \
-cpu host \
-m 1G \
-drive file=$VDISK_FILENAME \
-cdrom grub-img.iso \
-boot order=c,once=d,menu=on \
-net nic,netdev=net0 \
-netdev user,id=net0 \
-device ac97 \
-vga std \
-serial mon:stdio \
-name "fedora-16"
-enable-kvm: aktiver
full KVM virtualisering støtte. På noen maskinvare kan det
være nødvendig å legge til det udokumenterte -machine smm=off alternativet for å aktivere
KVM.
-smp <N>:
muliggjør symmetrisk multiprosessering med <N> CPUer.
-cpu <model>:
simulere CPU <model>. Listen over støttede modeller kan
fås med -cpu help.
-drive
file=<filename>: definerer en virtuell disk
hvis bildet er lagret på <filename>.
-cdrom grub-img.iso:
definerer en iso formatert fil for å bruke som en cdrom. Her
bruker vi en grub redningsskive, som kan være nyttig når noe
går galt ved oppstart.
-boot
order=c,once=d,menu=on: definerer oppstarts
rekkefølgen for den virtuelle BIOS.
-net
nic,netdev=<netid>: definerer et
nettverkskort koblet til nettverksenheten med id
<netid>.
-netdev
user,id=<netid>: definerer nettverkets
“bruker” enhet. Dette er et virtuelt
lokalt nettverk med adresser 10.0.2.0/24, hvor verten har
adressen 10.0.2.2 og fungerer som en inngangsport til
internett, og med en navneserver på adressen 10.0.2.3, og en
smb server på adressen 10.0.2.4. En innebygd DHCP server kan
tildele adresser mellom 10.0.2.15 og 10.0.2.31.
-soundhw
<model>: definerer lydkortets modell.
Listen kan fås med -soundhw help.
-vga <type>:
definerer typen VGA kort å etterligne. For -vga std, hvis du bygger en
Linuxkjerne som gjest, anbefales det å aktivere CONFIG_DRM_BOCHS (som en del av kjernen eller
en kjerne modul) for å drive alle funksjonene til det
emulerte VGA kortet, og CONFIG_FB
for å vise Linux konsollen på den. Det andre <type> verdier er ikke testet av
redaktører og kan kreve ytterligere avhengigheter.
-serial mon:stdio:
sender serieporten til gjesten (/dev/ttyS0 på linux gjester), multiplekset
med qemu monitoren, til standardinngangen og -utgangen til
qemu prosesser.
-name <name>:
angir navnet på gjesten. Dette navnet vises i gjestevinduets
bildetekst. Det kan være nyttig hvis du kjører flere gjester
samtidig.
-drive
if=pflash,format=raw,readonly=on,file=/usr/share/qemu/edk2-x86_64-code.fd:
Last en forhåndsbygd EDK2 UEFI fastvare, i stedet for
standard PC BIOS. Bruk dette alternativet hvis du vil starte
gjesteOS med UEFI.
-drive
file=<filename>,if=virtio: Gir Virtio
grensesnittet til gjestekjernen for tilgang til diskbildet, i
stedet for å simulere en ekte diskmaskinvare. Dette kan
forbedre disk I/O ytelse, men det krever en Virtio driver i
gjestekjernen. Bruk det i stedet for en vanlig -drive hvis gjestekjernen støtter Virtio. For
å bygge en Linuxkjerne med Virtio støtte for gjest, bruk
make defconfig && make
kvm_guest.config til opprette en innledende
kjernekonfigurasjon med Virtio drivere aktivert, deretter
gjør din tilpasning. Og hvis gjestekjernen er Linux, vil
virtuelle disker som bruker Virtio grensesnittet bli navngitt
vdx i devtmpfs, i stedet for
sdx.
-net
nic,netdev=net0,model=virtio-net-pci: Gir Virtio
grensesnittet til gjestekjernen for tilgang til nettverkets
grensesnitt, i stedet for å simulere et ekte nettverkskort.
Dette kan forbedre nettverkets I/O ytelse, men det krever en
Virtio driver i gjestekjernen. Bruk den i stedet for den
vanlige -net hvis gjestekjernen
støtter Virtio.
For å angi oppløsningen til den emulerte skjermen for en Xorg server som kjører i et gjeste Linux system, les the section called “Finjustere Skjerminnstillinger”.
Ovennevnte løsning for nettverk lar gjesten få tilgang til
det lokale nettverket gjennom verten (og muligens for å få
tilgang til internett via lokale rutere), men det motsatte er
ikke sant. Ikke engang verten kan få tilgang til gjesten, med
mindre portvideresending er aktivert. Og hvis flere gjester
kjører, kan de ikke kommunisere med hverandre. Andre
nettverksenheter kan brukes til dette formålet. For eksempel
det er “socket” enheten, som lar flere gjester
dele et felles virtuelt nettverk. I det følgende beskriver vi
i mer detaljer hvordan du setter opp “bridge” enheten,
som tillater gjestene til å se ut som om de er koblet til det
lokale nettverket. Alle kommandoene nedenfor skal kjøres som
root bruker.
Tillat at verten videresender IP pakker:
sysctl -w net.ipv4.ip_forward=1
For å gjøre dette permanent, legg til kommandoen til
/etc/sysctl.d/60-net-forward.conf:
cat >> /etc/sysctl.d/60-net-forward.conf << EOF
net.ipv4.ip_forward=1
EOF
Sett opp en nødvendig konfigurasjonsfil:
install -vdm 755 /etc/qemu && echo allow br0 > /etc/qemu/bridge.conf
Bytt bryteren i qemu kommandolinjen ovenfor -netdev user,... med -netdev bridge,....
|
Konverterer filer fra elf til dmp format |
|
|
er et testverktøy for qemu EDID generatoren |
|
|
implementerer støtte for QMP (QEMU Monitor Protocol) kommandoer og hendelser som avsluttes og oppstår henholdsvis hos gjesten bruker en agent bygget som en del av QEMU |
|
|
gir kommandoer for å administrere QEMU diskbilder |
|
|
er et diagnose- og manipuleringsprogram for (virtuelt) minne media. Det er fortsatt på et tidlig stadium av utviklingen |
|
|
genererer qemu reverse tastaturoppsett fra xkb tastaturoppsetter, som kan brukes med kommandolinjebryteren qemu "-k". |
|
|
eksporterer Qemu diskbilder ved hjelp av QEMU Disk Network Block Enhetsprotokoll (NBD). |
|
|
Implementerer den vedvarende reservasjonshjelperen for QEMU |
|
|
lar deg endre diskbilder ved hjelp av QEMU Monitor Protocol (QMP) uten å kjøre en VM |
|
|
er QEMU PC System emulatoren |
Biblioteker inneholder kode som ofte kreves av flere enn ett program. Dette har fordelen at hvert program ikke trenger å duplisere kode (og risikerer å introdusere feil), den må bare kalle funksjoner fra bibliotekene som er installert på systemet. Det mest åpenbare eksempel på et sett med biblioteker er Glibc som er installert i LFS boken. Denne inneholder alt av C bibliotekfunksjoner som programmer bruker.
Det finnes to typer biblioteker: statiske og delte. Delte
biblioteker (som oftest libXXX.so)
lastes inn i minnet fra en delt kopi ved kjøring (derav navnet).
Statiske biblioteker ( libXXX.a) er
faktisk i seg selv koblet inn i programmets kjørbare fil, og
dermed gjør programfilen større. Ganske ofte vil du finne både
statiske og delte kopier av det samme biblioteket på systemet
ditt.
Vanligvis trenger du bare å installere biblioteker når du
installerer programvare som trenger funksjonaliteten de leverer.
I BLFS boken, hver pakke presenteres med en liste over (kjente)
avhengigheter. Dermed kan du finne ut hvilke biblioteker du må ha
før du installerer programmet. Hvis du installerer noe uten å
bruke BLFS instruksjoner, vanligvis README eller INSTALL filen vil inneholde detaljer om
programmets krav.
Det er visse biblioteker som nesten alle vil trenge på et tidspunkt. I dette kapitlet er disse og noen andre listet opp og det er forklart hvorfor du kanskje vil installere dem.
Abseil-cpp pakken inneholder en serie med biblioteker designet for å utvide C++ standardbiblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/abseil/abseil-cpp/releases/download/20240722.0/abseil-cpp-20240722.0.tar.gz
Nedlasting MD5 sum: 740fb8f35ebdf82740c294bde408b9c0
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 32 MB
Estimert byggetid: 0.9 SBU
Installer Abseil-cpp ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D ABSL_PROPAGATE_CXX_STD=ON \
-D BUILD_SHARED_LIBS=ON \
-G Ninja .. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
-D
ABSL_PROPAGATE_CXX_STD=ON: Denne parameteren gjør
det mulig å spre C++-funksjoner til mål som kobler til denne
pakkens biblioteker.
-D
BUILD_SHARED_LIBS=ON: Denne parameteren bygger
delte versjoner av bibliotekene levert av denne pakken i
stedet for statiske biblioteker.
AppStream pakken inneholder et bibliotek og verktøy som er nyttig for å hente programvaremetadata og gjøre det lett tilgjengelig for programmer som trenger det.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/appstream/releases/AppStream-1.0.3.tar.xz
Nedlasting MD5 sum: 8db15579a7b25acca99677ddc6a12b68
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 30 MB
Estimert byggetid: 0.5 SBU (Med tester; begge bruker parallellisme=4)
cURL-8.9.1, itstool-2.0.7, libxml2-2.13.3, libxmlb-0.3.19, og libyaml-0.2.5
Installer AppStream ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D apidocs=false \
-D stemming=false .. &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install &&
mv -v /usr/share/doc/appstream{,-1.0.3}
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D apidocs=false:
Denne bryteren deaktiverer bygging av API dokumentasjon.
Fjern den hvis du har Gi-DocGen-2024.1 installert og
ønsker å regenerere API dokumentasjonen. Når API
dokumentasjonen ikke er regenerert, en forhåndsbygd kopi er
installert uansett.
-D stemming=false:
Denne bryteren deaktiverer stemming støtte. Fjern denne
bryteren hvis du har libstemmer
installert og ønsker raskere søk.
-D qt5=true: Bruk dette
alternativet hvis du har qt5-components-5.15.14
installert og du ønsker å bygge støtte for Qt-5 applikasjoner
inn i denne pakken.
-D qt=true: Bruk dette
alternativet hvis du har Qt-6.7.2 installert og du ønsker å bygge
støtte for Qt6 applikasjoner inn i denne pakken. Dette
alternativet er i konflikt med -D
qt5=true.
AppStream forventer en
operativsystem metainfo fil som beskriver
GNU/Linux-distribusjonen. Som root bruker, opprette filen som
beskriver LFS:
install -vdm755 /usr/share/metainfo &&
cat > /usr/share/metainfo/org.linuxfromscratch.lfs.xml << EOF
<?xml version="1.0" encoding="UTF-8"?>
<component type="operating-system">
<id>org.linuxfromscratch.lfs</id>
<name>Linux From Scratch</name>
<summary>A customized Linux system built entirely from source</summary>
<description>
<p>
Linux From Scratch (LFS) is a project that provides you with
step-by-step instructions for building your own customized Linux
system entirely from source.
</p>
</description>
<url type="homepage">https://www.linuxfromscratch.org/lfs/</url>
<metadata_license>MIT</metadata_license>
<developer id='linuxfromscratch.org'>
<name>The Linux From Scratch Editors</name>
</developer>
<releases>
<release version="12.2" type="release" date="01.09.2024">
<description>
<p>Now contains Binutils 2.43.1, GCC-14.2.0, Glibc-2.40,
and Linux kernel 6.10.</p>
</description>
</release>
<release version="12.1" type="stable" date="2024-03-01">
<description>
<p>Now contains Binutils 2.42, GCC-13.2.0, Glibc-2.39,
and Linux kernel 6.7.</p>
</description>
</release>
</releases>
</component>
EOF
appstream-glib gir GObjects og hjelpemetoder for å gjøre det enkelt å lese og skrive AppStream metadata. Det gir også en enkel DOM (Document Object Model) implementering som gjør det enkelt å redigere noder og konvertere til og fra standardisert XML-representasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
(HTTP): http://people.freedesktop.org/~hughsient/appstream-glib/releases/appstream-glib-0.8.3.tar.xz
Nedlasting MD5 sum: 2ffd46eff1c16f31e435849b706c2287
Nedlastingsstørrelse: 2.2 MB
Estimert diskplass som kreves: 15 MB (with tests)
Estimert byggetid: 0.1 SBU (with tests)
cURL-8.9.1, gdk-pixbuf-2.42.12, og libarchive-3.7.4
docbook-xml-4.5, docbook-xsl-nons-1.79.2, GTK-Doc-1.34.0, libxslt-1.1.42, og libyaml-0.2.5
Installer appstream-glib ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D rpm=false &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install && rm -v -rf /usr/share/installed-tests
Apache Portable Runtime (APR) er et støttebibliotek for Apache nettserver. Den gir et sett med applikasjonsprogrammeringsgrensesnitt (APIer) som tilordnes det underliggende operativsystemet (OS). Hvor OS ikke støtter en bestemt funksjon, vil APR gi en emulering. Dermed kan programmerere bruke APR til å gjøre et program flyttbar på tvers av forskjellige plattformer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/apr/apr-1.7.4.tar.bz2
Nedlasting MD5 sum: f8a62f3984898ba0ea8b6f26b851cb99
Nedlastingsstørrelse: 876 KB
Estimert diskplass som kreves: 11 MB (ytterligere 4 MB for testene)
Estimert byggetid: 0.1 SBU (legg til 1,4 SBU for tester)
Installer Apr ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--with-installbuilddir=/usr/share/apr-1/build &&
make
For å teste resultatene, kjør: make test.
Nå, somroot bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Apache Portable Runtime Utility Library gir en forutsigbar og konsistent grensesnitt til underliggende klientbiblioteksgrensesnitt. Denne applikasjonsprogrammeringsgrensesnittet sikrer forutsigbar om ikke identisk oppførsel uavhengig av hvilke biblioteker som er tilgjengelige på en gitt plattform.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/apr/apr-util-1.6.3.tar.bz2
Nedlasting MD5 sum: b6e8c9b31d938fe5797ceb0d1ff2eb69
Nedlastingsstørrelse 423 KB
Estimert diskplass som kreves: 7.6 MB (legg til 1.4 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.3 SBU for tester)
FreeTDS, MariaDB-10.11.8 eller MySQL, OpenLDAP-2.6.8, PostgreSQL-16.4, SQLite-3.46.1, unixODBC-2.3.12, og Berkeley DB (deprecated)
Installer Apr Util ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--with-apr=/usr \
--with-gdbm=/usr \
--with-openssl=/usr \
--with-crypto &&
make
For å teste resultatene, kjør: make -j1 test. En test, testdbm, er kjent for å mislykkes.
Nå som root bruker:
make install
--with-gdbm=/usr:
Denne bryteren aktiverer apr_dbm_gdbm-1.so programtillegget.
--with-openssl=/usr
--with-crypto: Disse
bryterene aktiverer apr_crypto_openssl-1.so programtillegget.
--with-berkeley-db=/usr: Hvis du
har installert
Berkeley DB (deprecated), bruk denne bryteren for å
kompilere apr_dbm_db-1.so
programtillegget.
--with-ldap: Hvis du har
installert OpenLDAP-2.6.8, bruk denne bryteren for
å kompilere apr_ldap.so
programtillegget.
Aspell pakken inneholder et interaktivt stavekontrollprogram og Aspell biblioteker. Aspell kan enten brukes som et bibliotek eller som en uavhengig stavekontroll.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/aspell/aspell-0.60.8.1.tar.gz
Nedlasting MD5 sum: 187bd142f522ada555c7aa6b9cbf56e6
Nedlastingsstørrelse: 3.4 MB
Estimert diskplass som kreves: 41 MB (Ytterligere 8 MB for EN ordbok)
Estimert byggetid: 0.4 SBU
Du må laste ned minst én ordbok. Den engelske ordboken er gitt som et eksempel nedenfor. Ordbøker på mange andre språk kan bli funnet på https://ftp.gnu.org/gnu/aspell/dict.
Aspell Engelsk ordbok: https://ftp.gnu.org/gnu/aspell/dict/en/aspell6-en-2020.12.07-0.tar.bz2
Which-2.21 (for ordbøkene)
Installer Aspell ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
ln -svfn aspell-0.60 /usr/lib/aspell &&
install -v -m755 -d /usr/share/doc/aspell-0.60.8.1/aspell{,-dev}.html &&
install -v -m644 manual/aspell.html/* \
/usr/share/doc/aspell-0.60.8.1/aspell.html &&
install -v -m644 manual/aspell-dev.html/* \
/usr/share/doc/aspell-0.60.8.1/aspell-dev.html
Hvis du ikke planlegger å installere Ispell, kopier da innpakningsskriptet ispell:
install -v -m 755 scripts/ispell /usr/bin/
Hvis du ikke planlegger å installere Spell, kopier da innpakningsskriptet spell:
install -v -m 755 scripts/spell /usr/bin/
ln -svfn aspell-0.60 /usr/lib/aspell: Denne kommandoen er nyttig for konfigurering av andre applikasjoner, for eksempel enchant-2.8.2.
Etter at Aspell er installert, må du sette opp minst én ordbok. Installer den engelske ordboken ved å kjøre følgende kommandoer:
tar xf ../aspell6-en-2020.12.07-0.tar.bz2 && cd aspell6-en-2020.12.07-0 && ./configure && make
Nå, som root bruker:
make install
Andre ordbøker kan installeres med samme instruksjoner.
|
er et verktøy som kan fungere som en ispell -a erstatning, som en uavhengig stavekontroll, som et testverktøy for å teste ut Aspell funksjoner, og som et verktøy for å administrere ordbøker |
|
|
er en innpakning rundt aspell for å påkalle det i ispell kompatibel modus |
|
|
er en innpakning rundt aspell for å påkalle det i spell kompatibel modus |
|
|
importerer gamle personlige ordbøker til Aspell |
|
|
dekomprimerer en prezipped fil til stdout |
|
|
dekomprimerer en prezipped fil |
|
|
er en prefiks delta kompressor, brukt til å komprimere sorterte ordlister eller andre lignende tekstfiler |
|
|
kalles av de forskjellige innpakningsskriptene for å utføre selve komprimeringen og dekomprimeringen |
|
|
viser informasjon om |
|
|
er et skript for å hjelpe å bruke Aspell som en ispell erstatning |
|
|
komprimerer eller dekomprimerer sorterte ordlister for bruk med Aspell stavekontroll |
|
|
inneholder stavekontroll API funksjoner |
|
|
er et grensesnitt til |
Boost gir et sett med gratis fagfellevurderte flyttbare C++ kildebiblioteker. Det inkluderer biblioteker for lineær algebra, generering av pseudotilfeldig tall, flertråding, bildebehandling, vanlige uttrykk og enhetstesting.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Denne pakken vil pakke ut til boost-1.86.0/ mappen.
Nedlasting (HTTP): https://github.com/boostorg/boost/releases/download/boost-1.86.0/boost-1.86.0-b2-nodocs.tar.xz
Nedlasting MD5 sum: eff463ec1c67a8725fb3d2948abc5ca5
Nedlastingsstørrelse: 90 MB
Estimert diskplass som kreves: 899 MB (197 MB installert)
Estimert byggetid: 1.8 SBU (Bruker parallellisme=4; legg til 0,1 SBU for tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/boost-1.86.0-upstream_fixes-1.patch
ICU-75.1, NumPy-2.1.0, og Open MPI
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/boost
Først, fikse et problem med Boost og NumPy-2.1.0 som forårsaker at bygget mislykkes:
patch -Np1 -i ../boost-1.86.0-upstream_fixes-1.patch
Deretter fikser du et byggeproblem som oppstår i stacktrace biblioteket. Dette problemet er spesifikt for i686-systemer.
case $(uname -m) in
i?86)
sed -e "s/defined(__MINGW32__)/& || defined(__i386__)/" \
-i ./libs/stacktrace/src/exception_headers.h ;;
esac
Denne pakken kan bygges med flere jobber som kjører
parallelt. I instruksjonene nedenfor, <N> står for antall
jobber. Installer Boost ved
å kjøre fålgende kommandoer:
./bootstrap.sh --prefix=/usr --with-python=python3 &&
./b2 stage -j<N> threading=multi link=shared
For å kjøre Boost.Build's regresjonstester, utsted pushd tools/build/test; python3 test_all.py; popd.
For å kjøre hvert biblioteks regresjonstester, utsted
pushd status; ../b2;
popd. Noen få tester kan mislykkes. Det tar
veldig lang tid (over 119 SBU ved -j4) og bruker en veldig
stor mengde diskplass 46 GB). Du bør bruke -jN bryteren for å øke
hastigheten.
Boost installerer mange versjonsmapper i /usr/lib/cmake.
Hvis en ny versjon av Boost er installert over en tidligere
versjon, må de eldre cmake mappene bli eksplisitt fjernet.
For å gjøre dette, kjør som root bruker:
rm -rf /usr/lib/cmake/[Bb]oost*
før du installerer den nye versjonen.
Nå som root bruker:
./b2 install threading=multi link=shared
threading=multi:
Denne parameteren sikrer at Boost er bygget med støtte for flere
tråder.
link=shared: Denne
parameteren sikrer at bare delte biblioteker opprettes,
bortsett fra libboost_exception og libboost_test_exec_monitor
som er opprettet som statiske. Folk flest vil ikke trenge de
statiske bibliotekene, og de fleste programmer som bruker
Boost bruker kun
deklarasjonene. Utelate denne parameteren hvis du trenger
statiske biblioteker.
--with-python=python3: Denne
bryteren sikrer at Python3 brukes hvis Python2 er installert.
-jN: Denne bryteren kan legges
til b2
kommandolinjer, for å kjøre opp til N prosesser parallell.
Brotli gir en generell tapsfri komprimeringsalgoritme som komprimerer data ved å bruke en kombinasjon av en moderne variant av LZ77 algoritmen, Huffman koding og 2. orden kontekstmodellering. Bibliotekene brukes spesielt til WOFF2 fonter på nettsider.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/google/brotli/archive/v1.1.0/brotli-1.1.0.tar.gz
Nedlasting MD5 sum: 3a6a3dba82a3604792d3cb0bd41bca60
Nedlastingsstørrelse: 500 KB
Estimert diskplass som kreves: 33 MB (med python3 bindinger)
Estimert byggetid: 0,3 SBU (med python3 bindinger; parallellisme=4)
pytest-8.3.2 (for testing av Python3 bindinger)
Installer brotli ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
For å teste resultatene, utsted: make test.
Nå, som root bruker:
make install
Bygg om ønskelig Python3 bindinger:
cd .. &&
sed "/c\/.*\.[ch]'/d;\
/include_dirs=\[/\
i libraries=['brotlicommon','brotlidec','brotlienc']," \
-i setup.py &&
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Installer Python3 bindinger
som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user Brotli
For å teste Python3 binding, utsted: pytest.
sed ... -i
setup.py: Stopp setup.py fra å gjenoppbygge hele pakken
igjen, bruk de allerede installerte bibliotekene for
Python3 binding i stedet.
CLucene er en C++ versjon av Lucene, en tekstsøkemotor med høy ytelse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/clucene/clucene-core-2.3.3.4.tar.gz
Nedlasting MD5 sum: 48d647fbd8ef8889e5a7f422c1bfda94
Nedlastingsstørrelse: 2.2 MB
Estimert diskplass som kreves: 78 MB
Estimert byggetid: 0.8 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/clucene-2.3.3.4-contribs_lib-1.patch
Installer CLucene ved å kjøre følgende kommandoer:
patch -Np1 -i ../clucene-2.3.3.4-contribs_lib-1.patch &&
sed -i '/Misc.h/a #include <ctime>' src/core/CLucene/document/DateTools.cpp &&
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D BUILD_CONTRIBS_LIB=ON .. &&
make
Nå, som root bruker:
make install
-D
BUILD_CONTRIBS_LIB=ON: Denne cmake variabelen
gjør det mulig å bygge CLucene bidragsbiblioteket som er
nødvendig for å kjøre applikasjoner som bruker
språkspesifikke tekstanalysatorer som for eksempel
LibreOffice.
D-Bus GLib pakken inneholder GLib grensesnittet til D-Bus API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.112.tar.gz
Nedlasting MD5 sum: 021e6c8a288df02c227e4aafbf7e7527
Nedlastingsstørrelse: 700 KB
Estimert diskplass som kreves: 12 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Installer D-Bus GLib ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static &&
make
For å teste resultatene, utsted: make check. Merk at mer omfattende tester kan kjøres ved å følge samme metode som brukes i D-Bus instruksjoner, som krever å bygge pakken to ganger.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
Double-conversion pakken inneholder en bibliotek som forenkler binær-til-desimal og desimal-til-binære rutiner for IEEE doubles.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/google/double-conversion/archive/v3.3.0/double-conversion-3.3.0.tar.gz
Nedlasting MD5 sum: b344abb64084a4a1d98a43e67752989b
Nedlastingsstørrelse: 6.7 MB
Estimert diskplass som kreves: 62 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Installer Double-conversion ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D BUILD_SHARED_LIBS=ON \
-D BUILD_TESTING=ON \
.. &&
make
For å teste resultatene, utsted: make test.
Nå, som root bruker:
make install
-D
BUILD_SHARED_LIBS=ON: Denne bryteren tvinger
cmake til å bygge en delt versjon av biblioteket i stedet for
den statiske versjonen.
-D BUILD_TESTING=ON:
Denne bryteren bygger testprogrammene.
duktape er en innebyggbar Javascript motor, med fokus på portabilitet og kompakt fotavtrykk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://duktape.org/duktape-2.7.0.tar.xz
Nedlasting MD5 sum: b3200b02ab80125b694bae887d7c1ca6
Nedlastingsstørrelse: 1003 KB
Estimert diskplass som kreves: 25 MB
Estimert byggetid: 0.3 SBU
Installer duktape ved å kjøre følgende kommandoer:
sed -i 's/-Os/-O2/' Makefile.sharedlibrary make -f Makefile.sharedlibrary INSTALL_PREFIX=/usr
Nå, som root bruker:
make -f Makefile.sharedlibrary INSTALL_PREFIX=/usr install
enchant pakken gir et generisk grensesnitt inn i ulike eksisterende stavekontrollbiblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/AbiWord/enchant/releases/download/v2.8.2/enchant-2.8.2.tar.gz
Nedlasting MD5 sum: 92dcfe06febc92a3d4bbff4e08b08d3d
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 9.4 MB (legg til 77 MB for tester)
Estimert byggetid: 0.1 SBU (legg til 0.9 SBU for tester)
dbus-glib-0.112, Doxygen-1.12.0, Hspell, Hunspell, Nuspell, Voikko, og unittest-cpp (påkrevd for testene)
Installer enchant ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/enchant-2.8.2 &&
make
For å kjøre tester må unittest-cpp være installert og
--enable-relocatable alternativet
sendt til configure ovenfor. Hvis disse forholdene er
tilstede, kan testene kjøres med make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Du kan teste installasjonen og konfigurasjonen ved å lage en testfil og kjøre følgende kommandoer (du kan erstatte en_GB ordboken med andre lastet ned ved installasjonen av Aspell-0.60.8.1):
cat > /tmp/test-enchant.txt << "EOF"
Tel me more abot linux
Ther ar so many commads
EOF
enchant-2 -d en_GB -l /tmp/test-enchant.txt &&
enchant-2 -d en_GB -a /tmp/test-enchant.txt
Du vil se en liste over feilstavede ord etterfulgt av en liste over alternativer for dem.
Se flere detaljer i enchant manualsiden.
Exempi er en implementering av XMP (Adobe sin utvidbare metadataplattform).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://libopenraw.freedesktop.org/download/exempi-2.6.5.tar.xz
Nedlasting MD5 sum: 51fe14c2a5fa44816ba8187c6ad87d78
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 289 MB (legg til 236 MB for testene)
Estimert byggetid: 0.4 SBU (legg til 0.6 SBU for testene; begge bruker parallellisme=4)
Hvis du har tenkt å kjøre regresjonstestene, fjern først en test som avhenger av en proprietær Adobe SDK:
sed -i -r '/^\s?testadobesdk/d' exempi/Makefile.am && autoreconf -fiv
Installer Exempi ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
FFTW er et C subrutinebibliotek for å beregne den diskrete Fourier transform (DFT) i en eller flere dimensjoner, av vilkårlig inngangsstørrelse, og av både reelle og komplekse data (så vel som partall/oddetallsdata, dvs diskrete cosinus/sinus transformasjoner eller DCT/DST).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.fftw.org/fftw-3.3.10.tar.gz
Nedlasting MD5 sum: 8ccbf6a5ea78a16dbc3e1306e234cc5c
Nedlastingsstørrelse: 4.0 MB
Estimert diskplass som kreves: 59 MB
Estimert byggetid: 1.6 SBU (legg til 3,4 SBU for tester, begge med parallellisme=4)
Vi bygger fftw tre ganger for ulike biblioteker i ulike numeriske presisjoner: standard flytepunkt med dobbel presisjon, den eldre 32-biters (enkel presisjon) versjon kalt float som ofrer presisjon for hastighet, og den lange doble som tilbyr økt presisjon på bekostning av tregere utførelse.
Det første bygget er for aritmetikk med dobbel presisjon. Installere fftw ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-shared \
--disable-static \
--enable-threads \
--enable-sse2 \
--enable-avx \
--enable-avx2 &&
make
For å teste resultatene, utsted: make check. På 32-bits systemer kan testene ta betydelig lengre tid enn de ville på 64-bits maskiner.
Nå, som root bruker:
make install
Bygg nå enkeltpresisjon:
make clean &&
./configure --prefix=/usr \
--enable-shared \
--disable-static \
--enable-threads \
--enable-sse2 \
--enable-avx \
--enable-avx2 \
--enable-float &&
make
Som root bruker:
make install
Bygg til slutt lang dobbel presisjon:
make clean &&
./configure --prefix=/usr \
--enable-shared \
--disable-static \
--enable-threads \
--enable-long-double &&
make
Som root bruker:
make install
--enable-shared
--disable-static:
Bruk delte biblioteker i stedet for statiske biblioteker.
--enable-threads:
Dette aktiverer libfftw3_threads.so til å bli kompilert.
Det brukes av f.eks. gimp
programtillegget fra G'MIC.
--enable-{sse2,avx,avx2}: Disse
aktiverer bygging av de optimaliserte rutinene ved å bruke
SSE2, AVX og AVX2 instruksjoner. FFTW vil sjekke om disse
rutinene virkelig kan brukes på gjeldende CPU når FFTW
biblioteket er lastet, så et FFTW bygg med disse rutinene
aktivert kan fortsatt kjøre på en CPU uten SSE2, AVX eller
AVX2. Disse alternativene er ikke kompatible med --enable-long-double.
--enable-float: Dette
aktiverer bygging av biblioteket som bruker enkeltpresisjon
flytepunktaritmetikk. Det er raskere, men mindre presis enn
standard dobbel presisjonsbibliotek. Biblioteket blir kalt
libfftw3f.so som trengs av
PulseAudio-17.0.
--enable-long-double:
Dette aktiverer bygging av biblioteket som bruker høyere
presisjon lang-dobbel flytende punkt-aritmetikk. Biblioteket
blir kalt libfftw3l.so.
--enable-avx512: Dette aktiverer
bygging av optimaliserte rutiner ved hjelp av AVX512F
instruksjoner. FFTW vil sjekke om disse rutinene virkelig kan
brukes på gjeldende CPU når FFTW biblioteket er lastet, så et
FFTW bygg med disse rutinene aktivert kan fortsatt kjøres på
en CPU uten AVX512F. Bruk dette alternativet hvis FFTW bygget
skal brukes på en CPU med AVX512F. Dette alternativet er ikke
kompatibelt med --enable-long-double.
|
er et verktøy for å generere FFTW wisdomfiler, som inneholder lagrede informasjon om hvordan man optimalt kan beregne (Fourier) transformasjoner av ulike størrelser |
|
|
er et verktøy for å generere C konfigurasjonsrutiner fra FFTW wisdom filer, der sistnevnte inneholder lagret informasjon om hvordan beregne (Fourier) transformasjoner av forskjellige størrelser optimalt |
|
|
er Fast Fourier Transform biblioteket |
|
|
er det trådete Fast Fourier Transform biblioteket |
|
|
er enkeltpresisjon Fast Fourier Transform biblioteket, beskrevet som “float” av historiske årsaker |
|
|
er det trådete enkeltpresisjon Fast Fourier Transform biblioteket |
|
|
er det lange doble Fast Fourier Transform biblioteket |
|
|
er det trådete lange doble Fast Fourier Transform biblioteket |
fmt pakken er en åpen kildekode formaterings bibliotek som gir et raskt og trygt alternativ til C stdio og C++ iostreams.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/fmtlib/fmt/archive/11.0.2/fmt-11.0.2.tar.gz
Nedlasting MD5 sum: 3fe10c5184c8ecd0d2f9536c1b1ae95c
Nedlastingsstørrelse: 688 KB
Estimert diskplass som kreves: 3.9 MB (legg til 39 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.2 SBU for tester; begge bruker parallellisme=4)
Installer fmt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_INSTALL_LIBDIR=/usr/lib \
-D BUILD_SHARED_LIBS=ON \
-D FMT_TEST=OFF \
-G Ninja .. &&
ninja
Hvis du har aktivert tester, utsted: ninja test.
Nå, som root bruker:
ninja install
-D FMT_TEST=OFF:
Denne bryteren initialiserer pakketestene. Sett til ON hvis
du ønsker å kjøre tester.
GLib pakken inneholder lavt nivå biblioteker som er nyttige for å gi datastrukturhåndtering for C, portabilitet innpakninger og grensesnitt for slik kjøretidsfunksjonalitet som en hendelsesløkke, tråder, dynamisk lasting og et objektsystem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/glib/2.80/glib-2.80.4.tar.xz
Nedlasting MD5 sum: 4334211338220a165350d1c4a1597b0e
Nedlastingsstørrelse: 5.3 MB
Estimert diskplass som kreves: 189 MB (legg til 22 MB for tester)
Estimert byggetid: 0.9 SBU (legg til 0.4 SBU for tester; begge bruker parallellisme=4)
GObject Introspection (Recommended)
Nedlasting: https://download.gnome.org/sources/gobject-introspection/1.80/gobject-introspection-1.80.1.tar.xz
Nedlasting MD5 sum: ef1496a7a7abfcd31d25b3459ea86ebb
Nedlastingsstørrelse: 1.0 MB
Oppdatering for loggnivåvalg (valgfritt)
Valgfri oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/glib-skip_warnings-1.patch
docutils-0.21.2, libxslt-1.1.42, og pcre2-10.44
Cairo-1.18.0 (for noen GObject Introspection tester), dbus-1.14.10 (for noen tester), Fuse-3.16.2 og bindfs (begge trengs for en testt), GDB-15.1 (for bindinger), Gjs-1.80.2 (for noen GObject Introspection tester), GTK-Doc-1.34.0 (for GObject Introspection dokumentasjon), docbook-xml-4.5, docbook-xsl-nons-1.79.2, Gi-DocGen-2024.1 (for å bygge API dokumentasjonen), glib-networking-2.80.0 (for noen tester, men dette er en sirkulær avhengighet), Mako-1.3.5 og Markdown-3.6 (begge for g-ir-doc-tool), og sysprof
Sitert direkte fra INSTALL
filen: “Some of the
mimetype-related functionality in GIO requires the
update-mime-database and
update-desktop-database
utilities,” which are part of shared-mime-info-2.4 and desktop-file-utils-0.27,
respectively. These two utilities are also needed for some
tests.
Hvis ønskelig, bruk den valgfrie oppdateringen. I mange
tilfeller applikasjoner som bruker dette biblioteket, enten
direkte eller indirekte via andre biblioteker som f.eks som
GTK+-3.24.43, gi ut mange advarsler når du
kjører fra kommandolinjen. Denne oppdateringen muliggjør bruk
av en miljøvariabel, GLIB_LOG_LEVEL, som undertrykker uønskede
meldinger. Verdien av variabelen er et siffer som tilsvarer:
| 1 Varsling |
| 2 Kritisk |
| 3 Feil |
| 4 Advarsel |
| 5 Merknad |
For eksempel export
GLIB_LOG_LEVEL=4 vil hoppe over utdata av
advarsels- og varselmeldinger (og info/feilsøkingsmeldinger
hvis de er slått på). Hvis GLIB_LOG_LEVEL ikke er definert, normal
meldingsutdata vil ikke bli påvirket.
patch -Np1 -i ../glib-skip_warnings-1.patch
Hvis en tidligere versjon av glib er installert, flytter du deklarasjonene ut av veien slik at senere pakker ikke møter konflikter:
if [ -e /usr/include/glib-2.0 ]; then
rm -rf /usr/include/glib-2.0.old &&
mv -vf /usr/include/glib-2.0{,.old}
fi
Installer GLib ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D introspection=disabled \
-D man-pages=enabled &&
ninja
GLib testpakken krever desktop-file-utils for noen tester. Derimot, desktop-file-utils krever GLib for å kompilere; derfor må du først installere GLib og deretter kjøre testpakken.
Som root bruker, installer
denne pakken for første gang for å tillate bygging av GObject
Introspection:
ninja install
Bygg GObject Introspection:
tar xf ../../gobject-introspection-1.80.1.tar.xz &&
meson setup gobject-introspection-1.80.1 gi-build \
--prefix=/usr --buildtype=release &&
ninja -C gi-build
For å teste resultatene av GObject Introspection, utsted: ninja -C gi-build test.
Som root bruker, installer
GObject Introspection for å genere introspeksjonsdataene til
GLib biblioteker (påkrevd av forskjellige pakker som bruker
Glib, spesielt noen GNOME pakker):
ninja -C gi-build install
Generer nå introspection dataene:
meson configure -D introspection=enabled && ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed 's/glib-2.0/glib-2.80.4/' \
-i ../docs/reference/meson.build &&
meson configure -D documentation=true &&
ninja
Som root bruker, installer
denne pakken på nytt for introspection data (og eventuelt
dokumentasjonen):
ninja install
Du bør nå installere desktop-file-utils-0.27 og shared-mime-info-2.4 og fortsette for å kjøre testpakken.
Ikke kjør testpakken som root da vil noen tester mislykkes
uventet og la noen ikke-FHS kompatible mapper være i
/usr hierarkiet.
Hvis du har installert glib-skip warnings-1.patch og har innstilt miljøvariabelen GLIB LOG LEVEL, må du deaktivere den før du kjører testene. Det vil føre til at flere tester mislykkes.
For å teste resultatene, etter å ha installert pakkene,
utsted: LC_ALL=C ninja
test som ikke-root bruker.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D man-pages=enabled:
Denne bryteren gjør at bygget lager og installerer pakkens
manualsider.
|
kan brukes til å starte applikasjoner og sende meldinger til allerede kjørende økter av andre applikasjoner |
|
|
er et enkelt verktøy som brukes til å jobbe med D-Bus objekter |
|
|
brukes til å generere kode og/eller dokumentasjon for en eller flere D-Bus grensesnitt |
|
|
konverterer en eller flere GIR filer til en eller flere typelib filer |
|
|
er en GIR dekompilator som bruker repository API |
|
|
er et verktøy som gir informasjon om en GI typelib |
|
|
er et verktøy som gjør mange GIO funksjoner tilgjengelig fra kommandolinjen |
|
|
brukes til å opprette en |
|
|
brukes til å lese ressursbeskrivelsen fra en fil og filene den refererer til for å lage en binær ressurs bunt som er egnet for bruk med GResource API |
|
|
brukes til å kompilere alle XML skjemafilene for
GSettings i en mappe til en binær fil med navnet
|
|
|
er et C kode marshaller genereringsverktøy for GLib lukkinger |
|
|
er en variant av gettext internasjonaliseringsverktøyet |
|
|
er et verktøy for generering av enumbeskrivelse i C språk |
|
|
er et lite verktøy som tegner et tre med typer |
|
|
tilbyr et enkelt kommandolinjegrensesnitt til GResource |
|
|
tilbyr et enkelt kommandolinjegrensesnitt til GSettings |
|
|
er et testverktøy |
|
|
er et testrapportformateringsverktøy |
|
|
er et bibliotek som gir nyttige klasser for generell I/O, nettverk, IPC, innstillinger og andre høynivåapplikasjoners funksjonalitet |
|
|
er et bibliotek som gir tilgang til typelibs og introspection data som beskriver C APIs |
|
|
er et flyttbart verktøybibliotek for generell bruk, som tilbyr mange nyttige datatyper, makroer, typekonverteringer, streng verktøy, filverktøy, en hovedloopabstraksjon og så videre |
|
|
gir flyttbar API for dynamisk lasting av moduler |
|
|
gir GLib basetypesystem og objektklasse |
|
|
er et skjelettbibliotek for bakoverkompatibilitet;
det pleide være GLib trådbiblioteket, men
funksjonaliteten har blitt sammenslått inn i
|
|
|
oppretter eller trekker ut merknadsdata fra GI typelibs |
|
|
er et motstykke til gi-compile-repository
for de gamle |
|
|
genererer Mallard filer som kan vises med yelp eller gjengitt til HTML med yelp-build fra yelp-tools |
|
|
er et motstykke til gi-inspect-typelib
for de gamle |
|
|
er et motstykke til gi-decompile-typelib
for de gamle |
|
|
er et verktøy som genererer GIR XML filer ved å analysere overskrifter og introspekterende GObject baserte biblioteker |
|
|
er et motstykke til |
GLibmm pakken er et sett med C++ bindinger for GLib.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/glibmm/2.66/glibmm-2.66.7.tar.xz
Nedlasting MD5 sum: c6edf4cc986adec2a6d21e7423bad7d1
Nedlastingsstørrelse: 8.4 MB
Estimert diskplass som kreves: 83 MB (med tester)
Estimert byggetid: 0.5 SBU (Bruke parallellisme=4; med tester)
GLib-2.80.4 og libsigc++-2.12.1
Doxygen-1.12.0, glib-networking-2.80.0 (for tester), GnuTLS-3.8.7.1 (for tester), libxslt-1.1.42, og mm-common
Installer GLibmm ved å kjøre følgende kommandoer:
mkdir bld && cd bld && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
GLibmm pakken er et sett med C++ bindinger for GLib. Denne versjonen er en del av et nytt API for å støtte gtkmm-4.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/glibmm/2.80/glibmm-2.80.0.tar.xz
Nedlasting MD5 sum: 7e58344303cec7cd5f1e812f4c70cb43
Nedlastingsstørrelse: 9.1 MB
Estimert diskplass som kreves: 97 MB (med tester)
Estimert byggetid: 0.6 SBU (Bruker parallellisme=4; med tester)
GLib-2.80.4 og libsigc++-3.6.0
Doxygen-1.12.0, glib-networking-2.80.0 (for tester), GnuTLS-3.8.7.1 (for tester), libxslt-1.1.42, og mm-common
Installer GLibmm ved å kjøre følgende kommandoer:
mkdir bld && cd bld && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
GMime pakken inneholder et sett med verktøy for å analysere og lage meldinger ved hjelp av Multipurpose Internet Mail Extension (MIME) som definert av gjeldende RFC-er. Se GMime nettside for RFC-ene som har ressurser. Dette er nyttig siden det gir en API som følger MIME spesifikasjonen så nært som mulig samtidig som den gir programmerere et ekstremt brukervennlig grensesnitt til API funksjonene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gmime/3.2/gmime-3.2.7.tar.xz
Nedlasting MD5 sum: 7ecd9aa75e0cd2e8668206b1d53df874
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 25 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
GLib-2.80.4 (GObject Introspection anbefalt) og libgpg-error-1.50
DocBook-utils-0.6.14, GPGME-1.23.2, GTK-Doc-1.34.0, libnsl-2.0.1, Vala-0.56.17, og Gtk# (krever Mono)
Installer GMime ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
GNU Vitenskapelige Bibliotek (GSL) er et numerisk bibliotek for C og C++ programmerere. Det gir et bredt spekter av matematiske rutiner som f.eks tilfeldige tallgeneratorer, spesialfunksjoner og minstekvadrattilpasning.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/gsl/gsl-2.8.tar.gz
Nedlasting MD5 sum: 182ec03204f164e67238c9116591a37d
Nedlastingsstørrelse: 8.6 MB
Estimert diskplass som kreves: 223 MB (med tester, uten dokumenter)
Estimert byggetid: 1.0 SBU (Bruker parallellisme=4; med tester, uten dokumenter)
Installer Gsl ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis du har sphinx_rtd_theme-2.0.0 installert, bygg dokumentasjonen med:
make html
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
Hvis du bygde dokumentasjonen, installer den (som
root) med:
mkdir /usr/share/doc/gsl-2.8 && cp -R doc/_build/html/* /usr/share/doc/gsl-2.8
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
er et skallskript for å få versjonsnummeret og kompilatorflaggene til det installerte Gsl biblioteket |
|
|
er et demonstrasjonsprogram for GNU Vitenskapelige Biblioteket som beregner et histogram fra data hentet fra stdin |
|
|
er et demonstrasjonsprogram for GNU Vitenskapelige Biblioteket som genererer tilfeldige utvalg fra ulike distribusjoner |
|
|
inneholder funksjoner som implementerer et C grensesnitt til Grunnleggende Lineær Algebra underprogrammer |
|
|
inneholder funksjoner som gir en samling numeriske rutiner for vitenskapelig databehandling |
gspell pakken gir en fleksibel API for å legge til stavekontroll i en GTK+ applikasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gspell/1.12/gspell-1.12.2.tar.xz
Nedlasting MD5 sum: f1e5f02695aee20ba543352889c28ff5
Nedlastingsstørrelse: 436 KB
Estimert diskplass som kreves: 11 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
enchant-2.8.2, ICU-75.1, og GTK+-3.24.43
GLib-2.80.4 (med GObject Introspection), GTK-Doc-1.34.0, Vala-0.56.17, Valgrind-3.23.0, og Hunspell (for tester)
Installer gspell ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, utsted: make check. Testene må kjøres i en X økt. En test, test-checker, er kjent for å mislykkes hvis den eksterne pakken Hunspell ikke er installert.
Nå, som root bruker:
make install
Libtool arkivfilen fra denne pakken refererer til biblioteker
fra ICU-75.1. En slik referanse kan forårsake
pakker avhengig av denne pakken å være unødvendig koblet mot
ICU bibliotekene og øke byrden for å gjenoppbygge pakker hvis
ICU er oppdatert til en ny hovedversjon. Som vi har forklart
i Libtool arkiv (.la) filer,
disse libtool arkivfilene er unødvendige uansett. Så som
root bruker, fjern libtool
arkivfilen nå:
rm -v /usr/lib/libgspell-1.la
highway pakken inneholder et C++ bibliotek som gir flyttbart SIMD/vektor innhold.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/google/highway/archive/1.2.0/highway-1.2.0.tar.gz
Nedlasting MD5 sum: 8b3d090a2d081730b40bca5ae0d65f11
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.8 SBU (med parallellitet=4)
Installer highway ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-D BUILD_SHARED_LIBS=ON \
-G Ninja .. &&
ninja
Denne pakken kommer med en testpakke, men den krever gtest, som ikke er i BLFS.
Nå, som root bruker:
ninja install
-D BUILD_TESTING=OFF:
Denne parameteren deaktiverer testpakken fra å bygges pga
gtest ikke er en
del av BLFS. Uten denne parameteren vil CMake laste ned denne
pakken under konfigurasjonsprosessen. Hvis du ønsker å kjøre
testene, installer gtest og så fjern
denne parameteren.
-D
BUILD_SHARED_LIBS=ON: Denne parameteren aktiverer
bygging av delte versjoner av bibliotekene i stedet for
statiske versjoner.
Internasjonale Komponenter for Unicode (ICU) pakken er et modent, mye brukt sett med C/C++ biblioteker som gir Unicode og globaliseringsstøtte for programvareapplikasjoner. ICU er veldig overførbar og gir applikasjoner de samme resultatene på alle plattformer.
Oppgradering av denne pakken til en ny hovedversjon (for
eksempel fra 72.1 to 75.1) vil kreve ombygging av mange
andre pakker. Hvis noen pakker som bruker bibliotekene
bygget av icu4c-75 bygges om, vil de bruke de nye
bibliotekene mens gjeldende pakker vil bruke de tidligere
bibliotekene. Hvis Linux applikasjonslaster (/usr/lib/ld-linux-x86-64.so.2) bestemmer
at både det gamle og det nye biblioteket er nødvendig, og
et symbol (navn på data eller funksjon) finnes i begge
versjoner av biblioteket, vil alle referanser til symbolet
bli løst til versjonen som vises tidligere i bredde-første
sekvensen av avhengighetsgrafen. Dette kan føre til at
applikasjonen mislykkes hvis definisjonen av dataene eller
oppførselen til funksjonen det henvises til ved symbolet er
forskjellig i to versjoner. For å unngå problemet, brukere
må gjenoppbygge hver pakke som er knyttet til et ICU
bibliotek så snart som mulig når ICU er oppdatert til en ny
hovedversjon.
For å finne ut hvilke eksterne biblioteker som trengs (direkte eller indirekte) av en applikasjon eller et bibliotek, kjør:
ldd <application or library>
eller bare se de direkte nødvendige bibliotekene:
readelf -d <application or library> | grep NEEDED
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/unicode-org/icu/releases/download/release-75-1/icu4c-75_1-src.tgz
Nedlasting MD5 sum: a83c1499e508f73ddbc60002f84ea42a
Nedlastingsstørrelse: 25 MB
Estimert diskplass som kreves: 341 MB (legg til 45 MB for tester)
Estimert byggetid: 0.7 SBU (Bruker parallellisme=4; legg til 2.0 SBU for tester)
LLVM-18.1.7 (med Clang), og Doxygen-1.12.0 (for dokumentasjon)
Denne pakken utvides til mappen icu.
Hvis clang++ er tilgjengelig, vil den bli brukt i feil tro at g++ støtter kanskje ikke C++11, selv om configure har testet for det. Hvis g++ brukes vil det bli en unødvendig advarsel i slutten av configure. Bygge med g++ tar også lengre tid enn estimert SBU vist.
Installer ICU ved å kjøre følgende kommandoer:
cd source && ./configure --prefix=/usr && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
|
demonterer en ressursbunt |
|
|
konverterer “\u” escaped tegn til unicode tegn |
|
|
kompilerer kildefiler for ICU bryte iterasjonsregler til binære data filer |
|
|
genererer C eller plattformspesifikk monteringskode fra en ICU datafil |
|
|
leser i Unicode forvirrende tegndefinisjoner og skriver ut binære data |
|
|
genererer en ICU minnekartbar datafil |
|
|
kompilerer konverterens aliasfil |
|
|
kompilerer ordlister til ICU strengprøveordbøker |
|
|
bygger binære datafiler med Unicode normaliseringsdata |
|
|
kompilerer en ressurspakke |
|
|
kompilerer StringPrep data fra filtrerte RFC 3454 filer |
|
|
skriver ut ICU byggealternativer |
|
|
skriver ut konfigurasjonsinformasjon om gjeldende ICU |
|
|
trekker ut eller modifiserer et ICU .dat arkiv |
|
|
kompilerer en konverteringstabell |
|
|
pakker data for bruk av ICU |
|
|
konverterer data fra en koding til en annen |
|
|
er databiblioteket |
|
|
er internasjonaliseringsbiblioteket (i18n). |
|
|
er ICU I/O (unicode stdio) biblioteket |
|
|
er testbiblioteket |
|
|
er verktøybiblioteket |
|
|
er fellesbiblioteket |
Denne pakken er en enkel .INI filanalyser skrevet i C.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/benhoyt/inih/archive/r58/inih-r58.tar.gz
Nedlasting MD5 sum: 5c9725320ad2c79e0b1f76568bd0ff24
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 724 KB
Estimert byggetid: mindre enn 0.1 SBU
Installer inih ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Intel-gmmlib pakken inneholder Intel Grafikk Minneadministrasjonsbibliotek, som gir enhetsspesifikt minne og bufferadministrasjonsfunksjoner for Intel Mediadriver for VAAPI og Intel Grafikk Datamaskinkjøretid for OpenCL (TM).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/intel/gmmlib/archive/intel-gmmlib-22.4.1.tar.gz
Nedlasting MD5 sum: 37684beaa140a0926967ebd56193cc13
Nedlastingsstørrelse: 848 KB
Estimert diskplass som kreves: 54 MB
Estimert byggetid: 0.5 SBU
Tarballen intel-gmmlib-22.4.1.tar.gz vil pakkes ut
til mappen gmmlib-intel-gmmlib-22.4.1.
Installer Intel-gmmlib ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D BUILD_TYPE=Release \
-G Ninja \
-W no-dev .. &&
ninja
Testpakken kjøres normalt av ninja med mindre -D RUN_TEST_SUITE=NO sendes til cmake.
Nå, som root bruker:
ninja install
Jansson pakken inneholder et bibliotek som brukes til kode, dekode og manipulere JSON data.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/akheron/jansson/releases/download/v2.14/jansson-2.14.tar.bz2
Nedlasting MD5 sum: 3f90473d7d54ebd1cb6a2757396641df
Nedlastingsstørrelse: 424 KB
Estimert diskplass som kreves: 5.6 MB (legg til 1.9 MB for tester)
Estimert byggetid: 0.1 SBU (med tester)
Rett først en av testene:
sed -e "/DT/s;| sort;| sed 's/@@libjansson.*//' &;" \
-i test/suites/api/check-exports
Installer jansson ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
JSON-C implementerer en referansetelling objektmodell som lar deg enkelt konstruere JSON objekter i C, gi dem ut som JSON formaterte strenger og analyser JSON formaterte strenger tilbake til C representasjonen av JSON objekter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://s3.amazonaws.com/json-c_releases/releases/json-c-0.17.tar.gz
Nedlasting MD5 sum: bad8f5e91b7b2563ee2d507054c70eb2
Nedlastingsstørrelse: 384 KB
Estimert diskplass som kreves: 7.9 MB
Estimert byggetid: 0.4 SBU (med tester)
Doxygen-1.12.0 og Graphviz-12.1.0 (for dot verktøy)
Installer JSON-C ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_STATIC_LIBS=OFF \
.. &&
make
Hvis du har installert Doxygen-1.12.0 og Graphviz-12.1.0, kan du bygge dokumentasjonen ved å kjøre følgende kommando:
doxygen doc/Doxyfile
For å teste resultatene, utsted: make test.
Nå, som root bruker:
make install
Hvis du har laget dokumentasjonen, installer den ved å kjøre
følgende kommandoer som root
bruker:
install -d -vm755 /usr/share/doc/json-c-0.17 && install -v -m644 doc/html/* /usr/share/doc/json-c-0.17
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
til å bruke et høyere nivå av kompilatoroptimaliseringer.
JSON GLib pakken er et bibliotek som gir støtte for serialisering og deserialisering for JavaScript Objektnotasjonsformat (JSON) beskrevet av RFC 4627.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/json-glib/1.8/json-glib-1.8.0.tar.xz
Nedlasting MD5 sum: f1aac2b8a17fd68646653cc4d8426486
Nedlastingsstørrelse: 156 KB
Estimert diskplass som kreves: 7.8 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
GLib-2.80.4 (GObject Introspection påkrevd vis GNOME bygges)
Installer JSON GLib ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dgtk_doc=disabled: Legg til
dette alternativet hvis du har GTK-Doc-1.34.0
installert og ikke ønsker å generere API dokumentasjonen.
Keyutils er et sett med verktøy for å administrere nøkkeloppbevaringsfasiliteten i kjernen, som kan brukes av filsystemer, blokk enheter og mer for å få og beholde autorisasjonen og krypteringsnøkler som kreves for å utføre sikre operasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/snapshot/keyutils-1.6.3.tar.gz
Nedlasting MD5 sum: 6b70b2b381c1b6d9adfaf66d5d3e7c00
Nedlastingsstørrelse: 136 KB
Estimert diskplass som kreves: 2.6 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.4 SBU for tester)
lsb-tools-0.12 (henvist av testpakken)
Hvis du kjører testpakken, trenger noen tester følgende kjernefunksjoner aktivert:
Security options ---> [*] Enable access key retention support [KEYS] [*] Large payload keys [BIG_KEYS] [*] Diffie-Hellman operations on retained keys [KEY_DH_OPERATIONS] -*- Cryptographic API ---> [CRYPTO] Public-key cryptography ---> <*/M> RSA (Rivest-Shamir-Adleman) [CRYPTO_RSA] Hashes, digests, and MACs ---> <*/M> SHA-1 [CRYPTO_SHA1] [*] Asymmetric (public-key cryptographic) key type ---> [ASYMMETRIC_KEY_TYPE] <*> Asymmetric public-key crypto algorithm subtype ... [ASYMMETRIC_PUBLIC_KEY_SUBTYPE] # If not built into the kernel, [SYSTEM_TRUSTED_KEYRING] won't show up; # building as a module won't work: <*> X.509 certificate parser [X509_CERTIFICATE_PARSER] Certificates for signature checking ---> [*] Provide system-wide ring of trusted keys [SYSTEM_TRUSTED_KEYRING] [*] Provide a keyring to which extra trustable keys may be added ... [SECONDARY_TRUSTED_KEYRING] [*] Provide system-wide ring of blacklisted keys [SYSTEM_BLACKLIST_KEYRING] Library routines ---> Crypto library routines ---> # If not built into the kernel, [BIG_KEYS] won't show up; # building as a module won't work: <*> ChaCha20-Poly1305 AEAD support (8-byte nonce library version) ... [CRYPTO_LIB_CHACHA20POLY1305]
Installer keyutils ved å kjøre følgende kommandoer:
make
Nå, som root bruker:
make NO_ARLIB=1 LIBDIR=/usr/lib BINDIR=/usr/bin SBINDIR=/usr/sbin install
Testpakken kan bare kjøres etter at denne pakken er
installert. For å teste resultatene, utsted, som root bruker:
make -k test
Hvis lsb-tools-0.12 ikke er installert, vil testpakken gi noen linjer klage på at lsb_release kommandoen ikke er tilgjengelig, men den vil ikke påvirke testresultatet.
NO_ARLIB=1: Dette
make flagget deaktiverer installasjonen av statisk bibliotek.
|
kontrollerer nøkkeladministrasjonsfasilitetet med en rekke underkommandoer |
|
|
er påkalt av request-key på vegne av kjernen når kjernetjenester (som NFS, CIFS og AFS) trenger å utføre et vertsnavnoppslag og kjernen ikke har nøkkelen bufret. Det er vanligvis ikke ment å bli påkalt direkte |
|
|
påkalles av kjernen når kjernen blir bedt om en nøkkel som den ikke har tilgjengelig umiddelbart. Kjernen oppretter en midlertidig nøkkel og kaller deretter til dette programmet for å instansiere det. Det er ikke ment å bli påkalt direkte |
|
|
inneholder keyutils bibliotekets API instansering |
libaio pakken er en asynkron I/O fasilitet ("async I/O", eller "aio") som har et rikere API og kapasitetssett enn den enkle POSIX async I/O funksjonen. Dette biblioteket, libaio, gir Linux-native API for asynkron I/O. POSIX async I/O-funksjonen krever dette biblioteket for å gi kjerneakselerert asynkron I/O funksjoner, det samme gjør applikasjoner som krever Linux-native async I/O API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://pagure.io/libaio/archive/libaio-0.3.113/libaio-0.3.113.tar.gz
Nedlasting MD5 sum: 605237f35de238dfacc83bcae406d95d
Nedlastingsstørrelse: 48 KB
Estimert diskplass som kreves: 1.0 MB
Estimert byggetid: mindre enn 0.1 SBU
Først deaktiverer du installasjonen av det statiske biblioteket:
sed -i '/install.*libaio.a/s/^/#/' src/Makefile
Bygg libaio ved å kjøre følgende kommandoer:
make
For å teste resultatene, utsted: make partcheck.
Installer nå pakken som root
bruker:
make install
libarchive biblioteket gir et enkelt grensesnitt for lesing/skriving av ulike komprimeringsformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libarchive/libarchive/releases/download/v3.7.4/libarchive-3.7.4.tar.xz
Nedlasting MD5 sum: 1bab4c1b443ecf4f23ff9881665e680a
Nedlastingsstørrelse: 5.2 MB
Estimert diskplass som kreves: 42 MB (legg til 32 MB for tester)
Estimert byggetid: 0.4 SBU (legg til 0.6 SBU for tester)
Installer libarchive ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static --without-expat && make
For å teste resultatene, utsted: LC_ALL=C.UTF-8 make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--without-expat:
Denne bryteren deaktiverer bruk av expat for støtte for xar
format. På grunn av en feil vil Xar leseren sløyfe uendelig
hvis expat brukes. Oppstrøms foretrekker libxml2 for xar
støtte uansett
--without-nettle: Denne bryteren
setter OpenSSL for kryptostøtte i stedet for foretrukket
Nettle hvis begge pakkene er installert.
libassuan pakken inneholder et interprosesskommunikasjonsbibliotek brukt av noen av de andre GnuPG relaterte pakker. libassuans primær bruk er å tillate en klient å samhandle med en ikke-vedvarende server. libassuan er imidlertid ikke begrenset til bruk med GnuPG servere og klienter. Den ble designet for å være fleksibel nok til å møte kravene til mange transaksjonsbaserte miljøer med ikke-vedvarende servere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/libassuan/libassuan-3.0.1.tar.bz2
Nedlasting MD5 sum: 6f0d239302ae3b8d4aefcb499b137530
Nedlastingsstørrelse: 580 KB
Estimert diskplass som kreves: 6.5 MB (med tester, legg til 3,4 MB for pdf dokumentasjon)
Estimert byggetid: 0.2 SB (med tester og html dokumentasjon)
texlive-20240312 (eller install-tl-unx)
Installer libassuan ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make && make -C doc html && makeinfo --html --no-split -o doc/assuan_nochunks.html doc/assuan.texi && makeinfo --plaintext -o doc/assuan.txt doc/assuan.texi
Kommandoene ovenfor bygger dokumentasjonen i html og rentekst formater. Hvis du ønsker å bygge alternative formater av dokumentasjonen, må du ha texlive-20240312 installert og utstede følgende kommandoer:
make -C doc pdf ps
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install &&
install -v -dm755 /usr/share/doc/libassuan-3.0.1/html &&
install -v -m644 doc/assuan.html/* \
/usr/share/doc/libassuan-3.0.1/html &&
install -v -m644 doc/assuan_nochunks.html \
/usr/share/doc/libassuan-3.0.1 &&
install -v -m644 doc/assuan.{txt,texi} \
/usr/share/doc/libassuan-3.0.1
Hvis du bygde alternative formater av dokumentasjonen,
installer dem ved å kjøre følgende kommandoer som
root bruker:
install -v -m644 doc/assuan.{pdf,ps,dvi} \
/usr/share/doc/libassuan-3.0.1
libatasmart pakken er et diskrapportering bibliotek. Den støtter bare et undersett av ATA S.M.A.R.T. funksjonalitet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://0pointer.de/public/libatasmart-0.19.tar.xz
Nedlasting MD5 sum: 53afe2b155c36f658e121fe6def33e77
Nedlastingsstørrelse: 248 KB
Estimert diskplass som kreves: 3 MB
Estimert byggetid: mindre enn 0.1 SBU
Redaktør notater: https://wiki.linuxfromscratch.org/blfs/wiki/libatasmart
Installer libatasmart ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make docdir=/usr/share/doc/libatasmart-0.19 install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libatomic_ops gir implementeringer for oppdateringsoperasjoner for atomic minne på en rekke arkitekturer. Dette tillater direkte bruk av disse i rimelig flyttbar kode. I motsetning til tidligere lignende pakker, vurderer denne eksplisitt minnebarriere semantikk, og tillater konstruksjon av kode som involverer minimum overhead over et mangfold av arkitekturer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/ivmai/libatomic_ops/releases/download/v7.8.2/libatomic_ops-7.8.2.tar.gz
Nedlasting MD5 sum: d07b3d8369d7f9efdca59f7501dd1117
Nedlastingsstørrelse: 516 KB
Estimert diskplass som kreves: 6.8 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Installer libatomic_ops ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-shared \
--disable-static \
--docdir=/usr/share/doc/libatomic_ops-7.8.2 &&
make
For å teste resultatene, utsted make check.
Nå, som root bruker:
make install
--enable-shared:
Denne bryteren aktiverer bygging av libatomic_ops delte biblioteker.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libblockdev er et C bibliotek som støtter GObject Introspection for manipulering av blokkenheter. Den har et programtillegg basert arkitektur hvor hver teknologi (som LVM, Btrfs, MD RAID, Swap,...) er implementert i et separat programtillegg, muligens med flere implementeringer (f.eks. ved å bruke LVM CLI eller den nye LVM DBus API).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/storaged-project/libblockdev/releases/download/3.1.1-1/libblockdev-3.1.1.tar.gz
Nedlasting MD5 sum: 28d43f2d6bff85245502a8c4c478c5a3
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 13 MB
Estimert byggetid: 0.1 SBU
GLib-2.80.4 (GObject Introspection påkrevd for GNOME)
cryptsetup-2.7.4, keyutils-1.6.3, libbytesize-2.11, libnvme-1.10, og LVM2-2.03.26
btrfs-progs-6.10.1, GTK-Doc-1.34.0, mdadm-4.3, parted-3.6, volume_key, ndctl, og targetcli (for tester)
Først, omgå et problem når du bruker e2fsprogs-1.47.1 eller nyere:
find -name Makefile.in -exec sed -i "s/-Werror//" {} \;
Installer libblockdev ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--with-python3 \
--without-escrow \
--without-gtk-doc \
--without-lvm \
--without-lvm_dbus \
--without-nvdimm \
--without-tools &&
make
Testpakken krever targetcli, som ikke er en del av BLFS.
Nå, som root bruker:
make install
libblockdev uten volume_key installert.
--without-lvm
--without-lvm_dbus
--without-tools:
Kombinasjonen av disse brytere tillater bygging av
libblockdev uten parted-3.6
installert. Fjern den hvis du har installert parted-3.6 og ønsker å
bygge lvm-cache-stats eller
vfat-resize
verktøy, eller ønsker libblockdev å støtte logiske volumer.
--without-btrfs --without-mdraid
--without-tools: Kombinasjonen av disse bryterne
tillater bygging av libblockdev uten libbytesize-2.11
installert. --without-mdraid
alternativet vil bryte UDisks-2.10.1, så ikke bruk det med
mindre du virkelig vet hva du gjør.
--without-crypto: Denne bryteren
tillater bygging av libblockdev uten cryptsetup-2.7.4
eller keyutils-1.6.3 installert. Denne
bryteren vil bryte UDisks-2.10.1, så ikke bruk det med
mindre du virkelig vet hva du gjør.
--without-dm --without-lvm
--without-lvm_dbus --without-mpath: Kombinasjonen av
disse bryterne tillater bygging av libblockdev uten LVM2-2.03.26 installert.
--without-dm og --without-mpath alternativene er ikke i
instruksjonene gitt av boken fordi LVM2-2.03.26 er påkrevd for
cryptsetup-2.7.4 og cryptsetup-2.7.4 er uansett en
anbefalt avhengighet av libblockdev.
--without-nvme: Denne bryteren
tillater bygging av libblockdev uten libnvme-1.10 installert.
Denne bryteren vil bryte UDisks-2.10.1, så ikke bruk det med
mindre du virkelig vet hva du gjør.
libbytesize pakken er et bibliotek som letter de vanlige operasjonene med størrelser i byte.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/storaged-project/libbytesize/releases/download/2.11/libbytesize-2.11.tar.gz
Nedlasting MD5 sum: b9a24d3a7b576e67cab729195c26f6e5
Nedlastingsstørrelse: 452 KB
Estimert diskplass som kreves: 3.5 MB
Estimert byggetid: mindre enn 0,1 SBU (inkludert tester)
pcre2-10.44 og Pygments-2.18.0
GTK-Doc-1.34.0, pocketlint (python modul for en test), og polib (python modul for en test)
Installer libbytesize ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Hvis du har de valgfrie python modulene installert, kan regresjonstester kjøres med: make check.
Nå, som root bruker:
make install
libclc pakken inneholder en implementering av bibliotekkravene til programmeringsspråket OpenCL C, som spesifisert av OpenCL 1.1 spesifikasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/llvm/llvm-project/releases/download/llvmorg-18.1.7/libclc-18.1.7.src.tar.xz
Nedlasting MD5 sum: 0c7627f6c82bb63f712e1cc00d89eed7
Nedlastingsstørrelse: 124 KB
Estimert diskplass som kreves: 380 MB
Estimert byggetid: 1.2 SBU (med parallellisme=8)
Installer libclc ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-G Ninja .. &&
ninja
For å teste resultatene, utsted: ninja test. To tester,
external-calls-clspv--.bc og
external-calls-clspv64--.bc, er
kjent for å mislykkes pga ugyldig syntaks.
Nå, som root bruker:
ninja install
libcloudproviders pakken inneholder en bibliotek som gir en DBus API som tillater skylagring å synkronisere klienter for å eksponere sine tjenester.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libcloudproviders/0.3/libcloudproviders-0.3.6.tar.xz
Nedlasting MD5 sum: f0f994bdc36fdfe9b31e3655b8071599
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 1.4 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17
Installer libcloudproviders ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Denable-gtk-doc: Bruk denne
bryteren hvis du har GTK-Doc-1.34.0 installert og ønsker å
generere API dokumentasjon.
libdaemon pakken er et lettvekts C bibliotek som letter skrivingen av UNIX nisser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://0pointer.de/lennart/projects/libdaemon/libdaemon-0.14.tar.gz
Nedlasting MD5 sum: 509dc27107c21bcd9fbf2f95f5669563
Nedlastingsstørrelse: 332 KB
Estimert diskplass som kreves: 3 MB
Estimert byggetid: 0.1 SBU
Installer libdaemon ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis du har Doxygen installert og ønsker å bygge API dokumentasjonen, utfør følgende kommando:
make -C doc doxygen
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make docdir=/usr/share/doc/libdaemon-0.14 install
Hvis du har bygget API dokumentasjonen, installer den ved å
bruke følgende kommandoer som root bruker:
install -v -m755 -d /usr/share/doc/libdaemon-0.14/reference/html && install -v -m644 doc/reference/html/* /usr/share/doc/libdaemon-0.14/reference/html && install -v -m644 doc/reference/man/man3/* /usr/share/man/man3
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libdisplay-info pakken gir et sett med høynivå og lavnivåf unksjoner til få tilgang til detaljert EDID informasjon (Extended Display Identification Data).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/emersion/libdisplay-info/-/releases/0.2.0/downloads//libdisplay-info-0.2.0.tar.xz
Nedlasting MD5 sum: 160d4159a7805823cf0b3b4f86dfa8d4
Nedlastingsstørrelse: 96 KB
Estimert diskplass som kreves: 2.8 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libdisplay-info ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
libgcrypt pakken inneholder et generelt formålskryptobibliotek basert på koden som brukes i GnuPG. Biblioteket gir et høyt nivå grensesnitt til kryptografiske byggeblokker ved hjelp av en utvidbar og fleksibel API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.11.0.tar.bz2
Nedlasting (FTP): ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.11.0.tar.bz2
Nedlasting MD5 sum: 321c4975cfd6a496f0530b65a673f9a4
Nedlastingsstørrelse: 4.0 MB
Estimert diskplass som kreves: 146 MB (med tester)
Estimert byggetid: 0.6 SBU (med dokumentasjon; legg til 0.4 SBU for tester)
texlive-20240312 (eller install-tl-unx)
Installer libgcrypt ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make && make -C doc html && makeinfo --html --no-split -o doc/gcrypt_nochunks.html doc/gcrypt.texi && makeinfo --plaintext -o doc/gcrypt.txt doc/gcrypt.texi
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install &&
install -v -dm755 /usr/share/doc/libgcrypt-1.11.0 &&
install -v -m644 README doc/{README.apichanges,fips*,libgcrypt*} \
/usr/share/doc/libgcrypt-1.11.0 &&
install -v -dm755 /usr/share/doc/libgcrypt-1.11.0/html &&
install -v -m644 doc/gcrypt.html/* \
/usr/share/doc/libgcrypt-1.11.0/html &&
install -v -m644 doc/gcrypt_nochunks.html \
/usr/share/doc/libgcrypt-1.11.0 &&
install -v -m644 doc/gcrypt.{txt,texi} \
/usr/share/doc/libgcrypt-1.11.0
--with-capabilities: Dette
alternativet aktiverer libcap2 støtte. Merk at dette
ødelegger cryptsetup-2.7.4
libgpg-error pakken inneholder et bibliotek som definerer vanlige feilverdier for alle GnuPG komponenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.50.tar.bz2
Nedlasting MD5 sum: 80e905ce798553c766e3384467dc55ea
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 11 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
Installer libgpg-error ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install && install -v -m644 -D README /usr/share/doc/libgpg-error-1.50/README
libgsf pakken inneholder et bibliotek som brukes for å gi et utvidbart inndata/utdata abstraksjonslag for strukturerte filformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgsf/1.14/libgsf-1.14.52.tar.xz
Nedlasting MD5 sum: c64b4a29dd2e67749313f3917a12a709
Nedlastingsstørrelse: 692 KB
Estimert diskplass som kreves: 14 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/libgsf-1.14.52-upstream_fixes-1.patch
gdk-pixbuf-2.42.12 (For å bygge gsf-office-thumbnailer)
GTK-Doc-1.34.0, p7zip-17.04 (for tester), UnZip-6.0 (for tester), og Valgrind-3.23.0 (for tester)
Først, fiks byggingen av libgsf med libxml2-2.13:
patch -Np1 -i ../libgsf-1.14.52-upstream_fixes-1.patch
Installer libgsf ved å kjøre følgende kommandoer:
autoreconf && ./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check. To tester relatert til Valgrind-3.23.0 er kjent for å feile.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
|
er et enkelt arkivverktøy, noe som ligner på tar(1) |
|
|
brukes internt av GNOME applikasjoner som for eksempel Nautilus for å generere miniatyrbilder av flere typer kontorapplikasjonsfiler |
|
|
brukes til å trekke ut Visual Basic for Applications makroer fra filer |
|
|
inneholder libgsf API funksjoner |
libgudev pakken inneholder GObject bindinger for libudev.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgudev/238/libgudev-238.tar.xz
Nedlasting MD5 sum: 46da30a1c69101c3a13fa660d9ab7b73
Nedlastingsstørrelse: 32 KB
Estimert diskplass som kreves: 2.0 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (GObject Introspection påkrevd for GNOME)
GTK-Doc-1.34.0 og umockdev-0.18.3 (for testing)
Installer libgudev ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dgtk_doc=true: Bruk dette
alternativet hvis GTK-Doc er installert og du ønsker å bygge
og installere API dokumentasjonen.
libgusb pakken inneholder GObject innpakning for libusb-1.0 som gjør det enkelt å gjøre asynkron kontroll, bulk og avbryte overføringer med riktig kansellering og integrering i en hovedsløyfe.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/hughsie/libgusb/releases/download/0.4.9/libgusb-0.4.9.tar.xz
Nedlasting MD5 sum: 354a3227334991ea4e924843c144bd82
Nedlastingsstørrelse: 52 KB
Estimert diskplass som kreves: 5.0 MB (med tester og dokumenter)
Estimert byggetid: 0.1 SBU (med tester og dokumenter)
JSON-GLib-1.8.0 og libusb-1.0.27
GLib-2.80.4 (med GObject Introspection),
hwdata-0.385 (for usb.ids datafiler, som også kreves for
testene), og Vala-0.56.17
Gi-DocGen-2024.1 og umockdev-0.18.3 (for full testdekning)
Installer libgusb ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D docs=false &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed -E "/output|install_dir/s/('libgusb)'/\1-0.4.9'/" \
-i ../docs/meson.build &&
meson configure -D docs=true &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D docs=false: Tillat
å bygge denne pakken uten Gi-DocGen-2024.1 installert.
Hvis du har Gi-DocGen-2024.1 installert og du
ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
libical pakken inneholder en implementering av iCalendar protokollene og dataformatene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libical/libical/releases/download/v3.0.18/libical-3.0.18.tar.gz
Nedlasting MD5 sum: cc790ea49701df0335d42b89d57c04bc
Nedlastingsstørrelse: 888 KB
Estimert diskplass som kreves: 24 MB (med tester)
Estimert byggetid: 0.1 SBU (bruker parallellisme=4; med tester)
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17 (begge kreves for GNOME)
Doxygen-1.12.0 (for API dokumentasjon), Graphviz-12.1.0 (for API dokumentasjon), GTK-Doc-1.34.0 (for API dokumentasjon), ICU-75.1, PyGObject-3.48.2 (for noen tester), og Berkeley DB (deprecated)
Hvis ICU-75.1 er installert, fiks en inkompatibilitet med ICU 75 eller senere:
sed -i '/getKeywordValuesForLocale/s/NULL/""/' src/libical/icalrecur.c
Installer libical ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D SHARED_ONLY=yes \
-D ICAL_BUILD_DOCS=false \
-D ICAL_BUILD_EXAMPLES=false \
-D GOBJECT_INTROSPECTION=true \
-D ICAL_GLIB_VAPI=true \
.. &&
make
Hvis du har Doxygen-1.12.0, Graphviz-12.1.0, og
GTK-Doc-1.34.0 installert og ønsker å
bygge API dokumentasjonen, bør du fjerne -D ICAL_BUILD_DOCS=false
parameteren og utstede:
make docs
For å teste resultatene, utsted: make test. En test navngitt
icalrecurtest-r er kjent for å
mislykkes.
Nå, som root bruker:
make install
Hvis du har bygget API dokumentasjonen, installer ved å
utstede, som root bruker:
install -vdm755 /usr/share/doc/libical-3.0.18/html && cp -vr apidocs/html/* /usr/share/doc/libical-3.0.18/html
-D
CMAKE_BUILD_TYPE=Release:: Denne bryteren brukes
for å bruke høyere nivå av kompilatoroptimaliseringer.
-D SHARED_ONLY=yes:
Denne bryteren brukes for kun å bygge de delte bibliotekene.
-D
ICAL_BUILD_DOCS=false: Denne bryteren forhindrer
bygging av GTK
dokumentasjon. Fjern hvis du vil bygge dokumentasjonen.
-D
ICAL_BUILD_EXAMPLES=false: Denne bryteren
forhindrer bygging av eksempler. Fjern hvis du vil bygge dem.
-D
GOBJECT_INTROSPECTION=true: Denne bryteren brukes
for å generere GObject metadatabindinger.
-D
ICAL_GLIB_VAPI=true: Denne bryteren brukes for å
bygge bindinger for Vala-0.56.17.
-D USE_BUILTIN_TZDATA=yes: Denne
bryteren brukes for å bygge med dine egne tidssonedata.
libidn er en pakke designet for internasjonalisert strenghåndtering basert på Stringprep, Punycode og IDNA spesifikasjoner definert av Internet Engineering Task Force (IETF) Internasjonaliserte domenenavn (IDN) arbeidsgruppe, brukt for internasjonaliserte domenenavn. Dette er nyttig for å konvertere data fra systemets opprinnelige representasjon til UTF-8, transformerer Unicode strenger til ASCII strenger, slik at applikasjoner kan bruke visse ASCII navneetiketter (begynner med et spesielt prefiks) for å representere ikke-ASCII navneetiketter, og konvertere hele domenenavn til og fra ASCII kompatibel koding (ACE) form.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libidn/libidn-1.42.tar.gz
Nedlasting MD5 sum: fe061a95ae23979150a692d102dce4ad
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 19 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Emacs-29.4, GTK-Doc-1.34.0, OpenJDK-22.0.2, Valgrind-3.23.0, og Mono
Installer libidn ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør:
pushd tests && make check && popd
Nå, som root bruker:
make install &&
find doc -name "Makefile*" -delete &&
rm -rf -v doc/{gdoc,idn.1,stamp-vti,man,texi} &&
mkdir -v /usr/share/doc/libidn-1.42 &&
cp -r -v doc/* /usr/share/doc/libidn-1.42
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
--enable-java: Bruk denne
bryteren for å aktivere bygging av Java implementeringen av
libidn. Merk at OpenJDK-22.0.2 må være installert for å
bruke dette alternativet.
|
er et kommandolinjegrensesnitt til det internasjonaliserte domene navnebiblioteket |
|
|
inneholder en generisk Stringprep implementering som gjør Unicode 3.2 NFKC normalisering, kartlegging og forbud mot tegn, og toveis tegnhåndtering. Profiler for Nameprep, iSCSI, SASL og XMPP er inkludert, samt støtte for Punycode og ASCII Kompatibel koding (ACE) via IDNA. En mekanisme for å definere toppnivå Domenespesifikke valideringstabeller (TLD), og for å sammenligne strenger mot disse tabellene, så vel som standardtabeller for noen TLD er inkludert |
libidn2 er en pakke designet for internasjonalisert strenghåndtering basert på standarder fra Internet Engineering Task Force (IETF) sin IDN arbeidsgruppe, designet for internasjonaliserte domenenavn.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libidn/libidn2-2.3.7.tar.gz
Nedlasting MD5 sum: de2818c7dea718a4f264f463f595596b
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 21 MB (legg til 3 MB for tester)
Estimert byggetid: 0.1 SBU (legg til 0.6 SBU for tester)
Installer libidn2 ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
Libksba pakken inneholder et bibliotek som brukes til å lage X.509-sertifikater i tillegg til å lage CMS (Cryptographic Meldingssyntaks) lett tilgjengelig for andre applikasjoner. Begge spesifikasjoner er byggesteiner av S/MIME og TLS. Biblioteket er ikke avhengig av et annet kryptografisk bibliotek, men gir kroker for enkelt integrasjon med Libgcrypt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/libksba/libksba-1.6.7.tar.bz2
Nedlasting (FTP): ftp://ftp.gnupg.org/gcrypt/libksba/libksba-1.6.7.tar.bz2
Nedlasting MD5 sum: 7e736de467b67c7ea88de746c31ea12f
Nedlastingsstørrelse: 692 KB
Estimert diskplass som kreves: 9.4 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Installer Libksba ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
Denne pakken gir et bibliotek for å lære lineære klassifiserere for store skala applikasjoner. Den støtter Support Vector Machines (SVM) med L2 og L1 tap, logistisk regresjon, multiklasseklassifisering og også Lineær Programmeringsmaskiner (L1 regulariserte SVM-er). Dens beregningsmessige kompleksitet skaleres lineært med antall treningseksempler som gjør den til en av de raskeste SVM løsere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Etter å ha oppdatert denne pakken fra liblinear-1.96 eller tidligere, må du installer Nmap-7.95 på nytt, for å koble til det nye biblioteket.
Nedlasting (HTTP): https://github.com/cjlin1/liblinear/archive/v247/liblinear-247.tar.gz
Nedlasting MD5 sum: 0c81dd2b2cabc4fba85f61b9dc51c4a3
Nedlastingsstørrelse: 560 KB
Estimert diskplass som kreves: 1.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer liblinear ved å kjøre følgende kommandoer:
make lib
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
install -vm644 linear.h /usr/include && install -vm755 liblinear.so.5 /usr/lib && ln -sfv liblinear.so.5 /usr/lib/liblinear.so
libmbim pakken inneholder et GLib basert bibliotek for å snakke med WWAN modemer og enheter som snakker mobilgrensesnittet Broadband Model (MBIM) protokollen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/libmbim/libmbim-1.26.4.tar.xz
Nedlasting MD5 sum: 58dea20cad346f31d2873b68385a9973
Nedlastingsstørrelse: 553 KB
Estimert diskplass som kreves: 33 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
GLib-2.80.4 (med GObject Introspection)
Installer libmbim ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
libnvme pakken er et bibliotek som gir typedefinisjoner for NVMe spesifikasjonsstrukturer, oppregninger og bitfelt, hjelpefunksjoner for å konstruere, sende, og dekode kommandoer og nyttelast, og verktøy for å koble til, skanne og administrere NVMe enheter på et Linux system.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/linux-nvme/libnvme/archive/v1.10/libnvme-1.10.tar.gz
Nedlasting MD5 sum: 0d43167362a119f8a621607b7ee20c51
Nedlastingsstørrelse: 704 KB
Estimert diskplass som kreves: 21
Estimert byggetid: mindre enn 0,1 SBU (inkludert tester)
Installer libnvme ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D libdbus=auto .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
Denne pakken er ment å gi en enkel måte for programmer å ta handlinger basert på et system eller brukerspesifisert papirstørrelse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/rrthomas/libpaper/releases/download/v2.2.5/libpaper-2.2.5.tar.gz
Nedlasting MD5 sum: 4b914c3ca6d8277260fce418e12bae6b
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 11 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Installer libpaper ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static \
--docdir=/usr/share/doc/libpaper-2.2.5 &&
make
Testpakken til denne pakken fungerer ikke med en konfigurasjon som bruker standard installasjonssted.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Papirstørrelsen bestemmes automatisk fra systemets
lokalitet; se LC_PAPER i
locale(7).
Hvis du vil overstyre den, oppretter du en papersize fil i
brukerkonfigurasjonsmappen. For eksempel:
mkdir -pv ~/.config && echo "a4" > ~/.config/papersize
Hvis du vil overstyre papirstørrelsen globalt (for alle
brukere), sett opp PAPERSIZE
miljøvariabelen. For eksempel:
echo "PAPERSIZE=a4" > /etc/profile.d/libpaper.sh
Du kan bruke en annen papirstørrelse, som f.eks
letter.
libportal pakken gir et bibliotek som inneholder GIO stil async APIer for de fleste Flatpak portaler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/flatpak/libportal/releases/download/0.7.1/libportal-0.7.1.tar.xz
Nedlasting MD5 sum: f94be41e8495ae7d6aaed046481daa61
Nedlastingsstørrelse: 76 KB
Estimert diskplass som kreves: 3.0 MB (med tester)
Estimert byggetid: 0.1 SBU (legg til 0.3 SBU for tester)
Valgfri oppdatering (påkrevd for å kjøre testpakken): https://www.linuxfromscratch.org/patches/blfs/12.2/libportal-0.7.1-testsuite_fix-1.patch
GLib-2.80.4 (med GObject Introspection)
For å gjøre denne pakken virkelig nyttig, installer xdg-desktop-portal-1.18.2, xdg-desktop-portal-gtk-1.15.1, xdg-desktop-portal-gnome-46.2 (hvis du kjører et GNOME skrivebordsmiljø), og xdg-desktop-portal-lxqt-1.0.2 (hvis du kjører et LXQt skrivebordsmiljø). De er ikke nødvendig hvis du bare bruker denne pakken for å tilfredsstille en byggeavhengighet.
Gi-DocGen-2024.1 (for dokumentasjon), dbusmock-0.32.1 og pytest-8.3.2 (for testing), qt5-components-5.15.14 (for Qt5 versjonen av libportal), og Vala-0.56.17
Hvis en tidligere versjon av libportal er installert, flytt
deklarasjoner ute av veien slik at senere pakker ikke
støter på konflikter (som root bruker):
if [ -e /usr/include/libportal ]; then
rm -rf /usr/include/libportal.old &&
mv -vf /usr/include/libportal{,.old}
fi
Hvis du kjører testpakken, bruk en oppdatering for å fikse flere testfeil med python-dbusmock 0.30.0 eller nyere:
patch -Np1 -i ../libportal-0.7.1-testsuite_fix-1.patch
Installer libportal ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D docs=false .. && ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed "/output/s/-1/-0.7.1/" -i ../doc/meson.build && meson configure -D docs=true && ninja
For å teste resultatene, utsted: ninja test. Merk at
ytterligere dbus-daemon
prosesser må kanskje bli drept etter at testene er kjørt.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D docs=false: Tillat
å bygge denne pakken uten Gi-DocGen-2024.1 installert.
Hvis du har Gi-DocGen-2024.1 installert og du
ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
libptytty pakken gir et bibliotek som tillater OS uavhengig og sikker pty/tty og utmp/wtmp/lastlog håndtering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://dist.schmorp.de/libptytty/libptytty-2.0.tar.gz
Nedlasting MD5 sum: 2a7f3f3c0d3ef71902da745dc7959529
Nedlastingsstørrelse: 48 KB
Estimert diskplass som kreves: 1.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libptytty ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D PT_UTMP_FILE:STRING=/run/utmp \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libqalculate pakken inneholder et bibliotek som gir funksjoner for en flerbrukskalkulator.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/Qalculate/libqalculate/releases/download/v5.2.0/libqalculate-5.2.0.tar.gz
Nedlasting MD5 sum: d378112794a24d6af1092e0c25f0ff97
Nedlastingsstørrelse: 2.6 MB
Estimert diskplass som kreves: 156 MB (med tester)
Estimert byggetid: 0.9 SBU (Med tester; begge bruker parallellisme=8)
cURL-8.9.1, ICU-75.1, og libxml2-2.13.3
Installer libqalculate ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libqalculate-5.2.0 &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
Libtool arkivfilen fra denne pakken refererer til biblioteker
fra ICU-75.1. En slik referanse kan forårsake
pakker avhengig av denne pakken å være unødvendig koblet mot
ICU bibliotekene og øke byrden for å gjenoppbygge pakker hvis
ICU er oppdatert til en ny hovedversjon. Som vi har forklart
i Libtool arkiv (.la) filer,
disse libtool arkivfilene er unødvendige uansett. Så som
root bruker, fjern libtool
arkivfilen nå:
rm -v /usr/lib/libqalculate.la
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libqmi pakken inneholder et GLib basert bibliotek for å snakke med WWAN modemer og enheter som snakker Qualcomm MSM grensesnitt (QMI) protokoll.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/libqmi/libqmi-1.30.8.tar.xz
Nedlasting MD5 sum: 5ec8838914f80e1dfa4d2fa8cc2f186d
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 151 MB (med tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; med tester)
GLib-2.80.4 (GObject Introspection anbefalt) og libgudev-238
Installer libqmi ved å kjøre følgende kommandoer:
PYTHON=python3 ./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
--disable-mbim-qmux: Denne
bryteren deaktiverer støtte for å bruke en MBIM kontrollenhet
for QMI meldinger. Bruk denne bryteren hvis du ikke har
installert libmbim.
|
er et verktøy som brukes til å kontrollere QMI enheter |
|
|
er et verktøy som brukes til å utføre fastvareoppdateringer på QMI enheter |
|
|
er et verktøy som brukes for enkel nettverksadministrasjon av QMI enheter |
|
|
inneholder API funksjoner for å snakke med WWAN modemer og enheter som snakker Qualcomm MSM Interface (QMI) protokollen |
libseccomp pakken gir et enkelt å bruke og plattformuavhengig grensesnitt til Linux kjernens syscall filtreringsmekanisme.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/seccomp/libseccomp/releases/download/v2.5.5/libseccomp-2.5.5.tar.gz
Nedlasting MD5 sum: c27a5e43cae1e89e6ebfedeea734c9b4
Nedlastingsstørrelse: 628 KB
Estimert diskplass som kreves: 7.1 MB (ytterligere 4.7 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (ytterligere 2,9 SBU for tester)
Which-2.21 (nødvendig for tester), Valgrind-3.23.0, og LCOV
Installer libseccomp ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libsigc++ pakken implementerer en typesafe tilbakekallingssystem for standard C++.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libsigc++/2.12/libsigc++-2.12.1.tar.xz
Nedlasting MD5 sum: 891f1b2dbaebd8007eda8c639bbe1149
Nedlastingsstørrelse: 4.8 MB
Estimert diskplass som kreves: 27 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Boost-1.86.0 og libxslt-1.1.42
DocBook-utils-0.6.14, docbook-xml-5.0, Doxygen-1.12.0, fop-2.9, og mm-common
Installer libsigc++ ved å kjøre følgende kommandoer:
mkdir bld && cd bld && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dbuild-documentation=true: Bruk
denne bryteren hvis Doxygen-1.12.0 er installert og du
ønsker å bygge og installere API dokumentasjonen.
libsigc++ pakken implementerer en typesafe tilbakekallingssystem for standard C++. Denne versjonen er en del av et nytt API for å støtte gtkmm-4.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libsigc++/3.6/libsigc++-3.6.0.tar.xz
Nedlasting MD5 sum: b7205d5465ac15fbc0c781d39b4011be
Nedlastingsstørrelse: 972 KB
Estimert diskplass som kreves: 12 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
Boost-1.86.0 og libxslt-1.1.42
DocBook-utils-0.6.14, docbook-xml-5.0, Doxygen-1.12.0, fop-2.9, og mm-common
Installer libsigc++ ved å kjøre følgende kommandoer:
mkdir bld && cd bld && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dbuild-documentation=true: Bruk
denne bryteren hvis Doxygen-1.12.0 er installert og du
ønsker å bygge og installere API dokumentasjonen.
libsigsegv er et bibliotek for håndtering av sidefeil i brukermodus. En sidefeil oppstår når et program prøver å få tilgang til et minneområde som for øyeblikket ikke er tilgjengelig. Å fange og håndtere en sidefeil er nyttig teknikk for å implementere sidebart virtuelt minne, minnetilordnet tilgang til vedvarende databaser, generasjons søppelsamlere, stabeloverflyt behandlere og distribuert delt minne.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.14.tar.gz
Nedlasting MD5 sum: 63a2b35f11b2fbccc3d82f9e6c6afd58
Nedlastingsstørrelse: 456 KB
Estimert diskplass som kreves: 3.6 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer libsigsegv ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-shared \
--disable-static &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--enable-shared:
Denne bryteren sikrer at delte biblioteker er kompilert.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Libssh2 pakken er et C bibliotek på klientsiden som implementerer SSH2 protokollen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.libssh2.org/download/libssh2-1.11.0.tar.gz
Nedlasting MD5 sum: a01d543fd891ca48fe47726540d50b17
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 13 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/libssh2-1.11.0-security_fixes-1.patch
CMake-3.30.2 (kan brukes i stedet for configure skript), libgcrypt-1.11.0 (kan brukes i stedet for OpenSSL), OpenSSH-9.8p1 (for noen tester), og Docker (for noen tester)
Først, fiks en kritisk sikkerhetssårbarhet i libssh2:
patch -Np1 -i ../libssh2-1.11.0-security_fixes-1.patch
Hvis du ønsker å teste pakken, ekskluder testene som krever et statisk bibliotek, og fjerne referansen til en usikker algoritme som er fjernet siden OpenSSH 9.8:
sed -E '/^DOCKER_TEST/,/^SSHD_TEST/s/test_(auth_keyboard_info.* |hostkey |simple)/$(NOTHING)/' \
-i tests/Makefile.inc &&
autoreconf -fi &&
sed 's/ssh-dss,//' -i tests/openssh_server/sshd_config
Installer libssh2 ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-docker-tests \
--disable-static &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-docker-tests:
Deaktiver testene som krever Docker, noe som ligger utenfor
BLFS. Fjern dette bryteren hvis du har installert Docker og
du ønsker å kjøre testpakken.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Dette er et bibliotek som gir tilgang på tvers av plattformer til statistikk om systemet den kjøres på. Den er skrevet i C og presenterer et utvalg av nyttige grensesnitt som kan brukes for å få tilgang til nøkkelsystemstatistikk. Den nåværende listen over statistikk inkluderer CPU-bruk, minneutnyttelse, diskbruk, prosesstellinger, nettverkstrafikk, disk I/O og mer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/libstatgrab-0.92.1.tar.gz
Nedlasting MD5 sum: af685494e985229e0ac46365bc0cd50e
Nedlastingsstørrelse: 800 KB
Estimert diskplass som kreves: 7.6 MB (med tester)
Estimert byggetid: 0.1 SBU (legg til 1.5 SBU for tester)
Installer libstatgrab ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libstatgrab-0.92.1 &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libtasn1 er et svært flyttbart C bibliotek som koder og dekoder DER/BER data etter et ASN.1 skjema.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libtasn1/libtasn1-4.19.0.tar.gz
Nedlasting MD5 sum: f701ab57eb8e7d9c105b2cd5d809b29a
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 17 MB (med tester)
Estimert byggetid: 0.8 SBU (med tester)
Installer libtasn1 ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
Hvis du ikke sendte --enable-gtk-doc parameteren til configure skriptet, kan du
installere API dokumentasjon ved å bruke følgende kommando
som root bruker:
make -C doc/reference install-data-local
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Denne
parameteren er normalt brukt hvis GTK-Doc er installert og du ønsker å
gjenoppbygge og installere API dokumentasjonen. Det er
ødelagt for denne pakken på grunn av bruken av et lenge
utdatert gtk-doc program som ikke lenger er tilgjengelig.
libunistring er et bibliotek som tilbyr funksjoner for å manipulere Unicode strenger og for å manipulere C strenger i henhold til Unicode standarden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libunistring/libunistring-1.2.tar.xz
Nedlasting MD5 sum: 6b4ea63617bf09d76e5234379e75e7f9
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 54 MB (legg til 56 MB for tester)
Estimert byggetid: 0.5 SBU (legg til 0,3 SBU for tester; begge bruker parallellisme=4)
texlive-20240312 (eller install-tl-unx) (for å gjenoppbygge dokumentasjonen)
Installer libunistring ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libunistring-1.2 &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libunwind pakken inneholder et flyttbart og effektivt C programmeringsgrensesnitt (API) for å bestemme anropskjeden til et program. API-en gir i tillegg midler til å manipulere bevart (callee-lagret) tilstand for hver anropsramme og for å gjenoppta kjøringen når som helst i anropskjeden (ikke-lokal goto). API-en støtter både lokal (samme prosess) og ekstern (på tvers av prosess) operasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.savannah.nongnu.org/releases/libunwind/libunwind-1.6.2.tar.gz
Nedlasting MD5 sum: f625b6a98ac1976116c71708a73dc44a
Nedlastingsstørrelse: 884 KB
Estimert diskplass som kreves: 20 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
texlive-20240312 (for latex2man)
Installer libunwind ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check. To tester, run-coredump-unwind og run-coredump-unwind-mdi er kjent for å mislykkes.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
userspace-rcu pakken gir et sett med brukerområde RCU (read-copy-update) biblioteker. Disse datasynkronisering biblioteker gir tilgang på lesesiden som skaleres lineært med antall kjerner. Det gjør det ved å la flere kopier av en gitt datastruktur leve samtidig, og ved å overvåke datastrukturen tilganger for å oppdage pause perioder etter hvilke minnegjenvinning er mulig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://lttng.org/files/urcu/userspace-rcu-0.14.0.tar.bz2
Nedlasting MD5 sum: 0cd5647788b048a5d6bbdb3b08d46299
Nedlastingsstørrelse: 648 KB
Estimert diskplass som kreves: 25 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Installer liburcu ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/liburcu-0.14.0 &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
libusb pakken inneholder et bibliotek som brukes av enkelte programmer for tilgang til USB enheter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libusb/libusb/releases/download/v1.0.27/libusb-1.0.27.tar.bz2
Nedlasting MD5 sum: 1fb61afe370e94f902a67e03eb39c51f
Nedlastingsstørrelse: 632 KB
Estimert diskplass som kreves: 5.7 MB
Estimert byggetid: mindre enn 0.1 SBU
For å få tilgang til rå USB enheter (de som ikke behandles som en disk av masselagrings driveren), må passende støtte være tilgjengelig i kjernen. Sjekk din kjernekonfigurasjon:
Device Drivers ---> [*] USB support ---> [USB_SUPPORT] <*/M> Support for Host-side USB [USB] [*] PCI based USB host interface [USB_PCI] # These are most common USB controller drivers for PC-like systems. # For modern systems often [USB_XHCI_HCD] is the only one needed # even if the system has USB 2.0 ports: < /*/M> xHCI HCD (USB 3.0) support [USB_XHCI_HCD] < /*/M> EHCI HCD (USB 2.0) support [USB_EHCI_HCD] < /*/M> OHCI HCD (USB 1.1) support [USB_OHCI_HCD]
For mer informasjon om oppsett av USB enheter, se the section called “Problemer med USB Enheter”.
Installer libusb ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis Doxygen er installert og du ønsker å bygge API dokumentasjonen, utfør følgende kommandoer:
pushd doc && doxygen -u doxygen.cfg && make docs && popd
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har laget API dokumentasjonen, installer den ved å
bruke følgende kommandoer som root bruker:
install -v -d -m755 /usr/share/doc/libusb-1.0.27/apidocs &&
install -v -m644 doc/api-1.0/* \
/usr/share/doc/libusb-1.0.27/apidocs
libuv pakken er en flerplattformstøttebibliotek med fokus på asynkron I/O.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://dist.libuv.org/dist/v1.48.0/libuv-v1.48.0.tar.gz
Nedlasting MD5 sum: a808517c32ebd07c561bf21a4e30aeab
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 14 MB (legg til 16 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.5 SBU for tester)
Installer libuv ved å kjøre følgende kommandoer:
sh autogen.sh kommandoen nedenfor mislykkes hvis ACLOCAL miljøvariabelen er satt som spesifisert i Xorg-7. Hvis den brukes, må ACLOCAL deaktiveres for denne pakken og deretter tilbakestilles for andre pakker.
sh autogen.sh && ./configure --prefix=/usr --disable-static && make
Hvis du installerte den valgfrie sphinx-8.0.2 python modulen, opprett manualsiden:
make man -C docs
Hvis du vil kjøre testene, kjør: make check som en ikke-root bruker.
Nå, som root bruker:
make install
Hvis du bygde manualsiden, installer den som root bruker:
install -Dm644 docs/build/man/libuv.1 /usr/share/man/man1
libxkbcommon er en tastaturoppsett kompilator og støttebibliotek som behandler et redusert undersett av nøkkeltastaturoppsett som definert av XKB spesifikasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xkbcommon.org/download/libxkbcommon-1.7.0.tar.xz
Nedlasting MD5 sum: b05b1a0d473189efb2dd995dd944f152
Nedlastingsstørrelse: 524 KB
Estimert diskplass som kreves: 26 MB (med tester)
Estimert byggetid: 0.5 SBU (med tester)
xkeyboard-config-2.42 (kjøretid)
libxcb-1.17.0, Wayland-1.23.0, og wayland-protocols-1.36
Doxygen-1.12.0 (for å generere dokumentasjonen) og Xvfb (fra Xorg-Server-21.1.13 eller Xwayland-24.1.2)
Installer libxkbcommon ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D enable-docs=false &&
ninja
For å teste resultatene, sørg for at Xvfb og xkeyboard-config-2.42 er tilgjengelig, utsted deretter: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D enable-docs=true:
Denne bryteren aktiverer generering av dokumentasjon.
Doxygen-1.12.0 er påkrevd.
mv -v /usr/share/doc/libxkbcommon{,-1.7.0}: Hvis du har laget dokumentasjonen, bruk denne kommandoen for å installere den i en versjonert mappe.
libxml2 pakken inneholder biblioteker og verktøy som brukes til å analysere XML filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libxml2/2.13/libxml2-2.13.3.tar.xz
Nedlasting MD5 sum: aeb92dc58cea91c95a10751327193a11
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 111 MB (med tester)
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; med tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/libxml2-2.13.3-upstream_fix-2.patch
Valgfri testpakke: https://www.w3.org/XML/Test/xmlts20130923.tar.gz - Dette aktiverer make check å gjøre fullstendig testing.
Valgrind-3.23.0 (kan brukes i testene)
Først, fiks et problem som forårsaker at xmlcatalog avgir falske advarsler når en ny mappefil opprettes. Patchen vil endre bygningssystemet, så regenerer bygningsskriptene etter utførelse av oppdateringen:
patch -Np1 -i ../libxml2-2.13.3-upstream_fix-2.patch
Installer libxml2 ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static \
--with-history \
--with-icu \
PYTHON=/usr/bin/python3 \
--docdir=/usr/share/doc/libxml2-2.13.3 &&
make
Hvis du lastet ned testpakken, kjør følgende kommando:
tar xf ../xmlts20130923.tar.gz
For å teste resultatene, kjør: make check > check.log.
Denne kommandoen vil skrive ut flere linjer med feilmeldinger
som “Failed to parse
xstc/...” fordi noen testfiler mangler
og disse meldingene kan trygt ignoreres. En oppsummering av
resultatene kan fås med grep -E
'^Total|expected|Ran' check.log. Hvis
Valgrind-3.23.0 er installert og du vil
se etter minnelekkasjer, bytt ut check med check-valgrind.
Testene bruker http://localhost/ for å teste
parsing av eksterne enheter. Hvis maskinen der du kjører
testene fungerer som et nettsted, kan testene henge,
avhengig av innholdet i filen som vises. Det anbefales
derfor å stenge serveren under testene, som root bruker:
systemctl stop httpd.service
Nå, som root bruker:
make install
Til slutt, forhindre at noen pakker unødvendig kobles til
ICU, bruk følgende kommandoer som root bruker:
rm -vf /usr/lib/libxml2.la && sed '/libs=/s/xml2.*/xml2"/' -i /usr/bin/xml2-config
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-history: Denne
bryteren aktiverer Readline
støtte når du kjører xmlcatalog eller
xmllint i
skallmodus.
--with-icu: Denne
bryteren aktiverer støtte for ICU, som gir ekstra Unicode støtte.
Dette er nødvendig for noen pakker i BLFS, for eksempel for
QtWebEngine.
PYTHON=/usr/bin/python3:
Tillater bygging av libxml2 modulen med Python3 i stedet for
Python2.
|
bestemmer kompilerings- og linkerflaggene som skal
brukes til å kompilere og koble programmer som
bruker |
|
|
brukes til å overvåke og manipulere XML og SGML mapper |
|
|
analyserer XML filer og sender ut rapporter (basert på alternativer) for å oppdage feil i XML koding |
|
|
gir funksjoner for programmer for å analysere filer som bruker XML formatet |
libxmlb pakken inneholder et bibliotek og et verktøy som hjelper til med å lage og søke etter binære XML blobber.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/hughsie/libxmlb/releases/download/0.3.19/libxmlb-0.3.19.tar.xz
Nedlasting MD5 sum: 0749fbcd7179b800c68ed8a6aa31cb74
Nedlastingsstørrelse: 104 KB
Estimert diskplass som kreves: 3.8 MB
Estimert byggetid: 0.1 SBU
GLib-2.80.4 (GObject Introspection anbefalt)
Installer libxmlb ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D gtkdoc=false .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtkdoc=false:
Denne bryteren deaktiverer bygging av API dokumentasjon.
Fjern den hvis du har GTK-Doc-1.34.0 installert og ønsker å
bygge API dokumentasjon.
-D introspection=false: Bruk
denne bryteren hvis du ikke har bygget GLib-2.80.4 med GObject
Introspection.
-D stemmer=true: Bruk denne
bryteren hvis du har libstemmer
installert og ønsker å bygge stemmer støtte.
libxslt pakken inneholder
XSLT biblioteker som brukes til å utvide libxml2 bibliotekene til å støtter XSLT
filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libxslt/1.1/libxslt-1.1.42.tar.xz
Nedlasting MD5 sum: 56bc5d89aa39d62002961c150fec08a0
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 34 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
docbook-xml-4.5 og docbook-xsl-nons-1.79.2
Selv om det ikke er en direkte avhengighet, er det mange applikasjoner som bruker libxslt som vil forvente docbook-xml-4.5 og docbook-xsl-nons-1.79.2 å være tilstede.
Installer libxslt ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libxslt-1.1.42 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
brukes til å finne ut pre-prosessoren, lenker og kompileringsflagg som er nødvendige for å bruke libxslt biblioteker i tredjepartsprogrammer |
|
|
brukes til å bruke XSLT stilark på XML dokumenter |
|
|
brukes til å gi utvidelser til XSLT funksjoner |
|
|
gir utvidelser til |
libwacom pakken inneholder et bibliotek som brukes for å identifisere grafikknettbrett fra Wacom eller diverse andre leverandører og deres modellspesifikke funksjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/linuxwacom/libwacom/releases/download/libwacom-2.12.2/libwacom-2.12.2.tar.xz
Nedlasting MD5 sum: 7005d961cc44995d8c04d586fa060c63
Nedlastingsstørrelse: 152 KB
Estimert diskplass som kreves: 7.9 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
libevdev-1.13.2 og libgudev-238
Doxygen-1.12.0, git-2.46.0, librsvg-2.58.3, Valgrind-3.23.0 (valgfritt for noen tester), og pytest-8.3.2 med python-libevdev og pyudev
Installer libwacom ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D tests=disabled &&
ninja
For å teste resultatene, kjør: ninja test. For å kjøre flere tester, installer pytest-8.3.2, python-libevdev, og pyudev, fjern deretter "-D tests=disabled" alternativ fra mesonlinjen ovenfor.
Hvis du oppgraderer fra en tidligere versjon av libwacom, fjern den gamle installasjon av enhetsdatabasen for å forhindre en potensiell duplisert match av enheter i tilfelle noen gamle databasefiler ikke blir overskrevet:
rm -rf /usr/share/libwacom
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D tests=disabled:
Denne parameteren deaktiverer noen av de mer avanserte
testene fordi de krever pytest-8.3.2 og andre to Python moduler
utenfor omfanget av BLFS for å fungere skikkelig.
yaml pakken inneholder et C bibliotek for å analysere og sende ut YAML (YAML Ain't Markup Language) kode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/yaml/libyaml/releases/download/0.2.5/yaml-0.2.5.tar.gz
Nedlasting MD5 sum: bb15429d8fb787e7d3f1c83ae129a999
Nedlastingsstørrelse: 596 KB
Estimert diskplass som kreves: 6.4 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer libyaml ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
log4cplus er en enkel å bruke C++20 logge API som gir thread--safe, fleksibelt og vilkårlig granulær kontroll over loggadministrasjon og konfigurasjon. Det er modellert etter Java log4j API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/log4cplus/log4cplus/releases/download/REL_2_1_1/log4cplus-2.1.1.tar.xz
Nedlasting MD5 sum: 6ee2555be39cd269086cc871c834e43f
Nedlastingsstørrelse: 919 KB
Estimert diskplass som kreves: 73 MB
Estimert byggetid: 0,3 SBU (Bruker parallellisme=4; legg til 0,5 SBU for tester)
Bygg log4cplus ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, utsted: make check.
Installer nå pakken som root
bruker:
make install
--with-qt5: Dette alternativet
aktiverer kompilering av et separat delt bibliotek
(liblog4cplusqt5debugappender) som implementerer
Qt5DebugAppender. Det krever at Qt5 og pkg-config er
tilgjengelig.
LZO er en datakomprimerings bibliotek som er egnet for data dekompresjon og komprimering i sanntid. Dette betyr at den favoriserer hastighet fremfor kompresjonsforhold.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz
Nedlasting MD5 sum: 39d3f3f9c55c87b1e5d6888e1420f4b5
Nedlastingsstørrelse: 588 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.3 SBU (med tester)
Installer LZO ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-shared \
--disable-static \
--docdir=/usr/share/doc/lzo-2.10 &&
make
For å teste resultatene, utsted: make check. Alle kontrollene skal bestå. Nå utsted make test for å kjøre hele pakken av tester.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
mtdev Pakken inneholder Multitouch Protocol Translation Library som brukes til å transformere alle varianter av kjerne MT (Multitouch) hendelser til den spaltede type B protokoll.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://bitmath.org/code/mtdev/mtdev-1.1.7.tar.bz2
Nedlasting MD5 sum: 483ed7fdf7c1e7b7375c05a62848cce7
Nedlastingsstørrelse: 296 KB
Estimert diskplass som kreves: 2.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer mtdev ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Node.js er en JavaScript kjøretid bygget på Chrome sin V8 JavaScript motor.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://nodejs.org/dist/v20.16.0/node-v20.16.0.tar.xz
Nedlasting MD5 sum: 7832164e52741a743106c5aadd34cdee
Nedlastingsstørrelse: 40 MB
Estimert diskplass som kreves: 1.0 GB (legg til 67 MB for tester)
Estimert byggetid: 12 SBU (legg til 2.9 SBU for tester: både ved å bruke parallellisme=8 og 8 CPUer tilgjengelige, deler av testene vil bruke alle tilgjengelige CPUer)
Brotli-1.1.0, c-ares-1.33.0, ICU-75.1, libuv-1.48.0, og nghttp2-1.62.1
http-parser og npm (en intern kopi av npm vil bli installert hvis den ikke er til stede)
Bygg Node.js ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--shared-brotli \
--shared-cares \
--shared-libuv \
--shared-openssl \
--shared-nghttp2 \
--shared-zlib \
--with-intl=system-icu &&
make
For å teste resultatene, utsted: make test-only. Av 4096 tester er 25 i "parallel" testpakken kjent for å mislykkes.
Nå, som root bruker:
make install && ln -sf node /usr/share/doc/node-20.16.0
--with-intl=system-icu: bruk
systemversjonen av icu.
Andre verdier er full-icu (for å
bygge en lokal, full icu
bibliotek) og small-icu (for å
bygge en lokal, minimal icu
bibliotek).
--shared-{brotli,cares,libuv,nghttp2,openssl,zlib}:
bruk de systeminstallerte bibliotekene i stedet for lokale
kopier.
--without-npm: ikke bygg
npm (bruk hvis du vil bygge
en separat npm senere).
--shared-http-parser: bruk det
system installert biblioteket i stedet for en lokal kopi.
NPth pakken inneholder en svært flyttbar POSIX/ANSI-C-basert bibliotek for Unix-plattformer som gir ikke-forebyggende prioritetsbasert planlegging for flere tråder av kjøring (multithreading) i hendelsesdrevne applikasjoner. Alle tråder kjøres i samme adresserom som serverapplikasjonen, men hver tråd har sin egen individuelle program-teller, run-time stack, signalmaske og feil variabel.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/npth/npth-1.7.tar.bz2
Nedlasting MD5 sum: 286274d0106ec408efebe4a399975b11
Nedlastingsstørrelse: 308 KB
Estimert diskplass som kreves: 2.6 MB (med kontroller)
Estimert byggetid: mindre enn 0.1 SBU (med kontroller)
Installer NPth ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
|
er et verktøy som brukes til å konfigurere og bygge applikasjoner basert på npth biblioteket. Den kan brukes til å spørre C-kompilatoren og linkerflagg som kreves for å kompilere og koble sammen applikasjoner mot npth bibliotek |
|
|
inneholder API funksjonene som brukes av New Portable Threads Library |
Netscape Portable Runtime (NSPR) gir en plattformnøytral API for systemnivå og libc lignende funksjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.mozilla.org/pub/nspr/releases/v4.35/src/nspr-4.35.tar.gz
Nedlasting MD5 sum: 5e0acf9fbdde85181bddd510f4624841
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 9.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer NSPR ved å kjøre følgende kommandoer:
cd nspr &&
sed -i '/^RELEASE/s|^|#|' pr/src/misc/Makefile.in &&
sed -i 's|$(LIBRARY) ||' config/rules.mk &&
./configure --prefix=/usr \
--with-mozilla \
--with-pthreads \
$([ $(uname -m) = x86_64 ] && echo --enable-64bit) &&
make
Testpakken er designet for å teste endringer i nss eller nspr og er ikke spesielt nyttig for å sjekke en utgitt versjon (f.eks. den trenger å kjøres på en ikke-optimalisert bygg med både nss- og nspr-mapper til stede ved siden av hverandre). For ytterligere detaljer, se redaktørens merknader for nss på https://wiki.linuxfromscratch.org/blfs/wiki/nss
Nå, som root bruker:
make install
sed -ri '/^RELEASE/s/^/#/' pr/src/misc/Makefile.in: Denne sed deaktiverer installasjon av to unødvendige skript.
sed -i 's#$(LIBRARY) ##' config/rules.mk: Denne sed deaktiverer installering av de statiske bibliotekene.
--with-mozilla: Denne
parameteren legger til Mozilla støtte til bibliotekene
(påkrevd hvis du vil bygge andre Mozilla produkter og koble
dem til disse bibliotekene).
--with-pthreads:
Denne parameteren tvinger bruk av systemets pthread
bibliotek.
--enable-64bit:
--enable-64bit parameteren er påkrevd på et x86_64 system for å
forhindre configure å mislykkes med
en påstand om at dette er et system uten pthread-støtte.
Testen [$(uname -m) = x86_64] sikrer at den ikke har effekt
på et 32 bit system.
|
gir kompilator og linker alternativer til andre pakker som bruker NSPR |
|
|
inneholder funksjoner som gir plattformuavhengighet for ikke-GUI operativsystemfasiliteter som tråder, trådsynkronisering, normal fil og nettverks I/O, intervalltiming og kalendertid, grunnleggende minneadministrasjon og delt bibliotekkobling |
|
|
inneholder funksjoner som implementerer mange av funksjonene som tilbys av libnspr4 |
|
|
inneholder funksjoner som gir datastrukturer |
PCRE2 pakken inneholder en ny generasjon av Perl Compatible Regular Expression biblioteker. Disse er nyttige for å implementere regulære uttrykksmønster samsvarende med samme syntaks og semantikk som Perl.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.44/pcre2-10.44.tar.bz2
Nedlasting MD5 sum: 9d1fe11e2e919c7b395e3e8f0a5c3eec
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 20 MB (med tester)
Estimert byggetid: 0.5 SBU (med tester)
Installer PCRE2 ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--docdir=/usr/share/doc/pcre2-10.44 \
--enable-unicode \
--enable-jit \
--enable-pcre2-16 \
--enable-pcre2-32 \
--enable-pcre2grep-libz \
--enable-pcre2grep-libbz2 \
--enable-pcre2test-libreadline \
--disable-static &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--enable-unicode:
Denne bryteren aktiverer Unicode støtte og inkluderer
funksjonene for håndtering av UTF-8/16/32 tegn strenger i
biblioteket.
--enable-pcre2-16:
Denne bryteren aktiverer 16 bit karakterstøtte.
--enable-pcre2-32:
Denne bryteren aktiverer 32 bit karakterstøtte.
--enable-pcre2grep-libz: Denne
bryteren legger til støtte for å lese .gz-komprimerte filer
til pcre2grep.
--enable-pcre2grep-libbz2:
Denne bryteren legger til støtte for å lese .bz2 compressed
filer til pcre2grep.
--enable-pcre2test-libreadline:
Denne bryteren legger til linjeredigering og
historiefunksjoner til pcre2test programmet.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-jit: dette
alternativet aktiverer Just-in-time kompilering, noe som kan
øke hastigheten på mønstertilpasning.
popt pakken inneholder popt biblioteker som brukes av noen programmer for å analysere kommandolinjealternativer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://ftp.rpm.org/popt/releases/popt-1.x/popt-1.19.tar.gz
Nedlasting MD5 sum: eaa2135fddb6eb03f2c87ee1823e5a78
Nedlastingsstørrelse: 584 KB
Estimert diskplass som kreves: 6.9 MB (inkluderer installasjon av dokumentasjon og tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Doxygen-1.12.0 (for å generere dokumentasjon)
Installer popt ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis du har Doxygen-1.12.0 installert og ønsker å bygge API dokumentasjonen, kjør:
sed -i 's@\./@src/@' Doxyfile && doxygen
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Hvis du har laget API dokumentasjonen, installer den ved å
bruke følgende kommandoer kjørt som root bruker:
install -v -m755 -d /usr/share/doc/popt-1.19 && install -v -m644 doxygen/html/* /usr/share/doc/popt-1.19
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Protobuf pakken inneholder verktøy og biblioteker for bruk av data i Googles datautvekslingsformat.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/protocolbuffers/protobuf/releases/download/v27.3/protobuf-27.3.tar.gz
Nedlasting MD5 sum: c7feee9c4a6856d39e2b9d6876a487f5
Nedlastingsstørrelse: 6.0 MB
Estimert diskplass som kreves: 79 MB
Estimert byggetid: 1.6 SBU (med parallellisme=4)
Abseil-cpp-20240722.0 og CMake-3.30.2
Installer Protobuf ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D protobuf_BUILD_TESTS=OFF \
-D protobuf_ABSL_PROVIDER=package \
-D protobuf_BUILD_LIBUPB=OFF \
-D protobuf_BUILD_SHARED_LIBS=ON \
-D utf8_range_ENABLE_INSTALL=OFF \
-G Ninja .. &&
ninja
Denne pakken kommer med en testpakke, men den krever gtest, som ikke er en del av BLFS.
Nå, som root bruker:
sed 's/utf8_range//' -i *.pc && ninja install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
sed 's/utf8_range//' -i *.pc: Denne kommandoen fjerner en gjenværende referanse til libutf8_range fra pkg-config-filene installert av denne pakken.
-D
protobuf_BUILD_TESTS=OFF: Denne parameteren
forhindrer testene fra å bygges pga gtest ikke er en
del av BLFS.
-D
protobuf_ABSL_PROVIDER=package: Denne parameteren
lar byggesystemet bruke den systeminstallerte kopien av
Abseil-cpp-20240722.0.
-D
protobuf_BUILD_SHARED_LIBS=ON: Denne parameteren
gjør det mulig å bygge delte versjoner av bibliotekene som
tilbys av denne pakken i stedet for statiske versjoner.
-D
utf8_range_ENABLE_INSTALL=OFF: Denne parameteren
deaktiverer installasjon av utf8_range statiske bibliotek.
Funksjonene levert av dette biblioteket og brukt av protobuf
er allerede innebygd i libprotobuf.so, så å installere en full
kopi av det statiske biblioteket sløser bare med diskplass.
|
analyserer protokollbufferfiler og genererer utdata for flere programmeringsspråk og formater |
|
|
inneholder funksjoner for bruk av data i Googles datautveksling format |
|
|
inneholder en enklere versjon av funksjonene for å utnytte data i Googles datautvekslingsformat |
|
|
inneholder funksjoner som brukes av protoc under kjøretid for utdata for flere programmeringsspråk og formater |
Protobuf-c pakken inneholder en implementering av dataserialiseringsformatet for Google Protocol Buffers i C.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/protobuf-c/protobuf-c/releases/download/v1.5.0/protobuf-c-1.5.0.tar.gz
Nedlasting MD5 sum: 03030a3994b9f89ef166336048992484
Nedlastingsstørrelse: 496 KB
Estimert diskplass som kreves: 60 MB
Estimert byggetid: 0.6 SBU
Først, bruk noen oppstrømsrettinger for å gjøre denne pakken kompatibel med protobuf-26.1:
patch -Np1 -i ../protobuf-c-1.5.0-consolidated_fixes-1.patch
Installer Protobuf-c ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Qca har som mål å gi en enkel og kryssplattform krypto API, ved hjelp av Qt datatyper og konvensjoner. Qca skiller API fra implementeringen ved å bruke programtillegg kjent som Providers.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/qca/2.3.9/qca-2.3.9.tar.xz
Nedlasting MD5 sum: d8aaa46356a322464f65b04d00d2bac6
Nedlastingsstørrelse: 748 KB
Estimert diskplass som kreves: 57 MB (med tester)
Estimert byggetid: 1.0 SBU (bruker parallellisme=4; med tester)
make-ca-1.14, CMake-3.30.2, Qt-6.7.2, og Which-2.21
Cyrus SASL-2.1.28, GnuPG-2.4.5, libgcrypt-1.11.0, libgpg-error-1.50, nss-3.103, NSPR-4.35, p11-kit-0.25.5, Doxygen-1.12.0, og Botan
Fiks plasseringen av CA sertifikatene:
sed -i 's@cert.pem@certs/ca-bundle.crt@' CMakeLists.txt
Installer Qca ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$QT6DIR \
-D CMAKE_BUILD_TYPE=Release \
-D QT6=ON \
-D QCA_INSTALL_IN_QT_PREFIX=ON \
-D QCA_MAN_INSTALL_DIR:PATH=/usr/share/man \
.. &&
make
For å teste resultatene, kjør make test.
Nå, som root bruker:
make install
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
til å bruke et høyere nivå av kompilatoroptimaliseringer.
-D QT6=ON: Sørger for
at pakkene er bygget med Qt-6.7.2.
-D
QCA_MAN_INSTALL_DIR:PATH=/usr/share/man:
Installer qca mansiden på vanlig plassering.
Denne pakken inneholder et sett med verktøy for å bruke C++20 korutiner med Qt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/danvratil/qcoro/archive/v0.10.0/qcoro-0.10.0.tar.gz
Nedlasting MD5 sum: 2af4e86cd77493cd41ba5ffcac33d5f4
Nedlastingsstørrelse: 148 KB
Estimert diskplass som kreves: 8.4 MB (Legg til 19 MB for tester)
Estimert byggetid: 0.4 SBU (Legg til 0.5 SBU for tester)
Installer qcoro ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$QT6DIR \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-D QCORO_BUILD_EXAMPLES=OFF \
-D BUILD_SHARED_LIBS=ON \
.. &&
make
For å teste denne pakken, fjern 'BUILD_TESTING=OFF'-parameteren over og kjør:
make test
Nå, som root bruker:
make install
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren er brukt
for å bruke et høyere nivå av kompilatoroptimaliseringer.
SpiderMonkey er Mozillas JavaScript og WebAssembly Engine, skrevet i C++ og Rust. I BLFS er kildekoden til SpiderMonkey hentet fra Firefox.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.mozilla.org/pub/firefox/releases/115.14.0esr/source/firefox-115.14.0esr.source.tar.xz
Nedlasting MD5 sum: deb750363b35d86629f824c0f8ba7f56
Nedlastingsstørrelse: 484 MB
Estimert diskplass som kreves: 3.6 GB (40 MB installert etter fjerning av 36 MB statisk lib; legg til 34 MB for hovedtestene og 37 MB for jit testene)
Estimert byggetid: 1.9 SBU (med parallellitet=4; legg til 1,1 SBU for hovedtestene og 3,7 SBU for jit testene)
ICU-75.1, rustc-1.80.1, og Which-2.21
LLVM-18.1.7 (med Clang, kreves for 32-bits systemer uten SSE2 funksjoner)
Hvis du bygger denne pakken på et 32-bits system, og Clang
ikke er installert eller du overstyrer standard
kompilatorvalg med miljøvariabelen CXX, vennligst les Parameterforklaringer
først.
I motsetning til de fleste andre pakker i BLFS, krever
instruksjonene nedenfor deg å untare firefox-115.14.0esr.tar.xz og gå inn i
firefox-115.14.0 mappen.
Pakke ut tarballen vil tilbakestille tillatelsene til
gjeldende mappe til 0755 hvis du har tillatelse til å gjøre
det. Hvis du gjør dette i en mappe hvor den klebrige biten
er satt, slik som /tmp vil
det ende med feilmeldinger:
tar: .: Cannot utime: Operation not permitted
tar: .: Cannot change mode to rwxr-xr-t: Operation not permitted
tar: Exiting with failure status due to previous errors
Dette avsluttes med ikke-null status, men det betyr
IKKE at det er et
reelt problem. Ikke untar som root bruker i en mappe der klebrig
biten er satt - det vil deaktivere den.
Installer SpiderMonkey ved å kjøre følgende kommandoer:
Hvis du kompilerer denne pakken i chroot, må du Først som
root bruker, sørge for at
/dev/shm er montert. Hvis du
ikke gjør dette, Python
konfigurasjonen vil mislykkes med en tilbakesporingsrapport
som viser til /usr/lib/pythonN.N/multiprocessing/synchronize.py.
Som root bruker, kjør:
mountpoint -q /dev/shm || mount -t tmpfs devshm /dev/shm
Å kompilere C++ koden respekterer $MAKEFLAGS og er standard til 'j1', rust koden vil bruke alle prosessorer.
mkdir obj &&
cd obj &&
../js/src/configure --prefix=/usr \
--disable-debug-symbols \
--disable-jemalloc \
--enable-readline \
--with-intl-api \
--with-system-icu \
--with-system-zlib &&
make
For å kjøre SpiderMonkey testpakken, utsted: make -C js/src check-jstests JSTESTS_EXTRA_ARGS="--timeout 300 --wpt=disabled". Det anbefales å omdirigere utdataene til en logg. Fordi vi bygger med systemets ICU, 39 tester (av totalt mer enn 50 000) er kjent for å mislykkes. Testpakken kjøres med alle CPU kjerner tilgjengelig: selv i en cgroup med færre kjerner tildelt, prøver den fortsatt å skape like mange testjobber som alle kjerner i systemet; Heldigvis vil kjernen fortsatt ikke kjøre disse jobbene på kjerner som ikke er tildelt cgroup, så CPU bruken er fortsatt kontrollert.
For å kjøre JIT testpakken, utsted: make -C js/src check-jit-test
JITTEST_EXTRA_ARGS="--timeout 300". I likhet
med SpiderMonkey testpakken er antallet testjobber det samme
som antall CPU kjerner i systemet selv om en cgroup brukes.
For å gjøre ting verre, det er seks tester som vil bruke 3 GB
hver av systemminne, slik at maksimal minnebruk kan være
opptil 18 GB hvis antall kjerner er seks eller flere. Å
kjører JIT testpakken uten nok minne kan påkalle kjernens
OOM-killer og forårsake stabilitets problemer. Hvis du ikke
har nok systemminne tilgjengelig, legg til -jN etter --timeout
300 med N erstattet av antall parallelle testjobber du
ønsker å starte. For eksempel, hvis du har 16 GB systemminne
tilgjengelig og 8 CPU kjerner, utsted make -C js/src check-jit-test
JITTEST_EXTRA_ARGS="--timeout=300 -j5" for å
kjøre testen med 5 parallelle jobber slik at minnebruken ikke
overskrider 15 GB.
Et problem i installasjonsprosessen forårsaker at ethvert program som kjører og lenker til SpiderMonkey delte bibliotek (for eksempel GNOME Shell) til å krasje hvis SpiderMonkey installeres på nytt, eller oppgraderes eller nedgraderes uten endring av hovedversjonsnummeret (115 in 115.14.0). For å omgå dette problemet, fjern den gamle versjonen av SpiderMonkey delte bibliotek før installasjonen:
rm -fv /usr/lib/libmozjs-115.so
Nå, som root bruker:
make install && rm -v /usr/lib/libjs_static.ajs && sed -i '/@NSPR_CFLAGS@/d' /usr/bin/js115-config
--disable-debug-symbols: Ikke
generer feilsøking symboler siden de er veldig store og de
fleste brukere ikke trenger det. Fjern det hvis du vil
feilsøke SpiderMonkey.
--disable-jemalloc:
Denne bryteren deaktiverer intern minneallokator brukt i
SpiderMonkey. jemalloc er bare beregnet for nettlesermiljøet
Firefox. For andre applikasjoner som bruker SpiderMonkey, kan
applikasjonen krasje siden elementer tildelt i jemalloc
allokatoren er frigjort på systemets (glibc) allokatoren.
--enable-readline:
Denne bryteren aktiverer Readline støtte i SpiderMonkey
kommandolinjegrensesnittet.
--with-intl-api:
Dette aktiverer internasjonaliseringsfunksjoner som kreves av
Gjs.
--with-system-*:
Disse parameterne tillater byggesystemet å bruke
systemversjoner av bibliotekene ovenfor. Disse kreves for
stabilitet.
rm -v /usr/lib/libjs_static.ajs: Fjern et stort statisk bibliotek som ikke brukes av noen BLFS pakke.
sed -i '/@NSPR_CFLAGS@/d' /usr/bin/js115-config: Forhindrer js115-config fra å bruke buggy CFLAGS.
: BLFS pleide å foretrekke å bruke gcc
og g++ i stedet for oppstrøms standardinnstillinger for
clang programmer. Med
utgivelsen av gcc-12 bygget tar lengre tid med gcc og g++,
først og fremst fordi ekstra advarsler, og er større. Send
disse miljøvariablene til konfigureringsskriptet hvis du
ønsker å fortsette å bruke gcc, g++ (ved å eksportere dem og
deaktivere dem etter installasjonen, eller ganske enkelt
forberede dem før ../js/src/configure
kommandoen). Hvis du bygger på et 32-bits system, se også
nedenfor.
CC=gcc
CXX=g++
: Bruk SSE2 i stedet for 387 for
flytende komma med dobbel presisjon operasjoner. Det er
nødvendig for GCC for å tilfredsstille forventningene til
oppstrøms (Mozilla) utviklere med flytende komma aritmetikk.
Bruk den hvis du bygger denne pakken på et 32-bits system med
GCC (hvis Clang ikke er installert eller GCC er eksplisitt
spesifisert). Merk at dette vil føre til at SpiderMonkey
krasjer på en prosessor uten SSE2 evne. Hvis du kjører
systemet på en så gammel prosessor, er Clang strengt tatt
nødvendig. Denne innstillingen er ikke nødvendig på 64-bits
systemer fordi alle 64-bits x86-prosessorer støtter SSE2 og
64-bits kompilatorer (både Clang og GCC) bruker SSE2 som
standard.
CXXFLAGS="-msse2
-mfpmath=sse"
SPIRV-Headers pakken inneholder deklarasjoner som tillater applikasjoner å bruke SPIR-V språket og instruksjonssettet med Vulkan. SPIR-V er et binært mellomspråk for representasjon av grafiske shader stadier og datakjerner for flere Khronos APIer, inkludert OpenGL og Vulkan.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/SPIRV-Headers/archive/vulkan-sdk-1.3.290.0/SPIRV-Headers-1.3.290.0.tar.gz
Nedlasting MD5 sum: e9da8c949d89084b8a0a6b128ca6a30d
Nedlastingsstørrelse: 512 KB
Estimert diskplass som kreves: 4.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Denne tarballen SPIRV-Headers-1.3.290.0.tar.gz vil pakke
ut til mappen SPIRV-Headers-vulkan-sdk-1.3.290.0.
Installer SPIRV-Headers ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -G Ninja .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
SPIRV-Tools pakken inneholder biblioteker og verktøy for behandling av SPIR-V moduler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/SPIRV-Tools/archive/vulkan-sdk-1.3.290.0/SPIRV-Tools-1.3.290.0.tar.gz
Nedlasting MD5 sum: 4a3f873a07f33cffd70890e17a34fe8b
Nedlastingsstørrelse: 3.0 MB
Estimert diskplass som kreves: 59 MB
Estimert byggetid: 1.0 SBU (med tester; begge bruker parallellisme=8)
Denne tarballen SPIRV-Tools-1.3.290.0.tar.gz vil pakke ut
til mappen SPIRV-Tools-vulkan-sdk-1.3.290.0.
Installer SPIRV-Tools ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D SPIRV_WERROR=OFF \
-D BUILD_SHARED_LIBS=ON \
-D SPIRV_TOOLS_BUILD_STATIC=OFF \
-D SPIRV-Headers_SOURCE_DIR=/usr \
-G Ninja .. &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
-D SPIRV_WERROR=OFF:
Denne bryteren stopper byggesystemet å behandle advarsler som
feil.
-D
BUILD_SHARED_LIBS=ON: Denne bryteren tvinger
byggesystemet å installere delte biblioteker i stedet for
statiske biblioteker.
-D
SPIRV_TOOLS_BUILD_STATIC=OFF: Denne bryteren
deaktiverer bygging av statiske versjoner av bibliotekene.
-D
SPIRV-Headers_SOURCE_DIR: Denne bryteren
forteller byggesystemet at SPIRV-Headers-1.3.290.0 er
installert i /usr. Dette er nødvendig siden byggesystemet
prøver å bruke en intern kopi som standard.
|
oppretter en SPIR-V binær modul fra SPIR-V Assembler tekst |
|
|
viser kontrollflytgrafen i "punkt" format |
|
|
disAssembler SPIR-V binær modul |
|
|
disAssembler automatisk en .SPV-fil for 'less' |
|
|
kobler sammen SPIR-V binære filer |
|
|
sjekker en SPIR-V binær modul for feil |
|
|
dumper informasjon fra en SPIR-V binær |
|
|
utfører optimaliseringer på SPIR-V binære filer |
|
|
reduserer en SPIR-V binær fil |
|
|
validerer en SPIR-V binær fil |
|
|
inneholder funksjoner for behandling av SPIR-V moduler |
SPIRV-LLVM-Translator pakken inneholder et bibliotek og verktøy for konvertering mellom LLVM IR og SPIR-V kode. Denne pakken støtter for øyeblikket bare OpenCL/Compute versjonen av SPIR-V.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/v18.1.3/SPIRV-LLVM-Translator-18.1.3.tar.gz
Nedlasting MD5 sum: 094ff60909ada1e76e87da90df053be6
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 36 MB
Estimert byggetid: 0.6 SBU (med parallellisme=4)
Installer SPIRV-LLVM-Translator ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_SHARED_LIBS=ON \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D LLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=/usr \
-G Ninja .. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
-D
BUILD_SHARED_LIBS=ON: Denne parameteren tvinger
bygging av delte versjoner av bibliotekene.
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
-D
LLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=/usr:
Denne parameteren lar byggesystemet bruke versjonen av
SPIRV-deklarasjoner som burde vært installert som en
avhengighet av SPIRV-Tools, i stedet for å laste ned en
unødvendig kopi av deklarasjonene.
Talloc gir en hierarkisk referanse tellet minnebassengsystem med destruktorer. Det er kjerneminne fordeler brukt i Samba.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.samba.org/ftp/talloc/talloc-2.4.2.tar.gz
Nedlasting MD5 sum: d29bdf75ce181e148c46b16a83de6d76
Nedlastingsstørrelse: 664 KB
Estimert diskplass som kreves: 10 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
docbook-xml-4.5, docbook-xsl-nons-1.79.2 og libxslt-1.1.42 (For å generere mansider), GDB-15.1, git-2.46.0, libnsl-2.0.1, libtirpc-1.3.5, Valgrind-3.23.0, og xfsprogs-6.9.0
Installer Talloc ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør make check.
Nå, som root bruker:
make install
Uchardet pakken inneholder en kodings detektorbibliotek som tar en sekvens av byter i et ukjent tegnkoding og forsøker å bestemme kodingen av teksten.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/uchardet/releases/uchardet-0.0.8.tar.xz
Nedlasting MD5 sum: 9e267be7aee81417e5875086dd9d44fd
Nedlastingsstørrelse: 217 KB
Estimert diskplass som kreves: 4.6 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer Uchardet ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D BUILD_STATIC=OFF \
-W no-dev .. &&
make
For å teste resultatene, kjør: make test.
Nå, som root bruker:
make install
-D BUILD_STATIC=OFF:
Denne bryteren deaktiverer bygging av den statiske versjonen
av biblioteket.
Umockdev pakken inneholder et rammeverk som lar en utvikler etterligne enheter for bruk i enhetstesting.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/martinpitt/umockdev/releases/download/0.18.3/umockdev-0.18.3.tar.xz
Nedlasting MD5 sum: a9b19aca965297d8e0e3b557de718856
Nedlastingsstørrelse: 484 KB
Estimert diskplass som kreves: 6.8 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
libgudev-238, libpcap-1.10.4, og Vala-0.56.17
GTK-Doc-1.34.0 og libgphoto2 (valgfritt for tester)
Installer Umockdev ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted som root bruker: ninja test. En test må
kjøres i en X økt.
Nå, som root bruker:
ninja install
-Dgtk_doc=true: Bruk denne
bryteren hvis du har GTK-Doc-1.34.0 installert og ønsker å
bygge om og installere API dokumentasjonen.
|
registrerer Linux enheter og deres forfedre fra sysfs/udev eller registrerer ioctls for en enhet |
|
|
kjører et program under en umockdev testramme |
|
|
legger et program rundt |
|
|
gir API funksjoner som tillater etterligning av maskinvareenheter for enhetstesting |
utfcpp pakken inneholder et sett med include filer for å gi UTF-8 med C++ på en Portabel måte.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/nemtrif/utfcpp/archive/v4.0.5/utfcpp-4.0.5.tar.gz
Nedlasting MD5 sum: 8e0fe13266a7fa02f61340bf399986c3
Nedlastingsstørrelse: 36 KB
Estimert diskplass som kreves: 496 KB
Estimert byggetid: mindre enn 0.1 SBU
Installer utfcpp ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr ..
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Wayland er et prosjekt for å definere en protokoll for en compositor å snakke med sine klienter så vel som et bibliotek implementering av protokollen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/wayland/wayland/-/releases/1.23.0/downloads/wayland-1.23.0.tar.xz
Nedlasting MD5 sum: 23ad991e776ec8cf7e58b34cbd2efa75
Nedlastingsstørrelse: 236 KB
Estimert diskplass som kreves: 6.8 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Doxygen-1.12.0, Graphviz-12.1.0 og xmlto-0.0.29 (for å bygge API dokumentasjonen) og docbook-xml-4.5, docbook-xsl-nons-1.79.2 og libxslt-1.1.42 (for å bygge manualsidene)
Installer Wayland ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D documentation=false &&
ninja
For å teste resultatene, kjør: env -u XDG_RUNTIME_DIR ninja test.
Nå, som root bruker:
ninja install
-D
documentation=false: Denne bryteren er brukt for
å deaktivere bygging av API dokumentasjonen. Fjern den hvis
du har installerte valgfrie avhengigheter.
|
er et verktøy for å generere proxy metoder i wayland-client-protocol.h og wayland-server-protocol.h |
|
|
inneholder API funksjoner for å skrive Wayland applikasjoner |
|
|
inneholder API funksjoner for å administrere markører i Wayland applikasjoner |
|
|
inneholder API funksjoner for håndtering av OpenGL anrop i Wayland applikasjoner |
|
|
inneholder API funksjoner for å skrive Wayland compositors |
Wayland-Protocols pakken inneholder ekstra Wayland protokoller som legger til funksjonalitet utenfor protokoller allerede i Waylandkjernen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/wayland/wayland-protocols/-/releases/1.36/downloads/wayland-protocols-1.36.tar.xz
Nedlasting MD5 sum: d733380202a75ca837744e65b4dbadc5
Nedlastingsstørrelse: 96 KB
Estimert diskplass som kreves: 8.9 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Installer Wayland-protocols ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
wv pakken inneholder verktøy for å lese informasjon fra et MS Word dokument.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/wv/wv-1.2.9.tar.gz
Nedlasting MD5 sum: dbccf2e9f747e50c913b7e3d126b73f7
Nedlastingsstørrelse: 608 KB
Estimert diskplass som kreves: 25 MB
Estimert byggetid: 0.4 SBU
libgsf-1.14.52 og libpng-1.6.43
Installer wv ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken har ikke en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Xapian er et åpen kildekode søkemotorbibliotek.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://oligarchy.co.uk/xapian/1.4.26/xapian-core-1.4.26.tar.xz
Nedlasting MD5 sum: 973fe094231c50a76c68f8f29fce4a27
Nedlastingsstørrelse: 3.1 MB
Estimert diskplass som kreves: 146 MB (legg til 169 MB for tester)
Estimert byggetid: 0.5 SBU (legg til 11 SBU for tester; begge bruker parallellisme=4)
Valgrind-3.23.0 (for tester)
Installer Xapian ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/xapian-core-1.4.26 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
|
utfører en dokument-for-dokument kopi av en eller flere Xapian databaser |
|
|
er et kommandolinjeverktøy for å søke gjennom en database |
|
|
er et enkelt eksempelprogram som demonstrerer søkeutvidelse |
|
|
indekserer hvert avsnitt i en tekstfil som et Xapian dokument |
|
|
er et enkelt kommandolinjesøkeverktøy |
|
|
kontrollerer konsistensen til en database eller tabell |
|
|
komprimerer en database, eller slår sammen og komprimerer flere databaser |
|
|
rapporterer informasjon om den installerte versjonen av xapian |
|
|
inspiserer innholdet i en Xapian database |
|
|
leser og skriver brukermetadata |
|
|
inspiserer innholdet i et flintbord for utvikling eller feilsøking |
|
|
er en ekstern server for bruk med ProgClient |
|
|
replikerer en database fra en hovedserver til en lokal kopi |
|
|
gir tilbake databasereplikeringsforespørsler fra klienter |
|
|
er TCP nissen for bruk med Xapian sin eksterne bakstykke |
Avhengig av hva systemet ditt skal brukes til, kan du trenge eller ikke trenge grafikk og skrift bibliotekene. De fleste stasjonære maskiner vil ha dem til bruk med grafiske applikasjoner. De fleste servere på andre siden, vil ikke kreve dem.
AAlib er et bibliotek for å gjengi grafikk til ASCII Art.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/aa-project/aalib-1.4rc5.tar.gz
Nedlasting MD5 sum: 9801095c42bba12edebd1902bcf0a990
Nedlastingsstørrelse: 388 KB
Estimert diskplass som kreves: 6.5 MB
Estimert byggetid: 0.1 SBU
Xorg Biblioteker, Xorg Fonts (kjøretid), slang-2.3.3, og GPM-1.20.7
Løs et mindre problem med den medfølgende m4 filen:
sed -i -e '/AM_PATH_AALIB,/s/AM_PATH_AALIB/[&]/' aalib.m4
Endre standard X11 font fra Xorg Legacy Fonts til Xorg Fonts:
sed -e 's/8x13bold/-*-luxi mono-bold-r-normal--13-120-*-*-m-*-*-*/' \
-i src/aax.c
Fiks et overforbruk av enkelte ncurses interne datastrukturer for å tillate å bygge denne pakken med ncurses-6.5 eller nyere:
sed 's/stdscr->_max\([xy]\) + 1/getmax\1(stdscr)/' \
-i src/aacurses.c
For å tillate å bygge denne pakken med GCC-14 eller nyere,
legg til noen manglende #include
direktiver og fikse en dårlig return uttalelse for å gjøre koden
C99-kompatibel. Deretter regenerer configure skript for å
sikre at C koden for sonderingssystem også er C99-kompatibel:
sed -i '1i#include <stdlib.h>' \
src/aa{fire,info,lib,linuxkbd,savefont,test,regist}.c &&
sed -i '1i#include <string.h>' \
src/aa{kbdreg,moureg,test,regist}.c &&
sed -i '/X11_KBDDRIVER/a#include <X11/Xutil.h>' \
src/aaxkbd.c &&
sed -i '/rawmode_init/,/^}/s/return;/return 0;/' \
src/aalinuxkbd.c &&
autoconf
Installer AAlib ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--infodir=/usr/share/info \
--mandir=/usr/share/man \
--with-ncurses=/usr \
--disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
|
er en demo av AAlib, render en animert brann i ASCII Art |
|
|
gir informasjon for gjeldende innstillinger relatert til AAlib |
|
|
gir konfigurasjonsinformasjon for AAlib |
|
|
lagrer en font i en fil |
|
|
viser evnene til AAlib i en liten test |
|
|
er en samling av rutiner for å gjengi grafisk inndata i flyttbart format til ASCII Art. Den kan brukes gjennom mange programmer og har et veldig godt dokumentert API, slik at du enkelt kan sette det inn i dine egne programmer |
Babl pakken er et dynamiksk, enhver til enhver, pikselformat oversettelsesbibliotek.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gimp.org/pub/babl/0.1/babl-0.1.108.tar.xz
Nedlasting MD5 sum: 749169721b551882332a64ac17735de6
Nedlastingsstørrelse: 312 KB
Estimert diskplass som kreves: 13 MB (med tester)
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4; med tester)
GLib-2.80.4 (med GObject Introspection) og librsvg-2.58.3
Installer Babl ved å kjøre følgende kommandoer:
mkdir bld && cd bld && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install &&
install -v -m755 -d /usr/share/gtk-doc/html/babl/graphics &&
install -v -m644 docs/*.{css,html} /usr/share/gtk-doc/html/babl &&
install -v -m644 docs/graphics/*.{html,svg} /usr/share/gtk-doc/html/babl/graphics
install -v -m755 -d
/usr/share/gtk-doc/html/babl/graphics: Dette
og de påfølgende kommandoer installer bibliotekets html
dokumentasjon under /usr/share/gtk-doc/html hvor andre gtk
pakker legger den programmererorienterte dokumentasjonen.
Exiv2 inneholder et C++ bibliotek og et kommando linjeverktøy for å administrere bilde og video metadata.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/Exiv2/exiv2/archive/v0.28.3/exiv2-0.28.3.tar.gz
Nedlasting MD5 sum: 9944863400a43e79583b790f710b86c2
Nedlastingsstørrelse: 44 MB
Estimert diskplass som kreves: 133 MB (med tester)
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4, med tester)
Brotli-1.1.0, cURL-8.9.1, og inih-58
Installer Exiv2 ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D EXIV2_ENABLE_VIDEO=yes \
-D EXIV2_ENABLE_WEBREADY=yes \
-D EXIV2_ENABLE_CURL=yes \
-D EXIV2_BUILD_SAMPLES=no \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-G Ninja .. &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
-D
EXIV2_ENABLE_VIDEO=yes: Denne bryteren gjør det
mulig å administrere videometadata.
-D
EXIV2_ENABLE_WEBREADY=yes: Denne bryteren gjør
det mulig å administrere nettbildemetadata.
-D
EXIV2_BUILD_SAMPLES=no: Denne bryteren er
nødvendig for å undertrykke bygging og installasjon av
eksempler på programmer. Hvis prøveprogrammene bygges, 34
ekstra programmer er installert i /usr/bin.
-D
EXIV2_ENABLE_CURL=yes: Denne bryteren er
nødvendig for å aktivere nettverk/http funksjoner.
-D EXIV2_ENABLE_INIH=no: Bruk
denne bryteren hvis du ikke har installert inih-58.
-D EXIV2_ENABLE_BROTLI=no: Bruk
denne bryteren hvis du ikke har installert Brotli-1.1.0.
FreeType2 pakken inneholder et bibliotek som lar applikasjoner gjengi TrueType fonter riktig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/freetype/freetype-2.13.3.tar.xz
Nedlasting MD5 sum: f3b4432c4212064c00500e1ad63fbc64
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 33 MB (med tilleggsdokumentasjon)
Estimert byggetid: 0.2 SBU (med tilleggsdokumentasjon)
Ytterligere Dokumentasjon
Nedlasting (HTTP): https://downloads.sourceforge.net/freetype/freetype-doc-2.13.3.tar.xz
Nedlasting MD5 sum: 6affe0d431939398cc3c7cdd58d824f8
Nedlastingsstørrelse: 2.1 MB
harfBuzz-9.0.0 (sirkulær: bygg freetype, deretter harfbuzz, og installer freetype på nytt), libpng-1.6.43, og Which-2.21
Brotli-1.1.0 og librsvg-2.58.3
Hvis du lastet ned tilleggsdokumentasjonen, pakk den ut i kildetreet ved å bruke følgende kommando:
tar -xf ../freetype-doc-2.13.3.tar.xz --strip-components=2 -C docs
Installer FreeType2 ved å kjøre følgende kommandoer:
sed -ri "s:.*(AUX_MODULES.*valid):\1:" modules.cfg &&
sed -r "s:.*(#.*SUBPIXEL_RENDERING) .*:\1:" \
-i include/freetype/config/ftoption.h &&
./configure --prefix=/usr --enable-freetype-config --disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du lastet ned den valgfrie dokumentasjonen, installer
den som root bruker:
cp -v -R docs -T /usr/share/doc/freetype-2.13.3 && rm -v /usr/share/doc/freetype-2.13.3/freetype-config.1
sed -ri ...:
Første kommando aktiverer GX/AAT og OpenType tabellvalidering
og andre kommando aktiverer Subpixel Rendering. Noter at
Subpixel Rendering kan ha patentproblemer. Sørg for å lese
'Other patent issues' delen av
https://freetype.org/patents.html
før du aktiverer dette alternativet.
--enable-freetype-config: Denne
bryteren sørger for at mansiden for freetype-config er
installert.
--without-harfbuzz: Hvis
harfbuzz er installert før
freetype uten freetype støtte, bruk denne bryteren for
å unngå en byggefeil.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Fontconfig pakken inneholder et bibliotek og støtteprogrammer som brukes til å konfigurere og tilpasse skrifttilgang.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.15.0.tar.xz
Nedlasting MD5 sum: 5bb3a2829aecb22ae553c39099bd0d6a
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 17 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
bubblewrap-0.9.0 (brukt av noen tester), cURL-8.9.1 og UnZip-6.0 (begge brukt av noen tester for å laste ned og trekke ut testfiler), JSON-C-0.17, DocBook-utils-0.6.14 og libxml2-2.13.3, texlive-20240312 (eller install-tl-unx)
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Hvis du har DocBook Utils
installert og du fjerner --disable-docs parameteren
fra configure
kommandoen nedenfor, må du ha SGMLSpm-1.1 og
texlive-20240312 installert
også, ellers Fontconfig
bygge vil mislykkes.
Installer Fontconfig ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-docs \
--docdir=/usr/share/doc/fontconfig-2.15.0 &&
make
For å teste resultatene, kjør: make check. En test er kjent for å mislykkes hvis kjernen ikke støtter brukernavneområder. Noen tester vil laste ned noen fontfiler via Internett.
Nå, som root bruker:
make install
Hvis du ikke fjernet --disable-docs parameteren fra
configure
kommandoen, kan du installere den forhåndsgenererte
dokumentasjonen ved å bruke følgende kommandoer som
root bruker:
install -v -dm755 \
/usr/share/{man/man{1,3,5},doc/fontconfig-2.15.0/fontconfig-devel} &&
install -v -m644 fc-*/*.1 /usr/share/man/man1 &&
install -v -m644 doc/*.3 /usr/share/man/man3 &&
install -v -m644 doc/fonts-conf.5 /usr/share/man/man5 &&
install -v -m644 doc/fontconfig-devel/* \
/usr/share/doc/fontconfig-2.15.0/fontconfig-devel &&
install -v -m644 doc/*.{pdf,sgml,txt,html} \
/usr/share/doc/fontconfig-2.15.0
--disable-docs: Denne
bryteren unngår å bygge dokumentasjon (utgivelsens tarball
inkluderer forhåndsgenerert dokumentasjon).
Hovedkonfigurasjonsfilen for Fontconfig er /etc/fonts/fonts.conf. Vanligvis vil du
ikke redigere denne filen. Den vil også lese /etc/fonts/local.conf og eventuelle filer
i /etc/fonts/conf.d. For å
sette en ny fontmappe i konfigurasjonen, opprett (eller
oppdater) /etc/fonts/local.conf filen med din
lokale informasjon eller legg til en ny fil /etc/fonts/conf.d. Standard plassering av
fonter i Fontconfig er:
/usr/share/fonts
~/.local/share/fonts
~/.fonts (dette er nå foreldet, men for øyeblikket fungerer det fortsatt)
Fontconfig sender også
mange eksempel konfigurasjonsfiler i /usr/share/fontconfig/conf.avail mappen.
Symlinking spesifikke filer til /etc/fonts/conf.d vil aktivere dem.
Standardoppsettet er generelt godt nok for de fleste
brukere. Se /etc/fonts/conf.d/README for en
beskrivelse av konfigurasjonsfilene.
Mer informasjon om konfigurering Fontconfig finnes i brukermanualen i file:///usr/share/doc/fontconfig-2.15.0/fontconfig-user.html.
|
brukes til å lage hurtiglager for fontinformasjon |
|
|
brukes til å lese hurtiglageret for fontinformasjon |
|
|
viser regelsettfilenes informasjon om systemet |
|
|
brukes til å lage fontlister |
|
|
brukes til å matche tilgjengelige fonter, eller finne fonter som matcher et gitt mønster |
|
|
brukes til å analysere mønster (tomt mønster som standard) og vise det analyserte resultatet |
|
|
brukes til å søke etter skriftfiler og skrive ut resulterende mønstre |
|
|
brukes til å skanne skriftfiler og mapper, og skrive ut resultatets mønstre |
|
|
brukes til å validere fontfiler |
|
|
inneholder funksjoner som brukes av Fontconfig programmer og også av andre programmer for å konfigurere eller tilpasse font adgang |
FriBidi pakken er en implementering av Unicode Bidirectional Algorithm (BIDI). Dette er nyttig for å støtte Arabiske og hebraiske alfabeter i andre pakker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/fribidi/fribidi/releases/download/v1.0.15/fribidi-1.0.15.tar.xz
Nedlasting MD5 sum: ccf2b019162b4e5e6569875d0641bc5f
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 21 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer FriBidi ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
|
er et kommandolinjegrensesnitt til |
|
|
inneholder funksjoner som brukes til å implementere Unicode Bidirectional Algorithm |
Denne pakken inneholder GEneric Graphics Library, som er en grafbasert bildebehandlingsformat.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gimp.org/pub/gegl/0.4/gegl-0.4.48.tar.xz
Nedlasting MD5 sum: a96ae32d46855ab4eefa1fce2dbefda1
Nedlastingsstørrelse: 5.5 MB
Estimert diskplass som kreves: 80 MB (Legg til 4 MB for tester)
Estimert byggetid: 0.7 SBU (legg til 0,1 SBU for tester, begge med parallellitet=4)
babl-0.1.108 og JSON-GLib-1.8.0
GLib-2.80.4 (med GObject Introspection), Graphviz-12.1.0 (bygget med pango og libpng), Pygments-2.18.0, og PyGObject-3.48.2
asciidoc-10.2.1, Cairo-1.18.0, FFmpeg-7.0.2 (for øyeblikket ødelagt), gdk-pixbuf-2.42.12, gexiv2-0.14.3, GTK-Doc-1.34.0, JasPer-4.2.4, Little CMS-2.16, libraw-0.21.2, librsvg-2.58.3, libspiro-20220722, libtiff-4.6.0, libwebp-1.4.0, Pango-1.54.0, Poppler-24.08.0, Ruby-3.3.4, SDL2-2.30.6, v4l-utils-1.28.1, Vala-0.56.17, LuaJIT, lensfun, LuaJIT, libnsgif, libumfpack, maxflow, MRG, OpenCL, OpenEXR, poly2tri-c, source-highlight, og w3m
Hvis du installerer over en tidligere versjon av gegl, en av modulene må fjernes. Som
root bruker, kjør følgende
kommando for å fjerne den:
rm -f /usr/lib/gegl-0.4/vector-fill.so
Installer gegl ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D libav=disabled .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
-D libav=disabled:
Denne bryteren deaktiverer byggestøtte for ffmpeg fordi den
nyeste versjonen fører til at byggingen mislykkes.
-D docs=true: Bruk denne bryteren
til å bygge og installere dokumentasjonen (krever GTK-Doc-1.34.0).
|
er et kommandolinjeverktøy for grensesnitt med gegl biblioteket |
|
|
er et enkelt bildeforskjell deteksjonsverktøy for bruk i regresjontesting |
|
|
gir infrastruktur for å gjøre etterspørselsbasert bufret ikke-destruktivt bilderedigering på større enn RAM buffere |
|
|
er GEGL N-point bildedeformasjonsbibliotek |
giflib pakken inneholder biblioteker for lesing og skriving av GIF-er samt programmer for konvertering og arbeider med GIF filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://sourceforge.net/projects/giflib/files/giflib-5.2.2.tar.gz
Nedlasting MD5 sum: 913dd251492134e235ee3c9a91987a4d
Nedlastingsstørrelse: 440 KB
Estimert diskplass som kreves: 4.0 MB (med dokumentasjon)
Estimert byggetid: mindre enn 0.1 SBU (med dokumentasjon)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/giflib-5.2.2-upstream_fixes-1.patch
Først, hindre byggeprosessen fra å installere XML filer i stedet for manualsider:
patch -Np1 -i ../giflib-5.2.2-upstream_fixes-1.patch
Fjern deretter en unødvendig avhengighet av ImageMagick-7.1.1-36 ved å flytte en fil til et forventet sted:
cp pic/gifgrid.gif doc/giflib-logo.gif
Installer giflib ved å kjøre følgende kommandoer:
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PREFIX=/usr install &&
rm -fv /usr/lib/libgif.a &&
find doc \( -name Makefile\* -o -name \*.1 \
-o -name \*.xml \) -exec rm -v {} \; &&
install -v -dm755 /usr/share/doc/giflib-5.2.2 &&
cp -v -R doc/* /usr/share/doc/giflib-5.2.2
rm -fv /usr/lib/libgif.a: Denne kommandoen fjerner et statisk bibliotek som ikke brukes av noen BLFS pakke.
find doc ... -exec rm -v {}
\;: Denne kommandoen fjerner Makefiles, man og xml filer fra
dokumentasjonsmappen som ellers ville blitt installert av
kommandoene som følger.
|
konverterer bilder lagret som GIF til 24-bits RGB bilder |
|
|
dumper GIF data i et tekstformat, eller udumper dem til en GIF |
|
|
endrer fargekart for GIF bilder |
|
|
prøver klønete å fikse avkortede GIF bilder |
|
|
skriver ut (bare tekst) generell informasjon om en GIF fil |
|
|
er et GIF transformasjonsverktøy |
|
|
inneholder API funksjoner som kreves av giflib programmer og andre programmer som trenger bibliotekfunksjonalitet for å lese, skrive og manipulere GIF bilder |
Glad pakken inneholder en generator for lasting av Vulkan, OpenGL, EGL, GLES og GLX kontekster.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/Dav1dde/glad/archive/v2.0.6/glad-2.0.6.tar.gz
Nedlasting MD5 sum: 350c34126e47988f378285adf4cf2efc
Nedlastingsstørrelse: 620 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Glad ved å kjøre følgende kommandoer:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer med en testpakke, men den kan ikke kjøres uten å installere de eksterne avhengighetene som er oppført ovenfor.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user glad2
OpenGL Mathematics (GLM) er en C++ kun deklarasjoner matematikkbibliotek for grafikkprogramvare basert på OpenGL Shading Språkspesifikasjoner (GLSL). Et utvidelsessystem som gir utvidete evner som matrisetransformasjoner og kvaternioner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/g-truc/glm/archive/1.0.1/glm-1.0.1.tar.gz
Nedlasting MD5 sum: f824ac50e16310a95279032f82cbd341
Nedlastingsstørrelse: 4.4 MB
Estimert diskplass som kreves: 44 MB
Estimert byggetid: mindre enn 0.1 SBU
Denne pakken er uvanlig siden den inkluderer funksjonaliteten i deklarasjonsfiler. Vi kopierer dem bare på plass.
Som root bruker:
cp -r glm /usr/include/ && cp -r doc /usr/share/doc/glm-1.0.1
Graphite2 er en gjengivelsesmotor for grafitt fonter. Dette er TrueType fonter med tilleggstabeller som inneholder smart gjengivelse av informasjon og ble opprinnelig utviklet for å støtte komplekse ikke-romerske skriftsystemer. De kan inneholde regler for f.eks. ligaturer, glyph substitusjon, kerning, begrunnelse - dette kan gjøre dem nyttige selv på tekst skrevet i romerske skriftsystemer som engelsk. Merk at firefox gir som standard en intern kopi av grafittmotoren og kan ikke bruke en systemversjon (selv om den kan oppdateres for å bruke den), men den bør også dra nytte av tilgjengeligheten av grafitt fonter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/silnrsi/graphite/releases/download/1.3.14/graphite2-1.3.14.tgz
Nedlasting MD5 sum: 1bccb985a7da01092bfb53bb5041e836
Nedlastingsstørrelse: 6.3 MB
Estimert diskplass som kreves: 30 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
FreeType-2.13.3, silgraphite for å bygge comparerender test- og benchmarkingverktøy, og hvis det er tilstede, og harfBuzz-9.0.0 for å legge til mer funksjonalitet til den (dette er en sirkulær avhengighet, du må først bygge graphite2 uten harfbuzz).
For å bygge dokumentasjonen: asciidoc-10.2.1, Doxygen-1.12.0, texlive-20240312 (or install-tl-unx), og dblatex (for PDF dokumentasjon)
For å kjøre testpakken trenger du FontTools (Python 3 modul), ellers vil, "cmp" testen feile.
Du trenger minst en passende graphite font for at pakken skal være nyttig.
Noen tester mislykkes hvis FontTools (Python 3 modul) ikke er installert. Disse testene kan fjernes med:
sed -i '/cmptest/d' tests/CMakeLists.txt
Installer Graphite2 ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr .. && make
Hvis du ønsker å bygge dokumentasjonen, kjør:
make docs
For å teste resultatene, utsted: make test. En test navngitt
nametabletest er kjent for å
mislykkes.
Nå, som root bruker:
make install
Hvis du bygde dokumentasjonen, installer, som root bruker:
install -v -d -m755 /usr/share/doc/graphite2-1.3.14 &&
cp -v -f doc/{GTF,manual}.html \
/usr/share/doc/graphite2-1.3.14 &&
cp -v -f doc/{GTF,manual}.pdf \
/usr/share/doc/graphite2-1.3.14
-D CMAKE_VERBOSE_MAKEFILE=ON:
Denne bryteren slås på detaljert modus bygging.
HarfBuzz pakken inneholder en OpenType tekst formings motor.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/harfbuzz/harfbuzz/releases/download/9.0.0/harfbuzz-9.0.0.tar.xz
Nedlasting MD5 sum: 0035c129cb1646ab1cff65e5ef7153db
Nedlastingsstørrelse: 17 MB
Estimert diskplass som kreves: 138 MB (Med tester)
Estimert byggetid: 0.7 SBU (Med tester; begge bruker parallellisme=4)
GLib-2.80.4 (påkrevd for Pango; GObject Introspection påkrevd for å bygge GNOME), Graphite2-1.3.14 (nødvendig for å bygge texlive-20240312 eller LibreOffice-24.8.0.3 med system harfbuzz), ICU-75.1, og FreeType-2.13.3 (etter at harfbuzz er installert, installer freetype på nytt)
Cairo-1.18.0 (sirkulær: bygge cairo og alt de anbefalte avhengigheter, inkludert harfbuzz, først, deretter gjenoppbygge harfbuzz hvis cairo bakstykke er nødvendig), git-2.46.0, GTK-Doc-1.34.0, FontTools (Python 3 modul, for testpakken), ragel, og wasm-micro-runtime
Anbefalte avhengigheter er ikke strengt nødvendig for å bygge pakken. Det kan imidlertid hende du ikke får forventede resultater ved kjøretid hvis du ikke installerer dem. Vennligst ikke rapporter feil med denne pakken hvis du ikke har installert de anbefalte avhengighetene.
Installer HarfBuzz ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D graphite2=enabled &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D graphite2=enabled:
Denne bryteren aktiverer Graphite2 støtte, som er nødvendig for å
bygge texlive-20240312 eller
LibreOffice-24.8.0.3 med system
harfbuzz.
-D docs=disabled: Hvis GTK-Doc-1.34.0 er installert, er
dokumentasjonen bygget og installert. Denne bryteren
forhindrer det.
|
brukes til å samle informasjon om fonter installert på systemet |
|
|
gir settet med tegn i en streng, representert som enkelttegn og/eller enkelttegnsnavn. Eksempel: hb-ot-shape-closure /usr/share/fonts/dejavu/DejaVuSans.ttf "Hei Verden." |
|
|
brukes til å konvertere tekststrenger til posisjonerte glyfer |
|
|
brukes til å lage undersett av fonter og vise tekst ved hjelp av dem |
|
|
viser en grafisk visning av en strengform ved hjelp av en bestemt skrifttype som et sett med glyfer. Utdataformatet er automatisk definert av filtypen, de som støttes er ansi/png/svg/pdf/ps/eps. For eksempel: hb-view --output-file=hello.png /usr/share/fonts/dejavu/DejaVuSans.ttf "Hei Verden." |
|
|
er HarfBuzz tekstformingsbiblioteket |
|
|
gir Cairo integrasjon for Harfbuzz tekstformingsbiblioteket |
|
|
gir GObject integrasjon for HarfBuzz tekstformingsbiblioteket |
|
|
gir ICU integrasjon for HarfBuzz tekstformingsbiblioteket |
|
|
gir API funksjoner for å utføre delinnstillingsoperasjoner på font filer |
JasPer Prosjektet er en åpen kildekode initiativ for å tilby en gratis programvarebasert referanseimplementering av JPEG-2000 kodeken.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/jasper-software/jasper/archive/version-4.2.4/jasper-4.2.4.tar.gz
Nedlasting MD5 sum: aa4df693b90223fe6848b34cf1208624
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 9.4 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
Freeglut-3.6.0 (påkrevd for jiv), Doxygen-1.12.0 (nødvendig for å generere html dokumentasjon), og texlive-20240312 (nødvendig for å generere pdf dokumentasjon)
Tarballen jasper-4.2.4.tar.gz vil pakkes ut til jasper-version-4.2.4.
Installer JasPer ved å kjøre følgende kommandoer:
mkdir BUILD &&
cd BUILD &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D JAS_ENABLE_DOC=NO \
-D ALLOW_IN_SOURCE_BUILD=YES \
-D CMAKE_INSTALL_DOCDIR=/usr/share/doc/jasper-4.2.4 \
.. &&
make
For å teste resultatene, kjør: make test.
Nå, som root bruker:
make install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
-D JAS_ENABLE_DOC=NO:
Dette alternativet deaktiverer gjenoppbyggingen av
dokumentasjonen hvis texlive-20240312 er installert.
-D
ALLOW_IN_SOURCE_BUILD=YES: Denne bryteren
tillater å bygge fra kildetreet. I vårt tilfelle er dette
nødvendig for å la oss bygge inne i BUILD mappen i stedet for
å måtte opprette en annen mappe utenfor kildetreet.
The Little Colour Management System er en fargeadministrasjonsmotor med lite fotavtrykk, med spesielt fokus på nøyaktighet og ytelse. Det bruker International Color Consortium standarden (ICC), som er en moderne standard for fargestyring.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/mm2/Little-CMS/releases/download/lcms2.16/lcms2-2.16.tar.gz
Nedlasting MD5 sum: f219d87c247957c97020a3859d8d6fa8
Nedlastingsstørrelse: 7.3 MB
Estimert diskplass som kreves: 22 MB (med testene)
Estimert byggetid: 0.2 SBU (med testene)
Installer Little CMS2 ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libavif pakken inneholder et bibliotek som brukes for koding og dekoding av AVIF filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/AOMediaCodec/libavif/archive/v1.1.1/libavif-1.1.1.tar.gz
Nedlasting MD5 sum: 633c2113d52aecab5f0073da3456e2ae
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: mindre enn 0.1 SBU
gtest, libdav1d, libyuv, rav1e, og svt-av1
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Installer libavif ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D AVIF_CODEC_AOM=SYSTEM \
-D AVIF_BUILD_GDK_PIXBUF=ON \
-D AVIF_LIBYUV=OFF \
-G Ninja .. &&
ninja
For å teste pakken (merk at det vil føre til at byggesystemet laster ned en kopi av gtest og bygg testpakken med kopien), utsted:
cmake .. -D AVIF_GTEST=LOCAL -D AVIF_BUILD_TESTS=ON && ninja && ninja test
Nå, som root bruker:
ninja install
AV1 formatet må legges til lasterens hurtiglager. Som
root bruker:
gdk-pixbuf-query-loaders --update-cache
-D AVIF_CODEC_AOM=ON:
Denne bryteren aktiverer AOM kodeken. Denne pakken er
ubrukelig uten minst én kodek innebygd.
-D
AVIF_BUILD_GDK_PIXBUF=ON: Denne bryteren bygger
AVIF lasteren for applikasjoner som bruker gdk-pixbuf. Fjern
den hvis du ikke har installert gdk-pixbuf-2.42.12.
-D AVIF_LIBYUV=OFF: Bruk denne
bryteren hvis du ikke har installert libyuv.
-D AVIF_CODEC_DAV1D=SYSTEM: Bruk
denne bryteren hvis du har installert libdav1d og
ønsker å bruke den som en kodek.
-D AVIF_CODEC_RAV1E=SYSTEM: Bruk
denne bryteren hvis du har installert rav1e og ønsker å bruke
den som en kodek.
-D AVIF_CODEC_SVT=SYSTEM: Bruk
denne bryteren hvis du har installert svt-av1 og
ønsker å bruke den som en kodek.
libexif pakken inneholder et bibliotek for å analysere, redigere og lagre EXIF data. De fleste digitale kameraer produserer EXIF filer, som er JPEG-filer med ekstra tagger som inneholder informasjon om bildet. Alle EXIF tagger beskrevet i EXIF-standard 2.1 støttes.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libexif/libexif/releases/download/v0.6.24/libexif-0.6.24.tar.bz2
Nedlasting MD5 sum: 00ea6e7ff62d3fd41ea9b2139746703c
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: 0.1 SBU
Installer libexif ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--with-doc-dir=/usr/share/doc/libexif-0.6.24 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Dokumentasjon ble bygget og installert hvis du har
avhengighetene vist ovenfor installert. Hvis du ikke har
avhengighetene installert, er det en komprimert tarball i
kildetreets doc mappe som kan
bli pakket ut i /usr/share/doc/libexif-0.6.24.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libgxps pakken gir et grensesnitt for å manipulere XPS dokumenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgxps/0.3/libgxps-0.3.2.tar.xz
Nedlasting MD5 sum: 0527ac7c8c405445e96a5baa6019a0c3
Nedlastingsstørrelse: 80 KB
Estimert diskplass som kreves: 5.4 MB
Estimert byggetid: 0.1 SBU
GTK+-3.24.43, Little CMS-2.16, libarchive-3.7.4, libjpeg-turbo-3.0.1, libtiff-4.6.0, og libxslt-1.1.42
Installer Libgxps ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
libjpeg-turbo er en forgrening av originalen IJG libjpeg som bruker SIMD for å akselerere grunnleggende JPEG komprimering og dekompresjon. libjpeg er et bibliotek som implementerer JPEG bildekoding, dekoding og transkoding.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/libjpeg-turbo/libjpeg-turbo-3.0.1.tar.gz
Nedlasting MD5 sum: 1fdc6494521a8724f5f7cf39b0f6aff3
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 55 MB (med tester)
Estimert byggetid: 0.5 SBU (med tester; begge bruker parallellisme=4)
NASM-2.16.03 eller yasm-1.3.0 (for å bygge pakken med optimaliserte sammenstillingsrutiner)
Installer libjpeg-turbo ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=RELEASE \
-D ENABLE_STATIC=FALSE \
-D CMAKE_INSTALL_DEFAULT_LIBDIR=lib \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D CMAKE_INSTALL_DOCDIR=/usr/share/doc/libjpeg-turbo-3.0.1 \
.. &&
make
For å teste resultatene, kjør: make test.
Nå, som root bruker:
make install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
-D WITH_JPEG8=ON: Denne bryteren
muliggjør kompatibilitet med libjpeg versjon 8.
|
komprimerer bildefiler for å produsere en JPEG/JFIF fil på standard utgang. For øyeblikket støttede inndatafilformater er: PPM (PBMPLUS fargeformat), PGM (PBMPLUS gråskalaformat), BMP og Targa |
|
|
dekomprimerer bildefiler fra JPEG/JFIF format til enten PPM (PBMPLUS fargeformat), PGM (PBMPLUS gråskalaformat), BMP eller Targa format |
|
|
brukes til tapsfri transformasjon av JPEG filer |
|
|
viser tekstkommentarer fra en JPEG fil |
|
|
brukes til å ytelsesteste ytelsen til libjpeg-turbo |
|
|
setter inn tekstkommentarer i en JPEG fil |
|
|
inneholder funksjoner som brukes til å lese og skrive JPEG bilder |
libjxl pakken inneholder referanse implementering av JPEG XL bildeformatet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libjxl/libjxl/archive/v0.10.3/libjxl-0.10.3.tar.gz
Nedlasting MD5 sum: 0fd3db8956a41d13b5e8eac4fe61d8d3
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 42 MB
Estimert byggetid: 0.6 SBU (med parallellisme=4)
Brotli-1.1.0, CMake-3.30.2, giflib-5.2.2, highway-1.2.0, Little CMS-2.16, libjpeg-turbo-3.0.1, og libpng-1.6.43
gdk-pixbuf-2.42.12 (for programtillegget)
Doxygen-1.12.0 og Graphviz-12.1.0 (for dokumentasjon), Java-22.0.2 (for JAR), libavif-1.1.1, libwebp-1.4.0, gtest, OpenEXR, sjpeg, og skcms
Installer libjxl ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-D BUILD_SHARED_LIBS=ON \
-D JPEGXL_ENABLE_SKCMS=OFF \
-D JPEGXL_ENABLE_SJPEG=OFF \
-D JPEGXL_ENABLE_PLUGINS=ON \
-D JPEGXL_INSTALL_JARDIR=/usr/share/java \
-G Ninja .. &&
ninja
Denne pakken kommer med en testpakke, men den krever gtest, som ikke er i BLFS.
Nå, som root bruker:
ninja install && gdk-pixbuf-query-loaders --update-cache
gdk-pixbuf-query-loaders --update-cache: Denne kommandoen regenererer GDK Pixbuf loader cache så at den er klar over JPEG-XL-lasteren.
-D BUILD_TESTING=OFF:
Denne parameteren deaktiverer tester fordi de krever
gtest, hvilken
ikke er i BLFS. Hvis du ønsker å kjøre testene og har
gtest installert,
fjern denne parameteren.
-D
BUILD_SHARED_LIBS=ON: Denne parameteren aktiverer
bygging av delte versjoner av bibliotekene i stedet for
statiske.
-D
JPEGXL_ENABLE_SKCMS=OFF: Denne parameteren
deaktiverer byggestøtte for Skia's skcms siden det er ikke nødvendig for
BLFS formålet og krever skcms.
-D
JPEGXL_ENABLE_SJPEG=OFF: Denne parameteren
deaktiverer støtte for SimpleJPEG siden det ikke er nødvendig
for BLFS formålet og krever sjpeg.
-D
JPEGXL_ENABLE_PLUGINS=ON: Denne parameteren
aktiverer Programtilleggstøtte, som lager programtillegg for
gdk-pixbuf-2.42.12 hvis pakken er
installert.
-D
JPEGXL_INSTALL_JARDIR=/usr/share/java: Dette
parameter plasserer JAR filen for JPEG XL støtte i riktig
mappe hvis Java-22.0.2 er installert.
|
kjører ytelsesreferanser mot libjxl |
|
|
komprimerer bilder til JPEG XL formatet |
|
|
dekomprimerer bilder fra JPEG XL formatet til andre formater |
|
|
viser informasjon om JPEG XL bilder |
|
|
inneholder referanseimplementeringen av JPEG XL standarden |
|
|
inneholder støtte for Little CMS i libjxl |
|
|
inneholder ekstra kodekstøtte for JPEG XL bilder |
|
|
inneholder et Java grensesnitt for å støtte JPEG XL på systemer hvor Java-22.0.2 var installert på byggetidspunktet |
|
|
inneholder trådunksjoner for JPEG XL |
|
|
inneholder en laster for gdk-pixbuf for å la den laste inn JPEG XL bilder |
libmng bibliotekene brukes av programmer som ønsker å lese og skrive nettverksgrafikk med flere bilder (MNG) filer som er animasjonsekvivalenter til PNG filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/libmng/libmng-2.0.3.tar.xz
Nedlasting MD5 sum: e9e899adb1b681b17f14d91e261878c5
Nedlastingsstørrelse: 932 KB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.1 SBU
Installer libmng ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -v -m755 -d /usr/share/doc/libmng-2.0.3 && install -v -m644 doc/*.txt /usr/share/doc/libmng-2.0.3
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libmypaint pakken, a.k.a. "brushlib", er et bibliotek for å lage penselstrøk som brukes av MyPaint og andre prosjekter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/mypaint/libmypaint/releases/download/v1.6.1/libmypaint-1.6.1.tar.xz
Nedlasting MD5 sum: 7f1dab2d30ce8a3f494354c7c77a2977
Nedlastingsstørrelse: 508 KB
Estimert diskplass som kreves: 11 MB (legg til 1 MB for tester)
Estimert byggetid: 0.1 SBU (legg til 0.3 SBU for tester)
GLib-2.80.4 (med GObject Introspection)
Doxygen-1.12.0 (for å lage XML dokumenter), gegl (bare 0.3 versjoner) og gperftools
Installer libmypaint ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
libpng pakken inneholder biblioteker som brukes av andre programmer for lesing og skriving av PNG filer. PNG formatet ble designet som en erstatning for GIF og, i mindre grad, TIFF, med mange forbedringer og utvidelser og mangel på patentproblemer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/libpng/libpng-1.6.43.tar.xz
Nedlasting MD5 sum: 22b8362d16c3724eba9c1fb8d187320a
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 15 MB (med tester)
Estimert byggetid: 0.1 SBU (legg til 0.5 SBU for tester)
Anbefalt oppdatering for å inkludere animert png funksjonalitet i libpng (nødvendig for å bruke system libpng i Firefox, Seamonkey, og Thunderbird): https://downloads.sourceforge.net/sourceforge/libpng-apng/libpng-1.6.43-apng.patch.gz
Oppdatering md5sum: fc21268c9c583c5d2e7ead8a9ec17240
Hvis du vil oppdatere libpng for å støtte apng filer, bruk det her:
gzip -cd ../libpng-1.6.43-apng.patch.gz | patch -p1
Installer libpng ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install && mkdir -v /usr/share/doc/libpng-1.6.43 && cp -v README libpng-manual.txt /usr/share/doc/libpng-1.6.43
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
tester, optimaliserer og eventuelt fikser zlib deklarasjonen i PNG filer. Eventuelt, når du fikser, fjerner du tilleggsbiter fra filen |
|
|
fikser PNG filer som har feil lengdefelt i iTXt biter |
|
|
er et skallskript som gir konfigurasjonsinformasjon for applikasjoner som ønsker å bruke libpng |
|
|
inneholder rutiner som brukes til å lage og manipulere PNG formaterte grafikkfiler |
Libraw er et bibliotek for å lese RAW filer hentet fra digitale kameraer (CRW/CR2, NEF, RAF, DNG og andre).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.libraw.org/data/LibRaw-0.21.2.tar.gz
Nedlasting MD5 sum: 0533724bad17c0fde22e642e4594e45d
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 30 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
Installer libraw ved å kjøre følgende kommandoer:
autoreconf -fiv &&
./configure --prefix=/usr \
--enable-jpeg \
--enable-jasper \
--enable-lcms \
--disable-static \
--docdir=/usr/share/doc/libraw-0.21.2 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-jpeg: Denne
bryteren aktiverer støtte for JPEG bilder. Fjern den hvis du
ikke har libjpeg-turbo-3.0.1 installert.
--enable-jasper:
Denne bryteren aktiverer støtte for JPEG2000 bilder. Fjern
den hvis du ikke har JasPer-4.2.4 installert.
--enable-lcms: Denne
bryteren aktiverer støtte for fargebehandling. Fjern den hvis
du ikke har Little CMS-2.16 installert.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Alle de installerte programmene er eksempler på bruk av libraw.
|
genererer fire TIFF filer fra RAW data, med en fil per kanal |
|
|
emulerer kjøring av "dcraw -h" (se DCRAW manpage) |
|
|
emulerer kjøring av "dcraw [-4] [-6] [-e]" (se DCRAW manpage) |
|
|
oppretter åtte forskjellige gjengivelser fra en kildefil. Den første og den fjerde skal være identiske |
|
|
emulerer kjøring av "dcraw [-D] [-T] [-v] [-e] [-4]" (se DCRAW manpage) |
|
|
er en nesten komplett dcraw emulator (se DCRAW manpage) |
|
|
emulerer anrop til "dcraw -h [-w] [-a] [-v]" (se DCRAW manpage) |
|
|
oppretter åtte forskjellige gjengivelser fra en kildefil. Den første og den fjerde skal være identiske |
|
|
emulerer kjøring av "dcraw -i [-v]" (se DCRAW manpage) |
|
|
genererer rt ubehandlet råbilde (med maskerte piksler og uten svart subtraksjon) |
|
|
inneholder funksjoner som brukes til å analysere, redigere og lagre rå bildedata. |
librsvg pakken inneholder et bibliotek og verktøy som brukes til å manipulere, konvertere og vise Scalable Vector Graphic (SVG) bilder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/librsvg/2.58/librsvg-2.58.3.tar.xz
Nedlasting MD5 sum: 8f954b5c25ffff602b4e62813c98c8c9
Nedlastingsstørrelse: 5.9 MB
Estimert diskplass som kreves: 723 MB (17 MB installert), legg til 545 MB for tester
Estimert byggetid: 0.7 SBU (Legg til 0.7 SBU for tester; begge bruker parallellisme=4)
Cairo-1.18.0, gdk-pixbuf-2.42.12, Pango-1.54.0, og rustc-1.80.1
En Internett-tilkobling er nødvendig for å bygge denne pakken.
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17
docutils-0.21.2 (for manualsider), Gi-DocGen-2024.1 (for dokumentasjon), og Xorg Fonts (for tester)
Installer librsvg ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-vala \
--disable-static \
--docdir=/usr/share/doc/librsvg-2.58.3 &&
make
For å teste resultatene, utsted:
cargo update --precise 0.3.36 time && LC_ALL=C make check -k
Alle 68 tester skal bestå.
Nå, som root bruker:
make DOC_INSTALL_DIR='$(docdir)' install
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, en viktig fil ble
ikke installert og skal kopieres og/eller genereres.
Generer den ved å bruke følgende kommando som root bruker:
gdk-pixbuf-query-loaders --update-cache
--enable-vala: Denne
bryteren aktiverer bygging av Vala bindingene. Fjern denne
bryteren hvis du ikke har Vala-0.56.17 installert.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
DOC_INSTALL_DIR='$(docdir)':
Denne overstyringen sikrer at installasjon av API
dokumentasjonen på forventet plassering hvis Gi-DocGen-2024.1 er installert.
cargo update --precise=0.3.36
time: Dette oppdaterer Cargo.lock filen til å referere til versjon
0.3.36 av tidscraten for testpakken. Opprinnelig refererer
det til versjon 0.3.34, som ikke klarer å bygge med
Rustc-1.80.0 eller nyere.
--disable-introspection: Bruk
denne bryteren hvis du ikke har installert Gobject Introspection.
--disable-gtk-doc: Denne bryteren
hindrer bygging av API dokumentasjonen, selv om Gi-DocGen-2024.1 (på tross av navnet
på alternativet) er tilgjengelig.
Libspiro vil ta en rekke spirokontroll punkter og konverter dem til en serie bezier splines som deretter kan bli brukt på utallige måter verden har kommet til å bruke beziers.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/fontforge/libspiro/releases/download/20220722/libspiro-dist-20220722.tar.gz
Nedlasting MD5 sum: c21f86e6c1ad65ed4cb1f754f6d7563c
Nedlastingsstørrelse: 428 KB
Estimert diskplass som kreves: 5.1 MB (legg til 1,3 MB hvis du kjører testene)
Estimert byggetid: 0.1 SBU
Installer libspiro ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libtiff pakken inneholder TIFF biblioteker og tilhørende verktøy. Bibliotekene brukes av mange programmer for lesing og skriving av TIFF filer og verktøyene brukes til generelt arbeid med TIFF filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.osgeo.org/libtiff/tiff-4.6.0.tar.gz
Nedlasting MD5 sum: fc7d49a9348b890b29f91a4ecadd5b49
Nedlastingsstørrelse: 3.4 MB
Estimert diskplass som kreves: 46 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Freeglut-3.6.0 (påkrevd for tiffgt), libjpeg-turbo-3.0.1, sphinx-8.0.2, libwebp-1.4.0, JBIG-KIT, og LERC
Installer libtiff ved å kjøre følgende kommandoer:
mkdir -p libtiff-build &&
cd libtiff-build &&
cmake -D CMAKE_INSTALL_DOCDIR=/usr/share/doc/libtiff-4.6.0 \
-D CMAKE_INSTALL_PREFIX=/usr -G Ninja .. &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
|
kopierer (og konverterer muligens) en TIFF fil |
|
|
skriver ut ordrett informasjon om TIFF filer |
|
|
skriver ut informasjon om TIFF filer |
|
|
setter verdien til en TIFF deklarasjon til en spesifisert verdi |
|
|
deler en TIFF med flere bilder i TIFF filer med ett bilde |
|
|
inneholder API funksjonene som brukes av libtiff programmer så vel som andre programmer for å lese og skrive TIFF filer |
|
|
inneholder C++ API funksjonene som brukes av programmer for å lese og skrive TIFF filer |
libwebp pakken inneholder et bibliotek og støtteprogrammer for å kode og dekode bilder i WebP format.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.4.0.tar.gz
Nedlasting MD5 sum: 07daaa13bef03b7be07f11977b159cb8
Nedlastingsstørrelse: 4.0 MB
Estimert diskplass som kreves: 45 MB
Estimert byggetid: 0,1 SBU (med parallellitet=4)
libjpeg-turbo-3.0.1, libpng-1.6.43, libtiff-4.6.0, og sdl12-compat-1.2.68 (for forbedret 3D akselerasjon)
Installer libwebp ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-libwebpmux \
--enable-libwebpdemux \
--enable-libwebpdecoder \
--enable-libwebpextras \
--enable-swap-16bit-csp \
--disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-swap-16bit-csp: Denne
bryteren aktiverer byte bytte for 16 bits fargerom.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
komprimerer et bilde ved hjelp av WebP formatet |
|
|
dekomprimerer WebP filer til PNG, PAM, PPM eller PGM bilder |
|
|
konverterer et GIF bilde til et WebP bilde |
|
|
oppretter en animert WebP fil fra en sekvens av inndatabilder |
|
|
dekomprimerer en WebP fil og viser den i et vindu |
|
|
skriver ut cunk nivåstrukturen til WebP filer sammen med å utføre grunnleggende integritetskontroller |
|
|
lager animerte WebP filer fra ikke-animerte WebP bilder, trekker ut rammer fra animerte WebP bilder, og administrerer XMP/EXIF metadata og ICC profilen |
|
|
inneholder API funksjonene for WebP koding og dekoding |
mypaint-brushes pakken inneholder pensler som brukes av pakker som bruker libmypaint.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/mypaint/mypaint-brushes/releases/download/v1.3.1/mypaint-brushes-1.3.1.tar.xz
Nedlasting MD5 sum: 7241032d814cb91d2baae7d009a2a2e0
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 3.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer mypaint-brushes ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Newt er et programmeringsbibliotek for fargetekst modus, elementbaserte brukergrensesnitt. Den kan brukes til å legge til stablete vinduer, oppføringselementer, avmerkingsbokser, radioknapper, etiketter, rene tekstfelter, rullefelt, etc., til brukergrensesnitt i tekstmodus. Newt er basert på S-Lang biblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://releases.pagure.org/newt/newt-0.52.24.tar.gz
Nedlasting MD5 sum: 9a0630e2f59eaa3037aec94989c36c4a
Nedlastingsstørrelse: 176 KB
Estimert diskplass som kreves: 3.0 MB
Estimert byggetid: mindre enn 0.1 SBU
GPM-1.20.7 (kjøretid)
Installer newt ved å kjøre følgende kommandoer:
sed -e '/install -m 644 $(LIBNEWT)/ s/^/#/' \
-e '/$(LIBNEWT):/,/rv/ s/^/#/' \
-e 's/$(LIBNEWT)/$(LIBNEWTSH)/g' \
-i Makefile.in &&
./configure --prefix=/usr \
--with-gpm-support \
--with-python=python3.12 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
sed -e ... -i Makefile.in: Deaktiverer installasjon av et statisk bibliotek.
--with-gpm-support:
Denne bryteren aktiverer musestøtte for newt applikasjoner
gjennom GPM.
--with-python=python3.12: Ved å
gi eksplisitt navnet på mappen der python moduler ligger,
forhindrer denne bryteren bygging av python2 modulen.
opencv pakken inneholder grafikkbiblioteker hovedsakelig rettet mot computer vision i sanntid.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/opencv/opencv/archive/4.10.0/opencv-4.10.0.tar.gz
Nedlasting MD5 sum: adaf23e87339e6df6d50d68001138ccc
Nedlastingsstørrelse: 91 MB
Estimert diskplass som kreves: 698 MB (med opencv-contrib)
Estimert byggetid: 3.0 SBU (bruke parallellisme=8)
Valgfrie Tilleggsmoduler: https://github.com/opencv/opencv_contrib/archive/4.10.0/opencv_contrib-4.10.0.tar.gz
Valgfrie Tilleggsmoduler md5sum: 5a4bc09177b74813c72648c117783dba
Valgfrie Tilleggsmoduler Størrelse: 53 MB
En ekstra fil som starter med "ippicv" (integrated performance primitives) lastes ned automatisk i løpet av cmmake som en del av byggeprosedyren. Denne nedlastingen er spesifikk for systemarkitekturen.
FFmpeg-7.0.2, gst-plugins-base-1.24.7, GTK+-3.24.43, JasPer-4.2.4, libexif-0.6.24, libjpeg-turbo-3.0.1, libpng-1.6.43, libtiff-4.6.0, libwebp-1.4.0, OpenJPEG-2.5.2, v4l-utils-1.28.1, og xine-lib-1.2.13
apache-ant-1.10.14, Doxygen-1.12.0, Java-22.0.2, NumPy-2.1.0, Protobuf-27.3, ATLAS, blas, Cuda, Eigen, OpenEXR, GDAL, lapack, libdc1394, Threading Building Blocks (TBB), og VTK - The Visualization Toolkit,
Hvis du lastet ned de valgfrie modulene, pakk dem ut nå:
tar -xf ../opencv_contrib-4.10.0.tar.gz
Installer opencv ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D ENABLE_CXX11=ON \
-D BUILD_PERF_TESTS=OFF \
-D WITH_XINE=ON \
-D BUILD_TESTS=OFF \
-D ENABLE_PRECOMPILED_HEADERS=OFF \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D BUILD_WITH_DEBUG_INFO=OFF \
-W no-dev .. &&
make
Pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
-D WITH_XINE=ON:
Dette alternativet instruerer make prosedyren å bruke
xine-lib-1.2.13.
-D
ENABLE_PRECOMPILED_HEADERS=OFF: Dette
alternativet er nødvendig for kompatibilitet med gcc-6.1 og
nyere.
-D
OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.10.0/modules:
instruerer byggesystemet til å bygge tilleggsmoduler.
OpenJPEG er en åpen kildekode implementering av JPEG-2000 standarden. OpenJPEG respekterer JPEG-2000 spesifikasjoner fullt ut og kan komprimere/dekomprimere tapsfrie 16-bits bilder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/uclouvain/openjpeg/archive/v2.5.2/openjpeg-2.5.2.tar.gz
Nedlasting MD5 sum: f9ee64845881a15109ed0aa73a12202f
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 13 MB (legg til 1,7 GB for tester)
Estimert byggetid: 0.2 SBU (legg til 0,8 SBU for tester)
git-2.46.0 (for tester), Little CMS-2.16, libpng-1.6.43, libtiff-4.6.0, og Doxygen-1.12.0 (for å bygge API dokumentasjonen)
Installer OpenJPEG ved å kjøre følgende kommandoer:
mkdir -v build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
-D BUILD_STATIC_LIBS=OFF .. &&
make
Hvis du ønsker å kjøre testene, kreves det noen tilleggsfiler. last ned disse filene og kjør testene ved å bruke følgende kommandoer, men merk at det er 8 tester som er kjent for å mislykkes:
git clone https://github.com/uclouvain/openjpeg-data.git --depth 1 && OPJ_DATA_ROOT=$PWD/openjpeg-data cmake -D BUILD_TESTING=ON .. && make && make test
Nå, som root bruker:
make install && cp -rv ../doc/man -T /usr/share/man
Pixman pakken inneholder et bibliotek som gir pikselmanipuleringsfunksjoner på lavt nivå som bildekompositering og trapesformet rasterisering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cairographics.org/releases/pixman-0.43.4.tar.gz
Nedlasting MD5 sum: 21b18058dea39ad48f32d3199b8ffe40
Nedlastingsstørrelse: 776 KB
Estimert diskplass som kreves: 27 MB (Med tester)
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4; med tester)
libpng-1.6.43 og GTK+-2 (for tester og demoer)
Installer Pixman ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Poppler pakken inneholder et PDF gjengivelses bibliotek og kommandolinjeverktøy som brukes til å manipulere PDF filer. Dette er nyttig for å tilby PDF gjengivelsesfunksjonalitet som et delt bibliotek.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://poppler.freedesktop.org/poppler-24.08.0.tar.xz
Nedlasting MD5 sum: 5edd19a7ef270793374a3a5599bf872f
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 76 MB (med Qt6 biblioteket; legg til 13 MB for tester)
Estimert byggetid: 0.9 SBU (med parallellisme=4, tester og Qt6 biblioteket)
Poppler Encoding Data
Nedlasting (HTTP): https://poppler.freedesktop.org/poppler-data-0.4.12.tar.gz
Nedlasting MD5 sum: 67ee4a40aa830b1f6e2560ce5f6471ba
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 26 MB
Estimert byggetid: mindre enn 0.1 SBU
Tilleggspakken består av kodingsfiler for bruk med Poppler. Kodingsfilene er valgfrie og Poppler vil automatisk lese dem hvis de er tilstede. Når de er installert, aktiverer de Poppler til å gjengi CJK og kyrillisk riktig.
CMake-3.30.2, Fontconfig-2.15.0, og GLib-2.80.4 (med GObject Introspection)
Boost-1.86.0, Cairo-1.18.0, GPGME-1.23.2, Little CMS-2.16, libjpeg-turbo-3.0.1, libpng-1.6.43, libtiff-4.6.0, nss-3.103, OpenJPEG-2.5.2, og Qt-6.7.2 (påkrevd for PDF støtte i okular-24.08.0)
cURL-8.9.1, gdk-pixbuf-2.42.12, git-2.46.0 (for nedlasting av testfiler), GTK+-3.24.43, og qt5-components-5.15.14
Nå, installer Poppler ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
-D TESTDATADIR=$PWD/testfiles \
-D ENABLE_QT5=OFF \
-D ENABLE_UNSTABLE_API_ABI_HEADERS=ON \
-G Ninja .. &&
ninja
For å kjøre testpakken, er noen testcaser nødvendig og kan kun hentes fra et git lager. Kommandoen for å laste ned de er: git clone --depth 1 https://gitlab.freedesktop.org/poppler/test.git testfiles. Kjør deretter: LC_ALL=en_US.UTF-8 ninja test. En undertest av check_qt6_signature_basics er kjent for å mislykkes.
Nå, som root bruker:
ninja install
For å installere dokumentasjonen, kjør følgende kommandoer
som root:
install -v -m755 -d /usr/share/doc/poppler-24.08.0 && cp -vr ../glib/reference/html /usr/share/doc/poppler-24.08.0
Hvis du lastet ned den ekstra kodingsdatapakken, installer den med å kjøre følgende kommandoer:
tar -xf ../../poppler-data-0.4.12.tar.gz && cd poppler-data-0.4.12
Nå,som root bruker:
make prefix=/usr install
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
for å bruke et høyere nivå av kompilatoroptimaliseringer.
-D
TESTDATADIR=$PWD/testfiles: Forteller
testprogrammene hvor hjelpefilene er plassert.
-D ENABLE_QT5=OFF:
Denne bryteren er nødvendig for å forhindre en feil når Qt5
ikke er installert. Fjern den hvis du har installert
qt5-components-5.15.14.
-D
ENABLE_UNSTABLE_API_ABI_HEADERS=ON: Installerer
noen gamle Xpdf
deklarasjoner som kreves av visse programmer.
-D ENABLE_GTK_DOC=ON: Bruk denne
parameteren hvis GTK-Doc er installert og du ønsker å
gjenoppbygge og installere API dokumentasjonen.
-D ENABLE_QT6=OFF:: Bruk denne
parameteren hvis Qt-6.7.2 ikke er installert.
-D ENABLE_BOOST=OFF: Bruk denne
parameteren hvis du ikke har installert boost (Splash-backend for Qt5 anbefaler
boost).
-D ENABLE_NSS3=OFF: Bruk denne
parameteren hvis du ikke har installert nss.
-D ENABLE_GPGME=OFF: Bruk denne
parameteren hvis du ikke har installert gpgme.
-D ENABLE_LIBTIFF=OFF: Bruk denne
parameteren hvis du ikke har installert libtiff.
LC_ALL=en_US.UTF-8 ninja test: Kjører testpakken. miljøvariabelen LC_ALL=en_US.UTF-8 er bare nødvendig hvis standard lokalitet ikke inkluderer UTF-8.
|
legger til en ny innebygd fil til en eksisterende PDF fil |
|
|
lister eller trekker ut innebygde filer fra PDF filer |
|
|
viser skriftene som brukes i en PDF fil sammen med forskjellig informasjon for hver font |
|
|
lagrer bilder fra en PDF fil som PPM, PBM eller JPEG filer |
|
|
skriver ut innholdet i 'Info' ordboken (pluss noe annet nyttig informasjon) fra en PDF fil |
|
|
trekker ut enkeltsider fra en PDF fil |
|
|
verifiserer de digitale signaturene i et PDF dokument |
|
|
konverterer en PDF fil til ett av flere formater (PNG, JPEG, PDF, PS, EPS, SVG) ved å bruke cairo utdataenheten til poppler biblioteket |
|
|
konverterer en PDF fil til HTML |
|
|
konverterer PDF filer til PBM, PGM og PPM formater |
|
|
konverterer PDF filer til Postscript format |
|
|
konverterer PDF filer til ren tekst |
|
|
slår sammen flere PDF filer, i den rekkefølgen de forekommer på kommandolinjen, til en PDF utdatafil |
|
|
inneholder API funksjonene for å gjengi PDF filer |
|
|
er en C++ bakstykke for gjengivelse av PDF filer |
|
|
er et innpakningsbibliotek som brukes til å samhandle PDF gjengivelsesfunksjonene med GTK+ |
|
|
er et innpakningsbibliotek som brukes til å samhandle PDF gjengivelsesfunksjonene med Qt5 |
|
|
er et innpakningsbibliotek som brukes til PDF gjengivelsesfunksjonenes grensesnitt med Qt6 |
Potrace™ er et verktøy for å transformere en bitmap (PBM-, PGM-, PPM- eller BMP-format) til ett av flere vektorfilformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/potrace/potrace-1.16.tar.gz
Nedlasting MD5 sum: 5f0bd87ddd9a620b0c4e65652ef93d69
Nedlastingsstørrelse: 644 KB
Estimert diskplass som kreves: 7.1 MB (inkludert tester)
Estimert byggetid: less than 0.1 SBU (inkludert tester)
LLVM-18.1.7 (inkludert clang)
Installer Potrace ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/potrace-1.16 \
--enable-a4 \
--enable-metric \
--with-libpotrace &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--enable-a4: Bruk A4
som standard papirstørrelse.
--enable-metric: Bruk
metriske enheter (centimeter) som standard
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-libpotrace:
Installer biblioteket og deklarasjoner.
Qpdf pakken inneholder kommandolinjeprogrammer og et bibliotek som gjør strukturelle, innholdsbevarende transformasjoner på PDF filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/qpdf/qpdf/releases/download/v11.9.1/qpdf-11.9.1.tar.gz
Nedlasting MD5 sum: 22dcfec7700e4d8b08a116ecc1c529ac
Nedlastingsstørrelse: 18 MB
Estimert diskplass som kreves: 272 MB (legg til 1 MB for tester)
Estimert byggetid: 0.6 SBU (bruker parallellisme=4; legg til 0,5 SBU for tester)
ghostscript-10.03.1, GnuTLS-3.8.7.1, libtiff-4.6.0, sphinx-8.0.2 med sphinx_rtd_theme-2.0.0, og texlive-20240312 eller install-tl-unx
Installer Qpdf ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_STATIC_LIBS=OFF \
-D CMAKE_INSTALL_DOCDIR=/usr/share/doc/qpdf-11.9.1 \
.. &&
make
For å teste resultatene, kjør: ctest.
Nå, som root bruker:
make install
Qrencode er et raskt og kompakt bibliotek for koding av data i et QR kodesymbol, en 2D symbologi som kan bli skannet av håndholdte terminaler som en mobiltelefon med CCD sensor.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Download (HTTP): https://fukuchi.org/works/qrencode/qrencode-4.1.1.tar.bz2
Download MD5 sum: de7185bcab635a34730e1b73d4efa705
Download size: 451 KB
Estimated disk space required: 5.0 MB (med dokumentasjon, legg til 5 MB for tester)
Estimated build time: mindre enn 0,1 SBU, legg til 0,1 SBU for tester
Doxygen-1.12.0 for å generere dokumentasjon, og SDL2-2.30.6 for tester
Installer libqrencode ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Hvis du har installert Doxygen-1.12.0, kan du bygge dokumentasjonen ved å kjøre:
doxygen
Testene må kjøres etter installasjon av pakken.
Nå, som root bruker:
make install
Hvis du har bygget den valgfrie dokumentasjonen, installer
den som root bruker:
install -vdm 755 /usr/share/doc/qrencode-4.1.1 && mv html/* /usr/share/doc/qrencode-4.1.1
For å teste resultatene, hvis du har sendt alternativet
--with-tests tilconfigure, kjør:
make check.
--with-tests: Dette alternativet
gjør det mulig å bygge testprogrammer. Det krever SDL2-2.30.6.
--without-tools: Dette
alternativet forhindrer bygging av qrencode kjørbar, fjerner
behovet for libpng-1.6.43.
SassC er en innpakning rundt libsass, et CSS pre-prosessor språk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/sass/sassc/archive/3.6.2/sassc-3.6.2.tar.gz
Nedlasting MD5 sum: 4c3b06ce2979f2a9f0a35093e501d8bb
Nedlastingsstørrelse: 28 KB
Estimert diskplass som kreves: 5.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Nedlasting (HTTP): https://github.com/sass/libsass/archive/3.6.6/libsass-3.6.6.tar.gz
Nedlasting MD5 sum: afda97284d75a030cabadf5b9f998a3b
Nedlastingsstørrelse: 336 KB
Estimert diskplass som kreves: 135 MB
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4)
Bygg først biblioteket:
tar -xf ../libsass-3.6.6.tar.gz && pushd libsass-3.6.6 && autoreconf -fi && ./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Bygg kommandolinjeinnpakningen:
popd && autoreconf -fi && ./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
webp-pixbuf-loader pakken inneholder en bibliotek som lar gdk-pixbuf laste og behandle webp bilder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/aruiz/webp-pixbuf-loader/archive/0.2.7/webp-pixbuf-loader-0.2.7.tar.gz
Nedlasting MD5 sum: e97025dc70178877dbd041776f151947
Nedlastingsstørrelse: 8.8 MB
Estimert diskplass som kreves: 9.7 MB
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer webp-pixbuf-loader ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
Webp formatet må legges til lasterens hurtiglager:
gdk-pixbuf-query-loaders --update-cache
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
gdk-pixbuf-query-loaders --update-cache: Denne kommandoen oppdaterer gdk-pixbuf lasterens hurtiglager slik at den vet at webp lasteren har blitt installert.
WOFF2 er et bibliotek for konvertering av fonter fra TTF formatet til WOFF 2.0 formatet. Den tillater også dekompresjon fra WOFF 2.0 til TTF. WOFF 2.0 formatet bruker Brotli komprimeringsalgoritmen for å komprimere fonter som egner seg for nedlasting i CSS @font-face regler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/google/woff2/archive/v1.0.2/woff2-1.0.2.tar.gz
Nedlasting MD5 sum: 793c8844845351cb80730a74937e411b
Nedlastingsstørrelse: 39 KB
Estimert diskplass som kreves: 1.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer WOFF2 ved å kjøre følgende kommandoer:
mkdir out &&
cd out &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_SKIP_INSTALL_RPATH=ON .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
Dette kapittelet inneholder ulike verktøy som ikke passer praktisk inn i andre kapitler. Programmer inkluderer noen dokumentasjonsgeneratorer, flere verktøy for å manipulere tekst og grafikk, programmer for å liste filer, et program for å taste inn PIN-numre og passordfraser, og en tilkoblingsbehandler.
Asciidoctor er en rask åpen kildekode verktøykjede for tekstbehandler og publisering for å konvertere AsciiDoc innhold til HTML5, DocBook, PDF og andre formater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/asciidoctor/asciidoctor/archive/v2.0.23/asciidoctor-2.0.23.tar.gz
Nedlasting MD5 sum: e629ec9b6a82a21b4afaab7d5d495e52
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 5.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Når du bygger denne pakken, kan følgende melding vises:
fatal: not a git repository (or any of the parent directories): .git
. Dette er normalt, og pakken vil fortsette å bygge etter dette punktet.
Bygg Ruby gem:
gem build asciidoctor.gemspec
Testpakken trenger mange Ruby gems utover omfanget av BLFS.
Nå, som root bruker:
gem install asciidoctor-2.0.23.gem && install -vm644 man/asciidoctor.1 /usr/share/man/man1
Bogofilter applikasjonen er et e-postfilter som klassifiserer post som spam eller ham (ikke-spam) ved en statistisk analyse av meldingens deklarasjoner og innhold (kropp).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/bogofilter/bogofilter-1.2.5.tar.xz
Nedlasting MD5 sum: 8763f87adfff7b802ced177d8c654539
Nedlastingsstørrelse: 784 KB
Estimert diskplass som kreves: 19 MB
Estimert byggetid: 0.1 SBU
gsl-2.8, libxml2-2.13.3, og SQLite-3.46.1
lmdb-0.9.31, xmlto-0.0.29, Berkeley DB (deprecated), QDBM og TokyoCabinet
Hvis du ikke installerer den anbefalte gsl-2.8 pakken vil en statisk koblet levert versjon bli brukt i stedet.
Hvis du planlegger å endre versjonen av databasebiblioteket på en eksisterende installasjon, eller for å bytte til en annen database, les advarsel øverst i RELEASE.NOTES filen.
Installer Bogofilter ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc/bogofilter \
--with-database=sqlite3 &&
make
For å teste resultatene, kjør make check.
Nå, som root bruker:
make install
--with-database=sqlite3: Denne
bryteren gjør at Bogofilter bruker SQLite-3.46.1 som
databasen, i stedet for Berkeley DB.
--with-database={lmdb,qdbm,tokyocabinet}:
Denne bryteren tillater også bruk av lmdb, qdbm eller
tokyocabinet som database.
|
oppretter en mer kompakt bogofilter arbeidsmappe med en dump/laste syklus |
|
|
kopierer en bogofilter arbeidsmappe til en annen mappe |
|
|
pakker en bogofilter arbeidskatalog i tar format og kopierer den til standardutgang |
|
|
er et raskt Bayesiansk søppelpostfilter |
|
|
brukes til å dele meldinger i tokens og til å teste nye versjoner av lexer.l koden |
|
|
forsøker å finne optimale parameterinnstillinger for bogofilter |
|
|
oppgraderer bogofilter databasen til gjeldende versjon |
|
|
dumper, laster og vedlikeholder bogofilter databasefiler |
Compface gir verktøy og et bibliotek for å konvertere fra/til X-Face format, et 48x48 bitmap format som brukes til å bære miniatyrbilder av e-postforfattere i en e-postdeklarasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/compface/compface-1.5.2.tar.gz
Nedlasting MD5 sum: 62f4f79c0861ad292ba3cf77b4c48319
Nedlastingsstørrelse: 47 KB
Estimert diskplass som kreves: 520 KB
Estimert byggetid: mindre enn 0.1 SBU
Først må du fikse konfigureringsskriptet slik at det er C99 kompatibelt:
autoreconf
Deretter fikser du en byggefeil som oppstår med GCC 14:
sed -e '/compface.h/a #include <unistd.h>' \
-i cmain.c \
-i uncmain.c
Installer Compface ved å kjøre følgende kommandoer:
./configure --prefix=/usr --mandir=/usr/share/man && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -m755 -v xbm2xface.pl /usr/bin
|
er et filter for å generere svært komprimerte representasjoner av 48x48x1 face bildefiler |
|
|
er et inverst filter som utfører en invers transformasjon uten tap av data |
|
|
er et skript for å generere xfaces |
|
|
lar komprimerings- og dekompresjonsalgoritmene bli brukt i andre programmer som MTA-er |
Desktop File Utils pakken inneholder kommandolinjeverktøy for å jobbe med Skrivebordsoppføringer. Disse verktøyene brukes av skrivebordsmiljøer og andre applikasjoner for å manipulere MIME typene applikasjonsdatabaser og hjelp til å følge skrivebordsoppføringens spesifikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/desktop-file-utils/releases/desktop-file-utils-0.27.tar.xz
Nedlasting MD5 sum: fdf9215aea91acb6aebc43f770537f2c
Nedlastingsstørrelse: 80 KB
Estimert diskplass som kreves: 1.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Hvis du oppgraderer fra en tidligere versjon av desktop-file-utils som brukte Autotools metoden for å installere og konfigurere pakken, må du fjerne desktop-file-edit symbolkoblingen ved å bruke følgende kommandoer.
rm -fv /usr/bin/desktop-file-edit
Installer Desktop File Utils ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
XDG Base Directory spesifikasjonen definerer standardplasseringene for applikasjoner for å plassere data og konfigurasjonsfiler. Disse filene kan brukes for eksempel til å definere menystrukturen og menyelementene i et skrivebordsmiljø.
Standardplasseringen for konfigurasjonsfiler som skal
installeres er /etc/xdg,og
standardplasseringen for datafiler er /usr/local/share og /usr/share. Disse stedene kan bli utvidet
med miljøvariablene XDG_CONFIG_DIRS og XDG_DATA_DIRS, henholdsvis. GNOME, KDE og XFCE miljøer respekterer disse
innstillinger.
Når en pakke installerer en .desktop fil til en plassering i en av
basedatamappe, databasen som kartlegger MIME typer til
tilgjengelige applikasjoner kan oppdateres. For eksempel
hurtiglager filen på /usr/share/applications/mimeinfo.cache
kan gjenoppbygges ved å utføre følgende kommando som
root bruker:
install -vdm755 /usr/share/applications && update-desktop-database /usr/share/applications
|
brukes til å endre en eksisterende skrivebordsfiloppføring |
|
|
brukes til å installere en ny skrivebordsfiloppføring. Det brukes også til å gjenoppbygge eller endre MIME type applikasjonens database |
|
|
brukes til å bekrefte integriteten til en skrivebordsfil |
|
|
brukes til å oppdatere MIME type applikasjonsdatabasen |
dos2unix pakken inneholder en hvilken som helst til hvilken som helst tekstformatkonvertering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/dos2unix/dos2unix-7.5.2.tar.gz
Nedlasting MD5 sum: 646272020848c9b673de24c4e8e3422e
Nedlastingsstørrelse: 972 KB
Estimert diskplass som kreves: 7.2 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg dos2unix ved å kjøre følgende kommandoer:
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Graphviz pakken inneholder graf visualiseringsprogramvare. Grafvisualisering er en måte å representere strukturell informasjon som diagrammer av abstrakte grafer og nettverk. Graphviz har flere hovedgrafoppsett programmer. Den har også web og interaktive grafiske grensesnitt, hjelpe verktøy, biblioteker og språkbindinger.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.com/graphviz/graphviz/-/archive/12.1.0/graphviz-12.1.0.tar.bz2
Nedlasting MD5 sum: 2c3ed90a06a2496c67b12ef3d5f93c5a
Nedlastingsstørrelse: 25 MB
Estimert diskplass som kreves: 217 MB
Estimert byggetid: 0.7 SBU (bruke parallellisme=4)
Grunnleggende bruk av Graphviz krever ingen biblioteker uten de som finnes i LFS boka. Dens “core” rendering motor er i stand til å generere flere grafiske formater, som f.eks Postscript, SVG, VML, .fig og Tk. Disse formatene kan konverteres til nesten alle andre formater ved å bruke verktøy fra pakker som f.eks ImageMagick-7.1.1-36. Avhengighetene nedenfor legger til muligheten for å generere grafbilder i bitmap formatet, for å vise grafbilde på skjermen, for å redigere en graf ved å se det resulterende bildet direkte, eller for å se store grafer. Siden Graphviz er en avhengighet for flere andre pakker i denne boken, foreslås det at du først bygger den uten noen avhengigheter, og bygger den deretter opp igjen når du har bygget nok pakker for å passe dine behov.
Pango-1.54.0, med Cairo-1.18.0, Xorg Biblioteker, Fontconfig-2.15.0, og libpng-1.6.43, å generere bilder i punktgrafikk SVG, postscript, PNG og PDF formater, eller for å vise bildet på skjermen. PNG utdataen er nødvendig for byggingen av gegl-0.4.48
Å legge til GTK+-2 med libjpeg-turbo-3.0.1 legger til støtte for JPEG, BMP, TIF, og ICO formater, og lar deg vise bildet i et GTK+ vindu
GD Library kan brukes i stedet for Pango. Det tilfører muligheten til generere bilder i GIF-, VRML- og GD-formater, men Pango gir bedre resultater for de andre formatene, og er nødvendig for å vise bilder
Andre formater kan legges til med libwebp-1.4.0 (WebP støtte anses som eksperimentell), DevIL, libLASi, og glitz
libgs.so fra ghostscript-10.03.1, librsvg-2.58.3, og Poppler-24.08.0
Freeglut-3.6.0 (med GtkGLExt og libGTS for bygging av smyrna stor grafviser, som er betraktet som eksperimentell), og qt5-components-5.15.14 (for å bygge gvedit grafredigerer)
SWIG-4.2.1 (SWIG må være installert ellers vil ingen bindinger bli bygget), GCC-14.2.0 (for go kompilatoren), Guile-3.0.10, OpenJDK-22.0.2, Lua-5.4.7, PHP-8.3.10, Ruby-3.3.4, Tk-8.6.14, Io, Mono, OCaml, og R
Criterion (rammeverk for tester) og Electric Fence
ghostscript-10.03.1 (for ps2pdf kommando)
Installer Graphviz ved å kjøre følgende kommandoer:
sed -i '/LIBPOSTFIX="64"/s/64//' configure.ac &&
./autogen.sh &&
./configure --prefix=/usr \
--docdir=/usr/share/doc/graphviz-12.1.0
En advarsel genereres av autogen.sh fordi byggetreet ikke er et git depot. Som et resultat er byggedatoen satt til 0. For å få en meningsfull dato i versjonsstrengen kan du kjøre:
sed -i "s/0/$(date +%Y%m%d)/" builddate.h
Enten du fikser datoen eller ikke, fortsett å kompilere pakken:
make
Denne pakken kommer ikke med en testpakke som gir meningsfulle resultater.
Nå, som root bruker:
make install
sed ... configure.ac: Denne kommandoen er nødvendig for å unngå å installere filer i /usr/lib64.
--with-javaincludedir="$JAVA_HOME/include
-I$JAVA_HOME/include/linux": Hvis du har bygget
OpenJDK-22.0.2 i /opt, og du vil bygge
JAVA bindingene, er det nødvendig å spesifisere plasseringen
av JAVA deklarasjonsfiler for å konfigurere.
Konfigurasjonsbryteren er designet for bare en katalog, men
to kataloger må inkluderes. Dette er likevel mulig ved å
bruke -I bryteren inne i variabelen.
--with-webp: Selv om libwebp-1.4.0 er installert, er det ikke
inkludert i bygget uten dette alternativet.
--with-smyrna: Selv om de
nødvendige avhengighetene er installert, den interaktive
grafviseren smyrna er ikke bygget uten
dette alternativet.
Det er ingen spesifikke konfigurasjonskrav for Graphviz. Du kan vurdere å installere
flere programtillegg og verktøy tilgjengelig fra
nedlastingssiden på https://graphviz.org/download/source/
for ytterligere kapasitet. Hvis flere programtillegg er
installert, kan du kjøre dot
-c (som root bruker) for å oppdatere
config filen i /usr/lib/graphviz.
|
er et filter som tar en rettet graf som inndata og sender ut en kopi av grafen med tilstrekkelig kanter snudd til å lage graf asyklisk |
|
|
dekomponerer grafer til deres tokoblede komponenter, skriver ut komponentene til standard utdata |
|
|
dekomponerer grafer til deres tilkoblede komponenter, skriver ut komponentene til standard utdata |
|
|
tegner grafer ved hjelp av en sirkulær utforming |
|
|
tar en graf i DOT format som inndata, finner nodeklynger, og forsterker deretter grafen med denne informasjonen |
|
|
(trenger GD Library) genererer et bilde der hver piksel er forskjellen mellom den tilsvarende pikselen i hvert av de to kildebildene |
|
|
leser en strøm av grafer og beregner avstanden for hver node fra kildenoden |
|
|
tegner rettet grafer. Det fungerer bra på DAG-er og andre grafer som kan tegnes som hierarkier. Den leser tilskrevet graffiler og skriver tegninger. Som standard er utdataformatprikken inndatafilen med layoutkoordinater vedlagt |
|
|
konverterer mellom grafer representert i GXL og i
DOT språket. Med mindre en konverteringstype er
spesifisert ved hjelp av et flagg, gxl2dot vil
utlede typen konvertering fra suffikset til
inndatafilen, et |
|
|
utfører kantfarging for å disambiguere kryssende kanter |
|
|
tegner urettede grafer ved hjelp av en “spring” modell. Den er avhengig av en tvangsrettet tilnærming i ånden til Fruchtermans og Reingold |
|
|
er en grafanalog til wc ved at den skriver ut til standard utgang antall noder, kanter, tilkoblede komponenter eller klynger i inndatafilene. Den skriver også ut en total teller for alle grafer hvis mer enn én graf er gitt |
|
|
konverterer en graf spesifisert i GML formatet til en graf i GV formatet (tidligere DOT). |
|
|
konverterer en graf spesifisert i GRAPHML formatet til en graf i GV formatet (tidligere DOT). |
|
|
konverterer en graf spesifisert i GV format til en graf i GML format |
|
|
konverterer en graf spesifisert i GV format til en graf i the GXL format |
|
|
er et filter som setter nodefarger fra innledende frøverdier. Farger flyter langs kantene fra hale til hode, og er gjennomsnittlig (som HSB vektorer) ved noder |
|
|
gir en enkel grafredigerer og fremviser. Det tillater at mange grafer vises samtidig. Teksten til hver graf vises i sitt eget tekstvindu |
|
|
genererer en rekke enkle, regelmessig strukturerte abstrakte grafer |
|
|
tar som inndata en graf i DOT format, finner node klynger og produserer en gjengivelse av grafen som et kart i geografisk stil, med klynger uthevet, i xdot format |
|
|
er en kanal for å kjøre gvmap |
|
|
leser i en strøm av grafer, kombinerer grafene til en enkelt layout, og produserer en enkelt graf som fungerer som foreningen av inndatagrafene |
|
|
er en grafstrømredigering inspirert av awk. Den kopierer inndatagrafer til utdataene, og transformerer muligens deres struktur og attributter, lager nye grafer eller skriver ut vilkårlig informasjon |
|
|
konverterer mellom grafer representert i GXL og i
DOT språket. Med mindre en konverteringstype er
spesifisert ved hjelp av et flagg, gxl2dot vil
utlede typen konvertering fra suffikset til
inndatafilen, et |
|
|
konverterer mellom grafer representert i GXL og i GV språket |
|
|
konverterer en sparsom matrise av Matrix Market formatet til en graf i GV formatet (tidligere DOT). |
|
|
tegner urettede grafer ved hjelp av “spring” modeller. Inndata filene må formateres i dot tilskrevet grafisk språk. Som standard er utdataen av neato er inndatagrafen med layoutkoordinater vedlagt |
|
|
leser en strøm av grafer og skriver ut hver i vakkert trykt (kanonisk) format på stdout. Hvis ingen filer er gitt, leser den fra stdin |
|
|
tegner grupperte grafer. Den tar hvilken som helst graf i DOT format som inndata |
|
|
tegner grupperte grafer ved hjelp av et kvadratisk trekartoppsett. Den tar hvilken som helst graf i DOT format som inndata |
|
|
leser rettet grafer i samme format som brukes av dot og fjerner undergrafer forankret i noder spesifisert på kommandolinjen via alternativer |
|
|
dekomponerer digrafer til sterkt sammenkoblede komponenter og et hjelpekart over forholdet mellom komponenter. I dette kartet, hver komponent er slått sammen til en node. De resulterende grafene er skrevet ut til stdout |
|
|
tegner urettede grafer ved hjelp av “spring” modell, men den bruker en multi-skala tilnærming for å produsere oppsett av store grafer på rimelig kort tid |
|
|
beregner den transitive reduksjonen av rettet grafer, og skriver ut de resulterende grafene til standardutdata. Dette fjerner kanter antydet av transitivitet. Noder og subgrafer er ikke berørt |
|
|
tegner grafer ved hjelp av en radiell layout. I utgangspunktet er en node valgt som sentrum og satt ved opprinnelsen. De resterende nodene er plassert på en sekvens av konsentriske sirkler sentrert rundt opprinnelsen, hver en fast radiell avstand fra forrige sirkel |
|
|
er en forbehandler til dot som er vant til forbedret sideforholdet til grafer med mange blader eller frakoblet noder. Den vanlige layouten for en slik graf er generelt veldig bred eller høy |
|
|
er et enkelt skript som starter gvim eller vim editor sammen med et GUI vindu som viser dot utdata fra den redigerte filen |
|
|
administrerer kjøretidsordbøker ved hjelp av standard beholderdata typer: uordnet sett/multiset, bestilt sett/multiset, liste, stabel, og kø |
|
|
støtter grafprogrammering ved å opprettholde grafer i minnet og lese og skrive graffiler. Grafer er sammensatt av noder, kanter og nestede undergrafer |
|
|
gir en kontekst for applikasjoner som ønsker å manipulere og gjengi grafer. Den gir kommandolinjeparsing grensesnitt, vanlig gjengivelseskode, og et programtillegg mekanisme for gjengivere |
|
|
inneholder funksjoner for å finne den korteste veien mellom to punkter i en enkel polygon |
|
|
gir støtte for å analysere og deparere grafiske operasjoner spesifisert av xdot språket |
GTK-Doc pakken inneholder en kode dokumentar. Dette er nyttig for å trekke ut spesielt formaterte kommentarer fra koden for å lage API dokumentasjon. Denne pakken er valgfri; hvis den ikke er installert, vil pakker ikke bygge dokumentasjonen. Dette betyr ikke at du ikke vil ha eventuell dokumentasjon. Hvis GTK-Doc ikke er tilgjengelig, vil installasjonsprosessen kopiere all forhåndsbygd dokumentasjon til systemet ditt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtk-doc/1.34/gtk-doc-1.34.0.tar.xz
Nedlasting MD5 sum: f0e7385ba25eddb6ce0953e8cf63d1bf
Nedlastingsstørrelse: 484 KB
Estimert diskplass som kreves: 14 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
docbook-xml-4.5, docbook-xsl-nons-1.79.2, GLib-2.80.4, itstool-2.0.7, libxslt-1.1.42, og Pygments-2.18.0
For tester: dblatex eller fop-2.9 (XML PDF støtte), GLib-2.80.4, Which-2.21, og Python moduler lxml-5.3.0, parameterized, og yelp-tools
De valgfrie pythonmodulene ovenfor kan enkelt installeres med pip3 kommando.
Installer GTK-Doc ved å kjøre følgende kommandoer:
mkdir -p build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Testpakken vil henge hvis pakken (eller en tidligere versjon) ikke allerede er installert.
Nå, som root bruker:
ninja install
For å teste resultatene, kjør: ninja test. Noen tester vil mislykkes avhengig av valgfritt installerte pakker.
Highlight er et verktøy som konverterer kildekode til formatert tekst med syntaksutheving.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://www.andre-simon.de/zip/highlight-4.13.tar.bz2
Nedlasting MD5 sum: 25e6aef8901eb5cf555f36be63ce502e
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 24 MB (med gui)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; med gui)
Qt-6.7.2 (for å bygge GUI grenseflaten)
For konsistens, ikke komprimer mansider.
sed -i '/GZIP/s/^/#/' makefile
For å bygge Highlight kjør følgende kommandoer:
make
For å bygge qt6 GUI grenseflaten, kjør følgende kommando:
make doc_dir=/usr/share/doc/highlight-4.13/ gui
Denne pakken kommer ikke med en testpakke.
For å installere Highlight,
kjør følgende kommando som root bruker:
make doc_dir=/usr/share/doc/highlight-4.13/ install
For å installere GUI programmet, kjør følgende kommando som
root bruker:
make install-gui
doc_dir=/usr/share/doc/highlight-4.13/:
installerer uthevingsdokumentasjonen i en versjonert mappe.
Denne parameteren er også nødvendig for make gui, fordi verdien vil
bli hardkodet inn i den kjørbare gui. Merk at etterfølgende
“/” er
nødvendig.
ibus er en intelligent inngangsbuss. Det er en ny inndataramme for Linux OS. Det gir en fullt utstyrt og brukervennlig inndatametode brukergrensesnitt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/ibus/ibus/archive/1.5.30/ibus-1.5.30.tar.gz
Nedlasting MD5 sum: a7facee0030e0e6adb41ecfd94be9e61
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 55 MB (legg til 3 MB for tester)
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; legg til 0,8 SBU for tester)
Unicode Character Database: https://www.unicode.org/Public/zipped/15.1.0/UCD.zip
DConf-0.40.0, ISO Codes-4.16.0, og Vala-0.56.17
GLib-2.80.4 (med GObject Introspection), GTK+-3.24.43, og libnotify-0.8.3
GTK-4.14.5 (for å bygge IM modul for det), GTK-Doc-1.34.0 (for å generere API dokumentasjon) D-Bus Python-1.3.2 og PyGObject-3.48.2 (begge for å bygge Python støttebiblioteket), libxkbcommon-1.7.0, Wayland-1.23.0 (begge for å bygge Wayland støtteprogrammene), EmojiOne, og libdbusmenu
Installer først Unicode Character Database som root bruker:
mkdir -p /usr/share/unicode/ucd && unzip -o ../UCD.zip -d /usr/share/unicode/ucd
Løs et problem med utdaterte skjemaoppføringer:
sed -e 's@/desktop/ibus@/org/freedesktop/ibus@g' \
-i data/dconf/org.freedesktop.ibus.gschema.xml
Hvis GTK-Doc-1.34.0 ikke er installert, fjern referansene til det:
if ! [ -e /usr/bin/gtkdocize ]; then sed '/docs/d;/GTK_DOC/d' -i Makefile.am configure.ac fi
Installer ibus ved å kjøre følgende kommandoer:
SAVE_DIST_FILES=1 NOCONFIGURE=1 ./autogen.sh &&
PYTHON=python3 \
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-python2 \
--disable-appindicator \
--disable-gtk2 \
--disable-emoji-dict &&
make
For å teste resultatene, kjør: make -k check. Testen kalt ibus-compose mislykkes fordi den bruker noen lokaler ikke installert i LFS. Testen som heter ibus-keypress vil mislykkes hvis den kjøres i et Wayland økt.
Nå, som root bruker:
make install
--disable-appindicator: Denne
bryteren deaktiverer bruk av libdbusmenu. Utelat hvis du
installerte den valgfrie avhengigheten.
--disable-emoji-dict:
Denne bryteren deaktiverer bruk av uttrykksikonordbøker.
Utelat hvis du installerte valgfrie pakker.
--disable-gtk2: Denne
bryteren fjerner avhengigheten av GTK+-2.
--enable-gtk4: Denne bryteren
aktiverer bygging av GTK 4
immodul. Bruk den hvis du har installert GTK 4.
--enable-python-library: Denne
bryteren aktiverer byggingen av Python støttebibliotek. Bruk den hvis du
har installert de valgfrie Python modulene.
--enable-wayland: Denne bryteren
aktiverer bygging av Wayland
støtteprogrammer. Den aktiveres automatisk hvis både
libxkbcommon-1.7.0 og Wayland-1.23.0 er installert.
NOCONFIGURE=1: Forhindrer
autogen.sh fra
å kjøre det genererte configure skriptet. Vi vil
kjøre skriptet manuelt i stedet for å stole på autogen.sh å kjøre det,
fordi autogen.sh vil sette
-fsanitize=address
-fsanitize=leak i CFLAGS
når den kjører configure, men de
kompilatoralternativene er ikke egnet for produktiv bruk, og
de kan også forårsake byggefeil.
PYTHON=python3: Denne
miljøvariabelen gjør at configure skriptet ser
etter Python 3. Bruk den
hvis du vil bygge Python 3
støttebibliotek.
SAVE_DIST_FILES=1: Denne
miljøvariabelen gjør at autogen.sh skriptet lagrer
noen forhåndsgenererte deklarasjonsfiler i stedet for å
overskrive dem når den kjøres. Dette forhindrer byggefeil ved
generering av ibusemojigen.h.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
Hvis GTK+-3 er installert og --disable-gtk3 ikke er brukt, ibus IM-modulen
for GTK+-3 vil bli installert. Som root bruker, oppdater en hurtigbufferfil
av GTK+-3 slik at de GTK baserte applikasjonene kan finne den
nyinstallert IM modulen og bruk ibus som inndatametode:
gtk-query-immodules-3.0 --update-cache
Kommandoen ovenfor oppdaterer hurtigbufferfilen for GTK+-3. GTK-4 krever ikke en hurtigbufferfil for IM-moduler.
ImageMagick er en samling av verktøy og biblioteker for å lese, skrive og manipulere et bilde i forskjellige bildeformater. Bildebehandlingsoperasjoner er tilgjengelige fra kommandolinjen. Bindinger for Perl og C++ er også tilgjengelig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.imagemagick.org/archive/releases/ImageMagick-7.1.1-36.tar.xz
Nedlasting MD5 sum: 208507e5465716767ab9c73f45e8ca06
Nedlastingsstørrelse: 10 MB
Estimert diskplass som kreves: 177 MB, 45 MB installert (med typiske avhengigheter; legg til 10 MB for sjekker)
Estimert byggetid: 0.7 SBU (med typiske avhengigheter; legg til 0,7 SBU for sjekker, begge med parallellisme=4)
ImageMagick kildeutgivelser er oppdatert ofte, og versjonen vist ovenfor er kanskje ikke lenger tilgjengelig fra nedlastingsstedene. Du kan laste ned en nyere versjon og bruke de eksisterende BLFS instruksjonene for å installere den. Sjansen er stor for at det vil fungerer helt fint, men dette har ikke blitt testet av BLFS teamet. Hvis pakkeversjonen vist ovenfor ikke er tilgjengelig fra de viste stedene ovenfor, kan du laste den ned fra BLFS pakkeserveren på Oregon State University: https://ftp.osuosl.org/pub/blfs/conglomeration/ImageMagick/.
De valgfrie avhengighetene som er oppført nedenfor bør
installeres hvis du trenger støtte for det spesifikke
formatet eller konverteringsverktøyet avhengigheten gir.
Ytterligere informasjon om avhengighetene finner du i
Install-unix.txt filen som
ligger i kildetreet og i tillegg utstede ./configure --help
kommanden. Et sammendrag av denne informasjonen, samt noen
tilleggsmerknader kan finnes på nett på https://imagemagick.org/script/install-source.php.
Clang fra LLVM-18.1.7, Cups-2.4.10, cURL-8.9.1, FFmpeg-7.0.2, fftw-3.3.10, p7zip-17.04 (LZMA), SANE-1.2.1, Wget-1.24.5, xdg-utils-1.2.1, xterm-393, Dmalloc, Electric Fence og PGP eller GnuPG-2.4.5 (du må gjøre noe hacking for å bruke GnuPG), Profiles
JasPer-4.2.4, Little CMS-2.16, libgxps-0.3.2, libjpeg-turbo-3.0.1, libjxl-0.10.3, libpng-1.6.43, libraw-0.21.2 (for dng filer, trenger thread-safe libraw_r), librsvg-2.58.3, libtiff-4.6.0, libwebp-1.4.0, OpenJPEG-2.5.2, Pango-1.54.0, DjVuLibre, FlashPIX (libfpx), FLIF, JBIG-KIT, libheif med libde265 (begge er nødvendig hvis du konverterer macOS heic bilder), libraqm, Liquid Rescale, OpenEXR, og RALCGM (eller ralcgm)
Dejavu fonts, ghostscript-10.03.1, Gimp-20240711, Graphviz-12.1.0, Inkscape-1.3.2, Blender, corefonts, GhostPCL, Gnuplot, POV-Ray, og Radiance
Enscript-1.6.6, Potrace-1.16, texlive-20240312 (eller install-tl-unx) AutoTrace, GeoExpress Kommandolinjeverktøy, AKA MrSID Verktøy (binær pakke), hp2xx, libwmf, UniConvertor, og Utah Raster Toolkit (eller URT-3.1b)
Installer ImageMagick ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-hdri \
--with-modules \
--with-perl \
--disable-static &&
make
Nå, som root bruker:
make DOCUMENTATION_PATH=/usr/share/doc/imagemagick-7.1.1 install
For å teste resultatene, utsted: make check. Merk at EPS, PS, og PDF tester krever en fungerende Ghostscript. En test i "make check" trenger “Helvetica” fra “Ghostscript Standard Fonter,” som er valgfritt installert i ghostscript-10.03.1 - den testen, og en annen, kan mislykkes, men all validering kan fortsatt bestå.
--enable-hdri:
Aktiverer bygging av en høy dynamisk rekkevidde versjon av
ImageMagick.
--with-modules:
Aktiverer støtte for dynamisk lastbare moduler.
--with-perl:
Aktiverer bygging av og installasjon av PerlMagick.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-fftw: Aktiverer støtte for
FFTW delt bibliotek.
--with-rsvg: Aktiverer støtte for
librsvg biblioteket.
--with-autotrace: Aktiverer
støtte for Autotrace
biblioteket.
--with-wmf: Aktiverer støtte for
libwmf biblioteket.
--with-gvc: Aktiverer støtte for
å bruke GraphViz.
--with-security-policy=open|limited|secure|websafe:
Hvis du ønsker å håndheve en annen policy enn standard
'open', se www/security-policy.html i kilden for
detaljer.
--with-windows-font-dir= :
Dette alternativet spesifiserer mappen der Windows CoreFonts
er installert.
<Some/Directory>
--with-dejavu-font-dir= :
Dette alternativet spesifiserer mappen der DejaVu fonts er
installert.
<Some/Directory>
Alternativene og parameterne som er oppført ovenfor er de eneste du bør sende til configure skriptet for å aktivere alle delegatavhengighetene. Alle andre avhengigheter blir automatisk oppdaget og brukt i bygget hvis de er installert.
|
animerer en sekvens av bilder |
|
|
sammenligner et bilde med et rekonstruert bilde |
|
|
setter sammen forskjellige bilder til det gitte basisbildet |
|
|
behandler et MSL skript for å lage et bilde |
|
|
konverterer bilde(r) fra ett format til et annet |
|
|
viser et bilde |
|
|
beskriver formatet og egenskapene til en bildefil |
|
|
tar opp et X vindu |
|
|
konvertere mellom bildeformater samt endre størrelse på et bilde, uskarpe, beskjære, fjerne flekker, ryste, tegne på, snu, bli med, prøve på nytt og mye mer |
|
|
vise informasjon om de installerte versjonene av ImageMagick bibliotekene |
|
|
forvandler et bilde |
|
|
setter sammen ulike bilder til et nytt bilde |
|
|
strømmer én eller flere pikselkomponenter i et bilde eller del av bildet til ditt valg av lagringsformater |
|
|
tillater lesing, manipulering og skriving av et
stort antall bildefilformater ved hjelp av
ImageMagick
biblioteket. Kjør make i
|
|
|
gir C API for ImageMagick |
|
|
er den anbefalte C API for ImageMagick. I motsetning til MagickCore API bruker den bare noen få ugjennomsiktige typer |
|
|
gir C++ API for ImageMagick |
ISO Codes pakken inneholder en liste over land, språk og valutanavn og det brukes som en sentral database for tilgang til disse dataene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.debian.org/debian/pool/main/i/iso-codes/iso-codes_4.16.0.orig.tar.xz
Nedlasting MD5 sum: 5760b5a359301397cc3ab2baa165c31c
Nedlastingsstørrelse: 3.7 MB
Estimert diskplass som kreves: 95 MB
Estimert byggetid: 0.1 SBU (med tester)
Mappen kalles iso-codes-4.16.0.
Installer ISO Codes ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Hvis du installerer ISO codes over en tidligere installert versjon, vil installasjonstrinnet mislykkes når du oppretter noen symbolkoblinger. For å oppdatere dem riktig, kjør:
sed -i '/^LN_S/s/s/sfvn/' */Makefile
Nå, som root bruker:
make install
lsof pakken er nyttig for en liste over åpne filer (LiSt Open Files) for en gitt løpende applikasjon eller prosess.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lsof-org/lsof/releases/download/4.99.0/lsof-4.99.0.tar.gz
Nedlasting MD5 sum: 8c858675f6d6e137df9b4e26ad6c46e8
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 14 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Nmap-7.95
(med en symbolsk lenke nc peker på ncat i /usr/bin; brukt i tester)
For å kjøre testene, bør følgende alternativ være aktivert i kjernekonfigurasjon:
General setup ---> [*] POSIX Message Queues [POSIX_MQUEUE]
Installer lsof ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Testene skal kjøres som root
bruker. De krever at POSIX meldingskøer er aktivert i
kjernen, og at Nmap-7.95 installeres med en symbolsk lenke
/usr/bin/nc som peker på
ncat.
make check
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
mandoc er et verktøy for å formatere manualsider.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://mandoc.bsd.lv/snapshots/mandoc-1.14.6.tar.gz
Nedlasting MD5 sum: f0adf24e8fdef5f3e332191f653e422a
Nedlastingsstørrelse: 684 KB
Estimert diskplass som kreves: 22 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Mange verktøy levert av mandoc konflikter med Man-DB i LFS. Bare bygg mandoc kommando:
./configure && make mandoc
For å teste resultatene, kjør: make regress.
Nå, som root bruker:
install -vm755 mandoc /usr/bin && install -vm644 mandoc.1 /usr/share/man/man1
PIN-Entry pakken inneholder en samling av enkle dialogbokser for inntasting av PIN- eller passordfrase som bruker Assuan protokollen som beskrevet av Ägypten project. PIN-Entry programmer påkalles vanligvis av gpg-agent nissen, men kan også kjøres fra kommandolinjen. Det finnes programmer for ulike tekstbaserte og GUI miljøer, inkludert grensesnitt designet for Ncurses (tekstbasert), og for det alminnelige GTK og Qt verktøysett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/pinentry/pinentry-1.3.1.tar.bz2
Nedlasting MD5 sum: 89a6844fcf76d3c022ce6c6e930c17ee
Nedlastingsstørrelse: 600 KB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: 0.3 SBU
libassuan-3.0.1 og libgpg-error-1.50
Emacs-29.4, FLTK-1.3.9, Gcr-4.3.0 (eller Gcr-3.41.2), KDE Frameworks-6.5.0 (eller kwayland-6.1.4 for lxqt), libsecret-0.21.4, qt5-components-5.15.14, og efl
Installer PIN-Entry ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-pinentry-tty \
--disable-pinentry-qt5 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-pinentry-qt5: Ikke bruk
qt5 selv om den er tilgjengelig. Qt5 er utdatert.
--enable-inside-emacs=yes/no:
Standard er no.
--enable-pinentry-qt=yes/no:
Standard er yes.
--enable-pinentry-gnome3=yes/no:
Standard er yes. Dette alternativet bruker Gcr-4.3.0 (eller Gcr-3.41.2 hvis
førstnevnte ikke er installert) for pin-inntastings dialog.
--enable-pinentry-tty: Standard
er 'maybe'.
|
er en symbolsk kobling til standard PIN-Entry programmet |
|
|
er et Ncurses tekstbasert PIN-Entry hjelpeprogram |
|
|
er en Emacs versjon av PIN-Entry hjelpeprogram |
|
|
er en FLTK PIN-Entry hjelpeprogram |
|
|
er en GNOME-3 PIN-Entry hjelpeprogram |
|
|
er en Qt4 eller 5 PIN-Entry hjelpeprogram |
|
|
er en tty PIN-Entry hjelpeprogram |
Screen er en terminal multiplexor som kjører flere separate prosesser, typisk interaktive skall, på en enkelt fysisk karakterbasert terminal. Hver virtuell terminal emulerer en DEC VT100 pluss flere ANSI X3.64 og ISO 2022 funksjoner og gir også konfigurerbar inndata og utdata oversettelse, seriell portstøtte, konfigurerbar logging, flerbrukerstøtte og mange tegnkodinger, inkludert UTF-8. Skjermøkter kan kobles fra og gjenopptas senere på en annen terminal.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/screen/screen-4.9.1.tar.gz
Nedlasting MD5 sum: 9a9bdc956bd93e4f0cb9e48678889e26
Nedlastingsstørrelse: 1020 KB
Estimert diskplass som kreves: 9.5 MB
Estimert byggetid: 0.1 SBU
Installer Screen ved å kjøre følgende kommandoer:
sh autogen.sh &&
./configure --prefix=/usr \
--infodir=/usr/share/info \
--mandir=/usr/share/man \
--with-socket-dir=/run/screen \
--with-pty-group=5 \
--with-sys-screenrc=/etc/screenrc &&
sed -i -e "s%/usr/local/etc/screenrc%/etc/screenrc%" {etc,doc}/* &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -m 644 etc/etcscreenrc /etc/screenrc
--with-socket-dir=/run/screen:
Dette alternativet plasserer per-bruker sockets på en
standard plassering.
--with-sys-screenrc=/etc/screenrc:
Dette alternativet plasserer den globale screenrc filen i
/etc.
--with-pty-group=5:
Dette alternativet angir gid til verdien som brukes av LFS.
sed -i -e "s%/usr/local/etc/screenrc%/etc/screenrc%" {etc,doc}/*: Denne kommandoen korrigerer konfigurasjonsfiler og dokumentasjonsfiler til stedet som brukes her for den globale screenrc filen.
Shared Mime Info pakken inneholder en MIME database. Dette tillater sentrale oppdateringer av MIME informasjon for alle støttede applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/xdg/shared-mime-info/-/archive/2.4/shared-mime-info-2.4.tar.gz
Nedlasting MD5 sum: aac56db912b7b12a04fb0018e28f2f36
Nedlastingsstørrelse: 7.5 MB
Estimert diskplass som kreves: 26 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Valgfri nedlasting, nødvendig for å kjøre testpakken: https://anduin.linuxfromscratch.org/BLFS/xdgmime/xdgmime.tar.xz
xdgmime md5sum: 7dfb4446705d345d3acd672024049e86
Installer Shared Mime Info ved å kjøre følgende kommandoer:
Hvis du ønsker å kjøre testpakken, må du først pakke ut
xdgmime tarballen inn i
gjeldende mappe, og kompilere det slik at meson kan finne den:
tar -xf ../xdgmime.tar.xz && make -C xdgmime
Bygg nå pakken:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D update-mimedb=true .. && ninja
Hvis du har fulgt instruksjonene ovenfor for å bygge xdgmime, for å teste resultatet kjør ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
update-mimedb=true: Denne parameteren forteller
at byggesystemet skal kjøre update-mime-database i
løpet av installasjon. Ellers må dette gjøres manuelt for at
MIME databasen kan brukes.
Sharutils pakken inneholder verktøy som kan lage "skall" arkiver.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/sharutils/sharutils-4.15.2.tar.xz
Nedlasting MD5 sum: 5975ce21da36491d7aa6dc2b0d9788e0
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 22 MB (med testpakken)
Estimert byggetid: 0.4 SBU (med testpakken)
Løs et heapbufferoverløp og et problem avdekket av GCC-10:
sed -i 's/BUFSIZ/rw_base_size/' src/unshar.c && sed -i '/program_name/s/^/extern /' src/*opts.h
Installer Sharutils ved å kjøre følgende kommandoer:
sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c && echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h && ./configure --prefix=/usr && make
For å teste resultatene, kjør make check.
Nå, som root bruker:
make install
|
oppretter "skall arkiver" (eller shar filer) som er i tekstformat og kan sendes |
|
|
pakker ut en shar fil |
|
|
leser en fil (eller som standard standardinngang) og skriver en kodet versjon til standardutgangen. Kodingen bruker kun skrive ut ASCII tegn |
|
|
leser en fil (eller som standard standardinngang) og dekoder den uuenkodede versjonen til standardutgangen |
Tidy HTML5 pakken inneholder et kommandolinjeverktøy og biblioteker som brukes til å lese HTML-, XHTML- og XML-filer og skrive renset markup. Den oppdager og korrigerer mange vanlige kodings feil og streber etter å produsere visuelt ekvivalent markup som er både W3C-kompatibel og kompatibel med de fleste nettlesere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/htacg/tidy-html5/archive/5.8.0/tidy-html5-5.8.0.tar.gz
Nedlasting MD5 sum: 0f6c55ef651e258adbe5750f555af50f
Nedlastingsstørrelse: 992 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.2 SBU
Installer Tidy HTML5 ved å kjøre følgende kommandoer:
cd build/cmake &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TAB2SPACE=ON \
../.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && rm -fv /usr/lib/libtidy.a && install -v -m755 tab2space /usr/bin
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
til å bygge utgivelsesbiblioteket uten noen feilsøkings
'påståelser' i koden.
-D
BUILD_TAB2SPACE=ON: Denne bryteren brukes til å
aktivere byggingen av tab2space verktøyet.
time verktøyet er et program som måler mange av CPU ressursene, for eksempel tid og minne, som andre programmer bruker. GNU versjonen kan formatere utdataene i vilkårlige måter ved å bruke en printf stil formatstreng for å inkludere ulike ressursmålinger.
Selv om skallet har en innebygd kommando som gir lignende funksjonalitet, er dette verktøyet påkrevd av LSB.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/time/time-1.9.tar.gz
Nedlasting MD5 sum: d2356e0fe1c0b85285d83c6b2ad51b5f
Nedlastingsstørrelse: 584 KB
Estimert diskplass som kreves: 4.0 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Installer Time ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
tree applikasjonen er nyttig for å vise ordboktreets innhold, inkludert filer, kataloger og lenker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.com/OldManProgrammer/unix-tree/-/archive/2.1.3/unix-tree-2.1.3.tar.bz2
Nedlasting MD5 sum: 9be227932ab457c29f33196544cd1e13
Nedlastingsstørrelse: 56 KB
Estimert diskplass som kreves: 560 KB
Estimert byggetid: mindre enn 0.1 SBU
Installer tree ved å kjøre følgende kommandoer:
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PREFIX=/usr MANDIR=/usr/share/man install
unixODBC pakken er en åpen kildekode ODBC (Open DataBase Connectivity) undersystem og en ODBC SDK for Linux, Mac OSX og UNIX. ODBC er en åpen spesifikasjon for å gi applikasjonsutviklere et forutsigbart API for å få tilgang til datakilder. Datakilder inkluderer valgfrie SQL servere og enhver datakilde med en ODBC driver. unixODBC inneholder følgende komponenter som brukes for å hjelpe til med manipulering av ODBC datakilder: en driveradministrator, et installasjonsbibliotek og kommandolinjeverktøy, kommandolinjeverktøy for å hjelpe installeringen av en driver og arbeid med SQL, drivere og driveroppsettbiblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lurcher/unixODBC/releases/download/2.3.12/unixODBC-2.3.12.tar.gz
Nedlasting MD5 sum: d62167d85bcb459c200c0e4b5a63ee48
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 28 MB
Estimert byggetid: 0.2 SBU (bruke parallellisme=4)
Installer unixODBC ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc/unixODBC &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
find doc -name "Makefile*" -delete &&
chmod 644 doc/{lst,ProgrammerManual/Tutorial}/* &&
install -v -m755 -d /usr/share/doc/unixODBC-2.3.12 &&
cp -v -R doc/* /usr/share/doc/unixODBC-2.3.12
--enable-drivers: Denne
parameteren gjør det mulig å bygge driverne som ble
installert som standard i tidligere versjoner.
--enable-drivers-conf: Denne
parameteren aktiverer byggingen av
driverkonfigurasjonsbibliotekene som ble installert som
standard i tidligere versjoner.
Filene i /etc/unixODBC er
ment å konfigureres av systemadministratoren (eller ODBC
nettstedets administrator hvis passende rettigheter er gitt
til /etc/unixODBC). Disse
filene er ikke ment å bli direkte redigert. ODBC
installasjonsbiblioteket er ansvarlig for å lese og skrive
unixODBC
konfigurasjonsfiler.
Dessverre er det ikke mange man, eller noen
info sider
for de ulike programmene som er tilgjengelige i
unixODBC pakken. Sammen
med informasjonen i “Korte Beskrivelser” nedenfor og
dokumentasjonen installert i /usr/share/doc/unixODBC-2.3.12, er det
mange README filer i hele
kildetreet hvor bruken og funksjonaliteten til programmene
kan finnes. I tillegg kan du bruke parameteren -? for syntaks og bruksinformasjon. Til
slutt, unixODBC nettside
på http://www.unixodbc.org/ har
veldig bra informasjon.
|
er et verktøy som brukes til å sjekke et delt bibliotek for å se om det kan bli lastet og om et gitt symbol finnes i den |
|
|
er et verktøy som kan brukes til å sende SQL til en datakilde og formatere/skrive ut resultater. Den kan brukes i batch eller interaktiv modus |
|
|
gir samme funksjonalitet som isql programmet |
|
|
brukes til å finne ut detaljer om installasjonen av unixODBC pakken |
|
|
er et verktøy laget for installeringsskript/RPM
skrivere. Det er en kommandolinjegrensesnitt til
nøkkelfunksjonalitet i |
|
|
er et verktøy som prøver å sjekke om en ODBC driver ble bygget med 32-biters eller 64-biters SQLLEN typer |
xdg-dbus-proxy pakken inneholder en filtreringsproxy for D-Bus tilkoblinger. Dette er nyttig for videresending av data inn og ut av en sandkasse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/flatpak/xdg-dbus-proxy/releases/download/0.1.5/xdg-dbus-proxy-0.1.5.tar.xz
Nedlasting MD5 sum: b496f34b0fa4747a66eb5adb63b7d626
Nedlastingsstørrelse: 124 KB
Estimert diskplass som kreves: 1.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer xdg-dbus-proxy ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Xdg-user-dirs er et verktøy for å hjelpe deg med å administrere “godt kjente” brukermappersom skrivebordsmappen og musikkmappen. Den håndterer også lokalisering (dvs. oversettelse) av filnavnene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://user-dirs.freedesktop.org/releases/xdg-user-dirs-0.18.tar.gz
Nedlasting MD5 sum: dc7decea7ffb58cd067eff1fe1798cae
Nedlastingsstørrelse: 267 KB
Estimert diskplass som kreves: 3.0 MB
Estimert byggetid: mindre enn 0.1 SBU
docbook-xml-4.5, docbook-xsl-nons-1.79.2, og libxslt-1.1.42 (alle tre for å bygge manualsidene)
Installer xdg-user-dirs ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-documentation &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-documentation:
Deaktiver installasjon av manualsidene. Fjern denne bryteren
hvis du har installert de valgfrie avhengighetene og du
ønsker å installere manualsidene til denne pakken.
Dette kapittelet inneholder hovedsakelig maskinvareverktøy. Den inneholder også noen applikasjoner som brukes av andre applikasjoner i boken for installasjons- eller konfigurasjonsformål.
AccountsService pakken gir et sett med D-Bus grensesnitt for spørring og manipulering av brukerkontoinformasjon og en implementering av disse grensesnittene basert på usermod(8), useradd(8), og userdel(8) kommandoene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/accountsservice/accountsservice-23.13.9.tar.xz
Nedlasting MD5 sum: 03dccfe1b306b7ca19743e86d118e64d
Nedlastingsstørrelse: 621 KB
Estimert diskplass som kreves: 9.8 MB (legg til 0.5 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
GLib-2.80.4 (med GObject Introspection), Systemd-256.4 (kjøretid), og Vala-0.56.17
GTK-Doc-1.34.0 og xmlto-0.0.29
Gi først nytt navn til en katalog hvis tilstedeværelse hindrer byggesystemet fra å kjøre hvis dbusmock-0.32.1 ikke er installert:
mv tests/dbusmock{,-tests}
Deretter fiks testene slik at den nye mappen blir funnet, og tilpass det for Python 3.12.0 eller nyere:
sed -e '/accounts_service\.py/s/dbusmock/dbusmock-tests/' \
-e 's/assertEquals/assertEqual/' \
-i tests/test-libaccountsservice.py
Rett opp en test som mislykkes hvis en_IE.UTF-8 lokalitet ikke er installert:
sed -i '/^SIMULATED_SYSTEM_LOCALE/s/en_IE.UTF-8/en_HK.iso88591/' tests/test-daemon.py
Installer AccountsService ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D admin_group=adm
Tilpass nå den sendte mocklibc kopien for å tillate å bygge testpakken med GCC 14 eller nyere:
grep 'print_indent' ../subprojects/mocklibc-1.0/src/netgroup.c \
| sed 's/ {/;/' >> ../subprojects/mocklibc-1.0/src/netgroup.h &&
sed -i '1i#include <stdio.h>' \
../subprojects/mocklibc-1.0/src/netgroup.h
Bygg pakken:
ninja
For å teste pakken, utsted ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D admin_group=adm:
Denne bryteren setter gruppen for administratorkontoer.
-Ddocbook=true: Denne bryteren
gjør det mulig å bygge dokumentasjonen for D-Bus grensesnitt
API (trenger xmlto-0.0.29).
-D gtk_doc=true: Denne bryteren
gjør det mulig å bygge libaccountsservice API dokumentasjonen
(trenger GTK-Doc-1.34.0).
-D vapi=false: Denne bryteren
deaktiverer bygging av vala bindingene. Bruk den hvis du ikke
har installert Vala-0.56.17.
For å tillate at brukere i adm gruppen blir oppført som
administratorer, utfør følgende kommandoer som root bruker:
cat > /etc/polkit-1/rules.d/40-adm.rules << "EOF"
polkit.addAdminRule(function(action, subject) {
return ["unix-group:adm"];
});
EOF
/usr/libexec)
acpid Advanced Configuration and Power Interface event daemon) er en helt fleksibel, helt utvidbar nisse for å levere ACPI hendelser. Den lytter på netlink grensesnitt og når en hendelse inntreffer, kjører programmer for å håndtere hendelsen. Programmene den kjører er konfigurert gjennom et sett med konfigurasjonsfiler, som kan slippes på plass av pakker eller av brukeren.
Noen andre pakker kan også håndtere noen ACPI hendelser, og
de kan komme i konflikt med denne pakken. For eksempel,
Systemd-256.4 (les
dokumentasjonen for Handle*= i
logind.conf(5)
for detaljer) og UPower-1.90.4 (brukes av mange
skrivebordsmiljøer som f.eks GNOME, KDE og XFCE for
håndtering av ACPI hendelser). Hvis du har installert en
slik pakke og det er nok for din brukssituasjon, er denne
pakken sannsynligvis ikke nødvendig. Hvis du virkelig
trenger denne pakken, må du være nøye med å konfigurere den
og de andre pakkene som håndterer ACPI hendelser for å
unngå konflikter. Spesielt Systemd-256.4 håndterer noen
ACPI hendelser som standard, så håndteringen av disse
hendelsene av Systemd-256.4
bør være deaktivert først hvis du håndterer disse
hendelsene med acpid (igjen, les logind.conf(5)
for detaljer).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/acpid2/acpid-2.0.34.tar.xz
Nedlasting MD5 sum: 988c2e3fd5ba0ea4492d3ba7273af295
Nedlastingsstørrelse: 160 KB
Estimert diskplass som kreves: 1.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer acpid ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--docdir=/usr/share/doc/acpid-2.0.34 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -v -m755 -d /etc/acpi/events && cp -r samples /usr/share/doc/acpid-2.0.34
acpid er konfigurert av
brukerdefinerte hendelser. Plasser hendelsesfiler under
/etc/acpi/events mappen. Hvis
en hendelse inntreffer, acpid går igjen gjennom
hendelsesfilene for å se om regex definert etter "hendelse"
stemmer overens. Hvis de gjør det, blir handlingen utført.
Følgende korte eksempel vil suspendere systemet når den bærbare datamaskin lokket er lukket. Eksemplet deaktiverer også standardhåndteringen av lokkets hendelse av Systemd-256.4 når systemet er på batteri og ikke koblet til noen ekstern skjerm, for å unngå konflikt:
cat > /etc/acpi/events/lid << "EOF"event=button/lid action=/etc/acpi/lid.shEOF cat > /etc/acpi/lid.sh << "EOF"#!/bin/sh /bin/grep -q open /proc/acpi/button/lid/LID/state && exit 0 /usr/bin/systemctl suspendEOF chmod +x /etc/acpi/lid.sh mkdir -pv /etc/systemd/logind.conf.d echoHandleLidSwitch=ignore> /etc/systemd/logind.conf.d/acpi.conf
Dessverre merker ikke alle datamaskiner ACPI hendelser på
samme måte (for eksempel kan lokket gjenkjennes som
LID0 i stedet for LID). For å finne ut hvordan knappene dine
gjenkjennes, bruk acpi_listen verktøyet. Se
også i samples mappen under
/usr/share/doc/acpid-2.0.34 for
flere eksempler.
For å starte acpid nissen ved
systemstart, installer systemd enheten fra blfs-systemd-units-20240801 pakken
ved å kjøre følgende kommando som root bruker:
make install-acpid
Denne pakken bruker socketbasert aktivering og vil bli startet når noe trenger det. Ingen frittstående enhetsfil er gitt for denne pakken.
|
er et program som lytter etter ACPI hendelser og utfører reglene som samsvarer med den mottatte hendelsen |
|
|
er et enkelt verktøy som kobles til acpid og lytter etter hendelser |
|
|
er et monitorprogram som kobles til tre kilder til ACPI hendelser (hendelsesfil, netlink og input-lag) og rapporterer deretter om hva det ser mens den er tilkoblet |
at pakken gir en forsinket jobbutførelse og skriptbehandling. Det kreves for Linux Standards Base (LSB) samsvar.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/at/at_3.2.5.orig.tar.gz
Nedlasting MD5 sum: ca3657a1c90d7c3d252e0bc17feddc6e
Nedlastingsstørrelse: 130 KB
Estimert diskplass som kreves: 1.9 MB (inkludert tester)
Estimert byggetid: mindre enn 0.1 SBU
En MTA
Før bygging at, som
root bruker du bør opprette
gruppen og brukeren atd som
vil kjøre atd
nissen:
groupadd -g 17 atd && useradd -d /dev/null -c "atd daemon" -g atd -s /bin/false -u 17 atd
Installer at ved å kjøre følgende kommandoer:
./configure --with-daemon_username=atd \
--with-daemon_groupname=atd \
SENDMAIL=/usr/sbin/sendmail \
--with-jobdir=/var/spool/atjobs \
--with-atspool=/var/spool/atspool \
--with-systemdsystemunitdir=/lib/systemd/system &&
make -j1
For å teste resultatene, kjør: make test.
Nå, som root bruker:
make install docdir=/usr/share/doc/at-3.2.5 \
atdocdir=/usr/share/doc/at-3.2.5
/etc/at.allow og /etc/at.deny bestemmer hvem som kan sende
inn jobber via at eller skript.
Hvis At er bygget med Linux PAM støtte, må du opprette en PAM konfigurasjonsfil for å få den til å fungere riktig med BLFS.
Utfør følgende kommandoer som root bruker for å opprette
konfigurasjonenfilen for Linux
PAM:
cat > /etc/pam.d/atd << "EOF"
# Begin /etc/pam.d/atd
auth required pam_unix.so
account required pam_unix.so
password required pam_unix.so
session required pam_unix.so
# End /etc/pam.d/atd
EOF
|
setter i kø, undersøker eller sletter jobber for senere utførelse |
|
|
er nissen som kjører jobber i kø for senere kjøring |
|
|
viser brukerens ventende jobber, eller alle jobber, hvis superbruker |
|
|
sletter jobber, identifisert med jobbnummeret deres |
|
|
kjører jobber i kø for senere utførelse |
|
|
er et skript som utfører kommandoer når systembelastningsnivåene tillater det |
Autofs kontrollerer driften av automontering nissen. Automount nissen monterer automatisk filsystemer når de åpnes og demonterer dem etter en periode med inaktivitet. Dette blir gjort basert på et sett med forhåndskonfigurerte kart.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/daemons/autofs/v5/autofs-5.1.9.tar.xz
Nedlasting MD5 sum: 06fb59a03c82364a0d788435b6853d70
Nedlastingsstørrelse: 328 KB
Estimert diskplass som kreves: 5.7 MB
Estimert byggetid: mindre enn 0.1 SBU
libtirpc-1.3.5 og rpcsvc-proto-1.4.4
nfs-utils-2.6.4, libnsl-2.0.1, libxml2-2.13.3, MIT Kerberos V5-1.21.3, OpenLDAP-2.6.8 (kun klient), og Cyrus SASL-2.1.28
Bekreft at automounter kjernestøtte er aktivert:
File systems ---> <*/M> Kernel automounter support (supports v3, v4 and v5) [AUTOFS_FS]
Aktiver eventuelt følgende alternativer i kjernekonfigurasjonen:
File systems ---> [*] Network File Systems ---> [NETWORK_FILESYSTEMS] <*/M> NFS client support [NFS_FS] <*/M> SMB3 and CIFS support (advanced network filesystem) [CIFS]
Rekompiler og installer den nye kjernen, om nødvendig.
Installer Autofs ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--with-mapdir=/etc/autofs \
--with-libtirpc \
--with-systemd \
--without-openldap \
--mandir=/usr/share/man &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis autofs allerede er installert på ditt system, sørg for å sikkerhetskopiere konfigurasjonsfilene dine. De blir overskrevet av følgende kommando.
Installer standard konfigurasjonsfil, fortsatt som
root bruker:
make install_samples
--with-libtirpc:
Denne bryteren tvinger pakken til å bruke libtirpc for RPC
funksjonalitet i stedet for å stole på implementering fra
Glibc, som ble fjernet i LFS 8.1.
--with-systemd: Denne
bryteren muliggjør installasjon av de medfølgende systemd
enhetene.
--without-openldap:
Denne bryteren deaktiverer openldap hvis funnet. Hvis
openldap er ønsket, utelat denne bryteren. Merk at openldap
støtte i autofs krever MIT Kerberos V5-1.21.3.
/etc/sysconfig/autofs.conf,
/etc/autofs/auto.master,
/etc/autofs/auto.misc, og
/etc/autofs/auto.net
Installasjonsprosessen oppretter auto.master, auto.misc, auto.smb, og auto.net. Bytt ut auto.master filen med følgende kommandoer
som root bruker:
mv /etc/autofs/auto.master /etc/autofs/auto.master.bak &&
cat > /etc/autofs/auto.master << "EOF"
# Begin /etc/autofs/auto.master
/media/auto /etc/autofs/auto.misc --ghost
#/home /etc/autofs/auto.home
# End /etc/autofs/auto.master
EOF
Denne filen oppretter en ny mediemappe, /media/auto som vil overlegge alle
eksisterende mapper med samme navn. I dette eksemplet filen
/etc/autofs/auto.misc, har
linjen:
cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
som vil montere en cdrom som /media/auto/cd hvis den mappen er lest.
--ghost alternativet forteller
automounter å lage “ghost” versjoner (dvs. tomme mapper)
for alle monteringspunktene som er oppført i
konfigurasjonsfilen uavhengig av om noen av filsystemene
faktisk er montert eller ikke. Dette er veldig praktisk og
anbefales på det sterkeste, fordi det vil vise de
tilgjengelige automonterbare filsystemene som eksisterende
mapper, selv når filsystemene deres for øyeblikket ikke er
montert. Uten --ghost
alternativet, må du huske navnene på mappene. Så snart du
prøver å få tilgang til en av dem, vil mappen bli opprettet
og filsystemet vil bli montert. Når filsystemet demonteres
igjen, vil mappen også bli ødelagt, med mindre --ghost alternativet ble gitt.
En alternativ metode ville være å spesifisere en annen
automontering plassering som f.eks /var/lib/auto/cdrom og lage en symbolsk
lenke fra /media/cdrom til
automonteringsstedet.
auto.misc filen må
konfigureres til din fungerende maskinvare. Den innlastede
konfigurasjonsfilen skal laste inn cdrom hvis /dev/cdrom er aktiv eller den kan
redigeres til å samsvare med enhetsoppsettet ditt.
Eksempler på disketter er tilgjengelige i filen og enkelt
aktivert. Dokumentasjon for denne filen er tilgjengelig ved
bruk av man 5
autofs kommandoen.
På den andre linjen, hvis aktivert, vil en brukers
hjemmemappe bli montert via NFS ved innlogging.
/etc/home.auto må eksistere
og ha en oppføring som ligner på:
joe example.org:/export/home/joe
hvor mappen /export/home/joe
er eksportert via NFS fra systemets example.org. NFS deling
er dekket på neste side.
Denne pakken kan også brukes til å montere SMB delinger, men den funksjonen er ikke konfigurert i disse instruksjonene. For ytterligere konfigurasjonsinformasjon, se man sidene for auto.master(5). Det finnes også nettressurser som dette AUTOFS HOWTO tilgjengelig.
For å starte Autofs ved
oppstart, aktiver den tidligere installerte systemd enhet
ved å kjøre følgende kommando som root bruker:
systemctl enable autofs
Du kan også spesifisere OPTIONS variabelen i /etc/sysconfig/autofs filen med
eventuelle tilleggsparametere som du kanskje vil sende
til automount nissen.
BlueZ pakken inneholder Bluetooth protokollstabel for Linux.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/bluetooth/bluez-5.77.tar.xz
Nedlasting MD5 sum: 02878560e89165540c4a0b8c060d1092
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 168 MB (med tester)
Estimert byggetid: 0.7 SBU (bruker parallellisme=4; med tester)
dbus-1.14.10, GLib-2.80.4, og libical-3.0.18
docutils-0.21.2 (for å generere man sider)
Hvis du bygger denne pakken for å bruke bluetooth enheter (i stedet for som en byggeavhengighet), aktiverer følgende alternativer i kjernekonfigurasjonen, også alternativene i “Cryptographic API” seksjonen hvis du har tenkt å kjøre testene, og kompilere kjernen på nytt om nødvendig:
General setup ---> # If it is disabled, [TIMERFD] and [EVENTFD] will be hidden and # enabled implicitly. We DO NOT recommend to enable [EXPERT] # unless you are really an expert user: [ /*] Configure standard kernel features (expert users) ---> [EXPERT] [*] Enable timerfd() system call [TIMERFD] [*] Enable eventfd() system call [EVENTFD] [*] Networking support ---> [NET] <*/M> Bluetooth subsystem support ---> [BT] [*] Bluetooth Classic (BR/EDR) features [BT_BREDR] <*/M> RFCOMM protocol support [BT_RFCOMM] [*] RFCOMM TTY support [BT_RFCOMM_TTY] <*/M> BNEP protocol support [BT_BNEP] [*] Multicast filter support [BT_BNEP_MC_FILTER] [*] Protocol filter support [BT_BNEP_PROTO_FILTER] <*/M> HIDP protocol support [BT_HIDP] Bluetooth device drivers ---> # Select the appropriate drivers for your bluetooth hardware. # There are more vendor-specific drivers not listed here: < /*/M> HCI USB driver [BT_HCIBTUSB] < /*/M> HCI SDIO driver [BT_HCIBTSDIO] < /*/M> HCI UART driver [BT_HCIUART] <*/M> RF switch subsystem support ---> [RFKILL] -*- Cryptographic API ---> [CRYPTO] Crypto core or helper ---> <*/M> Userspace cryptographic algorithm configuration [CRYPTO_USER] Block ciphers ---> <*/M> AES (Advanced Encryption Standard) [CRYPTO_AES] AEAD (authenticated encryption with associated data) ciphers ---> <*/M> CCM (Counter with Cipher Block Chaining-MAC) [CRYPTO_CCM] Hashes, digests, and MACs ---> <*/M> CMAC (Cipher-based MAC) [CRYPTO_CMAC] Userspace interface ---> <*/M> Hash algorithms [CRYPTO_USER_API_HASH] <*/M> Symmetric key cipher algorithms [CRYPTO_USER_API_SKCIPHER] <*/M> AEAD cipher algorithms [CRYPTO_USER_API_AEAD]
Installer BlueZ ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-manpages \
--enable-library &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install && ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin
Installer hovedkonfigurasjonsfilen som root bruker:
install -v -dm755 /etc/bluetooth && install -v -m644 src/main.conf /etc/bluetooth/main.conf
Hvis ønskelig, installer API dokumentasjonen som root bruker:
install -v -dm755 /usr/share/doc/bluez-5.77 && install -v -m644 doc/*.txt /usr/share/doc/bluez-5.77
--disable-manpages:
Denne bryteren deaktiverer generering av manualsidene på
grunn av avhengigheten av 'rst2man' i docutils. Fjern denne
bryteren hvis du har docutils-0.21.2 installert og ønsker å
generere manualsidene.
--enable-library:
Denne bryteren gjør det mulig å bygge BlueZ 4 kompatibilitetsbibliotek som
kreves av noen applikasjoner.
ln -svf ../libexec/bluetooth/bluetoothd /usr/sbin: Denne kommandoen gjør tilgangen til bluetooth nissen mer praktisk.
/etc/bluetooth/main.conf
installeres automatisk under installasjonen. I tillegg er
det to tilleggs konfigurasjonsfiler. Du kan eventuelt
installere følgende filer som root bruker:
cat > /etc/bluetooth/rfcomm.conf << "EOF"
# Start rfcomm.conf
# Set up the RFCOMM configuration of the Bluetooth subsystem in the Linux kernel.
# Use one line per command
# See the rfcomm man page for options
# End of rfcomm.conf
EOF
cat > /etc/bluetooth/uart.conf << "EOF"
# Start uart.conf
# Attach serial devices via UART HCI to BlueZ stack
# Use one line per device
# See the hciattach man page for options
# End of uart.conf
EOF
For å starte bluetoothd nissen ved
oppstart, aktiver den tidligere installerte systemd enheten
ved å kjøre følgende kommando som root bruker:
systemctl enable bluetooth
For å starte obexd nissen for en
brukerøkt (for å støtte noen Bluetooth programmer som
bruker det), aktiverer den tidligere installerte systemd
enheten for alle brukere ved å kjøre følgende kommando som
root bruker:
systemctl enable --global obex
Systemd vil starte Bluetooth nissen bare når en bluetooth enhet oppdages på systemet.
|
er et Bluetooth konfigurasjonsverktøy |
|
|
er det interaktive Bluetooth kontrollprogrammet |
|
|
er Bluetooth nissen |
|
|
gir tilgang til Bluetooth undersystemmonitoren infrastruktur for lesing av HCI spor |
|
|
brukes til å konvertere en fil som trengs av Broadcom enheter til hcd format (Broadcom bluetooth firmware). |
|
|
brukes til å sende en L2CAP ekkoforespørsel til Bluetooth MAC adresse oppgitt i stiplet sekskantet notasjon |
|
|
er et L2CAP testprogram |
|
|
brukes til å teste RFCOMM kommunikasjon på Bluetooth stabelen |
|
|
inneholder BlueZ 4 API funksjoner |
Bubblewrap er en setuid implementering av bruker navneområder, eller sandboxing, som gir tilgang til et undersett av kjernefunksjoner for brukernavn. Bubblewrap lar brukereide prosesser kjøre i et isolert miljø med begrenset tilgang til det underliggende filsystemet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/containers/bubblewrap/releases/download/v0.9.0/bubblewrap-0.9.0.tar.xz
Nedlasting MD5 sum: adcbd7c08ac068a9328ec93cd83716e5
Nedlastingsstørrelse: 120 KB
Estimert diskplass som kreves: 3.3 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
libxslt-1.1.42 (for å generere manualsider) og libseccomp-2.5.5 (bygget med python bindinger, for tester)
Da denne pakken startet, forventet oppstrøms at den kunne installeres med suid-root. Det var lenge siden, suid-root anses generelt som en dårlig idé. I tillegg til standard navneområder, krever denne pakken at valgfritt brukernavneområde skal aktiveres. Hvis det ennå ikke er aktivert, velg følgende alternativ i kjernekonfigurasjonen og kompiler kjernen på nytt:
General setup ---> -*- Namespaces support ---> [NAMESPACES] [*] User namespace [USER_NS]
Installer Bubblewrap ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Deretter, hvis du ønsker å kjøre testpakken, fiks et problem forårsaket av merged-/usr konfigurasjon i LFS:
sed 's@symlink usr/lib64@ro-bind-try /lib64@' -i ../tests/libtest.sh
For å teste resultatene, utsted (som en annen bruker enn
root bruker): ninja test
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Colord er en systemtjeneste som gjør det enkelt å administrere, installere og generere fargeprofiler. Den brukes hovedsakelig av GNOME Color Manager for systemintegrasjon og bruk når ingen brukere er pålogget.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/colord/releases/colord-1.4.7.tar.xz
Nedlasting MD5 sum: 94bd795efa1931a34990345e4ac439a8
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 18 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/colord-1.4.7-upstream_fixes-1.patch
dbus-1.14.10, GLib-2.80.4 (GObject Introspection anbefalt), Little CMS-2.16, Polkit-125, og SQLite-3.46.1
libgudev-238, libgusb-0.4.9, Systemd-256.4 (kjøretid), og Vala-0.56.17
gnome-desktop-44.1 og colord-gtk-0.3.1 (for å bygge eksempelverktøyene), DocBook-utils-0.6.14, GTK-Doc-1.34.0, libxslt-1.1.42, SANE-1.2.1, ArgyllCMS, og Bash Completion
Først, fiks feil bruk av sqlite API som forårsaker testfeil og potensial kjøretidskrasj, samt en altfor streng systemd herdingsinnstilling som gjør at systemd tjenesten ikke starter:
patch -Np1 -i ../colord-1.4.7-upstream_fixes-1.patch
Det bør være en dedikert bruker og gruppe for å ta kontroll
over colord nissen etter at den har startet. Utfør følgende
kommandoer som root bruker:
groupadd -g 71 colord &&
useradd -c "Color Daemon Owner" -d /var/lib/colord -u 71 \
-g colord -s /bin/false colord
Installer Colord ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D daemon_user=colord \
-D vapi=true \
-D systemd=true \
-D libcolordcompat=true \
-D argyllcms_sensor=false \
-D bash_completion=false \
-D docs=false \
-D man=false &&
ninja
Nå, som root bruker:
ninja install
For å teste resultatene, kjør: ninja test. En test,
colord-self-test-daemon, vil
mislykkes hvis pakken allerede er installert. Testpakken må
kjøres med systemomfattende D-Bus nissen kjørende.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
daemon_user=colord: Denne bryteren brukes så
colord nissen vil kjøre som en uprivilegert bruker i stedet
for som root bruker.
-D vapi=true: Denne
bryteren aktiverer byggingen av Vala bindinger. Fjern hvis du ikke har
Vala-0.56.17 installert.
-D systemd=true:
Denne bryteren aktiverer installasjon av systemd tjenesten.
-D
libcolordcompat=true: Denne bryteren aktiverer
byggingen av et kompatibilitetsbibliotek for eldre pakker som
bruker Colord.
-D
argyllcms_sensor=false: Denne bryteren
deaktiverer tArgLLCMS sensordriver. Utelat hvis du har
ArgyllCMS installert og
ønsker å bruke den.
-D
bash_completion=false: Denne bryteren deaktiverer
Bash Completion støtte for Colord applikasjoner.
-D docs=false: Denne
bryteren deaktiverer byggingen av dokumentasjon. Utelat hvis
du har GTK-Doc-1.34.0 tilgjengelig.
-D man=false: Denne
bryteren deaktiverer byggingen av man sider. Utelat hvis du
har DocBook-utils-0.6.14 tilgjengelig.
Namespaced versjoner av docbook-xsl stilarkene kreves også.
|
er verktøyet for oppretting av profiler for Color Manager |
|
|
er et verktøy som brukes til å fikse metadata i ICC profiler |
|
|
dumper innholdet i en ICC profil som lesbar tekst |
|
|
er testverktøyet for Color Manager |
|
|
er et tekstmodusprogram som lar deg samhandle med colord på kommandolinjen |
|
|
inneholder Colord API funksjoner |
|
|
inneholder eldre API funksjoner for kompatibilitet med eldre applikasjoner |
|
|
inneholder interne API funksjoner for programmene som følger med Colord |
|
|
inneholder en enkel skjermmaskinvare fargemåler |
cpio pakken inneholder verktøy for arkivering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/cpio/cpio-2.15.tar.bz2
Nedlasting MD5 sum: 3394d444ca1905ea56c94b628b706a0b
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 21 MB (med tester og dokumenter)
Estimert byggetid: 0.3 SBU (med tester og dokumenter)
texlive-20240312 (eller install-tl-unx)
Installer cpio ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-mt \
--with-rmt=/usr/libexec/rmt &&
make &&
makeinfo --html -o doc/html doc/cpio.texi &&
makeinfo --html --no-split -o doc/cpio.html doc/cpio.texi &&
makeinfo --plaintext -o doc/cpio.txt doc/cpio.texi
Hvis du har texlive-20240312 installert og ønsker å lage PDF eller Postscript dokumentasjon, utsted en eller begge av følgende kommandoer:
make -C doc pdf && make -C doc ps
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install &&
install -v -m755 -d /usr/share/doc/cpio-2.15/html &&
install -v -m644 doc/html/* \
/usr/share/doc/cpio-2.15/html &&
install -v -m644 doc/cpio.{html,txt} \
/usr/share/doc/cpio-2.15
Hvis du har laget PDF eller Postscript dokumentasjon,
installer den ved å utstede følgende kommandoer som
root bruker:
install -v -m644 doc/cpio.{pdf,ps,dvi} \
/usr/share/doc/cpio-2.15
--enable-mt: Denne
parameteren tvinger bygging og installasjon av mt programmet.
--with-rmt=/usr/libexec/rmt:
Denne parameteren hemmer å bygge rmt programmet fordi det
allerede er installert av Tar pakke i LFS.
cups-pk-helper pakken inneholder en PolicyKit hjelper som brukes til å konfigurere Cups med finmaskede privilegier.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/cups-pk-helper/releases/cups-pk-helper-0.2.7.tar.xz
Nedlasting MD5 sum: 0cdadec9ea8f88b7fc7af8ca206da2bd
Nedlastingsstørrelse: 56 KB
Estimert diskplass som kreves: 5.3 MB
Estimert byggetid: 0.1 SBU
Installer cups-pk-helper ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Selv om D-Bus ble bygget i LFS, det er noen funksjoner levert av pakken som andre BLFS pakker trenger, men deres avhengigheter passet ikke inn i LFS.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://dbus.freedesktop.org/releases/dbus/dbus-1.14.10.tar.xz
Nedlasting MD5 sum: 46070a3487817ff690981f8cd2ba9376
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 23 MB (legg til 25 MB for tester)
Estimert byggetid: 0.2 SBU (legg til 1.5 SBU for tester)
Xorg Biblioteker (for dbus-launch programmet)
Systemd-256.4 (kjøretid, for registrering av tjenester lansert av D-Bus øktnissen som systemd brukertjenester); For testene: D-Bus Python-1.3.2, PyGObject-3.48.2, og Valgrind-3.23.0; for dokumentasjon: Doxygen-1.12.0, xmlto-0.0.29, Ducktype, og Yelp Tools
Installer D-Bus ved å kjøre følgende kommandoer (det kan være lurt å se gjennom utdataene fra ./configure --help først og legg til ønskede parametere til configure kommandoen vist nedenfor):
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--runstatedir=/run \
--enable-user-session \
--disable-doxygen-docs \
--disable-xml-docs \
--disable-static \
--docdir=/usr/share/doc/dbus-1.14.10 \
--with-system-socket=/run/dbus/system_bus_socket &&
make
Se nedenfor for testinstruksjoner.
Nå, som root bruker:
make install
Hvis du bruker en DESTDIR installasjon, dbus-daemon-launch-helper
må fikses etterpå. Utsted, som root bruker:
chown -v root:messagebus /usr/libexec/dbus-daemon-launch-helper && chmod -v 4750 /usr/libexec/dbus-daemon-launch-helper
Mange tester er deaktivert med mindre både D-Bus Python-1.3.2 og PyGObject-3.48.2 har blitt installert. Det må kjøres som en uprivilegert bruker fra en lokal økt med bussadresse. For å kjøre standard tester utsted make check.
Hvis du vil kjøre enhetsregresjonstestene, krever konfigureringen tilleggsparametere som viser tilleggsfunksjonalitet i binærfiler som ikke er ment å brukes i en produksjonsbygning av D-Bus. Hvis du ønsker å kjøre testene, utsted følgende kommandoer (for testene trenger du ikke å bygge dokumenter):
make distclean &&
PYTHON=python3 ./configure --enable-tests \
--enable-asserts \
--disable-doxygen-docs \
--disable-xml-docs &&
make &&
make check
En test, test-autolaunch, er kjent for å mislykkes. Det har vært rapporter om at testene kan mislykkes hvis de kjøres i et Midnight Commander skall. Du kan få feilmeldinger om at minnet er tomt når kjører testene. Disse er normale og kan trygt ignoreres.
--disable-doxygen-docs: Denne
bryteren deaktiverer at doxygen dokumentasjon bygges og
installeres, hvis du har doxygen installert. Hvis doxygen er installert, og du ønsker å
bygge dem, fjern denne parameteren.
--disable-xml-docs:
Denne bryteren deaktiverer at html dokumentasjon bygges og
installeres, hvis du har xmlto installert. Hvis xmlto er installert, og du ønsker å
bygge dem, fjern denne parameteren.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-user-session: Denne
parameteren aktiverer per bruker DBus-økter med systemd.
--with-system-socket=/run/dbus/system_bus_socket:
Denne parameteren spesifiserer plasseringen av systembuss
socket.
--enable-tests:
Bygger ekstra deler av koden for å støtte alle tester. Ikke
bruk på en produksjonsbygning.
--enable-embedded-tests: Bygger
ekstra deler av koden for kun å støtte enhetstester. Ikke
bruk på en produksjonsbygning.
--enable-asserts:
Gjør det mulig å kjøre feilsøkingskode påstander for utsagn
som normalt antas å være sanne. Dette forhindrer advarsel om
det '--enable-tests'
på egen hånd er bare nyttig for profilering og gir kanskje
ikke sanne resultater for alle tester, men legger til sin
egen MERK at dette ikke skal brukes i et produksjonsbygg.
Konfigurasjonsfilene oppført ovenfor bør sannsynligvis ikke
bli modifisert. Hvis det kreves endringer, bør du opprette
/etc/dbus-1/session-local.conf og/eller
/etc/dbus-1/system-local.conf
og lage eventuelle ønskede endringer i disse filene.
Hvis noen pakker installerer en D-Bus .service fil utenfor standard
/usr/share/dbus-1/services
mappen, den mappen skal legges til den lokale
sesjonskonfigurasjonen. For eksempel, /usr/local/share/dbus-1/services kan
legges til ved å utføre følgende kommandoer som
root bruker:
cat > /etc/dbus-1/session-local.conf << "EOF"
<!DOCTYPE busconfig PUBLIC
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<!-- Search for .service files in /usr/local -->
<servicedir>/usr/local/share/dbus-1/services</servicedir>
</busconfig>
EOF
Det er mange metoder du kan bruke for å starte en sesjonsnisse ved å bruke dbus-launch kommandoen. Gjennomgå dbus-launch manualsiden for detaljer om tilgjengelige parametere og alternativer. Her er noen forslag og eksempler:
Legg til dbus-launch til
linjen i ~/.xinitrc
filen som starter det grafiske skrivebordsmiljøet.
Hvis du bruker gdm eller en annen
skjermbehandler som kaller ~/.xsession filen, kan du legge til
dbus-launch til
linjen i din ~/.xsession fil som starter det
grafiske skrivebordsmiljøet. Syntaksen vil være lik
eksemplet i ~/.xinitrc
filen.
Eksemplene vist tidligere bruker dbus-launch for å
spesifisere et program som skal kjøres. Dette har
fordelen (når du også bruker --exit-with-x11
parameteren) å stoppe sesjonsnissen når det angitte
programmet stoppes. Du kan også starte sesjonsnissen
i systemet ditt eller personlige oppstartsskript ved
å legge til følgende linjer:
# Start the D-Bus session daemon
eval `dbus-launch`
export DBUS_SESSION_BUS_ADDRESS
This method will not stop the session daemon when you
exit your shell, therefore you should add the
following line to your ~/.bash_logout file:
# Kill the D-Bus session daemon
kill $DBUS_SESSION_BUS_PID
En liste over installerte filer, sammen med deres korte beskrivelser finner du på ../../../../lfs/view/12.2-systemd/chapter08/dbus.html#contents-dbus.
Fcron pakken inneholder en periodisk kommandoplanlegger som tar sikte på å erstatte Vixie Cron.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://fcron.free.fr/archives/fcron-3.2.1.src.tar.gz
Nedlasting MD5 sum: bd4996e941a40327d11efc5e3fd1f839
Nedlastingsstørrelse: 587 KB
Estimert diskplass som kreves: 5.1 MB
Estimert byggetid: 0.1 SBU
En MTA, text editor (standard er vi fra Vim-9.1.0660 pakken), Linux-PAM-1.6.1, og DocBook-utils-0.6.14
Av sikkerhetsgrunner, en uprivilegert bruker og gruppe for
Fcron skal opprettes (utfør
som root bruker):
groupadd -g 22 fcron && useradd -d /dev/null -c "Fcron User" -g fcron -s /bin/false -u 22 fcron
Fiks nå noen lokaliteter som er hardkodet i dokumentasjonen:
find doc -type f -exec sed -i 's:/usr/local::g' {} \;
Installer Fcron ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--without-sendmail \
--with-piddir=/run \
--with-boot-install=no &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
DESTDIR installasjon må gjøres som root bruker. Videre, hvis PAM
konfigurasjonsfiler skal installeres i /etc/pam.d, du må opprette denne mappen i
DESTDIR før du installerer.
--without-sendmail:
Som standard, Fcron vil
prøve å bruke sendmail kommandoen fra en
MTA
pakken for å sende deg på e-post resultatene fra fcron skriptet. Denne
bryteren brukes til å deaktivere standard e-postvarsling.
Utelat bryteren for å aktivere standarden. Alternativt kan du
bruke --with-sendmail= for å bruke en annen mailer
kommando.
</path/to/MTA
command>
--with-boot-install=no: Dette
forhindrer installasjon av oppstartskriptet som følger med
pakken.
--with-piddir=/run:
Dette fikser systemd enheten til å bruke den riktige mappen
for PID filer så systemctl ikke henger og enheten starter
riktig.
--with-editor=:
Denne bryteren lar deg angi standard tekstredigerer.
</path/to/editor>
--with-dsssl-dir=:
Kan brukes hvis du har DocBook-utils-0.6.14
installert. For øyeblikket er dsssl stilarkene plassert på
</path/to/dsssl-stylesheets>/usr/share/sgml/docbook/dsssl-stylesheets-1.79.
Det er ingen nødvendige endringer i noen av
konfigurasjonsfilene. Konfigurasjonsinformasjon finner du
på man siden for fcron.conf.
fcron skript er skrevet ved hjelp av fcrontab. Referere til fcrontab man siden for riktige parametere for å håndtere situasjonen din.
Hvis Linux-PAM er installert, to PAM
konfigurasjonsfiler er installert i etc/pam.d.Alternativt hvis etc/pam.d ikke brukes, vil installasjonen
legge til to konfigurasjonsseksjoner til eksisterende
/etc/pam.conf fil. Du bør
sørge for at filene samsvarer med dine preferanser. Endre
dem etter behov for å passe dine behov.
Hvis du ønsker å sette opp et periodisk hierarki for root
brukeren, utfør først følgende kommandoer (som root bruker) for å opprette
/usr/bin/run-parts skriptet:
cat > /usr/bin/run-parts << "EOF" &&
#!/bin/sh
# run-parts: Runs all the scripts found in a directory.
# from Slackware, by Patrick J. Volkerding with ideas borrowed
# from the Red Hat and Debian versions of this utility.
# keep going when something fails
set +e
if [ $# -lt 1 ]; then
echo "Usage: run-parts <directory>"
exit 1
fi
if [ ! -d $1 ]; then
echo "Not a directory: $1"
echo "Usage: run-parts <directory>"
exit 1
fi
# There are several types of files that we would like to
# ignore automatically, as they are likely to be backups
# of other scripts:
IGNORE_SUFFIXES="~ ^ , .bak .new .rpmsave .rpmorig .rpmnew .swp"
# Main loop:
for SCRIPT in $1/* ; do
# If this is not a regular file, skip it:
if [ ! -f $SCRIPT ]; then
continue
fi
# Determine if this file should be skipped by suffix:
SKIP=false
for SUFFIX in $IGNORE_SUFFIXES ; do
if [ ! "$(basename $SCRIPT $SUFFIX)" = "$(basename $SCRIPT)" ]; then
SKIP=true
break
fi
done
if [ "$SKIP" = "true" ]; then
continue
fi
# If we've made it this far, then run the script if it's executable:
if [ -x $SCRIPT ]; then
$SCRIPT || echo "$SCRIPT failed."
fi
done
exit 0
EOF
chmod -v 755 /usr/bin/run-parts
Deretter oppretter du mappeoppsettet for de periodiske
jobbene (igjen som root
bruker):
install -vdm754 /etc/cron.{hourly,daily,weekly,monthly}
Til slutt legger du til run-parts til systemets
fcrontab (fortsatt som root
bruker):
cat > /var/spool/fcron/systab.orig << "EOF"
&bootrun 01 * * * * root run-parts /etc/cron.hourly
&bootrun 02 4 * * * root run-parts /etc/cron.daily
&bootrun 22 4 * * 0 root run-parts /etc/cron.weekly
&bootrun 42 4 1 * * root run-parts /etc/cron.monthly
EOF
GPM (General Purpose Mouse daemon) pakken inneholder en museserver for konsollen og xterm. Det gir ikke bare støtte for klipp og lim generelt, men bibliotekskomponenten brukes av forskjellig programvare som f.eks Links til å gi musestøtte til applikasjonen. Det er nyttig på skrivebord, spesielt hvis du følger (Beyond) Linux From Scratch instruksjoner; det er ofte mye enklere (og mindre feilutsatt) for å klippe og lime mellom to konsollvinduer enn å skrive alt for hånd!
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/gpm/gpm-1.20.7.tar.bz2
Nedlasting MD5 sum: bf84143905a6a903dbd4d4b911a2a2b8
Nedlastingsstørrelse: 820 KB
Estimert diskplass som kreves: 7.4 MB
Estimert byggetid: 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/gpm-1.20.7-consolidated-1.patch
texlive-20240312 (for dokumentasjon)
Aktiver følgende alternativ i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
Device Drivers ---> Input device support ---> -*- Generic input layer (needed for keyboard, mouse, ...) [INPUT] <*/M> Mouse interface [INPUT_MOUSEDEV]
Install GPM ved å kjøre følgende kommandoer:
patch -Np1 -i ../gpm-1.20.7-consolidated-1.patch && ./autogen.sh && ./configure --prefix=/usr --sysconfdir=/etc ac_cv_path_emacs=no && make
Hvis texlive-20240312 er installert, bygg GPM manualen som dvi, ps, og pdf formater:
make -C doc gpm.{dvi,ps} &&
dvipdfm doc/gpm.dvi -o doc/gpm.pdf
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
install-info --dir-file=/usr/share/info/dir \
/usr/share/info/gpm.info &&
rm -fv /usr/lib/libgpm.a &&
ln -sfv libgpm.so.2.1.0 /usr/lib/libgpm.so &&
install -v -m644 conf/gpm-root.conf /etc &&
install -v -m755 -d /usr/share/doc/gpm-1.20.7/support &&
install -v -m644 doc/support/* \
/usr/share/doc/gpm-1.20.7/support &&
install -v -m644 doc/{FAQ,HACK_GPM,README*} \
/usr/share/doc/gpm-1.20.7
Hvis texlive-20240312 er installert
og du har bygget GPM manualen som dvi, ps, og pdf formater,
installer dem som root
bruker:
install -vm644 doc/gpm.{dvi,ps,pdf} /usr/share/doc/gpm-1.20.7
./autogen.sh: Denne kommandoen oppretter det manglende configure skriptet.
ac_cv_path_emacs=no:
Denne variabelen arbeider rundt et problem som gjør at pakken
feiler å bygges med Emacs-29.4 installert. Det undertrykker også
installasjoner av noen “Emacs støttefiler” sendt med GPM. Disse
filene er ganske utdaterte og de bør erstattes med Emacs-29.4
innebygde GPM støtte. Hvis du trenger å bruke Emacs-29.4 i en Linux
konsoll med musestøtte, du bør installere (eller installere
på nytt) Emacs-29.4 etter GPM.
install-info
...: Denne pakken installerer en .info fil, men oppdaterer ikke systemet sin
dir fil. Denne kommandoen gjør
oppdateringen.
ln -v -sfn libgpm.so.2.1.0
/usr/lib/libgpm.so: Dette kommandoen brukes
til å opprette (eller oppdatere) .so symbolkobling til biblioteket.
For å starte gpm nissen ved oppstart,
installer systemd enheten fra blfs-systemd-units-20240801 pakken
ved å kjøre følgende kommando som root bruker:
make install-gpm
/etc/gpm-root.conf og
~/.gpm-root: Standard og
individuell bruker sin gpm-root
konfigurasjonsfiler.
GPM er som standard
startet med følgende parametere: -m /dev/input/mice -t imps2.
Hvis nevnte parametere ikke passer dine behov, kan du
overstyre dem ved å kjøre følgende kommandoer som
root bruker:
install -v -dm755 /etc/systemd/system/gpm.service.d &&
cat > /etc/systemd/system/gpm.service.d/99-user.conf << EOF
[Service]
ExecStart=/usr/sbin/gpm <list of parameters>
EOF
|
er en sikkerhetsmekanisme som brukes til å deaktivere innlimingsbufferen |
|
|
er et enkelt program som rapporterer er museknappene er trykket og sluppet |
|
|
er et enkelt program som rapporterer musens koordinater |
|
|
brukes til å rapportere GPM bibliotek og server versjoner |
|
|
er et klipp og lim verktøy og museserver for virtuelle konsoller |
|
|
er en standard behandler for gpm. Det er brukt til å tegne menyer på root vinduet |
|
|
er en enkel prøveapplikasjon som bruker høynivåbiblioteket, ment til å leses av programmerere som prøver å bruke høynivåbiblioteket |
|
|
er et program for å rapportere musehendelser |
|
|
er et verktøy for å bestemme musetypen og enheten den er knyttet til |
|
|
inneholder API funksjoner for å få tilgang til GPM nissen |
Hdparm pakken inneholder et verktøy som er nyttig for å få informasjon om og kontrollere ATA/IDE kontrollere og harddisker. Det tillater å øke ytelsen og noen ganger for å øke stabiliteten.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
I tillegg til å være nyttig, feil bruk av Hdparm kan ødelegge informasjonen din og i sjeldne tilfeller, stasjoner. Bruk med forsiktighet og sørg for at du vet hva du gjør. Hvis du er i tvil, anbefales det at du ikke forandrer standard kjerneparametere.
Nedlasting (HTTP): https://downloads.sourceforge.net/hdparm/hdparm-9.65.tar.gz
Nedlasting MD5 sum: 6d6d039d61ec995b1ec72ddce0b1853b
Nedlastingsstørrelse: 140 KB
Estimert diskplass som kreves: 1.0 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg Hdparm ved å kjøre følgende kommandoer:
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make binprefix=/usr install
hwdata pakken inneholder gjeldende PCI- og leverandør-ID data.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/vcrhonek/hwdata/archive/v0.385/hwdata-0.385.tar.gz
Nedlasting MD5 sum: 841090258addcaf8841f78f75eeaaadd
Nedlastingsstørrelse: 2.3 MB
Estimert diskplass som kreves: 9.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer hwdata ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-blacklist
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
LSB-Tools pakken inkluderer verktøy for overensstemmelse med Linux Standards Base (LSB).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/LSB-Tools/releases/download/v0.12/LSB-Tools-0.12.tar.gz
Nedlasting MD5 sum: 1e6ef8cdfddb55035a6c36757e6313f9
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 412 KB
Estimert byggetid: mindre enn 0.1 SBU
Installer LSB-Tools ved å kjøre følgende kommandoer:
make
Nå, som root bruker:
make install
Fjern en fil som ikke skal installeres som root bruker:
rm /usr/sbin/lsbinstall
Fjern to skript som ikke tjener noen hensikt på et systemd system:
rm /usr/sbin/{install,remove}_initd
Konfigurasjonen for denne pakken ble gjort i LFS.
Filen/etc/lsb-release burde
allerede eksistere. Pass på at DISTRIB_CODENAME oppføringen
er riktig angitt.
lm_sensors pakken gir brukerplass støtte for maskinvareovervåkingsdriverne i Linux kjernen. Dette er nyttig for å overvåke temperaturen på CPU og justere ytelsen til noe maskinvare (for eksempel kjølevifter).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lm-sensors/lm-sensors/archive/V3-6-0/lm-sensors-3-6-0.tar.gz
Nedlasting MD5 sum: f60e47b5eb50bbeed48a9f43bb08dd5e
Nedlastingsstørrelse: 268 KB
Estimert diskplass som kreves: 2.6 MB
Estimert byggetid: mindre enn 0.1 SBU
RRDtool (påkrevd for å bygge sensord programmet) og dmidecode (kjøretid)
Følgende konfigurasjonsalternativer prøver å dekke de
vanligste maskinvareovervåkingsenheter i et typisk stasjonært
eller bærbart system. Se hjelpen til hver (ved å trykke på
H knapp med
alternativet fokusert i make
menuconfig) å vite om du trenger det. Det er
mye plattformspesifikk maskinvare overvåkingsenheter slik at
det er umulig å liste opp konfigurasjonen for alle her. Du
kan undersøke innholdet i /sys/class/hwmon innenfor en “mainstream” distro
som kjører på systemet for å vite hvilken drivere du trenger.
Power management and ACPI options ---> [*] ACPI (Advanced Configuration and Power Interface) Support ---> [ACPI] < /*/M> Battery [ACPI_BATTERY] < /*/M> Thermal Zone [ACPI_THERMAL] Device Drivers ---> NVME Support ---> < /*> NVM Express block device [BLK_DEV_NVME] # Set [HWMON] to <*> (not <M>!) or it will not show up: [ /*] NVMe hardware monitoring [NVME_HWMON] <*/M> Hardware Monitoring support ---> [HWMON] < /*/M> AMD Athlon64/FX or Opteron temperature sensor [SENSORS_K8TEMP] < /*/M> AMD Family 10h+ temperature sensor [SENSORS_K10TEMP] < /*/M> AMD Family 15h processor power [SENSORS_FAM15H_POWER] < /*/M> Intel Core/Core2/Atom temperature sensor [SENSORS_CORETEMP]
Kompiler kjernen på nytt og start på nytt den nye kjernen.
Installer Lm_sensors ved å kjøre følgende kommandoer:
make PREFIX=/usr \
BUILD_STATIC_LIB=0 \
MANDIR=/usr/share/man \
EXLDFLAGS=
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PREFIX=/usr \
BUILD_STATIC_LIB=0 \
MANDIR=/usr/share/man install &&
install -v -m755 -d /usr/share/doc/lm_sensors-3-6-0 &&
cp -rv README INSTALL doc/* \
/usr/share/doc/lm_sensors-3-6-0
BUILD_STATIC_LIB=0:
Denne parameteren deaktiverer kompilering og installering av
den statiske versjonen av libsensors.
EXLDFLAGS=: Denne
parameteren deaktiverer hardkodende biblioteksøkestier
(rpath) inn i binære kjørbare filer og delte biblioteker.
Denne pakken trenger ikke rpath for en installasjon til
standardplasseringen, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
PROG_EXTRA=sensord: Denne
parameteren aktiverer kompilering av sensord, en nisse som kan
overvåke systemet ditt med jevne mellomrom. Kompilere
sensord krever
RRDtool. Vær sikker å
installere RRDtool i /usr ved å
kjøre make
prefix=/usr når du bygger den. Ellers vil
ikke Lm_sensors finne det lett.
|
er et skallskript for bruk med lm_sensors. Den leser konfigurasjonen fra en fil, deretter beregner viftehastigheter fra temperaturer og stiller inn tilsvarende PWM utdata til de beregnede verdiene |
|
|
er et lite hjelpeprogram for å undersøke registre som er synlige gjennom ISA bussen. Den er ment å sondere enhver brikke som bor på ISA bussen arbeider med et adresseregister og et dataregister (I2C lignende tilgang) eller et flatt område (på opptil 256 byte) |
|
|
er et lite hjelpeprogram for å sette registre synlige gjennom ISA bussen |
|
|
tester utgangene for pulsbreddemodulasjon (PWM) til sensorer og konfigurerer viftekontroll |
|
|
skriver ut gjeldende avlesninger for alle sensorbrikker |
|
|
er et Perl skript for å konvertere lm-sensors versjon 2 konfigurasjonsfiler til å virke med versjon 3 |
|
|
er et Perl skript
som vil lede deg gjennom prosessen med å skanne
systemet for forskjellig maskinvare
overvåkingsbrikker (sensorer) støttet av
|
|
|
(valgfri) er en nisse som kan brukes til periodisk logging av sensor avlesninger |
|
|
inneholder lm_sensors API funksjoner |
logrotate pakken tillater automatisk rotasjon, komprimering, fjerning og utsendelse av loggfiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/logrotate/logrotate/releases/download/3.22.0/logrotate-3.22.0.tar.xz
Nedlasting MD5 sum: 2386501a53ff086f44eeada2b27d50b8
Nedlastingsstørrelse: 172 KB
Estimert diskplass som kreves: 2.6 MB (legg til 38 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.1 SBU for tester)
En MTA (kjøretid)
Installer logrotate ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make test. To tester mislykkes hvis en MTA ikke er installert.
Nå, som root bruker:
make install
Logrotate trenger en
konfigurasjonsfil, som må sendes som et argument til
kommandoen når den utføres. Opprett filen som root bruker:
cat > /etc/logrotate.conf << EOF
# Begin /etc/logrotate.conf
# Rotate log files weekly
weekly
# Don't mail logs to anybody
nomail
# If the log file is empty, it will not be rotated
notifempty
# Number of backups that will be kept
# This will keep the 2 newest backups only
rotate 2
# Create new empty files after rotating old ones
# This will create empty log files, with owner
# set to root, group set to sys, and permissions 664
create 0664 root sys
# Compress the backups with gzip
compress
# No packages own lastlog or wtmp -- rotate them here
/var/log/wtmp {
monthly
create 0664 root utmp
rotate 1
}
/var/log/lastlog {
monthly
rotate 1
}
# Some packages drop log rotation info in this directory
# so we include any file in it.
include /etc/logrotate.d
# End /etc/logrotate.conf
EOF
chmod -v 0644 /etc/logrotate.conf
Nå opprett /etc/logrotate.d
mappen som root bruker:
mkdir -p /etc/logrotate.d
På dette tidspunktet kan det vanligvis legges inn ekstra
loggrotasjonskommandoer i /etc/logrotate.d mappen. For eksempel:
cat > /etc/logrotate.d/sys.log << EOF
/var/log/sys.log {
# If the log file is larger than 100kb, rotate it
size 100k
rotate 5
weekly
postrotate
/bin/killall -HUP syslogd
endscript
}
EOF
chmod -v 0644 /etc/logrotate.d/sys.log
Du kan angi flere filer i en oppføring:
cat > /etc/logrotate.d/example.log << EOF
file1
file2
file3 {
...
postrotate
...
endscript
}
EOF
chmod -v 0644 /etc/logrotate.d/example.log
Du kan bruke listen over filer på samme linje: fil1 fil2 fil3. Se logrotate man siden eller https://www.techrepublic.com/article/manage-linux-log-files-with-logrotate/ for flere eksempler.
Kommandoen logrotate
/etc/logrotate.conf kan bli kjørt manuelt,
men kommandoen bør kjøres daglig. Andre nyttige kommandoer er
logrotate -d
/etc/logrotate.conf for feilsøkingsformål og
logrotate -f
/etc/logrotate.conf for å tvinge logrotate
kommandoer som skal kjøres umiddelbart. Kombiner de tidligere
alternativene -df, du kan
feilsøke effekten av tvangkommandoen. Ved feilsøking
simuleres kommandoene bare og kjøres faktisk ikke. Som et
resultat vil feil om filer som ikke eksisterer til slutt
vises fordi filene faktisk ikke er opprettet.
For å kjøre logrotate kommandoen
daglig, kjør følgende kommandoer,
som root bruker, for å
opprette en systemd tidtaker som går
daglig kl. 03.00. (lokal tid):
cat > /usr/lib/systemd/system/logrotate.service << "EOF" &&[Unit] Description=Runs the logrotate command Documentation=man:logrotate(8) DefaultDependencies=no After=local-fs.target Before=shutdown.target [Service] Type=oneshot RemainAfterExit=yes ExecStart=/usr/sbin/logrotate /etc/logrotate.confEOF cat > /usr/lib/systemd/system/logrotate.timer << "EOF" &&[Unit] Description=Runs the logrotate command daily at 3:00 AM [Timer] OnCalendar=*-*-* 3:00:00 Persistent=true [Install] WantedBy=timers.targetEOF systemctl enable logrotate.timer
MC (Midnight Commander) er en tekstmodus fullskjerms filbehandler og visuelt skall. Det gir en tydelig, brukervennlig, og noe beskyttet grensesnitt til et Unix system mens den gjør mange hyppige filoperasjoner mer effektive og bevarer full kraft til ledeteksten.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://ftp.midnight-commander.org/mc-4.8.32.tar.xz
Nedlasting MD5 sum: bcc9043a815c02c5837f8b1a4a60da5a
Nedlastingsstørrelse: 2.3 MB
Estimert diskplass som kreves: 71 MB (legg til 96 MB for tester)
Estimert byggetid: 0.3 SBU (bruke parallellisme=4; legg til 0,2 SBU for tester)
Doxygen-1.12.0, GPM-1.20.7, Graphviz-12.1.0, libssh2-1.11.0, pcre2-10.44, Ruby-3.3.4, UnZip-6.0, et grafiske miljø, og Zip-3.0
Brukernotater: https://wiki.linuxfromscratch.org/blfs/wiki/MC
Installer MC ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-charset &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--sysconfdir=/etc:
Denne bryteren plasserer den globale konfigurasjonsmappen i
/etc.
--enable-charset:
Denne bryteren legger støtte til mcedit for redigering av
filer i forskjellige kodinger fra den som antydes av
gjeldende lokalitet.
--with-screen=ncurses: Bruk
denne hvis du ikke't har slang-2.3.3 installert.
--with-search-engine=pcre2: Bruk
denne bryteren hvis du foretrekker å bruke pcre2-10.44 i stedet
for GLib for den innebygde søkemotoren.
~/.config/mc mappen og
innholdet opprettes når du starter mc for første gang.
Deretter kan du redigere hoved ~/.config/mc/ini konfigurasjonsfilen
manuelt eller gjennom MC
skallet. Rådfør deg med mc(1) manualsiden
for detaljer.
ModemManager gir en enhetlig høyt nivå API for kommunikasjon med mobilt bredbåndsmodem, uavhengig av protokollen som brukes til å kommunisere med den faktiske enheten.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/ModemManager/ModemManager-1.18.12.tar.xz
Nedlasting MD5 sum: 9f014dfc59f1bd8bc230bb2c2974d104
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 155 MB (med tester)
Estimert byggetid: 0.7 SBU (Bruke parallellisme=4; med tester)
GLib-2.80.4 (med GObject Introspection), libmbim-1.26.4, libqmi-1.30.8, Polkit-125, og Vala-0.56.17
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/ModemManager
Installer ModemManager ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
--disable-maintainer-mode \
--with-systemd-journal \
--with-systemd-suspend-resume &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--with-systemd-suspend-resume:
Denne bryteren tvinger ModemManager å bruke systemd
strømstyringsfasiliteter.
--with-systemd-journal :
Denne bryteren tvinger ModemManager å bruke systemd journalen
til logging.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
Notification Daemon pakken inneholder en nisse som viser passive sprettopp varsler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/notification-daemon/3.20/notification-daemon-3.20.0.tar.xz
Nedlasting MD5 sum: 2de7f4075352831f1d98d8851b642124
Nedlastingsstørrelse: 336 KB
Estimert diskplass som kreves: 4.1 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK+-3.24.43 og libcanberra-0.30 (Bygget med GTK+-3.24.43 støtte).
Installer Notification Daemon ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Du kan teste notification daemon med kommandoen notify-send:
pgrep -l notification-da &&
notify-send -i info Information "Hi ${USER}, This is a Test"
Kommandoen pgrep -l notification-da legges til for å sikre at det er nissen til denne pakken som kjører, ikke en annen, f.eks. nissen fra xfce4-notifyd-0.9.6.
p7zip er Unix kommandolinjeporten til 7-Zip, en filarkiver som arkiverer med høyt komprimeringsforhold. Den håndterer 7z, ZIP, GZIP, Brotli, BZIP2, XZ, TAR, APM, ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO, Lizard, LZ5, LZFSE, LZH, LZMA, LZMA2, MBR, MSI, MSLZ, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR, Z, og Zstd formater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/p7zip-project/p7zip/archive/v17.04/p7zip-17.04.tar.gz
Nedlasting MD5 sum: 00acfd6be87848231722d2d53f89e4a5
Nedlastingsstørrelse: 6.5 MB
Estimert diskplass som kreves: 55 MB
Estimert byggetid: 2.3 SBU (med tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/p7zip-17.04-consolidated_fixes-1.patch
Først fikse flere sikkerhetssårbarheter::
patch -Np1 -i ../p7zip-17.04-consolidated_fixes-1.patch
Deretter, forhindre p7zip fra å installere komprimerte manualsider:
sed '/^gzip/d' -i install.sh
Installer p7zip ved å kjøre følgende kommandoer:
make all3
For å teste resultatene, kjør: make test.
Nå, som root bruker:
make DEST_HOME=/usr \
DEST_MAN=/usr/share/man \
DEST_SHARE_DOC=/usr/share/doc/p7zip-17.04 install
Hvis du bruker DESTDIR teknikker, bruk DEST_DIR i stedet.
pax er et arkiveringsverktøy laget av POSIX og definert av POSIX.1-2001-standarden. Heller enn å ordne de inkompatible alternativene som har sneket seg opp mellom tar og cpio, sammen med deres implementeringer på tvers av forskjellige versjoner av UNIX, IEEE designet et nytt arkivverktøy. Navnet “pax” er et akronym for portable archive exchange. Videre, “pax” mener “fred” i Latin, så navnet dens innebærer at det skal skape fred mellom tar og cpio formatstøttere. Kommandopåkallelsen og kommandostrukturen er en forening av både tar og cpio.
pax har vært pålagt å være tilstede i LSB samsvarende systemer siden LSB versjon 3.0.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://www.mirbsd.org/MirOS/dist/mir/cpio/paxmirabilis-20240817.tgz
Nedlasting MD5 sum: 9a723154a4201a0892b7ff815b6753b5
Nedlastingsstørrelse: 180 KB
Estimert diskplass som kreves: 1.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer pax ved å kjøre følgende kommandoer:.
Denne pakken utvides til mappen pax.
bash Build.sh
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
Denne pakken lager også harde lenker fra pax til programmene cpio og tar i byggemappen. LFS redaksjonen anbefaler ikke at de blir installert da de vil overskrive GNU versjonene av disse programmene.
install -v pax /usr/bin && install -v -m644 pax.1 /usr/share/man/man1
PCI Utils pakken inneholder et sett med programmer for å liste PCI enheter, inspisere status og innstilling av konfigurasjonsregistre.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://mj.ucw.cz/download/linux/pci/pciutils-3.13.0.tar.gz
Nedlasting MD5 sum: 1edb865de7a2de84e67508911010091b
Nedlastingsstørrelse: 660 KB
Estimert diskplass som kreves: 4.9 MB
Estimert byggetid: mindre enn 0.1 SBU
hwdata-0.385 (kjøretid)
Forhindre installasjon av pci.ids filen for å unngå konflikt med
hwdata-0.385 pakken:
sed -r '/INSTALL/{/PCI_IDS|update-pciids /d; s/update-pciids.8//}' \
-i Makefile
Installer PCI Utils ved å kjøre følgende kommandoer:
make PREFIX=/usr \
SHAREDIR=/usr/share/hwdata \
SHARED=yes
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PREFIX=/usr \
SHAREDIR=/usr/share/hwdata \
SHARED=yes \
install install-lib &&
chmod -v 755 /usr/lib/libpci.so
Deretter installerer du hwdata-0.385 pakken for pci.ids filen.
SHARED=yes: Denne
parameteren aktiverer bygging av det delte biblioteket i
stedet for det statiske.
Power Management Utilities gir et enkelt skallkommandolinjeverktøy for å suspendere og dvale datamaskinen. Det kan brukes til å kjøre brukerleverte skript ved suspendering og gjenopptagelse.
På et system som bruker systemd som init system, systemd gir allerede denne
funksjonaliteten. Som et resultat er denne pakken
sannsynligvis ikke nødvendig, og den kan komme i konflikt
med systemd. Les
dokumentasjon for suspend.target og hibernate.target på manualsiden systemd.special(7)
for flere detaljer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://pm-utils.freedesktop.org/releases/pm-utils-1.4.1.tar.gz
Nedlasting MD5 sum: 1742a556089c36c3a89eb1b957da5a60
Nedlastingsstørrelse: 204 KB
Estimert diskplass som kreves: 1.6 MB
Estimert byggetid: 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/pm-utils-1.4.1-bugfixes-1.patch
xmlto-0.0.29 (for å generere man sider)
Aktiver om nødvendig følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt:
Power management and ACPI options ---> [*] Suspend to RAM and standby [SUSPEND] [*] Hibernation (aka 'suspend to disk') [HIBERNATION]
Suspend to RAM lar systemet gå inn i dvaletilstander i hvilke hovedminnet er drevet og dermed blir innholdet bevart. Metoden kutter strøm til de fleste deler av maskinen bortsett fra RAM. På grunn av store strømbesparelser, er det tilrådelig for bærbare datamaskiner å gå automatisk inn i denne modusen når datamaskinen kjører på batterier og lokket er lukket (eller brukeren er inaktiv en stund).
Suspend to disk (dvalemodus) lagrer maskinens tilstand til veksleminnet og slår av maskinen helt. Når maskinen blir slått på, statusen blir gjenopprettet. Inntil da er det null strømforbruk. Suspend til RAM og dvalemodus er vanligvis passende for bærbare enheter som bærbare datamaskiner, men kan brukes på arbeidsstasjoner. Evnen er egentlig ikke passende for servere.
For å bruke dvalemodus, kjerneparameteren resume=/dev/<swap_partition> må brukes på kjernekommandoenlinjen (i grub.cfg). veksleminnepartisjonen bør minst være på størrelse med den fysiske RAM-en på systemet.
Først, fikse flere feil og et par inkompatibiliteter med nyere kjerner:
patch -Np1 -i ../pm-utils-1.4.1-bugfixes-1.patch
Installer Power Management Utilities ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--docdir=/usr/share/doc/pm-utils-1.4.1 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du ikke har xmlto-0.0.29 installert, kopier
forhåndsgenererte man sider, som root bruker:
install -v -m644 man/*.1 /usr/share/man/man1 && install -v -m644 man/*.8 /usr/share/man/man8 && ln -sv pm-action.8 /usr/share/man/man8/pm-suspend.8 && ln -sv pm-action.8 /usr/share/man/man8/pm-hibernate.8 && ln -sv pm-action.8 /usr/share/man/man8/pm-suspend-hybrid.8
Suspend eller gjenoppta funksjonalitet kan enkelt endres ved
å installere filer inn i det /etc/pm/sleep.d mappen. Disse filene, kjent
som kroker, kjøres når systemet settes i dvale tilstand eller
gjenopptatt. Standard kroker er plassert i /usr/lib/pm-utils/sleep.d, og brukerkroker
bør puttes i /etc/pm/sleep.d.
Se pm-action(8)
manualsiden for mer informasjon.
For å bruke dvalemodus med GRUB og en vekselminnepartisjon, må du
legge til kjerneparameter resume= (f.eks.
swap_partitionresume=/dev/sda1) til
kjernelinjen i /boot/grub/grub.cfg konfigurasjonsfil.
|
er et skript som bestemmer om systemet kjører på strøm (i stedet for et batteri) |
|
|
er en symbolkobling til pm-action skriptet som setter datamaskinen inn i dvalemodus (systemet er helt slått av og systemtilstanden er lagret på disk) |
|
|
er et skript som sjekker om strømstyringsfunksjoner som f.eks suspendering og dvalemodus støttes |
|
|
er et skript som setter datamaskinen i strømsparing (lite strøm) modus |
|
|
er en symbolkobling til pm-action skriptet som setter datamaskinen i suspendering modus (de fleste enheter er slått av og systemtilstand lagres i RAM) |
|
|
er en symbolkobling til pm-action skriptet som setter datamaskinen inn i hybrid-suspend-modus (systemet gjør alt det trenger for dvale, men suspenderer i stedet for å slå av) |
Power-profiles-daemon pakken gir et program som tillater endring av systemets strøm-/atferdstilstand. Denne brukes på mange bærbare datamaskiner og kan brukes av et skrivebordsmiljø for å aktivere strømsparing eller ytelse CPU regulatorer gjennom dbus. På andre systemer, Power-profiler-daemon kan brukes som en strømlinjeformet måte å stille inn CPU regulatoren for å øke systemets ytelse på bekostning av energibruk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/upower/power-profiles-daemon/-/archive/0.21/power-profiles-daemon-0.21.tar.gz
Nedlasting MD5 sum: 0196aae5798263d3d8f33a9280a6cb10
Nedlastingsstørrelse: 76 KB
Estimert diskplass som kreves: 3.2 MB
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Polkit-125, PyGObject-3.48.2 (pycairo er ikke nødvendig), og UPower-1.90.4
GTK-Doc-1.34.0, Resten er for testene, dbusmock-0.32.1, umockdev-0.18.3, isort, og mccabe
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjerne på nytt om nødvendig:
Power management and ACPI options ---> CPU Frequency scaling ---> -*- CPU Frequency scaling [CPU_FREQ] -*- 'performance' governor [CPU_FREQ_GOV_PERFORMANCE] <*/M> 'powersave' governor [CPU_FREQ_GOV_POWERSAVE] # Select if CPU is Intel: [ /*] Intel P state control [X86_INTEL_PSTATE] # Select if CPU is AMD: [ /*] AMD Processor P-State driver [X86_AMD_PSTATE] Device Drivers ---> # Some drivers under this submenu provide "platform profile" support # and power-profiles-daemon can take advantage from platform profiles; # select a driver if suitable for your platform: [ /*] X86 Platform Specific Device Drivers ---> [X86_PLATFORM_DEVICES]
Velg de aktuelle underalternativene som vises når alternativene ovenfor er valgt. Så mye som mulig, oppsettet skal være det samme som i kjernekonfigurasjonsmenyer.
Installer Power-profiles-daemon ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup \
--prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
-D tests=false \
.. &&
ninja
Hvis du har installert de eksterne avhengighetene, for å teste resultatet utsted: ninja test.
Nå, som root bruker:
ninja install
-D gtk_doc=false:
Hindrer bygging av dokumentasjonen. Fjern denne hvis du har
GTK-Doc installert og ønsker
å bygge dokumentasjonen.
-D tests=false:
Hindrer bygging av tester fordi de ikke kan kjøres innenfor
grensene til BLFS. Fjern dette hvis du har installert de
eksterne avhengighetene og ønsker å kjøre testene.
For å starte power-profiles-daemon ved oppstart, aktiver
systemd tjenesten som ble installert ved å kjøre følgende
kommando som root bruker:
systemctl enable power-profiles-daemon
For å liste opp alle støttede strømprofiler, utsted:
powerprofilesctl
For å aktivere en strømprofil (for eksempel performance), utsted:
powerprofilesctl set performance
Noen skrivebordsmiljøer (for eksempel GNOME og KDE) gir også et grafisk grensesnitt for å samhandle med power-profiles-daemon og aktivere en strømprofil.
Den aktiverte strømprofilen lagres automatisk i
/var/lib/power-profiles-daemon/state.ini
og power-profiles-daemon
skal lese den og aktiver den igjen ved neste oppstart hvis
Systemd enheten er aktivert som
ovenfor.
Raptor er et C bibliotek som gir et sett med parsere og serialiseringsprogrammer som genererer Resource Description Framework (RDF) triples.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.librdf.org/source/raptor2-2.0.16.tar.gz
Nedlasting MD5 sum: 0a71f13b6eaa0a04bf411083d89d7bc2
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 25 MB (ytterligere 2 MB for testene)
Estimert byggetid: 0.1 SBU (ytterligere 0.3 SBU for testene)
Først, fiks en inkompatibilitet med libxml2-2.11.x:
sed -i 's/20627/20627 \&\& LIBXML_VERSION < 21100/' src/raptor_libxml.c
Installer Raptor ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check. Flere av XML testene kan mislykkes.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-icu-config=/usr/bin/icu-config: Bruk
denne bryteren hvis du har installert ICU-75.1 og ønsker å bygge
Raptor med dens støtte.
Rasqal er et C bibliotek som håndterer Resource Description Framework (RDF) spørringsspråksyntakser, spørringskonstruksjon og utførelse av spørringer som returnerer resultater som bindinger, boolske, RDF-grafer/tripler eller syntakser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.librdf.org/source/rasqal-0.9.33.tar.gz
Nedlasting MD5 sum: 1f5def51ca0026cd192958ef07228b52
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 22 MB (ytterligere 4 MB for testene)
Estimert byggetid: 0.3 SBU (ytterligere 0.7 SBU for testene)
Installer Rasqal ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Redland er et sett med gratis programvare C biblioteker som gir støtte til Resource Description Framework (RDF).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.librdf.org/source/redland-1.0.17.tar.gz
Nedlasting MD5 sum: e5be03eda13ef68aabab6e42aa67715e
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 18 MB
Estimert byggetid: 0.2 SBU
SQLite-3.46.1, MariaDB-10.11.8 eller MySQL, PostgreSQL-16.4, Berkeley DB (deprecated) libiodbc, virtuoso, og 3store
Installer Redland ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
sg3_utils pakken inneholder lavt nivå verktøy for enheter som bruker et SCSI kommandosett. Bortsett fra SCSI parallell grensesnitt (SPI) enheter, brukes SCSI kommandosettet av ATAPI enheter (CD/DVDer og kassetter), USB masselagringsenheter, Fibre Channel disker, IEEE 1394 lagringsenheter (som bruker "SBP" protokollen), SAS, iSCSI og FCoE enheter (blant annet).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://sg.danny.cz/sg/p/sg3_utils-1.48.tar.xz
Nedlasting MD5 sum: 0024393d2d2942cc081ce613d98db68a
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.2 SBU
Installer sg3_utils ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
legger til eller fjerner SCSI enheter uten å måtte starte på nytt |
|
|
får tilgang til informasjon om Linux SCSI loggingsnivå |
|
|
sjekker SCSI enhetsstøtte for obligatoriske kommandoer |
|
|
gjør kommandoen SCSI READ CAPACITY på disker |
|
|
gjør SCSI TEST UNIT READY på enheter |
|
|
ser etter støtte for SCSI til ATA oversettelse (SAT). |
|
|
starter en eller flere SCSI disker |
|
|
stopper en eller flere SCSI disker |
|
|
henter temperaturen til en SCSI enhet |
|
|
utfører en SCSI BACKGROUND CONTROL kommando på en enhet som skal utføre "avanserte bakgrunnsoperasjoner" |
|
|
sender SCSI COMPARE AND WRITE kommandoen til enheten |
|
|
sender SCSI RECEIVE COPY RESULTS kommandoen (XCOPY relatert) |
|
|
kopierer data til og fra filer og enheter. Spesialisert for enheter som forstår SCSI kommandosettet |
|
|
tar SCSI sense data i binær eller som en sekvens av ASCII heksadesimale byte og dekoder den |
|
|
endrer eierskap til en LUN fra en annen tjenesteprosess til denne |
|
|
formaterer eller endrer størrelse på en SCSI disk (kanskje endrer blokkstørrelsen) |
|
|
sender SCSI GET CONFIGURATION kommando (MMC-4 +) |
|
|
sender SCSI GET PHYSICAL ELEMENT STATUS kommando til en enhet |
|
|
sender the SCSI GET LBA STATUS kommando |
|
|
sender SCSI REPORT or SET IDENTIFYING INFORMATION kommando |
|
|
tilgang til modussideinformasjon for en SCSI (eller ATAPI) enhet |
|
|
sender SCSI INQUIRY eller ATA IDENTIFY (PACKET) DEVICE kommando og gir ut svaret |
|
|
få tilgang til loggsider med kommandoen SCSI LOG SENSE |
|
|
sender SCSI REPORT LUNS kommando |
|
|
viser tilordninger mellom linux sg og andre SCSI enheter |
|
|
tilordner en spesiell fil til en SCSI generisk (sg) enhet (eller omvendt) |
|
|
kopierer data til og fra filer og enheter. Spesialisert for enheter som forstår SCSI kommandosettet og tilordner minneoverføringer fra sg enheter |
|
|
leser modussider med kommandoen SCSI MODE SENSE |
|
|
rapporterer informasjon om støttede SCSI kommandoer eller oppgaveadministrasjonsfunksjoner |
|
|
kopierer data til og fra filer og enheter. Spesialisert for enheter som forstår SCSI kommandosettet |
|
|
sender en SCSI PERSISTENT RESERVE (INN eller UT) kommando for å manipulere registreringer og reservasjoner |
|
|
sender SCSI PREVENT ALLOW MEDIUM REMOVAL kommando |
|
|
sender en vilkårlig SCSI kommando til en enhet |
|
|
leser data ved å bruke kommandoen SCSI READ BUFFER |
|
|
viser eller endrer RDAC Redundant Controller Page |
|
|
leser blokker med data kontinuerlig fra samme offset |
|
|
utfører en SCSI READ ATTRIBUTE kommando på en enhet |
|
|
sender SCSI READ BLOCK LIMITS kommando |
|
|
sender SCSI READ BUFFER kommando |
|
|
sender SCSI READ CAPACITY kommando |
|
|
sender SCSI READ LONG kommando |
|
|
sender SCSI REASSIGN BLOCKS kommando |
|
|
sender SCSI REPORT REFERRALS kommando |
|
|
sender SCSI REPORT PROVISIONING INITIALIZATION PATTERN kommando |
|
|
sender SCSI REPORT ZONES kommando |
|
|
sender en eller flere SCSI REQUEST SENSE kommando |
|
|
sender en tilbakestilling av SCSI enhet, mål, buss eller vert; eller kontrollerer tilbakestillingstilstand |
|
|
sender SCSI RESET WRITE POINTER kommando |
|
|
sender SCSI READ MEDIA SERIAL NUMBER kommando |
|
|
sender SCSI REPORT TARGET PORT GROUPS kommando |
|
|
henter statusinformasjon fra en SCSI Accessed Fault-Tolerant Enclosure (SAF-TE) enhet |
|
|
sender SCSI SANITIZE kommando |
|
|
sender en ATA IDENTIFY (PACKET) DEVICE kommando via en SCSI til ATA oversettelse (SAT) lag |
|
|
sender en ATA READ LOG EXT kommando via en SAT passering til hentelogg side 11h som inneholder SATA phy hendelsestellere |
|
|
sender en ATA READ LOG EXT kommando via en SCSI til ATA oversettelse (SAT) lag |
|
|
sender en ATA SET FEATURES kommando via en SCSI til ATA oversettelse (SAT) lag |
|
|
gjør en skanning av sg enheter (eller gitte SCSI/ATAPI/ATA enheter) og skriver ut resultatene |
|
|
utfører en SCSI SEEK eller PRE-FETCH kommando på en enhet og dens hurtiglager |
|
|
utfører en SCSI SEND DIAGNOSTIC kommando |
|
|
sender kontroller og henter gjeldende status fra et SCSI Enclosure Services (SES) enhet |
|
|
sender mikrokode til et SCSI enclosure |
|
|
sender en SCSI START STOP UNIT kommando for å starte, stoppe, laste eller løse ut medium |
|
|
sender SCSI SET TARGET PORT GROUPS kommando |
|
|
utfører en SCSI STREAM CONTROL eller GET STREAM STATUS kommando på en enhet for å åpne eller lukke en I/O strøm |
|
|
sender en SCSI kommando for å synkronisere hutiglageret |
|
|
tester SCSI vertsadapteren ved å utstede skrive- og leseoperasjoner på en enhets buffer og beregne sjekksummer |
|
|
rapporterer eller setter tidsstemplet på en SCSI enhet |
|
|
sender en eller flere SCSI TEST UNIT READY kommandoer |
|
|
sender SCSI UNMAP kommando |
|
|
påkaller SCSI VERIFY kommando(er) på en blokkenhet |
|
|
henter Vital Product Data (VPD) sider ved hjelp av en SCSI INQUIRY kommando |
|
|
sender SCSI WRITE BUFFER kommando |
|
|
sender SCSI WRITE LONG kommando |
|
|
sender SCSI WRITE SAME kommando |
|
|
sender SCSI WRITE AND VERIFY kommando |
|
|
utfører SCSI WRITE kommandoer på en enhet |
|
|
skriver modussider |
|
|
kopierer data til og fra filer og enheter ved bruk av SCSI EXTENDED COPY (XCOPY) |
|
|
utfører SCSI ZONE kommandoer på en enhet, for eksempel OPEN, CLOSE, FINISH eller SEQUENTIALIZE |
|
|
inneholder sg3_utils API funksjoner |
sysmon-qt pakken gir et program for å overvåke systemverdier inkludert CPU bruk, minne bruk og systemtemperaturer i et kompakt skjermvindu.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Det finnes også en versjon av denne pakken, sysmon-qt-1.1, på samme sted som nedenfor som er basert på qt5-components-5.15.14. Byggeinstruksjonene er identisk med disse. Funksjonaliteten er samme og det gir ikke mening å bygge begge versjonene.
Nedlasting (HTTP): https://github.com/lfs-book/sysmon-qt/releases/download/v2.0.1/sysmon-qt-2.0.1.tar.xz
Nedlasting MD5 sum: d1024657f90ac406cbf982e7189a200b
Nedlastingsstørrelse: 76 KB
Estimert diskplass som kreves: 1.3 MB
Estimert byggetid: 0.5 SB
lm-sensors-3-6-0 (kjøretid)
Installer sysmon-qt ved å kjøre følgende kommandoer:
cd src && qmake6 sysmon-qt.pro && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Sysstat pakken inneholder verktøy for å overvåke systemytelse og bruksaktivitet. Sysstat inneholder sar verktøyet, vanlig for mange kommersielle Unixer, og verktøy du kan planlegge via cron for å samle inn og lage historikk for ytelses- og aktivitetsdata.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://sysstat.github.io/sysstat-packages/sysstat-12.7.6.tar.xz
Nedlasting MD5 sum: 16fd81728fec899f22155fdfcebece97
Nedlastingsstørrelse: 900 KB
Estimert diskplass som kreves: 29 MB
Estimert byggetid: 0.1 SBU
Det er ingen byggetidskrav for denne pakken; derimot, den er designet for å bli kontrollert av en cron nisse som f.eks Fcron-3.2.1.
Installer Sysstat ved å kjøre følgende kommandoer:
sa_lib_dir=/usr/lib/sa \
sa_dir=/var/log/sa \
conf_dir=/etc/sysstat \
./configure --prefix=/usr \
--disable-file-attr &&
make
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
make install
Installer systemd enheten ved å kjøre følgende kommandoer som
root bruker:
install -v -m644 sysstat.service /usr/lib/systemd/system/sysstat.service && install -v -m644 cron/sysstat-collect.service /usr/lib/systemd/system/sysstat-collect.service && install -v -m644 cron/sysstat-collect.timer /usr/lib/systemd/system/sysstat-collect.timer && install -v -m644 cron/sysstat-rotate.service /usr/lib/systemd/system/sysstat-rotate.service && install -v -m644 cron/sysstat-rotate.timer /usr/lib/systemd/system/sysstat-rotate.timer && install -v -m644 cron/sysstat-summary.service /usr/lib/systemd/system/sysstat-summary.service && install -v -m644 cron/sysstat-summary.timer /usr/lib/systemd/system/sysstat-summary.timer
Fiks systemd enheten ved å kjøre følgende kommando som
root bruker:
sed -i "/^Also=/d" /usr/lib/systemd/system/sysstat.service
sa_lib_dir: Denne miljøvariabelen
spesifiserer plassering av den pakkespesifikke
bibliotekmappen.
sa_dir: Denne miljøvariabelen
spesifiserer plasseringen av mappen som inneholder
datafilene.
conf_dir: Denne miljøvariabelen
spesifiserer plasseringen av systemkonfigurasjonsmappen.
--disable-file-attr:
Ikke sett attributter på filer som installeres. Denne
parameteren gjør at installasjonen ignorerer man
gruppevariabelen som resulterer i at man filene har
root: root eierskap.
Kjør ./configure
--help å se andre innflytelsesrike
miljøvariabler du kan overføre til configure. Du vil kanskje
bruke history og compressafter variabler for å tilpasse
mengden data filer lagrer på systemet.
For å begynne å samle Sysstat historieinformasjon, må du
legge til eller opprette en privilegert brukers crontab.
Historiedataplasseringen er /var/log/sa. Brukeren som kjører
Sysstat verktøy via cron
må ha skrivetilgang til dette stedet.
Nedenfor er et eksempel på hva som skal installeres i crontab. Juster parametere som passer dine behov. Bruk man sa1 og man sa2 for informasjon om kommandoene.
# 8am-7pm activity reports every 10 minutes during weekdays
0 8-18 * * 1-5 /usr/lib/sa/sa1 600 6 &
# 7pm-8am activity reports every hour during weekdays
0 19-7 * * 1-5 /usr/lib/sa/sa1 &
# Activity reports every hour on Saturday and Sunday
0 * * * 0,6 /usr/lib/sa/sa1 &
# Daily summary prepared at 19:05
5 19 * * * /usr/lib/sa/sa2 -A &
Sørg for at du sender inn den reviderte crontaben til cron nissen.
Ved systemoppstart, en LINUX RESTART melding må bli satt
inn i den daglige datafilen for å reinitialisere
kjernetellerne. Dette kan automatiseres ved å aktivere den
tidligere installerte systemd enheten ved å kjøre følgende
kommando som root bruker:
systemctl enable sysstat
|
viser statistikk om lese- og skriveoperasjoner på CIFS filsystemer |
|
|
rapporterer CPU-statistikk og inndata/utdata statistikk for enheter og partisjoner |
|
|
skriver aktiviteter for hver tilgjengelig prosessor |
|
|
brukes til å overvåke individuelle oppgaver som for øyeblikket administreres av Linux kjernen |
|
|
brukes til å vise innholdet i datafiler opprettet av sar kommandoen. Men i motsetning til sar, sadf kan skrive dataene sine i mange forskjellige formater |
|
|
brukes til å vise innholdet i valgt kumulativ aktivitets tellere i operativsystemet |
|
|
brukes til å overvåke aktiviteten til båndstasjoner koblet til et system |
Mens systemd ble installert under byggingen av LFS, er det mange funksjoner levert av pakken som ikke ble inkludert i den første installasjonen fordi Linux-PAM var ennå ikke installert. systemd pakken må bli bygd om igjen for å gi en fungerende systemd-logind service, som gir mange tilleggsfunksjoner for avhengige pakker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/systemd/systemd/archive/v256.4/systemd-256.4.tar.gz
Nedlasting MD5 sum: 03bd1ff158ec0bc55428c77a8f8495bd
Nedlastingsstørrelse: 15 MB
Estimert diskplass som kreves: 328 MB (med tester)
Estimert byggetid: 1.5 SBU (med tester)
Linux-PAM-1.6.1 er strengt tatt ikke
nødvendig for å bygge systemd, men hovedgrunnen til å
gjenoppbygge systemd i
BLFS (den er allerede bygd i LFS uansett) er for
systemd-logind nissen og
pam_systemd.so PAM modulen.
Linux-PAM-1.6.1 er nødvendig for dem.
Alle pakker i BLFS boken med en avhengighet av systemd forventer at den er bygget med
Linux-PAM-1.6.1.
Linux-PAM-1.6.1 og Polkit-125 (kjøretid)
btrfs-progs-6.10.1, cURL-8.9.1, cryptsetup-2.7.4, git-2.46.0, GnuTLS-3.8.7.1, iptables-1.8.10, libgcrypt-1.11.0, libidn2-2.3.7, libpwquality-1.4.5, libseccomp-2.5.5, libxkbcommon-1.7.0, make-ca-1.14, p11-kit-0.25.5, pcre2-10.44, qemu-9.0.2, qrencode-4.1.1, rsync-3.3.0, sphinx-8.0.2, Valgrind-3.23.0, zsh-5.9 (for zsh fullføringer), AppArmor, audit-userspace, bash-completion, jekyll, kexec-tools, libbpf, libdw, libfido2, libmicrohttpd, pefile, pyelftools, quota-tools, rpm, SELinux, systemtap, tpm2-tss og Xen
docbook-xml-4.5, docbook-xsl-nons-1.79.2, libxslt-1.1.42, og lxml-5.3.0 (å bygge indeksen over systemd manualsidene)
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Logind
Fjern to unødvendige grupper, render og sgx, fra standard udev regler:
sed -i -e 's/GROUP="render"/GROUP="video"/' \
-e 's/GROUP="sgx", //' rules.d/50-udev-default.rules.in
Gjenoppbygg systemd ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D default-dnssec=no \
-D firstboot=false \
-D install-tests=false \
-D ldconfig=false \
-D man=auto \
-D sysusers=false \
-D rpmmacrosdir=no \
-D homed=disabled \
-D userdb=false \
-D mode=release \
-D pam=enabled \
-D pamconfdir=/etc/pam.d \
-D dev-kvm-mode=0660 \
-D nobody-group=nogroup \
-D sysupdate=disabled \
-D ukify=disabled \
-D docdir=/usr/share/doc/systemd-256.4 &&
ninja
For de beste testresultatene, sørg for at du kjører testpakken fra et system som startes opp av det samme systemd versjonen du bygger om.
For å teste resultatene, utsted: ninja test. Testen navngitt
test-stat-util er kjent for å
mislykkes hvis noen kjernefunksjoner ikke er aktivert. Hvis
testpakken kjøres som root
bruker, noen andre tester kan mislykkes fordi de er avhengige
av ulike kjerne konfigurasjonsalternativer.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
pamconfdir=/etc/pam.d: Tvinger PAM filene til å
installeres i /etc/pam.d i stedet for /usr/lib/pam.d.
-D userdb=false:
Fjerner en nisse som ikke gjør noe under en BLFS
konfigurasjon. Hvis du ønsker å aktivere userdbd nissen, erstatte "false" med
"true" i mesonkommandoen ovenfor.
-D homed=disabled:
Fjerner en nisse som ikke gjør noe under en BLFS
konfigurasjon, spesielt ved å bruke kontoer opprettet med
useradd. For å aktivere systemd-homed, sørg først for at du
har cryptsetup-2.7.4 og libpwquality-1.4.5 installert, og
endre deretter “disabled” til “enabled” i
kommandoen meson
setup ovenfor.
-D ukify=disabled:
Fjerner et skript for å kombinere en kjerne, en initramfs og
en kjernekommandolinje osv. inn i en UEFI applikasjon som kan
lastes inn av UEFI fastvaren for å starte den innebygde Linux
kjernen. Det er ikke nødvendig for å starte opp et BLFS
system med UEFI hvis Using
GRUB to Set Up the Boot Process with UEFI følges. Og det
krever pefile Python modulen
ved kjøretid, så hvis det er aktivert men pefile ikke er installert, vil en test
for den mislykkes i testpakken. For å aktivere systemd-ukify, installer
pefile modulen og deretter
endre “disabled” til “enabled” i
ovenstående meson
setup kommandoen.
/etc/pam.d/system-session filen
må endres og en ny fil må opprettes for at systemd-logind skal fungere
riktig. Kjør følgende kommandoer som root bruker:
grep 'pam_systemd' /etc/pam.d/system-session || cat >> /etc/pam.d/system-session << "EOF"# Begin Systemd addition session required pam_loginuid.so session optional pam_systemd.so # End Systemd additionEOF cat > /etc/pam.d/systemd-user << "EOF"# Begin /etc/pam.d/systemd-user account required pam_access.so account include system-account session required pam_env.so session required pam_limits.so session required pam_unix.so session required pam_loginuid.so session optional pam_keyinit.so force revoke session optional pam_systemd.so auth required pam_deny.so password required pam_deny.so # End /etc/pam.d/systemd-userEOF
Som root bruker, erstatte den
kjørende systemd behandleren
(init
prosessen) med systemd kjørbare nylig bygd
og installert:
systemctl daemon-reexec
Sørg først for at Shadow-4.16.0 allerede er ombygd med Linux-PAM-1.6.1 støtte , deretter logg ut og logg på en gang til. Dette sikrer at den kjørende påloggingsøkten registrert med systemd-logind og en per-bruker systemd forekomst kjører for hver bruker som eier en påloggingsøkt. Mange BLFS pakker som lister Systemd som en avhengighet trenger systemd-logind integrasjon og/eller en kjørende per-bruker systemd forekomst.
Hvis du oppgraderer fra en tidligere versjon av systemd og en initrd brukes til systemoppstart, bør du generere en ny initrd før omstart av systemet.
En liste over installerte filer, sammen med deres korte beskrivelser finner du på ../../../../lfs/view/12.2-systemd/chapter08/systemd.html#contents-systemd.
Listet nedenfor er de nylig installerte programmene sammen med korte beskrivelser.
|
er et verktøy for å opprette, fjerne, endre eller inspisere en hjemmemappe styrt av systemd-homed; merk at det er ubrukelig for de klassiske UNIX brukere og hjemmemapper som vi bruker i LFS/BLFS-boken |
|
|
Brukes til å registrere eller fjerne et system fra full diskkryptering, samt angi og spørre om private nøkler og gjenopprettingsnøkler |
|
|
inspiserer brukere, grupper og gruppemedlemskap |
|
|
er en PAM modul som brukes til å registrere brukerøkter med systemd påloggingsbehandler, systemd-logind |
UDisks pakken gir en nisse, verktøy og biblioteker for å få tilgang til og manipulere disker og lagringsenheter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/storaged-project/udisks/releases/download/udisks-2.10.1/udisks-2.10.1.tar.bz2
Nedlasting MD5 sum: 613af9bfea52cde74d2ac34d96de544d
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 44 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
libatasmart-0.19, libblockdev-3.1.1, libgudev-238, libxslt-1.1.42, og Polkit-125
Systemd-256.4 (kjøretid)
GLib-2.80.4 (med GObject Introspection)
D-Bus Python-1.3.2 (for integrasjonstestene), GTK-Doc-1.34.0, LVM2-2.03.26, PyGObject-3.48.2 (for integrasjonstestene), exFAT, og libiscsi
btrfs-progs-6.10.1, dosfstools-4.2, gptfdisk-1.0.10, mdadm-4.3, og xfsprogs-6.9.0
Installer UDisks ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
--enable-available-modules &&
make
For å teste resultatene, kjør: make check. En mer grundig
test kan kjøres med make
ci. Du må først lage mappene /var/run/udisks2 og /var/lib/udisks2, og de valgfrie python
moduler skal være til stede.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
--enable-available-modules:
Denne bryteren aktiverer ytterligere UDisks2 funksjoner hvis libblockdev-3.1.1 er bygget med
valgfrie avhengigheter.
UnRar pakken inneholder en
RAR utpakningsverktøy brukt til
å pakke ut filer fra RAR
arkiver. RARarkiver opprettes
vanligvis med WinRAR, først
og fremst i et Windows miljø.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.rarlab.com/rar/unrarsrc-7.0.9.tar.gz
Nedlasting MD5 sum: a18509f604f31cf7a73473ee97d08ce5
Nedlastingsstørrelse: 256 KB
Estimert diskplass som kreves: 2.6 MB
Estimert byggetid: 0.2 SBU
Denne pakken pakker ut tarballen til den uversjonerte
mappen unrar og ikke den
forventede mappen unrar-7.0.9.
Installer UnRar ved å kjøre følgende kommandoer:
make -f makefile
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
install -v -m755 unrar /usr/bin
UnZip pakken inneholder
ZIP utpakningsverktøy. Disse er
nyttige for å pakke ut filer fra ZIP arkiver. ZIP arkiver opprettes med PKZIP eller Info-ZIP verktøy, primært i et DOS
miljø.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Den forrige versjonen av UnZip pakken hadde noen lokalitetsproblemene. For øyeblikket er det ingen BLFS redaktører som er i stand til å teste disse lokalitetsproblemene. derfor lokalitetsrelatert informasjon er igjen på denne siden, men har ikke vært blitt testet. En mer generell diskusjon om disse problemene finnes i Program Forutsetter Koding delen av Lokale Relaterte Problemer siden.
Nedlasting (HTTP): https://downloads.sourceforge.net/infozip/unzip60.tar.gz
Nedlasting MD5 sum: 62b490407489521db863b523a7f86375
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 9 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/unzip-6.0-consolidated_fixes-1.patch
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/unzip-6.0-gcc14-1.patch
Bruk av UnZip i JDK, Mozilla, DocBook eller en hvilken som helst annen BLFS pakkeinstallasjon er ikke et problem, siden BLFS instruksjoner aldri bruker UnZip for å pakke ut en fil med ikke-ASCII tegn i filnavnet.
Disse problemene antas å være løst i oppdateringen. Men siden ingen av redaktørene har data for å teste dette, er følgende løsninger beholdt i tilfelle de fortsatt kan være nødvendige.
UnZip pakken antar at
filnavn lagret i ZIP arkivene som er opprettet på
ikke-Unix-systemer, er kodet i CP850, og at de skal
konverteres til ISO-8859-1 ved skriving av filer til
filsystemet. Slike forutsetninger er ikke alltid gyldige.
Faktisk, inne i ZIP arkivet er filnavn kodet i DOS kodesiden
som er i bruk i det aktuelle landet, og filnavnene på disken
skal være i lokalitetskodingen. I MS Windows, OemToChar()
C-funksjonen (fra User32.DLL)
gjør den riktige konverteringen (som er faktisk
konverteringen fra CP850 til et supersett av ISO-8859-1 hvis
MS Windows er satt opp til å bruke amerikansk engelsk språk),
men det er ingen tilsvarende i Linux.
Når det brukes unzip for å pakke ut et ZIP arkiv som inneholder ikke-ASCII filnavn, er filnavnene skadet fordi unzip bruker feil konvertering når noen av disse kodingsforutsetninger er feil. For eksempel i ru_RU.KOI8-R locale, kreves konvertering av filnavn fra CP866 til KOI8-R, men konvertering fra CP850 til ISO-8859-1 er utført, noe som produserer filnavn som består av utydelige tegn i stedet for ord (den nærmeste tilsvarende forståelig eksempel for brukere som bare bruker engelsk er rot13). Det er flere måter rundt denne begrensningen:
1) For utpakking av ZIP arkiver med filnavn som inneholder ikke-ASCII tegn, bruk WinZip mens det kjøres Wine Windows emulator.
2) Bruk bsdtar -xf fra libarchive-3.7.4 to unpack the ZIP archive. Deretter fiks skaden på filnavnene ved hjelp av convmv verktøyet (https://j3e.de/linux/convmv/). Følgende er et eksempel for lokaliteten zh_CN.UTF-8:
convmv -f cp936 -t utf-8 -r --nosmart --notest \
</path/to/unzipped/files>
Først anvend oppdateringene:
patch -Np1 -i ../unzip-6.0-consolidated_fixes-1.patch patch -Np1 -i ../unzip-6.0-gcc14-1.patch
Nå kompiler pakken:
make -f unix/Makefile generic
Testpakken fungerer ikke for målet generic.
Nå, som root bruker:
make prefix=/usr MANDIR=/usr/share/man/man1 \ -f unix/Makefile install
make -f unix/Makefile generic: Dette målet begynner med å kjøre et konfigureringsskript (i motsetning til eldre mål som linux og linux_noasm) som lager en flaggfil som deretter brukes i bygget. Dette sikrer at 32-bit x86 bygget mottar de riktige flaggene for å pakke ut filer som er større enn 2 GB når den pakkes ut.
|
tillater utdata fra unzip kommandoer å bli omdirigert |
|
|
lister, tester eller pakker ut filer fra et
|
|
|
er en selvutpakkende stub som kan settes foran et
|
|
|
søker etter filer i et |
|
|
produserer teknisk informasjon om filene i et
|
UPower pakken gir et grensesnitt for å telle strømenheter, lytte til enhetshendelser og spørrehistorikk og statistikk. Enhver applikasjon eller tjeneste på systemet kan få tilgang til org.freedesktop.UPower tjenesten via systemmeldingsbussen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/upower/upower/-/archive/v1.90.4/upower-v1.90.4.tar.bz2
Nedlasting MD5 sum: 2399845217a9c6e4510f66033fcd7cf6
Nedlastingsstørrelse: 140 KB
Estimert diskplass som kreves: 5.5 MB (legg til 2.6 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0,6 SBU for tester)
GLib-2.80.4 (med GObject Introspection)
GTK-Doc-1.34.0, libxslt-1.1.42, docbook-xsl-nons-1.79.2, PyGObject-3.48.2, dbusmock-0.32.1, umockdev-0.18.3 (for en del av testpakken), og libimobiledevice
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
General setup ---> -*- Namespaces support ---> [NAMESPACES] [*] User namespace [USER_NS]
Installer UPower ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gtk-doc=false \
-D man=false &&
ninja
For å teste resultatene, utsted: LC_ALL=C ninja test.
Testpakken skal kjøres fra en lokal GUI økt startet med
dbus-launch. På 32-bits maskiner vil en test mislykkes på
grunn av avrundings feil: Tests.test_battery_energy_charge_mixed. På
noen systemer er to tester knyttet til hodetelefonens
hotplug-funksjon kjent for å mislykkes. De kan trygt
ignoreres siden funksjonaliteten fortsatt virker.
Nå, som root bruker:
ninja install
-D gtk-doc=false:
Hindrer byggingen av dokumentasjonen. Fjern denne hvis du har
GTK-Doc installert og ønsker
å bygge dokumentasjonen.
-D man=false: Hindrer
byggingen av manualsider. Fjern denne hvis du har libxslt-1.1.42 og docbook-xsl-nons-1.79.2
installert og ønsker å bygge manualsider.
USB Utils pakken inneholder verktøy som brukes til å vise informasjon om USB busser i systemet og enheter koblet til dem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://kernel.org/pub/linux/utils/usb/usbutils/usbutils-017.tar.xz
Nedlasting MD5 sum: 8ff21441faf2e8128e4810b3d6e49059
Nedlastingsstørrelse: 168 KB
Estimert diskplass som kreves: 4.4 MB
Estimert byggetid: 0.1 SBU
hwdata-0.385 (kjøretid)
Installer USB Utils ved å kjøre følgende kommandoer:
./configure --prefix=/usr --datadir=/usr/share/hwdata && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
For usb.ids datafiler,
installer hwdata-0.385 pakken.
Skriptet lsusb.py viser informasjon i en mer lettlest form enn lsusb. For å finne alternativene, bruk lsusb.py -h. En bruksform anbefalt av utviklere er lsusb.py -ciu.
|
er et verktøy for å vise informasjon om alle USB busser i systemet og alle enheter koblet til dem, men ikke i lesbar vennlig form |
|
|
viser informasjon om alle USB busser i systemet og alle enheter koblet til dem i rimelig lesbar form |
|
|
er et skallskript som viser detaljer om USB busser og enheter koblet til dem. Den er designet for å brukes hvis /proc/bus/usb/devices ikke er tilgjengelig på systemet ditt |
|
|
brukes til å dumpe rapportbeskrivelser og strømmer fra HID (human interface device) grensesnitt for USB enheter |
Tilstedeværelsen eller fraværet av which programmet i i LFS hovedboken er sannsynligvis en av de mest omstridte sakene på e-postlistene. Det har resultert i minst en flammekrig tidligere. For å forhåpentligvis få slutt på dette en gang for alle, presentert her er to alternativer for å utstyre systemet med which. Spørsmål om hvilken “which” er for deg å bestemme.
Det første alternativet er å installere den faktiske GNU which pakken.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/which/which-2.21.tar.gz
Nedlasting MD5 sum: 097ff1a324ae02e0a3b0369f07a7544a
Nedlastingsstørrelse: 148 KB
Estimert diskplass som kreves: 1 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer which ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Det andre alternativet (for de som ikke vil installere
pakken) er å lage et enkelt skript (utfør som root bruker):
cat > /usr/bin/which << "EOF"
#!/bin/bash
type -pa "$@" | head -n 1 ; exit ${PIPESTATUS[0]}
EOF
chmod -v 755 /usr/bin/which
chown -v root:root /usr/bin/which
Dette skal fungere OK og er sannsynligvis den enkleste løsningen for de fleste tilfeller, men er ikke den mest omfattende implementeringen.
xdotool pakken gir mulighetene for å simulere tastaturinndata og museaktivitet, flytte og endre størrelse på vinduer, osv. Den gjør dette ved å bruke X11s XTEST utvidelse og andre Xlib funksjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/jordansissel/xdotool/releases/download/v3.20211022.1/xdotool-3.20211022.1.tar.gz
Nedlasting MD5 sum: 9fd993a251a7c38b32381503544b0dd7
Nedlastingsstørrelse: 116 KB
Estimert diskplass som kreves: 2.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer xdotool ved å kjøre følgende kommandoer:
make WITHOUT_RPATH_FIX=1
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PREFIX=/usr INSTALLMAN=/usr/share/man install
Zip pakken inneholder
Zip verktøy. Disse er
nyttige for å komprimere filer til ZIP arkiver.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/infozip/zip30.tar.gz
Nedlasting MD5 sum: 7b74551e63f8ee6aab6fbc86676c0d37
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 6.4 MB
Estimert byggetid: 0.1 SBU
Installer Zip ved å kjøre følgende kommandoer:
make -f unix/Makefile generic CC="gcc -std=gnu89"
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make prefix=/usr MANDIR=/usr/share/man/man1 -f unix/Makefile install
CC="gcc -std=gnu89":
Denne parameteren overstyrer CC
variabelen som er satt til cc i unix/Makefile filen. I LFS cc er en symbolkobling til
gcc, og den
bruker -std=gnu17 (ISO 9899:2017
med GNU utvidelser) som standard, men Zip er en “legacy” pakke der
noen grammatikkkonstruksjoner er ugyldige i ISO 9899:1999 og
nyere standarder.
prefix=/usr: Denne
parameteren overstyrer prefix
variabelen som er satt til /usr/local i unix/Makefile filen.
Et basis LFS system kan brukes som en utviklingsplattform, men basissystemet inkluderer kun språkstøtte for C, C++, Perl, og Python. Dette kapittelet gir instruksjoner for å bygge mange populære programmeringsmiljøer for å utvide systemets utviklingsmuligheter betydelig.
Cbindgen kan brukes til å generere C bindinger for Rust kode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/mozilla/cbindgen/archive/v0.27.0/cbindgen-0.27.0.tar.gz
Nedlasting MD5 sum: 9349f81198b82c970822c452d08f25e5
Nedlastingsstørrelse: 224 KB
Estimert diskplass som kreves: 121 MB (legg til 600 MB for tester)
Estimert byggetid: 0.5 SBU (legg til 0,4 SBU for tester), begge på en 4-kjerne maskin
En Internett-tilkobling er nødvendig for å bygge denne pakken.
Installer cbindgen ved å kjøre følgende kommandoer:
cargo build --release
For å teste resultatene, utsted: cargo test --release. Tre
tester i profile.rs er kjent
for å mislykkes fordi de forventer noen Rust ustabile
funksjoner som er deaktivert i BLFS rustc-1.80.1
konfigurasjonen.
Nå, som root bruker:
install -Dm755 target/release/cbindgen /usr/bin/
GNU Clisp er en Felles Lisp implementering (Common Lisp implementation) som inkluderer en tolk, kompilator, debugger og mange utvidelser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/clisp/latest/clisp-2.49.tar.bz2
Nedlasting MD5 sum: 1962b99d5e530390ec3829236d168649
Nedlastingsstørrelse: 7.8 MB
Estimert diskplass som kreves: 163 MB (legg til 8 MB for tester)
Estimert byggetid: 0.9 SBU (1.2 SBU med tester)
Valgfri oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/clisp-2.49-readline7_fixes-1.patch (nødvendig dersom man bygger mot libffcall)
Denne pakken støtter ikke parallellbygging.
Hvis du bygger på et 32-bits system, omgå en feil i GCC forårsaket av den nyeste versjonen av binutils:
case $(uname -m) in
i?86) export CFLAGS="${CFLAGS:--O2 -g} -falign-functions=4" ;;
esac
Fjern to tester, som mislykkes av ukjente årsaker:
sed -i -e '/socket/d' -e '/"streams"/d' tests/tests.lisp
Installer Clisp ved å kjøre følgende kommandoer:
Hvis du bygger clisp mot libffcall, bruk oppdateringen for å fikse en byggefeil med gjeldende readline:
patch -Np1 -i ../clisp-2.49-readline7_fixes-1.patch
Installer Clisp ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
../configure --srcdir=../ \
--prefix=/usr \
--docdir=/usr/share/doc/clisp-2.49 \
--with-libsigsegv-prefix=/usr &&
ulimit -S -s 16384 &&
make -j1
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
ulimit -s 16384: dette øker den maksimale stabelstørrelsen. som anbefalt av configure.
--docdir=/usr/share/doc/clisp-2.49:
denne bryteren tvinger HTML dokumentasjonen til å bli
installert i en versjonert mappe, i stedet for inn i
/usr/share/html/.
--with-libsigsegv-prefix=/usr:
bruk dette til å fortelle configure at du har
installert libsigsegv i /usr,
ellers blir den ikke funnet.
--with-libffcall-prefix=/usr:
bruk dette til å fortelle configure at du har
installert valgfrie libffcall
pakken i /usr, ellers blir den som libsigsegv ikke funnet.
/usr/lib/clisp-2.49/base/
CMake pakken inneholder en moderne verktøysett som brukes til å generere Makefiler. Det er en etterfølger av automatisk generert configure skript og har som mål å være plattform- og kompilatoruavhengig. En betydelig bruker av CMake er KDE siden versjon 4.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cmake.org/files/v3.30/cmake-3.30.2.tar.gz
Nedlasting MD5 sum: 506cada2fe0c12dc6b3f282b8f72d325
Nedlastingsstørrelse: 11 MB
Estimert diskplass som kreves: 452 MB (legg til 1.3 GB for tester)
Estimert byggetid: 3.0 SBU (legg til 4.0 SBU for tester, begge med parallellisme=4)
cURL-8.9.1, libarchive-3.7.4, libuv-1.48.0, og nghttp2-1.62.1
GCC-14.2.0 (for gfortran), git-2.46.0 (for bruk under tester), Mercurial-6.8.1 (for bruk under tester), OpenJDK-22.0.2 (for bruk under tester), Qt-6.7.2 (for Qt basert GUI), sphinx-8.0.2 (for byggedokumenter), Subversion-1.14.3 (for testing), cppdap, jsoncpp, og rhash
Installer CMake ved å kjøre følgende kommandoer:
sed -i '/"lib64"/s/64//' Modules/GNUInstallDirs.cmake &&
./bootstrap --prefix=/usr \
--system-libs \
--mandir=/share/man \
--no-system-jsoncpp \
--no-system-cppdap \
--no-system-librhash \
--docdir=/share/doc/cmake-3.30.2 &&
make
For å teste resultatene, kjør: LC_ALL=en_US.UTF-8 bin/ctest -j<N> -O
cmake-3.30.2-test.log, hvor <N> er et heltall
mellom 1 og antall systemkjerner. Innstilling LC_ALL er nødvendig for å forhindre noen
testfeil når noen av lokalitetsvariablene er satt til
ikke-engelsk språk.
Hvis du ønsker å undersøke et problem med en gitt
"problem1-test", bruk bin/ctest
-R "problem1-test" og for å utelate det, bruk
bin/ctest -E
"problem1-test". Disse alternativene kan bli
brukt sammen: bin/ctest -R
"problem1-test" -E "problem2-test".
Alternativ -N kan brukes til å
vise alle tilgjengelige tester, og du kan kjøre bin/ctest for en undersett
av tester ved å bruke adskilt med mellomrom navn eller tall
som alternativer. Alternativ --help kan brukes til å vise alle
alternativer.
Nå, som root bruker:
make install
sed ... Modules/GNUInstallDirs.cmake: Denne kommandoen deaktiverer programmer som bruker cmake fra å prøve å installere filer i /usr/lib64/.
--system-libs: Denne
bryteren tvinger byggesystemet å koble til den
systeminstallerte versjonen for alle nødvendige biblioteker,
uten de som er eksplisitt spesifisert via en --no-system-* valg.
--no-system-jsoncpp
og --no-system-cppdap: Denne
bryteren fjerner JSON-C++
biblioteket fra listen over systembiblioteker. En medfølgende
versjon av biblioteket brukes i stedet.
--no-system-librhash:
Denne bryteren fjerner librhash biblioteket fra listen over
systembiblioteker. En medfølgende versjon av biblioteket
brukes i stedet.
--no-system-{curl,libarchive,libuv,nghttp2}:
Bruk det tilsvarende alternativet i listen for bootstrap hvis en av de
anbefalte avhengighetene ikke er installert. En samlet
versjon av avhengigheten vil bli brukt i stedet.
--qt-gui: Denne bryteren gjør det
mulig å bygge Qt-basert GUI
for CMake.
--parallel=: Denne bryteren gjør
det mulig å utføre CMake
bootstrap med flere jobber på en gang. Det er ikke nødvendig
hvis MAKEFLAGS variabelen allerede
er satt for bruk av flere prosessorer, hvis Using Multiple Processors er
fulgt.
Doxygen pakken inneholder et dokumentasjonssystem C++, C, Java, Objective-C, Corba IDL og til en viss grad PHP, C# og D. Det er nyttig for å generere HTML dokumentasjon og/eller en off-line referansehåndbok fra et sett med dokumenterte kildefiler. Det er også støtte for å generere utdata i RTF, PostScript, hyperlenket PDF, komprimert HTML og Unix mansider. Dokumentasjonen er trukket direkte fra kildene, noe som gjør det mye lettere å beholde dokumentasjon i samsvar med kildekoden.
Du kan også konfigurere Doxygen til å ta ut kodestrukturen fra udokumenterte kildefiler. Dette er veldig nyttig for raskt å finne veien i store kildedistribusjoner. Brukt sammen med Graphviz, du kan også visualisere relasjonene mellom de ulike elementene ved hjelp av inkluderte avhengighetsgrafer, arvediagrammer og samarbeidsdiagrammer, som alle er generert automatisk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://doxygen.nl/files/doxygen-1.12.0.src.tar.gz
Nedlasting MD5 sum: 3ab97fd76c6fe090946c836c5051182b
Nedlastingsstørrelse: 8.1 MB
Estimert diskplass som kreves: 248 MB (med tester)
Estimert byggetid: 1.9 SBU (med tester; begge bruker parallellisme=4)
Qt-6.7.2 (for doxywizard)
Graphviz-12.1.0, ghostscript-10.03.1, libxml2-2.13.3 (påkrevd for testene), LLVM-18.1.7 (med clang), qt5-components-5.15.14 ((avviklet), texlive-20240312 (eller install-tl-unx), xapian-1.4.26 (for doxyindexer), og javacc
Først må du fikse noen python skript:
grep -rl '^#!.*python$' | xargs sed -i '1s/python/&3/'
Installer Doxygen ved å kjøre følgende kommandoer:
mkdir -v build &&
cd build &&
cmake -G "Unix Makefiles" \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
-D build_wizard=ON \
-D force_qt=Qt6 \
-W no-dev .. &&
make
For å teste resultatene, kjør: make tests. En test, 012_cite.dox, er kjent for å mislykkes hvis texlive-20240312 ikke er install-tl-unx installert.
Hvis du ønsker å generere pakkedokumentasjonen, må du ha Python, TeX Live (for HTML dokumenter) og Ghostscript (for PDF dokumenter) installert, kjør deretter følgende kommando:
cmake -D build_doc=ON \
-D DOC_INSTALL_DIR=share/doc/doxygen-1.12.0 \
.. &&
make docs
Nå, som root bruker:
make install && install -vm644 ../doc/*.1 /usr/share/man/man1
Hvis du har generert pakkedokumentasjonen, er mansidene automatisk installert, og du trenger ikke å kjøre den siste install ... kommandoen.
-D build_wizard=OFF: Bruk denne
bryteren hvis Qt6 ikke er
installert.
-D build_search=ON: Bruk denne
bryteren hvis xapian er
installert og du ønsker å bygge eksterne søkeverktøy
(doxysearch.cgi
og doxyindexer).
-D force_qt6=ON: Bruk denne
bryteren til å bygge doxywizard med Qt6 selv om
Qt5 er installert.
-D use_libclang=ON: Bruk denne
bryteren hvis llvm med
clang er installert, for å
legge til støtte for libclang parsing.
Det er ingen reell konfigurasjon nødvendig for Doxygen pakke selv om tre ekstra pakker kreves hvis du ønsker å bruke utvidede funksjoner. Hvis du trenger formler for å lage PDF dokumentasjon, så må du ha texlive-20240312 installert. Hvis du trenger formler for å konvertere PostScript filer til punktgrafikk, da du må ha ghostscript-10.03.1 installert.
|
er et kommandolinjebasert verktøy som brukes til å generere mal konfigurasjonsfiler og deretter generere dokumentasjon fra disse malene. Bruk doxygen --help for en forklaring av kommandolinjeparametrene |
|
|
er en GUI grensesnitt for konfigurering og kjøring av doxygen |
|
|
genererer en søkeindeks kalt |
|
|
er et CGI program for å søke i data indeksert av doxyindexer |
dtc pakken inneholder enhetstreet kompiler for å jobbe med enhetstrekilde og binære filer og også libfdt, et verktøybibliotek for lesing og manipulering av enhetstrær i binært format.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://kernel.org/pub/software/utils/dtc/dtc-1.7.1.tar.xz
Nedlasting MD5 sum: 8dc1c58c84ca19f825f6939801b44c52
Nedlastingsstørrelse: 168 KB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.3 SBU
Installer dtc ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D python=disabled .. &&
ninja
For å teste resultatene, utsted: meson test -v.
Nå, som root bruker:
ninja install
Fortsatt som root bruker,
fjern det ubrukelige statiske biblioteket:
rm /usr/lib/libfdt.a
Hvis du har texlive-20240312 installert, kan du bygge PDF formatet til dokumentasjonen ved å gi følgende kommando:
pushd ../Documentation latexmk -bibtex --pdf dtc-paper && latexmk -bibtex --pdf dtc-paper -c popd
For å installere dokumentasjonen, som root bruker utsted følgende kommando:
cp -R ../Documentation -T /usr/share/doc/dtc-1.7.1
Hvis du har installert SWIG-4.2.1 og du ønsker å installere Python 3 bindingen av denne pakken, bygg Python 3 modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir ..
Som root bruker, installer
Python 3 modulen:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user libfdt
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D python=disabled:
Denne bryteren forhindrer å bygge Python 3 bindingen med den
avviklede metoden (kjøre setup.py direkte). Vi vil
bygge Python 3 binding med pip3
wheel kommandoen separat om ønskelig.
|
konverterer enhetstre v0 kilde til enhetstre v1 |
|
|
kompilerer enhetstrekilde (dts) til binær blob for enhetstre (dtb), eller dekompilerer dtb til dts |
|
|
sammenligner to forskjellige enhetstre |
|
|
skriver ut en lesbar versjon av en flat enhetstre fil |
|
|
leser verdier fra enhetstreet |
|
|
påfører en rekke overlegg på en baseenhets treblob |
|
|
skriver en egenskapsverdi til et enhetstre |
|
|
er et hjelpebibliotek for lesing og manipulering av enhetstrær i binært format |
GCC pakken inneholder GNU kompilatoren samlingen. Denne siden beskriver installasjonen av kompilatorer for følgende språk: C, C++, Fortran, Objective C, Objective C++, Go, og Modula2. Siden C og C++ er installert i LFS, er denne siden enten for å oppgradere C og C++, eller for å installere ekstra kompilatorer.
Ytterligere språk, blant annet D og Ada, er tilgjengelige i
samlingen. D og Ada har et binært oppstartskrav for den
første installasjon, så deres installasjon er ikke
beskrevet her. For å installere dem, kan du fortsette på
samme måte som nedenfor etter installasjonen av den
tilsvarende kompilatoren fra en binær pakke, legg til
ada eller d til --enable-languages linjen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Hvis du oppgraderer GCC fra en versjon før 14.2.0, da må du være forsiktig med å kompilere 3rd parts kjernemoduler. Du bør sørge for at kjernen og alle dens opprinnelige moduler også er kompilert med samme versjon av GCC som du bruker til å bygge tredjepartsmodulen. Dette problemet påvirker ikke den opprinnelige kjernen (og kjernemoduler) oppdateringer, siden instruksjonene nedenfor er en fullstendig reinstallasjon av GCC. Hvis du har eksisterende tredjepartsmoduler installert, sørg for at de kompileres på nytt med den oppdaterte versjonen av GCC.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/gcc/gcc-14.2.0/gcc-14.2.0.tar.xz
Nedlasting MD5 sum: 2268420ba02dc01821960e274711bde0
Nedlastingsstørrelse: 88 MB
Estimert diskplass som kreves: 11 GB (3.4 GB installert med alle oppførte språk; legg til 1,5 GB for tester)
Estimert byggetid: 14 SBU (legg til 34 SBU for tester; begge med parallellitet=8)
GDB-15.1, Graphviz-12.1.0 (noen tester bruker den hvis den er installert; noter at hvis den er installert, men ikke bygget med libpng-1.6.43 disse testene vil mislykkes), Valgrind-3.23.0 (for tester), og ISL (for å aktivere grafittoptimalisering)
Selv om du bare spesifiserer andre språk enn C og C++ til ./configure kommandoen nedenfor, vil installasjonsprosessen overskrive din eksisterende GCC C og C++ kompilatorer og biblioteker. Det anbefales å kjøre hele pakken med tester.
Ikke fortsett med make install kommandoen til du er sikker på at byggingen var vellykket. Du kan sammenligne dine testresultater med de funnet på https://gcc.gnu.org/ml/gcc-testresults/. Du vil kanskje også se informasjonen som finnes i GCC del av kapittel 8 i LFS boken (../../../../lfs/view/12.2-systemd/chapter08/gcc.html).
Instruksjonene nedenfor utfører med vilje en “bootstrap”
prosess. Bootstrapping er nødvendig for robusthet og
anbefales sterkt når du oppgraderer kompilatorversjonen. For
å deaktivere bootstrap uansett, legg til --disable-bootstrap til
./configure
alternativene nedenfor.
Installer GCC ved å kjøre følgende kommandoer:
case $(uname -m) in
x86_64)
sed -i.orig '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64
;;
esac
mkdir build &&
cd build &&
../configure \
--prefix=/usr \
--disable-multilib \
--with-system-zlib \
--enable-default-pie \
--enable-default-ssp \
--enable-host-pie \
--disable-fixincludes \
--enable-languages=c,c++,fortran,go,objc,obj-c++,m2 &&
make
Hvis du kjører tester, som i LFS, fjern/fiks flere kjente testfeil:
sed -e '/cpython/d' -i ../gcc/testsuite/gcc.dg/plugin/plugin.exp
sed -e 's/no-pic /&-no-pie /' -i ../gcc/testsuite/gcc.target/i386/pr113689-1.c
sed -e 's/300000/(1|300000)/' -i ../libgomp/testsuite/libgomp.c-c++-common/pr109062.c
sed -e 's/{ target nonpic } //' \
-e '/GOTPCREL/d' -i ../gcc/testsuite/gcc.target/i386/fentryname3.c
Hvis du har installert tilleggspakker som f.eks Valgrind og gdb, gcc delen av testpakken vil kjøre mer tester enn i LFS. Noen av disse vil rapportere FAIL og andre XPASS (bestått når det forventes å FEILE). Fra og med gcc-14.1.0 oppstår omtrent 74 FAIL i “guality” pakken, samt diverse feil gjennom resten av testpakken. Hvis alle kompilatorene ovenfor er bygget, vil det være litt over 110 uventede feil av over 617,000 tester. For å kjøre testene, utsted:
make -k check
Testene er veldig lange, og resultatene kan være vanskelige å finne i logger, spesielt hvis du bruker parallelle jobber med make. Du kan få et sammendrag av testene med:
../contrib/test_summary
Nå, som root bruker:
make install &&
mkdir -pv /usr/share/gdb/auto-load/usr/lib &&
mv -v /usr/lib/*gdb.py /usr/share/gdb/auto-load/usr/lib &&
chown -v -R root:root \
/usr/lib/gcc/*linux-gnu/14.2.0/include{,-fixed} &&
ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/14.2.0/liblto_plugin.so \
/usr/lib/bfd-plugins/
mkdir build; cd build: GCC dokumentasjon anbefaler å bygge pakken i en dedikert byggemappe.
--disable-multilib:
Denne parameteren sikrer at filer opprettes for den
spesifikke arkitekturen til datamaskinen din.
--with-system-zlib:
Bruker systemets zlib i
stedet for den medfølgende. zlib brukes til komprimering og
dekomprimering av GCC sin
mellomliggende språk i LTO (Link Time Optimization)
objektfiler.
--enable-default-pie:
Gjør -fpie alternativet standard
når du kompilerer programmer. Sammen med ASLR funksjonen aktivert i kjernen,
beseirer dette en del angrep basert på kjente minneoppsett.
--enable-default-ssp:
Gjør -fstack-protector-strong
alternativet standard når du kompilerer programmer. SSP er en teknikk som hindrer endring
av programflyten ved å ødelegge parameterstabelen.
--enable-host-pie:
Gjør kompilatoren kjørbare PIE (Position Independent
Executable). Dette kan brukes til forbedre beskyttelsen mot
ROP angrep (Return Oriented Programming), og kan sees på som
en del av en bredere trend for å herde binærfiler.
--enable-languages=c,c++,fortran,go,objc,obj-c++,m2:
Denne kommandoen identifiserer hvilke språk som skal bygges.
Du kan endre denne kommandoen for å fjerne uønskede språk.
GCC støtter også Ada og D, men å bygge GCC med Ada (eller D)
støtte trenger en eksisterende Ada (eller D) kompilator. Så
de er ikke aktivert her
make -k check: Denne kommandoen kjører testpakken uten å stoppe hvis det oppstår feil.
../contrib/test_summary: Denne kommandoen vil produsere et sammendrag av resultatene fra testserien. Du kan legge til | grep -A7 Summ til kommandoen for å produsere en enda mer kondensert versjon av sammendraget. Du kan også ønske å omdirigere utdataene til en fil for gjennomgang og sammenligning senere.
--enable-host-shared
--enable-languages=jit: Bygg libgccjit, et bibliotek for å bygge inn
GCC i programmer og biblioteker for å generere maskin kode.
På tross av “JIT” (just-in-time) i navnet,
biblioteket kan også brukes til AOT (ahead-of-time)
kompilering. --enable-host-shared
er nødvendig for å bygge libgccjit, men det reduserer GCC
betydelig. Så libgccjit bør
bli bygget og installert separat, ikke som en del av
“main”
GCC installasjon. Hvis du trenger dette biblioteket,
konfigurer GCC med disse to alternativene og installer
biblioteket ved å kjøre make -C
gcc jit.install-common jit.install-info som
root bruker. Dette
biblioteket brukes ikke av noen BLFS pakker, og er ikke
testet av BLFS utviklerne.
mv -v /usr/lib/*gdb.py
...: Installasjonensteg setter noen filer som
brukes av gdb under
/usr/lib mappen. Dette
genererer falske feilmeldinger når du utfører ldconfig. Dette kommandoen
flytter filene til et annet sted.
chown -v -R root:root
/usr/lib/gcc/*linux-gnu/...: Hvis pakken er
bygget av en annen bruker enn root, vil eierskapet til
installerte include mappen (og
innholdet) vil være feil. Denne kommandoen endrer eierskapet
til root bruker og gruppe.
Noen program- og biblioteknavn og beskrivelser er ikke oppført her, men du finner dem på LFS seksjonen for GCC siden de opprinnelig var installert under byggingen av LFS.
GC pakken inneholder Boehm-Demers-Weiser konservative søppelsamler, som kan brukes som søppelsamler erstatning for C malloc funksjonen eller C++ new operator. Det lar deg allokere minne i utgangspunktet som du normalt ville gjort, uten eksplisitt deallokering av minne som ikke lenger er nyttig. Samleren resirkulerer minnet automatisk når det fastslår at det ikke lenger kan være tilgang til. Samleren brukes også av en rekke programmeringsspråk implementeringer som enten bruker C som mellomkode, ønsker å lette enklere interoperasjon med C biblioteker, eller bare foretrekker det enkle samlergrensesnitt. Alternativt kan søppelsamleren brukes som en lekkasjedetektor for C- eller C++-programmer, selv om det ikke er hovedmålet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/ivmai/bdwgc/releases/download/v8.2.6/gc-8.2.6.tar.gz
Nedlasting MD5 sum: fc5351214bc2e854070ee3319181a467
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 11 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Installer GC ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-cplusplus \
--disable-static \
--docdir=/usr/share/doc/gc-8.2.6 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install && install -v -m644 doc/gc.man /usr/share/man/man3/gc_malloc.3
--docdir=/usr/share/doc/gc-8.2.6:
Dette alternativet brukes slik at pakken vil installere
dokumentasjon i en versjonert mappe.
--enable-cplusplus:
Denne parameteren aktiverer bygging og installasjon av C++
biblioteket sammen med standard C bibliotek.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
inneholder et trebasert strengbibliotek |
|
|
inneholder et C grensesnitt til den konservative søppelsamleren, primært designet for å erstatte C malloc funksjonen |
|
|
inneholder et C++ grensesnitt til den konservative søppelsamleren |
|
|
inneholder et C++ grensesnitt for å kaste dårlige tildelinger |
GDB, GNU Project debugger, lar deg se hva som skjer “på innsiden” i et annet program mens det kjører -- eller hva et annet program gjorde i det øyeblikket det krasjet. Merk at GDB er mest effektiv ved sporing av programmer og biblioteker som ble bygget med feilsøkingssymboler og ikke er strippet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/gdb/gdb-15.1.tar.xz
Nedlasting MD5 sum: 494e3beaac44e66367c3e443a4414529
Nedlastingsstørrelse: 23 MB
Estimert diskplass som kreves: 806 MB (legg til 1.0 GB for dokumenter; legg til 720 MB for tester)
Estimert byggetid: 0.9 SBU (legg til 0.4 SBU for dokumenter; se nedenfor for tester; alle bruker parallellisme=8)
six-1.16.0 (Python 3 modul, kreves ved kjøring for å bruke GDB skript fra ulike LFS/BLFS pakker med Python 3 installert i LFS)
Doxygen-1.12.0, GCC-14.2.0 (ada, gfortran, og go er brukt for tester), Guile-3.0.10, rustc-1.80.1 (brukt for noen tester), Valgrind-3.23.0, og SystemTap (kjøretid, brukt til tester)
Installer GDB ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
../configure --prefix=/usr \
--with-system-readline \
--with-python=/usr/bin/python3 &&
make
Eventuelt for å bygge API dokumentasjonen ved hjelp av Doxygen-1.12.0, kjør:
make -C gdb/doc doxy
Det anbefales ikke å kjøre testene. Resultatene varierer mye avhengig av systemarkitekturen og hvilke valgfrie avhengigheter som er installert og hvilken versjon av gcc som brukes. På ett testet system var det 140 uventede feil (av over 108 000 tester) og på et annet system var det "bare" 32 uventede feil. Tiden for å kjøre testene varierer fra ca. 6 SBU til over 15 SBU ved bruk av -j8. Dette avhenger på antall tester som får tidsavbrudd og andre faktorer.
Med en vanlig make check, er det mange advarsel meldinger om en manglende global konfigurasjonsfil. Disse kan unngås ved å kjøre touch global.exp og forberede make check kommandoen med DEJAGNU=$PWD/global.exp. I tillegg kan testene bruke mindre tid betraktelig ved å bruke make valget "-j<N>" hvor <N> er antall kjerner på systemet ditt.
For å teste resultatene uansett, utsted:
pushd gdb/testsuite && make site.exp && echo "set gdb_test_timeout 30" >> site.exp && make check 2>1 | tee gdb-check.log popd
Se gdb/testsuite/README og TestingGDB. Det er mange ytterligere problemer med testpakken:
Rene mapper er nødvendig hvis du kjører testene på nytt. For den grunnen, lag en kopi av den kompilerte kildekodemappen før testene i tilfelle du må kjøre testene på nytt.
Resultatene avhenger av installerte kompilatorer.
På noen AMD baserte systemer, over 200 ekstra tester kan mislykkes på grunn av en forskjell i trådimplementeringen på disse CPUene.
Nå, som root bruker:
make -C gdb install && make -C gdbserver install
Hvis du har bygget API dokumentasjonen, er den nå i
gdb/doc/doxy. Du kan installere den (som root bruker):
install -d /usr/share/doc/gdb-15.1 && rm -rf gdb/doc/doxy/xml && cp -Rv gdb/doc/doxy /usr/share/doc/gdb-15.1
--with-system-readline: Denne
bryteren tvinger GDB å bruke
kopien av Readline
installert i LFS.
--with-python=/usr/bin/python3:
Denne bryteren tvinger GDB å
bruke Python 3.
|
genererer en kjernedump av et program som kjører |
|
|
er GNU Debugger |
|
|
er en ekstern server for GNU debugger (den tillater programmer å feilsøkes fra en annen maskin) |
|
|
Tillater å legge til indeksfiler til ELF binærfiler. Dette setter fart på gdb starting av store programmer. |
|
|
inneholder funksjoner for sporingsmiddelet i prosessen. Agenten gjør det mulig å installere raske sporingspunkter, og viser statiske sporpunkter markører, sondering av statiske sporingsmarkører og startsporing overvåkning. |
Git er en gratis og åpen kildekode, distribuert versjonskontrollsystem designet for å håndtere alt fra små til veldig store prosjekter med fart og effektivitet. Hver Git clone er et fullverdig depot med fullstendig historikk og full revisjonssporing, ikke avhengig av nettverkstilgang eller en sentral server. Forgrening og sammenslåing går raskt og er lett å gjøre. Git brukes til versjonskontroll av filer, omtrent som verktøy som f.eks Mercurial-6.8.1, Bazaar, Subversion-1.14.3, CVS, Perforce, og Team Foundation Server.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/software/scm/git/git-2.46.0.tar.xz
Nedlasting MD5 sum: 2309cd803a02378380f24c50667d9bfb
Nedlastingsstørrelse: 7.2 MB
Estimert diskplass som kreves: 441 MB (med nedlastet dokumentasjon; legg til 19 MB for å bygge dokumenter; legg til 21 MB for tester)
Estimert byggetid: 0.3 SBU (med parallellitet=4; legg til 0,4 SBU for å bygge dokumenter, og opptil 7 SBU (avhengig av diskhastighet) for tester)
https://www.kernel.org/pub/software/scm/git/git-manpages-2.46.0.tar.xz (ikke nødvendig hvis du har installert asciidoc-10.2.1, xmlto-0.0.29, og foretrekker å bygge dem opp igjen)
https://www.kernel.org/pub/software/scm/git/git-htmldocs-2.46.0.tar.xz og andre dokumenter (ikke nødvendig hvis du har installert asciidoc-10.2.1 og ønsker å gjenoppbygge dokumentasjonen).
cURL-8.9.1 (nødvendig for å bruke Git over http, https, ftp eller ftps)
Apache-2.4.62 (for noen tester), Fcron-3.2.1 (kjøretid, for planlegging av git maintenance jobber), GnuPG-2.4.5 (kjøretid, kan brukes til å signere Git utførelser eller tagger, eller verifisere signaturene av dem), OpenSSH-9.8p1 (kjøretid, nødvendig for å bruke Git over ssh), pcre2-10.44, Subversion-1.14.3 med Perl bindinger (kjøretid, for git svn), Tk-8.6.14 (gitk, en enkel Git arkivvisningsprogram, bruker Tk ved kjøretid), Valgrind-3.23.0, Authen::SASL og MIME::Base64 (begge kjøretid, for git send-email), IO-Socket-SSL-2.088 (kjøretid, for git send-email for å koble til en SMTP server med SSL kryptering), og Systemd-256.4 (kjøretid, gjenoppbygg med Linux-PAM-1.6.1, for planlegging av git maintenance jobber)
xmlto-0.0.29 og asciidoc-10.2.1 , og også dblatex (for PDF versjonen av brukerhåndboken), og docbook2x for å lage infosider
Installer Git ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--with-gitconfig=/etc/gitconfig \
--with-python=python3 &&
make
Du kan bygge mansidene og/eller html dokumentene, eller bruke nedlastede. Hvis du velger å bygge dem, bruk de to neste instruksjonene.
Hvis du har installert asciidoc-10.2.1 kan du lage html versjonen av mansidene og andre dokumenter:
make html
Hvis du har installert asciidoc-10.2.1 og xmlto-0.0.29 kan du lage mansidene:
make man
Testpakken kan kjøres i parallell modus. For å kjøre testpakken, kjør: make test -k |& tee test.log. Hvis noen tester mislykkes, kan listen over mislykkede tester vises via grep '^not ok' test.log | grep -v TODO.
Nå, som root bruker:
make perllibdir=/usr/lib/perl5/5.40/site_perl install
Installer mansidene som root
bruker:
make install-man
Installer html dokumentene som root bruker:
make htmldir=/usr/share/doc/git-2.46.0 install-html
Hvis du lastet ned mansidene, untar dem som root bruker:
tar -xf ../git-manpages-2.46.0.tar.xz \
-C /usr/share/man --no-same-owner --no-overwrite-dir
Hvis du lastet ned html dokumentene, untar dem som
root user:
mkdir -vp /usr/share/doc/git-2.46.0 &&
tar -xf ../git-htmldocs-2.46.0.tar.xz \
-C /usr/share/doc/git-2.46.0 --no-same-owner --no-overwrite-dir &&
find /usr/share/doc/git-2.46.0 -type d -exec chmod 755 {} \; &&
find /usr/share/doc/git-2.46.0 -type f -exec chmod 644 {} \;
For begge metodene inkluderer html dokumentene mange vanlige
tekstfiler. Omorganiser filene som root bruker:
mkdir -vp /usr/share/doc/git-2.46.0/man-pages/{html,text} &&
mv /usr/share/doc/git-2.46.0/{git*.txt,man-pages/text} &&
mv /usr/share/doc/git-2.46.0/{git*.,index.,man-pages/}html &&
mkdir -vp /usr/share/doc/git-2.46.0/technical/{html,text} &&
mv /usr/share/doc/git-2.46.0/technical/{*.txt,text} &&
mv /usr/share/doc/git-2.46.0/technical/{*.,}html &&
mkdir -vp /usr/share/doc/git-2.46.0/howto/{html,text} &&
mv /usr/share/doc/git-2.46.0/howto/{*.txt,text} &&
mv /usr/share/doc/git-2.46.0/howto/{*.,}html &&
sed -i '/^<a href=/s|howto/|&html/|' /usr/share/doc/git-2.46.0/howto-index.html &&
sed -i '/^\* link:/s|howto/|&html/|' /usr/share/doc/git-2.46.0/howto-index.txt
--with-gitconfig=/etc/gitconfig:
Dette setter /etc/gitconfig er
filen som lagrer standard innstillinger for Git for hele systemet.
--with-python=python3: Bruk
denne bryteren for å bruke Python
3, i stedet for EOL Python
2. Python brukes til git
p4 grensesnitt til Perforce repositories, og
brukes også i noen tester.
--with-libpcre2: Bruk denne
bryteren hvis PCRE2 er
installert.
tar -xf
../git-manpages-2.46.0.tar.gz -C /usr/share/man
--no-same-owner: Dette untarer git-manpages-2.46.0.tar.gz. -C alternativet gjør at tar endrer mappe til
/usr/share/man før den begynner
å dekomprimere dokumentene. --no-same-owner alternativet stopper tar fra
å bevare bruker- og gruppedetaljene til filer. Dette er
nyttig siden brukeren eller gruppen kanskje ikke eksisterer
på ditt system; dette kan (potensielt) være en
sikkerhetsrisiko.
mv /usr/share/doc/git-2.46.0 ...: Disse kommandoene flytter noen av filene til undermapper for å gjøre det enklere å sortere gjennom dokumentene og finn det du leter etter.
find ... chmod ...: Disse kommandoene korrigerer tillatelser i tar-filen for den sendte dokumentasjonen.
|
er den dumme innholdssporeren |
|
|
er en CVS serveremulator for Git |
|
|
er en grafisk Git depotleser (trenger Tk-8.6.14) |
|
|
påkalles av git send-pack og oppdaterer depoet med informasjonen matet fra den eksterne enden |
|
|
er et påloggingsskall for SSH kontoer for å gi begrenset Git adgang |
|
|
påkalles av git archive --remote og sender et generert arkiv til den andre enden over git protokollen |
|
|
påkalles av git fetch-pack, det oppdager hvilke objekter den andre siden mangler, og sender de etter pakking |
|
|
er et lagringsadministrasjonsverktøy som optimerer Git for bruk i store depoter |
Denne delen vil beskrive hvordan du setter opp, administrerer og sikrer en git server. Git har mange alternativer tilgjengelig. For mer detaljert dokumentasjon se https://git-scm.com/book/en/v2.
Følgende instruksjoner vil installere en git server. Det vil bli satt opp til å bruke OpenSSH som sikker ekstern tilgangsmetode.
Konfigurasjon av serveren består av følgende trinn:
Du må være bruker root for
den første delen av konfigurasjonen. Opprett git bruker og gruppe og sett en
ubrukelig passordhash med følgende kommandoer:
groupadd -g 58 git && useradd -c "git Owner" -d /home/git -m -g git -s /usr/bin/git-shell -u 58 git && sed -i '/^git:/s/^git:[^:]:/git:NP:/' /etc/shadow
Sett inn en ubrukelig passordhash (erstatter ! med NP)
låser opp kontoen, men den kan ikke brukes for å logge på
via passordautentisering. Det kreves av sshd for å fungere skikkelig. Deretter
oppretter du noen filer og mapper i hjemmemappen til git
brukeren som gir tilgang til git depotet ved å bruke ssh
nøkler.
install -o git -g git -dm0700 /home/git/.ssh && install -o git -g git -m0600 /dev/null /home/git/.ssh/authorized_keys
For enhver utvikler som bør ha tilgang til depotet legg til
hans/hennes offentlige ssh nøkkel til /home/git/.ssh/authorized_keys. Først må
du legge til noen alternativer for å hindre brukere fra å
bruke tilkobling til git for portvideresending til andre
maskiner som git serveren kan nå.
echo -n "no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty " >> /home/git/.ssh/authorized_keys && cat <user-ssh-key> >> /home/git/.ssh/authorized_keys
Det er også nyttig å angi standardnavnet til den første
grenen av nye depoter ved å endre git konfigurasjonen. Som
root bruker, kjør:
git config --system init.defaultBranch trunk
Legg til slutt til /usr/bin/git-shell inngang til
/etc/shells
konfigurasjonsfil. Dette skallet har blitt satt i
git brukerprofil og sørger
for at kun git relaterte handlinger kan utføres:
echo "/usr/bin/git-shell" >> /etc/shells
Depotet kan være hvor som helst på filsystemet. Det er
viktig at git brukeren har lese-/skrivetilgang til den
plasseringen. Vi bruker /srv/git som basismappe. Lag et nytt
git depot med følgende
kommandoer (som root
bruker):
I alle instruksjonene nedenfor bruker vi project1 som et eksempel på depotnavn. Du bør navngi depotet ditt som et kort beskrivende navn for ditt spesifikke prosjekt.
install -o git -g git -m755 -d /srv/git/project1.git && cd /srv/git/project1.git && git init --bare && chown -R git:git .
Alle instruksjonene i denne delen og den neste bør gjøres på et brukersystem, ikke på serversystemet.
Nå som depotet er opprettet, kan det brukes av utviklere
til å legge inn noen filer i den. Når ssh nøkkelen til
brukeren er importert til git sin authorized_keys fil, kan brukeren
samhandle med depotet.
En minimal konfigurasjon bør være tilgjengelig på utviklerens system som spesifiserer brukernavnet og e-postadressen. Lag denne minimale konfigurasjonsfilen på klientsiden:
cat > ~/.gitconfig <<EOF
[user]
name = <users-name>
email = <users-email-address>
EOF
På utviklerens maskin, sett opp noen filer som skal skyves til depotet som det første innholdet:
gitserver begrepet som brukes nedenfor skal være vertsnavnet (eller ip adressen) til git serveren.
mkdir myproject cd myproject git init --initial-branch=trunk git remote add origin git@gitserver:/srv/git/project1.git cat >README <<EOF This is the README file EOF git add README git commit -m 'Initial creation of README' git push --set-upstream origin trunk
Det første innholdet blir nå sendt til serveren og er
tilgjengelig for andre brukere. På den gjeldende maskinen
er argumentet --set-upstream origin
trunk er ikke lenger nødvendig siden det lokale
depotet er koblet til det eksterne depotet. Påfølgende dytt
kan utføres som
git push
Andre utviklere kan nå klone depotet og gjøre endringer i innholdet (så lenge ssh nøklene deres har blitt installert):
git clone git@gitserver:/srv/git/project1.git cd project1 vi README git commit -am 'Fix for README file' git push
Dette er et veldig grunnleggende serveroppsett basert på
OpenSSH adgang. Alle
utviklere bruker git
brukeren for å utføre handlinger på depotet og endringene
brukere foretar kan skilles ut som det lokale
brukernavnet (se ~/.gitconfig) er registrert i
endringssett.
Tilgangen er begrenset av de offentlige nøklene som er lagt
til git sin authorized_keys
filen og det er ingen mulighet for publikum til å
eksportere/klone depotet. For å aktiver dette, fortsett med
trinn 4 for å sette opp git serveren for offentlig
lesetilgang.
I URLen som brukes til å klone prosjektet, den absolutte
banen (her /srv/git/project1.git) må spesifiseres da
depotet ikke er i git sin hjemmemappe, men i /srv/git. For å bli kvitt eksponeringen
som avslører strukturen til serverinstallasjonen, en
symbolkobling kan legges til i git sin hjemmemappe for
hvert prosjekt som dette:
ln -svf /srv/git/project1.git /home/git/
Nå kan depotet klones ved bruk av
git clone git@gitserver:project1.git
Oppsettet beskrevet ovenfor gjør et depot tilgjengelig for autentiserte brukere (med å gi den offentlige ssh nøkkelfilen). Det er også en enkel måte å publisere depotet til uautentiserte brukere — selvfølgelig uten skriveadgang.
Kombinasjonen av tilgang via ssh (for autentiserte brukere) og eksport av arkiver til uautentiserte brukere via nissen er i de fleste tilfeller nok for en utviklingsside.
Nissen vil være tilgjengelig på port 9418 som standard. Sørg for at
brannmuroppsettet tillater tilgang til denne porten.
For å starte serveren ved oppstart, installer git-daemon.service enheten fra blfs-systemd-units-20240801
pakken:
make install-git-daemon
For å tillate git å
eksportere et depot, en fil som heter git-daemon-export-ok kreves i hver
depotmappe på serveren. Filen trenger ikke noe innhold,
bare dens eksistens muliggjør, dens fravær deaktiverer
eksporten av det depotet.
touch /srv/git/project1.git/git-daemon-export-ok
Sammen med git-daemon.service
enheten, en konfigurasjonsfil navngitt /etc/default/git-daemon har blitt
installert. Se gjennom denne konfigurasjonsfilen for å
matche dine behov.
Det er bare tre alternativer å angi i konfigurasjonsfilen:
GIT_BASE_DIR=<dirname>
Spesifiser plasseringen av git depoene. Relative stier som brukes når du får tilgang til nissen vil oversettes i forhold til denne mappen.
DFT_REPO_DIR=<dirname>
Denne mappen er lagt til den hvite listen over
tillatte mapper. Denne variabelen kan inneholde flere
mappenavn, men er vanligvis satt lik GIT_BASE_DIR.
GIT_DAEMON_OPTS=<options>
I tilfelle spesielle alternativer til git daemon
kommandoen er nødvendig, må de spesifiseres i denne
innstillingen. Et eksempel kan være å justere
portnummeret som nissen lytter på. I dette tilfellet,
legg til --port=<port
number> til denne variabelen. For mer
informasjon om hvilke alternativer som kan angis, ta
en titt på utdataene til git daemon --help.
Etter å ha startet nissen, kan uautentiserte brukere klone eksporterte depoer ved å bruke
git clone git://gitserver/project1.git
Som basismappen er /srv/git
standard (eller satt til en egendefinert verdi i
konfigurasjonen), git
tolker den innkommende banen (/project1.git) i forhold til
den basismappen slik at depotet i /srv/git/project1.git er servert.
Guile pakken inneholder GNU-prosjektets utvidelsesspråkbibliotek. Guile inneholder også en frittstående Scheme tolk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/guile/guile-3.0.10.tar.xz
Nedlasting MD5 sum: 375f8a423a23d229552512113aa4a954
Nedlastingsstørrelse: 5.5 MB
Estimert diskplass som kreves: 184 MB (legg til 4 MB for tester)
Estimert byggetid: 4.5 SBU (Bruker parallellisme=4; legg til 0,3 SBU for tester)
Emacs-29.4 og GDB-15.1 (kun kjøretids avhengighet).
Installer Guile ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/guile-3.0.10 &&
make &&
make html &&
makeinfo --plaintext -o doc/r5rs/r5rs.txt doc/r5rs/r5rs.texi &&
makeinfo --plaintext -o doc/ref/guile.txt doc/ref/guile.texi
For å teste resultatene, kjør: ./check-guile. På et
i686-system vil så mange som 10 tester mislykkes i
numbers.test testpakken på
grunn av mindre flytende komma avrundingsfeil.
Nå, som root bruker:
make install &&
make install-html &&
mkdir -p /usr/share/gdb/auto-load/usr/lib &&
mv /usr/lib/libguile-*-gdb.scm /usr/share/gdb/auto-load/usr/lib &&
mv /usr/share/doc/guile-3.0.10/{guile.html,ref} &&
mv /usr/share/doc/guile-3.0.10/r5rs{.html,} &&
find examples -name "Makefile*" -delete &&
cp -vR examples /usr/share/doc/guile-3.0.10 &&
for DIRNAME in r5rs ref; do
install -v -m644 doc/${DIRNAME}/*.txt \
/usr/share/doc/guile-3.0.10/${DIRNAME}
done &&
unset DIRNAME
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
er en frittstående Scheme tolk for Guile |
|
|
er et Guile skript som gir informasjon som er nødvendig for å koble programmene dine til Guile biblioteket, omtrent på samme måte PkgConfig gjør det |
|
|
er et skript for å analysere deklarasjonene i din C kode for Scheme synlige C funksjoner |
|
|
er et innpakningsprogram installert sammen med guile, som vet hvor en bestemt modul er installert og kaller den, og sender sine argumenter til programmet |
|
|
er en symbolkobling til guild |
LLVM pakken inneholder en samling av modulære og gjenbrukbare kompilator og verktøykjedet eknologier. Den lave nivået Virtuelle maskin (LLVM) Kjernebiblioteker gir en moderne kilde og mål uavhengig optimaliserer, sammen med kodegenereringsstøtte for mange populære CPUer (samt noen mindre vanlige!). Disse bibliotekene er bygget rundt en godt spesifisert koderepresentasjon kjent som LLVM mellomrepresentasjon ("LLVM IR").
Clang gir nye C, C++, Objective C og Objective C++ grensesnitt for LLVM og kreves av noen skrivebordspakker som f.eks firefox og for rust hvis det er bygget ved hjelp av systemets LLVM.
Compiler RT pakken gir kjøretids rense og profilerings biblioteker for utviklere som bruker Clang og LLVM.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/llvm/llvm-project/releases/download/llvmorg-18.1.7/llvm-18.1.7.src.tar.xz
Nedlasting MD5 sum: ad39785449a878df1eed590339c3a8c4
Nedlastingsstørrelse: 60 MB
Estimert diskplass som kreves: 3.5 GB (964 MB installert; legg til 20 GB for tester og 308 MB for dokumentasjon)
Estimert byggetid: 13 SBU (Legg til 8 SBU for tester; begge bruker parallellisme=8)
Cmake moduler for LLVM
Nedlasting: https://anduin.linuxfromscratch.org/BLFS/llvm/llvm-cmake-18.src.tar.xz
Nedlasting MD5 sum: bf2ad617d47ce40fe77c0e5c26b1fe43
Nedlastingsstørrelse: 12 KB
Tredjepartsavhengigheter for LLVM byggesystemet
Nedlasting: https://anduin.linuxfromscratch.org/BLFS/llvm/llvm-third-party-18.src.tar.xz
Nedlasting MD5 sum: 5ebac19868c66cdac8b87077faefd38c
Nedlastingsstørrelse: 396 KB
Clang
Nedlasting: https://github.com/llvm/llvm-project/releases/download/llvmorg-18.1.7/clang-18.1.7.src.tar.xz
Nedlasting MD5 sum: 47e26237223d5ee0e6b674f028b56dae
Nedlastingsstørrelse: 22 MB
Compiler RT
Nedlasting: https://github.com/llvm/llvm-project/releases/download/llvmorg-18.1.7/compiler-rt-18.1.7.src.tar.xz
Nedlasting MD5 sum: 31753c0ec6271a37c12a17cf84187098
Nedlastingsstørrelse: 2.4 MB
Doxygen-1.12.0, git-2.46.0, Graphviz-12.1.0, libxml2-2.13.3, psutil-6.0.0 (for tester), Pygments-2.18.0, PyYAML-6.0.2 (for tester), rsync-3.3.0 (for tester), Systemd-256.4 (gjennoppbygg med PAM, for tester), texlive-20240312 (eller install-tl-unx), Valgrind-3.23.0, Zip-3.0, myst-parser (for bygging av dokumentasjonen), OCaml, og Z3
To ekstra tarballer llvm-cmake-18.src.tar.xz og llvm-third-party-18.src.tar.xz er nødvendig
for LLVM byggesystemet. Oppstrøms forventer at de pakkes ut
på samme nivå som llvm-18.1.7.src.tar.xz tarballen, og de
utpakkede mappene omdøpt til cmake og third-party. Pakk dem ut og endre
byggesystemet for å unngå å lage tvetydige navn på mapper
utenfor llvm-18.1.7.src
hierarkiet:
tar -xf ../llvm-cmake-18.src.tar.xz &&
tar -xf ../llvm-third-party-18.src.tar.xz &&
sed '/LLVM_COMMON_CMAKE_UTILS/s@../cmake@llvm-cmake-18.src@' \
-i CMakeLists.txt &&
sed '/LLVM_THIRD_PARTY_DIR/s@../third-party@llvm-third-party-18.src@' \
-i cmake/modules/HandleLLVMOptions.cmake
Installer clang inn i kildetreet ved å kjøre følgende kommandoer:
tar -xf ../clang-18.1.7.src.tar.xz -C tools && mv tools/clang-18.1.7.src tools/clang
Hvis du har lastet ned compiler-rt, installer den i kildetreet ved å kjøre følgende kommandoer:
tar -xf ../compiler-rt-18.1.7.src.tar.xz -C projects && mv projects/compiler-rt-18.1.7.src projects/compiler-rt
Det er mange Python skript i denne pakken som bruker /usr/bin/env python for å få tilgang til systemets Python som på LFS er Python-3.12.5. Bruk følgende kommando for å fikse disse skriptene:
grep -rl '#!.*python' | xargs sed -i '1s/python$/python3/'
Sørg for å installere FileCheck programmet som er nødvendig av testpakken til noen pakker (for eksempel rustc-1.80.1):
sed 's/utility/tool/' -i utils/FileCheck/CMakeLists.txt
Installer LLVM ved å kjøre følgende kommandoer:
mkdir -v build &&
cd build &&
CC=gcc CXX=g++ \
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D LLVM_ENABLE_FFI=ON \
-D CMAKE_BUILD_TYPE=Release \
-D LLVM_BUILD_LLVM_DYLIB=ON \
-D LLVM_LINK_LLVM_DYLIB=ON \
-D LLVM_ENABLE_RTTI=ON \
-D LLVM_TARGETS_TO_BUILD="host;AMDGPU" \
-D LLVM_BINUTILS_INCDIR=/usr/include \
-D LLVM_INCLUDE_BENCHMARKS=OFF \
-D CLANG_DEFAULT_PIE_ON_LINUX=ON \
-D CLANG_CONFIG_FILE_SYSTEM_DIR=/etc/clang \
-W no-dev -G Ninja .. &&
ninja
Hvis du ønsker å kjøre testene, fjern en test som er kjent for å henge på ubestemt tid på enkelte systemer:
rm -f ../projects/compiler-rt/test/tsan/getline_nohang.cpp
LLVM testpakken kan produsere mange kjernedumpfiler. De vil
okkupere en stor mengde diskplass, og kjernedumpprosessen kan
reduserer testingen betydelig. For å teste resultatene med
kjernedump deaktivert, sikre at
Systemd-256.4 og Shadow-4.16.0 er blitt
bygget om med Linux-PAM-1.6.1 støtte (hvis du
samhandler via en SSH eller grafisk sesjon, sørg også for at
OpenSSH-9.8p1 serveren eller
skrivebordsadministratoren har blitt bygget med Linux-PAM-1.6.1) og gjeldende
påloggingsøkt startes etter oppdatering av /etc/pam.d/system-session filen til å
inkludere pam_systemd.so,
deretter utsted:
systemctl --user start dbus && systemd-run --user --pty -d -G -p LimitCORE=0 ninja check-all
Hvis -jN (N erstattet med et
nummer) sendes til ninja, testene vil bygges
med N logiske kjerner, men kjører med alle tilgjengelige
logiske kjerner. Kjør testkommandoen i en cgroup
(send -p
AllowedCPUs=... alternativet til systemd-run
kommandoen, les the
section called “Bruk Linux Control Group for å begrense
ressursbruken” for detaljer) for å begrense antall
logiske kjerner for å kjøre testene. To tester knyttet til
TestCases/Linux/printf-fortify-5.c er kjent
for å mislykkes med Glibc-2.40 eller nyere. En test navngitt
Linux/clone_setns.cpp vil
mislykkes hvis CONFIG_USER_NS
ikke er aktivert i kjernekonfigurasjonen.
Nå, som root bruker:
ninja install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
-D
LLVM_ENABLE_FFI=ON: Denne bryteren tillater
LLVM å bruke libffi.
-D
LLVM_BUILD_LLVM_DYLIB=ON: Denne bryteren bygger
bibliotekene som statiske og kobler dem alle sammen til en
unik delt. Dette er den anbefalte måten å bygge et delt
bibliotek på.
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren
aktiverer kompilatoroptimaliseringer for å øke hastigheten på
koden og redusere størrelsen. Den deaktiverer også noen
kompileringskontroller som ikke er nødvendige på en
produksjonssystem.
-D
LLVM_TARGETS_TO_BUILD="host;AMDGPU": Denne
bryteren gjør det mulig å bygge for samme mål som verten, og
også for r600 AMD GPU som brukes av Mesa r600 og radeonsi
drivere. Standard er alle målene. Du kan bruke en
semikolonseparert liste. Gyldige mål er: host, AArch64,
AMDGPU, ARM, AVR, BPF, Hexagon, Lanai, LoongArch, Mips,
MSP430, NVPTX, PowerPC, RISCV, Sparc, SystemZ, SystemZ, VE,
WebAssembly, X86, XCore, eller alle.
-D
LLVM_LINK_LLVM_DYLIB=ON: Brukes sammen med
-D
LLVM_BUILD_LLVM_DYLIB=ON, denne bryteren
aktiverer kobling av verktøyene mot det delte biblioteket i
stedet for de statiske. Det reduserer størrelsen litt og
sikrer også at llvm-config vil bruke libLLVM-18.so riktig.
-D
LLVM_ENABLE_RTTI=ON: Denne bryteren brukes til å
bygge LLVM med informasjon om kjøretidstype. Dette er
nødvendig for å bygge Mesa-24.1.5.
-D
LLVM_BINUTILS_INCDIR=/usr/include: Denne bryteren
brukes til å fortelle byggesystemet plasseringen av binutils
deklarasjoner, som ble installert i LFS. Dette tillater
bygging av LLVMgold.so, som
trengs for å bygge programmer med clang og Link Time
Optimization (LTO).
-D
LLVM_INCLUDE_BENCHMARKS=OFF: brukes til å
deaktivere generasjonsbyggmål for LLVM benchmarks. Dette
alternativet krever tilleggskode som ikke er tilgjengelig for
øyeblikket.
-D
CLANG_DEFAULT_PIE_ON_LINUX=ON: gjør -fpie alternativet standard når du kompilerer
programmer. Sammen med ASLR funksjonen
aktivert i kjernen, dette beseirer en slags angrep basert på
kjente minneoppsett.
-D
CLANG_CONFIG_FILE_SYSTEM_DIR=/etc/clang: gjør at
clang og
clang++ søker
/etc/clang for
konfigurasjonsfiler.
-D BUILD_SHARED_LIBS=ON: hvis
brukt i stedet for -D
LLVM_BUILD_LLVM_DYLIB=ON og -D LLVM_LINK_LLVM_DYLIB=ON,
bygger alle LLVM biblioteker
(ca. 60) som delte biblioteker i stedet for statiske.
-D LLVM_ENABLE_DOXYGEN: Gjør det
mulig å generere søkbar HTML dokumentasjon hvis du har
installert Doxygen-1.12.0. Du bør kjøre
make
doxygen-html etterpå, og installer den
genererte dokumentasjonen manuelt.
Hvis du har bygget Clang, som root bruker opprett to
konfigurasjonsfiler å lage SSP
aktivert som standard for clang og clang++, sånn at
standardkonfigurasjonen av deres SSP funksjon vil bli
konsistent med GCC-14.2.0:
mkdir -pv /etc/clang && for i in clang clang++; do echo -fstack-protector-strong > /etc/clang/$i.cfg done
|
viser AMD GPUer installert; ved kjøretid trenger
den |
|
|
er et statisk analyseverktøy |
|
|
er det automatiske reduksjonsverktøyet for testtilfeller |
|
|
brukes til å teste libclang API og demonstrere bruken |
|
|
er Clang C, C++, og Objective-C kompilator |
|
|
er et verktøy for å utføre statisk kodeanalyse og vise abstrakt syntaks trær (AST) |
|
|
er et verktøy for å samle USR navn og plasseringen til eksterne definisjoner i en kildefil |
|
|
er et verktøy for å formatere C/C++/Java/JavaScript/Objective-C/Protobuf kode |
|
|
er et innpakningsverktøy over vertslinkeren |
|
|
er et verktøy for å pakke/oppløse OpenMP avlastede filer knyttet til en vanlig kildefil |
|
|
er et verktøy for å samle flere objektfiler til en enkelt binær, som deretter kan brukes til å lage en fatbinærholdig avlastningskode |
|
|
er et Clang basert refaktoriseringsverktøy for C, C++ og Objective-C |
|
|
er et verktøy for å gi nytt navn til symboler i C/C++ programmer |
|
|
er et verktøy for å skanne etter avhengigheter i en kildefil |
|
|
er et program som oversetter kompilatorrelatert mål
beskrivelse ( |
|
|
er en kombinasjon av verktøy for å håndtere diagnostikk i clang |
|
|
er et verktøy som leser to filer (en fra standardinndata, og en spesifisert på kommandolinjen) og bruker den ene til å bekrefte den andre. |
|
|
er et verktøy som brukes til å manipulere arkiverte DWARF feilsøkingssymbolfiler, kompatibel med Darwin kommandoen dsymutil |
|
|
kjører clang-format på git genererte oppdateringer (krever git-2.46.0) |
|
|
er et Python verktøy for å dumpe og konstruere deklarasjonskart |
|
|
genererer en database med byggekommandoer for et prosjekt |
|
|
er LLVM statisk kompilator |
|
|
brukes til å kjøre programmer direkte fra LLVM bitkode |
|
|
er et verktøy som brukes til å konvertere adresser til filnavn og linjetall |
|
|
er LLVM arkiverer |
|
|
er LLVM assembler |
|
|
er LLVM bitkode analysator |
|
|
fjerner LLVM bitkode fra et objekt |
|
|
er et verktøy for å sette sammen llvm moduler |
|
|
identifiserer om Control Flow Integrity beskytter alle indirekte kontrollflytinstruksjoner i den medfølgende objektfilen, DSO, eller binære |
|
|
Printer LLVM kompileringsalternativer |
|
|
brukes til å sende ut dekningsinformasjon |
|
|
er en bytecode disassembler |
|
|
er et verktøy for å konvertere Microsoft ressursfiler til COFF |
|
|
brukes som en C++ ABI Data Dumper |
|
|
brukes til å demangle C++ symboler i llvm kode |
|
|
brukes til å omforme C++ manglede symboler |
|
|
skriver ut en logisk representasjon av feilsøkingsinformasjon på lavt nivå |
|
|
er en tjeneste som gir feilsøkingsinformasjon over en HTTP API for å analysere strippede binære filer |
|
|
er et grensesnitt til llvm-debuginfod nissen for å finne debuginfod artefakter |
|
|
er LLVM strukturelle 'diff' |
|
|
er LLVM disassembler |
|
|
skriver ut innholdet av DWARF seksjoner i objektfiler |
|
|
er et verktøy for å kopiere og manipulere feilsøkingsinformasjon |
|
|
slår sammen delte DWARF filer |
|
|
brukes til å lese informasjon om en ELF binærs ABI |
|
|
er et benchmarking verktøy som bruker informasjon tilgjengelig i LLVM til å måle vertsmaskininstruksjonskarakteristikker som latens eller portnedbrytning |
|
|
brukes til å trekke ut en funksjon fra en LLVM modul |
|
|
brukes til å behandle GSYM Symbolication Format filer som konvertere minneadresser til funksjonsnavn og kildefillinje. Disse filene er mindre enn DWARF- eller Breakpad-filer |
|
|
brukes til å slå sammen grensesnittstubs med objektfiler |
|
|
brukes til å omskrive lastekommandoer til MachO binært format |
|
|
brukes til å analysere flyttbare objektfiler for å lage innholdet kjørbar i en målprosess |
|
|
gir grunnleggende libtool funksjonalitet på Darwin-baserte systemer. Dette er mest nyttig hvis du genererer binærfiler for macOS systemer |
|
|
er LLVM linker |
|
|
brukes til å lage universelle binærfiler fra MachO filer |
|
|
er LLVM LTO (link time optimization) linker |
|
|
er en testpakke for det oppløsningsbaserte LTO grensesnittet |
|
|
er en frittstående maskinkode assembler/disassembler |
|
|
er et ytelsesanalyseverktøy for statisk å måle ytelsen til maskinkoden |
|
|
er en lekeplass for maskinkode levert av LLVM |
|
|
er et verktøy for å trekke ut en modul fra flermodul bitkodefiler |
|
|
er et verktøy for å generere signerte filer og mapper fra en side-by-side monteringsmanifest (brukes for Microsoft SDK) |
|
|
brukes til å liste LLVM bitkode og objektfilens symboltabell |
|
|
er LLVMs versjon av et objektfil verktøy |
|
|
er en LLVM objektfil dumper |
|
|
er et verktøy for å generere en optimaliseringsrapport fra YAML optimalisering opptaksfiler |
|
|
er en PDB (Program Database) dumper. PDB er et Microsoft format |
|
|
er et lite verktøy for å manipulere og skrive ut profildatafiler |
|
|
genererer LLVM SPGO profileringsinformasjon |
|
|
brukes til å generere en indeks for et LLVM arkiv |
|
|
er et plattformuavhengig verktøy for å kompilere ressursskript inn i binære ressursfiler |
|
|
viser formatspesifikk informasjon på lavt nivå om objektfiler |
|
|
er LLVM TAPI filleseren og transformatoren |
|
|
brukes til å automatisk redusere testcases når du kjører en testpakke |
|
|
konverterer merknadsfiler mellom bitstrøm og YAML; eller skriver ut funksjonsinstruksjon telleinformasjon i merknadsfiler |
|
|
er LLVM MC-JIT verktøy |
|
|
er LLVM objektstørrelse dumper |
|
|
er LLVM modul splitter |
|
|
brukes til å generere tilfeldige |
|
|
skrive ut strenger funnet i en binær (objektfil, kjørbar eller arkivbibliotek) |
|
|
konverterer adresser til kildekodeplasseringer |
|
|
er LLVM Target Description To C++ Code Generator |
|
|
er LLVM TargetLibraryInfo kontra SDK kontroll |
|
|
er et verktøy for å demangle navn |
|
|
er en implementering av Googles XRay funksjonsanropssporingssystem |
|
|
viser NVIDIA GPUer installert; ved kjøretid trenger
den |
|
|
er LLVM optimizer |
|
|
er behandlingsverktøyet for rensedekning |
|
|
er behandlingsverktøyet for rensestatistikk |
|
|
er Perl skript som påkaller Clang statiske analysator |
|
|
er Python skript som påkaller Clang statiske analysator |
|
|
er en viser for Clang statiske analysator resultater |
|
|
er LLVM verktøy for å bekrefte brukslistens rekkefølge |
Lua er en kraftig lettvektsprogrammeringsspråk utviklet for å utvide applikasjoner. Det er også ofte brukt som et frittstående språk for allmenn bruk. Lua er implementert som et lite bibliotek med C funksjoner, skrevet i ANSI C, og kompilerer umodifisert i alle kjente plattformer. Gjennomføringsmålene er enkelhet, effektivitet, portabilitet og lave innbyggingskostnader. Resultatet er en rask språkmotor med lite fotavtrykk, noe som også gjør den ideell i innebygde systemer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.lua.org/ftp/lua-5.4.7.tar.gz
Nedlasting MD5 sum: fc3f3291353bbe6ee6dec85ee61331e8
Nedlastingsstørrelse: 368 KB
Estimert diskplass som kreves: 3.8 MB (med Basis tester)
Estimert byggetid: mindre enn 0.1 SBU (med Basis tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/lua-5.4.7-shared_library-1.patch
Valgfri Testpakke Nedlasting (HTTP): https://www.lua.org/tests/lua-5.4.7-tests.tar.gz
Valgfri Testpakke Nedlasting MD5 sum: 5fcf34336004f83de447c79958ea678e
Valgfri Testpakke Nedlastingsstørrelse: 134 KB
Noen pakker sjekker for pkg-config filen for Lua, som blir opprettet med:
cat > lua.pc << "EOF"
V=5.4
R=5.4.7
prefix=/usr
INSTALL_BIN=${prefix}/bin
INSTALL_INC=${prefix}/include
INSTALL_LIB=${prefix}/lib
INSTALL_MAN=${prefix}/share/man/man1
INSTALL_LMOD=${prefix}/share/lua/${V}
INSTALL_CMOD=${prefix}/lib/lua/${V}
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: Lua
Description: An Extensible Extension Language
Version: ${R}
Requires:
Libs: -L${libdir} -llua -lm -ldl
Cflags: -I${includedir}
EOF
Installer Lua ved å kjøre følgende kommandoer:
patch -Np1 -i ../lua-5.4.7-shared_library-1.patch && make linux
For å teste resultatene, kjør: make test. “Dette vil kjøre tolken og skrive ut versjonen.” Mer omfattende tester kan utføres hvis du lastet ned "Testpakke" tarballen. Disse testene må utføres etter at pakken er installert, og derfor henviser vi til beskrivelsen nedenfor.
Nå, som root bruker:
make INSTALL_TOP=/usr \
INSTALL_DATA="cp -d" \
INSTALL_MAN=/usr/share/man/man1 \
TO_LIB="liblua.so liblua.so.5.4 liblua.so.5.4.7" \
install &&
mkdir -pv /usr/share/doc/lua-5.4.7 &&
cp -v doc/*.{html,css,gif,png} /usr/share/doc/lua-5.4.7 &&
install -v -m644 -D lua.pc /usr/lib/pkgconfig/lua.pc
Her beskriver vi kun "Grunntestene". Untar tarballen og endre
til lua-5.4.7-tests mappen,
deretter kjør lua -e "_U=true"
all.lua. Hvis testene avsluttes uten feil,
vil du se en melding som inneholder strengen "final OK".
Lua er en kraftig lettvekts programmeringsspråk utviklet for å utvide applikasjoner. Det er også ofte brukt som et frittstående språk for allmenn bruk. Lua er implementert som et lite bibliotek med C funksjoner, skrevet i ANSI C, og kompilerer umodifisert i alle kjente plattformer. Gjennomføringsmålene er enkelhet, effektivitet, portabilitet og lave innbyggingskostnader. Resultatet er en rask språkmotor med lite fotavtrykk, noe som gjør den ideell i innebygde systemer også.
Dette er en eldre versjon av Lua bare nødvendig for kompatibilitet med andre programmer som f.eks Wireshark-4.2.6 og VLC-3.0.21.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.lua.org/ftp/lua-5.2.4.tar.gz
Nedlasting MD5 sum: 913fdb32207046b273fdb17aad70be13
Nedlastingsstørrelse: 248 KB
Estimert diskplass som kreves: 3.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/lua-5.2.4-shared_library-1.patch
Noen pakker sjekker for pkg-config filen for Lua, som er opprettet med:
cat > lua.pc << "EOF"
V=5.2
R=5.2.4
prefix=/usr
INSTALL_BIN=${prefix}/bin
INSTALL_INC=${prefix}/include/lua5.2
INSTALL_LIB=${prefix}/lib
INSTALL_MAN=${prefix}/share/man/man1
INSTALL_LMOD=${prefix}/share/lua/${V}
INSTALL_CMOD=${prefix}/lib/lua/${V}
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include/lua5.2
Name: Lua
Description: An Extensible Extension Language
Version: ${R}
Requires:
Libs: -L${libdir} -llua5.2 -lm -ldl
Cflags: -I${includedir}
EOF
Installer Lua ved å kjøre følgende kommandoer:
patch -Np1 -i ../lua-5.2.4-shared_library-1.patch &&
sed -i '/#define LUA_ROOT/s:/usr/local/:/usr/:' src/luaconf.h &&
sed -r -e '/^LUA_(SO|A|T)=/ s/lua/lua5.2/' \
-e '/^LUAC_T=/ s/luac/luac5.2/' \
-i src/Makefile &&
make MYCFLAGS="-fPIC" linux
Installasjonen av denne pakken er kompleks, så vi vil bruke DESTDIR metoden for installasjon:
make TO_BIN='lua5.2 luac5.2' \
TO_LIB="liblua5.2.so liblua5.2.so.5.2 liblua5.2.so.5.2.4" \
INSTALL_DATA="cp -d" \
INSTALL_TOP=$PWD/install/usr \
INSTALL_INC=$PWD/install/usr/include/lua5.2 \
INSTALL_MAN=$PWD/install/usr/share/man/man1 \
install &&
install -Dm644 lua.pc install/usr/lib/pkgconfig/lua52.pc &&
mkdir -pv install/usr/share/doc/lua-5.2.4 &&
cp -v doc/*.{html,css,gif,png} install/usr/share/doc/lua-5.2.4 &&
ln -s liblua5.2.so install/usr/lib/liblua.so.5.2 &&
ln -s liblua5.2.so install/usr/lib/liblua.so.5.2.4 &&
mv install/usr/share/man/man1/{lua.1,lua5.2.1} &&
mv install/usr/share/man/man1/{luac.1,luac5.2.1}
Nå, som root bruker:
chown -R root:root install && cp -a install/* /
sed -i ... src/luaconf.h: Denne kommandoen endrer Lua søkebane for å matche installasjonsbanen.
sed -i ... src/Makefile: Denne kommandoen dekonflikter denne installasjonen med den nyeste versjonen av lua.
Mercurial er en distribuert kildekontroll styringsverktøy som ligner på Git og Bazaar. Mercurial er skrevet i Python og brukes av prosjekter som Mozilla for Firefox og Thunderbird.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.mercurial-scm.org/release/mercurial-6.8.1.tar.gz
Nedlasting MD5 sum: f0c076d22c07bf65ffb02753fc516084
Nedlastingsstørrelse: 7.9 MB
Estimert diskplass som kreves: 113 MB (med dokumenter, legg til 1.5 GB for tester)
Estimert byggetid: 0.3 SBU (med dokumenter, legg til 16 SBU for tester; begge bruker parallellisme=8)
docutils-0.21.2 (nødvendig for å bygge
dokumentasjonen), git-2.46.0, GPGME-1.23.2 (med Python bindinger),
OpenSSH-9.8p1 (kjøretid, for å få tilgang
til ssh://... depoter), Pygments-2.18.0, rustc-1.80.1 (se
rust/README.rst og rust/rhg/README.md), Subversion-1.14.3
(med Python bindinger), Bazaar, CVS, pyflakes,
pyOpenSSL, og
re2
Bygg Mercurial ved å kjøre følgende kommandoer:
make build
For å bygge dokumentasjonen (krever docutils-0.21.2), utsted:
make doc
Hvis du ønsker å kjøre testene, må rusttestene fjernes siden de for øyeblikket er ødelagt på grunn av syntaksfeil. For å gjøre dette, utsted:
sed -i '138,142d' Makefile
For å kjøre testpakken, utsted:
TESTFLAGS="-j<N> --tmpdir tmp" make check
hvor <N> er
et heltall mellom én og antall ( prosessor X tråder ),
inkludert. Tester kan mislykkes fordi noen feilmeldinger har
endret seg i Python eller noen avskrivningsadvarsler skrives
ut som ikke var til stede da testen ble designet. To tester
er kjent for å mislykkes: test-duplicateoptions.py og
test-profile.t.
For å undersøke eventuelle tilsynelatende mislykkede tester, kan du bruke run-tests.py skriptet. For å se de nesten førti bryterne, noen av dem veldig nyttige, kjør tests/run-tests.py --help. Når du kjører følgende kommandoer, vil du bare kjøre testene som mislyktes før:
pushd tests && rm -rf tmp && ./run-tests.py --tmpdir tmp test-gpg.t popd
Normalt vil de tidligere feilene være reproduserbare.
Imidlertid, hvis du legger til bryteren --debug før --tmpdir, og kjør testene på nytt, kan det
kan at noen feil forsvinner, noe som er et problem med
testpakken. Hvis dette skjer, vil det ikke være flere av
disse feilene selv om du ikke bruker --debug bryteren igjen.
En interessant bryter er --time,
som vil generere en tabell over alle utførte tester og deres
respektive start, slutt, bruker, system og sanntid når
testene er fullført. Merk at disse brytere kan brukes med
make check ved
å inkludere dem i TESTFLAGS
miljøvariabelen.
Installer Mercurial ved å
kjøre følgende kommando (som root):
make PREFIX=/usr install-bin
Hvis du har laget dokumentasjonen, installer den ved å kjøre
følgende kommando (som root):
make PREFIX=/usr install-doc
Etter installasjonen to veldig raske og enkle tester burde kjøres riktig. Den første trenger litt konfigurasjon:
cat >> ~/.hgrc << "EOF"
[ui]
username = <user_name> <user@mail>
EOF
hvor du må erstatte <user_name> and <your@mail> (mail er valgfritt og kan utelates). Med brukeridentiteten definert, kjør hg debuginstall og flere linjer vil vises, den siste leser "no problems detected". En annen rask og enkel test er bare hg, som skal gi grunnleggende kommandoer som kan brukes med hg.
/etc/mercurial/hgrc og
~/.hgrc
De aller fleste utvidelser er deaktivert som standard. Kjør hg help extensions hvis du trenger å aktivere noen, f.eks. når man undersøker testfeil. Dette vil sende ut en liste over aktiverte og deaktiverte utvidelser, samt mer informasjon som hvordan aktivere eller deaktivere utvidelser ved hjelp av konfigurasjonsfiler.
Hvis du har installert make-ca-1.14 og ønsker
Mercurial å bruke
sertifikatene, som root
bruker, kjør:
install -v -d -m755 /etc/mercurial &&
cat > /etc/mercurial/hgrc << "EOF"
[web]
cacerts = /etc/pki/tls/certs/ca-bundle.crt
EOF
NASM (Netwide Assembler) er en 80x86 assembler designet for portabilitet og modularitet. Det inkluderer en disassembler også.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.nasm.us/pub/nasm/releasebuilds/2.16.03/nasm-2.16.03.tar.xz
Nedlasting MD5 sum: 2b8c72c52eee4f20085065e68ac83b55
Nedlastingsstørrelse: 1008.1 KB
Estimert diskplass som kreves: 41 MB
Estimert byggetid: 0.2 SBU
Valgfri dokumentasjon: https://www.nasm.us/pub/nasm/releasebuilds/2.16.03/nasm-2.16.03-xdoc.tar.xz
Hvis du lastet ned den valgfrie dokumentasjonen, legg den inn i kildetreet:
tar -xf ../nasm-2.16.03-xdoc.tar.xz --strip-components=1
Installer NASM ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du lastet ned den valgfrie dokumentasjonen, installer
den med følge instruksjoner som root bruker:
install -m755 -d /usr/share/doc/nasm-2.16.03/html &&
cp -v doc/html/*.html /usr/share/doc/nasm-2.16.03/html &&
cp -v doc/*.{txt,ps,pdf} /usr/share/doc/nasm-2.16.03
patchelf pakken inneholder et lite verktøy for å endre den dynamiske linkeren og RPATH til ELF kjørbare filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/NixOS/patchelf/releases/download/0.18.0/patchelf-0.18.0.tar.gz
Nedlasting MD5 sum: b02099b0d63f06b3fe370f4edfc0c085
Nedlastingsstørrelse: 448 KB
Estimert diskplass som kreves: 20 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Installer patchelf ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--docdir=/usr/share/doc/patchelf-0.18.0 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Perl modulpakker (også referert til som Distribusjoner, fordi hver kan inneholde flere moduler) legger til nyttige objekter til Perl språket. Pakkene oppført på denne siden er påkrevd eller anbefalt for andre pakker i boken. Hvis de har avhengige moduler, er de enten på denne siden ellers på neste side (Perl Modulavhengigheter).
I mange tilfeller er bare de påkrevde eller anbefalte
avhengighetene oppført - det kan være andre moduler som lar
flere tester kjøres, men å utelate dem vil fortsatt gjøre at
testene PASS.
For noen få moduler har BLFS redaktørene bestemt at andre moduler fortsatt oppført som forutsetninger ikke er påkrevd, og utelatt dem.
Der en alfabetisk-tidligere avhengighet av samme modul trekker inn en avhengighet, er det ikke nevnt for de senere avhengighetene til den samme modulen. Du bør bygge de oppførte avhengighetene i rekkefølge.
Det er generelt verdt å kjøre testene for perl moduler, de kan ofte vise problemer som manglende avhengigheter som kreves for å bruke modulen. Her har redaksjonen forsøkt å skille disse avhengigheter som bare kreves for å kjøre testpakker, men de vil ikke bli nevnt for en modul der en av dens avhengigheter bruker den modulen for sin egen testpakke. Det vil si hvis du har tenkt å kjøre testpakkene, vennligst kjør dem for hver avhengighet av modulen.
Det er mulig å automatisk installere gjeldende versjoner av en modul og alle manglende eller for gamle avhengigheter anbefalt av oppstrøms ved bruk av CPAN. Se CPAN automatisert installasjon av perl moduler på slutten av denne siden.
De fleste av disse modulene installerer bare filene under
/usr/lib/perl5/site_perl/5.xx.y
og de vil ikke dokumenteres. Ett eller to
installeringsprogrammer (for det meste perl skript), eller et
bibliotek, i /usr/bin/ eller
/usr/lib/ og disse er dokumentert.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/perl-modules
Archive::Zip modulen lar et Perl program lage, manipulere, lese og skrive Zip arkivfiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/P/PH/PHRED/Archive-Zip-1.68.tar.gz
Nedlasting MD5 sum: a33993309322164867c99e04a4000ee3
UnZip-6.0 (med sin oppdatering)
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
Denne modulen lar deg deaktivere autovivification (den automatiske opprettelsen og populasjon av nye arrays og hashes når udefinerte variabler er dereferert), og eventuelt gi en advarsel eller en feil når det ville har oppstått.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/V/VP/VPIT/autovivification-0.18.tar.gz
Nedlasting MD5 sum: 8dec994e1e7d368e055f21a5777385a0
The Business::ISBN modulen gir funksjoner for å arbeide med Internasjonale standard boknumre.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/B/BR/BRIANDFOY/Business-ISBN-3.009.tar.gz
Nedlasting MD5 sum: e906867846f4d1fa57366aa519da5846
Business::ISMN modulen gir funksjoner for å arbeide med Internasjonale standard musikknumre.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/B/BR/BRIANDFOY/Business-ISMN-1.204.tar.gz
Nedlasting MD5 sum: dbc9023703262ee29d1b9e9a8294106c
Business::ISSN modulen gir funksjoner for å arbeide med Internasjonale standard serienumre.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/B/BD/BDFOY/Business-ISSN-1.005.tar.gz
Nedlasting MD5 sum: f46bf5585d6c3aa9fb32127edb13151a
Class::Accessor genererer accessorer/mutatorer for klassen din.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/K/KA/KASEI/Class-Accessor-0.51.tar.gz
Nedlasting MD5 sum: 1f1e5990f87cad7659b292fed7dc0407
Data::Compare modulen sammenligner to perl datastrukturer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/D/DC/DCANTRELL/Data-Compare-1.29.tar.gz
Nedlasting MD5 sum: ce9cb42ba6af634f5ab51f13f37e2ddb
Data::Dump gir pen utskrift av datastrukturer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/G/GA/GARU/Data-Dump-1.25.tar.gz
Nedlasting MD5 sum: 9bd7131ef0441e1e0e001bf85e9fae31
Data::Uniqid gir tre enkle rutiner for å generere unike IDer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/M/MW/MWX/Data-Uniqid-0.12.tar.gz
Nedlasting MD5 sum: 6bab3b5da09fedfdf60ce2629a7367db
DateTime::Calendar::Julian implementerer den julianske kalenderen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/W/WY/WYANT/DateTime-Calendar-Julian-0.107.tar.gz
Nedlasting MD5 sum: abd775d1d82f0f45d4fd6214cf7bbed8
DateTime::Format::Builder oppretter DateTime parser klasser og objekter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/D/DR/DROLSKY/DateTime-Format-Builder-0.83.tar.gz
Nedlasting MD5 sum: aa41917ca9ad69b3898728ce9c2fb477
Encode::EUCJPASCII gir en eucJP-open (utvidet Unix-kode, japansk) kartlegging.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/N/NE/NEZUMI/Encode-EUCJPASCII-0.03.tar.gz
Nedlasting MD5 sum: 5daa65f55b7c2050bb0713d9e95f239d
Encode::HanExtra modulen gir ekstra sett med kinesiske kodinger som ikke er inkludert i kjernekodemodulen på grunn av størrelseproblemer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/A/AU/AUDREYT/Encode-HanExtra-0.23.tar.gz
Nedlasting MD5 sum: e1d3bc32c1c8ee304235a06fbcd5d5a4
Denne modulen bruker de "usikre" bygge og installasjons
instruksjonene (I perl-5.26.0 bruken av nåværende mappe
i @INC ble fjernet for
sikkerhets årsaker og denne modulen har ikke blitt
oppdatert) :
PERL_USE_UNSAFE_INC=1 perl Makefile.PL && make && make test
Nå, som root bruker:
make install
Encode::JIS2K modulen gir JIS X 0212 (aka JIS 2000) kodinger.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/D/DA/DANKOGAI/Encode-JIS2K-0.05.tar.gz
Nedlasting MD5 sum: 06acd9e878d41ffc354258e265db2875
File::FcntlLock er en modul for å gjøre fillåsing i en
objektorientert måte ved hjelp av fcntl(2)
systemanrop. Dette tillater låser på deler av en fil så vel
som på hele filen og overvinner noen kjente problemer med
flock(2),
hvorpå Perl sin flock()
funksjon er basert på som standard.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/J/JT/JTT/File-FcntlLock-0.22.tar.gz
Nedlasting MD5 sum: 579698d735d864ee403674f1175f789d
File::Slurper er en enkel, fornuftig og effektiv modul for å slurpe en fil.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/L/LE/LEONT/File-Slurper-0.014.tar.gz
Nedlasting MD5 sum: d43bc5f069035eff3b6b7c418b4cedc4
File::Which gir en flyttbar implementering av 'which' verktøyet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/P/PL/PLICEASE/File-Which-1.27.tar.gz
Nedlasting MD5 sum: d5c9154262b93398f0750ec364207639
HTML::Parser distribusjon er en samling av moduler som analyserer og henter ut informasjon fra HTML dokumenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/HTML-Parser-3.83.tar.gz
Nedlasting MD5 sum: 17a4c886024bfad1cffcbe6b46cda128
HTML-Tagset-3.24 og HTTP-Message-6.46 (strengt tatt ikke nødvendig for bygging, men dens modul HTTP::Header er nødvendig for tester og et kjøretidskrav for HTML::HeadParser fra denne distribusjonen).
Forekomster av HTTP::Daemon klasse er HTTP/1.1-servere som lytter på en socket for innkommende forespørsler. HTTP::Daemon er en underklasse av IO::Socket::INET, slik at du kan utføre socket operasjoner direkte på den også.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/HTTP-Daemon-6.16.tar.gz
Nedlasting MD5 sum: 51425462790165aeafc2819a7359706f
Makefile.PL og kjøre testene vil klage på at
Module::Build::Tiny mangler, men det trengs bare for
Build.PL som brukes hvis
systemet mangler en C kompilator.
IO::Socket::SSL gjør bruk av SSL/TLS mye enklere ved å pakke inn den nødvendige funksjonalitet inn i det velkjente IO::Socket grensesnittet og gir sikre standarder når det er mulig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/S/SU/SULLR/IO-Socket-SSL-2.088.tar.gz
Nedlasting MD5 sum: 3e95ca11fdfd5db9cfc0d318ecb6836f
make-ca-1.14 og Net-SSLeay-1.94
URI-5.28 (for å få tilgang til internasjonale domenenavn)
Denne modulen bruker en variant av standard bygging og installasjonbruksanvisning:
yes | perl Makefile.PL && make && make test
En test, Client non-SSL
connection, er kjent for å feile.
Nå, som root bruker:
make install
IO::String - Emuler filgrensesnitt for strenger i kjernen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/G/GA/GAAS/IO-String-1.08.tar.gz
Nedlasting MD5 sum: 250e5424f290299fc3d6b5d1e9da3835
IPC::Run3 brukes til å kjøre en underprosess med inndata/utdata omdirigering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/R/RJ/RJBS/IPC-Run3-0.049.tar.gz
Nedlasting MD5 sum: 569393ca56dfb78dedd79e93c0439159
Lingua::Translit og dens translit program translittererer tekst mellom skrivesystemer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/A/AL/ALINKE/Lingua-Translit-0.29.tar.gz
Nedlasting MD5 sum: 605a82f06b05fef4fc18bf069b1be511
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
libwww-perl samlingen er et sett med Perl moduler som gir et enkelt og konsistent applikasjonsprogrammeringsgrensesnitt (API) til Verdensveven. Hovedfokuset til biblioteket er å gi klasser og funksjoner som lar deg skrive WWW klienter. Biblioteket inneholder også moduler som er av mer generell bruk og til og med klasser som hjelper deg å implementere enkle HTTP servere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/libwww-perl-6.77.tar.gz
Nedlasting MD5 sum: e70e2f41a97b8d97608569d10b75b931
File-Listing-6.16, HTTP-CookieJar-0.014, HTTP-Cookies-6.11, HTTP-Daemon-6.16, HTTP-Negotiate-6.01, HTML-Parser-3.83, Net-HTTP-6.23, Try-Tiny-0.31 og WWW-RobotRules-6.02
Test-Fatal-0.017, Test-Needs-0.002010 og Test-RequiresInternet-0.05
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
Etter å ha installert denne pakken, hvis du vil ha støtte for HTTPS protokollen installer LWP-Protocol-https-6.14.
List::Allutils modulen kombinerer List::Util og List::MoreUtils i en liten pakke.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/D/DR/DROLSKY/List-AllUtils-0.19.tar.gz
Nedlasting MD5 sum: 86469b1f6819ba181a8471eb932965f2
List::MoreUtils gir ting som mangler i List::Util.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-0.430.tar.gz
Nedlasting MD5 sum: daccd6310021231b827dcc943ff1c6b7
Log::Log4perl gir en Log4j implementering for perl.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/E/ET/ETJ/Log-Log4perl-1.57.tar.gz
Nedlasting MD5 sum: acbe29cbaf03f4478a13579a275b0011
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
LWP::Protocol::https gir https støtte for LWP::UserAgent (dvs. libwww-perl-6.77). Når modulen er installert er LWP i stand til å få tilgang til nettsteder ved hjelp av HTTP over SSL/TLS.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/LWP-Protocol-https-6.14.tar.gz
Nedlasting MD5 sum: 65401e3e34be653c9e3b31f798ed5454
IO-Socket-SSL-2.088, libwww-perl-6.77, og make-ca-1.14 med /etc/pki/tls/certs/ca-bundle.crt.
Module::Build lar perl moduler bygges uten at make kommandoen er tilstede.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/L/LE/LEONT/Module-Build-0.4234.tar.gz
Nedlasting MD5 sum: 0032d0c0bc36a3b68ef41c947829d5e3
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
Merk at denne modulen også kan bygges ved bruk av
Build.PL
Net::DNS er en DNS løser implementert i Perl. Den kan brukes til å utføre nesten alle typer DNS spørringer fra et Perl skript.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/N/NL/NLNETLABS/Net-DNS-1.46.tar.gz
Nedlasting MD5 sum: 640f572abed308ca5399d3429cbce6bd
Parse::RecDescent genererer trinnvis ovenfra og ned rekursiv nedstigningstekst parsere fra enkle yacc-lignende grammatikkspesifikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/J/JT/JTBRAUN/Parse-RecDescent-1.967015.tar.gz
Nedlasting MD5 sum: 7a36d45d62a9b68603edcdbd276006cc
Parse::Yapp er en Perl utvidelse for å generere og bruke LALR parsere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/W/WB/WBRASWELL/Parse-Yapp-1.21.tar.gz
Nedlasting MD5 sum: 69584d5b0f0304bb2a23cffcd982c5de
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
PerlIO::utf8_strict gir et raskt og korrekt UTF-8 PerlIO lag. I motsetning til Perls standard :utf8 lag, sjekker den inndataen for korrekthet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/L/LE/LEONT/PerlIO-utf8_strict-0.010.tar.gz
Nedlasting MD5 sum: d90ca967f66e05ad9221c79060868346
Regexp::Common gir vanlige etterspurte uttrykk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/A/AB/ABIGAIL/Regexp-Common-2024080801.tar.gz
Nedlasting MD5 sum: 73d4b4b2a0690f9ab573d54a69c22aee
SGMLSpm modulen er et Perl bibliotek som brukes til å analysere utdataene fra James Clarks SGMLS og NSGMLS parsere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/R/RA/RAAB/SGMLSpm-1.1.tar.gz
Nedlasting MD5 sum: 746c74ae969992cedb1a2879b4168090
Før du begynner byggingen, utsted følgende kommando for å forhindre en feil:
chmod -v 644 MYMETA.yml
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
Etter at pakken er installert, kjør følgende kommando som
root bruker:
ln -sv sgmlspl.pl /usr/bin/sgmlspl
|
er en SGML prosessor |
|
|
er en symbolsk lenke som brukes under installasjonen av DocBook-utils-0.6.14 |
Sort::Key gir et sett med funksjoner for å sortere lister med verdier etter noen beregnet nøkkelverdi.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/S/SA/SALVA/Sort-Key-1.33.tar.gz
Nedlasting MD5 sum: a37ab0da0cfdc26e57b4c79e39f6d98f
Test::Command tester utgangsstatusen, STDOUT, eller STDERR, av en ekstern kommando.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/D/DA/DANBOO/Test-Command-0.11.tar.gz
Nedlasting MD5 sum: 9ab83c4695961dbe92cd86efe08f0634
Test::Differences tester strenger og datastrukturer og viser forskjeller hvis de ikke stemmer overens.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/D/DC/DCANTRELL/Test-Differences-0.71.tar.gz
Nedlasting MD5 sum: 23a54d5ada6ffe0850f42cd768b4b3c1
Text::BibTeX gir et grensesnitt for å lese og analysere BibTeX filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/A/AM/AMBS/Text-BibTeX-0.89.tar.gz
Nedlasting MD5 sum: 67fa6d9c03c659627d9fd58bb380c1fe
Denne modulen er bygd ved bruk av Build.PL:
perl Build.PL && ./Build && ./Build test
Nå, som root bruker:
./Build install
|
utfører leksikalsk analyse på en BibTeX fil |
|
|
analyserer en serie BibTeX filer med kommandolinjealternativer for å kontrollere oppførselen til strengens etterbehandling |
|
|
analyserer en BibTeX fil, deler "forfatter" og "editor" felt inn i navnelister, og dumper deretter alt til stdout |
|
|
er et bibliotek for å analysere og behandle BibTeX datafiler |
Text::CSV er en kommaseparert verdimanipulator som bruker XS (ekstern subrutine (eXternal Subroutine) - for subrutiner skrevet i C eller C++) eller ren perl.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/I/IS/ISHIGAKI/Text-CSV-2.04.tar.gz
Nedlasting MD5 sum: 500b1cd1349e2186877c39aa404230dc
Text-CSV_XS-1.56 (påkrevd av biber-2.20)
Text::Roman tillater konvertering mellom romerske og arabiske algoritmer (tall systemer, f.eks. MCMXLV og 1945).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/S/SY/SYP/Text-Roman-3.5.tar.gz
Nedlasting MD5 sum: 1f6b09c0cc1f4425b565ff787a39fd83
Unicode::Collate gir en Unicode kollasjonsalgoritme.
Dette er en kjernemodul. Hvis du bruker perl-5.28.0 eller senere, er versjonen god nok til biber-2.20 og du trenger ikke å installere denne modulen på nytt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/S/SA/SADAHIRO/Unicode-Collate-1.31.tar.gz
Nedlasting MD5 sum: ee4d960d057c5e5b02ebb49d0286db8f
Unicode::LineBreak gir en UAX #14 Unicode linjebrytende algoritme.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/N/NE/NEZUMI/Unicode-LineBreak-2019.001.tar.gz
Nedlasting MD5 sum: 003d6da7a13700e069afed9238c864b9
MIME-Charset-1.013.1 og Wget-1.24.5 (for å laste ned to filer fra unicode.org i testpakken)
libthai (for å dele thailandske ord i segmenter)
Denne modulen implementerer URI klassen. Objekter av denne klassen representerer "Uniform Resource Identifier-referanser" som spesifisert i RFC 2396 (og oppdatert av RFC 2732). En Uniform Resource Identifier er en kompakt streng av karakterer som identifiserer en abstrakt eller fysisk ressurs. En Uniform Resource Identifier kan videre klassifiseres som enten en Uniform Resource Locator (URL) eller et Uniform Resource Name (URN). Skillet mellom URL og URN spiller ingen rolle for URI klassens grensesnitt. En "URI referanse" er en URI som kan ha tilleggsinformasjon vedlagt i form av en fragmentidentifikator.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/URI-5.28.tar.gz
Nedlasting MD5 sum: 82aaecd8861f31444338231801ba01ca
Test-Fatal-0.017, Test-Needs-0.002010, og Test-Warnings-0.033
XML::LibXML::Simple modulen er en omskriving av XML::Simple for å bruke XML::LibXML parser for XML strukturer, i stedet for vanlig Perl eller SAX parsere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/M/MA/MARKOV/XML-LibXML-Simple-1.01.tar.gz
Nedlasting MD5 sum: faad5ed26cd83998f6514be199c56c38
XML-LibXSLT gir et grensesnitt til libxslt-1.1.42
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/S/SH/SHLOMIF/XML-LibXSLT-2.003000.tar.gz
Nedlasting MD5 sum: 632dce587b3c405edd4e622364750191
XML::Simple gir en enkel API for å lese og skrive XML (spesielt config filer). Den er avviklet og bruken frarådes.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/G/GR/GRANTM/XML-Simple-2.25.tar.gz
Nedlasting MD5 sum: bb841dce889a26c89a1c2739970e9fbc
XML-SAX-1.02 (for en alternativ parser som vil bli brukt hvis tilgjengelig, ellers vil XML::Parser (som ble installert i LFS) bli brukt)
XML::Writer gir en Perl utvidelse for å skrive XML dokumenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/J/JO/JOSEPHW/XML-Writer-0.900.tar.gz
Nedlasting MD5 sum: 2457214360cefda445742a608dd6195e
Det er en alternativ måte å installere modulene ved å bruke cpan skallets install kommando. Kommandoen laster automatisk ned den nyeste kilden fra CPAN arkivet for modulen og eventuelle manglende avhengighetsmoduler oppført av oppstrøm. Deretter pakker den ut hver modul, kjører kompileringen, testene og installerer den.
Du må fortsatt installere eventuelle ikke-perl
avhengigheter før du kjører den automatiserte
installasjonsmetoden. Det kan være lurt å rydde
build/ mappen etter
installering, for å frigjøre plass. Hvis noen
etterinstallasjonshandlinger f.eks som å lage en
symbolkobling er nevnt, bør du også gjøre det.
Første gang du kjører cpan, du vil bli spurt om
å legge inn informasjon om nedlastingsplasseringer og
metoder. Denne informasjonen lagres i filer som ligger i
~/.cpan.
Spesielt kan det være lurt å konfigurere det slik at Sudo-1.9.15p5 brukes til installasjonene, slik at du kan bygge og teste som en vanlig bruker. Følgende eksempler har ikke brukt denne tilnærmingen.
Start cpan
skallet ved å kjøre 'cpan' som root bruker. Enhver modul kan nå bli
installert fra cpan> ledeteksten med
kommandoen:
install <Module::Name>
For ytterligere kommandoer og hjelp, kjør 'help' fra cpan> ledeteksten.
Alternativt, for skriptede eller ikke-interaktive
installasjoner, bruk følgende syntaks som root bruker for å installere en eller
flere moduler:
cpan -i <Module1::Name> <Module2::Name>
Se gjennom cpan.1 manside for
ytterligere parametere du kan sende til cpan på kommandolinjen.
Modulene på forrige side er referert fra andre sider i BLFS, men disse modulene er bare i boken som avhengigheter av disse modulene. Hvis du bruker CPAN installasjonsmetoden, trenger du ikke lese denne siden.
BLFS redaktørene legger mye mindre vekt på disse modulene, og
versjoner vil ikke bli gjennomgått regelmessig. I alle
tilfeller er det bare nødvendige eller anbefalte
avhengigheter som er oppført - det kan være andre moduler som
tillater at flere tester kjøres, men å utelate dem vil
fortsatt tillate testene PASS.
Linkene på denne siden (til metacpan.org) skal gå til "kjente gode" versjoner som deres avhengigheter er riktige for. Hvis du ønsker å bruke en senere versjon, vennligst sjekk endringsfilen på https://metacpan.org - noen ganger er det oppført avhengigheter som er lagt til, andre ganger ikke. Noen av disse modulene har svært hyppige oppdateringer, ofte med forskjellige avhengigheter. De linkede metacpan.org versjonene nedenfor var kjent for å fungere med modulversjonene i BLFS sist gjennomgått.
Men hvis du legger merke til at endringsfilen for en nyere versjon enn den som er i gjeldende utviklingsbok rapporterer en løsning for et sikkerhetsproblem rapporter dette til enten blfs-dev eller blfs-support listen.
Tilsvarende, hvis du oppdager at en oppdatert modul på forrige side trenger en ekstra avhengighet, vennligst rapporter dette.
Algorithm::Diff beregner "intelligent" forskjeller mellom to filer eller lister.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RJ/RJBS//Algorithm-Diff-1.201.tar.gz
Nedlasting MD5 sum: 2eaae910f5220261ee2bbdfc4a8df2c2
Alien::Build gir verktøy for å bygge eksterne (ikke-CPAN) avhengigheter for CPAN.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Alien-Build-2.83.tar.gz
Nedlasting MD5 sum: fbec7ad3281181db0cd3e2219710815e
Capture-Tiny-0.48, File-Which-1.27, FFI-CheckLib-0.31 og File-chdir-0.1011
Alien::Build::Plugin::Download::GitLab lar Alien::Build laste ned fra GitLab (i praksis lastes ikke dette ned hvis det nødvendige biblioteket allerede er installert på systemet).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Alien-Build-Plugin-Download-GitLab-0.01.tar.gz
Nedlasting MD5 sum: ad1d815262ad7dd98b0a9b35ba2f05ef
Alien::Libxml2 er designet for å tillate moduler å installere C libxml2 biblioteket på systemet ditt. I BLFS brukes pkg-config for å finne hvordan du kobler til den installerte libxml2-2.13.3.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Alien-Libxml2-0.19.tar.gz
Nedlasting MD5 sum: 54ef82ddf7641279a72f216e405f9a5e
Alien-Build-Plugin-Download-GitLab-0.01, libxml2-2.13.3, og Path-Tiny-0.146
B::COW gir ekstra hjelpere for B kjernemodulen å sjekke Copy On Write.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC/B-COW-0.007.tar.gz
Nedlasting MD5 sum: 7afc46f19e6f906e2ba5769b21fca5ff
B::Hooks::EndOfScope lar deg kjøre kode når Perl er ferdig med kompilering av det omkringliggende omfanget.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/B-Hooks-EndOfScope-0.28.tar.gz
Nedlasting MD5 sum: d738ba65539d4acd601d47cc3e2cbb3a
Module-Implementation-0.09, Sub-Exporter-Progressive-0.001013 og Variable-Magic-0.64
Business-ISBN-Data er en datapakke for Business::ISBN.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/B/BR/BRIANDFOY/Business-ISBN-Data-20240807.001.tar.gz
Nedlasting MD5 sum: 814d1ecccb79435ff67ac44556da18d5
Capture::Tiny modulen fanger opp STDOUT og STDERR fra Perl, XS (ekstern subrutine, dvs. skrevet i C eller C++) eller eksterne programmer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Capture-Tiny-0.48.tar.gz
Nedlasting MD5 sum: f5d24083ad270f8326dd659dd83eeb54
Class::Data::Inheritable er for å lage accessor/mutatorer til klassedata. Det vil si hvis du vil lagre noe om klassen din som helhet (i stedet for om et enkelt objekt).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RS/RSHERER/Class-Data-Inheritable-0.09.tar.gz
Nedlasting MD5 sum: bd25ecd6e5d528fbc3783edf1b8facef
Class::Inspector lar deg få informasjon om en lastet klasse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Class-Inspector-1.36.tar.gz
Nedlasting MD5 sum: 084c3aeec023639d21ecbaf7d4460b21
En Singleton beskriver en objektklasse som bare kan ha en instans i hvilket som helst system, for eksempel en utskriftskø. Denne modulen implementerer en Singleton klasse som andre klasser kan utledes fra.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/S/SH/SHAY/Class-Singleton-1.6.tar.gz
Nedlasting MD5 sum: d9c84a7b8d1c490c38e88ed1f9faae47
Class:Tiny tilbyr et minimalistisk klassebyggesett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Class-Tiny-1.008.tar.gz
Nedlasting MD5 sum: e3ccfae5f64d443e7e1110be964d7202
Clone kopierer perl datatyper rekursivt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/G/GA/GARU/Clone-0.46.tar.gz
Nedlasting MD5 sum: cafa8984a2c2e005e54b27dd1e3f0afe
Config::AutoConf modulen implementerer noen av AutoConf makroene (oppdage en kommando, oppdage et bibliotek, etc.) i ren perl.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/A/AM/AMBS/Config-AutoConf-0.320.tar.gz
Nedlasting MD5 sum: 71664b2864232e265179ac29298e0916
CPAN::Meta::Check verifiserer om kravene beskrevet i et CPAN::Meta objekt er tilstede.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/L/LE/LEONT/CPAN-Meta-Check-0.018.tar.gz
Nedlasting MD5 sum: d1c2190e8bc1c176b9ee9cba3ac403ad
DateTime er et dato- og klokkeslettobjekt for perl.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-1.65.tar.gz
Nedlasting MD5 sum: 6f60018500f8f20c5fd3d34495eae1eb
DateTime-Locale-1.43 og DateTime-TimeZone-2.62
CPAN-Meta-Check-0.018, Test-Fatal-0.017, Test-Warnings-0.033 og Test-Without-Module-0.23
DateTime::Format::Strptime implementerer det meste av strptime(3), dvs. det tar en streng og et mønster og returnerer et DateTime objekt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-Format-Strptime-1.79.tar.gz
Nedlasting MD5 sum: 441cfec62b0b8a1b4c05cbe5ef73fbf4
DateTime::Locale gir lokaliseringsstøtte for DateTime-1.65.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-Locale-1.43.tar.gz
Nedlasting MD5 sum: 24b801b592354fe58e67040fdb1cc00c
Dist-CheckConflicts-0.11, File-ShareDir-1.118, namespace-autoclean-0.29 og Params-ValidationCompiler-0.31
CPAN-Meta-Check-0.018, IPC-System-Simple-1.30 og Test-File-ShareDir-1.001002
Denne klassen er basisklassen for alle tidssoneobjekter. En tidssone er representert internt som et sett av observanser, som hver beskriver forskyvningen fra GMT for en gitt tidsperiode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-TimeZone-2.62.tar.gz
Nedlasting MD5 sum: e11bb3a07c4f3d156f7dc356816f3962
Class-Singleton-1.6, Module-Runtime-0.016, og Params-ValidationCompiler-0.31
Begge Test-Fatal-0.017 og Test-Requires-0.11, men bare hvis en kopi av DateTime-1.65 (som dette er en avhengighet for) allerede er installert
Devel::StackTrace gir et objekt som representerer et stabelspor.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Devel-StackTrace-2.05.tar.gz
Nedlasting MD5 sum: b8ca19bb4c76e98a04373618db9c7c3c
Dist::CheckConflicts erklærer versjonskonflikter for en distribusjon, for å støtte postinstallasjonsoppdateringer av avhengige distribusjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DO/DOY/Dist-CheckConflicts-0.11.tar.gz
Nedlasting MD5 sum: c8725a92b9169708b0f63036812070f2
Encode::Locale bestemmer lokalkodingen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/G/GA/GAAS/Encode-Locale-1.05.tar.gz
Nedlasting MD5 sum: fcfdb8e4ee34bcf62aed429b4a23db27
Eval::Closure skaper trygt og rent lukkinger via strengevaluering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DO/DOY/Eval-Closure-0.14.tar.gz
Nedlasting MD5 sum: ceeb1fc579ac9af981fa6b600538c285
Exception::Class lar deg deklarere ekte unntaksklasser i Perl.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Exception-Class-1.45.tar.gz
Nedlasting MD5 sum: 1e564d20b374a99fdf660ba3f36b0098
Exporter::Tiny er en eksportør med funksjonene til Sub::Exporter men bare kjerneavhengigheter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/T/TO/TOBYINK/Exporter-Tiny-1.006002.tar.gz
Nedlasting MD5 sum: 0545ee8f4edcb9dc5a87b21ed25edd74
ExtUtils::LibBuilder er et verktøy for å bygge C biblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/A/AM/AMBS/ExtUtils-LibBuilder-0.08.tar.gz
Nedlasting MD5 sum: 8ffe9e9a3c2f916f40dc4f6aed237d33
FFI::CheckLib sjekker om et bestemt dynamisk bibliotek er tilgjengelig for FFI (Foreign Function Interface) å bruke.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/FFI-CheckLib-0.31.tar.gz
Nedlasting MD5 sum: ffc8e61bb686dd631bed3ddf102af41c
Capture-Tiny-0.48, File-Which-1.27, Path-Tiny-0.146, og Test-Simple-1.302200
File::chdir gir en mer fornuftig måte å endre mapper på.
Perls chdir() har det uheldige problemet med å være veldig, veldig, veldig global. Hvis noen del av programmet kaller chdir() eller et bibliotek du bruker kaller chdir(), endrer den gjeldende arbeidsmappen for *hele* programmet. File::chdir gir deg et alternativ, $CWD og @CWD.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/File-chdir-0.1011.tar.gz
Nedlasting MD5 sum: 932090f6c5f602301ae66c259de23ebb
Denne modulen kopierer og flytter mapper rekursivt (eller enkeltfiler), til en valgfri dybde og forsøker å bevare hver fil eller mappe sin modus.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DM/DMUEY/File-Copy-Recursive-0.45.tar.gz
Nedlasting MD5 sum: e5eee1a3f8ae3aebbac063ea54870e54
Path-Tiny-0.146, Test-Deep-1.204, Test-Fatal-0.017, Test-File-1.993, og Test-Warnings-0.033
File::Find::Rule er et vennligere grensesnitt til File::Find. Det lar deg bygge regler som spesifiserer ønskede filer og mapper.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/File-Find-Rule-0.34.tar.gz
Nedlasting MD5 sum: a7aa9ad4d8ee87b2a77b8e3722768712
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
File::Listing analyserer en mappeoppføring.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/File-Listing-6.16.tar.gz
Nedlasting MD5 sum: d4fc8b0c86633d1fa5bf75323720eadc
File::ShareDir lar deg få tilgang til datafiler som har blitt installert av File::ShareDir::Install.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RE/REHSACK/File-ShareDir-1.118.tar.gz
Nedlasting MD5 sum: 0084f730f4e3d4d89703d92b3ea82f54
File::ShareDir::Install lar deg installere skrivebeskyttede datafiler fra en distribusjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/File-ShareDir-Install-0.14.tar.gz
Nedlasting MD5 sum: bac4d924f3d863b00648ab56ec0dcbdc
HTML::Tagset gir flere datatabeller som er nyttige for å analysere HTML.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PE/PETDANCE/HTML-Tagset-3.24.tar.gz
Nedlasting MD5 sum: f8db8974f5e7fe7df2a58263a7b00552
HTTP::CookieJar gir en minimalistisk HTTP brukeragent informasjonskapsel jar.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/HTTP-CookieJar-0.014.tar.gz
Nedlasting MD5 sum: a1d891ce0046f1a2c19e2c617d624d0d
HTTP::Cookies gir en klasse for objekter som representerer en "cookie jar" -- det vil si en database med alle HTTP informasjonskapslene som en gitt LWP::UserAgent (fra libwww-perl-6.77) objekt vet om.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/O/OA/OALDERS/HTTP-Cookies-6.11.tar.gz
Nedlasting MD5 sum: 80017e7e56bdc8ba16dea75789748829
HTTP::Date gir funksjoner for å håndtere datoformatene som brukes av HTTP protokollen og også med noen andre datoformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/O/OA/OALDERS/HTTP-Date-6.06.tar.gz
Nedlasting MD5 sum: 60462359bfeb1e6d14602508cfd07885
TimeDate-2.33 (for å la den gjenkjenne andre soner enn GMT og numerisk)
HTTP::Message gir en basisklasse for meldingsobjekter i HTTP stil.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/O/OA/OALDERS/HTTP-Message-6.46.tar.gz
Nedlasting MD5 sum: 12a4bf7d993ba7b231df9a24f8bf3ec5
Clone-0.46, Encode-Locale-1.05, HTTP-Date-6.06, IO-HTML-1.004, LWP-MediaTypes-6.04, og URI-5.28
HTTP::Negotiate gir en komplett implementering av HTTP innholdets forhandlingsalgoritme.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/G/GA/GAAS/HTTP-Negotiate-6.01.tar.gz
Nedlasting MD5 sum: 1236195250e264d7436e7bb02031671b
IO::HTML åpner en HTML fil med automatisk tegnsettgjenkjenning.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/C/CJ/CJM/IO-HTML-1.004.tar.gz
Nedlasting MD5 sum: 04bbe363686fd19bfb4cc0ed775e3d03
IPC::System::Simple tar det harde arbeidet med å kalle eksterne kommandoer og produserer detaljert diagnostikk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/J/JK/JKEENAN/IPC-System-Simple-1.30.tar.gz
Nedlasting MD5 sum: e68341fd958fd013b3521d909904f675
List::MoreUtils::XS er en kompilert bakstykke for List::MoreUtils
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RE/REHSACK/List-MoreUtils-XS-0.430.tar.gz
Nedlasting MD5 sum: e77113e55b046906aecfb4ddb4f0c662
List::SomeUtils gir ting som mangler i List::Util.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-0.59.tar.gz
Nedlasting MD5 sum: 333b4adb2907deff2be8da5899881453
List::SomeUtils::XS er en (raskere) XS (ekstern subrutine (eXternal Subroutine)) implementering for List::SomeUtils.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-0.58.tar.gz
Nedlasting MD5 sum: 396eabe83a75fcb8d7542d95812469d1
List::UtilsBy gir en rekke listeverktøy av høyere orden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PE/PEVANS/List-UtilsBy-0.12.tar.gz
Nedlasting MD5 sum: 54a8c7092bc02f29ea6c5ae215eea385
LWP::MediaTypes gjetter medietypen (dvs. MIME-typen) for en fil eller URL.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/O/OA/OALDERS/LWP-MediaTypes-6.04.tar.gz
Nedlasting MD5 sum: 84b799a90c0d2ce52897a7cb4c0478d0
MIME::Charset gir informasjon om tegnsett som brukes for MIME meldinger på internett, for eksempel deres koding.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/MIME-Charset-1.013.1.tar.gz
Nedlasting MD5 sum: b1932cfc806c8deb1b4a20d6afbfa8ac
Encode-EUCJPASCII-0.03, Encode-HanExtra-0.23 og Encode-JIS2K-0.05 (fordi alle er påkrevd av biber-2.20)
Denne modulen bruker en variant av standard konstruksjon og installasjon instruksjoner:
yes '' | perl Makefile.PL && make && make test
Nå, som root bruker:
make install
Module::Implementation laster en av flere alternative underliggende implementeringer av en modul (f.eks. ekstern subrutine eller ren Perl, eller en implementering for et gitt OS).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Module-Implementation-0.09.tar.gz
Nedlasting MD5 sum: 52e3fe0ca6b1eff0488d59b7aacc0667
Module-Runtime-0.016 og Try-Tiny-0.31
Module::Runtime gir funksjoner for å håndtere kjøretidshåndtering av Perl moduler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/Z/ZE/ZEFRAM/Module-Runtime-0.016.tar.gz
Nedlasting MD5 sum: d3d47222fa2e3dfcb4526f6cc8437b20
"mro" navneområdet gir flere verktøy for å håndtere metoden oppløsningsrekkefølge og metodebufring generelt i Perl 5.9.5 og høyere. Denne modulen gir disse grensesnittene for tidligere versjoner av Perl.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/H/HA/HAARG/MRO-Compat-0.15.tar.gz
Nedlasting MD5 sum: f644dafe901214cedfa7ed8b43b56df1
Denne modulen er veldig lik namespace::clean, bortsett fra at den vil rense alle importerte funksjoner, uansett om du importerte dem før eller etter at du brukte pragmaen. Den vil heller ikke røre noe som ser ut som en metode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/namespace-autoclean-0.29.tar.gz
Nedlasting MD5 sum: 39b38c776cd1f0ee03cc70781a2f2798
namespace-clean-0.27 og Sub-Identify-0.14
Denne pakken lar deg holde importer og funksjoner unna navneområdet ditt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RI/RIBASUSHI/namespace-clean-0.27.tar.gz
Nedlasting MD5 sum: cba97f39ef7e594bd8489b4fdcddb662
Net::HTTP klassen er en HTTP klient på lavt nivå. En forekomst av klassen representerer en tilkobling til en HTTP server.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/O/OA/OALDERS/Net-HTTP-6.23.tar.gz
Nedlasting MD5 sum: 1682735ddd1c059864ca5c1bbf15ab95
Net::SSLeay er en Perl utvidelse for bruk av OpenSSL.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/C/CH/CHRISN/Net-SSLeay-1.94.tar.gz
Nedlasting MD5 sum: 1b22c764e5a094c6261e37a4b1f148ce
Hvis du aktiverer de eksterne testene, en test i t/external/15_altnames.t kan mislykkes.
Denne modulen bruker en variant av standard konstruksjon og installasjon instruksjoner:
yes '' | perl Makefile.PL && make && make test
Nå, som root bruker:
make install
Number::Compare kompilerer en enkel sammenligning med en anonym subrutine, som du kan kalle med en verdi som skal testes mot. Den forstår IEC standardstørrelser (k, ki, m, mi, g, gi).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Number-Compare-0.03.tar.gz
Nedlasting MD5 sum: ded4085a8fc96328742785574ca65208
Manipulering av stashes (Perls symboltabeller) er av og til nødvendig, men utrolig rotete, og lett å ta feil. Denne modulen skjuler alt det bak en enkel API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/Package-Stash-0.40.tar.gz
Nedlasting MD5 sum: 7a2922941cc2aad6a52642e4fb13d07b
Dist-CheckConflicts-0.11 og Module-Implementation-0.09
CPAN-Meta-Check-0.018, Test-Fatal-0.017 og Test-Needs-0.002010
Params::Validate lar deg validere metode- eller funksjonskall parametere til et vilkårlig spesifisitetsnivå.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Params-Validate-1.31.tar.gz
Nedlasting MD5 sum: ef5f57387c2c9032b59fb23023cf5b25
Module-Build-0.4234 og Module-Implementation-0.09
Params::ValidationCompiler bygger en optimalisert subrutineparameter validator.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Params-ValidationCompiler-0.31.tar.gz
Nedlasting MD5 sum: 15528055f3f53c8cfebbee1f928dec07
Exception-Class-1.45 og Specio-0.48
Path::Tiny gir et lite raskt verktøy for å jobbe med filbaner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.146.tar.gz
Nedlasting MD5 sum: 656d3556bb7f30c77d0881d564e200b2
Role::Tiny er et minimalistisk rollekomposisjonsverktøy.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/H/HA/HAARG/Role-Tiny-2.002004.tar.gz
Nedlasting MD5 sum: 9ee45591befa3d0b1094ac75d282b6ba
Scope::Guard gir en praktisk måte å utføre opprydding eller andre former av ressursforvaltning på slutten av et virkefelt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE/Scope-Guard-0.21.tar.gz
Nedlasting MD5 sum: be57b915d23ddac7677ef2ad9e52b92a
Specio gir klasser for å representere typebegrensninger og tvang, sammen med syntaks for å deklarere dem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Specio-0.48.tar.gz
Nedlasting MD5 sum: 96cf1ae4e2e205986e03672071116b16
Devel-StackTrace-2.05, Eval-Closure-0.14, Module-Runtime-0.016, Role-Tiny-2.002004, Sub-Quote-2.006008, og Try-Tiny-0.31
MRO-Compat-0.15, Test-Fatal-0.017, og Test-Needs-0.002010
namespace-autoclean-0.29 (for tespakken)
Sub::Exporter::Progressive er en innpakning for Sub::Exporter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/F/FR/FREW/Sub-Exporter-Progressive-0.001013.tar.gz
Nedlasting MD5 sum: 72cf6acdd2a0a8b105821a4db98e4ebe
Sub::Identify lar deg hente det virkelige navnet på kodereferanser. Det oppfordres til å migrere til Sub::Util (en kjernemodul) når det er mulig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RG/RGARCIA/Sub-Identify-0.14.tar.gz
Nedlasting MD5 sum: 014f19e72698b6a2cbcb54adc9691825
Sub::Quote gir måter å generere subrutiner fra strenger.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/H/HA/HAARG/Sub-Quote-2.006008.tar.gz
Nedlasting MD5 sum: f19c60039ba87f69f7f9357fc0a03e07
Sub::Uplevel lar deg lure en som caller sånn at den kjører i en høyere stabelramme.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Sub-Uplevel-0.2800.tar.gz
Nedlasting MD5 sum: 6c6a174861fd160e8d5871a86df00baf
Term::Table formaterer en deklarasjon og rader til en tabell. Dette brukes av noen sviktende tester for å gi diagnostikk om hva som har gått galt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Term-Table-0.022.tar.gz
Nedlasting MD5 sum: 5ec7329895d2c368687b76278afe1d49
Test::Deep gir deg svært fleksible måter å sjekke at resultatet du fikk er resultatet du forventet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Deep-1.204.tar.gz
Nedlasting MD5 sum: fcff296434cd92538ae9de9d1744705f
Test::Exception gir praktiske metoder for å teste unntaks basert kode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test-Exception-0.43.tar.gz
Nedlasting MD5 sum: 572d355026fb0b87fc2b8c64b83cada0
Test::Fatal modulen gir enkle hjelpere for å teste kode som kaster unntak.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Fatal-0.017.tar.gz
Nedlasting MD5 sum: 2f160c31e1848536e3b82112d573bb76
Test::File gir en samling testverktøy for filattributter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Test-File-1.993.tar.gz
Nedlasting MD5 sum: dccb988191187261ce3a2a10af939625
Test::File::ShareDir er noe lavt nivå rørleggerarbeid for å muliggjøre en distribusjon å utføre tester mens de bruker sine egne delte mapper på en måte som ligner på hvordan de vil bli installert. Dette tillater File-ShareDir-1.118 for å se den nyeste versjonen av innholdet i stedet for det som er installert på målsystemet der du tester.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/K/KE/KENTNL/Test-File-ShareDir-1.001002.tar.gz
Nedlasting MD5 sum: ec31466aa44c1cd56c6cb51d7ec3a5de
Class-Tiny-1.008, File-Copy-Recursive-0.45, File-ShareDir-1.118, Path-Tiny-0.146, og Scope-Guard-0.21
Test::LeakTrace sporer minnelekkasjer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/L/LE/LEEJO/Test-LeakTrace-0.17.tar.gz
Nedlasting MD5 sum: afdb2cc6be0807cb635fb601a004d522
Test::Needs hopper over tester hvis en forespurt modul ikke er til stede.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/H/HA/HAARG/Test-Needs-0.002010.tar.gz
Nedlasting MD5 sum: 2b3d10946001561297624e7668f09c26
Test::Requires modul sjekker om en annen (valgfri) modul kan lastes, og hvis ikke hopper den over alle gjeldende tester.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM/Test-Requires-0.11.tar.gz
Nedlasting MD5 sum: 999d6c4e46ea7baae7a5113292e02ed8
Test::RequiresInternet er ment å enkelt teste nettverkstilkobling før funksjonstester begynner å koble til ikke-lokale Internett ressurser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/M/MA/MALLEN/Test-RequiresInternet-0.05.tar.gz
Nedlasting MD5 sum: 0ba9f1cff4cf90ed2618c2eddfd525d8
Test::Simple inneholder grunnleggende verktøy for å skrive tester.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test-Simple-1.302200.tar.gz
Nedlasting MD5 sum: a954ebd548dc6e4e8b6b82577b2b77fb
Test::utf8 er en samling tester som er nyttige for å håndtere utf8 strenger i Perl.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/M/MA/MARKF/Test-utf8-1.02.tar.gz
Nedlasting MD5 sum: 71d187539c76ac1ed9a0242ff208796d
Test::Warnings tester for advarsler og mangelen på dem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-Warnings-0.033.tar.gz
Nedlasting MD5 sum: a936461688611bd85258c09e4bf6de68
Denne modulen lar deg bevisst skjule moduler fra et program til og med selv om de er installert. Dette er mest nyttig for å teste moduler som har en reserve når en viss avhengighetsmodul ikke er installert.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/C/CO/CORION/Test-Without-Module-0.23.tar.gz
Nedlasting MD5 sum: 58a507875131f63a936e0b971dd18f67
Test2::Plugin::NoWarnings fører til at tester mislykkes hvis det er noen advarsler mens de kjører.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Test2-Plugin-NoWarnings-0.10.tar.gz
Nedlasting MD5 sum: d50e21a76f1fef09004092a73b1c065b
Text::CSV_XS gir fasiliteter for sammensetning og nedbrytning av kommadelte verdier.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/H/HM/HMBRAND/Text-CSV_XS-1.56.tgz
Nedlasting MD5 sum: f945044c171bcd4150570759980280b1
Text::Diff utfører forskjeller på filer og opptakssett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/N/NE/NEILB/Text-Diff-1.45.tar.gz
Nedlasting MD5 sum: edf57b6189f7651a6be454062a4e6d9c
Text::Glob implementerer glob(3) stilmatching som kan brukes til samsvar mot tekst, i stedet for å hente navn fra et filsystem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/Text-Glob-0.11.tar.gz
Nedlasting MD5 sum: d001559c504a2625dd117bd1558f07f7
Du bruker Tie::Cycle for å gå gjennom en liste om og om igjen. Med en gang du kommer til slutten av listen, går du tilbake til begynnelsen. Du trenger ikke å bekymre deg for noe av dette siden tie magi gjør det for deg.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/B/BD/BDFOY/Tie-Cycle-1.228.tar.gz
Nedlasting MD5 sum: 2c99b09532d80599f4b041f3ecae7af8
TimeDate gir diverse tidssone manipulasjonsrutiner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC/TimeDate-2.33.tar.gz
Nedlasting MD5 sum: 5e5afe22c8d417417283d1f7f4572a57
Try::Tiny gir try og catch forventing og håndtering av eksepsjonelle forhold, og å unngå særheter i Perl og vanlige feil.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/Try-Tiny-0.31.tar.gz
Nedlasting MD5 sum: 993a29ee8a03c9bd9c2f7c53d1082a03
Magic er Perl sin måte å forbedre variabler på. Med denne modulen kan du legge til din egen magi til en hvilken som helst variabel.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/V/VP/VPIT/Variable-Magic-0.64.tar.gz
Nedlasting MD5 sum: 957d53fc6614deb593aa6d7cf96d713a
WWW::RobotRules analyserer robots.txt filer, oppretter en
WWW::RobotRules objekt med metoder for å sjekke om tilgang
til en gitt URL er forbudt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/G/GA/GAAS/WWW-RobotRules-6.02.tar.gz
Nedlasting MD5 sum: b7186e8b8b3701e70c22abf430742403
libwww-perl-6.77 (installer denne modulen først og installer den senere)
XML::LibXML er en perl binding for libxml2-2.13.3.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0210.tar.gz
Nedlasting MD5 sum: d2bad7f395716a6f57abde538d47008c
XML::NamespaceSupport tilbyr en enkel måte å behandle namespaced XML navn fra alle programmer som kan trenge dem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.12.tar.gz
Nedlasting MD5 sum: a8916c6d095bcf073e1108af02e78c97
XML::SAX er en SAX API for tolkertilgang for Perl. Det inkluderer klasser og APIer som kreves for å implementere SAX drivere, sammen med en fabrikkklasse for å returnere enhver SAX tolker installert på brukerens system.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-1.02.tar.gz
Nedlasting MD5 sum: b62e3754523695c7f5bbcafa3676a38d
libxml2-2.13.3, XML-NamespaceSupport-1.12, og XML-SAX-Base-1.09
Denne modulen bruker en variant av standard konstruksjon og installasjonsbruksanvisning:
yes | perl Makefile.PL && make && make test
Nå, som root bruker:
make install
Denne modulen har en veldig enkel oppgave - å være en basisklasse for PerlSAX sine drivere og filtre.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-Base-1.09.tar.gz
Nedlasting MD5 sum: ec347a14065dd7aec7d9fb181b2d7946
PHP er PHP Hypertext Preprocessor. Primært brukt i dynamiske nettsider, gjør det mulig å programmere kode direkte innebygd i HTML markeringen. Den er også nyttig som et generelt skriptspråk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.php.net/distributions/php-8.3.10.tar.xz
Nedlasting MD5 sum: 49f47bb78d521ad284ab8f15e91e6c76
Nedlastingsstørrelse: 12 MB
Estimert diskplass som kreves: 575 (med dokumentasjon og tester)
Estimert byggetid: 1.9 SBU (med parallellitet=4; legg til 1,8 SBU for tester)
Valgfri forhåndsbygd dokumentasjon (enkeltfil html): https://www.php.net/distributions/manual/php_manual_en.html.gz
Valgfri forhåndsbygd dokumentasjon (oppdelt html): https://www.php.net/distributions/manual/php_manual_en.tar.gz. Merk at dokumentasjonen finnes på andre språk enn Engelsk på https://www.php.net/download-docs.php
Apache-2.4.62 og libxml2-2.13.3
Aspell-0.60.8.1, enchant-2.8.2, libxslt-1.1.42, en MTA (som gir en sendmail kommando), pcre2-10.44, AppArmor, Dmalloc, Net-SNMP, oniguruma, OSSP mm, re2c, og XMLRPC-EPI
FreeType-2.13.3, libexif-0.6.24, libjpeg-turbo-3.0.1, libpng-1.6.43, libtiff-4.6.0, libwebp-1.4.0, et grafiske miljø, FDF Toolkit, GD, og t1lib
cURL-8.9.1, tidy-html5-5.8.0, Caudium, Hyperwave, Roxen WebServer, og WDDX
lmdb-0.9.31, MariaDB-10.11.8 eller MySQL, OpenLDAP-2.6.8, PostgreSQL-16.4, SQLite-3.46.1, unixODBC-2.3.12, Berkeley DB (deprecated) Adabas, Birdstep, cdb, DBMaker, Empress, FrontBase, IBM DB2, libiodbc, Mini SQL, Monetra, og QDBM
PHP gir også støtte til mange kommersielle databaseverktøy som f.eks Oracle, SAP og ODBC Router.
Cyrus SASL-2.1.28, MIT Kerberos V5-1.21.3, libmcrypt, og mhash
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/php
Du kan bruke PHP for server-side skripting, kommandolinjeskripting eller GUI applikasjoner på klientsiden. Denne boken gir instruksjoner for å sette opp PHP for server-side skripting ettersom det er den vanligste formen.
PHP har mange flere configure alternativer som vil muliggjøre støtte for ulike ting. Du kan bruke ./configure --help for å se en fullstendig liste over tilgjengelige alternativer. Også bruk av PHP nettsiden anbefales på det sterkeste, siden deres nettbaserte dokumenter er veldig bra. Et eksempel på en configure kommando som bruker mange av de vanligste avhengighetene finner du på https://anduin.linuxfromscratch.org/BLFS/files/php_configure.txt.
Hvis du av en eller annen grunn ikke har libxml2-2.13.3
installert, må du legge til --disable-libxml til configure kommandoen i
instruksjonene nedenfor. Merk at dette vil forhindre
pear
kommandoen fra å bli bygget.
Installer PHP ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--datadir=/usr/share/php \
--mandir=/usr/share/man \
--enable-fpm \
--without-pear \
--with-fpm-user=apache \
--with-fpm-group=apache \
--with-fpm-systemd \
--with-config-file-path=/etc \
--with-zlib \
--enable-bcmath \
--with-bz2 \
--enable-calendar \
--enable-dba=shared \
--with-gdbm \
--with-gmp \
--enable-ftp \
--with-gettext \
--enable-mbstring \
--disable-mbregex \
--with-readline &&
make
For å teste resultatene, kjør: make test. Flere tester (av over 18000) kan mislykkes, i så fall blir du spurt om du vil sende rapporten til PHP utviklerne. Hvis du ønsker å automatisere testen, kan du prefikse kommandoen med yes "n" | .
Nå, som root bruker:
make install &&
install -v -m644 php.ini-production /etc/php.ini &&
install -v -m755 -d /usr/share/doc/php-8.3.10 &&
install -v -m644 CODING_STANDARDS* EXTENSIONS NEWS README* UPGRADING* \
/usr/share/doc/php-8.3.10
Standard konfigurasjonsfilene for fastCGI prosessbehandleren
er bare installert hvis den ikke allerede finnes på systemet.
Hvis dette er den første installasjonen, bør de gis nytt
navn, som root bruker:
if [ -f /etc/php-fpm.conf.default ]; then
mv -v /etc/php-fpm.conf{.default,} &&
mv -v /etc/php-fpm.d/www.conf{.default,}
fi
Den forhåndsbygde HTML dokumentasjonen er pakket i to former:
en tarball som inneholder mange individuelle filer, nyttig
for rask innlasting i din nettleser, og en stor individuell
fil, som er nyttig for å bruke søkeverktøyet til nettleseren
din. Hvis du lastet ned en av, eller begge, av
dokumentasjonsfiler, kjør følgende kommandoer som
root brukeren for å
installere dem (merk disse instruksjonene forutsetter
engelske dokumenter, endre tarball navnene nedenfor hvis
nødvendig).
For “Singel HTML” fil:
install -v -m644 ../php_manual_en.html.gz \
/usr/share/doc/php-8.3.10 &&
gunzip -v /usr/share/doc/php-8.3.10/php_manual_en.html.gz
For “Mange HTML filer” tarball:
tar -xvf ../php_manual_en.tar.gz \
-C /usr/share/doc/php-8.3.10 --no-same-owner
Den medfølgende pear er ikke installert på grunn av en feil som kan forurense filsystemet med flere skjulte filer og kataloger. Hvis pear er nødvendig, kjør følgende kommandoer for å installere den:
wget https://pear.php.net/go-pear.phar php ./go-pear.phar
--datadir=/usr/share/php: Dette
arbeider rundt en feil i byggemaskineriet, som installerer
noen data til feil plassering.
--enable-fpm: Denne
parameteren tillater byggingen av fastCGI Process Manager.
--with-fpm-systemd:
Denne parameteren tillater FastCGI Process Manager å
integrere med systemd.
--without-pear: Denne
bryteren deaktiverer installasjon av medfølgende pear
programvare.
--with-config-file-path=/etc:
Denne parameteren gjør at PHP leter etter php.ini konfigurasjonsfilen i /etc.
--with-zlib: Denne
parameteren legger til støtte for Zlib kompresjon.
--enable-bcmath:
Aktiverer bc
stilpresisjons matematiske funksjoner.
--with-bz2: Legger
til støtte for Bzip2
kompresjonsfunksjoner.
--enable-calendar:
Denne parameteren gir støtte for kalenderkonvertering.
--enable-dba=shared:
Denne parameteren aktiverer støtte for database (dbm-stil)
abstraksjonslagsfunksjoner.
--enable-ftp: Denne
parameteren aktiverer FTP funksjoner.
--with-gettext:
Aktiverer funksjoner som bruker Gettext tekstoversettelse.
--enable-mbstring:
Denne parameteren muliggjør støtte for multibyte strenger.
--with-readline:
Denne parameteren aktiverer kommandolinje Readline støtte.
--disable-libxml: Dette
alternativet tillater å bygge PHP uten libxml2 installert.
--with-apxs2: I stedet for å
bygge fastCGI prosess behandleren, er det mulig å bygge en
apache modul. Dette har en
viss ytelsesstraff for tungt belastede servere, men kan være
lettere å sette opp. Denne bryteren er inkompatibel med
--enable-fpm og
--with-fpm-...
brytere.
--with-mysqli=shared: Dette
alternativet inkluderer MySQLi støtte.
--with-mysql-sock=/run/mysqld/mysqld.sock:
Plassering av MySQL unix socket pekeren.
--with-pdo-mysql=shared: Dette
alternativet inkluderer PDO: MySQL støtte.
--with-tidy=shared: Dette
alternativet inkluderer tidy bibliotek brukerstøtte.
Filen som brukes som standard /etc/php.ini konfigurasjonsfilen
anbefales av PHP
utviklingsteam. Denne filen endrer standardoppførselen til
PHP. Hvis ingen
/etc/php.ini brukes, faller
alle konfigurasjonsinnstillinger til
standardinnstillingene. Du burde se gjennom kommentarene i
denne filen og sørg for at endringene er akseptable i ditt
spesielle miljø.
FastCGI prosessbehandleren bruker konfigurasjonsfilen
/etc/php-fpm.conf.
Standardfilen levert med PHP inkluderer alle /etc/php-fpm.d/*.conf etter tur. Det er
en sendt /etc/php-fpm.d/www.conf fil, som
inneholder parametrene knyttet til interaksjonen med Apache
Internett server.
Du har kanskje lagt merke til følgende fra utdataen av make install kommandon:
You may want to add: /usr/lib/php to your php.ini include_path
Hvis ønskelig, legg til oppføringen ved å bruke følgende
kommando som root bruker:
sed -i 's@php/includes"@&\ninclude_path = ".:/usr/lib/php"@' \
/etc/php.ini
For å aktivere fastCGI støtte i Apache nettserver, to LoadModule
direktiver må legges til httpd.conf filen. De er kommentert ut, så
bare gi følgende kommando som root bruker:
sed -i -e '/proxy_module/s/^#//' \
-e '/proxy_fcgi_module/s/^#//' \
/etc/httpd/httpd.conf
Disse modulene godtar forskjellige ProxyPass direktiver. En
mulighet er (som root
bruker):
echo \ 'ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/srv/www/$1' >> \ /etc/httpd/httpd.conf
I tillegg kan det være nyttig å legge til en oppføring for
index.php til DirectoryIndex
direktivet til httpd.conf
filen. Til slutt å legger til en linje for å sette opp
.phps utvidelse for å vise
fremhevet PHP kilde kan
være ønskelig:
AddType application/x-httpd-php-source .phps
Du må starte på nytt Apache Internett server etter å ha
gjort endringer i httpd.conf
filen.
For å starte php-fpm nissen ved
oppstart, installer systemd enheten fra blfs-systemd-units-20240801 pakken
ved å kjøre følgende kommando som root bruker:
make install-php-fpm
Python 3 pakken inneholder Python utviklingsmiljø. Dette er nyttig for objektorientert programmering, skriving av skript, prototyping av store programmer eller utvikling av hele applikasjoner.
Python 3 ble installert i LFS. Den eneste grunnen til å gjenoppbygge den her er hvis valgfrie moduler er nødvendig, eller for å oppgradere denne pakken.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Hvis du oppgraderer til en ny Python-3 minor versjon (f.eks. fra Python-3.11.x til Python-3.12.0), må du installere på nytt eventuelle Python3 moduler du har installert. Du burde også installer pakker på nytt som genererer Python3 moduler inkludert GLib-2.80.4 (med GObject Introspection), libxml2-2.13.3, opencv-4.10.0, FontForge-20230101, gnome-tweaks-46.1, Samba-4.20.4, og Graphviz-12.1.0 (hvis swig er installert).
Før du oppgraderer, kan du få en liste over moduler
installert med pip3
list. Listen kan være ufullstendig siden
noen Python moduler ikke er installert med pip3, for eksempel
cracklib modulen installert
med CrackLib-2.10.2. Bruk ls /usr/lib/python3.minor/site-packages
for en omfattende liste.
Python modulene fra LFS må også installeres på nytt: flit-core, wheel, setuptools, meson, MarkupSafe, og Jinja2.
På systemd systemer er det også nødvendig å installere MarkupSafe og Jinja2 moduler på nytt fra LFS: https://www.linuxfromscratch.org/lfs/view/systemd/chapter08/markupsafe.html og https://www.linuxfromscratch.org/lfs/view/systemd/chapter08/jinja2.html.
Nedlasting (HTTP): https://www.python.org/ftp/python/3.12.5/Python-3.12.5.tar.xz
Nedlasting MD5 sum: 02c7d269e077f4034963bba6befdc715
Nedlastingsstørrelse: 19 MB
Estimert diskplass som kreves: 335 MB (legg til 59 MB for tester)
Estimert byggetid: 1.6 SBU (legg til 0.6 SBU for tester; begge bruker parallellisme=4)
Nedlasting (HTTP): https://www.python.org/ftp/python/doc/3.12.5/python-3.12.5-docs-html.tar.bz2
Nedlasting MD5 sum: 52274d813236ca4a972fb6988480dc56
SQLite-3.46.1 (nødvendig hvis du bygger firefox eller thunderbird)
BlueZ-5.77, GDB-15.1 (nødvendig for noen tester), Valgrind-3.23.0, og libmpdec
libnsl-2.0.1, Tk-8.6.14, og Berkeley DB (deprecated)
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Python3
Installer Python 3 ved å kjøre følgende kommandoer:
CXX="/usr/bin/g++" \
./configure --prefix=/usr \
--enable-shared \
--with-system-expat \
--with-system-ffi \
--enable-optimizations &&
make
Noen tester er kjent for å av og til henge på ubestemt tid. Så for å teste resultatene, kjør testpakken, men sett en tidsbegrensning på 2 minutter for hver testforsøk:
make test TESTOPTS="--timeout 120"
For et relativt tregt system må du kanskje øke tidsbegrensningen og 1 SBU (målt når du bygger Binutils passerer 1 med én CPU kjerne) bør være nok. Noen tester er flassete, så testpakken vil kjøre mislykkede tester automatisk på nytt. Hvis en test mislyktes, men deretter bestått når den kjøres på nytt, bør den anses som bestått.
Av over 42 000 tester er følgende kjent for å mislykkes: test__xxsubinterpreters, test_import, test_interpreters, og test_threading.
Nå, som root bruker:
make install
Hvis oppgraderingen og dokumentasjonen er lastet ned, kan du
eventuelt installere det som root bruker:
install -v -dm755 /usr/share/doc/python-3.12.5/html
tar --strip-components=1 \
--no-same-owner \
--no-same-permissions \
-C /usr/share/doc/python-3.12.5/html \
-xvf ../python-3.12.5-docs-html.tar.bz2
CXX="/usr/bin/g++" ./configure ...: Unngå en irriterende melding under konfigurasjonen.
--with-system-expat:
Denne bryteren muliggjør kobling mot systemversjonen av
Expat.
--enable-optimizations: Denne
bryteren aktiverer stabile, men dyre, optimaliseringer.
--with-lto: Denne valgfrie
bryteren muliggjør tykk Link Time Optimization. Uvanlig
skaper det en mye større /usr/lib/python3.12/config-3.12-<arch>-linux-gnu/libpython3.12.a
med en liten økning i kompileringstiden til Python. Kjøretidsresultater ser ikke ut
til å vise noen fordel av å gjøre dette.
For at python3 skal finne den installerte dokumentasjon, opprett følgende versjonsuavhengig symbolkobling:
ln -svfn python-3.12.5 /usr/share/doc/python-3
og legg til følgende miljøvariabel til den enkelte brukers eller systemets profil:
export PYTHONDOCS=/usr/share/doc/python-3/html
|
er et innpakningsskript som åpner en Python bevisst GUI redigerer. For at dette skriptet skal kjøre, må du ha installert Tk før Python sånn at Tkinter Python modul blir bygget |
|
|
er Python dokumentasjonsverktøy |
|
|
er en tolket, interaktiv, objektorientert programmeringsspråk |
|
|
er et versjonsspesifikt navn for python programmet |
Python 3.11 pakken inneholder en eldre versjon av Python utviklingsmiljø. Dette er bare nødvendig for å bygge seamonkey-2.53.18.2 fordi byggesystemet ikke har blitt oppdatert for å støtte Python-3.12.5.
IKKE installer denne pakken hvis du ikke installerer Seamonkey.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.python.org/ftp/python/3.11.1/Python-3.11.1.tar.xz
Nedlasting MD5 sum: 4efe92adf28875c77d3b9b2e8d3bc44a
Nedlastingsstørrelse: 19 MB
Estimert diskplass som kreves: 301 MB
Estimert byggetid: 1.1 SBU (Bruker parallellisme=4)
SQLite-3.46.1 (nødvendig hvis du bygger firefox eller thunderbird)
Installer Python 3.11 ved å kjøre følgende kommandoer:
CXX="/usr/bin/g++" \
./configure --prefix=/opt/python3.11 \
--disable-shared \
--with-system-expat &&
make
Siden denne pakken bare brukes i svært begrensede situasjoner, anbefales ikke tester.
Nå, som root bruker:
make install
CXX="/usr/bin/g++" ./configure ...: Unngå en irriterende melding under konfigurasjonen.
--prefix=/opt/python3.11: Dette
installerer python 3.11 inn i /opt for å unngå konflikter med
systemversjonen av python, og muliggjør enkel
fjerning/isolering når programmer oppdateres til python3.12
eller nyere.
--disable-shared:
Denne bryteren deaktiverer bygging av delte biblioteker.
Siden alle pakkene som trenger python-3.11 har bygget i
moduler og ikke kobler direkte til python, er det trygt å slå
av støtte for delt bibliotek.
--with-system-expat:
Denne bryteren muliggjør kobling mot systemversjonen av
Expat.
Python modulpakker legger til nyttige objekter til Python språket. Moduler brukt av pakker i hele BLFS er oppført her, sammen med deres avhengigheter.
Hvis du ønsker å kjøre tester, er flere av de følgende
modulene avhengig av sqlite3
kjerne python modul som ikke ble bygget i LFS. Det
anbefales derfor å gjenoppbygge Python etter installering
av de anbefalte avhengighetene som er oppført i Python-3.12.5.
I BLFS bygger og installerer vi normalt Python 3 moduler
med pip3.
Vennligst pass på at pip3
install kommandoer i boken skal bli kjørt
som root med mindre det er
for et virtuelt Python miljø. Kjøring av pip3 install som en
ikke-root bruker kan synes
å fungere fint, men det vil føre til at den installerte
modulen blir utilgjengelig for andre brukere.
pip3 install
vil ikke installere en allerede installert modul som
standard. For å bruke pip3
install kommandoen for å oppgradere en
modul (for eksempel fra meson-0.61.3 til meson-0.62.0),
sett inn --upgrade
inn i kommandolinjen. Hvis det virkelig er nødvendig for å
nedgradere en modul eller installere den samme versjonen på
nytt av en eller annen grunn, sett inn --force-reinstall inn i
kommandolinjen.
Asciidoc pakken er et tekstdokument format for å skrive notater, dokumentasjon, artikler, bøker, e-bøker, lysbildefremvisninger, nettsider, man-sider og blogger. AsciiDoc filer kan bli oversatt til mange formater, inkludert HTML, PDF, EPUB og man page.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/a/asciidoc/asciidoc-10.2.1.tar.gz
Nedlasting MD5 sum: 460824075b51381a4b5f478c60a18165
Nedlastingsstørrelse: 228 KB
Estimert diskplass som kreves: 2.6 MB
Estimert byggetid: mindre enn 0.1 SBU
docbook-xsl-nons-1.79.2, fop-2.9, libxslt-1.1.42, Lynx-2.9.2, dblatex, og W3m
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user asciidoc
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
CSSSelect gir CSS velgere for Python.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/c/cssselect/cssselect-1.2.0.tar.gz
Nedlasting MD5 sum: 27fbafacce5447cb867acb240d35002a
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 512 KB (legg til 488 KB for tester)
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user cssselect
For å teste installasjonen kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
CacheControl er en port for cachings algoritmer i httplib2 for bruk med requests session objekter. Den ble skrevet fordi httplib2s bedre støtte for caching ofte dempes av mangelen på trådsikkerhet. Det samme gjelder forespørsler når det gjelder caching.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/psf/cachecontrol/archive/v0.14.0/cachecontrol-0.14.0.tar.gz
Nedlasting MD5 sum: 221272755063d3827de22e430ad842e6
Nedlastingsstørrelse: 44 KB
Estimert diskplass som kreves: 344 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user cachecontrol
Denne modulen har ikke en fungerende testpakke.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Cython pakken gir en kompilator for å skrive C utvidelser for Python språket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/cython/cython/releases/download/3.0.11-1/cython-3.0.11.tar.gz
Nedlasting MD5 sum: 388b85b7c23f501320d19d991b169f5d
Nedlastingsstørrelse: 2.6 MB
Estimert diskplass som kreves: 142 MB
Estimert byggetid: 2.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user Cython
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
dbusmock er et Python bibliotek nyttig for å skrive tester for programvare som snakker med D-Bus tjenester.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/python-dbusmock/python-dbusmock-0.32.1.tar.gz
Nedlasting MD5 sum: 53b043d9b63247fe49d74c3c299fb1c1
Nedlastingsstørrelse: 104 KB
Estimert diskplass som kreves: 1.7 MB (med tester)
Estimert byggetid: mindre enn 0,1 SBU (legg til 0,3 SBU for tester
pytest-8.3.2 (kreves for å kjøre testpakken), PyGObject-3.48.2 (kreves for å kjøre testpakken), BlueZ-5.77 (valgfritt for testpakken), og UPower-1.90.4 (valgfritt for testpakken; hvis ikke installert vil en test mislykkes)
Bygg pakken med:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
For å installere pakken, kjør følgende som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user python-dbusmock
For å teste resultatene, utsted: LC_ALL=C pytest
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
D-Bus Python gir Python bindinger til D-Bus API grensesnittet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://dbus.freedesktop.org/releases/dbus-python/dbus-python-1.3.2.tar.gz
Nedlasting MD5 sum: 33be8a4a766e1c7c9a377b8f934ce21a
Nedlastingsstørrelse: 592 KB
Estimert diskplass som kreves: 4.0 MB
Estimert byggetid: mindre enn 0.1 SBU
dbus-1.14.10, GLib-2.80.4, meson_python-0.16.0, og patchelf-0.18.0
Bygg D-Bus Python modulen ved å kjøre følgende kommando:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Installer nå modulen som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user dbus-python
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
docutils er et sett med Python moduler og programmer for å behandle rentekstdokumenter til formater som HTML, XML eller LaTeX.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/docutils/docutils-0.21.2.tar.gz
Nedlasting MD5 sum: c4064e1e0e3cd142951fd2b95b830874
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: mindre enn 0.1 SBU
Fjern først noen filer installert i en tidligere versjon
som ikke lenger er gyldige. Som root bruker:
for f in /usr/bin/rst*.py; do rm -fv /usr/bin/$(basename $f .py) done
For å bygge Python 3 applikasjoner, kjør følgende kommando:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
For å installere Python
applikasjoner kjør følgende kommando som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user docutils
For å teste installasjonen, utsted: test/alltests.py.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
|
konverterer dokumenter til ulike formater |
|
|
genererer (X)HTML dokumenter fra frittstående reStructuredText kilder |
|
|
genererer (X)HTML dokumenter fra frittstående reStructuredText kilder |
|
|
genererer HTML5 dokumenter fra frittstående reStructuredText kilder |
|
|
genererer LaTeX dokumenter fra frittstående reStructuredText kilder |
|
|
genererer vanlige unix manual dokumenter fra frittstående reStructuredText kilder |
|
|
genererer OpenDocument/OpenOffice/ODF dokumenter fra frittstående reStructuredText kilder |
|
|
Fiks en tekstbehandler generert styles.odt for odtwriter bruk |
|
|
genererer pseudo-XML fra frittstående reStructuredText kilder (for testformål) |
|
|
genererer S5 (X)HTML lysbildefremvisning fra frittstående reStructuredText kilder |
|
|
genererer LaTeX dokumenter fra frittstående reStructuredText kilder for kompilering med Unicode bevisste TeX varianter XeLaTeX eller LuaLaTeX |
|
|
genererer Docutils-native XML fra frittstående reStructuredText kilder |
|
|
genererer (X)HTML fra reStructuredText-format PEP filer |
Doxypypy pakken er et doxygen filter for python.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/d/doxypypy/doxypypy-0.8.8.7.tar.gz
Nedlasting MD5 sum: 5773d0a7882df900cbda8ee5107e1ced
Nedlastingsstørrelse: 45 KB
Estimert diskplass som kreves: 2.1 MB
Estimert byggetid: mindre enn 0.1 SBU
chardet-5.2.0 og Doxygen-1.12.0 (ved kjøretid)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user doxypypy
Denne pakken kommer ikke med en fungerende testpakke.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Doxyqml pakken tillater bruk av Doxygen for å dokumentere QML klasser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/d/doxyqml/doxyqml-0.5.3.tar.gz
Nedlasting MD5 sum: 3d394a0d896721e27beb62bf032f7f43
Nedlastingsstørrelse: 28 KB
Estimert diskplass som kreves: 652 KB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user doxyqml
For å teste installasjonen, kjør:
pytest
test_qmlclass.py testen er kjent for å mislykkes.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Gi-DocGen er en dokumentgenerator for GObject baserte biblioteker. GObject er basistypen til GNOME prosjektet. GI-DocGen gjenbruker introspeksjonsdataene generert av GObject baserte biblioteker for å generere API referansen til disse bibliotekene, samt annen tilleggsdokumentasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/g/gi-docgen/gi_docgen-2024.1.tar.gz
Nedlasting MD5 sum: 9fb8e8d8536bc9b47060415370a17fc7
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 17 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Markdown-3.6, packaging-24.1, Pygments-2.18.0, og typogrify-2.0.7
Graphviz-12.1.0 (kjøretid, for visualisere klassehierarkigrafer) og pytest-8.3.2 (for testing)
Slå av en advarsel fra Graphviz dot verktøyet som vil
føre til at dokumentasjon av ulike pakker ikke blir bygget
hvis Graphviz er installert, men bygget uten Pango, og
gi-docgen
påberopes med --fatal-warnings
alternativet:
sed -i '/if err:/s/err/proc.returncode/' gidocgen/utils.py
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user gi-docgen
For å teste installasjonen, kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
html5lib gir et rent python-bibliotek for å analysere HTML. Den er designet for å samsvare med WHATWG HTML spesifikasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/h/html5lib/html5lib-1.1.tar.gz
Nedlasting MD5 sum: 6748742e2ec4cb99287a6bc82bcfe2b0
Nedlastingsstørrelse: 268 KB
Estimert diskplass som kreves: 3.9 MB
Estimert byggetid: mindre enn 0.1 SBU
For å bygge Python 3 modulen, kjør:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
For å installere modulen, utsted følgende kommando som
root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user html5lib
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
lxml gir Python bindinger for libxslt-1.1.42 og libxml2-2.13.3.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/l/lxml/lxml-5.3.0.tar.gz
Nedlasting MD5 sum: d3e6f800f4b73f2756663cc4a76df5e0
Nedlastingsstørrelse: 3.6 MB
Estimert diskplass som kreves: 90 MB
Estimert byggetid: 0.9 SBU
For å bygge Python 3 modulen, kjør:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
For å installere modulen, kjør følgende kommando som
root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user lxml
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Mako er en Python modul som implementerer hyperrask og lett maldesign for Python plattformen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/M/Mako/Mako-1.3.5.tar.gz
Nedlasting MD5 sum: 0cf9ef37c1f8ffd453ef2b2a3a5573b3
Nedlastingsstørrelse: 384 KB
Estimert diskplass som kreves: 2.9 MB (legg til 1.1 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Installer modulen som root
bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user Mako
For å teste installasjonen, kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
NumPy er den grunnleggende pakken for vitenskapelig databehandling med Python.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/n/numpy/numpy-2.1.0.tar.gz
Nedlasting MD5 sum: 4cb2230ffa1cc41329ae29bd69ee08de
Nedlastingsstørrelse: 18 MB
Estimert diskplass som kreves: 104 (legg til 48 MB for tester)
Estimert byggetid: 0.6 SBU (legg til 1.1 SBU for tester)
cython-3.0.11, meson_python-0.16.0, og pyproject-metadata-0.8.0
fortran fra GCC-14.2.0, lapack og cblas, og openblas
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir -Csetup-args=-Dallow-noblas=true $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user numpy
Installasjonen kan testes med følgende kommandoer:
mkdir -p test && cd test && python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install hypothesis && python -c "import numpy, sys; sys.exit(numpy.test() is False)" deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Packaging biblioteket tilbyr verktøy som implementerer interoperabilitetsspesifikasjonene som har en klart riktig oppførsel (PEP440) eller ha stor nytte av å ha en singel delt implementering (PEP425). Dette inkluderer verktøy for versjonshåndtering, spesifikasjoner, markører, tagger og krav.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/packaging/packaging-24.1.tar.gz
Nedlasting MD5 sum: 99b97d1f30017a62a2aae777a14782d0
Nedlastingsstørrelse: 148 KB
Estimert diskplass som kreves: 2.6 MB (legg til 20 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.2 SBU for tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user packaging
Forutsatt pytest-8.3.2 er installert, men de andre valgfrie avhengighetene ikke er det, kan installasjonen testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install pretend && python3 /usr/bin/pytest deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
ply pakken er en 100% Python implementering av de vanlige analyseverktøyene 'lex' og 'yacc'.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/ply/ply-3.11.tar.gz
Nedlasting MD5 sum: 6465f602e656455affcd7c5734c638f8
Nedlastingsstørrelse: 156 KB
Estimert diskplass som kreves: 2.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user ply
Denne pakken kommer ikke med en fungerende testpakke.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
psutil (process and system utilities) er et bibliotek på tvers av plattformer for å hente informasjon om kjørende prosesser og systemutnyttelse (CPU, minne, disker, nettverk, sensorer) i Python. Det er hovedsakelig nyttig for systemovervåking, profilering og begrensning av prosessressurser og styring av kjørende prosesser. Den implementerer mange funksjoner som tilbys av klassiske UNIX kommandolinjeverktøy som ps, top, iotop, lsof, netstat, ifconfig, free og andre.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/psutil/psutil-6.0.0.tar.gz
Nedlasting MD5 sum: 5874bd773d2fe7da3c0817424f383033
Nedlastingsstørrelse: 500 KB
Estimert diskplass som kreves: 4.3 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user psutil
For å teste resultatene, utsted:
mkdir empty && (cd empty; python3 -m psutil.tests)
To tester navngitt test_disk_usage og test_io_counters er kjent for å mislykkes.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Py3c hjelper deg med å overføre C utvidelser til Python 3. Den gir en detaljert veiledning, og et sett med makroer til gjør portering enkel og redusere gjenbruk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/encukou/py3c/archive/v1.4/py3c-1.4.tar.gz
Nedlasting MD5 sum: 53029afde7e0cf8672a2d69d378a0cfc
Nedlastingsstørrelse: 47 KB
Estimert diskplass som kreves: 608 KB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Py3c pakken er en pakke med kun deklarasjoner og på grunn av det er ingen konfigurasjon og kompilering nødvendig.
For å teste pakken, kjør:
make test-python3 && make test-python3-cpp
For å installere Python 3
modulen, kjør følgende kommando som root bruker:
make prefix=/usr install
PyAtSpi2 pakken inneholder Python bindinger for kjernekomponenter av GNOME Accessibility.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/pyatspi/2.46/pyatspi-2.46.1.tar.xz
Nedlasting MD5 sum: 0f2bfade055457cb0c2389fd46d1ad70
Nedlastingsstørrelse: 316 KB
Estimert diskplass som kreves: 3.9 MB
Estimert byggetid: mindre enn 0.1 SBU
For å bygge PyAtSpi2 som en Python 3 modul, kjør følgende kommandoer:
./configure --prefix=/usr --with-python=/usr/bin/python3
Denne pakken kommer ikke med en testpakke.
For å installere Python 3
modulen, kjør følgende kommando som root bruker:
make install
PyCairo gir Python bindinger til Cairo.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/pygobject/pycairo/releases/download/v1.26.1/pycairo-1.26.1.tar.gz
Nedlasting MD5 sum: 36504ac01533ae14f0d2337516bbae2e
Nedlastingsstørrelse: 340 KB
Estimert diskplass som kreves: 3.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Hypothesis og pytest-8.3.2 (for tester)
Installer PyCairo for Python3 ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å kjøre testene krever denne pakken den valgfrie pytest modulen. Hvis den er installert, kjør testene ved å kjøre ninja test.
Nå, som root bruker:
ninja install
GDB/MI er et linjebasert maskinorientert tekstgrensesnitt til GDB og er aktivert ved å spesifisere ved å bruke kommandolinjealternativet --interpreter (se Modusalternativer). Den er spesielt ment å støtte utvikling av systemer som bruker feilsøkeren som bare en liten del av et større system.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pygdbmi/pygdbmi-0.11.0.0.tar.gz
Nedlasting MD5 sum: 34b1812e77469c6206002b3929798cab
Nedlastingsstørrelse: 28 KB
Estimert diskplass som kreves: 280 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pygdbmi
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Pygments er en generell syntaksmarkør skrevet i Python, for mer enn 300 språk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/P/Pygments/pygments-2.18.0.tar.gz
Nedlasting MD5 sum: fbb7976df756f832f3391008778e8999
Nedlastingsstørrelse: 4.7 MB
Estimert diskplass som kreves: 52 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg Python 3 modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
For å installere pakken, kjør følgende som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user Pygments
For å teste installasjonen, sørg for at pytest-8.3.2 er installert og kjør:
python3 -m venv --system-site-packages testenv && testenv/bin/pip3 install wcag-contrast-ratio && testenv/bin/python -m pytest
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
PyGObject3 gir Python bindinger til GObject klassen fra GLib.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/pygobject/3.48/pygobject-3.48.2.tar.xz
Nedlasting MD5 sum: fe1cb825adc8a49d1629b97b7d26dffc
Nedlastingsstørrelse: 544 KB
Estimert diskplass som kreves: 7.0 MB (legg til 2.5 MB for tester)
Estimert byggetid: 0.2 SBU (med tester)
GLib-2.80.4 (med GObject Introspection)
GTK-4.14.5, pep8, pyflakes, og pytest-8.3.2
Fjern først to defekte tester:
mv -v tests/test_gdbus.py{,.nouse} &&
mv -v tests/test_overrides_gtk.py{,.nouse}
Installer pygobject3 ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test. En allerede aktiv grafisk sesjon med en bussadresse er nødvendig for å kjøre testene. En annen runde med tester kan rapportere ERROR hvis GTK-4.14.5 ikke er installert.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte
binærfiler.
-D pycairo=disabled: bruk denne
bryteren hvis du ikke har PyCairo-1.26.1 installert.
pyparsing modulen er en alternativ tilnærming til å lage og utføre enkel grammatikk, vs tradisjonell lex/yacc tilnærming, eller bruk av regulære uttrykk. Den gir et bibliotek med klasser som klientkoden bruker til å konstruere grammatikken direkte i Python koden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pyparsing/pyparsing-3.1.2.tar.gz
Nedlasting MD5 sum: 2bfafdb2d02d19ca4a3dfd02a9dbdfa7
Nedlastingsstørrelse: 872 KB
Estimert diskplass som kreves: 3.3 MB (legg til 27 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.3 SBU for tester)
railroad-diagrams (også nødvendig for tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pyparsing
Forutsatt pytest-8.3.2 er installert, men de andre valgfrie avhengighetene ikke er installert, installasjonen kan testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install railroad-diagrams && python3 /usr/bin/pytest deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
pySerial modulen innkapsler tilgangen til serieporten.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pyserial/pyserial-3.5.tar.gz
Nedlasting MD5 sum: 1cf25a76da59b530dbfc2cf99392dc83
Nedlastingsstørrelse: 156 KB
Estimert diskplass som kreves: 2.1 MB (legg til 0.2 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pyserial
For å teste installasjonen kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Pytest rammeverket gjør det enkelt å skrive små, lesbare tester, og kan skaleres for å støtte kompleks funksjonstesting for applikasjoner og biblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pytest/pytest-8.3.2.tar.gz
Nedlasting MD5 sum: 9e6443870618f16cad55527b8302d134
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 43 MB (med tester)
Estimert byggetid: 1.3 SBU (med tester)
iniconfig-2.0.0, packaging-24.1, og pluggy-1.5.0
attrs-24.2.0, Pygments-2.18.0, requests-2.32.3, argcomplete, hypothesis, mock, og xmlschema
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pytest
Installasjonen kan testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install pytest[dev] xmlschema hypothesis && python3 /usr/bin/pytest deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
PyXDG er et Python bibliotek for å få tilgang til freedesktop.org standarder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/b0/25/7998cd2dec731acbd438fbf91bc619603fc5188de0a9a17699a781840452/pyxdg-0.28.tar.gz
Nedlasting MD5 sum: d9a1d04fe60c956f5e3b9de3b4ef4722
Nedlastingsstørrelse: 76 KB
Estimert diskplass som kreves: 808 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Installer modulen som root
bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pyxdg
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
PyYAML er en Python modul som implementerer neste generasjons YAML parser og emitter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/P/PyYAML/pyyaml-6.0.2.tar.gz
Nedlasting MD5 sum: 9600ee49b2b4e1a0237cf4173b6dc594
Nedlastingsstørrelse: 128 KB
Estimert diskplass som kreves: 8.5 MB
Estimert byggetid: 0.1 SBU
cython-3.0.11 og libyaml-0.2.5
pytest-8.3.2 (for testing)
Bygg PyYAML med følgende kommando::
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Installer nå modulen som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user PyYAML
For å teste resultatene, utsted: pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Recommonmark er en docutils kompatibilitetsbro til CommonMark. Det lar deg skrive CommonMark inne i Docutils og Sphinx prosjekter. Recommonmark er nå avviklet til fordel for MyST-Parser. Dessverre, LLVM-18.1.7 avhenger fortsatt av denne modulen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/r/recommonmark/recommonmark-0.7.1.tar.gz
Nedlasting MD5 sum: 3c550a76eb62006bf007843a9f1805bb
Nedlastingsstørrelse: 34 KB
Estimert diskplass som kreves: 680 KB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
commonmark-0.9.1 og sphinx-8.0.2
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user recommonmark
Recommonmark er nå avskrevet til fordel for MyST-Parser. Av denne grunn, må mange tester deaktiveres fordi de ikke passer med nyere versjoner av Sphinx. Installasjonen kan bli delvis testet med følgende kommando:
pytest -k 'not (test_integration or test_code or test_headings or test_image or test_links or test_lists)'
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
|
genererer et html dokument fra markdown kilder |
|
|
genererer et latex dokument fra markdown kilder |
|
|
genererer en manpage fra markdown kilder |
|
|
genererer et pseudo-XML dokument fra markdown kilder |
|
|
genererer et xetex dokument fra markdown kilder |
|
|
genererer et XML dokument fra markdown kilder |
Requests pakken er et elegant og enkelt HTTP bibliotek for Python, bygget for mennesker. Det tillater å sende HTTP/1.1 forespørsler ekstremt enkelt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/r/requests/requests-2.32.3.tar.gz
Nedlasting MD5 sum: fa3ee5ac3f1b3f4368bd74ab530d3f0f
Nedlastingsstørrelse: 132 KB
Estimert diskplass som kreves: 1.1 MB (legg til 139 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.9 SBU for tester)
charset-normalizer-3.3.2, idna-3.7, og urllib3-2.2.2
make-ca-1.14, med p11-kit-0.25.5 (begge trenges for å bruke systemets https: certificates, fjerner en unødvendig avhengighet på Certifi modulen).
PySocks (også nødvendig for testing)
pytest-8.3.2, Flask<2, httpbin, MarkupSafe<2.1, pytest-mock, pytest-httpbin, sphinx<5, trustme, og Werkzeug<2
Bruk først en oppdatering slik at den samme miljøvariabelen som allerede er brukt til å peke på systemsertifikater i Python3 følgende installasjonen av make-ca også kan brukes av denne modulen:
patch -Np1 -i ../requests-2.32.3-use_system_certs-1.patch
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user requests
Forutsatt pytest-8.3.2 er installert, men de andre valgfrie avhengigheter ikke er det, kan installasjonen testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv &&
source testenv/bin/activate &&
pip3 install --force-reinstall sphinx\<5 &&
pip3 install pytest-mock \
werkzeug\<2 \
flask\<2 \
pytest-httpbin \
pysocks \
trustme &&
pip3 install --force-reinstall Markupsafe\<2.1 &&
python3 /usr/bin/pytest tests
deactivate
Se make-ca-1.14 for hvordan du setter miljøvariabelen, og for hvordan lokale kopier av Certifi og Requests modulene er installert i et virtuelt miljø vil overstyre systemets sertifikater.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Scour er en SVG (Scalable Vector Graphics) optimaliserer/renser som reduserer størrelsen ved å optimere struktur og fjerne unødvendige data.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/scour-project/scour/archive/v0.38.2/scour-0.38.2.tar.gz
Nedlasting MD5 sum: ae30f52602802f8c7df3a32e1f72b325
Nedlastingsstørrelse: 100 KB
Estimert diskplass som kreves: 1.3 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
For å installere modulen, kjør følgende kommando som
root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user scour
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
sentry-sdk modulen er den offisielle Python SDK for Sentry.io.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/getsentry/sentry-python/releases/download/2.13.0/sentry_sdk-2.13.0.tar.gz
Nedlasting MD5 sum: d56d6bf0acd0bd0663b420199c9afc29
Nedlastingsstørrelse: 276 KB
Estimert diskplass som kreves: 3.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sentry-sdk
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Six er et Python 2 til 3 kompatibilitetsbibliotek.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/six/six-1.16.0.tar.gz
Nedlasting MD5 sum: a7c927740e4964dd29b72cebfc1429bb
Nedlastingsstørrelse: 36 KB
Estimert diskplass som kreves: 376 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user six
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Sphinx pakken er et sett med verktøy for å oversette noen strukturerte tekstformater til pen dokumentasjon i ulike formater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinx/sphinx-8.0.2.tar.gz
Nedlasting MD5 sum: 9f07671060e83d92a7a4e33893bbd408
Nedlastingsstørrelse: 7.8 MB
Estimert diskplass som kreves: 57 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 1.0 SBU for tester)
alabaster-1.0.0, babel-2.16.0, docutils-0.21.2, imagesize-1.4.1, packaging-24.1, Pygments-2.18.0, requests-2.32.3, snowballstemmer-2.2.0, sphinxcontrib-applehelp-2.0.0, sphinxcontrib-devhelp-2.0.0, sphinxcontrib-htmlhelp-2.0.1, sphinxcontrib-jsmath-1.0.1, sphinxcontrib-qthelp-2.0.0, og sphinxcontrib-serializinghtml-2.0.0
cython-3.0.11, html5lib-1.1, pytest-8.3.2, texlive-20240312, defusedxml, og typing_extensions
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinx
Forutsatt cython-3.0.11 og pytest-8.3.2 er installert, men de andre valgfrie avhengighetene ikke er installert, kan installasjonen testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install sphinx[test] && python3 -m pytest deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
sphinx_rtd_theme modulen er et Sphinx tema designet for å gi en flott leseropplevelse for dokumentasjonsbrukere på både stasjonære og mobile enheter. Dette temaet brukes primært på Read the Docs, men kan fungere med alle Sphinx prosjekter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinx_rtd_theme/sphinx_rtd_theme-2.0.0.tar.gz
Nedlasting MD5 sum: 8ad74a8e9ca706ed77117be0e9eed7e8
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 36 MB (med tester)
Estimert byggetid: 0.1 SBU (with tester)
sphinx-8.0.2 og sphinxcontrib-jquery-4.1
Først, fortell pakken at nyere docutils-0.21.2 og sphinx-8.0.2 versjoner er trygge å bruke:
sed -e 's/0.21/0.22/' \
-e 's/8$/9/' \
-i setup.cfg
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinx_rtd_theme
Forutsatt pytest-8.3.2 er installert, men de andre valgfrie avhengighetene ikke er installert, kan installasjonen testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install readthedocs-sphinx-ext && python3 /usr/bin/pytest deactivate
Flere tester returnerer advarsler fordi de bruker en utdatert sphinx API.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Python moduler oppført i Python Moduler har avhengigheter som ikke refereres til av andre pakker i BLFS. Disse avhengighetene er oppført her. De vil ikke bli oppdatert regelmessig, med mindre en nyere versjon er nødvendig.
I BLFS bygger og installerer vi normalt Python 3 moduler
med pip3.
Vennligst pass på at pip3
install kommandoer i boken skal kjøres som
root med mindre det er for
et virtuelt Python miljø. Kjøring av pip3 install som
ikke-root bruker kan synes
å fungere fint, men det vil føre til at den installerte
modulen blir utilgjengelig av andre brukere.
pip3 install
vil ikke installere en allerede installert modul som
standard. For å bruke pip3
install kommandoen til å oppgradere en
modul (for eksempel fra meson-0.61.3 til meson-0.62.0),
sett inn --upgrade
inn i kommandolinjen. Hvis det virkelig er nødvendig å
nedgradere en modul eller installere den samme versjonen på
nytt av en eller annen grunn, sett inn --force-reinstall inn i
kommandolinjen.
Alabaster pakken er et tema for sphinx dokumentasjonssystem. Selv om det er utviklet separat, er det standardtemaet for sfinx.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/a/alabaster/alabaster-1.0.0.tar.gz
Nedlasting MD5 sum: c6c2173e5565fb12f08bef410ea50f72
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 160 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user alabaster
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Attrs pakken er en pythonmodul som gjør det mulig å skrive attributter uten ekstra boilerplate.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/a/attrs/attrs-24.2.0.tar.gz
Nedlasting MD5 sum: 031a41b703d7fc47ec204d0369b68dcd
Nedlastingsstørrelse: 776 KB
Estimert diskplass som kreves: 7 MB (legg til 78 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.2 SBU for tester)
hatch-fancy-pypi-readme-24.1.0 og hatch_vcs-0.4.0
pytest-8.3.2, cloudpickle, hypothesis, Pympler, mypy, pytest-mypy-plugins, pytest-xdist[psutil], og zope.interface
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user attrs
For å teste installasjonen, kjør:
python3 -m venv --system-site-packages testenv && testenv/bin/pip3 install 'attrs[tests]' && PATH=$PWD/testenv/bin:$PATH testenv/bin/python -m pytest
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Babel pakken er en integrert samling av hjelpemidler som hjelper til med internasjonalisering og lokalisere Python applikasjoner, med vekt på nettbaserte applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/B/Babel/babel-2.16.0.tar.gz
Nedlasting MD5 sum: 1dbf17974d7ccc9950757ed3c9618db0
Nedlastingsstørrelse: 9.0 MB
Estimert diskplass som kreves: 90 MB (legg til 30 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.1 SBU for tester)
pytest-8.3.2, Python-3.12.5 (med sqlite modulen), freezegun==0.3.12, og pytest-cov
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user Babel
Forutsatt pytest-8.3.2 er installert, men de andre valgfrie avhengigheter ikke er det, kan installasjonen testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install pytest-cov freezegun==0.3.12 && python3 /usr/bin/pytest deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
certifi modulen gir Mozillas nøye kurert samling av rotsertifikater for å validere påliteligheten til SSL sertifikater mens du verifiserer identiteten til TLS vertene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/c/certifi/certifi-2024.7.4.tar.gz
Nedlasting MD5 sum: ecf1d20e4c505fc07c8f421063d04103
Nedlastingsstørrelse: 164 KB
Estimert diskplass som kreves: 844 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user certifi
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Chardet er en universell tegnkodings detektor.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/c/chardet/chardet-5.2.0.tar.gz
Nedlasting MD5 sum: cc2d8cc9a751641463b4f7cfecad2ffa
Nedlastingsstørrelse: 2 MB
Estimert diskplass som kreves: 12 MB (legg til 1.1 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.3 SBU for tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user chardet
For å teste installasjonen kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
charset-normalizer biblioteket hjelper med å lese tekst fra en ukjent tegnkoding.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/c/charset-normalizer/charset-normalizer-3.3.2.tar.gz
Nedlasting MD5 sum: 0a4019908d9e50ff13138e8a794d9e2b
Nedlastingsstørrelse: 104 KB
Estimert diskplass som kreves: 1.1 MB (legg til 19 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
pytest-8.3.2, Python-3.12.5 (gjenoppbygg etter installasjonen SQLite-3.46.1), og pytest-cov
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user charset-normalizer
Forutsatt pytest-8.3.2 er installert, men de andre valgfrie avhengighetene ikke er det, kan installasjonen testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install pytest-cov && python3 /usr/bin/pytest deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Commonmark Python tolker for CommonMark Markdown spesifikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/c/commonmark/commonmark-0.9.1.tar.gz
Nedlasting MD5 sum: cd1dc70c4714d9ed4117a40490c25e00
Nedlastingsstørrelse: 94 KB
Estimert diskplass som kreves: 1.3 MB (legg til 30 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.1 SBU for tester)
pytest-8.3.2, flake8, og hypothesis
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user commonmark
Forutsatt pytest-8.3.2 er installert og de andre valgfrie avhengighetene ikke er, kan installasjonen testes med:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install hypothesis && python3 /usr/bin/pytest commonmark/tests/unit_tests.py python3 commonmark/tests/run_spec_tests.py deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Editables er et python bibliotek for å lage “redigerbare wheels.”
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/e/editables/editables-0.5.tar.gz
Nedlasting MD5 sum: 520de8c3a9dc5dfb2b365d104541c9de
Nedlastingsstørrelse: 4.6 KB
Estimert diskplass som kreves: 180 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user editables
For å teste installasjonen, utsted: pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Hatchling er en utvidbar, standard kompatibel byggebakstykke for python moduler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/h/hatchling/hatchling-1.25.0.tar.gz
Nedlasting MD5 sum: ac265366ccd17365db319dc95a9e5bc5
Nedlastingsstørrelse: 60 KB
Estimert diskplass som kreves: 2.3 MB
Estimert byggetid: mindre enn 0.1 SBU
editables-0.5, packaging-24.1, pathspec-0.12.1, pluggy-1.5.0, og trove-classifiers-2024.7.2
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user hatchling
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Hatch-Fancy-Pypi-Readme er et hatch programtillegg som fyller readme feltet inn i metadataene til en Python modul fra markup språkets dokumentasjonsfiler for modulen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/h/hatch-fancy-pypi-readme/hatch_fancy_pypi_readme-24.1.0.tar.gz
Nedlasting MD5 sum: f5f9e639f066c91f8e623ec6231beae9
Nedlastingsstørrelse: 32 KB
Estimert diskplass som kreves: 388 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user hatch-fancy-pypi-readme
For å teste installasjonen, sørg for at pytest-8.3.2 er installert og kjør:
python3 -m venv --system-site-packages testenv && testenv/bin/pip3 install 'hatch-fancy-pypi-readme[tests]' && testenv/bin/python -m pytest
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Hatch_vcs er et Hatch programtillegg for versjonskontroll med flere VCS .
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/h/hatch-vcs/hatch_vcs-0.4.0.tar.gz
Nedlasting MD5 sum: d801fe7c3e5955307748f2790bbb3488
Nedlastingsstørrelse: 9.9 KB
Estimert diskplass som kreves: 436 KB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
hatchling-1.25.0 og setuptools_scm-8.1.0
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user hatch_vcs
For å teste installasjonen, kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Idna modul gir støtte for IDNA protokollen (Internationalized Domain Names in Applications). som spesifisert i RFC 5891.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/i/idna/idna-3.7.tar.gz
Nedlasting MD5 sum: 31cc572cb7a6519159c927c998c64c79
Nedlastingsstørrelse: 188 KB
Estimert diskplass som kreves: 1.6 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user idna
For å teste installasjonen, kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
imagesize pakke analyserer bildefil deklarasjoner og returnerer bildestørrelsen og DPI. Det fungerer med JPEG/JPEG 2000/PNG/GIF/TIFF/SVG/Netpbm/WebP formater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/i/imagesize/imagesize-1.4.1.tar.gz
Nedlasting MD5 sum: 5a40586a25c07e1a8f16f6267252c321
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 1.8 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user imagesize
Testene for denne pakken er kjent for å være ødelagte. For å teste installasjonen uansett, kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Iniconfig er en liten og enkel INI-fil analysemodul.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/i/iniconfig/iniconfig-2.0.0.tar.gz
Nedlasting MD5 sum: 3c030b3f51dcc3aca585de05635600e4
Nedlastingsstørrelse: 4.5 KB
Estimert diskplass som kreves: 168 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user iniconfig
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Markdown er en Python analyser for John Grubers Markdown spesifikasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/M/Markdown/Markdown-3.6.tar.gz
Nedlasting MD5 sum: 1ee0e93da8bb2fc2b5830d5b225d3b2b
Nedlastingsstørrelse: 348 KB
Estimert diskplass som kreves: 4.1 MB (legg til 27 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user Markdown
Forutsatt pytest-8.3.2 og PyYAML-6.0.2 er installert og de andre valgfrie avhengighetene ikke er installert, kan installasjonen testes med:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install coverage && python3 /usr/bin/pytest --ignore=tests/test_syntax/extensions/test_md_in_html.py deactivate
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Meson_python modulen inneholder en Python build backend (PEP 517) for Meson prosjekter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/m/meson_python/meson_python-0.16.0.tar.gz
Nedlasting MD5 sum: 0278a447d7aef1cf20964aa369cd5d3b
Nedlastingsstørrelse: 80 KB
Estimert diskplass som kreves: 1.3 MB
Estimert byggetid: mindre enn 0.1 SBU
cython-3.0.11, git-2.46.0, pytest-8.3.2, Python-3.12.5 (gjenoppbygg etter installasjon SQLite-3.46.1), build, og pytest-mock
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user meson_python
For å teste installasjonen, sørg for at git-2.46.0, patchelf-0.18.0, og pytest-8.3.2 er
installert, og Python-3.12.5 har blitt gjenoppbygd
etter installasjonen av SQLite-3.46.1, deretter utsted
(HOME= hindrer at .gitconfig filen i hjemmemappen fra å
forstyrrer testene):
python3 -m venv --system-site-packages testenv && testenv/bin/pip3 install 'meson_python[test]' && HOME= testenv/bin/python -m pytest
To tester navngitt test_missing_version og test_pep621 er kjent for å mislykkes med
pyproject-metadata-0.8.0 eller nyere.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Msgpack er en effektiv binær serialiseringsformat. Den lar deg utveksle data mellom flere språk som JSON. Men det er raskere og mindre. Denne pakken gir CPython bindinger for lesing og skriving av Msgpack data.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/m/msgpack/msgpack-1.0.8.tar.gz
Nedlasting MD5 sum: 6f4d91b00537fd5069dc6bfc52ae5652
Nedlastingsstørrelse: 164 KB
Estimert diskplass som kreves: 1.9 MB (legg til 0.3 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU
cython-3.0.11 og setuptools_scm-8.1.0
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user msgpack
For å teste installasjonen kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Pathspec er et hjelpebibliotek for mønstermatching av filstier.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pathspec/pathspec-0.12.1.tar.gz
Nedlasting MD5 sum: 2b26ad1981bfa23748e115f00085624c
Nedlastingsstørrelse: 45 KB
Estimert diskplass som kreves: 912 KB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pathspec
For å teste installasjonen, kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Pluggy pakken gir brukerne muligheten til å utvide eller endre virkemåten til et vertsprogram ved å installere et programtillegg for det programmet. Programtilleggskoden vil kjøre som en del av den normale programkjøringen, endre eller forbedre visse aspekter av det. I hovedsak, pluggy muliggjør funksjonstilkobling slik at en bruker kan bygge “programtilleggssystemer”.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pluggy/pluggy-1.5.0.tar.gz
Nedlasting MD5 sum: ac0870be78ba0ee227a5c3955efeba59
Nedlastingsstørrelse: 68 KB
Estimert diskplass som kreves: 588 KB (legg til 18 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pluggy
For å teste installasjonen, utsted: pytest
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Pyproject-Metadata modulen inneholder en dataklasse for PEP 621 metadata med støtte for “core metadata” (PEP 643) generasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pyproject-metadata/pyproject_metadata-0.8.0.tar.gz
Nedlasting MD5 sum: 048ef3f91a5ba7c89a33894cb2c7725d
Nedlastingsstørrelse: 8 KB
Estimert diskplass som kreves: 124 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pyproject-metadata
For å teste installasjonen, utsted: pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Pytz biblioteket bringer IANA tz databasen inn i Python. Det tillater nøyaktig tidssoneberegning på tvers av plattformer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pytz/pytz-2024.1.tar.gz
Nedlasting MD5 sum: b26bb090d1fe96064019bf7068eeb801
Nedlastingsstørrelse: 312 KB
Estimert diskplass som kreves: 6.1 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user pytz
For å teste installasjonen, kjør pytest. Noen få advarsler er utstedt.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Setuptools_scm pakken brukes til å trekke ut Python pakkeversjoner fra git- eller hg-metadata i stedet for å erklære dem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/setuptools_scm/setuptools_scm-8.1.0.tar.gz
Nedlasting MD5 sum: d8046dce093a94dc382b68b45f6a6257
Nedlastingsstørrelse: 70 KB
Estimert diskplass som kreves: 1.6 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.4 SBU for tester)
git-2.46.0, Mercurial-6.8.1, pytest-8.3.2, Sudo-1.9.15p5, og build
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user setuptools_scm
For å teste installasjonen, sørg for at pytest-8.3.2 er
installert og kjør (HOME=
forhindrer at .gitconfig
filen i hjemmemappen forstyrrer testene):
python3 -m venv --system-site-packages testenv && testenv/bin/pip3 install build && HOME= testenv/bin/python -m pytest
Hvis git-2.46.0 og/eller Mercurial-6.8.1 ikke er installert, vil testene avhengig av den(e) som mangler, hoppes over. Noen tester kan påkalle Sudo-1.9.15p5 og be om et passord.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Smartypants oversetter vanlig ASCII tegnsetting til “smart” typografisk HTML enheter for tegnsetting.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/leohemsted/smartypants.py/archive/v2.0.1/smartypants-2.0.1.tar.gz
Nedlasting MD5 sum: 27957540f4718e892039b2ed208c78f3
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 344 KB
Estimert byggetid: mindre enn 0.1 SBU
Tarballen trekkes ut i smartypants.py-2.0.1 mappen.
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user smartypants
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Snowballstemmer pakken er liten strengbehandlingsspråk for å lage stammealgoritmer for bruk i informasjonsinnhenting, pluss en samling stammealgoritmer implementert ved å bruke den. Stemming kartlegger ulike former av samme ord til en felles “stamme” — for eksempel den engelske stammen kartlegger connection, connections, connective, connected, og connecting til connect. Å kjører et søk etter connected ville også finne dokumenter som bare har de andre formene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/snowballstemmer/snowballstemmer-2.2.0.tar.gz
Nedlasting MD5 sum: 4332ddc7bbee0f344a03915b2ad59a54
Nedlastingsstørrelse: 85 KB
Estimert diskplass som kreves: 3.8 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user snowballstemmer
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Sphinxcontrib-applehelp pakken er en Sphinx utvidelse som skriver ut Apple hjelpebøker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinxcontrib-applehelp/sphinxcontrib_applehelp-2.0.0.tar.gz
Nedlasting MD5 sum: e16bb1d6199f686d411c180e64a8e831
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 1.0 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU
pytest-8.3.2 og sphinx-8.0.2 (sirkulær avhengighet)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinxcontrib-applehelp
For å teste installasjonen, kjør pytest. Flere advarsler kan utstedes på grunn av bruk av utdaterte funksjoner.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Sphinxcontrib-devhelp pakken er en Sphinx utvidelse som skriver ut Devhelp dokumenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinxcontrib-devhelp/sphinxcontrib_devhelp-2.0.0.tar.gz
Nedlasting MD5 sum: 79ef5937b8397f724f4fb065073cd24c
Nedlastingsstørrelse: 16 KB
Estimert diskplass som kreves: 984 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
pytest-8.3.2 og sphinx-8.0.2 (sirkulær avhengighet)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinxcontrib-devhelp
For å teste installasjonen, kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Sphinxcontrib-htmlhelp pakken er en Sphinx utvidelse som gjengir HTML hjelpefiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinxcontrib-htmlhelp/sphinxcontrib-htmlhelp-2.0.1.tar.gz
Nedlasting MD5 sum: e85e6970dc25fbf5fd0f4fa66b897fab
Nedlastingsstørrelse: 28 KB
Estimert diskplass som kreves: 3.2 MB (legg til 26 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
pytest-8.3.2, sphinx-8.0.2 (sirkulær avhengighet), og html5lib-1.1
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinxcontrib-htmlhelp
Hvis de valgfrie avhengighetene er installert, kan pakken testes med:
pytest
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Sphinxcontrib-jquery pakken er en Sphinx utvidelse som inkluderer jQuery på nyere Sphinx utgivelser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinxcontrib-jquery/sphinxcontrib-jquery-4.1.tar.gz
Nedlasting MD5 sum: 46ea52845b17343ed6c61e6963fb265d
Nedlastingsstørrelse: 120 KB
Estimert diskplass som kreves: 552 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinxcontrib-jquery
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Sphinxcontrib-jsmath pakken er en Sphinx utvidelse som gjengir visning matematikk i HTML via JavaScript.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinxcontrib-jsmath/sphinxcontrib-jsmath-1.0.1.tar.gz
Nedlasting MD5 sum: e45179f0a3608b6766862e0f34c23b62
Nedlastingsstørrelse: 5.7 KB
Estimert diskplass som kreves: 324 KB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
pytest-8.3.2 og sphinx-8.0.2 (sirkulær avhengighet)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinxcontrib-jsmath
Installasjonen kan testes med følgende kommandoer:
sed -i 's/text()/read_&/' tests/test_jsmath.py && pytest
sed ... kommandoen er nødvendig på grunn av en endring i Sphinx API for versjoner større enn 5.0.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Sphinxcontrib-qthelp pakken er en Sphinx utvidelse som skriver ut QtHelp dokumenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinxcontrib-qthelp/sphinxcontrib_qthelp-2.0.0.tar.gz
Nedlasting MD5 sum: ed4f32003b71a54ac3d68aa651cb6573
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 18 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
pytest-8.3.2, sphinx-8.0.2 (sirkulær avhengighet), og defusedxml
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinxcontrib-qthelp
Installasjonen kan testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && testenv/bin/pip3 install defusedxml && testenv/bin/python -m pytest
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Sphinxcontrib-serializinghtml pakken er en Sphinx utvidelse som skriver ut “serialiserte” HTML filer (json og pickle).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinxcontrib_serializinghtml/sphinxcontrib_serializinghtml-2.0.0.tar.gz
Nedlasting MD5 sum: b536ce248d5ca134a30018692a17c6ca
Nedlastingsstørrelse: 16 KB
Estimert diskplass som kreves: 1.1 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
pytest-8.3.2 og sphinx-8.0.2 (sirkulær avhengighet)
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user sphinxcontrib-serializinghtml
For å teste installasjonen, først installer sphinx-8.0.2, deretter kjør pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Trove-Classifiers er et
Python bibliotek for å omfatte alle gyldige PyPI
klassifiserere som brukes til å kategorisere prosjekter og
utgivelser per PEP 301, for eksempel Topic :: System :: Filesystems og
Development Status :: 6 -
Mature.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/t/trove_classifiers/trove_classifiers-2024.7.2.tar.gz
Nedlasting MD5 sum: ee42acfdbe6fee98be4bcbe0fdaa937c
Nedlastingsstørrelse: 16 KB
Estimert diskplass som kreves: 276 KB
Estimert byggetid: mindre enn 0.1 SBU
Først hardkode pakkeversjonen inn i setup.py å omgå et problem som forårsaker
at generert wheel inneholder feil versjonsstreng når
calver modulen ikke er
installert:
sed -i '/calver/s/^/#/;$iversion="2024.7.2"' setup.py
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user trove-classifiers
For å teste installasjonen, utsted: pytest.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Typogrify gir filtre for å forbedre webtypografi, inkludert støtte for Django- og Jinja-maler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/t/typogrify/typogrify-2.0.7.tar.gz
Nedlasting MD5 sum: 63f38f80531996f187d2894cc497ba08
Nedlastingsstørrelse: 13 KB
Estimert diskplass som kreves: 404 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user typogrify
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Urllib3 modul er en kraftig, brukervennlig HTTP klient for Python. Det bringer mange kritiske funksjoner som mangler fra Python standardbibliotekene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/u/urllib3/urllib3-2.2.2.tar.gz
Nedlasting MD5 sum: efb79cfdef7b811687afe02ccaf67433
Nedlastingsstørrelse: 288 KB
Estimert diskplass som kreves: 3.2 MB (legg til 38 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (1.6 SBU for tester)
pytest-8.3.2, httpx, hypercorn, mock, PySocks, pytest-timeout, python-dateutil, quart, quart-trio, tornado, trio, og trustme
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user urllib3
Forutsatt pytest-8.3.2 er installert, men de andre valgfrie avhengigheter ikke er det, kan installasjonen testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv &&
source testenv/bin/activate &&
pip3 install trustme \
tornado \
python-dateutil \
mock \
pysocks \
pytest-timeout \
trio \
hypercom \
quart \
quart_trio \
httpx &&
python3 /usr/bin/pytest
deactivate
Det er kjent at noen få feil oppstår.
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
webencodings modulen er en Python implementering av WHATWG Encoding standard.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/w/webencodings/webencodings-0.5.1.tar.gz
Nedlasting MD5 sum: 32f6e261d52e57bf7e1c4d41546d15b8
Nedlastingsstørrelse: 12 KB
Estimert diskplass som kreves: 164 KB
Estimert byggetid: mindre enn 0.1 SBU
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user webencodings
-w dist: bygger det
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 å kjøre bygging inn systemmiljøet i stedet
for å lage et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URLer i
stedet).
--find-links dist:
ser etter lenker til arkiver som for eksempel wheel (.whl)
filer i mappen dist.
--no-cache-dir:
deaktiverer hurtiglageret for å forhindre en advarsel når
du installerer som root
bruker.
--no-user:
Forhindre feilaktig kjøring av install kommandoen som en
ikke-rootbruker.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelig versjon. Dette alternativet brukes
med install kommandoen hvis en versjon av pakken allerede
er installert.
--force-reinstall: Installer
pakken på nytt selv om den er oppdatert. Dette alternativet
brukes med install kommandoen hvis du installerer pakken på
nytt eller går tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig
med --upgrade eller --force-reinstall alternativene.
Ruby pakken inneholder Ruby utviklingsmiljø. Dette er nyttig for objektorientert skripting.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.4.tar.xz
Nedlasting MD5 sum: e696a878d05867a4d28e62fe9afb7862
Nedlastingsstørrelse: 16 MB
Estimert diskplass som kreves: 1.4 GB (med C API dokumenter og tester)
Estimert byggetid: 2.4 SBU (bruker parallellisme=4; med C API dokumenter; legg til 0.4 SBU for tester)
Doxygen-1.12.0, Graphviz-12.1.0, rustc-1.80.1, Tk-8.6.14, Valgrind-3.23.0, Berkeley DB (deprecated) og DTrace
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Installer Ruby ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-rpath \
--enable-shared \
--without-valgrind \
--without-baseruby \
ac_cv_func_qsort_r=no \
--docdir=/usr/share/doc/ruby-3.3.4 &&
make
Valgfritt bygg CAPI dokumentene ved å kjøre følgende kommandoer:
make capi
For å teste resultatene, utsted: make -j1 -k check. Merk at
å kjøre testpakken med parallelle jobber kan føre til at
testfeil blir skrevet ut som kryptiske unknown object meldinger, noe som
resulterer i et sammendrag som feilaktig påstår “all tests passed.”
Hvis miljøet har variabler relatert til proxy innstillinger
(all_proxy, ALL_PROXY, http_proxy, og etc.) aktivert, testpakken vil
avslutte tidlig med meldinger som net/ftp is not found. Sørg for at du
deaktiver disse variablene for testpakken. Det er over 26 000
tester Noen tester relatert til ipv6 kan indikere feil. Hvis
tester kjøres i en mappe som har en skrivbar komponent
(f.eks. /tmp) så kan flere ekstra tester mislykkes.
Nå, som root bruker:
make install
Hvis du har installert Ruby-On-Rails applikasjoner og
gjorde en oppgradering av Ruby ved å installere denne pakken, må
du kanskje kjøre en oppdatering der også (som root bruker):
cd /path/to/web/app bundle update rake
og start nettserveren som betjener applikasjonen på nytt.
--disable-rpath:
Denne bryteren deaktiverer innebygging av /usr/lib som et bibliotek søkesti inn i
ruby
programmet. Å gjøre det er ikke nødvendig (fordi /usr/lib er et system biblioteksbane), og
det kan føre til at testpakken kjører med systemets
libruby.so i stedet for det
nettopp bygde når Ruby er installert.
--enable-shared:
Denne bryteren gjør det mulig å bygge libruby delte bibliotek.
--without-baseruby:
Denne bryteren forhindrer bruk av systemets ruby hvis den allerede er
installert. Byggesystemet vil bruke den nybygde versjonen i
stedet.
ac_cv_func_qsort_r=no: Denne
bryteren forhindrer å bruke qsort_r funksjonen fra Glibc. Ruby gjør
litt aggressiv optimalisering forutsatt en viss
implementeringsdetaljer om sorteringsalgoritmen, men
antagelsen stemmer ikke med Glibc implementeringen. Med denne
bryteren vil Ruby bruke sin egen sorteringsimplementering i
stedet.
--disable-install-doc: Denne
bryteren deaktiverer bygging og installering av rdoc indekser
og C API dokumenter.
--disable-install-rdoc: Denne
bryteren deaktiverer bygging og installering av rdoc
indekser.
--disable-install-capi: Denne
bryteren deaktiverer bygging og installering av C API
dokumenter.
|
lager pakker med Ruby Gems |
|
|
administrerer en applikasjons avhengigheter gjennom hele livssyklusen |
|
|
er et kommandolinjegrensesnitt for eRuby, som gir et malsystem for Ruby |
|
|
er kommandoen for RubyGems, som er en sofistikert pakke administrator for Ruby. Denne er lik Pythons 'pip' kommando |
|
|
er det interaktive grensesnittet for Ruby |
|
|
er et make lignende byggeverktøy for Ruby |
|
|
er en interaktiv feilsøking for Ruby |
|
|
genererer Ruby dokumentasjon |
|
|
viser dokumentasjon fra en database på Ruby klasser, moduler og metoder |
|
|
er et tolket skriptspråk for raskt og enkel objektorientert programmering |
|
|
inneholder API funksjonene som kreves av Ruby |
Rust programmeringsspråket er utformet for å være et trygt, samtidig, praktisk språk.
Denne pakken oppdateres i en seksukers utgivelsessyklus. Fordi den er en så stor og treg pakke å bygge, er for øyeblikket bare nødvendig av noen få pakker i denne boken, og spesielt fordi nyere versjoner har en tendens til å bryte eldre mozilla pakker, mener BLFS redaktørene at den skal bare oppdateres når det er nødvendig (enten for å fikse problemer, eller for å la en ny versjon av en pakke bygges).
Som med mange andre programmeringsspråk, rustc (rustkompilatoren) trenger en binær for oppstartssekvensen. Den vil laste ned en stage0 binær ved starten av bygningen, så du kan ikke kompilere den uten en Internett tilkobling.
Selv om BLFS vanligvis installeres i /usr, når du senere oppgraderer til en
nyere versjon av rust de
gamle bibliotekene i /usr/lib/rustlib vil forbli, med div
hasher i navnene deres, men vil ikke være brukbare og vil
kaste bort plass. Redaktører anbefaler å plassere filene i
/opt mappen. Spesielt hvis du
har grunn til å gjenoppbygge med en modifisert
konfigurasjon (f.eks. ved å bruke sendt LLVM etter å ha
bygget med delt LLVM, kanskje for å kompilere crates for
arkitekturer som BLFS LLVM bygget ikke støtter) det er
mulig for installasjonen å etterlate et ødelagt
cargo
program. I en slik situasjon, fjern enten den eksisterende
installasjonen først, eller bruk et annet prefiks som f.eks
/opt/rustc-1.80.1-build2.
Hvis du foretrekker det, kan du selvfølgelig endre
prefikset til /usr.
Det nåværende rustbuild
byggesystemet vil bruke alle prosessorer, selv om den ikke
skalerer godt og ofte faller tilbake til bare å bruke én
kjerne mens du venter på at et bibliotek skal kompileres.
Imidlertid kan det stort sett begrenses til et spesifisert
antall prosessorer av en kombinasjon av å legge til bryteren
--jobs <N> (f.eks. '--jobs
4' for å begrense til 4 prosessorer) på hver påkalling av
python3 x.py
og ved hjelp av en
miljøvariabel CARGO_BUILD_JOBS=<N>. For øyeblikket er
dette ikke effektivt når noen av rustc testene kjøres.
Den nåværende versjonen av rusts num_cpus crate gjenkjenner nå at cgroups kan brukes til å begrense hvilke prosessorer det er tillatt å bruke. Så hvis din maskin mangler DRAM (vanligvis mindre enn 2 GB DRAM per kjerne) som kan være et alternativ til å ta CPUer offline. Les the section called “Bruk Linux Control Group for å begrense ressursbruken” for hvordan du bruker en cgroup.
For øyeblikket Rust gir ingen garantier for en stabil ABI.
Rustc bygger som standard for ALLE støttede arkitekturer, ved å bruke en sendt kopi av LLVM. I BLFS er bygget bare for X86 arkitektur. Hvis du har tenkt å utvikle rust crates, kan det hende at denne konstruksjonen ikke er bra nok til dine formål.
Byggetidene for denne versjonen når den gjentas på samme maskin er ofte rimelig konsekvent, men som med alle kompilatorer som bruker rustc det kan være noen veldig langsomme avvikere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://static.rust-lang.org/dist/rustc-1.80.1-src.tar.xz
Nedlasting MD5 sum: 0b00381728b6c005e95194f7e44cff33
Nedlastingsstørrelse: 191 MB
Estimert diskplass som kreves: 8.9 GB (298 MB installert); legg til 6,4 GB hvis du kjører testene
Estimert byggetid: 6.7 SBU (inkludert nedlastingstid; legg til 6,2 SBU for tester, begge med parallellisme=8)
En Internett-tilkobling er nødvendig for å bygge denne pakken.
libssh2-1.11.0, LLVM-18.1.7 (bygget med -D LLVM_LINK_LLVM_DYLIB=ON slik at rust kan lenke til systemets LLVM i stedet for å bygge den sendte versjonen), og SQLite-3.46.1
Hvis en anbefalt avhengighet ikke er installert, en sendt kopi i Rustc kildetarballen blir bygd og brukt.
GDB-15.1 (brukes av testpakken hvis den er til stede), git-2.46.0 (kreves av testpakken), cranelift, jemalloc, libgccjit (les parameterforklaringer i GCC-14.2.0), og libgit2
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/rust
For å installere i /opt mappen,
fjerne evt eksisterende /opt/rustc symbolkobling og opprett en ny
mappe (dvs. med et annet navn hvis du prøver en modifisert
versjon av samme versjon). Som root bruker:
mkdir -pv /opt/rustc-1.80.1 && ln -svfn rustc-1.80.1 /opt/rustc
Hvis flere versjoner av Rust er installert i /opt, endre til en annen versjonen krever
bare å endre /opt/rustc
symbolsk lenke og deretter kjøre ldconfig.
Opprett en passende config.toml
fil som vil konfigurere bygget.
cat << EOF > config.toml
# see config.toml.example for more possible options
# See the 8.4 book for an old example using shipped LLVM
# e.g. if not installing clang, or using a version before 13.0
# Tell x.py the editors have reviewed the content of this file
# and updated it to follow the major changes of the building system,
# so x.py will not warn us to do such a review.
change-id = 125535
[llvm]
# by default, rust will build for a myriad of architectures
targets = "X86"
# When using system llvm prefer shared libraries
link-shared = true
[build]
# omit docs to save time and space (default is to build them)
docs = false
# install extended tools: cargo, clippy, etc
extended = true
# Do not query new versions of dependencies online.
locked-deps = true
# Specify which extended tools (those from the default install).
tools = ["cargo", "clippy", "rustdoc", "rustfmt"]
# Use the source code shipped in the tarball for the dependencies.
# The combination of this and the "locked-deps" entry avoids downloading
# many crates from Internet, and makes the Rustc build more stable.
vendor = true
[install]
prefix = "/opt/rustc-1.80.1"
docdir = "share/doc/rustc-1.80.1"
[rust]
channel = "stable"
description = "for BLFS 12.2"
# Enable the same optimizations as the official upstream build.
lto = "thin"
codegen-units = 1
[target.x86_64-unknown-linux-gnu]
# NB the output of llvm-config (i.e. help options) may be
# dumped to the screen when config.toml is parsed.
llvm-config = "/usr/bin/llvm-config"
[target.i686-unknown-linux-gnu]
# NB the output of llvm-config (i.e. help options) may be
# dumped to the screen when config.toml is parsed.
lvm-config = "/usr/bin/llvm-config"
EOF
python3 x.py
kommandoer kan gi en advarselsmelding klagende på
no codegen-backends config
matched the requested path to build a codegen
backend. Og det gitte “forslaget”
(add backend to
codegen-backends in config.toml) vil ikke stilne
det. Denne advarselen er bogus
og det bør ignoreres.
Kompiler Rust ved å kjøre følgende kommandoer:
{ [ ! -e /usr/include/libssh2.h ] ||
export LIBSSH2_SYS_USE_PKG_CONFIG=1; } &&
{ [ ! -e /usr/include/sqlite3.h ] ||
export LIBSQLITE3_SYS_USE_PKG_CONFIG=1; } &&
python3 x.py build
Testpakken vil generere noen meldinger i systemd journal for feller på ugyldige opkoder, og for segmenteringsfeil. I seg selv er disse ingenting å bekymre seg for, bare en måte for test å avslutte.
Å kjøre testene (igjen ved å bruke alle tilgjengelige CPUer) utsted:
SSL_CERT_DIR=/etc/ssl/certs \
python3 x.py test --verbose --no-fail-fast --keep-stage-std=1 | \
tee rustc-testlog
Tre tester navngitt tests/run-make/print-cfg, tests/run-make/print-to-output, og
core::config::tests::download_ci_llvm er
kjent for å mislykkes.
Som med alle store testserier, kan noen tester mislykkes på noen maskiner - hvis antallet ekstra feil er lavt, sjekk loggen for "failures:" og se gjennom linjene over det, spesielt 'stderr:' linjer. Enhver omtale av SIGSEGV eller signal 11 i en sviktende test er en grunn til bekymring.
Hvis du får noen andre sviktende tester som rapporterer et utgavenummer, så bør du søke etter det problemet. For eksempel når rustc >= 1.41.1 ble bygget med en versjon av sysllvm før 10.0 testen for problem 69225 mislyktes https://github.com/rust-lang/rust/issues/69225 og det burde være betraktet som en kritisk feil (de ga ut 1.41.1 på grunn av det). De fleste andre feil vil ikke være kritiske.
Derfor bør du bestemme antall feil. Antall tester som har bestått og ikke bestått finner du ved å kjøre:
grep '^test result:' rustc-testlog |
awk '{sum1 += $4; sum2 += $6} END { print sum1 " passed; " sum2 " failed" }'
De andre tilgjengelige feltene er $8 for de som ble ignorert (dvs. hoppet over), $10 for "målt" og $12 for "filtrert ut", men begge de to siste er sannsynligvis null.
Nå, som root bruker,
installer pakken:
Hvis sudo
eller su er
påberopt for å bytte til root bruker, sikre at LIBSSH2_SYS_USE_PKG_CONFIG og LIBSQLITE3_SYS_USE_PKG_CONFIG er riktig
sendt ellers kan følgende kommando gjenoppbygge
cargo med
sendte kopier av libssh2 og sqlite. For sudo, bruk --preserve-env=LIB{SSH2,SQLITE3}_SYS_USE_PKG_CONFIG
alternativet. For su, ikke bruk - eller --login
alternativene.
python3 x.py install rustc std &&
install -vm755 \
build/host/stage1-tools/*/*/{cargo{,-clippy,-fmt},clippy-driver,rustfmt} \
/opt/rustc-1.80.1/bin &&
install -vDm644 \
src/tools/cargo/src/etc/_cargo \
/opt/rustc-1.80.1/share/zsh/site-functions/_cargo &&
install -vm644 src/tools/cargo/src/etc/man/* \
/opt/rustc-1.80.1/share/man/man1
Fortsatt som root bruker,
fiks installasjonen av dokumentasjonen og symbolkobling av
Zsh fullføringsfilen på
riktig plassering:
rm -fv /opt/rustc-1.80.1/share/doc/rustc-1.80.1/*.old &&
install -vm644 README.md \
/opt/rustc-1.80.1/share/doc/rustc-1.80.1 &&
install -vdm755 /usr/share/zsh/site-functions &&
ln -sfv /opt/rustc/share/zsh/site-functions/_cargo \
/usr/share/zsh/site-functions
Til slutt, deaktiver eksporterte miljøvariabler:
unset LIB{SSH2,SQLITE3}_SYS_USE_PKG_CONFIG
ln -svfn rustc-1.80.1
/opt/rustc: hvis dette ikke er den første
bruken av /opt/rustc
symbolkobling, overskriv den ved å tvinge, og bruk
'-n'-flagget for å unngå å få forvirrende resultater fra
f.eks. ls -l.
targets = "X86": dette unngår å
bygge alt tilgjengelig linux krysskompilatorer (AArch64,
MIPS, PowerPC, SystemZ, etc). Dessverre, rust insisterer på å
installere kildefiler for disse nedenfor /opt/rustc/lib/src.
extended = true: dette
installerer flere verktøy (spesifisert av tools oppføring) ved siden av rustc.
tools = ["cargo", "clippy", "rustdoc",
"rustfmt"]: bygg bare verktøyene fra 'standard'
profilen i binær kommando rustup som anbefales for de
fleste brukere. De andre verktøyene er neppe nyttige med
mindre du bruker (gammel) kode analysatorer eller redigering
av standardbiblioteket.
channel = "stable": dette sikrer
at kun stabile funksjoner kan brukes, standard i config.toml er å bruke
utviklingsfunksjoner, som ikke passer for en utgitt versjon.
[target.x86_64-unknown-linux-gnu]: syntaksen
til config.toml krever en
llvm-config oppføring for hvert
mål som system-llvm skal brukes for. Endre målet til
[target.i686-unknown-linux-gnu]
hvis du bygger på 32-bit x86. Hele denne delen kan utelates
hvis du ønsker å bygge mot den sendte llvm, eller ikke har
clang, men den resulterende bygget vil være større og ta
lengre tid.
export LIBSSH2_SYS_USE_PKG_CONFIG=1: tillat cargo å koble til systemets libssh2.
export LIBSQLITE3_SYS_USE_PKG_CONFIG=1: Tillat cargo for å linke til systemets sqlite.
SSL_CERT_DIR=/etc/ssl/certs:
Arbeid rundt et problem som forårsaker testfeil med CA
sertifikatlageroppsettet som brukes av make-ca-1.14.
--verbose: denne
bryteren kan noen ganger gi mer informasjon om en test som
mislykkes.
--no-fail-fast: denne
bryteren sikrer at testpakken ikke vil stoppe ved den første
feilen.
--keep-stage-std 1:
denne bryteren forhindrer x.py
test fra å bygge om hele pakken for en eller
annen ukjent årsak.
install ... /opt/rustc-1.80.1/...: disse kommandoene installerer eksplisitt noen Rust komponenter. De brukes i stedet for å stole på x.py install fordi de sistnevnte ville gjenoppbygge disse komponentene av en eller annen ukjent grunn.
Hvis du har installert rustc i /opt, må du oppdatere følgende
konfigurasjonsfiler slik at rustc er riktig funnet av andre pakker
og systemprosesser.
Som root bruker, opprett
/etc/profile.d/rustc.sh
filen:
cat > /etc/profile.d/rustc.sh << "EOF"
# Begin /etc/profile.d/rustc.sh
pathprepend /opt/rustc/bin PATH
# End /etc/profile.d/rustc.sh
EOF
Oppdater gjeldende PATH umiddelbart etter installasjonen for ditt nåværende skall som en vanlig bruker:
source /etc/profile.d/rustc.sh
|
gir lint sjekker for en cargo pakke |
|
|
formaterer alle bin og lib filer i gjeldende crate ved hjelp av rustfmt |
|
|
er Pakkebehandler for Rust |
|
|
gir lint sjekker for rust |
|
|
er et innpakningsskript for gdb, som trekker inn
Python pretty-printing moduler installert i
|
|
|
er et innpakningsskript for et grafisk grensesnitt til gdb som kjører i en nettleser |
|
|
er et innpakningsskript for LLDB (LLVM-feilsøkeren) rekke inn Python pretty-printing modulene |
|
|
er rust kompilatoren |
|
|
genererer dokumentasjon fra rust kildekode |
|
|
formaterer rust kode |
|
|
er Rust Standard Bibliotek, grunnlaget for flyttbar Rust programvare |
rust-bindgen pakken inneholder et verktøy som genererer rustbindinger fra C/C++ deklarasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/rust-lang/rust-bindgen/archive/v0.70.0/rust-bindgen-0.70.0.tar.gz
Nedlasting MD5 sum: 05dfba889299f3b666c43bbd1256af9f
Nedlastingsstørrelse: 2.3 MB
Estimert diskplass som kreves: 178 MB
Estimert byggetid: 0.5 SBU (med parallellisme=8)
rustc-1.80.1 og LLVM-18.1.7 (med Clang, kjøretid)
En Internett-tilkobling er nødvendig for å bygge denne pakken.
Installer rust-bindgen ved å kjøre følgende kommandoer:
cargo build --release
For å teste resultatene, utsted: cargo test --release.
Nå, som root bruker:
install -v -m755 target/release/bindgen /usr/bin
SCons er et verktøy for å bygge programvare (og andre filer) implementert i Python.
Når du utvider tarballen, utvides pakken til scons-4.8.0, ikke de forventede SCons-4.8.0.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/scons/SCons-4.8.0.tar.gz
Nedlasting MD5 sum: 68a13ef0d3515044544f8bd0949befa2
Nedlastingsstørrelse: 3.1 MB
Estimert diskplass som kreves: 50 MB
Estimert byggetid: mindre enn 0.1 SBU
Bygg pakken:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Som root bruker, installer
pakken:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user SCons && install -v -m664 *.1 /usr/share/man/man1
S-Lang (slang) er et tolket språk som kan være innebygd i en applikasjon for å lage applikasjonen utvidbar. Det gir fasiliteter som kreves av interaktive applikasjoner som skjerm-/skjermstyring, tastaturinndata og tastaturkart.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.jedsoft.org/releases/slang/slang-2.3.3.tar.bz2
Nedlasting MD5 sum: 69015c8300088373eb65ffcc6ed4db8c
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 22 MB (legg til 15 MB for tester)
Estimert byggetid: 0.4 SBU (legg til 0,5 SBU for tester)
Denne pakken støtter ikke parallellbygging.
Installer slang ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--with-readline=gnu &&
make -j1 RPATH=
For å teste resultatene, utsted: LC_ALL=C make check.
Nå, som root bruker:
make install_doc_dir=/usr/share/doc/slang-2.3.3 \
SLSH_DOC_DIR=/usr/share/doc/slang-2.3.3/slsh \
RPATH= install
--with-readline=gnu:
Denne parameteren setter GNU Readline skal brukes av
parsergrensesnittet i stedet for slang interne versjon.
RPATH=: Dette
overstyrer make
variabel forhindrer hardkoding av biblioteksøkestier (rpath)
inn i binære kjørbare filer og delte biblioteker. Denne
pakken gjør det ikke trenger rpath for en installasjon til
standardplasseringen, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
install_doc_dir=/usr/share/doc/slang-2.3.3
SLSH_DOC_DIR=/usr/share/doc/slang-2.3.3/slsh:
Dette overstyrer make variabler sikrer
installasjon av denne pakken med en versjonert
dokumentasjonsinstallasjonsmappe.
Subversion er et versjonskontrollsystem som er designet for å være en overbevisende erstatning for CVS i åpen kildekode fellesskapet. Det utvider og forsterker CVS' funksjonssett, samtidig som det opprettholder et lignende grensesnitt for de som allerede er kjent med CVS. Disse instruksjonene installerer klient- og serverprogramvaren som brukes til manipulere et Subversion depot. Opprettelse av et depot er dekket i Kjøre en Subversion Server.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/subversion/subversion-1.14.3.tar.bz2
Nedlasting MD5 sum: 19756a5ceb32a022698a66e48616ef6b
Nedlastingsstørrelse: 8.2 MB
Estimert diskplass som kreves: 193 MB (legg til 189 MB for bindinger, 54 MB for dokumenter, 1,3 GB for tester)
Estimert byggetid: 0.5 SBU (Bruker parallellisme=4; legg til 2.0 SBU for bindinger, 30 SBU for tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/subversion-1.14.3-upstream_fixes-1.patch
Apr-Util-1.6.3 og SQLite-3.46.1
Serf-1.3.10 (for håndtering av http:// og https:// URLs)
Apache-2.4.62, Boost-1.86.0, Cyrus SASL-2.1.28, dbus-1.14.10, Doxygen-1.12.0 (for å generere HTML dokumentasjon), gnome-keyring-46.2, libsecret-0.21.4, Py3c-1.4 (for python bindinger og tester), Python-3.12.5 (med sqlite støtte for testene), Ruby-3.3.4, SWIG-4.2.1 (for å bygge Perl, Python og Ruby bindinger), og UTF8proc
En av OpenJDK-22.0.2, Dante eller Jikes, JUnit 4 (for å teste Java bindingene) og apache-ant-1.10.14.
Først må du tilpasse noen Python skript for å bruke python3:
grep -rl '^#!.*python$' | xargs sed -i '1s/python/&3/'
Deretter fikser du bygging av denne pakken med GCC 14:
patch -Np1 -i ../subversion-1.14.3-upstream_fixes-1.patch
Etter å ha modifisert SWIG bindingene som vi gjorde med oppdateringen, byggesystemet må regenereres slik at bindingene fanger opp endringene:
touch build/generator/swig/*.py &&
mv -v build-outputs.mk{,.old} &&
./autogen.sh --release
Installer Subversion ved å kjøre følgende kommandoer:
PYTHON=python3 \
./configure --prefix=/usr \
--disable-static \
--with-apache-libexecdir \
--with-utf8proc=internal &&
make
Hvis du har Doxygen-1.12.0 installert og du ønsker å bygge API dokumentasjon, kjør:
doxygen doc/doxygen.conf
Hvis du ønsker å bygge Java bindingene, send --enable-javahl parameteren til configure kommandoen. I
tillegg, hvis du vil kjøre Java testpakken, må du spesifisere
plasseringen av JUnit filen
ved å legge til --with-junit=<path to
junit jar> (for eksempel --with-junit=/usr/local/java/lib/junit-4.13.jar)
til configure.
JUnit jar filen er ikke lenger inkludert i apache-ant-1.10.14 og må lastes ned
for seg selv. For å bygge Java bindingene, kjør følgende
kommando:
make -j1 javahl
Hvis du vil kompilere Perl, Python, eller Ruby bindinger, kjør en av følgende kommandoer:
make swig-pl # for Perl make swig-py \ swig_pydir=/usr/lib/python3.12/site-packages/libsvn \ swig_pydir_extra=/usr/lib/python3.12/site-packages/svn # for Python make swig-rb # for Ruby
For å teste resultatene, kjør: make check. Fire tester i
commit_tests.py, prop_tests.py, og update_tests.py pakkene er kjent for å
mislykkes. På grunn av endringer i Python-3.12, kan du
forvente å se rundt 200 syntaksadvarsler under testpakken på
grunn av ugyldige escape sekvenser.
For å teste resultatene av noen av SWIG bindinger, kan du bruke en av følgende kommandoer: make check-swig-pl, make check-swig-py, or make check-swig-rb.
Nå, som root bruker:
make install && install -v -m755 -d /usr/share/doc/subversion-1.14.3 && cp -v -R doc/* /usr/share/doc/subversion-1.14.3
Hvis du bygde Java bindingene, kjør følgende kommando som
root brukeren for å
installere dem:
make install-javahl
Hvis du bygde Perl,
Python, eller Ruby bindinger, kjør noe av de følgende
kommandoer som root bruker
for å installere dem:
make install-swig-pl make install-swig-py \ swig_pydir=/usr/lib/python3.12/site-packages/libsvn \ swig_pydir_extra=/usr/lib/python3.12/site-packages/svn make install-swig-rb
Java bindingene må installeres for at testene skal kjøre, siden testene prøver å se etter dem i CLASSPATH. For å teste resultater av Java bindingsbygget, kjør LANG=C make check-javahl.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-apache-libexecdir: Hvis
Apache-2.4.62 er installert, de delte
Apache moduler blir bygget.
Denne bryteren gjør det mulig å installere disse modulene i
Apache sin konfigurert modul
mappe i stedet for /usr/libexec. Det har ingen effekt hvis
Apache ikke er installert.
--with-utf8proc=internal: Fjern
disse bryterne hvis du har installert de valgfrie
avhengighetene.
--enable-javahl: muliggjør
kompilering av Java høynivå bindinger. Kjøre make javahl er nødvendig å
gjøre kompilasjonen.
--with-junit=<location of the junit
jar file>: gir plasseringen av junit jar, ellers
kan javahl testene ikke bli kjørt.
--disable-gmock: Ikke bruk
Googlemock testing rammeverk.
/etc/subversion/config er
Subversion
systemomfattende konfigurasjonsfil. Denne filen brukes til
å spesifisere standarder for forskjellige svn kommandoer.
~/.subversion/config er
brukerens personlige konfigurasjonsfil. Den brukes til å
overstyre standardinnstillingene for hele systemet i
/etc/subversion/config.
|
er et kommandolinjeklientprogram som brukes til å få tilgang til Subversion depoter |
|
|
er et verktøy for å lage, justere eller reparere et Subversion depot |
|
|
er et referanseverktøy |
|
|
er et program for filtrering av Subversion depot dumpfile format strømmer |
|
|
er FSFS (FileSystem atop of the FileSystem - Subversion filsystemimplementering) verktøy for depot manipulering |
|
|
er et verktøy for å inspisere et Subversion depot |
|
|
er en Multiple URL Command Client for Subversion |
|
|
er et verktøy for å dumpe eller laste et eksternt Subversion depot |
|
|
er et tilpasset frittstående serverprogram, i stand til å kjøre som en nisse prosess eller påberopt av SSH |
|
|
er Subversion depot synkroniseringsverktøy |
|
|
brukes til å rapportere versjonsnummeret og tilstanden til en fungerende Subversion depot kopi |
|
|
er støttebibliotekene som brukes av Subversion programmer |
|
|
er et programtilleggmodul for Apache HTTP server, brukes til å autentisere brukere til et Subversion depot over Internett eller et intranett |
|
|
er et programtilleggmodul for Apache HTTP server, brukes for å gjøre et Subversion depot tilgjengelig for andre over Internett eller et intranett |
Denne delen vil beskrive hvordan du setter opp, administrerer og sikrer en Subversion server.
Følgende instruksjoner vil installere en Subversion server, som vil bli satt opp for å bruke OpenSSH som en sikker fjerntilgangs metode, med svnserve tilgjengelig for anonym adgang.
Konfiguringen av Subversion server består av følgende trinn:
Du må være bruker root for
den første delen av konfigurasjonen. Opprett svn bruker og gruppe med følgende
kommandoer:
groupadd -g 56 svn && useradd -c "SVN Owner" -d /home/svn -m -g svn -s /bin/false -u 56 svn
Hvis du planlegger å ha flere depoter, bør du ha en gruppe
dedikert til hvert depot for enkel administrasjon. Opprett
svntest gruppe for
testdepot og legg til svn
bruker til den gruppen med følgende kommandoer:
groupadd -g 57 svntest && usermod -G svntest -a svn
I tillegg bør du sette umask 002 samtidig som arbeider med et depot slik at alle nye filer vil være skrivbare av eier og gruppe. Dette gjøres obligatorisk ved å lage et innpakningsskript for svn og svnserve:
mv /usr/bin/svn /usr/bin/svn.orig && mv /usr/bin/svnserve /usr/bin/svnserve.orig && cat >> /usr/bin/svn << "EOF"#!/bin/sh umask 002 /usr/bin/svn.orig "$@"EOF cat >> /usr/bin/svnserve << "EOF"#!/bin/sh umask 002 /usr/bin/svnserve.orig "$@"EOF chmod 0755 /usr/bin/svn{,serve}
Hvis du bruker Apache for å jobbe med depotet over HTTP, selv for anonym tilgang, bør du pakke inn /usr/sbin/httpd i et lignende skript.
Det er flere måter å sette opp et subversion depot. Det anbefales å ta en titt på SVN Book tilsvarende kapittel. Et grunnleggende depot kan settes opp med instruksjonene nedenfor.
Opprett et nytt Subversion
depot med følgende kommandoer (som root bruker):
install -v -m 0755 -d /srv/svn && install -v -m 0755 -o svn -g svn -d /srv/svn/repositories && svnadmin create /srv/svn/repositories/svntest
Nå som depotet er opprettet, skal det fylles ut med noe
nyttig. Du må ha en forhåndsdefinert mappe utforming satt
opp akkurat slik du vil at depotet ditt skal se ut. For
eksempel, her er et eksempel på BLFS utformingsoppsett med
en rot av svntest/. Du må
sette opp et mappetre som ligner på følgende:
svntest/ # The name of the repository
trunk/ # Contains the existing source tree
BOOK/
bootscripts/
edguide/
patches/
scripts/
branches/ # Needed for additional branches
tags/ # Needed for tagging release points
Når du har opprettet mappeoppsettet som vist ovenfor, er du klar til å utføre den første importen:
svn import -m "Initial import." \
</path/to/source/tree> \
file:///srv/svn/repositories/svntest
Endre nå eier- og gruppeinformasjon for depoet, og legg til
en uprivilegert bruker for svn og svntest gruppene:
chown -R svn:svntest /srv/svn/repositories/svntest &&
chmod -R g+w /srv/svn/repositories/svntest &&
chmod g+s /srv/svn/repositories/svntest/db &&
usermod -G svn,svntest -a <username>
svntest er gruppen
tilordnet til svntest depotet. Som nevnt tidligere, letter
dette administrasjon av flere depoter ved bruk av
OpenSSH for autentisering.
Fremover, må du legge til den uprivilegerte brukeren din og
eventuelle andre brukere som du ønsker å ha skrivetilgang
til depotet, til svn og
svntest gruppene.
I tillegg vil du legge merke til at i det nye depotet
db mappen er set-groupID.
Hvis begrunnelsen ikke umiddelbart er åpenbart når du
bruker en ekstern autentiseringsmetode (som for eksempel
ssh), den
klebrige biten er satt slik at alle nye filer vil eies av
brukeren, med gruppen svntest. Hvem som helst i svntest gruppen kan opprette filer, men
fortsatt gi hele gruppen skrivetilgang til disse filene.
Dette unngår å låse ut andre brukere fra depotet.
Gå nå tilbake til en uprivilegert brukerkonto, og ta en titt på det nye depotet med svnlook:
svnlook tree /srv/svn/repositories/svntest/
Du må kanskje logge ut og inn igjen for å oppdatere
gruppemedlemskapet ditt. su
<username>
bør fungere også.
Som nevnt tidligere, vil disse instruksjonene konfigurere serveren til å kun bruke ssh for skrivetilgang til depoet og å gi anonym tilgang ved hjelp av svnserve. Det er flere andre måter å tilby tilgang til depotet. Disse tilleggskonfigurasjonene er best forklart på https://svnbook.red-bean.com/.
Tilgangskonfigurasjon må gjøres for hvert depot. Opprett
svnserve.conf filen for
svntest depoet ved hjelp av følgende kommandoer:
cp /srv/svn/repositories/svntest/conf/svnserve.conf \
/srv/svn/repositories/svntest/conf/svnserve.conf.default &&
cat > /srv/svn/repositories/svntest/conf/svnserve.conf << "EOF"
[general]
anon-access = read
auth-access = write
EOF
Det er ikke mye i konfigurasjonsfilen i det hele tatt. Du
vil merke at kun den generelle delen kreves. Ta en titt på
svnserve.conf.default filen
for informasjon om bruk av svnserve sin innebygde
autentiseringsmetode.
For å starte serveren ved oppstart, installer svnserve.service enheten fra blfs-systemd-units-20240801
pakken:
make install-svnserve
I tillegg krever instruksjonene ovenfor at svn serveren bruker umask 002 slik at alle nye filer vil kunne skrives av eier og gruppe. Dette kan oppnås ved å lage en systemd enhetsoverstyringsfil ved å kjøre følgende kommando:
mkdir -p /etc/systemd/system/svnserve.service.d echo "UMask=0002" > /etc/systemd/system/svnserve.service.d/99-user.conf
Alternativer som sendes til svnserve nissen kan
endres i /etc/default/svnserve.
SWIG (Simplified Wrapper and Interface Generator) er en kompilator som integrerer C og C++ med språk inkludert Perl, Python, Tcl, Ruby, PHP, Java, JavaScript, C#, D, Go, Lua, Octave, R, Racket, Scilab, Scheme, og Ocaml. SWIG kan også eksportere parsetreet til Lisp s-expressions og XML.
SWIG leser kommentert C/C++ deklarasjonsfiler og lager innpakningskode (glue kode) for å lage den tilsvarende C/C++ bibliotekene som er tilgjengelige for de oppførte språk, eller for å utvide C/C++ programmer med et skriptspråk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/swig/swig-4.2.1.tar.gz
Nedlasting MD5 sum: 7697b443d7845381d64c90ab54d244af
Nedlastingsstørrelse: 8.0 MB
Estimert diskplass som kreves: 81 MB (1.8 GB med tester)
Estimert byggetid: 0.1 SBU (legg til 7.7 SBU for tester; begge bruker parallellisme=4)
Boost-1.86.0 for tester, og alle de nevnte språkene i innledningen, som kjøretidsavhengigheter
Installer SWIG ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--without-javascript \
--without-maximum-compile-warnings &&
make
For å teste resultatene, kjør: PY3=1 make TCL_INCLUDE= -k
check. Deaktiveringen av variabelen
TCL_INCLUDE er nødvendig siden den
ikke er riktig satt av configure. Testene utføres kun for
språk installert på maskinen din, så diskplass og SBU-verdier
gitt for testene kan variere, og bør betraktes som bare
antakelser av størrelser. I følge SWIG sin dokumentasjon, svikt hos noen
tester bør ikke anses som skadelige. Go testene er buggy og
kan generere mye meningsløst utdata.
Nå, som root bruker:
make install && cp -v -R Doc -T /usr/share/doc/swig-4.2.1
--without-maximum-compile-warnings:
deaktiverer kompilator ansi samsvarshåndhevelse, som utløser
feil i Lua deklarasjonsfiler
(startet med Lua 5.3).
--without-<language>: gjør
det mulig å deaktivere oppbygging av tester og eksempler for
<language>, men alle språk evner til SWIG er alltid bygget. Denne bryteren
brukes til JavaScript fordi
SWIG implementeringen er ufullstendig og mange tester
mislykkes på grunn av API endringer i Node-20.
Tk pakken inneholder en TCL GUI Verktøysett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/tcl/tk8.6.14-src.tar.gz
Nedlasting MD5 sum: cf2aaac0478ef468b48e65c10e6b0d07
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 25 MB
Estimert byggetid: 0.3 SBU (legg til 2.0 SBU for tester)
Installer Tk ved å kjøre følgende kommandoer:
cd unix &&
./configure --prefix=/usr \
--mandir=/usr/share/man \
$([ $(uname -m) = x86_64 ] && echo --enable-64bit) &&
make &&
sed -e "s@^\(TK_SRC_DIR='\).*@\1/usr/include'@" \
-e "/TK_B/s@='\(-L\)\?.*unix@='\1/usr/lib@" \
-i tkConfig.sh
Det anbefales ikke å kjøre testene. Feil vil bli rapportert i løpet av tester, avhengig av skjermoppløsningen/funksjonene, installerte fonter og andre X relaterte parametere, men sluttrapporten kan vise 0 feil. Noen tester vil stjele fokus, og noen kan krasje X serveren. Å teste resultatene uansett, kjør: make test. Sørg for å kjøre det fra en X Window skjermenhet med GLX utvidelsene lastet, men likevel kan testene henge.
Nå, som root bruker:
make install && make install-private-headers && ln -v -sf wish8.6 /usr/bin/wish && chmod -v 755 /usr/lib/libtk8.6.so
--enable-64bit: Denne
bryteren brukes til å aktivere 64 bit støtte i Tk på 64 bit operativsystemer.
make install-private-headers: Denne kommandoen brukes til å installere Tk bibliotekgrensesnitt deklarasjoner som brukes av andre pakker hvis de lenker til Tk biblioteket.
ln -v -sf wish8.6 /usr/bin/wish: Dette kommandoen brukes til å lage en symbolsk kompatibilitetskobling til wish8.6 filen siden mange pakker forventer en fil navngitt wish.
sed -e ... tkConfig.sh: Tk pakken forventer at kildetreet er bevart slik at pakker avhengig av det for deres kompilering kan bruke det. Denne sed fjerner referansene til byggemappen og erstatter dem med sunnere systemomfattende plasseringer.
unifdef pakken inneholder et verktøy som er nyttig for å fjerne forbehandler betingelser fra kode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://dotat.at/prog/unifdef/unifdef-2.12.tar.gz
Nedlasting MD5 sum: b225312c110cd2600ca7166bd0419751
Nedlastingsstørrelse: 88 KB
Estimert diskplass som kreves: 1.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer unifdef ved å kjøre følgende kommandoer:
make
For å teste resultatene, utsted: make test.
Nå, som root bruker:
make prefix=/usr install
Vala er et nytt programmeringsspråk som har som mål å bringe moderne programmeringsspråkfunksjoner til GNOME utviklere uten å pålegge noen ekstra kjøretidskrav og uten å bruke en annen ABI sammenlignet med applikasjoner og biblioteker skrevet i C.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/vala/0.56/vala-0.56.17.tar.xz
Nedlasting MD5 sum: 134075855867fdd9c51ca7555c4951bb
Nedlastingsstørrelse: 3.8 MB
Estimert diskplass som kreves: 160 MB (legg til 19 MB for tester)
Estimert byggetid: 0.5 SBU (legg til 1.0 SBU for tester; begge bruker parallellisme=4)
GLib-2.80.4 (GObject Introspection påkrevd for tester)
Graphviz-12.1.0 (Påkrevd for valadoc)
dbus-1.14.10 (Nødvendig for tester), libxslt-1.1.42 (Nødvendig for å generere dokumentasjonen), help2man, jing, og weasyprint
Installer Vala ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
bootstrap: Dette make målet tvinger
byggesystemet å bygge pakken to ganger og bruke vala kjørbare produsert i
det første bygget til å regenerere .c filer fra .vala filer om nødvendig. Hvis en
vala kjørbar
fil ikke er installert ennå og du har endret noen
.vala filer i kildetreet, kjør
make bootstrap
i stedet for make.
--disable-valadoc: Dette
alternativet er nødvendig hvis Graphviz-12.1.0 ikke
er installert.
|
er en kompilator som oversetter Vala kildekoden til C kilde- og deklarasjonsfiler |
|
|
er en dokumentasjonsgenerator for å generere API dokumentasjon fra Vala kildekode basert på libvala |
|
|
genererer en GI fil for GObject og GLib baserte pakker |
|
|
er et verktøy som genererer Vala API (VAPI) filer fra GI filer |
|
|
inneholder Vala API funksjoner |
Valgrind er et instrumenteringsrammeverk for å bygge dynamiske analyseverktøy. Det finnes Valgrind verktøy som automatisk kan oppdage mange minnehåndterings- og trådfeil, og profilprogrammer i detalj. Valgrind kan også brukes til å bygge nye verktøy.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://sourceware.org/pub/valgrind/valgrind-3.23.0.tar.bz2
Nedlasting MD5 sum: c59775fcbfa82fcce796843d0aaa7538
Nedlastingsstørrelse: 16 MB
Estimert diskplass som kreves: 392 MB (legg til 68 MB for tester)
Estimert byggetid: 0.5 SBU (legg til 7.2 SBU for tester; begge bruker parallellisme=4)
docbook-xml-4.5 (for tester), GDB-15.1 (for tester), LLVM-18.1.7 (med Clang), og Which-2.21 (for tester)
Installer Valgrind ved å kjøre følgende kommandoer:
sed -i 's|/doc/valgrind||' docs/Makefile.in &&
./configure --prefix=/usr \
--datadir=/usr/share/doc/valgrind-3.23.0 &&
make
For å teste resultatene, kjør: make regtest. Testene kan
henge for alltid hvis GDB-15.1 ikke er installert. Noen tester er
kjent for å henge også, avhengig av versjonen av glibc. Noen
få tester kan mislykkes i ulike pakker. Problematiske tester
kan deaktiveres ved å endre prereq: linjen i den
tilsvarende .vgtest filen til
prereq:
false. For eksempel:
sed -e 's@prereq:.*@prereq: false@' \
-i {helgrind,drd}/tests/pth_cond_destroy_busy.vgtest
OpenMP tester hoppes over
hvis libgomp har blitt kompilert med --enable-linux-futex (standard). Om
nødvendig, bare kompiler libgomp biblioteket på nytt fra
gcc byggetreet, send --disable-linux-futex til configure, lagre
biblioteket et sted og endre koblingen fra /usr/lib/libgomp.so.1 til å peke på det
nye bibliotek.
Nå, som root bruker:
make install
sed -i ... docs/Makefile.in : Dette sed sørger for installering av dokumentasjonen i en versjonert mappe.
--enable-lto=yes: Dette
alternativet lar deg bygge Valgrind med LTO (link time
optimization). Dette gir en mindre/raskere Valgrind (opptil
10%), men byggetiden øker til ca 5,5 SBU.
|
er et program for feilsøking og profilering av Linux kjørbare filer |
|
|
tar en utdatafil produsert av Valgrind verktøyet Callgrind og skriver ut informasjon i en lettlest form |
|
|
kontrollerer programmer som kjøres av Valgrind verktøyet Callgrind |
|
|
er et etterbehandlingsverktøy for Valgrind verktøyet Cachegrind |
|
|
sammenligner to Cachegrind utdatafiler |
|
|
slår sammen flere Cachegrind utdatafiler til en fil |
|
|
tar en utdatafil produsert av Valgrind verktøyet Massif og skriver ut informasjonen i en lettlest form |
|
|
er en server som leser debuginfo fra objekter som er lagret på en annen maskin |
|
|
lytter på en socket for Valgrind kommentarer |
|
|
er et mellomledd mellom Valgrind og GDB eller et skall |
Yasm er en fullstendig omskrivning av NASM-2.16.03 assembleren. Den støtter x86 og AMD64 instruksjonssett, aksepterer NASM og GAS assembler syntakser og binære utdataer, ELF32 og ELF64 objektformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
Nedlasting MD5 sum: fc9e586751ff789b34b1f21d572d96af
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 27 MB (ytterligere 12 MB for testene)
Estimert byggetid: 0.1 SBU (ytterligere 0.1 SBU for testene)
Installer yasm ved å kjøre følgende kommandoer:
sed -i 's#) ytasm.*#)#' Makefile.in && ./configure --prefix=/usr && make
For å teste resultatene, utsted: make -j1 check.
Nå, som root bruker:
make install
sed -i 's#) ytasm.*#)#' Makefile.in: Denne sed forhindrer at den kompilerer 2 programmer (vsyasm og ytasm) som bare er til bruk på Microsoft Windows.
|
er en flyttbart, retargetable assembler som støtter x86 og AMD64 instruksjonssett, aksepterer NASM og GAS assembler syntakser og gir ut binærfiler i ELF32 og ELF64 objektformater |
|
|
gir all kjernefunksjonaliteten til yasm, for å manipulere maskininstruksjoner og objektfilkonstruksjoner |
Java er forskjellig fra de fleste pakkene i LFS og BLFS. Det er et programmeringsspråk som fungerer med filer med bytekode for å skaffe instruksjoner og utfører dem i en Java Virtual Machine (JVM). Et introduksjonsprogramm til java ser slik ut:
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello, World");
}
}
Dette programmet er lagret som HelloWorld.java. Filnavnet, HelloWorld, må samsvare med
klassenavnet. Den konverteres deretter til bytekode med
javac
HelloWorld.java. Utdatafilen er HelloWorld.class. Programmet kjøres med
java
HelloWorld. Dette oppretter en JVM og kjører
koden. «Klasse»-utvidelsen må ikke spesifiseres.
Flere klassefiler kan kombineres til en fil med jar kommandoen. Dette ligner på standard tar kommando. For eksempel kommandoen jar cf myjar.jar *.class vil kombinere alle klassefiler i en mappe til en jar fil. Disse fungerer som biblioteksfiler.
JVM kan søke etter og bruke klasser i jar filer automatisk.
Den bruker CLASSPATH
miljøvariabelen for å søke etter jar filer. Dette er en
standard liste over kolonseparerte mappenavn som ligner på
PATH miljøvariabelen.
Å lage en JVM fra kilden krever et sett med sirkulære avhengigheter. Det første som trengs er et sett med programmer kalt Java Utviklingssett (JDK). Dette settet med programmer inkluderer java, javac, jar, og flere andre. Det inkluderer også flere basis jar filer.
For å starte, satte vi opp en binær installasjon av JDK
opprettet av BLFS redaktørene. Den er installert i
/opt mappen for å tillate flere
installasjoner, inkludert en kildebasert versjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Binær nedlasting (x86): https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-22.0.2/OpenJDK-22.0.2+9-i686-bin.tar.xz
Nedlasting MD5 sum: 400033f7e0755c14687afe277a5f5672
Nedlastingsstørrelse (binær): 162 MB
Estimert diskplass som kreves: 312 MB
Binær nedlasting (x86_64): https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-22.0.2/OpenJDK-22.0.2+9-x86_64-bin.tar.xz
Nedlasting MD5 sum: 83f5b325922b3cef357a6e63d368ce91
Nedlastingsstørrelse (binær): 170 MB
Estimert diskplass som kreves: 341 MB
alsa-lib-1.2.12, Cups-2.4.10, giflib-5.2.2, og Xorg Biblioteker
Begynn med å pakke ut den passende binære tarballen for din
arkitektur og endre til den utpakkede mappen. Installer
binæren OpenJDK med følgende
kommandoer som root bruker:
install -vdm755 /opt/OpenJDK-22.0.2-bin && mv -v * /opt/OpenJDK-22.0.2-bin && chown -R root:root /opt/OpenJDK-22.0.2-bin
Den binære versjonen er nå installert. Du kan lage en
symbolkobling til den versjonen ved å utstede, som
root bruker:
ln -sfn OpenJDK-22.0.2-bin /opt/jdk
Du kan nå gå videre til Konfigurering av Java miljøet, hvor instruksjonene forutsetter at koblingen ovenfor eksisterer.
OpenJDK er en åpen kildekode implementering av Oracles Java Standard Edition plattform. OpenJDK er nyttig for utvikling av Java programmer, og gir en komplett kjøretidsmiljø å kjøre Java programmer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
OpenJDK er GPL kode, med et spesielt unntak laget for ikke-gratis prosjekter for å bruke disse klassene i sine proprietære produkter. På samme måte som LGPL, som lar ikke-gratis programmer koble til biblioteker levert av gratis programvare GNU General Public License, version 2, with the Classpath Exception tillater tredjepartsprogrammer å bruke klasser levert av gratis programvare uten krav om at tredjepartsprogramvaren også skal være gratis. Som med LGPL, eventuelle endringer som er gjort i de gratis programvaredelene av en tredjepartsapplikasjon, må også gjøres fritt tilgjengelig.
OpenJDK kilde inkluderer en veldig grundig, åpen kildekode testpakke ved hjelp av JTreg testpakken. Testinstruksjonene nedenfor tillater testing av den nettopp bygde JDK for rimelig kompatibilitet med den proprietære Oracle JDK. Men for en uavhengig implementering for å kreve kompatibilitet, må den passere en proprietær JCK/TCK testpakke. Ingen påstander om kompatibilitet, eller til og med delvis kompatibilitet, kan gjøres uten å ha bestått en godkjent testpakke.
Oracle gir gratis tilgang til fellesskapet, fra sak til sak, et lukket verktøysett for å sikre 100 % kompatibilitet med sin proprietære JDK. Verken den binære versjonen som er gitt på Java-22.0.2 siden heller ikke JVM bygget med instruksjonene nedenfor har blitt testet mot TCK. Enhver versjon som er bygget etter instruksjonene som er gitt, kan ikke hevde å være kompatibel med den proprietære JDK, uten at bruker selv søker om og fullfører kompatibilitetstestene.
Med det i tankene er binærfilene produsert ved hjelp av denne byggemetoden regelmessig testet mot TCK av medlemmene som er oppført på nettstedet ovenfor. I tillegg til fellesskapslisensen ovenfor, en pedagogisk, ikke-kommersiell lisens for TCK kan fås her.
Nedlasting (HTTP): https://github.com/openjdk/jdk22u/archive/jdk-22.0.2-ga.tar.gz
Nedlasting MD5 sum: 13b4e71252055e6d78ae12b8db5021d4
Nedlastingsstørrelse: 107 MB
Estimert diskplass som kreves: 3.7 GB (legg til 621 MB for tester)
Estimert byggetid: 5.2 SBU med 4 jobber (legg til 38 SBU for tester med 4 jobber)
Valgfri testpakke
https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-22.0.2/jtreg-7.3.1+1.tar.gz
Nedlasting MD5 sum: 0038551ecaf37d0cd99832217f79e56d
Nedlastingsstørrelse: 9.0 MB
En eksisterende binær (Java-22.0.2 eller en tidligere bygget versjon av denne pakken. Instruksjonene nedenfor forutsetter at du bruker Konfigurering av Java miljøet), alsa-lib-1.2.12, cpio-2.15, Cups-2.4.10, UnZip-6.0, Which-2.21, Xorg Biblioteker, og Zip-3.0
make-ca-1.14, giflib-5.2.2, harfBuzz-9.0.0, Little CMS-2.16, libjpeg-turbo-3.0.1, libpng-1.6.43, og Wget-1.24.5
git-2.46.0, Graphviz-12.1.0, Mercurial-6.8.1, ccache, pandoc, og pigz
Hvis du har lastet ned den valgfrie testpakken, pakk den ut nå:
tar -xf ../jtreg-7.3.1+1.tar.gz
Før du fortsetter, bør du sørge for at miljøet ditt
PATH variabelen inneholder
plasseringen til Java kompilatoren som brukes til
bootstrapping OpenJDK.
Dette er det eneste kravet til miljøet. Moderne Java
installasjoner trenger ikke JAVA_HOME og CLASSPATH brukes ikke her. Videre, OpenJDK
utviklere anbefaler deaktivering av JAVA_HOME.
Byggesystemet tillater ikke -j
bryteren i MAKEFLAGS. Se
kommandoforklaringen for --with-jobs= for mer informasjon om
tilpasning av parallellisering.
Konfigurer og bygg pakken med følgende kommandoer:
unset JAVA_HOME &&
bash configure --enable-unlimited-crypto \
--disable-warnings-as-errors \
--with-stdc++lib=dynamic \
--with-giflib=system \
--with-harfbuzz=system \
--with-jtreg=$PWD/jtreg \
--with-lcms=system \
--with-libjpeg=system \
--with-libpng=system \
--with-zlib=system \
--with-version-build="9" \
--with-version-pre="" \
--with-version-opt="" \
--with-cacerts-file=/etc/pki/tls/java/cacerts &&
make images
For å teste resultatene, må du kjøre jtreg programmet. Du kan
angi antall samtidige tester ved å legge til -conc: verdi i
kommandoen nedenfor (tester vil kjøre sekvensielt ellers):
<X>
export JT_JAVA=$(echo $PWD/build/*/jdk) &&
jtreg/bin/jtreg -jdk:$JT_JAVA -automatic -ignore:quiet -v1 \
test/jdk:tier1 test/langtools:tier1 &&
unset JT_JAVA
For mer kontroll over testpakken, se gjennom dokumentasjonen
tilgjengelig i jtreg/doc/jtreg/usage.txt. For å gjennomgå
resultatene, se filene JTreport/test_{jdk,langtools}/text/stats.txt
og JTreport/test_{jdk,langtools}/text/summary.txt.
Du bør forvente å se rundt 60 mislykket og 10 feil.
Installer pakken med følgende kommandoer som root bruker:
install -vdm755 /opt/jdk-22.0.2+9 &&
cp -Rv build/*/images/jdk/* /opt/jdk-22.0.2+9 &&
chown -R root:root /opt/jdk-22.0.2+9 &&
for s in 16 24 32 48; do
install -vDm644 src/java.desktop/unix/classes/sun/awt/X11/java-icon${s}.png \
/usr/share/icons/hicolor/${s}x${s}/apps/java.png
done
Hvis du bare ønsker å installere Java Runtime Environment,
kan du erstatte build/*/images/jre i ovenstående
cp
kommandoen.
Det er nå to OpenJDK SDKs
installert i /opt. Du bør
bestemme deg for hvilken du vil bruke som standard. Normalt
ville du valgt den nettopp installerte OpenJDK. Hvis ja, gjør følgende som
root bruker:
ln -v -nsf jdk-22.0.2+9 /opt/jdk
Om ønskelig kan du opprette .desktop filer for å legge til
oppføringer i menyen for java og jconsole. De nødvendige
ikonene har allerede blitt installert. Som root bruker:
mkdir -pv /usr/share/applications && cat > /usr/share/applications/openjdk-java.desktop << "EOF" &&[Desktop Entry] Name=OpenJDK Java 22.0.2 Runtime Comment=OpenJDK Java 22.0.2 Runtime Exec=/opt/jdk/bin/java -jar Terminal=false Type=Application Icon=java MimeType=application/x-java-archive;application/java-archive;application/x-jar; NoDisplay=trueEOF cat > /usr/share/applications/openjdk-jconsole.desktop << "EOF"[Desktop Entry] Name=OpenJDK Java 22.0.2 Console Comment=OpenJDK Java 22.0.2 Console Keywords=java;console;monitoring Exec=/opt/jdk/bin/jconsole Terminal=false Type=Application Icon=java Categories=Application;System;EOF
bash
configure...: det øverste nivå configure er en innpakning rundt autotools.
Den er ikke kjørbar og må kjøres gjennom bash.
--enable-unlimited-crypto: På
grunn av begrensninger på bruk av kryptografi i noen land, er
det en mulighet å begrense størrelsen på krypteringsnøkler og
bruken av noen algoritmer i en policyfil. Denne bryteren lar
deg sende en policyfil med ingen begrensning. Det er
brukerens ansvar å sørge for korrekt overholdelse av loven.
--disable-warnings-as-errors:
Denne bryteren deaktiverer bruken av -Werror i bygget.
--with-stdc++lib=dynamic: Denne
bryteren tvinger byggesystemet å koble til libstdc++.so (dynamisk) i stedet for
libstdc++.a (statisk).
--with-jobs=: <X>-j passert å lage fungerer ikke
med make som påberopt her. Som standard vil byggesystemet
bruke antallet CPUer - 1.
--with-jtreg=$PWD/jtreg: Denne
bryteren forteller configure hvor du finner jtreg. Utelat
hvis du ikke har lastet ned valgfri testpakke.
--with-{giflib,harfbuzz,lcms,libjpeg,libpng,zlib}=system:
Disse bryterne tvinger byggesystemet å bruke
systembibliotekene i stedet for de medfølgende versjonene.
--with-version-build:
Foreløpig, byggesystemet inkluderer ikke byggenummeret i
versjonsstrengen. Det kan spesifiseres her.
--with-version-pre:
Denne bryteren lar deg prefikse versjonsstrengen med en
egendefinert streng.
--with-version-opt:
Denne bryteren lar deg legge til en valgfri byggebeskrivelse
til versjonsstrengen.
--with-cacerts-file=/etc/pki/tls/java/cacerts:
Angir hvor du finner en cacerts
fil, /etc/pki/tls/java/ på et
BLFS system. Ellers blir en tom opprettet. Du kan bruke
/usr/sbin/make-ca
--force kommando for å generere den når du
har installert Java binærfilene.
--with-boot-jdk: Denne bryteren
gir plassering av den midlertidige JDK. Den er normalt ikke nødvendig hvis
java finnes i
PATH.
Normalt er Java miljøet konfigurert etter installasjon av den binære versjonen, og kan også brukes med den nettopp bygde pakken. Gjennomgå Konfigurering av Java miljøet i tilfelle du ønsker å endre noe.
For å teste om manualsidene er riktig installert, kjør source /etc/profile og man java for å vise den respektive manualsiden.
Hvis du har kjørt instruksjonene på make-ca-1.14 siden,
trenger du bare å lage en symbolkobling på
standardplasseringen for cacerts filen. Som bruker root:
ln -sfv /etc/pki/tls/java/cacerts /opt/jdk/lib/security/cacerts
For å sjekke installasjonen, kjør:
cd /opt/jdk bin/keytool -list -cacerts
Ved ledeteksten Enter keystore
password:, skriv changeit (standard) eller
bare trykk på “Enter” tasten. Hvis cacerts filen var installert riktig, vil
du se en liste over sertifikatene med relatert informasjon
for hver enkelt. Hvis ikke, må du installere dem på nytt.
|
kombinerer flere filer til et enkelt jar arkiv |
|
|
signerer jar filer og verifiserer signaturene og integriteten av en signert jar fil |
|
|
starter en Java applikasjon ved å starte et Java kjøretids miljø, laster en spesifisert klasse og påkaller dens hoved metode |
|
|
leser klasse- og grensesnittdefinisjoner, skrevet i Java programmeringsspråk, og kompilerer dem til bytekode klassefiler |
|
|
analyserer erklæringene og dokumentasjonskommentarene i en sett med Java kildefiler og produserer et tilsvarende sett med HTML sider som beskriver klassene, grensesnittene, konstruktsjonsmetoder, og felt |
|
|
demonterer en Java klassefil |
|
|
er et verktøy for å sende diagnostiske kommandoforespørsler til en kjørende Java Virtual Machine |
|
|
er et grafisk konsollverktøy for å overvåke og administrere både lokale og eksterne Java applikasjoner og virtuelle maskiner |
|
|
er en enkel kommandolinjefeilsøker for Java klasser |
|
|
skanner klasse- eller jar-filer for bruk av utdaterte API elementer |
|
|
viser avhengighetene på pakkenivå eller klassenivå til Java klassefiler |
|
|
er et verktøy for å jobbe med “Flight Recorder” filer |
|
|
er et verktøy for å analysere innholdet i en kjernedump fra en krasjet Java Virtual Machine (JVM) |
|
|
brukes til å liste, trekke ut, bekrefte eller få informasjon om moduler i jimage formatet |
|
|
skriver ut Java konfigurasjonsinformasjon for en gitt Java prosess, kjernefil eller en ekstern feilsøkingsserver |
|
|
brukes til å sette sammen og optimalisere et sett med moduler og deres avhengigheter inn i et tilpasset kjøretidsbilde |
|
|
skriver ut minnekart for delte objekter eller heap minnedetaljer av en gitt prosess, kjernefil eller en ekstern feilsøkingsserver |
|
|
oppretter JMOD filer og viser innholdet i eksisterende JMOD filer |
|
|
genererer java applikasjonspakker og bilder |
|
|
viser de instrumenterte JVM-ene på målsystemet |
|
|
er et kommandolinjeskriptskall |
|
|
er et interaktivt verktøy for å lære Java programmering språk og prototyping av Java kode |
|
|
skriver ut Java stabelspor av Java tråder for en gitt Java prosess, kjernefil eller en ekstern feilsøkingsserver |
|
|
viser ytelsesstatistikk for en instrumentert JVM |
|
|
er en RMI-serverapplikasjon som overvåker opprettelsen og terminering av instrumenterte JVM-er |
|
|
gir en minimal HTTP server, designet for å brukes til prototyping, testing og feilsøking |
|
|
er et nøkkel- og sertifikatadministrasjonsverktøy |
|
|
oppretter og starter et eksternt objektregister på den spesifiserte porten på gjeldende vert |
|
|
returnerer serialVersionUID for en eller flere klasser i en skjema egnet for kopiering til en klasse i utvikling |
Etter at pakkeinstallasjonen er fullført, er neste trinn å
sørge for at systemet kan finne filene på riktig måte. Hvis
du setter opp påloggingsskript som anbefalt i Oppstartsfilene til Bash
Skallet, oppdater miljøet ved å skape openjdk.sh skriptet, som root bruker:
cat > /etc/profile.d/openjdk.sh << "EOF"
# Begin /etc/profile.d/openjdk.sh
# Set JAVA_HOME directory
JAVA_HOME=/opt/jdk
# Adjust PATH
pathappend $JAVA_HOME/bin
# Auto Java CLASSPATH: Copy jar files to, or create symlinks in, the
# /usr/share/java directory.
AUTO_CLASSPATH_DIR=/usr/share/java
pathprepend . CLASSPATH
for dir in `find ${AUTO_CLASSPATH_DIR} -type d 2>/dev/null`; do
pathappend $dir CLASSPATH
done
for jar in `find ${AUTO_CLASSPATH_DIR} -name "*.jar" 2>/dev/null`; do
pathappend $jar CLASSPATH
done
export JAVA_HOME
# By default, Java creates several files in a directory named
# /tmp/hsperfdata_[username]. This directory contains files that are used for
# performance monitoring and profiling, but aren't normally needed on a BLFS
# system. This environment variable disables that feature.
_JAVA_OPTIONS="-XX:-UsePerfData"
export _JAVA_OPTIONS
unset AUTO_CLASSPATH_DIR dir jar _JAVA_OPTIONS
# End /etc/profile.d/openjdk.sh
EOF
Hvis Sudo-1.9.15p5 er installert, skal
superbrukeren ha tilgang til variablene ovenfor. Utfør
følgende kommandoer som root
bruker:
cat > /etc/sudoers.d/java << "EOF"
Defaults env_keep += JAVA_HOME
Defaults env_keep += CLASSPATH
Defaults env_keep += _JAVA_OPTIONS
EOF
For å bruke mandb til å inkludere
OpenJDK manualsidene i sin database, kjør, som root bruker:
cat >> /etc/man_db.conf << "EOF" &&
# Begin Java addition
MANDATORY_MANPATH /opt/jdk/man
MANPATH_MAP /opt/jdk/bin /opt/jdk/man
MANDB_MAP /opt/jdk/man /var/cache/man/jdk
# End Java addition
EOF
mkdir -p /var/cache/man &&
mandb -c /opt/jdk/man
OpenJDK bruker sitt eget
format for CA sertifikater. Java sikkerhetsmodulene bruker
$JAVA_HOME/lib/security/cacerts som standard. For å
holde alle sertifikatene på ett sted bruker vi /etc/ssl/java/cacerts. Instruksjonene på
make-ca-1.14 siden som tidligere opprettet
filen lokalisert i /etc/ssl/java. Sett opp en symbolkobling på
standardplasseringen som root
bruker:
ln -sfv /etc/pki/tls/java/cacerts /opt/jdk/lib/security/cacerts
Bruk følgende kommando for å sjekke om cacerts filen er installert:
/opt/jdk/bin/keytool -list -cacerts
Ved ledeteksten Enter keystore
password:, skriv inn changeit (standard) eller
bare trykk på “Enter” tasten. Hvis cacerts filen var installert riktig, vil du
se en liste over sertifikatene med relatert informasjon for
hver enkelt. Hvis ikke, må du installere dem på nytt.
Hvis du senere installerer en ny JVM, må du bare opprette symbollinken i standardplasseringen for å kunne bruke cacertene.
Apache Ant pakken er en Java-basert byggeverktøy. I teorien er det som make kommando, men uten make sine retningslinjer. Ant er annerledes. I stedet for en modell som er utvidet med skallbaserte kommandoer, Ant er utvidet ved hjelp av Java klasser. I stedet for å skrive skallkommandoer, er konfigurasjonsfilene XML baserte, og kaller ut et måltre som utfører ulike oppgaver. Hver oppgave kjøres av et objekt som implementerer et bestemt oppgavegrensesnitt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/ant/source/apache-ant-1.10.14-src.tar.xz
Nedlasting MD5 sum: 055843219f487edb3a6db554ad1355ef
Nedlastingsstørrelse: 3.6 MB
Estimert diskplass som kreves: 195 MB
Estimert byggetid: 0.3 SBU (unntatt nedlastingstid)
A JDK (Java binær or OpenJDK-22.0.2) og GLib-2.80.4
En Internett-tilkobling er nødvendig for å bygge denne pakken.
Bygg en begrenset bootstrap versjon av Apache Ant ved å bruke følgende kommando:
./bootstrap.sh
Last ned kjøretidsavhengighetene ved å bruke fetch.xml ant byggeskript:
bootstrap/bin/ant -f fetch.xml -Ddest=optional
Bygg Apache Ant ved å kjøre følgende kommandoer:
./build.sh -Ddist.dir=$PWD/ant-1.10.14 dist
Installer, som root bruker:
cp -rv ant-1.10.14 /opt/ && chown -R root:root /opt/ant-1.10.14 && ln -sfv ant-1.10.14 /opt/ant
bootstrap/bin/ant -f fetch.xml
-D dest=optional: Laster ned de manglende
avhengighetene til brukerens hjemmekatalog, og kopierer dem
inn i kildetreet (i lib/optional mappem, hvor ant henter dem ved
byggetid).
./build.sh -D dist.dir=$PWD/ant-1.10.14 dist: Denne kommandoen bygger, tester og installerer pakken inn i en midlertidig mappe.
Noen pakker vil kreve at ant er i søkestien og at
ANT_HOME miljøvariabelen er
definert. Oppfyll disse kravene ved å utstede, som
root bruker:
cat > /etc/profile.d/ant.sh << EOF
# Begin /etc/profile.d/ant.sh
pathappend /opt/ant/bin
export ANT_HOME=/opt/ant
# End /etc/profile.d/ant.sh
EOF
Instruksjonene ovenfor forutsetter at du har konfigurert systemet som beskrevet i Oppstartsfilene til Bash Skallet.
ant*.jar og avhengige
biblioteker i $ANT_HOME/lib
|
er en Javabasert byggeverktøy som brukes av mange pakker i stedet for det konvensjonelle make programmet |
|
|
er et støtteskript som brukes til å starte ant byggeskript i en gitt mappe |
|
|
er et Perl skript som gir lignende funksjonalitet som tilbys av antRun skriptet |
|
|
er et Perl skript som tillater Bash å fullføre en ant kommandolinje |
|
|
er et Perl innpakningsscript som brukes til å påkalle ant |
|
|
er et Python innpakningsscript som brukes til å påkalle ant |
|
|
filene er Apache Ant Java klassebiblioteker |
LFS boken dekker oppsett av nettverk ved å koble til et LAN med en statisk IP adresse. Det finnes andre metoder som brukes for å få en IP adresse og koble til et LAN og andre nettverk (som Internett). De mest populære metodene (DHCP og PPP) dekkes i dette kapittelet.
DHCP står for Dynamic Host Configuration Protocol. Det er en protokoll som brukes av mange nettsteder for automatisk å gi informasjon som IP adresser, nettverksmasker og rutinginformasjon til datamaskiner. Hvis nettverket ditt bruker DHCP, trenger du en DHCP klient for å koble til den.
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
Networking support: Y
Networking options:
802.1d Ethernet Bridging: M or Y
I denne delen skal vi diskutere hvordan du setter opp en
nettverksbro ved hjelp av systemd-networkd. I
eksemplene under, eth0 representerer det ytre
grensesnittet som blir brokoblet, mens br0 representerer
brogrensesnittet.
For å lage et brogrensesnitt, lag følgende
konfigurasjonsfil ved å kjøre følgende kommando som
root bruker:
cat > /etc/systemd/network/50-br0.netdev << EOF
[NetDev]
Name=br0
Kind=bridge
EOF
For å tilordne et nettverksgrensesnitt til en bro, opprett
følgende konfigurasjonsfil ved å kjøre følgende kommando
som root bruker:
cat > /etc/systemd/network/51-eth0.network << EOF
[Match]
Name=eth0
[Network]
Bridge=br0
EOF
Gjenta prosessen for andre grensesnitt som må brokobles. Merk at det er viktig at ingenting tildeler noen adresser til brokoblede grensesnitt. Hvis du bruker NetworkManager-1.48.8, sørg for at du konfigurerer dem til å ignorere de brokoblede grensesnittene, så vel som selve brogrensesnittet.
Hvis du er på et nettverk som bruker DHCP for å tildele ip
adresser, opprett følgende konfigurasjonsfil ved å kjøre
følgende kommando som root
bruker:
cat > /etc/systemd/network/60-br0.network << EOF
[Match]
Name=br0
[Network]
DHCP=yes
EOF
Alternativt, hvis du bruker et statisk ip oppsett, opprett
følgende konfigurasjonsfil ved å kjøre følgende kommando
som root bruker:
cat > /etc/systemd/network/60-br0.network << EOF
[Match]
Name=br0
[Network]
Address=192.168.0.2/24
Gateway=192.168.0.1
DNS=192.168.0.1
EOF
For å få frem brogrensesnittet, ganske enkelt start på nytt
systemd-networkd nissen
ved å kjøre følgende kommando som root bruker:
systemctl restart systemd-networkd
dhcpcd er en implementering av en DHCP klient spesifisert i RFC2131. En DHCP klient er nyttig for å tilkoble datamaskinen til et nettverk som bruker DHCP for å tilordne nettverksadresser. dhcpcd streber etter å være en fullt utstyrt, men likevel veldig lett DHCP klient.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/NetworkConfiguration/dhcpcd/releases/download/v10.0.8/dhcpcd-10.0.8.tar.xz
Nedlasting MD5 sum: 8b813685a48ab017bcfb5e720a9f0181
Nedlastingsstørrelse: 265.7 KB
Estimert diskplass som kreves: 3.0 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
LLVM-18.1.7 (med Clang), ntp-4.2.8p18, chronyd, og ypbind
Nylige utgivelser av dhcpcd støtter valgfritt rettighetsseparasjon. Siden de praktiske sikkerhetsfordelene ved dette er uklart for et program som dhcpcd og oppsettet er mer komplisert, deaktiverer boken det for øyeblikket som standard.
Hvis du imidlertid ønsker å bruke rettighetsseparasjon,
tilleggs installasjonstrinn er nødvendig for å sette opp det
riktige miljøet. Kjør følgende kommandoer som root bruker:
install -v -m700 -d /var/lib/dhcpcd &&
groupadd -g 52 dhcpcd &&
useradd -c 'dhcpcd PrivSep' \
-d /var/lib/dhcpcd \
-g dhcpcd \
-s /bin/false \
-u 52 dhcpcd &&
chown -v dhcpcd:dhcpcd /var/lib/dhcpcd
Alternativt, bygg dhcpcd med privilegium separasjon ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--libexecdir=/usr/lib/dhcpcd \
--dbdir=/var/lib/dhcpcd \
--runstatedir=/run \
--disable-privsep &&
make
Bygg dhcpcd med rettighetsseparasjon ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--libexecdir=/usr/lib/dhcpcd \
--dbdir=/var/lib/dhcpcd \
--runstatedir=/run \
--privsepuser=dhcpcd &&
make
For å teste resultatene, kjør: make test.
Nå, som root bruker:
make install
--libexecdir=/usr/lib/dhcpcd:
Denne bryteren setter en bedre plassering for de interne
dhcpcd bibliotekene.
--dbdir=/var/lib/dhcpcd: Denne
bryteren justerer databasemappen fordi standardmappen,
/var/db, ikke er FHS
kompatibel.
--runstatedir=/run:
Denne bryteren stiller inn kjøretidens tilstands mappe fordi
standard /var/run er en
symbolsk lenke til /run, og
bruke /var/run er avviklet.
--disable-privsep:
Denne bryteren deaktiverer privilegier separasjon, som er
standard i dhcpcd. Denne bryteren brukes ikke i
byggekonfigurasjonen der rettighetsseparasjon brukes.
--privsepuser=dhcpcd:
Denne bryteren stiller inn rettighetsseparasjon bruker i
byggekonfigurasjonen hvor rettighet eskalering brukes.
--with-hook=...: Du kan eventuelt
installere flere kroker, for eksempel å installere noen
konfigurasjonsfiler som f.eks ntp.conf. Et sett med kroker finner du i
dhcpcd-hooks mappen i
byggetreet.
Hvis du vil konfigurere nettverksgrensesnitt ved oppstart
ved hjelp av dhcpcd, må du installere
systemd enheten inkludert i blfs-systemd-units-20240801 pakken
ved å kjøre følgende kommando som root bruker:
make install-dhcpcd
Standardoppførselen til dhcpcd er å stille inn
vertsnavn og mtu. Den overskriver også /etc/resolv.conf og /etc/ntp.conf. Disse endringer i
systemkonfigurasjonsfiler gjøres av kroker som er lagret
i /usr/lib/dhcpcd/dhcpcd-hooks. Du kan
endre denne oppførselen ved å fjerne eller legge til
kroker fra/til den mappen. Utførelsen av kroker kan
deaktiveres ved å bruke --nohook (-C)
kommandolinjealternativet eller ved hjelp av nohook alternativet i /etc/dhcpcd.conf filen.
Pass på at du deaktiverer systemd-networkd tjenesten eller konfigurer den til ikke å administrere grensesnittene du ønsker å administrere med dhcpcd.
På dette tidspunktet kan du teste om dhcpcd oppfører seg som
forventet ved å kjøre følgende kommando som root bruker:
systemctl start dhcpcd@eth0
For å starte dhcpcd på et spesifikt
grensesnitt ved oppstart, aktiver den tidligere installerte
systemd enheten ved å kjøre følgende kommando som
root bruker:
systemctl enable dhcpcd@eth0
Erstatt eth0 med
det faktiske grensesnittnavnet.
Disse applikasjonene er vanligvis klientapplikasjoner for å få tilgang til riktig server over hele bygget eller over hele verden. Tcpwrappers og portmap er støtteprogrammer for nisser som du kan ha kjørende på maskinen din.
bridge-utils pakken inneholder et verktøy nødvendig for å opprette og administrere broenheter. Dette er nyttig ved oppsett av nettverk for en vertsbasert virtuell maskin (VM).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/net/bridge-utils/bridge-utils-1.7.1.tar.xz
Nedlasting MD5 sum: 3e1fee4dc22cac5457c2f6ffb990a518
Nedlastingsstørrelse: 29 KB
Estimert diskplass som kreves: 1.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
[*] Networking support ---> [NET] Networking options ---> <*/M> 802.1d Ethernet Bridging [BRIDGE]
Installer bridge-utils ved å kjøre følgende kommandoer:
autoconf && ./configure --prefix=/usr && make
Testing av resultatene krever å kjøre de seks skallskriptene
i tools/ mappen. To av testene
krever to Ethernet porter. Noen tester vil ikke bevare den
gjeldende nettverkskonfigurasjonen. Se tests/README for detaljer.
Nå, som root bruker:
make install
cifs-utils pakken gir et middel for montering av SMB/CIFS delinger på et Linuxsystem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.samba.org/ftp/linux-cifs/cifs-utils/cifs-utils-7.0.tar.bz2
Nedlasting MD5 sum: 518431bf43f23e6aacd97e80e2060df7
Nedlastingsstørrelse: 412 KB
Estimert diskplass som kreves: 4.2 MB
Estimert byggetid: 0.1 SBU
MIT Kerberos V5-1.21.3 og Talloc-2.4.2 (påkrevd hvis MIT Kerberos V5-1.21.3 er installert)
docutils-0.21.2 (for å lage mansidene), keyutils-1.6.3 (kreves for å bygge PAM modulen), Linux-PAM-1.6.1, Samba-4.20.4, og libcap-2.70 med PAM eller libcap-ng
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjerne på nytt om nødvendig:
File systems ---> [*] Network File Systems ---> [NETWORK_FILESYSTEMS] <*/M> SMB3 and CIFS support (advanced network filesystem) [CIFS]
Avhengig av serverkonfigurasjonen kan flere kjernealternativer være nødvendig.
Installer cifs-utils ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-pam &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-pam: Ikke
bygg PAM støtte. Fjern den og bruk --with-pamdir (se under), hvis Linux-PAM-1.6.1 er installert og du
ønsker PAM støtte.
--with-pamdir=/usr/lib/security:
Installer PAM modulen i /usr/lib/security.
|
er et brukerområde hjelpeprogram for linux CIFS klientfilsystemet. Det er en rekke aktiviteter som kjernen ikke enkelt kan gjøre av seg selv. Dette programmet er et infoprogram som gjør disse tingene for kjernen og returnerer deretter resultatet. Det er ikke ment å kjøres fra kommandolinjen |
|
|
er et brukerområde hjelpeprogram for linux CIFS klient filsystemet. Den er ment å kjøres når kjernen kaller request-key for en bestemt nøkkeltype. Det er ikke ment å kjøres fra kommandolinjen |
|
|
er et verktøy for å administrere legitimasjon (brukernavn og passord) med det formål å etablere økter i flerbrukermontering |
|
|
er en brukerromshjelper for å vise en ACL i en sikkerhetsbeskrivelse for Common Internet File System (CIFS) |
|
|
monterer et Linux CIFS filsystem. Det blir
vanligvis anropt indirekte av mount(8)
kommandoen når du bruker |
|
|
monterer et SMB3 basert filsystem. Det blir
vanligvis anropt indirekte av mount(8)
kommandoen når du bruker |
|
|
er ment å endre en ACL for en sikkerhetsdeskriptor for et filsystemobjekt |
|
|
viser kvoteinformasjon for et SMB filsystem |
|
|
viser SMB-spesifikk filinformasjon, for eksempel sikkerhetsbeskrivelser og kvoter |
NcFTP pakken inneholder et kraftig og fleksibelt grensesnitt til Internett standard Filoverførings Protokoll. Den er ment å erstatte eller supplere ftp programmet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.ncftp.com/downloads/ncftp/ncftp-3.2.7-src.tar.xz
Nedlasting MD5 sum: bbcb048d2412f4d62bc798818e703680
Nedlastingsstørrelse: 416 KB
Estimert diskplass som kreves: 6.9 MB
Estimert byggetid: 0.2 SBU
LLVM-18.1.7 (med Clang, brukes som standard hvis installert)
Det er to måter å bygge NcFTP på. Den første (og optimal) måten
bygger mesteparten av funksjonaliteten som et delt bibliotek
og deretter bygger og installerer programmet koblet mot dette
biblioteket. Den andre metoden kobler ganske enkelt all
funksjonalitet til binæren statisk. Dette gjør ikke det
dynamiske biblioteket tilgjengelig for kobling av andre
applikasjoner. Du må velge hvilken metode som passer deg
best. Merk at den andre metoden ikke oppretter en helt statisk
koblet binær; bare libncftp
deler er statisk koblet, i dette tilfellet. Vær oppmerksom på
at det å bygge og bruke det delte biblioteket er dekket av
Clarified Artistic License; imidlertid å utvikle
applikasjoner som bruker det delte biblioteket er underlagt
en annen tillatelse.
Først, fiks et problem med konfigureringsskriptet introdusert av gcc-14:
sed -i 's/def HAVE_STDLIB_H/ 1/;s/extern select/extern int select/' configure
For å installere NcFTP ved å bruke den første (og optimale) metoden, kjør følgende kommandoer:
CC=/usr/bin/gcc \ ./configure --prefix=/usr --sysconfdir=/etc && make -C libncftp shared && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make -C libncftp soinstall && make install
For å installere NcFTP ved å
bruke den andre metoden (med libncftp funksjonalitet koblet inn statisk)
kjør følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
CC=/usr/bin/gcc. Denne
miljøvariabelen sikrer at gcc blir brukt hvis
LLVM-18.1.7 er installert. Byggeprosedyren
er brutt hvis gcc ikke blir brukt.
make -C ... && make -C
...: Disse kommandoene lager og installerer
det dynamiske biblioteket libncftp som deretter brukes til å linke
mot ved kompilering av hovedprogrammet.
De fleste NcFTP
konfigurasjonene gjøres mens du er i programmet, og
konfigurasjonsfilene behandles automatisk. Et unntak fra
dette er ~/.ncftp/prefs_v3.
Det er forskjellige alternativer å endre der, inkludert:
yes-i-know-about-NcFTPd=yes
Dette deaktiverer splash-skjermen som annonserer NcFTPd serveren.
Det er andre alternativer i prefs_v3 filen. De fleste av disse er
selvforklarende. Globale standarder kan settes i
/etc/ncftp.prefs_v3.
|
er et nettleserprogram for File Transfer Protocol |
|
|
er en individuell satsvis FTP jobb prosessor |
|
|
er NcFTP Bokmerkeredigerer (NCurses-basert) |
|
|
er et internett filoverføringsprogram for skript som brukes til å hente filer |
|
|
er et internett filoverføringsprogram for skript som brukes til å liste filer |
|
|
er et internett filoverføringsprogram for skript som brukes til å overføre filer |
|
|
er en global satsvis FTP jobb prosessor nisse |
Net-tools pakken er en samling av programmer for å kontrollere nettverksundersystemet til Linux kjernen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/project/net-tools/net-tools-2.10.tar.xz
Nedlasting MD5 sum: 78aae762c95e2d731faf88d482e4cde5
Nedlastingsstørrelse: 228 KB
Estimert diskplass som kreves: 7.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Instruksjonene nedenfor automatiserer konfigurasjonsprosessen ved å kanalisere yes til make kommandoen. Hvis du ønsker å kjøre den interaktive konfigurasjonsprosessen (ved å endre instruksen til bare make), men du er ikke sikker på hvordan du skal svare på alle spørsmålene, så er det bare å godta standardinnstillingene. Dette vil være helt greit i de fleste tilfeller. Det du blir spurt om her er en haug med spørsmål om hvilke nettverksprotokoller du har aktivert i kjernen din. Standardsvarene vil aktivere verktøyene fra denne pakke til å fungere med de vanligste protokollene: TCP, PPP og flere andre. Du må fortsatt faktisk aktivere disse protokollene i kjernen—det du gjør her er bare å fortelle at pakken skal inkludere støtte for disse protokollene i programmene, men det er opp til kjernen å gjøre protokollene tilgjengelige.
Denne pakken har flere unødvendige protokoller og maskinvareenhets spesifikke funksjoner som er foreldet. Å bare bygge det minimum som trengs for systemet ditt, hopp over yes kommandoen og svar hvert spørsmål interaktivt. Minimum nødvendige alternativer er 'UNIX protokollfamilie' og 'INET (TCP/IP) protokollfamilie'.
For denne pakken bruker vi DESTDIR metoden for installasjon for enkelt å fjerne filer fra bygget som overskriver de vi ønsker å beholde eller ikke er passende for systemet vårt.
Installer Net-tools ved å kjøre følgende kommandoer:
export BINDIR='/usr/bin' SBINDIR='/usr/bin' &&
yes "" | make -j1 &&
make DESTDIR=$PWD/install -j1 install &&
rm install/usr/bin/{nis,yp}domainname &&
rm install/usr/bin/{hostname,dnsdomainname,domainname,ifconfig} &&
rm -r install/usr/share/man/man1 &&
rm install/usr/share/man/man8/ifconfig.8 &&
unset BINDIR SBINDIR
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
chown -R root:root install && cp -a install/* /
export BINDIR='/usr/bin' SBINDIR='/usr/bin': Sørg for at de kjørbare filene er installert på riktig sted.
yes "" | make : Kanalisere yes til make config hopper over den interaktive konfigurasjonen og godta standardinnstillingene.
rm ...: Fjern unødvendige programmer og man sider.
|
brukes til å manipulere kjernens ARP hurtigbuffer, vanligvis for å legge til eller slette en oppføring, eller for å dumpe hele hurtigbufferen |
|
|
legger til, sletter og viser et grensesnitts multicast adresser |
|
|
legger til, endrer, sletter og viser et grensesnitts tunneler |
|
|
kontrollerer eller setter statusen til et nettverksgrensesnitts Media Independent Interface (MII) enhet |
|
|
navngir nettverksgrensesnitt basert på MAC adresser |
|
|
brukes til å rapportere nettverkstilkoblinger, rutingtabeller og grensesnittstatistikk |
|
|
brukes til å finjustere PLIP enhetsparametrene, for å forbedre ytelsen |
|
|
brukes til å manipulere kjernens RARP tabell |
|
|
brukes til å manipulere IP rutingstabellen |
|
|
kobler et nettverksgrensesnitt til en seriell linje. Dette lar deg bruke vanlige terminallinjer for punkt-til-punkt koblinger til andre datamaskiner |
NFS Utilities pakken inneholder brukerrom server og klient verktøy som er nødvendige for å bruke kjernens NFS egenskaper. NFS er en protokoll som tillater deling av filsystemer over nettverk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/nfs-utils/2.6.4/nfs-utils-2.6.4.tar.xz
Nedlasting MD5 sum: 907f95977ccf7a522ee32af1534f0e4c
Nedlastingsstørrelse: 712 KB
Estimert diskplass som kreves: 18 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
libtirpc-1.3.5, libevent-2.1.12, rpcsvc-proto-1.4.4, og SQLite-3.46.1
Cyrus SASL-2.1.28 (for SASL autentisering), LVM2-2.03.26 (libdevmapper for NFSv4 støtte), libnsl-2.0.1 (for NIS klient støtte), OpenLDAP-2.6.8 (for LDAP autentisering), MIT Kerberos V5-1.21.3 eller libgssapi , og librpcsecgss (for GSS og RPC sikkerhetsstøtte), og libcap-2.70 med PAM
Aktiver følgende alternativer i kjernekonfigurasjonen (velg klient og/eller server støtte etter behov) og kompiler kjernen på nytt om nødvendig:
File systems ---> [*] Network File Systems ---> [NETWORK_FILESYSTEMS] <*/M> NFS client support [NFS_FS] <*/M> NFS server support [NFSD]
Velg de aktuelle underalternativene som vises når alternativene ovenfor er valgt.
I BLFS antar vi at nfs v3 vil bli brukt. Hvis serveren tilbyr nfs v4 (for
linux, CONFIG_NFSD_V4) da vil auto-forhandling for v3
mislykkes, og du må legge til nfsver=3 til monteringsalternativene.
Dette gjelder også hvis det alternativet er aktivert i
klientens kjerne,
for eksempel i en distro som prøver å montere fra en BLFS
v3 server.
Selv om ingen i endene av tilkoblingen støtter nfs v4, å
legge til nfsver=3 er fortsatt
gunstig fordi det forhindrer en feilmelding "NFS: bad mount
option value specified: minorversion=1" å bli logget ved
hver montering.
Installer NFS Utilities ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--sbindir=/usr/sbin \
--disable-nfsv4 \
--disable-gss \
LIBS="-lsqlite3 -levent_core" &&
make
Nå, som root bruker:
make install && chmod u+w,go+r /usr/sbin/mount.nfs && chown nobody:nogroup /var/lib/nfs
Testene for denne pakken krever at pakken er installert. I
tillegg må rpc.statd-demonen ikke kjøre og testene må kjøres
som root bruker.
For å teste resultatene, utsted, som root:
make check
--disable-gss:
Deaktiverer støtte for RPCSEC GSS (RPC Sikkerhet).
LIBS="-lsqlite3
-levent_core": er påkrevd for fsidd programmet.
chown nobody:nogroup /var/lib/nfs: rpc.statd-programmet bruker eierskapet til denne mappen til å angi sitt UID og GID. Denne kommandoen setter dem til uprivilegerte oppføringer.
/etc/exports inneholder de
eksporterte mappene på NFS servere. Referere til
exports.5 manualside for
syntaksen til denne filen. Se også "NFS HowTo" tilgjengelig
på https://nfs.sourceforge.net/nfs-howto/
for informasjon om hvordan konfigurere servere og klienter
på en sikker måte. Som for eksempel for å dele /home mappen over det lokale nettverket,
kan følgende linje legges til:
cat >> /etc/exports << EOF
/home 192.168.0.0/24(rw,subtree_check,anonuid=99,anongid=99)
EOF
Pass på å erstatte mappen, nettverksadressen. og prefikset ovenfor for å matche nettverket ditt. Det eneste mellomrommet i linjen over skal være mellom mappen og nettverksadressen.
Installer NFSv4 server enheter inkludert i blfs-systemd-units-20240801 pakken for å starte serveren ved oppstart.
make install-nfsv4-server
Hvis du har deaktivert NFSv4 støtte, kjør følgende
kommando som root bruker
for å utelate NFSv4 spesifikke systemenheter:
make install-nfs-server
Du kan redigere /etc/default/nfs-utils filen for å
endre oppstartsalternativene for NFS nisser. Standarder
bør være greit for de fleste brukstilfeller.
/etc/fstab inneholder mappene
som skal monteres på klienten. Alternativt kan partisjonene
bli montert ved å bruke mount kommandoen med
riktige alternativer. For å montere /home og /usr partisjoner, legg til følgende til
/etc/fstab:
<server-name>:/home /home nfs rw,_netdev 0 0<server-name>:/usr /usr nfs ro,_netdev 0 0
Alternativene som kan brukes er spesifisert i man 5 nfs . Hvis både
klienten og serveren kjører nyere versjoner av linux, vil
de fleste alternativene bli forhandlet (men se merknaden
ovenfor på nfsver=3). Du kan spesifisere enten rw eller ro,
_netdev hvis filsystemet skal
automatisk monteres ved oppstart, eller noauto (og kanskje user) for andre filsystemer.
Hvis filserveren ikke kjører en nyere versjon av linux, må du kanskje spesifisere andre alternativer.
Du må kanskje aktivere autofs v4 i kjernen din, og legge
til alternativet comment=systemd.automount. Noen maskiner
kan trenge dette fordi systemd prøver å montere de eksterne
filsystemene før nettverket er oppe. Et alternativ er å
kjøre mount
-a som root
bruker etter at systemet har startet.
Følgende systemd enheter er ikke obligatorisk hvis nfs-server enheter er installert.
Installer enheter inkludert i blfs-systemd-units-20240801 pakken for å starte klienttjenestene ved oppstart.
make install-nfs-client
|
opprettholder en liste over NFS eksporterte filsystemer |
|
|
tilbyr et lokalt UNIX domene socket grensesnitt for alle NFS brukerområder for å spørre i reeksportdatabasen |
|
|
viser statistikk for NFS klient per montering |
|
|
brukes til å montere en nettverksressurs brukt av NFS |
|
|
brukes til å montere en nettverksressurs brukt av NFSv4 |
|
|
kan brukes til å teste og hente konfigurasjonsinnstillinger fra en rekke nfs-utils konfigurasjonsfiler |
|
|
skriver ut informasjon om NFS klienter |
|
|
rapporterer inn-/utdata statistikk for nettverksfilsystemer |
|
|
viser statistikk holdt om NFS klienter og server aktivitet |
|
|
implementerer NFS monteringsprotokollen på en NFS server |
|
|
implementerer brukernivådelen av NFS tjeneste på serveren |
|
|
brukes av NFS fillåsetjeneste. Kjør på begge sider, klient så vel som server, når du ønsker fillåsing aktivert |
|
|
setter eller sletter kjernens NFS klient og server feilsøkingsflagg |
|
|
viser monteringsinformasjon for en NFS server |
|
|
brukes til å sende meldinger om omstart av Network Status Monitor |
|
|
er et skript kalt av nfsmount når du monterer et filsystem med låsing aktivert, hvis statd ikke ser ut til å kjøre. Det kan bli tilpasset med hvilke flagg som passer for nettstedet |
|
|
brukes til å demontere en nettverksressurs brukt av NFS |
|
|
brukes til å demontere en nettverksressurs brukt av NFSv4 |
ntp pakken inneholder en klient og server for å holde tiden synkronisert mellom ulike datamaskiner over et nettverk. Denne pakken er den offisielle referanseimplementeringen av NTP protokollen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p18.tar.gz
Nedlasting MD5 sum: 516bdabd94ab7c824e9771390761a46c
Nedlastingsstørrelse: 6.8 MB
Estimert diskplass som kreves: 99 MB (med tester)
Estimert byggetid: 0.8 SBU (Med tester; begge bruker parallellisme=4)
libcap-2.70 med PAM, libevent-2.1.12, libedit, og libopts fra AutoGen
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/ntp
Det bør være en dedikert bruker og gruppe til å ta kontroll
over ntpd
nissen etter den er startet. Utfør følgende kommandoer som
root bruker:
groupadd -g 87 ntp &&
useradd -c "Network Time Protocol" -d /var/lib/ntp -u 87 \
-g ntp -s /bin/false ntp
Løs et typeproblem ved å kjøre
sed -e "s;pthread_detach(NULL);pthread_detach(0);" \
-i configure \
sntp/configure
Installer ntp ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--bindir=/usr/sbin \
--sysconfdir=/etc \
--enable-linuxcaps \
--with-lineeditlibs=readline \
--docdir=/usr/share/doc/ntp-4.2.8p18 &&
make
To test the results, issue: make check.
Nå, som root bruker:
make install && install -v -o ntp -g ntp -d /var/lib/ntp
--bindir=/usr/sbin:
Denne parameteren plasserer de administrative programmene i
/usr/sbin.
--enable-linuxcaps:
ntpd kjøres som bruker ntp, så bruk Linux-funksjoner for
ikke-root klokkekontroll.
--with-lineeditlibs=readline:
Denne bryteren aktiverer Readline støtte for ntpdc og ntpq programmer. Hvis
utelatt, libedit brukes hvis
den er installert, ellers ingen readline funksjoner vil bli
kompilert.
Følgende konfigurasjonsfil definerer først forskjellige ntp servere med åpen tilgang fra forskjellige kontinenter. For det andre, den oppretter en drift fil hvor ntpd lagrer frekvensforskyvning og en pid-fil for å lagre ntpd prosess-ID. Siden dokumentasjonen inkludert med pakken er sparsom, besøk ntp nettstedet på https://www.ntp.org/ og https://www.ntppool.org/ for mer informasjon.
cat > /etc/ntp.conf << "EOF"
# Asia
server 0.asia.pool.ntp.org
# Australia
server 0.oceania.pool.ntp.org
# Europe
server 0.europe.pool.ntp.org
# North America
server 0.north-america.pool.ntp.org
# South America
server 2.south-america.pool.ntp.org
driftfile /var/lib/ntp/ntp.drift
pidfile /run/ntpd.pid
EOF
Det kan være lurt å legge til en “Security session.” For forklaringer, se https://www.eecis.udel.edu/~mills/ntp/html/accopt.html#restrict.
cat >> /etc/ntp.conf << "EOF"
# Security session
restrict default limited kod nomodify notrap nopeer noquery
restrict -6 default limited kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict ::1
EOF
Det er to alternativer. Alternativ en er å kjøre ntpd kontinuerlig og la den synkronisere tiden på en gradvis måte. Det andre alternativet er å kjøre ntpd med jevne mellomrom (ved hjelp av cron) og oppdater tiden hver gang ntpd er planlagt.
Hvis du velger alternativ en, installer da ntpd.service
enheten inkludert i blfs-systemd-units-20240801
pakken.
make install-ntpd
Hvis du foretrekker å kjøre ntpd med jevne mellomrom,
legg til følgende kommando til root sin crontab:
ntpd -q
|
beregner optimal verdi for tick gitt ntp drift fil |
|
|
genererer kryptografiske datafiler som brukes av NTPv4 autentiseringen og identifiseringsordninger |
|
|
er nyttig ved oppstart, for å utsette oppstartssekvensen til ntpd har satt tiden |
|
|
er en ntp nisse som kjører i bakgrunnen og beholder dato og klokkeslett synkronisert basert på svar fra konfigurerte ntp servere. Den fungerer også som en ntp server |
|
|
er et klientprogram som setter dato og klokkeslett basert på svaret fra en ntp server. Denne kommandoen er utdatert |
|
|
brukes til å spørre ntp nissen om dens nåværende tilstand og å be om endringer i den tilstanden |
|
|
er et hjelpeprogram som brukes til å overvåke ntpd operasjoner og bestemme ytelse |
|
|
leser og viser tidsrelaterte kjernevariabler |
|
|
sporer en kjede av ntp servere tilbake til primærkilden |
|
|
er en Simple Network Time Protocol (SNTP) klient |
|
|
leser, og eventuelt modifiserer, flere tidtakingsrelaterte variabler i eldre kjerner som ikke har støtte for presisjon tidtaking |
|
|
er et skript for å bekrefte og, om nødvendig, oppdatere sprangsekundet sin definisjonsfil. NoteI november 2022, på den 27. generalkonferansen om vekter og målinger, ble det besluttet å forlate sprangsekundet. I tillegg dette skriptet hardkoder en URL for en oppdateringsfil som ikke lenger finnes. Sist gang et sprangsekund ble erklært var januar 2017. Dette skriptet vil sannsynligvis bli fjernet i en fremtidig utgivelse. |
rpcbind programmet er en erstatning for portmap. Det kreves for import eller eksport av delte mapper for Network File System (NFS).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/rpcbind/rpcbind-1.2.7.tar.bz2
Nedlasting MD5 sum: acd444ed322eb458fbd395ec69c4e083
Nedlastingsstørrelse: 124 KB
Estimert diskplass som kreves: 1.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/rpcbind-1.2.7-vulnerability_fixes-1.patch
Det bør være en dedikert bruker og gruppe til å ta kontroll
over rpcbind
nissen etter at den er startet. Utfør følgende kommandoer som
root bruker:
groupadd -g 28 rpc &&
useradd -c "RPC Bind Daemon Owner" -d /dev/null -g rpc \
-s /bin/false -u 28 rpc
For å få rpcbind til å virke riktig, fiks først pakken for å bruke riktig tjenestenavn:
sed -i "/servname/s:rpcbind:sunrpc:" src/rpcbind.c
Installer rpcbind ved å kjøre følgende kommandoer:
patch -Np1 -i ../rpcbind-1.2.7-vulnerability_fixes-1.patch &&
./configure --prefix=/usr \
--bindir=/usr/sbin \
--enable-warmstarts \
--with-rpcuser=rpc &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--with-rpcuser=rpc:
Denne bryteren brukes slik at rpcbind nissen vil kjøre
som en uprivilegert bruker i stedet for root bruker.
rsync pakken inneholder rsync verktøyet. Dette er nyttig for synkronisering av store filarkiver over et nettverk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.samba.org/ftp/rsync/src/rsync-3.3.0.tar.gz
Nedlasting MD5 sum: f5c17f9c9164ef9e60d9d8c96b23da06
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 9.2 MB (med tester; legg til 24 MB for HTML API dokumentasjon)
Estimert byggetid: 0.7 SBU (med tester)
Av sikkerhetsgrunner å kjøre rsync server som en uprivilegert bruker
og gruppe oppfordres. Hvis du har tenkt å kjøre rsync som en nisse, opprett
rsyncd bruker og gruppe med
følgende kommandoer utstedt av root brukeren:
groupadd -g 48 rsyncd &&
useradd -c "rsyncd Daemon" -m -d /home/rsync -g rsyncd \
-s /bin/false -u 48 rsyncd
Installer rsync ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-xxhash \
--without-included-zlib &&
make
Hvis du har Doxygen-1.12.0 installert og ønsker å bygge HTML API dokumentasjon, kjør:
doxygen
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Hvis du har laget dokumentasjonen, installer den ved å bruke
følgende kommandoer som root
bruker:
install -v -m755 -d /usr/share/doc/rsync-3.3.0/api && install -v -m644 dox/html/* /usr/share/doc/rsync-3.3.0/api
--disable-xxhash:
Denne bryteren deaktiverer avansert xxhash kontrollsum
støtte. Fjern denne bryteren hvis du har installert xxhash.
--without-included-zlib: Denne
bryteren aktiverer kompilering med det systeminstallerte zlib
biblioteket.
For klienttilgang til eksterne filer, må du kanskje installere OpenSSH-9.8p1 pakken for å koble til den eksterne serveren.
Dette er en enkel nedlastingskonfigurasjon for å sette opp kjørende rsync som en server. Se rsyncd.conf(5) manualside for flere alternativer (dvs. brukerautentisering).
cat > /etc/rsyncd.conf << "EOF"
# This is a basic rsync configuration file
# It exports a single module without user authentication.
motd file = /home/rsync/welcome.msg
use chroot = yes
[localhost]
path = /home/rsync
comment = Default rsync module
read only = yes
list = yes
uid = rsyncd
gid = rsyncd
EOF
Du kan finne ytterligere konfigurasjonsinformasjon og generell dokumentasjon om rsync på https://rsync.samba.org/documentation.html.
Merk at du bare trenger å starte rsync server hvis du vil tilby et rsync arkiv på din lokale maskin. Du trenger ikke dette enheten for å kjøre rsync klienten.
Installer rsyncd.service enheten inkludert i
blfs-systemd-units-20240801
pakken.
make install-rsyncd
Denne pakken kommer med to typer enheter: En tjenestefil og en socket fil. Tjenestefilen vil starte rsync nissen en gang ved oppstart og den vil fortsette å kjøre til systemet slår seg av. Socket filen vil få systemd til å lytte på rsync porten (standard 873, må redigeres for noe annet) og vil starte rsync nissen når noe prøver å koble til den porten og stoppe nissen når tilkoblingen er avsluttet. Dette kalles socket aktivering og er analogt med å bruke {,x}inetd på et SysVinit basert system.
Som standard brukes den første metoden - rsync nissen
startes ved oppstart og stoppet ved avstengning. Hvis
socket metoden er ønsket, trenger du å kjøre som
root bruker:
systemctl stop rsyncd && systemctl disable rsyncd && systemctl enable rsyncd.socket && systemctl start rsyncd.socket
Merk at socket metoden bare er nyttig for ekstern sikkerhetskopiering. Til lokale sikkerhetskopier trenger du tjenestemetoden.
|
er en erstatning for rcp (og scp) som har mange flere funksjoner. Den bruker “rsync algoritme” som gir en veldig rask metode for synkronisering av eksterne filer. Den gjør dette ved å sende bare forskjellene i filene på tvers av lenken, uten at det kreves at begge sett med filer er tilstede i den ene enden av lenken på forhånd |
|
|
er et hjelpeskript som brukes når du kobler til en rsync nissen som har SSL støtte innebygd |
Samba pakken gir fil og utskrifts tjenester til SMB/CIFS klienter og Windows nettverk til Linux klienter. Samba kan også konfigureres som en Windows Domenekontrollererstatning, en fil-/utskriftsserver som fungerer som medlem av et Windows Active Directory domene og et NetBIOS (RFC1001/1002) navneserver (som blant annet gir støtte for LAN surfing).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.samba.org/pub/samba/stable/samba-4.20.4.tar.gz
Nedlasting MD5 sum: a366c985dd1b988ff1fda902876f3241
Nedlastingsstørrelse: 41 MB
Estimert diskplass som kreves: 590 MB (legg til 64 MB for rask test)
Estimert byggetid: 2.1 SBU (bruker parallellisme=4; legg til 0,4 SBU for rask test)
GnuTLS-3.8.7.1, jansson-2.14, libtirpc-1.3.5, Parse-Yapp-1.21, og rpcsvc-proto-1.4.4
Fuse-3.16.2, GPGME-1.23.2, ICU-75.1, libtasn1-4.19.0, libxslt-1.1.42 (for dokumentasjon), Linux-PAM-1.6.1, MIT Kerberos V5-1.21.3, og OpenLDAP-2.6.8
Avahi-0.8, BIND-9.20.0, Cups-2.4.10, Cyrus SASL-2.1.28, GDB-15.1, git-2.46.0, GnuPG-2.4.5 (kreves for ADS og testpakken), libaio-0.3.113, libarchive-3.7.4 (for tar i smbclient), libcap-2.70 med PAM, libgcrypt-1.11.0, libnsl-2.0.1, libunwind-1.6.2, lmdb-0.9.31, Markdown-3.6, nss-3.103, popt-1.19, Talloc-2.4.2 (inkludert), Vala-0.56.17, Valgrind-3.23.0 (valgfritt brukt av testpakken), xfsprogs-6.9.0, cmocka, cryptography, ctdb (inkludert), cwrap, dnspython, FAM, Gamin, GlusterFS, Heimdal (inkludert), iso8601, ldb (inkludert), OpenAFS, poetry-core (påkrevd for ADS), pyasn1, tevent (inkludert), tdb (inkludert), og tracker-2
Installer i oppført rekkefølge: six-1.16.0, pytest-8.3.2, argparse, testtools, testscenarios, og python-subunit
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/samba4
For å støtte testpakken, sett opp et virtuelt Pythonmiljø for noen Pythonmoduler utenfor omfanget av BLFS:
python3 -m venv pyvenv && ./pyvenv/bin/pip3 install cryptography pyasn1 iso8601
Installer Samba ved å kjøre følgende kommandoer:
PYTHON=$PWD/pyvenv/bin/python3 \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--with-piddir=/run/samba \
--with-pammodulesdir=/usr/lib/security \
--enable-fhs \
--without-ad-dc \
--with-system-mitkrb5 \
--enable-selftest \
--disable-rpath-install &&
make
For å teste resultatene, kjør: PATH=$PWD/pyvenv/bin:$PATH make
quicktest. Testpakken vil produsere linjer
som ser ut som feil, men disse er ufarlige. De siste
utdatalinjene skal rapportere "ALL
OK" for en god testkjøring. En oppsummering av
eventuelle feil finner du i ./st/summary.
I tillegg er testpakker for utviklere tilgjengelige. Hvis du har installert de valgfrie pythonmodulene ovenfor i det virtuelle Pythonmiljøet for å bygge denne pakken, kan du kjøre disse testene med make test. Det anbefales ikke for gjennomsnittsbyggeren, testene er rundt 290 SBU og over en gigabyte diskplass, og du bør forvente ~73 feil og ~30 mislykket fra 3000+ tester.
Fiks hardkodete baner til Python 3 tolken:
sed '1s@^.*$@#!/usr/bin/python3@' \
-i ./bin/default/source4/scripting/bin/*.inst
Hvis du oppgraderer fra en gammel versjon av samba, som
root bruker, fjerne de gamle
Python støttefilene for å forhindre noen problemer:
rm -rf /usr/lib/python3.12/site-packages/samba
Fortsatt som root bruker,
installer pakken:
make install &&
install -v -m644 examples/smb.conf.default /etc/samba &&
sed -e "s;log file =.*;log file = /var/log/samba/%m.log;" \
-e "s;path = /usr/spool/samba;path = /var/spool/samba;" \
-i /etc/samba/smb.conf.default &&
mkdir -pv /etc/openldap/schema &&
install -v -m644 examples/LDAP/README \
/etc/openldap/schema/README.samba &&
install -v -m644 examples/LDAP/samba* \
/etc/openldap/schema &&
install -v -m755 examples/LDAP/{get*,ol*} \
/etc/openldap/schema
--enable-fhs:
Tildeler alle andre filbaner på en måte som er i samsvar med
Filesystem Hierarchy Standard (FHS).
--without-ad-dc:
Deaktiver Active Directory Domain Controller funksjonalitet.
Se
Set up a Samba Active Directory Domain Controller for
detaljert informasjon. Fjern denne bryteren hvis du har
installert Pythonmodulene nødvendig for ADS støtte. Merk at
BLFS ikke gir et samba oppstartsskript eller systemd enhet
for en Active Directory domenekontroller.
--with-system-mitkrb5:
Aktiverer bygging med systemversjonen av Kerberos. Dette
reduserer sikkerhetssårbarheter og reduserer byggetiden.
Fjern denne hvis du ikke har MIT Kerberos V5-1.21.3
installert.
--disable-rpath-install:
Fjerner bibliotekinstallasjonsbanen fra innebygd delt
biblioteksøk stier i de installerte binære kjørbare filene og
delte bibliotekene. Når denne pakken er installert på
standardplasseringen, blir biblioteket installasjonsveien er
/usr/lib. Det søkes alltid
etter den dynamiske linkeren, så det er ikke nødvendig bygge
den inn i installerte filer.
--with-selftest-prefix=SELFTEST_PREFIX: Dette
alternativet spesifiserer testpakkens arbeidsmappe
(default=./st).
install -v -m644
examples/LDAP/* /etc/openldap/schema: Disse
kommandoene brukes til å kopiere eksempler på Samba skjemaer
til OpenLDAP schema mappen.
install -v -m644
../examples/smb.conf.default /etc/samba:
Dette kopierer en standard smb.conf fil i /etc/samba. Denne eksempelkonfigurasjonen
vil ikke fungerer før du kopierer det til /etc/samba/smb.conf og gjør de nødvendige
endringene for installasjonen. Se konfigurasjon seksjonen for
minimumsverdier som må settes.
Hvis du bruker CUPS for
utskriftstjenester, og du ønsker å skrive ut til en skriver
koblet til en SMB klient, må du opprette en SMB
bakstykkeenhet. For å opprette enheten, utfør følgende
kommando som root bruker:
install -dvm 755 /usr/lib/cups/backend && ln -v -sf /usr/bin/smbspool /usr/lib/cups/backend/smb
På grunn av kompleksiteten og de mange ulike bruksområdene
for Samba, komplett
konfigurasjon for alle pakkens kapasiteter er langt utenfor
omfanget av BLFS boken. Denne delen gir instruksjoner for å
konfigurere /etc/samba/smb.conf filen for to vanlige
scenarier. Det komplette innholdet i /etc/samba/smb.conf vil avhenge av
formålet med Samba
installasjonen.
Du kan finne det lettere å kopiere de viste
konfigurasjonsparametrene under inn i en tom /etc/samba/smb.conf fil i stedet for å
kopiere og redigere standardfilen som nevnt i
“Parameterforklaringer” seksjonen.
Hvordan du oppretter/redigerer /etc/samba/smb.conf filen vil bli
overlatt til deg. Sørg for at filen bare er skrivbar av
root bruker (mode 644).
Velg denne varianten hvis du kun vil overføre filer ved hjelp av smbclient, montere Windows delinger og skrive ut til Windows skrivere, og ønsker ikke å dele filene og skriverne dine med Windows maskiner.
En /etc/samba/smb.conf fil
med følgende tre parametere er tilstrekkelig:
[global]
workgroup = WORKGROUP
dos charset = cp850
unix charset = ISO-8859-1
Verdiene i dette eksemplet spesifiserer at datamaskinen
tilhører en Windows arbeidsgruppe navngitt , bruker
WORKGROUP tegnsett når
du snakker med MS-DOS og MS Windows 9x, og at filnavnene
er lagret i cp850 koding
på disken. Juster disse verdiene riktig for din
installasjon. ISO-8859-1unix charset
verdien må være den samme som utdataen av locale charmap når den
utføres med LANG variabel satt
til din foretrukne lokalitet, ellers vil ls kommandoen kanskje
ikke vise filnavn på nedlastede filer riktig.
Det er ikke nødvendig å kjøre noen Samba servere i dette scenariet, så du trenger ikke å installere det medfølgende systemd enheten.
Velg denne varianten hvis du vil dele filene og skriverne dine til Windows maskiner i arbeidsgruppen din i tillegg til mulighetene beskrevet i scenario 1.
I dette tilfellet /etc/samba/smb.conf.default filen kan
være en god mal å starte fra. Du bør også legge til
“dos
charset” og “unix charset”
parametere til “[global]” seksjonen som beskrevet i
Scenario 1 for å forhindre korrupsjon av filnavn. Av
sikkerhetsmessige årsaker kan du definere path =
/home/alice/shared-files, forutsatt at
brukernavnet ditt er alice og du vil bare dele
filene i den mappen, i stedet for hele home mappen. Bytt
deretter ut homes med shared-files og endre
også “comment”
hvis du bruker konfigurasjonsfilen nedenfor eller
/etc/samba/smb.conf.default
for å lage din.
Følgende konfigurasjonsfil oppretter en separat delingsfil for hver brukers hjemmemappe og gjør også alle skrivere tilgjengelige for Windows maskiner:
[global]
workgroup = WORKGROUP
dos charset = cp850
unix charset = ISO-8859-1
[homes]
comment = Home Directories
browseable = no
writable = yes
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
printable = yes
Andre parametere du kanskje ønsker å tilpasse i “[global]” delen inkluderer:
server string =
security =
hosts allow =
load printers =
log file =
max log size =
socket options =
local master =
Referer til kommentarene i /etc/samba/smb.conf.default filen for
informasjon angående disse parameterne.
Siden smbd
og nmbd
nissene er nødvendig i dette tilfellet, installer
samba systemd enheten. Sørg for å kjøre
smbpasswd
(med -a alternativet for å
legge til brukere) for å aktivere og angi passord for
alle kontoer som trenger Samba tilgang. Bruke standard
Samba passdb backend,
alle brukere du prøver å legge til, må også eksistere i
/etc/passwd filen.
Mer komplekse scenarier som involverer domenekontroll eller medlemskap er mulig. Slike oppsett er avanserte emner og kan ikke bli tilstrekkelig dekket i BLFS. Det er skrevet mange komplette bøker om disse temaene. Vær oppmerksom på at i noen scenarier for domenemedlemskap, winbindd nissen og tilsvarende systemd enhet trengs.
Standard Samba
installasjonen bruker nobody brukeren for gjesttilgang til
serveren. Dette kan overstyres ved å stille inn
guest account = parameteren i
/etc/samba/smb.conf filen.
Hvis du bruker guest account
= parameter, sørg for at denne brukeren eksisterer
i /etc/passwd filen.
For å starte Samba
nissene ved oppstart, installer systemd enhetene fra
blfs-systemd-units-20240801
pakken ved å kjøre følgende kommando som root bruker:
make install-samba
For å starte winbindd nissen ved
oppstart, installer systemd enheten fra blfs-systemd-units-20240801
pakken ved å kjøre følgende kommando som root bruker:
make install-winbindd
Denne pakken kommer med to typer enheter: En tjenestefil og en socket fil. Tjenestefilen vil starte smbd nissen en gang ved oppstart og den vil fortsette å kjøre til systemet slår seg av. Socket filen vil få systemd til å lytte på smbd porten (standard 445, må redigeres for noe annet) og vil starte smbd nissen når noe prøver å koble til den porten og stoppe nissen når forbindelsen er avsluttet. Dette kalles socket aktivering og er analog med å bruke {,x}inetd på et SysVinit basert system.
Som standard brukes den første metoden - smbd nissen
startes ved oppstart og stoppet ved avstengning. Hvis
socket metoden er ønsket, må du kjøre følgende
kommandoer som root
bruker:
systemctl stop smbd && systemctl disable smbd && systemctl enable smbd.socket && systemctl start smbd.socket
Merk at bare smbd nissen kan socket aktiveres.
|
er dd kommandoen for SMB |
|
|
brukes til å lese og manipulere TDB/CTDB databaser ved hjelp av dbwrap grensesnittet |
|
|
dumper innholdet i MS katalogfiler |
|
|
brukes til å skrive poster til hendelseslogger fra
STDIN, legg til spesifiserte kilde og DLL
hendelsesloggregisteroppføringer og vis aktive
hendelsesloggnavn (fra |
|
|
brukes til å kjøre tilfeldige generiske SMB operasjoner mot to SMB servere og viser forskjellene i oppførsel |
|
|
er et kommandolinjeverktøy for å legge til poster til en LDB database |
|
|
er et kommandolinjeverktøy for å slette LDB databaseposter |
|
|
lar deg redigere LDB databaser ved å bruke ditt foretrukne skriveprogram |
|
|
lar deg endre poster i en LDB database |
|
|
lar deg gi nytt navn til LDB databaser |
|
|
søker i en LDB database for poster som samsvarer med en spesifisert uttrykk |
|
|
brukes til å finne forskjeller i låsing mellom to SMB servere |
|
|
brukes til å finne forskjeller i jokertegn matching mellom Sambas implementering og den av en ekstern server |
|
|
kjører Spotlight søkinger mot en SMB server |
|
|
brukes til rekursivt å endre navn på utvidede attributter |
|
|
er en DCE/RPC pakkefortolker og dumper |
|
|
er et verktøy for administrasjon av Samba og eksterne CIFS servere, som ligner på net verktøyet for DOS/Windows |
|
|
er Samba NetBIOS navneserver |
|
|
brukes til å spørre etter NetBIOS navn og tilordne dem til IP adresser |
|
|
er et verktøy for å tillate ekstern tilgang til Winbind sin NTLM autentiseringsfunksjon |
|
|
konverterer LDAP skjemaer til LDB-kompatible LDIF |
|
|
er et verktøy som brukes til å administrere SAM databasen |
|
|
er et verktøy som rapporterer og endrer SIDer i Windows registerfiler |
|
|
er et Diff program for Windows registerfiler |
|
|
bruker registeroppdateringer på registerfiler |
|
|
er en Windows registerfilleser som bruker readline |
|
|
er en registervisning i tekstmodus |
|
|
brukes til å utføre MS-RPC klientsidefunksjoner |
|
|
analyserer winbind logger generert av Samba |
|
|
lar deg redigere Microsoft Group Policy Objects (GPOs) |
|
|
er et ncurses basert verktøy for å administrere Samba registeret |
|
|
er hoved administrasjonsverktøyet for Samba |
|
|
manipulerer dele ACL tillatelser på SMB fildelinger |
|
|
brukes til å manipulere Windows NT tilgangskontrolllister |
|
|
er et SMB/CIFS tilgangsverktøy som ligner på FTP |
|
|
brukes til å kontrollere kjørende smbd, nmbd og winbindd nisser |
|
|
brukes til å manipulere Windows NT kvoter på SMB fildelinger |
|
|
er hoved Samba nissen som leverer SMB/CIFS tjenester til klienter |
|
|
er et enkelt verktøy med wget-likt semantikk, som kan laste ned filer fra SMB servere. Du kan spesifisere filer du vil laste ned på kommandolinjen |
|
|
endrer en brukers Samba passord |
|
|
sender en utskriftsjobb til en SMB skriver |
|
|
rapporterer aktuelle Samba forbindelser |
|
|
er et skallskript som brukes til å sikkerhetskopiere SMB/CIFS delinger direkte til Linux båndstasjoner eller til en fil |
|
|
er en testpakke som kjører flere tester mot en SMB server |
|
|
er en tekstbasert SMB nettleser |
|
|
er et verktøy for å sikkerhetskopiere eller
validere integriteten til Samba |
|
|
er et verktøy som brukes til å skrive ut innholdet
i en Samba
|
|
|
er et verktøy for å opprette en Samba |
|
|
er et verktøy som tillater enkel databasemanipulering fra kommandolinjen |
|
|
sjekker |
|
|
spør en kjørende winbindd nisse |
|
|
løser navn fra Windows NT servere |
|
|
gir Name Service Switch API funksjoner for å løse navn fra NT servere |
|
|
gir API funksjoner for Sambas implementering av Windows Internett navnetjeneste |
|
|
gir API funksjoner for administrasjonsverktøyene som brukes for Samba og eksterne CIFS servere |
|
|
gir API funksjoner for Samba SMB klientverktøyene |
|
|
tilbyr API funksjoner for Windows domeneklienttjenester |
Wget pakken inneholder et verktøy som er nyttig for ikke-interaktiv nedlasting av filer fra nettet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/wget/wget-1.24.5.tar.gz
Nedlasting MD5 sum: 271bf949384d0858c2c3d419f6311365
Nedlastingsstørrelse: 4.9 MB
Estimert diskplass som kreves: 36 MB (legg til 27 MB for tester)
Estimert byggetid: 0.3 SBU (legg til 0.3 SBU for tester)
GnuTLS-3.8.7.1, HTTP-Daemon-6.16 (for testpakken), IO-Socket-SSL-2.088 (for testpakken), libidn2-2.3.7, pcre2-10.44, og Valgrind-3.23.0 (for testpakken)
Installer Wget ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--with-ssl=openssl &&
make
For å teste resultatene, kjør: make check.
Noen tester kan mislykkes når Valgrind tester er aktivert.
Nå, som root bruker:
make install
--sysconfdir=/etc:
Dette flytter konfigurasjonsfilen fra /usr/etc til /etc.
--with-ssl=openssl:
Dette gjør at programmet bruker openssl i stedet for
GnuTLS-3.8.7.1.
--enable-valgrind-tests: Dette
gjør at testene kan bli kjørt under valgrind.
Før du bruker noen brukerområdeverktøy for å koble til et trådløst AP, Linux kjernen må være konfigurert for å drive det trådløse NIC-en riktig. Aktiver følgende alternativer i kjernekonfigurasjonen så vel som spesifikke enhetsdrivere for maskinvaren din og kompiler kjernen på nytt hvis nødvendig:
[*] Networking support ---> [NET] [*] Wireless ---> [WIRELESS] <*/M> cfg80211 - wireless configuration API [CFG80211] < /*/M> Generic IEEE 802.11 Networking Stack (mac80211) [MAC80211] Device Drivers ---> [*] Network device support ---> [NETDEVICES] [*] Wireless LAN ---> [WLAN]
Åpne “Wireless
LAN” undermenyen og velg alternativene som
støtter maskinvaren din. lspci fra pciutils-3.13.0
eller lsusb fra
usbutils-017 kan brukes til se
maskinvarekonfigurasjonen din. Merk at mange (men ikke alle)
alternativene for de trådløse NIC-ene avhenger av CONFIG_MAC80211. Etter at de
riktige driverne er astet, vil grensesnittet vises i
/sys/class/net, eller i utdataen
til ip link
kommandoen.
Mange trådløse NIC drivere krever fastvare. Hvis du har
aktivert riktig driver i kjernekonfigurasjonen, men den klarer
ikke å laste (med meldinger som Direct firmware load for , betyr det at du må installere fastvaren eller
det trådløse nettverkskortet vil ikke fungere. Les Om
Fastvare for flere detaljer.
<filename> failed with
error -2
iw er en ny nl80211 basert CLI konfigurasjons verktøy for trådløse enheter. Den støtter alle nye drivere som har blitt lagt til kjernen nylig. Det gamle verktøyet iwconfig, som bruker trådløse utvidelser grensesnitt, er utdatert og det anbefales sterkt å bytte til iw og nl80211.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/software/network/iw/iw-6.9.tar.xz
Nedlasting MD5 sum: 457c99badf2913bb61a8407ae60e4819
Nedlastingsstørrelse: 156 KB
Estimert diskplass som kreves: 3.9 MB
Estimert byggetid: mindre enn 0.1 SBU
For å bruke iw, må kjernen ha passende drivere og annen støtte tilgjengelig. Les Configuring the Linux Kernel for Wireless for detaljer.
For å installere iw, bruk følgende kommandoer:
sed -i "/INSTALL.*gz/s/.gz//" Makefile && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
sed ...: Installer ukomprimerte manualsider i samsvar med andre mansider.
Wireless Extension (WE) er en generisk API i Linuxkjernen som tillater en driver for å avsløre konfigurasjon og statistikk som er spesifikke for vanlige Trådløse LAN til brukerrom. Et enkelt sett med verktøy kan støtte alle varianter av trådløse LAN, uavhengig av type, så lenge driveren støtter trådløse utvidelser. WE parametere kan også endres uten å starte driveren på nytt (eller Linux).
Wireless Tools (WT) pakken er et sett av verktøy som tillater manipulering av de trådløse utvidelsene. De bruker en tekstlig grensesnitt for å støtte hele den trådløse utvidelsen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://hewlettpackard.github.io/wireless-tools/wireless_tools.29.tar.gz
Nedlasting MD5 sum: e06c222e186f7cc013fd272d023710cb
Nedlastingsstørrelse: 288 KB
Estimert diskplass som kreves: 2.0 MB
Estimert byggetid: mindre enn 0.1 SBU
For å bruke Wireless Tools, må kjernen ha passende drivere og annen støtte tilgjengelig. Ved siden av konfigurasjoner nevnt av Configuring the Linux Kernel for Wireless, er det også nødvendig for å aktivere følgende alternativer i kjernekonfigurasjonen:
[*] Networking support ---> [NET] [*] Wireless ---> [WIRELESS] <*/M> cfg80211 - wireless configuration API [CFG80211] [*] cfg80211 wireless extensions compatibility [CFG80211_WEXT]
Først, bruk en oppdatering som løser et problem når det er mange nettverk tilgjengelig:
patch -Np1 -i ../wireless_tools-29-fix_iwlist_scanning-1.patch
For å installere Wireless Tools, bruk følgende kommandoer:
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PREFIX=/usr INSTALL_MAN=/usr/share/man install
INSTALL_MAN=/usr/share/man:
Installerer manualsider i /usr/share/man i stedet for /usr/man.
|
gir nytt navn til nettverksgrensesnitt basert på ulike statiske kriterier |
|
|
konfigurerer et trådløst nettverksgrensesnitt |
|
|
viser trådløse hendelser generert av drivere og innstillingsendringer |
|
|
rapporterer ESSID, NWID eller AP/Cell Adresse til trådløse nettverk |
|
|
henter detaljert trådløs informasjon fra et trådløst grensesnitt |
|
|
konfigurerer valgfrie (private) parametere for et trådløst nettverk grensesnitt |
|
|
får trådløs statistikk fra spesifikk node |
|
|
inneholder funksjoner som kreves av de trådløse programmene og gir en API for andre programmer |
WPA Supplicant er en Wi-Fi beskyttet tilgang (WPA) klient og IEEE 802.1X leverandør. Den implementerer WPA nøkkelforhandling med en WPA Authenticator og Extensible Authentication Protocol (EAP) autentisering med en autentiseringsserver. I tillegg kontrollerer den roaming og IEEE 802.11 autentisering/tilknytning av det trådløse LAN driveren. Dette er nyttig for å koble til et passordbeskyttet trådløst nettverk tilgangspunkt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://w1.fi/releases/wpa_supplicant-2.11.tar.gz
Nedlasting MD5 sum: 72a4a00eddb7a499a58113c3361ab094
Nedlastingsstørrelse: 3.7 MB
Estimert diskplass som kreves: 35 MB
Estimert byggetid: 0.3 SBU (uten valgfri gui)
Configuring the Linux Kernel for Wireless
desktop-file-utils-0.27 (for kjøring av update-desktop-database) og libnl-3.10.0
For å bruke wpa_supplicant, kjernen må ha passende drivere og annen støtte tilgjengelig. Les Configuring the Linux Kernel for Wireless for detaljer.
Først må du opprette en innledende konfigurasjonsfil for
byggeprosessen. Du kan lese wpa_supplicant/README og wpa_supplicant/defconfig for forklaringen
av følgende alternativer samt andre alternativer som kan
brukes. Lag en konfigurasjonsfil som skal fungere for
standard WiFi oppsett ved å kjøre følgende kommando:
cat > wpa_supplicant/.config << "EOF"
CONFIG_BACKEND=file
CONFIG_CTRL_IFACE=y
CONFIG_DEBUG_FILE=y
CONFIG_DEBUG_SYSLOG=y
CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
CONFIG_DRIVER_NL80211=y
CONFIG_DRIVER_WEXT=y
CONFIG_DRIVER_WIRED=y
CONFIG_EAP_GTC=y
CONFIG_EAP_LEAP=y
CONFIG_EAP_MD5=y
CONFIG_EAP_MSCHAPV2=y
CONFIG_EAP_OTP=y
CONFIG_EAP_PEAP=y
CONFIG_EAP_TLS=y
CONFIG_EAP_TTLS=y
CONFIG_IEEE8021X_EAPOL=y
CONFIG_IPV6=y
CONFIG_LIBNL32=y
CONFIG_PEERKEY=y
CONFIG_PKCS12=y
CONFIG_READLINE=y
CONFIG_SMARTCARD=y
CONFIG_WPS=y
CFLAGS += -I/usr/include/libnl3
EOF
Hvis du ønsker å bruke WPA Supplicant med NetworkManager-1.48.8, sørg for at du har installert dbus-1.14.10 og libxml2-2.13.3, legg deretter til følgende alternativer til WPA Supplicant byggekonfigurasjonsfilen ved å kjøre følgende kommando:
cat >> wpa_supplicant/.config << "EOF"
CONFIG_CTRL_IFACE_DBUS=y
CONFIG_CTRL_IFACE_DBUS_NEW=y
CONFIG_CTRL_IFACE_DBUS_INTRO=y
EOF
Installer WPA Supplicant ved å kjøre følgende kommandoer:
cd wpa_supplicant && make BINDIR=/usr/sbin LIBDIR=/usr/lib
Hvis du har installert qt5-components-5.15.14 og ønsker å bygge WPA Supplicant GUI programmet, kjør følgende kommandoer:
Følgende mappenavn er merket qt4, men er kompatibel med qt5-components-5.15.14.
pushd wpa_gui-qt4 && qmake wpa_gui.pro && make && popd
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
install -v -m755 wpa_{cli,passphrase,supplicant} /usr/sbin/ &&
install -v -m644 doc/docbook/wpa_supplicant.conf.5 /usr/share/man/man5/ &&
install -v -m644 doc/docbook/wpa_{cli,passphrase,supplicant}.8 /usr/share/man/man8/
Installer systemd
støttefiler ved å kjøre følgende kommando som root bruker:
install -v -m644 systemd/*.service /usr/lib/systemd/system/
Hvis du har bygget WPA
Supplicant med D-Bus
støtte, må du installere D-Bus konfigurasjonsfiler. Installer dem
ved å kjøre følgende kommandoer som root bruker:
install -v -m644 dbus/fi.w1.wpa_supplicant1.service \
/usr/share/dbus-1/system-services/ &&
install -v -d -m755 /etc/dbus-1/system.d &&
install -v -m644 dbus/dbus-wpa_supplicant.conf \
/etc/dbus-1/system.d/wpa_supplicant.conf
Hvis du har bygget WPA
Supplicant GUI programmet, installer den ved å kjøre
følgende kommandoer som root
bruker:
install -v -m755 wpa_gui-qt4/wpa_gui /usr/bin/ && install -v -m644 doc/docbook/wpa_gui.8 /usr/share/man/man8/ && install -v -m644 wpa_gui-qt4/wpa_gui.desktop /usr/share/applications/ && install -v -m644 wpa_gui-qt4/icons/wpa_gui.svg /usr/share/pixmaps/
Du må starte på nytt systemets D-Bus nisse før du kan bruke WPA Supplicant D-Bus grensesnittet.
Denne pakken installerer skrivebordsfiler i /usr/share/applications hierarkiet og du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha desktop-file-utils-0.27
installert og utstede følgende kommando som root bruker:
update-desktop-database -q
Hvis du bruker WPA Supplicant med NetworkManager-1.48.8 (eller noe som kommuniserer med WPA Supplicant via D-Bus), bør denne delen hoppes over. Å kjøre en D-Bus tilkoblet WPA Supplicant økt og en annen WPA Supplicant forekomst konfigurert etter denne delen samtidig kan forårsake subtile problemer.
For å koble til et tilgangspunkt som bruker et passord, må
du putte den forhåndsdelte nøkkelen inn i /etc/wpa_supplicant/wpa_supplicant-.
SSID er strengen som tilgangspunktet/ruteren sender for å
identifisere seg. Kjør følgende kommando som wifi0.confroot bruker:
install -v -dm755 /etc/wpa_supplicant && wpa_passphraseSSIDSECRET_PASSWORD> /etc/wpa_supplicant/wpa_supplicant-wifi0.conf
/etc/wpa_supplicant/wpa_supplicant-
kan inneholde detaljene til flere tilgangspunkter. Når
wpa_supplicant er
startet, vil den skanne etter SSID-er den kan se og velge
riktig passord for å koble til.
wifi0.conf
Hvis du vil koble til et tilgangspunkt som ikke er
passordbeskyttet, legg inn en oppføring som dette
/etc/wpa_supplicant/wpa_supplicant-.
Erstatt "Some-SSID" med SSID for tilgangspunktet/ruteren.
wifi0.conf
network={
ssid="Some-SSID"
key_mgmt=NONE
}
Å koble til et nytt tilgangspunkt som ikke er i konfigurasjonsfilen kan utføres manuelt via kommandolinjen eller GUI, men det må gjøres via en privilegert bruker. For å gjøre det, legg til følgende i konfigurasjonsfilen:
ctrl_interface=DIR=/run/wpa_supplicant GROUP=<privileged group> update_config=1
Bytt ut <privileged group> ovenfor med en systemgruppe hvor medlemmer har muligheten til å koble til et trådløst tilgangspunkt.
Det er mange alternativer du kan bruke for å justere
hvordan du kobler til til hvert tilgangspunkt. De er
beskrevet i noen detalj i wpa_supplicant/wpa_supplicant.conf filen
i kildetreet.
Det er 3 typer systemd enheter som ble installert:
wpa_supplicant@.service
wpa_supplicant-nl80211@.service
wpa_supplicant-wired@.service
Den eneste forskjellen mellom 3 av dem er hvilken driver som brukes for tilkobling (-D-alternativ). Den første bruker standarddriveren, den andre bruker nl80211 driver og den tredje bruker den kablede driveren.
Du kan koble til det trådløse tilgangspunktet ved å kjøre
følgende kommando som root
bruker:
systemctl start wpa_supplicant@wlan0
For å koble til det trådløse tilgangspunktet ved oppstart,
aktiver den aktuelle wpa_supplicant service
ved å kjøre følgende kommando som root bruker:
systemctl enable wpa_supplicant@wlan0
Avhengig av oppsettet ditt, kan du erstatte wpa_supplicant@.service med en hvilken
som helst annen oppført ovenfor.
For å tilordne en nettverksadresse til det trådløse grensesnittet, se Generell nettverkskonfigurasjon siden i LFS.
|
er et grafisk grenseflate program for samhandling med wpa_supplicant |
|
|
er en nisse som kan koble til et passordbeskyttet trådløst nettverk tilgangspunkt |
|
|
tar en SSID og et passord og genererer en enkel konfigurasjon som wpa_supplicant kan forstå |
|
|
er et kommandolinjegrensesnitt som brukes til å kontrollere en kjørende wpa_supplicant nisse |
Brukernotater: https://wiki.linuxfromscratch.org/blfs/wiki/basicnetworkingutilities
Avahi pakken er et system som forenkler tjenesteoppdagelse på et lokalt nettverk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lathiat/avahi/releases/download/v0.8/avahi-0.8.tar.gz
Nedlasting MD5 sum: 229c6aa30674fc43c202b22c5f8c2be7
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 32 MB
Estimert byggetid: 0.3 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/avahi-0.8-ipv6_race_condition_fix-1.patch
GLib-2.80.4 (GObject Introspection anbefalt)
GTK+-3.24.43, libdaemon-0.14, og qt5-components-5.15.14
D-Bus Python-1.3.2, libevent-2.1.12, Doxygen-1.12.0, GTK+-2 (avviklet), og xmltoman (for å generere dokumentasjon)
Det bør være en dedikert bruker og gruppe til å ta kontroll
på avahi-daemon
nissen etter at det er startet. Utfør følgende kommandoer som
root bruker:
groupadd -fg 84 avahi &&
useradd -c "Avahi Daemon Owner" -d /run/avahi-daemon -u 84 \
-g avahi -s /bin/false avahi
Det bør også være en dedikert privilegert tilgangsgruppe for
Avahi klienter. Utfør
følgende kommando som root
bruker:
groupadd -fg 86 netdev
Fiks en regresjon som resulterer i en konkurranse tilstand når IPv6 er i bruk og flere nettverkskort er tilstede på systemet:
patch -Np1 -i ../avahi-0.8-ipv6_race_condition_fix-1.patch
Rett opp en sikkerhetssårbarhet i avahi-daemon:
sed -i '426a if (events & AVAHI_WATCH_HUP) { \
client_free(c); \
return; \
}' avahi-daemon/simple-protocol.c
Installer Avahi ved å kjøre følgende kommandoer:
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
--disable-libevent \
--disable-mono \
--disable-monodoc \
--disable-python \
--disable-qt3 \
--disable-qt4 \
--enable-core-docs \
--with-distro=none \
--with-dbus-system-address='unix:path=/run/dbus/system_bus_socket' &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-libevent:
Denne parameteren deaktiverer bruken av libevent-2.1.12.
Fjern hvis du har den installert.
--disable-mono: Denne
parameteren deaktiverer Mono
bindinger.
--disable-monodoc:
Denne parameteren deaktiverer dokumentasjon for Mono bindinger.
--disable-python:
Denne parameteren deaktiverer skript som er avhengig av
Python. Det lar også en
vanlig installasjon fullføre.
--disable-qt3: Denne
parameteren deaktiverer forsøk på å bygge de foreldede
Qt3 deler av pakken.
--disable-qt4: Denne
parameteren deaktiverer forsøk på å bygge de foreldede
Qt4Core deler av pakken.
--enable-core-docs:
Denne parameteren aktiverer bygging av dokumentasjonen.
--with-distro=none:
Det er et foreldet oppstartsskript i distribusjonen for LFS.
Dette alternativet deaktiverer det.
--with-dbus-system-address=:
Dette alternativet forhindrer at pakken refererer til den
utdaterte /var/run mappen.
--disable-dbus: Denne parameteren
deaktiverer bruken av D-Bus.
--disable-gtk: Denne parameteren
deaktiverer bruken av GTK+2.
--disable-gtk3: Denne parameteren
deaktiverer bruken av GTK+3.
--disable-qt5: Denne parameteren
deaktiverer bruken av Qt5,
og tillater bygging uten den.
--disable-libdaemon: Denne
parameteren deaktiverer bruken av libdaemon. Hvis du bruker dette
alternativet, avahi-daemon vil ikke bli
bygget.
--enable-tests: Dette
alternativet gjør det mulig å bygge tester og eksempler.
--enable-compat-howl: Dette
alternativet aktiverer kompatibilitetslag for HOWL.
--enable-compat-libdns_sd: Dette
alternativet aktiverer kompatibilitetslag for libdns_sd.
For å starte avahi-daemon nissen ved
oppstart, aktiver den tidligere installerte systemd enheten
ved å kjøre følgende kommando som root bruker:
systemctl enable avahi-daemon
For å starte avahi-dnsconfd nissen ved
oppstart, aktiver den tidligere installerte systemd enheten
ved å kjøre følgende kommando som root bruker:
systemctl enable avahi-dnsconfd
|
er en konfigurasjonsnisse for IPv4LL nettverksadresse |
|
|
søker etter mDNS/DNS-SD tjenester ved hjelp av Avahi nissen |
|
|
søker etter mDNS/DNS-SD tjenester ved hjelp av Avahi nissen |
|
|
er Avahi mDNS/DNS-SD nissen |
|
|
søker etter mDNS/DNS-SD tjenester ved hjelp av Avahi nissen |
|
|
er en Unicast DNS server fra mDNS/DNS-SD konfigurasjonsnissen |
|
|
registrerer en mDNS/DNS-SD tjeneste eller vertsnavn eller adressetilordning ved bruk av Avahi nissen |
|
|
registrerer en mDNS/DNS-SD tjeneste eller vertsnavn eller adressetilordning ved bruk av Avahi nissen |
|
|
registrerer en mDNS/DNS-SD tjeneste eller vertsnavn eller adressetilordning ved bruk av Avahi nissen |
|
|
løser ett eller flere mDNS/DNS vertsnavn til IP adresse(r) (og omvendt) ved å bruke Avahi nissen |
|
|
løser ett eller flere mDNS/DNS vertsnavn til IP adresse(r) (og omvendt) ved å bruke Avahi nissen |
|
|
løser ett eller flere mDNS/DNS vertsnavn til IP adresse(r) (og omvendt) ved å bruke Avahi nissen |
|
|
endrer mDNS vertsnavnet |
|
|
søker etter SSH servere på det lokale nettverket |
|
|
søker etter VNC servere på det lokale nettverket |
BIND Utilities er ikke en separat pakke, det er en samling av klientsideprogrammene som er inkludert med BIND-9.20.0. BIND pakken inkluderer klientsideprogrammene nslookup, dig og host. Hvis du installerer BIND serveren, disse programmene vil bli installert automatisk. Denne delen er for de brukerne som ikke trenger den komplette BIND serveren, men trenger disse applikasjoner på klientsiden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.isc.org/isc/bind9/9.20.0/bind-9.20.0.tar.xz
Nedlasting MD5 sum: 2c8d94d1524cbbae4d76cd74955bb6d9
Nedlastingsstørrelse: 5.5 MB
Estimert diskplass som kreves: 117 MB
Estimert byggetid: 0.5 SBU (bruker parallellisme=4)
liburcu-0.14.0 og libuv-1.48.0
Installer BIND Utilities ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make -C lib/isc && make -C lib/dns && make -C lib/ns && make -C lib/isccfg && make -C bin/dig && make -C doc
Denne delen av pakken kommer ikke med en testpakke.
Nå, som root bruker:
make -C lib/isc install &&
make -C lib/dns install &&
make -C lib/ns install &&
make -C lib/isccfg install &&
make -C bin/dig install &&
cp -v doc/man/{dig.1,host.1,nslookup.1} /usr/share/man/man1
--disable-doh: Bruk dette
alternativet hvis du ikke har installert nghttp2-1.62.1 og
du ikke trenger DNS over HTTPS støtte.
make -C lib/...: Disse kommandoene bygger biblioteker som trengs for klientprogrammene.
make -C bin/dig: Denne kommandoen bygger klientprogrammene.
make -C doc: Denne kommandoen bygger manualsider hvis den valgfrie Python modulen sphinx-8.0.2 er installert.
Bruk cp -v doc/man/{dig.1,host.1,nslookup.1} /usr/share/man/man1 for å installere manualsidene hvis de er bygget.
Se programbeskrivelsene i BIND-9.20.0 seksjonen.
NetworkManager er et sett med samhandlende verktøy som gjør nettverksbygging enkelt og greit. Enten du bruker WiFi, kablet, 3G eller Bluetooth lar NetworkManager deg raskt flytte fra ett nettverk til et annet: Når et nettverk er konfigurert og koblet til en gang kan den oppdages og slås på igjen automatisk neste gang den er tilgjengelig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Pass på at du deaktiverer systemd-networkd tjenesten eller konfigurer den til ikke å administrere grensesnittene du vil administrere med NetworkManager.
Nedlasting (HTTP): https://download.gnome.org/sources/NetworkManager/1.48/NetworkManager-1.48.8.tar.xz
Nedlasting MD5 sum: 716942df6afa53f8dad0902f4a3497b4
Nedlastingsstørrelse: 5.8 MB
Estimert diskplass som kreves: 299 MB (med tester og dokumentasjon)
Estimert byggetid: 0.9 SBU (med tester, bruker parallellisme=4)
cURL-8.9.1, dhcpcd-10.0.8, GLib-2.80.4 (med GObject Introspection), iptables-1.8.10, libpsl-0.21.5, newt-0.52.24 (for nmtui), nss-3.103, Polkit-125 (kjøretid), PyGObject-3.48.2, Systemd-256.4, Vala-0.56.17, og wpa_supplicant-2.11 (kjøretid, bygd med D-Bus støtte)
BlueZ-5.77, D-Bus Python-1.3.2 (for testpakken), GnuTLS-3.8.7.1 (kan brukes i stedet for nss-3.103), GTK-Doc-1.34.0, jansson-2.14, ModemManager-1.18.12, qt5-components-5.15.14 med qtdoc (for eksempler), UPower-1.90.4, Valgrind-3.23.0, dnsmasq, firewalld, libaudit, libteam, mobile-broadband-provider-info, PPP, og RP-PPPoE
Hvis du ønsker å kjøre testene, kontroller at minst følgende alternativer er aktivert i kjernekonfigurasjonen. De alternativene har vært fastslått å være nødvendig, men kanskje ikke tilstrekkelig. Kompiler på nytt kjernen om nødvendig:
[*] Networking support ---> [NET] Networking options ---> [*] TCP/IP networking [INET] <*/M> IP: tunneling [NET_IPIP] <*/M> IP: GRE demultiplexer [NET_IPGRE_DEMUX] <*/M> IP: GRE tunnels over IP [NET_IPGRE] <*> The IPv6 protocol ---> [IPV6] <*/M> IPv6: IPv6-in-IPv4 tunnel (SIT driver) [IPV6_SIT] <*/M> IPv6: GRE tunnel [IPV6_GRE] [*] IPv6: Multiple Routing Tables [IPV6_MULTIPLE_TABLES] [*] MPTCP: Multipath TCP [MPTCP] [*] MPTCP: IPv6 support for Multipath TCP [MPTCP_IPV6] <*/M> 802.1Q/802.1ad VLAN Support [VLAN_8021Q] [*] QoS and/or fair queueing ---> [NET_SCHED] <*> Stochastic Fairness Queueing (SFQ) [NET_SCH_SFQ] <*> Token Bucket Filter (TBF) [NET_SCH_TBF] <*> Fair Queue Controlled Delay AQM (FQ_CODEL) [NET_SCH_FQ_CODEL] <*> Ingress/classifier-action Qdisc [NET_SCH_INGRESS] Device Drivers ---> [*] Network device support ---> [NETDEVICES] [*] Network core driver support [NET_CORE] <*/M> Bonding driver support [BONDING] <*/M> Dummy net driver support [DUMMY] <*/M> Ethernet team driver support ---> [NET_TEAM] <*/M> MAC-VLAN support [MACVLAN] <*/M> MAC-VLAN based tap driver [MACVTAP] <*/M> IP-VLAN support [IPVLAN] <*/M> Virtual eXtensible Local Area Network (VXLAN) [VXLAN] <*/M> Virtual ethernet pair device [VETH] <*/M> Virtual Routing and Forwarding (Lite) [NET_VRF]
Hvis qt5-components-5.15.14er installert og Qt basert eksempler ønskes, fiks to meson.build filer:
sed -e 's/-qt4/-qt5/' \
-e 's/moc_location/host_bins/' \
-i examples/C/qt/meson.build &&
sed -e 's/Qt/&5/' \
-i meson.build
Fiks python skriptene slik at de bruker Python 3:
grep -rl '^#!.*python$' | xargs sed -i '1s/python/&3/'
Installer NetworkManager ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
CXXFLAGS+="-O2 -fPIC" \
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D libaudit=no \
-D nmtui=true \
-D ovs=false \
-D ppp=false \
-D selinux=false \
-D qt=false \
-D session_tracking=systemd \
-D modem_manager=false &&
ninja
En allerede aktiv grafisk øky med en bussadresse er nødvendig for å kjøre testene. For å teste resultatene, utsted ninja test.
Noen få tester kan mislykkes, avhengig av aktiverte kjernealternativer.
Nå, som root bruker:
ninja install &&
mv -v /usr/share/doc/NetworkManager{,-1.48.8}
Hvis du ikke har sendt -D
docs=true alternativ til meson, du kan installere de
forhåndsgenererte manualsidene med (som root bruker):
for file in $(echo ../man/*.[1578]); do
section=${file##*.} &&
install -vdm 755 /usr/share/man/man$section
install -vm 644 $file /usr/share/man/man$section/
done
Hvis du ikke har brukt -D
docs=true, forhåndsgenerert HTML dokumentasjon kan
også installeres med (som root bruker):
cp -Rv ../docs/{api,libnm} /usr/share/doc/NetworkManager-1.48.8
CXXFLAGS="-O2 -fPIC": Disse
kompilatoralternativene er nødvendig for å bygge de Qt5
baserte eksemplene.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D docs=true: Bruk denne bryteren
for å aktivere bygging av mansider og dokumentasjon hvis
GTK-Doc-1.34.0 er installert.
-D nmtui=true: Denne
bryteren gjør det mulig å bygge nmtui.
-D ovs=false: Denne
bryteren deaktiverer Open vSwitch integrasjon fordi den
trenger jansson-2.14. Fjern den hvis du har
jansson-2.14 installert på systemet ditt.
-D
modem_manager=false: Denne bryteren er nødvendig
hvis ModemManager ikke er
installert. Utelat denne bryteren hvis du har bygget
ModemManager og mobile-broadband-provider-info.
-D
session_tracking=systemd: Denne bryteren brukes
til å sette systemd-logind som
standardprogram for øktsporing.
-D ppp=false: Denne
bryteren deaktiverer PPP
støtte i NetworkManager
siden programmene er nødvendige for det ikke er installert.
Fjern denne bryteren hvis du trenger PPP støtte og har
PPP installert.
-D libaudit=no og
-D selinux=false:
Denne bryteren deaktiverer støtte for libaudit og SELinux
siden de ikke brukes i BLFS.
-D qt=false:
deaktiverer -Dqt=false: Denne bryteren
deaktiverer Qt eksempler.
Utelat hvis du har Qt
tilgjengelig og ønsker å installere eksemplene.
-D crypto=gnutls: Bruk denne
bryteren hvis du har GnuTLS installert og ønsker å bruke den
til sertifikat og nøkkel operasjoner i NetworkManager, i
stedet for å bruke NSS (standard).
-D crypto=null: Bruk denne
bryteren hvis verken NSS eller GnuTLS er installert, men du
vil uansett bygge NetworkManager. Denne bryteren vil få
NetworkManager til å mangle noen funksjoner (for eksempel
802.1X).
-D suspend_resume=upower: Bruk
denne bryteren hvis du har UPower-1.90.4 installert og ønsker
å bruke den (i stedet for Systemd-256.4) for å suspendere og
gjenoppta støtte.
For at NetworkManager skal
virke, må det i det minste være til stede en minimal
konfigurasjonsfil. En slik fil er ikke installert med
make install.
Utsted følgende kommando som root bruker for å lage en minimal
NetworkManager.conf fil:
cat >> /etc/NetworkManager/NetworkManager.conf << "EOF"
[main]
plugins=keyfile
EOF
Denne filen skal ikke endres direkte av brukere av
systemet. I stedet bør systemspesifikke endringer gjøres
ved hjelp av konfigurasjonsfiler i /etc/NetworkManager/conf.d mappen.
For å tillate polkit å administrere autorisasjoner, legg til følgende konfigurasjonsfil:
cat > /etc/NetworkManager/conf.d/polkit.conf << "EOF"
[main]
auth-polkit=true
EOF
For å bruke noe annet enn den innebygde dhcp klienten (anbefalt hvis du kun bruker nmcli), bruk følgende konfigurasjon (gyldige verdier inkluderer enten dhcpcd eller internal):
cat > /etc/NetworkManager/conf.d/dhcp.conf << "EOF"[main] dhcp=dhcpcdEOF
For å forhindre NetworkManager fra å oppdatere
/etc/resolv.conf filen, legg
til følgende konfigurasjonsfil:
cat > /etc/NetworkManager/conf.d/no-dns-update.conf << "EOF"
[main]
dns=none
EOF
For ytterligere konfigurasjonsalternativer, se man 5 NetworkManager.conf.
For å la vanlige brukere konfigurere nettverkstilkoblinger,
bør du legge dem til netdev
gruppen, og lag en polkit
regel som gir adgang. Kjør følgende kommandoer som
root bruker:
groupadd -fg 86 netdev && /usr/sbin/usermod -a -G netdev<username>cat > /usr/share/polkit-1/rules.d/org.freedesktop.NetworkManager.rules << "EOF"polkit.addRule(function(action, subject) { if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("netdev")) { return polkit.Result.YES; } });EOF
For å starte NetworkManager nissen ved
oppstart, aktiver den tidligere installerte systemd enheten
ved å kjøre følgende kommando som root bruker:
Hvis du bruker Network Manager til å administrere et grensesnitt, bør enhver tidligere konfigurasjon for det grensesnittet være fjernet, og grensesnittet tatt ned før Network Manager startes.
systemctl enable NetworkManager
Fra og med versjon 1.11.2 av NetworkManager, en systemd enhet kalt
NetworkManager-wait-online.service er
aktivert, som brukes til å forhindre tjenester som krever
nettverkstilkobling fra å starte inntil NetworkManager oppretter en
forbindelse. For å deaktivere denne virkemåten, kjør
følgende kommando som root
bruker:
systemctl disable NetworkManager-wait-online
|
er et kommandolinjeverktøy for å kontrollere NetworkManager og få dens status |
|
|
er et verktøy for å avgjøre om du er på nett |
|
|
er et interaktivt ncurses-basert brukergrensesnitt for nmcli |
|
|
er et interaktivt ncurses-basert brukergrensesnitt til å aktivere/deaktivere tilkoblinger |
|
|
er et interaktivt ncurses-basert brukergrensesnitt for å redigere tilkoblinger |
|
|
er et interaktivt ncurses-basert brukergrensesnitt for å redigere vertsnavnet |
|
|
er nettverksadministrasjonsnisse |
|
|
inneholder funksjoner som brukes av NetworkManager |
NetworkManager Applet gir et verktøy og et panelprogram som brukes til å konfigurere kablede og trådløse nettverkstilkoblinger gjennom GUI. Den er designet for bruk med ethvert skrivebordsmiljø som bruker GTK+, som Xfce og LXDE.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/network-manager-applet/1.34/network-manager-applet-1.34.0.tar.xz
Nedlasting MD5 sum: 83ff059aff3a691766d5f0079209e5af
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 46 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
GTK+-3.24.43, libnma-1.10.6, og libsecret-0.21.4
GLib-2.80.4 (med GObject Introspection) og ModemManager-1.18.12
Siden denne pakken bruker Polkit-125 for autorisasjon, en Polkit Authentication Agent bør være kjørende når funksjonaliteten til denne pakken brukes.
Installer NetworkManager Applet ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D appindicator=no \
-D selinux=false &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
-D appindicator=no:
Denne bryteren deaktiverer AppIndicator støtte i
network-manager-applet fordi det krever libindicator, som
ikke er i BLFS. Byggingen vil mislykkes uten dette
alternativet.
-D selinux=false:
Denne bryteren deaktiverer SELinux støtte siden det ikke for
øyeblikket er i BLFS og byggingen vil mislykkes uten den.
-D wwan=false: Denne bryteren
deaktiverer WWAN støtte. Bruk denne hvis du ikke har
ModemManager-1.18.12 installert.
Nmap er et verktøy for nettverksutforskning og sikkerhetsrevisjon. Den støtter pingskanning, portskanning og TCP/IP fingeravtrykk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://nmap.org/dist/nmap-7.95.tar.bz2
Nedlasting MD5 sum: b481d293e53b20278d5370458da9a950
Nedlastingsstørrelse: 11 MB
Estimert diskplass som kreves: 116 MB (legg til 38 MB for tester)
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; legg til 0.1 SBU for tester)
Disse pakkene anbefales fordi hvis de ikke er installert, vil byggeprosessen kompilere og koble mot sin egen (ofte eldre) versjon.
liblinear-247, libpcap-1.10.4, libssh2-1.11.0, Lua-5.4.7, pcre2-10.44, og PyGObject-3.48.2
Først, hvis den ikke allerede er installert, legg til en
nødvendig Python modul. Som root bruker:
pip3 install build
Installer Nmap ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Hvis du ønsker å kjøre testpakken, kjør følgende kommando:
sed -e '/import imp/d' \
-e 's/^ndiff = .*$/import ndiff/' \
-i ndiff/ndifftest.py
For å teste resultatene, kjør: make check som root bruker. Tester trenger en grafisk
økt.
Nå, som root bruker:
make install
|
er et verktøy for å lese og skrive data på tvers av nettverk fra kommandolinjen |
|
|
er et verktøy for å hjelpe til med sammenligning av Nmap skanninger |
|
|
er et verktøy for nettverksutforskning og sikkerhetsrevisjon. Den støtter pingskanning, portskanning og TCP/IP fingeravtrykk |
|
|
er et åpen kildekodeverktøy for nettverkspakkegenerering, respons analyse og måling av responstid |
|
|
er et Python skript for å avinstallere ndiff |
|
|
er et Python skript for å avinstallere zenmap |
|
|
er en Python basert grafisk nmap grenseflate viser |
Traceroute pakken inneholder et program som brukes til å vise nettverksruten som pakker tar for å nå en spesifisert vert. Dette er et standard nettverksfeilsøkingsverktøy. Hvis du finner at du ikke i stand til å koble til et annet system, kan traceroute hjelpe med å finne problemet.
Denne pakken overskriver versjonen av traceroute som ble installert i inetutils pakken i LFS. Denne versjonen er kraftigere og gir mange flere alternativer enn standardversjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/traceroute/traceroute-2.1.5.tar.gz
Nedlasting MD5 sum: 6599a83531ecb31275ff7906349c0970
Nedlastingsstørrelse: 76 KB
Estimert diskplass som kreves: 624 KB KB
Estimert byggetid: mindre enn 0.1 SBU
Installer Traceroute ved å kjøre følgende kommandoer:
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make prefix=/usr install && ln -sv -f traceroute /usr/bin/traceroute6 && ln -sv -f traceroute.8 /usr/share/man/man8/traceroute6.8 && rm -fv /usr/share/man/man1/traceroute.1
Traceroute.1-filen som ble installert i LFS av inetutils er ikke lenger relevant. Denne pakken overskriver den versjonen av traceroute og installerer mansiden i man kapittel 8.
Whois er en applikasjon på klientsiden som spør whois katalogtjenesten om informasjon knyttet til et bestemt domenenavn. Denne pakken vil installere to programmer som standard: whois og mkpasswd. mkpasswd kommandoen er også installert av expect pakken i LFS.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/rfc1036/whois/archive/v5.4.3/whois-5.4.3.tar.gz
Nedlasting MD5 sum: 381dce8db7c6e38ef013b5d6527f494c
Nedlastingsstørrelse: 100 KB
Estimert diskplass som kreves: 1.2 MB
Estimert byggetid: mindre enn 0.1 SBU
libidn-1.42 eller libidn2-2.3.7
Bygg applikasjonen med:
make
Du kan installere whois programmet,
mkpasswd
programmet, og lokalitetsfilene uavhengig. Kontroller ditt
valg av hva som er installert med følgende kommandoer utstedt
som root bruker:
Installering av denne versjonen av mkpasswd vil overskrive den samme kommandoen installert i LFS.
make prefix=/usr install-whois make prefix=/usr install-mkpasswd make prefix=/usr install-pos
Wireshark pakken inneholder en nettverks protokollanalysator, også kjent som en “sniffer.” Dette er nyttig for å analysere registrerte data “off the wire” fra en levende nettverkstilkobling, eller data lest fra en registreringsfil.
Wireshark gir både en grafisk og en TTY modus grenseflate for å undersøke fangede nettverkspakker fra over 500 protokoller, samt muligheten til å lese en fangstfil fra mange andre populære nettverksanalysatorer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.wireshark.org/download/src/all-versions/wireshark-4.2.6.tar.xz
Nedlasting MD5 sum: e118da25ca399111a4e5d947385c7c79
Nedlastingsstørrelse: 43 MB
Estimert diskplass som kreves: 743 MB (171 MB installert)
Estimert byggetid: 2.4 SBU (med parallellitet=4)
Ytterligere dokumentasjon: https://www.wireshark.org/download/docs/ (inneholder lenker til flere forskjellige dokumenter i en rekke formater)
CMake-3.30.2, c-ares-1.33.0, GLib-2.80.4, libgcrypt-1.11.0, Qt-6.7.2, og Speex-1.2.1
Qt-6.7.2 er strengt tatt ikke nødvendig, siden den kan bli erstattet med Qt5. Se “Parameterforklaringer ” under.
libpcap-1.10.4 (nødvendig for å fange data)
asciidoctor-2.0.23, Brotli-1.1.0, Doxygen-1.12.0, git-2.46.0, GnuTLS-3.8.7.1, libnl-3.10.0, libxslt-1.1.42, libxml2-2.13.3, Lua-5.2.4, MIT Kerberos V5-1.21.3, nghttp2-1.62.1, qt5-components-5.15.14 med qtmultimedia) (påkrevd hvis Qt-6.7.2 ikke er installert), SBC-2.0, BCG729, libilbc, libsmi, libssh, MaxMindDB, Minizip, Snappy, og Spandsp
Kjernen må ha pakkeprotokollen aktivert for at Wireshark skal fange opp levende pakker fra nettverket:
[*] Networking support ---> [NET] Networking options ---> <*/M> Packet socket [PACKET]
Hvis bygget som en modul, er navnet af_packet.ko.
Wireshark er en veldig stor
og kompleks applikasjon. Disse instruksjonene gir ytterligere
sikkerhetstiltak for å sikre at bare pålitelige brukere har
lov til å se nettverkstrafikk. Først, sett opp en
systemgruppe for wireshark. Som root bruker:
groupadd -g 62 wireshark
Fortsett å installere Wireshark ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_DOCDIR=/usr/share/doc/wireshark-4.2.6 \
-G Ninja \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install &&
install -v -m755 -d /usr/share/doc/wireshark-4.2.6 &&
install -v -m644 ../README.linux ../doc/README.* ../doc/randpkt.txt \
/usr/share/doc/wireshark-4.2.6 &&
pushd /usr/share/doc/wireshark-4.2.6 &&
for FILENAME in ../../wireshark/*.html; do
ln -s -v -f $FILENAME .
done &&
popd
unset FILENAME
Hvis du lastet ned noen av dokumentasjonsfilene fra siden
oppført i 'Ytterligere nedlastinger', installer dem ved å
utstede følgende kommandoer som root bruker:
install -v -m644 <Nedlastede_filer> \
/usr/share/doc/wireshark-4.2.6
Sett nå eierskap og tillatelser for sensitive applikasjoner
til bare å tillate autoriserte brukere. Som root bruker:
chown -v root:wireshark /usr/bin/tshark && chmod -v 6550 /usr/bin/tshark
Til slutt legger du til brukere i wireshark gruppen (som
root bruker):
usermod -a -G wireshark <brukernavn>
Hvis du installerer wireshark for første gang, vil det være nødvendig å logge ut av økten og logge på igjen. Dette vil sette wireshark i din gruppe, fordi ellers vil ikke Wireshark fungere skikkelig.
-D USE_qt6=OFF: Bruk denne
bryteren hvis Qt-6.7.2 ikke er tilgjengelig. Du vil trenge
qt5-components-5.15.14 med
qtmultimedia.
/etc/wireshark.conf og
~/.config/wireshark/* (med
mindre det allerede er ~/.wireshark/* i systemet)
Selv om standard konfigurasjonsparametere er veldig fornuftige, referer konfigurasjonsdelen av Wireshark User's Guide for konfigurasjonsinformasjon. Meste av Wireshark sin konfigurasjon kan utføres ved å bruke menyalternativene til wireshark grafiske grensesnitt.
Hvis du vil se på pakker, sørg for at du ikke filtrerer dem ut med iptables-1.8.10. Hvis du vil utelukke visse klasser av pakker, er det mer effektivt å gjøre det med iptables enn det er med Wireshark.
|
leser en lagret fangstfil og returnerer noen eller alle av flere statistikker om den filen. Den er i stand til å oppdage og lese all fangst støttet av Wireshark pakken |
|
|
skriver ut filtypene for fangstfiler |
|
|
redigerer og/eller oversetter formatet til fangstfiler. Det vet hvordan å lese libpcap fangstfiler, inkludert tcpdump, Wireshark og andre verktøy som skriver fangster i det formatet |
|
|
er et program som tar en brukerspesifisert CORBA
IDL fil og genererer “C”
kildekode for en Wireshark “programtillegg.” Den er
avhengig av to Python programmer wireshark_be.py
og wireshark_gen.py,
som ikke er installert som standard. De må kopieres
manuelt fra |
|
|
kombinerer flere lagrede fangstfiler til en enkelt utdatafil |
|
|
oppretter tilfeldige pakkefangstfiler |
|
|
dumper og analyserer rå libpcap data |
|
|
omorganiserer tidsstempler for inndatafilrammer til en utdatafil |
|
|
er en nisse som lytter på UNIX sockets |
|
|
leser inn en ASCII hex dump og skriver dataene beskrevet i en libpcap-stil fangstfil |
|
|
er en TTY-modus nettverksprotokollanalysator. Den lar deg fange pakkedata fra et levende nettverk eller lese pakker fra en tidligere lagret fangstfil |
|
|
er Qt GUI nettverksprotokollanalysator. Den lar deg interaktivt bla gjennom pakkedata fra et levende nettverk eller fra en tidligere lagret fangstfil |
|
|
inneholder funksjoner som brukes av Wireshark programmer for å utføre filtrering og pakkefangst |
|
|
er et bibliotek som utvikles som en fremtidig
erstatning for |
Disse applikasjonene er støttebiblioteker for andre applikasjoner i boken. Det er usannsynlig at du bare ville installere disse bibliotekene, du vil generelt finne at du vil bli henvist til dette kapittelet for å tilfredsstille en avhengighet av andre applikasjoner.
c-ares er et C bibliotek for asynkrone DNS forespørsler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/c-ares.haxx.se/download/c-ares-1.33.0.tar.gz
Nedlasting MD5 sum: ff9e46d2ca9feaed7159c8939d70b569
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.1 SBU
Installer c-ares ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr .. && make
Denne pakken inkluderer ikke en testpakke.
Nå, som root bruker:
make install
cURL pakken inneholder et verktøy og et bibliotek som brukes til å overføre filer med URL syntaks til hvilken som helst av følgende protokoller: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTSP, SMB, SMBS, SMTP, SMPTS, TELNET og TFTP. Dens evne til både å laste ned og laste opp filer kan integreres i andre programmer for å støtte funsksjoner som å strømme media.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://curl.se/download/curl-8.9.1.tar.xz
Nedlasting MD5 sum: 5882f056460240d98cdb5b7f86a06153
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 42 MB (legg til 18 MB for tester)
Estimert byggetid: 0.2 SBU (med parallellitet=4; legg til 4.9 SBU for tester (uten valgrind, legg til 17 SBU med valgrind))
Mens det er et alternativ for å bygge pakken uten libpsl, begge deler både oppstrømsutviklerne og BLFS redaktørene anbefaler på det sterkeste ikke deaktivere støtte for libpsl på grunn av alvorlige sikkerhetsimplikasjoner.
Brotli-1.1.0, c-ares-1.33.0, GnuTLS-3.8.7.1, libidn2-2.3.7, libssh2-1.11.0, MIT Kerberos V5-1.21.3, nghttp2-1.62.1, OpenLDAP-2.6.8, Samba-4.20.4 (kjøretid, for NTLM autentisering), gsasl, impacket, libmetalink, librtmp, ngtcp2, quiche, og SPNEGO
Apache-2.4.62 og stunnel-5.72 (for HTTPS og FTPS tester), OpenSSH-9.8p1, og Valgrind-3.23.0 (dette vil gjøre at testene kjører saktere og kan forårsake feil)
Installer cURL ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--with-openssl \
--enable-threaded-resolver \
--with-ca-path=/etc/ssl/certs &&
make
For å teste resultatene, kjør: make test. Noen tester er
ustabile, så hvis noen tester har mislyktes er det mulig å
kjøre en test igjen med: (cd
tests; ./runtests.pl <test
ID>) (ID for mislykkede tester
vises i “These test cases
failed:” beskjeden). Hvis du kjører
testene etter at pakken er installert, kan noen tester
mislykkes fordi manualsidene ble slettet med 'find'
kommandoen i installasjonsinstruksjonene under.
Nå, som root bruker:
make install &&
rm -rf docs/examples/.deps &&
find docs \( -name Makefile\* -o \
-name \*.1 -o \
-name \*.3 -o \
-name CMakeLists.txt \) -delete &&
cp -v -R docs -T /usr/share/doc/curl-8.9.1
For å kjøre noen enkle verifiseringstester på den nylig
installerte curl, utsted følgende
kommandoer: curl --trace-ascii
debugdump.txt https://www.example.com/ og
curl --trace-ascii d.txt
--trace-time https://example.com/. Inspiser
de lokalt opprettede sporingsfilene debugdump.txt og d.txt, som inneholder versjonsinformasjon,
nedlastede filer informasjon, etc. En fil har tiden for hver
handling logget.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-threaded-resolver:
Denne bryteren aktiverer cURL sin innebygde trådet DNS løser.
--with-ca-path=/etc/ssl/certs:
Dette bryteren angir plasseringen til BLFS Certificate
Authority lagringsplass.
--with-openssl: Denne
parameteren velger OpenSSL
som SSL/TLS implementering. Dette virker obligatorisk nå.
--with-gssapi: Denne parameteren
legger til Kerberos 5 støtte
til libcurl.
--without-ssl --with-gnutls:
Brukt denne bryteren for å bygge med GnuTLS støtte i stedet for OpenSSL for SSL/TLS.
--with-ca-bundle=/etc/pki/tls/certs/ca-bundle.crt:
Bruk denne bryteren i stedet for --with-ca-path for å bygge med
GnuTLS støtte i stedet for
OpenSSL for SSL/TLS.
--with-libssh2: Denne parameteren
legger til SSH støtte til
cURL. Dette er deaktivert som standard.
--enable-ares: Denne parameteren
legger til støtte for DNS oppløsning gjennom c-ares
biblioteket. Den overstyrer --enable-threaded-resolver og
er ikke utbredt testet av redaksjonen.
find docs ... -exec rm {}
\;: Denne kommandoen fjerner Makefiles og man filer fra
dokumentasjonensmappen som ellers ville blitt installert av
kommandoene som følger.
GeoClue er en modulær geoinformasjonstjeneste bygget på toppen av D-Bus meldingssystem. Målet for GeoClue prosjektet er å lage lokalitetsbevisste applikasjoner så enkle som mulig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/geoclue/geoclue/-/archive/2.7.1/geoclue-2.7.1.tar.bz2
Nedlasting MD5 sum: 08bacd3b45311ee6c20e4240be7bc348
Nedlastingsstørrelse: 104 KB
Estimert diskplass som kreves: 6.9 MB
Estimert byggetid: 0.1 SBU
JSON-GLib-1.8.0 og libsoup-3.4.4
Avahi-0.8, libnotify-0.8.3, ModemManager-1.18.12, og Vala-0.56.17
Installer GeoClue ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk-doc=false \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D 3g-source=false: Denne
bryteren deaktiverer 3G bakstykke. Bruk den hvis du ikke har
installert ModemManager
pakken.
-D modem-gps-source=false: Denne
bryteren deaktiverer modem GPS bakstykke. Bruk den hvis du
ikke har installert ModemManager pakken.
-D cdma-source=false: Denne
bryteren deaktiverer CDMA kilde bakstykke. Bruk den hvis du
ikke har installert ModemManager pakken.
-D nmea-source=false: Denne
bryteren deaktiverer NMEA kilde. Bruk den hvis du ikke har
installert Avahi pakken.
-D demo-agent=false: Denne
bryteren deaktiverer demo. Bruk den hvis du ikke har
installert libnotify pakken.
I mars 2024 kunngjorde Mozilla nedleggelsen av Mozilla Location Service. Geoclue bruker denne tjenesten for å bestemme en brukers plassering når andre applikasjoner ber om det. Det eneste støttede alternativet av oppstrøms er å bruke Googles geolokaliseringstjeneste.
For å bruke Googles geolokaliseringstjeneste må en API nøkkel brukes, og en konfigurasjonsfilen må opprettes. Denne API nøkkelen er kun beregnet for bruk med LFS. Vennligst ikke bruk denne API nøkkelen hvis du bygger for en annen distro eller distribuerer binære kopier. Hvis du trenger en API nøkkel, kan du be om en på https://www.chromium.org/developers/how-tos/api-keys.
Opprett konfigurasjonen som trengs for å bruke Googles
geolokaliseringstjeneste som root bruker:
cat > /etc/geoclue/conf.d/90-lfs-google.conf << "EOF"
# Begin /etc/geoclue/conf.d/90-lfs-google.conf
# This configuration applies for the WiFi source.
[wifi]
# Set the URL to Google's Geolocation Service.
url=https://www.googleapis.com/geolocation/v1/geolocate?key=AIzaSyDxKL42zsPjbke5O8_rPVpVrLrJ8aeE9rQ
# End /etc/geoclue/conf.d/90-lfs-google.conf
EOF
Hvis du ikke ønsker å be om posisjonen din fra en
geolokaliseringstjeneste, kan du hardkode posisjonen din
inn /etc/geolocation ved
hjelp av formatet beskrevet i geoclue(5).
GLib Networking pakken inneholder nettverksrelaterte gio moduler for GLib.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/glib-networking/2.80/glib-networking-2.80.0.tar.xz
Nedlasting MD5 sum: 8e13b80148e28adc9e4cf681c0b30402
Nedlastingsstørrelse: 284 KB
Estimert diskplass som kreves: 5.6 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
gsettings-desktop-schemas-46.1 (for applikasjonene som bruker denne pakken til å bruke proxy serverinnstillinger i GNOME) og make-ca-1.14
Installer GLib Networking ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup \ --prefix=/usr \ --buildtype=release \ -D libproxy=disabled \ .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
/usr/lib/gio/modules)
kdsoap er Qt basert klientside og serverside SOAP komponent. Den kan brukes til å lage klientapplikasjoner for webtjenester og gir også midler til å lage webtjenester uten behov for noen ytterligere komponent som en dedikert webserver.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/KDAB/KDSoap/releases/download/kdsoap-2.2.0/kdsoap-2.2.0.tar.gz
Nedlasting MD5 sum: a4ef201402aaa1500439a2ed4359c0f3
Nedlastingsstørrelse: 11 MB
Estimert diskplass som kreves: 49 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
Installer kdsoap ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_DOCDIR=/usr/share/doc/kdsoap-2.2.0 \
.. &&
make
Pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
ldns er et raskt DNS bibliotek med mål om å forenkle DNS programmering og la utviklere enkelt lage programvare som samsvarer med gjeldende RFC og Internettutkast. Denne pakker inkluderer også drill verktøy.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.nlnetlabs.nl/downloads/ldns/ldns-1.8.4.tar.gz
Nedlasting MD5 sum: 94ea1ed8fc7095bef003b64b53b71ec7
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 31 MB (med dokumenter)
Estimert byggetid: 0.2 SBU (med dokumenter)
make-ca-1.14 og libpcap-1.10.4 (for eksempelprogrammer), SWIG-4.2.1 (for Python bindinger), og Doxygen-1.12.0 (for html dokumentasjon)
Installer ldns ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static \
--with-drill &&
make
Hvis du har Doxygen-1.12.0 installert og ønsker å bygge html dokumentasjon, kjør følgende kommando:
make doc
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
make install
Hvis du har laget html dokumentasjon, installer den ved å
kjøre følgende kommandoer som root user:
install -v -m755 -d /usr/share/doc/ldns-1.8.4 && install -v -m644 doc/html/* /usr/share/doc/ldns-1.8.4
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-drill: Dette
alternativet gjør det mulig å bygge drill verktøyet (brukes for
å skaffe feilsøkingsinformasjon fra DNS(SEC))
--disable-dane-ta-usage: Dette
alternativet deaktiverer DANE-TA (DNS-Based Authentication of
Named Entities) støtte. Det trengs bare hvis OpenSSL-1.1.0
eller nyere ikke er installert.
--with-examples: Dette
alternativet gjør det mulig å bygge eksempelprogrammer.
--with-pyldns: Dette alternativet
muliggjør bygging av Python bindinger. Hvis du bruker dette
alternativet, må du legge til PYTHON=/usr/bin/python3 til
konfigureringslinjen også.
|
er et verktøy som dig fra BIND Utilities-9.20.0 designet for å få alle slags informasjon ut av DNS |
|
|
viser kompilator og linker flagg for ldns bruk |
|
|
gir ldns API funksjoner til programmer |
libevent er en asynkron hendelsesvarslings programvarebibliotek. libevent API gir en mekanisme for å utføre en tilbakekallingsfunksjon når en spesifikk hendelse inntreffer på en filbeskrivelse eller etter at et tidsavbrudd er nådd. Dessuten, libevent støtter også tilbakekallinger pga signaler eller vanlige tidsavbrudd.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz
Nedlasting MD5 sum: b5333f021f880fe76490d8a799cd79f4
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 20 MB (legg til 4 MB for tester og 4 MB for API dokumenter)
Estimert byggetid: 0.3 SBU (legg til 11 SBU for tester)
Doxygen-1.12.0 (for API dokumentasjon)
Først, fiks et problem som hindrer event_rpcgen.py fra å fungere:
sed -i 's/python/&3/' event_rpcgen.py
Installer libevent ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis du har Doxygen-1.12.0 installert og ønsker å bygge API dokumentasjon, kjør:
doxygen Doxyfile
For å teste resultatene, kjør: make verify. Seks tester i
hver pakke relatert til regress_ssl.c og regress_http.c er kjent for å mislykkes pga
inkompatibiliteter med OpenSSL-3. Noen tester som er relatert
til regress_dns.c er også kjent
for å mislykkes periodevis på grunn av utilstrekkelige
testtidsavbrudd.
Nå, som root bruker:
make install
Hvis du har laget API dokumentasjonen, installer den ved å
utstede følgende kommandoer som root bruker:
install -v -m755 -d /usr/share/doc/libevent-2.1.12/api &&
cp -v -R doxygen/html/* \
/usr/share/doc/libevent-2.1.12/api
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libmnl bibliotek gir en minimalistisk brukerromsbibliotek orientert mot Netlink utviklere. Det er mange vanlige oppgaver i analysering, validering og konstruksjon av både Netlink deklarasjoner og TLV-er som er repeterende og lett å ta feil. Dette biblioteket har som mål å gi enkle hjelpere som lar deg gjenbruke kode og å unngå å finne opp hjulet på nytt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://netfilter.org/projects/libmnl/files/libmnl-1.0.5.tar.bz2
Nedlasting MD5 sum: 0bbb70573119ec5d49435114583e7a49
Nedlastingsstørrelse: 308 KB
Estimert diskplass som kreves: 2.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libmnl ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libndp pakken gir en innpakning for IPv6 Neighbour Discovery Protocol. Det gir også et verktøy kalt ndptool for å sende og motta NDP meldinger.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://libndp.org/files/libndp-1.9.tar.gz
Nedlasting MD5 sum: 9d486750569e7025e5d0afdcc509b93c
Nedlastingsstørrelse: 368 KB
Estimert diskplass som kreves: 2.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libndp ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libnl pakken er en samling av biblioteker som gir APIer til netlink protokollbaserte Linux kjernegrensesnitt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/thom311/libnl/releases/download/libnl3_10_0/libnl-3.10.0.tar.gz
Nedlasting MD5 sum: 504f3929a3d878fcaccc8a19f1a5f449
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 32 MB (med API dokumentsjon og tester)
Estimert byggetid: 0.5 SBU (med API dokumentsjon og tester)
Nedlasting (HTTP): https://github.com/thom311/libnl/releases/download/libnl3_10_0/libnl-doc-3.10.0.tar.gz
Nedlasting MD5 sum: ebbb10af7dafac18640a0974d255d2b7
Nedlastingsstørrelse: 3.8 MB
Installer libnl ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static &&
make
Hvis make kommandoen ble utført med flere parallelle jobber aktivert, kan det forstyrre terminalmodusen og forårsake noen “morsomme” visuelle effekter. I I verste fall kan dette problemet føre til at tastaturindataer ikke vises på skjermen i det hele tatt (men du kan fortsatt kjøre en hvilken som helst kommando hvis du kan skrive det riktig). Kjør reset å fikse et slikt problem.
Hvis du ønsker å kjøre testene, sjekk at følgende alternativer er aktivert i kjernekonfigurasjonen og kompilerer kjernen på nytt hvis nødvendig. Noen av dem er kanskje ikke strengt nødvendig, men de skal støtte en fullstendig testdekning.
General setup ---> -*- Namespaces support ---> [NAMESPACES] [*] User namespace [USER_NS] [*] Network namespace [NET_NS] [*] Networking support ---> [NET] Networking options ---> [*] TCP/IP networking [INET] [*] IP: advanced router [IP_ADVANCED_ROUTER] [*] IP: policy routing [IP_MULTIPLE_TABLES] <*/M> IP: tunneling [NET_IPIP] <*/M> IP: GRE demultiplexer [NET_IPGRE_DEMUX] <*/M> IP: GRE tunnels over IP [NET_IPGRE] <*/M> Virtual (secure) IP: tunneling [NET_IPVTI] <*> The IPv6 protocol ---> [IPV6] <*/M> IPv6: IPv6-in-IPv4 tunnel (SIT driver) [IPV6_SIT] <*/M> IPv6: IP-in-IPv6 tunnel (RFC2473) [IPV6_TUNNEL] [*] IPv6: Multiple Routing Tables [IPV6_MULTIPLE_TABLES] [*] Network packet filtering framework (Netfilter) ---> [NETFILTER] Core Netfilter Configuration ---> <*/M> Netfilter nf_tables support [NF_TABLES] [*] Netfilter nf_tables netdev tables support [NF_TABLES_NETDEV] {*/M} Netfilter packet duplication support [NF_DUP_NETDEV] <*/M> Netfilter nf_tables netdev packet forwarding support ... [NFT_FWD_NETDEV] <*/M> 802.1d Ethernet Bridging [BRIDGE] <*/M> 802.1Q/802.1ad VLAN Support [VLAN_8021Q] -*- L3 Master device support [NET_L3_MASTER_DEV] Device Drivers ---> [*] Network device support ---> [NETDEVICES] [*] Network core driver support [NET_CORE] <*/M> Bonding driver support [BONDING] <*/M> Dummy net driver support [DUMMY] <*/M> Intermediate Functional Block support [IFB] <*/M> MAC-VLAN support [MACVLAN] <*/M> MAC-VLAN based tap driver [MACVTAP] <*/M> IP-VLAN support [IPVLAN] <*/M> Virtual eXtensible Local Area Network (VXLAN) [VXLAN] <*/M> IEEE 802.1AE MAC-level encryption (MACsec) [MACSEC] <*/M> Virtual ethernet pair device [VETH] <*/M> Virtual Routing and Forwarding (Lite) [NET_VRF]
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
Hvis du ønsker å installere API dokumentasjonen, som
root bruker:
mkdir -vp /usr/share/doc/libnl-3.10.0 &&
tar -xf ../libnl-doc-3.10.0.tar.gz --strip-components=1 --no-same-owner \
-C /usr/share/doc/libnl-3.10.0
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-cli: Bruk denne
parameteren hvis du ikke ønsker å installere cli verktøy
levert av pakken.
|
spør den generiske Netlink kontrolleren i kjernen og skriver ut en liste over alle registrerte generiske Netlink familier inkludert versjonen av grensesnittet som er registrert |
|
|
legger til, oppdaterer eller erstatter trafikkklasser |
|
|
sletter Trafikkklasser |
|
|
brukes til å løse qdisc/class navn til classid verdier og vice versa |
|
|
lister opp Trafikkklasser |
|
|
legger til en klassifiserer |
|
|
sletter en klassifiserer |
|
|
lister klassifiserere |
|
|
dumper lenkeattributter |
|
|
tillater oppslag av pakkeplasseringsdefinisjoner |
|
|
legger til kødisipliner (qdiscs) i kjernen |
|
|
fjerner kødisipliner (qdiscs) i kjernen |
|
|
lister kødisipliner (qdiscs) i kjernen |
|
|
Disse bibliotekene inneholder API funksjoner som brukes for å få tilgang til Netlink grensesnitt i Linux kjernen |
libnma pakken inneholder en implementering av NetworkManager GUI funksjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libnma/1.10/libnma-1.10.6.tar.xz
Nedlasting MD5 sum: 71c7ce674fea1fae8f1368a7fcb6ff43
Nedlastingsstørrelse: 688 KB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4; med test)
Gcr-3.41.2, GTK+-3.24.43, ISO Codes-4.16.0, og NetworkManager-1.48.8
Installer libnma ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
-D libnma_gtk4=true \
-D mobile_broadband_provider_info=false &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=false:
Denne parameteren deaktiverer generering av API dokumentasjon
ved hjelp av gtk-doc. Hvis du har GTK-Doc-1.34.0
installert og ønsker å generere API dokumentasjonen, utelat
denne parameteren.
-D libnma_gtk4=true:
Denne parameteren bygger GTK-4 versjonen av libnma. Det
trengs av gnome-control-center-46.4
-D
mobile_broadband_provider_info=false: Denne
bryteren deaktiverer WWAN støtte fordi
mobil-bredbånd-leverandør-informasjon ikke er i BLFS. Utelat
denne bryteren hvis du har den installert og ønsker å
aktivere WWAN støtte.
libnsl pakken inneholder den offentlige klient grensesnittet for NIS(YP). Det erstatter NIS biblioteket som pleide være i glibc.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/thkukuk/libnsl/releases/download/v2.0.1/libnsl-2.0.1.tar.xz
Nedlasting MD5 sum: fb178645dfa85ebab0f1e42e219b42ae
Nedlastingsstørrelse: 276 KB
Estimert diskplass som kreves: 3.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libnsl ved å kjøre følgende kommandoer:
./configure --sysconfdir=/etc --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libpcap gir funksjoner for brukernivå pakkefangst, brukt i nettverksovervåking på lavt nivå.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.tcpdump.org/release/libpcap-1.10.4.tar.gz
Nedlasting MD5 sum: 0322e28dd76cda8066bb6d00fee5969b
Nedlastingsstørrelse: 932 KB
Estimert diskplass som kreves: 9.9 MB
Estimert byggetid: mindre enn 0.1 SBU
BlueZ-5.77, libnl-3.10.0, libusb-1.0.27, Programvaredistribusjon for DAG, og Septel rekke av passive nettverksovervåkingskort.
Installer libpcap ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Hvis du vil deaktivere installasjonen av det statiske biblioteket, bruk denne sed:
sed -i '/INSTALL_DATA.*libpcap.a\|RANLIB.*libpcap.a/ s/^/#/' Makefile
Nå, som root bruker:
make install
libpsl pakken gir et bibliotek for tilgang til og løse informasjon fra Public Suffix List (PSL). PSL er et sett med domenenavn utover standardsuffiksene, for eksempel .com.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/rockdaboot/libpsl/releases/download/0.21.5/libpsl-0.21.5.tar.gz
Nedlasting MD5 sum: 870a798ee9860b6e77896548428dba7b
Nedlastingsstørrelse: 7.3 MB
Estimert diskplass som kreves: 50 MB
Estimert byggetid: mindre enn 0.1 SBU (inkludert tester)
libidn2-2.3.7 og libunistring-1.2
GTK-Doc-1.34.0 (for dokumentasjon) og Valgrind-3.23.0 (for tester)
Installer libpsl ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Libslirp er et nettverksbibliotek i brukermodus brukt av virtuelle maskiner, containere eller ulike verktøy.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/slirp/libslirp/-/archive/v4.8.0/libslirp-v4.8.0.tar.bz2
Nedlasting MD5 sum: 975605bcc503cc092b6a01351b927a60
Nedlastingsstørrelse: 126 KB
Estimert diskplass som kreves: 3.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libslirp ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
libsoup er en HTTP klient/server bibliotek for GNOME. Den bruker GObject og GLib hovedsløyfen for å integrere med GNOME applikasjoner og den har også en asynkront API for bruk i trådede applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libsoup/2.74/libsoup-2.74.3.tar.xz
Nedlasting MD5 sum: 8f657fd301a213629204b3320c35d75a
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 17 MB (med tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; med tester)
glib-networking-2.80.0, libpsl-0.21.5, libxml2-2.13.3, og SQLite-3.46.1
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17
Apache-2.4.62 (kreves for å kjøre testpakken), Brotli-1.1.0, cURL-8.9.1 (kreves for å kjøre testpakken), MIT Kerberos V5-1.21.3 (kreves for å kjøre testpakken), GTK-Doc-1.34.0, PHP-8.3.10 kompilert med XMLRPC-EPI støtte (bare brukt for XMLRPC regresjonstestene), Samba-4.20.4 (ntlm_auth kreves for å kjøre testpakken), sysprof
Installer libsoup ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D vapi=enabled \
-D gssapi=disabled \
-D sysprof=disabled \
.. &&
ninja
For å teste resultatene, kjør: ninja test. En test
navngitt ssl-test er kjent for
å feile.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D vapi=disabled: Bruk denne hvis
du ikke har installert Vala,
f.eks. fordi du ikke bygger GNOME.
-D doc=enabled: Bruk dette
alternativet hvis du vil bygge dokumentasjonen. Merk at du må
ha GTK-Doc-1.34.0 installert.
-D gssapi=disabled:
libsoup bygger som standard med GSSAPI støtte, som krever
Kerberos (det samme gjør testpakken). Hvis du bygger GNOME
eller har kerberos installert, fjern dette alternativet.
-D sysprof=disabled:
libsoup vil automatisk laste ned en git versjon av sysprof hvis git er
tilgjengelig eller bruk den installerte versjonen hvis den
finnes på systemet. Hvis du trenger profilering, fjern dette
alternativet.
libsoup3 er et HTTP klient/server bibliotek for GNOME. Den bruker GObject og GLib hovedsløyfen for å integrere med GNOME applikasjoner og den har også et asynkront API for bruk i trådede applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libsoup/3.4/libsoup-3.4.4.tar.xz
Nedlasting MD5 sum: a63ea04a9686e9e4470b127ffe1eb96b
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 38 MB (med tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; med tester)
glib-networking-2.80.0, libpsl-0.21.5, libxml2-2.13.3, nghttp2-1.62.1, og SQLite-3.46.1
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17
Apache-2.4.62 (kreves for å kjøre testpakken), Brotli-1.1.0, cURL-8.9.1 (kreves for å kjøre testpakken), Gi-DocGen-2024.1, MIT Kerberos V5-1.21.3 (kreves for å kjøre testpakken), PHP-8.3.10 kompilert med XMLRPC-EPI støtte (bare brukt for XMLRPC regresjonstestene), Samba-4.20.4 (ntlm_auth kreves for å kjøre testpakken), sysprof, og wstest
Fiks installasjonsbanen til API dokumentasjonen:
sed 's/apiversion/soup_version/' -i docs/reference/meson.build
Installer libsoup3 ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D vapi=enabled \
-D gssapi=disabled \
-D sysprof=disabled \
--wrap-mode=nofallback \
.. &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
--wrap-mode=nofallback: Denne
bryteren forhindrer meson fra å bruke
delprosjektets tilbakefall for evt avhengighetserklæringer i
byggefilene, og stopper nedlastingen av eventuell valgfrie
avhengigheter som ikke er installert på systemet.
-D vapi=disabled: Bruk denne hvis
du ikke har installert Vala,
f.eks. fordi du ikke bygger GNOME.
-D docs=enabled: Hvis Gi-DocGen-2024.1 er installert, API
dokumentasjon vil bli bygget og installert uansett om dette
alternativet brukes eller ikke. Dette alternativet forårsaker
at meson
kommandoen mislykkes hvis Gi-DocGen-2024.1 ikke er
installert.
-D gssapi=disabled:
libsoup3 bygger som standard med GSSAPI støtte, som krever
Kerberos (det samme gjør testpakken).
-D sysprof=disabled:
Libsoup3 vil automatisk laste ned en git versjon av sysprof hvis git er
tilgjengelig eller bruk den installerte versjonen hvis den er
til stede på systemet. Hvis du trenger profilering, fjern
dette alternativet.
libtirpc pakken inneholder biblioteker som støtter programmer som bruker Remote Procedure Call (RPC) API. Den erstatter RPC, men ikke NIS bibliotekoppføringene som pleide å være i glibc.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/libtirpc/libtirpc-1.3.5.tar.bz2
Nedlasting MD5 sum: 59a5aba60d99621963d0109f95b622f2
Nedlastingsstørrelse: 552 KB
Estimert diskplass som kreves: 7.4 MB
Estimert byggetid: mindre enn 0.1 SBU
MIT Kerberos V5-1.21.3 for GSSAPI
Hvis du oppdaterer denne pakken, må du også oppdatere enhver eksisterende versjon av rpcbind-1.2.7
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static \
--disable-gssapi &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-gssapi:
Denne bryteren er nødvendig hvis det ikke er noen GSSAPI
installert. Fjern denne bryteren hvis du har en installert
(for eksempel MIT Kerberos V5-1.21.3) og du
ønsker å bruke den.
neon er et HTTP og WebDAV klientbibliotek, med et C grensesnitt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://notroj.github.io/neon/neon-0.33.0.tar.gz
Nedlasting MD5 sum: f0c6f84835f93892c22750ff60955898
Nedlastingsstørrelse: 892 KB
Estimert diskplass som kreves: 8.6 MB (ytterligere 53 MB for tester)
Estimert byggetid: 0.1 SBU (legg til 0.4 SBU for tester)
GnuTLS-3.8.7.1, libxml2-2.13.3, MIT Kerberos V5-1.21.3, nss-3.103 (for noen tester), xmlto-0.0.29 (for å regenerere dokumentasjonen), libproxy, og PaKChoiS
Installer neon ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--with-ssl \
--enable-shared \
--disable-static &&
make
For å teste resultatene, kjør: make check.
Hvis du ønsker å gjenskape dokumentasjonen, utsted:
make docs
Nå, som root bruker:
make install
--with-ssl: Denne
bryteren muliggjør SSL støtte ved hjelp av OpenSSL. GnuTLS kan brukes i stedet, ved å sende
--with-ssl=gnutls og --with-ca-bundle=/etc/pki/tls/certs/ca-bundle.crt
til configure
skriptet.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
nghttp2 er en implementering av HTTP/2 og dens deklarasjonskomprimeringsalgoritme, HPACK.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/nghttp2/nghttp2/releases/download/v1.62.1/nghttp2-1.62.1.tar.xz
Nedlasting MD5 sum: 965f9a9e0f0eef12d8976fb33e9312ef
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 19 MB
Estimert byggetid: mindre enn 0.1 SBU
Følgende brukes bare hvis du bygger hele pakken i stedet for bare hovedbibliotekene: Boost-1.86.0, c-ares-1.33.0, cython-3.0.11, jansson-2.14, libevent-2.1.12, sphinx-8.0.2, jemalloc, libev, mruby, and Spdylay.
Installer nghttp2 ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--enable-lib-only \
--docdir=/usr/share/doc/nghttp2-1.62.1 &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-lib-only:
bare bygge libnghttp2. Utelate denne bryteren hvis du vil
bygge eksempelapplikasjonene, Python bindinger, eller C++
asio biblioteket.
rpcsvc-proto pakken inneholder rcpsvc protokollfiler og deklarasjoner, tidligere inkludert i glibc, som ikke er inkludert i erstatning libtirpc-1.3.5, sammen med rpcgen programmet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4.4/rpcsvc-proto-1.4.4.tar.xz
Nedlasting MD5 sum: bf908de360308d909e9cc469402ff2ef
Nedlastingsstørrelse: 168 KB
Estimert diskplass som kreves: 2.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Brukernotater: https://wiki.linuxfromscratch.org/blfs/wiki/rpcsvc-proto
Installer rpcsvc-proto ved å kjøre følgende kommandoer:
./configure --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Serf pakken inneholder en C-basert HTTP klient bibliotek bygget på Apache Portable Runtime (APR) biblioteket. Den multiplekser tilkoblinger, kjører lese/skrive kommunikasjonen asynkront. Minnekopier og transformasjoner holdes på et minimum for å gi høy ytelse operasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/serf/serf-1.3.10.tar.bz2
Nedlasting MD5 sum: 5320087299084c297eff8e1dacfab1af
Nedlastingsstørrelse: 148 KB
Estimert diskplass som kreves: 2.4 MB
Estimert byggetid: mindre enn 0.1 SBU
MIT Kerberos V5-1.21.3, (for GSSAPI støtte)
Installer Serf ved å kjøre følgende kommandoer:
sed -i "/Append/s:RPATH=libdir,::" SConstruct &&
sed -i "/Default/s:lib_static,::" SConstruct &&
sed -i "/Alias/s:install_static,::" SConstruct &&
sed -i "/ print/{s/print/print(/; s/$/)/}" SConstruct &&
sed -i "/get_contents()/s/,/.decode()&/" SConstruct &&
scons PREFIX=/usr
Denne pakken kommer ikke med en funksjonell testpakke.
Nå, som root bruker:
scons PREFIX=/usr install
sed -i "...": Den første kommandoen fjerner kjøretidsbanen fra et delt bibliotek og de neste to kommandoene deaktiverer bygging og installasjon av det statiske biblioteket.
GSSAPI=/usr: Bruk denne bryteren
hvis du har installert et GSSAPI bibliotek og du vil ha
serf til å bruke den.
uhttpmock pakken inneholder et bibliotek for å lage falske webtjeneste APIer som bruker HTTP eller HTTPS.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://tecnocode.co.uk/downloads/uhttpmock/uhttpmock-0.11.0.tar.xz
Nedlasting MD5 sum: 214226c73bbe9cd62ba987ce717dfc1e
Nedlastingsstørrelse: 48 KB
Estimert diskplass som kreves: 1.1 MB
Estimert byggetid: mindre enn 0.1 SBU (med tester)
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17
Installer uhttpmock ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gtk_doc=false &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Folk som er nye til Unix-baserte systemer har en tendens til å stille spørsmålet "Hvorfor på jorden vil jeg ha en nettleser som er i tekstmodus? Jeg skal kompilere X og bruke Firefox/Falkon/Uansett!". De som har vært rundt systemer en stund vet at når (ikke hvis) du klarer å rote til den grafiske nettleseren din, og du må slå opp litt informasjon på nettet, vil en konsollbasert nettleser hjelpe deg. Dessuten er det ganske mange som foretrekker å bruke en av disse nettlesere som deres primære metode for surfing; enten for å unngå rotet og båndbredde som følger med bilder eller fordi de kan bruke en tekst-til-tale synthesizer som kan lese siden for dem (brukes for svaksynte eller blinde brukere). I dette kapittelet vil du finne installasjonsinstruksjoner for to konsollnettlesere:
Links er en tekst- og grafikkmodus WWW nettleser. Det inkluderer støtte for gjengivelse av tabeller og rammer, har bakgrunnsnedlastinger, kan vise farger og har mange andre funksjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://links.twibright.com/download/links-2.30.tar.bz2
Nedlasting MD5 sum: dc56041551980c74dd354cd7c2882539
Nedlastingsstørrelse: 6.3 MB
Estimert diskplass som kreves: 36 MB
Estimert byggetid: 0.2 SBU
Grafikkmodus krever minst en av GPM-1.20.7 (musestøtte som skal brukes med en rammebufferbasert konsoll), SVGAlib, DirectFB , og et grafiske miljø
For dekoding av ulike bildeformater Links kan bruke libavif-1.1.1, libpng-1.6.43, libjpeg-turbo-3.0.1, librsvg-2.58.3, og libtiff-4.6.0
For dekomprimering av nettsider som er komprimert med Brotli, Links kan bruke Brotli-1.1.0
Installer Links ved å kjøre følgende kommandoer:
./configure --prefix=/usr --mandir=/usr/share/man && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
install -v -d -m755 /usr/share/doc/links-2.30 &&
install -v -m644 doc/links_cal/* KEYS BRAILLE_HOWTO \
/usr/share/doc/links-2.30
--enable-graphics: Denne bryteren
muliggjør støtte for grafikkmodus.
Lynx er en tekstbasert nettleser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://invisible-mirror.net/archives/lynx/tarballs/lynx2.9.2.tar.bz2
Nedlasting MD5 sum: 3ce01505e82626ca4d7291d7e649c4c9
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 25 MB
Estimert byggetid: 0.4 SBU
GnuTLS-3.8.7.1 (eksperimentell, til å erstatte openssl), Zip-3.0, UnZip-6.0, og MTA (som gir en sendmail kommando), og Sharutils-4.15.2 (for uudecode programmet)
Installer Lynx ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc/lynx \
--with-zlib \
--with-bzlib \
--with-ssl \
--with-screen=ncursesw \
--enable-locale-charset \
--datadir=/usr/share/doc/lynx-2.9.2 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install-full chgrp -v -R root /usr/share/doc/lynx-2.9.2/lynx_doc
--sysconfdir=/etc/lynx: Denne
parameteren brukes slik at konfigurasjonsfilene er plassert i
/etc/lynx i stedet for
/usr/etc.
--datadir=/usr/share/doc/lynx-2.9.2:
Denne parameteren brukes slik at dokumentasjonsfilene
installeres i /usr/share/doc/lynx-2.9.2 i stedet for
/usr/share/lynx_{doc,help}.
--with-zlib: Dette
muliggjør støtte for å koble libz inn i Lynx.
--with-bzlib: Dette
muliggjør støtte for å koble libbz2 inn i Lynx.
--with-ssl: Dette
muliggjør støtte for å koble SSL inn i Lynx.
--with-screen=ncursesw: Denne
bryteren aktiverer bruken av avansert bred-karakterstøtte som
finnes i systemets NCurses
biblioteket. Dette trengs for riktig visning av tegn og
linjebryting i multibyte-lokaliteter.
--enable-locale-charset: Denne
bryteren tillater Lynx for å
utlede riktig tegnkoding for terminalutdata fra gjeldende
lokalitet. Et konfigurasjonstrinn er fortsatt nødvendig (se
nedenfor), men i motsetning til situasjonen uten denne
bryteren, konfigurasjonstrinnet blir det samme for alle
brukere (uten bryter må en spesifisere visningstegnsettet
eksplisitt). Dette er viktig for miljøer som en LiveCD, hvor
mengden av systemspesifikke konfigurasjonstrinn må reduseres
til et minimum.
--enable-ipv6: Denne bryteren
tillater Lynx å bruke IPv6,
sammen med IPv4. Bruk det hvis Internett leverandøren gir en
IPv6 konfigurasjon.
--enable-nls: Denne bryteren
tillater Lynx for å skrive
ut oversatte meldinger (som f.eks spørsmål om
informasjonskapsler og SSL sertifikater).
--with-gnutls: Dette muliggjør
eksperimentell støtte for å koble GnuTLS inn i Lynx. Fjern --with-ssl bryteren hvis du vil
bruke gnutls.
make install-full: I tillegg til standard installasjon, installerer dette dokumentasjonen og hjelpefilene.
chgrp -v -R root /usr/share/doc/lynx-2.9.2/lynx_doc : Denne kommandoen korrigerer feil gruppeeierskap til installerte dokumentasjonsfiler.
Den riktige måten å få skjermtegnsettet på er å undersøke
gjeldende lokalitet. Derimot, Lynx gjør ikke dette som standard. Som
root bruker, endre denne
innstillingen:
sed -e '/#LOCALE/ a LOCALE_CHARSET:TRUE' \
-i /etc/lynx/lynx.cfg
Det innebygde redigeringsprogrammet i Lynx
Ødelegge Multibyte Tegn. Dette problemet manifesterer
seg seg selv i multibyte-lokaliteter, for eksempel fordi
tilbaketasten ikke sletter ikke-ASCII-tegn riktig, og som
feil data blir sendt til nettverk når man redigerer
innholdet i tekstområder. Den eneste løsningen til dette
problemet er å konfigurere Lynx til å bruke et ekstern
redigeringsprogram (bundet til “Ctrl+X e” taste
kombinasjon som standard). Fortsatt som root bruker:
sed -e '/#DEFAULT_ED/ a DEFAULT_EDITOR:vi' \
-i /etc/lynx/lynx.cfg
Lynx håndterer følgende
verdier av DEFAULT_EDITOR alternativet spesielt ved å legge
til markørposisjonerings argumenter: emacs, jed,
jmacs, joe, jove,
jpico, jstar, nano,
pico, rjoe, vi (men
ikke vim: for å plassere
markøren i Vim-9.1.0660, sett dette alternativet
til vi).
Som standard, Lynx lagrer
ikke informasjonskapsler mellom øktene. Igjen som
root bruker, endre denne
innstillingen:
sed -e '/#PERSIST/ a PERSISTENT_COOKIES:TRUE' \
-i /etc/lynx/lynx.cfg
Mange andre systemomfattende innstillinger som proxyer kan
også angis i /etc/lynx/lynx.cfg filen.
E-postklienter hjelper deg med å hente (Fetchmail), sortere (Procmail), lese og komponer svar (Heirloom mailx, Mutt, Pine, Kmail, Balsa, Evolution, SeaMonkey) til e-post.
Nyhetsklienter hjelper deg også med å hente, sortere, lese og skrive svar, men disse meldingene går gjennom USENET (en verdensomspennende oppslagstavlesystem) ved hjelp av Network News Transfer Protocol (NNTP).
Fetchmail pakken inneholder en e-post henteprogram. Den henter e-post fra eksterne e-postservere og videresender den til den lokale (klient) maskinens leveringssystem, slik at den kan deretter leses av vanlige e-postbrukeragenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/fetchmail/fetchmail-6.4.39.tar.xz
Nedlasting MD5 sum: 33a916a14b91ba932b970fe02d28f058
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 12 MB inkludert tester
Estimert byggetid: 0.1 SBU inkludert tester
en lokal MDA (Procmail-3.24)
MIT Kerberos V5-1.21.3 og libgssapi
Python-3.12.5, bygget etter Tk-8.6.14, med py-future pakken
Opprett en dedikert bruker for fetchmail programmet. Utfør
følgende kommandoer som root
bruker:
useradd -c "Fetchmail User" -d /dev/null -g nogroup \
-s /bin/false -u 38 fetchmail
Installer Fetchmail ved å kjøre følgende kommandoer:
PYTHON=python3 \
./configure --prefix=/usr \
--enable-fallback=procmail &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install && chown -v fetchmail:nogroup /usr/bin/fetchmail
PYTHON=python3: en
versjon av Python er påkrevd, men bare brukt til å
installere en modul for å tillate fetchmailconf å kjøre. Den
modulen er ikke vedlikeholdt og bør ikke bli brukt.
--enable-fallback=procmail:
Dette forteller Fetchmail å
levere innkommende post til Procmail for levering, dersom port 25
postserveren ikke er til stede eller ikke svarer.
Hvis du kobler til en e-postserver som støtter SSL/TLS-innpakket eller "implisitt" modus på en dedikert port (standard 993) bør du bruke fetchmail --ssl eller legg til alternativet 'ssl' i en rcfil.
cat > ~/.fetchmailrc << "EOF"
# The logfile needs to exist when fetchmail is invoked, otherwise it will
# dump the details to the screen. As with all logs, you will need to rotate
# or clear it from time to time.
set logfile fetchmail.log
set no bouncemail
# You probably want to set your local username as the postmaster
set postmaster <username>
poll SERVERNAME :
user <isp_username> pass <password>;
mda "/usr/bin/procmail -f %F -d %T";
EOF
touch ~/fetchmail.log &&
chmod -v 0600 ~/.fetchmailrc
Dette er en eksempelkonfigurasjon som burde være tilstrekkelig for de fleste. Du kan legge til så mange brukere og servere du trenger ved å bruke samme syntaks.
man fetchmail: Se etter delen nær bunnen navngitt CONFIGURATION EXAMPLES. Det gir noen raske eksempler. Det er utallige andre konfigurasjonsalternativer når du blir vant til det.
Hvis du forventer å motta svært lite e-post, kan du påkalle
fetchmail når du ønsker å motta innkommende post. Mer
vanlig er den enten påkalt i nisse-modus med -d alternativet enten på kommandolinjen,
eller i .fetchmailrc (se
'DAEMON MODE' i man fetchmailconf), eller alternativt
påkalles den fra en cron jobb.
|
når det kjøres som bruker, vil dette starte
|
|
|
er ment å hjelpe deg med å sette opp og redigere en
|
Heirloom mailx pakken (tidligere kjent som Nail pakken) inneholder mailx, en kommandolinje Brukeragent for e-post avledet fra Berkeley Mail. Den er ment å gi funksjonaliteten til POSIX mailx kommandoen med ekstra støtte for MIME meldinger, IMAP (inkludert caching), POP3, SMTP, S/MIME, meldings tråding/sortering, scoring og filtrering. Heirloom mailx er spesielt nyttig for å skrive skript og satsvis prosessering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/mailx/heirloom-mailx_12.5.orig.tar.gz
Nedlasting MD5 sum: 29a6033ef1412824d02eb9d9213cb1f2
Nedlastingsstørrelse: 317 KB
Estimert diskplass som kreves: 3.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/heirloom-mailx-12.5-fixes-1.patch
nss-3.103, MIT Kerberos V5-1.21.3 (for IMAP GSSAPI autentisering), og en MTA
Denne pakken støtter ikke parallellbygging.
Installer Heirloom mailx ved å kjøre følgende kommandoer:
patch -Np1 -i ../heirloom-mailx-12.5-fixes-1.patch &&
sed 's@<openssl@<openssl-1.0/openssl@' \
-i openssl.c fio.c makeconfig &&
make -j1 LDFLAGS+="-L /usr/lib/openssl/" \
SENDMAIL=/usr/sbin/sendmail
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PREFIX=/usr UCBINSTALL=/usr/bin/install install && ln -v -sf mailx /usr/bin/mail && ln -v -sf mailx /usr/bin/nail && install -v -m755 -d /usr/share/doc/heirloom-mailx-12.5 && install -v -m644 README /usr/share/doc/heirloom-mailx-12.5
make SENDMAIL=/usr/sbin/sendmail: Dette endrer standard MTA sti for /usr/lib/sendmail.
make PREFIX=/usr
UCBINSTALL=/usr/bin/install install: Dette
endrer standard installasjonssti for /usr/local og standard install kommandostien til
/usr/ucb.
For å vise e-post, mailx
bruker et leseprogram. Siden standard for pg ikke er tilgjengelig
på et LFS system, det er påkrevd å spesifiser hvilket
leseprogram som skal brukes. Som standard er more og den mer
behagelige less installert. Hvis
variabelen PAGER ikke er satt i /etc/profile eller ~/.bash_profile, eller om det skal være
et annet leseprogram bare for å lese e-post, det kan bli
satt systembredt i /etc/nail.rc:
echo "set PAGER=<more|less>" >> /etc/nail.rc
eller individuelt for den aktuelle brukeren i ~/.mailrc:
echo "set PAGER=<more|less>" >> ~/.mailrc
Andre interessante alternativer å sette i konfigurasjonsfilene kan være EDITOR og MAILDIR.
Hvis det ikke er satt i miljøet for andre pakker, kan standard skriveprogram angis av:
echo "set EDITOR=<vim|nano|...>" >> /etc/nail.rc
Avhengig av hva slags MTA er installert, kan det være nødvendig å angi MAILDIR variabelen så mailx er i stand til å finne e-postene:
echo "set MAILDIR=Maildir" >> /etc/nail.rc
Mutt pakken inneholder en e-postbrukeragent. Dette er nyttig for å lese, skrive, svare på, lagre og slette e-posten din.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://bitbucket.org/mutt/mutt/downloads/mutt-2.2.13.tar.gz
Nedlasting MD5 sum: 0d33c808d5556c283c01542c7730ccbd
Nedlastingsstørrelse: 5.3 MB
Estimert diskplass som kreves: 48 MB
Estimert byggetid: 0.2 SBU
Lynx-2.9.2, eller Links-2.30 (eller W3m, eller ELinks) - vennligst les notatet.
Aspell-0.60.8.1, Cyrus SASL-2.1.28, DocBook-utils-0.6.14, GDB-15.1, GnuPG-2.4.5, GnuTLS-3.8.7.1, GPGME-1.23.2, libidn-1.42, MIT Kerberos V5-1.21.3, en MTA (som gir en sendmail kommando), slang-2.3.3, SQLite-3.46.1, libgssapi, Mixmaster, QDBM eller Tokyo Cabinet
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/mutt
Mutt leveres med en HTML versjon av manualen, men tekstversjonen leveres ikke lenger på grunn av forskjeller i formateringen fra forskjellige tekstnettlesere sammenlignet med den leverte versjon forårsaket klager. For å få en tekstfil brukes følgende i preferanserekkefølge: lynx med overslag (backspaces) for utheving, w3m eller elinks: de to sistnevnte gir tilsynelatende ren tekst. Vanlig tekst er generelt foretrukket med mindre du leser HTML bruksanvisningen, så bruksanvisningen nedenfor lynx hvis tilgjengelig, eller annet links å produsere vanlig tekst.
Mutt krever en gruppe som
heter mail. Du kan legge til
denne gruppen, hvis den ikke eksisterer, med denne kommandoen
(som root bruker):
groupadd -g 34 mail
Hvis du ikke installerte en MTA,
trenger du å endre eierskapet til /var/mail med denne kommandoen:
chgrp -v mail /var/mail
Installer Mutt ved å kjøre følgende kommandoer:
For å sikre at det lages en rentekst manual ved bruk av lynx eller å bruke links å produsere det (i stedet for elinks), kjør følgende kommando:
sed -e 's/ -with_backspaces//' \
-e 's/elinks/links/' \
-e 's/-no-numbering -no-references//' \
-i doc/Makefile.in
Konfigurer og bygg nå applikasjonen:
./configure --prefix=/usr \
--sysconfdir=/etc
--with-docdir=/usr/share/doc/mutt-2.2.13 \
--with-ssl \
--enable-external-dotlock \
--enable-pop \
--enable-imap \
--enable-hcache \
--enable-sidebar &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du brukte en DESTDIR metode for bare å installere til
et midlertidig sted som en vanlig bruker (som en del av en
pakkebehandlingsprosess), trenger du å kjøre følgende som
root bruker etter å ha
fullført den virkelige installasjonen:
chown root:mail /usr/bin/mutt_dotlock && chmod -v 2755 /usr/bin/mutt_dotlock
En infofil er nå installert, så du må også gjenskape
/usr/share/info/dir som
beskrevet når Texinfo ble
installert i LFS.
sed ... -e 's/ -with_backspaces//' ...: Dette slår av backspaces som brukes til overslag når lynx brukes, noe som resulterer i lesbar ren tekst ved bruk av view.
sed ... -e 's/elinks/links/' ...: Dette tillater links å bli kjørt i stedet for elinks som ikke er i boken.
sed ... -e 's/-no-numbering -no-references//' ...:: Dette fjerner brytere som ikke er forstått av links.
--enable-external-dotlock: I
noen omstendigheter blir mutt-dotlock programmet ikke
opprettet. Denne bryteren sikrer at den alltid er blir
opprettet.
--enable-pop: Denne
bryteren aktiverer POP3 støtte.
--enable-imap: Denne
bryteren aktiverer IMAP støtte.
--enable-hcache:
Denne bryteren aktiverer deklarasjonsbufring.
--enable-sidebar:
Denne bryteren muliggjør støtte for sidefeltet (en liste over
postbokser). Den er av som standard, men kan bli slått på av
:set
sidebar_visible i mutt (og av igjen med
':unset'), eller det kan aktiveres i ~/.muttrc.
--with-ssl: Denne
parameteren legger til SSL/TLS støtte fra openssl i
POP3/IMAP/SMTP.
--enable-autocrypt
--with-sqlite3: Disse to brytere legger til støtte for
passiv beskyttelse mot datainnsamling, bruker gnupg og gpgme
(gpgme er aktivert av autocrypt). Se Manualen.
--enable-gpgme: Denne bryteren
aktiverer GPG støtte gjennom GPGME pakken. Bruk denne
bryteren hvis du vil ha GPG støtte i Mutt.
--enable-smtp: Denne bryteren
aktiverer SMTP reléstøtte.
--with-idn2: Bruk denne
parameteren hvis både libidn og libidn2 er installert, og du
ønsker å bruke libidn2 her.
--with-sasl: Denne parameteren
legger til støtte for autentisering fra Cyrus SASL-2.1.28
i POP3/IMAP/SMTP hvis de er aktivert. Avhengig av
serverkonfigurasjonen er dette kanskje ikke nødvendig for
POP3 eller IMAP. Det er imidlertid nødvendig for SMTP
autentisering.
|
er et skript som viser hvor man skal rapportere feil |
|
|
er en Mail User Agent (MUA) som lar deg lese, skrive og slette e-posten din |
|
|
implementerer e-postkøfillåsen |
|
|
er et skript identisk med flea |
|
|
forbereder en kommandolinje for GnuPG-2.4.5 verktøy |
|
|
er en nøkkelring dumper for PGP. Det er ikke nødvendig for GnuPG-2.4.5 |
|
|
administrerer et nøkkellager for S/MIME sertifikater |
Procmail pakken inneholder en autonom e-postbehandler. Dette er nyttig for å filtrere og sortere innkommende e-post.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/BuGlessRB/procmail/archive/refs/tags/v3.24/procmail-3.24.tar.gz
Nedlasting MD5 sum: e38b8739e5c6400e3586c5fd9810c1e0
Nedlastingsstørrelse: 296 KB
Estimert diskplass som kreves: 2.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/procmail-3.24-consolidated_fixes-1.patch
En MTA som installerer sendmail
Denne pakken kommer ikke med en testpakke.
Installer Procmail ved å
kjøre følgende kommandoer som root bruker:
patch -Np1 -i ../procmail-3.24-consolidated_fixes-1.patch && make LOCKINGTEST=/tmp MANDIR=/usr/share/man install && make install-suid
make LOCKINGTEST=/tmp install: Dette forhindrer make fra å spørre deg hvor du skal teste fillåsingsmønstre.
make install-suid: Endrer tillatelser for de installerte filene.
Oppskrifter må skrives og legges i ~/.procmailrc for utførelse. Procmailex
man siden er startstedet for å lære å skrive oppskrifter.
For ytterligere informasjon, se også https://pm-doc.sourceforge.net/.
|
er et filter som kan brukes til å formatere post til postboksformat |
|
|
er et verktøy som kan låse en fil for engangsbruk interaktivt eller i et skript |
|
|
skriver ut en sammendragsrapport over e-post som har blitt filtrert etter procmail siden sist mailstat ble kjørt |
|
|
er en autonom e-postbehandler. Den utfører alle funksjonene av en MDA (Mail Delivery Agent) |
Balsa-2.6.4 er en GTK2 basert e-postklient.
seamonkey-2.53.18.2 inkluderer både en e-postklient og nyhetsleser i installasjonen.
Thunderbird-128.1.0esr er en e-post-/nyhetsklient basert på Mozilla kodebase.
Evolution-3.52.4 er en e-postklient og organisator fra GNOME skrivebordet.
Hovedservere er programmene som tilbyr innhold eller tjenester til brukere eller andre programmer.
Apache HTTPD pakken inneholder en åpen kildekode HTTP server. Det er nyttig for å lage lokale intranett nettsteder eller kjøre store nettserveringsoperasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/httpd/httpd-2.4.62.tar.bz2
Nedlasting MD5 sum: cded7afa23c13c4854008d95a69ce016
Nedlastingsstørrelse: 7.2 MB
Estimert diskplass som kreves: 85 MB
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/httpd-2.4.62-blfs_layout-1.patch
Brotli-1.1.0, Doxygen-1.12.0, jansson-2.14, libxml2-2.13.3, Lua-5.4.7, Lynx-2.9.2 eller Links-2.30 eller ELinks, nghttp2-1.62.1, OpenLDAP-2.6.8 (Apr-Util-1.6.3 må være installert med ldap støtte), rsync-3.3.0, Berkeley DB (deprecated), og Distcache
Av sikkerhetsgrunner, å kjøre serveren som en uprivilegert
bruker og gruppe oppfordres sterkt. Opprett følgende gruppe
og bruker ved å bruke følgende kommandoer som root:
groupadd -g 25 apache &&
useradd -c "Apache Server" -d /srv/www -g apache \
-s /bin/false -u 25 apache
Bygg og installer Apache HTTPD ved å kjøre følgende kommandoer:
patch -Np1 -i ../httpd-2.4.62-blfs_layout-1.patch &&
sed '/dir.*CFG_PREFIX/s@^@#@' -i support/apxs.in &&
sed -e '/HTTPD_ROOT/s:${ap_prefix}:/etc/httpd:' \
-e '/SERVER_CONFIG_FILE/s:${rel_sysconfdir}/::' \
-e '/AP_TYPES_CONFIG_FILE/s:${rel_sysconfdir}/::' \
-i configure &&
sed -e '/encoding.h/a # include <libxml/xmlstring.h>' \
-i modules/filters/mod_xml2enc.c &&
./configure --enable-authnz-fcgi \
--enable-layout=BLFS \
--enable-mods-shared="all cgi" \
--enable-mpms-shared=all \
--enable-suexec=shared \
--with-apr=/usr/bin/apr-1-config \
--with-apr-util=/usr/bin/apu-1-config \
--with-suexec-bin=/usr/lib/httpd/suexec \
--with-suexec-caller=apache \
--with-suexec-docroot=/srv/www \
--with-suexec-logfile=/var/log/httpd/suexec.log \
--with-suexec-uidmin=100 \
--with-suexec-userdir=public_html &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && mv -v /usr/sbin/suexec /usr/lib/httpd/suexec && chgrp apache /usr/lib/httpd/suexec && chmod 4754 /usr/lib/httpd/suexec && chown -v -R apache:apache /srv/www
sed '/dir.*CFG_PREFIX/s@^@#@'...: Tvinger apxs verktøyet til å bruke absolutte banenavn for moduler, når du blir bedt om det.
sed -e '/HTTPD_ROOT/s ...: Fikser noen stier.
sed -e '/encoding.h/a ...; Fikser bygging mot libxml-2.12.x.
--enable-authnz-fcgi:
Bygg FastCGI autorisasjonsbasert autentisering og
autorisasjon (mod_authnz_fcgi.so fast CGI-modul).
--enable-mods-shared="all
cgi": Modulene bør bli kompilert og brukt som
Dynamic Shared Objects (DSOer) slik at de kan inkluderes og
ekskluderes fra serveren ved å bruke
kjøretidskonfigurasjonsdirektivene.
--enable-mpms-shared=all: Denne
bryteren sørger for at alle MPM (Multi Processing Modules) er
bygget som dynamiske delte objekter (DSOer), slik at brukeren
kan velge hvilken som skal brukes under kjøring.
--enable-suexec:
Denne bryteren aktiverer byggingen av Apache suEXEC modulen som kan brukes til
å tillate brukere til å kjøre CGI og SSI skript under andre
brukere sine IDer enn bruker IDen av den anropende
webserveren.
--with-suexec-*:
Disse bryterne kontrollerer suEXEC modulen sin oppførsel, for
eksempel standard dokumentrot, minimal UID som kan brukes til
kjøre skriptet under suEXEC. Vær oppmerksom på at med minimal
UID 100, kan du ikke kjøre CGI eller SSI skript under suEXEC
som apache bruker.
...
/usr/lib/httpd/suexec: Disse kommandoene
setter suexec
innpakning på riktig plassering, siden den ikke er ment å
kjøres direkte. De justerer også skikkelige tillatelser til
binæren, noe som gjør den setgid apache.
chown -R apache:apache
/srv/www: Som standard,
installasjonsprosessen installerer filer (dokumentasjon,
feilmeldinger, standardikoner osv.) med eierskapet til
brukeren som hentet ut filer fra tar filen. Hvis du ønsker å
endre eierskapet til en annen bruker, bør du gjøre det på
dette tidspunktet. Det eneste kravet er at dokumentmappen må
være tilgjengelige for httpd prosessen med (r-x)
tillatelser og filer må være lesbare (r--) av apache brukeren.
Se file:///usr/share/httpd/manual/configuring.html for detaljerte instruksjoner om å tilpasse din Apache HTTP serverkonfigurasjonsfil.
Det er ingen grunn, i det minste for nettsteder med internett, ikke å bruke SSL kryptering. Å sette opp et sikret nettsted koster ikke noe bortsett fra å installere et lite lite verktøy og noen få minutter med konfigurasjonsarbeid. Bruk denne retningslinjen på https://wiki.linuxfromscratch.org/blfs/wiki/Securing_a_website for å opprette verdensomfattende aksepterte sertifikater og forny dem regelmessig.
Hvis du vil at Apache
serveren skal starte automatisk når systemet startes opp,
installer httpd.service enheten inkludert i
blfs-systemd-units-20240801
pakken:
make install-httpd
|
er et verktøy for benchmarking av din Apache HTTP server |
|
|
er et grensesnitt til Apache HTTP serveren som er designet for å hjelpe administratoren med å kontrollere funksjonene til Apache httpd nissen |
|
|
er et verktøy for å bygge og installere utvidelsesmoduler for Apache HTTP serveren |
|
|
er et program som sjekker om det kan setgid til gruppen spesifisert. Dette er for å se om det er en gyldig gruppe for Apache2 å bruke ved kjøretid. Hvis brukeren (skal kjøres som superbruker) er i den gruppen, eller kan setgid til den, vil den returnere 0 |
|
|
brukes til å opprette og oppdatere DBM formatfilene som brukes til å lagre brukernavn og passord for grunnleggende autentisering av HTTP brukere |
|
|
er et verktøy for å starte et FastCGI program |
|
|
brukes til å rydde opp i diskhurtiglageret |
|
|
brukes til å manipulere DBM passorddatabasene |
|
|
brukes til å opprette og oppdatere flat-filene som brukes til å lagre brukernavn, domenene og passord for sammendragsgodkjenning av HTTP brukere |
|
|
brukes til å opprette og oppdatere flat-filene som brukes til å lagre brukernavn og passord for grunnleggende autentisering av HTTP brukere |
|
|
er Apache HTTP server program |
|
|
brukes til å generere DBM filer fra tekst, for bruk i RewriteMap |
|
|
er et etterbehandlingsprogram for å løse IP-adresser i Apache sine tilgangs loggfiler |
|
|
er et enkelt program for bruk i forbindelse med Apache sin loggfilfunksjon |
|
|
lar brukere kjøre CGI og SSI applikasjoner som en annen bruker |
BIND pakken gir en DNS-server og klientverktøy. Hvis du bare er interessert i verktøyene, referer til BIND Utilities-9.20.0.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.isc.org/isc/bind9/9.20.0/bind-9.20.0.tar.xz
Nedlasting MD5 sum: 2c8d94d1524cbbae4d76cd74955bb6d9
Nedlastingsstørrelse: 5.5 MB
Estimert diskplass som kreves: 138 MB (22 MB installert)
Estimert byggetid: 0.5 SBU (med parallellitet=4; ca. 40 minutter noe prosessoruavhengig, for å kjøre hele testpakken)
liburcu-0.14.0 og libuv-1.48.0
JSON-C-0.17, libcap-2.70 med PAM, og nghttp2-1.62.1
cURL-8.9.1, libidn2-2.3.7, libxml2-2.13.3, lmdb-0.9.31, MIT Kerberos V5-1.21.3, pytest-8.3.2, sphinx-8.0.2 (nødvendig for å bygge dokumentasjon), cmocka, geoip, jemalloc, w3m
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/bind
Fra og med bind-9.18.20, IP adressene for B.ROOT-SERVERS.NET er forandret.
Installer BIND ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/share/man \
--disable-static &&
make
Utfør følgende kommandoer for å kjøre hele testserien. Først
som root bruker, sett opp
noen testgrensesnitt:
Hvis IPv6 ikke er aktivert i kjernen, vil det være flere feilmeldinger: "RTNETLINK answers: Operation not permitted". Disse meldinger påvirker ikke testene.
bin/tests/system/ifconfig.sh up
Testpakken kan indikere at noen tester er hoppet over
avhengig av hvilke konfigurasjonsalternativer som brukes.
Noen tester er merket “UNTESTED” eller til og med mislykkes
hvis Net-DNS-1.46 ikke er installert. En test,
dnssec, er kjent for å
mislykkes. Testene krever hypothesis python
modul, som ikke er i BLFS. For å omgå dette, instruksjonene
nedenfor opprette et Python virtuelt miljø og installer
deretter modulen der inne før du kjører testene. For å kjøre
testene, som en uprivilegert bruker, kjør:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install hypothesis && make -k check && deactivate
Igjen som root, rydd opp i
testgrensesnittet:
bin/tests/system/ifconfig.sh down
Til slutt, installer pakken som root bruker:
make install
--sysconfdir=/etc:
Denne parameteren tvinger BIND for å se etter konfigurasjonsfiler
i /etc i stedet for
/usr/etc.
--with-libidn2: Denne parameteren
aktiverer IDNA2008 (Internationalized Domain Names in
Applications) støtte.
--enable-fetchlimit: Bruk dette
alternativet hvis du vil begrense frekvensen av rekursive
klientforespørsler. Dette kan være nyttig på servere som
mottar et stort antall forespørsler.
--disable-doh: Bruk dette
alternativet hvis du ikke har nghttp2-1.62.1 installert og ikke
trenger støtte for DNS over HTTPS.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
BIND vil bli konfigurert
til å kjøre i et chroot fengsel som en
uprivilegert bruker (named). Denne konfigurasjonen er
sikrere ved at en DNS kompromittering bare kan påvirke noen
få filer i named bruker sin
HOME mappe.
Opprett den uprivilegerte brukeren og gruppen named:
groupadd -g 20 named && useradd -c "BIND Owner" -g named -s /bin/false -u 20 named && install -d -m770 -o named -g named /srv/named
Sett opp noen filer, mapper og enheter som trengs av BIND:
mkdir -p /srv/named &&
cd /srv/named &&
mkdir -p dev etc/named/{slave,pz} usr/lib/engines var/run/named &&
mknod /srv/named/dev/null c 1 3 &&
mknod /srv/named/dev/urandom c 1 9 &&
chmod 666 /srv/named/dev/{null,urandom} &&
cp /etc/localtime etc
rndc.conf filen inneholder
informasjon for å kontrollere named operasjoner med
rndc
verktøyet. Generer en nøkkel for bruk i named.conf og rndc.conf med rndc-confgen kommandoen:
rndc-confgen -a -b 512 -t /srv/named
Opprett named.conf filen som
named vil
lese plasseringen av sonefiler, root navneservere og sikre
DNS nøkler:
cat >> /srv/named/etc/named.conf << "EOF"
options {
directory "/etc/named";
pid-file "/var/run/named.pid";
statistics-file "/var/run/named.stats";
};
zone "." {
type hint;
file "root.hints";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "pz/127.0.0";
};
// Bind 9 now logs by default through syslog (except debug).
// These are the default logging rules.
logging {
category default { default_syslog; default_debug; };
category unmatched { null; };
channel default_syslog {
syslog daemon; // send to syslog's daemon
// facility
severity info; // only send priority info
// and higher
};
channel default_debug {
file "named.run"; // write to named.run in
// the working directory
// Note: stderr is used instead
// of "named.run"
// if the server is started
// with the '-f' option.
severity dynamic; // log at the server's
// current debug level
};
channel default_stderr {
stderr; // writes to stderr
severity info; // only send priority info
// and higher
};
channel null {
null; // toss anything sent to
// this channel
};
};
EOF
Lag en sonefil med følgende innhold:
cat > /srv/named/etc/named/pz/127.0.0 << "EOF"
$TTL 3D
@ IN SOA ns.local.domain. hostmaster.local.domain. (
1 ; Serial
8H ; Refresh
2H ; Retry
4W ; Expire
1D) ; Minimum TTL
NS ns.local.domain.
1 PTR localhost.
EOF
Opprett root.hints fil med
følgende kommandoer:
Det må utvises forsiktighet for å sikre at det ikke er ledende mellomrom i denne filen.
cat > /srv/named/etc/named/root.hints << "EOF"
. 6D IN NS A.ROOT-SERVERS.NET.
. 6D IN NS B.ROOT-SERVERS.NET.
. 6D IN NS C.ROOT-SERVERS.NET.
. 6D IN NS D.ROOT-SERVERS.NET.
. 6D IN NS E.ROOT-SERVERS.NET.
. 6D IN NS F.ROOT-SERVERS.NET.
. 6D IN NS G.ROOT-SERVERS.NET.
. 6D IN NS H.ROOT-SERVERS.NET.
. 6D IN NS I.ROOT-SERVERS.NET.
. 6D IN NS J.ROOT-SERVERS.NET.
. 6D IN NS K.ROOT-SERVERS.NET.
. 6D IN NS L.ROOT-SERVERS.NET.
. 6D IN NS M.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET. 6D IN A 198.41.0.4
A.ROOT-SERVERS.NET. 6D IN AAAA 2001:503:ba3e::2:30
B.ROOT-SERVERS.NET. 6D IN A 170.247.170.2
B.ROOT-SERVERS.NET. 6D IN AAAA 2801:1b8:10::b
C.ROOT-SERVERS.NET. 6D IN A 192.33.4.12
C.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:2::c
D.ROOT-SERVERS.NET. 6D IN A 199.7.91.13
D.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:2d::d
E.ROOT-SERVERS.NET. 6D IN A 192.203.230.10
E.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:a8::e
F.ROOT-SERVERS.NET. 6D IN A 192.5.5.241
F.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:2f::f
G.ROOT-SERVERS.NET. 6D IN A 192.112.36.4
G.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:12::d0d
H.ROOT-SERVERS.NET. 6D IN A 198.97.190.53
H.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:1::53
I.ROOT-SERVERS.NET. 6D IN A 192.36.148.17
I.ROOT-SERVERS.NET. 6D IN AAAA 2001:7fe::53
J.ROOT-SERVERS.NET. 6D IN A 192.58.128.30
J.ROOT-SERVERS.NET. 6D IN AAAA 2001:503:c27::2:30
K.ROOT-SERVERS.NET. 6D IN A 193.0.14.129
K.ROOT-SERVERS.NET. 6D IN AAAA 2001:7fd::1
L.ROOT-SERVERS.NET. 6D IN A 199.7.83.42
L.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:9f::42
M.ROOT-SERVERS.NET. 6D IN A 202.12.27.33
M.ROOT-SERVERS.NET. 6D IN AAAA 2001:dc3::35
EOF
root.hints filen er en liste
over rotnavn servere. Denne filen må oppdateres med jevne
mellomrom med dig verktøyet. En
gjeldende kopi av root.hints kan bli hentet fra https://www.internic.net/domain/named.root.
For detaljer, se "BIND 9 Administrator Reference Manual".
Opprett eller modifiser resolv.conf for å bruke den nye
navneserveren med følgende kommandoer:
Erstatt <yourdomain.com>
med ditt eget gyldige domenenavn.
cp /etc/resolv.conf /etc/resolv.conf.bak &&
cat > /etc/resolv.conf << "EOF"
search <yourdomain.com>
nameserver 127.0.0.1
EOF
Angi tillatelser for chroot fengselet med følgende kommando:
chown -R named:named /srv/named
For å starte DNS serveren ved oppstart, installer
named.service enheten inmludert i
blfs-systemd-units-20240801
pakken:
make install-named
Nå start BIND med følgende kommando:
systemctl start named
Test ut den nye BIND 9 installasjonen. Spør først den lokale vertsadressen med dig:
dig -x 127.0.0.1
Prøv nå et eksternt navneoppslag, og legg merke til hastighetsforskjellen i gjentatte oppslag på grunn av caching. Kjør dig kommandoen to ganger på samme adresse:
dig www.linuxfromscratch.org && dig www.linuxfromscratch.org
Du kan se nesten øyeblikkelige resultater med den navngitte cache oppslag. Rådfør deg med BIND Administrator Reference Manual (se nedenfor) for ytterligere konfigurasjonsalternativer.
ARM dokumentasjonen (ikke forveksle med prosessorarkitekturen) er inkludert i kildepakken. Dokumentasjonen er i .rst format som betyr at den kan konverteres til lesbare formater hvis sphinx-8.0.2 er installert.
Når BIND er satt opp, spesielt når den skal opererer i et ekte live-scenario, er det høyst anbefalt å konsultere ARM dokumentasjonen. ISC gir en oppdatert sett med utmerket dokumentasjon sammen med hver utgivelse slik at den enkelt kan vises og/eller lastes ned – så det er ingen unnskyldning for ikke å lese dokumentasjonen. Formatene ISC gir er PDF, epub og html på https://downloads.isc.org/isc/bind9/9.20.0/doc/arm/.
|
oversetter IP adresser til de tilsvarende ARPA navn |
|
|
genererer en nøkkel for bruk av nsupdate og named |
|
|
er et nytt feilsøkingsverktøy som er en etterfølger til dig |
|
|
avhører DNS servere |
|
|
endrer DS oppføringer for en underordnet sone basert på CDS/CDNSKEY |
|
|
sender ut Delegation Signer (DS) resource record (RR) |
|
|
leser en offentlig DNSKEY oppføring og genererer et par .key/.private filer |
|
|
får nøkler med den gitte etiketten fra en kryptografisk maskinvareenhet og bygger nøkkelfiler for DNSSEC |
|
|
sikrer korrekt DNSKEY dekning basert på en definert regel |
|
|
oppretter signert nøkkelrespons (SKR)-filer for offline KSK-oppsett |
|
|
setter REVOKED biten på en DNSSEC nøkkel |
|
|
angir metadata for nøkkeltiming for en DNSSEC nøkkel |
|
|
genererer signerte versjoner av sonefiler |
|
|
bekrefter at en sone er fullstendig signert for hver algoritme som er funnet i DNSKEY RRset for sonen, og at NSEC / NSEC3 kjeder er komplette |
|
|
er et verktøy for DNS oppslag |
|
|
er en versjon av dig som tillater flere spørringer samtidig |
|
|
er navneserver nissen |
|
|
sjekker syntaksen til |
|
|
sjekker sonefilens gyldighet |
|
|
den er lik named-checkzone, men det dumper alltid soneinnholdet til en spesifisert fil i et spesifisert format |
|
|
skriver ut sonejournalen i lesbar form |
|
|
leser en individuell DNS ressurspost fra standardinndata og sjekker om den er syntaktisk riktig |
|
|
konverterer en NZD database til NZF tekstformat |
|
|
genererer en NSEC3 hash basert på et sett med NSEC3 parametere |
|
|
er et program som brukes til å spørre internettdomene navneservere |
|
|
brukes til å sende inn DNS oppdateringsforespørsler |
|
|
kontrollerer operasjonen av BIND |
|
|
genererer |
|
|
er en symbolkobling til ddns-confgen |
ISC Kea pakken inneholder serverprogrammer for DHCP. Det er etterfølgeren til den gamle ISC DHCP serveren som er utgått siden desember 2022.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.isc.org/isc/kea/2.6.1/kea-2.6.1.tar.gz
Nedlasting MD5 sum: 5f4fe79ed29f5ff2802e2961d1827b25
Nedlastingsstørrelse: 9.9 MB
Estimert diskplass som kreves: 1.5 GB (332 MB installert; legg til 4 GB for tester)
Estimert byggetid: 4.1 SBU (med parallellitet=4; legge til 12 SBU for tester)
Boost-1.86.0 og log4cplus-2.1.1
MIT Kerberos V5-1.21.3, Valgrind-3.23.0;for dokumentasjon Doxygen-1.12.0, Graphviz-12.1.0, og sphinx_rtd_theme-2.0.0; for tester: GoogleTest
MariaDB-10.11.8 eller MySQL, og PostgreSQL-16.4
Du må ha Packet Socket støtte. IPv6 støtte er valgfritt.
[*] Networking support ---> [NET] Networking options ---> <*/M> Packet socket [PACKET] [*] TCP/IP networking [INET] <*> The IPv6 protocol ---> [IPV6]
Installer ISC Kea DHCP Server ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--enable-shell \
--with-openssl \
--disable-static \
--docdir=/usr/share/doc/kea-2.6.1 &&
make
For å teste resultatene må du ha installert GoogleTest og
beholdt dens kilde. Du burde også ha sendt --with-gtest-source=/path/to/googletest/sourcedir
til configure
ovenfor. Kjør testene med make
check. Tre tester i TLSTest pakken er kjent
for å mislykkes.
For å installere ISC Kea DHCP
Server pakken, utsted følgende kommandoer som
root bruker:
make -j1 install
--enable-shell:
Tillater bygging av kea-shell, et
kommandolinjegrensesnitt for kontrollagenten.
--with-openssl:
Tillater bruk av OpenSSL for å kommunisere med
kontrollagenten og for DNS-oppdateringer.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-pgsql or --with-mysql: ISC
Kea kan lagre leiekontraktene på en database. Dette
kan være nyttig i store miljøer som kjører en klynge med DHCP
servere. Å bruke memfile bakstykket (som er en CSV
fil som er lagret lokalt) er mulig uansett.
--enable-generate-docs: Hvis
dokumentasjonen skal gjenoppbygges, legg til dette
alternativet. Flere avhengigheter må installeres for å
generere dokumentasjonen.
make -j1 install:: ISC anbefaler ikke noen form for parallell eller jobbserver alternativer når du utfører installasjonen.
Støtte for IPv4, IPv6 og DDNS er delt inn i separate servere som kjører uavhengig av hverandre. Hver av dem har sin egen konfigurasjonsfil.
Rådfør deg med Kea Administrator Reference Manual for detaljert informasjon om konfigurasjonen av ISC Kea siden det er et ganske kapabelt system. Konfigurasjonen vist nedenfor er et minimum for å få en DHCP server kjørende, men den inkluderer allerede konfigurasjon for DDNS (dynamisk DNS). Det oppsettet fungerer kanskje for små nettverk med noen få klienter og lite trafikk. For større installasjoner med tusenvis av kunder, ISC Kea kan konfigureres til å bruke databaser (mariadb eller postgresql) for å lagre leiekontraktene og bygge en klynge med flere noder. Den kan integreres til ISC Stork som er et administrasjonsdashbord til ISC Kea.
Hvis du vil starte DHCP serveren ved oppstart, installer
kea-dhcpd.service enheten inkludert
i blfs-systemd-units-20240801 pakken:
make install-kea-dhcpd
/etc/kea/kea-ctrl-agent.conf,
/etc/kea/kea-dhcp4.conf,
/etc/kea/kea-dhcp6.conf, og
/etc/kea/kea-dhcp-ddns.conf
Fire tjenesteenheter brukes til å starte forskjellige nisser levert av Kea:
Kontrollagent
Kontrollagenten er en nisse som tillater (om)konfigurering av Kea DHCP tjenesten via REST API. Kjør systemctl enable kea-ctrl-agent hvis denne nissen er nødvendig.
IPv4 DHCP server
Denne nissen håndterer forespørsler om IPv4 adresser. Kjør systemctl enable kea-dhcp4-server for å ha det startet med systemd.
IPv6 DHCP server
Denne nissen håndterer forespørsler om IPv6 adresser. Kjør systemctl enable kea-dhcp6-server for å ha det startet med systemd.
Dynamisk DNS
Denne nissen brukes til å oppdatere en DNS server dynamisk når Kea tildeler en IP adresse til en enhet. Kjør systemctl enable kea-ddns-server for å ha det startet med systemd.
Netconf tjenesten er ikke installert fordi nødvendige avhengigheter dekkes ikke av gjeldende BLFS bok.
Den oppgitte konfigurasjonen kan brukes uten endringer, men
i BLFS er objekter som sockets lagret i /run heller enn i /tmp.
cat > /etc/kea/kea-ctrl-agent.conf << "EOF"
// Begin /etc/kea/kea-ctrl-agent.conf
{
// This is a basic configuration for the Kea Control Agent.
// RESTful interface to be available at http://127.0.0.1:8000/
"Control-agent": {
"http-host": "127.0.0.1",
"http-port": 8000,
"control-sockets": {
"dhcp4": {
"socket-type": "unix",
"socket-name": "/run/kea4-ctrl-socket"
},
"dhcp6": {
"socket-type": "unix",
"socket-name": "/run/kea6-ctrl-socket"
},
"d2": {
"socket-type": "unix",
"socket-name": "/run/kea-ddns-ctrl-socket"
}
},
"loggers": [
{
"name": "kea-ctrl-agent",
"output_options": [
{
"output": "/var/log/kea-ctrl-agent.log",
"pattern": "%D{%Y-%m-%d %H:%M:%S.%q} %-5p %m\n"
}
],
"severity": "INFO",
"debuglevel": 0
}
]
}
}
// End /etc/kea/kea-ctrl-agent.conf
EOF
En eksempelkonfigurasjonsfil opprettes i /etc/kea/kea-dhcp4.conf. Juster filen
slik at den passer dine behov eller overskriv den ved å
kjøre følgende kommando som root bruker (du må redigere denne filen
uansett: minst interfaces feltet, ddns-qualifying-suffix feltet,
og nesten alle feltene i Subnet4:
cat > /etc/kea/kea-dhcp4.conf << "EOF"
// Begin /etc/kea/kea-dhcp4.conf
{
"Dhcp4": {
// Add names of your network interfaces to listen on.
"interfaces-config": {
"interfaces": [ "eth0", "eth2" ]
},
"control-socket": {
"socket-type": "unix",
"socket-name": "/run/kea4-ctrl-socket"
},
"lease-database": {
"type": "memfile",
"lfc-interval": 3600
},
"expired-leases-processing": {
"reclaim-timer-wait-time": 10,
"flush-reclaimed-timer-wait-time": 25,
"hold-reclaimed-time": 3600,
"max-reclaim-leases": 100,
"max-reclaim-time": 250,
"unwarned-reclaim-cycles": 5
},
"renew-timer": 900,
"rebind-timer": 1800,
"valid-lifetime": 3600,
// Enable DDNS - Kea will dynamically update the DNS
"ddns-send-updates" : true,
"ddns-qualifying-suffix": "your.domain.tld",
"dhcp-ddns" : {
"enable-updates": true
},
"subnet4": [
{
"id": 1001, // Each subnet requires a unique numeric id
"subnet": "192.168.56.0/24",
"pools": [ { "pool": "192.168.56.16 - 192.168.56.254" } ],
"option-data": [
{
"name": "domain-name",
"data": "your.domain.tld"
},
{
"name": "domain-name-servers",
"data": "192.168.56.2, 192.168.3.7"
},
{
"name": "domain-search",
"data": "your.domain.tld"
},
{
"name": "routers",
"data": "192.168.56.2"
}
]
}
],
"loggers": [
{
"name": "kea-dhcp4",
"output_options": [
{
"output": "/var/log/kea-dhcp4.log",
"pattern": "%D{%Y-%m-%d %H:%M:%S.%q} %-5p %m\n"
}
],
"severity": "INFO",
"debuglevel": 0
}
]
}
}
// End /etc/kea/kea-dhcp4.conf
EOF
Konfigurasjonen for IPv6 er lik konfigurasjonen av IPv4.
Konfigurasjonsfilen er /etc/kea/kea-dhcp6.conf.
Hvis det er en BIND-9.20.0 server som kjører,
ISC Kea kan oppdatere DNS
når det gir en IP adresse til en klient. En
eksempelkonfigurasjon fil er opprettet i /etc/kea/kea-dhcp-ddns.conf. Juster filen
slik at den passer dine behov eller overskriv den ved å
kjøre følgende kommando som root bruker:
cat > /etc/kea/kea-dhcp-ddns.conf << "EOF"
// Begin /etc/kea/kea-dhcp-ddns.conf
{
"DhcpDdns": {
"ip-address": "127.0.0.1",
"port": 53001,
"control-socket": {
"socket-type": "unix",
"socket-name": "/run/kea-ddns-ctrl-socket"
},
"tsig-keys": [
{
"name" : "rndc-key",
"algorithm" : "hmac-sha256",
"secret" : "1FU5hD7faYaajQCjSdA54JkTPQxbbPrRnzOKqHcD9cM="
}
],
"forward-ddns" : {
"ddns-domains" : [
{
"name" : "your.domain.tld.",
"key-name": "rndc-key",
"dns-servers" : [
{
"ip-address" : "127.0.0.1",
"port" : 53
}
]
}
]
},
"reverse-ddns" : {
"ddns-domains" : [
{
"name" : "56.168.192.in-addr.arpa.",
"key-name": "rndc-key",
"dns-servers" : [
{
"ip-address" : "127.0.0.1",
"port" : 53
}
]
}
]
},
"loggers": [
{
"name": "kea-dhcp-ddns",
"output_options": [
{
"output": "/var/log/kea-ddns.log",
"pattern": "%D{%Y-%m-%d %H:%M:%S.%q} %-5p %m\n"
}
],
"severity": "INFO",
"debuglevel": 0
}
]
}
}
// End /etc/kea/kea-dhcp-ddns.conf
EOF
Verdien av secret er bare et
eksempel. Generer nøkkelen for installasjonen din ved å
bruke rndc-confgen
-a kommandoen eller tsig-keygen kommandoen
som begge er levert av BIND-9.20.0.
I denne eksempelkonfigurasjonen antas det at DNS serveren
kjører på samme maskin som Kea gjør (tilgjengelig via
127.0.0.1) og at denne
maskinen har IP 192.168.56.2.
|
Verktøy for å kontrollere (starte/stoppe) serverprosessene. |
|
|
kea-admin er et skallskript som tilbyr databasevedlikehold. |
|
|
Nisse som viser et RESTful kontrollgrensesnitt for å administrere Kea servere. |
|
|
Servernissen som gir IPv4 adresser. |
|
|
Servernissen som gir IPv6 adresser. |
|
|
Servernissen som utfører de dynamiske DNS oppdateringene. |
|
|
kea-lfc serviceprosessen fjerner overflødig informasjon fra filene som brukes til å gi vedvarende lagring for memfil database bakstykket. Den drives av Kea DHCP serveren. |
|
|
RESTful klient til ISC Kea servicer. |
ProFTPD pakken inneholder en sikker og svært konfigurerbar FTP nisse. Dette er nyttig for servering av store filarkiver over et nettverk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/proftpd/proftpd/archive/v1.3.8b/proftpd-1.3.8b.tar.gz
Nedlasting MD5 sum: 778cdeeac86e1d26451112bb7d4662af
Nedlastingsstørrelse: 19 MB
Estimert diskplass som kreves: 66 MB
Estimert byggetid: 0.3 SBU
libcap-2.70 med PAM, libssh2-1.11.0, Linux-PAM-1.6.1, MariaDB-10.11.8 eller MySQL, pcre2-10.44, PostgreSQL-16.4, og Net::SSH2
Av sikkerhetsgrunner bør du installere ProFTPD ved å bruke en uprivilegert
bruker og gruppe. Som root
bruker:
groupadd -g 46 proftpd &&
useradd -c proftpd -d /srv/ftp -g proftpd \
-s /usr/bin/proftpdshell -u 46 proftpd &&
install -v -d -m775 -o proftpd -g proftpd /srv/ftp &&
ln -v -s /usr/bin/false /usr/bin/proftpdshell &&
echo /usr/bin/proftpdshell >> /etc/shells
Installer ProFTPD som en uprivilegert bruker ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/run && make
Denne pakken kommer ikke med en brukbar testpakke.
Nå, som root bruker:
make install && install -d -m755 /usr/share/doc/proftpd-1.3.8b && cp -Rv doc/* /usr/share/doc/proftpd-1.3.8b
install -v -d -m775 -o proftpd -g proftpd /srv/ftp: Oppretter hjemmemappen for ProFTPD.
ln -v -s /usr/bin/false /usr/bin/proftpdshell: Setter standard skall som en kobling til et ugyldig skall.
echo /usr/bin/proftpdshell >> /etc/shells: Forfalske et gyldig skall for kompatibilitetsformål.
De to ovennevnte kommandoene kan utelates hvis følgende direktiv er plassert i konfigurasjonsfilen:
RequireValidShell off
Som standard vil proftpd kreve at brukere som logger på har gyldig skall. RequireValidShell direktivet slår av dette kravet. Dette anbefales kun hvis du setter opp FTP serveren utelukkende for anonyme nedlastinger.
Støtte for de fleste av avhengighetspakkene krever bruk av alternativer gitt til configure skriptet. Se utdataen fra ./configure --help for fullstendig informasjon om aktivering av avhengighetspakker.
Dette er en enkel konfigurasjon som gjør at det bare kan
lastes ned. Se ProFTPD
dokumentasjon i /usr/share/doc/proftpd og se nettsiden på
http://www.proftpd.org/ for
eksempelkonfigurasjoner.
cat > /etc/proftpd.conf << "EOF"
# This is a basic ProFTPD configuration file
# It establishes a single server and a single anonymous login.
ServerName "ProFTPD Default Installation"
ServerType standalone
DefaultServer on
# Port 21 is the standard FTP port.
Port 21
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022
# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
MaxInstances 30
# Set the user and group that the server normally runs at.
User proftpd
Group proftpd
# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
#DefaultRoot ~
# Normally, files should be overwritable.
<Directory /*>
AllowOverwrite on
</Directory>
# A basic anonymous configuration, no upload directories.
<Anonymous ~proftpd>
User proftpd
Group proftpd
# Clients should be able to login with "anonymous" as well as "proftpd"
UserAlias anonymous proftpd
# Limit the maximum number of anonymous logins
MaxClients 10
# 'welcome.msg' should be displayed at login, and '.message' displayed
# in each newly chdired directory.
DisplayLogin welcome.msg
DisplayChdir .message
# Limit WRITE everywhere in the anonymous chroot
<Limit WRITE>
DenyAll
</Limit>
</Anonymous>
EOF
Installer proftpd.service enheten inkludert
i blfs-systemd-units-20240801
pakken:
make install-proftpd
|
er FTP nissen |
|
|
viser gjeldende antall tilkoblinger |
|
|
brukes til å kontrollere proftpd nissen mens den kjører |
|
|
er et Perl skript designet for å lage og administrere AuthUserFiles og AuthGroupFiles med riktig format for proftpd |
|
|
er et Perl skript for å sende e-post basert på proftpd TransferLog |
|
|
er et Perl skript designet for å opprette og administrere grenser og måle filer for kombinasjonen mod_quotatab + mod_quotatab_file for proftpd |
|
|
gir en måte å skrubbe resultattavlefilen på etter behov |
|
|
slår av alle proftpd servere på et gitt tidspunkt |
|
|
viser kjørestatus på tilkoblinger |
|
|
viser gjeldende prosessinformasjon for hver økt |
|
|
er et Perl skript designet for å kompilere og installere tredjeparts moduler, fra kildekoden, som DSO moduler for den installerte proftpd |
MTA-er er programmene som transporterer post fra en maskin til annen. Den tradisjonelle MTA er Sendmail, imidlertid er det flere andre valg.
I tillegg til SMTP serverne finnes det også en POP/IMAP server (Dovecot).
Dovecot er en Internet Message Access Protocol (IMAP) og Post Office Protocol (POP) server, skrevet primært med sikkerhet i tankene. Dovecot har som mål å være lett, rask og enkel å sette opp samt svært konfigurerbar og enkelt å utvide med programtillegg..
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.dovecot.org/releases/2.3/dovecot-2.3.21.1.tar.gz
Nedlasting MD5 sum: 8c4f360c7f229e4b4371b3d1953d36da
Nedlastingsstørrelse: 7.5 MB
Estimert diskplass som kreves: 253 MB
Estimert byggetid: 4.8 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/dovecot-2.3.21.1-openssl3_fixes-1.patch
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/dovecot-2.3.21.1-security_fix-1.patch
CLucene-2.3.3.4, ICU-75.1, libcap-2.70 med PAM, libunwind-1.6.2, Linux-PAM-1.6.1, Lua-5.4.7, MariaDB-10.11.8 eller MySQL, OpenLDAP-2.6.8, PostgreSQL-16.4, SQLite-3.46.1, Valgrind-3.23.0, xfsprogs-6.9.0, Cassandra, stemmer og libsodium
Det bør være dedikerte brukere og grupper for uprivilegerte
Dovecot prosesser og for behandling av brukernes pålogginger.
Utfør følgende kommandoer som root bruker:
groupadd -g 42 dovecot &&
useradd -c "Dovecot unprivileged user" -d /dev/null -u 42 \
-g dovecot -s /bin/false dovecot &&
groupadd -g 43 dovenull &&
useradd -c "Dovecot login user" -d /dev/null -u 43 \
-g dovenull -s /bin/false dovenull
Først, bruk en oppdatering for å fikse problemer med OpenSSL-3:
patch -Np1 -i ../dovecot-2.3.21.1-openssl3_fixes-1.patch
Deretter bruker du en oppdatering for å fikse et sikkerhetsproblem:
patch -Np1 -i ../dovecot-2.3.21.1-security_fix-1.patch
Installer Dovecot ved å kjøre følgende kommandoer:
CPPFLAGS="-I/usr/include/tirpc" \
LDFLAGS+=" -ltirpc" \
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--docdir=/usr/share/doc/dovecot-2.3.21.1 \
--disable-static &&
make
For å teste resultatene, kjør make -k check.
Nå, som root bruker:
make install
CPPFLAGS=... LDFLAGS+=...: bygg med libtirpc i stedet for den nylig fjernede RPC koden levert av GlibC.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-ldap: Denne bryteren
aktiverer OpenLDAP støtte
for autentisering.
--with-pgsql: Denne bryteren
aktiverer PostgreSQL
databasestøtte.
--with-mysql: Denne bryteren
aktiverer MySQL
databasestøtte.
--with-sqlite: Denne bryteren
aktiverer SQLite
databasestøtte.
--with-lucene: Denne bryteren
aktiverer CLucene støtte for
fulltekstsøk.
--with-lua: Denne bryteren
aktiverer Lua
programtilleggstøtte. Dette inkluderer et programtillegg for
e-post og push varsling.
Kopier en eksempelkonfigurasjon, som du kan bruke som utgangspunkt:
cp -rv /usr/share/doc/dovecot-2.3.21.1/example-config/* /etc/dovecot
Følgende konfigurasjon er et enkelt proof of concept med
IMAP tjenesten som bruker lokale brukere for autentisering
og postboksplassering. Leser filer fra conf.d mappen er kommentert ut siden den
inkluderte eksempelkonfigurasjonen krever OpenSSL og Linux PAM.
sed -i '/^\!include / s/^/#/' /etc/dovecot/dovecot.conf &&
chmod -v 1777 /var/mail &&
cat > /etc/dovecot/local.conf << "EOF"
protocols = imap
ssl = no
# The next line is only needed if you have no IPv6 network interfaces
listen = *
mail_location = mbox:~/Mail:INBOX=/var/mail/%u
userdb {
driver = passwd
}
passdb {
driver = shadow
}
EOF
Du vil definitivt lese den offisielle dokumentasjonen på https://wiki2.dovecot.org/ hvis du planlegger å bruke Dovecot i et produksjonsmiljø.
/usr/lib/dovecot
Exim pakken inneholder en Mail Transport Agent skrevet av University of Cambridge, utgitt under GNU Public License.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.exim.org/pub/exim/exim4/exim-4.98.tar.xz
Nedlasting MD5 sum: f9f4573ba47402364ea71cb3d791b03c
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 18 MB
Estimert byggetid: 0.1 SBU
Ytterligere formater for dokumentasjonen (tekstbaserte dokumenter er levert med kildene) kan lastes ned ved å følge lenkene vist på https://exim.org/docs.html.
libnsl-2.0.1, File-FcntlLock-0.22 og pcre2-10.44
TDB (alternativ til GDBM, bygget i LFS), Cyrus SASL-2.1.28, libidn-1.42, Linux-PAM-1.6.1, MariaDB-10.11.8 eller MySQL, OpenLDAP-2.6.8, GnuTLS-3.8.7.1, PostgreSQL-16.4, SQLite-3.46.1, et grafiske miljø, Heimdal GSSAPI, libspf2, og OpenDMARC
Før bygging av Exim, som
root bruker du bør opprette
gruppen og brukeren exim som
vil kjøre exim
nissen:
groupadd -g 31 exim && useradd -d /dev/null -c "Exim Daemon" -g exim -s /bin/false -u 31 exim
Konfigure Exim med følgende kommandoer:
sed -e 's,^BIN_DIR.*$,BIN_DIRECTORY=/usr/sbin,' \
-e 's,^CONF.*$,CONFIGURE_FILE=/etc/exim.conf,' \
-e 's,^EXIM_USER.*$,EXIM_USER=exim,' \
-e '/# USE_OPENSSL/s,^#,,' src/EDITME > Local/Makefile &&
printf "USE_GDBM = yes\nDBMLIB = -lgdbm\n" >> Local/Makefile
Hvis du vil legge til Linux PAM støtte, kjør også følgende kommandoer:
sed -i '/# SUPPORT_PAM=yes/s,^#,,' Local/Makefile echo "EXTRALIBS=-lpam" >> Local/Makefile
Bygg Exim med følgende kommando:
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -v -m644 doc/exim.8 /usr/share/man/man8 && install -vdm 755 /usr/share/doc/exim-4.98 && cp -Rv doc/* /usr/share/doc/exim-4.98 && ln -sfv exim /usr/sbin/sendmail && install -v -d -m750 -o exim -g exim /var/spool/exim
sed -e ... >
Local/Makefile: Mesteparten av Exim sine konfigurasjonsalternativer er
definert i Local/Makefile, som
er skapt fra src/EDITME filen.
Denne kommandoen spesifiserer minimumssett med alternativer.
Beskrivelser for alternativene er oppført nedenfor.
printf ... > Local/Makefile: Å sette de variablene lar deg bruke GDBM i stedet for standard Berkeley DB. Fjern denne kommandoen hvis du har installert Berkeley DB (deprecated).
BIN_DIRECTORY=/usr/sbin: Dette
installerer alle Exim sine
binærfiler og skript i /usr/sbin.
CONFIGURE_FILE=/etc/exim.conf:
Dette installerer Exim sin
hovedkonfigurasjonsfil i /etc.
EXIM_USER=exim: Dette
forteller Exim at etter at
nissen ikke lenger trenger root privilegier, prosessen må overlevere
nissen til exim brukeren.
USE_OPENSSL:
avkommentere USE_OPENSSL=yes og
USE_OPNSSL_PC=yes forteller
byggesystemet å bruke OpenSSL, og å finne de nødvendige
bibliotekene med pkg-config.
Avkommentere EXIM_MONITOR: Dette
tillater bygging av Exim
overvåkningsprogram, som krever X
Window System støtte, og blir kommentert som standard.
ln -sfv exim /usr/sbin/sendmail: Oppretter en link til sendmail for applikasjoner som trenger det. Exim vil godta de fleste Sendmail kommandolinjealternativer.
install -v -m750 -o exim -g
exim /var/spool/exim: Siden /var/spool eies
av root og denne versjonen av exim dropper root privilegier tidlig, å kjøre som
bruker exim, det kan ikke
lage /var/spool/exim mappen.
Som en omgåing, er det opprettet manuelt.
For å bruke noen eller alle avhengighetspakkene, må du endre
Local/Makefile til å inkludere
passende direktiver og parametere for å koble til flere
biblioteker før du bygger Exim. Local/Makefile er sterkt kommentert med
instruksjoner om hvordan du gjør dette. Oppført nedenfor er
tilleggsinformasjon for å hjelpe deg med å koble disse
avhengighetspakkene eller legge til ekstra funksjonalitet.
Hvis du ønsker å bygge og installere .info dokumentasjon, se
https://exim.org/exim-html-4.98/doc/html/spec_html/ch04.html#SECTinsinfdoc.
Hvis du ønsker å bygge i Exim sitt grensesnitt for å kalle
virus og spam skanningsprogramvare direkte fra
tilgangskontrolllister, avkommenter WITH_CONTENT_SCAN=yes parameteren og se
gjennom informasjon funnet på
https://exim.org/exim-html-4.98/doc/html/spec_html/ch45.html.
For å bruke en annen bakstykke database enn GDBM , se instruksjonene på https://exim.org/exim-html-4.98/doc/html/spec_html/ch04.html#SECTdb.
For SSL funksjonalitet, se instruksjonene på https://exim.org/exim-html-4.98/doc/html/spec_html/ch04.html#SECTinctlsssl og https://exim.org/exim-html-4.98/doc/html/spec_html/ch42.html.
For tcpwrappers funksjonalitet, se instruksjoner på https://exim.org/exim-html-4.98/doc/html/spec_html/ch04.html#SECID27.
For informasjon om å legge til autentiseringsmekanismer til bygget, se kapitler 33—41 av https://exim.org/exim-html-4.98/doc/html/spec_html/index.html.
For informasjon om å koble Linux-PAM, se instruksjonene https://exim.org/exim-html-4.98/doc/html/spec_html/ch11.html#SECTexpcond.
For informasjon om kobling av databasemotorbiblioteker som brukes til Exim navneoppslag, se instruksjonene på https://exim.org/exim-html-4.98/doc/html/spec_html/ch09.html.
Hvis du ønsker å legge til Readline støtte til Exim når det påkalles “test expansion”
(-be) modus, se informasjonen i
-be delen av
https://exim.org/exim-html-4.98/doc/html/spec_html/ch05.html#id2525974.
Det kan være lurt å endre standardkonfigurasjonen og sende
loggfiler til syslog i stedet for standard /var/spool/exim/log mappen. Se
informasjonen på
https://exim.org/exim-html-4.98/doc/html/spec_html/ch-log_files.html.
Et vell av informasjon kan også finnes på Exim Wiki.
Se gjennom filen /etc/exim.conf, og endre innstillinger
til å passe dine behov. Merk at standardkonfigurasjonen
antar at /var/mail mappen er
skrivbar for alle, men har den klebrige biten satt. Hvis du
vil bruke standardkonfigurasjonen, kjør som root bruker:
chmod -v a+wt /var/mail
En standard (ingenting annet enn kommentarer) /etc/aliases fil installeres under
pakkeinstallasjonen hvis denne filen ikke finnes på
systemet ditt. Opprett de nødvendige aliasene og start
Exim nissen ved å bruke
følgende kommandoer:
cat >> /etc/aliases << "EOF"
postmaster: root
MAILER-DAEMON: root
EOF
/usr/sbin/exim -bd -q15m
For å beskytte en eksisterende /etc/aliases fil, kommandoen ovenfor
legger til disse aliasene til den. Denne filen bør
sjekkes og dupliserte aliaser fjernes, hvis de finnes.
/usr/sbin/exim -bd -q15m kommandoen starter Exim nissen med 15 minutters intervall i behandling av postkøen. Juster denne parameteren for å passe dine ønsker.
Hvis du har bygget Exim med Linux PAM støtte, må du opprette en PAM konfigurasjonsfil for å få den til å fungere riktig med BLFS.
Utfør følgende kommando som root bruker for å opprette
konfigurasjonsfilen for Linux
PAM:
cat > /etc/pam.d/exim << "EOF"
# Begin /etc/pam.d/exim
auth include system-auth
account include system-account
session include system-session
# End /etc/pam.d/exim
EOF
For å automatisk starte exim ved oppstart,
installer exim.service enheten inkludert i
blfs-systemd-units-20240801
pakken:
make install-exim
|
sirkulerer Exim loggfiler |
|
|
søker Exim loggfiler |
|
|
er en symbolkobling til exim-4.98-2 MTA nissen |
|
|
er Exim posttransportagent nissen |
|
|
angir om en gitt mottakeradresse fra en gitt vert er akseptabelt eller ikke |
|
|
oppretter og bygger om Exim databaser |
|
|
skriver innholdet i Exim databaser til standardutgangen |
|
|
modifiserer data i Exim databaser |
|
|
låser en postboksfil |
|
|
fjerner gamle poster fra Exim databaser |
|
|
genererer poststatistikk fra Exim loggfiler |
|
|
spør om prøvetider for ekstern vert |
|
|
velger meldinger basert på ulike kriterier |
|
|
er et verktøy for selektiv køoppføring |
|
|
produserer et sammendrag av meldingene i postkøen |
|
|
spørrer kjørende Exim prosesser |
|
|
er et oppstarts skallskript for eximon.bin brukes til å angi de nødvendige miljøvariablene før du kjører programmet |
|
|
er et monitorprogram som viser gjeldende informasjon i et X vindu, og inneholder også en meny grensesnitt til Exim sin kommandolinje administrasjonsmuligheter |
Postfix pakken inneholder en posttransport agent (MTA). Dette er nyttig for å sende e-post til andre brukere av vertsnmaskinen din. Den kan også konfigureres til å være en sentral e-postserver for ditt domene, en e-postreléagent eller ganske enkelt en e-postleveringsagent til din lokale internett leverandør.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ghostarchive.org/postfix/postfix-release/official/postfix-3.9.0.tar.gz
Nedlasting MD5 sum: 3eda9b945ed6cdf11ef58a731c574a04
Nedlastingsstørrelse: 4.7 MB
Estimert diskplass som kreves: 208 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
Cyrus SASL-2.1.28, libnsl-2.0.1, og lmdb-0.9.31
ICU-75.1 for internasjonalisering av e-postadresser (SMTPUTF8) støtte, MariaDB-10.11.8 or MySQL, OpenLDAP-2.6.8, pcre2-10.44, PostgreSQL-16.4, SQLite-3.46.1, Berkeley DB (deprecated), og CDB eller TinyCDB
Merk at SQLite, MySQL, PostgreSQL og CDB er bare nyttige hvis det er et kjent behov for dem.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/postfix
Før du kompilerer programmet, må du opprette brukere og
grupper som forventes å være på plass under installasjonen.
Legg til brukerne og grupper med følgende kommandoer
utstedt av root bruker:
groupadd -g 32 postfix &&
groupadd -g 33 postdrop &&
useradd -c "Postfix Daemon User" -d /var/spool/postfix -g postfix \
-s /bin/false -u 32 postfix &&
chown -v postfix:postfix /var/mail
README filer er formatert for å kunne leses med en leser som less eller more. Hvis du vil bruke et tekstredigeringsprogram, gjør du det lesbart med følgende sed:
sed -i 's/.\x08//g' README_FILES/*
Postfix kildetreet
inneholder ikke et configure
skript, snarere makefilen i toppnivåmappen inneholder en
makefiles mål som regenererer
alle de andre makefilene i byggetreet. Hvis du ønsker å
bruke tilleggsprogramvare som en databasebackend for
virtuelle brukere, eller TLS/SSL autentisering, må du
regenerere makefilene ved å bruke en eller flere av de
passende CCARGS og AUXLIBS innstillingene oppført nedenfor.
For alle varianter av CCARGS bør du sørge for at '-DNO_NIS' er spesifisert slik at byggingen ikke prøver å få tilgang til en rpcsvc deklarasjonen som ikke finnes i BLFS. Hvis Berkeley DB (deprecated) ikke er installert, '-DNO_DB' må spesifiseres også.
Les readme filene for mer informasjon.
Initialiser CCARGS og
AUXLIBS i henhold til notatet
ovenfor:
CCARGS="-DNO_NIS -DNO_DB" AUXLIBS=""
Neste, CCARGS og AUXLIBS variabler er fylt med innstillinger
avhengig av den faktiske Systemkonfigurasjonen. Hvis en
valgfri pakke er installert, men ikke burde inkluderes i
Postfix bygget, bare hoppe
over tilsvarende if [ ... ]; then
i skriptet.
For å bruke Cyrus-SASL med Postfix, bruk følgende argumenter:
if [ -r /usr/lib/libsasl2.so ]; then CCARGS="$CCARGS -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl" AUXLIBS="$AUXLIBS -lsasl2" fi
For å bruke LMDB med Postfix, bruk følgende argumenter:
if [ -r /usr/lib/liblmdb.so ]; then CCARGS="$CCARGS -DHAS_LMDB" AUXLIBS="$AUXLIBS -llmdb" fi
For å bruke OpenLDAP med Postfix, bruk følgende argumenter:
if [ -r /usr/lib/libldap.so -a -r /usr/lib/liblber.so ]; then CCARGS="$CCARGS -DHAS_LDAP" AUXLIBS="$AUXLIBS -lldap -llber" fi
For å bruke Sqlite med Postfix, bruk følgende argumenter:
if [ -r /usr/lib/libsqlite3.so ]; then CCARGS="$CCARGS -DHAS_SQLITE" AUXLIBS="$AUXLIBS -lsqlite3 -lpthread" fi
For å bruke MySQL med Postfix, bruk følgende argumenter:
if [ -r /usr/lib/libmysqlclient.so ]; then CCARGS="$CCARGS -DHAS_MYSQL -I/usr/include/mysql" AUXLIBS="$AUXLIBS -lmysqlclient -lz -lm" fi
For å bruke PostgreSQL med Postfix, bruk følgende argumenter:
if [ -r /usr/lib/libpq.so ]; then CCARGS="$CCARGS -DHAS_PGSQL -I/usr/include/postgresql" AUXLIBS="$AUXLIBS -lpq -lz -lm" fi
For å bruke CDB eller TinyCDB med Postfix, bruk følgende argumenter:
if [ -r </path/to/CDB>/libcdb.a ]; then
CCARGS="$CCARGS -DHAS_CDB"
AUXLIBS="$AUXLIBS </path/to/CDB>/libcdb.a"
fi
For å bruke OpenSSL med Postfix, bruk følgende argumenter:
if [ -r /usr/lib/libssl.so -a -r /usr/lib/libcrypto.so ]; then CCARGS="$CCARGS -DUSE_TLS -I/usr/include/openssl/" AUXLIBS="$AUXLIBS -lssl -lcrypto" fi
OpenSSL er installert av
LFS så det skal alltid være der. if
... then er her bare for konsistens.
Det kan være dupliserte innstillinger i AUXLIBS som -lm
når både, MariaDB og
PostgreSQL er brukt. De
gjør ikke skade. Installer Postfix ved å kjøre følgende
kommandoer:
make CCARGS="$CCARGS" AUXLIBS="$AUXLIBS" makefiles && make
Denne pakken kommer ikke med en nyttig testpakke.
Nå, som root bruker:
sh postfix-install -non-interactive \ daemon_directory=/usr/lib/postfix \ manpage_directory=/usr/share/man \ html_directory=/usr/share/doc/postfix-3.9.0/html \ readme_directory=/usr/share/doc/postfix-3.9.0/readme
make makefiles:
Denne kommandoen gjenoppbygger makefilene gjennom kildetreet
for å bruke alternativene i CCARGS
og AUXLIBS variablene.
sh postfix-install
-non-interactive: Dette holder installer
skriptet fra å stille spørsmål, og aksepterer dermed standard
destinasjonsmapper i alle unntatt noen få tilfeller. Hvis
html_directory og readme_directory alternativer ikke er angitt,
vil ikke dokumentasjonen bli installert.
CCARGS="-DNO_EAI ...": dette vil
slå av SMTPUTF8 støtte, for eksempel hvis resten av
e-postadressens infrastruktur ikke kan håndtere
UTF-8-e-postadresser og meldingsdeklarasjonsverdier.
Opprett (eller legg til en eksisterende) /etc/aliases med følgende kommando. Endre
<LOGIN> til
din ikke-root påloggings identitet så e-post adressert til
root kan videresendes til
deg. Som root bruker:
cat >> /etc/aliases << "EOF"
# Begin /etc/aliases
MAILER-DAEMON: postmaster
postmaster: root
root: <LOGIN>
# End /etc/aliases
EOF
For å beskytte en eksisterende /etc/aliases fil, kommandoen ovenfor
legger til disse aliasene til den hvis den eksisterer.
Denne filen bør kontrolleres og dupliserte aliaser fjernes,
hvis de finnes.
BLFS redaktørene anbefaler å bruke LMDB i stedet for
Berkeley DB for Postfix tabeller. Legg til tre linjer i
/etc/postfix/main.cf for å la
postmap kode
oppslagstabellene i LMDB formater som standard og for å
endre standard hash innstilling for alias tabeller:
echo 'default_database_type = lmdb' >> /etc/postfix/main.cf && echo 'alias_database = lmdb:/etc/aliases' >> /etc/postfix/main.cf && echo 'alias_maps = lmdb:/etc/aliases' >> /etc/postfix/main.cf
For å beskytte serveren din mot de siste SMTP
smuglingangrepene, ytterligere trinn kreves. Legg til to
linjer i /etc/postfix/main.cf
for å koble fra eksterne SMTP klienter som sender bare nye
linjer i DATA delen, mens også tillater klienter på
nettverket ditt med ikke-standard SMTP implementeringer for
fortsatt å sende e-post:
echo 'smtpd_forbid_bare_newline = normalize' >> /etc/postfix/main.cf && echo 'smtpd_forbid_bare_newline_exclusions = $mynetworks' >> /etc/postfix/main.cf
Merk at hvis du følger en nettbasert veiledning for å
konfigurere Postfix, veiledningen kan referere til en
oppslagstabell med hash:/path/to/lookup_table. Du bør
erstatte hash med lmdb for å bruke en oppslagstabell kodet i
LMDB formatet.
/etc/postfix/main.cf og
/etc/postfix/master.cf
filene må tilpasses for systemet ditt. main.cf filen trenger din fullt
kvalifiserte vertsnavn. Du vil se at main.cf er selvdokumenterende, så last
den inn i ditt redigeringsprogram for å gjøre endringene
du trenger for din situasjon.
Postfix kan også settes
opp til kjøre i et chroot fengsel. Se filen i kilden
examples/chroot-setup/LINUX2 for
detaljer.
For å sikre at alle tillatelser er riktig angitt,
postfix gir et verktøy som
skal kjøres som root
bruker:
/usr/sbin/postfix -c /etc/postfix set-permissions
Hvis du har en eksisterende konfigurasjon, kan du kjøre
postfix
verktøy for å legge til nødvendige definisjoner i dine
eksisterende filer. Som root bruker:
/usr/sbin/postfix upgrade-configuration
Før start av Postfix, bør
du sjekke at konfigurasjonen og filtillatelsene vil fungere
som de skal. Kjør følgende kommandoer som root bruker for å sjekke og starte din
Postfix server:
/usr/sbin/postfix check && /usr/sbin/postfix start
For å automatisere kjøringen av Postfix ved oppstart,
installer postfix.service enheten inkludert
i blfs-systemd-units-20240801
pakken:
make install-postfix
|
En symbolkobling til |
|
|
En symbolkobling til |
|
|
er et verktøy for Postfix alias database vedlikehold |
|
|
Skriver ut innholdet i filene fra Postfix køen i lesbart format |
|
|
Viser eller endrer verdien av Postfix konfigurasjonsparametere |
|
|
Oppretter en fil i maildrop mappen og kopierer standard inndata til filen |
|
|
er Postfix kontrollprogram |
|
|
Sender forespørsler til den angitte tjenesten over en lokal transportkanal |
|
|
Låser en e-postmappe for eksklusivt bruk, og utfører beståtte kommandoer til det |
|
|
En Postfix kompatibelt loggingsgrensesnitt for bruk i for eksempel skallskript |
|
|
Oppretter eller spør etter en eller flere Postfix oppslagstabeller, eller oppdaterer en eksisterende |
|
|
er Postfix multi-instans manager. Det lar en systemadministrator administrere flere Postfix forekomster på en enkelt vert |
|
|
Postfix brukergrensesnitt for køhåndtering |
|
|
Postfix brukergrensesnitt for superbruker køhåndtering |
|
|
er Postfix til Sendmail kompatibilitetsgrensesnitt |
sendmail pakken inneholder en post transportagent (MTA).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.sendmail.org/sendmail.8.18.1.tar.gz
Nedlasting MD5 sum: b6b332295b5779036d4c9246f96f673c
Nedlastingsstørrelse: 2.3 MB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.1 SBU
OpenLDAP-2.6.8 (klient)
ghostscript-10.03.1 (for å lage PDF dokumentasjon), Procmail-3.24 (konfigurasjonen foreslått nedenfor krever at procmail er tilstede ved kjøretid), og nph
Før bygging av sendmail,
opprette nødvendig bruker, gruppe og mappe med følgende
kommandoer utstedt som root
bruker:
groupadd -g 26 smmsp &&
useradd -c "Sendmail Daemon" -g smmsp -d /dev/null \
-s /bin/false -u 26 smmsp &&
chmod -v 1777 /var/mail &&
install -v -m700 -d /var/spool/mqueue
Se kildetreet sin sendmail/README fil for informasjon om
kobling av valgfrie pakker til bygget. Bruke eksempelet
nedenfor, som legger til støtte for SASL, StartTLS
(OpenSSL) og OpenLDAP, som utgangspunkt.
Selvfølgelig, endre den for å passe dine spesielle behov.
cat >> devtools/Site/site.config.m4 << "EOF"
APPENDDEF(`confENVDEF',`-D STARTTLS -D SASL -D LDAPMAP -D HASFLOCK')
APPENDDEF(`confLIBS', `-lssl -lcrypto -lsasl2 -lldap -llber')
APPENDDEF(`confINCDIRS', `-I/usr/include/sasl')
EOF
Installer sendmail med følgende kommandoer:
cat >> devtools/Site/site.config.m4 << "EOF"
define(`confMANGRP',`root')
define(`confMANOWN',`root')
define(`confSBINGRP',`root')
define(`confUBINGRP',`root')
define(`confUBINOWN',`root')
EOF
sed -i 's|/usr/man/man|/usr/share/man/man|' \
devtools/OS/Linux &&
cd sendmail &&
sh Build &&
cd ../cf/cf &&
cp generic-linux.mc sendmail.mc &&
sh Build sendmail.cf
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
install -v -d -m755 /etc/mail &&
sh Build install-cf &&
cd ../.. &&
sh Build install &&
install -v -m644 cf/cf/{submit,sendmail}.mc /etc/mail &&
cp -v -R cf/* /etc/mail &&
install -v -m755 -d /usr/share/doc/sendmail-8.18.1/{cf,sendmail} &&
install -v -m644 CACerts FAQ KNOWNBUGS LICENSE PGPKEYS README RELEASE_NOTES \
/usr/share/doc/sendmail-8.18.1 &&
install -v -m644 sendmail/{README,SECURITY,TRACEFLAGS,TUNING} \
/usr/share/doc/sendmail-8.18.1/sendmail &&
install -v -m644 cf/README /usr/share/doc/sendmail-8.18.1/cf &&
for manpage in sendmail editmap mailstats makemap praliases smrsh
do
install -v -m644 $manpage/$manpage.8 /usr/share/man/man8
done &&
install -v -m644 sendmail/aliases.5 /usr/share/man/man5 &&
install -v -m644 sendmail/mailq.1 /usr/share/man/man1 &&
install -v -m644 sendmail/newaliases.1 /usr/share/man/man1 &&
install -v -m644 vacation/vacation.1 /usr/share/man/man1
Installer sendmail Installasjon og Driftsveiledning med følgende kommandoer:
Fjern op.pdf fra make og install kommandoer
nedenfor hvis du ikke har Ghostscript installert.
cd doc/op && sed -i 's/groff/GROFF_NO_SGR=1 groff/' Makefile && make op.txt op.pdf
Nå, som root bruker:
install -v -d -m755 /usr/share/doc/sendmail-8.18.1 && install -v -m644 op.ps op.txt op.pdf /usr/share/doc/sendmail-8.18.1 && cd ../..
cat > devtools/Site/site.config.m4 << "EOF": Dette oppretter en konfigurasjonsfil som endrer noen av standardinnstillingene.
sed ... devtools/OS/Linux: site.config.m4 respekterer ikke en endring i man mappen, så fiks det i OS definisjoner.
sh Build; sh Build sendmail.cf;
sh Build install-cf; sh Build install:
sendmail bruker en
m4 basert byggeskript for å
lage de forskjellige Makefileene. Disse kommandoene bygger og
installerer pakken.
for manpage in...;do...;done; install ...: man sidene er allerede installert formatert og man viser dem noe forvrengt. Disse kommandoene erstatter de formaterte sidene med sider man kan vise riktig.
Sørg for at du har et fullstendig kvalifisert domenenavn
definert i /etc/hosts for
systemet ditt før du fortsetter.
Opprett /etc/mail/local-host-names og
/etc/mail/aliases filene ved
hjelp av følgende kommandoer som root bruker:
echo $(hostname) > /etc/mail/local-host-names
cat > /etc/mail/aliases << "EOF"
postmaster: root
MAILER-DAEMON: root
EOF
# Does not work if there is no database backend compiled in:
#newaliases
sendmail sin primære
konfigurasjonsfil, /etc/mail/sendmail.cf, er komplisert og
ikke ment å redigeres direkte. Den anbefalte metoden for å
endre den er å modifisere /etc/mail/sendmail.mc og ulike
m4 filer, kjør deretter
m4
makroprosessor fra /etc/mail
som følgende:
cd /etc/mail && m4 m4/cf.m4 sendmail.mc > sendmail.cf
En fullstendig forklaring på filene som skal endres, og de
tilgjengelige parametere finner du i /etc/mail/README.
For å automatisere kjøringen av sendmail ved oppstart, installer
sendmail.service enheten inkludert
i blfs-systemd-units-20240801
pakken:
make install-sendmail
-qNm alternativet til sendmail, hvor N er antall minutter, kontrollerer hvor ofte sendmail vil behandle postkøen. En standard på 5 minutter brukes i systemd enheten. Individuelle arbeidsstasjonsbrukere vil kanskje sette dette så lavt som 1 minutt, større installasjoner som håndterer mer post vil kanskje sette den høyere.
|
spørrer og redigerer sendmail kartfiler |
|
|
skriver ut sendmail sin vedvarende vertsstatus |
|
|
viser sendmail statistikk |
|
|
skriver ut et sammendrag av utgående e-postmeldinger som venter på levering |
|
|
oppretter sendmail kartfiler |
|
|
bygger om |
|
|
viser gjeldende sendmail aliaser |
|
|
fører til at sendmail å rydde (rense) all vertsstatusinformasjonen |
|
|
er sendmail posttransportagent |
|
|
er et begrenset skall for sendmail |
|
|
er en autosvar på e-post |
Dette kapittelet inkluderer databaser som spenner fra enkeltbruker lese/skrive til industrielle databaseservere med transaksjonsstøtte. Vanligvis vil du bli sendt hit for å tilfredsstille avhengigheter til andre applikasjoner selv om det er å bygge en SQL server på et basisk LFS system er fullt mulig.
Denne delen handler om å installere databaseprogramvare på nytt når en eksisterende database er i bruk. Det gjelder ikke for innledende installasjoner eller hvis det ikke finnes en eksisterende database for pakken som oppdateres, men brukere bør lese gjennom den for å bli bevisst på problemer som kan oppstå i fremtiden.
La oss starte dette kapittelet med et dramatisk skjermbilde av en feil som virkelig skjedde. Denne feilen vil ikke oppstå hvis du installerer databaseprogramvaren for første gang:
$ sudo systemctl status postgresql
-- postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2021-10-26 17:11:53 CDT; 2min 49s ago
Process: 17336 ExecStart=/usr/bin/pg_ctl -s -D ${PGROOT}/data start -w -t 120 (code=exited, status=1/FAILURE)
CPU: 7ms
Oct 26 17:11:53 SVRNAME systemd[1]: Starting PostgreSQL database server...
Oct 26 17:11:53 SRVNAME postgres[17338]: 2021-10-26 17:11:53.420 CDT [17338] FATAL:
database files are incompatible with server
Oct 26 17:11:53 SRVNAME postgres[17338]: 2021-10-26 17:11:53.420 CDT [17338] DETAIL:
The data directory was initialized by PostgreSQL version 13,
which is not compatible with this version 14.0.
Oct 26 17:11:53 SRVNAME postgres[17336]: pg_ctl: could not start server
Oct 26 17:11:53 SRVNAME postgres[17336]: Examine the log output.
Oct 26 17:11:53 SRVNAME systemd[1]: postgresql.service: Control process exited, code=exited, status=1/FAILURE
Oct 26 17:11:53 SRVNAME systemd[1]: postgresql.service: Failed with result 'exit-code'.
Oct 26 17:11:53 SRVNAME systemd[1]: Failed to start PostgreSQL database server.
For å unngå situasjoner som dette (dvs. databaseserverprogramvaren din nekter å starte), les følgende diskusjon om den beste måten å oppgradere en DBMS (Databasestyringssystem).
Grunnårsaken til feilen vist ovenfor var en oppgradering av serverprogramvaren til en nyere hovedversjon som forlot datafiler urørt. I dette tilfellet var administratoren i stand til å gjenopprette DBMS uten tap av data.
Selv om du gjør en innledende DBMS installasjon, les gjennom denne seksjonen. Den gir informasjon om implementering av sikkerhetskopiering og gjenopprettings prosedyrer (eller i det minste en strategi for å lage dem) som vil tilfredsstille dine behov og garantere sikkerheten av dataene dine.
Databasesystemer fungerer på filer som inneholder databasens metadata og data. Den interne strukturen til disse filene er optimalisert for bruk av serverprogramvaren. Når slik serverprogramvare oppgraderes, den nye programvaren kan bruke et annet filformat enn som tidligere var brukt. Noen ganger kan den nye programvaren arbeide med det gamle formatet så vel som det nye—men uten ytelsesforbedringer det nye formatet gir. Andre ganger vil den nye serverprogramvaren formatere datafilene automatisk etter oppgraderingen.
Dessverre er det mest sannsynlige tilfellet at den nye serverprogramvaren klager på utdaterte filformater og utdataer. Når dette skjer, og du har overskrevet den gamle serverprogramvaren, kan du ende opp med et ødelagt system og tapte data.
Endringer i datafilformater skjer vanligvis ved større versjonsendringer, men de kan også forekomme på andre tidspunkter. Før du oppgraderer noen DBMS programvare, sjekk dokumentasjonen for å se om denne oppgraderingen gjør endringer som krever omformatering av databasen.
Selvfølgelig, hvis du har databaser med innhold som ikke er lett gjenoppbygd, er det alltid en god idé å lage sikkerhetskopier av databasen fra fra tid til annen. Før du oppgraderer serverprogramvaren, bør du kjøre en annen sikkerhetskopi.
En sikkerhetskopi er ubrukelig hvis det ikke er noen bekreftet prosess for å gjenopprette dataene fra denne sikkerhetskopien. Når du kjører en databaseserver, bør du ikke bare lage sikkerhetskopier; du bør også bekrefte at gjenopprettingsprosessen virkelig fungerer. Tiden for å teste gjenopprettingsprosedyren er før du som snarest trenger å gjenopprette tapte data.
De fleste databaseserverprogramvare gir noen grunnleggende verktøy for å lage sikkerhetskopier av dataene dine. Vanligvis sikkerhetskopiene opprettet med disse verktøyene kan leses av nyere versjoner av programvaren (via en gjenopprettingsverktøy). Bruk av eldre gjenopprettingsverktøy med nyere sikkerhetskopieringsdata er en dårlig idé; du burde aldri blindt anta det vil fungere. Det kan det, men vanligvis gjør det ikke det.
Den enkleste måten å oppgradere databasefilene på er å
Lag en fullstendig sikkerhetskopi av databasen ved å bruke de gamle verktøyene.
Dette trinnet oppretter en frakoblet kopi av databasefilene—for langsiktig arkivering, for katastrofegjenoppretting, eller som forberedelse til en oppgradering. Denne offline sikkerhetskopien består av enten (1) en full en-til-en kopi av gjeldende databasefiler, eller (2) en fullstendig sikkerhetskopi av databasefiler for et bestemt tidspunkt, pluss alle journaldataene (det vil si Oracle® terminologi, kalles det "Kontinuerlig arkivering" eller "write ahead log (WAL)" i Postgresql) som beskriver endringer gjort etter dette tidspunktet. Denne andre formen tar mindre tid å lage (hvis DB programvaren gir denne typen journalføring) fordi du bare har å lagre dataene som er endret siden siste fullstendige sikkerhetskopi ble opprettet.
Ved oppgradering av databaseserverprogramvare, en fullstendig sikkerhetskopi (som kan brukes til påfølgende inkrementelle sikkerhetskopier) bør være opprettet; men hvis det er mye data, vil en inkrementell sikkerhetskopi være nok. Den beste strategien for deg avhenger av mengden data som er lagret i databasen din (er det noen hundre tabeller rader, eller er det hundrevis av terabyte?). En full backup i sistnevnte tilfelle kan ikke gjøres raskt. For å fullstendig beskytte dataene dine, lag en sikkerhetskopi av de gamle programmene (og/eller deres kilder) og lagre det sammen med datafilene, for å være sikker på at det finnes en reserveløsning hvis den nye programvaren ikke kan lese de gamle dataene.
Oppgrader serverprogramvaren
I dette trinnet, instruksjoner for å bygge databaseserverprogramvaren kjøres akkurat slik de er vist i påfølgende avsnitt om DBM-ene som MariaDB eller Postgresql. Det vil si å bygge programvaren som vanlig ved å bruke BLFS instruksjoner.
Gjenopprett databasen ved å bruke de nye verktøyene.
For å gjenopprette dataene, verktøyene til den nylig installerte serverprogramvaren skal brukes. Under restaureringsprosessen, den nye verktøyet vil opprette og/eller oppgradere datafilene i formatet som ny programvare krever. Det antas at nyere programvare er i stand til lese gamle data.
Siden du allerede har en sikkerhetskopiprosedyre på plass (og du har testet gjenopprettingsprosedyren din, ikke sant?), kan dette være den enkleste måten å oppgradere siden du kan bruke dine velkjente prosesser for å oppgradere akkurat som du alltid gjør—i det minste når det gjelder sikkerhetskopieringen og gjenopprettingen.
Noen databasesystemer (for eksempel Postgresql) gir et verktøy som kan omformatere (oppgradere) de eksisterende databasefilene til det nye formatet. Hvis du trenger å gjenopprette fra en sikkerhetskopi (for eksempel kjøring av oppgraderingsverktøyet mislyktes) må du installere den gamle programvaren på nytt for å gjenopprette dataene dine.
Selv om omformateringsverktøyene kan fungere som annonsert, bør du lage en fullstendig sikkerhetskopi før du kjører dem. En feil kan forårsake alvorlig skade på databasen.
Oppstrøms dokumentasjon for sikkerhetskopiering/gjenoppretting: https://www.postgresql.org/docs/current/backup.html
Oppstrøms dokumentasjon for sikkerhetskopiering/gjenoppretting: https://mariadb.com/kb/en/backup-and-restore-overview/
Ikke undervurder Sqlite. Det er en funksjonsrikt DBMS. Hovedforskjellen fra de to store aktørene ovenfor er at Sqlite ikke gir tilgang via en nettverks API. SQLite databaser er alltid lagret på maskinen som kjører programmet som bruker databasen. Manipulering av datainnhold gjøres via API kall til bibliotekfunksjoner direkte i programmet.
I oppstrømsdokumentasjonen kan du finne følgende nyttig:
Dokumentasjon av kommandolinjeverktøyet sqlite3: https://www.sqlite.org/cli.html
Dokumentasjon av sikkerhetskopiering API kall: https://www.sqlite.org/backup.html
Dessverre er det ikke noe dedikert kapittel i oppstrøms dokumentasjon som snakker om sikkerhetskopiering/gjenoppretting, men det er flere artikler om det på Internett. Her er et eksempel.
Dokumentasjon for sikkerhetskopiering/gjenoppretting: https://database.guide/backup-sqlite-database/
lmdb pakken er en rask, kompakt, nøkkelverdi innebygd datalagrer. Den bruker minnetilordnede filer, så den har lesing ytelsen til en ren minnedatabase samtidig som den tilbyr utholdenhet av standard diskbaserte databaser, og er bare begrenset til størrelsen på det virtuelle adresserommet
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/LMDB/lmdb/archive/LMDB_0.9.31.tar.gz
Nedlasting MD5 sum: 9d7f059b1624d0a4d4b2f1781d08d600
Nedlastingsstørrelse: 144 KB
Estimert diskplass som kreves: 4.7 MB
Estimert byggetid: Mindre enn 0.1 SBU
Denne pakken pakker ut til lmdb-LMDB_0.9.31.
Installer lmdb ved å kjøre følgende kommandoer:
cd libraries/liblmdb && make && sed -i 's| liblmdb.a||' Makefile
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make prefix=/usr install
sed ... liblmdb.a ... Makefile: Pakkens kjørbare filer bruker et statisk bibliotek, så det må opprettes. Denne kommandoen undertrykker installasjonen av det statiske biblioteket.
MariaDB er en fellesskapsutviklet gren og en drop-in erstatning for MySQL relasjonelle databasestyringssystem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.mariadb.org/interstitial/mariadb-10.11.8/source/mariadb-10.11.8.tar.gz
Nedlasting MD5 sum: ba7abfae7947893c5a5343180808b0cb
Nedlastingsstørrelse: 96 MB
Estimert diskplass som kreves: 1.9 GB (415 MB installed)
Estimert byggetid: 4.8 SBU (med parallellitet=8, legg til 0,3 SBU for tester)
Den installerte størrelsen på MariaDB er 725 MB, men den
kan bli redusert med ca. 265 MB, hvis ønskelig, ved å
fjerne /usr/share/mysql/test
mappen etter installasjonen.
Boost-1.86.0, libaio-0.3.113, libxml2-2.13.3, Linux-PAM-1.6.1, LZO-2.10, MIT Kerberos V5-1.21.3, pcre2-10.44, Ruby-3.3.4, sphinx-8.0.2, unixODBC-2.3.12, Valgrind-3.23.0, Groonga, KyTea, Judy, MeCab, MessagePack, mruby, MyRocks, Snappy, og ZeroMQ
MariaDB og MySQL kan ikke installeres på samme system uten omfattende endringer i byggekonfigurasjonen til en av de to applikasjonene.
Av sikkerhetsgrunner, å kjøre serveren som en uprivilegert
bruker og gruppe oppfordres sterkt. Utsted følgende (som
root) for å opprette bruker
og gruppe:
groupadd -g 40 mysql && useradd -c "MySQL Server" -d /srv/mysql -g mysql -s /bin/false -u 40 mysql
Installer MariaDB ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
-D GRN_LOG_PATH=/var/log/groonga.log \
-D INSTALL_DOCDIR=share/doc/mariadb-10.11.8 \
-D INSTALL_DOCREADMEDIR=share/doc/mariadb-10.11.8 \
-D INSTALL_MANDIR=share/man \
-D INSTALL_MYSQLSHAREDIR=share/mysql \
-D INSTALL_MYSQLTESTDIR=share/mysql/test \
-D INSTALL_PAMDIR=lib/security \
-D INSTALL_PAMDATADIR=/etc/security \
-D INSTALL_PLUGINDIR=lib/mysql/plugin \
-D INSTALL_SBINDIR=sbin \
-D INSTALL_SCRIPTDIR=bin \
-D INSTALL_SQLBENCHDIR=share/mysql/bench \
-D INSTALL_SUPPORTFILESDIR=share/mysql \
-D MYSQL_DATADIR=/srv/mysql \
-D MYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock \
-D WITH_EXTRA_CHARSETS=complex \
-D WITH_EMBEDDED_SERVER=ON \
-D SKIP_TESTS=ON \
-D TOKUDB_OK=0 \ \
.. &&
make
For å teste resultatene, kjør: make test. En test, test-connect, er kjent for å mislykkes.
Et mer omfattende sett med tester kan kjøres med følgende:
pushd mysql-test
./mtr --parallel <N> --mem --force
popd
Hvor N er antall tester som skal kjøres parallelt. Over 5400 tester kjøres i ca 24 SBU med N=4. Noen få tester kan mislykkes, hovedsakelig på grunn av tegnsettproblemer.
Nå, som root bruker:
make install
Hvis du har Linux-PAM-1.6.1 installert, flytt PAM
modulen og konfigurasjonsfilen installert av denne pakken som
root bruker:
mv -v /usr/share/pam_use_map.so /lib/security && mv -v /usr/share/user_map.conf /etc/security
-D
WITH_EMBEDDED_SERVER=ON: Denne bryteren aktiverer
kompilering av det innebygde serverbiblioteket som trengs av
visse applikasjoner, som for eksempel Amarok.
-D
WITH_EXTRA_CHARSETS=complex: Denne bryteren
aktiverer støtte for komplekse tegnsett.
-D SKIP_TESTS=ON:
Denne bryteren deaktiverer tester for MariaDB Connector/C som
ikke støttes uten ekstra oppsett.
-D WITHOUT_SERVER=ON: Bruk denne
bryteren hvis du ikke vil ha serveren og bare ønsker å bygge
klienten.
Det er mange alternativer tilgjengelig for cmake. Sjekk utdataen av cmake . -LH for tilleggs tilpasningsalternativer.
Lag en grunnleggende /etc/mysql/my.cnf fil ved å bruke
følgende kommando som root
bruker:
install -v -dm 755 /etc/mysql &&
cat > /etc/mysql/my.cnf << "EOF"
# Begin /etc/mysql/my.cnf
# The following options will be passed to all MySQL clients
[client]
#password = your_password
port = 3306
socket = /run/mysqld/mysqld.sock
# The MySQL server
[mysqld]
port = 3306
socket = /run/mysqld/mysqld.sock
datadir = /srv/mysql
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
sort_buffer_size = 512K
net_buffer_length = 16K
myisam_sort_buffer_size = 8M
# Don't listen on a TCP/IP port at all.
skip-networking
# required unique id between 1 and 2^32 - 1
server-id = 1
# Uncomment the following if you are using BDB tables
#bdb_cache_size = 4M
#bdb_max_lock = 10000
# InnoDB tables are now used by default
innodb_data_home_dir = /srv/mysql
innodb_log_group_home_dir = /srv/mysql
# All the innodb_xxx values below are the default ones:
innodb_data_file_path = ibdata1:12M:autoextend
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 128M
innodb_log_file_size = 48M
innodb_log_buffer_size = 16M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates
[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
# End /etc/mysql/my.cnf
EOF
Du kan nå installere en database og endre eierskapet til
uprivilegert bruker og gruppe (utfør som root bruker):
mysql_install_db --basedir=/usr --datadir=/srv/mysql --user=mysql && chown -R mysql:mysql /srv/mysql
Ytterligere konfigurasjon krever at MariaDB serveren kjører. Start
serveren ved bruk av følgende kommandoer som root bruker:
install -v -m755 -o mysql -g mysql -d /run/mysqld && mysqld_safe --user=mysql 2>&1 >/dev/null &
En standardinstallasjon setter ikke opp et passord for
administrator, så bruk følgende kommando som root bruker til å angi et.
mysqladmin -u root password
Konfigurasjonen av serveren er nå fullført. Stopp serveren
ved å bruke følgende kommando som root bruker:
mysqladmin -p shutdown
Installer mysqld.service enheten inkludert i
blfs-systemd-units-20240801 pakken
som root bruker for å
starte MariaDB serveren
under oppstart av systemet.
make install-mysqld
Hvis du allerede har en eksisterende database og denne installasjonen av binærfiler bare var en oppgradering til en nyere versjon, sjekk oppstrømsdokumentasjonen for oppgradering. Det anbefales å kjøre:
mariadb-upgrade
Det er flere symbolkoblinger fra mysql* til deres mariadb motparter. Disse opprettholdes for kompatibilitet.
Perl DBI moduler må installeres for at noen av MariaDB støtteprogrammer vil fungere ordentlig.
|
brukes til å sjekke, reparere, optimalisere, sortere og få informasjon om Aria tabeller |
|
|
er et verktøy for å dumpe innholdet på Aria loggsider |
|
|
viser fulltekstindeksinformasjon |
|
|
er et verktøy for å generere komprimerte, skrivebeskyttede Aria tabeller |
|
|
viser innholdet i Aria loggfilen |
|
|
kopierer en aria tabell til og fra AWS S3 |
|
|
starter opp en ny Galera klynge |
|
|
gjenoppretter data fra en Galera klynge |
|
|
skriver ut sjekksummer for InnoDB filer |
|
|
er et åpen kildekode sikkerhetskopieringsverktøy for InnoDB og XtraDB |
|
|
er et enkelt SQL skall med redigeringsmuligheter for inndatalinjer |
|
|
er MySQL server nissen |
|
|
kontrollerer tilgangsrettighetene for et vertsnavn, brukernavn og database kombinasjon |
|
|
er en klient for å utføre administrative operasjoner |
|
|
leser binære loggfiler |
|
|
utfører tabellvedlikehold: Den sjekker, reparerer, optimerer, eller analyserer tabeller |
|
|
brukes til å teste aspekter ved MySQL klient API som ikke kan bli testet med mysqltest og dets testspråk |
|
|
er et verktøy for å teste klient API for den innebygde serveren |
|
|
konverterer tegnsett for bruk med MariaDB |
|
|
konverterer tabellene i en database til å bruke en bestemt lagringsmotor |
|
|
er designet for å administrere flere mysqld prosesser som lytter etter tilkoblinger på forskjellige Unix socket filer og TCP/IP porter |
|
|
er den anbefalte måten å starte en mysqld server på Unix og NetWare |
|
|
er et sikkerhetskopieringsprogram |
|
|
analyserer MySQL sakte spørringsloggfiler og skriver ut et sammendrag av deres innhold |
|
|
er en MySQL klient statisk koblet til libmariadbd |
|
|
leser filer som inneholder SQL setninger og trekker ut setninger som samsvarer med et gitt regulært uttrykk eller som inneholder USE db_name eller SET uttalelser |
|
|
konverterer utvidelsene for MyISAM (eller ISAM) tabellfiler til deres kanoniske former |
|
|
låser tabellen, spyler tabellen og utfører deretter en kopi av databasen |
|
|
leser en rekke av dataformater, og setter inn dataene i en database |
|
|
initialiserer MySQL datamappen og oppretter systemets tabeller som den inneholder, hvis de ikke finnes |
|
|
er RocksDB verktøyet |
|
|
er et verktøy som lar MySQL administratorer administrere hvilke programtillegg en MySQL server laster inn |
|
|
er et verktøy for å forbedre MySQL installasjonssikkerheten |
|
|
genererer en systemd enhet basert på gjeldende mariadb innstillinger |
|
|
setter tillatelser i MySQL tildelingstabellene |
|
|
viser strukturen til en MariaDB database |
|
|
er et diagnoseprogram utviklet for å emulere klientbelastning for en MySQL server og for å rapportere tidspunktet for hvert trinn |
|
|
kjører en testsak mot en MySQL server og sammenligner eventuelt utdataen med en resultatfil |
|
|
ligner på mysqltest kommandoen, men er bygget med støtte for den innebygde libmysqld serveren |
|
|
laster tidssonetabellene i mysql databasen |
|
|
undersøker alle tabeller i alle databaser for inkompatibiliteter med gjeldende versjon av MySQL Server |
|
|
signaliserer at en prosess skal avsluttes og venter på at prosessen avsluttes |
|
|
får kompilatorflagg for bruk av MariaDB Connector/C |
|
|
er et verktøy for å sende InnoDB og XTraDB sikkerhetskopier over en strøm |
|
|
er et verktøy for å konvertere mSQL programmer for bruk med MySQL |
|
|
viser alternativene fra alternativgrupper med alternativfiler |
|
|
viser informasjon om FULLTEXT indekser i MyISAM tabeller |
|
|
får informasjon om databasetabellene dine eller kontroller, reparerer, eller optimaliserer dem |
|
|
viser innholdet i MyISAM loggfilen |
|
|
er et verktøy for å komprimere MyISAM tabeller |
|
|
gir deg nyttig informasjon for å kompilere din MySQL klient og koble den til MySQL |
|
|
er et konsollbasert verktøy for å overvåke trådene og generelt ytelsen til en MySQL server |
|
|
er et verktøy som viser beskrivelser for systemets eller lagrings motorfeilkoder |
|
|
er MariaDB/MySQL utvidelse til SQL standarden |
|
|
løser en numerisk stabeldump til symboler |
|
|
er et verktøy for å løse IP adresser til vertsnavn og omvendt |
|
|
dumper innholdet i sst filer (formatet som brukes av RocksDB) |
PostgreSQL er en avansert objektrelasjonelt databasestyringssystem (ORDBMS), avledet fra Berkeley Postgres databasebehandlingssystem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.postgresql.org/pub/source/v16.4/postgresql-16.4.tar.bz2
Nedlasting MD5 sum: bdcc1e350b473c13d132d190c0c18499
Nedlastingsstørrelse: 24 MB
Estimert diskplass som kreves: 225 MB (add 43 MB for tests)
Estimert byggetid:: 0.8 SBU (med parallellitet=4, legg til 0,2 SBU for tester)
ICU-75.1, libxml2-2.13.3, libxslt-1.1.42, OpenLDAP-2.6.8, Linux-PAM-1.6.1, MIT Kerberos V5-1.21.3 og Bonjour
fop-2.9, docbook-4.5-dtd, docbook-dsssl-1.79, DocBook-utils-0.6.14, OpenJade-1.3.2, og SGMLSpm-1.1
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/postgresql
For økt sikkerhet er det bedre å ha en dedikert gruppe og
bruker for å kjøre PostgreSQL serveren. Først utstedt som
root bruker:
groupadd -g 41 postgres &&
useradd -c "PostgreSQL Server" -g postgres -d /srv/pgsql/data \
-u 41 postgres
Det er flere konfigurasjonselementer som legger til mer funksjonalitet med valgfrie pakker til PostgreSQL. Bruk ./configure --help for å se en liste.
Installer PostgreSQL med følgende kommandoer:
sed -i '/DEFAULT_PGSOCKET_DIR/s@/tmp@/run/postgresql@' src/include/pg_config_manual.h &&
./configure --prefix=/usr \
--enable-thread-safety \
--docdir=/usr/share/doc/postgresql-16.4 &&
make
Det er en rekke programmer i contrib/ mappen. Hvis du skal kjøre denne
installasjonen som en server og ønsker å bygge noen av dem,
skriv inn make -C
contrib eller make -C contrib/<SUBDIR-NAME>
for hver undermappe.
Tester må kjøres som en uprivilegert bruker fordi de må starte en midlertidig server og dette forhindres som root bruker. For den samme grunn, må du stoppe alle PostgreSQL servere hvis noen kjører. Hvis en tidligere versjon av PostgreSQL er installert, kan det være nødvendig å bruke --disable-rpath med configure for å unngå feil, men å installere binærfiler opprettet ved hjelp av denne bryteren anbefales ikke. For å teste resultatene, kjør: make check.
Hvis du installerer PostgreSQL for å oppgradere en eksisterende installasjon, er det viktige trinn du trenger å følge. Hvis hovedversjonen av det nye bygget er større enn forrige versjon, er det en sjanse for at datafilformatet har endret seg. Ny programvare kan ikke bruke de eksisterende datafilene. I dette tilfellet vil serveren ikke starte fordi de gamle programmene har blitt overskrevet, så dataene er utilgjengelige før filformatet er konvertert.
Før oppgradering av en eksisterende installasjon av PostgreSQL, sjekk dokumentasjonen for eventuelle hensyn som du må ha i bakhodet under oppgraderingen. Merk at nye hovedversjoner kan bruke et annet binært format i dataobjektene, noe som forårsaker potensielle inkompatibiliteter. For mer informasjon, vennligst se gjennom oppstrøms dokumentasjon om oppgradering av PostgreSQL her: https://www.postgresql.org/docs/current/upgrading.html.
På dette punktet kan du ha både de gamle og de nye binærfilene installert på filsystemet ditt. Disse binærfilene kan brukes til å utføre en oppgradering av eksisterende databasefiler. For følgende instruksjoner antas det at
De aktuelle datafilene er lagret i /srv/pgsql/data
De oppgraderte datafilene vil bli lagret i
/srv/pgsql/newdata
Det er nok diskplass til å holde de aktuelle datafilene to ganger. Oppgraderingen er ikke en innebygd oppgradering, men den vil kopiere dataene til nye databasefiler.
Gjør først en midlertidig installasjon som gir tilgang til de nye binære filene mye enklere:
make DESTDIR=$(pwd)/DESTDIR install
Deretter oppretter du en mappe som kan skrives av
postgres brukeren, som
root bruker:
install -d -o postgres $(pwd)/DESTDIR/tmp
Stopp nå den eksisterende forekomsten av PostgreSQL og start
oppgraderingsprosessen som root bruker:
pushd $(pwd)/DESTDIR/tmp
systemctl stop postgresql
su postgres -c "../usr/bin/initdb -D /srv/pgsql/newdata"
su postgres -c "../usr/bin/pg_upgrade \
-d /srv/pgsql/data -b /usr/bin \
-D /srv/pgsql/newdata -B ../usr/bin"
popd
På dette tidspunktet er databasefilene tilgjengelige på to
steder på disken. De gamle dataene ligger i /srv/pgsql/data, og de nye dataene er i
/srv/pgsql/newdata. Det
anbefales å sikkerhetskopiere de gamle databasefilene før
du fortsetter.
Deretter fjerner du de gamle databasefilene og gir nytt
navn til den nye datamappen som root bruker:
rm -rf /srv/pgsql/data mv /srv/pgsql/newdata /srv/pgsql/data
Nå, som root bruker:
make install && make install-docs
Hvis du har laget noen av contrib/ programmene, som root bruker:
make -C contrib/<SUBDIR-NAME> install
Hvis du bare har tenkt å bruke PostgreSQL som en klient for å koble til en server på en annen maskin, er installasjonen din fullført og du bør ikke kjøre de resterende kommandoene.
Hvis du har oppgradert en eksisterende database, hopp over resten av kommandoene fordi databasen din er klar til bruk. Hvis dette er første gang du installerer PostgreSQL, fortsett med initialiseringen.
Initialiser en databaseklynge med følgende kommandoer utstedt
av root bruker:
install -v -dm700 /srv/pgsql/data && install -v -dm755 /run/postgresql && chown -Rv postgres:postgres /srv/pgsql /run/postgresql
Initialiser nå databasen som root bruker:
su - postgres -c '/usr/bin/initdb -D /srv/pgsql/data'
sed -i ...:
Denne sed endrer server socket plassering fra /tmp til /run/postgresql.
--enable-thread-safety: Denne
bryteren gjør klientbiblioteker trådsikre ved å tillate
samtidige tråder i libpq og
ECPG programmer til trygt kontrollere deres private
tilkoblingsbehandler.
--with-openssl: bygger pakken med
støtte for OpenSSL krypterte
tilkoblinger.
--with-perl: bygger PL/Perl
serversiden språk.
--with-python: bygger PL/Python
serversiden språk.
--with-tcl: bygger PL/Tcl
serversiden språk.
$PGDATA/pg_ident.con,
$PGDATA/pg_hba.conf, og
$PGDATA/postgresql.conf
PGDATA miljøvariabelen er brukt
til å skille databaseklynger fra hverandre ved å sette den
til verdien på mappen som inneholder den ønskede klyngen.
De tre konfigurasjonsfilene finnes i hver PGDATA/ mappe. Detaljer om formatet på
filene og alternativene som kan angis i hver finnes i
/usr/share/doc/postgresql-16.4/html/index.html.
Installer postgresql.service enheten
inkludert i blfs-systemd-units-20240801
pakken:
make install-postgresql
Databaseserveren kan startes manuelt med følgende kommando
(som root bruker):
su - postgres -c '/usr/bin/postgres -D /srv/pgsql/data > \
/srv/pgsql/data/logfile 2>&1 &'
Hvis du skripter denne delen, bør du vente på at serveren starter før du går videre, ved å legge til for eksempel sleep 2 etter kommandoen ovenfor.
Instruksjonene nedenfor viser hvordan du oppretter en
database, legger til en tabell i den, setter inn noen rader
i tabellen og velger dem for å bekrefte at installasjonen
fungerer som den skal. Fortsatt som bruker root, kjør:
su - postgres -c '/usr/bin/createdb test' &&
echo "create table t1 ( name varchar(20), state_province varchar(20) );" \
| (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Billy', 'NewYork');" \
| (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Evanidus', 'Quebec');" \
| (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Jesse', 'Ontario');" \
| (su - postgres -c '/usr/bin/psql test ') &&
echo "select * from t1;" | (su - postgres -c '/usr/bin/psql test')
Når du er ferdig med testingen, kan du stenge serveren ved
å utstede som root:
su - postgres -c "/usr/bin/pg_ctl stop -D /srv/pgsql/data"
|
er et verktøy for å samle tabeller i en PostgreSQL database |
|
|
oppretter en ny PostgreSQL database |
|
|
definerer en ny PostgreSQL brukerkonto |
|
|
fjerner en PostgreSQL database |
|
|
fjerner en PostgreSQL brukerkonto |
|
|
er den innebygde SQL forbehandleren |
|
|
oppretter en ny databaseklynge |
|
|
løser OID-er (objekt-IDer) og filnoder i en PostgreSQL datamappe |
|
|
ser etter korrupsjon i en eller flere PostgreSQL databaser |
|
|
rydder opp i PostgreSQL WAL (write-ahead log) arkivfiler |
|
|
tar grunnleggende sikkerhetskopier av en kjørende PostgreSQL klynge |
|
|
aktiverer, deaktiverer eller kontrollerer datasjekksummer i en PostgreSQL databaseklynge |
|
|
henter PostgreSQL versjonsinformasjon |
|
|
returnerer informasjon initialisert under initdb, for eksempel katalogversjonen og serverlokaliteter |
|
|
kontrollerer stopping og starting av databaseserveren |
|
|
dumper databasedata og metadata inn i skript som brukes for å gjenskape databasen |
|
|
rekursivt kaller pg_dump for hver database i en klynge |
|
|
sjekker tilkoblingsstatusen til en PostgreSQL server |
|
|
brukes til å streame write-ahead logger fra en PostgreSQL server |
|
|
kontroller PostgreSQL logiske dekodingsstrømmer |
|
|
starter om write-ahead logg og annen kontrollinformasjon av en PostgreSQL databaseklynge |
|
|
oppretter databaser fra dumpfiler opprettet av pg_dump |
|
|
synkroniserer en PostgreSQL datamappe med andre datamapper som ble forgrenet fra den første |
|
|
støtter opprettelsen av en PostgreSQL varm standby server |
|
|
bestemmer den raskeste wal_sync metoden for PostgreSQL |
|
|
måler timing overhead |
|
|
oppgraderer en PostgreSQL serverforekomst |
|
|
verifiserer integriteten til en grunnleggende sikkerhetskopi av en PostgreSQL klynge |
|
|
viser en lesbar gjengivelse av write-ahead loggen til en PostgreSQL databaseklynge |
|
|
kjører en benchmark test på PostgreSQL |
|
|
er et støtteskript som brukes til å slette en modul fra en PL/Tcl tabell. Kommandoen krever at Pgtcl pakken blir installert |
|
|
er et støtteskript som brukes til å liste modulene i en PL/Tcl tabell. Kommandoen krever at Pgtcl pakken blir installert |
|
|
er et støtteskript som brukes til å laste en modul inn i en PL/Tcl tabell. Kommandoen krever at Pgtcl pakken blir installert |
|
|
er PostgreSQL databaseserveren |
|
|
er et konsollbasert databaseskall |
|
|
er et verktøy for å gjenoppbygge indekser i en database |
|
|
komprimerer databaser og genererer statistikk for spørringsanalysatoren |
|
|
fjerner foreldreløse store objekter fra en PostgreSQL database |
|
|
inneholder funksjoner for å støtte innebygd SQL i C programmer |
|
|
er ecpg kompatibilitetsbiblioteket |
|
|
er det portspesifikke undersystemet til Postgres bakstykke |
|
|
inneholder funksjoner for å håndtere Postgres datatyper |
|
|
er C programmererens API til Postgres |
SQLite pakken er et programvarebibliotek som implementerer en selvstendig, serverløs, null-konfigurasjon, transaksjonell SQL databasemotor.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://sqlite.org/2024/sqlite-autoconf-3460100.tar.gz
Nedlasting MD5 sum: bde7df8c2a4bce82dbf42f7e4dda0e21
Nedlastingsstørrelse: 3.1 MB
Estimert diskplass som kreves: 80 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
Valgfri dokumentasjon
Nedlasting (HTTP): https://sqlite.org/2022/sqlite-doc-3460100.zip
Nedlasting MD5 sum: 3f1fc03c5aad4839825d576eea5d93ff
Nedlastingsstørrelse: 11 MB
libedit og UnZip-6.0 (nødvendig for å pakke ut dokumentasjonen)
Hvis du lastet ned den valgfrie dokumentasjonen, utfør følgende kommando for å installere dokumentasjonen inn i kildetreet:
unzip -q ../sqlite-doc-3460100.zip
Installer SQLite ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--enable-fts{4,5} \
CPPFLAGS="-D SQLITE_ENABLE_COLUMN_METADATA=1 \
-D SQLITE_ENABLE_UNLOCK_NOTIFY=1 \
-D SQLITE_ENABLE_DBSTAT_VTAB=1 \
-D SQLITE_SECURE_DELETE=1" &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du lastet ned den valgfrie dokumentasjonen, utfør
følgende kommandoer som root
bruker for å installere den:
install -v -m755 -d /usr/share/doc/sqlite-3.46.1 && cp -v -R sqlite-doc-3460100/* /usr/share/doc/sqlite-3.46.1
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-fts{4,5}:
Disse bryterne aktiverer støtte for versjon 3, 4 og 5 av
fulltekstsøk (FTS) utvidelsen. Merk at --enable-fts4 bryteren muliggjør støtte for
både FTS versjon 4 og FTS versjon 3.
CPPFLAGS="-D
SQLITE_ENABLE_COLUMN_METADATA=1 ... : Noen
applikasjoner krever at disse alternativene er slått på. Den
eneste måten å gjøre dette på er å inkludere dem i
CFLAGS eller CPPFLAGS. Vi bruker sistnevnte slik at
standardverdien (eller en hvilken som helst verdi satt av
brukeren) til CFLAGS ikke vil bli
berørt. For ytterligere informasjon om hva som kan
spesifiseres se https://www.sqlite.org/compile.html.
Her finner du mange måter å dele maskinen din med resten av verden eller ditt lokale nettverk. Før installasjon av noen pakker i dette kapittelet, må du være sikker på at du forstår hva pakken gjør og hvordan du setter den opp riktig. Det kan det også være nyttig å lære om konsekvensene av et feil oppsett sånn at du kan analysere risikoene.
OpenLDAP pakken gir en åpen kildeimplementering av Lightweight Directory Access Protocol.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.6.8.tgz
Nedlasting MD5 sum: a7ca5f245340e478ea18b8f972c89bb1
Nedlastingsstørrelse: 6.3 MB
Estimert diskplass som kreves: 61 MB (klient og server)
Estimert byggetid: 0.4 SBU (klient), 1.1 SBU (server)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/openldap-2.6.8-consolidated-1.patch
GnuTLS-3.8.7.1, unixODBC-2.3.12, MariaDB-10.11.8 eller PostgreSQL-16.4 eller MySQL, OpenSLP, WiredTiger, og Berkeley DB (deprecated) (for slapd, også avviklet)
Hvis du bare trenger å installere klientsiden ldap* binærfiler, tilsvarende manualsider, biblioteker og deklarasjonsfiler (referert til som en “bare klient” installering), kjør disse kommandoene i stedet for de følgende (ingen testpakke tilgjengelig):
patch -Np1 -i ../openldap-2.6.8-consolidated-1.patch &&
autoconf &&
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static \
--enable-dynamic \
--disable-debug \
--disable-slapd &&
make depend &&
make
Deretter, som root bruker:
make install
Det bør være en dedikert bruker og gruppe til å ta kontroll
over slapd
nissen etter at den er startet. Utfør følgende kommandoer som
root bruker:
groupadd -g 83 ldap &&
useradd -c "OpenLDAP Daemon Owner" \
-d /var/lib/openldap -u 83 \
-g ldap -s /bin/false ldap
Installer OpenLDAP ved å kjøre følgende kommandoer:
patch -Np1 -i ../openldap-2.6.8-consolidated-1.patch &&
autoconf &&
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib \
--disable-static \
--disable-debug \
--with-tls=openssl \
--with-cyrus-sasl \
--without-systemd \
--enable-dynamic \
--enable-crypt \
--enable-spasswd \
--enable-slapd \
--enable-modules \
--enable-rlookups \
--enable-backends=mod \
--disable-sql \
--disable-wt \
--enable-overlays=mod &&
make depend &&
make
Testene er skjøre, og feil kan føre til at testene avbrytes
før ferdigstillelse. Noen feil kan oppstå på grunn av
tidsproblemer. Testene tar rundt en time, og tiden er CPU
uavhengig pga forsinkelser i testene. På de fleste systemer
vil testene kjøre opp til test065-proxyauth for mdb testen. For å
teste resultatene, kjør: make
test.
Nå, som root bruker:
make install &&
sed -e "s/\.la/.so/" -i /etc/openldap/slapd.{conf,ldif}{,.default} &&
install -v -dm700 -o ldap -g ldap /var/lib/openldap &&
install -v -dm700 -o ldap -g ldap /etc/openldap/slapd.d &&
chmod -v 640 /etc/openldap/slapd.{conf,ldif} &&
chown -v root:ldap /etc/openldap/slapd.{conf,ldif} &&
install -v -dm755 /usr/share/doc/openldap-2.6.8 &&
cp -vfr doc/{drafts,rfc,guide} \
/usr/share/doc/openldap-2.6.8
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-debug:
Denne bryteren deaktiverer feilsøkingskoden i OpenLDAP.
--enable-dynamic:
Denne bryteren tvinger OpenLDAP biblioteker å være dynamisk
koblet til de kjørbare programmene.
--enable-crypt: Denne
bryteren gjør det mulig å bruke crypt(3) passord.
--enable-spasswd:
Denne bryteren aktiverer SASL passordbekreftelse.
--enable-modules:
Denne bryteren aktiverer dynamisk modulstøtte.
--enable-rlookups:
Denne bryteren aktiverer omvendt oppslag av klientvertsnavn.
--enable-backends:
Denne bryteren aktiverer alle tilgjengelige bakstykker.
--enable-overlays:
Denne bryteren aktiverer alle tilgjengelige overlegg.
--disable-sql: Denne
bryteren eksplisitt deaktiverer SQL bakstykke. Utelat denne
bryteren hvis det er en SQL server installert og du skal
bruke en SQL bakstykke.
--disable-wt: Denne
bryteren eksplisitt deaktiverer WiredTiger bakstykke. Utelat
denne bryteren hvis WiredTiger er installert og du skal bruke
en WiredTiger bakstykke.
--libexecdir=/usr/lib: Denne
bryteren kontrollerer hvor /usr/lib/openldap mappen er installert. Alt
i den mappen er et bibliotek, så det hører hjemme under
/usr/lib i stedet for
/usr/libexec.
--enable-slp: Denne bryteren
aktiverer SLPv2 støtte. Bruk den hvis du har installert
OpenSLP.
--disable-versioning: Denne
bryteren deaktiverer symbolversjonering i OpenLDAP biblioteker. Standard er å ha
symbolversjonering. Merk at hvis du har bygde applikasjoner
som bruker denne pakken med symbolversjonering, og fjerner
symbolene, kan det hende at applikasjonene ikke kjører.
Du kan kjøre ./configure --help for å se om det er andre brytere du kan sende til configure kommandoen for å aktivere andre alternativer eller avhengighetspakker.
install ..., chown ..., og chmod ...: Å ha slapd konfigurasjonsfiler og ldap databaser i /var/lib/openldap lesbart av alle er et SIKKERHETSPROBLEM, spesielt siden en fil lagrer administratorpassord i REN TEKST. Det er derfor modus 640 og root:ldap eierskap ble brukt. Eieren er root, så bare root kan endre filen, og gruppen er ldap, slik at gruppen som eier slapd nissen kan lese, men ikke endre filen i tilfelle et sikkerhetsbrudd.
For LDAP klient: /etc/openldap/ldap.conf og
~/.ldaprc
For LDAP servere brukes to konfigurasjonsmekanismer:
konfigurasjonsfilen for eldre versjoner /etc/openldap/slapd.conf og den
anbefalte slapd-config systemet, ved
hjelp av en LDIF database lagret i /etc/openldap/slapd.d.
Konfigurering av slapd servere kan være
komplekse. Sikring av LDAP mappen, spesielt hvis du lagrer
ikke-offentlig data som passorddatabaser kan også være en
utfordrende oppgave. For å sette opp OpenLDAP, må du endre enten
/etc/openldap/slapd.conf
filen (gammel metode), eller /etc/openldap/slapd.ldif filen og
deretter bruke ldapadd for å opprette
LDAP konfigurasjonsdatabasen i /etc/openldap/slapd.d (anbefalt av
OpenLDAP dokumentasjonen).
Instruksjonene ovenfor installerer en tom LDAP struktur
og en standard /etc/openldap/slapd.conf fil, som er
egnet for å teste bygget og andre pakker ved bruk av
LDAP. Ikke bruke dem på en produksjonsserver.
Ressurser for å hjelpe deg med emner som å velge en
mappekonfigurasjon, bakstykke og database definisjoner,
tilgangskontrollinnstillinger, kjøre som en annen bruker
enn root og sette opp et
chroot miljø
inkluderer:
slapd(8) manualside.
slapd.conf(5) og slapd-config(5) manualsider.
OpenLDAP 2.6
Administrator's Guide (også installert lokalt i
/usr/share/doc/openldap-2.6.8/guide/admin).
Dokumenter som ligger på https://www.openldap.org/pub/.
For å automatisere oppstarten av LDAP serveren ved oppstart
av systemet, installer slapd.service enheten inkludert i
blfs-systemd-units-20240801 pakken
ved å bruke følgende kommando:
make install-slapd
Du må endre /etc/default/slapd for å
inkludere parametrene som trengs for din spesifikke
konfigurasjon. Se slapd manside for
parameterinformasjon.
Start LDAP serveren med systemctl:
systemctl start slapd
Bekreft tilgangen til LDAP serveren med følgende kommando:
ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
Det forventede resultatet er:
# extended LDIF
#
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: namingContexts
#
#
dn:
namingContexts: dc=my-domain,dc=com
# search result
search: 2
result: 0 Success
# numResponses: 2
# numEntries: 1
|
åpner en tilkobling til en LDAP server, binder og legger til oppføringer |
|
|
åpner en tilkobling til en LDAP server, binder og utfører en sammenligning med spesifiserte parametere |
|
|
åpner en tilkobling til en LDAP server, binder og sletter en eller flere oppføringer |
|
|
utsteder den utvidede LDAP operasjonen spesifisert av oid eller et av de spesielle søkeordene whoami, cancel, eller refresh |
|
|
åpner en tilkobling til en LDAP server, binder og modifiserer oppføringer |
|
|
åpner en tilkobling til en LDAP server, binder og modifiserer RDN for oppføringer |
|
|
er et verktøy som brukes til å angi passordet til en LDAP bruker |
|
|
åpner en tilkobling til en LDAP server, binder og utfører et søk med spesifiserte parametere |
|
|
er en kommando som gjør det mulig å enten komponere eller dekomponere LDAP URIs |
|
|
verifiserer LDAP anerkjennelser |
|
|
åpner en tilkobling til en LDAP server, binder og viser whoami informasjon |
|
|
brukes til å sjekke atferden til slapd ved å verifisere tilgang til mappedata i henhold til tilgangskontrollen liste direktiver definert i konfigurasjonen |
|
|
brukes til å legge til oppføringer spesifisert i LDAP Directory Interchange Format (LDIF) til en LDAP database |
|
|
brukes til å sjekke oppførselen til slapd i kartlegging av identiteter for autentisering og autorisasjonsformål, som spesifisert i slapd.conf |
|
|
brukes til å generere LDAP LDIF utdata basert på innholdet i en slapd database |
|
|
er den frittstående LDAP serveren |
|
|
sjekker en liste over strengrepresenterte DN-er basert på skjemasyntaks |
|
|
brukes til å regenerere slapd indekser basert på gjeldende innhold i en database |
|
|
modifiserer oppføringer i en slapd database |
|
|
er OpenLDAP passordverktøy |
|
|
brukes til å kontrollere skjemasamsvar for innholdet i en slapd database |
|
|
sjekker om |
|
|
er et sett med Lightweight Basic Encoding Rules rutiner. Disse rutinene brukes av LDAP biblioteksrutinene til å kode og dekode LDAP protokollelementer som bruker (litt forenklet) Basic Kodingsregler definert av LDAP. De brukes vanligvis ikke direkte av et LDAP applikasjonsprogram bortsett fra ved håndtering av kontroller og utvidet drift |
|
|
støtter LDAP programmene og gir funksjonalitet for andre programmer som samhandler med LDAP |
Unbound er en validerende, rekursiv og caching DNS løser. Den er designet som et sett med modulære komponenter som innlemmer moderne funksjoner, for eksempel forbedret sikkerhet (DNSSEC) validering, Internet Protocol versjon 6 (IPv6) og en klientløser bibliotek API som en integrert del av arkitekturen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://nlnetlabs.nl/downloads/unbound/unbound-1.21.0.tar.gz
Nedlasting MD5 sum: fb7cc7922064bf122941b9f135052d00
Nedlastingsstørrelse: 6.3 MB
Estimert diskplass som kreves: 148 MB (med dokumenter; legg til 11 MB for tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; med dokumenter; legg til 0.3 SBU for tester)
libevent-2.1.12, Nettle-3.10, Protobuf-c-1.5.0 (for dnstap), sphinx-8.0.2 (for Python bindinger dokumentasjon), SWIG-4.2.1 (for Python bindinger), Doxygen-1.12.0 (for html dokumentasjon), og dnstap
Det bør være en dedikert bruker og gruppe til å ta kontroll
over unbound
nissen etter at den er startet. Utsted følgende kommandoer
som root bruker:
groupadd -g 88 unbound &&
useradd -c "Unbound DNS Resolver" -d /var/lib/unbound -u 88 \
-g unbound -s /bin/false unbound
Installer Unbound ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static \
--with-pidfile=/run/unbound.pid &&
make
Hvis du har Doxygen-1.12.0 pakken er installert og du ønsker å bygge html dokumentasjon, kjør følgende kommando:
make doc
For å teste resultatene, kjør make check.
Nå, som root bruker:
make install && mv -v /usr/sbin/unbound-host /usr/bin/
Hvis du har bygget dokumentasjonen, installer den ved å kjøre
følgende kommandoer som root
bruker:
install -v -m755 -d /usr/share/doc/unbound-1.21.0 && install -v -m644 doc/html/* /usr/share/doc/unbound-1.21.0
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-libevent: Dette
alternativet aktiverer libevent støtte som tillater bruk av
store utgående portområder.
--with-pyunbound: Dette
alternativet aktiverer bygging av Python bindinger.
I standardkonfigurasjonen, unbound vil binde seg til
localhost (127.0.0.1 IP-adresse) og tillate rekursive
spørringer kun fra localhost klienter. Hvis du vil bruke
unbound for
lokal DNS løsning, kjør følgende kommando som root bruker:
echo "nameserver 127.0.0.1" > /etc/resolv.conf
For avansert konfigurasjon se /etc/unbound/unbound.conf filen og
dokumentasjonen.
Når Unbound er installert,
noen pakkebygg mislykkes hvis filen /etc/unbound/root.key ikke er funnet.
Opprett denne filen ved å kjøre følgende kommando som
root bruker:
unbound-anchor
Hvis du vil at Unbound
server skal starte automatisk når systemet startes opp,
installer unbound.service enheten inkludert
i blfs-systemd-units-20240801
pakken:
make install-unbound
|
er en DNS løser nisse |
|
|
utfører oppsett eller oppdatering av rottillitsankeret for DNSSEC validering |
|
|
sjekker unbound konfigurasjonsfil for syntaks og andre feil |
|
|
utfører fjernadministrasjon på unbound DNS løseren |
|
|
genererer et selvsignert sertifikat og private nøkler for serveren og klienten |
|
|
er et DNS oppslagsverktøy som ligner på host fra BIND Utilities-9.20.0 |
|
|
gir Unbound API funksjoner til programmer |
Dette kapittelet inneholder instruksjoner for å bygge og konfigurere et grafisk brukermiljø.
I lang tid har det eneste grafiske miljøet som kan brukes med GNU/Linux vært X Vindussystemet. Den bruker en klient/server modell som gjør det mulig å skrive applikasjoner helt uavhengig av den grafiske maskinvaren. Dette har den ulempen at tilgang til moderne maskinvareakselerasjon er vanskelig, så en annen tilnærming som heter Wayland er utviklet. Det er en enklere erstatning for X, lettere å utvikle og vedlikeholde, bruker OpenGL rammeverket. De viktigste skrivebordsmiljøene GNOME og KDE har blitt overført til den.
Dette kapittelet gir de grunnleggende komponentene til X Vindussytemet og Wayland. For X er den valgte implementeringen Xorg, som er en modulær implementering og krever at mer enn 100 pakker installeres. Distribusjon av Xorg er gitt et utgivelsesnummer av utviklerne, i dette tilfellet Xorg-7. Individuelle pakker oppdateres etter behov uten å endre dette nummeret.
Xorg er en fritt redistribuerbar, åpen kildekode implementering av X VindusSystem. Dette systemet gir et klient/server grensesnitt mellom skjermmaskinvaren (mus, tastatur og videoskjermer) og skrivebordsmiljøet, samtidig som det gir både vindusinfrastruktur og en standardisert applikasjonsgrensesnitt (API).
Xorg-7.0 introduserte et fullstendig automatisk verktøy, modulært byggesystem. Med det nye modulære byggesystemet er det ikke lenger mulig å laste ned hele pakken i en enkelt fil. Faktisk vil det være godt over 100 pakker som må hentes fra nedlastingsstedet. Å assistere med en så stor oppgave å installere Wget-1.24.5 er sterkt anbefalt for å laste ned de nødvendige filene. En komplett wget filliste er gitt for hver side som inkluderer flere pakker.
Gitt antall tilgjengelige pakker, å bestemme hvilke pakker du behøver for å installere for ditt spesielle oppsett kan virke litt overveldende. Se på denne siden og denne tråden for å få en ide om hva du trenger. Hvis du er usikker, bør du installere alle pakker på bekostning av ekstra diskplass.
Selv om du har tenkt å laste ned kun de nødvendige pakkene, bør du laste ned wget fillistene. Listen over filer er sortert etter avhengighet, og pakkeversjonene som er oppført i filene er kjent for å samarbeide godt med hverandre. Videre inneholder wget fillistene kommentarer for spesifikke pakker som er utdatert eller ikke anbefales å installere. Nyere pakker er sannsynligvis ment for neste utgivelse av Xorg og har allerede bevist å være inkompatibel med gjeldende versjoner av programvare installert i BLFS. Den installerte størrelsen på Xorg kan reduseres betydelig ved å installere bare pakkene du trenger og bruker, BLFS boken kan imidlertid ikke redegjøre for alle avhengigheter og bygge alternativer for de enkelte Xorg pakkene. Instruksjonene forutsetter at alle pakkene blir bygget.
I tillegg, på grunn av det store antallet repeterende
kommandoer, oppfordres du til å delvis automatisere byggingen.
Instruksjoner har blitt gitt for å bruke Sudo-1.9.15p5 pakken. Det er
anbefalt at du bruker :NOPASSWD
konfigurasjonsalternativ for brukeren som skal bygge xorg
pakkene.
Følgende instruksjoner antar at skallet sine oppstartsfiler er satt opp som beskrevet i Oppstartsfilene til Bash Skallet.
Som med tidligere utgivelser av X Vindussystemet, kan det
være ønskelig å installere Xorg inn i et alternativt prefiks. Dette
er ikke lenger vanlig praksis blant Linux distribusjoner. Det
vanlige installasjonsprefikset for Xorg på Linux er /usr. Det er ingen standard alternativt
prefiks, og det er heller ikke noe unntak i gjeldende
revisjon av Filesystem Hierarchy Standard for versjon 7 av X
Vindussystemet. Alan Coopersmith fra Sun Microsystems, en
gang uttalte "Hos Sun brukte vi /usr/X11 og planlegger å holde med det."
Bare /opt/* prefikset eller
/usr prefikset holder seg til
gjeldende FHS retningslinjer.
BLFS redaktørene anbefaler å bruke /usr prefikset.
Velg installasjonsprefikset, og still inn XORG_PREFIX variabelen med følgende kommando:
export XORG_PREFIX="<PREFIX>"
Gjennom disse instruksjonene vil du bruke følgende
configure
brytere for alle pakkene. Opprett XORG_CONFIG variabelen som skal brukes for
denne parameter substitusjonen:
export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc \
--localstatedir=/var --disable-static"
Vi vil bruke $XORG_CONFIG i
instruksjonene for mange pakker som tilhører eller er
relatert til Xorg. Disse instruksjonene vil ikke fungere
ordentlig med standardoppførselen til zsh-5.9. Så hvis du bruker
zsh-5.9 som
det interaktive skallet og bygger en pakke som
instruksjonen bruker denne variabelen, gjør zsh-5.9 oppførselen
$XORG_CONFIG utvidelse samme som
bash:
set -o shwordsplit
Hvis du vil gjøre denne innstillingen vedvarende, legg til denne kommandoen i zsh oppstartsfilen.
Opprett en /etc/profile.d/xorg.sh konfigurasjonsfil
som inneholder disse variablene som root bruker:
cat >> /etc/profile.d/xorg.sh << "EOF"
XORG_PREFIX="$XORG_PREFIX"
XORG_CONFIG="--prefix=\$XORG_PREFIX --sysconfdir=/etc --localstatedir=/var --disable-static"
export XORG_PREFIX XORG_CONFIG
EOF
chmod 644 /etc/profile.d/xorg.sh
Det er en viss forvirring om "here" dokumentet ovenfor. Omvendt skråstrek foran dollartegnet er riktig. Bash vil fjerne det når du oppretter /etc/profile.d/xorg.sh. Imidlertid, hvis du oppretter filen med et skriveprogram, en kopiering og lim inn operasjon vil ikke fjerne skråstreken. De må da fjernes manuelt.
Hvis du har installert Sudo-1.9.15p5, sørg for at XORG_PREFIX og XORG_CONFIG er tilgjengelig i sudo miljøet. Som root bruker, kjør følgende kommando:
cat > /etc/sudoers.d/xorg << EOF
Defaults env_keep += XORG_PREFIX
Defaults env_keep += XORG_CONFIG
EOF
Hvis du har bestemt deg for å bruke standard /usr prefiks må du utelate resten av
denne siden og fortsette på util-macros-1.20.1.
Hvis du har bestemt deg å ikke bruke standard prefiks, sørg
for å legge til $XORG_PREFIX/bin til din PATH miljøvariabel, og $XORG_PREFIX/lib/pkgconfig og $XORG_PREFIX/share/pkgconfig til din
PKG_CONFIG_PATH variabelen. Det er
også nyttig å spesifisere flere søkestier for gcc og en inkluder mappe
for aclocal
programmet. Utsted følgende kommandoer som root bruker:
cat >> /etc/profile.d/xorg.sh << "EOF"
pathappend $XORG_PREFIX/bin PATH
pathappend $XORG_PREFIX/lib/pkgconfig PKG_CONFIG_PATH
pathappend $XORG_PREFIX/share/pkgconfig PKG_CONFIG_PATH
pathappend $XORG_PREFIX/lib LIBRARY_PATH
pathappend $XORG_PREFIX/include C_INCLUDE_PATH
pathappend $XORG_PREFIX/include CPLUS_INCLUDE_PATH
ACLOCAL="aclocal -I $XORG_PREFIX/share/aclocal"
export PATH PKG_CONFIG_PATH ACLOCAL LIBRARY_PATH C_INCLUDE_PATH CPLUS_INCLUDE_PATH
EOF
Skriptet ovenfor må aktiveres. Normalt vil det bli gjort automatisk ved pålogging, men for å aktivere den nå, som vanlig bruker, kjør:
source /etc/profile.d/xorg.sh
Du bør også legge til $XORG_PREFIX/lib til /etc/ld.so.conf filen. Igjen, som
root bruker, utsted følgende
kommando:
echo "$XORG_PREFIX/lib" >> /etc/ld.so.conf
Du bør også endre /etc/man_db.conf, for å legge til passende
MANDATORY_MANPATH, MANPATH_MAP, og MANDB_MAP oppføringer
etter eksempler for /usr/X11R6.
Utsted følgende kommando som root bruker:
sed -e "s@X11R6/man@X11R6/share/man@g" \ -e "s@/usr/X11R6@$XORG_PREFIX@g" \ -i /etc/man_db.conf
Noen programmer ser etter delte filer i /usr/share/X11. Lag en symbolsk lenke til
den riktige plasseringen som root bruker:
ln -svf $XORG_PREFIX/share/X11 /usr/share/X11
Hvis du bygger KDE, ser noen cmake filer etter Xorg på andre steder enn $XORG_PREFIX. Tillat cmake å finne Xorg med:
ln -svf $XORG_PREFIX /usr/X11R6
util-macros pakken inneholder m4 makroer som brukes av alle Xorg pakkene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/util/util-macros-1.20.1.tar.xz
Nedlasting MD5 sum: 35a4f264a9852be4ae66f07d4100356e
Nedlastingsstørrelse: 84 KB
Estimert diskplass som kreves: 520 KB
Estimert byggetid: mindre enn 0.1 SBU
Xorg build environment (bør stilles inn for at følgende instruksjoner skal virke)
Installer util-macros ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG
Denne pakken kommer ikke med en testpakke.
Nå,som root bruker:
make install
$XORG_PREFIX/share/pkgconfig og
$XORG_PREFIX/share/util-macros
xorgproto pakken gir deklarasjonsfiler som kreves for å bygge X Vindussystemet, og for å tillate andre applikasjoner å bygge mot det installerte X Vindussystemet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xorg.freedesktop.org/archive/individual/proto/xorgproto-2024.1.tar.xz
Nedlasting MD5 sum: 12374d29fb5ae642cfa872035e401640
Nedlastingsstørrelse: 744 KB
Estimert diskplass som kreves: 8.4 MB
Estimert byggetid: mindre enn 0.1 SBU
fop-2.9, libxslt-1.1.42, xmlto-0.0.29 og asciidoc-10.2.1 (for å bygge ytterligere dokumentasjon)
Det er en gjensidig avhengighet med fop-2.9. Hvis du ønsker å bygge dokumentasjonen, må du installere protokolldeklarasjoner på nytt etter at installasjonen er fullført og fop-2.9 har blitt installert.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Xorg7ProtocolHeaders
Installer xorgproto ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=$XORG_PREFIX .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install &&
mv -v $XORG_PREFIX/share/doc/xorgproto{,-2024.1}
-Dlegacy=true: Installerer eldre
deklarasjoner som trengs av gamle programmer (som f.eks
LessTif).
$XORG_PREFIX/include/GL, $XORG_PREFIX/include/X11, og $XORG_PREFIX/share/doc/xorgproto-2024.1
libXau pakken inneholder et bibliotek som implementerer X11 autorisasjonsprotokollen. Dette er nyttig for å begrense klienttilgang til skjermen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/lib/libXau-1.0.11.tar.xz
Nedlasting MD5 sum: 7f14ba9c84a81a2b9dd023706febab38
Nedlastingsstørrelse: 268 KB
Estimert diskplass som kreves: 2.8 MB (med test)
Estimert byggetid: mindre enn 0.1 SBU (med test)
Installer libXau ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
libXdmcp pakken inneholder et bibliotek implementere X Skjermbehandler Kontrollprotokollen. Dette er nyttig for å tillate at klienter kan samhandle med X Skjermbehandleren.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/lib/libXdmcp-1.1.5.tar.xz
Nedlasting MD5 sum: ce0af51de211e4c99a111e64ae1df290
Nedlastingsstørrelse: 292 KB
Estimert diskplass som kreves: 3.0 MB (med test)
Estimert byggetid: mindre enn 0.1 SBU (med test)
xmlto-0.0.29, fop-2.9, libxslt-1.1.42, og Xorg-SGML-doctools (for dokumentasjon)
Installer libXdmcp ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG --docdir=/usr/share/doc/libXdmcp-1.1.5 && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
xcb-proto pakken gir XML-XCB protokollbeskrivelsen som libxcb bruker for å generere mesteparten av sin kode og API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-1.17.0.tar.xz
Nedlasting MD5 sum: c415553d2ee1a8cea43c3234a079b53f
Nedlastingsstørrelse: 152 KB
Estimert diskplass som kreves: 1.3 MB
Estimert byggetid: mindre enn 0.1 SBU
Xorg build environment (nødvendig for instruksjonene nedenfor)
libxml2-2.13.3 (nødvendig for å kjøre testene)
Installer xcb-proto ved å kjøre følgende kommandoer:
PYTHON=python3 ./configure $XORG_CONFIG
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Hvis du oppgraderer fra versjon 1.15.1 eller lavere, må den
gamle pkgconfig filen fjernes. Utsted, som root bruker:
rm -f $XORG_PREFIX/lib/pkgconfig/xcb-proto.pc
$XORG_PREFIX/share/xcb og $XORG_PREFIX/lib/python3.12/site-packages/xcbgen
libxcb pakken gir et grensesnitt til X Vindussystem protokollen, som erstatter det nåværende Xlib grensesnittet. Xlib kan også bruke XCB som et transportlag, slik at programvare kan gjøre forespørsler og motta svar med begge.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xorg.freedesktop.org/archive/individual/lib/libxcb-1.17.0.tar.xz
Nedlasting MD5 sum: 96565523e9f9b701fcb35d31f1d4086e
Nedlastingsstørrelse: 448 KB
Estimert diskplass som kreves: 30 MB (med tester, legg til 62 MB for doxygen dokumenter)
Estimert byggetid: 0.2 SBU (med tester, legg til 1.4 SBU for doxygen dokumenter)
libXau-1.0.11 og xcb-proto-1.17.0
Doxygen-1.12.0 (for å generere API dokumentasjon) og libxslt-1.1.42
Installer libxcb ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG \
--without-doxygen \
--docdir='${datadir}'/doc/libxcb-1.17.0 &&
LC_ALL=en_US.UTF-8 make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Hvis pakken ble bygget som en ikke-root bruker, den installerte
dokumentasjonen eies nå av denne brukeren. Som root bruker, fiks eierskapet:
chown -Rv root:root $XORG_PREFIX/share/doc/libxcb-1.17.0
LC_ALL=en_US.UTF-8: Noen Python 3
skript i byggesystemet til denne pakken kan mislykkes med
visse system lokale innstillinger. Denne miljøvariabelen
fremtvinger en lokalinnstilling kjent for å fungere.
--without-doxygen:
Ikke bruk doxygen til generere API dokumentasjon (standard:
auto). Uten det, hvis Doxygen-1.12.0 er installert, vil API
dokumentasjonen bli generert og installert.
$XORG_PREFIX/include/xcb og $XORG_PREFIX/share/doc/libxcb-1.17.0
Xorg bibliotekene tilbyr bibliotekrutiner som brukes innenfor alle X Window applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/lib/
Nedlastingsstørrelse: 12 MB
Estimert diskplass som kreves: 225 MB (34 MB installed) - if source directories not deleted
Estimert byggetid: 2.1 SBU
Fontconfig-2.15.0 og libxcb-1.17.0
asciidoc-10.2.1, xmlto-0.0.29 med ett eller flere av følgende: fop-2.9, Links-2.30, Lynx-2.9.2, ncompress (for noen tester), og W3m (for å generere ekstra PDF eller tekst dokumentasjon for libXfont pakken).
Lag først en liste over filer som skal lastes ned. Denne filen vil også brukes til å bekrefte integriteten til nedlastingene når de er fullført:
cat > lib-7.md5 << "EOF"
12344cd74a1eb25436ca6e6a2cf93097 xtrans-1.5.0.tar.xz
5b8fa54e0ef94136b56f887a5e6cf6c9 libX11-1.8.10.tar.xz
e59476db179e48c1fb4487c12d0105d1 libXext-1.3.6.tar.xz
c5cc0942ed39c49b8fcd47a427bd4305 libFS-1.0.10.tar.xz
b444a0e4c2163d1bbc7b046c3653eb8d libICE-1.1.1.tar.xz
ffa434ed96ccae45533b3d653300730e libSM-1.2.4.tar.xz
e613751d38e13aa0d0fd8e0149cec057 libXScrnSaver-1.2.4.tar.xz
4ea21d3b5a36d93a2177d9abed2e54d4 libXt-1.3.0.tar.xz
85edefb7deaad4590a03fccba517669f libXmu-1.2.1.tar.xz
05b5667aadd476d77e9b5ba1a1de213e libXpm-3.5.17.tar.xz
2a9793533224f92ddad256492265dd82 libXaw-1.0.16.tar.xz
65b9ba1e9ff3d16c4fa72915d4bb585a libXfixes-6.0.1.tar.xz
af0a5f0abb5b55f8411cd738cf0e5259 libXcomposite-0.4.6.tar.xz
ebf7fb3241ec03e8a3b2af72f03b4631 libXrender-0.9.11.tar.xz
bf3a43ad8cb91a258b48f19c83af8790 libXcursor-1.2.2.tar.xz
ca55d29fa0a8b5c4a89f609a7952ebf8 libXdamage-1.1.6.tar.xz
8816cc44d06ebe42e85950b368185826 libfontenc-1.1.8.tar.xz
66e03e3405d923dfaf319d6f2b47e3da libXfont2-2.0.7.tar.xz
cea0a3304e47a841c90fbeeeb55329ee libXft-2.3.8.tar.xz
89ac74ad6829c08d5c8ae8f48d363b06 libXi-1.8.1.tar.xz
228c877558c265d2f63c56a03f7d3f21 libXinerama-1.1.5.tar.xz
24e0b72abe16efce9bf10579beaffc27 libXrandr-1.5.4.tar.xz
66c9e9e01b0b53052bb1d02ebf8d7040 libXres-1.2.2.tar.xz
b62dc44d8e63a67bb10230d54c44dcb7 libXtst-1.2.5.tar.xz
70bfdd14ca1a563c218794413f0c1f42 libXv-1.0.12.tar.xz
a90a5f01102dc445c7decbbd9ef77608 libXvMC-1.0.14.tar.xz
74d1acf93b83abeb0954824da0ec400b libXxf86dga-1.1.6.tar.xz
5b913dac587f2de17a02e17f9a44a75f libXxf86vm-1.1.5.tar.xz
57c7efbeceedefde006123a77a7bc825 libpciaccess-0.18.1.tar.xz
229708c15c9937b6e5131d0413474139 libxkbfile-1.1.3.tar.xz
faa74f7483074ce7d4349e6bdc237497 libxshmfence-1.3.2.tar.xz
bdd3ec17c6181fd7b26f6775886c730d libXpresent-1.0.1.tar.xz
EOF
For å laste ned de nødvendige filene ved hjelp av Wget-1.24.5, bruk følgende kommandoer:
mkdir lib &&
cd lib &&
grep -v '^#' ../lib-7.md5 | awk '{print $2}' | wget -i- -c \
-B https://www.x.org/pub/individual/lib/ &&
md5sum -c ../lib-7.md5
Når du installerer flere pakker i et skript, installasjonen må gjøres som root bruker. Det er tre generelle alternativer som kan brukes til å gjøre dette:
Kjør hele skriptet som root bruker (ikke anbefalt).
Bruk sudo kommandoen fra Sudo-1.9.15p5 pakken.
Bruk su -c "command arguments" (anførselstegn kreves) som vil be om root passordet for hver iterasjon av løkken.
En måte å håndtere denne situasjonen på er å lage en kort bash funksjon som automatisk velger riktig metode. Når kommandoen er satt i miljøet, trenger den ikke å bli satt på nytt.
as_root()
{
if [ $EUID = 0 ]; then $*
elif [ -x /usr/bin/sudo ]; then sudo $*
else su -c \\"$*\\"
fi
}
export -f as_root
Noen biblioteker kommer med en testpakke. Hvis du ønsker å utføre dem, enten kommentere ut rm -rf ... nedenfor, slik at, etter at alle bibliotekene er installert, kan du gå tilbake til den tilsvarende mappen og kjøre make check, eller gjør individuelle bygg, kjør testene for hver av de som er distribuert med fungerende testpakker. Alternativt kan du fjerne kommentaren til linjen #make check ..., og på slutten, sjekk testresultatene med:
grep -A9 summary *make_check.log
BLFS utviklere har bekreftet at libX11, libXt, libXmu, libXpm, og libxshmfence distribueres med testpakker som virker.
Start først et underskall som avsluttes ved feil:
bash -e
Installer alle pakkene ved å kjøre følgende kommandoer:
for package in $(grep -v '^#' ../lib-7.md5 | awk '{print $2}')
do
packagedir=${package%.tar.?z*}
echo "Building $packagedir"
tar -xf $package
pushd $packagedir
docdir="--docdir=$XORG_PREFIX/share/doc/$packagedir"
case $packagedir in
libXfont2-[0-9]* )
./configure $XORG_CONFIG $docdir --disable-devel-docs
;;
libXt-[0-9]* )
./configure $XORG_CONFIG $docdir \
--with-appdefaultdir=/etc/X11/app-defaults
;;
libXpm-[0-9]* )
./configure $XORG_CONFIG $docdir --disable-open-zfile
;;
libpciaccess* )
mkdir build
cd build
meson setup --prefix=$XORG_PREFIX --buildtype=release ..
ninja
#ninja test
as_root ninja install
popd # $packagedir
continue # for loop
;;
* )
./configure $XORG_CONFIG $docdir
;;
esac
make
#make check 2>&1 | tee ../$packagedir-make_check.log
as_root make install
popd
rm -rf $packagedir
as_root /sbin/ldconfig
done
Til slutt går du ut av skallet som ble startet tidligere:
exit
--disable-open-zfile:
Tillat libXpm å bygge uten
det valgfrie compress kommandoen
tilstede.
--disable-devel-docs:
Deaktiver generering av tekstdokumentasjon i libXfont2 pakken
hvis xmlto-0.0.29 er installert uten tekst
nettleser. Utelat denne parameteren (eller hele case erklæringen) hvis en
tekst nettleser er installert.
--with-fop: Use fop-2.9 for å generere PDF
dokumentasjon (kun for libXfont pakken).
Hvis du har valgt å installere Xorg inn i /usr, så er ikke noen konfigurasjon
nødvendig, og du kan hoppe over resten av denne delen. Hvis
du har valgt et alternativt prefiks, bør du opprette to
symbolkoblinger for å tilfredsstille det forventede miljøet
til flere pakker. Utfør følgende kommandoer som root bruker:
ln -sv $XORG_PREFIX/lib/X11 /usr/lib/X11 && ln -sv $XORG_PREFIX/include/X11 /usr/include/X11
$XORG_PREFIX/include/X11/fonts,
$XORG_PREFIX/include/X11/ICE,
$XORG_PREFIX/include/X11/SM,
$XORG_PREFIX/include/X11/Xmu,
$XORG_PREFIX/include/X11/Xtrans,
$XORG_PREFIX/share/doc/libFS,
$XORG_PREFIX/share/doc/libICE-1.1.1,
$XORG_PREFIX/share/doc/libSM-1.2.4,
$XORG_PREFIX/share/doc/libX11-1.8.10,
$XORG_PREFIX/share/doc/libXaw,
$XORG_PREFIX/share/doc/libXext,
$XORG_PREFIX/share/doc/libXi,
$XORG_PREFIX/share/doc/libXmu-1.2.1,
$XORG_PREFIX/share/doc/libXrender,
$XORG_PREFIX/share/doc/libXt,
$XORG_PREFIX/share/doc/libXtst,
$XORG_PREFIX/share/doc/libXvMC,
$XORG_PREFIX/share/doc/xtrans
and $XORG_PREFIX/share/X11/locale
|
kontrollerer formatet til en XPM fil |
|
|
viser en XPM fil og/eller konverterer XPM 1 eller 2 filer til XPM 3 |
|
|
er X11 skriftkodingsbiblioteket |
|
|
er bibliotekgrensesnittet til X Font Server |
|
|
er X Inter Client Exchange bibliotek |
|
|
er det generiske PCI Tilgang biblioteket for X |
|
|
er X økt administrasjonsbiblioteket |
|
|
er Xlib biblioteket |
|
|
er X Athena skjermelementer biblioteket, versjon 6 |
|
|
er X Athena skjermelementer biblioteket, versjon 7 |
|
|
er symbolske lenker til X Athena skjermelementer biblioteket, versjon 7 |
|
|
er X Composite biblioteket |
|
|
er X Markøradministrasjons biblioteket |
|
|
er X skadebiblioteket |
|
|
er Diverse X utvidelsesbiblioteket |
|
|
gir utvidede versjoner av kjerneprotokollforespørsler |
|
|
er X font biblioteket |
|
|
er X FreeType grensesnittbiblioteket |
|
|
er Xinerama biblioteket |
|
|
er X Inndatautvidelse biblioteket |
|
|
er xkbfile biblioteket |
|
|
er X grensesnittbiblioteket for diverse verktøy som ikke er del av Xlib standarden |
|
|
er Mini Xmu biblioteket |
|
|
er X Pixmap biblioteket |
|
|
er bibliotekgrensesnittet til X Present utvidelsen |
|
|
er X Endre størrelse, Roter og Refleksjon utvidelsesbiblioteket |
|
|
er X Render biblioteket |
|
|
er X-Resource utvidelsesklientbibliotek |
|
|
viser en hendelses API på toppen av Linux futexes |
|
|
er X11 Klientbibliotek for skjermsparerutvidelse |
|
|
er X Verktøysett biblioteket |
|
|
er Xtst biblioteket |
|
|
er X-Video Bevegelseskompensasjon biblioteket |
|
|
er XvMC Innpakning inkludert ikkestandard VLD utvidelsen |
|
|
er X Window Systemvideoutvidelsesbibliotek |
|
|
er klientbiblioteket for XFree86-DGA utvidelsen |
|
|
er klientbiblioteket for XFree86-VidMode X utvidelsen |
libxcvt er et bibliotek som tilbyr en frittstående versjon av X serverimplementeringen av VESA CVT standard timing modelines generator. Det er ment å være en direkte erstatning for versjonen tidligere levert av Xorg serveren.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/lib/libxcvt-0.1.2.tar.xz
Nedlasting MD5 sum: b553fdb6024c5a137ff925bf4c337724
Nedlastingsstørrelse: 12 KB
Estimert diskplass som kreves: 476 KB
Estimert byggetid: mindre enn 0.1 SBU
Xorg build environment (bør stilles inn for at følgende instruksjoner skal virke)
Installer libxcvt ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=$XORG_PREFIX --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
xcb-util pakken gir ekstra utvidelser til XCB biblioteket, mange som tidligere ble funnet i Xlib, men er ikke en del av X protokollen sin kjerne.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xcb.freedesktop.org/dist/xcb-util-0.4.1.tar.xz
Nedlasting MD5 sum: 34d749eab0fd0ffd519ac64798d79847
Nedlastingsstørrelse: 261 KB
Estimert diskplass som kreves: 2.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Doxygen-1.12.0 (for dokumentasjon)
Installer xcb-util ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
xcb-util-image pakken gir ekstra utvidelser til XCB biblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xcb.freedesktop.org/dist/xcb-util-image-0.4.1.tar.xz
Nedlasting MD5 sum: a67bfac2eff696170259ef1f5ce1b611
Nedlastingsstørrelse: 284 KB
Estimert diskplass som kreves: 2.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Doxygen-1.12.0 (for dokumentasjon)
Installer xcb-util-image ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
For å teste resultatene, kjør: LD_LIBRARY_PATH=$XORG_PREFIX/lib make check.
Nå, som root bruker:
make install
xcb-util-keysyms pakken inneholder et bibliotek for håndtering av standard X tastekonstanter og konvertering til/fra tastekoder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.1.tar.xz
Nedlasting MD5 sum: fbdc05f86f72f287ed71b162f1a9725a
Nedlastingsstørrelse: 256 KB
Estimert diskplass som kreves: 2.3 MB
Estimert byggetid: mindre enn 0.1 SBU
Doxygen-1.12.0 (for å generere dokumentasjon)
Installer xcb-util-keysyms ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
xcb-util-renderutil pakken gir ekstra utvidelser til XCB biblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.10.tar.xz
Nedlasting MD5 sum: 193b890e2a89a53c31e2ece3afcbd55f
Nedlastingsstørrelse: 256 KB
Estimert diskplass som kreves: 2.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Doxygen-1.12.0 (for dokumentasjon)
Installer xcb-util-renderutil ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
xcb-util-wm pakken inneholder biblioteker som gir klient og vindusbehandler hjelpere for EWMH og ICCCM.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.2.tar.xz
Nedlasting MD5 sum: 581b3a092e3c0c1b4de6416d90b969c3
Nedlastingsstørrelse: 280 KB
Estimert diskplass som kreves: 3.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Doxygen-1.12.0 (for dokumentasjon)
Installer xcb-util-wm ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
xcb-util-cursor pakken gir en modul som implementerer XCB markørbiblioteket. Det er XCB erstatning for libXcursor.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.4.tar.xz
Nedlasting MD5 sum: 0d244518ad54b886413fe782235d6210
Nedlastingsstørrelse: 260 KB
Estimert diskplass som kreves: 2.5 MB
Estimert byggetid: mindre enn 0.1 SBU
xcb-util-image-0.4.1 og xcb-util-renderutil-0.3.10
Doxygen-1.12.0 (for dokumentasjon)
Installer xcb-util-cursor ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Mesa er en OpenGL kompatibel 3D grafikk bibliotek.
Mesa oppdateres relativt ofte. Du kanskje ønsker å bruke den siste tilgjengelige 24.1.x mesa versjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://mesa.freedesktop.org/archive/mesa-24.1.5.tar.xz
Nedlasting MD5 sum: 0f4de2192e63b438637b98937ac85a10
Nedlastingsstørrelse: 28 MB
Estimert diskplass som kreves: 825 MB (med dokumenter, legg til 496 MB for tester)
Estimert byggetid: 4.1 SBU (med dokumenter; legg til 1.4 SBU for tester; begge med parallellitet=4)
Anbefalt oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/mesa-add_xdemos-2.patch (installerer 2 demoprogrammer for testing av Mesa - ikke nødvendig hvis du installer mesa-demos pakken)
Xorg Biblioteker, libdrm-2.4.122, og Mako-1.3.5
Glslang-14.3.0 (påkrevd for Vulkan støtte)
libva-2.22.0 (å gi VA-API støtte for noen gallium drivere. Merk at det er en sirkulær avhengighet. Du må bygge libva først uten mesas EGL og GLX støtte, installer denne pakken og bygg på nytt libva)
libvdpau-1.5 (for å bygge VDPAU drivere)
LLVM-18.1.7 (kreves for r300, r600 og radeonsi drivere, og LLVMpipe programvaren rasterizer som kan lage swrast driver mye raskere)
wayland-protocols-1.36 (påkrevd for Plasma-6.1.4, GNOME, og anbefalt for GTK+-3.24.43)
libclc-18.1.7 (påkrevd for Intel iris gallium driver)
Vulkan-Loader-1.3.294 (kreves for Zink gallium driver)
ply-3.11 (påkrevd for Intel vulkan driver)
Cbindgen-0.27.0 og rust-bindgen-0.70.0 (påkrevd for Nouveau Vulkan og Nouveau driver)
Velge Mesa drivere
I instruksjonene nedenfor er alle tilgjengelige drivere bygget. Det vil nesten alltid fungere. Det er imidlertid ikke effektivt. Avhengig av videomaskinvaren din, trenger du sannsynligvis bare spesifikke drivere.
Det første du trenger å vite er hvilken type videoenhet du har. I noen tilfeller er den innebygd i CPU. I andre er det et separat PCI kort. I begge tilfeller kan du fortelle hvilken videomaskinvare du har ha ved å installere pciutils-3.13.0 og kjøre:
lspci | grep VGA
Videoenheten er mest sannsynlig en av tre familier: AMD,
Intel eller Nvidia. Se parameterforklaringene for
-D
gallium-drivers=auto nedenfor for å se hvilke
alternativer som er tilgjengelige for din spesifikke
videomaskinvare (eller emulert videomaskinvare). Du bør
sannsynligvis legge til swrast alternativet som en backup
driver.
For 'platforms' kan du velge x11 og/eller wayland. Merk at i BLFS kan for øyeblikket bare Gnome og KDE bruke wayland. Hvis du ikke skal bruke et av de skrivebordsmiljøene vil du sannsynligvis bare ha x11.
For 'vulkan-drivers' kan det være lurt å begrense utvalget
til ditt gjeldende maskinvare. Disse driverne brukes av
enkelte applikasjoner. For eksempel vil ffmpeg (inkludert
ffplay) bruke Vulkan i stedet for OpenGL for å gjengi video
på GPU. Hvis du ikke ønsker å gjøre dette vil du kanskje
ikke installere dem. Se parameterforklaringene for
-D
vulkan-drivers=auto nedenfor for å se hvilke
alternativer som er tilgjengelige for din spesifikke
videomaskinvare (eller emulert videomaskinvare). Du bør
sannsynligvis legge til swrast alternativet som
backupdriver med mindre du ikke trenger Vulkan i det hele
tatt.
libgcrypt-1.11.0, libunwind-1.6.2, lm-sensors-3-6-0 , Nettle-3.10, Valgrind-3.23.0, mesa-demos (gir mer enn 300 ekstra demoer for å teste Mesa; dette inkluderer de samme programmene lagt til av oppdateringen ovenfor), Bellagio OpenMAX Integration Layer (for mobile platforms), og libtizonia,
En Internett-tilkobling er nødvendig for å bygge denne pakken.
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
Device Drivers ---> Graphics support ---> <*/M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> ... [DRM] # For r300 or r600: < /*/M> ATI Radeon [DRM_RADEON] # For radeonsi: < /*/M> AMD GPU [DRM_AMDGPU] [*] Enable amdgpu support for SI parts [DRM_AMDGPU_SI] [*] Enable amdgpu support for CIK parts [DRM_AMDGPU_CIK] Display Engine Configuration ---> [*] AMD DC - Enable new display engine [DRM_AMD_DC] # For nouveau: < /*/M> Nouveau (NVIDIA) cards [DRM_NOUVEAU] # For i915, crocus, or iris: < /*/M> Intel 8xx/9xx/G3x/G4x/HD Graphics [DRM_I915] # For swrast: < /*/M> Virtual GEM provider [DRM_VGEM] # For svga: < /*/M> DRM driver for VMware Virtual GPU [DRM_VMWGFX]
Det tilsvarende Mesa Gallium3D drivernavnet er gitt som kommentar for konfigurasjonsoppføringene. Hvis du ikke vet navnet på Mesa Gallium3D driveren for din GPU, se Mesa Gallium3D Drivers under.
CONFIG_DRM_RADEON, CONFIG_DRM_AMDGPU, CONFIG_DRM_NOUVEAU, og CONFIG_DRM_I915 kan kreve fastvare. Se
Om Fastvare for detaljer.
Å velge CONFIG_DRM_RADEON eller
CONFIG_DRM_AMDGPU som
“y” anbefales ikke. Hvis det
er, alle nødvendige fastvare må bygges som en del av
kjernebildet eller initramfs for at driveren skal fungere
riktig.
Underpostene under CONFIG_DRM_AMDGPU er brukt for å sikre at
AMDGPU kjernedriveren støtter alle GPUer som bruker
radeonsi driver. De er ikke
nødvendig hvis du ikke trenger CONFIG_DRM_AMDGPU. De kan være unødvendig
for noen GPU modeller.
For swrast, CONFIG_DRM_VGEM er strengt tatt ikke
nødvendig, men anbefales som en optimalisering.
Hvis du har lastet ned xdemos oppdateringen (nødvendig hvis du tester Xorg installasjon i henhold til BLFS instruksjoner), bruk den ved å kjøre følgende kommando:
patch -Np1 -i ../mesa-add_xdemos-2.patch
Installer Mesa ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
--buildtype=release \
-D platforms=x11,wayland \
-D gallium-drivers=auto \
-D vulkan-drivers=auto \
-D valgrind=disabled \
-D libunwind=disabled &&
ninja
For å teste resultatene, utsted: meson configure -D build-tests=true && ninja test
Nå, som root bruker:
ninja install
Hvis ønskelig, installer den valgfrie dokumentasjonen ved å
kjøre følgende kommandoer som root bruker:
cp -rv ../docs -T /usr/share/doc/mesa-24.1.5
--buildtype=release:
Denne bryteren sikrer et fullt optimalisert bygg, og
deaktiverer feilsøkingspåstander som vil kraftig bremse ned
bibliotekene i visse brukstilfeller. Uten denne bryteren, kan
byggestørrelsene spenne over 2 GB.
-D
gallium-drivers=auto: Denne parameteren
kontrollerer hvilke Gallium3D drivere som skal bygges:
auto velger alle
tilgjengelige Gallium3D drivere for x86. Med en
kommadelt liste, kun en delmengde av disse drivere vil
bli bygget. Hvis du nøyaktig vet hvilke drivere du
trenger, kan du velge dem eksplisitt. for eksempel,
-D
gallium-drivers=radeonsi,iris,swrast.
r300 (for ATI Radeon 9000
eller Radeon X seriene)
r600 (for AMD/ATI Radeon
HD 2000-6000 seriene)
radeonsi (for AMD Radeon
HD 7000 eller nyere AMD GPU modeller)
nouveau (for støttede
NVIDIA GPUer, de er listet alle som “3D features”
enten “DONE” eller “N/A” i
the
Nouveau status page)
virgl (for en QEMU
virtuell GPU med virglrender støtte; merk at BLFS
qemu-9.0.2 ikke er bygget med
virglrender)
svga (for en VMWare
virtuell GPU)
swrast (bruker CPU for 3D
rasterisering. Merk at det er mye tregere enn å bruke
en moderne 3D-kompatibel GPU, så den bør bare brukes
hvis GPUen ikke støttes av andre drivere),
iris (for Intel GPUer
levert med Broadwell eller nyere CPUer, eller som et
dedikert PCIe kort)
crocus (for Intel GMA
3000, X3000 seriene, 4000 seriene, eller X4000 seriene
GPUer levert med brikkesett, eller Intel HD GPUer
levert med pre-Broadwell CPUer)
i915 (for Intel GMA 900,
950, 3100, eller 3150 GPUer sendt med brikkesett eller
Atom D/N 4xx/5xx CPUer)
zink (å bruke Vulkan for å
implementere OpenGL, er for tiden ikke veldig nyttig på
x86, men det kan erstatte andre drivere for moderne GPU
modeller i fremtiden)
-D
vulkan-drivers=auto: Denne parameteren
kontrollerer hvilke Vulkan drivere som skal bygges:
auto velger alle
tilgjengelige Vulkan drivere for x86. Med en kommadelt
liste, kun en delmengde av disse drivere vil bli
bygget. Hvis du nøyaktig vet hvilke drivere du trenger,
kan du velge dem eksplisitt. for eksempel, -D vulkan-drivers=amd,nouveau,swrast.
amd (for AMD Radeon HD
7730 eller nyere AMD GPUer)
intel (for Intel GPUer
levert med Skylake eller nyere CPUer, eller som et
dedikert PCIe kort)
intel_hasvk (for Intel
GPUer levert med Ivy Bridge, Haswell, eller Broadwell
CPUer)
nouveau (for GTX 16XX, RTX
20XX, eller nyere NVIDIA GPUer)
swrast (for bruk av CPU
for 3D-rasterisering) Merk at det er mye tregere enn å
bruke en moderne 3D-kompatibel GPU, så den bør bare
brukes hvis GPUen ikke støttes av andre drivere.
"" (tom liste, bruk
-D vulkan-drivers="" hvis
du ikke har installert og du ikke planlegger å
installere Vulkan-Loader-1.3.294)
-D platforms=...:
Denne parameteren kontrollerer hvilke vindussystemer som skal
støttes. Tilgjengelige linux plattformer er x11 og wayland.
-D valgrind=disabled:
Denne parameteren deaktiverer bruken av Valgrind under
byggeprosessen. Fjern denne parameteren hvis du har Valgrind
installert, og ønsker å se etter minnelekkasjer.
-D
libunwind=disabled: Denne parameteren deaktiverer
bruken av libunwind.
meson configure -D
build-tests=true: Denne kommandoen vil
rekonfigurere byggingen for å sette -D
build-tests=true, men behold de andre alternativene
som er spesifisert i meson
setup kommandoen uendret. Det tillater
ninja test å
bygge og kjøre enhetstester.
-D egl-native-platform="...":
Denne parameteren kontrollerer hvilken støtte for Embedded
Graphics Library som skal bygges. Tilgjengelig linux
alternativer er auto (standard), x11, wayland, surfaceless og
drm.
|
er en GL demo som er nyttig for feilsøking av grafikk problemer |
|
|
er et diagnoseprogram som viser informasjon om grafikkmaskinvare og installerte GL biblioteker |
|
|
gir et grunnleggende plattformgrafikkgrensesnitt som definert av EGL-1.4 spesifikasjonen |
|
|
er Mesa Grafikkbuffer behandlingsbiblioteket |
|
|
er Mesa OpenGL ES 1.1 biblioteket |
|
|
er Mesa OpenGL ES 2.0 biblioteket |
|
|
er Mesa OpenGL hovedbiblioteket |
xbitmaps pakken inneholder punktgrafikkbilder brukt av flere applikasjoner bygget i Xorg kapittelet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/data/xbitmaps-1.1.3.tar.xz
Nedlasting MD5 sum: 2b03f89d78fb91671370e77d7ad46907
Nedlastingsstørrelse: 108 KB
Estimert diskplass som kreves: 1.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer xbitmaps ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
$XORG_PREFIX/include/X11/bitmaps
Xorg applikasjoner gir forventede applikasjoner tilgjengelig i tidligere X Window implementeringer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/app/
Nedlastingsstørrelse: 4.9 MB
Estimert diskplass som kreves: 48 MB
Estimert byggetid: 1.5 SBU (ignoring the time to download)
libpng-1.6.43, Mesa-24.1.5, xbitmaps-1.1.3, og xcb-util-0.4.1
Linux-PAM-1.6.1 og både cairo-5c og Nickle (bare hvis du ønsker å prøve å kjøre udokumenterte xkeyhost skriptet).
Lag først en liste over filer som skal lastes ned. Denne filen vil også brukes til å bekrefte integriteten til nedlastingene når de er fullført:
cat > app-7.md5 << "EOF"
30f898d71a7d8e817302970f1976198c iceauth-1.0.10.tar.xz
7dcf5f702781bdd4aaff02e963a56270 mkfontscale-1.2.3.tar.xz
05423bb42a006a6eb2c36ba10393de23 sessreg-1.1.3.tar.xz
1d61c9f4a3d1486eff575bf233e5776c setxkbmap-1.3.4.tar.xz
9f7a4305f0e79d5a46c3c7d02df9437d smproxy-1.0.7.tar.xz
e96b56756990c56c24d2d02c2964456b x11perf-1.6.1.tar.bz2
595c941d9aff6f6d6e038c4e42dcff58 xauth-1.1.3.tar.xz
82a90e2feaeab5c5e7610420930cc0f4 xcmsdb-1.0.6.tar.xz
89e81a1c31e4a1fbd0e431425cd733d7 xcursorgen-1.0.8.tar.xz
933e6d65f96c890f8e96a9f21094f0de xdpyinfo-1.3.4.tar.xz
34aff1f93fa54d6a64cbe4fee079e077 xdriinfo-1.0.7.tar.xz
f29d1544f8dd126a1b85e2f7f728672d xev-1.2.6.tar.xz
41afaa5a68cdd0de7e7ece4805a37f11 xgamma-1.0.7.tar.xz
48ac13856838d34f2e7fca8cdc1f1699 xhost-1.0.9.tar.xz
8e4d14823b7cbefe1581c398c6ab0035 xinput-1.6.4.tar.xz
83d711948de9ccac550d2f4af50e94c3 xkbcomp-1.4.7.tar.xz
05ce1abd8533a400572784b1186a44d0 xkbevd-1.1.5.tar.xz
07483ddfe1d83c197df792650583ff20 xkbutils-1.0.6.tar.xz
f62b99839249ce9a7a8bb71a5bab6f9d xkill-1.0.6.tar.xz
da5b7a39702841281e1d86b7349a03ba xlsatoms-1.1.4.tar.xz
ab4b3c47e848ba8c3e47c021230ab23a xlsclients-1.1.5.tar.xz
ba2dd3db3361e374fefe2b1c797c46eb xmessage-1.0.7.tar.xz
0d66e07595ea083871048c4b805d8b13 xmodmap-1.0.11.tar.xz
ab6c9d17eb1940afcfb80a72319270ae xpr-1.2.0.tar.xz
d050642a667b518cb3429273a59fa36d xprop-1.2.7.tar.xz
f822a8d5f233e609d27cc22d42a177cb xrandr-1.5.2.tar.xz
c8629d5a0bc878d10ac49e1b290bf453 xrdb-1.2.2.tar.xz
55003733ef417db8fafce588ca74d584 xrefresh-1.1.0.tar.xz
18ff5cdff59015722431d568a5c0bad2 xset-1.2.5.tar.xz
fa9a24fe5b1725c52a4566a62dd0a50d xsetroot-1.1.3.tar.xz
d698862e9cad153c5fefca6eee964685 xvinfo-1.1.5.tar.xz
b0081fb92ae56510958024242ed1bc23 xwd-1.0.9.tar.xz
c91201bc1eb5e7b38933be8d0f7f16a8 xwininfo-1.1.6.tar.xz
5ff5dc120e8e927dc3c331c7fee33fc3 xwud-1.0.6.tar.xz
EOF
For å laste ned de nødvendige filene ved hjelp av Wget-1.24.5, bruk følgende kommandoer:
mkdir app &&
cd app &&
grep -v '^#' ../app-7.md5 | awk '{print $2}' | wget -i- -c \
-B https://www.x.org/pub/individual/app/ &&
md5sum -c ../app-7.md5
Når du installerer flere pakker i et skript, installasjonen må gjøres som root bruker. Det er tre generelle alternativer som kan brukes til å gjøre dette:
Kjør hele skriptet som root bruker (ikke anbefalt).
Bruk sudo kommandoen fra Sudo-1.9.15p5 pakken.
Bruk su -c "command arguments" (anførselstegn kreves) som vil be om root passordet for hver iterasjon av løkken.
En måte å håndtere denne situasjonen på er å lage en kort bash funksjon som automatisk velger riktig metode. Når kommandoen er satt i miljøet, trenger den ikke å bli satt på nytt.
as_root()
{
if [ $EUID = 0 ]; then $*
elif [ -x /usr/bin/sudo ]; then sudo $*
else su -c \\"$*\\"
fi
}
export -f as_root
Start først et underskall som avsluttes ved feil:
bash -e
Installer alle pakkene ved å kjøre følgende kommandoer:
for package in $(grep -v '^#' ../app-7.md5 | awk '{print $2}')
do
packagedir=${package%.tar.?z*}
tar -xf $package
pushd $packagedir
./configure $XORG_CONFIG
make
as_root make install
popd
rm -rf $packagedir
done
Til slutt går du ut av skallet som ble startet tidligere:
exit
Med mindre du har installert de valgfrie avhengighetene, fjern et udokumentert skript som er rapportert å være ødelagt (xkeystone levert av xrandr pakken).
as_root rm -f $XORG_PREFIX/bin/xkeystone
|
er ICE myndighetsfilverktøyet |
|
|
oppretter en indeks over X fontfiler i en mappe |
|
|
oppretter en indeks over skalerbare fontfiler for X |
|
|
administrerer utmp/wtmp oppføringer for ikke-init klienter |
|
|
stiller inn tastaturet ved hjelp av X Keyboard Extension |
|
|
er Session Manager Proxy |
|
|
er et X11 serverytelses testprogram |
|
|
er et X11 serverytelses sammenligningsprogram |
|
|
er X Authority filverktøyet |
|
|
er Device Color Characterization verktøyet for X Fargestyringssystem |
|
|
oppretter en X markørfil fra en samling PNG bilder |
|
|
dumper et X vindu direkte til en skriver |
|
|
er et skjerminformasjonsverktøy for X |
|
|
spør om konfigurasjonsinformasjon for DRI drivere |
|
|
skriver ut innholdet i X hendelser |
|
|
endrer en monitors gammakorreksjon gjennom X serveren |
|
|
er et servertilgangs kontrollprogram for X |
|
|
er et verktøy for å konfigurere og teste X inndataenheter |
|
|
er et XKB verktøyprogram som reiser en bjellebegivenhet |
|
|
kompilerer en XKB tastaturbeskrivelse |
|
|
er XKB hendelse nissen |
|
|
viser XKB statusen til tastaturets lysdioder |
|
|
overvåker modifikasjonstaster og lysdioder |
|
|
dreper en klient med X ressursen |
|
|
viser internerte atomer definert på serveren |
|
|
viser klientapplikasjoner som kjører på en skjerm |
|
|
viser en melding eller spørring i et vindu |
|
|
er et verktøy for å endre tastaturkart og pekerknapp kartlegginger i X |
|
|
skriver ut en X vindusdump |
|
|
er en egenskapsvisning for X |
|
|
er et primitivt kommandolinjegrensesnitt til RandR utvidelsen |
|
|
er X serverressurs databaseverktøyet |
|
|
oppdaterer hele eller deler av en X skjerm |
|
|
er brukerpreferanseverktøyet for X |
|
|
er parameterinnstillingsverktøyet for rotvinduet for X |
|
|
skriver ut X-Video utvidelsesadapter informasjon |
|
|
dumper et bilde av et X vindu |
|
|
er et vindusinformasjons verktøy for X |
|
|
er en bildefremviser for X |
luit pakken er et filter som kan kjøres mellom en vilkårlig applikasjon og en UTF-8 terminalemulator. Det vil konvertere applikasjonsutdata fra locale-koding til UTF-8, og konverter terminalinngang fra UTF-8 inn i lokalitetens koding.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://invisible-mirror.net/archives/luit/luit-20240102.tgz
Nedlasting MD5 sum: b69a0819905ad8dc4bf82d25f24037a4
Nedlastingsstørrelse: 208 KB
Estimert diskplass som kreves: 1.8 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer luit ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
xcursor-themes pakken inneholder Redglass og Whiteglass animerte markørtemaer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/data/xcursor-themes-1.0.7.tar.xz
Nedlasting MD5 sum: 070993be1f010b09447ea24bab2c9846
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: mindre enn 0.1 SBU
Vi installerer eksplisitt markørtemaene i /usr i stedet for
$XORG_PREFIX slik at ikke-Xorg
skrivebordsmiljøer kan finne dem.
Installer xcursor-themes ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xorg fontpakker gir noen skalerbare fonter og støttepakker for Xorg applikasjoner. Mange vil ønske å installere andre TTF eller OTF fonter i tillegg til, eller i stedet for, disse. Noen er oppført på the section called “TTF og OTF fonter”.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/font/
Nedlastingsstørrelse: 3.0 MB
Estimert diskplass som kreves: 8.8 MB
Estimert byggetid: 0.1 SBU
Lag først en liste over filer som skal lastes ned. Denne filen vil også brukes til å bekrefte integriteten til nedlastingene når de er fullført:
cat > font-7.md5 << "EOF"
a6541d12ceba004c0c1e3df900324642 font-util-1.4.1.tar.xz
a56b1a7f2c14173f71f010225fa131f1 encodings-1.1.0.tar.xz
79f4c023e27d1db1dfd90d041ce89835 font-alias-1.0.5.tar.xz
546d17feab30d4e3abcf332b454f58ed font-adobe-utopia-type1-1.0.5.tar.xz
063bfa1456c8a68208bf96a33f472bb1 font-bh-ttf-1.0.4.tar.xz
51a17c981275439b85e15430a3d711ee font-bh-type1-1.0.4.tar.xz
00f64a84b6c9886040241e081347a853 font-ibm-type1-1.0.4.tar.xz
fe972eaf13176fa9aa7e74a12ecc801a font-misc-ethiopic-1.0.5.tar.xz
3b47fed2c032af3a32aad9acc1d25150 font-xfree86-type1-1.0.5.tar.xz
EOF
For å laste ned de nødvendige filene ved hjelp av Wget-1.24.5, bruk følgende kommandoer:
mkdir font &&
cd font &&
grep -v '^#' ../font-7.md5 | awk '{print $2}' | wget -i- -c \
-B https://www.x.org/pub/individual/font/ &&
md5sum -c ../font-7.md5
Når du installerer flere pakker i et skript, installasjonen må gjøres som root bruker. Det er tre generelle alternativer som kan brukes til å gjøre dette:
Kjør hele skriptet som root bruker (ikke anbefalt).
Bruk sudo kommandoen fra Sudo-1.9.15p5 pakken.
Bruk su -c "command arguments" (anførselstegn kreves) som vil be om root passordet for hver iterasjon av løkken.
En måte å håndtere denne situasjonen på er å lage en kort bash funksjon som automatisk velger riktig metode. Når kommandoen er satt i miljøet, trenger den ikke å bli satt på nytt.
as_root()
{
if [ $EUID = 0 ]; then $*
elif [ -x /usr/bin/sudo ]; then sudo $*
else su -c \\"$*\\"
fi
}
export -f as_root
Start først et underskall som avsluttes ved feil:
bash -e
Installer alle pakkene ved å kjøre følgende kommandoer:
for package in $(grep -v '^#' ../font-7.md5 | awk '{print $2}')
do
packagedir=${package%.tar.?z*}
tar -xf $package
pushd $packagedir
./configure $XORG_CONFIG
make
as_root make install
popd
as_root rm -rf $packagedir
done
Til slutt går du ut av skallet som ble startet tidligere:
exit
Når alle fontene er installert, må systemet bli konfigurert
slik at Fontconfig kan finne
TrueType fonter. Siden fontene er utenfor standard søkebane
for flere pakker hvis XORG_PREFIX ikke er /usr, lage symbolkoblinger
til Xorg TrueType font
mappen i /usr/share/fonts ved å
kjøre følgende kommandoer som root bruker:
install -v -d -m755 /usr/share/fonts && ln -svfn $XORG_PREFIX/share/fonts/X11/OTF /usr/share/fonts/X11-OTF && ln -svfn $XORG_PREFIX/share/fonts/X11/TTF /usr/share/fonts/X11-TTF
$XORG_PREFIX/share/fonts
XKeyboardConfig pakken inneholder tastaturkonfigurasjons databasen for X Vindussystem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/data/xkeyboard-config/xkeyboard-config-2.42.tar.xz
Nedlasting MD5 sum: 2d3b7e43e597f4c607ad6261e2b3d77f
Nedlastingsstørrelse: 892 KB
Estimert diskplass som kreves: 20 MB
Estimert byggetid: 0.1 SBU (med tester)
Installer XKeyboardConfig ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=$XORG_PREFIX --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
$XORG_PREFIX/share/X11/xkb
Xwayland pakken er en Xorg server som kjører på toppen av wayland serveren. Den har blitt skilt fra Xorg hovedserverpakke. Den lar X klienter kjøre inne i en wayland økt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/xserver/xwayland-24.1.2.tar.xz
Nedlasting MD5 sum: 312c5cf17d1b147df1b787fd170958e1
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 28 MB (legg til 362 MB for tester)
Estimert byggetid: 0.2 SBU (med parallellitet=4; legg til 1.7 SBU for tester, ikke inkludert klonetid)
libxcvt-0.1.2, Pixman-0.43.4, wayland-protocols-1.36, Xorg Applikasjoner (kjøretid), og Xorg Fonts (bare font-util)
libepoxy-1.5.10, libtirpc-1.3.5, og Mesa-24.1.5
git-2.46.0 (for å laste ned pakker som trengs for testene), libei-1.3.0, libgcrypt-1.11.0, Nettle-3.10, xmlto-0.0.29, Xorg Legacy Fonts (bare bdftopcf, for å bygge fonter som kreves for testene), rendercheck (for tester), og weston (for tester)
Installer xwayland ved å kjøre følgende kommandoer:
sed -i '/install_man/,$d' meson.build &&
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
--buildtype=release \
-D xkb_output_dir=/var/lib/xkb &&
ninja
Å bygge testrammeverket krever litt arbeid. Først, weston bringer inn flere avhengigheter, men antallet kan reduseres med å deaktivere unødvendige funksjoner. meson kommandoer for en nedstrippet oppbygging av weston er vist i Upstream continuous integration build.
Å kjøre testene innebærer å laste ned to andre rammeverk, i tillegg til de nevnte valgfrie avhengighetene:
mkdir tools &&
pushd tools &&
git clone https://gitlab.freedesktop.org/mesa/piglit.git --depth 1 &&
cat > piglit/piglit.conf << EOF &&
[xts]
path=$(pwd)/xts
EOF
git clone https://gitlab.freedesktop.org/xorg/test/xts --depth 1 &&
export DISPLAY=:22 &&
../hw/vfb/Xvfb $DISPLAY &
VFB_PID=$! &&
cd xts &&
CFLAGS=-fcommon ./autogen.sh &&
make &&
kill $VFB_PID &&
unset DISPLAY VFB_PID &&
popd
Da kan testene kjøres med:
XTEST_DIR=$(pwd)/tools/xts PIGLIT_DIR=$(pwd)/tools/piglit ninja test
Nå, som root bruker:
ninja install
Hvis Xorg-Server-21.1.13 ikke er
installert og du planlegger ikke å installere det senere, kan
du installere Xvfb fra denne pakken. Som
root bruker:
install -vm755 hw/vfb/Xvfb /usr/bin
sed -i '/install_man/,$d' meson.build: Forhindrer installering av en manualside for Xserver, som også leveres av Xorg-Server-21.1.13. Fjern denne kommandoen hvis Xorg-Server-21.1.13 ikke er installert og du ikke planlegger å installere den senere.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Xorg Server er kjernen av X Vindussystemet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/xserver/xorg-server-21.1.13.tar.xz
Nedlasting MD5 sum: 69dbed93746d0af6b46de76d711614e4
Nedlastingsstørrelse: 4.7 MB
Estimert diskplass som kreves: 147 MB (med tester)
Estimert byggetid: 0.3 SBU (bruke parallellisme=4; med tester)
Med fjerning av xf86-video-* driverne, alternativet TearFree er ikke lenger funksjonell. For å omgå dette har oppstrøms lagt til TearFree alternativet til standard modusinnstillingsdriver. Denne oppdateringen tilbakeporterer denne funksjonen. Påfør denne oppdateringen hvis du skal bruke Xorg i et miljø uten en kompositor (som TWM, IceWM, Openbox, eller Fluxbox).
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/xorg-server-21.1.13-tearfree_backport-2.patch
libxcvt-0.1.2, Pixman-0.43.4, Xorg Fonts (bare font-util), og ved kjøretid: xkeyboard-config-2.42
libepoxy-1.5.10 (trengs for glamor), libtirpc-1.3.5, Systemd-256.4 (kjøretid), og Xorg Libinput-1.4.0 (kjøretid)
Selv om det er mulig å kjøre Xorg serveren uten
Systemd-256.4 (bygget om med
PAM) fungerer, vil det kreve å kjøre Xorg serveren
som root bruker ellers vil
Xorg serveren fungere feil eller til og med ikke starte.
BLFS redaktørene fraråder sterkt å hoppe over denne avhengigheten. Ikke prøv å gjøre det
med mindre du virkelig vet hva gjør du.
acpid-2.0.34 (kjøretid), Doxygen-1.12.0 (for å bygge API dokumentasjon), fop-2.9 (for å bygge dokumentasjon), libunwind-1.6.2, Nettle-3.10, libgcrypt-1.11.0, xcb-util-keysyms-0.4.1, xcb-util-image-0.4.1, xcb-util-renderutil-0.3.10, xcb-util-wm-0.4.2 (alle fire for å bygge Xephyr), xmlto-0.0.29 (for å bygge dokumentasjon), xkeyboard-config-2.42 (for tester), rendercheck (for tester), og xorg-sgml-doctools (for å bygge dokumentasjon)
De tradisjonelle Device Dependent X (DDX) driverne er fjernet
fra BLFS til fordel for modesetting_drv driver som blir bygget som
en del av denne pakken. For å bruke modesetting_drv driver, kjernen må gi en
Direct Rendering Manager (DRM) driver for din GPU.
Hvis GPUen din støtter 3D akselerasjon og Mesa-24.1.5 gir en Gallium3D driver for å utnytte 3D funksjonen, burde du allerede ha aktivert de nødvendige kjernekonfigurasjonsalternativene i Mesa Kernel Configuration. Ellers må du finne kjernekonfigurasjonsalternativ for DRM driveren for GPU og aktiver den. Spesielt de virtuelle GPUene levert av en virtuell maskin behandler:
Device Drivers ---> Graphics support ---> <*/M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> ... [DRM] < /*/M> DRM driver for VMware Virtual GPU [DRM_VMWGFX] < /*/M> DRM Support for bochs dispi vga interface (qemu stdvga) ... [DRM_BOCHS] < /*/M> Virtual Box Graphics Card [DRM_VBOXVIDEO]
Hvis kjernen ikke gir en DRM driver for din GPU, på de fleste x86 systemer “simple frame buffer” DRM driver som kjører på VESA eller UEFI rammebuffer kan brukes som reserve. Aktiver følgende alternativer i kjernekonfigurasjonene hvis du ikke har en dedikert DRM driver for GPUen, eller du vil holde det enkle rammebufferdriver som en reserve i tilfelle den dedikerte driveren feiler:
Device Drivers ---> Firmware Drivers ---> [*] Mark VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB] Graphics support ---> <*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> ... [DRM] <*> Simple framebuffer driver [DRM_SIMPLEDRM]
For å la kjernen skrive ut feilsøkingsmeldinger på et tidlig
oppstartsstadium, CONFIG_DRM og
CONFIG_DRM_SIMPLEDRM bør ikke
bygges som kjernemoduler med mindre en initramfs vil bli
brukt.
Hvis du vil bruke den enkle rammebufferdriveren på et
oppstartet system via BIOS (i stedet for UEFI), legg til
følgende linje før den første menuentry blokk i /boot/grub/grub.cfg filen for å
initialisere VESA rammebuffer:
set gfxpayload=1024x768x32
Du kan erstatte 1024,
768, og 32 med en oppløsning og
fargedybdeinnstilling egnet for skjermen din.
Hvis alle disse DRM driverne ikke fungerer for deg og du må
bruke en DDX driver med en ikke-DRM kjerne GPU driver
(vanligvis kalt CONFIG_FB_* i
kjernekonfigurasjonen, eller eksisterende som out-tree
kjernemoduler), eller du trenger en enhetsspesifikk
funksjonalitet som krever en DDX driver, se
en tidligere versjon av BLFS, eller
en enda tidligere versjon for flere DDX drivere.
For det første, hvis du trenger TearFree alternativet for å omgå skjermrivning, påfør den tilbakeporterte oppdateringen:
patch -Np1 -i ../xorg-server-21.1.13-tearfree_backport-2.patch
Installer serveren ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
--localstatedir=/var \
-D glamor=true \
-D xkb_output_dir=/var/lib/xkb &&
ninja
For å teste resultatene, kjør: ninja test. Du vil trenge å
kjøre ldconfig
som root bruker først ellers
kan noen tester mislykkes.
Nå, som root bruker:
ninja install && mkdir -pv /etc/X11/xorg.conf.d
-D glamor=true: Sørg
for å bygge Glamor modulen. Det er nødvendig for å bygge
modesetting_drv driver som
erstatter de tradisjonelle Device Dependent X (DDX) driverne.
-D suid_wrapper=true: Bygger
suid-root innpakning for eldre driverstøtte på rotløse
xserver systemer.
-D xephyr=true: Dette
alternativet tillater å bygge Xephyr hvis dens avhengigheter
er oppfylt.
modesetting_drv driver
|
beregner VESA GTF moduslinjer |
|
|
er en symbolsk kobling til Xorg |
|
|
er en nestet X server som støtter moderne X utvidelser |
|
|
er en nestet X server |
|
|
ere X11R7 X Server |
|
|
er den virtuelle rammebufferen X server for X Version 11 |
|
|
gir en videodriver for maskiner som bruker Kernel Mode Setting (KMS). Dette vil bruke glamor hvis det er aktivert og maskinvaren tilbyr akselerasjon |
Xorg Inndata Drivere siden inneholder instruksjoner for å bygge Xorg inndatadrivere som er nødvendige for at Xorg Server skal svare på brukerinndata.
libevdev pakken inneholder vanlige funksjoner for Xorg inndatadrivere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/libevdev/libevdev-1.13.2.tar.xz
Nedlasting MD5 sum: ddb1d798e0f2b4d0bd17c892b7d4aed3
Nedlastingsstørrelse: 452 KB
Estimert diskplass som kreves: 6.2 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Doxygen-1.12.0 og Valgrind-3.23.0 (valgfri for tester)
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
Device Drivers ---> Input device support ---> -*- Generic input layer (needed for keyboard, mouse, ...) [INPUT] <*/M> Event interface [INPUT_EVDEV]
Hvis du vil teste denne pakken med full dekning, følgende alternativer er også nødvendig:
Device Drivers ---> Input device support ---> -*- Generic input layer (needed for keyboard, mouse, ...) [INPUT] [*] Miscellaneous devices ---> [INPUT_MISC] <*/M> User level driver support [INPUT_UINPUT]
Hvis du bygger denne som en modul, må den settes inn før testpakken kjører.
Installer libevdev ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
--buildtype=release \
-D documentation=disabled &&
ninja
Regresjonstestene kan kjøres som root bruker med ninja test, i en grafisk
sesjon. Du må ha aktivert CONFIG_INPUT_UINPUT innstillingen
i kjernen for full testdekning. Hvis den er aktivert som en
modul, har modulen navnet uinput og må lastes før
du kjører testene. Vær oppmerksom på at på noen systemer
testene kan forårsake en hard låsing og kreve en omstart.
På bærbare datamaskiner vil systemet gå i dvale og må
vekkes for å fullføre testpakken.
Nå, som root bruker:
ninja install
|
er et verktøy for å endre noen kjerneenhetsegenskaper |
|
|
er et verktøy for å beregne oppløsningen til en mus |
|
|
touchpad-edge-detector er et verktøy som leser pekeplatehendelsene fra kjernen og beregner minimum og maksimum for x og y koordinater, henholdsvis |
|
|
er et bibliotek med Xorg driverinndata funksjoner |
Xorg Evdev Driver pakken inneholder en generisk Linux inndatadriver for Xorg X serveren. Den håndterer tastatur, mus, pekeplater og wacom enheter, men for touchpad og wacom avansert håndtering, ekstra drivere kreves.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/driver/xf86-input-evdev-2.10.6.tar.bz2
Nedlasting MD5 sum: e8bd1edc6751f92e425cae7eba3c61eb
Nedlastingsstørrelse: 400 KB
Estimert diskplass som kreves: 3.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Xorg Evdev Driver ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libinput er et bibliotek som håndterer inndataenheter for skjermservere og andre applikasjoner som trenger å håndtere inndataenheter direkte.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/libinput/libinput/-/archive/1.26.1/libinput-1.26.1.tar.gz
Nedlasting MD5 sum: aae34911d662f77c1cd9be60c8502664
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 11 MB (legg til 23 MB for dokumentasjon og 9,6 MB for tester)
Estimert byggetid: 0.1 SBU (legg til 0,1 SBU for dokumentasjon og 4,9 SBU for tester)
libevdev-1.13.2 og mtdev-1.1.7
Valgrind-3.23.0 (for å kjøre testene), GTK+-3.24.43 (for å bygge GUI hendelsesvisningen), libunwind-1.6.2 (nødvendig for tester), libwacom-2.12.2, sphinx-8.0.2 (kreves for å bygge dokumentasjon), og pyparsing-3.1.2 (for en ikke-root test)
Selv om libinput fungerer med den samme
kjernekonfigurasjonen som brukes av libevdev-1.13.2,
dens omfattende testpakken krever tilstedeværelse av
/dev/uinput (samt både
Valgrind-3.23.0 og libunwind-1.6.2).
Hvis du ønsker å kjøre alle testene, aktiver følgende alternativ i kjernekonfigurasjon og kompiler kjernen på nytt om nødvendig:
Device Drivers ---> Input device support ---> -*- Generic input layer (needed for keyboard, mouse, ...) [INPUT] [*] Miscellaneous devices ---> [INPUT_MISC] <*/M> User level driver support [INPUT_UINPUT]
Hvis du bygger denne som en modul, må den settes inn før testpakken kjører.
På et Xorg system må du også forhindre genererte hendelser
under testpakken fra å forstyrre skrivebordet ditt. Kopier
filen test/50-litest.conf til
${XORG_PREFIX}/share/X11/xorg.conf.d og
start X på nytt. For mer informasjon se
libinput test suite.
Installer libinput ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
--buildtype=release \
-D debug-gui=false \
-D tests=false \
-D libwacom=false \
-D udev-dir=/usr/lib/udev &&
ninja
Hvis du vil kjøre de fullstendige testene, fjerner du -D tests fra meson kommandoen ovenfor. Vennligst les "Kjernekonfigurasjon for å kjøre libinput Testpakken" (over).
Hvis du har aktivert de fullstendige testene, kan du kjøre hovedtestene som root bruker ved å utføre: ninja test. Et svært stort antall tester vil bli kjørt. En test mislykkes på wayland.
Nå, som root bruker:
ninja install
Hvis du har gitt -D
documentation=true til meson, kan du installere
den genererte dokumentasjonen ved å kjøre følgende
kommandoer som root bruker:
install -v -dm755 /usr/share/doc/libinput-1.26.1/html && cp -rv Documentation/* /usr/share/doc/libinput-1.26.1/html
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte
binærfiler.
-D debug-gui=false:
Denne bryteren deaktiverer opprettelse av en visuell
feilsøkingshjelper for libinput. Fjern hvis du vil ha det,
og du har GTK+-3.24.43 installert.
-D tests=false:
Denne bryteren deaktiverer kompilering av hovedtestene.
Selv med testene definert som false,, kan du fortsatt kjøre
de fire første mindre testene, som vanlig bruker, men en
vil bli hoppet over hvis pyparsing-3.1.2 ikke er
installert.
-D libwacom=false:
Fjern dette alternativet hvis du har libwacom-2.12.2
installert, eller hvis du installerer GNOME.
-D
udev-dir=/usr/lib/udev: I tilfelle at verdien
av XORG_PREFIX ikke er satt til
/usr, dette alternativet
forhindrer pakken fra å installere Udev regler og hjelpere
i $XORG_PREFIX/lib/udev som
ikke er søkt av Udev nissen. Dette alternativet er ikke
nødvendig for systemer med XORG_PREFIX satt til /usr, men gjør ingen skade.
-D documentation=true: Denne
bryteren aktiverer generering av dokumentasjonen. Legg den
til hvis du vil generere dokumentasjonen. Du må ha
Doxygen-1.12.0 og Graphviz-12.1.0 installert.
X.Org Libinput Driver er en tynn innpakning rundt libinput og gjør at libinput kan brukes for inndataenheter i X. Denne driveren kan brukes som drop-in erstatning for evdev og synaptics.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/driver/xf86-input-libinput-1.4.0.tar.xz
Nedlasting MD5 sum: b52a1fc7456cf6595a9a1004287551a3
Nedlastingsstørrelse: 320 KB
Estimert diskplass som kreves: 3.9 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer Xorg Libinput Driver ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
For å teste resultatene, kjør make check.
Nå, som root bruker:
make install
Xorg Synaptics Driver pakken inneholder X.Org Inndatadriver, støtteprogrammer og SDK for Synaptics pekeplater. Selv om evdev driveren kan håndtere pekeplater veldig bra, er denne driveren nødvendig hvis du vil bruke avanserte funksjoner som multitapping, rulle med pekeplaten, slå av pekeplaten mens skriving osv.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/driver/xf86-input-synaptics-1.9.2.tar.xz
Nedlasting MD5 sum: 3b95e7baf4428b114e9910f999e96601
Nedlastingsstørrelse: 424 KB
Estimert diskplass som kreves: 5.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Xorg Synaptics Driver ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xorg Wacom Driver pakken inneholder X.Org X11 driver og SDK for Wacom og Wacom lignende nettbrett. Det er ikke nødvendig for å bruke et Wacom nettbrett xf86-input-evdev driveren kan håndtere disse enheter uten problemer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/linuxwacom/xf86-input-wacom/releases/download/xf86-input-wacom-1.2.2/xf86-input-wacom-1.2.2.tar.bz2
Nedlasting MD5 sum: bd72f813b094b79b450e50a95476977b
Nedlastingsstørrelse: 636 KB
Estimert diskplass som kreves: 8.1 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
For å bruke et Wacom nettbrett med USB grensesnitt, aktiver følgende alternativer i kjernekonfigurasjonen og kompiler på nytt. Noter det at andre konfigurasjonsalternativer kan være nødvendige for nettbrett med en seriell eller bluetooth grensesnitt:
Device Drivers ---> [*] HID bus support ---> [HID_SUPPORT] {*/M} HID bus core support [HID] Special HID drivers ---> <*/M> Wacom Intuos/Graphire tablet support (USB) [HID_WACOM] USB HID support ---> <*/M> USB HID transport layer [USB_HID] [*] USB support ---> [USB_SUPPORT] <*/M> Support for Host-side USB [USB]
Installer Xorg Wacom Driver ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
twm pakken inneholder en veldig minimal vindusbehandler.
Denne pakken er gitt for å teste den fullførte Xorg installasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/app/twm-1.0.12.tar.xz
Nedlasting MD5 sum: 805ee08b5a87e1103dfe2eb925b613b4
Nedlastingsstørrelse: 260 KB
Estimert diskplass som kreves: 3.8 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer twm ved å kjøre følgende kommandoer:
sed -i -e '/^rcdir =/s,^\(rcdir = \).*,\1/etc/X11/app-defaults,' src/Makefile.in && ./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
sed -i -e '/^rcdir =/s...: Denne kommandoen sikrer at twm konfigurasjonsfilen blir installert i riktig plassering.
xterm er en terminalemulator for X Vindussystemet.
Denne pakken er gitt for å teste den fullførte Xorg installasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://invisible-mirror.net/archives/xterm/xterm-393.tgz
Nedlasting MD5 sum: 1ac5147362addade51c4e627d8cb328f
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.1 SBU (med parallellisme=4)
En monospace TTF eller OTF font som f.eks Dejavu fonts
Installer xterm ved å kjøre følgende kommandoer:
sed -i '/v0/{n;s/new:/new:kb=^?:/}' termcap &&
printf '\tkbs=\\177,\n' >> terminfo &&
TERMINFO=/usr/share/terminfo \
./configure $XORG_CONFIG \
--with-app-defaults=/etc/X11/app-defaults &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && mkdir -pv /usr/share/applications && cp -v *.desktop /usr/share/applications/
sed -i ... termcap, printf ... >> terminfo: Disse kommandoene endrer terminalbeskrivelsen slik at Tilbaketasten forventes å sende tegnet med ASCII kode 127. Dette er gjort for konsistens med Linux konsollen.
TERMINFO=/usr/share/terminfo:
Dette sikrer at xterm terminfo filene er
installert til systemets terminfo database.
--with-app-defaults=...: Angir
plasseringen for app-defaults
mappen.
Det er to måter å konfigurere xterm på. Du kan legge X
ressursdefinisjoner til brukerens ~/.Xresources fil, eller legge dem til
systembrede $XORG_PREFIX/share/X11/app-defaults/Xterm
filen.
For at xterm skal følge lokalinnstillingene i miljøet, bruk
TrueType fonter, og følg Linux konvensjonen om koden sendt av
tilbaketasten, legg til følgende definisjoner som
root bruker:
cat >> /etc/X11/app-defaults/XTerm << "EOF"
*VT100*locale: true
*VT100*faceName: Monospace
*VT100*faceSize: 10
*backarrowKeyIsErase: true
*ptyInitialErase: true
EOF
|
er et innpakningsskript for å sette opp xterm med en KOI8-R lokalitet |
|
|
skriver en skallkommando for å angi TERM og TERMCAP miljøvariabler for å indikere gjeldende størrelse på xterm vinduet |
|
|
er et innpakningsskript som endrer gjeldende lokalitet til å bruke UTF-8 og starter xterm med de riktige innstillingene |
|
|
er en terminalemulator for X Vindussystemet |
xclock pakken inneholder en enkel klokkeapplikasjon som brukes i standard xinit konfigurasjon.
Denne pakken er gitt for å teste den fullførte Xorg installasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/app/xclock-1.1.1.tar.xz
Nedlasting MD5 sum: 1273e3f4c85f1801be11a5247c382d07
Nedlastingsstørrelse: 156 KB
Estimert diskplass som kreves: 1.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer xclock ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
xinit pakken inneholder et brukbart skript for å starte xserveren.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/app/xinit-1.4.2.tar.xz
Nedlasting MD5 sum: 0e9a1b9a82b84ab229c709c0f939c113
Nedlastingsstørrelse: 153 KB
Estimert diskplass som kreves: 1.5 MB
Estimert byggetid: mindre enn 0.1 SBU
twm-1.0.12, xclock-1.1.1, og xterm-393 (brukt som
standard xinitrc fil)
Installer xinit ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG --with-xinitdir=/etc/X11/app-defaults && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && ldconfig
Før du starter Xorg for første gang, er det nyttig å
gjenoppbygge bibliotekets hurtiglager ved å kjøre
ldconfig
som root bruker.
Før du starter Xorg for første gang, er det ofte nødvendig å starte systemet på nytt for å sikre at alle passende nisser startes og passende sikkerhetsproblemer er riktig innstilt. Som et alternativ kan utlogging og innlogging fungere, men dette er ikke testet.
Hvis Xorg henger av en eller annen grunn (for eksempel
mangler en skikkelig inndata driver), kan systemet slutte å
svare på brukerinndata. Som en forholdsregel kan du
aktivere en magisk SysRq tast før du tester
Xorg. Som root bruker,
utsted:
echo 4 > /proc/sys/kernel/sysrq
Så hvis Xorg henger, er det mulig å bruke Alt+SysRq+R for å tilbakestille tastaturmodus. Nå skal det kunne brukes Ctrl+Alt+Fx (erstatte x med et VT nummer) for å bytte til en annen VT. Hvis det fungerer, logg inn og drep Xorg ved å bruke kommandolinjen i den nye VT.
For å teste Xorg installasjonen, utsted startx. Denne kommandoen viser en grunnleggende vindusbehandler kalt twm med tre xterm vinduer og ett xclock vindu. Xterm vinduet øverst til venstre er en påloggingsterminal og kjøre exit fra denne terminalen vil avslutte X Window økten. Det tredje xterm vinduet kan bli skjult på systemet ditt av de to andre xtermene.
Ved testing av Xorg med twm vindusbehandler, det blir flere advarsler i Xorg loggfilen, $HOME/.local/share/xorg/Xorg.0.log, om manglende fontfiler. I tillegg vil det være flere advarsler på tekstmodus terminalen (vanligvis tty1) om manglende fonter. Disse advarslene påvirker ikke funksjonaliteten, men kan fjernes om ønskelig ved å installere Xorg Legacy Fonts.
På systemer med NVIDIA GPUer som bruker Nouveau kjernedriveren, kan du støte på sporadiske GPU krasj og henger. Hvis dette problemet oppstår, nedgrader til den nyeste versjonen av Linux 6.1-kjernen.
Vanligvis er det ingen spesifikk konfigurasjon som kreves for Xorg, men tilpasning er mulig. For detaljer, se the section called “Sette opp Xorg Enheter” under.
DRI er et rammeverk for å gi programvare tilgang til grafikkmaskinvare på en sikker og effektiv måte. Den er installert i X som standard (ved hjelp av Mesa) hvis du har et støttet skjermkort.
For å sjekke om DRI drivere er riktig installert, sjekk
loggfilen $HOME/.local/share/xorg/Xorg.0.log (eller
/var/log/Xorg.0.log hvis du har
bygget Xorg-Server-21.1.13 med suid biten)
for uttalelser som:
(II) modeset(0): [DRI2] Setup complete
(II) modeset(0): [DRI2] DRI driver: crocus
(II) modeset(0): [DRI2] VDPAU driver: va_gl
DRI konfigurasjonen kan variere hvis du bruker alternative drivere, for eksempel som tradisjonelle DDX drivere, eller proprietære drivere fra NVIDIA eller AMD.
En annen måte å finne ut om DRI fungerer som den skal, er å bruke en av to valgfrie installerte OpenGL demoprogrammer i Mesa-24.1.5. Fra en X terminal, kjør glxinfo -B og se etter uttrykket:
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Hvis direkte gjengivelse er aktivert, kan du legge til detaljer ved å kjøre LIBGL_DEBUG=verbose glxinfo. Dette vil vise drivere, enhetsnoder og filer som brukes av DRI systemet.
For å bekrefte at DRI2 maskinvareakselerasjon fungerer, kan
du (fortsatt i X terminalen) kjør kommandoen glxinfo | grep -E "(OpenGL vendor|OpenGL
renderer|OpenGL version)". Hvis det melder
noe annet enn
Software Rasterizer så har du en
akselerasjon som virker for brukeren som kjørte kommandoen.
Hvis maskinvaren din ikke har noen DRI2 driver tilgjengelig, vil den bruke en programvarerasterer for direkte gjengivelse. I slike tilfeller kan du bruke en ny, LLVM akselerert, programvarerasterer kalt LLVMPipe. For å bygge LLVMPipe bare sørg for at LLVM-18.1.7 er tilstede ved Mesa byggetid. Merk at all dekoding gjøres på CPU i stedet for GPUen, slik at skjermen vil kjøre langsommere enn med maskinvareakselerasjon. For å sjekke om du bruker LLVMpipe, se gjennom utdataene til glxinfo kommandoen ovenfor. Et eksempel på utdata med programvarerasterer er vist nedenfor:
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 3.5, 256 bits)
OpenGL version string: 3.0 Mesa 10.4.5
Du kan også tvinge LLVMPipe ved å eksportere LIBGL_ALWAYS_SOFTWARE=1 miljøvariabelen når
Xorg starter.
Igjen, hvis du har bygget Mesa OpenGL demoene, kan du også kjøre testprogrammet glxgears. Dette programmet får opp et vindu med tre gir spinnende rundt. X terminalen vil vise hvor mange bilder det ble tegnet hvert femte sekund, så dette vil gi en grov benchmark. Vinduet er skalerbar, og bildene som tegnes per sekund er svært avhengig av størrelsen på vinduet. På noe maskinvare, glxgears vil kjøre synkronisert med det vertikale oppdateringssignalet og bildefrekvensen vil være omtrent den samme som skjermens oppdateringsfrekvens.
Når du starter xorg, er det et par måter å sjekke problemer
du måtte ha. Hvis systemet kommer opp, kan du se hvilken
driver som brukes ved å kjøre xdriinfo. Hvis det er
problemer eller bare for å sjekke, se på Xorg.0.log.
Plasseringen av Xorg.0.log
avhenger av hvordan Xorg er installert. Hvis instruksjonene i
boken følges nøye og Xorg startes fra kommandolinjen, vil den
være plassert i $HOME/.local/share/xorg/ mappen. Hvis Xorg
startes av en skjermbehandler (f.eks. lightdm-1.32.0,
sddm-0.21.0, or GDM-46.2) eller hvis $XORG_PREFIX/bin/Xorg har suid biten satt,
vil den ligge i /var/log/
mappen.
Når du ser på Xorg.0.log, se etter oppføringer som (EE) eller (WW). Nedenfor er noen vanlige oppføringer:
Denne advarselen er fordi acpid-2.0.34 ikke er installert. Hvis du ikke er på en bærbar datamaskin, kan den trygt ignoreres. Installer på en bærbar datamaskin acpid-2.0.34 for å aktivere handlinger som å gjenkjenne når lokket er lukket.
Denne advarselen vises når en vanlig bruker starter Xorg.
Biblioteket libpciaccess.so gir
denne advarselen når den prøver å åpne /dev/vga_arbiter. Hvis det ikke er flere
enn ett eldre PCI (ikke PCIe) grafikkort på systemet, det kan
trygt ignoreres. Hvis det virkelig er nødvendig, kan
tillatelsene til denne enheten endres ved å legge til en udev
regel og legge til den lokale brukeren i videogruppen. Som
root bruker:
cat > /etc/udev/rules.d/99-vga-arbiter.rules << EOF # /etc/udev/rules.d/99-vga-arbiter.rules: Set vga_arbiter group/mode ACTION=="add", KERNEL=="vga_arbiter", GROUP="video" MODE="0660" EOF usermod -a -G video <user running xorg>
Hybrid Grafikk er fortsatt i eksperimentell tilstand for Linux. Xorg utviklere har utviklet en teknologi kalt PRIME som kan brukes til å bytte mellom integrert og muxless diskret GPU etter ønske. Automatisk veksling er ikke mulig for øyeblikket.
For å bruke PRIME for GPU bytte, sørg for at du bruker Linux Kernel 3.4 eller nyere (anbefalt). Du trenger siste DRI og DDX drivere for din maskinvare og Xorg Server 1.13 eller senere.
Xorg Server burde laste begge GPU driverne automatisk. Du kan sjekke det ved å kjøre:
xrandr --listproviders
Det bør for eksempel være to (eller flere) leverandører oppført, for eksempel:
Providers: number : 2
Provider 0: id: 0x7d cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 3 outputs: 4 associated providers: 1 name:modesetting
Provider 1: id: 0x56 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 6 outputs: 1 associated providers: 1 name:modesetting
For å kunne kjøre en GLX applikasjon på en diskret GPU, vil du må kjøre følgende kommando, hvor <provider> er id-en til det kraftigere diskrete kortet, og <sink> er ID-en til kortet som har en skjerm tilkoblet:
xrandr --setprovideroffloadsink <provider> <sink>
Med Xorg modusinnstillingsdriver, som er DRI3 kompatibel, er ikke kommandoen ovenfor lenger nødvendig. Det skader imidlertid ikke.
Deretter må du eksportere DRI_PRIME=1 miljøvariabelen hver gang du vil
at den kraftige GPUen skal brukes. For eksempel,
DRI_PRIME=1 glxinfo | grep -E "(OpenGL vendor|OpenGL renderer|OpenGL version)"
vil vise OpenGL leverandør, renderer og versjon for den diskrete GPUen.
Hvis den siste kommandoen rapporterer samme OpenGL renderer
med og uten DRI_PRIME=1, må du
sjekke installasjonen.
For de fleste maskinvarekonfigurasjoner vil moderne Xorg automatisk få serverkonfigurasjonen riktig uten brukerintervensjon. Det er imidlertid noen tilfeller der automatisk konfigurasjon vil være feil. Følgende er noen eksempler på manuelle konfigurasjonselementer som kan være nyttige i disse tilfellene.
For de fleste inndataenheter vil ingen ekstra konfigurasjon være nødvendig. Denne delen er kun gitt for informasjonsformål.
Et eksempel på standard XKB oppsett kan se ut som følgende
(utført som root bruker):
cat > /etc/X11/xorg.conf.d/xkb-defaults.conf << "EOF"
Section "InputClass"
Identifier "XKB Defaults"
MatchIsKeyboard "yes"
Option "XkbLayout" "fr"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection
EOF
“XkbLayout” linjen er et eksempel for en fransk (AZERTY) tastatur. Endre den til din tastaturmodell. Den linjen er ikke nødvendig for et QWERTY (USA) tastatur.
Hvis du vil angi skjermoppløsningen for Xorg, kjør først xrandr i en X terminal for å liste de støttede oppløsninger og tilsvarende oppdateringsfrekvenser. For eksempel, det gir ut følgende for én skjerm:
Screen 0: minimum 16 x 16, current 5760 x 2160, maximum 32767 x 32767
DP-1 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 600mm x 340mm
3840x2160 59.98*+
2048x1536 59.95
1920x1440 59.90
1600x1200 59.87
1440x1080 59.99
1400x1050 59.98
1280x1024 59.89
1280x960 59.94
1152x864 59.96
1024x768 59.92
800x600 59.86
640x480 59.38
Fra utdataen kan vi se at skjermen er identifisert
DP-1. Velg en passende
oppløsning fra utdatalisten, for eksempel 1920x1440. Deretter som root bruker, opprett en
konfigurasjonsfil for Xorg serveren:
cat > /etc/X11/xorg.conf.d/monitor-DP-1.conf << "EOF"
Section "Monitor"
Identifier "DP-1"
Option "PerferredMode" "1920x1440"
EndSection
EOF
Noen ganger xrandr kan ikke oppdage noen oppløsningsinnstillinger som støttes av skjermen. Det skjer vanligvis med virtuelle skjermer av virtuelle maskinforvaltere som qemu-9.0.2 eller VMWare: en virtuell skjerm faktisk støtter alle par med heltall i et område som oppløsningen, men xrandr vil bare liste noen få. Å bruke en oppløsning ikke oppført av xrandr, først kjør cvt for å få moduslinjen for oppløsningen. For eksempel:
cvt 1600 900
# 1600x900 59.95 Hz (CVT 1.44M9) hsync: 55.99 kHz; pclk: 118.25 MHz
Modeline "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
Som root bruker, opprette
en Xorg serverkonfigurasjonsfil som inneholder denne
moduslinjen, og spesifiser modusen som foretrukket modus:
cat > /etc/X11/xorg.conf.d/monitor-DP-1.conf << "EOF"
Section "Monitor"
Identifier "DP-1"
Modeline "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
Option "PerferredMode" "1600x900_60.00"
EndSection
EOF
Noen avanserte LCD skjermer støtter en oppdateringsfrekvens høyere enn 100 Hz men xrandr kan ikke gjenkjenne den støttede oppdateringsfrekvens og bruker 60 Hz i stedet. Dette problemet ville hindre deg fra å utnytte skjermens fulle kapasitet, og kan forårsake at skjermen flimrer eller viser “figurer” som mesh eller rutenett. For å løse problemet, bruk igjen cvt for å få moduslinjen med en egendefinert oppdateringsfrekvens:
cvt 3840 2160 144
# 3840x2160 143.94 Hz (CVT) hsync: 338.25 kHz; pclk: 1829.25 MHz
Modeline "3840x2160_144.00" 1829.25 3840 4200 4624 5408 2160 2163 2168 2350 -hsync +vsync
Deretter limer du den inn i Xorg serverens konfigurasjonsfil og setter den inn som den foretrukne modusen.
Et annet vanlig oppsett er å ha flere serveroppsett for bruk i ulike miljøer. Selv om serveren automatisk oppdager tilstedeværelsen av en annen skjerm, kan den få rekkefølgen feil:
cat > /etc/X11/xorg.conf.d/server-layout.conf << "EOF"
Section "ServerLayout"
Identifier "DefaultLayout"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" LeftOf "Screen0"
Option "Xinerama"
EndSection
EOF
Når du drar et vindu i twm (eller et ikke-sammensatt vindusbehandler) horisontalt, kan du observere at de vertikale grensene av vinduet er delt inn i flere segmenter. Dette er et eksempel av de visuelle artefaktene kalt skjermrivning. Lag en konfigurasjonsfil for å løse problemene med skjermrivning som aktiverer skjermrivningfrie alternativet. Merk at du må ha skjermrivningfrie oppdatering brukt fra Xorg-Server-21.1.13 for at dette skal fungere ordentlig, og det kan evt øke minnetildelingen og redusere ytelsen.
cat > /etc/X11/xorg.conf.d/20-tearfree.conf << "EOF"
Section "Device"
Identifier "Graphics Adapter"
Driver "modesetting"
Option "TearFree" "true"
EndSection
EOF
Med moderne Xorg, liten eller ingen ekstra
grafikkortkonfigurasjon er nødvendig. Hvis du skulle trenge
ekstra alternativer sendt til din videodriver, legg dem til
i Device seksjonen også.
Alternativene som støttes av modusinnstillingsdriveren er
dokumentert i manualsiden modesetting(4).
Hvis du kun leser tekst på engelsk, og er fornøyd med vanlige libre fonter som er oppført på neste side, trenger du kanskje aldri å bekymre deg for detaljer om hvordan Fontconfig virker. Men det er mange ting som kan endres hvis de ikke passer dine behov, hvorfor de kanskje ikke alltid fungerer, og for å identifisere nettbasert informasjon som ikke lenger er hensiktsmessig.
Men før du bruker lang tid på å prøve ut forskjellige innstillinger vær oppmerksom på at moderne applikasjoner og skrivebordsmiljøer kan ignorere innstillinger for fontconfig - se Elementer som kan overstyre Fontconfig.
Selv om denne siden er lang, skraper den knapt overflaten, og det du vil kunne finne mange alternative synspunkter på nettet (men husk at noen ting har endret seg gjennom årene, for eksempel autohinteren er ikke lenger standard). Målet her er å gi deg nok informasjon for å forstå endringene du gjør, hvorfor de kanskje ikke alltid fungerer, og for å identifisere online informasjon som ikke lenger er hensiktsmessig.
Dessverre er noe av terminologien tvetydig (f.eks. 'font face' kan betyr et navn kjent for Fontconfig, eller det vanlige, kondenserte, etc variasjoner av en font) og 'stil' kan brukes til skille 'vanlig' fra 'kursiv', eller ved å beskrive noen klasser av Serif fonter.
Følgende lenker er for å hjelpe navigering på denne siden.
Xft fontprotokollen gir kantutjevnet skriftgjengivelse
gjennom freetype, og fonter
styres fra klientsiden ved bruk av Fontconfig (utenom rxvt-unicode-9.31 som kan bruke
fonter oppført i ~/.Xresources,
og AbiWord-3.0.5 som bruker kun den angitte
fonten). Standard søkesti er /usr/share/fonts og ~/.local/share/fonts, selv om for
øyeblikket den gamle og utdaterte plasseringen ~/.fonts virker fortsatt. Fontconfig søker mapper i stien sin
rekursivt og opprettholder en hurtigbuffer med
fontkarakteristikkene i hver mappe. Hvis hurtiglageret ser ut
til å være utdatert, ignoreres den, og informasjon hentes fra
selve fonten (det kan ta noen få sekunder hvis du har mange
fonter installert).
Hvis du har installert Xorg
i et hvilket som helst prefiks annet enn /usr, ingen X fonter ble installert i et sted kjent
for Fontconfig.
Symbolkoblinger var opprettet fra OTF og TTF
X font mapper til
/usr/share/fonts/X11-{OTF,TTF}
i Xorg Fonter. Dette tillater Fontconfig å bruke OpenType og TrueType
fonter levert av X, selv om
mange vil foretrekke å bruke mer moderne fonter.
Fontconfig bruker navn for å definere fonter. Applikasjoner bruker vanligvis generiske skriftnavn som "Monospace", "Sans" og "Serif". Fontconfig løser disse navnene til en font som har alle tegn som dekker ortografien til språket som er angitt av lokalinnstillingene.
Følgende kommandoer kan være nyttige når du arbeider med Fontconfig, spesielt hvis du er interessert i å overstyre hvilken font som skal bli brukt.
fc-list | less : viser en liste over alle tilgjengelige fonter (/sti/til/filnavn: Fontnavn:stil). Hvis du installerte en font og den ikke vises, kan ikke mappen den finnes i leses av brukeren din.
fc-match 'Font Name' : forteller deg hvilken font som brukes hvis den navngitte fonten er forespurt. Vanligvis vil du bruke dette til å se hva som skjer hvis en font du ikke har installert blir forespurt, men du kan også bruke den hvis systemet gir deg en annen font enn hva du forventet (kanskje fordi Fontconfig tror ikke at fonten støtter språket ditt).
fc-match TYPE : viser
hvilken font vil bli brukt på gjeldende språk for TYPE (Monospace, Sans, Serif
(første stor bokstav er
valgfritt)). Hvis den skriften ikke kartlegger et
kodepunkt, Fontconfig kan ta
en glyph fra hvilken som helst tilgjengelig skrift, selv om
den ikke er av den angitte typen. Enhver annen verdi for
TYPE vil antas å
være Sans.
fc-match 'Serif :lang=ja:weight=bold' vil fortelle deg hvilken font og vekt som skal velges for japansk tekst i fet skrift. Det betyr ikke at den rapporterte fonten nødvendigvis vil kunne vises Japanske ideogrammer, så en reserve kan brukes, eller noen glyfer kan være savnet. For språkkoder, bruk ISO-639-verdier som 'fr', 'ja', 'zh-cn'. Merk at en ukjent verdi som bare 'zh' ikke vil returnere noen samsvar. For å illustrere tilbakefallet, på et system hvor både Noto Sans Mono og DejaVu Sans Mono er installert, fc-match 'monospace :lang=en viser Noto Sans Mono vil bli brukt, men hvis lang er endret til 'ar' (arabisk) DejaVu Sans vil bli brukt.
Hvis du vil finne ut om en skriftfil har hinting (mange eldre
skrifter har ikke, fordi det var patentert) bruk fc-query /sti/til/fontfil | grep
'fonthashint:': som vil rapportere 'True(s)'
eller 'False(s)'. Noen nyere fonter med både TTF og OTF
versjoner vil ha hinting i TTF filene.
Hvis du ønsker å vite hvilken font vil brukes til en
tekststreng (dvs. en eller flere glyfer, innledet av et
mellomrom), lim inn følgende kommando og erstatt xyz av teksten du vil sjekke:
FC_DEBUG=4 pango-view --font=monospace -t xyz | grep family : dette krever Pango-1.54.0 og ImageMagick-7.1.1-36 - det vil display vise teksten i et lite vindu, og etter å ha lukket det den siste linjen av utdata vil vise hvilken font som ble valgt. Dette er spesielt nyttig for CJK språk, og du kan også gi et språk, f.eks. PANGO_LANGUAGE=en;ja (engelsk, anta deretter japansk) eller bare zh-cn (eller andre varianter som zh-sg eller zh-tw).
Hovedfilene er i /etc/fonts/conf.d/, som var ment å være en
mappe fylt med symbolkoblinger til noen av filene i
/usr/share/fontconfig/conf.avail/. Men
mange mennesker, og noen pakker, lager filene direkte. Hvert
filnavn må være i form av to sifre, en bindestrek,
somename.conf og de leses inn i rekkefølge.
Etter konvensjon er tallene tildelt som følger:
00-09 ekstra fontmapper
10-19 systemgjengivelsesstandarder (som kantutjevnelse)
20-29 alternativer for fontgjengivelse
30-39 familiesubstitusjon
40-49 kartlegg familie til generisk type
50-59 last inn alternative konfigurasjonsfiler
60-69 generiske aliaser, kartlegg generisk til familie
70-79 justere hvilke skrifter som er tilgjengelige
80-89 samsvar med målskanning (endre skannede mønstre)
90-99 fontsyntese
Du kan også ha en personlig fonts.conf i $XDG_CONFIG_HOME (which is
~/.config/fontconfig/).
Hvis den forespurte fonten er installert, og forutsatt at den
inneholder kodepunkter nødvendig for gjeldende språk (i
kilden, se .orth-filene i fc-lang/ mappen), vil den bli brukt.
Derimot, hvis dokumentet eller siden ba om en font som ikke
er installert (eller noen ganger ikke inneholder alle de
nødvendige kodepunktene) følgende regler kommer inn: Først,
30-metric-aliases.conf brukes
til å kartlegge aliaser for noen fonter med samme beregninger
(samme størrelse osv.). Merk at det finnes både svake og
sterke aliaser slik at aliaser for en form som f.eks
Helvetica eller Times New Roman kan tilfredsstilles av den
andre stilen, dvs. alt som er et alias for Arial eller Times
i disse eksemplene. noen eksempler på latinske skrifter med
samme beregninger finner du i 'Erstatninger' PDFer på
typosetting.co.uk.
Etter det vil en ukjent font bli søkt etter i 45-latin.conf: 'Latin' dekker kyrillisk og
gresk, og kartlegger nå også system-ui fonter som brukes for
brukergrensesnittmeldinger i andre alfabeter. Hvis fonten er
funnet vil det bli kartlagt som serif, sans-serif, monospace,
fantasy, kursiv, eller system-ui. Ellers vil
49-sansserif.conf anta at det er Sans.
Deretter 60-latin.conf gir
ordnede lister over reservene - Noto fonts vil bli
brukt hvis du installerte dem. Kyrillisk og gresk ser ut til
å bli behandlet på samme måte. Alle disse filene foretrekker
kommersielle fonter hvis de er til stede, selv om moderne
libre fonter er ofte minst like. Til slutt, hvis et kodepunkt
fortsatt ikke er funnet, kan det tas fra hvilken som helst
tilgjengelig systemfont. Følgende detaljer nevner kun fritt
tilgjengelige fonter.
Standard persiske fonter behandles i 65-fonts-persian.conf. Det ser ut som om
alle de oppførte fonter er kommersielle. Bruke skrifter som
støtter persisk (som har sin egen variant av det arabiske
alfabetet, og dets egne skriftstiler) er utenfor ferdighetene
til BLFS redaktørene.
Alle gjenværende skript for hvilke Fontconfig har preferanser (CJK-skript,
Indiske skript) er behandlet i 65-nonlatin.conf. Disse er igjen nominelt
gruppert som Serif, Sans-Serif, Monospace. Av gratis fonter,
WenQuanYi Zen Hei (Pan-CJK Sans) kommer først for både Serif
og for Sans. Derfor, hvis du installerer dette som en
reserve, men ønsker å bruke forskjellige fonter for japansk
eller koreansk du må sette opp en preferanse. På samme måte
er den gamle fireflysung Serif-fonten også oppført for Sans.
Etter Pan-CJK og kinesiske fonter kommer flere japanske fonter og deretter flere koreanske fonter (begge delt riktig mellom Sans og Serif). Til slutt kommer de forskjellige Lohit Indic-familiene (én fontfil per skript), merket som både Sans og Serif.
Monospace fontene som er oppført i 65-nonlatin.conf inkludere ikke WenQuanYi
Zen Hei selv om det vil være tilgjengelig som en fallback
hvis installert. Flere japanske gotiske fonter er oppført,
fulgt av AR PL KaitiM GB (en zh-sc 'Brush'-font), AR PL
Serif-fonter for zh-sc (SungtiL) og zh-tw (Mingti2L), noen
koreanske Sans-fonter og de forskjellige Lohit
Indic-familier.
For UI fonter er forskjellige Noto Sans UI fonter de eneste oppførte gratis skriftene.
De forskjellige Noto CJK fontene er ikke blant de oppførte fonter, muligens foretrakk RedHat utviklerne andre fonter. Disse kommer nå i mange varianter, og de fleste brukere som bruker disse vil ikke installere andre CJK fonter.
Før Fontconfig-2.14 var den første foretrukne latinske fontfamilien Bitstream Vera. I praksis ble det lite brukt fordi det dekket så lite. Etter at DejaVu var den neste foretrukne familien, så folk ble anbefalt å installer det. Det har nå endret seg, Bitstream Vera er erstattet av relevante Noto fonter (Serif, Sans, Sans Mono), så disse vil bli foretrukket hvis de er installert, etterfulgt av DejaVu.
For serif kunne Times New Roman ha blitt alias fra Liberation Serif eller Tinos og Times fra TeX Gyre Termes, så selv om de navngitte fontene ikke er gratis, de metriske kompatible skriftene kan brukes. Ignorerer andre ikke-frie skrifter, den resterende rekkefølgen for serif er: Times New Roman, Luxi Serif, Nimbus Roman No9 L, og Times. I praksis betyr det disse skriftene på slutten av listen vil neppe bli brukt med mindre en nettside ber om dem.
For sans-serif er den gjenværende rekkefølgen alt som er tilordnet Arial, Luxi Sans, Nimbus Sans L, og alt som er kartlagt til Helvetica.
De resterende alternativene for monospace er Inconsolata, alt kartlagt til Courier New, Luxi Mono, Nimbus Mono og alt som er kartlagt til Courier.
For 'fantasy' er det ingen gratis fonter, så Fontconfig vil falle tilbake til sans-serif.
For 'kursiv' er den eneste gratis fonten TeX Gyre Chorus som et alias for ITC Zapf kanselli, ellers vil Fontconfig igjen falle tilbake til sans-serif.
System-ui kategorien er uvanlig. Det er for grensesnittmeldinger, så noen skript trenger spesialversjoner for å passe inn i den tilgjengelige plassen. For latin, Gresk og kyrillisk en vanlig sans-font burde passe uten problemer. Derimot, den første foretrukne fonten er Cantarell, etterfulgt av Noto Sans UI. Cantarell startet som en latinsk sans-serif font, som har blitt forgrenet i Gnome under samme navn, men de gir bare kilden. Noto Sans UI fontene er for andre språk.
Siden Fontconfig-2.12.5, er det også generisk familietilpasning for noen emoji og matematiske fonter, se {45,60}-generic.conf.
I de sjeldne tilfellene hvor en font ikke inneholder alle forventede kodepunkter, se 'Prøv den første:' på I stared into the fontconfig for de lange detaljene.
Det er mulig å endre hvordan, eller om, fonter antydes.
Følgende eksempelfil inneholder standardinnstillingene, men
med kommentarer. Innstillingene er mye ned til brukerens
preferanser og til valget av fonttyper, så en endring som
forbedrer noen sider kan forverre andre. Den foretrukket
plassering for denne filen er: ~/.config/fontconfig/fonts.conf
For å prøve ut forskjellige innstillinger, må du kanskje avslutte Xorg og deretter kjøre startx en gang til slik at alle applikasjoner bruker de nye innstillingene. Flere ting kan overstyre fontconfig innstillingene, se Elementer som kan overstyre Fontconfig nedenfor for mer detaljer. For å utforske mulighetene, lag en fil for brukeren din:
mkdir -pv ~/.config/fontconfig &&
cat > ~/.config/fontconfig/fonts.conf << "EOF"
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font" >
<!-- autohint was the old automatic hinter when hinting was patent
protected, so turn it off to ensure any hinting information in the font
itself is used, this is the default -->
<edit mode="assign" name="autohint"> <bool>false</bool></edit>
<!-- hinting is enabled by default -->
<edit mode="assign" name="hinting"> <bool>true</bool></edit>
<!-- for the lcdfilter see https://www.spasche.net/files/lcdfiltering/ -->
<edit mode="assign" name="lcdfilter"> <const>lcddefault</const></edit>
<!-- options for hintstyle:
hintfull: is supposed to give a crisp font that aligns well to the
character-cell grid but at the cost of its proper shape. However, anything
using Pango >= 1.44 will not support full hinting, Pango now uses harfbuzz
for hinting. Apps which use Skia (e.g. Chromium, Firefox) should not be
affected by this.
hintmedium: is reported to be broken.
hintslight is the default: - supposed to be more fuzzy but retains shape.
hintnone: seems to turn hinting off.
The variations are marginal and results vary with different fonts -->
<edit mode="assign" name="hintstyle"> <const>hintslight</const></edit>
<!-- antialiasing is on by default and really helps for faint characters
and also for 'xft:' fonts used in rxvt-unicode -->
<edit mode="assign" name="antialias"> <bool>true</bool></edit>
<!-- subpixels are usually rgb, see
http://www.lagom.nl/lcd-test/subpixel.php -->
<edit mode="assign" name="rgba"> <const>rgb</const></edit>
<!-- thanks to the Arch wiki for the lcd and subpixel links -->
</match>
</fontconfig>
EOF
Du må nå redigere filen i ditt foretrukne redigeringsprogram. Mange av de ulike innstillinger gir svært subtile forskjeller og resultatene kan variere for noen av skriftene du bruker.
Hint, hvis aktivert, gjøres i FreeType. Siden FreeType-2.7 er standard TrueType tolk v40. Den originale v35 hint kan aktiveres av en miljøvariabel, men er egentlig bare passende for originale Microsoft TTF fonter (Arial, osv.). V38 hinter (Infinality) er ikke bygget som standard og alle alternativene for å stille den er fjernet. For fullstendige detaljer se subpixel-hinting (Spoiler: det er INGEN sub-piksel hint, koden ignorerer ganske enkelt alle horisontale hint instruksjoner).
Xorg antar at skjermer har 96 punkter per tomme (DPI). De fleste LCD skjermer er nær dette, men noen mennesker oppdager fargekanter hvis skjermen deres avviker fra den størrelsen. Se calc-dpi.
Hvis du har en High DPI skjerm (ofte beskrevet som '4K' eller større), vil du sannsynligvis bruke større skriftstørrelser og dra nytte av å deaktivere hinting.
For flere eksempler se blfs støttetråden som startet på 2016-09/00128, spesielt 2016-09/00137, og originaloppretteren sin foretrukne løsning på 2016-09/00147. Det er andre eksempler i Fontconfig i Arch wiki og Fontconfig i Gentoo wiki.
I tidligere versjoner av BLFS var de stygge gamle Xorg bitmap
fontene installert. Nå er det mange som ikke trenger å
installere noen av dem. Men hvis du av en eller annen grunn
har installert en eller flere punktgrafikkfonter, kan du
hindre dem i å bli brukt av Fontconfig ved å opprette følgende fil
som root bruker :
cat > /etc/fonts/conf.d/70-no-bitmaps.conf << "EOF"
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<!-- Reject bitmap fonts -->
<selectfont>
<rejectfont>
<pattern>
<patelt name="scalable"><bool>false</bool></patelt>
</pattern>
</rejectfont>
</selectfont>
</fontconfig>
EOF
I 90-synthetic.conf det finnes
eksempler på å aktivere syntetisk skråstilt og dristig til en
font. Den syntetiske oppmuntrende kan brukes på en synlig
svak skrift, men resultatene er ikke alltid like forventet:
Med bare embolden, Epiphany
viste mørkere skrifter mens Firefox gjorde ikke - så selv om
Cairo brukes nå av
firefox kommentaren om
innstilling av vekt er ennå gyldig. Men setter begge deler,
Epiphany vil vise fet skrift
tekst som standard, men den vil vise tung tekst hvis markup
for fet brukes. I begge tilfeller heller ikke libreOffice eller falkon viste tykkere tekst.
Normalt er systemfonter og brukerfonter installert i mapper
under stedene spesifisert i Xft Font
Protokoll og det er ingen åpenbar grunn til å plassere
dem andre steder. Imidlertid en full BLFS installasjon av
texlive-20240312 putter mange
fonter i /opt/texlive/2024/texmf-dist/fonts/ i
opentype/ og truetype/ undermapper. Selv om å trekke inn
alle disse filene kan virke nyttige (det lar deg bruke dem i
ikke TeX programmer), det er
flere problemer med en slik tilnærming:
Det er hundrevis av filer, noe som gjør det vanskelig å velge fonter.
Noen av filene gjør rare ting, for eksempel å vise semaforflagg i stedet for ASCII bokstaver, eller kartlegge kyrilliske kodepunkter til tegnformer passende for gammelkirkeslavisk i stedet for det forventede nåværende form: greit hvis det er det du trenger, men smertefullt for normalt bruk.
Flere fonter har flere størrelser og ugjennomtrengelige korte navn, som begge gjør det enda vanskeligere å velge riktig font.
Når en font legges til CTAN, er den ledsaget av TeX pakker for å bruke de i gamle motorene (xelatex trenger normalt ikke dette), og da er versjonen ofte frosset mens fonten vedlikeholdes separat. Noen av disse fontene som f.eks Dejavu fonts er sannsynligvis allerede installert på BLFS systemet i en nyere versjon, og hvis du har flere versjoner av en font er det uklart hvilken som skal brukes av Fontconfig.
Noen ganger er det imidlertid nyttig å se på disse skriftene
i ikke-TeX applikasjoner, om bare for å se om du ønsker å
installere en nåværende versjon. Hvis du har installert alle
texlive, følgende eksempel
vil lage en av Arkandis Open Type fontene tilgjengelig for
andre applikasjoner, og alle tre av ParaType TrueType fonter.
Juster eller gjenta linjene etter ønske, for enten å lage
alle opentype/ eller
truetype fonter tilgjengelig,
eller for å velge forskjellige fontmapper. Som root bruker:
cat > /etc/fonts/conf.d/09-texlive.conf << "EOF"
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<dir>/opt/texlive/2024/texmf-dist/fonts/opentype/arkandis/berenisadf</dir>
<dir>/opt/texlive/2024/texmf-dist/fonts/truetype/paratype</dir>
</fontconfig>
EOF
Hvis du gjør dette, husk å endre alle forekomster av året i den filen når du oppgraderer texlive til en senere utgivelse.
Med unntak av nettsider som bruker WOFF fonter og enten deler dem eller lenker til google for å laste dem ned, har nettsider tradisjonelt foreslått en liste over foretrukne fontfamilienavn hvis de brydde seg (f.eks. Times New Roman, Serif). Det er mange grunner til at folk ønsker å ha sider som spesifiserer en foretrukket font, bruker en annen font, eller foretrekker spesifikke fonter i Monospace eller Sans eller Serif. Som du forventer, det er en rekke forskjellige måter å oppnå dette på.
Fontconfig installerer
brukerdokumentasjon som inkluderer et eksempel
'Brukerkonfigurasjonsfil' som bl.a foretrekker WenQuanYi ZenHei (en Sans font) hvis
en Serif font er
forespurt for kinesisk (denne delen kan være anakronistisk
med mindre du har ikke-gratis kinesiske fonter, fordi i
65-nonlatin.conf denne fonten
er allerede blant foretrukne fonter når Serif er spesifisert
for kinesisk) og foretrekke moderne VL Gothic font hvis en Sans
font er spesifisert på en Japansk side (ellers ville et par
andre fonter være foretrukket hvis de er installert).
Hvis du har installert gjeldende versjon, er
brukerdokumentasjonen tilgjengelig i HTML, PDF og tekst
versjoner på /usr/share/doc/fontconfig-2.15.0/ : endre
versjonen hvis du installerte en annen versjon.
For eksempel, hvis du av en eller annen grunn ønsket å bruke Nimbus Roman No9 L font uansett hvor det refereres til Times New Roman (de er metrisk lik, og foretrukket for Times Roman, men Serif-fonten fra Liberation fonts vil bli foretrukket for Times New Roman font hvis installert), som en individuell bruker kan du installere fonten og deretter lage følgende fil:
mkdir -pv ~/.config/fontconfig/conf.d &&
cat > ~/.config/fontconfig/conf.d/35-prefer-nimbus-for-timesnew.conf << "EOF"
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<!-- prefer Nimbus Roman No9 L for Times New Roman as well as for Times,
without this Tinos and Liberation Serif take precedence for Times New Roman
before Fontconfig falls back to whatever matches Times -->
<alias binding="same">
<family>Times New Roman</family>
<accept>
<family>Nimbus Roman No9 L</family>
</accept>
</alias>
</fontconfig>
EOF
Dette er noe du vanligvis ville gjort i en individuell
brukerinnstilling, men filen i dette tilfellet har fått
prefikset '35-' slik at den kan om ønskelig brukes over hele
systemet i /etc/fonts/conf.d/.
Følgende eksempel på en lokal konfigurasjon (dvs. en som gjelder for alle brukere av maskinen) gjør flere ting. Det er spesielt passende der det ikke er angitt noe språk, eller for lesing av CJK tekst i et ikke-CJK lokalitet, og hvor de japanske formene for kodepunktene deles med kinesere foretrekkes. Spesielt alternativ tilnærminger ville være å spesifisere en kinesisk font foran en japansk font, noe som betyr at bare Kana symboler vil bli brukt fra den japanske fonten, eller for å ikke spesifisere DejaVu slik at den første fonten i hvert sett av preferanser foretrekkes for tekst som bruker latinske alfabeter.
Hvis en Serif font er spesifisert, foretrekker den
Dejavu fonts. Hvis Han kodepunkter
blir funnet, eller det japanske språket er spesifisert,
Mincho-fonten fra IPAex fonts vil bli brukt. Hvis
Hangul kodepunkter er funnet eller det koreanske
språket er spesifisert, UnBatang (se Korean
fonts) vil bli brukt: Endre den linjen Hvis du
installerte en annen koreansk serif font. Etter det,
WenQuanYi ZenHei (Sans, men en
standard for Serif og monospace) brukes. En tidligere
versjon av denne siden nevnt bruker UMing som er en
tradisjonell kinesisk font som sendes med en gammel
conf-fil som foretrekker den for zh-tw og zh-hk språk
koder (og for sans-serif og monospace). Men uten
conf-filen, Fontconfig
vil bare behandle det som passende for zh-hk.
Conf-filen må redigeres til gjeldende stil og vil da
bli det prepended, så å spesifisere UMing hører ikke
hjemme i denne local.conf
filen.
For Sans Serif preferanser begynner igjen med Dejavu fonts, deretter VL Gothic for japansk før man faller tilbake til WenQuanYi Zen Hei som er Sans og dekker både kinesisk og koreansk Hangul.
Monospace fontene tvinges til de foretrukne Sans skriftene. Hvis teksten er på kinesisk eller koreansk da vil WenQuanYi ZenHei bli brukt.
I en ikke-CJK lokale er resultatet at passende fonter vil bli
brukt for alle varianter av kinesisk, japansk og
Hangul-koreansk (men japanske varianter av tegnene som deles
med kinesiske Han, vil bli brukt). Alle andre språk bør
allerede fungere hvis en font er til stede. Som root bruker:
cat > /etc/fonts/local.conf << "EOF"
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<alias>
<family>serif</family>
<prefer>
<family>DejaVu Serif</family>
<family>IPAexMincho</family>
<!-- WenQuanYi is preferred as Serif in 65-nonlatin.conf,
override that so a real Korean font can be used for Serif -->
<family>UnBatang</family>
</prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer>
<family>DejaVu Sans</family>
<family>VL Gothic</family>
<!-- This assumes WenQuanYi is good enough for Korean Sans -->
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>DejaVu Sans Mono</family>
<family>VL Gothic</family>
<!-- This assumes WenQuanYi is good enough for Korean Monospace -->
</prefer>
</alias>
</fontconfig>
EOF
Noen skrifter, spesielt kinesiske skrifter, leveres med conf
filer som kan være installert i /etc/fonts/conf.d. Men hvis du gjør det og
deretter bruker en terminal til å kjøre en hvilken som helst
kommando som bruker Fontconfig du kan se feilmeldinger som
f.eks som :
Fontconfig warning:
"/etc/fonts/conf.d/69-odofonts.conf", line 14: Having
multiple <family> in <alias> isn't supported and
may not work as expected.
I praksis fungerer ikke disse gamle reglene. For ikke-CJK brukere, Fontconfig vil vanligvis gjøre en god jobb uten disse reglene. Deres opprinnelse går tilbake til når CJK brukere trengte håndlagde punktgrafikk for å være lesbare i små størrelser, og de så stygge ut ved siden av kantutjevnede latinske glyfer - de foretrakk å bruke samme CJK skrift for de latinske tegnene. Det er en bivirkning ved å gjøre dette : fonten (Serif) brukes ofte også for Sans, og i en slik situasjon den (engelsk) teksten i Gtk menyene vil bruke denne fonten - sammenlignet med systemfonter, i tillegg til at den er serif både svak og ganske liten. Det kan gjøre det ubehagelig å lese.
Likevel kan disse gamle conf filene fikses hvis du ønsker å
bruke dem. Følgende eksempel er den første delen av
64-arphic-uming.conf fra
UMing - det
er mange flere lignende elementer som også må endres :
<match target="pattern">
<test qual="any" name="lang" compare="contains">
<string>zh-cn</string>
<string>zh-sg</string>
</test>
<test qual="any" name="family">
<string>serif</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>AR PL UMing CN</string>
</edit>
</match>
Prosessen for å rette opp dette er grei, men kjedelig - for
alle elementer som produserer en feilmelding ved å bruke
redigeringsprogrammet (som root bruker) rediger den installerte
filen for å gjenta hele blokken så mange ganger som det er
flere variabler, reduser deretter hvert eksempel til å ha
bare ett av dem. Du kan ønske å jobbe med en feil om gangen,
lagre filen etter hver rettelse, og fra en eget terminal kjør
en kommando som f.eks fc-list
2>&1 | less for å se at reparasjonen
fungerte. For blokken ovenfor, den reparerte versjonen vil
være :
<match target="pattern">
<test qual="any" name="lang" compare="contains">
<string>zh-cn</string>
</test>
<test qual="any" name="family">
<string>serif</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>AR PL UMing CN</string>
</edit>
</match>
<match target="pattern">
<test qual="any" name="lang" compare="contains">
<string>zh-sg</string>
</test>
<test qual="any" name="family">
<string>serif</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>AR PL UMing CN</string>
</edit>
</match>
Da denne siden og neste side først ble opprettet, kom latinske fonter med maksimalt to vekter - enten vanlig eller bok (bok typisk har en større X-høyde for å gjøre det lettere å lese i store tekstblokker), og fet - og kanskje en kursiv (eller skråstilt) stil. Noen få fonter hadde også Kondenserte overflater (for å passe inn mer tekst i en linje og brukes vanligvis bare når spesifisert). Uten CSS-markering (Cascading Style Sheets) brukte teksten Vanlig eller bokvekt unntatt når <b> ... </b> markering var brukes til fet tekst. Kursive stiler vil bli påberopt av <i> ... </i> markup, sammen med fet markup for fet kursiv.
Noen overflater inneholder nå opptil 9 vekter, muligens også
med variabel skrift (for å spare plass ved å inkludere alle
alternativene i én fil og ev tillater mellomvekter). For de
fleste skrivebordsbrukere som ikke trenger dette bredt utvalg
av vekter for å lage innhold, er det enklere å bare
installere en eller to vekter. Hvis et overflate har
individuell vekt pluss en variabel skrift, den variable
fonten er vanligvis på toppnivået i den medfølgende mappen,
med individuelle vekter i en static/ undermappe. Bortsett fra når du
først vurderer en skrift, gir det ingen mening å installer
både statisk og variabel, og heller ikke alle mulige vekter.
Vektene er merket fra 100 (tynn) til 900 (svart eller tung) i CSS terminologi, hvor 400 er normal og 700 fet. Hele settet med vekter er beskrevet på Tabell over CSS fontvekter.
Hvis du har installert en font med en rekke vekter, kan du kopiere font-weights.html til din lokale maskin. Som sendt vil den bruke din standard Serif font forutsatt du har en. Rediger den for å peke på en spesifikk installert font ved å bruke navnet kjent for Fontconfig (også i *EDITME FONTNAME* tekstelementer) og åpne den fra skrivebordsnettleseren. Du kan også bruke den til å se på en skrift med bare to installerte vekter, f.eks. for testing for å se om du foretrekker andre vekter.
Til tross for detaljene i den Mozilla lenken, ser det ut til at hvis bare normal og fete vekter er installert, SemiBold (600) vises med fet skrift.
Det ser ut til å være et lite rom for å endre hvilke vekter som brukes til normal og fet hvis bare to vekter er installert. Firefox, og sannsynligvis andre nettlesere, vil se etter den neste vekten tyngre enn normalt. Hvis det er mindre enn fet (Medium, kanskje SemiFet - usikker) det vil bli brukt til normal og deretter neste høyere vekt, hvis noen vil være brukes for fet skrift, slik at du kan gjøre skriftene litt mørkere. Omvendt, hvis bare en vekt mindre enn normalt er installert, for eksempel Light, det vil bli brukt for både normale og fete vekter (søket oppover skjer først).
Hvis du fjerner noen vekter av en systemfont, må du kanskje
kjøre fc-cache
som root bruker og logg
deretter helt ut for å tømme hurtiglagre knyttet til brukeren
din.
Flere skrivebordsmiljøer, samt noen programmer, vil bruke Fontconfig for å finne fonter, men kan overstyre visse ting.
GNOME: Innstillingene i org.gnome.desktop.interface kan bli oppdatert med dconf-editor. Du kan stille inn fontene til din preferanse og ønsket punktstørrelse. For å bruke skriftene valgt av Fontconfig spesifisere f.eks. 'Sans 12', Serif 11', 'Mono 10' etter ønske. Se også gjennom antialiasing, hinting og rgba innstillinger. Alternativt, gnome-tweaks-46.1 kan også oppdatere fontinnstillingene i et GUI skjema.
LXQt: Endre fontinnstillinger etter behov for å samsvare Fontconfig i lxqt-config-appearance.
KDE Plasma: Innstillingene kan justeres i System Settings under Appearance -> Fonts eller i Edit -> Preferences av den enkelte applikasjonen.
Xfce desktop: Innstillingene kan justeres i Settings -> Appearance -> Fonts. Spesifiser dine foretrukne fonter, f.eks. 'Sans Regular' (for å bruke normal overflate og vekt i stedet for fet og/eller kursiv) og juster punktstørrelsen i alternativet. Se gjennom alternativene for gjengivelse og DPI.
Firefox: Denne nettleseren lar deg spesifisere dens standard fonter. For 128esr-serien, bruk "Hamburger"-menyen for å gå til Innstillinger, Generelt og under Fonts -> Advanced velg Sans Serif, Serif eller Monospace etter behov hvis du ønsker å bruke skriftene som samsvarer med Fontconfig. Still inn punktstørrelsene som ønsket. I senere versjoner er innstillingene på Preferences -> Fonts.
Libreoffice: Tester med engelsk tekst med en gammel japansk font (HanaMinA) som støtter flere europeiske språk men hadde bare én vekt og ingen kursiv eller skråstilte viste at selv om Libreoffice bruker Fontconfig for å finne fonten laget den sin egen fet eller skråstilt tekst. Det er ikke klart om det vil gjøre det samme hvor en font faktisk har fet vekt eller en kursiv stil. Det viser også dokumentasjon at Libreoffice har sine egne erstatningsregler for når et kodepunkt ikke finnes i den valgte fonten, men er uklart om disse reglene gjelder på Linux som bruker Fontconfig.
Pango: som nevnt i
eksempelet ~/.config/fontconfig
ovenfor, alt som bruker Pango-1.44 (fra 2019) eller senere
bruker nå Harfbuzz for hint,
FreeType, og hintfull er ikke støttet.
Thunderbird: Skriftinnstillingene kan endres ved å gå til "Rediger -> Innstillinger" og deretter rulle ned til "Fonts & Colors".
Blogginnleggene av Eevee er spesielt nyttige hvis Fontconfig ikke tror den valgte fonten støtter språket ditt, og for å foretrekke noen ikke-MS japanske fonter når en stygg MS-font allerede er installert.
Dokumentasjonen til FreeType v40 tolken på freetype docs forklarer hvordan gjeldende hinter fungerer, og hvorfor den forrige (langsomme) Infinality tolk ble byttet ut.
Et gammelt svar på
askubuntu gir noen detaljer om beregning av en skjerms
punkter per tomme, men i hovedsak måler du bare bredden og
høyden på det synlige panelet, konverterer til tommer hvis du
bruker metriske mål, og del på antall piksler. Da kan du
sende -dpi når du starter Xorg
ved å bruke din egen verdi.
90
Kanskje mer enn du noen gang ønsket å vite er på Mozilla CSS docs.
Hvis du bruker hinting og har en TTF (ikke OTF) font som mangler hint men tillater deg å forgrene den, kan du kanskje bruke hint ved å bruke ttfautohint som er basert på den gamle autohinteren. Fra og med versjon 1.8.4 klarer den ikke å bygge uten Qt5.
Arch har mye informasjon i sin wiki på font_configuration.
Gentoo har noe informasjon i sin wiki på Fontconfig selv om mange av detaljene (hva du skal aktivere, og Infinality) er spesifikke for Gentoo.
Opprinnelig ga Xorg kun punktgrafikkfonter. Senere, ble noen skalerbare Type1 fonter lagt til, men skrivebordsverdenen gikk videre til å bruke TrueType og Open Type fonter. For å støtte disse bruker Xorg Xft, X FreeType grensesnittbibliotek, med Fontconfig (se forrige side for detaljer, inkludert hvordan fonter velges og forskjellige årsaker til at en font kan bli ignorert).
Noen få fonter er gitt som samlinger (TTC eller OTC) hvor skriftdata deles mellom forskjellige fonter, og sparer dermed diskplass. Behandle disse nøyaktig på samme måte som individuelle TTF eller OTF filer.
Hvis en skrift gir både TTF og OTF skjemaer, bør du foretrekke OTF skjemaet i linux, det kan gi flere funksjoner for programmer som vet hvordan de skal brukes (som xelatex). TTF filene til disse fontene inneholder vanligvis hint, se Antyding og Anti-aliasing og Elementer som kan overstyre Fontconfig for grunner til at hint kan være uønsket eller ubrukelig.
En font kan ha flere variasjoner. For eksempel Noto Sans har 9 vekter (ExtraLight, Light, Thin, Normal, Medium, SemiBold, Bold, ExtraBold, and Black) og 2 stiler (vanlig og kursiv), altså 18 varianter totalt. Normalt leveres hver variant som en separat TTF eller OTF fil. For full dekning må du installere alle disse TTF eller OTF filene. Selv om du har lite diskplass, bør du fortsatt installere to vekter (Regular and Bold) med to stiler (Normal og kursiv) hvis skriften har disse variasjonene. Noen fonter har ikke kursiv stil (for eksempel de fleste CJK fonter og noen monospace fonter), og noen fonter har bare én variant (for eksempel Noto Sans Math, den gir bare glyphen til noen matematikk symboler).
Noen fonter er også tilgjengelige som variable fontfiler. I motsetning til en vanlig fontfil som bare inneholder én variant, en variabel fontfil inneholder uendelige variasjoner. Hver variant kan defineres av applikasjonen som bruker denne fonten ved å tildele tall til én eller flere variabler. Det er også forhåndsdefinerte navngitte instanser analogt med de tradisjonelle variasjonene. For eksempel, med den variable versjonen av Noto Sans, vektvariabel kan tildeles et hvilket som helst tall som ikke er mindre enn 100 og ikke større enn 900, og 9 navngitte forekomster er forhåndsdefinert: ExtraLight for vekt=100, Regular for vekt=400, Bold for vekt=700 osv. Så når en variabel variabel fontfil for Noto Sans er installert, vil alle 9 navngitte forekomster (eller “variasjoner”) være tilgjengelig. Merk at helningen ikke er definert som en variabel i variabelversjonen av Noto Sans, så Regular og Italic er fortsatt tradisjonelle varianter og en separat variabel fontfil er nødvendig for kursiv varianten.
En fil med variable fonter er åpenbart mer fleksibel enn vanlig statiske) fontfiler. Det er ekstremt nyttig for å finjustere skrift for websider eller publikasjoner. Og størrelsen på en variabel fontfil er vanligvis betydelig mindre enn den totale størrelsen på flere statiske fontfiler for flere varianter. For eksempel den variable fontfilen for Noto Sans SC er bare 11M, mens den totale størrelsen på 9 statiske fontfiler for Noto Sans SC er 91M. Men du må sørge for at programmene dine virkelig støtter variable fonter før du installerer en. For eksempel, lualatex støtter variabel font men xelatex gjør det ikke. Så hvis du vil bruke en font for en artikkel og bruker xelatex for setting, må du ikke installere filene med variabel skrift.
For informasjon om variable fonter, se Variable Fonts.
For noen skript pango er påkrevd for å gjengi ting riktig, enten ved å velge forskjellige glyffvarianter, eller ved å kombinere glyffer - i begge tilfeller, i henhold til konteksten. Dette gjelder spesielt Arabiske og Indiske skrifter.
Standard skalerbare fonter som følger med X gir svært dårlig Unicode dekning. Du vil kanskje legge merke til det i applikasjoner som bruker Xft at noen tegn vises som en boks med fire binære sifre inni. I dette tilfellet, en font med nødvendige glyfer er ikke funnet. Andre ganger, applikasjoner som ikke bruker andre fontfamilier som standard og ikke godtar erstatninger fra Fontconfig vil vise tomme linjer når standardfonten ikke dekker ortografien til brukerens språk.
Fontene som er tilgjengelige for et program er de som var til stede da det ble startet, så hvis du legger til en ekstra font og ønsker å bruke den i et program som for øyeblikket kjører, så må du lukke og starte det programmet på nytt.
Noen mennesker er glade for å ha dusinvis, eller til og med hundrevis, av skriftfiler tilgjengelig, men hvis du noen gang ønsker å velge en spesifikk font på en skrivebordapplikasjon (for eksempel i en tekstbehandler) og deretter bla gjennom mange skrifttyper for å finne den rette er tregt og vanskelig - færre er bedre. Så for noen fontpakker kan du bestemme deg for å installere bare en av skriftene - men installer likevel de forskjellige variantene (kursiv, fet, osv.) siden disse er alle varianter for samme skriftnavn.
Tidligere anbefalte alle å kjøre fc-cache som root bruker etter installasjon eller
fjerning av fonter, men dette er ikke lenger nødvendig på
linux, Fontconfig vil gjøre
det automatisk om nødvendig og hvis hurtiglagrene er mer enn
30 sekunder gamle. Men hvis du legger til en font og vil
bruke den umiddelbart, så kan du kjøre den kommandoen som en
vanlig bruker.
Det er flere referanser nedenfor til CJK karakterer. Dette står for Kinesisk, japansk og koreansk, selv om moderne koreansk nå er nesten alt skrevet ved hjelp av de fonetiske Hangul-glyfer (det pleide noen ganger å bruke Hanja glyfer som ligner på kinesisk og japansk). Unicode bestemte seg for å gå for Han Unification og å kartlegge noen kinesiske og japanske glyfer til de samme kodepunktene. Dette var svært upopulær i Japan, og resultatet er at forskjellige fonter vil gjengi noen kodepunkter i ganske forskjellige former. I tillegg forenklet Kinesisk vil noen ganger bruke samme kodepunkt som tradisjonell kinesisk men vil vise det annerledes, noe analogt med de forskjellige formene som brukes for bokstavene 'a' og 'g' på engelsk (en-etasjes og to-etasjes), bortsett fra at man i en språksammenheng vil se "feil" ut snarere enn bare "annerledes".
I motsetning til de fleste andre pakker i denne boken, overvåker ikke BLFS redaktørene versjonene av fontene på denne siden - når en font er god nok for generell bruk er de typiske tilleggene i en ny versjon mindre (f.eks. nye valutasymboler, eller glyffer som ikke er for et moderne språk, for eksempel emojis eller spillekort). Derfor viser ingen av disse fontene versjon eller md5 informasjon.
Listen nedenfor vil ikke gi fullstendig Unicode dekning. Unicode oppdateres hvert år, og de fleste tilleggene er nå for historiske skrivesystemer. For nesten fullstendig dekning kan du installere et fullt sett med Noto fonts (det er egne fonter for forskjellige skrivesystemer). Vi pleide å anbefale Unicode Font Guide, men det har ikke blitt oppdatert siden 2008, og mange av koblingene er døde.
Rendrete eksempler på de fleste av disse fontene, og mange andre, med detaljer om hvilke språk de dekker, finner du på font-comparison nettsiden.
Fonter leveres ofte i zip filer, som krever UnZip-6.0 for å liste og pakke dem ut, men selv om den nåværende utgivelsen er en tarball, bør du fortsatt sjekke om det vil opprette en mappe (å spre innholdet i en zip fil eller tarball på tvers av gjeldende mappe kan være veldig rotete, og noen få fonter lager __MACOSX/ mapper). I tillegg, mange fonter leveres med tillatelser som ikke tillater "andre" brukere å lese dem - hvis en font skal installeres for systemomfattende bruk, evt mapper må være modus 755 og alle filene modus 644, så du må endre dem hvis tillatelsene er forskjellige. Hvis du glemmer, root brukeren kan kanskje se en bestemt skrift i fc-list, men en vanlig bruker vil ikke kunne bruke dem.
Som et eksempel på fontinstallasjon, vurder installasjonen av
Dejavu fonts. I denne spesielle pakken,
TTF filene er i en undermappe. Fra den utpakkede kildemappen,
kjør følgende kommandoer som root bruker:
install -v -d -m755 /usr/share/fonts/dejavu && install -v -m644 ttf/*.ttf /usr/share/fonts/dejavu && fc-cache -v /usr/share/fonts/dejavu
Hvis du ønsker det, kan du også installere eventuelle
lisenser eller annen dokumentasjon, enten ved siden av fonten
eller i en tilsvarende mappe under /usr/share/doc/.
Noen få fonter leveres med kilden så vel som med fullførte TTF eller OTF fil(er). Med mindre du har tenkt å endre fonten, og har de riktige verktøyene (noen ganger FontForge-20230101, men ofte kommersielle verktøy), kilden vil ikke gi noen fordel, så ikke installer den. En eller to fonter vil til og med sendes med Web Open Font Format (WOFF) filer - nyttig hvis du kjører en webserver og ønsker å bruke den fonten på nettstedet ditt, men ikke nyttig for et skrivebordssystem.
For å gi større Unicode dekning, bør du installere noen av de følgende fonter, avhengig av hvilke nettsteder og språk du vil lese. Den neste delen av denne siden beskriver noen fonter som dekker minst latinske alfabeter, og den siste delen tar for seg noen CJK problemer.
Installasjon av Dejavu fonts anbefales på det sterkeste.
Caladea (opprettet som en ekstra font for Chrome OS) er metrisk kompatibel med MS Cambria og kan brukes hvis du må redigere et dokument som noen startet i Microsoft Office med Cambria.
Cantarell fonts – Cantarell skrifttypefamilien gir en moderne humanist Sans Serif. Den er spesielt optimalisert for lesbarhet i små størrelser og er den foretrukne skriftfamilien for GNOME brukergrensesnittet.
Carlito (opprettet som en ekstra Chrome OS skrifttype) er metrisk kompatibel med MS Calibri og kan brukes hvis du må redigere et dokument som noen startet i Microsoft Office ved hjelp av Calibri.
DejaVu fonter – Disse fontene er en utvidelse av og erstatning for, Bitstream Vera fontene og gi latinbaserte skript med aksenter og tegnsetting som "smarte anførselstegn" og variantavstand tegn, samt kyrilliske, greske, arabiske, hebraiske, armenske, georgiske og noen andre glyfer. I fravær av Bitstream Vera fonter (som hadde mye mindre dekning), disse var standard reserve skrifttyper for 'latinske' språk. Fra og med Fontconfig-2.14, hvis Noto 'Latin' fonter er installert de vil bli prioritert foran DejaVu.
GNU FreeFont – Dette settet med fonttyper dekker mange ikke-CJK tegn, men glyfer er relativt små (i motsetning til Noto og DejaVu skrifter som er relativt stor) og ganske lett («mindre svart» når den er svart på hvit brukes) som betyr at de i noen sammenhenger som terminaler er ikke visuelt tiltalende, for eksempel når de fleste andre glyfer er gitt med en annen font. På den annen side, noen fonter brukes primært for trykt utdata, og mange CJK fonter, er også lette.
Gelasio er metrisk kompatibel med MS Georgia og Fontconfig vil bruke det hvis noen gang MS Georgia er forespurt, men ikke installert.
Liberation fonter gi libre erstatninger for Arial, Courier New, og Times New Roman. Fontconfig vil bruke dem som erstatter for disse skriftene, og også for lignende Helvetica, Courier, og Times Roman, selv om den for disse sistnevnte kan foretrekke en annen font (se eksemplene i PDF-er på typosetting.co.uk).
Mange vil finne Liberation fontene nyttige for sider hvor en av disse fontene er forespurt.
Microsoft Kjernefonter De ble levert med gamle versjoner av Microsoft Windows og ble tilsynelatende gjort tilgjengelig for generell bruk. Du kan pakke dem ut fra 'exe' filene ved å bruke bsd-tar fra libarchive-3.7.4. Sørg for å lese lisensen før du bruker dem. En gang noen av disse skriftene (spesielt Arial, Times New Roman, og til en mindre utstrekning Courier New) var mye spesifisert på nettsider. Hele settet inneholder Andale Mono, Arial, Arial Black, Comic Sans MS, Courier New, Georgia, Impact, Times New Roman, Trebuchet MS, Verdana og Webdings.
Vær oppmerksom på at hvis du bare vil bruke en font med samme beregninger (tegnstørrelse osv.) som Arial, Courier New eller Times New Roman kan du bruke libre Liberation Fonts (over), og på samme måte kan du erstatte Georgia med Gelasio.
Selv om mange gamle innlegg anbefaler å installere disse fontene for utdata som ser bedre ut, mindre gamle innlegg sier at disse er «stygg» eller «ødelagt» med moderne Fontconfig, Freetype og Pango. De fleste vil ikke installere noen av disse fontene.
De nyere fontene som Microsoft har gjort som sine standardinnstillinger i senere utgivelser av MS Windows eller MS Office (Calibri og Cambria) har aldri vært fritt tilgjengelig. Men hvis du ikke har dem installert, kan du finne metrikk ekvivalenter (Carlito og Caladea) ovenfor.
Noto fonter ('No Tofu', dvs. unngå bokser med prikker [hexadekte sifre] når en glyph ikke kan bli funnet) er et sett med fonter som tar sikte på å dekke hver glyph i unicode, uansett hvor obskur.
Personer som bruker språk skrevet kun med latinske, greske eller kyrilliske alfabeter må installere Noto Sans, Noto Serif og/eller Noto Sans Mono. For mer informasjon om organiseringen av Noto fonter, se how are noto fonts organized. Det er også separate fonter for hvert andre gjeldende skriftsystemer, men de dekker ikke tekst på latin språk.
Disse tre fontene er førstevalgspreferansene til Fontconfig for tekst i disse tre alfabetene, og de oppdateres ofte for å dekke nyere Unicode tillegg som utvidelser for fonetisk transkripsjon i Latinske og kyrilliske alfabeter.
Det kan være lettere å laste ned en bestemt Noto-font ved å gå til Noto Sans og endre fontnavnet etter behov, med '+' mellom hvert ord, f.eks. 'Noto+Kufi+Arabic', 'Noto+Serif+Georgian' eller hva som helst, og klikk deretter på 'Download family'.
For Noto CJK fontene er det lettere å finne det spesifikke zip arkivet du ønsker på Github. Gå til https://github.com/notofonts/noto-cjk/releases/ og se etter den nyeste Sans eller Serif versjonen med sin egen oppdaterte nedlastings guide og dens eiendeler. Nedlastingsveiledningene skal hjelpe deg å identifisere hvilken zip fil som passer best til dine behov.
Noto Sans er den foretrukne fonten for KDE Plasma og applikasjoner, unntatt for monospace fonter hvor Hack er foretrukket.
For skrivesystemer som ikke bruker det latinske, greske eller kyrilliske alfabetet Noto fonter er ikke foretrukket av Fontconfig. Hvis du bruker en Noto font for et moderne språk der en annen installert font også dekker det (f.eks DejaVu fonter dekker flere høyre-til-venstre alfabeter), kan det hende du må angi en preferanse for Fontconfig - se forrige side.
Dette settet med fonter fra Adobe (sju forskjellige vekter) inkluderer det som er nå den foretrukne monospace fonten for de programmene som bruker gsettings-desktop-schemas-46.1. The github release source-code-pro inneholder OTF (foretrukket) og TTF samt kilde og WOFF fontene.
For å bruke dette i terminaler vil du sannsynligvis bare ha Regular fonten.
Det finnes også en eldre TTF versjon av denne tilgjengelig fra Google fonts men det har svært begrenset dekning (tilstrekkelig for de fleste Europeiske språk som bruker et latinsk alfabet).
For indiske språk, Fontconfig foretrekker nå Lohit fonter (sanskrit for 'rød'). De finner du på pagure.org
Som angitt tidligere, bruk av en kombinasjon av kinesisk, japansk og koreanske tegn kan være vanskelige - hver skrift dekker bare en delmengde av de tilgjengelige kodepunktene kan de foretrukne formene til glyfene variere mellom språkene, og mange av CJK-fontene støtter faktisk ikke moderne koreansk.
Også, Fontconfig foretrekker kinesisk fremfor japansk som standard. Tuning dekkes på Foretrekke valgte CJK fonter.
Selv om Unicode har blitt utvidet til å tillate et veldig stort antall CJK kodepunkter, de utenfor grunnplanet (større enn U+0xFFFF) er det ikke ofte brukt på mandarin (den normale formen for skriftlig kinesisk, enten Forenklet (fastlands-Kina, Malaysia og Singapore) eller tradisjonell (Hong Kong og Taiwan)), eller japansk.
For Hong Kong, som bruker tradisjonell kinesisk og hvor kantonesisk er dominerende språk, ble Hong Kong Supplementary Character Set lagt til Unicode i 2005 og revidert i 2009 (det er en del av CJK Extension B og nneholder mer enn 1900 tegn). Tidligere fonter vil ikke kunne støtter enten kantonesisk eller bruk disse tegnene der lokale navn er skrevet på mandarin. UMing HK, Noto Sans HK og WenQuanYi Zen Hei fonter ser alle ut til å dekke bruken i Hong Kong (Fontconfig er uenig om Noto Sans HK).
Han glyfer er dobbel bredde, andre tegn i samme font kan være smalere. For deres CJK innhold kan alle disse fontene betraktes som monospaced (dvs. fast bredde).
Hvis du ønsker å bruke Noto fonter, finnes det også Serif
versjoner av deres ulike CJK fonter. Noto Sans/Serif
SC/TC/HK/JP/KR fontene er avledet fra en monolitikk noto-cjk depot,
og du kan finne .ttc filer for
hele Noto Sans CJK (inkludert SC/TC/HK/JP/KR) eller Noto
Serif CJK fontfamilie der. Google anbefaler vanlige brukere å
bruke den separate Noto Sans/Serif SC/TC/HK/JP/KR fonter i
stedet, men hvis du er i stand til og villig til å lese
tekster i mer enn ett CJK karaktersystem kan det være lettere
å bruke en monolittisk .ttc fil
for full dekning.
Hvis alt du ønsker å gjøre er å gjengi CJK glyfer, å installere WenQuanYi ZenHei kan være et godt sted å starte hvis du ikke allerede har en preferanse.
På kinesisk er det tre fontstiler i vanlig bruk: Sung (også kjent som Song eller Ming), som er den mest vanlige ornamenterte ("serif") form, Kai ("penselstrøk") som er en tidligere ornamentert stil som ser ganske annerledes ut, og moderne Hei ("sans"). Med mindre du setter pris på forskjeller, vil du sannsynligvis ikke installere Kai fonter.
De gjeldende versjonene av kinesiske Noto Sans fonter finner du på Noto Sans SC for Forenklet kinesisk, Noto Sans TC for Tradisjonell kinesisk, og som nevnt ovenfor Noto Sans HK til bruk i Hong Kong.
En kopi av versjon 1.4.2 av opendesktop-fonts er bevart ved Arch. Dette var en senere utvikling av fireflysung som BLFS pleide å anbefale, for å legge til Kai og Mono fonter. Navnet på Sung skrifttypen forblir 'AR PL New Sung', så de kan ikke installeres sammen.
På et tidspunkt var det en 1.6 utgivelse, og mer nylig noen versjoner på github, som også inkluderte en Sans font (Odohei), men de har falt utenfor nettet, og det er uklart om det var et problem. Fontconfig vet ikke noe om senere fonter (AR PL New Kai, AR PL New Sung Mono) og vil som standard behandle dem som Sans.
UMing fonts – sett med kinesiske Ming fonter (fra Debian,
bruk '.orig' tarball) i en ttc som inneholder varianter av
forenklet og tradisjonell kinesisk (Taiwanesisk, med andre
variant for forskjellige bopomofo, og
kantonesisk for Hong Kong). Dette leveres med gamle
syntaksfiler som du kan installere til /etc/fonts/conf.d/ men se Redigering av
gammeldagse conf filer.
WenQuanYi Zen Hei gir en Sans-Serif font som dekker alle CJK skript inkludert koreansk. Selv om det inkluderer gammeldagse conf filer, er disse ikke obligatorisk: Fontconfig vil allerede behandle disse skriftene (den "skarpe" inneholder punktgrafikk, monospace vises ikke å være Mono i sin ASCII del) som Sans, Serif og Monospace. Hvis alt du ønsker å gjøre er å kunne gjengi Han og koreansk tekst uten bekymre deg for finhetene til figurene som brukes, hovedfonten fra denne pakken er en god font og bruke.
På japansk er gotiske fonter Sans, og Mincho er Serif. BLFS pleide å nevne bare Kochi fontene, men de ser ut til å være det nå minst foretrukket av de japanske skriftene.
Bortsett fra skriftene som er beskrevet nedenfor, bør du også vurdere Noto Sans JP.
IPAex fonts er gjeldende versjon av IPA fontene. Bruk Google Translate på hjemmesiden, klikk deretter på nedlastingslenken for IPAex Font Ver.004.01. Dessverre, Fontconfig vet bare om de eldre IPA fontene og den forgrenede IPA Mona fonten (som ikke er lett tilgjengelig og som tilsynelatende ikke oppfyller Debians frie programvare retningslinjer). Hvis du installerer IPAex fontene, kan det være lurt å gjøre det kjent til Fontconfig. Se Foretrekke valgte CJK fonter for en måte å oppnå dette på.
Kochi Erstatningsfonter var de første virkelig frie japanske skriftene (de tidligere Kochi fontene ble angivelig plagiert fra en kommersiell font).
VL Gothic fonten er en moderne japansk font i to varianter med monotont eller proporsjonalt mellomrom for ikke-japanske tegn.
På koreansk er Batang eller Myeongjo (det eldre navnet) Serif, Dotum eller Gotisk og er de viktigste Sans skriftene. BLFS anbefalte tidligere Baekmuk fontene, men Nanum og Un fontene er nå foretrukket fremfor Baekmuk av Fontconfig på grunn av brukerforespørsler.
Et praktisk sted å se eksempler på disse og mange andre
koreanske fonter er Free Korean Fonts.
Klikk på 'Gothic Fonts' eller 'All Categories -> Myeongjo
Fonts', klikk deretter på fonteksemplet for å se flere
detaljer, inkludert Lisens, og klikk på lenken for å laste
den ned. For Nanum trenger du å kunne lese koreansk for å
finne nedlastingslenken på siden du kommer til. For Un er det
direkte lenker og du kan finne un-fonts-core tarball i
releases/ mappen.
Alternativt kan du vurdere Noto Sans KR or WenQuanYi ZenHei.
Xorg sin stamfar (X11R1, i 1987) først ga bare punktgrafikkfonter, med et verktøy (bdftopcf) for å hjelpe til med installasjonen. Med introduksjonen av xorg-server-1.19.0 og libXfont2 mange mennesker vil ikke trenge dem. Det er fortsatt noen få gamle pakker som kan kreve, eller dra nytte av, disse utdaterte skriftene, og derfor vises følgende pakker her.
font-adobe-100dpi pakken installerer 100 punkter per tomme versjoner av Courier, Helvetica, New Century Schoolbook og Times.
De resterende fontpakkene her gir 75dpi versjoner av disse skriftene, og diverse diverse fonter - mest for eldre kodinger. Det er først og fremst for å dempe advarsler når du tester Xorg. I tidligere versjoner av BLFS ble mye flere eldre fonter installert.
Vennligst se BLFS-7.10 systemd boken på https://www.linuxfromscratch.org/blfs/view/7.10-systemd/x/x7font.html hvis du ønsker å installere noen av de andre fontene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/
Nedlastingsstørrelse: 4.2 MB
Estimert diskplass som kreves: 30 MB
Estimert byggetid: 0.3 SBU
Lag først en liste over filer som skal lastes ned. Denne filen vil også brukes til å bekrefte integriteten til nedlastingene når de er fullført:
cat > legacy.dat << "EOF"
e09b61567ab4a4d534119bba24eddfb1 util/ bdftopcf-1.1.1.tar.xz
20239f6f99ac586f10360b0759f73361 font/ font-adobe-100dpi-1.0.4.tar.xz
2dc044f693ee8e0836f718c2699628b9 font/ font-adobe-75dpi-1.0.4.tar.xz
2c939d5bd4609d8e284be9bef4b8b330 font/ font-jis-misc-1.0.4.tar.xz
6300bc99a1e45fbbe6075b3de728c27f font/ font-daewoo-misc-1.0.4.tar.xz
fe2c44307639062d07c6e9f75f4d6a13 font/ font-isas-misc-1.0.4.tar.xz
145128c4b5f7820c974c8c5b9f6ffe94 font/ font-misc-misc-1.1.3.tar.xz
EOF
For å laste ned de nødvendige filene ved hjelp av Wget-1.24.5, bruk følgende kommandoer:
mkdir legacy &&
cd legacy &&
grep -v '^#' ../legacy.dat | awk '{print $2$3}' | wget -i- -c \
-B https://www.x.org/pub/individual/ &&
grep -v '^#' ../legacy.dat | awk '{print $1 " " $3}' > ../legacy.md5 &&
md5sum -c ../legacy.md5
Når du installerer flere pakker i et skript, installasjonen må gjøres som root bruker. Det er tre generelle alternativer som kan brukes til å gjøre dette:
Kjør hele skriptet som root bruker (ikke anbefalt).
Bruk sudo kommandoen fra Sudo-1.9.15p5 pakken.
Bruk su -c "command arguments" (anførselstegn kreves) som vil be om root passordet for hver iterasjon av løkken.
En måte å håndtere denne situasjonen på er å lage en kort bash funksjon som automatisk velger riktig metode. Når kommandoen er satt i miljøet, trenger den ikke å bli satt på nytt.
as_root()
{
if [ $EUID = 0 ]; then $*
elif [ -x /usr/bin/sudo ]; then sudo $*
else su -c \\"$*\\"
fi
}
export -f as_root
Start først et underskall som avsluttes ved feil:
bash -e
Installer alle pakkene ved å kjøre følgende kommandoer:
for package in $(grep -v '^#' ../legacy.md5 | awk '{print $2}')
do
packagedir=${package%.tar.?z*}
tar -xf $package
pushd $packagedir
./configure $XORG_CONFIG
make
as_root make install
popd
rm -rf $packagedir
as_root /sbin/ldconfig
done
Til slutt går du ut av skallet som ble startet tidligere:
exit
Dette kapittelet inneholder ikke biblioteker som kreves for å kjøre X. Den inneholder biblioteker som forbedrer X. I noen tilfeller er forbedringen så enkel som fontstøtte. I andre er det like komplekst som biblioteker som sitter mellom X og applikasjoner som kjører på X hvis formål er å standardisere utseendet og følelse og kommunikasjon mellom prosesser for ulike applikasjoner. Det hjelper også programmerere å levere vanlige elementer.
Atkmm er det offisielle C++ grensesnittet for ATK biblioteket for tilgjengelighetsverktøy.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/atkmm/2.28/atkmm-2.28.4.tar.xz
Nedlasting MD5 sum: e0f7271990c89a6c9987f215ba47bfc5
Nedlastingsstørrelse: 724 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: 0.2 SBU
Installer Atkmm ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Atkmm er det offisielle C++-grensesnittet for ATK bibliotek for tilgjengelighetsverktøy. Denne versjonen er en del av et nytt API for å støtte gtkmm-4.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/atkmm/2.36/atkmm-2.36.3.tar.xz
Nedlasting MD5 sum: 8b03a39a5e3dd0d3c040ece345f7a786
Nedlastingsstørrelse: 780 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.2 SBU
Installer Atkmm ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
At-Spi2 Core pakken inneholder en omfattende tilgjengelighetsrammeverk for hjelpemidler tilgjengelig på GNOME plattformen. Dette inkluderer et sett med grensesnitt som er implementert av andre verktøysett og applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/at-spi2-core/2.52/at-spi2-core-2.52.0.tar.xz
Nedlasting MD5 sum: e6591545b2bf204fe9a58f777bd0b78a
Nedlastingsstørrelse: 564 KB
Estimert diskplass som kreves: 15 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
dbus-1.14.10, GLib-2.80.4 (GObject Introspection påkrevd for GNOME), gsettings-desktop-schemas-46.1 (Kjøretid), og Xorg Biblioteker
Installer At-Spi2 Core ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Nå, som root bruker:
ninja install
Testpakken krever at glib skjemaene til pakken allerede er installert. Testene må også kjøres i et grafisk miljø. For å teste resultatene, installer pakken først, deretter utsted: dbus-run-session ninja test.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D docs=true: Bruk denne bryteren
hvis du vil bygge dokumentasjon. Merk at du må ha både
Gi-DocGen-2024.1 og sphinx-8.0.2
installert på systemet ditt.
Cairo er et 2D grafikkbibliotek med støtte for flere utdataenheter. For tiden støttede utdatamål inkluderer X Vindussystem, Win32, image buffers, PostScript, PDF and SVG. Eksperimentelle bakstykker inkluderer OpenGL, Quartz og XCB fil utdata. Cairo er designet for å produsere konsistent utdata på alle utskriftsmedier mens du drar nytte av skjermen sin maskinvareakselerasjon når tilgjengelig (f.eks., gjennom X Render Utvidelse). Cairo API gir operasjoner som ligner på tegningsoperatørene til PostScript og PDF. Operasjoner i Cairo inkludere stryke og fylle kubikk Bézier splines, transformere og komponere gjennomsiktige bilder, og kantutjevnet tekstgjengivelse. Alle tegneoperasjoner kan transformeres av hvilken som helst affine transformation (skala, rotasjon, skjæring osv.)
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cairographics.org/releases/cairo-1.18.0.tar.xz
Nedlasting MD5 sum: 3f0685fbadc530606f965b9645bb51d9
Nedlastingsstørrelse: 32 MB
Estimert diskplass som kreves: 98 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
libpng-1.6.43 og Pixman-0.43.4
Fontconfig-2.15.0, GLib-2.80.4 (påkrevd for de fleste GUIer), og Xorg Biblioteker
ghostscript-10.03.1, GTK+-3.24.43, GTK-Doc-1.34.0, libdrm-2.4.122, librsvg-2.58.3, libxml2-2.13.3, LZO-2.10, Mesa-24.1.5, Poppler-24.08.0, Valgrind-3.23.0, GTK+-2, jbig2dec, libspectre, og Skia
Det er en sirkulær avhengighet mellom cairo og harfbuzz. Hvis cairo bygges før harfbuzz, er det nødvendig å gjenoppbygge cairo etter harfbuzz for å bygge pango.
Installer Cairo ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken har ikke en fungerende testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D xlib-xcb=enabled: Denne
bryteren aktiverer flere eksperimentelle Xlib/XCB funksjoner
brukt av noen vindusbehandlere.
-D gtk_doc=true: Bruk denne
parameteren hvis GTK-Doc er installert og du ønsker å
opprette og installere dokumentasjonen.
|
genererer en logg over alle anrop fra en applikasjon til Cairo |
|
|
inneholder 2D grafikkfunksjonene som kreves for å gjengi ulike produksjonsmål |
|
|
inneholder funksjoner som integrerer Cairo med Glib sin GObject type system |
|
|
inneholder skripttolkerfunksjonene for å utføre og manipulere Cairo utførelsesspor |
libcairomm-1.0 pakken gir et C++ grensesnitt til Cairo.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cairographics.org/releases/cairomm-1.14.5.tar.xz
Nedlasting MD5 sum: 0974ef291d491f22df287f588580677d
Nedlastingsstørrelse: 638 KB
Estimert diskplass som kreves: 9.5 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Cairo-1.18.0 og libsigc++-2.12.1
Boost-1.86.0 (for tester)
Installer Cairomm-1.0 ved å kjøre følgende kommandoer:
mkdir bld &&
cd bld &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D build-tests=true \
-D boost-shared=true &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
-D build-tests=true:
Denne bryteren er for å bygge enhetstestene. Fjern hvis du
ikke har installert Boost-1.86.0.
-D boost-shared=true:
Denne bryteren lar pakken bruke den delte versjonen av boost
biblioteker. Det kreves hvis du ikke har installert de
statiske boost bibliotekene, og du har gitt -Dbuild-tests=true.
-D build-documentation=true:
Denne bryteren bygger html dokumentasjon hvis doxygen er
installert.
libcairomm-1.16 pakken gir et C++ grensesnitt til Cairo. Denne versjonen av API er nødvendig for å støtte gtkmm-4.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.cairographics.org/releases/cairomm-1.18.0.tar.xz
Nedlasting MD5 sum: 4c7afc4ab5177655724ea4b31794db30
Nedlastingsstørrelse: 620 KB
Estimert diskplass som kreves: 25 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Cairo-1.18.0 og libsigc++-3.6.0
Boost-1.86.0 (for tester)
Installer Cairomm-1.16 ved å kjøre følgende kommandoer:
mkdir bld &&
cd bld &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D build-tests=true \
-D boost-shared=true &&
ninja
For å kjøre testpakken, kjør: ninja test.
Nå, som root bruker:
ninja install
-D build-tests=true:
Denne bryteren er for å bygge enhetstestene. Fjern hvis du
ikke har installert Boost-1.86.0.
-D boost-shared=true:
Denne bryteren gjør at pakken bruker den delte versjonen av
boost bibliotekene. Det kreves hvis du ikke har installert de
statiske boost bibliotekene, og du har sendt -D build-tests=true.
-D build-documentation=true:
Denne bryteren bygger html dokumentasjon hvis doxygen er
installert.
Colord GTK pakken inneholder GTK+ bindinger for Colord.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/colord/releases/colord-gtk-0.3.1.tar.xz
Nedlasting MD5 sum: d436740c06e42af421384f16b2a9a0a7
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 2.1 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (med GObject Introspection), GTK-4.14.5, og Vala-0.56.17
Hvis du bygger dokumentasjonen ninja -j1 må brukes.
Installer Colord GTK ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk4=true \
-D vapi=true \
-D docs=false \
-D man=false \
.. &&
ninja
For å teste resultatene, kjør: ninja test. Testene må kjøres fra en X økt, og kan kreve en fargeprofil for din primære skjerm.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D vapi=true: Denne
bryteren aktiverer bygging av Vala bindingene. Fjern denne
bryteren hvis du ikke har Vala-0.56.17 installert.
-D gtk4=true: Denne
bryteren gjør det mulig å bygge GTK-4 bindingene for colord.
Sett dette alternativet til 'false' hvis du ikke har
GTK-4.14.5 installert.
-D docs=false: Denne
bryteren deaktiverer bygging av gtk-doc basert dokumentasjon.
Selv om gtk-doc er installert, vil du trenge namespaced
versjonene av Docbook XSL stilarkene.
-D man=false: Denne
bryteren deaktiverer generering av manualsidene for denne
pakken. Fjern denne bryteren hvis du har namespaced versjoner
av Docbook XSL stilarkene installert.
FLTK (uttalt "fulltick") er et C++ GUI verktøysett på tvers av plattformer. FLTK gir moderne GUI funksjonalitet og støtter 3D grafikk via OpenGL og dets innebygde GLUT emuleringsbiblioteker som brukes til å lage grafiske brukergrensesnitt for applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://fltk.org/pub/fltk/1.3.9/fltk-1.3.9-source.tar.gz
Nedlasting MD5 sum: 6e7a389f97b420bc31f99edd3522a85e
Nedlastingsstørrelse: 5.4 MB
Estimert diskplass som kreves: 122 MB (med dokumentasjon)
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4)
hicolor-icon-theme-0.18, libjpeg-turbo-3.0.1, og libpng-1.6.43
alsa-lib-1.2.12, desktop-file-utils-0.27, Doxygen-1.12.0, GLU-9.0.3, Mesa-24.1.5, og texlive-20240312 (eller install-tl-unx)
Tar sin ekstraksjonsmappe er fltk-1.3.9 og ikke fltk-1.3.9-source som angitt av tarball navnet.
Installer FLTK ved å kjøre følgende kommandoer:
sed -i -e '/cat./d' documentation/Makefile &&
./configure --prefix=/usr \
--enable-shared &&
make
Hvis du ønsker å lage API dokumentasjonen, kjør:
make -C documentation html
Testene for pakken er interaktive. For å utføre testene, kjør
test/unittests.
I tillegg kommer 70 andre kjørbare testprogrammer i
test mappen som kan kjøres
individuelt.
Nå, som root bruker:
make docdir=/usr/share/doc/fltk-1.3.9 install
Hvis ønskelig, installer noen eksempelspill bygget som en del
av testene, ekstra dokumentasjon og eksempelprogrammer. Som
root bruker:
make -C test docdir=/usr/share/doc/fltk-1.3.9 install-linux && make -C documentation docdir=/usr/share/doc/fltk-1.3.9 install-linux
sed ...
documentation/Makefile: Unngå å installere
sider i /usr/share/man/cat*.
|
er et FLTK basert blokkelimineringsspill |
|
|
er en FLTK basert versjon av damspillet |
|
|
er et hjelpeskript som kan brukes til å få informasjon om gjeldende versjon av FLTK som er installert på systemet |
|
|
er en interaktiv GUI designer for FLTK |
|
|
er en implementering av det populære Sudoku spillet |
|
|
inneholder funksjoner som gir en API for å implementere grafisk brukergrensesnitt |
Freeglut er ment å være en 100% kompatibel, fullstendig åpen kildekode kloning av GLUT biblioteket. GLUT er et vindussystemuavhengig verktøysett for å skrive OpenGL programmer, implementere en enkel vindus API, som gjør læring og utforsking av OpenGL programmering veldig enkelt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/freeglut/freeglut-3.6.0.tar.gz
Nedlasting MD5 sum: 1a1c4712b3100f49f5dea22a1ad57c34
Nedlastingsstørrelse: 420 KB
Estimert diskplass som kreves: 5.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Freeglut ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D FREEGLUT_BUILD_DEMOS=OFF \
-D FREEGLUT_BUILD_STATIC_LIBS=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
-D
FREEGLUT_BUILD_DEMOS=OFF: Deaktiver bygging av
valgfrie demoprogrammer. Merk at hvis du velger å bygge dem,
må installasjonen gjøres manuelt. Demoprogrammene er
begrenset og installasjon anbefales ikke.
-D
FREEGLUT_BUILD_STATIC_LIBS=OFF: Ikke bygg det
statiske biblioteket.
Gdk Pixbuf pakken er et verktøysett for bildelasting og pikselbuffermanipulering. Den brukes av GTK+ 3 for å laste og manipulere bilder. Tidligere ble det distribuert som en del av GTK+ 2, men den ble delt opp i en egen pakke som forberedelse til endringen til GTK+ 3.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gdk-pixbuf/2.42/gdk-pixbuf-2.42.12.tar.xz
Nedlasting MD5 sum: f986fdbba5ec6233c96f8b6535811780
Nedlastingsstørrelse: 6.2 MB
Estimert diskplass som kreves: 33 MB (med tester)
Estimert byggetid: 0.2 SBU (Med tester)
GLib-2.80.4 (GObject Introspection påkrevd for GNOME), libjpeg-turbo-3.0.1, libpng-1.6.43, og shared-mime-info-2.4
docutils-0.21.2, librsvg-2.58.3 (kjøretidsavhengighet, nødvendig for lasting av symbolske ikoner) og libtiff-4.6.0
Gi-DocGen-2024.1 (for å generere dokumentasjon), libavif-1.1.1 (kjøretidsavhengighet, nødvendig for å laste AVIF bilder), libjxl-0.10.3 (kjøretidsavhengighet, nødvendig for å laste JPEG XL bilder), og webp-pixbuf-loader-0.2.7 (kjøretidsavhengighet, nødvendig for å laste WebP bilder)
Installer Gdk Pixbuf ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D others=enabled \
--wrap-mode=nofallback &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "/docs_dir =/s@\$@ / 'gdk-pixbuf-2.42.12'@" -i ../docs/meson.build && meson configure -D gtk_doc=true && ninja
For å teste resultatene, kjør: ninja test. Testene bruker av disken(e) mye.
Nå, som root bruker:
ninja install
Hvis du installerte pakken på systemet ditt ved hjelp av
“DESTDIR” metoden, en viktig fil ble
ikke installert og bør kopieres og/eller genereres. Generer
den ved å bruke følgende kommando som root bruker:
gdk-pixbuf-query-loaders --update-cache
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
--wrap-mode=nofallback: Denne
bryteren forhindrer meson fra å bruke
delprosjektets tilbakefall for evt avhengighetserklæringer i
byggefilene, og stopper nedlastingen av eventuell valgfrie
avhengigheter som ikke er installert på systemet.
-D others=enabled:
Aktiver lasterne for ulike bildeformater, for eksempel BMP og
XPM.
-D man=false: Bruk dette
alternativet hvis du ikke vil generere manualsider, eller
hvis du ikke vil installere docutils-0.21.2.
|
er et lite verktøy som genererer C kode som inneholder bilder, brukt for å kompilere bilder direkte inn i programmer |
|
|
er et verktøy som brukes til å konvertere GdkPixbuf til GdkPixdata |
|
|
samler informasjon om lastbare moduler for Gdk Pixbuf og skriver det til standard hurtiglagerplassering, eller til stdout |
|
|
lager miniatyrbilder av bilder for bruk i andre applikasjoner |
|
|
inneholder funksjoner som brukes til å laste og gjengi bilder |
GLEW er OpenGL Wrangler Utvidelsebibliotek.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/glew/glew-2.2.0.tgz
Nedlasting MD5 sum: 3579164bccaef09e36c0af7f4fd5c7c7
Nedlastingsstørrelse: 820 KB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer GLEW ved å kjøre følgende kommandoer:
sed -i 's%lib64%lib%g' config/Makefile.linux &&
sed -i -e '/glew.lib.static:/d' \
-e '/0644 .*STATIC/d' \
-e 's/glew.lib.static//' Makefile &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install.all
sed -i 's%lib64%lib%g'
...: Dette sikrer at biblioteket er
installert i /usr/lib.
sed -i -e '/glew.lib.static:/d' ...: Dette undertrykker det statiske biblioteket.
make install.all: Dette installerer også programmene samt biblioteket.
Glslang Pakken inneholder et grensesnitt og en validator for OpenGL, OpenGL ES og Vulkan shaders.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/glslang/archive/14.3.0/glslang-14.3.0.tar.gz
Nedlasting MD5 sum: 90eec8d14a8d1002389e00ab449c7ca8
Nedlastingsstørrelse: 3.7 MB
Estimert diskplass som kreves: 174 MB (med tester
Estimert byggetid: 0.3 SBU (med parallellitet=4; med tester)
Installer Glslang ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D ALLOW_EXTERNAL_SPIRV_TOOLS=ON \
-D BUILD_SHARED_LIBS=ON \
-D GLSLANG_TESTS=ON \
-G Ninja .. &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
-D
ALLOW_EXTERNAL_SPIRV_TOOLS=ON: Denne bryteren
tillater byggesystemet å bruke den systeminstallerte kopien
av SPIRV-Tools-1.3.290.0, i stedet
for å laste ned og installerer sin egen kopi.
-D
BUILD_SHARED_LIBS=ON: Denne bryteren bygger delte
versjoner av bibliotekene, og installerer ikke statiske
versjoner av dem.
-D GLSLANG_TESTS=ON:
Denne bryteren bygger tester for pakken.
|
gir et grensesnitt og en validator for OpenGL, OpenGL ES og Vulkan shaders |
|
|
inneholder funksjoner som gir et grensesnitt og en validator for OpenGL, OpenGL ES og Vulkan shaders til andre programmer |
|
|
gir et grensesnitt og en generator for SPIR-V binærfiler |
|
|
gir en remapper for SPIR-V binærfiler |
Denne pakken inneholder Mesa OpenGL Verktøy biblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.mesa3d.org/glu/glu-9.0.3.tar.xz
Nedlasting MD5 sum: 06a4fff9179a98ea32ef41b6d83f6b19
Nedlastingsstørrelse: 216 KB
Estimert diskplass som kreves: 5.9 MB
Estimert byggetid: 0.2 SBU
Installer GLU ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
-D gl_provider=gl \
--buildtype=release &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå som root bruker:
ninja install && rm -vf /usr/lib/libGLU.a
GOffice pakken inneholder et bibliotek med GLib/GTK dokument sentriske objekter og verktøy. Dette er nyttig for å utføre felles operasjoner for dokumentsentriske applikasjoner som er konseptuelt enkle, men komplisert å implementere fullt ut. Noen av operasjonene levert av GOffice biblioteket inkluderer støtte for programtillegg, last inn/lagre rutiner for søknadsdokumenter og angre/gjør om funksjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/goffice/0.10/goffice-0.10.57.tar.xz
Nedlasting MD5 sum: 4c55f99d8fafe1f91276cb7538521fdb
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 81 MB (med tester)
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4; med tester)
GTK+-3.24.43, libgsf-1.14.52, librsvg-2.58.3, libxslt-1.1.42, og Which-2.21
GLib-2.80.4 (med GObject Introspection), ghostscript-10.03.1, gsettings-desktop-schemas-46.1, GTK-Doc-1.34.0, Lasem, og libspectre
Installer GOffice ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Hvis du ønsker å kjøre testene, kjør: make check.
Nå, som root bruker:
make install
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
Grantlee er et sett med gratis programvarebiblioteker skrevet med Qt rammeverket. For øyeblikket sendes to biblioteker med Grantlee: Grantlee Templates og Grantlee TextDocument. Målet med Grantlee maler er å gjøre det enklere for applikasjonsutviklere å skille strukturen av dokumenter fra dataene de inneholder, og åpner døren for tema.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/steveire/grantlee/releases/download/v5.3.1/grantlee-5.3.1.tar.gz
Nedlasting MD5 sum: 4ef8eae5dd61e3c7603d76208eb4d922
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4)
CMake-3.30.2 og qt5-components-5.15.14
Doxygen-1.12.0 (for dokumentasjon)
Installer Grantlee ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Graphene pakken gir et tynt lag med typer for grafikkbiblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/graphene/1.10/graphene-1.10.8.tar.xz
Nedlasting MD5 sum: 169e3c507b5a5c26e9af492412070b81
Nedlastingsstørrelse: 328 KB
Estimert diskplass som kreves: 7.6 MB
Estimert byggetid: mindre enn 0.1 SBU (med tester)
GLib-2.80.4 (med GObject Introspection)
Installer Graphene ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dgtk_doc=true: Bruk denne
bryteren hvis du har GTK-Doc-1.34.0 installert og ønsker å
generere API dokumentasjonen.
GTK+ 3 pakken inneholder biblioteker som brukes til å lage grafiske brukergrensesnitt for applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtk+/3.24/gtk+-3.24.43.tar.xz
Nedlasting MD5 sum: 226e372664a7fae749a50a04983ecd8d
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 252 MB (legg til 8 MB for tester)
Estimert byggetid: 0.8 SBU (bruk parallellisme=4, legg til 0,2 SBU for tester)
at-spi2-core-2.52.0, gdk-pixbuf-2.42.12, libepoxy-1.5.10, og Pango-1.54.0
adwaita-icon-theme-46.2 (ved kjøretid; standard for noen gtk+3 innstillingstaster og også nødvendig for en test), docbook-xsl-nons-1.79.2 (for å generere manualsider), hicolor-icon-theme-0.18 (needed for tests), ISO Codes-4.16.0, libxkbcommon-1.7.0, libxslt-1.1.42 (for å generere manualsider), sassc-3.6.2, Wayland-1.23.0, og wayland-protocols-1.36
GLib-2.80.4 (med GObject Introspection)
colord-1.4.7, Cups-2.4.10, GTK-Doc-1.34.0, libcloudproviders-0.3.6, PyAtSpi2-2.46.1 (for tester), Tracker-3.7.3, og PAPI
Installer GTK+ 3 ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D man=true \
-D broadway_backend=true &&
ninja
For å teste resultatene trenger du en grafisk økt, og utfør deretter dbus-run-session ninja test.
Nå, som root bruker:
ninja install
En test navngitt check-cursor-names er kjent for å mislykkes
hvis adwaita-icon-theme-46.2 ikke er
installert.
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, en viktig fil ble
ikke installert og må kopieres og/eller genereres. Generer
den ved å bruke følgende kommando som root bruker:
gtk-query-immodules-3.0 --update-cache
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
-D
broadway_backend=true: Denne bryteren aktiverer
HTML5 GTK bakstykket.
-D man=true: Denne
bryteren tillater generering av manualsider.
-D gtk_doc=true: Denne bryteren
aktiverer bygging av dokumentasjonen. Det krever GTK-Doc-1.34.0.
-D tracker3=true: Denne bryteren
aktiverer søke funksjonen basert på Tracker 3 i GTK+-3
filvelgerdialogen. Det krever Tracker-3.7.3.
-D cloudproviders=true: Bruk
denne bryteren hvis du har libcloudproviders-0.3.6
installert og ønsker å aktivere støtte for skyleverandører i
et filvelgervindu.
GTK+ 3 temaer endrer måten
en GTK+ 3 applikasjon ser
ut. Et ikontema kan brukes til å endre ikonene som vises på
programmets verktøylinje. Hvis du har installert en
GTK+ 3 tema (f.eks.
Adwaita temaet innebygd i GTK+
3), et ikontema (som f.eks oxygen-icons-6.0.0) og/eller en
font (Dejavu fonts), du kan angi dine
preferanser i ~/.config/gtk-3.0/settings.ini, eller
standard systemomfattende konfigurasjonsfil (som
root bruker), i
/etc/gtk-3.0/settings.ini.
For en lokal bruker et eksempel er:
mkdir -vp ~/.config/gtk-3.0
cat > ~/.config/gtk-3.0/settings.ini << "EOF"
[Settings]
gtk-theme-name = Adwaita
gtk-icon-theme-name = oxygen
gtk-font-name = DejaVu Sans 12
gtk-cursor-theme-size = 18
gtk-toolbar-style = GTK_TOOLBAR_BOTH_HORIZ
gtk-xft-antialias = 1
gtk-xft-hinting = 1
gtk-xft-hintstyle = hintslight
gtk-xft-rgba = rgb
gtk-cursor-theme-name = Adwaita
EOF
Det finnes mange innstillingsnøkler, noen med standardverdier. Du kan finne dem på Settings: GTK+ 3 Reference Manual. Det er mange flere temaer tilgjengelig på https://www.gnome-look.org/browse/ og andre steder.
Som en del av GTK+-3.0 sin redesign, er rullefeltknappene
ikke lenger synlig på rullefeltet i mange applikasjoner.
Hvis denne funksjonaliteten er ønsket, endre gtk.css filen og gjenopprett dem ved å
bruke følgende kommando:
cat > ~/.config/gtk-3.0/gtk.css << "EOF"
* {
-GtkScrollbar-has-backward-stepper: 1;
-GtkScrollbar-has-forward-stepper: 1;
}
EOF
|
gir støtte for å vise GTK+ 3 applikasjoner i en nettleser, ved hjelp av HTML5 og web-sockets |
|
|
er et enkelt program som demonstrerer noen av oppgavene som kan bli gjort med GTK+ 3 |
|
|
er en enkelt GTK+ 3 applikasjon |
|
|
er et verktøy for å utforske ikonene i det gjeldende ikontemaet. Den viser ikoner i ulike størrelser, deres symbolske varianter hvor tilgjengelig, samt en beskrivelse av ikonet og dets kontekst |
|
|
er et program å vise GTK+ 3 temaer og skjermelementer |
|
|
utfører ulike operasjoner på GtkBuilder .ui filer |
|
|
konverterer symbolske SVG ikoner til spesial forberedte PNG filer. GTK+ 3 kan laste inn og farge disse PNGene, akkurat som originale SVGer, men lasting av dem er mye raskere |
|
|
starter en applikasjon med det gitte navnet. Navnet
skal samsvare med programmets skrivebordsfilnavn,
som ligger i |
|
|
samler informasjon om lastbare inndata metodemoduler for GTK+ 3 og skriver den til standard hurtigbuffer filplassering, eller til standardutdata |
|
|
gir en fullstendig liste over alle innstillinger relatert til GTK+ 3 |
|
|
er et hurtigbufferverktøy for ikontema som lager mmap()able hurtigbufferfiler for ikontemaer |
|
|
inneholder funksjoner som implementerer tilgjengelighetsgrensesnittene definert av GNOME Tilgjengelighets Verktøysett |
|
|
inneholder funksjoner som fungerer som en innpakning rundt lavt nivå tegne og vindus funksjoner levert av det underliggende grafikksystemet |
|
|
inneholder funksjoner som gir en API for å implementere grafisk brukergrensesnitt |
GTK 4 pakken inneholder biblioteker som brukes til å lage grafiske brukergrensesnitt for applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtk/4.14/gtk-4.14.5.tar.xz
Nedlasting MD5 sum: 4d7c8edbdd0aed4048053ca9f805ade4
Nedlastingsstørrelse: 17 MB
Estimert diskplass som kreves: 711 MB (med dokumenter; legg til 66 MB for tester)
Estimert byggetid: 1.3 SBU (bruker parallellisme=4; med dokumenter; legg til 1.3 SBU for tester)
FriBidi-1.0.15, gdk-pixbuf-2.42.12, graphene-1.10.8, ISO Codes-4.16.0, libepoxy-1.5.10, libxkbcommon-1.7.0, Pango-1.54.0, PyGObject-3.48.2, og wayland-protocols-1.36
adwaita-icon-theme-46.2 (standard for enkelte gtk4 innstillingsnøkler), gst-plugins-bad-1.24.7, gst-plugins-good-1.24.7 (kjøretid, bygget med libvpx-1.14.1), hicolor-icon-theme-0.18 (nødvendig for tester og for standarder), og librsvg-2.58.3
GLib-2.80.4 (med GObject Introspection)
colord-1.4.7, Cups-2.4.10, docutils-0.21.2, Gi-DocGen-2024.1, Highlight-4.13 (kjøretid, bare brukt av gtk4-demo for syntaks utheving av demo kildekoden), libcloudproviders-0.3.6, sassc-3.6.2, Tracker-3.7.3, Vulkan-Loader-1.3.294, cpdb, glslc, og sysprof
Installer GTK 4 ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D broadway-backend=true \
-D introspection=enabled \
-D vulkan=disabled \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "s@'doc'@& / 'gtk-4.14.5'@" -i ../docs/reference/meson.build && meson configure -D documentation=true && ninja
For å kjøre testene, utsted: dbus-run-session meson test --setup
x11. Hvis du er i en Wayland økt, bytt ut x11
med wayland. Ni tester er kjent for å mislykkes hvis
Cantrell
fonts ikke er installert. Mange tester vil mislykkes hvis
~/.config/gtk-4.0/settings.ini
eksisterer og gtk-modules linjen ikke er kommentert ut. På
systemer med NVIDIA grafikkort kan testene ta betydelig
lengre enn testtiden ovenfor.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
broadway-backend=true: Denne bryteren aktiverer
HTML5 GDK bakstykket.
-D
introspection=enabled: Denne bryteren aktiverer å
bruke GObject Introspection til å generere GIR bindinger av
disse pakkene. Disse bindingene kreves av GNOME.
-D cloudproviders=enabled: Bruk
denne bryteren hvis du har libcloudproviders-0.3.6
installert og ønsker å aktivere støtte for skyleverandører i
et filvelgervindu.
-D tracker=enabled: Bruk denne
bryteren hvis du har Tracker-3.7.3 installert og ønsker å
bruke søkefunksjonalitet når du kjører en filvelger.
-D colord=enabled: Bruk denne
bryteren hvis du har colord-1.4.7 installert og ønsker å bruke
colord med CUPS utskrifts bakstykket.
-D man-pages=true: Bruk denne
bryteren hvis du har docutils-0.21.2 installert og ønsker å
generere manualsider.
-D sysprof=enabled: Bruk denne
bryteren hvis du har sysprof installert
og ønsker å aktivere sporingsstøtte for GTK4 baserte
applikasjoner.
-D vulkan=enabled: Bruk denne
bryteren hvis du har Vulkan-Loader-1.3.294
installert og ønsker å bygge det eksperimentelle Vulkan
bakstykket. Merk at du må ha glslc
installert hvis du bestemmer deg for å aktivere dette
alternativet.
GTK 4 temaer endrer måten
en GTK 4 applikasjonen ser
ut. Et ikontema kan brukes til å endre ikonene som vises på
programmets verktøylinje. Hvis du har installert et
GTK 4 tema (f.eks. Adwaita
temaet bygd i GTK 4), et
ikontema (som f.eks oxygen-icons-6.0.0) og/eller
en font (Dejavu fonts), kan du angi dine
preferanser i ~/.config/gtk-4.0/settings.ini, eller
standard systemomfattende konfigurasjonsfil (som
root bruker), i
/usr/share/gtk-4.0/settings.ini.
For en lokal bruker, et eksempel er:
mkdir -pv ~/.config/gtk-4.0
cat > ~/.config/gtk-4.0/settings.ini << "EOF"
[Settings]
gtk-theme-name = Adwaita
gtk-icon-theme-name = oxygen
gtk-font-name = DejaVu Sans 12
gtk-cursor-theme-size = 18
gtk-xft-antialias = 1
gtk-xft-hinting = 1
gtk-xft-hintstyle = hintslight
gtk-xft-rgba = rgb
gtk-cursor-theme-name = Adwaita
EOF
Det finnes mange innstillingsnøkler, noen med standardverdier. Du kan finne dem på Settings: GTK 4 Reference Manual.
|
gir støtte for visning av GTK 4 applikasjoner i en nettleser som bruker HTML5 og web-sockets |
|
|
utfører ulike operasjoner på GtkBuilder .ui filer |
|
|
er et enkelt program som viser noen av oppgavene som kan bli utført med GTK 4 |
|
|
er en enkel GTK 4 applikasjon som er nyttig for testing |
|
|
konverterer symbolske SVG ikoner til spesielle PNG filer. GTK 4 kan laste og farge disse PNGene på nytt, akkurat som originale SVGer, men laster dem mye raskere |
|
|
er et verktøy for å utforske ikonene i det gjeldende ikontemaet. Den viser ikoner i ulike størrelser, deres symbolske varianter når tilgjengelig, samt en beskrivelse av ikonet og dets kontekst |
|
|
starter en applikasjon med det gitte navnet. Navnet
skal samsvare applikasjonens .desktop filnavn (som
vist i |
|
|
er et verktøy for å vise og redigere gjengivelsesnodefiler. Slike gjengivelsesnodefiler kan hentes f.eks. fra GTK inspektøren |
|
|
er et enkelt program for å demonstrere utskrift med GTK 4 applikasjoner |
|
|
gir en fullstendig liste over alle innstillinger relatert til GTK 4 |
|
|
er et hurtigbufferverktøy for ikontema som lager mmap()able hurtigbufferfiler for ikontemaer |
|
|
er et program for å se GTK 4 temaer og skjermelementer |
|
|
inneholder funksjoner som gir en API for å implementere grafisk brukergrensesnitt |
Gtkmm pakken gir et C++ grensesnitt til GTK+ 3.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtkmm/3.24/gtkmm-3.24.9.tar.xz
Nedlasting MD5 sum: 47871a7973e186c1189b2145b507de15
Nedlastingsstørrelse: 14 MB
Estimert diskplass som kreves: 200 MB (med tester)
Estimert byggetid: 1.2 SBU (Bruker parallellisme=4; med tester)
Atkmm-2.28.4, GTK+-3.24.43, og Pangomm-2.46.4
Installer Gtkmm ved å kjøre følgende kommandoer:
mkdir gtkmm3-build && cd gtkmm3-build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test. Merk at du må være i et grafisk miljø, da testene prøver å åpne noen vinduer.
Nå, som root bruker:
ninja install
Hvis du har bygget dokumentasjonen (se kommandoforklaringer
nedenfor), den ble installert i /usr/share/doc/gtkmm-3.0. For konsistens,
flytt den til en versjonert mappe som root bruker:
mv -v /usr/share/doc/gtkmm-3.0 /usr/share/doc/gtkmm-3.24.9
-Dbuild-documentation=true: Hvis
du har installert Doxygen-1.12.0 denne definisjonen vil
bygge og installere dokumentasjon.
Gtkmm pakken gir et C++ grensesnitt til GTK-4.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtkmm/4.14/gtkmm-4.14.0.tar.xz
Nedlasting MD5 sum: 2e25e9c3f64793ff8b51bdd24196d78f
Nedlastingsstørrelse: 16 MB
Estimert diskplass som kreves: 206 MB (med tester)
Estimert byggetid: 1.3 SBU (Bruker parallellisme=4; med tester)
Atkmm-2.28.4, GTK-4.14.5, og Pangomm-2.54.0
Installer Gtkmm ved å kjøre følgende kommandoer:
mkdir gtkmm4-build && cd gtkmm4-build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test. Merk at du må være i et grafisk miljø, da testene prøver å åpne noen vinduer.
Nå, som root bruker:
ninja install
Hvis du har bygget dokumentasjonen (se Parameterforklaringer
nedenfor), den ble installert til /usr/share/doc/gtkmm-4.0. For konsistens,
flytt den til en versjonert mappen som root bruker:
mv -v /usr/share/doc/gtkmm-4.0 /usr/share/doc/gtkmm-4.14.0
-Dbuild-documentation=true: Hvis
du har installert Doxygen-1.12.0 denne definisjonen vil
bygge og installere dokumentasjon.
Gtk VNC pakken inneholder en VNC visningselement for GTK+. Den er bygget ved å bruke koroutiner som tillater at den skal være helt asynkron mens den forblir enkelttrådet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtk-vnc/1.3/gtk-vnc-1.3.1.tar.xz
Nedlasting MD5 sum: 27f0dc7f33cbfdaa6c9eb7cf169f4866
Nedlastingsstørrelse: 220 KB
Estimert diskplass som kreves: 5.2 MB
Estimert byggetid: 0.1 SBU
GnuTLS-3.8.7.1, GTK+-3.24.43, og libgcrypt-1.11.0
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17
Installer Gtk VNC ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
-Dwith-vala=false: Denne bryteren
deaktiverer bygging av Vala bindingene. Legg til dette hvis
du bestemmer deg for å bygge gtk-vnc uten vala installert.
GtkSourceView pakken inneholder biblioteker som brukes til å utvide GTK+ tekstfunksjoner for å inkludere syntaksutheving.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtksourceview/3.24/gtksourceview-3.24.11.tar.xz
Nedlasting MD5 sum: b748da426a7d64e1304f0c532b0f2a67
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 80 MB (med tester)
Estimert byggetid: 0.2 SBU (bruke parallellisme=4; med tester)
GLib-2.80.4 (med GObject Introspection)
Vala-0.56.17, Valgrind-3.23.0, GTK-Doc-1.34.0, itstool-2.0.7, fop-2.9 (eller dblatex), og Glade
Først, fiks å bygge denne pakken med gcc-14:
sed -i 's/g_object_ref (buffer)/g_object_ref (GTK_SOURCE_BUFFER (buffer))/' gtksourceview/gtksourceview.c
Installer GtkSourceView ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør make check. Testene må kjøres i et grafisk miljø.
Nå, som root bruker:
make install
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
GtkSourceView pakken inneholder biblioteker som brukes til å utvide GTK+ tekstfunksjoner for å inkludere syntaksutheving.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtksourceview/4.8/gtksourceview-4.8.4.tar.xz
Nedlasting MD5 sum: 2bf056caaae27654ec3a5930dd5597d3
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 71 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester; begge bruker parallellisme=4)
GLib-2.80.4 (med GObject Introspection) og libxml2-2.13.3
Vala-0.56.17, Valgrind-3.23.0, GTK-Doc-1.34.0, itstool-2.0.7, fop-2.9 (eller dblatex), og Glade
Installer GtkSourceView ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør ninja test. Testene må kjøres i et grafisk miljø.
Nå, som root bruker:
ninja install
-Dgtk_doc=true: Dette
alternativet er normalt brukt hvis GTK-Doc er installert og du ønsker å
gjenoppbygge og installere API dokumentasjonen.
GtkSourceView pakken inneholder et bibliotek som brukes til å utvide GTK tekstfunksjoner for å inkludere syntaksutheving.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtksourceview/5.12/gtksourceview-5.12.1.tar.xz
Nedlasting MD5 sum: 1a2e5289b6f37032271b3f96d8034751
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 47 MB
Estimert byggetid: 0.2 SBU (med tester; begge bruker parallellisme=4)
GLib-2.80.4 (med GObject Introspection) og libxml2-2.13.3
Gi-DocGen-2024.1, Vala-0.56.17, Valgrind-3.23.0, Vulkan-Loader-1.3.294, og sysprof
Installer GtkSourceView ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
-Ddocumentation=true: Bruk denne
bryteren hvis du har Gi-DocGen-2024.1 installert og ønsker
å generere API dokumentasjonen.
-Dsysprof=true: Bruk denne
bryteren hvis du har sysprof installert
og ønsker å bygge med sysprof profilstøtte.
imlib2 er et grafikkbibliotek for rask fillasting, lagring, gjengivelse og manipulering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/enlightenment/imlib2-1.12.3.tar.xz
Nedlasting MD5 sum: 93e5b769ed02a183dfd78569f7b0fbe3
Nedlastingsstørrelse: 816 KB
Estimert diskplass som kreves: 13 MB (med dokumenter)
Estimert byggetid: 0.2 SBU (med dokumenter)
giflib-5.2.2 og librsvg-2.58.3
Doxygen-1.12.0 (for API dokumentasjon), highway-1.2.0, libjpeg-turbo-3.0.1, libjxl-0.10.3, libpng-1.6.43, libtiff-4.6.0, libwebp-1.4.0, x265-3.6, libheif, libid3tag, libspectre
Installer imlib2 ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du genererte API dokumentasjonen, installer den som
root bruker:
install -v -m755 -d /usr/share/doc/imlib2-1.12.3/html && install -v -m644 doc/html/* /usr/share/doc/imlib2-1.12.3/html
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-doc-build: Denne
bryteren genererer API dokumentasjonen. Doxygen-1.12.0 må være
installert.
|
er for å teste imlib2 bumpmap funksjonen |
|
|
er for å teste imlib2 colorspace funksjonen |
|
|
konverterer bilder mellom formater |
|
|
tar skjermbilder |
|
|
laster og hurtiglagrer bilder |
|
|
er for å teste imlib2 poly funksjon |
|
|
er en imlib2 programtester |
|
|
er en imlib2 programtester |
|
|
viser bildefiler |
|
|
gir funksjonene for programmer for å håndtere ulike bildedataformater |
kColorPicker er et QToolButton bibliotek med en hurtigmeny med farger, som lar deg velge farger. Hurtigmenyen har en fargedialogknapp som kan brukes til å legge til egendefinerte farger i hurtigmenyen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/ksnip/kColorPicker/archive/v0.3.1/kColorPicker-0.3.1.tar.gz
Nedlasting MD5 sum: 1efc91252446af0d7e5c467ea7d517e7
Nedlastingsstørrelse: 16 KB
Estimert diskplass som kreves: 2.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer kColorPicker ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_SHARED_LIBS=ON \
-D BUILD_WITH_QT6=ON \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
kImageAnnotator er et verktøy for å kommentere bilder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/ksnip/kImageAnnotator/archive/v0.7.1/kImageAnnotator-0.7.1.tar.gz
Nedlasting MD5 sum: 68990dfe7fe03f1aff5e0e5338b9f3bb
Nedlastingsstørrelse: 264 KB
Estimert diskplass som kreves: 31 MB
Estimert byggetid: 0.6 SBU (Bruke parallellisme=4)
Installer kImageAnnotator ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_SHARED_LIBS=ON \
-D BUILD_WITH_QT6=ON \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
keybinder-3.0 pakken inneholder et verktøys bibliotek registrerer globale X tastatursnarveier for GTK+-3.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/kupferlauncher/keybinder/releases/download/keybinder-3.0-v0.3.2/keybinder-3.0-0.3.2.tar.gz
Nedlasting MD5 sum: 97260321fda721fce799174ea6ba10cf
Nedlastingsstørrelse: 370 KB
Estimert diskplass som kreves: 2.6 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (med GObject Introspection)
Installer keybinder-3.0 ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
libadwaita pakken gir ekstra GTK4 UI skjermelement for bruk i utvikling av brukergrensesnitt. Det er brukt primært for GNOME applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libadwaita/1.5/libadwaita-1.5.3.tar.xz
Nedlasting MD5 sum: 9be9ebe76f086a8535ff30918926dd07
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 73 MB (med tester)
Estimert byggetid: 0.4 SBU (med parallellitet=4; med tester)
Installer libadwaita ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed "s/apiversion/'1.5.3'/" -i ../doc/meson.build && meson configure -D gtk_doc=true && ninja
For å teste resultatene, kjør: ninja test. Testene må kjøres fra en grafisk sesjon.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
libei pakken inneholder et sett med biblioteker for håndtering av emulerte inndataer. Den er først og fremst rettet mot Wayland stakken.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/libinput/libei/-/archive/1.3.0/libei-1.3.0.tar.gz
Nedlasting MD5 sum: aeaffcb5afb5ad0bb9981eb93c4cd610
Nedlastingsstørrelse: 228 KB
Estimert diskplass som kreves: 5.4 MB
Estimert byggetid: mindre enn 0.1 SBU
libevdev-1.13.2, libxkbcommon-1.7.0, libxml2-2.13.3, munit, og structlog
Installer libei ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D tests=disabled && ninja
Denne pakken kommer med en testpakke, men den krever en ekstern avhengighet. Hvis du har både munit og structlog installert og ønsker å kjøre testpakken, kjør følgende kommandoer:
meson configure -D tests=enabled .. && ninja test
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
libgedit-amtk pakken inneholder en grunnleggende GTKUIManager erstatning basert på GAction.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gedit-technology.net/tarballs/libgedit-amtk/libgedit-amtk-5.8.0.tar.xz
Nedlasting MD5 sum: 1b2ad96c189dd1749b6526c6026e0618
Nedlastingsstørrelse: 60 KB
Estimert diskplass som kreves: 2.6 MB
Estimert byggetid: 0.1 SBU
GTK-Doc-1.34.0 (for dokumentasjon) og Valgrind-3.23.0
Installer libgedit-amtk ved å kjøre følgende kommandoer:
mkdir amtk-build &&
cd amtk-build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gtk_doc=false &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=false:
Denne bryteren forhindrer at byggesystemet genererer og
installerer API dokumentasjonen. Utelat denne bryteren hvis
du har GTK-Doc-1.34.0 installert og ønsker å
generere og installere API dokumentasjonen.
libgedit-gtksourceview pakken gir et bibliotek som utvider GtkTextView. Dette biblioteket legger til støtte for syntaksutheving, angre/gjør om, fillasting og lagring, søk og erstatt, et kompletteringssystem, utskrift, visning av linjenummer og andre funksjoner som er typiske for en kildekoderedigerer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/gedit-technology/libgedit-gtksourceview/releases/download/299.2.1/libgedit-gtksourceview-299.2.1.tar.xz
Nedlasting MD5 sum: d92e9d2b10478569e0b02fa347b6ef5f
Nedlastingsstørrelse: 636 KB KB
Estimert diskplass som kreves: 22 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
GTK+-3.24.43 og libxml2-2.13.3
Installer libgedit-gtksourceview ved å kjøre følgende kommandoer:
mkdir build-libgedit &&
cd build-libgedit &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
.. &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=false:
Deaktiverer bygging av API dokumentasjon. Fjern hvis du har
GTK-Doc-1.34.0 installert og ønsker å
bygge API dokumentasjonen.
libhandy pakken gir ekstra GTK UI skjermelementer for bruk i utvikling av brukergrensesnitt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libhandy/1.8/libhandy-1.8.3.tar.xz
Nedlasting MD5 sum: af586a91ff6d4093a6e7e283dfab5f7f
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 24 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Installer libhandy ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test. Testene skal kjøres fra en grafisk økt.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dgtk_doc=true: Bruk dette
alternativet hvis du har GTK-Doc-1.34.0 installert og
ønsker å installere dokumentasjonen.
Libdrm gir et brukerromsbibliotek for tilgang til direkte gjengivelsesbehandling (DRM) på operativsystemer som støtter ioctl grensesnittet. Libdrm er et bibliotek på lavt nivå, vanligvis brukt av grafikkdrivere som Mesa DRI drivere, X drivere, libva og lignende prosjekter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://dri.freedesktop.org/libdrm/libdrm-2.4.122.tar.xz
Nedlasting MD5 sum: 143c8df50e09cd1eeb1fb53f05ecb64a
Nedlastingsstørrelse: 472 KB
Estimert diskplass som kreves: 8.7 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Xorg Biblioteker (for Intel KMS API støtte kreves av Mesa)
Cairo-1.18.0 (for tester), CMake-3.30.2 (kan brukes til å finne avhengigheter uten pkgconfig filer), docbook-xml-4.5, docbook-xsl-nons-1.79.2, docutils-0.21.2, og libxslt-1.1.42 (for å bygge manual sider), libatomic_ops-7.8.2 (kreves av arkitekturer uten opprinnelige atomoperasjoner), Valgrind-3.23.0, og CUnit (for AMDGPU tester)
Installer libdrm ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=$XORG_PREFIX \
--buildtype=release \
-D udev=true \
-D valgrind=disabled \
.. &&
ninja
For å teste resultatene, kjør ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D udev=true: Denne
parameteren muliggjør støtte for bruk av Udev i stedet for mknod.
-D valgrind=disabled:
Denne parameteren deaktiverer bygging av libdrm med valgrind
støtte. Dette fikser å bygge noen pakker som bruker libdrm.
Endre denne parameteren til "aktivert" (eller fjern den) hvis
du trenger støtte for valgrind.
|
inneholder AMDGPU spesifikke Direct Rendering Manager funksjoner |
|
|
inneholder Intel spesifikke Direct Rendering Manager funksjoner |
|
|
inneholder open source nVidia (Nouveau) spesifikke Direct Rendering Manager funksjoner |
|
|
inneholder AMD Radeon spesifikke Direct Rendering Manager funksjoner |
|
|
inneholder Direct Rendering Manager API funksjoner |
libepoxy er et bibliotek for håndtering av OpenGL funksjonen pekerhåndtering.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libepoxy/1.5/libepoxy-1.5.10.tar.xz
Nedlasting MD5 sum: 10c635557904aed5239a4885a7c4efb7
Nedlastingsstørrelse: 220 KB
Estimert diskplass som kreves: 13 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Doxygen-1.12.0 (for dokumentasjon)
Installer libepoxy ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Ddocs=true: Hvis du har
Doxygen-1.12.0 installert, legg til
dette alternativet for å generere ytterligere dokumentasjon.
libnotify biblioteket brukes til å sende skrivebord varsler til en varslingsnisse, som definert på Desktop Notifications spec. Disse varslene kan brukes til å informere brukeren om en hendelse eller vise en eller annen form for informasjon uten å komme i brukerens vei.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libnotify/0.8/libnotify-0.8.3.tar.xz
Nedlasting MD5 sum: 952e55f45067b6a5b9eab4310c9cd658
Nedlastingsstørrelse: 104 KB
Estimert diskplass som kreves: 2.3 MB
Estimert byggetid: 0.1 SBU
GLib-2.80.4 (med GObject Introspection)
Gi-DocGen-2024.1 og xmlto-0.0.29
notification-daemon-3.20.0, xfce4-notifyd-0.9.6, eller lxqt-notificationd-2.0.1
GNOME Skall og KDE KWin gir deres egne varslingsnisser.
Installer libnotify ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
-D man=false \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed "/docs_dir =/s@\$@ / 'libnotify'@" \
-i ../docs/reference/meson.build &&
meson configure -D gtk_doc=true &&
ninja
Nå, som root bruker:
ninja install &&
if [ -e /usr/share/doc/libnotify ]; then
rm -rf /usr/share/doc/libnotify-0.8.3
mv -v /usr/share/doc/libnotify{,-0.8.3}
fi
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
libxklavier pakken inneholder et verktøybibliotek for X tastatur.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://people.freedesktop.org/~svu/libxklavier-5.4.tar.bz2
Nedlasting MD5 sum: 13af74dcb6011ecedf1e3ed122bd31fa
Nedlastingsstørrelse: 384 KB
Estimert diskplass som kreves: 5.2 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (GObject Introspection anbefalt), ISO Codes-4.16.0, libxml2-2.13.3 og Xorg Biblioteker
Installer libxklavier ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Denne
parameteren er normalt brukt hvis GTK-Doc er installert og du ønsker å
gjenoppbygge og installere API dokumentasjonen. Det er
ødelagt for denne pakken på grunn av bruken av et lenge
utdatert gtk-doc program som ikke lenger er tilgjengelig.
Pango er et bibliotek for utforming og gjengivelse av tekst, med vekt på internasjonalisering. Den kan brukes hvor som helst som tekstlayout er nødvendig, selv om det meste av arbeidet med Pango så langt er gjort i forbindelse med GTK+ skjermelement verktøysett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/pango/1.54/pango-1.54.0.tar.xz
Nedlasting MD5 sum: 7ad89b03f6850e0be28f91522b793842
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 27 MB (med tester)
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4; med tester)
Fontconfig-2.15.0 (må bygges med FreeType-2.13.3 ved bruk av harfBuzz-9.0.0), FriBidi-1.0.15, og GLib-2.80.4 (GObject Introspection påkrevd for GNOME)
Cairo-1.18.0 (bygget etter harfBuzz-9.0.0) og Xorg Biblioteker
Cantarell fonts (for tester), Gi-DocGen-2024.1 (for å generere dokumentasjon), help2man, libthai, og sysprof
Installer Pango ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
--wrap-mode=nofallback \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed "/docs_dir =/s@\$@ / 'pango-1.54.0'@" -i ../docs/meson.build && meson configure -D documentation=true && ninja
For å teste resultatene, kjør: ninja test. To tester, testiter og test-font, er kjent for å mislykkes av ukjent grunn.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D introspection=disabled: Bruk
denne bryteren hvis du ikke ønsker å bruke GObject
Introspection.
--wrap-mode=nofallback: Denne
bryteren forhindrer meson fra å bruke
delprosjektets tilbakefall for evt avhengighetserklæringer i
byggefilene, og stopper nedlastingen av eventuell valgfrie
avhengigheter som ikke er installert på systemet.
|
viser en liste over fonter som Pango kan bruke som for øyeblikket er installert på systemet |
|
|
viser tekstsegmentering som bestemt av Pango. |
|
|
render en gitt tekstfil gjennom Pango for visningsformål |
|
|
inneholder lavt nivå layout rendering rutiner, en høy nivå driver for å legge ut hele tekstblokker, og rutiner for å hjelpe til med å redigere internasjonalisert tekst |
Pangomm pakken gir et C++ grensesnitt til Pango.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/pangomm/2.46/pangomm-2.46.4.tar.xz
Nedlasting MD5 sum: 5947d35899db62813531d7ea8faee60c
Nedlastingsstørrelse: 680 KB
Estimert diskplass som kreves: 8.9 MB
Estimert byggetid: 0.2 SBU
Installer Pangomm ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Pangomm pakken gir et C++ grensesnitt til Pango. Denne versjonen er en del av en ny API for støtte til gtkmm-4.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/pangomm/2.52/pangomm-2.54.0.tar.xz
Nedlasting MD5 sum: 19e0266fdd4b47d5fadd9f16ee5f728d
Nedlastingsstørrelse: 768 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.2 SBU
Installer Pangomm ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Qt5 er et applikasjonsrammeverk på tvers av plattformer som er mye brukt for å utvikle applikasjonsprogramvare med et grafisk brukergrensesnitt (GUI) (i hvilke tilfeller qt5 er klassifisert som et widget-verktøysett), og brukes også til å utvikle ikke-GUI programmer som kommandolinjeverktøy og konsoller for servere.
Den fulle qt5 pakken består av 43 separate komponenter. Disse instruksjonene bruker en liten delmengde av hele qt5 installasjonsinstruksjoner. De dekker komponentene som trengs for å bygge pakker i BLFS.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.qt.io/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz
Nedlasting MD5 sum: 0265e7988790d8845441558130d59311
Nedlastingsstørrelse: 630 MB
Estimert diskplass som kreves: 9.0 GB (154 MB installert)
Estimert byggetid: 7.5 SBU (bruke parallellisme=4)
Nå som qt5 oppdateringer er begrenset til kommersielle kunder, oppstrøms oppdateringer for de ulike modulene er vedlikeholdt hos kde. Oppdateringer for modulene som kreves av pakker i BLFS har blitt samlet for den ikke-modulære qt5 byggingen vi bruker.
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/qt-everywhere-opensource-src-5.15.14-kf5-1.patch
Detaljer om kde vedlikeholdet kan finnes på https://dot.kde.org/2021/04/06/announcing-kdes-qt-5-patch-collection og https://community.kde.org/Qt5PatchCollection.
alsa-lib-1.2.12, at-spi2-core-2.52.0, Cups-2.4.10, double-conversion-3.3.0, GLib-2.80.4, harfBuzz-9.0.0, ICU-75.1, hicolor-icon-theme-0.18, Mesa-24.1.5, libjpeg-turbo-3.0.1, libxkbcommon-1.7.0, SQLite-3.46.1, Wayland-1.23.0 (Mesa må bygges med Wayland EGL backend), xcb-util-image-0.4.1, xcb-util-keysyms-0.4.1, xcb-util-renderutil-0.3.10, og xcb-util-wm-0.4.2
GTK+-3.24.43, libinput-1.26.1 MariaDB-10.11.8 eller MySQL, MIT Kerberos V5-1.21.3, mtdev-1.1.7 PostgreSQL-16.4, og unixODBC-2.3.12
BLFS redaktørene anbefaler å installere qt5 i en mappe annet enn /usr, dvs. /opt/qt5. For å gjøre dette, still inn
følgende miljøvariabel:
export QT5PREFIX=/opt/qt5
Noen ganger er installasjonsbanene hardkodet til
installerte filer. Dette er grunnen /opt/qt5 brukes som installasjonsprefiks
i stedet for /opt/qt-5.15.14.
For å lage en versjonert qt5 mappe etter at installasjonen er
fullført, kan du gi nytt navn til mappen og opprette en
symbolkobling:
mkdir -pv /opt/qt-5.15.14 ln -sfnv qt-5.15.14 /opt/qt5
Senere kan du ønske å installere andre versjoner av
qt5. For å gjøre det,
fjern bare symbolkoblingen og bruk /opt/qt5 som prefikset igjen. Hvilken
versjon av qt5 du bruker
avhenger bare av hvor symbollinken peker.
Hvis qt5 blir reinstallert
i samme mappe som en eksisterende forekomst, kjør
kommandoene utført av root,
som make
install, fra en konsoll eller ikke-qt5
basert vindusbehandler. Den overskriver qt5 biblioteker som ikke skal være i
bruk under installasjonsprosessen.
Hvis du ikke installerte noen av de anbefalte avhengighetene, undersøk ./configure --help utdata for å sjekke hvordan du deaktiverer dem eller bruk interne versjoner samlet i kildens tarball.
BLFS redaktørene anbefaler ikke å installere qt5 inn i /usr hierarkiet fordi det blir vanskelig
å finne komponenter og å oppdatere til en ny versjon. Hvis
du ønsker å installere qt5
i /usr, mappene må
spesifiseres eksplisitt. I dette tilfellet, sett
QT5PREFIX=/usr og legg til
følgende i konfigurerings argumentene nedenfor:
-archdatadir /usr/lib/qt5 \
-bindir /usr/bin \
-plugindir /usr/lib/qt5/plugins \
-importdir /usr/lib/qt5/imports \
-headerdir /usr/include/qt5 \
-datadir /usr/share/qt5 \
-docdir /usr/share/doc/qt5 \
-translationdir /usr/share/qt5/translations \
-examplesdir /usr/share/doc/qt5/examples
Først, bruk en oppdatering for å trekke inn rettelsene kurert av kde for disse moduler som kreves av pakker nevnt i denne boken:
patch -Np1 -i ../qt-everywhere-opensource-src-5.15.14-kf5-1.patch
Oppdateringen er ment å brukes i et git depot. Hvis det ikke
er det, vil noen filer som bør endres av configure etter bruk av
oppdateringen ikke berøres. Heldigvis er det nok å lage en
.git mappe i qmake mappen hvor configure skriptet kjøres:
mkdir -pv qtbase/.git
På dette tidspunktet ønsker vi å sette opp å hoppe over de fleste komponentene. Gjør det med:
ls -Fd qt* | grep / | sed 's/^/-skip /;s@/@@' > tempconf && sed -i -r '/base|tools|x11extras|svg|declarative|wayland/d' tempconf
Hvis du ønsker å installere NetworkManager-1.48.8 eksempler, kjør: sed -i '/qtdoc/d' tempconf.
Hvis du velger å ikke installere Qt-6.7.2 og ønsker å bruke qt5 med wireshark, kjør: sed -i '/qtmultimedia/d' tempconf.
Nå, installer qt5 ved å kjøre følgende kommandoer:
./configure -prefix $QT5PREFIX \
-sysconfdir /etc/xdg \
-confirm-license \
-opensource \
-dbus-linked \
-openssl-linked \
-system-harfbuzz \
-system-sqlite \
-nomake examples \
-no-rpath \
-journald \
$(cat tempconf) &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Fjern referanser til byggemappen fra installert bibliotek
avhengighetsfiler (prl) ved å kjøre følgende kommando som
root bruker:
find $QT5PREFIX/ -name \*.prl \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
Installer bilder og lag menyoppføringer for installerte
applikasjoner. QT5BINDIR
variabelen brukes her for å peke på mappen for de kjørbare
programmene. Hvis du har endret bindir ovenfor, QT5BINDIR må justeres nedenfor. Vær sikker at
QT5BINDIR variabel er definert i
root sitt miljø og som root
bruker:
QT5BINDIR=$QT5PREFIX/bin
install -v -dm755 /usr/share/pixmaps/ &&
install -v -Dm644 qttools/src/assistant/assistant/images/assistant-128.png \
/usr/share/pixmaps/assistant-qt5.png &&
install -v -Dm644 qttools/src/designer/src/designer/images/designer.png \
/usr/share/pixmaps/designer-qt5.png &&
install -v -Dm644 qttools/src/linguist/linguist/images/icons/linguist-128-32.png \
/usr/share/pixmaps/linguist-qt5.png &&
install -v -Dm644 qttools/src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
/usr/share/pixmaps/qdbusviewer-qt5.png &&
install -dm755 /usr/share/applications &&
cat > /usr/share/applications/assistant-qt5.desktop << EOF
[Desktop Entry]
Name=Qt5 Assistant
Comment=Shows Qt5 documentation and examples
Exec=$QT5BINDIR/assistant
Icon=assistant-qt5.png
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;Documentation;
EOF
cat > /usr/share/applications/designer-qt5.desktop << EOF
[Desktop Entry]
Name=Qt5 Designer
GenericName=Interface Designer
Comment=Design GUIs for Qt5 applications
Exec=$QT5BINDIR/designer
Icon=designer-qt5.png
MimeType=application/x-designer;
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;
EOF
cat > /usr/share/applications/linguist-qt5.desktop << EOF
[Desktop Entry]
Name=Qt5 Linguist
Comment=Add translations to Qt5 applications
Exec=$QT5BINDIR/linguist
Icon=linguist-qt5.png
MimeType=text/vnd.trolltech.linguist;application/x-linguist;
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;
EOF
cat > /usr/share/applications/qdbusviewer-qt5.desktop << EOF
[Desktop Entry]
Name=Qt5 QDbusViewer
GenericName=D-Bus Debugger
Comment=Debug D-Bus applications
Exec=$QT5BINDIR/qdbusviewer
Icon=qdbusviewer-qt5.png
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;Debugger;
EOF
Noen pakker som f.eks VLC-3.0.21 se etter visse kjørbare filer med
suffikset -qt5. Kjør følgende kommando som root bruker for å lage de nødvendige
symbolkoblingene:
for file in moc uic rcc qmake lconvert lrelease lupdate; do ln -sfvn $QT5BINDIR/$file /usr/bin/$file-qt5 done
-confirm-license:
Godta lisens uten å spørre brukeren under konfigurasjonen.
-opensource:
Installer åpen kildekode versjon av qt.
-nomake examples:
Denne bryteren deaktiverer bygging av eksempelprogrammene
inkludert i kilden tarball. Fjern den hvis du vil bygge dem.
-system-sqlite: Denne
bryteren muliggjør bruk av systemversjonen av SQLite.
-system-harfbuzz:
Denne bryteren muliggjør bruk av systemversjonen av
Harfbuzz.
-dbus-linked
-openssl-linked:
Disse brytere muliggjør eksplisitt kobling av D-Bus og OpenSSL biblioteker i qt5 biblioteker i stedet for å
dlopen()-ing
dem.
-journald: Denne
bryteren lar deg sende qt meldinger til journald loggingssystem.
$(cat tempconf): Denne kommandoen gir en liste over komponenter som ikke skal bygges. Disse oppføringene er i form av "-skip <component>".
Hvis Sudo-1.9.15p5 er installert, skal
QT5DIR være tilgjengelig for superbrukeren også. Utfør
følgende kommandoer som root bruker:
cat > /etc/sudoers.d/qt << "EOF"
Defaults env_keep += QT5DIR
EOF
Hvis du har installert qt5
i /usr, opprett en
miljøvariabel som kreves av visse pakker. Som root bruker:
cat > /etc/profile.d/qt5.sh << "EOF"
# Begin /etc/profile.d/qt5.sh
QT5DIR=/usr
export QT5DIR
# End /etc/profile.d/qt5.sh
EOF
Hvis du har installert qt5
på et annet sted enn /usr, må
du oppdatere følgende konfigurasjonsfiler slik at
qt5 er riktig funnet av
andre pakker og systemprosesser.
Som root bruker, oppdater
/etc/ld.so.conf filen og den
dynamiske linkeren kjøretidsbufferfil:
cat >> /etc/ld.so.conf << EOF
# Begin Qt addition
/opt/qt5/lib
# End Qt addition
EOF
ldconfig
Som root bruker, opprett
/etc/profile.d/qt5.sh filen:
cat > /etc/profile.d/qt_5.sh << "EOF"
# Begin /etc/profile.d/qt_5.sh
QT5DIR=/opt/qt5
pathappend $QT5DIR/bin PATH
pathappend $QT5DIR/lib/pkgconfig PKG_CONFIG_PATH
export QT5DIR
# End /etc/profile.d/qt_5.sh
EOF
|
er et verktøy for å presentere nettbasert dokumentasjon |
|
|
er en fullverdig GUI-bygger. Det inkluderer kraftige funksjoner som forhåndsvisningsmodus, automatisk widget layout, støtte for egendefinerte widgets og en avansert eiendomsredaktør |
|
|
er et skript for å erstatte alle Qt 4 stiler inkluderer med Qt 5 inkluderer |
|
|
er en del av Qt5s Linguist-verktøykjede. Den kan brukes som en frittstående verktøy for å konvertere og filtrere oversettelsesdatafiler |
|
|
gir støtte for å oversette applikasjoner til lokale språk |
|
|
er et enkelt kommandolinjeverktøy. Den leser XML-basert oversettelse fil i TS-format og produserer meldingsfiler som brukes av applikasjon |
|
|
trekker ut prosjektinformasjon fra qmake-prosjekter og passerer det til lrelease |
|
|
finner oversettbare strenger i den angitte kilden, overskriften og Qt Designer grensesnittfiler, og lagrer de utpakkede meldingene i oversettelsesfiler som skal behandles av lrelease |
|
|
leser en Qt-prosjektfil, og sender den innsamlede informasjonen til lupdate |
|
|
genererer Qt metaobjektstøttekode |
|
|
er en skrivebordsforstørrelsesglass - mens du beveger musen rundt skjermen, vil den vise det forstørrede innholdet i vinduet |
|
|
behandler og konverterer Qt hjelpefiler |
|
|
tar en C++ kildefil og genererer en D-Bus XML definisjon av grensesnittet |
|
|
viser tilgjengelige tjenester, objektbaner, metoder, signaler og egenskapene til objekter på en buss |
|
|
er en grafisk D-Bus nettleser |
|
|
er et verktøy som kan brukes til å analysere grensesnittbeskrivelser og produsere statisk kode som representerer disse grensesnittene |
|
|
lar en fontbuffer forhåndsgenereres for at Text.QtRendering skal øke hastigheten oppstart av en applikasjon hvis brukergrensesnittet har mye tekst, eller flere fonter, eller en stor mengde distinkte tegn, f.eks. i CJK skrivesystemer |
|
|
er et verktøy som brukes av Qt Utviklere for å generere dokumentasjon for programvareprosjekter |
|
|
er et verktøy som brukes til å generere en Qt komprimert hjelpefil |
|
|
er et verktøy som brukes til å generere kode fra grammatikkspesifikasjoner |
|
|
bruker informasjon som er lagret i prosjektfiler til bestemme hva som skal gå i makefilene det genererer |
|
|
kjører en QML fil |
|
|
støtter oppretting av cache filer på byggetidspunktet |
|
|
er et verktøy som brukes til å definere lettelseskurvene ved hjelp av en interaktiv kurveredigerer |
|
|
formaterer QML-filer i henhold til QML kodingskonvensjonene |
|
|
er et verktøy som brukes til å importere QML filer fra en mappe |
|
|
er en syntakskontroll for QML filer |
|
|
fjerner kommentarer og layouttegn fra en QML fil |
|
|
er et verktøy for å lage en qmltypes fil |
|
|
er et verktøy som brukes til å analysere QML applikasjoner |
|
|
er et verktøy som ser på QML og JavaScript filer på disk og oppdaterer applikasjonen live med eventuelle endringer |
|
|
er et verktøy som laster og viser QML dokumenter selv før søknaden er komplett |
|
|
er et verktøy som brukes til å lage tester |
|
|
behandler qt_attribution.json filer i Qt kilder |
|
|
er et verktøy for å rapportere diagnostisk informasjon om Qt og dens miljø |
|
|
er et verktøy for å spørre Qt baneinformasjon |
|
|
dumper metadata om Qt-plugins i JSON-format |
|
|
konverterer Wayland spesifikasjonsfiler til C++ deklarasjoner og kode nødvendig for QtWayland |
|
|
konverterer Vulkan specfiles til C++ deklarasjoner og kode |
|
|
er en ressurskompiler som brukes sammen med designer |
|
|
er et skript for å lage videresendings deklarasjonene i include mapper. Det er et internt utviklingsverktøy |
|
|
er en sporingsgenerator for LTTng eller ETW |
|
|
er en Qt brukergrensesnitt kompilator |
Qt6 er et applikasjonsrammeverk på tvers av plattformer som er mye brukt for å utvikle applikasjonsprogramvare med et grafisk brukergrensesnitt (GUI) (i hvilke tilfeller Qt6 er klassifisert som et skjermelement verktøysett), og brukes også til å utvikle ikke-GUI programmer som kommandolinjeverktøy og konsoller for servere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.qt.io/archive/qt/6.7/6.7.2/single/qt-everywhere-src-6.7.2.tar.xz
Nedlasting MD5 sum: 06d35b47349c7c0a45710daad359e07b
Nedlastingsstørrelse: 892 MB
Estimert diskplass som kreves: 37 GB (376 MB installert)
Estimert byggetid: 12 SBU (bruker parallellisme=8)
alsa-lib-1.2.12, make-ca-1.14, Cups-2.4.10, double-conversion-3.3.0, GLib-2.80.4, gst-plugins-base-1.24.7 (QtMultimedia bakstykke), harfBuzz-9.0.0, ICU-75.1, JasPer-4.2.4, libjpeg-turbo-3.0.1, libinput-1.26.1, libmng-2.0.3, libpng-1.6.43, libtiff-4.6.0, libwebp-1.4.0, libxkbcommon-1.7.0, Mesa-24.1.5, mtdev-1.1.7, pcre2-10.44, SQLite-3.46.1, Wayland-1.23.0 (Mesa må bygges med Wayland EGL bakstykke), xcb-util-cursor-0.1.4, xcb-util-image-0.4.1, xcb-util-keysyms-0.4.1, xcb-util-renderutil-0.3.10, og xcb-util-wm-0.4.2
BlueZ-5.77 (for sdpscanner, og ved kjøretid for QtConnectivity moduler), GTK+-3.24.43, ibus-1.5.30, MariaDB-10.11.8 eller MySQL, MIT Kerberos V5-1.21.3, pciutils-3.13.0, PostgreSQL-16.4, PulseAudio-17.0, SDL2-2.30.6, unixODBC-2.3.12, assimp, Flite, Firebird, FreeTDS, libproxy, OpenAL, speech-dispatcher, og tslib
BLFS redaktørene anbefaler å installere Qt6 i en annen mappe enn /usr, dvs. /opt/qt6. Dette trengs for å unngå
konflikter med Qt5. For å gjøre dette, still inn følgende
miljøvariabel:
export QT6PREFIX=/opt/qt6
Noen ganger er installasjonsbanene hardkodet til
installerte filer. Dette er grunnen til at /opt/qt6 brukes som installasjonsprefiks
i stedet for /opt/qt-6.7.2.
For å lage en versjonert Qt6 mappe, du kan gi nytt navn til
mappen og lage en symbolkobling:
mkdir -pv /opt/qt-6.7.2 ln -sfnv qt-6.7.2 /opt/qt6
Senere vil du kanskje installere andre versjoner av
Qt6. For å gjøre det,
fjern bare symbolkoblingen, opprett den nye versjonsmappen,
og lag på nytt /opt/qt6
symbolkoblingen igjen før du bygger den nye versjonen.
Hvilken versjon av Qt6 du
bruker avhenger bare av hvor symbollinken peker.
Hvis qca-2.3.9 er installert og du deretter installere eller oppdatere denne pakken på nytt må qca installeres på nytt.
Hvis Qt6 blir reinstallert
i samme mappe som en eksisterende økt, kjør kommandoene
utført av root, som
make install,
fra en konsoll eller ikke-Qt6 basert vindusbehandler. Den
overskriver Qt6
biblioteker som ikke skal være i bruk under
installasjonsprosessen.
Hvis du ikke installerte noen av de anbefalte avhengighetene, undersøk ./configure --help utdata for å sjekke hvordan du deaktiverer dem eller bruk interne versjoner samlet i kildens tarball.
Byggetiden og plassen som kreves for hele Qt6 er ganske lang. Instruksjonene
nedenfor bygger ikke opplæringen og eksemplene. Fjerning av
-nomake linjen vil
skape ekstra ressurser..
BLFS redaktørene anbefaler ikke å installere Qt6 inn i /usr hierarkiet fordi det blir vanskelig å finne komponenter og for å oppdatere til en ny versjon. Det er også noen programmer som er i konflikt med de installert av Qt5.
Deaktiver en motstridende deklarasjon på i686-systemer:
if [ "$(uname -m)" == "i686" ]; then
sed -e "/^#elif defined(Q_CC_GNU_ONLY)/s/.*/& \&\& 0/" \
-i qtbase/src/corelib/global/qtypes.h
fi
Installer Qt6 ved å kjøre følgende kommandoer:
./configure -prefix $QT6PREFIX \
-sysconfdir /etc/xdg \
-dbus-linked \
-openssl-linked \
-system-sqlite \
-nomake examples \
-no-rpath \
-journald \
-skip qt3d \
-skip qtquick3dphysics \
-skip qtwebengine \
-W no-dev &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Fjern referanser til byggemappen fra installerte bibliotekers
avhengighet (prl) filer ved å kjøre følgende kommando som
root bruker:
find $QT6PREFIX/ -name \*.prl \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
Installer bilder og lag menyoppføringer for installerte
applikasjoner. Igjen som root
bruker:
pushd qttools/src &&
install -v -Dm644 assistant/assistant/images/assistant-128.png \
/usr/share/pixmaps/assistant-qt6.png &&
install -v -Dm644 designer/src/designer/images/designer.png \
/usr/share/pixmaps/designer-qt6.png &&
install -v -Dm644 linguist/linguist/images/icons/linguist-128-32.png \
/usr/share/pixmaps/linguist-qt6.png &&
install -v -Dm644 qdbus/qdbusviewer/images/qdbusviewer-128.png \
/usr/share/pixmaps/qdbusviewer-qt6.png &&
popd &&
cat > /usr/share/applications/assistant-qt6.desktop << EOF
[Desktop Entry]
Name=Qt6 Assistant
Comment=Shows Qt6 documentation and examples
Exec=$QT6PREFIX/bin/assistant
Icon=assistant-qt6.png
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;Documentation;
EOF
cat > /usr/share/applications/designer-qt6.desktop << EOF
[Desktop Entry]
Name=Qt6 Designer
GenericName=Interface Designer
Comment=Design GUIs for Qt6 applications
Exec=$QT6PREFIX/bin/designer
Icon=designer-qt6.png
MimeType=application/x-designer;
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;
EOF
cat > /usr/share/applications/linguist-qt6.desktop << EOF
[Desktop Entry]
Name=Qt6 Linguist
Comment=Add translations to Qt6 applications
Exec=$QT6PREFIX/bin/linguist
Icon=linguist-qt6.png
MimeType=text/vnd.trolltech.linguist;application/x-linguist;
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;
EOF
cat > /usr/share/applications/qdbusviewer-qt6.desktop << EOF
[Desktop Entry]
Name=Qt6 QDbusViewer
GenericName=D-Bus Debugger
Comment=Debug D-Bus applications
Exec=$QT6PREFIX/bin/qdbusviewer
Icon=qdbusviewer-qt6.png
Terminal=false
Encoding=UTF-8
Type=Application
Categories=Qt;Development;Debugger;
EOF
-nomake examples:
Denne bryteren deaktiverer bygging av eksempelprogrammene
inkludert i kilde tarballen. Fjern den hvis du vil bygge dem.
-skip qt3d: Denne
bryteren deaktiverer bygging av qt3d støtte. Det er et
problem å bygge disse filene uten et eksternt bibliotek og
ingen pakker i BLFS bruker qt3d.
-system-sqlite: Denne
bryteren aktiverer bruk av systemversjonen av SQLite.
-dbus-linked
-openssl-linked:
Disse brytere aktiverer eksplisitt kobling av D-Bus og OpenSSL biblioteker inn i Qt6 biblioteker i stedet for
dlopen()-ing
dem.
-journald: Denne
bryteren lar deg sende Qt meldinger til journald loggingssystem.
-skip qtwebengine:
Denne bryteren deaktiverer bygging av QtWebEngine. BLFS
redaksjonen har valgt å bygge qtwebengine-6.7.2 hver for seg.
-skip
qtquick3dphysics: Denne bryteren deaktiverer
bygging av Qt Quick 3D Physics undermodulen. På 32-bits
systemer vil dette føre til at byggeprosessen mislykkes med
en inlining feil i Qt6 pakkene av PhysX SDK.
Hvis Sudo-1.9.15p5 er installert, skal
QT6DIR være tilgjengelig for superbrukeren også. Utfør
følgende kommandoer som root bruker:
cat > /etc/sudoers.d/qt << "EOF"
Defaults env_keep += QT6DIR
EOF
Du må nå oppdatere følgende konfigurasjonsfiler slik at Qt6 blir riktig funnet av andre pakker og systemprosesser.
Som root bruker, oppdater
/etc/ld.so.conf filen og den
dynamiske linkeren kjøretidsbufferfil:
cat >> /etc/ld.so.conf << EOF
# Begin Qt addition
/opt/qt6/lib
# End Qt addition
EOF
ldconfig
Som root bruker, opprett
/etc/profile.d/qt6.sh filen:
cat > /etc/profile.d/qt6.sh << "EOF"
# Begin /etc/profile.d/qt6.sh
QT6DIR=/opt/qt6
pathappend $QT6DIR/bin PATH
pathappend $QT6DIR/lib/pkgconfig PKG_CONFIG_PATH
export QT6DIR
# End /etc/profile.d/qt6.sh
EOF
|
er et verktøy for å presentere nettbasert dokumentasjon |
|
|
er et verktøy for å konvertere 3D scener fra ulike opprettelsesverktøy til QML format, for bruk av det nye QtQuick 3D-biblioteket |
|
|
er et verktøy for å håndtere vilkårlige CAN bussrammer. Et Controller Area Network (CAN) er en standard for kjøretøybuss for å tillate mikrokontrollere og enheter å kommunisere med hverandre i applikasjoner uten vertsdatamaskin |
|
|
er en fullverdig GUI bygger. Det inkluderer kraftige funksjoner som forhåndsvisningsmodus, automatisk skjermelement stil, støtte for egendefinerte skjermelementer og en avansert eiendomsredigerer |
|
|
er en del av Qt6s Linguist verktøykjede. Den kan brukes som et frittstående verktøy for å konvertere og filtrere oversettelsesdatafiler |
|
|
gir støtte for å oversette applikasjoner til lokale språk |
|
|
er et enkelt kommandolinjeverktøy. Den leser XML basert oversettelse filer i TS format og produserer meldingsfiler som brukes av applikasjoner |
|
|
finner oversettelige strenger i den angitte kilden, deklarasjonen og Qt Designer grensesnittfiler, og lagrer de utpakkede meldingene i oversettelsesfiler som skal behandles av lrelease |
|
|
viser informasjon om qtquick-3d mesh filer |
|
|
er en skrivebordsforstørrelsesglass - mens du beveger musen rundt skjermen, vil den vise det forstørrede innholdet i vinduet |
|
|
viser tilgjengelige tjenester, objektbaner, metoder, signaler og egenskapene til objekter på en buss |
|
|
tar en C++ kildefil og genererer en D-Bus XML definisjon av grensesnittet |
|
|
er en grafisk D-Bus leser |
|
|
er et verktøy som kan brukes til å analysere grensesnittbeskrivelser og produsere statisk kode som representerer disse grensesnittene, |
|
|
lar en fontbuffer forhåndsgenereres for at Text.QtRendering skal øke hastigheten oppstart av en applikasjon hvis brukergrensesnittet har mye tekst, eller flere fonter, eller en stor mengde distinkte tegn, f.eks. i CJK skrivesystemer |
|
|
er et verktøy som brukes av Qt Utviklere for å generere dokumentasjon for programvareprosjekter |
|
|
bruker informasjon som er lagret i prosjektfiler til bestemme hva som skal gå i makefilene det genererer |
|
|
kjører en QML fil |
|
|
er et verktøy som brukes til å definere lettelseskurvene ved hjelp av en interaktiv kurveredigerer |
|
|
formaterer QML filer i henhold til QML kodingskonvensjonene |
|
|
er en syntakskontroll for QML filer |
|
|
er et verktøy for å lage en qmltypes fil |
|
|
er et verktøy som brukes til å analysere QML applikasjoner |
|
|
er et verktøy som ser på QML og JavaScript filer på disk og oppdaterer applikasjonen live med eventuelle endringer |
|
|
er et verktøy som laster og viser QML dokumenter selv før applikasjonen er komplett |
|
|
er et verktøy som brukes til å lage tester |
|
|
er et verktøy for å rapportere diagnostisk informasjon om Qt og dens miljø |
|
|
er et verktøy for å spørre Qt baneinformasjon |
|
|
dumper metadata om Qt programtillegg i JSON format |
QtWebEngine integrerer chromium sin nettfunksjoner i Qt. Den sender med sin egen kopi av ninja som den bruker til byggingen hvis den ikke kan finne en systemkopi og forskjellige kopier av biblioteker fra ffmpeg, icu, libvpx, og zlib (inkludert libminizip) som har blitt skilt ut av chromium utviklere.
Denne pakken og nettlesere som bruker den kan være nyttig hvis du trenger å bruke et nettsted utviklet for google chrome, eller chromium, nettlesere.
QtWebEngine bruker en utskilt kopi av chromium, og er derfor sårbar for mange problemer som finnes der. Qt-utviklerne ser ut til å forgrene en nyere versjon for mindre Qt-versjoner, men fordi krom flyttes til nyere versjoner veldig ofte, når Qt-utviklerne får en forgrenet versjon for å bestå deres utvidede tester er det alltid en gammel versjon og sikkerhet reparasjoner fra krom (hvorav noen har et CVE-nummer) kan ta flere måneder for å vises i en QtWebengine-utgivelse, selv om alvorlighetsgraden har vært vurdert som kritisk.
Derfor bør du være forsiktig med å bruke QtWebEngine i en sensitiv kontekst og bør alltid oppdatere til neste utgivelse så snart den vises i denne boken, selv om den ikke er merket som en sikkerhetsoppdatering. Identifisere hvilke sårbarheter som er fikset i en bestemt utgivelsen krever å trekke den riktige 'baserte NNN'-grenen rett før tidligere og nåværende utgivelser og er ofte upraktisk. Rapporter om faste QTBUG-elementer ser ikke ut til å være tilgjengelige, og det er ikke noen dokumentasjon i tarball for endringer etter qt-5 versjonene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Som standard vil ninja bruke alle online CPUer +2 (hvis minst 4 finnes), selv om de ikke er tilgjengelige for gjeldende oppgave på grunn av at byggeterminalen har blitt begrenset med 'oppgavesett'. I BLFS, denne pakken tar mer tid å bygge enn noen annen. I ett eksempel, konstruksjonen av denne pakken krasjet ved omtrent 90 prosent punktet på grunn av et lite minneproblem på et system med 24 kjerner og 32 GB av minne.
For å omgå dette, se kommandoforklaringene nedenfor.
Nedlasting (HTTP): https://download.qt.io/official_releases/qt/6.7/6.7.2/submodules/qtwebengine-everywhere-src-6.7.2.tar.xz
Nedlasting MD5 sum: 650bacb77f1fa3d4843e0667df07a1b8
Nedlastingsstørrelse: 525 MB
Estimert diskplass som kreves: 8.7 GB (335 MB installert)
Estimert byggetid: 40 SBU (Bruke parallellisme=8)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/qtwebengine-6.7.2-ffmpeg7_fixes-1.patch
Cups-2.4.10, html5lib-1.1, nodejs-20.16.0, nss-3.103, pciutils-3.13.0, og Qt-6.7.2
Hvis disse pakkene ikke er installert, vil byggeprosessen kompilere og installere sin egen (kanskje eldre) versjon, med bivirkning av økt bygg og installert diskplass og byggetid.
enten alsa-lib-1.2.12 eller PulseAudio-17.0 (eller begge), FFmpeg-7.0.2, ICU-75.1, libwebp-1.4.0, libxslt-1.1.42, og Opus-1.5.2
libevent-2.1.12, MIT Kerberos V5-1.21.3, pipewire-1.2.3, Poppler-24.08.0, jsoncpp, libsrtp, snappy
Tilpass først den medfølgende kopien av Chromium til den nyeste versjonen av ffmpeg:
patch -Np1 -d src/3rdparty/chromium < ../qtwebengine-6.7.2-ffmpeg7_fixes-1.patch
Deretter fikser du en byggefeil som oppstår fordi BLFS bygget til ffmpeg ikke bruker OpenH264:
sed -e '189 s/=/& false/' \
-e '190 d' \
-i.orig src/3rdparty/chromium/third_party/webrtc/webrtc.gni
Installer qtwebengine ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_MESSAGE_LOG_LEVEL=STATUS \
-D QT_FEATURE_webengine_system_ffmpeg=ON \
-D QT_FEATURE_webengine_system_icu=ON \
-D QT_FEATURE_webengine_system_libevent=ON \
-D QT_FEATURE_webengine_proprietary_codecs=ON \
-D QT_FEATURE_webengine_webrtc_pipewire=ON \
-D QT_BUILD_EXAMPLES_BY_DEFAULT=OFF \
-G Ninja .. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
CMAKE_MESSAGE_LOG_LEVEL=STATUS:
Sender ut interessante meldinger som prosjektbrukere kan være
interessert i. Ideelt sett bør disse være konsise, ikke mer
enn en enkelt linje, men fortsatt informativ.
QT_FEATURE_webengine_system_*:
Spesifiser hvilke eksterne pakker systemet skal bruke.
QT_BUILD_EXAMPLES_BY_DEFAULT=OFF:
Ikke bygg eksempler som standard.
NINJAJOBS=4 make: Hvis du
oppdaterte system ninja i LFS til å gjenkjenne
miljøvariabelen NINJAJOBS, vil denne kommandoen kjøre
systemets ninja med det angitte antall jobber (dvs. 4). Det
er flere grunner til at du kanskje vil bruke alternativer som
dette:
Å bygge på et undersett av CPUer gjør det mulig å måle
byggetiden for et mindre antall prosessorer, og/eller
kjører andre CPU intensive oppgaver samtidig. For en
redaktør på en maskin med mange CPUer, å prøve å måle
byggetiden for en 4-CPU maskin, NINJAJOBS=4 make vil gi en rimelig
tilnærming (det er en kort periode hvor N+2 python og
node jobber kjøres).
På en maskin med bare 4 CPUer tilgjengelig, standard planlegging med N+2 jobber for qtwebengine er tregere med mellom 3% og 7%, sannsynligvis på grunn av størrelsen på C++ filene og deres mange inkluderinger og maler. Derfor, hvis du er i tvil, sett NINJAJOBS til antall CPUer.
Å redusere antall kjerner som brukes på langvarig CPU intensive pakker kan hjelpe på varmeproblemer.
Redusering av antall kjerner vil forhindre potensielt tomt minne problemer på systemer som ikke har nok minne (eller vekselminne) når alle kjerner er aktive. En foreslått tilnærming er å begrense antall kjerner til omtrent en kjerne for hver 1,5 GB av kombinert RAM og vekselminne.
Hvis du oppgraderer fra en eldre mindre versjon av denne
applikasjon, for at enkelte nettsider skal lastes, må du
kanskje fjerne nettleseren sin mellomlagring,
f.eks. til falkon vil de
bli funnet i ~/.cache/falkon/. Du må gjøre dette hvis
nettleseren begynner å gjengi siden og endres deretter til
en tom fane med en melding at noe gikk galt, og en knapp
for å prøve på nytt. Til og med etter at du har fjernet de
gamle mellomlagrene, kan det hende du må prøve noen ganger
for hver berørt fane.
Hvis en nettleser som bruker denne pakken ikke klarer å kjøre og når den kjøres fra en term rapporterer det 'Trace/breakpoint trap', dvs sannsynligvis et problem med kjernekonfigurasjon - det er ikke nødvendig å gjenoppbygge QtWebEngine, se neste avsnitt, kompiler på nytt kjernen og start på nytt til den nye kjernen.
Denne pakken krever ingen av de valgfrie kjernenavneromselementene, men hvis brukernavneområdet er aktivert (som skjer i noen enhetsfiler, for økt sikkerhet) PID navneområde må også være aktivert. Aktiver i så fall følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt om nødvendig:
General setup ---> -*- Namespaces support ---> [NAMESPACES] # Enable or disable *both* of them: [ /*] User namespace [USER_NS] [ /*] PID Namespaces [PID_NS]
|
konverterer hunspell ordbøker ( |
|
|
er et libexec program som kjører en zygote prosess (en som lytter for spawn forespørsler fra en masterprosess, og vil gå inn i respons) |
|
|
gir offentlig API som deles av både QtWebEngine og QtWebEngineWidgets |
|
|
gir en nettlesermotor samt C++ klasser for å gjengi og samhandle med nettinnhold |
startup-notification pakken
inneholder startup-notification
biblioteker. Disse er nyttige for å bygge en konsistent måte
å varsle brukeren på gjennom markøren som applikasjonen
laster inn.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/startup-notification/releases/startup-notification-0.12.tar.gz
Nedlasting MD5 sum: 2cd77326d4dcaed9a5a23a1232fb38e9
Nedlastingsstørrelse: 347 KB
Estimert diskplass som kreves: 4 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer startup-notification ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
install -v -m644 -D doc/startup-notification.txt \
/usr/share/doc/startup-notification-0.12/startup-notification.txt
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Vulkan-Headers pakken inneholder et sett med deklarasjonsfiler som er nødvendige for å bygge og koble applikasjoner mot Vulkan API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/Vulkan-Headers/archive/v1.3.294/Vulkan-Headers-1.3.294.tar.gz
Nedlasting MD5 sum: 96778b876c8d817a98796074e9d6e6c2
Nedlastingsstørrelse: 2.2 MB
Estimert diskplass som kreves: 102 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Vulkan-Headers ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -G Ninja .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
Vulkan-Loader pakken inneholder et bibliotek som gir Vulkan API og gir kjernestøtte for grafikkdrivere for Vulkan.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/Vulkan-Loader/archive/v1.3.294/Vulkan-Loader-1.3.294.tar.gz
Nedlasting MD5 sum: 31432bec5926f78a5e302e8c0530d284
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 9.3 MB
Estimert byggetid: mindre enn 0.1 SBU
CMake-3.30.2, Vulkan-Headers-1.3.294, Wayland-1.23.0, og Xorg Biblioteker
Mesa-24.1.5 (for Vulkan drivere)
Hvis denne pakken blir installert på et system der Mesa allerede er installert tidligere, vennligst gjenoppbygg Mesa-24.1.5 etter denne pakken for å installere Vulkan grafikkdrivere.
Installer Vulkan-Loader ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-G Ninja .. &&
ninja
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
ninja install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
WebKitGTK pakken er en overføring av flyttbar nettgjengivelsesmotor WebKit til GTK+ 3 og GTK 4 plattformer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://webkitgtk.org/releases/webkitgtk-2.44.3.tar.xz
Nedlasting MD5 sum: 46cf81df314acbf62f811bcfd99f4769
Nedlastingsstørrelse: 36 MB
Estimert diskplass som kreves: 1.2 GB (159 MB MB installert, legg til 154 MB for GTK-4)
Estimert byggetid: 29 SBU (for GTK-3, bruk parallellisme=8, legg til 30 SBU for GTK-4)
Cairo-1.18.0, CMake-3.30.2, gst-plugins-base-1.24.7, gst-plugins-bad-1.24.7, GTK+-3.24.43, GTK-4.14.5, ICU-75.1, Little CMS-2.16, libgudev-238, libsecret-0.21.4, libsoup-3.4.4, libtasn1-4.19.0, libwebp-1.4.0, Mesa-24.1.5, OpenJPEG-2.5.2, Ruby-3.3.4, SQLite-3.46.1, unifdef-2.12, og Which-2.21
bubblewrap-0.9.0, enchant-2.8.2, GeoClue-2.7.1, GLib-2.80.4 (med GObject Introspection), hicolor-icon-theme-0.18, libavif-1.1.1, libjxl-0.10.3, libseccomp-2.5.5, og xdg-dbus-proxy-0.1.5
Gi-DocGen-2024.1, harfBuzz-9.0.0, Wayland-1.23.0, WOFF2-1.0.2, ccache, Hyphen, libbacktrace, og libmanette
Denne pakken tillater bygging med enten GTK-3 eller GTK-4, men ikke begge deler i samme bygg. GTK-4-versjonen er nødvendig for pakker som f.eks Epiphany-46.3. Andre pakker, som f.eks Balsa-2.6.4 eller Evolution-3.52.4, krever GTK-3 versjon. Begge versjonene kan installeres side ved side på samme system. Vi gir byggeinstruksjoner for begge tilfeller nedenfor, men den eneste forskjellen er innstillingen av -DUSE_GTK4
Først må du fikse en regresjon som oppstår med enkelte nettsteder som bruker WebAssembly:
sed '/returnLocation.isStackArgument/,/returnLocation = canonicalLocation/d'\
-i Source/JavaScriptCore/wasm/WasmBBQJIT.cpp
Hvis du vil installere GTK+-3-versjonen av WebKitGTK, kjør følgende kommandoer:
mkdir -vp build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D PORT=GTK \
-D LIB_INSTALL_DIR=/usr/lib \
-D USE_LIBBACKTRACE=OFF \
-D USE_LIBHYPHEN=OFF \
-D ENABLE_GAMEPAD=OFF \
-D ENABLE_MINIBROWSER=ON \
-D ENABLE_DOCUMENTATION=OFF \
-D ENABLE_WEBDRIVER=OFF \
-D USE_WOFF2=OFF \
-D USE_GTK4=OFF \
-D ENABLE_BUBBLEWRAP_SANDBOX=ON \
-W no-dev -G Ninja .. &&
ninja
Denne pakken har ikke en fungerende testpakke. Imidlertid er det en brukbar grunnleggende grafisk nettleser i byggemappen, build/bin/MiniBrowser. Hvis det mislykkes å starte den, er det et problem med bygget.
Nå, som root bruker:
ninja install
Hvis du vil installere GTK4 versjonen av WebKitGTK, kjør følgende kommandoer:
rm -rf * .[^.]* &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D PORT=GTK \
-D LIB_INSTALL_DIR=/usr/lib \
-D USE_LIBBACKTRACE=OFF \
-D USE_LIBHYPHEN=OFF \
-D ENABLE_GAMEPAD=OFF \
-D ENABLE_MINIBROWSER=ON \
-D ENABLE_DOCUMENTATION=OFF \
-D USE_WOFF2=OFF \
-D USE_GTK4=ON \
-D ENABLE_BUBBLEWRAP_SANDBOX=ON \
-W no-dev -G Ninja .. &&
ninja
Nå, som root bruker:
ninja install
Siden -D ENABLE_DOCUMENTATION=OFF
alternativet brukes, dokumentasjonen er ikke gjenoppbygd
eller installert nå. Hvis du trenger dokumentasjon, kan du
enten installere Gi-DocGen-2024.1 og fjern dette
alternativet fra cmake kommandoen, eller
installer den forhåndsbygde dokumentasjonen (kun for
GTK-4-versjonen) i stedet:
install -vdm755 /usr/share/gtk-doc/html && cp -rv ../Documentation/* /usr/share/gtk-doc/html
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
-D
USE_LIBBACKTRACE=OFF: Denne bryteren deaktiverer
bruken av libbacktrace for å dumpe en stabelsporing ved krasj
skjer. Du må installere libbacktrace
hvis du ønsker å aktivere det (erstatte OFF med ON eller bare
fjerne bryteren).
-D USE_LIBHYPHEN=OFF:
Denne bryteren deaktiverer standard implementering av
automatisk orddeling. Du må installere Hyphen
hvis du ønsker å aktivere den (erstatte OFF med ON eller bare
fjern bryteren).
-D
ENABLE_DOCUMENTATION=OFF: Denne bryteren
deaktiverer regenerering av dokumentasjonenen. Fjern denne
bryteren hvis du har Gi-DocGen-2024.1 installert og ønsker
å regenerere dokumentasjonen.
-D
ENABLE_GAMEPAD=OFF: Denne bryteren deaktiverer
støtte for gamepad. Fjern denne bryteren hvis du har
libmanette
installert og ønsker å aktivere den.
-D
ENABLE_MINIBROWSER=ON: Denne bryteren aktiverer
kompilering og installasjon av MiniBrowser.
-D
ENABLE_WEBDRIVER=OFF: Denne bryteren deaktiverer
kompilering og installasjon av WebKitWebDriver. Vi bruker
det for GTK-3 bygget fordi WebKitWebDriver fra
GTK-3-bygget vil uansett bli overskrevet av GTK-4-bygget.
Fjern dette alternativet hvis du ikke planlegger å bygge
denne pakken med GTK-4.
-D
ENABLE_BUBBLEWRAP_SANDBOX=ON: Denne bryteren
aktiverer Bubblewrap sandkassen, som bidrar til å dempe
virkningen av de fleste sikkerhetssårbarheter i denne pakken.
Endre denne bryteren til OFF hvis du ikke vil installere
bubblewrap-0.9.0, libseccomp-2.5.5, eller xdg-dbus-proxy-0.1.5, men merk at
dette kan sette deg i fare.
-D USE_SYSTEM_MALLOC=ON: Denne
bryteren gjør det mulig å bygge mot systemets installerte
malloc.
-D ENABLE_GEOLOCATION=OFF: Bruk
denne bryteren hvis du ikke ønsker å installere GeoClue-2.7.1.
-D USE_AVIF=OFF: Bruk denne
bryteren hvis du ikke vil installere libavif-1.1.1. Merk at
du ikke vil ha støtte for AVIF bilder hvis du gjør dette.
-D USE_WOFF2=ON: Bruk denne
bryteren hvis den valgfrie pakken WOFF2-1.0.2 er installert.
Dette legger til ekstra støtte for fonter.
-D USE_JPEGXL=OFF: Bruk denne
bryteren hvis den anbefalte pakken libjxl-0.10.3 ikke er
installert. Merk at du ikke vil har støtte for JPEG XL bilder
hvis dette alternativet er brukt.
|
tillater feilsøking og automatisering av nettsider og nettlesere |
|
|
inneholder kjerne JavaScript API funksjoner som
brukes av jsc og
|
|
|
inneholder kjerne JavaScript API funksjoner som
brukes av jsc og
|
|
|
inneholder WebKit2 API funksjoner |
|
|
inneholder WebKit API funksjoner for GTK-4 applikasjoner |
xdg-desktop-portal er en D-Bus tjeneste som lar programmer samhandle med skrivebordet på en sikker måte. Flere aspekter ved skrivebordsinteraksjon, som filvelger, skrivebordsstil, etc er implementert i forskjellige D-Bus APIer, kjent som portals. Sandkasse applikasjoner drar mest nytte av denne tjenesten siden de ikke trenger spesielle tillatelser for å bruke portal APIene, men alle applikasjoner kan bruke den. xdg-desktop-portal ivaretar mange ressurser og funksjoner med et brukerkontrollert tillatelsessystem. Denne tjenesten trenger et bakstykke som implementerer skrivebordsspesifikke portalgrensesnitt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/flatpak/xdg-desktop-portal/releases/download/1.18.2/xdg-desktop-portal-1.18.2.tar.xz
Nedlasting MD5 sum: 20e0b28c1528e57b13cc236ba7840e03
Nedlastingsstørrelse: 683 KB
Estimert diskplass som kreves: 51 MB (med tester)
Estimert byggetid: 0.1 SBU (legg til 0,4 SBU for tester; med parallellitet=4)
Fuse-3.16.2, gdk-pixbuf-2.42.12, JSON-GLib-1.8.0, pipewire-1.2.3, og dbus-1.14.10 (ved kjøretid). Videre er det nødvendig med et bakstykke ved kjøretid for at denne pakken skal være nyttig, enten xdg-desktop-portal-gtk-1.15.1 eller xdg-desktop-portal-gnome-46.2 eller xdg-desktop-portal-lxqt-1.0.2
bubblewrap-0.9.0 og docutils-0.21.2 (for å bygge manualsidene)
Selv om det er en mulighet for å bygge pakken uten bubblewrap, oppstrøms utviklere og LFS redaktører anbefaler på det sterkeste å la være å bruke denne muligheten, siden det vil skape et stort sikkerhetsproblem.
GeoClue-2.7.1 (for “lokasjons” portal), og pytest-8.3.2 med libportal-0.7.1 og dbusmock-0.32.1 (for å kjøre tester)
sphinx-8.0.2 med sphinxext.opengraph, sphinx_copybutton, furo, and flatpak
Installer xdg-desktop-portal ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Hvis du har installert de nødvendige avhengighetene, kan du teste resultatene ved å kjøre ninja test. Seks tester er kjent for å mislykkes hvis du ikke bruker gnome-terminal-3.52.2 og er i GNOME.
Nå, som root bruker:
ninja install
De viktigste konfigurasjonsfilene er ~/.config/xdg-desktop-portal/portals.conf,
/etc/xdg-desktop-portal/portals.conf, og
/usr/share/xdg-desktop-portal/portals.conf.
Flere andre steder kan søkes etter konfigurasjonsfiler. Se
portals.conf(5).
De ulike konfigurasjonsfilene brukes til å velge bakstykke avhengiget av ulike forhold. Se portals.conf(5) for detaljer.
xdg-desktop-portal-gtk er et bakstykke for xdg-desktop-portal, som bruker GTK og ulike deler av GNOME infrastruktur.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/flatpak/xdg-desktop-portal-gtk/releases/download/1.15.1/xdg-desktop-portal-gtk-1.15.1.tar.xz
Nedlasting MD5 sum: 9c7836b1fe09bc914ea4c06b9c58231f
Nedlastingsstørrelse: 89 KB
Estimert diskplass som kreves: 9.7 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK+-3.24.43 og xdg-desktop-portal-1.18.2
gnome-desktop-44.1 (for å kompilere flere portalgrensesnitt)
Installer xdg-desktop-portal-gtk ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Skjermbehandlere er grafiske programmer som brukes for å starte det grafiske visningen (for øyeblikket X serveren) og gi en påloggingsmulighet for et Vindusbehandlings eller skrivebords miljø.
Det er mange tilgjengelige Skjermbehandlere. Noen av de mer vel kjente inkluderer: gdm, kdm (avviklet), LightDM, lxdm, Slim, og sddm.
Blant skrivebordsmiljøene som er tilgjengelige for Linux finner du: Enlightenment, GNOME, Plasma, lxde, LXQt, og xfce.
Å velge en Skjermbehandler eller et skrivebordsmiljø er svært subjektivt. Valget avhenger av utseendet og følelsen til pakkene, ressursene (minne og diskplass) som kreves, og verktøyene inkludert.
I dette kapittelet, installasjonsinstruksjonene til noen skjermbehandlere er presentert. Senere i boken finner du andre, som blir levert som en del av noen skrivebordsmiljøer.
GDM er en systemtjeneste som er ansvarlig for å gi grafiske pålogginger og administrere lokale og eksterne skjermer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gdm/46/gdm-46.2.tar.xz
Nedlasting MD5 sum: 1d92ec4dd0643907fa135056aee18066
Nedlastingsstørrelse: 912 KB
Estimert diskplass som kreves: 37 MB
Estimert byggetid: 0.2 SBU
AccountsService-23.13.9, DConf-0.40.0, libcanberra-0.30 (bygget etter GTK+-3.24.43), og Linux-PAM-1.6.1
Det anbefales å ha en dedikert bruker og gruppe for å ta
kontroll over gdm nissen etter at den er
startet. Utfør følgende kommandoer som root bruker:
groupadd -g 21 gdm &&
useradd -c "GDM Daemon Owner" -d /var/lib/gdm -u 21 \
-g gdm -s /bin/false gdm &&
passwd -ql gdm
Installer GDM ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gdm-xsession=true \
-D run-dir=/run/gdm &&
ninja
Denne pakken kommer ikke med en brukbar testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D initial-vt=7: Bruk denne
bryteren for at GDM skal
starte på VT7 i stedet for den første ledige VT.
-D default-pam-config=lfs: Bruk
denne bryteren hvis du ikke opprettet /etc/lfs-release fil ellers vil
distribusjon automatisk gjenkjenning mislykkes, og du vil
ikke kunne bruke GDM.
-D gdm-xsession=true:
Dette aktiverer installasjon av GDM Xsession filen.
GDM nissen er konfigurert ved hjelp av /etc/gdm/custom.conf filen.
Standardverdier er lagret i GSettings i gdm.schemas filen. Det anbefales at
sluttbrukere endrer /etc/gdm/custom.conf filen fordi
skjemaenefilen kan bli overskrevet når brukeren oppdaterer
systemet sitt til en nyere versjon av GDM.
På noen systemer med NVIDIA GPUer vil GDM skjule Wayland
økter som standard. Dette gjøres ofte for å hindre brukere
i å støte på problemer med buggy drivere, som kan føre til
systemlåsing, applikasjon krasjer, strømstyringsproblemer
og grafiske nedganger. Hvis du har en NVIDIA GPU og vil
fortsatt prøve å kjøre Wayland økter uansett, utfør
følgende kommando som root
bruker:
ln -s /dev/null /etc/udev/rules.d/61-gdm.rules
For å starte gdm nissen ved oppstart,
muliggjøre den tidligere installerte systemd enheten ved å
kjøre følgende kommando som root bruker:
systemctl enable gdm
GDM vil suspendere systemet når velkomstskjermen har kjørt
en stund uten interaktive input. Hvis du vil deaktivere
automatisk suspendering uansett årsak (for eksempel hvis
systemet er vert for noen tjenester i tillegg til å fungere
som et skrivebordssystem), som root bruker, utsted:
su gdm -s /bin/bash \
-c "dbus-run-session \
gsettings set org.gnome.settings-daemon.plugins.power \
sleep-inactive-ac-type \
nothing"
lightdm pakken inneholder en lettvekt skjermbehandler basert på GTK.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/CanonicalLtd/lightdm/releases/download/1.32.0/lightdm-1.32.0.tar.xz
Nedlasting MD5 sum: e62a5da6c35f612e4d9575eda5c8d467
Nedlastingsstørrelse: 508 KB
Estimert diskplass som kreves: 20 MB
Estimert byggetid: 0.2 SBU
greeter er et program for å presentere en grafisk påloggingsskjerm. Det er flere alternative hilsener, men gtk+ pakken er referanse gjennomføringen. For en liste over andre hilser, se https://en.wikipedia.org/wiki/LightDM.
Nedlasting (HTTP): https://github.com/Xubuntu/lightdm-gtk-greeter/releases/download/lightdm-gtk-greeter-2.0.9/lightdm-gtk-greeter-2.0.9.tar.gz
Nedlasting MD5 sum: 35752d730f39293c2bbe884ef6963830
Nedlastingsstørrelse: 592 KB
Estimert diskplass som kreves: 5.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Exo-4.18.0 (for greeter), libgcrypt-1.11.0, itstool-2.0.7, Linux-PAM-1.6.1, og Xorg-Server-21.1.13 (Kjøretid)
GLib-2.80.4 (med GObject Introspection), libxklavier-5.4, og Vala-0.56.17
AccountsService-23.13.9 (kjøretid), at-spi2-core-2.52.0, GTK-Doc-1.34.0, qt5-components-5.15.14, libido, og libindicator
Først oppretter du en dedikert bruker og gruppe for å ta
kontroll over lightdm nissen etter at den
er startet. Utfør følgende kommandoer som root bruker:
groupadd -g 65 lightdm &&
useradd -c "Lightdm Daemon" \
-d /var/lib/lightdm \
-u 65 -g lightdm \
-s /bin/false lightdm
Installer lightdm ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--libexecdir=/usr/lib/lightdm \
--localstatedir=/var \
--sbindir=/usr/bin \
--sysconfdir=/etc \
--disable-static \
--disable-tests \
--with-greeter-user=lightdm \
--with-greeter-session=lightdm-gtk-greeter \
--docdir=/usr/share/doc/lightdm-1.32.0 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && cp tests/src/lightdm-session /usr/bin && sed -i '1 s/sh/bash --login/' /usr/bin/lightdm-session && rm -rf /etc/init && install -v -dm755 -o lightdm -g lightdm /var/lib/lightdm && install -v -dm755 -o lightdm -g lightdm /var/lib/lightdm-data && install -v -dm755 -o lightdm -g lightdm /var/cache/lightdm && install -v -dm770 -o lightdm -g lightdm /var/log/lightdm
Nå bygg greeter:
tar -xf ../lightdm-gtk-greeter-2.0.9.tar.gz &&
cd lightdm-gtk-greeter-2.0.9 &&
./configure --prefix=/usr \
--libexecdir=/usr/lib/lightdm \
--sbindir=/usr/bin \
--sysconfdir=/etc \
--with-libxklavier \
--enable-kill-on-sigterm \
--disable-libido \
--disable-libindicator \
--disable-static \
--disable-maintainer-mode \
--docdir=/usr/share/doc/lightdm-gtk-greeter-2.0.9 &&
make
Nå, som root bruker:
make install
Hvis du installerte Xorg i /opt, må du lage en symbolsk
lenke slik at lightdm kan finne Xorg serveren. Som
root bruker:
ln -sf /opt/xorg/bin/Xorg /usr/bin/X
sed ... /usr/bin/lightdm-session: Denne kommandoen sikrer at den første påloggingen via greeter kildene /etc/profile og ~/.bash_profile. Uten dette, kommandoer som avhenger av forskjellige miljøvariabler fungerer kanskje ikke som forventet.
/etc/lightdm/{lightdm,users,keys,lightdm-gtk-greeter}.conf
Konfigurasjonsfilene tilbyr mange alternativer. Hvis du for
eksempel har et oppsett med flere skjermer, men foretrekker
at påloggingsvinduet vises på bare én skjerm, sett
'active-monitor=<monitor-name>' i lightdm-gtk-greeter.conf. For eksempel
kan du bruke active-monitor=HDMI-1. Du kan bestemme
monitor-names med xrandr
--listmonitors. Merk at skjermnavnene kan
endres hvis du endrer grafikkdriveren og du må kanskje
justere konfigurasjonen deretter.
Installer lightdm.service
enheten inkludert i blfs-systemd-units-20240801
pakken:
make install-lightdm
greeter tilbyr en liste over tilgjengelige økter, avhengig
av Vindusbehandlere og Skrivebordsmiljø installert. Listen
inkluderer økter som har en tilsvarende .desktop fil installert under
/usr/share/xsessions.
Mesteparten av Vindusbehandlere og Skrivebordsmiljøer gir
disse filene automatisk, men om nødvendig kan du inkludere
en egendefinert.
sddm pakken inneholder en lettvekts skjermbehandler basert på Qt og QML.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/sddm/sddm/archive/v0.21.0/sddm-0.21.0.tar.gz
Nedlasting MD5 sum: e32a35c282d9be3360737eefbe25b5fa
Nedlastingsstørrelse: 3.4 MB
Estimert diskplass som kreves: 24 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
CMake-3.30.2, extra-cmake-modules-6.5.0, og Qt-6.7.2
docutils-0.21.2 (for manualsidene), Linux-PAM-1.6.1, og UPower-1.90.4
Først oppretter du en dedikert bruker og gruppe for å ta
kontroll over sddm nissen etter at den er
startet. Utfør følgende kommandoer som root bruker:
groupadd -g 64 sddm &&
useradd -c "sddm Daemon" \
-d /var/lib/sddm \
-u 64 -g sddm \
-s /bin/false sddm
Installer sddm ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D RUNTIME_DIR=/run/sddm \
-D BUILD_MAN_PAGES=ON \
-D BUILD_WITH_QT6=ON \
-D DATA_INSTALL_DIR=/usr/share/sddm \
-D DBUS_CONFIG_FILENAME=sddm_org.freedesktop.DisplayManager.conf \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -v -dm755 -o sddm -g sddm /var/lib/sddm /usr/bin/sddm --example-config > /etc/sddm.conf
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren er brukt
til å legge til ekstra kompilatoroptimaliseringer.
-D
DBUS_CONFIG_FILENAME=sddm_org.freedesktop.DisplayManager.conf:
Denne bryteren forhindrer at filen /etc/dbus-1/system.d/org.freedesktop.DisplayManager.conf
fra å bli overskrevet, da den kan brukes av andre DM-er.
-D
BUILD_MAN_PAGES=ON: Denne bryteren brukes til å
bygge og installer manualsider.
/etc/sddm.config
Vanligvis vil du redigere denne filen. For eksempel hvis
Xorg er installert i /opt, bruk ditt foretrukne
redigeringsprogram som root
bruker for å erstatte standard XauthPath verdi med /opt/xorg/bin/xauth. Eller, som
root bruker, utsted:
sed -i.orig '/ServerPath/ s|usr|opt/xorg|' /etc/sddm.conf
Denne kommandoen vil gjøre erstatningen og lage en kopi av
originalen med filnavnet /etc/sddm.conf.orig.
Fra nå av vil vi beskrive hvordan du endrer konfigurasjoner
ved å bruke sed. Selvfølgelig kan du i stedet bruke ditt
foretrukne redigeringsprogram som root bruker.
Av sikkerhetsgrunner vil du vanligvis ha standard
ServerArguments=-nolisten
tcp, med mindre en ekstern maskin trenger
tilgang til den lokale X serveren. I så fall, som
root bruker, utsted:
sed -i 's/-nolisten tcp//' /etc/sddm.conf
Stasjonær maskin (bærbare datamaskin) brukere vil normalt
ha Num Lock-tasten på (av). For det som root, utsted:
sed -i '/Numlock/s/none/on/' /etc/sddm.conf
for brukere av stasjonære maskiner. For brukere av bærbare datamaskiner, erstatt /on/ med /off/ i kommandoen ovenfor.
Som standard presenteres et virtuelt tastatur for brukeren.
Hvis dette ikke er ønsket, kjør som root:
sed -i 's/qtvirtualkeyboard//' /etc/sddm.conf
Aktiver den forhåndsinstallerte systemd enheten ved å kjøre
følgende kommando som root
bruker:
systemctl enable sddm
Installasjonsprosedyren ovenfor installerte et sett med PAM konfigurasjonsfiler. Disse prosedyrene overskriver dem og bruker versjoner som er kompatible med et BLFS miljø.
Hvis du har bygget sddm
med Linux PAM støtte,
opprett de nødvendige konfigurasjonsfilene ved å kjøre
følgende kommandoer som root bruker:
cat > /etc/pam.d/sddm << "EOF" &&# Begin /etc/pam.d/sddm auth requisite pam_nologin.so auth required pam_env.so auth required pam_succeed_if.so uid >= 1000 quiet auth include system-auth account include system-account password include system-password session required pam_limits.so session include system-session # End /etc/pam.d/sddmEOF cat > /etc/pam.d/sddm-autologin << "EOF" &&# Begin /etc/pam.d/sddm-autologin auth requisite pam_nologin.so auth required pam_env.so auth required pam_succeed_if.so uid >= 1000 quiet auth required pam_permit.so account include system-account password required pam_deny.so session required pam_limits.so session include system-session # End /etc/pam.d/sddm-autologinEOF cat > /etc/pam.d/sddm-greeter << "EOF"# Begin /etc/pam.d/sddm-greeter auth required pam_env.so auth required pam_permit.so account required pam_permit.so password required pam_deny.so session required pam_unix.so -session optional pam_systemd.so # End /etc/pam.d/sddm-greeterEOF
Velkomstskjermen tilbyr en liste over tilgjengelige økter,
avhengig av vindusbehandlere og skrivebordsmiljøer som er
installert. Listen inkluderer økter som har en tilsvarende
.desktop fil installert under
/usr/share/xsessions eller
/usr/share/wayland-sessions.
De fleste vindusbehandlere og skrivebordsmiljøer automatisk
gir disse filene, men om nødvendig kan du inkludere en
egendefinert.
Tre temaer er installert i /usr/share/sddm/themes: elarun, maldives,
og maya. Det er også et standardtema, som ikke finnes i den
mappen. Du kan installere andre temaer i den mappen. For å
endre tema, må du redigere /etc/sddm.conf, for å endre standard
(tomt) tema, erstatt “Current=” med “Current=<new
theme>”, f.eks. “Current=maldives”.
For å se temaet uten å forlate økten, utsted:
sddm-greeter --test-mode --theme <theme path>
Vindubehandlere og skrivebordsmiljøer er den primære brukeren sitt grensesnitt inn i X Vindussystemet. En vindubehandler er et program som kontrollerer utseendet til vinduer og gir måten brukeren kan samhandle med dem. Et skrivebordsmiljø gir et mer komplett grensesnitt til operativsystemet, og gir en rekke integrerte verktøy og applikasjoner.
Det er mange Vindubehandlere tilgjengelig. Noen av de mer kjente inkluderer fvwm2, Window Maker, AfterStep, Enlightenment, Sawfish, og Blackbox.
Skrivebordsmiljøene som er tilgjengelige for Linux er GNOME, KDE, og XFce.
Å velge en Vindubehandler eller Skrivebordsmiljø er svært subjektiv. Valget avhenger av utseendet og følelsen til pakkene, ressurser (RAM, diskplass) som kreves, og verktøyene inkludert. Et nettsted som gir et veldig godt sammendrag av hva som er tilgjengelig, skjermbilder, og deres respektive funksjoner er Window Managers for X .
I dette kapittelet, installasjonsinstruksjonene til flere Vindubehandler og ett lett skrivebordsmiljø presenteres. Senere i boken, både KDE og GNOME har sine egne seksjoner.
Fluxbox pakken inneholder en vindusbehandler..
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/fluxbox/fluxbox-1.3.7.tar.xz
Nedlasting MD5 sum: b44afd10ee1e64624c23115aa51dcd55
Nedlastingsstørrelse: 772 KB
Estimert diskplass som kreves: 101 MB
Estimert byggetid: 0.9 SBU
dbus-1.14.10 (kjøretid), FriBidi-1.0.15, og imlib2-1.12.3 (hvis du ønsker å bruke andre bildeformater i tillegg til XPM)
Først, fikse en byggefeil når du bygger med gcc-11.1:
sed -i '/text_prop.value > 0/s/>/!=/' util/fluxbox-remote.cc
Installer Fluxbox ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken har ikke en fungerende testpakke.
Nå, som root bruker:
make install
Hvis Fluxbox er den eneste
vindusbehandleren du vil bruke, kan du starte den med en
.xinitrc fil i hjemmemappen
din. Sørg for å sikkerhetskopiere din nåværende
.xinitrc før du fortsetter.
echo startfluxbox > ~/.xinitrc
Eller alternativt, hvis du bruker en innloggingsbehandler
som GDM-46.2 eller lightdm-1.32.0, og
vil kunne velge Fluxbox
ved påloggingsprompten oppretter du en fluxbox.desktop fil. Som root:
mkdir -pv /usr/share/xsessions &&
cat > /usr/share/xsessions/fluxbox.desktop << "EOF"
[Desktop Entry]
Encoding=UTF-8
Name=Fluxbox
Comment=This session logs you into Fluxbox
Exec=startfluxbox
Type=Application
EOF
Hvis du ikke installerte GDM-46.2 eller lightdm-1.32.0 i
/usr, endre da kommandoen
slik at den passer til prefikset du valgte.
Lag nå Fluxbox konfigurasjonsfiler:
mkdir -v ~/.fluxbox && cp -v /usr/share/fluxbox/init ~/.fluxbox/init && cp -v /usr/share/fluxbox/keys ~/.fluxbox/keys
For å generere applikasjonsmenyen, vil du kanskje først
kjøre fluxbox-generate_menu
-h, for å velge en <user_options>,
deretter utsted:
cd ~/.fluxbox &&
fluxbox-generate_menu <user_options>
Alternativt kan du kopiere en forhåndsgenerert meny:
cp -v /usr/share/fluxbox/menu ~/.fluxbox/menu
Menyelementer legges til ved å redigere~/.fluxbox/menu. Syntaksen er forklart på
fluxbox
manualsiden.
Hvis du vil bruke et bilde som skrivebordsbakgrunn,
kopierer du temaet du liker ~/.fluxbox. Legg deretter til en linje
for å få den til å bruke riktig bilde. I de neste
kommandoene, endre <theme> til navnet av
temaet du ønsker og endre </path/to/nice/image.ext>
til å peke på det faktiske bildet du vil bruke, hvor
ext må være
xpm, hvis imlib2-1.12.3 ikke
er installert for å tillate andre bildeformater.
cp -r /usr/share/fluxbox/styles/<theme> ~/.fluxbox/theme && sed -i 's,\(session.styleFile:\).*,\1 ~/.fluxbox/theme,' ~/.fluxbox/init && [ -f ~/.fluxbox/theme ] && echo "background.pixmap: </path/to/nice/image.ext>" >> ~/.fluxbox/theme || [ -d ~/.fluxbox/theme ] && echo "background.pixmap: </path/to/nice/image.ext>" >> ~/.fluxbox/theme/theme.cfg
I noen lokaliteter inneholder kanskje ikke fonten som er
spesifisert i temaet nødvendige tegn. Dette resulterer i
menyer med tomme elementer. Du kan fikse dette ved å
redigere ~/.fluxbox/theme med
en tekstredigerer og endre den slik at den navngir en
passende font.
|
er en vindusbehandler for X11 basert på Blackbox 0.61.0 |
|
|
er et verktøy som setter bakgrunnsbildet. Det krever en av følgende under kjøring: Esetroot, wmsetbg, feh, hsetroot, chbg, display, qiv, xv, xsri, xli, eller xsetbg. Det krever også which hvis Esetroot er funnet |
|
|
er et verktøy for å endre utseendet på rotvinduet basert på Blackbox applikasjonen bsetroot |
|
|
er et verktøy som genererer en meny ved å skanne
|
|
|
er et oppstartsskript for økter som tillater kommando utførelser før fluxbox starter |
|
|
viser et kjør dialogvindu |
|
|
gir kommandolinjetilgang til nøkkelkommandoer for Fluxbox |
|
|
bruk for å administrere konfigurasjonsfiler (last på nytt, oppdatering, test) |
IceWM er en vindusbehandler med mål om hastighet, enkelhet og ikke å komme i brukeren' sin vei.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/ice-wm/icewm/archive/3.6.0/icewm-3.6.0.tar.gz
Nedlasting MD5 sum: a94dde82caae27f01d57fba7ba12225a
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 47 MB
Estimert byggetid: 0.4 SBU
CMake-3.30.2, imlib2-1.12.3, og et grafiske miljø
asciidoc-10.2.1 (for å regenerere HTML dokumentasjonen), FriBidi-1.0.15 (for språk skrevet fra høyre til venstre), librsvg-2.58.3, libao-1.2.0, libsndfile-1.2.2, alsa-lib-1.2.12 (for det eksperimentelle icesound programmet), og gdk-pixbuf-xlib
Installer IceWM ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CFGDIR=/etc \
-D ENABLE_LTO=ON \
-D DOCDIR=/usr/share/doc/icewm-3.6.0 \
.. &&
make
Denne pakken har ikke en fungerende testpakke.
Nå, som root bruker:
make install
Denne pakken lager to .desktop
filer i /usr/share/xsessions/
mappen. Begge er ikke nødvendig i et BLFS system, så unngå at
de ekstra filene vises som et alternativ i en
skjermbehandler. Som root
bruker:
rm -v /usr/share/xsessions/icewm.desktop
-D ENABLE_LTO=ON:
Dette alternativet aktiverer Link Time Optimization og kreves
for denne pakken.
~/.icewm/keys, ~/.icewm/menu, og ~/.icewm/preferences, og ~/.icewm/toolbar, og ~/.icewm/winoptions. Standardversjonene
er installert i /usr/share/icewm/ og vil bli brukt hvis
du ikke har kopiert dem til ~/.icewm.
Hvis IceWM er den eneste
Vindusbehandleren du ønsker å bruke, kan du starte den med
en .xinitrc fil i
hjemmemappen din. Sørg for å sikkerhetskopiere gjeldende
.xinitrc før du fortsetter.
echo icewm-session > ~/.xinitrc
Nå oppretter du IceWM konfigurasjonsfiler:
mkdir -pv ~/.icewm && cp -v /usr/share/icewm/keys ~/.icewm/keys && cp -v /usr/share/icewm/menu ~/.icewm/menu && cp -v /usr/share/icewm/preferences ~/.icewm/preferences && cp -v /usr/share/icewm/toolbar ~/.icewm/toolbar && cp -v /usr/share/icewm/winoptions ~/.icewm/winoptions
Du kan nå redigere disse filene for å møte dine krav.
Spesielt, gjennomgå preferences filen. Du kan bruke
Logout ->
Restart-IceWM på hovedmenyen for å laste
dine endrede preferanser, men endringer i bakgrunnen tar
bare effekt når IceWM er
startet.
På dette tidspunktet kan du enten tilpasse tradisjonelle menyfiler som passer dine behov, eller bruke den nyere icewm-menu-fdo beskrevet senere.
Syntaksen til menyene er forklart i hjelpefilene, som du får tilgang til ved å kjøre help fra menyen, men noen av detaljen er utdatert og standardvalgene i menyene (noen få gamle applikasjoner på hovedmenyen, alt annet på Programs menyen) vil ha nytte av å bli oppdatert til å møte dine behov. Følgende eksempler er gitt for å oppmuntre deg til å tenke på hvordan du ønsker å organisere menyene dine. Vær oppmerksom på følgende:
Hvis et program som er oppført i menyen ikke er installert, vil det ikke vises når menyen vises. Tilsvarende hvis programmet eksisterer, men det angitte ikonet ikke gjør det, vil ingen ikon vises i menyen.
Ikonene kan være enten .xpm eller .png filer, og det er ikke
nødvendig å spesifisere utvidelsen. Hvis ikonet er
plassert i "library" (/usr/share/icewm/icons) er det ikke
nødvendig å spesifisere banen.
De fleste programmer er i undermenyer, og hovedmenyen
vil alltid legge til oppføringer for windows, help, settings, logout på
bunnen.
Et ikon for firefox
ble kopiert til library mappen og gitt et
meningsfullt navn. Ikonet for xine er xine.xpm som ble installert i en
pixmap mappe.
Standard verktøylinje er ikke endret.
Hvis du ønsker å bruke denne tradisjonelle metoden, er det flere eksempler i tidligere utgivelser av denne boken (f.eks. BLFS-7.8).
Alternativt, kan du lage en meny som samsvarer med FDO Desktop Menu Specifications, hvor programmer kan bli funnet fordi de har en .desktop fil i XDG_DATA_HOME eller XDG_DATA_DIR mappene. I motsetning til de fleste vindusbehandlere, icewm søker ikke etter programmer når menyen påkalles, så hvis du tar denne ruten må du kjøre følgende kommando etter installasjon eller fjerning av programmer:
icewm-menu-fdo >~/.icewm/menu
Hvis du ønsker å putte ikoner på skrivebordet ditt, må du installere et program som f.eks rox-filer som gir en oppslagstavle. Hvis du gjør det vil du ikke lenger få tilgang til menyen ved å høyreklikke på skrivebordet, du må bruke IceWM knappen. For å sikre at rox oppslagstavlen kjører, følgende kommandoer vil putte den i oppstartsfilen:
cat > ~/.icewm/startup << "EOF"
rox -p Default &
EOF &&
chmod +x ~/.icewm/startup
Det er en rekke hurtigtaster i IceWM:
Ctrl + Alt + FN : går til
tty.
N
Ctrl + Alt + N : går til
skrivebord nummer N
Ctrl + Alt + Space : åpne en boks på oppgavelinjen der du kan taste inn navnet på et program og kjøre det.
|
brukes til å vise html manualen |
|
|
er en kommandolinje vindusbehandler som kan brukes
i |
|
|
spiller av lydfiler på GUI hendelser reist av IceWM |
|
|
er vindusbehandleren |
|
|
kan lage en fil i et format som passer for en IceWM menyen, som viser de programmene som for øyeblikket er installert i et oppsett som samsvarer med FDO Desktop Menu Specifications |
|
|
er et hjelpeprogram som brukes til å administrere flerskjermskonfigurasjoner |
|
|
kjører icewmbg, icewm, icewmtray, startup, shutdown (dvs. oppstart og avslutning skript kjøres hvis de er installert) |
|
|
er et skript for å angi GNOME vindusbehandler til icewm ved bruk av gconftool |
|
|
brukes til å sette bakgrunnen, i henhold til de
ulike |
|
|
brukes internt for å gi hint til brukeren |
Openbox er et svært konfigurerbart skrivebord vindusbehandler med omfattende standardstøtte. Den lar deg kontrollere nesten alle aspekter av hvordan du samhandler med skrivebordet ditt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://openbox.org/dist/openbox/openbox-3.6.1.tar.gz
Nedlasting MD5 sum: b72794996c6a3ad94634727b95f9d204
Nedlastingsstørrelse: 944 KB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.3 SBU
et grafiske miljø og Pango-1.54.0 (kompilert med støtte for libXft)
dbus-1.14.10 (kjøretid), imlib2-1.12.3 (for å aktivere ikoner i høyreklikkmenyen), ImageMagick-7.1.1-36 (for å vise skrivebordsbakgrunner som vist i Konfigurasjonsinformasjonsdelen nedenfor), PyXDG-0.28, startup-notification-0.12, og librsvg-2.58.3
Hvis XORG_PREFIX ikke er /usr, fortell gcc om det:
export LIBRARY_PATH=$XORG_PREFIX/lib
Hvis du bare installerte Python 3 PyXDG modulen, konverter en av skriptene til Python 3:
2to3-3.12 -w data/autostart/openbox-xdg-autostart && sed 's/python/python3/' -i data/autostart/openbox-xdg-autostart
Installer Openbox ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static \
--docdir=/usr/share/doc/openbox-3.6.1 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Denne pakken oppretter tre .desktop filer i /usr/share/xsessions/ mappen. To av disse
er ikke passende i et BLFS system, så unngå de ekstra filene
som vises som alternativer i en skjermbehandling. Som
root bruker:
rm -v /usr/share/xsessions/openbox-{gnome,kde}.desktop
--sysconfdir=/etc:
Dette alternativet putter Openbox sine konfigurasjonsfiler i
/etc/xdg/openbox i stedet for /usr/etc/xdg/openbox.
--docdir=/usr/share/doc/openbox-3.6.1:
dette legger noen få filer i en versjonert mappe i
/usr/share/doc.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
/etc/xdg/openbox/autostart,
/etc/xdg/openbox/menu.xml,
/etc/xdg/openbox/rc.xml,
~/.config/openbox/autostart,
~/.config/openbox/menu.xml og
~/.config/openbox/rc.xml
Openbox sin høyreklikk
menyen kan brukes til å starte programmer. Selve menyen er
konfigurert med 2 filer, /etc/xdg/openbox/menu.xml og ~/.config/openbox/menu.xml. For å gjøre
endringer i menyen, kopier /etc/xdg/openbox/menu.xml til
~/.config/openbox/menu.xml og redigere den:
cp -rf /etc/xdg/openbox ~/.config
For å ha ikoner i høyreklikkmenyen krever installasjon av
imlib2-1.12.3 før du installerer
Openbox. For å angi et
ikon for en oppføring i menyen rediger ~/.config/openbox/menu.xml og legg til et
ikonet til <item> taggen som dette:
<item label="Mplayer" icon="/usr/share/pixmaps/mplayer.png">
Mange andre aspekter ved Openbox sin oppførsel er konfigurert
med ~/.config/openbox/rc.xml
som for eksempel hvilke tastebindinger som brukes for å
starte programmer eller hvilken museknapp som starter
hovedmenyen.
Detaljer om temaet som Openbox setter for vindusdekorasjoner
er konfigurert i ~/.config/openbox/rc.xml. Du kan få en
liste over tilgjengelige temaer med kommandoen:
ls -d /usr/share/themes/*/openbox-3 | sed 's#.*es/##;s#/o.*##'
For å starte openbox automatisk når du starter Xorg:
echo openbox > ~/.xinitrc
Hvis du vil sette et bakgrunnsbilde til skrivebordet ditt kan du bruke display og starte den fra ~/.xinitrc like før openbox:
cat > ~/.xinitrc << "EOF"
display -backdrop -window root /path/to/beautiful/picture.jpeg
exec openbox
EOF
Eller hvis du liker litt variasjon, legg et utvalg bilder i en mappe (i dette eksemplet, mappen ~/.config/backgrounds) og velg en tilfeldig hver gang du xinit:
cat > ~/.xinitrc << "EOF"
# make an array which lists the pictures:
picture_list=(~/.config/backgrounds/*)
# create a random integer between 0 and the number of pictures:
random_number=$(( ${RANDOM} % ${#picture_list[@]} ))
# display the chosen picture:
display -backdrop -window root "${picture_list[${random_number}]}"
exec openbox
EOF
Hvis du liker å ha numlock tasten satt når du starter Xorg, installer Numlockx og legg det til din xinitrc. En annen nyttig applikasjon er dbus-1.14.10:
cat > ~/.xinitrc << "EOF"
. /etc/profile
picture_list=(~/.config/backgrounds/*)
random_number=$(( ${RANDOM} % ${#picture_list[*]} ))
display -backdrop -window root "${picture_list[${random_number}]}"
numlockx
eval $(dbus-launch --auto-syntax --exit-with-session)
lxpanel &
exec openbox
EOF
|
er et kommandolinjeverktøy for å sende signaler til GDM |
|
|
er et kommandolinjeverktøy for å starte Gnome Panel kjør dialog/meny |
|
|
er et verktøy for å vise egenskapene på et x vindu. Den har en lignende funksjonalitet som xprop, men lar deg se UTF-8 strenger som tekst |
|
|
er en standardkompatibel, svært konfigurerbar vindusbehandler |
|
|
er et skript for å starte en Gnome økt med Openbox som din
vindusbehandler fra din |
|
|
er et skript for å starte en KDE økt med Openbox som din
vindusbehandler fra din |
|
|
er et skript for å starte en Openbox økt fra din
|
|
|
inneholder funksjonene som brukes av Openbox for temagjengivelse |
|
|
er Openbox verktøysett bibliotek |
Vindusbehandlere og skrivebordsmiljøer kan bruke ikoner fra
forskjellige kilder. Vanligvis er ikoner installert i
/usr/share/icons og er uavhengige
av distribusjon.
Adwaita Ikontema pakken inneholder et ikontema for GTK+ 3 og GTK 4 applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/adwaita-icon-theme/46/adwaita-icon-theme-46.2.tar.xz
Nedlasting MD5 sum: 6829461ddc1dd0a9b7d115ccc0c186ac
Nedlastingsstørrelse: 4.4 MB
Estimert diskplass som kreves: 30 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK+-3.24.43 eller GTK-4.14.5, og librsvg-2.58.3
Installer Adwaita Ikontema ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr .. && ninja
Denne pakken kommer ikke med en testpakke.
Fjern eventuelle gamle ikoner og installer de nye. Som
root bruker:
rm -rf /usr/share/icons/Adwaita/ && ninja install
Breeze Ikoner pakken inneholder standardikoner for KDE Plasma applikasjoner, men den kan brukes til andre vindusmiljøer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.5/breeze-icons-6.5.0.tar.xz
Nedlasting MD5 sum: 25c0a753edc62593ecca9f56a34f7ef1
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 251 MB
Estimert byggetid: 0.7 SBU
extra-cmake-modules-6.5.0 og Qt-6.7.2
Installer Breeze Ikoner ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D BUILD_TESTING=OFF \
-W no-dev ..
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
-D BUILD_TESTING=OFF:
Denne parameteren deaktiverer bygging av testrammeverket, som
krever noen moduler fra KDE
Frameworks-6.5.0.
GNOME Ikon Tema pakken inneholder et utvalg av ikke-skalerbare ikoner i forskjellige størrelser og temaer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-icon-theme/3.12/gnome-icon-theme-3.12.0.tar.xz
Nedlasting MD5 sum: f14bed7f804e843189ffa7021141addd
Nedlastingsstørrelse: 17 MB
Estimert diskplass som kreves: 85 MB
Estimert byggetid: 0.5 SBU
GTK+-3.24.43, hicolor-icon-theme-0.18, og icon-naming-utils-0.8.90
Installer GNOME Ikon Tema ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
GNOME Ekstra Temaikon pakken inneholder ekstra ikoner for GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-icon-theme-extras/3.12/gnome-icon-theme-extras-3.12.0.tar.xz
Nedlasting MD5 sum: 91f8f7e35a3d8d926716d88b8b1e9a29
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer GNOME Ekstra Temaikon ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
GNOME Symbolsk Temaikon pakken inneholder symbolske ikoner for standard GNOME ikontema.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-icon-theme-symbolic/3.12/gnome-icon-theme-symbolic-3.12.0.tar.xz
Nedlasting MD5 sum: 3c9c0e6b9fa04b3cbbb84da825a26fd9
Nedlastingsstørrelse: 228 KB
Estimert diskplass som kreves: 6.8 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer GNOME Symbolsk Temaikon ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
GNOME Ekstra Temaer pakke, tidligere kjent som GNOME Standard Temaer, inneholder ulike komponenter i standard GNOME tema.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-themes-extra/3.28/gnome-themes-extra-3.28.tar.xz
Nedlasting MD5 sum: f9f2c6c521948da427f702372e16f826
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 40 MB
Estimert byggetid: 0.3 SBU
Installer GNOME Ekstra Temaer ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-gtk2-engine && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-gtk2-engine: Denne
bryteren deaktiverer GTK+-2 temamotor fordi GTK+-2 ikke
lenger er en del av BLFS.
--disable-gtk3-engine: Denne
bryteren deaktiverer GTK+-3 temamotoren.
hicolor-icon-theme pakke inneholder et standard reservetema for implementeringer av temaikon spesifikasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://icon-theme.freedesktop.org/releases/hicolor-icon-theme-0.18.tar.xz
Nedlasting MD5 sum: ef14f3af03bcde9ed134aad626bdbaad
Nedlastingsstørrelse: 32 KB
Estimert diskplass som kreves: 644 KB
Estimert byggetid: mindre enn 0.1 SBU
Installer hicolor-icon-theme ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
icon-naming-utils pakken inneholder et Perl skript brukt for å vedlikeholde bakoverkompatibilitet med gjeldende skrivebordsikontemaer, mens du migrerer til navn spesifisert i Ikonnavnings spesifikasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://tango.freedesktop.org/releases/icon-naming-utils-0.8.90.tar.bz2
Nedlasting MD5 sum: dd8108b56130b9eedc4042df634efa66
Nedlastingsstørrelse: 57 KB
Estimert diskplass som kreves: 440 KB
Estimert byggetid: mindre enn 0.1 SBU
Installer icon-naming-utils ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
LXDE Ikontema pakken inneholder nuoveXT 2.2 Ikontema for LXDE.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/lxde/lxde-icon-theme-0.5.1.tar.xz
Nedlasting MD5 sum: 7467133275edbbcc79349379235d4411
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 18 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK+-3.24.43 (for gtk-update-icon-cache kommandoen)
Installer LXDE Ikontema ved å kjøre følgende kommandoer:
./configure --prefix=/usr
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har installert en av de valgfrie avhengighetene, kjør
følgende kommando som root
bruker:
gtk-update-icon-cache -qf /usr/share/icons/nuoveXT2
Oxygen ikontemae er en fotorealistisk ikonstil, med en høy standard på grafikkkvalitet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/oxygen-icons/oxygen-icons-6.0.0.tar.xz
Nedlasting MD5 sum: 7de8aed8caa14ccf5b4906e68c020d55
Nedlastingsstørrelse: 231 MB
Estimert diskplass som kreves: 453 MB
Estimert byggetid: mindre enn 0.1 SBU
Aktiver først skalerbare ikoner:
sed -i '/( oxygen/ s/)/scalable )/' CMakeLists.txt
Installer oxygen-icons ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -W no-dev ..
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
KDE er et omfattende skrivebordsmiljø med et stort antall applikasjoner skrevet for det og en enorm mengde brukere. Den er basert på Qt rammeverket.
For mer informasjon besøk den offisielle KDE prosjektsiden på https://kde.org/.
KDE er et omfattende skrivebordsmiljø med et stort antall applikasjoner skrevet for det og en enorm mengde brukere. Den er basert på Qt rammeverket.
KDE5 systemet har to hovedblokker: bibliotekene, kalt KDE Frameworks 6 eller KF6, som kan brukes i andre miljøer, og skrivebordsmiljø kalt KDE Plasma 6. De fleste applikasjonene skrevet av KDE teamet bruker kun KF6, og trenger ikke plasmamiljøet
For mer informasjon besøk den offisielle KDE prosjektsiden på https://kde.org/.
Ekstra Cmake Moduler pakken inneholder ekstra CMake moduler brukt av KDE Frameworks og andre pakker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.5/extra-cmake-modules-6.5.0.tar.xz
Nedlasting MD5 sum: bceea430e534852558b54f4bd3354474
Nedlastingsstørrelse: 336 KB
Estimert diskplass som kreves: 7.9 MB
Estimert byggetid: mindre enn 0.1 SBU
sphinx-8.0.2 (for bygge dokumentasjon), PyQt (eksperimentell støtte for å bygge KDE Python bindinger), og ReuseTool (for å kjøre interne tester)
Installer Ekstra Cmake Moduler ved å kjøre følgende kommandoer:
sed -i '/"lib64"/s/64//' kde-modules/KDEInstallDirsCommon.cmake &&
sed -e '/PACKAGE_INIT/i set(SAVE_PACKAGE_PREFIX_DIR "${PACKAGE_PREFIX_DIR}")' \
-e '/^include/a set(PACKAGE_PREFIX_DIR "${SAVE_PACKAGE_PREFIX_DIR}")' \
-i ECMConfig.cmake.in &&
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr .. &&
make
Denne pakken kommer ikke med en testpakke.
I motsetning til andre KF6 pakker, er denne modulen installert i /usr fordi den kan brukes av noen ikke-KF6 pakker.
Nå, som root bruker:
make install
sed ...
Modules/KDEInstallDirs.cmake: Denne
kommandoen deaktiverer programmer som bruker cmake fra å
prøve å installere filer i lib64 undermappen.
sed ...
ECMConfig.cmake.in: Denne kommandoen
beskytter den globale cmake
variabelen PACKAGE_PREFIX_DIR fra
å bli endret når vi sjekker ECM tilstedeværelse: siden vi
installerer ECM i /usr, sjekken
vil sette den variabelen til /usr, mens de fleste KDE pakker forventer
at den blir satt til /opt/kf5
og ville mislykkes i å bygge hvis den er satt til noe annet.
Phonon er multimedia API for KDE. Den erstatter det gamle aRts pakken. Phonon trenger VLC bakstykket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/phonon/4.12.0/phonon-4.12.0.tar.xz
Nedlasting MD5 sum: e80e9c73967080016bdb3c0ee514ceab
Nedlastingsstørrelse: 400 KB
Estimert diskplass som kreves: 23 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
CMake-3.30.2, extra-cmake-modules-6.5.0, GLib-2.80.4, og Qt-6.7.2
phonon-backend-vlc-0.12.0 må være installert etterpå for multimedia operasjoner i KDE.
Installer Phonon ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D PHONON_BUILD_QT5=OFF \
-W no-dev .. &&
make
Nå, som root bruker:
make install
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
for å bruke høyere nivå av kompilatoroptimaliseringer.
-D
PHONON_BUILD_QT5=OFF: Som standard er både QT5 og
QT6 versjoner av denne pakken er bygget. For øyeblikket vil
vi bare ha Qt6 versjonen, siden ingenting i BLFS bruker Qt5
versjonen.
Denne pakken gir en Phonon bakstykke som utnytterVLC media rammeverket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/phonon/phonon-backend-vlc/0.12.0/phonon-backend-vlc-0.12.0.tar.xz
Nedlasting MD5 sum: 2a27b5d249f97a15040481008fb16e1b
Nedlastingsstørrelse: 72 KB
Estimert diskplass som kreves: 6.6 MB
Estimert byggetid: 0.2 SBU
phonon-4.12.0 og VLC-3.0.21 (gui er ikke nødvendig)
Installer Phonon-backend-vlc ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D PHONON_BUILD_QT5=OFF \
.. &&
make
Nå, som root bruker:
make install
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
til å bruke høyere nivå av kompilatoroptimaliseringer.
Polkit-Qt gir en API til PolicyKit i Qt miljøet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/polkit-qt-1/polkit-qt-1-0.200.0.tar.xz
Nedlasting MD5 sum: 6f23bc987ea9c49b4ef21983b9d1dc15
Nedlastingsstørrelse: 60 KB
Estimert diskplass som kreves: 3.8 MB
Estimert byggetid: 0.1 SBU
Installer Polkit-Qt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D QT_MAJOR_VERSION=6 \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
for å bruke høyere nivå av kompilatoroptimaliseringer.
Denne pakken gir et tilpasset sett med protokolldefinisjoner for KDE.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/plasma-wayland-protocols/plasma-wayland-protocols-1.13.0.tar.xz
Nedlasting MD5 sum: 5d30de6367ab1ff92b2ece7b159b3c8b
Nedlastingsstørrelse: 44 KB
Estimert diskplass som kreves: 744 KB
Estimert byggetid: mindre enn 0.1 SBU
Installer Plasma-wayland-protocols ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr ..
Nå, som root bruker:
make install
KF6 kan installeres i /usr eller
/opt/kf6. BLFS redaktører
anbefaler sistnevnte i BLFS miljøet.
Et alternativ er å installere KDE
Rammeverk i /usr
hierarkiet. Dette skaper et enklere oppsett, men gjør det
vanskeligere å prøve flere versjoner av KDE Rammeverk.
export KF6_PREFIX=/usr
Det er en god ide å legge til følgende variabler til ditt system eller personlige profiler:
cat >> /etc/profile.d/qt6.sh << "EOF"# Begin kf6 extension for /etc/profile.d/qt6.sh pathappend /usr/lib/plugins QT_PLUGIN_PATH pathappend $QT6DIR/lib/plugins QT_PLUGIN_PATH pathappend /usr/lib/qt6/qml QML2_IMPORT_PATH pathappend $QT6DIR/lib/qml QML2_IMPORT_PATH # End extension for /etc/profile.d/qt6.shEOF cat > /etc/profile.d/kf6.sh << "EOF"# Begin /etc/profile.d/kf6.sh export KF6_PREFIX=/usr # End /etc/profile.d/kf6.shEOF
Hvis qt6 var installert i
/usr, $QT6DIR/lib/ deler av stiene ovenfor må
kanskje endres til $QT6DIR/lib/qt6/.
I tillegg, hvis Sudo-1.9.15p5 er installert, disse
variablene bør være tilgjengelig for superbrukeren. Utfør
følgende kommandoer som root
bruker:
cat >> /etc/sudoers.d/qt << "EOF"Defaults env_keep += QT_PLUGIN_PATH Defaults env_keep += QML2_IMPORT_PATHEOF cat >> /etc/sudoers.d/kde << "EOF"Defaults env_keep += KF6_PREFIXEOF
En metode for å bygge installasjoner med flere versjoner av
KDE Rammeverk i /opt hierarkiet:
export KF6_PREFIX=/opt/kf6
Hvis du ikke installerer KDE
Rammeverk i /usr, må du
gjøre noen ekstra konfigurasjonsendringer. Beste praksis er å
legge de til ditt system eller din personlige profil:
cat > /etc/profile.d/kf6.sh << "EOF"# Begin /etc/profile.d/kf6.sh export KF6_PREFIX=/opt/kf6 pathappend $KF6_PREFIX/bin PATH pathappend $KF6_PREFIX/lib/pkgconfig PKG_CONFIG_PATH pathappend $KF6_PREFIX/etc/xdg XDG_CONFIG_DIRS pathappend $KF6_PREFIX/share XDG_DATA_DIRS pathappend $KF6_PREFIX/lib/plugins QT_PLUGIN_PATH pathappend $KF6_PREFIX/lib/plugins/kcms QT_PLUGIN_PATH pathappend $KF6_PREFIX/lib/qml QML2_IMPORT_PATH pathappend $KF6_PREFIX/lib/python3.12/site-packages PYTHONPATH pathappend $KF6_PREFIX/share/man MANPATH pathappend $KF6_PREFIX/include CPLUS_INCLUDE_PATH # End /etc/profile.d/kf6.shEOF cat >> /etc/profile.d/qt6.sh << "EOF"# Begin Qt6 changes for KF6 pathappend /usr/lib/plugins QT_PLUGIN_PATH pathappend $QT6DIR/plugins QT_PLUGIN_PATH pathappend $QT6DIR/qml QML2_IMPORT_PATH # End Qt6 changes for KF6EOF
Utvid din /etc/ld.so.conf fil:
cat >> /etc/ld.so.conf << "EOF"
# Begin KF6 addition
/opt/kf6/lib
# End KF6 addition
EOF
Flere KDE Rammeverk og
KDE Plasma pakker
installeres filer i D-Bus,
Polkit, og systemd mappene. Når installering av
KDE 6 på et annet sted enn
/usr, D-Bus, Polkit, og systemd må kunne finne disse filene. Den
enkleste måten å oppnå dette på er å lage følgende
symbolkoblinger (som root
bruker):
install -v -dm755 $KF6_PREFIX/{etc,share} &&
ln -sfv /etc/dbus-1 $KF6_PREFIX/etc &&
ln -sfv /usr/share/dbus-1 $KF6_PREFIX/share &&
ln -sfv /usr/share/polkit-1 $KF6_PREFIX/share &&
install -v -dm755 $KF6_PREFIX/lib &&
ln -sfv /usr/lib/systemd $KF6_PREFIX/lib
Noen pakker kan også installere ikoner fra
"hicolor"-ikonsettet. Siden det ikonsettet brukes av mange
pakker, er det en god ide å lage en symbolkobling til den i
/usr/share for å unngå å ha
flere installasjoner av hicolor-icon-theme-0.18. Kjør
følgende kommandoer som root
bruker:
install -v -dm755 $KF6_PREFIX/share/icons && ln -sfv /usr/share/icons/hicolor $KF6_PREFIX/share/icons
Noen ganger er installasjonsbanene hardkodet til
installerte filer. Dette er grunnen til at /opt/kf6 brukes som installasjonsprefiks
i stedet for /opt/kf6-6.5.0.
Etter installasjon av KDE
Rammeverk, du kan gi nytt navn til mappen og lage en
symbolkobling:
mv /opt/kf6{,-6.5.0}
ln -sfv kf6-6.5.0 /opt/kf6
Senere kan det være lurt å installere andre versjoner av
KDE Rammeverk. For å gjøre
det, bare fjern symbolkoblingen og bruk /opt/kf6 som prefiks igjen. Hvilken
versjon av KDE Rammeverk
du bruker avhenger bare av hvor symbolkoblingen peker.
Ingen annen rekonfigurering vil være nødvendig.
KDE Rammeverk er en samling av biblioteker basert på toppen av Qt6 og QML avledet fra de tidligere KDE bibliotekene. De kan brukes uavhengig av KDE skjermmiljøet (Plasma 6).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Instruksjonene nedenfor bygger alle KDE Rammeverk pakkene i et trinn ved å bruke et bash skript.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.5
Nedlasting MD5 sum: See Below
Nedlastingsstørrelse: 99 MB
Estimert diskplass som kreves: 2.6 GB (183 MB installed)
Estimert byggetid: 18 SBU (using parallelism=8)
extra-cmake-modules-6.5.0, breeze-icons-6.5.0, docbook-xml-4.5, docbook-xsl-nons-1.79.2, libcanberra-0.30, libgcrypt-1.11.0, libical-3.0.18, libxslt-1.1.42, lmdb-0.9.31, qca-2.3.9, qrencode-4.1.1, plasma-wayland-protocols-1.13.0, PyYAML-6.0.2, shared-mime-info-2.4, URI-5.28, og Wget-1.24.5 (kreves for å laste ned pakkene)
Aspell-0.60.8.1 (Ordbok bakstykke for Sonnet), Avahi-0.8 (DNS-SD bakstykke for KDNSSD), ModemManager-1.18.12 (nødvendig for å bygge ModemManager-Qt), NetworkManager-1.48.8 (nødvendig for å bygge NetworkManager-Qt), polkit-qt-0.200.0 (Autentiseringsbakstykke for KAuth), og Vulkan-Loader-1.3.294 (Legg til støtte for Vulkan grafikkdrivere)
Videre forutsetter instruksjonene nedenfor at miljøet har blitt satt opp som beskrevet i Introduction to KF6.
BlueZ-5.77 (nødvendig for å bygge Bluez-Qt), Datamatrix (ansett anbefalt for Prison av oppstrøms)
Doxygen-1.12.0 Kjøretid), doxypypy-0.8.8.7, doxyqml-0.5.3, og requests-2.32.3
libavif-1.1.1, libjxl-0.10.3, libraw-0.21.2, libheif, OpenEXR
UDisks-2.10.1, UPower-1.90.4 og media-player-info (kjøretid)
GPGME-1.23.2, bygget med C++ bindinger (som er standard).
Den enkleste måten å få KDE Rammeverk pakkene på er å bruke en enkelt wget å hente dem alle på en gang:
url=https://download.kde.org/stable/frameworks/6.5/
wget -r -nH -nd -A '*.xz' -np $url
Alternativene som brukes her er:
-r gjentakelse gjennom undermapper
-nH deaktiver generering av vertsprefikserte mapper
-nd ikke lag et hierarki av mapper
-A '*.xz' bare hent *.xz filene
-np ikke hent overordnede mapper
Rekkefølgen på byggefiler er viktig på grunn av interne avhengigheter. Lag listen over filer i riktig rekkefølge som følger:
cat > frameworks-6.5.0.md5 << "EOF"
9f93da02571dc32c0c39db4911546731 attica-6.5.0.tar.xz
#bceea430e534852558b54f4bd3354474 extra-cmake-modules-6.5.0.tar.xz
05e0a1b09e3abb81068e4614f7e9b4a5 kapidox-6.5.0.tar.xz
77c9c2100e36a44714c665644a4773c3 karchive-6.5.0.tar.xz
facb9708090a0eb54a3f6c22f2baa86e kcodecs-6.5.0.tar.xz
698ab95acdc713571f917bb70073e2df kconfig-6.5.0.tar.xz
ab4868788299d29e9016bc57be64b6e6 kcoreaddons-6.5.0.tar.xz
763aa4bc47b19a4b7471eca628be7e8a kdbusaddons-6.5.0.tar.xz
a30dc9bc14f6f2c2316a252e1f6ee7b7 kdnssd-6.5.0.tar.xz
e23c576829b3a35631b729a3826eb381 kguiaddons-6.5.0.tar.xz
54d5c5dc203772577b6e01e7704f23d2 ki18n-6.5.0.tar.xz
fb7a5aec22e99bc69d4c4d50ee418dd5 kidletime-6.5.0.tar.xz
6751e1b3b08bfd34b7f791f90419796a kimageformats-6.5.0.tar.xz
5fd3404f7197097a23d2db7cd776432e kitemmodels-6.5.0.tar.xz
6b6f3cd08284cef4c7bed3d31c5735a4 kitemviews-6.5.0.tar.xz
0a33080b08df165501d065eb0ccbb4d6 kplotting-6.5.0.tar.xz
ff9f14101fe8bb6686cc3bc8e1d352f7 kwidgetsaddons-6.5.0.tar.xz
5631073e18780513a3005159dd73e290 kwindowsystem-6.5.0.tar.xz
579eea31abc156e82cc4b746d212f4d2 networkmanager-qt-6.5.0.tar.xz
712a3c59785bd0de4862cce34de58e4c solid-6.5.0.tar.xz
afe1cc49342b0b78993172c8a9e1dc20 sonnet-6.5.0.tar.xz
b9df82b41676d91ea0371bd61e6082d0 threadweaver-6.5.0.tar.xz
952c44490af601ebd58cae56a5c38481 kauth-6.5.0.tar.xz
1db39b1e20b31bbff7d2079e9856b067 kcompletion-6.5.0.tar.xz
104bcce4ba8d7d5936ffb4be66762ff0 kcrash-6.5.0.tar.xz
43dfbda305f57ae0cda57091202d034a kdoctools-6.5.0.tar.xz
b39dc81ffbea67c69a1e9e41e6c4acb5 kpty-6.5.0.tar.xz
f721e794c896d48f4143bf8054f471d0 kunitconversion-6.5.0.tar.xz
5f37c1b7b58d13109f9d77f2f47610a0 kcolorscheme-6.5.0.tar.xz
3da8c7755a7207ce332775f7bea879a9 kconfigwidgets-6.5.0.tar.xz
36af7db35be0bdae9d9ae10d67ea1b1f kservice-6.5.0.tar.xz
51be7e11487b2d3ef3a35bdd2d3eec74 kglobalaccel-6.5.0.tar.xz
1bc8471d498ad3de7c144bcac545ab29 kpackage-6.5.0.tar.xz
c12d163df68d8aaee566618c2b886fe0 kdesu-6.5.0.tar.xz
a94b4e76eff97c0e2fe461e10535cf11 kiconthemes-6.5.0.tar.xz
f75c675a77172fd1cb8eaee62086fd93 knotifications-6.5.0.tar.xz
878a3dc9bb42497d6c6b3f9744372635 kjobwidgets-6.5.0.tar.xz
ea43454373673b7dfdc928609b80fbf1 ktextwidgets-6.5.0.tar.xz
7aef61c37386c5750f83a438fc140453 kxmlgui-6.5.0.tar.xz
11f331d02cd2f542cfa5be32f3c780dd kbookmarks-6.5.0.tar.xz
fe89e3850dfe0200c3ee04e0bcf0ea86 kwallet-6.5.0.tar.xz
dadc7cc6e488d1db9b8dc482e89f07a7 kded-6.5.0.tar.xz
0f2bd915931d6501c212ff3c84433126 kio-6.5.0.tar.xz
7ef47616f65781126b29f3ff7c6637d4 kdeclarative-6.5.0.tar.xz
3478698203e69dc14ca9a8fe58b6263c kcmutils-6.5.0.tar.xz
82ff71c1903a2d205b873e0b04715839 kirigami-6.5.0.tar.xz
39559a047c8da6aba78ba1d619353808 syndication-6.5.0.tar.xz
a6d662cf3920c575bb2fb7541c33f691 knewstuff-6.5.0.tar.xz
cb414562458340f793878c5a2b328af8 frameworkintegration-6.5.0.tar.xz
bad702d8866893c19339eab1b65c9c24 kparts-6.5.0.tar.xz
16874e76c5058e1943d04bc3bf512f03 syntax-highlighting-6.5.0.tar.xz
fbe2608ded4b47a1e7974c92d458596a ktexteditor-6.5.0.tar.xz
7dc07ea6306795a866e4ef62e03b54da modemmanager-qt-6.5.0.tar.xz
ca118c3fa1d01c5e98290475a4ef341d kcontacts-6.5.0.tar.xz
ab5907924e9e35d8f328a66a5fa241ad kpeople-6.5.0.tar.xz
124cf04998f0399a300baa585a01db6b bluez-qt-6.5.0.tar.xz
f5d8507325dce3768b77e2565f3e70d7 kfilemetadata-6.5.0.tar.xz
00951e5fd64e184f5e1d4bc3e71f28a2 baloo-6.5.0.tar.xz
#25c0a753edc62593ecca9f56a34f7ef1 breeze-icons-6.5.0.tar.xz
940fe29e162175c932475ed20f241979 krunner-6.5.0.tar.xz
4598c42a8a4e1a93457cb2aebd392bb2 prison-6.5.0.tar.xz
c2eb5204f9f7b43798566666b06fa3ae qqc2-desktop-style-6.5.0.tar.xz
612f5190aebd9d4c89122113fd97e73e kholidays-6.5.0.tar.xz
9c92e566404c25c2bd142c8c5937441f purpose-6.5.0.tar.xz
5bf4fa5abc19addec2ab47440c0b660e kcalendarcore-6.5.0.tar.xz
2f3150f1162013f6c089dd9c48358a58 kquickcharts-6.5.0.tar.xz
9e3db7659cfe0735461d64bb959a115f knotifyconfig-6.5.0.tar.xz
780193271545a8f7add8a171effcb36c kdav-6.5.0.tar.xz
78b6317709ad47539b4728b22618379f kstatusnotifieritem-6.5.0.tar.xz
7bb7d7f6ff6a4d41e81389dba5982fac ksvg-6.5.0.tar.xz
f24694fc1e66236182cf41f1f8a789e2 ktexttemplate-6.5.0.tar.xz
52e318daedfd8b855e0554f66041535a kuserfeedback-6.5.0.tar.xz
EOF
I listen ovenfor, legg merke til at noen filer har blitt kommentert ut med et hash tegn (#)..
Extra-cmake-modules oppføringen har blitt kommentert ut fordi det ble bygget tidligere i Introduksjon til KDE.
Ikonpakken dekkes separat på breeze-icons-6.5.0.
Når du installerer flere pakker i et skript, installasjonen må gjøres som root bruker. Det er tre generelle alternativer som kan brukes til å gjøre dette:
Kjør hele skriptet som root bruker (ikke anbefalt).
Bruk sudo kommandoen fra Sudo-1.9.15p5 pakken.
Bruk su -c "command arguments" (anførselstegn kreves) som vil be om root passordet for hver iterasjon av løkken.
En måte å håndtere denne situasjonen på er å lage en kort bash funksjon som automatisk velger riktig metode. Når kommandoen er satt i miljøet, trenger den ikke å bli satt på nytt.
as_root()
{
if [ $EUID = 0 ]; then $*
elif [ -x /usr/bin/sudo ]; then sudo $*
else su -c \\"$*\\"
fi
}
export -f as_root
Hvis du installerer i /opt og
det er en eksisterende /opt/kf6 enten som en vanlig mappe
eller en symbolsk lenke, bør den initialiseres på nytt (som
root):
mv -v /opt/kf6 /opt/kf6.old &&
install -v -dm755 $KF6_PREFIX/{etc,share} &&
ln -sfv /etc/dbus-1 $KF6_PREFIX/etc &&
ln -sfv /usr/share/dbus-1 $KF6_PREFIX/share &&
ln -sfv /usr/share/polkit-1 $KF6_PREFIX/share &&
install -v -dm755 $KF6_PREFIX/lib &&
ln -sfv /usr/lib/systemd $KF6_PREFIX/lib
Start først et underskall som avsluttes ved feil:
bash -e
Installer alle pakkene ved å kjøre følgende kommandoer:
while read -r line; do
# Get the file name, ignoring comments and blank lines
if $(echo $line | grep -E -q '^ *$|^#' ); then continue; fi
file=$(echo $line | cut -d" " -f2)
pkg=$(echo $file|sed 's|^.*/||') # Remove directory
packagedir=$(echo $pkg|sed 's|\.tar.*||') # Package directory
name=$(echo $pkg|sed 's|-6.*$||') # Isolate package name
tar -xf $file
pushd $packagedir
# kapidox is a python module
case $name in
kapidox)
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
as_root pip3 install --no-index --find-links=dist --no-cache-dir --no-user kapidox
popd
rm -rf $packagedir
continue
;;
esac
mkdir build
cd build
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_INSTALL_LIBEXECDIR=libexec \
-D CMAKE_PREFIX_PATH=$QT6DIR \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev ..
make
as_root make install
popd
as_root rm -rf $packagedir
as_root /sbin/ldconfig
done < frameworks-6.5.0.md5
exit
Eventuelle moduler som er utelatt kan installeres senere ved å bruke det samme mkdir build; cd build; cmake; make; make install prosedyren som ovenfor.
Noen ganger er installasjonsbanene hardkodet til installerte filer. Hvis den installerte mappen ikke er /usr, gi nytt navn til mappen og opprette en symbolkobling:
mv -v /opt/kf6 /opt/kf6-6.5.0 ln -sfvn kf6-6.5.0 /opt/kf6
-D
CMAKE_PREFIX_PATH=$QT6DIR: Denne bryteren brukes
for å la cmake finne de riktige Qt bibliotekene.
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
for å bruke høyere nivå av kompilatoroptimaliseringer.
-D BUILD_TESTING=OFF:
Denne bryteren brukes til å forhindre bygging av
testprogrammer og biblioteker som ikke er til nytte for en
sluttbruker.
|
er et verktøy for å se etter syntaksfeil i KDE DocBook XML filer |
|
|
er et verktøy for å generere et avhengighetsdiagram |
|
|
er et verktøy for å generere et avhengighetsdiagram for alle rammeverk samtidig |
|
|
er et verktøy for å klargjøre dot filer |
|
|
er et verktøy for å konvertere en .desktop-fil til en .json fil |
|
|
gjenoppbygger KService skrivebordsfilsystemkonfigurasjonens hurtiglager |
|
|
er et kommandolinjegrensesnitt til HTTP lageret for informasjonskapsler som brukes av KDE, en D-BUS tjeneste for å lagre/hente/rense informasjonskapsler |
|
|
konsoliderer flere små tjenester i én prosess |
|
|
er en prosessstarter som ligner litt på den berømte init som brukes for oppstart av UNIX |
|
|
er et kommandolinjeprogram som brukes til å hente informasjon om KDE installasjonen eller brukerstier |
|
|
kjører kross skript skrevet i KDE Javascript, Python, Ruby, Java og Falcon |
|
|
genererer skjermelement programtillegg for Qt(TM) Designer |
|
|
er en nisse som brukes til å registrere nøkkelbindingene og for å få varslet når handlingen utløste |
|
|
er en KDE ECMAScript/JavaScript motor |
|
|
er et verktøy for å starte KJSEmbed skript fra kommandolinjen |
|
|
er en konsoll for kjs6 |
|
|
er et kommandolinjeverktøy for å starte kpackage QML applikasjonen |
|
|
er et kommandolinje kpackage verktøy |
|
|
er et kommandolinjeverktøy for å hente verdier fra KDE konfigurasjonsfiler |
|
|
start applikasjoner via kdeinit |
|
|
er en telnet tjeneste |
|
|
er et hjelpeprogram for å håndtere KDE papirkurven |
|
|
er lommebokbehandler nissen |
|
|
er et kommandolinjeverktøy for å skrive verdier i KDE konfigurasjonsfiler |
|
|
konverterer DocBook filer til HTML |
|
|
er et verktøy for å installere, liste, fjerne Plasma pakker |
|
|
er et skript for å trekke ut teksten fra en tipsfil |
|
|
er et kommandolinjeverktøy for å undersøke tilgjengelige enheter |
Ark pakken er et KF6 arkivverktøy. Det er et grafisk grensesnitt til tar og lignende verktøy.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/ark-24.08.0.tar.xz
Nedlasting MD5 sum: daec28b797eb35c840fd0d43dad5ab00
Nedlastingsstørrelse: 2.9 MB
Estimert diskplass som kreves: 38 MB
Estimert byggetid: 0.4 SBU (bruke parallellisme=4)
KDE Frameworks-6.5.0 og libarchive-3.7.4
Installer Ark ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
dolphin pakken er en KF6 filbehandler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/dolphin-24.08.0.tar.xz
Nedlasting MD5 sum: 33f91651409e8e59906caf001fd75eac
Nedlastingsstørrelse: 5.4 MB
Estimert diskplass som kreves: 78 MB
Estimert byggetid: 0.7 SBU (bruke parallellisme=4)
Installer dolphin ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
dolphin-plugins pakken gir ekstra programtillegg for filbehandleren dolphin.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/dolphin-plugins-24.08.0.tar.xz
Nedlasting MD5 sum: 6d1ca867d047e2683cfa4f40cb66df56
Nedlastingsstørrelse: 312 KB
Estimert diskplass som kreves: 23 MB
Estimert byggetid: 0.2 SBU (bruke parallellisme=4)
Installer dolphin-plugins ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Kdenlive pakken er en KF6 basert video redigerer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/kdenlive-24.08.0.tar.xz
Nedlasting MD5 sum: 4706c36669178cae1b8248bf53fb921a
Nedlastingsstørrelse: 12 MB
Estimert diskplass som kreves: 225 MB
Estimert byggetid: 1.7 SBU (bruke parallellisme=4)
KDE Frameworks-6.5.0, mlt-7.26.0, og v4l-utils-1.28.1 (kjøretid)
Installer Kdenlive ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Khelpcenter er en applikasjon for å vise dokumentasjonen til KDE applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/khelpcenter-24.08.0.tar.xz
Nedlasting MD5 sum: db5ffba114392ca66db1c2733f2668ed
Nedlastingsstørrelse: 4.0 MB
Estimert diskplass som kreves: 22 MB
Estimert byggetid: 0.2 SBU (bruke parallellisme=4)
grantlee-5.3.1, KDE Frameworks-6.5.0, libxml2-2.13.3, og xapian-1.4.26
Installer khelpcenter ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Konsole pakken er en KF6 basert terminal emulator.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/konsole-24.08.0.tar.xz
Nedlasting MD5 sum: 9cce74d7e4bddce4d574c021dd3d8139
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 61 MB
Estimert byggetid: 0.6 SBU (bruke parallellisme=4)
Valgfri oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/konsole-24.08.0-scrollbar-1.patch
I ikke-plasma miljøer er konsollens rullefelt og dens behandling vises ikke godt. Hvis ønskelig, bruk den valgfrie oppdateringen på pakken:
patch -Np1 -i ../konsole-24.08.0-scrollbar-1.patch
Oppdateringen gjør rullefeltet lysegrå med en liten hvit kant. Håndtaket er mørkegrå. Om ønskelig kan fargene endres etter smak med å redigere oppdateringen.
Installer Konsole ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
konversation pakken er en KF6 basert IRC klient.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/konversation-24.08.0.tar.xz
Nedlasting MD5 sum: bcbcecd7ec3035e6fbe559b9b01c0d38
Nedlastingsstørrelse: 4.2 MB
Estimert diskplass som kreves: 69 MB
Estimert byggetid: 0.6 SBU (bruker parallellisme=4)
Installer konversation ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Libkexiv2 er en KDE innpakning rundt Exiv2 biblioteket for å manipulere bildemetadata.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/libkexiv2-24.08.0.tar.xz
Nedlasting MD5 sum: 811fb2ce8736e93790d8f6f1b20f6d09
Nedlastingsstørrelse: 60 KB
Estimert diskplass som kreves: 3.6 MB
Estimert byggetid: 0.2 SBU
Installer libkexiv2 ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WITH_QT6=ON \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
plasma-activities-6.1.4 applikasjon gir kjernekomponenter for KDE aktiviteter. Den bygges normalt med Plasma-6.1.4 men er inkludert her fordi det trengs for okular-24.08.0 hvis Plasma-6.1.4 ikke er ennå bygget ennå.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/plasma/6.1.4/plasma-activities-6.1.4.tar.xz
Nedlasting MD5 sum: 250385889199481e81b979bd0dd51669
Nedlastingsstørrelse: 72 KB
Estimert diskplass som kreves: 8.0 MB
Estimert byggetid: 0.2 SBU (bruke parallellisme=4)
Installer plasma-activities ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Okular er en dokumentviser for KDE. Den kan vise dokumenter av mange typer inkludert PDF, PostScript, TIFF, DjVu, DVI, XPS, og ePub.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/okular-24.08.0.tar.xz
Nedlasting MD5 sum: c216077cd98e25256a1a13e16eea5f11
Nedlastingsstørrelse: 7.7 MB
Estimert diskplass som kreves: 90 MB
Estimert byggetid: 0.8 SBU (bruke parallellisme=4)
KDE Frameworks-6.5.0 og plasma-activities-6.1.4
libkexiv2-24.08.0, libtiff-4.6.0, og Poppler-24.08.0 (bygget med Qt6, påkrevd for PDF støtte)
qca-2.3.9, discount, DjVuLibre, libspectre, libepub, og LibZip
Installer Okular ved å kjøre følgende kommandoer:
Hvis noen av de valgfrie avhengighetene er installert, fjern tilknyttet referanse i SKIP_OPTIONAL miljøvariabelen.
mkdir build &&
cd build &&
SKIP_OPTIONAL='Discount;DjVuLibre;EPub;LibSpectre;LibZip'
cmake -D CMAKE_INSTALL_PREFIX=$KF5_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-D FORCE_NOT_REQUIRED_DEPENDENCIES="$SKIP_OPTIONAL" \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Libkdcraw er en KDE innpakning rundt libraw-0.21.2 bibliotek for å manipulere bildemetadata.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/libkdcraw-24.08.0.tar.xz
Nedlasting MD5 sum: b9df8a737f97bad34ae15602c8933ce9
Nedlastingsstørrelse: 40 KB
Estimert diskplass som kreves: 1.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libkdcraw ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-D QT_MAJOR_VERSION=6 \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Gwenview er en rask og enkel å bruke bildeviser for KDE.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/gwenview-24.08.0.tar.xz
Nedlasting MD5 sum: 0307805ec62640cb8bfdc645990e834e
Nedlastingsstørrelse: 6.2 MB
Estimert diskplass som kreves: 56 MB
Estimert byggetid: 0.6 SBU (bruke parallellisme=4)
Exiv2-0.28.3, kimageannotator-0.7.1, KDE Frameworks-6.5.0, og Little CMS-2.16
Installer Gwenview ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libkcddb pakken inneholder et bibliotek som brukes til å hente lyd-CD metadata fra internett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/libkcddb-24.08.0.tar.xz
Nedlasting MD5 sum: 22e2c5c7aff55e918254b21d9530ad4c
Nedlastingsstørrelse: 440 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.3 SBU
Installer libkcddb ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-D QT_MAJOR_VERSION=6 \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
K3b pakken inneholder en KF6 basert grafisk grensesnitt til Cdrtools og dvd+rw-tools CD/DVD manipulasjonsverktøy. Den kombinerer også mulighetene til mange andre multimediepakker til et sentralt grensesnitt for å gi en enkel å betjene applikasjon som kan brukes til å håndtere mange av dine CD/DVD opptak og formateringskrav. Den brukes også til å lage lyd, data, video og CD-er med blandet modus som kopiering, ripping og brenning av CDer og DVDer.
Selv om k3b kan brukes til å kopiere nesten alle DVD til lignende medium, det gir ikke en måte å kopiere eller reprodusere en dobbeltlags DVD til enkeltlags medium. Selvfølgelig er det ikke et program hvor som helst på hvilken som helst plattform som kan lage en eksakt duplikat av en dobbeltlags DVD på en enkeltlags disk, er det programmer på noen plattformer som kan komprimere dataene på en dobbel-lags DVD for å passe på en enkeltlags DVD som produserer et duplikat, men komprimert, bilde. Hvis du trenger å kopiere innholdet på en dobbel-lags DVD til enkeltlags medium, kan du se på RMLCopyDVD pakken.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/k3b-24.08.0.tar.xz
Nedlasting MD5 sum: a8c61382247d68d6f339a1d52ac28922
Nedlastingsstørrelse: 10 MB
Estimert diskplass som kreves: 139 MB
Estimert byggetid: 1.3 SBU (bruke parallellisme=4)
KDE Frameworks-6.5.0, libkcddb-24.08.0, libsamplerate-0.2.2, og shared-mime-info-2.4
CD/DVD stasjonen oppdages ved kjøretid ved hjelp av UDisks-2.10.1, som derfor må installeres før kjøring av k3b.
libburn-1.5.6, libdvdread-6.1.3, og taglib-2.0.1
Det er programmer fra tre pakker som k3b vil se etter under kjøretid: Cdrtools-3.02a09 (kreves for å brenne CD-ROM medier), dvd+rw-tools-7.1 (kreves for å brenne eller formatere DVD medier), og Cdrdao-1.2.4 (nødvendig for å brenne CD-ROM medier i DAO modus (Disk At Once)). Hvis du ikke trenger kapasitet som tilbys av noen av de tre pakkene, trenger du ikke installer dem. Det vil imidlertid bli generert en advarsel hver gang du kjører k3b programmet hvis noen ikke er installert.
FLAC-1.4.3, LAME-3.100, libmad-0.15.1b, libsndfile-1.2.2, libvorbis-1.3.7, og Musepack (libmpcdec)
Installer K3b ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Denne delen ga ikke instruksjoner for alle de tilgjengelige pakkene i KDE programvarekompileringen. De inkluderte pakkene ble valgt basert på hva folk flest ønsker å bruke på en standard stasjonær datamaskin.
For en fullstendig liste over tilgjengelige pakker, ta en titt på KDE5 serverne på https://download.kde.org/stable/release-service/24.08.0/src.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Further_KDE_Packages
Noen ekstra pakker verdt å nevne er:
Juk: En lett musikkspiller.
Dragon: En videospiller.
Kcalc: En vitenskapelig kalkulator.
Kwalletmanager: En applikasjon for administrasjon av legitimasjon.
Marble: Et globalt kartprogram.
En rekke (ca. 40) KDE spill inkludert: kpat, kfourinline, og kmines.
Noen pakker vil kreve ytterligere avhengigheter. Å bestemme hvilke avhengigheter som trengs, kjør fra toppen av kildetreet:
cmake -W no-dev -L .
De fleste av disse pakkene kan bygges med standard KDE5 instruksjoner:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Og som root bruker:
make install
KDE Plasma er et skrivebordsmiljø bygget med KDE Rammeverk og QML som kjører på toppen av en fullt maskinvareakselerert grafikkstabel ved hjelp av Qt, QtQuick og en OpenGL(-ES) scenegraf.
Ingen ekstra konfigurasjon er nødvendig før du bygger KDE Plasma fordi den bruker samme konfigurasjon som KDE Rammeverket bruker.
Denne pakken inneholder qml tilleggsfiler for Kirigami rammeverket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/kirigami-addons/kirigami-addons-1.4.0.tar.xz
Nedlasting MD5 sum: 27d23279ee0ad5252a862c2671bc05ad
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 40 MB
Estimert byggetid: 0.6 SBU (Bruke parallellisme=4)
Installer kirigami-addons ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE__INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Denne pakken er en Qt-stil innpakker for PulseAudio-17.0. Den tillater spørring og manipulering av ulike PulseAudio objekter som Sinks, Sources og Streams. Den omslutter ikke hele funksjonssettet til libpulse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/pulseaudio-qt/pulseaudio-qt-1.5.0.tar.xz
Nedlasting MD5 sum: 9e8c7cc600937f0a21709f87a252c795
Nedlastningsstørrelse: 36 KB
Estimert diskplass som kreves: 5.7 MB
Estimert byggetid: less than 0.1 SBU
Installer pulseaudio-qt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_PREFIX_PATH=$QT6DIR \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-D QT_MAJOR_VERSION=6 \
.. &&
make
Nå som root bruker:
make install
KDE Plasma er en samling pakker basert på toppen av KDE Rammeverket og QML. De implementerer KDE Skjermmiljø (Plasma).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Instruksjonene nedenfor bygger alle Plasma pakkene i et trinn ved å bruke et bashskript.
Nedlasting (HTTP): https://download.kde.org/stable/plasma/6.1.4
Nedlasting MD5 sum: Se Under
Nedlastingsstørrelse: 220 MB
Estimert diskplass som kreves: 1.0 GB (444 MB installert)
Estimert byggetid: 14 SBU (bruke parallellisme=8)
Boost-1.86.0, GTK+-3.24.43, KDE Frameworks-6.5.0, kirigami-addons-1.4.0, libdisplay-info-0.2.0, libpwquality-1.4.5, libqalculate-5.2.0, libnl-3.10.0, libxcvt-0.1.2, libxkbcommon-1.7.0, Mesa-24.1.5 bygget med Wayland-1.23.0, pipewire-1.2.3, pulseaudio-qt-1.5.0, qca-2.3.9, qcoro-0.10.0, sassc-3.6.2, taglib-2.0.1, xdotool-3.20211022.1, og Xorg Evdev Driver-2.10.6
gsettings-desktop-schemas-46.1, libcanberra-0.30, libinput-1.26.1, libpcap-1.10.4, Linux-PAM-1.6.1, lm-sensors-3-6-0, oxygen-icons-6.0.0, pciutils-3.13.0, power-profiles-daemon-0.21, og følgende Python moduler: psutil-6.0.0, pygdbmi-0.11.0.0, sentry-sdk-2.13.0, urllib3-2.2.2 (hvis de ikke er installert, blir de det lastet ned og installert av drkonqi byggeprosedyren)
AccountsService-23.13.9, breeze-icons-6.5.0, smartmontools-7.4, xdg-desktop-portal-1.18.2, og Xwayland-24.1.2
AppStream-1.0.3 (bygget med -qt=true), GLU-9.0.3, ibus-1.5.30, qtwebengine-6.7.2, Xorg Synaptics Driver-1.9.2, KDevPlatform, libgps, libhybris, packagekit-qt, Qapt, SCIM, og socat (for pam_kwallet)
Den enkleste måten å få KDE Plasma pakkene på er å bruke en singel wget for å hente dem alle på en gang:
url=https://download.kde.org/stable/plasma/6.1.4/
wget -r -nH -nd -A '*.xz' -np $url
Alternativene som brukes her er:
-r gjentakelse gjennom undermapper
-nH deaktiver generering av vertsprefikserte mapper
-nd ikke lag et hierarki av mapper
-A '*.xz' bare hent *.xz filene
-np ikke hent overordnede mapper
Rekkefølgen på byggefiler er viktig på grunn av interne avhengigheter. Lag listen over filer i riktig rekkefølge som følger:
cat > plasma-6.1.4.md5 << "EOF"
be3516c192fcdbed07454de4b379f5db kdecoration-6.1.4.tar.xz
dfd2bd982b5ab4daa5a3545e54cf9cb3 libkscreen-6.1.4.tar.xz
c05c1623be161c149a61ac3db0ce5382 libksysguard-6.1.4.tar.xz
7035691a6f63b28f389d76002afc3da8 breeze-6.1.4.tar.xz
9d82aff77358f55069020a408987c111 breeze-gtk-6.1.4.tar.xz
2e3a5220acf76e2c0edf9701978e802b layer-shell-qt-6.1.4.tar.xz
250385889199481e81b979bd0dd51669 plasma-activities-6.1.4.tar.xz
d6686b711c1e52c0de7c75b66c9dc6e3 libplasma-6.1.4.tar.xz
98101a610670cfae5779bc9940d8561f kscreenlocker-6.1.4.tar.xz
ca7bf1418903745c65dcbf7583299ceb kinfocenter-6.1.4.tar.xz
4c4b58890f3bf7bf1b1d99e89f9271a8 kglobalacceld-6.1.4.tar.xz
d297f096ac9492262b8274a024618bd3 kwayland-6.1.4.tar.xz
2d4516080f370a6cf40351266277b010 kwin-6.1.4.tar.xz
131d3250d9124c8f21751f5e5255a7d6 plasma5support-6.1.4.tar.xz
fc8fe31088cad9f1a904554956df708b plasma-activities-stats-6.1.4.tar.xz
85a3ff80ec16299dc8aa12190ce2bc24 kpipewire-6.1.4.tar.xz
575c902a134bb24214f76c500460df39 plasma-workspace-6.1.4.tar.xz
d000e0ee0f0e530c9dc64ab9252bc17a plasma-disks-6.1.4.tar.xz
180136a6b20736c359b999cbd3509afc bluedevil-6.1.4.tar.xz
3f065b337807c2a37d27a90bbcf1d8d1 kde-gtk-config-6.1.4.tar.xz
bcfa7f92df7c2f1a6c7718a12f81734c kmenuedit-6.1.4.tar.xz
08590284bc4613804563db94a68c7cd2 kscreen-6.1.4.tar.xz
801318aea037e3d64f0aa7c9ca4fef8b kwallet-pam-6.1.4.tar.xz
aa6bc381778b4e10c9798c3abeeb5692 kwrited-6.1.4.tar.xz
9c4f88ca9936252f62705f27687af764 milou-6.1.4.tar.xz
cbeb7b6b0094e9ec19af07ea458c8eb3 plasma-nm-6.1.4.tar.xz
aa32529c005706d2253333c93faa45de plasma-pa-6.1.4.tar.xz
4c7484c0d5e4352372d32a340656abec plasma-workspace-wallpapers-6.1.4.tar.xz
f904e90a9db900551d228f20dac06a45 polkit-kde-agent-1-6.1.4.tar.xz
312fe34839a8d0861cc676766a4317e4 powerdevil-6.1.4.tar.xz
adc8dad07c1157e79aed7476025b6925 plasma-desktop-6.1.4.tar.xz
cfbc61347436b9ff7ff43b7130d7955a kgamma-6.1.4.tar.xz
41d6254b23061c4b4067b0d2db150cbf ksshaskpass-6.1.4.tar.xz
#7bf7fd0d3a4a381148885cd058872212 plasma-sdk-6.1.4.tar.xz
ce1bbaf7df576f6ddccd1adda545657a sddm-kcm-6.1.4.tar.xz
#5482b86089286d9b0153f09752d57574 discover-6.1.4.tar.xz
#d33ef85fb879f3073f1f26f1695e72f3 breeze-grub-6.1.4.tar.xz
#42bb6940246062b24ee80ac6e3b40e2d breeze-plymouth-6.1.4.tar.xz
e458fddb447b0c76e8e49bb772b423a9 kactivitymanagerd-6.1.4.tar.xz
e0b3c21962456a5f9f79a739c477c22c plasma-integration-6.1.4.tar.xz
#bebea20d8972e4052690877455aea645 plymouth-kcm-6.1.4.tar.xz
6bf11a27e32cc81e689867ddf59080c6 xdg-desktop-portal-kde-6.1.4.tar.xz
96d1d51407b85d22f01e6438e8e492cb drkonqi-6.1.4.tar.xz
34627cfef9b00bc58bc853790e978dfd plasma-vault-6.1.4.tar.xz
#d7984e9a5d3c4ac7a6e36b656cc16f3a plasma-browser-integration-6.1.4.tar.xz
626f7f2e373085f948d0809413b0d49f kde-cli-tools-6.1.4.tar.xz
5ba8376be2db662750ef48f582f22352 systemsettings-6.1.4.tar.xz
db8923a9b87e95dd5ec82a20da4ae95b plasma-thunderbolt-6.1.4.tar.xz
#0106b72c6a46c966d31b7a4afdb456b3 plasma-mobile-6.1.4.tar.xz
#8a7de2aa288ae50190fcd86a7d72cbcb plasma-nano-6.1.4.tar.xz
3bc5c58b1d06e4f4f1667799219ae887 plasma-firewall-6.1.4.tar.xz
bf76a58afb8def0a0d07ea65429154fc plasma-systemmonitor-6.1.4.tar.xz
e6e3a3bc681b7044b5219ed6417f0310 qqc2-breeze-style-6.1.4.tar.xz
d3096345a478a821fa16620dadf95fb4 ksystemstats-6.1.4.tar.xz
03a717ac104f6f44ab9dffafdc37710b oxygen-sounds-6.1.4.tar.xz
a2f8684825ee231fefad28589f321ce7 kdeplasma-addons-6.1.4.tar.xz
#4691fcec4a83314e82c8d1b64bf23c8e flatpak-kcm-6.1.4.tar.xz
8175024493047e4e98cd12f4d52bc24b plasma-welcome-6.1.4.tar.xz
8431d1bf294e2ba3cacd9c455678d118 ocean-sound-theme-6.1.4.tar.xz
ed8102ad60b2c8ae9ce12dcaf1ff3cd5 print-manager-6.1.4.tar.xz
#523c82bcf113168b2113612d7b20e544 wacomtablet-6.1.4.tar.xz
#ebb06249b835ea73743c9cf6e91df4df kwayland-integration-6.1.4.tar.xz
#87332ae4b1c87a6921651ae9211a7e86 krdp-6.1.4.tar.xz
7ca2419cbdb9e4e9b2822b930ac5ec18 oxygen-6.1.4.tar.xz
EOF
I listen ovenfor er flere filer kommentert ut med et hash tegn (#).
plasma-sdk pakken er valgfri og brukes til programvareutvikling.
discover pakken krever at AppStream-1.0.3 blir bygget med -D qt=true bryteren.
breeze-grub-, breeze-plymouth- og plymouth-kcm pakkene ovenfor er alle for tilpasset støtte for Plymouth som er designet for å kjøres innenfor en initial ram-disk under oppstart (se the section called “Om initramfs”).
plasma-browser-integration og krdp-6.1.4.tar.xz-pakkene brukes kun av plasma-meta som ikke er installert av BLFS.
plasma-nano pakken brukes til innebygde systemer.
: plasma-mobile pakken gir telefonfunksjonalitet for plasma.
flatpak-kcm pakken er for å administrere støtte for flatpak applikasjoner.
wacomtablet og kwayland-integrasjons applikasjonene krever plasma5 støtte.
Når du installerer flere pakker i et skript, installasjonen må gjøres som root bruker. Det er tre generelle alternativer som kan brukes til å gjøre dette:
Kjør hele skriptet som root bruker (ikke anbefalt).
Bruk sudo kommandoen fra Sudo-1.9.15p5 pakken.
Bruk su -c "command arguments" (anførselstegn kreves) som vil be om root passordet for hver iterasjon av løkken.
En måte å håndtere denne situasjonen på er å lage en kort bash funksjon som automatisk velger riktig metode. Når kommandoen er satt i miljøet, trenger den ikke å bli satt på nytt.
as_root()
{
if [ $EUID = 0 ]; then $*
elif [ -x /usr/bin/sudo ]; then sudo $*
else su -c \\"$*\\"
fi
}
export -f as_root
Start først et underskall som avsluttes ved feil:
bash -e
Installer alle pakkene ved å kjøre følgende kommandoer:
while read -r line; do
# Get the file name, ignoring comments and blank lines
if $(echo $line | grep -E -q '^ *$|^#' ); then continue; fi
file=$(echo $line | cut -d" " -f2)
pkg=$(echo $file|sed 's|^.*/||') # Remove directory
packagedir=$(echo $pkg|sed 's|\.tar.*||') # Package directory
tar -xf $file
pushd $packagedir
mkdir build
cd build
cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \
-D CMAKE_INSTALL_LIBEXECDIR=libexec \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_QT5=OFF \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
as_root make install
popd
as_root rm -rf $packagedir
as_root /sbin/ldconfig
done < plasma-6.1.4.md5
exit
Hvis du ikke satte $KF6_PREFIX til
/usr, lage symbolkoblinger for
å tillate skjermbehandlere å finne Plasma, og for å tillate XDG Desktop
Portal å bli oppdaget. Som root bruker:
# Setup xsessions (X11 sessions) install -dvm 755 /usr/share/xsessions cd /usr/share/xsessions [ -e plasma.desktop ] || ln -sfv $KF6_PREFIX/share/xsessions/plasmax11.desktop # Setup wayland-sessions install -dvm 755 /usr/share/wayland-sessions cd /usr/share/wayland-sessions [ -e plasmawayland.desktop ] || ln -sfv $KF6_PREFIX/share/wayland-sessions/plasma.desktop # Setup xdg-desktop-portal install -dvm 755 /usr/share/xdg-desktop-portal cd /usr/share/xdg-desktop-portal [ -e kde-portals.conf ] || ln -sfv $KF6_PREFIX/share/xdg-desktop-portal/kde-portals.conf # Setup kde portal install -dvm 755 /usr/share/xdg-desktop-portal/portals cd /usr/share/xdg-desktop-portal/portals [ -e kde.portal ] || ln -sfv $KF6_PREFIX/share/xdg-desktop-portal/portals/kde.portal
Hvis du bygget Plasma med den anbefalte Linux PAM støtten, opprett nødvendige
konfigurasjonsfiler ved å kjøre følgende kommandoer som
root bruker:
cat > /etc/pam.d/kde << "EOF"# Begin /etc/pam.d/kde auth requisite pam_nologin.so auth required pam_env.so auth required pam_succeed_if.so uid >= 1000 quiet auth include system-auth account include system-account password include system-password session include system-session # End /etc/pam.d/kdeEOF cat > /etc/pam.d/kde-np << "EOF"# Begin /etc/pam.d/kde-np auth requisite pam_nologin.so auth required pam_env.so auth required pam_succeed_if.so uid >= 1000 quiet auth required pam_permit.so account include system-account password include system-password session include system-session # End /etc/pam.d/kde-npEOF cat > /etc/pam.d/kscreensaver << "EOF"# Begin /etc/pam.d/kscreensaver auth include system-auth account include system-account # End /etc/pam.d/kscreensaverEOF
Du kan starte Plasma fra en TTY, ved hjelp av xinit-1.4.2.
For å starte Plasma ved bruk av xinit-1.4.2, kjør følgende kommandoer:
cat > ~/.xinitrc << "EOF"
dbus-launch --exit-with-x11 $KF6_PREFIX/bin/startplasma-x11
EOF
startx
X økten starter på den første ubrukte virtuelle terminalen, normalt vt7. Du kan bytte til en annen vtn samtidig med å trykke på tastene Ctrl-Alt-Fn (n=1, 2, ...). For å bytte tilbake til X økten, vanligvis startet på vt7, bruk Ctrl-Alt-F7. Vt hvor kommandoen startx ble utført vil vise mange meldinger, inkludert X startmeldinger, applikasjoner startet automatisk med økten, og til slutt noen advarsler og feilmeldinger. Du kan foretrekke å omdirigere disse meldingene til en loggfil, som ikke bare vil beholde den innledende vt ryddig, men kan også brukes til feilsøkingsformål. Dette kan gjøres fra X med:
startx &> ~/x-session-errors
Når du slår av eller starter på nytt, vises avslutningsmeldingene på vt hvor X kjørte. Hvis du ønsker å se disse meldingene, samtidig trykk på tastene Alt-F7 (forutsatt at X kjørte på vt7).
Målet med denne delen er å bygge et GNOME skrivebord.
Gcr pakken inneholder biblioteker som brukes for visning av sertifikater og tilgang til nøkkellagre. Det gir også viseren for kryptofiler på GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gcr/3.41/gcr-3.41.2.tar.xz
Nedlasting MD5 sum: 40a754ba44d5e95e4d07656d6302900c
Nedlastingsstørrelse: 1012 KB
Estimert diskplass som kreves: 33 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester; begge bruker parallellisme=4)
GLib-2.80.4 (GObject Introspection anbefalt), libgcrypt-1.11.0, og p11-kit-0.25.5
GnuPG-2.4.5, GTK+-3.24.43, libsecret-0.21.4, libxslt-1.1.42, og Vala-0.56.17
Installer Gcr ved å kjøre følgende kommandoer:
sed -i 's:"/desktop:"/org:' schema/*.xml &&
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
-D ssh_agent=false \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed -e "/install_dir/s@,\$@ / 'gcr-3.41.2'&@" \
-i ../docs/*/meson.build &&
meson configure -D gtk_doc=true &&
ninja
For å teste resultatene, kjør: ninja test. Testene skal kjøres fra en X Terminal eller lignende.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D ssh_agent=false:
Forhindre en konflikt med Gcr-4.3.0. Utelat denne bryteren hvis du ikke
planlegger å installere Gcr-4.3.0 og du vil bruke gcr-ssh-agent.
-D gtk=false: Bruk denne bryteren
hvis du ikke har installert GTK+-3.24.43. Merk at gcr-viewer vil ikke bli installert hvis
dette sendes til meson.
-D gtk_doc=true: Tillat å bygge
denne pakken uten Gi-DocGen-2024.1 installert. Hvis du
har Gi-DocGen-2024.1 installert og du
ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
Gcr pakken inneholder biblioteker som brukes for visning av sertifikater og tilgang til nøkkellagre. Det gir også viseren for kryptofiler på GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gcr/4.3/gcr-4.3.0.tar.xz
Nedlasting MD5 sum: 51ae0448c7c42caf0b7deb2639c9e9b8
Nedlastingsstørrelse: 712 KB
Estimert diskplass som kreves: 30 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester; begge bruker parallellisme=4)
GLib-2.80.4 (GObject Introspection anbefalt), libgcrypt-1.11.0, og p11-kit-0.25.5
GnuPG-2.4.5, GTK-4.14.5, libsecret-0.21.4, libxslt-1.1.42, OpenSSH-9.8p1, og Vala-0.56.17
Både gcr-3 og gcr-4 kan installeres samtidig. Denne versjonen av pakken brukes til å støtte GTK-4 applikasjoner, som f.eks gnome-shell-46.4 og Epiphany-46.3.
Installer Gcr ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed -e "/install_dir/s@,\$@ / 'gcr-4.3.0'&@" \
-i ../docs/*/meson.build &&
meson configure -D gtk_doc=true &&
ninja
For å teste resultatene, kjør: ninja test. Testene skal kjøres fra en X Terminal eller lignende.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk4=false: Bruk denne
bryteren hvis du ikke har installert GTK-4.14.5. Merk at
gcr-viewer vil ikke bli
installert hvis dette sendes til meson.
-D ssh_agent=false: Bruk denne
bryteren hvis du ikke har installert OpenSSH-9.8p1, og ønsker
å deaktivere ssh kompatibilitet.
-D gtk_doc=true: Tillat å bygge
denne pakken uten Gi-DocGen-2024.1 installert. Hvis du
har Gi-DocGen-2024.1 installert og du
ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
-D crypto=gnutls: Bruk denne
bryteren hvis du har GnuTLS-3.8.7.1 installert og ønsker å
bruke den i stedet for libgcrypt-1.11.0.
GSettings Skrivebordsskjemaer pakken inneholder en samling av GSettings skjemaer for innstillinger som deles av forskjellige komponenter av GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gsettings-desktop-schemas/46/gsettings-desktop-schemas-46.1.tar.xz
Nedlasting MD5 sum: f1fe79211639016c94df811e8ea6abe6
Nedlastingsstørrelse: 756 KB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (med GObject Introspection)
Installer GSettings Skrivebordsskjemaer ved å kjøre følgende kommandoer:
sed -i -r 's:"(/system):"/org/gnome\1:g' schemas/*.in && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
sed ... schemas/*.in: Denne kommandoen fikser noen utdaterte oppføringer i skjemamalene.
libsecret pakken inneholder en GObject basert bibliotek for tilgang til Secret Service API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libsecret/0.21/libsecret-0.21.4.tar.xz
Nedlasting MD5 sum: 85f0534c673ccf10daf6fa419728e0d8
Nedlastingsstørrelse: 204 KB
Estimert diskplass som kreves: 10 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
GLib-2.80.4 (GObject Introspection anbefalt)
libgcrypt-1.11.0 (eller GnuTLS-3.8.7.1, for kryptografi), og Vala-0.56.17
Gi-DocGen-2024.1 og docbook-xml-4.5, docbook-xsl-nons-1.79.2, libxslt-1.1.42 (for å bygge manualsider), og Valgrind-3.23.0 (kan bli brukt i tester)
D-Bus Python-1.3.2, Gjs-1.80.2, PyGObject-3.48.2 (Python 3 modul), og tpm2-tss
Enhver pakke som krever libsecret forventer at GNOME Keyring er tilstede under kjøring.
Installer libsecret ved å kjøre følgende kommandoer:
mkdir bld &&
cd bld &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "s/api_version_major/'0.21.4'/" \
-i ../docs/reference/libsecret/meson.build &&
meson configure -D gtk_doc=true &&
ninja
Nå, som root bruker:
ninja install
For å teste resultatene, kjør: dbus-run-session ninja test.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=false:
Tillat å bygge denne pakken uten Gi-DocGen-2024.1
installert. Hvis du har Gi-DocGen-2024.1 installert og
du ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
-D manpage=false: Bruk denne
bryteren hvis du ikke har installert libxslt-1.1.42 og
DocBook pakker.
-D crypto=gnutls: Bruk denne
bryteren hvis du vil bruke GnuTLS-3.8.7.1 for kryptografi i
stedet for libgcrypt-1.11.0.
-D crypto=disabled: Bruk denne
bryteren hvis du ikke har GnuTLS-3.8.7.1 eller libgcrypt-1.11.0 installert. Merk at
deaktivering av transport kryptering støtte ved å gjøre dette
anbefales ikke.
rest pakken inneholder et bibliotek som ble designet for å gjøre det enklere å få tilgang til webtjenester som hevder å være "RESTful". Det inkluderer praktiske innpakninger for libsoup og libxml for å gjør ekstern bruk av RESTful API enklere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/rest/0.9/rest-0.9.1.tar.xz
Nedlasting MD5 sum: b997b83232be3814a1b78530c5700df9
Nedlastingsstørrelse: 72 KB
Estimert diskplass som kreves: 3.2 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
JSON-GLib-1.8.0, libsoup-3.4.4, og make-ca-1.14
GLib-2.80.4 (med GObject Introspection)
Gi-DocGen-2024.1, libadwaita-1.5.3 og gtksourceview5-5.12.1 (for å bygge demoen), og Vala-0.56.17
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Installer rest ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D examples=false \
-D gtk_doc=false \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "/output/s/librest-1.0/rest-0.9.1/" -i ../docs/meson.build && meson configure -D gtk_doc=true && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=false:
Tillat å bygge denne pakken uten Gi-DocGen-2024.1
installert. Hvis du har Gi-DocGen-2024.1 installert og
du ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
-D examples=false:
Fjern dette alternativet hvis libadwaita-1.5.3
og gtksourceview5-5.12.1 er
installert og du ønsker å bygge demonstrasjonsapplikasjonen
som følger med denne pakken.
-D vapi=true: Bruk denne bryteren
hvis Vala-0.56.17 er installert og du ønsker å
bygge Vala bindingene gitt av denne pakken.
Totem PL Analyser pakken inneholder en enkel GObject basert bibliotek som brukes til å analysere flere spillelisteformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/totem-pl-parser/3.26/totem-pl-parser-3.26.6.tar.xz
Nedlasting MD5 sum: 69dc2cf0e61e6df71ed45156b24b14da
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 9.6 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
GLib-2.80.4 (med GObject Introspection), libarchive-3.7.4, og libgcrypt-1.11.0
CMake-3.30.2, GTK-Doc-1.34.0, Gvfs-1.54.2 (for noen tester), LCOV, og libquvi >= 0.9.1 og libquvi-scripts - hvis de er installert, da er lua-socket (git) nødvendig for testene
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Installer Totem PL Analyser ved å kjøre følgende kommandoer:
mkdir build && cd build && meson --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test. Testen navngitt
parser er kjent for å
mislykkes.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
VTE pakken inneholder en virtuell terminal skjermelement for GTK applikasjoner..
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.gnome.org/GNOME/vte/-/archive/0.76.4/vte-0.76.4.tar.gz
Nedlasting MD5 sum: 5d1a548ad131664e8a638da24fbfd3e9
Nedlastingsstørrelse: 696 KB
Estimert diskplass som kreves: 17 MB (med tester)
Estimert byggetid: 0.4 SBU (bruke parallellisme=4; med tester)
GTK+-3.24.43, libxml2-2.13.3, og pcre2-10.44
ICU-75.1, GnuTLS-3.8.7.1, GLib-2.80.4 (med GObject Introspection), GTK-4.14.5, og Vala-0.56.17
Installer VTE ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed -e "/docdir =/s@\$@/ 'vte-0.76.4'@" \
-i ../doc/reference/meson.build &&
meson configure -D docs=true &&
ninja
For å teste resultatene, kjør ninja test.
Nå, som root bruker:
ninja install && rm -v /etc/profile.d/vte.*
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
rm -v /etc/profile.d/vte.*: Denne kommandoen fjerner to filer installert i /etc/profile.d som ikke har noen bruk på et LFS system.
-D gnutls=false: Legg til denne
bryteren hvis du ikke ønsker å aktivere GnuTLS støtte.
-D vapi=false: Legg til denne
bryteren hvis du ikke ønsker å aktivere vala bindinger.
-D gtk4=false: Legg til denne
bryteren hvis du ikke vil bygge GTK-4 versjonen av VTE.
Yelp XSL pakken inneholder XSL stilark som brukes av Yelp for å hjelpe nettleseren til å formatere Docbook og Mallard dokumenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/yelp-xsl/42/yelp-xsl-42.1.tar.xz
Nedlasting MD5 sum: c41858c78e34bb8b68a535657a3e15d9
Nedlastingsstørrelse: 652 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Yelp XSL ved å kjøre følgende kommandoer:
./configure --prefix=/usr
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Geocode GLib er et praktisk bibliotek for Yahoo! Place Finder APIer. Netttjenesten Place Finder tillater at du kan gjøre geokoding (finne lengde- og breddegrad fra en adresse), samt omvendt geokoding (finne en adresse fra koordinater).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/geocode-glib/3.26/geocode-glib-3.26.4.tar.xz
Nedlasting MD5 sum: 4c0dcdb7ee1222435b20acd3d7b68cd1
Nedlastingsstørrelse: 76 KB
Estimert diskplass som kreves: 4.6 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
JSON-GLib-1.8.0 og libsoup-3.4.4
GLib-2.80.4 (med GObject Introspection)
Installer Geocode GLib ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix /usr \
--buildtype=release \
-D enable-gtk-doc=false \
-D soup2=false \
.. &&
ninja
For å teste resultatene, kjør: LANG=C ninja test. En test
mislykkes fordi den trenger sv_SE.utf8 lokalitet, som ikke er installert
som standard i LFS.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
enable-gtk-doc=false: La denne pakken bli bygget
uten GTK-Doc-1.34.0. Fjern denne parameteren
hvis GTK-Doc-1.34.0 er installert og du
ønsker å bygge om og installere API dokumentasjonen.
-D soup2=false: Denne
bryteren tvinger denne pakken til å bruke libsoup-3 for HTTP
forespørsler i stedet for libsoup-2. Pakkene i BLFS som
bruker geocode-glib forventer nå at libsoup-3 blir brukt.
Gjs er et sett med Javascript bindinger for GNOME.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gjs/1.80/gjs-1.80.2.tar.xz
Nedlasting MD5 sum: ae896ab9a1c5589b86fde94a45a2fcd9
Nedlastingsstørrelse: 648 KB
Estimert diskplass som kreves: 253 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester; med parallellitet=4)
Cairo-1.18.0, dbus-1.14.10, GLib-2.80.4 (med GObject Introspection), og SpiderMonkey from Firefox-115.14.0
Valgrind-3.23.0 (for tester), DTrace, LCOV, sysprof, og Systemtap
Installer Gjs ved å kjøre følgende kommandoer:
mkdir gjs-build &&
cd gjs-build &&
meson setup --prefix=/usr \
--buildtype=release \
--wrap-mode=nofallback \
.. &&
ninja
For å teste resultatene, utsted: ninja test i en grafisk økt.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
--wrap-mode=nofallback: Denne
bryteren forhindrer meson fra å bruke
delprosjektets tilbakefall for evt avhengighetserklæringer i
byggefilene, og stopper nedlastingen av eventuell valgfrie
avhengigheter som ikke er installert på systemet.
-Dprofiler=disabled: hindrer
bygging av profilerings bakstykket selv om sysprof er
installert.
gnome-autoar pakken gir et rammeverk for automatisk arkivutpakking, komprimering og administrasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-autoar/0.4/gnome-autoar-0.4.4.tar.xz
Nedlasting MD5 sum: ac1a423f861ed5765a5d03251c00746d
Nedlastingsstørrelse: 52 KB
Estimert diskplass som kreves: 2.7 MB
Estimert byggetid: 0.1 SBU
libarchive-3.7.4 og GTK+-3.24.43
GTK-Doc-1.34.0 (for bygging av dokumenter)
Installer gnome-autoar ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D vapi=true \
-D tests=true \
.. &&
ninja
For å teste resultatene, kjør: ninja test
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=true: Bruk denne
parameteren hvis GTK-Doc er installert og du ønsker å
gjenoppbygge og installere API dokumentasjonen.
GNOME Skrivebord pakken inneholder et bibliotek som gir en API som deles av flere applikasjoner på GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-desktop/44/gnome-desktop-44.1.tar.xz
Nedlasting MD5 sum: eda77690fcb351558ea0d1716a55e90b
Nedlastingsstørrelse: 752 KB
Estimert diskplass som kreves: 23 MB
Estimert byggetid: 0.2 SBU
gsettings-desktop-schemas-46.1, GTK+-3.24.43, GTK-4.14.5, ISO Codes-4.16.0, itstool-2.0.7, libseccomp-2.5.5, libxml2-2.13.3, og xkeyboard-config-2.42
bubblewrap-0.9.0 (trengs for thumbnailers i Nautilus) og GLib-2.80.4 (med GObject Introspection)
Installer GNOME Skrivebord ved å kjøre å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dgtk_doc=true: Bruk denne
parameter hvis du ønsker å bygge API dokumentasjonen.
-Dinstalled_tests=true: Bruk
denne parameter du ønsker for å aktivere de installerte
testene.
GNOME Menyer pakken
inneholder en implementering av utkastet Desktop
Menu Specification fra freedesktop.org. Det inneholder
også GNOME konfigurasjon av
menyoppsett filer og .directory
filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-menus/3.36/gnome-menus-3.36.0.tar.xz
Nedlasting MD5 sum: a8fd71fcf31a87fc799d80396a526829
Nedlastingsstørrelse: 492 KB
Estimert diskplass som kreves: 8.5 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (GObject Introspection anbefalt)
Installer GNOME Menyer ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
GNOME Nettkontoer pakken inneholder en rammeverk som brukes for å få tilgang til brukerens nettkontoer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-online-accounts/3.50/gnome-online-accounts-3.50.4.tar.xz
Nedlasting MD5 sum: 93cc587f17ad9c14f03bcd0b9c124f8b
Nedlastingsstørrelse: 400 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: 0.2 SBU
Gcr-4.3.0, JSON-GLib-1.8.0, libadwaita-1.5.3, rest-0.9.1, og Vala-0.56.17
GLib-2.80.4 (med GObject Introspection)
Google API nøkkelen og OAuth tokenene nedenfor er spesifikke for LFS. Hvis du bruker disse instruksjonene for en annen distro, eller hvis du har tenkt å distribuere binære kopier av programvaren ved å bruke disse instruksjonene, hent dine egne nøkler ved å følge instruksjonene på https://www.chromium.org/developers/how-tos/api-keys.
Installer GNOME Nettkontoer ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup \
--prefix=/usr \
--buildtype=release \
-D kerberos=false \
-D google_client_secret=5ntt6GbbkjnTVXx-MSxbmx5e \
-D google_client_id=595013732528-llk8trb03f0ldpqq6nprjp1s79596646.apps.googleusercontent.com \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D google_*: Disse
bryterne setter BLFS OAuth ID og hemmelighet for Google
tjenester.
-D gtk_doc=true: Bruk denne
bryteren hvis du har GTK-Doc-1.34.0 installert og du ønsker å
generere API dokumentasjonen.
-D kerberos=true: Bruk denne
bryteren hvis du har installert MIT Kerberos
V5-1.21.3 og ønsker å bruke den med GNOME Nettkontoer.
Grilo er et rammeverk fokusert på å lage medieoppdagelse og surfing enkelt for applikasjoner og applikasjonsutviklere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/grilo/0.3/grilo-0.3.16.tar.xz
Nedlasting MD5 sum: e81c4d7e182eb6448b9f0458f52511a3
Nedlastingsstørrelse: 236 KB
Estimert diskplass som kreves: 13 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
GLib-2.80.4 (GObject Introspection anbefalt) og libxml2-2.13.3
GTK+-3.24.43, libsoup-3.4.4, totem-pl-parser-3.26.6, og Vala-0.56.17
Installer Grilo ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D enable-gtk-doc=false \
.. &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
enable-gtk-doc=false: Dette alternativet
deaktiverer generering av dokumentasjon. Hvis du har
GTK-Doc-1.34.0 installert og ønsker å
generere dokumentasjonen, fjern dette alternativet.
|
er en enkel lekeplassapplikasjon som du kan bruke til å teste rammeverket og dets programtillegg |
|
|
er et verktøy som skriver ut informasjon om tilgjengelige Grilo kilder |
|
|
er et verktøy for å kjøre Grilo operasjoner fra kommandolinjen |
|
|
gir Grilo rammeverket |
|
|
gir Grilo nettverkshjelpere for programtillegg |
|
|
gir funksjoner for håndtering av spillelister |
libgdata pakken er et GLib-basert bibliotek for å få tilgang til online tjeneste APIer ved å bruke GData protokollen, spesielt Googles tjenester. Den gir APIer for å få tilgang til de vanlige Google tjenester og har full asynkron støtte.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgdata/0.18/libgdata-0.18.1.tar.xz
Nedlasting MD5 sum: 92b058d1a0af5d1b96c86c21820f1eff
Nedlastingsstørrelse: 832 KB
Estimert diskplass som kreves: 54 MB (med tester)
Estimert byggetid: 0.5 SBU (med tester)
libsoup-2.74.3, gnome-online-accounts-3.50.4, GTK+-3.24.43, JSON-GLib-1.8.0, og Vala-0.56.17
Gcr-3.41.2 og GLib-2.80.4 (med GObject Introspection)
GTK-Doc-1.34.0 (for dokumentasjon), og liboauth-1.0.3 (for OAuth v1 støtte)
Installer libgdata ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
-D always_build_tests=false \
.. &&
ninja
Denne pakken kommer ikke med en funksjonell testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=false:
Fjern denne hvis du har GTK-Doc-1.34.0 installert og
ønsker å gjenoppbygge dokumentasjon med det.
-D oauth1=enabled: Bruk dette
alternativet hvis du ønsker å bygge støtte for OAuth v1. Merk
at du må ha liboauth-1.0.3 installert for å aktivere
dette alternativet.
libgee pakken er et samlingsbibliotek som gir GObject baserte grensesnitt og klasser for ofte brukte datastrukturer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgee/0.20/libgee-0.20.6.tar.xz
Nedlasting MD5 sum: 8b9001f47e15ef7a1776ac1f5bb015a0
Nedlastingsstørrelse: 676 KB
Estimert diskplass som kreves: 38 MB (med tester)
Estimert byggetid: 0.5 SBU (med tester)
GLib-2.80.4 (GObject Introspection anbefalt) og Vala-0.56.17
Først tving Vala koden til å bli regenerert slik at den er kompatibel med gcc-14:
find . -name \*.vala -exec touch {} \;
Installer libgee ved å kjøre følgende kommandoer:
./configure --prefix=/usr --enable-vala && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
libgtop pakken inneholder GNOME top biblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgtop/2.41/libgtop-2.41.3.tar.xz
Nedlasting MD5 sum: 465db9f4f695c298d9c48dcf7f32a9c0
Nedlastingsstørrelse: 740 KB
Estimert diskplass som kreves: 19 MB
Estimert byggetid: 0.2 SBU
GLib-2.80.4 (GObject Introspection anbefalt) og Xorg Biblioteker
Installer libgtop ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
libgweather pakken er et bibliotek som brukes for å få tilgang til værinformasjon fra netttjenester for mange steder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgweather/4.4/libgweather-4.4.2.tar.xz
Nedlasting MD5 sum: 57ec40f5ac366b7d9757580913bf2e3b
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 98 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
geocode-glib-3.26.4, GTK+-3.24.43, libsoup-3.4.4, og PyGObject-3.48.2
GLib-2.80.4 (med GObject Introspection), libxml2-2.13.3, og Vala-0.56.17
Gi-DocGen-2024.1 (gi-docgen leveres
også som meson delprosjekt, som vil bli brukt hvis
-D gtk_doc=false ikke er overført
til meson),
LLVM-18.1.7 (for clang-format), og
pylint
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Installer libgweather ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "s/libgweather_full_version/'libgweather-4.4.2'/" \
-i ../doc/meson.build &&
meson configure -D gtk_doc=true &&
ninja
En test trenger at lokalitetsfilene er installert på systemet, så det er bedre å kjøre testene etter at du har installert pakken.
Nå, som root bruker:
ninja install
For å teste resultatene, kjør: LC_ALL=C ninja test.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=false:
Tillat å bygge denne pakken uten Gi-DocGen-2024.1
installert. Hvis du har Gi-DocGen-2024.1 installert og
du ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
libpeas er en GObject basert programtilleggs motor, og er rettet mot å gi enhver applikasjon sjansen å anta sin egen utvidbarhet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libpeas/1.36/libpeas-1.36.0.tar.xz
Nedlasting MD5 sum: b3dd31a79c47af0cbf22f2d6bf52bc7d
Nedlastingsstørrelse: 192 KB
Estimert diskplass som kreves: 10 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
GLib-2.80.4 (med GObject Introspection) og GTK+-3.24.43
libxml2-2.13.3 og PyGObject-3.48.2
Gi-DocGen-2024.1, Glade, embed, LGI (for LUA bindinger, bygget med LUA-5.1), med enten luajit eller LUA-5.1
Installer libpeas ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
--wrap-mode=nofallback \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "/docs_dir =/s@\$@/ 'libpeas-1.36.0'@" \
-i ../docs/reference/meson.build &&
meson configure -D gtk_doc=true &&
ninja
For å teste resultatene, kjør: ninja test. En aktiv grafisk økt med bussadresse er nødvendig for å kjøre testene.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
--wrap-mode=nofallback: Denne
bryteren forhindrer meson fra å bruke
delprosjektets tilbakefall for evt avhengighetserklæringer i
byggefilene, og stopper nedlastingen av eventuell valgfrie
avhengigheter som ikke er installert på systemet.
-D vapi=true: Legg til denne
bryteren hvis du ønsker å generere vapi (vala) data.
-D demos=false: Legg til denne
bryteren hvis du ikke ønsker å bygge demoprogrammene.
libshumate pakken inneholder et GTK-4 skjermelement for å vise kart.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libshumate/1.2/libshumate-1.2.3.tar.xz
Nedlasting MD5 sum: 4b8919088922eac80b103b464d7c5b8b
Nedlastingsstørrelse: 316 KB
Estimert diskplass som kreves: 9.1 MB
Estimert byggetid: 0.2 SBU
GTK-4.14.5, libsoup-3.4.4, og Protobuf-c-1.5.0
GLib-2.80.4 (med GObject Introspection) (påkrevd for gnome-maps)
Installer libshumate ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
--wrap-mode=nodownload \
-D gtk_doc=false \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed -e 's/lib_version/version/' \
-i ../docs/meson.build &&
meson configure -D gtk_doc=true &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
--wrap-mode=nodownload: Denne
bryteren forhindrer meson fra å nedlaste
valgfrie avhengigheter som ikke er installert på systemet.
Evolution Data Server pakken gir et enhetlig bakstykke for programmer som fungerer med kontakter, oppgaver og kalender informasjon. Den ble opprinnelig utviklet for Evolution (derav navnet), men brukes nå av andre pakker også.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/evolution-data-server/3.52/evolution-data-server-3.52.4.tar.xz
Nedlasting MD5 sum: a7a269c877206f36c72f2c3e37f79e9c
Nedlastingsstørrelse: 4.8 MB
Estimert diskplass som kreves: 181 MB (med tester)
Estimert byggetid: 0.7 SBU (bruke parallellisme=4)
libical-3.0.18, libsecret-0.21.4, nss-3.103, og SQLite-3.46.1
gnome-online-accounts-3.50.4, GLib-2.80.4 (med GObject Introspection), GTK+-3.24.43, GTK-4.14.5, ICU-75.1, libcanberra-0.30, libgweather-4.4.2, Vala-0.56.17, og WebKitGTK-2.44.3
GTK-Doc-1.34.0, MIT Kerberos V5-1.21.3, en MTA (som gir en sendmail kommando), OpenLDAP-2.6.8, Berkeley DB (deprecated), og libphonenumber
Installer Evolution Dataserver ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D SYSCONF_INSTALL_DIR=/etc \
-D ENABLE_VALA_BINDINGS=ON \
-D ENABLE_INSTALLED_TESTS=ON \
-D WITH_OPENLDAP=OFF \
-D WITH_KRB5=OFF \
-D ENABLE_INTROSPECTION=ON \
-D ENABLE_GTK_DOC=OFF \
-D WITH_LIBDB=OFF \
-W no-dev -G Ninja .. &&
ninja
Nå, som root bruker:
ninja install
For å teste resultatene, utsted: ninja test.
-D
ENABLE_VALA_BINDINGS=ON: Denne bryteren bygger
Vala bindingene. Fjern hvis du ikke har Vala-0.56.17 installert.
-D
ENABLE_GTK_DOC=OFF: Denne bryteren deaktiverer
bygging av API dokumentasjonen. Det er ødelagt for denne
pakken på grunn av bruken av et lenge utdatert gtk-doc
program som ikke lenger er tilgjengelig.
-D WITH_LIBDB=OFF:
Denne bryteren tillater bygging av denne pakken uten
Berkeley DB (deprecated). SQLite-3.46.1 brukes til normal
drift.
-D ENABLE_OAUTH2_WEBKITGTK4=OFF:
Bruk denne bryteren hvis du ikke bygde WebKitGTK-2.44.3
med GTK-4.
For å aktivere mange av de valgfrie avhengighetene, se gjennom informasjonen fra cmake -L CMakeLists.txt for de nødvendige parametere du må sende til cmake kommandoen.
|
er Evolution MIME meldings håndteringsbibliotek |
|
|
er nyttebiblioteket for Evolution Data Server bakstykker |
|
|
er klientbiblioteket for Evolution addressebøker |
|
|
er klientbiblioteket for Evolution kontakter |
|
|
er klientbiblioteket for Evolution kalendere |
|
|
er bakstykkebiblioteket for Evolution addressebøker |
|
|
er bakstykkebiblioteket for Evolution kalendere |
|
|
er nyttebiblioteket for Evolution Data Server |
|
|
er GUI verktøybiblioteket for Evolution Data Server |
|
|
er det GTK-4 baserte GUI verktøybiblioteket for Evolution Data Server |
|
|
er server testverktøy biblioteket for Evolution Data Server |
Tracker er filindeksering og søkeleverandør som brukes i GNOME skrivebordsmiljøet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/tracker/3.7/tracker-3.7.3.tar.xz
Nedlasting MD5 sum: 65cd2945506b7303e9eea493d56431d8
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 58 MB (with tests)
Estimert byggetid: 0.4 SBU (med tester)
JSON-GLib-1.8.0, libseccomp-2.5.5, og Vala-0.56.17
GLib-2.80.4 (med GObject Introspection), ICU-75.1, libsoup-3.4.4, PyGObject-3.48.2, SQLite-3.46.1, og tracker-miners-3.7.3 (kjøretid)
asciidoc-10.2.1, Avahi-0.8, Graphviz-12.1.0, libsoup-2.74.3, bash-completion, og libstemmer
Fiks plasseringen å installere dokumentasjonen på:
mv docs/reference/libtracker-sparql/doc/{Tracker-3.0,tracker-3.7.3} &&
sed '/docs_name/s/Tracker-3.0/tracker-3.7.3/' \
-i docs/reference/libtracker-sparql/meson.build
Installer Tracker ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D man=false \
.. &&
ninja
Nå, som root bruker:
ninja install
For å teste resultatene, utsted: meson configure -D debug=true && ninja test. Testpakken skal kjøres fra en grafisk sesjon.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D man=false: Denne
bryteren forhindrer byggeprosessen fra å generere mansider.
Utelat denne bryteren hvis du har asciidoc-10.2.1
installert og ønsker å generere og installer mansidene.
meson configure -D debug=true: Denne kommandoen aktiverer noen feilsøkingskontroller som er nødvendige for testpakken. Vi vil ikke aktiver dem for de installerte Tracker 3 bibliotekene og programmene, så vi kjører testpakken etter installasjonen.
|
er et kontrollprogram for indekseren |
|
|
oppretter et SPARQL endpoint |
|
|
eksporterer alle data fra en Tracker database |
|
|
viser manualsider relatert til Tracker |
|
|
importerer data til en Tracker database |
|
|
bruker SparQL til å spørre en Tracker database |
|
|
bruker SQL til å spørre en Tracker database |
|
|
inneholder ressursstyring og databasefunksjoner |
Tracker-miners pakken inneholder et sett med datauttrekkere for Tracker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/tracker-miners/3.7/tracker-miners-3.7.3.tar.xz
Nedlasting MD5 sum: 8c1b48f2fa57d888967de9b5ff348fc1
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 36 MB (med tester)
Estimert byggetid: 0.3 SBU (med parallellitet=4; legg til så mye som 1.0 SBU for tester, avhengig av diskhastighet)
gst-plugins-base-1.24.7, Tracker-3.7.3, Exempi-2.6.5, og gexiv2-0.14.3
giflib-5.2.2, gst-plugins-good-1.24.7 (kjøretid), gst-libav-1.24.7 (kjøretid), ICU-75.1, libexif-0.6.24, libgxps-0.3.2, libseccomp-2.5.5, Poppler-24.08.0, og UPower-1.90.4
asciidoc-10.2.1, CMake-3.30.2, DConf-0.40.0, FFmpeg-7.0.2, libgsf-1.14.52, NetworkManager-1.48.8, taglib-2.0.1, totem-pl-parser-3.26.6, libcue, libgrss, libitpcdata, libosinfo, og gupnp
Aktiver følgende alternativer i kjernekonfigurasjonen, og kompiler deretter kjernen på nytt og start om igjen om nødvendig:
Security options ---> [*] Enable different security models [SECURITY] [*] Landlock support [SECURITY_LANDLOCK] # List more Linux Security Modules here (separated with comma) if needed, # for example 'landlock,lockdown,smack': (landlock) Ordered list of enabled LSMs [LSM]
Hvis du planlegger å kjøre testene, er noen tidsavbrudd for
korte ved bruk av spinnende disker. Det er to steder hvor
tidsavbrudd er brukt: for det første har individuelle
tester i en gruppe tester en standard tidsavbrudd på 10s.
Dette kan endres ved å stille inn miljøvariabelen
TRACKER_TESTS_AWAIT_TIMEOUT til
ønsket verdi når du kjører testene (se nedenfor). For det
andre, en global tidsavbrudd for en gruppe tester er fast
på konfigurasjonstidspunktet. Standardverdien i
functional-tests mappen
(andre mapper har bare kortvarige tester) kan bli økt med
følgende kommando (erstatt 200 med en verdi egnet for din
maskin):
sed -i s/120/200/ tests/functional-tests/meson.build
Først, fiks ett problem i TIFF-ekstraktoren og et annet problem i Landlock sandkassen:
patch -Np1 -i ../tracker-miners-3.7.3-upstream_fixes-1.patch
Installer Tracker-miners ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D man=false \
-D miner_rss=false \
.. &&
ninja
Nå, som root bruker:
ninja install
For å teste resultatene, kjør (justere den individuelle testtidsavbruddet til en verdi som passer for din maskin, se merknaden ovenfor):
meson configure -D debug=true &&
dbus-run-session env LC_ALL=C.UTF-8 TRACKER_TESTS_AWAIT_TIMEOUT=20 \
ninja test &&
rm -rf ~/tracker-tests
Testene lager filer i brukermappen (opptil 24 MB), så de må fjernes etterpå.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D man=false: Denne
bryteren forhindrer byggeprosessen fra å generere mansider.
Utelat denne bryteren hvis du har asciidoc-10.2.1
installert og ønsker å generere og installere mansidene.
-D miner_rss=false:
Denne bryteren forhindrer bruk av libgrss for å indeksere
RSS-feeder fordi libgrss er usikker og ikke lenger i BLFS.
-D seccomp=false: Dette
alternativet deaktiverer seccomp system anropsfilter. På noen
arkitekturer, som i686 og ARM, fungerer funksjonene som
tracker-miners bruker er ikke bevoktet ordentlig, og
tracker-miners vil bli drept med en SIGSYS som resultat. Merk
at deaktivering av secomp kan føre til at systemet blir mer
kompromittert i tilfelle en sikkerhetssårbarhet i
tracker-miners eller dets avhengigheter blir utnyttet.
-D landlock=disabled: Denne
bryteren deaktiverer Sandkasse for filtilgang til landlås.
Bruk den hvis du ikke vil bygge kjernen med Landlock støtte.
Merk at deaktivering av Landlock kan føre til at systemet
blir mer kompromittert i tilfelle en sikkerhets sårbarhet hos
tracker-miners eller dens avhengigheter blir utnyttet.
-D battery_detection=none: Bruk
dette alternativet hvis du ikke har installert den anbefalte
avhengigheten upower. Ikke bruk dette alternativet hvis
systemet ditt har et batteri (bærbar batteri eller UPS),
eller tracker-miners kan kaste bort batteristrøm og levetid
når A/C strømmen er utilgjengelig.
|
starter, stopper, starter på nytt og viser nisser som er ansvarlige for indeksering av innhold |
|
|
trekker ut metadata fra en fil |
|
|
indekserer innhold ved hjelp av Tracker filsystem miner |
|
|
henter all tilgjengelig informasjon for en bestemt fil |
|
|
tilbakestiller Tracker indeksen og konfigurasjonen |
|
|
søker etter innhold etter type eller på tvers av alle typer |
|
|
gir status og statistikk over data som er indeksert |
|
|
legger til, fjerner og viser tagger |
gsound pakken inneholder et lite bibliotek for å spille av systemlyder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gsound/1.0/gsound-1.0.3.tar.xz
Nedlasting MD5 sum: 7338c295034432a6e782fd20b3d04b68
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 864 KB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17
GTK-Doc-1.34.0 (for å generere dokumentasjon)
Installer gsound ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
xdg-desktop-portal-gnome er en bakstykke for xdg-desktop-portal, som bruker GTK og ulike deler av GNOME infrastruktur.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/xdg-desktop-portal-gnome/46/xdg-desktop-portal-gnome-46.2.tar.xz
Nedlasting MD5 sum: a57a52d9488463277445bac40507487e
Nedlastingsstørrelse: 160 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: 0.2 SBU
gnome-backgrounds-46.0, gnome-desktop-44.1, GTK-4.14.5, libadwaita-1.5.3, xdg-desktop-portal-1.18.2, og xdg-desktop-portal-gtk-1.15.1 (ved kjøretid)
Installer xdg-desktop-portal-gnome ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
DConf pakken inneholder et lavt nivå konfigurasjonssystem. Hovedformålet er å gi et bakstykke til GSettings på plattformer som ikke allerede har konfigurasjonslagrings systemer.
DConf-Editor, som navnet antyder, er et grafisk redigeringsprogram for DConf databasen. Installasjon er valgfritt, fordi gsettings fra GLib-2.80.4 gir lignende funksjonalitet på kommandolinjen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/dconf/0.40/dconf-0.40.0.tar.xz
Nedlasting MD5 sum: ac8db20b0d6b996d4bbbeb96463d01f0
Nedlastingsstørrelse: 115 KB
Estimert diskplass som kreves: 7.0 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Nedlasting (HTTP): https://download.gnome.org/sources/dconf-editor/45/dconf-editor-45.0.1.tar.xz
Nedlasting MD5 sum: 82b2f5d396e95757ad7eaf89c82decd6
Nedlastingsstørrelse: 596 KB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.3 SBU
dbus-1.14.10, GLib-2.80.4, GTK+-3.24.43 (for redigeringsprogrammet), libhandy-1.8.3 (for redigeringsprogrammet), og libxml2-2.13.3 (for redigeringsprogrammet)
libxslt-1.1.42 og Vala-0.56.17
Installer DConf ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D bash_completion=false \
.. &&
ninja
For å teste resultatene, kjør: ninja test
Some root bruker:
ninja install
Nå kan du eventuelt installere redigeringsprogrammet:
cd .. && tar -xf ../dconf-editor-45.0.1.tar.xz && cd dconf-editor-45.0.1 && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gtk_doc=true: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installere API
dokumentasjonen.
/usr/lib/gio/modules)
GNOME Bakgrunner pakken inneholder en samling grafikkfiler som kan brukes som bakgrunn i GNOME Skrivebordsmiljøet. I tillegg, pakken skaper riktig rammeverk og mappestruktur sånn at du kan legge til dine egne filer i samlingen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-backgrounds/46/gnome-backgrounds-46.0.tar.xz
Nedlasting MD5 sum: 85907535d2ed9d4cc6158bee41c35110
Nedlastingsstørrelse: 18 MB
Estimert diskplass som kreves: 44 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer GNOME Bakgrunner ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr ..
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Gvfs pakken er et virtuelt brukerrom filsystem designet for å fungere med I/O-abstraksjonene til GLibs GIO biblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gvfs/1.54/gvfs-1.54.2.tar.xz
Nedlasting MD5 sum: 587c5b279ec3020c597f3ab3f6a73bbd
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 30 MB
Estimert byggetid: 0.2 SBU (bruke parallellisme=4)
dbus-1.14.10, GLib-2.80.4, Gcr-4.3.0, libusb-1.0.27, og libsecret-0.21.4
GTK+-3.24.43, libcdio-2.1.0, libgudev-238, libsoup-3.4.4, Systemd-256.4 (kjøretid), og UDisks-2.10.1
Apache-2.4.62, Avahi-0.8, BlueZ-5.77, Fuse-3.16.2, gnome-online-accounts-3.50.4, GTK-Doc-1.34.0, libarchive-3.7.4, libgcrypt-1.11.0, libgdata-0.18.1, libxml2-2.13.3, libxslt-1.1.42, OpenSSH-9.8p1, Samba-4.20.4, gnome-desktop-testing (for tester), libbluray, libgphoto2, libimobiledevice, libmsgraph, libmtp, libnfs, og Twisted
Installer Gvfs ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup \
--prefix=/usr \
--buildtype=release \
-D onedrive=false \
-D fuse=false \
-D gphoto2=false \
-D afc=false \
-D bluray=false \
-D nfs=false \
-D mtp=false \
-D smb=false \
-D dnssd=false \
-D goa=false \
-D google=false .. &&
ninja
Testpakken krever gnome-desktop-testing, som er utenfor rammen av BLFS.
Nå, som root bruker:
ninja install
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
<option>=false: Disse bryterne er nødvendig
hvis den tilsvarende avhengigheten ikke er installert. Fjern
de der du har installert det tilsvarende programmet og ønsker
å bruke den med Gvfs.
Alternativet dnssd krever avahi og både goa og google krever
GNOME Online kontoer. Google alternativet krever også
libgdata. Onedrive støtten krever libmsgraph pakken.
-D cdda=false: Denne bryteren er
nødvendig hvis libcdio ikke er installert. Cdda bakstykket er
ubrukelig på maskiner uten CDROM/DVD stasjon.
gexiv2 er en GObject basert innpakning rundt Exiv2 biblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gexiv2/0.14/gexiv2-0.14.3.tar.xz
Nedlasting MD5 sum: d4ca9614baa0bc30d142bcad65f09910
Nedlastingsstørrelse: 384 KB
Estimert diskplass som kreves: 3.3 MB (med tester)
Estimert byggetid: 0.1 SBU (med parallellitet=4 og tester)
GTK-Doc-1.34.0 (for dokumentasjon)
Installer gexiv2 ved å kjøre følgende kommandoer:
mkdir build && cd build && meson --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør:
meson configure -D tests=true && ninja test
Som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Nautilus pakken inneholder GNOME filbehandler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/nautilus/46/nautilus-46.2.tar.xz
Nedlasting MD5 sum: 88acd6bd9c5d01fb02c8827222c07bc5
Nedlastingsstørrelse: 3.1 MB
Estimert diskplass som kreves: 88 MB (med tester)
Estimert byggetid: 0.5 SBU (med tester, begge ved bruk av parallellitet=4)
bubblewrap-0.9.0, gexiv2-0.14.3, gnome-autoar-0.4.4, gnome-desktop-44.1, libadwaita-1.5.3, libnotify-0.8.3, libportal-0.7.1, libseccomp-2.5.5, og Tracker-3.7.3
desktop-file-utils-0.27, Exempi-2.6.5, GLib-2.80.4 (med GObject Introspection), gst-plugins-base-1.24.7, libcloudproviders-0.3.6, og libexif-0.6.24
adwaita-icon-theme-46.2 og Gvfs-1.54.2 (For hotplugging og enhets montering skal virke)
Fiks plasseringen for å installere API dokumentasjonen:
sed "/docdir =/s@\$@ / 'nautilus-46.2'@" -i meson.build
Installer Nautilus ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D selinux=false \
-D packagekit=false \
.. &&
ninja
For å teste resultatene, kjør: ninja test. Testene må kjøres i et grafisk miljø. En test er kjent for å mislykkes hvis tracker-miners-3.7.3 ikke er installert. En test er også kjent for tidsavbrudd hvis brukeren som kjører testene har en stor hjemmemappe.
Nå, som root bruker:
ninja install
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D selinux=false:
Denne bryteren deaktiverer bruken av selinux som ikke støttes
av BLFS.
-D packagekit=false:
Denne bryteren deaktiverer bruken av PackageKit som ikke er
egnet for BLFS.
-D cloudproviders=false: Bruk
denne bryteren hvis du ikke har libcloudproviders-0.3.6
installert.
GNOME Bluetooth pakken inneholder verktøy for å administrere og manipulere Bluetooth enheter ved bruk av GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-bluetooth/46/gnome-bluetooth-46.1.tar.xz
Nedlasting MD5 sum: 6f1f8e6b51c4903727ef41ec6c398f13
Nedlastingsstørrelse: 300 KB
Estimert diskplass som kreves: 12 MB (med tester)
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4, med tester)
GTK-4.14.5, gsound-1.0.3, libnotify-0.8.3, og UPower-1.90.4
GLib-2.80.4 (med GObject Introspection) og libadwaita-1.5.3
GTK-Doc-1.34.0 og dbusmock-0.32.1
Installer GNOME Bluetooth ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
GNOME Nøkkelring pakken inneholder en nisse som holder passord og andre hemmeligheter for brukere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-keyring/46/gnome-keyring-46.2.tar.xz
Nedlasting MD5 sum: 7a8ab16a87f03ca05fc176925fcce649
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 129 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4; legg til 0.2 SBU for tester)
Linux-PAM-1.6.1, libxslt-1.1.42, og OpenSSH-9.8p1
Installer GNOME Nøkkelring ved å kjøre følgende kommandoer:
sed -i 's:"/desktop:"/org:' schema/*.xml &&
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-ssh-agent &&
make
En sesjonsbussadresse er nødvendig for å kjøre testene. For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
sed ... schema/*.xml: Denne kommandoen fikser en utdatert oppføring i skjemamalen.
--enable-ssh-agent:
Denne bryteren aktiverer SSH agenten innebygd i gnome
nøkkelringen i stedet for den i GCR. Dette har blitt gjort på
grunn av feil i gcr som gjør at agenten ikke fungerer som den
skal.
GNOME Innstillingsnisse er ansvarlig for å stille inn ulike parametere for en GNOME Økt og applikasjonene som kjører under den.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-settings-daemon/46/gnome-settings-daemon-46.0.tar.xz
Nedlasting MD5 sum: 408d4fc18cf6971828ff957e052ce4dd
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 35 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
alsa-lib-1.2.12, colord-1.4.7, Fontconfig-2.15.0, Gcr-4.3.0, GeoClue-2.7.1, geocode-glib-3.26.4, gnome-desktop-44.1, Little CMS-2.16, libcanberra-0.30, libgweather-4.4.2, libnotify-0.8.3, libwacom-2.12.2, PulseAudio-17.0, og UPower-1.90.4
Cups-2.4.10, NetworkManager-1.48.8, nss-3.103, og Wayland-1.23.0
Anbefalte avhengigheter er ikke strengt nødvendig for at denne pakken skal bygge og fungere, men du får kanskje ikke forventede resultater ved kjøring hvis du ikke installerer dem.
gnome-session-46.0, Mutter-46.4, dbusmock-0.32.1, umockdev-0.18.3, og Xvfb (for tester, fra Xorg-Server-21.1.13 eller Xwayland-24.1.2)
Installer GNOME Innstillingsnisse ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å sjekke resultatene, kjør: ninja test. Merk at du må ha python-dbusmock installert for at testene skal fullføres. Noen tester kan mislykkes avhengig av init systemet som brukes.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Tecla pakken inneholder et tastaturoppsett visning.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/tecla/46/tecla-46.0.tar.xz
Nedlasting MD5 sum: 8e3ecd44ed17dab85aa281df19357395
Nedlastingsstørrelse: 36 KB
Estimert diskplass som kreves: 2.2 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Tecla ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
GNOME Kontrollsenter pakken inneholder GNOME innstillingsbehandling.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-control-center/46/gnome-control-center-46.4.tar.xz
Nedlasting MD5 sum: 661850c7283a0ef1a50efd4184906b10
Nedlastingsstørrelse: 7.7 MB
Estimert diskplass som kreves: 120 MB (med tester)
Estimert byggetid: 0.5 SBU (Bruke parallellisme=4; med tester)
AccountsService-23.13.9, colord-gtk-0.3.1, gnome-online-accounts-3.50.4, gnome-settings-daemon-46.0, gsound-1.0.3, libadwaita-1.5.3, libgtop-2.41.3, libpwquality-1.4.5, MIT Kerberos V5-1.21.3, shared-mime-info-2.4, Tecla-46.0, og UDisks-2.10.1
Cups-2.4.10 og Samba-4.20.4 (for Skriverpanel), gnome-bluetooth-46.1, ibus-1.5.30, ModemManager-1.18.12 og libnma-1.10.6 (for Nettverkspanel)
Xvfb (fra Xorg-Server-21.1.13 eller Xwayland-24.1.2) og dbusmock-0.32.1 (begge for tester)
cups-pk-helper-0.2.7 (Skriverpanel), gnome-color-manager-3.36.0 (Fargepanel), gnome-shell-46.4 (Applikasjonspanel), og sound-theme-freedesktop-0.8 (Ytterligere lydeffekter i lydpanelet)
Anbefalte avhengigheter er ikke strengt nødvendig for at denne pakken skal bygge og fungere, men du får kanskje ikke forventede resultater ved kjøring hvis du ikke installerer dem.
Installer GNOME Kontrollsenter ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: GTK_A11Y=none ninja test. Merk at du må ha python-dbusmock modulen installert for at testene skal fullføres på en vellykket måte.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dibus=false: Bruk denne bryteren
hvis du ikke har installert den anbefalte IBus avhengigheten.
Mutter er vindusbehandleren for GNOME. Den påberopes ikke direkte, men fra GNOME Økt (på en maskin med en maskinvareakselererte videodrivere).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/mutter/46/mutter-46.4.tar.xz
Nedlasting MD5 sum: 022716bf531a4953a74910fef09019ed
Nedlastingsstørrelse: 6.4 MB
Estimert diskplass som kreves: 83 MB (med tester)
Estimert byggetid: 0.5 SBU (Bruk parallellisme=4, legg til 1,4 SBU for tester)
gnome-settings-daemon-46.0, graphene-1.10.8, libei-1.3.0, libxcvt-0.1.2, libxkbcommon-1.7.0, og pipewire-1.2.3
desktop-file-utils-0.27, GLib-2.80.4 (med GObject Introspection), og startup-notification-0.12
libinput-1.26.1, Wayland-1.23.0, wayland-protocols-1.36, og Xwayland-24.1.2
dbusmock-0.32.1 (påkrevd for tester), libdisplay-info-0.2.0, Xorg-Server-21.1.13 (for X11 økter), og sysprof
Installer Mutter ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D tests=false \
-D profiler=false \
.. &&
ninja
Testpakken krever et eksternt program kalt xvfb-run. Hvis du ønsker å
kjøre testene, bør du laste ned og installere den før du
kjører meson.
Du kan få det fra xvfb-run,
og installere det med kjørbare tillatelser i /usr/bin. xvfb-run trenger
Xvfb ved
kjøretid, og Xvfb kan bli installert fra
Xorg-Server-21.1.13 eller Xwayland-24.1.2. Du bør også bytte ut
-D tests=false i
meson
kommandoen, med -D tests=true
-Dclutter_tests=false. Testpakken krever at
mutter skjemaet er installert på systemet, så det er bedre å
kjøre testene etter installasjon av pakken.
Du kan også teste grunnleggende funksjoner til Mutter ved å følge the section called “Starte Mutter”, etter å ha installert den.
Nå, som root bruker:
ninja install
Hvis du ønsker å kjøre testene, fjern referansen til Zenity som ikke er en del av BLFS fra en test:
sed 's/zenity --[a-z]*/gtk4-demo/' -i ../src/tests/x11-test.sh
Kjør nå testpakken:
ninja test
Testene krever en aktiv X eller wayland økt. Noen tester er
ustabile (spesielt under høy systembelastning), så hvis en
test mislykkes kan du prøve å kjøre den på nytt alene med
meson test <test
name> kommandoen. Noen få
tester kan mislykkes avhengig av noen systemkonfigurasjoner.
Ikke gjør noen mus eller tastatur inndata mens testpakken
kjører ellers kan noen tester mislykkes.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D tests=false:
Hindrer å bygge testene, og fjerner et hardt krav på
xvfb-run.
-D profiler=false:
Tillater bygging av denne pakken uten Sysprof. Fjern dette alternativet hvis
du har installert Sysprof og
vil analysere gjengivelsesytelsen til Mutter.
-D tests=true -D
clutter_tests=false: Dette bygger alle testene
bortsett fra testene for det sendte Clutter biblioteket. Clutter tester er kjent for mislykkes
med --buildtype=release.
Mutter brukes vanligvis som en del av gnome-shell, men den kan brukes som et frittstående Wayland sammensetter også. Å kjøre Mutter som en Wayland sammensetter, i en virtuell konsoll, kjør:
mutter --wayland -- vte-2.91
Erstatt vte-2.91 med kommandolinjen for første applikasjonen du vil ha i Wayland økten. Merk at med en gang denne applikasjonenen avsluttes, vil Wayland økten bli avsluttet.
Mutter kan også fungere som en nestet sammensetter i en annen Wayland økt. I en terminalemulator, kjør:
MUTTER_DEBUG_DUMMY_MODE_SPECS=1920x1080 mutter --wayland --nested -- vte-2.91
Erstatt 1920x1080
med den størrelsen du ønsker for den nestede Wayland økten.
GNOME Skallet er kjernebrukergrensesnittet for GNOME Skrivebordsmiljøet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-shell/46/gnome-shell-46.4.tar.xz
Nedlasting MD5 sum: 44b69588f138be1e70fbe307eff3346f
Nedlastingsstørrelse: 2.0 MB
Estimert diskplass som kreves: 62 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4; med tester)
evolution-data-server-3.52.4, Gcr-4.3.0, Gjs-1.80.2, gnome-desktop-44.1, ibus-1.5.30, Mutter-46.4, Polkit-125, sassc-3.6.2, og startup-notification-0.12
desktop-file-utils-0.27, gnome-autoar-0.4.4, gnome-bluetooth-46.1, gst-plugins-base-1.24.7, NetworkManager-1.48.8, og power-profiles-daemon-0.21
GTK-Doc-1.34.0 og bash-completion
adwaita-icon-theme-46.2, DConf-0.40.0, GDM-46.2, gnome-backgrounds-46.0, gnome-control-center-46.4, gnome-menus-3.36.0, libgweather-4.4.2 , og Systemd-256.4
Installer GNOME Skallet ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D tests=false \
.. &&
ninja
For å teste resultatene må du fjerne -D tests=false bryteren, og å
ha Mutter-46.4 kompilert og installert med
tester også. For å kjøre testene, utsted: ninja test. Du må kjører en
X økt for å kjøre testene. Noen vil mislykkes hvis GDM-46.2 ikke er
installert. En test navngitt CSS
styling support er kjent for mislykkes med noen
flerskjermskonfigurasjoner.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D tests=false: Fjern
denne bryteren hvis du vil bygge testene. Imidlertid,
meson vil
mislykkes hvis Mutter-46.4 tester ikke er installert.
-D extensions_tool=false: Denne
bryteren tillater bygging av denne pakken uten gnome-autoar-0.4.4 installert.
GNOME Skallutvidelser pakken inneholder en samling utvidelser som gir ekstra og valgfrie funksjonaliteter til GNOME Skallet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-shell-extensions/46/gnome-shell-extensions-46.2.tar.xz
Nedlasting MD5 sum: 915c2b4fd0c64ec6ef00029ef3edf3bb
Nedlastingsstørrelse: 220 KB
Estimert diskplass som kreves: 3.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer GNOME Skallutvidelser ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr ..
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
GNOME Økt pakken inneholder GNOME øktbehandler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-session/46/gnome-session-46.0.tar.xz
Nedlasting MD5 sum: f68f71cb53d650916f9ef9cb6076f643
Nedlastingsstørrelse: 476 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: 0.2 SBU
gnome-desktop-44.1, JSON-GLib-1.8.0, Mesa-24.1.5, Systemd-256.4 (kjøretid), og UPower-1.90.4
xmlto-0.0.29, og libxslt-1.1.42 med docbook-xml-4.5 og docbook-xsl-nons-1.79.2 (for å bygge dokumentasjonen)
Når du kjører GNOME under Wayland-1.23.0, miljøinnstillinger importeres ikke for brukeren som bruker systemprofilen. Wayland Utviklere er foreløpig usikre på en standardmetode for å tilby systemet miljøinnstillinger for brukerøkter. For å omgå denne begrensningen, kjør følgende kommando for at gnome-session skal bruke et påloggingsskall:
sed 's@/bin/sh@/bin/sh -l@' -i gnome-session/gnome-session.in
Installer GNOME Økt ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Flytt dokumentasjonen til en versjonert mappe:
mv -v /usr/share/doc/gnome-session{,-46.0}
Denne pakken lager to Xorg baserte .desktop filer i /usr/share/xsessions/ mappen, og to Wayland
baserte .desktop filer i
/usr/share/wayland-sessions/
mappen. Bare en er nødvendig i hver mappe på et BLFS system,
så forhindre at de ekstra filene vises som alternativer i en
skjermbehandler. Som root
bruker:
rm -v /usr/share/xsessions/gnome.desktop && rm -v /usr/share/wayland-sessions/gnome.desktop
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Den enkleste måten å starte GNOME på er å bruke en skjermbehandler. GDM-46.2 er den anbefalte skjermbehandleren.
Det er også mulig å starte GNOME fra kommandolinjen. Du må imidlertid fortsatt ha GDM-46.2 installert for at noen deler av skrivebordet skal fungere. En grunn til å starte fra kommandolinjen er hvis du vil ha Wayland støtte på et system som har proprietær NVIDIA driver installert, siden GDM ikke vil vise Wayland økttype på et slikt system.
For å starte GNOME ved hjelp av xinit-1.4.2, kjør følgende kommandoer:
cat > ~/.xinitrc << "EOF"
dbus-run-session gnome-session
EOF
startx
Alternativt, for å starte GNOME med Wayland støtte, kjør følgende kommando:
XDG_SESSION_TYPE=wayland dbus-run-session gnome-session
GNOME Tweaks er et enkelt program som brukes til å finjustere avanserte GNOME innstillinger.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-tweaks/46/gnome-tweaks-46.1.tar.xz
Nedlasting MD5 sum: 1c770b4db46b037338e0501a6c5cc813
Nedlastingsstørrelse: 676 KB
Estimert diskplass som kreves: 4.4 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK-4.14.5, gsettings-desktop-schemas-46.1, libadwaita-1.5.3, libgudev-238, PyGObject-3.48.2, og sound-theme-freedesktop-0.8
Installer GNOME Tweaks ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
GNOME Brukerdokumenter pakken inneholder dokumentasjon for GNOME.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-user-docs/46/gnome-user-docs-46.4.tar.xz
Nedlasting MD5 sum: 1fbe483547bea3110458b9323bc9dc95
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 166 MB
Estimert byggetid: 0.5 SBU (bruke parallellisme=4)
Installer GNOME Brukerdokumenter ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Yelp pakken inneholder en hjelpe nettleser som brukes til å vise hjelpefiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/yelp/42/yelp-42.2.tar.xz
Nedlasting MD5 sum: 3792122c4ab90725716cd88e9274f0f6
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.1 SBU
gsettings-desktop-schemas-46.1, WebKitGTK-2.44.3 og yelp-xsl-42.1
Yelp pakke er ikke nødvendig for et funksjonellt GNOME Skrivebord. Merk imidlertid at uten Yelp vil du ikke kunne se innebygd hjelp levert av kjerne GNOME og mange av støtteapplikasjonene.
Installer Yelp ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Fortsatt som root bruker,
sikre at /usr/share/applications/mimeinfo.cache vil
oppdateres og derfor vil help i gnome applikasjoner
fungere.
update-desktop-database
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
Disse pakkene er skrivebordsapplikasjoner og diverse verktøy fra GNOME prosjektet. Føl deg fri til å installere dem etter behov eller etter ønske.
Baobab pakken inneholder en grafisk mappetre analysator.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/baobab/46/baobab-46.0.tar.xz
Nedlasting MD5 sum: 9d6749f5c88db72c2fcc421b65aa6630
Nedlastingsstørrelse: 592 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: mindre enn 0.1 SBU (Bruke parallellisme=4)
adwaita-icon-theme-46.2, GTK-4.14.5, itstool-2.0.7, libadwaita-1.5.3, og Vala-0.56.17
Installer Baobab ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Brasero er en applikasjon som brukes til å brenne CDer og DVDer på GNOME Skrivebordet. Den er designet for å være så enkel som mulig og har noen unike funksjoner som gjør det mulig for brukere å lage platene sine enkelt og raskt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/brasero/3.12/brasero-3.12.3.tar.xz
Nedlasting MD5 sum: ae48248dd36f89282d573eb7a0a1391f
Nedlastingsstørrelse: 3.0 MB
Estimert diskplass som kreves: 105 MB
Estimert byggetid: 1.0 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/brasero-3.12.3-upstream_fixes-1.patch
gst-plugins-base-1.24.7, itstool-2.0.7, libcanberra-0.30, og libnotify-0.8.3
GLib-2.80.4 (med GObject Introspection), libburn-1.5.6, libisoburn-1.5.6, og libisofs-1.5.6, Nautilus-46.2, Tracker-3.7.3, og totem-pl-parser-3.26.6
dvd+rw-tools-7.1 og Gvfs-1.54.2
Cdrdao-1.2.4, libdvdcss-1.4.3, Cdrtools-3.02a09, og VCDImager
Først, fiks et byggeproblem som oppstår med GCC-14:
patch -Np1 -i ../brasero-3.12.3-upstream_fixes-1.patch
Installer Brasero ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-compile-warnings=no \
--enable-cxx-warnings=no \
--disable-nautilus &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-*-warnings=no: Disse
bryterne fikser byggeproblemer under GCC-6.x kompilatorer.
--disable-nautilus:
Denne bryteren deaktiverer bygging av Nautilus utvidelsen
siden den er inkompatibel med gtk4 versjonen av Nautilus.
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
EOG er en applikasjon som brukes til visning og katalogisering av bildefiler på GNOME Skrivebordet. Den har også grunnleggende redigerings kapasiteter..
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/eog/45/eog-45.4.tar.xz
Nedlasting MD5 sum: 7de057cbfe343d32b2cc5b7792431edd
Nedlastingsstørrelse: 4.4 MB
Estimert diskplass som kreves: 32 MB
Estimert byggetid: 0.3 SBU
adwaita-icon-theme-46.2, Exempi-2.6.5, gnome-desktop-44.1, libhandy-1.8.3, libjpeg-turbo-3.0.1, libpeas-1.36.0, og shared-mime-info-2.4
GLib-2.80.4 (med GObject Introspection), Little CMS-2.16, libexif-0.6.24, librsvg-2.58.3, og webp-pixbuf-loader-0.2.7
Installer EOG ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D libportal=false \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Enda som root bruker,
gjenoppbygg cache-databasen til MIME-typer håndtert av
skrivebordsfiler så Nautilus-46.2 vil kunne åpne bildefiler
med EOG.
update-desktop-database
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D libportal=false:
Denne parameteren deaktiverer bygging av EOG med støtte for
flatpak portaler. Fjern denne parameteren hvis du har
libportal-0.7.1 installert og ønsker å
ha støtte for flatpak portaler.
-D gtk_doc=true: Bruk dette
alternativet hvis GTK-Doc-1.34.0 er installert og du
ønsker å gjenoppbygge og installere API dokumentasjonen.
Evince er en dokumentviser for flere dokumentformater. Den støtter PDF, Postscript, DjVu, TIFF og DVI. Det er nyttig for å vise dokumenter av ulike typer ved hjelp av en enkel applikasjon i stedet for flere dokumentvisningsprogrammer som en gang eksisterte på GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/evince/46/evince-46.3.1.tar.xz
Nedlasting MD5 sum: e017e3544751c2442020f4d10a39e24d
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 49 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
adwaita-icon-theme-46.2, gsettings-desktop-schemas-46.1, GTK+-3.24.43, itstool-2.0.7, libhandy-1.8.3, libxml2-2.13.3, og OpenJPEG-2.5.2
gnome-keyring-46.2, GLib-2.80.4 (med GObject Introspection), libarchive-3.7.4, libsecret-0.21.4, og Poppler-24.08.0
Cups-2.4.10 (for å aktivere utskrift hvis støtte er bygd inn i GTK+ 3), gnome-desktop-44.1, gspell-1.12.2, gst-plugins-base-1.24.7, Gi-DocGen-2024.1, libgxps-0.3.2, libtiff-4.6.0, texlive-20240312 (or install-tl-unx), DjVuLibre, libspectre, og Synctex
Installer Evince ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
CPPFLAGS+=" -I/opt/texlive/2024/include" \
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
--wrap-mode=nodownload \
.. &&
ninja
Hvis du har Gi-DocGen-2024.1 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "/docs_dir/s@\$@ / 'evince-46.3.1'@" -i ../help/meson.build && meson configure -D gtk_doc=true && ninja
Denne pakken har ikke en fungerende testpakke.
Nå, som root bruker:
ninja install
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
CPPFLAGS+="
-I/opt/texlive/2024/include": Sørg for at meson
kan finne libkpathsea deklarasjoner fra TeXLive hvis det er
installert. Dette har ingen effekt på systemer uten TeXLive
installert.
--wrap-mode=nodownload: Denne
bryteren deaktiverer nedlasting av enhver avhengighet:
byggesystemet prøver å hente gi-docgen selv om -D gtk_doc=false er gitt.
-D gtk_doc=false:
Tillat å bygge denne pakken uten Gi-DocGen-2024.1
installert. Hvis du har Gi-DocGen-2024.1 installert og
du ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
-D gspell=false: Denne bryteren
slår av støtten for stavekontroll programtillegget.
-D introspection=false: Bruk
dette alternativet hvis du ikke har bygget GLib-2.80.4 med GObject
Introspection og ønsker ikke å ha introspection støtte
innebygd i Evince.
-D nautilus=false: Denne bryteren
deaktiverer bygging av Nautilus Programmtillegget. Bruk denne
bryteren hvis Nautilus ikke
er installert.
-D keyring=false: Denne bryteren
deaktiverer bruken av libsecret. Bruk denne bryteren hvis
libsecret ikke er
installert.
-D ps=enabled: Bruk denne
bryteren hvis libspectre er
installert og du vil se PostScript filer med Evince.
Evolution pakken inneholder en integrert post, kalender og adressebok pakke designet for GNOME miljøet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/evolution/3.52/evolution-3.52.4.tar.xz
Nedlasting MD5 sum: b4acefb4587e7a6bd93a1046419b4705
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 380 MB
Estimert byggetid: 1.0 SBU (Bruke parallellisme=4)
adwaita-icon-theme-46.2, evolution-data-server-3.52.4, Gcr-4.3.0, gnome-autoar-0.4.4, shared-mime-info-2.4, og WebKitGTK-2.44.3
Bogofilter-1.2.5, enchant-2.8.2, gnome-desktop-44.1, gspell-1.12.2, Highlight-4.13, itstool-2.0.7, libcanberra-0.30, libgweather-4.4.2, libnotify-0.8.3, OpenLDAP-2.6.8, og Seahorse-43.0
GeoClue-2.7.1, geocode-glib-3.26.4, og GTK-Doc-1.34.0, clutter-gtk (Contact Maps programtillegg), cmark, Glade, libchamplain (Contact Maps programtillegg), libpst, libunity, libytnef
Installer Evolution ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D SYSCONF_INSTALL_DIR=/etc \
-D ENABLE_INSTALLED_TESTS=ON \
-D ENABLE_PST_IMPORT=OFF \
-D ENABLE_YTNEF=OFF \
-D ENABLE_CONTACT_MAPS=OFF \
-D ENABLE_MARKDOWN=OFF \
-D ENABLE_WEATHER=ON \
-G Ninja .. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
-D ENABLE_YTNEF=OFF:
Denne bryteren brukes til å deaktiver bruken av yTNEF
biblioteket fordi libytnef
ikke er en del av BLFS.
-D
ENABLE_PST_IMPORT=OFF: Denne bryteren brukes til
å deaktivere pst-import programtillegget fordi libpst ikke er en del av BLFS.
-D
ENABLE_CONTACT_MAPS=OFF: Denne bryteren
deaktiverer bygging av Contact Maps programtillegget. Fjern
denne bryteren hvis du har installert de nødvendige
avhengighetene og ønsker å bygge Contact Maps
programtillegget.
-D
ENABLE_MARKDOWN=OFF: Denne bryteren tillater
bygging uten cmark. Fjern denne
bryteren hvis du trenger markdown støtte og du har installert
nødvendige avhengigheter.
-D ENABLE_WEATHER=ON:
Denne bryteren tillater bygging mot libgweather-4.4.2.
-D WITH_HELP=OFF: Denne bryteren
deaktiverer bygging av manualen til denne pakken. Bruk denne
bryteren hvis du ikke har installert itstool-2.0.7.
-D WITH_OPENLDAP=OFF: Bruk denne
bryteren hvis du ikke har installert OpenLDAP-2.6.8.
File Roller er en arkivbehandler for GNOME med støtte for tar, bzip2, gzip, zip, jar, compress, lzop, zstd, dmg og mange andre arkivformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
File Roller er kun et grafisk grensesnitt til arkiveringsverktøy som f.eks tar og zip.
Nedlasting (HTTP): https://download.gnome.org/sources/file-roller/44/file-roller-44.3.tar.xz
Nedlasting MD5 sum: 8f309a2af9788b2291512bdf0cd76ffd
Nedlastingsstørrelse: 1020 KB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
cpio-2.15, desktop-file-utils-0.27, JSON-GLib-1.8.0, libarchive-3.7.4, libadwaita-1.5.3, libportal-0.7.1, og Nautilus-46.2
UnRar-7.0.9, UnZip-6.0, og Zip-3.0
Installer File Roller ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D packagekit=false \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install && chmod -v 0755 /usr/libexec/file-roller/isoinfo.sh
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler inn i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme og
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha GTK+-3.24.43 installert
(for ikon hurtiglageret) og desktop-file-utils-0.27 (for
skrivebords hurtiglageret) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor && update-desktop-database -q
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D packagekit=false:
Denne bryteren deaktiverer bruken av PackageKit som ikke er
egnet for BLFS.
-D api_docs=enabled: Bruk denne
bryteren hvis du har Gi-DocGen-2024.1 installert og ønsker
å generere API dokumentasjonen.
GNOME Calculator er en kraftig grafikk kalkulator med økonomiske, logiske og vitenskapelige moduser. Den bruker en fler presisjon pakke for å gjøre sin aritmetikk for å gi en høy grad av nøyaktighet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-calculator/46/gnome-calculator-46.1.tar.xz
Nedlasting MD5 sum: e3170847e49203e645abc3f3c91224a6
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 43 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
gtksourceview5-5.12.1, itstool-2.0.7, libadwaita-1.5.3, libgee-0.20.6, og libsoup-3.4.4
Installer GNOME Kalkulator ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
GNOME Fargebehandler er et øktrammeverk for GNOME skrivebordsmiljø som gjør det enkelt å administrere, installere og generere fargeprofiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-color-manager/3.36/gnome-color-manager-3.36.0.tar.xz
Nedlasting MD5 sum: c5360705a68e88455b1801200e9aaa2e
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.1 SBU
colord-1.4.7, GTK+-3.24.43, itstool-2.0.7, Little CMS-2.16, libcanberra-0.30, og libexif-0.6.24
appstream-glib-0.8.3 og DocBook-utils-0.6.14 (fører for tiden til at bygget mislykkes)
Hvis DocBook-utils-0.6.14 er installert, deaktiver installasjonen av mansidene for å unngå byggefeil:
sed /subdir\(\'man/d -i meson.build
Installer GNOME Fargebehandler ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test. Testene må kjøres fra en X økt.
Nå, som root bruker:
ninja install
gnome-connections er en VNC og RDP klient for GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-connections/46/gnome-connections-46.0.tar.xz
Nedlasting MD5 sum: dcd819bfb15af4652842fb6b91fb9c7f
Nedlastingsstørrelse: 3.9 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 SBU
AppStream-1.0.3, FreeRDP-3.7.0, gtk-vnc-1.3.1, itstool-2.0.7, libhandy-1.8.3, og Vala-0.56.17
Installer gnome-connections ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test
Nå, som root bruker:
ninja install
GNOME Diskverktøy pakken gir applikasjoner som brukes til å håndtere lagringsenheter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-disk-utility/46/gnome-disk-utility-46.0.tar.xz
Nedlasting MD5 sum: e1ba191bbc9c38e99f6710520fbb5a20
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 36 MB
Estimert byggetid: 0.2 SBU
gnome-settings-daemon-46.0, itstool-2.0.7, libdvdread-6.1.3, libhandy-1.8.3, libpwquality-1.4.5, libsecret-0.21.4, og UDisks-2.10.1
Installer GNOME Diskverktøy ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
GNOME Logger pakken inneholder en loggviser for systemd journaler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-logs/45/gnome-logs-45.0.tar.xz
Nedlasting MD5 sum: 5b9396cf24528ae72eb4c48934f60df2
Nedlastingsstørrelse: 624 KB
Estimert diskplass som kreves: 8.8 MB
Estimert byggetid: 0.1 SBU
GTK-4.14.5, gsettings-desktop-schemas-46.1, itstool-2.0.7, og libadwaita-1.5.3
appstream-glib-0.8.3, desktop-file-utils-0.27 (for testpakken), og docbook-xml-4.5, docbook-xsl-nons-1.79.2, libxslt-1.1.42 (for å bygge manual sider), og dogtail
Installer GNOME Logger ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
GNOME Kart er en kartapplikasjon for GNOME.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-maps/46/gnome-maps-46.11.tar.xz
Nedlasting MD5 sum: a85532c578c0c2f1d009f4e32fe6d817
Nedlastingsstørrelse: 3.1 MB
Estimert diskplass som kreves: 18 MB
Estimert byggetid: 0.1 SBU
desktop-file-utils-0.27, GeoClue-2.7.1, geocode-glib-3.26.4, Gjs-1.80.2, libadwaita-1.5.3, libportal-0.7.1, libshumate-1.2.3, libgweather-4.4.2, og rest-0.9.1
Installer GNOME Kart ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test
Nå, som root bruker:
ninja install
GNOME Nettverktøy pakken er et nettverk informasjonsverktøy som gir GUI grensesnitt for noen av de fleste vanlige kommandolinjenettverksverktøy.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-nettool/42/gnome-nettool-42.0.tar.xz
Nedlasting MD5 sum: ba99489e9e3a1af03e9f2719acac7beb
Nedlastingsstørrelse: 413 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK+-3.24.43, itstool-2.0.7, og libgtop-2.41.3
BIND Utilities-9.20.0, Nmap-7.95, Net-tools-2.10, Traceroute-2.1.5, og Whois-5.4.3
Først må du tilpasse GNOME Nettverktøy til endringer i ping, ping6, og netstat verktøyene:
patch -Np1 -i ../gnome-nettool-42.0-ping_and_netstat_fixes-1.patch
Legg deretter til en rettelse for nyere versjoner av meson:
sed -i '/merge_file/s/(.*/(/' data/meson.build
Installer GNOME Nettverktøy ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
GNOME Strømstyring pakken inneholder et verktøy som brukes til å rapportere om strømstyring på systemet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-power-manager/43/gnome-power-manager-43.0.tar.xz
Nedlasting MD5 sum: c7e33249b59c6082312909f65739912e
Nedlastingsstørrelse: 376 KB
Estimert diskplass som kreves: 7.0 MB
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer GNOME Strømstyring ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
GNOME Skjermbilde er et verktøy som brukes for å ta skjermbilder av hele skjermen, et vindu eller et brukerdefinert område av skjermen, med valgfrie forskjønnende kanteffekter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-screenshot/41/gnome-screenshot-41.0.tar.xz
Nedlasting MD5 sum: 3d0199188d8ba07399e468a61e0174e8
Nedlastingsstørrelse: 352 KB
Estimert diskplass som kreves: 7.4 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK+-3.24.43, libcanberra-0.30 (Kompilert med GTK+3 støtte), og libhandy-1.8.3
Først, fikse bygging med nyere versjoner av meson:
sed -i '/merge_file/{n;d}' data/meson.build
Installer GNOME Skjermbilde ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
For best mulig å kjøre GNOME Skjermbilde fra kommandolinjen må -i-alternativet spesifiseres.
GNOME Systemovervåking pakken inneholder GNOME sin erstatning for gtop.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-system-monitor/46/gnome-system-monitor-46.0.tar.xz
Nedlasting MD5 sum: d2c121f58825bf5a441f16f13b0d3201
Nedlastingsstørrelse: 1020 KB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.2 SBU (med parallellisme=4)
adwaita-icon-theme-46.2, Gtkmm-4.14.0, itstool-2.0.7, libgtop-2.41.3, libadwaita-1.5.3, og librsvg-2.58.3
appstream-glib-0.8.3, desktop-file-utils-0.27, og uncrustify
Installer GNOME Systemovervåking ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
GNOME Terminal pakken inneholder terminalemulator for GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.gnome.org/GNOME/gnome-terminal/-/archive/3.52.2/gnome-terminal-3.52.2.tar.gz
Nedlasting MD5 sum: ba1805cdc363c92004d6df7962f20dfb
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 32 MB
Estimert byggetid: 0.3 SBU
DConf-0.40.0, gnome-shell-46.4, gsettings-desktop-schemas-46.1, itstool-2.0.7, libhandy-1.8.3, pcre2-10.44, og VTE-0.76.4
Først må du fikse noen utdaterte skjemaoppføringer:
sed -i -r 's:"(/system):"/org/gnome\1:g' src/external.gschema.xml
Installer GNOME Terminal ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
For å kjøre GNOME
Terminal, miljøvariabelen LANG må settes til en UTF-8 lokalitet
før det grafiske
miljøet startes.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D search_provider=false: Denne
bryteren deaktiverer “search gnome-shell” leverandøren.
Bruk dette alternativet hvis du ikke har gnome-shell
installert.
-D nautilus_extension=false:
Denne bryteren deaktiverer en avhengighet av nautilus filbehandler. Bruk dette
alternativet hvis du ikke har Nautilus installert.
GNOME Vær er en liten applikasjon som tillater deg å overvåke gjeldende værforhold for byen din, eller hvor som helst i verden, og for å få tilgang til oppdaterte prognoser levert av ulike internett tjenester.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-weather/46/gnome-weather-46.0.tar.xz
Nedlasting MD5 sum: 08c626cea07068b2a02d5faba90fdc14
Nedlastingsstørrelse: 236 KB
Estimert diskplass som kreves: 4.5 MB
Estimert byggetid: mindre enn 0.1 SBU
GeoClue-2.7.1, Gjs-1.80.2, libadwaita-1.5.3, og libgweather-4.4.2
Installer GNOME Vær ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Gucharmap er et Unicode tegnkart og fontviser. Den lar deg bla gjennom all tilgjengelig Unicode tegn og kategorier for de installerte skriftene, og for å undersøke deres detaljerte egenskaper. Det er en enkel måte å finne karakteren du kanskje bare kjenner etter Unicode navnet eller kodepunktet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.gnome.org/GNOME/gucharmap/-/archive/15.1.5/gucharmap-15.1.5.tar.bz2
Nedlasting MD5 sum: f50222e790637b951ae6a798d71b3f40
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 74 MB
Estimert byggetid: 0.1 SBU
Unicode Tegn Database: https://www.unicode.org/Public/zipped/15.1.0/UCD.zip
CJK Samlede Ideografier: https://www.unicode.org/Public/zipped/15.1.0/Unihan.zip
desktop-file-utils-0.27, gsettings-desktop-schemas-46.1, GTK+-3.24.43, itstool-2.0.7, pcre2-10.44, og UnZip-6.0
GLib-2.80.4 (med GObject Introspection) og Vala-0.56.17
Denne pakken bruker to uversjonerte nedlastinger. Det kan
være lurt å gi nytt navn til disse til et versjonert navn,
f.eks. UCD-15.zip for å gjøre
oppgraderinger enklere.
Installer Gucharmap ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
mkdir ucd &&
pushd ucd &&
unzip ../../../UCD.zip &&
cp -v ../../../Unihan.zip . &&
popd &&
meson setup --prefix=/usr \
--strip \
--buildtype=release \
-D ucd_path=./ucd \
-D docs=false \
.. &&
ninja
Denne pakken har ikke en testpakke.
Nå, som root bruker:
rm -fv /usr/share/glib-2.0/schemas/org.gnome.Charmap.enums.xml && ninja install
--strip: Selv om
pakken har en utgivelse som standard bygger uten
feilsøkingsinformasjon, uten denne bryteren vil det være noe
feilsøkingsinformasjon i binærfilene.
-D ucd_path=./ucd:
Dette peker på hvor de utpakkede hoved Unicode datafiler, og
det zippede Unihan arkivet kan bli funnet.
rm -fv /usr/share/glib-2.0/schemas/org.gnome.Charmap.enums.xml: Gamle versjoner av denne pakken installerte en foreldet fil som forhindrer programmet å kjøre, som om hovedskjemaet ikke er installert. Tvangsfjerning fungerer selv om den gamle filen ikke er til stede.
-D docs=false: Dette
gjør at pakken kan bygge hvis gtk-doc ikke er installert. Fjern dette
hvis du har installert det og ønsker å bygge dokumentasjonen.
-D gir=false: Bruk denne hvis du
ikke har installert GLib-2.80.4 (med GObject Introspection).
-D vapi=false: Bruk denne hvis du
ikke har installert Vala-0.56.17.
Seahorse er et grafisk grensesnitt for å administrere og bruke krypteringsnøkler. For øyeblikket støtter den PGP nøkler (ved hjelp av GPG/GPGME) og SSH nøkler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/seahorse/43/seahorse-43.0.tar.xz
Nedlasting MD5 sum: efa9fea2e1c4291c39d509eb366b9a56
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 43 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/seahorse-43.0-upstream_fixes-1.patch
Gcr-3.41.2, GnuPG-2.4.5, GPGME-1.23.2, itstool-2.0.7, libhandy-1.8.3, libpwquality-1.4.5, libsecret-0.21.4, og Vala-0.56.17
libsoup-3.4.4, p11-kit-0.25.5, og OpenSSH-9.8p1 (for å administrere SSH nøkler)
Først bruker du en oppdatering for byggefeil utløst av GnuPG-2.4 eller nyere, og GCC-14 eller nyere:
patch -Np1 -i ../seahorse-43.0-upstream_fixes-1.patch
Installer Seahorse ved å kjøre følgende kommandoer:
sed -i -r 's:"(/apps):"/org/gnome\1:' data/*.xml && mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
sed ... data/*.xml: Denne kommandoen fikser noen utdaterte oppføringer i skjemamalene.
Snapshot pakken inneholder et program som tar bilder og videoer fra et webkamera.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/snapshot/46/snapshot-46.3.tar.xz
Nedlasting MD5 sum: 25f97e88005b933c382e5a0c2193599c
Nedlastingsstørrelse: 22 MB
Estimert diskplass som kreves: 1.1 GB (2.9 MB installert)
Estimert byggetid: 4.5 SBU
libadwaita-1.5.3, gst-plugins-bad-1.24.7, og rustc-1.80.1
Denne pakken tar lang tid å bygge fordi LTO er aktivert, og LTO passering er ikke parallellisert.
Installer Snapshot ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Xfce er et skrivebordsmiljø som har som mål å være raskt og bruke lite system ressurser, samtidig som de er visuelt tiltalende og brukervennlige.
Xfce legemliggjør den tradisjonelle UNIX filosofien om modularitet og gjenbrukbarhet. Den består av en rekke komponenter som gir den fulle funksjonaliteten man kan forvente av et moderne skrivebordsmiljø. De er pakket separat, og du kan velge blant de tilgjengelige pakkene for å opprette det optimale personlige arbeidsmiljøet.
Bygg Xfce kjernepakker i den rekkefølgen som er presentert i boken for den enkleste løsningen av avhengigheter.
libxfce4util pakken er et grunnleggende verktøy bibliotek for Xfce skrivebordsmiljøet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/libxfce4util/4.18/libxfce4util-4.18.2.tar.bz2
Nedlasting MD5 sum: 9089e8974a581c5f39f610f2727c38ba
Nedlastingsstørrelse: 502 KB
Estimert diskplass som kreves: 5.9 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (med GObject Introspection)
Installer libxfce4util ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xfconf er konfigurasjonslagringssystemet for Xfce.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfconf/4.18/xfconf-4.18.3.tar.bz2
Nedlasting MD5 sum: f807ed0a1b88af479ec70b28c1f78dcc
Nedlastingsstørrelse: 636 KB
Estimert diskplass som kreves: 9.8 MB
Estimert byggetid: 0.1 SBU
Installer Xfconf ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libxfce4ui pakken inneholder GTK+ 3 skjermelementer som brukes av andre Xfce applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/libxfce4ui/4.18/libxfce4ui-4.18.6.tar.bz2
Nedlasting MD5 sum: 5da8e2ce2a154c9b3557e9b317c28ddb
Nedlastingsstørrelse: 885 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: 0.1 SBU
Installer libxfce4ui ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
Exo er et støttebibliotek som brukes i Xfce skrivebordet. Den har også noen hjelper applikasjoner som brukes gjennomgående i Xfce.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/exo/4.18/exo-4.18.0.tar.bz2
Nedlasting MD5 sum: 9d0be4e885eaf991e12dbc14d3fc628d
Nedlastingsstørrelse: 876 KB
Estimert diskplass som kreves: 14 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
GTK+-3.24.43, libxfce4ui-4.18.6, og libxfce4util-4.18.2
Installer Exo ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
|
er et kommandolinjeverktøy for å lage eller redigere ikoner på skrivebordet |
|
|
er en kommandolinjegrensesnitt til Xfce Foretrukket applikasjonsrammeverk. Den kan enten brukes til å åpne en liste over nettadresser med standard URL behandler eller starte den foretrukne applikasjonen for en bestemt kategori |
|
|
inneholder ekstra skjermelementer, et rammeverk for redigerbare verktøylinjer, lett-vekt økt ledelse støtte og funksjoner til å automatisk synkronisere objektegenskaper (basert på GObject Bindende egenskaper) |
Garcon pakken inneholder en freedesktop.org kompatibel menyimplementering basert på GLib og GIO.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/garcon/4.18/garcon-4.18.2.tar.bz2
Nedlasting MD5 sum: 153813ff2736f44fa7b6fa96068538d0
Nedlastingsstørrelse: 566 KB
Estimert diskplass som kreves: 8.4 MB
Estimert byggetid: 0.1 SBU
libxfce4ui-4.18.6 og GTK+-3.24.43
Installer Garcon ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libwnck pakken inneholder Vindusnavigator konstruksjonssett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libwnck/43/libwnck-43.0.tar.xz
Nedlasting MD5 sum: cd21ef743a1e9286554401c5b28d5ec6
Nedlastingsstørrelse: 448 KB
Estimert diskplass som kreves: 13 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.80.4 (med GObject Introspection) og startup-notification-0.12
Installer libwnck ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-Dgtk_doc=true: Bruk dette
alternativet for å bygge API referansemanualen.
Xfce4 Panel pakken inneholder Xfce4 Panel.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-panel/4.18/xfce4-panel-4.18.6.tar.bz2
Nedlasting MD5 sum: caddd05c820f0fbae9d2acc5218fc7ed
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 38 MB
Estimert byggetid: 0.6 SBU
Cairo-1.18.0, Exo-4.18.0, Garcon-4.18.2, og libwnck-43.0
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/xfce4-panel
Installer Xfce4 Panel ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-gtk-doc: Bruk denne
parameteren hvis GTK-Doc er
installert og du ønsker å gjenoppbygge og installer API
dokumentasjonen.
|
er Xfce panel |
|
|
er et skallskript som bruker D-Bus og Xfce Panel for å vise en sprettoppmeny av installerte applikasjoner |
|
|
er et skallskript som bruker D-Bus og Xfce Panel for å vise en sprettoppmeny av hjemmemappen og dens undermapper |
|
|
er et skallskript som bruker DBus til å vise Xfwm4 sprettoppmeny |
|
|
inneholder Xfce Panel API funksjoner |
Thunar er Xfce sin filbehandler, en GTK+ 3 GUI for å organisere filene på datamaskinen din.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/thunar/4.18/thunar-4.18.11.tar.bz2
Nedlasting MD5 sum: 506e80f3fa94aca251b18c185b1303e8
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 67 MB
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4)
libgudev-238, libnotify-0.8.3, og pcre2-10.44
GTK-Doc-1.34.0 (for dokumentasjon), Gvfs-1.54.2 (for fjernsurfing og automontering), libexif-0.6.24 og tumbler-4.18.2 (kjøretid)
Installer Thunar ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--docdir=/usr/share/doc/thunar-4.18.11 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Thunar Volumbehandler er en utvidelse for Thunar filbehandling, som aktiverer automatisk administrasjon av flyttbare stasjoner og medier.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/thunar-volman/4.18/thunar-volman-4.18.0.tar.bz2
Nedlasting MD5 sum: a0965931e78fe662ad134e63b1ab33b9
Nedlastingsstørrelse: 499 KB
Estimert diskplass som kreves: 7.0 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Thunar Volumbehandler ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Tumbler pakken inneholder en D-Bus miniatyrbildetjeneste basert på miniatyrbilderbehandling av D-Bus spesifikasjoner. Dette er nyttig for å generere miniatyrbilder av filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/tumbler/4.18/tumbler-4.18.2.tar.bz2
Nedlasting MD5 sum: 576ff73eb77530b001e36d565544a7f6
Nedlastingsstørrelse: 608 KB
Estimert diskplass som kreves: 13 MB
Estimert byggetid: 0.1 SBU
cURL-8.9.1, FreeType-2.13.3, gdk-pixbuf-2.42.12, gst-plugins-base-1.24.7, GTK-Doc-1.34.0, libjpeg-turbo-3.0.1, libgsf-1.14.52, libpng-1.6.43, Poppler-24.08.0, FFmpegThumbnailer, libgepub, og libopenraw
Installer Tumbler ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xfce4 Appfinder er et verktøy for å finne og starte installerte applikasjoner ved å søke i .desktop filene som er installert på ditt system.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-appfinder/4.18/xfce4-appfinder-4.18.1.tar.bz2
Nedlasting MD5 sum: 621d811f93b3edaac4a0205bc18ef5c5
Nedlastingsstørrelse: 552 KB
Estimert diskplass som kreves: 7.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Xfce4 Appfinder ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xfce4 Strømbehandler er strømbehandler for Xfce skrivebordet, Xfce strømbehandler administrerer strømkildene på datamaskinen og enheter som kan kontrolleres for å redusere strømforbruket deres (som f.eks LCD lysstyrkenivå eller skjermens dvale). I tillegg, Xfce4 Strømbehandler gir et sett med freedesktop kompatibel DBus grensesnitt for å informere andre applikasjoner om gjeldende effektnivå slik at de kan justere strømforbruket deres.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-power-manager/4.18/xfce4-power-manager-4.18.4.tar.bz2
Nedlasting MD5 sum: da60844080b55d3a9192e650f564c644
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 19 MB
Estimert byggetid: 0.1 SBU
libnotify-0.8.3, UPower-1.90.4, og xfce4-panel-4.18.6
Polkit-125 (kjøretid, kreves for kontroll av bakgrunnslys på bærbar PC)
Installer Xfce4 Strømbehandler ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xfce4 Innstillinger pakken inneholder en samling av programmer som er nyttige for å justere dine Xfce preferanser.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-settings/4.18/xfce4-settings-4.18.6.tar.bz2
Nedlasting MD5 sum: 37a5f463b2b81ac74a09edbda8ed4fb0
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 30 MB
Estimert byggetid: 0.2 SBU
gnome-icon-theme-3.12.0 eller lxde-icon-theme-0.5.1
libcanberra-0.30, libnotify-0.8.3 og libxklavier-5.4
Installer Xfce4 Innstillinger ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-sound-settings: Bruk
denne bryteren til å aktiver lydinnstillinger i GUI.
--enable-pluggable-dialogs: Bruk
denne bryteren til å aktiver støtte for innebygde
innstillingsdialoger.
|
er en GTK+ 3 GUI som lar deg endre noen av tastatur og muse preferansene dine |
|
|
er en GTK+ 3 GUI som lar deg endre noen av dine tema, ikon og font preferanser |
|
|
er en GTK+ 3 GUI som lar deg endre noen av dine skjermpreferanser |
|
|
er en GTK+ 3 GUI to som lar deg endre noen av tastaturpreferansene dine |
|
|
er en GTK+ 3 GUI som lar deg endre hvilke applikasjoner som brukes til å håndtere ulike mimetyper |
|
|
er en GTK+ 3 GUI som lar deg endre noen av dine muspreferanser |
|
|
er en GTK+ 3 GUI som lar deg endre dine preferanser lagret i Xfconf |
|
|
er en GTK+ 3 GUI som lar deg endre mange av dine Xfce preferanser |
|
|
er en Xfce innstillingsnisse |
Xfdesktop er en skrivebordsbehandler for Xfce Skrivebordsmiljøet. Xfdesktop setter bakgrunnsbildet/fargen, oppretter høyreklikkmenyen og vinduslisten og viser filikonene på skrivebordet ved hjelp av Thunar biblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfdesktop/4.18/xfdesktop-4.18.1.tar.bz2
Nedlasting MD5 sum: e675c2989436dc724fef402d1db0125d
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.1 SBU
libnotify-0.8.3, startup-notification-0.12 og thunar-4.18.11
Installer Xfdesktop ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xfwm4 er vindusbehandleren for Xfce.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfwm4/4.18/xfwm4-4.18.0.tar.bz2
Nedlasting MD5 sum: 181415e457c86124fa5f8aa5d715b967
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.2 SBU
libwnck-43.0 og libxfce4ui-4.18.6
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/xfwm4
Installer Xfwm4 ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
|
er Xfce vindusbehandler |
|
|
er en GTK+ 3 applikasjon som tillater angivelse av noen preferanser som tema, hurtigtaster og musefokusatferd |
|
|
er en GTK+ 3 applikasjon som tillater angivelse av noen flere preferanser for Xfwm4 |
|
|
er en GTK+ 3 applikasjon som tillater angivelse av arbeidsområde preferansene dine |
Xfce4 Økter er øktbehandler for Xfce. Dens oppgave er å lagre tilstanden til ditt skrivebord (åpnede applikasjoner og deres plassering) og gjenopprett det i løpet av neste oppstart. Du kan lage flere forskjellige økter og velge en av dem ved oppstart.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-session/4.18/xfce4-session-4.18.4.tar.bz2
Nedlasting MD5 sum: 620c369a44c6b866c80d31e4685d6bef
Nedlastingsstørrelse: 901 KB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 SBU
libwnck-43.0 og libxfce4ui-4.18.6
desktop-file-utils-0.27, xfce4-screensaver eller XScreenSaver-6.09, shared-mime-info-2.4 og polkit-gnome-0.105
Installer Xfce4 Økter ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-legacy-sm &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-legacy-sm:
Denne bryteren deaktiverer eldre øktbehandlinger som ikke er
nødvendig på et moderne system.
Det er flere valgfrie kjøretidsavhengigheter for Xfce4: dbus-1.14.10, GnuPG-2.4.5, hicolor-icon-theme-0.18 OpenSSH-9.8p1 og xinit-1.4.2
Når du bygger en Xfce4
pakke, noen konfigurasjonsfiler er installert i /usr/share/applications, /usr/share/icons, og /usr/share/mime. For å bruke disse filene i
din Xfce4 økt, må du
oppdatere ulike databaser. Gjør det ved å kjøre, som
root bruker (du må ha de
anbefalte avhengighetene installert):
update-desktop-database && update-mime-database /usr/share/mime
Du kan starte Xfce4 fra en TTY ved bruk av xinit-1.4.2, eller fra en grafisk skjermbehandler, som f.eks lightdm-1.32.0.
For å starte Xfce4 ved bruk av xinit-1.4.2, kjør følgende kommandoer:
cat > ~/.xinitrc << "EOF"
dbus-launch --exit-with-x11 startxfce4
EOF
startx
X økten starter på den første ubrukte virtuelle terminalen, normalt vt7. Du kan bytte til en annen vtn ved å samtidig trykke på tastene Ctrl-Alt-Fn (n=1, 2, ...). For å bytte tilbake til X økten, vanligvis startet på vt7, bruk Ctrl-Alt-F7. Vt hvor kommandoen startx ble utført vil vise mange meldinger, inkludert X startmeldinger, applikasjoner startet automatisk med økten, og til slutt noen advarsler og feilmeldinger. Du kan foretrekke å omdirigere disse meldingene til en loggfil, som ikke bare vil beholde den innledende vt ryddig, men kan også brukes til feilsøkingsformål. Dette kan gjøres fra X med:
startx &> ~/.x-session-errors
Når du slår av eller starter på nytt, vises avslutningsmeldingene på vt hvor X kjørte. Hvis du ønsker å se disse meldingene, samtidig trykk på tastene Alt-F7 (forutsatt at X kjørte på vt7).
Dette er en liten samling av valgfrie applikasjoner som legger til ekstra kapasiteter til ditt Xfce skrivebord.
Parole er en DVD/CD/musikk spiller for Xfce som bruker GStreamer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Selv om denne versjonen av parole fungerer med de fleste filer, kan den ikke spille av DVDer, rapporterer en feil i gstreameren sin bakside.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/parole/4.18/parole-4.18.1.tar.bz2
Nedlasting MD5 sum: 29a409b4b22c2d91f210679e5708a19d
Nedlastingsstørrelse: 916 KB
Estimert diskplass som kreves: 19 MB
Estimert byggetid: 0.2 SBU
dbus-glib-0.112, gst-plugins-base-1.24.7, gst-plugins-good-1.24.7, og libxfce4ui-4.18.6
libnotify-0.8.3 og taglib-2.0.1
Installer Parole ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har installert Gstreamer Plugins Ugly med støtte for libdvdnav og libdvdread og ønsker å bruke Parole til å spille av en DVD, klikk Media> Open location og skriv inn dvd:// i boksen.
På samme måte klikker du for å spille av en CD Media> Open location og skriv inn cdda:// i boksen.
Xfce4 Terminal er en GTK+3 terminalemulator. Dette er nyttig for å kjøre kommandoer eller programmer i komforten til et Xorg vindu; du kan dra og slippe filer i Xfce4 Terminal eller kopier og lim inn tekst med musen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/xfce4-terminal/1.1/xfce4-terminal-1.1.3.tar.bz2
Nedlasting MD5 sum: 8c986841d70c7480e8bd928466b8cdc2
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.1 SBU
Installer Xfce4 Terminal ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xfburn er et GTK+ 3 GUI grensesnitt for Libisoburn. Dette er nyttig for å lage CDer og DVDer fra filer på datamaskinen eller ISO bilder lastet ned fra andre steder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/xfburn/0.7/xfburn-0.7.2.tar.bz2
Nedlasting MD5 sum: a895d4d02cf2ee794162815c3f531a42
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.1 SBU
Exo-4.18.0, libburn-1.5.6, libisofs-1.5.6, og libxfce4ui-4.18.6
gst-plugins-base-1.24.7 og Cdrdao-1.2.4 (kjøretid)
Installer Xfburn ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Ristretto er en rask og lett bildeviser for Xfce skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/ristretto/0.13/ristretto-0.13.2.tar.bz2
Nedlasting MD5 sum: f3b1706a991a34f9866b0b2c27c6d0e1
Nedlastingsstørrelse: 823 KB
Estimert diskplass som kreves: 9.9 MB
Estimert byggetid: 0.1 SBU
libexif-0.6.24 og libxfce4ui-4.18.6
tumbler-4.18.2 (kjøretid)
Installer Ristretto ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Xfce4 Utviklingsverktøy er en samling verktøy og makroer for å bygge noen Xfce applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://archive.xfce.org/src/xfce/xfce4-dev-tools/4.18/xfce4-dev-tools-4.18.1.tar.bz2
Nedlasting MD5 sum: 69b4cd255a0b8f12bbdc9b10c433b223
Nedlastingsstørrelse: 356 KB
Estimert diskplass som kreves: 2.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Xfce4 Utviklingsverktøy ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Xfce4 Varslingsnissen er en liten program som implementerer "server-side"-delen av Freedesktop skrivebords varslingsspesifikasjon. Programmer som ønsker å sprette opp en varslingsboble på en standard måte kan bruke Xfce4-Notifyd til å gjøre det ved å sende standard meldinger over D-Bus ved å bruke org.freedesktop.Notifications grensesnittet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/xfce4-notifyd/0.9/xfce4-notifyd-0.9.6.tar.bz2
Nedlasting MD5 sum: 1640c56ec1062dc46b5691eab12db9b6
Nedlastingsstørrelse: 728 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.1 SBU
libnotify-0.8.3, libxfce4ui-4.18.6, libcanberra-0.30, xfce4-dev-tools-4.18.1, og xfce4-panel-4.18.6
Installer Xfce4 Varslingsnissen ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Du kan teste varslingsnissen med kommandoen notify-send, skal kjøres i et grafisk miljø:
notify-send -i info Information "Hi ${USER}, This is a Test"
Xfce4 Pulseaudio Programtillegget er et programtillegg for Xfce panelet som gir en praktisk måte å justere lydvolumet på PulseAudio lydsystemet og til et automikserverktøy som pavucontrol. Den kan valgfritt håndtere multimedietaster for å kontrollere lydvolum.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/panel-plugins/xfce4-pulseaudio-plugin/0.4/xfce4-pulseaudio-plugin-0.4.8.tar.bz2
Nedlasting MD5 sum: 83317e672e843e0b14d0da24ed301b3b
Nedlastingsstørrelse: 428 KB
Estimert diskplass som kreves: 6.4 MB
Estimert byggetid: mindre enn 0.1 SBU
libnotify-0.8.3, PulseAudio-17.0, og xfce4-panel-4.18.6
keybinder-3.0-0.3.2 og pavucontrol-6.1 (kjøretid)
Installer Xfce4 Pulseaudio Programtillegg ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
LXQt er et ekstremt raskt og energibesparende skrivebordsmiljø.
LXQt er en Qt basert Skrivebordsmiljø. Det er fokusert på å være et klassisk skrivebord med et moderne utseende og følelse. Den kan tilpasse utseende overalt. Panelet(e) har programtillegg og innstillinger. Det er Vindusbehandler agnostisk, har flerspråksstøtte og standard hurtigtaster. LXQt bruker mindre CPU og mindre RAM enn de fleste andre miljøer. Det er spesielt nyttig for skydatamaskiner med lave maskinvarespesifikasjoner, som f.eks netbooks, mobile enheter (f.eks. MID-er) eller eldre datamaskiner, men kan brukes med moderne maskinvare.
Bygg LXQt kjernepakker i rekkefølgen presentert i boken for enkleste løsning av avhengigheter.
For å bygge LXQt anbefales følgende trinn:
Bygg først helheten Xorg Chapter, inkludert Wayland støtte med nødvendige og anbefalte avhengigheter. Test at miljøet jobber med twm som vindusbehandler. Med erfaring kan noen av pakkene utelates, men det er ikke anbefalt for førstegangsbrukere.
For det andre, bygg de nødvendige delene av Qt. Hele pakken, Qt-6.7.2 er ganske lang og har mange avhengigheter.
Bygg til slutt LXQt skrivebordet ved å bruke sidene nedenfor i rekkefølge. Pakkene i applikasjonsdelen er valgfrie, men som et minimum, qterminal-2.0.1 er anbefalt.
kwindowsystem gir informasjon om, og tillater interaksjon med vindussystemet. Det gir et høyt nivå API som er vindussystemuavhengig og har plattformspesifikke implementeringer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.5.0 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.5/kwindowsystem-6.5.0.tar.xz
Nedlasting MD5 sum: 4f4f1f2b777e773fb6d41bb026cee6d0
Nedlastingsstørrelse: 2.3 MB
Estimert diskplass som kreves: 73 MB
Estimert byggetid: 0.6 SBU
extra-cmake-modules-6.5.0, plasma-wayland-protocols-1.13.0, Qt-6.7.2, og Xorg Biblioteker
Installer kwindowsystem ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
kconfig pakken gir tilgang til konfigurasjonsfiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.5.0 er bygget, IKKE bygg denne pakken som er presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.5/kconfig-6.5.0.tar.xz
Nedlasting MD5 sum: edecb863455d7b76a29a1374bad501bc
Nedlastingsstørrelse: 288 KB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
Installer kconfig ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_LIBEXECDIR=libexec \
-D KDE_INSTALL_USE_QT_SYS_PATHS=ON \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Solid er et enhetsintegrasjonsrammeverk. Den gir en måte å spørre og samhandle med maskinvare uavhengig av det underliggende operativsystemet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.5.0 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.5/solid-6.5.0.tar.xz
Nedlasting MD5 sum: 8cc81a8dd1e5fe7b7f1ff69b1a823d5c
Nedlastingsstørrelse: 308 KB
Estimert diskplass som kreves: 30 MB
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4)
extra-cmake-modules-6.5.0 og Qt-6.7.2
UDisks-2.10.1, UPower-1.90.4, libimobiledevice, og media-player-info
Installer solid ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_LIBEXECDIR=libexec \
-D KDE_INSTALL_USE_QT_SYS_PATHS=ON \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
KIdleTime brukes til å rapportere inaktiv tid for brukere og systemet. Det er nyttig ikke bare for å bestemme gjeldende hviletid for PC-en, men også for å bli varslet om uvirksomme hendelser, for eksempel tilpasset tidsavbrudd eller brukeraktivitet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.5.0 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.5/kidletime-6.5.0.tar.xz
Nedlasting MD5 sum: 7819a3d50f63baa706284b1ed33ff4be
Nedlastingsstørrelse: 32 KB
Estimert diskplass som kreves: 4.9 MB
Estimert byggetid: 0.2 SBU
extra-cmake-modules-6.5.0, plasma-wayland-protocols-1.13.0, og Qt-6.7.2
Installer kidletime ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_LIBEXECDIR=libexec \
-D KDE_INSTALL_USE_QT_SYS_PATHS=ON \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
kwayland er en Qt stil API å samhandle med wayland-client og wayland-server API.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.5.0 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): http://download.kde.org/stable/plasma/6.1.4/kwayland-6.1.4.tar.xz
Nedlasting MD5 sum: 83985c22ca89897cf17b803a9b50f15e
Nedlastingsstørrelse: 132 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
extra-cmake-modules-6.5.0, Mesa-24.1.5 (bygget med Wayland-1.23.0 støtte), plasma-wayland-protocols-1.13.0, og Qt-6.7.2
Installer kwayland ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_LIBEXECDIR=libexec \
-D KDE_INSTALL_USE_QT_SYS_PATHS=ON \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libkscreen pakken inneholder KDE Skjermbehandlingsbiblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Denne pakken er trukket ut fra plasma settet med pakker. Hvis Plasma-6.1.4 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): http://download.kde.org/stable/plasma/6.1.4/libkscreen-6.1.4.tar.xz
Nedlasting MD5 sum: 130f277cd002be34fad025dc78222db9
Nedlastingsstørrelse: 116 KB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: 0.3 SBU (bruke parallellisme=4)
Installer libkscreen ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_LIBEXECDIR=libexec \
-D KDE_INSTALL_USE_QT_SYS_PATHS=ON \
-D BUILD_TESTING=OFF \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Denne komponenten er ment for at applikasjoner skal kunne enkelt bruke klienter basert på en "wtl-layer-shell" protokollen. Klienter kan bruke dette grensesnittet for å tildele rollen surface_layer til wl_surfaces. Slike overflater er tilordnet et "lag" av utdataen og gjengitt med en definert z-dybde i forhold til hverandre.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Denne pakken er hentet fra plasmasettet med pakker. Hvis Plasma-6.1.4 er bygget, IKKE bygg også denne pakken som presentert her.
Nedlasting (HTTP): http://download.kde.org/stable/plasma/6.1.4/layer-shell-qt-6.1.4.tar.xz
Nedlasting MD5 sum: 7e901330dfc754378f1f88fae0a9941a
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 160 KB
Estimert byggetid: 0.2 SBU (bruke parallellisme=4)
Installer layer-shell-qt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
muparser pakken er en rask matematisk analysebibliotek for C og C++.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/beltoforion/muparser/archive/v2.3.4/muparser-2.3.4.tar.gz
Nedlasting MD5 sum: b92180a648be88238008ea01a597ccb9
Nedlastingsstørrelse: 112 KB
Estimert diskplass som kreves: 5.1 MB
Estimert byggetid: 0.1 SBU
Installer muparser ved å kjøre følgende kommandoer:
mkdir -v build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
For å teste resultatene, utsted: make test.
Nå, som root bruker:
make install
lxqt-build-tools pakken gir flere verktøy som trengs for å bygge LXQt, så vel som andre komponenter vedlikeholdt av LXQt prosjektet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-build-tools/releases/download/2.0.0/lxqt-build-tools-2.0.0.tar.xz
Nedlasting MD5 sum: f6b52c3a792dd48d7debfa90eed52f3b
Nedlastingsstørrelse: 28 KB
Estimert diskplass som kreves: 1.0 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer lxqt-build-tools ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libqtxdg er en Qt implementering av freedesktop.org xdg spesifikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/libqtxdg/releases/download/4.0.0/libqtxdg-4.0.0.tar.xz
Nedlasting MD5 sum: 4aaf75449cb6c8251f3b2fc21e4c5122
Nedlastingsstørrelse: 72 KB
Estimert diskplass som kreves: 9.5 MB
Estimert byggetid: 0.3 SBU
GTK+-3.24.43 (for gtk-update-icon-cache)
Installer libqtxdg ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-menu-data pakken inneholder kompatible menyfiler for LXQt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-menu-data/releases/download/2.0.0/lxqt-menu-data-2.0.0.tar.xz
Nedlasting MD5 sum: ba924239447b2d5d19c3024871fba199
Nedlastingsstørrelse: 56 KB
Estimert diskplass som kreves: 1.8 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer lxqt-menu-data ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
liblxqt er kjerneverktøysbiblioteket for alle LXQt komponenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/liblxqt/releases/download/2.0.0/liblxqt-2.0.0.tar.xz
Nedlasting MD5 sum: c1c51cb0d759cc6beb8b576b5a2c8285
Nedlastingsstørrelse: 84 KB
Estimert diskplass som kreves: 7.8 MB
Estimert byggetid: 0.3 SBU
libqtxdg-4.0.0, kwindowsystem-6.5.0 for lxqt, og polkit-qt-0.200.0
Installer liblxqt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libsysstat pakken inneholder et bibliotek som brukes for å søke etter systeminformasjon og statistikk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/libsysstat/releases/download/1.0.0/libsysstat-1.0.0.tar.xz
Nedlasting MD5 sum: 8a48fa8de906f9e73bd9ef91e39128eb
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 2.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libsysstat ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
qtxdg-tools inneholder et CLI MIME verktøy for håndtering av filtilknytninger og åpning av filer med deres standardapplikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/qtxdg-tools/releases/download/4.0.0/qtxdg-tools-4.0.0.tar.xz
Nedlasting MD5 sum: 6b9022f7f39f8bff398e69206ad01a93
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 1.8 MB
Estimert byggetid: 0.1 SBU
Installer qtxdg-tools ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libfm-extra pakken inneholder et bibliotek og andre filer som kreves av menu-cache-gen programmet i /usr/bin/libexec installert av menu-cache-1.1.0.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/pcmanfm/libfm-1.3.2.tar.xz
Nedlasting MD5 sum: c87a0ff41ae77825079b2f785ec0741e
Nedlastingsstørrelse: 924 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libfm-extra ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--with-extra-only \
--with-gtk=no \
--disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--with-extra-only:
Denne bryteren deaktiverer alle komponenter bortsett fra
libfm-extra biblioteket.
--with-gtk=no: Denne
bryteren deaktiverer støtte for GTK+ fordi det ikke er nødvendig for
denne pakken.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Meny Cache pakken inneholder et bibliotek for å lage og bruke cacher for å øke hastigheten på manipulasjon for freedesktop.org definerte applikasjonsmenyer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/lxde/menu-cache-1.1.0.tar.xz
Nedlasting MD5 sum: 99999a0bca48b980105208760c8fd893
Nedlastingsstørrelse: 260 KB
Estimert diskplass som kreves: 3.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Først fiks en minnelekkasje og “flere definisjons” problemer:
patch -Np1 -i ../menu-cache-1.1.0-consolidated_fixes-1.patch
Installer Meny Cache ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-gtk-doc: Bruk dette
alternativet hvis GTK-Doc er
installert og du ønsker å bygge og installere API
dokumentasjonen.
libfm-qt er en Qt overføring til libfm, et bibliotek som leverer komponenter for å bygge skrivebordsfilbehandlere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/libfm-qt/releases/download/2.0.2/libfm-qt-2.0.2.tar.xz
Nedlasting MD5 sum: cc0305facff6c194f3d1663924ddc89e
Nedlastingsstørrelse: 404 KB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
Installer libfm-qt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-globalkeys pakken inneholder en nisse som brukes til å registrere globale hurtigtaster samt et redigeringsprogram for tastatursnarveier.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-globalkeys/releases/download/2.0.0/lxqt-globalkeys-2.0.0.tar.xz
Nedlasting MD5 sum: c919f92964fb62953af831618955f9a3
Nedlastingsstørrelse: 76 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.5 SBU
Installer lxqt-globalkeys ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
libdbusmenu-lxqt pakken gir en Qt implementering av DBusMenu protokollen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/libdbusmenu-lxqt/releases/download/0.1.0/libdbusmenu-lxqt-0.1.0.tar.xz
Nedlasting MD5 sum: 90b4882c9f84d7dd45129773140942bd
Nedlastingsstørrelse: 40 KB
Estimert diskplass som kreves: 8.1 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
Installer libdbusmenu-lxqt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-qtplugin pakken gir en LXQt Qt plattform integrerings programtillegg.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-qtplugin/releases/download/2.0.0/lxqt-qtplugin-2.0.0.tar.xz
Nedlasting MD5 sum: 4385d081c09816bdb0ce3d6cd2b31225
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 2.4 MB
Estimert byggetid: 0.1 SBU
Installer lxqt-qtplugin ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-panel pakken inneholder en lettvekts X11 skrivebordspanel.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-panel/releases/download/2.0.1/lxqt-panel-2.0.1.tar.xz
Nedlasting MD5 sum: 8eb8a2ba5293a9c5d7d85f5c31567780
Nedlastingsstørrelse: 648 KB
Estimert diskplass som kreves: 59 MB
Estimert byggetid: 0.5 SBU (Bruke parallellisme=4)
layer-shell-qt-6.1.4 for lxqt, libdbusmenu-lxqt-0.1.0, liblxqt-2.0.0, lxqt-globalkeys-2.0.0, lxqt-menu-data-2.0.0, solid-6.5.0 for lxqt, og menu-cache-1.1.0
PulseAudio-17.0, libstatgrab-0.92.1 (nettverksmonitor og CPU last programtillegg), libsysstat-1.0.0 (Programtillegg for CPU og nettverks monitor), libxkbcommon-1.7.0 (tastaturindikator programtillegg), og lm-sensors-3-6-0 (sensorer programtillegg)
Først, fiks et problem identifisert oppstrøms:
sed -e '/lxqt_app_translation_loader/a set(CMAKE_EXECUTABLE_ENABLE_EXPORTS TRUE)' \
-i panel/CMakeLists.txt
Installer lxqt-panel ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
pcmanfm-qt er en filbehandler og skrivebord ikonbehandler (en Qt overføring av pcmanfm og libfm).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/pcmanfm-qt/releases/download/2.0.0/pcmanfm-qt-2.0.0.tar.xz
Nedlasting MD5 sum: 163f512c5ad0994394fd316a0caaef92
Nedlastingsstørrelse: 388 KB
Estimert diskplass som kreves: 18 MB
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4)
layer-shell-qt-6.1.4 for lxqt, liblxqt-2.0.0, libfm-qt-2.0.2, og lxqt-menu-data-2.0.0
Gvfs-1.54.2 (kjøretid) og oxygen-icons-6.0.0 eller et annet ikontema (avhengig av ditt valg, vil noen ikoner mangle flere steder)
Hvis libLayerShellQtInterface.so er installert i /opt, hjelp
denne pakken å finne den. Som root bruker:
if [ -e /opt/kf6/lib/libLayerShellQtInterface.so -a \
! -e /usr/lib/libLayerShellQtInterface.so ]; then
ln -sv /opt/kf6/lib/libLayerShellQtInterface.so \
/usr/lib/libLayerShellQtInterface.so
fi
Installer pcmanfm-qt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
For å gjøre pcmanfm-qt
lettere å finne i menyer, justerer du .desktop filen. Igjen,
som root bruker:
sed -e '/Categories=/s/=/=System;FileTools;/' \
-e '/Name=/s/=.*/=File Manager PCManFM-Qt'/ \
-i /usr/share/applications/pcmanfm-qt.desktop
lxqt-powermanagement pakken gir strømstyringsmodul for LXQt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-powermanagement/releases/download/2.0.0/lxqt-powermanagement-2.0.0.tar.xz
Nedlasting MD5 sum: fef1b1f47ff94635ed478e36e4137337
Nedlastingsstørrelse: 96 KB
Estimert diskplass som kreves: 8.6 MB
Estimert byggetid: 0.3 SBU
liblxqt-2.0.0, kidletime-6.5.0 for lxqt, solid-6.5.0 for lxqt, og UPower-1.90.4
Installer lxqt-powermanagement ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-runner pakken gir et verktøy som brukes for å starte programmer raskt ved å skrive inn navnene deres.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-runner/releases/download/2.0.0/lxqt-runner-2.0.0.tar.xz
Nedlasting MD5 sum: 923c96c9253fa4b9eb70e1bb0aabfb26
Nedlastingsstørrelse: 224 KB
Estimert diskplass som kreves: 6.1 MB
Estimert byggetid: 0.1 SBU
lxqt-globalkeys-2.0.0, kwindowsystem-6.5.0 for lxqt, og muparser-2.3.4
Installer lxqt-runner ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
For å bruke lxqt-runner, trykk samtidig på Alt-F2 tastene. Et dialogvindu vises øverst i midten av skjermen. Når du begynner å skrive en kommando, vises en liste over mulige treff som endres mens du fortsetter å skrive.
lxqt-themes pakken gir en rekke grafikkfiler og temaer for LXQt skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-themes/releases/download/2.0.0/lxqt-themes-2.0.0.tar.xz
Nedlasting MD5 sum: 6e9c345037b4718ff500dfbbac0ce435
Nedlastingsstørrelse: 25 MB
Estimert diskplass som kreves: 55 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer lxqt-themes ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-admin pakken inneholder to GUI verktøy for å justere innstillingene for operativsystemet LXQt kjører på.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-admin/releases/download/2.0.0/lxqt-admin-2.0.0.tar.xz
Nedlasting MD5 sum: afc939f22db9e40d45508191a8c7ec04
Nedlastingsstørrelse: 152 KB
Estimert diskplass som kreves: 4.5 MB
Estimert byggetid: 0.2 SBU
Installer lxqt-admin ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-about pakken gir den frittstående LXQt “Om” dialogen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-about/releases/download/2.0.0/lxqt-about-2.0.0.tar.xz
Nedlasting MD5 sum: ec17b9089bbf2dc5dfdfbcca196543f6
Nedlastingsstørrelse: 48 KB
Estimert diskplass som kreves: 3.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer lxqt-about ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-config pakken gir LXQt Konfigurasjonssenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-config/releases/download/2.0.0/lxqt-config-2.0.0.tar.xz
Nedlasting MD5 sum: 3c5064b356b4d457258252bd521f3372
Nedlastingsstørrelse: 372 KB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
liblxqt-2.0.0, kconfig-5.115.0 for lxqt, libkscreen-6.1.4 for lxqt, og Xorg Libinput-1.4.0
Installer lxqt-config ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
|
er LXQt Konfigurasjonssenter |
|
|
brukes til å endre systemtemaer, ikontemaer og fonter som brukes av applikasjoner i en LXQt økt |
|
|
konfigurerer lysstyrkeinnstillingen til en skjerm |
|
|
brukes til å knytte filtyper til programmer |
|
|
brukes til å konfigurere inngangsenheter, innstillingsalternativer som musehastighet, markøren, tastaturhastigheten og tastaturoppsettet |
|
|
konfigurerer lokaliteten som brukes i LXQt økter |
|
|
er en grafisk grenseflate til xrandr som konfigurerer skjermer på et system |
|
|
inneholder liblxqt-config-cursor API funksjoner |
lxqt-policykit pakken er LXQt sin Regelsettagent.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-policykit/releases/download/2.0.0/lxqt-policykit-2.0.0.tar.xz
Nedlasting MD5 sum: 4c3b3533a966798fb46ff8da3f8ffa07
Nedlastingsstørrelse: 40 KB
Estimert diskplass som kreves: 2.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer lxqt-policykit ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-sudo pakken er et grafisk grensesnitt for sudo og su henholdsvis.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-sudo/releases/download/2.0.0/lxqt-sudo-2.0.0.tar.xz
Nedlasting MD5 sum: e6e2079901270e6f9b527dc5d44e098e
Nedlastingsstørrelse: 40 KB
Estimert diskplass som kreves: 2.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer lxqt-sudo ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-openssh-askpass pakken er en GUI for å spørre om legitimasjon på vegne av andre programmer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-openssh-askpass/releases/download/2.0.1/lxqt-openssh-askpass-2.0.1.tar.xz
Nedlasting MD5 sum: 7ce91af596704385f206db07f726c26e
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 1.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer lxqt-openssh-askpass ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-session pakken inneholder standard øktbehandler for LXQt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-session/releases/download/2.0.0/lxqt-session-2.0.0.tar.xz
Nedlasting MD5 sum: 7e3e0553e7562ef5c25072c8dc671f78
Nedlastingsstørrelse: 192 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.4 SBU
Installer lxqt-session ved å kjøre følgende kommandoer:
sed -e '/TryExec/s|=|=/usr/bin/|' \
-i xsession/lxqt.desktop.in &&
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
sed -e '/TryExec/s|=|='/usr'/bin/|' -i xsessions/lxqt.desktop.in: Hvis du bruker en skjermbehandler, må hele banen til “TryExec” direktivet gis slik at LXQt skrivebordet vises i øktlisten.
Andre vindusbehandlere enn openbox-3.6.1 kan brukes, f.eks.
Xfwm4-4.18.0. Vær oppmerksom på at
IceWM-3.6.0 er ikke en god erstatning.
Fluxbox fungerer, skjønt i
denne sammenhengen (med lxqt-config-2.0.0), openbox-3.6.1 er bedre.
Konfigurasjonsfilen /usr/share/lxqt/windowmanagers.conf kommer
med mange eksempler på vindusbehandlere og de som er
installert vil vises i en nedtrekksliste til lxqt-config-session. For de
som ikke er inkludert i /usr/share/lxqt/windowmanagers.conf, kan du
bruke lxqt-config-sessions "søk"
knappen, for eksempel for Fluxbox-1.3.7, navigere gjennom
filsystemet til du kan velge fluxbox.
xdg-desktop-portal-lxqt er et bakstykke for xdg-desktop-portal, som bruker Qt biblioteket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/xdg-desktop-portal-lxqt/releases/download/1.0.2/xdg-desktop-portal-lxqt-1.0.2.tar.xz
Nedlasting MD5 sum: 005b8fe696067d1177222a8dfd1866c9
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 2.1 MB
Estimert byggetid: mindre enn 0.1 SBU
libfm-qt-2.0.2, kwindowsystem-6.5.0 for lxqt, og xdg-desktop-portal-1.18.2 (ved kjøretid)
Installer xdg-desktop-portal-lxqt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
obconf-qt pakken er et Qt basert konfigurasjonsverktøy for Openbox.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/obconf-qt/releases/download/0.16.4/obconf-qt-0.16.4.tar.xz
Nedlasting MD5 sum: e89509d190e34fef75875856edcb4855
Nedlastingsstørrelse: 116 KB
Estimert diskplass som kreves: 4.6 MB
Estimert byggetid: 0.2 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/obconf-qt-0.16.4-qt6-1.patch
hicolor-icon-theme-0.18, lxqt-build-tools-2.0.0, openbox-3.6.1, og Qt-6.7.2
Gjør først programmet kompatibelt med Qt-6.7.2.
patch -Np1 -i ../obconf-qt-0.16.4-qt6-1.patch
Installer obconf-qt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Vennligst følg disse instruksjonene før du starter LXQt for første gang.
openbox-3.6.1, eller en annen vindusbehandler, for eksempel Xfwm4-4.18.0, eller kwin fra Plasma-6.1.4. Merk at IceWM-3.6.0 er ikke egnet for LXQt.
breeze-icons-6.5.0 og desktop-file-utils-0.27
lightdm-1.32.0 eller en annen Skjermbehandler, f.eks. sddm-0.21.0, eller XScreenSaver-6.09
Du kan starte LXQt fra en TTY, ved hjelp av xinit-1.4.2, eller ved å bruke en grafisk skjermbehandler som f.eks lightdm-1.32.0.
For å starte LXQt ved hjelp av xinit-1.4.2, kjør følgende kommandoer:
cat > ~/.xinitrc << "EOF"
exec startlxqt
EOF
startx
X økten starter på den første ubrukte virtuelle terminalen, normalt vt1. Du kan bytte til en annen vtn ved å samtidig trykke på tastene Ctrl-Alt-Fn (n=2, 3, ...). For å bytte tilbake til X økten, vanligvis startet på vt1, bruk Ctrl-Alt-F1. Vt hvor kommandoen startx ble utført vil vise mange meldinger, inkludert X startmeldinger, applikasjoner startet automatisk med økten, og til slutt noen advarsler og feilmeldinger, men disse er skjult av det grafiske grensesnittet. Du foretrekker kanskje å omdirigere disse meldinger til en loggfil, som kan brukes til feilsøkingsformål. Dette kan gjøres fra X med:
startx &> ~/.x-session-errors
Når LXQt starter for første gang, vil den be deg om vindusbehandleren å bruke. For å starte anbefaler BLFS redaktørene å bruke openbox. På dette tidspunktet vil både bakgrunnen og panelet være svart. Høyreklikke på bakgrunnen vil du få opp en meny og velge "Desktop Preferences" lar deg endre bakgrunnsfargen eller angi et bakgrunnsbilde.
Panelet vil være nederst på skjermen. Høyreklikke på panelet vil få opp en meny som lar deg tilpasse panelet inkludert å legge til skjermelementer og angi bakgrunnsfargen. BLFS redaktører anbefaler å installere, som et minimum, Applikasjonsbehandling og Oppgavebehandling skjermelementene.
Etter at LXQt har startet for første gang, anbefaler BLFS redaktørene å gå gjennom innstillingene presentert i LXQt Konfigurasjonssenter, som finnes under LXQt innstillinger i Preferansemenyen til programstarter.
Brukerkonfigurasjonsfilene vil bli opprettet i mappen $HOME/.config/lxqt/. For å få skjermelementikoner til å vises riktig, filen lxqt.conf må kanskje redigeres manuelt for å inkludere linjen "icon_theme=oxygen".
Dette er en liten samling av valgfrie applikasjoner som legger til ekstra kapasiteter til LXQt skrivebordet.
lximage-qt pakken inneholder en lettvekts bildeviser og skjermbildeprogram.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lximage-qt/releases/download/2.0.1/lximage-qt-2.0.1.tar.xz
Nedlasting MD5 sum: 50e5c4167fb5b6cde427199f07f1a30b
Nedlastingsstørrelse: 832 KB
Estimert diskplass som kreves: 8.3 MB
Estimert byggetid: 0.3 SBU
Installer lximage-qt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har xdg-utils-1.2.1 installert, som
root bruker, kjør
xdg-icon-resource forceupdate
--theme hicolor.
lxqt-archiver pakken er en enkel og lettvekts skrivebordagnostisk Qt filarkiver.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-archiver/releases/download/1.0.0/lxqt-archiver-1.0.0.tar.xz
Nedlasting MD5 sum: 3145a209ebe5e9e97468a102e1b8396c
Nedlastingsstørrelse: 184 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.2 SBU
Installer lxqt-archiver ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
lxqt-notificationd pakken er LXQt varslingsnisse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-notificationd/releases/download/2.0.1/lxqt-notificationd-2.0.1.tar.xz
Nedlasting MD5 sum: 68c41fc8bf83d9620f42cb159261ecbc
Nedlastingsstørrelse: 64 KB
Estimert diskplass som kreves: 5.1 MB
Estimert byggetid: 0.2 SBU
Installer lxqt-notificationd ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
pavucontrol-qt er Qt porten til volumkontrollverktøyet pavucontrol, som brukes til å justere lydnivåer i Pulsaudio. Det er skrivebordsmiljøagnostisk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/pavucontrol-qt/releases/download/2.0.0/pavucontrol-qt-2.0.0.tar.xz
Nedlasting MD5 sum: d530390b798e299aa42e9b81cda033b7
Nedlastingsstørrelse: 112 KB
Estimert diskplass som kreves: 7.4 MB
Estimert byggetid: 0.2 SBU
liblxqt-2.0.0 og PulseAudio-17.0 (bygget med GLib-2.80.4 støtte)
Installer pavucontrol-qt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, some root bruker:
make install
qps pakken inneholder en Qt prosessbehandler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/qps/releases/download/2.9.0/qps-2.9.0.tar.xz
Nedlasting MD5 sum: 3f5465fa6ed6b02d75c8bf2553f54cc0
Nedlastingsstørrelse: 448 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.4 SBU
Installer qps ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har xdg-utils-1.2.1 installert, som
root bruker, kjør
xdg-icon-resource forceupdate
--theme hicolor.
Som navnet tilsier, qtermwidget pakke er et terminalskjermelement for Qt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/qtermwidget/releases/download/2.0.1/qtermwidget-2.0.1.tar.xz
Nedlasting MD5 sum: fe548f62dcc65064a84a54cbd133a0be
Nedlastingsstørrelse: 188 KB
Estimert diskplass som kreves: 6.7 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
Installer qtermwidget ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
qterminal pakken inneholder et Qt skjermelement basert terminalemulator for Qt med støtte for flere faner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/qterminal/releases/download/2.0.1/qterminal-2.0.1.tar.xz
Nedlasting MD5 sum: 56bf4e1dbd950c457c8b9af4a0644bb8
Nedlastingsstørrelse: 228 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4)
Installer qterminal ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
screengrab pakken er et kryssplattformverktøy for å lage skjermbilder raskt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/lxqt/screengrab/releases/download/2.8.0/screengrab-2.8.0.tar.xz
Nedlasting MD5 sum: bec5465f053bfb964c7a6e57e20e421f
Nedlastingsstørrelse: 340 KB
Estimert diskplass som kreves: 9.1 MB
Estimert byggetid: 0.2 SBU
Installer screengrab ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
.. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har xdg-utils-1.2.1 installert, som
root bruker, kjør
xdg-icon-resource forceupdate
--theme hicolor.
Dette kapittelet er en samling programmer som er nyttige for visning av eller redigere kontordokumenter. Noen spesialiserer seg på å gjøre én ting (som f.eks tekstbehandling eller manipulering av et regneark). LibreOffice er en pakke med programmer som kan manipulere mange forskjellige formater, inkludert powerpoint presentasjoner.
AbiWord er en tekstbehandler som er nyttig for å skrive rapporter, brev og andre formaterte dokumenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/abiword/abiword-3.0.5.tar.gz
Nedlasting MD5 sum: a8f218b711450e4ccae43a0522e0e806
Nedlastingsstørrelse: 11 MB
Estimert diskplass som kreves: 690 MB, med dokumenter (76 MB installert)
Estimert byggetid: 2.4 SBU (Bruker parallellisme=4, med dokumenter)
AbiWord Dokumenter: https://www.abisource.com/downloads/abiword/3.0.2/source/abiword-docs-3.0.2.tar.gz
AbiWord Dokumenter MD5 sum: c92c0e1e2081db20757231a53d80c338
AbiWord Dokumenter størrelse: 1.5 MB
Boost-1.86.0, cURL-8.9.1, FriBidi-1.0.15, GOffice-0.10.57, og wv-1.2.9
dbus-glib-0.112, evolution-data-server-3.52.4, GLib-2.80.4 (med GObject Introspection), libgcrypt-1.11.0, libical-3.0.18, libsoup-2.74.3, Redland-1.0.17, Valgrind-3.23.0. Aiksaurus, GtkMathView, libchamplain, libwmf, libwpd, libwpg, libwps, Link Grammar Parser, Loudmouth, OTS, Psiconv, og telepathy-glib
For å aktivere mange av de valgfrie avhengighetene, se gjennom informasjonen fra ./configure --help for nødvendige brytere du må gi til configure skriptet.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/abiword
Først må du fikse en byggefeil når du bruker libxml-2.12.x:
sed -e '/libxml/a #include <libxml/xmlmemory.h>' \
-i src/af/util/xp/ut_stringbuf.cpp
Installer AbiWord ved å kjøre følgende kommandoer:
sed -e "s/free_suggestions/free_string_list/" \
-e "s/_to_personal//" \
-e "s/in_session/added/" \
-i src/af/xap/xp/enchant_checker.cpp &&
./configure --prefix=/usr &&
make
Dette programmet kommer ikke med en funksjonell testpakke.
Nå, som root bruker:
make install
For å installere de lokale hjelpefilene, en grafisk økt anbefales.
Hvis du ønsker å installere de lokale hjelpefilene, må du først pakke dem ut og bygge dem:
Den nåværende versjonen av dokumentene utvides til abiword-docs-3.0.1 og ikke det forventede abiword-docs-3.0.2.
tar -xf ../abiword-docs-3.0.2.tar.gz && cd abiword-docs-3.0.1 && ./configure --prefix=/usr && make
og deretter, som root bruker:
make install
sed ...: Denne kommandoen korrigerer kilden for endringer i avhengigheten enchant-2.8.2.
--enable-plugins="collab openxml goffice
grammar": Bygg noen eller alle programtilleggene.
Openxml programtillegget aktiverer Abiword til å åpne noen .docx filer.
Grammar programtillegget krever Link Grammar
Parser
Velg riktig mal for ditt språk og lokalitet fra listen produsert av følgende kommando:
ls /usr/share/abiword-3.0/templates
Opprett mappen ~/.AbiSuite/templates kopier deretter
normal.awt du vil ha inn i
den:
install -v -m750 -d ~/.AbiSuite/templates &&
install -v -m640 /usr/share/abiword-3.0/templates/normal.awt-<lang> \
~/.AbiSuite/templates/normal.awt
Forandre <lang> i kommandoen
ovenfor til å passe til navnet på filen du ønsker.
Hvis du bruker flere språk, må du kanskje redigere malen til å bruke en font med større dekning (f.eks. en Dejavu fonts, fordi Abiword ikke bruker fontconfig og kan bare vise glyfer som er gitt i den valgte fonten.
Hvis du har desktop-file-utils-0.27 installert, bør du kjøre update-desktop-database kommandoen for å oppdatere mimeinfo hurtiglageret og la hjelpesystemet fungere.
Hvis du har xdg-utils-1.2.1 installert, bør du kjøre xdg-icon-resource forceupdate --theme hicolor kommando, for at det installerte ikonet skal vises i menyelementet.
Gnumeric pakken inneholder et regnearkprogram som er nyttig for matematisk analyse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnumeric/1.12/gnumeric-1.12.57.tar.xz
Nedlasting MD5 sum: 237ce4f6c43661892e802bf81dbff1b2
Nedlastingsstørrelse: 17 MB
Estimert diskplass som kreves: 244 MB (legg til 4 MB for tester)
Estimert byggetid: 0,8 SBU (legg til 1,7 SBU for tester; begge bruker parallellisme=4)
GOffice-0.10.57 og itstool-2.0.7
et ikontema som f.eks adwaita-icon-theme-46.2, oxygen-icons-6.0.0, eller gnome-icon-theme-3.12.0, et grafiske miljø, og Yelp-42.2 for den innebygde hjelpefunksjonen
DConf-0.40.0 (for å forhindre noen testfeil), GLib-2.80.4 (med GObject Introspection), PyGObject-3.48.2, Valgrind-3.23.0 (for noen tester), dblatex (for PDF dokumenter), libgda, Mono, pxlib, og Psiconv
Installer Gnumeric ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken må installeres før testpakken kjøres.
Nå, som root bruker:
make install
For å kjøre testene, utsted make check. Tester bør bli kjørt fra en aktiv X økt, og DConf-0.40.0 bør være installert for å forhindre noen feil. To tester er kjent for å mislykkes. Ytterligere feil kan oppstå hvis valgrind er installert.
--enable-pdfdocs: Bruk denne
bryteren hvis du har installert dblatex og ønsker å lage PDF
dokumenter.
|
er en symbolkobling til gnumeric-1.12.57 |
|
|
er GNOME sin regnearkapplikasjon |
|
|
er et kommandolinjeverktøy for å konvertere regnearkfiler mellom ulike regnearkfilformater |
|
|
er et kommandolinjeverktøy for å sammenligne to regneark |
|
|
er et kommandolinjeverktøy for å søke etter strenger i regneark |
|
|
er et kommandolinjeverktøy for å generere indeksdata for regnearkfiler |
|
|
inneholder gnumeric API funksjoner |
LibreOffice er en fullverdig kontorpakke. Den er stort sett kompatibel med Microsoft Office og nedstammer fra OpenOffice.org.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Kjernenedlasting: https://download.documentfoundation.org/libreoffice/src/24.8.0/libreoffice-24.8.0.3.tar.xz
Kjernenedlasting MD5 sum: 230fb890c1fc32b8e7186a96d4e9c12a
Kjerne Nedlastingsstørrelse: 267 MB
Estimert diskplass som kreves: 11 GB inkludert tilleggsfilene hvis de ble lastet ned under byggingen (775 MB installert). Å installere hele settet med språk krever mer enn 25 GB (rundt 3 GB installert)
Estimert byggetid: 32 SBU med parallellitet=8 (vil variere på grunn av nedlastingstid)
Rundt 80 små tarballer og zip filer vil bli lastet ned i løpet av bygget. Nedlastingstiden vil variere med den lokale internetthastigheten og serverbelastning. Nedlastingstiden er ca. 3 minutter på en fiberforbindelse, og sannsynligvis ikke mye mer enn 10 minutter på en ADSL tilkobling. Hvis du ikke har installert en eller flere av følgende avhengigheter, vil de også bli lastet ned under byggingen.
Ordbøker MD5 sum: aabc278e0393220c39cb72a98e56abec
Ordbøker størrelse: 56 MB
Hjelpefiler: https://download.documentfoundation.org/libreoffice/src/24.8.0/libreoffice-help-24.8.0.3.tar.xz
Hjelpefiler MD5 sum: f5b9ae5cc8572f01a6ae66704ce790bf
Hjelpefiler størrelse: 160 MB
Oversettelser: https://download.documentfoundation.org/libreoffice/src/24.8.0/libreoffice-translations-24.8.0.3.tar.xz
Oversettelser MD5 sum: d86da685bce6182f77fc4002ad8d9f8f
Oversettelser størrelse: 212 MB
Nødvendig oppdatering for å fikse byggingen med Boost-1.86.0: https://www.linuxfromscratch.org/patches/blfs/12.2/libreoffice-24.8.0.3-boost_fixes-1.patch
Archive-Zip-1.68, UnZip-6.0, Wget-1.24.5, Which-2.21, og Zip-3.0
En Internett-tilkobling er nødvendig for å bygge denne pakken.
De fleste av disse pakkene anbefales fordi hvis de ikke er installert, byggeprosessen vil kompilere og installere sin egen (ofte eldre) versjon, med bieffekten av å øke både bygget og installert diskplass sammen med økende byggetid.
apache-ant-1.10.14, Boost-1.86.0, CLucene-2.3.3.4, Cups-2.4.10, cURL-8.9.1, libepoxy-1.5.10, libjpeg-turbo-3.0.1, LLVM-18.1.7 (clang foretrekkes for gjengivelse med skia), GLM-1.0.1, GLU-9.0.3, GPGME-1.23.2, Graphite2-1.3.14, gst-plugins-base-1.24.7, GTK+-3.24.43, harfBuzz-9.0.0, ICU-75.1, libatomic_ops-7.8.2, Little CMS-2.16, librsvg-2.58.3, libtiff-4.6.0, libwebp-1.4.0, libxml2-2.13.3 og libxslt-1.1.42, lxml-5.3.0, Mesa-24.1.5, nss-3.103, OpenLDAP-2.6.8 (hvis du kobler til en LDAP server), Poppler-24.08.0 (for øyeblikket ødelagt), PostgreSQL-16.4, Redland-1.0.17, og unixODBC-2.3.12
Abseil-cpp-20240722.0, Avahi-0.8, BlueZ-5.77, DConf-0.40.0, desktop-file-utils-0.27, Doxygen-1.12.0 (ikke relevant ved bruk av --disable-odk), evolution-data-server-3.52.4, GDB-15.1, GnuTLS-3.8.7.1, KDE Frameworks-6.5.0, libpaper-2.2.5, MariaDB-10.11.8 eller MySQL, MIT Kerberos V5-1.21.3, NASM-2.16.03, Qt-6.7.2, SANE-1.2.1, Valgrind-3.23.0, VLC-3.0.21, Apache Commons Codec, Apache Commons HttpClient, Apache Commons Lang, Apache Commons Logging, BeanShell, box2d, CoinMP, Cppunit, Firebird, glyphy, Gnome VFS, hamcrest, Hunspell, Hyphen, iwyu, junit4, libabw, libcdr, libcmis, libebook, libepubgen, libetonyek, libexttextcat, libfreehand, liblangtag, libmspub, libmwaw, libnumbertext, libodfgen, libpagemaker, libqrcodegen, libqxp, librevenge (WordPerfect Document importer), libstaroffice, libvisio, libwpd, libwpg, libwps, libzmf, lp_solve, mdds, MyThes, odfvalidator, officeotron, OpenCOLLADA, Orcus, SystemTap, og VIGRA
Det er mange valgfrie avhengigheter som ikke er oppført her.
De kan bli funnet i download.lst filen i kildemappen.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/libreoffice
Først, fiks byggefeil introdusert av den nyeste Boost versjonen:
patch -Np1 -i ../libreoffice-24.8.0.3-boost_fixes-1.patch
Deretter, fiks en feil med kobling til zlib:
sed -i '/icuuc \\/a zlib\\' writerperfect/Library_wpftdraw.mk
Hvis du har lastet ned ordbøkene, hjelp og oversettelser tarballene, opprett symbolkoblinger til dem fra kildemappen slik at de ikke blir lastet ned igjen:
install -dm755 external/tarballs && ln -sv ../../../libreoffice-dictionaries-24.8.0.3.tar.xz external/tarballs/ && ln -sv ../../../libreoffice-help-24.8.0.3.tar.xz external/tarballs/ && ln -sv ../../../libreoffice-translations-24.8.0.3.tar.xz external/tarballs/
Instruksjonene i pakken pakker ut noen tarballer på et sted den ikke kan finne senere. Lag noen symbolkoblinger for å hjelpe byggesystemet:
ln -sv src/libreoffice-help-24.8.0.3/helpcontent2/ && ln -sv src/libreoffice-dictionaries-24.8.0.3/dictionaries/ && ln -sv src/libreoffice-translations-24.8.0.3/translations/
Under byggeprosessen vil noen pakker bli lastet ned (inkludert de som er oppført som anbefalte og valgfrie avhengigheter) hvis de ikke er til stede på systemet. På grunn av dette kan byggetiden variere fra publisert tid mer enn vanlig.
På grunn av den store størrelsen på pakken, kan det hende du
foretrekker å installere den i /opt, i stedet for /usr. Avhengig av ditt valg, erstatt
<PREFIX> med
/usr eller med /opt/libreoffice-24.8.0.3:
export LO_PREFIX=<PREFIX>
Lokalitetene "fr" og "en-GB", du finner nedenfor, er bare eksempler; du bør endre dem for å passe dine behov - det kan være lurt å lese "Parameterforklaringer", lenger nede, før du fortsetter.
Hvis du satte miljøvariabelen ACLOCAL til å støtte installasjon av Xorg i /opt, må du deaktivere den for denne pakken.
Hvis du bygger på en 32-bits maskin, CFLAGS er satt til -Os, som bryter bygget.
Forhindre dette ved å utstede:
case $(uname -m) in i?86) sed /-Os/d -i solenv/gbuild/platform/LINUX_INTEL_GCC.mk ;; esac
Forbered LibreOffice for kompilering ved å kjøre følgende kommandoer:
sed -e "/gzip -f/d" \
-e "s|.1.gz|.1|g" \
-i bin/distro-install-desktop-integration &&
sed -e "/distro-install-file-lists/d" -i Makefile.in &&
./autogen.sh --prefix=$LO_PREFIX \
--sysconfdir=/etc \
--with-vendor=BLFS \
--with-lang='fr en-GB' \
--with-help \
--with-myspell-dicts \
--without-junit \
--without-system-dicts \
--disable-dconf \
--disable-odk \
--disable-mariadb-sdbc \
--enable-release-build=yes \
--enable-python=system \
--with-jdk-home=/opt/jdk \
--with-system-boost \
--with-system-clucene \
--with-system-curl \
--with-system-epoxy \
--with-system-expat \
--with-system-glm \
--with-system-gpgmepp \
--with-system-graphite \
--with-system-harfbuzz \
--with-system-jpeg \
--with-system-lcms2 \
--with-system-libatomic_ops \
--with-system-libpng \
--with-system-libxml \
--with-system-nss \
--with-system-odbc \
--with-system-openldap \
--with-system-openssl \
--with-system-poppler \
--with-system-postgresql \
--with-system-redland \
--with-system-libtiff \
--with-system-libwebp \
--with-system-icu \
--with-system-zlib
Bygg pakken:
make build
Nå, som root bruker:
make distro-pack-install
Hvis installert i /opt/libreoffice-24.8.0.3 noen ekstra trinn
er nødvendige. Utfør følgende kommandoer som root bruker:
if [ "$LO_PREFIX" != "/usr" ]; then
# This symlink is necessary for the desktop menu entries
ln -svf $LO_PREFIX/lib/libreoffice/program/soffice /usr/bin/libreoffice &&
# Set up a generic location independent of version number
ln -sfv $LO_PREFIX /opt/libreoffice
# Icons
mkdir -vp /usr/share/pixmaps
for i in $LO_PREFIX/share/icons/hicolor/32x32/apps/*; do
ln -svf $i /usr/share/pixmaps
done &&
# Desktop menu entries
for i in $LO_PREFIX/lib/libreoffice/share/xdg/*; do
ln -svf $i /usr/share/applications/libreoffice-$(basename $i)
done &&
# Man pages
for i in $LO_PREFIX/share/man/man1/*; do
ln -svf $i /usr/share/man/man1/
done
unset i
fi
Hvis du har installert desktop-file-utils-0.27, og du
ønsker å oppdatere MIME databasen, kjør, som root bruker:
update-desktop-database
Pakken og hovedmodulene kan startes fra menyen. Fra en
terminal, kan pakken startes med libreoffice kommandoen og
modulene med libreoffice
--<module>
kommandoen, henholdsvis hvor <module> er en av base,
calc, draw, impress, math, web, eller writer. Moduler kan
ikke startes ved å bruke skall startskriptnavnene deres (se
"Installerte programmer" nedenfor), hvis LO_PREFIX er annet
enn /usr, med mindre
$LO_PREFIX/bin mappen er lagt
til i PATH.
sed -e ...: Den første sed forhindrer komprimering av manualsider og den andre forhindrer at installasjonen mislykkes.
--with-vendor=BLFS:
Denne bryteren setter BLFS som leverandøren som er nevnt når
du klikker "Om" fra Hjelpemenyen på verktøylinjen.
--with-lang='fr
en-GB': Denne bryteren setter hvilke språk som
skal støttes. For å liste opp flere språk, skill dem med et
mellomrom. For alle språk, bruk --with-lang=ALL. Merk at oversettelsesfilen
ikke er nødvendig og vil ikke bli lastet ned hvis du bare
bruker en-US som språk.
For en liste over tilgjengelige språk, se i solenv/inc/langlist.mk.
--with-help: Uten
denne bryteren, hjelpefilene blir ikke bygget.
--with-jdk-home=/opt/jdk: Denne
parameteren vil stilne en advarsel om at
konfigureringsskriptet forsøkte å finne JAVA_HOME automatisk
(selv om det sendes i miljøet). Utelat dette hvis du har
deaktiverte java.
--with-myspell-dicts:
Denne bryteren legger til myspell ordbøker til LibreOffice installasjon sett.
--with-system-boost:
Denne bryteren gjør det mulig å bruke systemets boost. Fra
tid til annen bryter nyere versjoner av boost byggingen av
libreoffice. I dette tilfellet er det mulig å bruke
medfølgende kopi av boost ved å fjerne dette flagget.
--disable-dconf:
Denne bryteren deaktiverer kompilering av LibreOffice med GNOME DConf støtte for
konfigurasjonssystem.
--without-junit:
Denne bryteren deaktiverer testene for den utdaterte HSQLDB
driveren som er skrevet i Java.
--without-system-dicts: Denne
bryteren deaktiverer bruk av ordbøker fra systembaner slik at
de som er installert av dette pakken brukes.
--disable-odk: Denne
bryteren deaktiverer installasjon av office utviklingssett.
Fjern hvis du ønsker å utvikle en LibreOffice basert applikasjon.
--disable-mariadb-sdbc: Denne
bryteren deaktiverer MariaDB SDBC forbinder for Libreoffice
Base. Å la det være aktivert resultater i en byggefeil på
grunn av et problem med å koble til MIT Kerberos
V5-1.21.3.
--enable-release-build=yes:
Denne bryteren aktiverer et Slipp Bygg. LibreOffice kan bygges som et Slipp Bygg
eller som en Utviklings Bygg, fordi deres
standardinstallasjon stier og brukerprofilstier er
forskjellige. Utviklings Bygg viser ord "Dev" og "Beta" på
flere steder (f.eks. meny og splash-skjerm).
--enable-python=system: Denne
bryteren forteller LibreOffice å bruke systeminstallerte
Python 3 i stedet for den
medfølgende.
--with-system-icu:
Denne bryteren forteller byggesystemet å bruke den
systeminstallerte versjonen av ICU.
--with-system-*:
Disse bryterne forhindrer LibreOffice fra å prøve å kompilere sine
egne versjoner av disse avhengighetene. Hvis du ikke har
installert noen av avhengighetene, fjern de tilsvarende
bryterne.
make distro-pack-install: Dette gjør en normal installasjon, men hvis du legger til en DESTDIR miljøvariabel vil den også installere mange (tekst) gid_Module_*-filer i DESTDIR, for å hjelpe distribusjoner som ønsker å dele opp pakken i deler.
--with-parallelism=<count>:
Denne bryteren forteller LibreOffice å bruke <count> CPU
kjerner som skal kompileres parallelt. (Ikke ta med
vinkelparenteser.) Standard er å bruke alle tilgjengelige
kjerner på systemet.
--disable-cups: Bruk denne
bryteren hvis du ikke trenger utskriftsstøtte.
--disable-dbus: Bruk denne
bryteren hvis du ikke har installert D-Bus-1.8.0 eller nyere.
Den deaktiverer også Bluetooth støtte og fontinstallasjon via
PackageKit.
--disable-firebird-sdbc: Som
standard er muligheten til å koble til en firebird database er aktivert. Legg til
denne bryteren hvis du ikke trenger den funksjonen.
--disable-gstreamer-1-0: Bruk
denne bryteren hvis du ikke har installert gst-plugins-base-1.24.7.
--disable-postgresql-sdbc: Denne
bryteren deaktiverer å kompilere LibreOffice med muligheten til å koble
til en PostgreSQL database.
Bruk den hvis du ikke har installert PostgreSQL og du vil ikke at
LibreOffice kompilerer den
medfølgende kopien.
--disable-skia: Bruk Cairo-1.18.0
for gjengivelse i stedet for skia.
--enable-lto: Denne bryteren vil
aktivere Link Time Optimalisering, noe som resulterer i litt
mindre biblioteker (ca. 40 MB). Dette sies å gjøre at
LibreOffice programmer
laster raskere (og kjører muligens raskere, f.eks. når du
regner om et regneark). På en 8-kjerners maskin med 16 GB
minne er forskjellen på kompileringstidene minimal, men 2 GB
ekstra ble brukt til arbeidsfiler. På maskiner med færre
prosessorer eller mangel på minne, kompileringen kan være mye
tregere.
--without-java: Denne bryteren
deaktiverer Java støtte i
LibreOffice. Java er
nødvendig for den utdaterte HSQLDB driveren, som tillater
lesing av databaser opprettet av andre programmer eller i
tidligere versjoner av libreoffice base. Det er også nødvendig for noen
valgfrie brukergrensesnittkomponenter.
--without-fonts: LibreOffice inkluderer en rekke
tredjeparts TrueType fonter. Hvis du allerede har installert
noen eller alle av de samme skriftene, kan det hende du
foretrekker å bruke systemversjoner.
--enable-evolution2: Aktiverer
støtte for Evolution adressebøker gjennom Evolution Data
Server. Merk at Evolution Data Serveren må være installert
for at denne funksjonen skal fungere.
--enable-qt6: Denne bryteren
aktiverer støtte for integrasjon med Qt6 og Qt6 temamotoren.
Hvis Qt-6.7.2 ikke er installert i /usr, include og bibliotekmapper må
spesifiseres i QT6INC og
QT6LIB miljøvariabler.
--enable-kf6: Bygger med
KDE/Plasma integrasjon. Hvis Qt-6.7.2 og/eller KDE
Frameworks-6.5.0 ikke er installert i /usr, include og bibliotekmapper må
spesifiseres i QT6INC,
QT6LIB, KF6INC, og KF6LIB,
hhv. Dette inkluderer en stil programtilleg og KIO
integrasjon.
--with-system-abseil: Denne
bryteren aktiverer bruk av systemversjonen av Abseil C++
bibliotekene i stedet for den medfølgende kopien. Legg til
denne bryteren hvis Abseil-cpp-20240722.0 er
installert og du ønsker å bruke den i stedet for den
medfølgende kopien.
|
er den viktigste libreofficepakken (symbolkobling til $LO_PREFIX/lib/libreoffice/program/soffice) |
|
|
er startskriptet for databasebehandlingsmodulen |
|
|
er startskriptet for regnearkmodulen |
|
|
er vektorgrafikkeditoren og diagramverktøymodulen startskript |
|
|
er (PowerPoint) presentasjonsredigerer og visningsmodul startskript |
|
|
er det matematiske formelredigeringsmodulen startskript |
|
|
er startskriptet for HTML redigeringsmodulen |
|
|
er tekstbehandlermodulens startskript |
|
|
er et verktøy for å administrere LibreOffice utvidelser fra kommandolinjen |
Dette kapittelet inneholder et fantastisk utvalg av nettlesere. Vi håper du kan finne en du liker å bruke eller gi dem en prøvekjøring.
Epiphany er en enkel, men kraftig GNOME nettleser rettet mot ikke-tekniske brukere. Prinsippene er enkelhet og overholdelse av standarder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/epiphany/46/epiphany-46.3.tar.xz
Nedlasting MD5 sum: 4ecc0fa4dc5dff48c22e1e71b684faaf
Nedlastingsstørrelse: 3.8 MB
Estimert diskplass som kreves: 47 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester; begge bruker parallellisme=4)
Gcr-4.3.0, gnome-desktop-44.1, ISO Codes-4.16.0, JSON-GLib-1.8.0, libadwaita-1.5.3, libportal-0.7.1, Nettle-3.10, og WebKitGTK-2.44.3 (bygget med GTK-4)
appstream-glib-0.8.3 og Granite
gnome-keyring-46.2 (for lagring av passord) og Seahorse-43.0 (for administrere lagrede passord)
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/epiphany
Installer Epiphany ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Nå, som root bruker:
ninja install
Hvis du installerte pakken på systemet ditt ved hjelp av en
“DESTDIR” metode, /usr/share/glib-2.0/schemas/gschemas.compiled
ble ikke oppdatert/opprettet. Opprett (eller oppdater)
filen ved å bruke følgende kommando som root bruker:
glib-compile-schemas /usr/share/glib-2.0/schemas
En test ville mislykkes hvis denne pakken ikke er installert, så det er bedre å kjøre testpakken etter installasjonen. For å teste resultatene, utsted ninja test. Testene må kjøres fra en grafisk økt.
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
Falkon er en KDE nettleser som bruker QtWebEngine gjengivelsesmotor. Det var tidligere kjent som QupZilla. Den har som mål å være en lett nettleser tilgjengelig gjennom alle større plattformer.
Selv om falkon er nå en del av KDE, det kan bli installert uten KDE (med tap av kwallet funksjonalitet).
Falkon er avhengig av QtWebEngine. Vennligst les advarselen på den siden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/24.08.0/src/falkon-24.08.0.tar.xz
Nedlasting MD5 sum: f48e602dfc36152df79287a4945618da
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 154 MB
Estimert byggetid: 1.5 SBU (Bruke parallellisme=4)
extra-cmake-modules-6.5.0, KDE Frameworks-6.5.0 (for karchive), og qtwebengine-6.7.2
Strengt tatt er det bare karchive og ki18n som kreves for å bygge falkon, men flere andre pakker i KDE Frameworks-6.5.0 kan brukes hvis de er tilstede. For å bygge kun karchive og ki18n, last ned disse pakkene fra mappen spesifisert i KDE Frameworks-6.5.0 og bruk byggeinstruksjonene på den side, endre $KF6_PREFIX til /usr.
gnome-keyring-46.2, PySide2, og Shiboken2
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/falkon
Installer falkon ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Tester bør kjøres etter installasjon.
Nå, som root bruker:
make install && ldconfig
For å teste resultatene, utsted: make test. Alle tester skal
bestå. Hvis noen mislykkes, vil de fullstendige resultatene
være tilgjengelige i Testing/Temporary/LastTest.log.
Når du oppgraderer denne pakken, er det mulig at innholdet
av applikasjonen vil forbli tom selv om alt annet ser ut
til å fungere skikkelig. Prøv i dette tilfellet å fjerne
~/.cache/falkon og starte
programmet på nytt.
Hvis du har installert Pyside2 vil du undersøke hellopython.py som er i
scripts/ mappen, og kanskje
kopiere det til hjemmemappen din.
Hvis du er på en ikke-x86_64 arkitektur og får problemer
med manglende tekst, kan det være lurt å eksportere
QTWEBENGINE_CHROMIUM_FLAGS="--no-sandbox"
før du kjører Falkon.
-D BUILD_TESTING=OFF: Dette vil
spare litt tid og plass ved å ikke bygge testprogrammene,
bruk denne hvis du ikke ønsker å kjøre testen.
Firefox er en frittstående nettleser basert på Mozilla kodebasen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.mozilla.org/pub/firefox/releases/128.1.0esr/source/firefox-128.1.0esr.source.tar.xz
Nedlasting MD5 sum: efbf349f0b7442fc6f2995bef4d32785
Nedlastingsstørrelse: 536 MB
Estimert diskplass som kreves: 6.7 GB (223 MB installert) uten tester
Estimert byggetid: 15 SBU bruker -j8, uten tester
Mappenavnet er firefox-128.1.0
Å pakke ut tarballen vil tilbakestille tillatelsene til
gjeldende mappe til 0755 hvis du har tillatelse til det.
Hvis du gjør dette i en mappe hvor den klebrige biten er
satt, slik som /tmp vil det
ende med feilmeldinger:
tar: .: Cannot utime: Operation not permitted
tar: .: Cannot change mode to rwxr-xr-t: Operation not permitted
tar: Exiting with failure status due to previous errors
Dette avsluttes med ikke-null status, men det betyr
IKKE at det er et
reelt problem. Ikke untar som root bruker i en mappe der
klebrig-biten er satt - det vil deaktivere den.
Som med andre store pakker som bruker C++ (eller rust), er SBU tiden for å bygge dette varierer mer enn du kanskje forventer. Byggetidene vil øke betydelig hvis maskinen din må bruke vekselminnet.
Selv om oppstrøms foretrekker å bruke PulseAudio, for øyeblikket Alsa kan fortsatt brukes. Begge kan trenge kjøretidskonfigurasjon for å få lyden til å fungere.
Cbindgen-0.27.0, GTK+-3.24.43, libnotify-0.8.3, LLVM-18.1.7 (med clang, brukes til bindgen selv om man bruker gcc), nodejs-20.16.0, PulseAudio-17.0 (eller alsa-lib-1.2.12 hvis du redigerer mozconfig; nå avviklet av mozilla), i begge tilfeller vennligst les Konfigurasjonsinformasjon, Python-3.12.5 (etter installasjonen av SQLite-3.46.1), startup-notification-0.12, og UnZip-6.0
ICU-75.1, libevent-2.1.12, libvpx-1.14.1, libwebp-1.4.0, NASM-2.16.03, og nss-3.103
Hvis du ikke installerer anbefalte avhengigheter, blir interne kopier av disse pakkene brukt. De kan ha blitt testet for å fungere, men de kan være utdatert eller inneholde sikkerhetshull.
cURL-8.9.1, Doxygen-1.12.0, FFmpeg-7.0.2 (kjøretid, for å spille mov, mp3 eller mp4 files), GeoClue-2.7.1 (kjøretid), liboauth-1.0.3, pciutils-3.13.0 (kjøretid), Valgrind-3.23.0, Wget-1.24.5, Wireless Tools-29, yasm-1.3.0, libproxy
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/firefox
Konfigurasjonen av Firefox
er oppnådd ved å lage en mozconfig fil som inneholder ønsket
konfigurasjonsalternativer. En standard mozconfig er opprettet nedenfor. For å se
hele listen over tilgjengelige konfigurasjonsalternativer (og
en forkortet beskrivelse av noen av dem), utsted ./mach configure -- --help |
less. Du kan også se gjennom hele filen og
fjerne kommentarer til andre ønskede alternativer. Opprett
filen ved å gi følgende kommando:
cat > mozconfig << "EOF"
# If you have a multicore machine, all cores will be used by default.
# If you have installed (or will install) wireless-tools, and you wish
# to use geolocation web services, comment out this line
ac_add_options --disable-necko-wifi
# Comment out the following line if you wish not to use Google's Location
# Service (GLS). Note that if Geoclue is installed and configured to use
# GLS (as the BLFS instruction does), Firefox can access GLS via Geoclue
# anyway. On the other hand if Geoclue is not installed (or not properly
# configured) and this line is commented out, the website requiring a
# location service will not function properly.
ac_add_options --with-google-location-service-api-keyfile=$PWD/google-key
# startup-notification is required since firefox-78
# Uncomment the following option if you have not installed PulseAudio and
# want to use alsa instead
#ac_add_options --enable-audio-backends=alsa
# Comment out following options if you have not installed
# recommended dependencies:
ac_add_options --with-system-icu
ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-webp
# The libdav1d library (av1 decoder) requires nasm. Uncomment this
# if nasm has not been installed. Do not uncomment this if you have
# ffmpeg installed.
#ac_add_options --disable-av1
# You cannot distribute the binary if you do this.
ac_add_options --enable-official-branding
# Stripping is now enabled by default.
# Uncomment these lines if you need to run a debugger:
#ac_add_options --disable-strip
#ac_add_options --disable-install-strip
# Disabling debug symbols makes the build much smaller and a little
# faster. Comment this if you need to run a debugger.
ac_add_options --disable-debug-symbols
# The BLFS editors recommend not changing anything below this line:
ac_add_options --prefix=/usr
ac_add_options --enable-application=browser
ac_add_options --disable-crashreporter
ac_add_options --disable-updater
# Enabling the tests will use a lot more space and significantly
# increase the build time, for no obvious benefit.
ac_add_options --disable-tests
# This enables SIMD optimization in the shipped encoding_rs crate.
ac_add_options --enable-rust-simd
ac_add_options --enable-system-ffi
ac_add_options --enable-system-pixman
ac_add_options --with-system-jpeg
ac_add_options --with-system-png
ac_add_options --with-system-zlib
# Sandboxing works well on x86_64 but might cause issues on other
# platforms, e.g. i686.
[ $(uname -m) != x86_64 ] && ac_add_options --disable-sandbox
# Using sandboxed wasm libraries has been moved to all builds instead
# of only mozilla automation builds. It requires extra llvm packages
# and was reported to seriously slow the build. Disable it.
ac_add_options --without-wasm-sandboxed-libraries
# The following option unsets Telemetry Reporting. With the Addons Fiasco,
# Mozilla was found to be collecting user's data, including saved passwords and
# web form data, without users consent. Mozilla was also found shipping updates
# to systems without the user's knowledge or permission.
# As a result of this, use the following command to permanently disable
# telemetry reporting in Firefox.
unset MOZ_TELEMETRY_REPORTING
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-build-dir
EOF
Tilpass to filer for kompatibilitet med cbindgen-0.27.0 eller nyere:
sed 's/input.try/&_parse/' \
-i servo/components/style_traits/values.rs &&
sed '0,/"Keyframe"/{//d}' -i servo/ports/geckolib/cbindgen.toml
Hvis du bygger med system ICU, tilpasser du linjeskiftkartleggingen for ICU 74 eller senere. Denne konstruksjonen legger til fem oppføringer til en c++ matrise.
for i in {43..47}; do
sed -i '/ZWJ/s/}/,CLASS_CHARACTER&/' intl/lwbrk/LineBreaker.cpp
done
Kompiler Firefox ved å kjøre følgende kommandoer:
Hvis geolokaliserings APIene er nødvendige:
Google API nøkler nedenfor er spesifikke for LFS. Hvis du bruker disse instruksjonene for en annen distro, eller hvis du har tenkt å distribuere binære kopier av programvaren ved å bruke disse instruksjonene, hent dine egne nøkler ved å følge instruksjonene på https://www.chromium.org/developers/how-tos/api-keys.
echo "AIzaSyDxKL42zsPjbke5O8_rPVpVrLrJ8aeE9rQ" > google-key
Hvis du kompilerer denne pakken i chroot, må du Først som
root bruker, sørge for at
/dev/shm er montert. Hvis du
ikke gjør dette, Python
konfigurasjonen vil mislykkes med en tilbakesporingsrapport
som viser til /usr/lib/pythonN.N/multiprocessing/synchronize.py.
Som root bruker, kjør:
mountpoint -q /dev/shm || mount -t tmpfs devshm /dev/shm
Påkall nå Python mach skript for å kompilere pakken.
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none &&
export MOZBUILD_STATE_PATH=${PWD}/mozbuild &&
./mach build
mozconfig ovenfor deaktiverer
testene fordi de bruker mye mer tid og diskplass uten noen
åpenbar fordel. Hvis du likevel har aktivert dem, kan du
kjøre testene ved å kjøre ./mach gtest. Dette vil
kreve en nettverkstilkobling, og å bli kjørt fra en Xorg økt
- det er en sprettopp-dialog når den ikke klarer å koble til
ALSA (det skaper ikke en mislykket test). En eller to tester
vil mislykkes. For å se detaljene om feilen(e) må du logge
utdataene fra den kommandoen slik at du kan se gjennom den.
Nå, som root bruker:
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none && ./mach install
Tøm miljøvariablene som ble angitt ovenfor:
unset MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE unset MOZBUILD_STATE_PATH
export
MOZBUILD_STATE_PATH=${PWD}/mozbuild: Bygget
forteller deg at den har til hensikt å opprette ~/.mozbuild, og tilby deg et alternativ å
trykke <ENTER> for å godta dette, eller Ctrl-C for å
avbryte og starte på nytt å bygge etter å ha spesifisert
mappen. I praksis kan det hende at meldingen ikke vises til
etter <ENTER> er presset, dvs. bygget stopper.
Den mappen brukes for en (sannsynligvis tilfeldig) telemetriidentifikator. Opprette denne mappen i byggemappen og slette den etter installasjonen hindrer den i brukes.
MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none: Bruk system python for å lage et virtuelt miljø for mach uten å laste ned noen python wheels og uten å bruke systemets python moduler. Dette forhindrer versjonsfeil mellom systemmoduler og medfølgende moduler.
./mach build --verbose: Bruk
dette alternativet hvis du trenger detaljer om hvilke filer
som kompileres, sammen med eventuelle C eller C++ flagg som
brukes. Men ikke legg til '--verbose' til
installeringskommandoen siden det ikke er akseptert der.
./mach build -jN: Byggingen skal
som standard bruke alle tilgjengelige CPU kjerner. Hvis bruk
av alle kjernene får bygget til å bruke vekselminne fordi du
har utilstrekkelig minne, kan det gå raskere å bruke færre
kjerner.
: BLFS pleide å foretrekke å bruke gcc
og g++ i stedet for oppstrøms standardinnstillinger for
clang programmer. Med
utgivelsen av gcc-12 bygget tar lengre tid med gcc og g++,
først og fremst fordi ekstra advarsler, og er større. Angi
disse miljøvariablene før du
kjører configure skriptet hvis du ønsker å
fortsette å bruke gcc, g++. Bygging med GCC på i?86 er for
øyeblikket ødelagt.
CC=gcc
CXX=g++
Hvis du bruker et skrivebordsmiljø som Gnome eller KDE kan det være lurt å opprette en
firefox.desktop fil sånn at
Firefox vises i panelets
menyer. Som root bruker:
mkdir -pv /usr/share/applications &&
mkdir -pv /usr/share/pixmaps &&
MIMETYPE="text/xml;text/mml;text/html;" &&
MIMETYPE+="application/xhtml+xml;application/vnd.mozilla.xul+xml;" &&
MIMETYPE+="x-scheme-handler/http;x-scheme-handler/https" &&
cat > /usr/share/applications/firefox.desktop << EOF &&
[Desktop Entry]
Encoding=UTF-8
Name=Firefox Web Browser
Comment=Browse the World Wide Web
GenericName=Web Browser
Exec=firefox %u
Terminal=false
Type=Application
Icon=firefox
Categories=GNOME;GTK;Network;WebBrowser;
MimeType=$MIMETYPE
StartupNotify=true
EOF
unset MIMETYPE &&
ln -sfv /usr/lib/firefox/browser/chrome/icons/default/default128.png \
/usr/share/pixmaps/firefox.png
Applikasjonsinnstillingene for firefox er tilgjengelige ved å skrive about:config i adressefeltet.
Av og til, å få fungerende lyd i firefox kan være et problem. Skjønt oppstrøms foretrekker pulsaudio, bruk av Alsa kan være lettere.
Hvis du har aktivert Alsa for lyd, kan det hende du trenger å endre en variabel for å få fungerende lyd. Hvis du kjører firefox fra en terminal og prøv å spille noe med lyd kan du støte på feilmeldinger som:
Sandbox: seccomp sandbox violation:
pid 3941, tid 4030, syscall 16, args 48 2147767296
139909894784796 0 0 0.
Det var på x86_64, på i686 er syscall nummeret 54. For å tillate denne syscall, i about:config forandre security.sandbox.content.syscall_whitelist til 16 (eller 54 hvis du bruker i686).
Hvis du bruker pulseaudio i et
skrivebordsmiljø, kan det allerede være startet av den DE.
Men hvis det ikke er det, skjønt firefox-57 klarte å starte
den, firefox-58 gjorde det ikke. Hvis du kjører
firefox fra
en terminal og dette problemet er tilstede, å prøve å
spille av lyd vil støte på feilmeldinger advarsel
Can't get cubeb context!
Løsningen for dette er å lukke firefox, starte pulsaudio
for å sjekke om det starter (hvis ikke, les informasjonen
om konfigurering i PulseAudio-17.0) og start
firefox på nytt for å sjekke at det fungerer. Hvis det nå
fungerer, legg til følgende i din ~/.xinitrc: pulseaudio --verbose
--log-target=journald& (dessverre, på
noen systemer fungerer ikke dette).
Det kan være lurt å bruke flere profiler i firefox. For å gjøre det, påkall firefox som firefox --ProfileManager. Du kan også sjekke hvilken profil som er i bruk fra about:profiles.
Selv om WebRender (bruker GPU for komposisjon) ikke brukes av standard, ser det nå ut til å fungere bra på støttet maskinvare (ATI, Nvidia og Intel GPUer med Mesa-18 eller nyere). For en forklaring, se hacks.mozilla.org. Den eneste ulempen ser ut til å være at på en maskin med begrenset RAM kan det hende det bruker mer RAM.
For å sjekke om WebRender brukes, se i about:support. I grafikk seksjonen, vil Compositing enten vise 'Basic' (dvs. ikke i bruk) eller 'WebRender'. For å aktivere det, gå til about:config og endre gfx.webrender.all til True. Du må starte firefox på nytt.
Det kan være nyttig å nevne prosessene fra firefox som kan dukke opp i top - så vel som firefox selv, kan det være flere Nettinnhold prosesser, og nå en RDD prosess (Remote Data Decoder) som vises når du spiller av nettvideoer kodet med av1 (libdav1d). Hvis WebRender har blitt aktivert, vil en GPU prosess også vises når firefox må oppdatere på nytt (f.eks. bla, åpne en ny fane eller spille av en video).
Seamonkey er en nettleserpakke, en etterkommer av Netscape. Den inkluderer nettleseren, composer, post og nyhetsklienter, og en IRC klient.
Det er den fellesskapsdrevne oppfølgingen av Mozilla Programpakke, opprettet etter at Mozilla bestemte seg for å fokusere på separate applikasjoner for surfing og e-post. De applikasjonene er Firefox-128.1.0 og Thunderbird-128.1.0esr.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.seamonkey-project.org/releases/2.53.18.2/source/seamonkey-2.53.18.2.source.tar.xz
Nedlasting MD5 sum: 266a86651348e21934707a7ccb3abef3
Nedlastingsstørrelse: 241 MB
Estimert diskplass som kreves: 3.0 GB (148 MB installert)
Estimert byggetid: 3.5 SBU (med parallellitet=8)
Anbefalt oppdatering (kreves for å bygge med system ICU-75 eller nyere): https://www.linuxfromscratch.org/patches/blfs/12.2/seamonkey-2.53.18.2-cxx17-1.patch
Tarballen seamonkey-2.53.18.2.source.tar.xz vil pakke ut i seamonkey-2.53.18.2 mappen.
Cbindgen-0.27.0, GTK+-3.24.43, nodejs-20.16.0, Python-3.11.1, UnZip-6.0, yasm-1.3.0, og Zip-3.0
ICU-75.1, libevent-2.1.12, libwebp-1.4.0, LLVM-18.1.7 (med clang), NASM-2.16.03, NSPR-4.35, nss-3.103, og PulseAudio-17.0
Hvis du ikke installerer anbefalte avhengigheter, vil interne kopier av disse pakkene bli brukt. De kan bli testet for å fungere, men de kan være utdatert eller inneholde sikkerhetshull.
alsa-lib-1.2.12, dbus-glib-0.112, startup-notification-0.12, Valgrind-3.23.0, Wget-1.24.5, Wireless Tools-29, Hunspell, Gconf, og Watchman
Konfigurasjonen av Seamonkey
er oppnådd ved å lage en mozconfig fil som inneholder de ønskede
konfigurasjonsalternativer. Standard mozconfig fil er opprettet nedenfor. For å
se hele listen over tilgjengelige konfigurasjonsalternativer
(og en forkortet beskrivelse av hver enkelt), kjør
./configure
--help. Det kan også være lurt å se gjennom
hele filen og fjern kommentarer til andre ønskede
alternativer. Lag filen ved å utsted følgende kommando:
cat > mozconfig << "EOF"
# If you have a multicore machine, all cores will be used
# If you have installed DBus-Glib comment out this line:
ac_add_options --disable-dbus
# If you have installed dbus-glib, and you have installed (or will install)
# wireless-tools, and you wish to use geolocation web services, comment out
# this line
ac_add_options --disable-necko-wifi
# Uncomment these lines if you have installed optional dependencies:
#ac_add_options --enable-system-hunspell
#ac_add_options --enable-startup-notification
# Uncomment the following option if you have not installed PulseAudio
#ac_add_options --disable-pulseaudio
# and uncomment this if you installed alsa-lib instead of PulseAudio
#ac_add_options --enable-alsa
# Comment out the following option if you have gconf installed
ac_add_options --disable-gconf
# Comment out following options if you have not installed
# recommended dependencies:
ac_add_options --with-system-icu
ac_add_options --with-system-libevent
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-webp
# Disabling debug symbols makes the build much smaller and a little
# faster. Comment this if you need to run a debugger.
ac_add_options --disable-debug-symbols
# The elf-hack is reported to cause failed installs (after successful builds)
# on some machines. It is supposed to improve startup time and it shrinks
# libxul.so by a few MB. With recent Binutils releases the linker already
# supports a much safer and generic way for this.
ac_add_options --disable-elf-hack
ac_add_options --enable-linker=bfd
export LDFLAGS="$LDFLAGS -Wl,-z,pack-relative-relocs"
# Seamonkey has some additional features that are not turned on by default,
# such as an IRC client, calendar, and DOM Inspector. The DOM Inspector
# aids with designing web pages. Comment these options if you do not
# desire these features.
ac_add_options --enable-calendar
ac_add_options --enable-dominspector
ac_add_options --enable-irc
# The BLFS editors recommend not changing anything below this line:
ac_add_options --prefix=/usr
ac_add_options --enable-application=comm/suite
ac_add_options --disable-crashreporter
ac_add_options --disable-updater
ac_add_options --disable-tests
# The SIMD code relies on the unmaintained packed_simd crate which
# fails to build with Rustc >= 1.78.0. We may re-enable it once
# Mozilla port the code to use std::simd and std::simd is stabilized.
ac_add_options --disable-rust-simd
ac_add_options --enable-strip
ac_add_options --enable-install-strip
# You cannot distribute the binary if you do this.
ac_add_options --enable-official-branding
# The option to use system cairo was removed in 2.53.9.
ac_add_options --enable-system-ffi
ac_add_options --enable-system-pixman
ac_add_options --with-system-bz2
ac_add_options --with-system-jpeg
ac_add_options --with-system-png
ac_add_options --with-system-zlib
export CC=clang CXX=clang++
EOF
Hvis du kompilerer denne pakken i chroot, må du Først som
root bruker, sørge for at
/dev/shm er montert. Hvis du
ikke gjør dette, Python
konfigurasjonen vil mislykkes med en tilbakesporingsrapport
som viser til /usr/lib/pythonN.N/multiprocessing/synchronize.py.
Som root bruker, kjør:
mountpoint -q /dev/shm || mount -t tmpfs devshm /dev/shm
Først, hvis du bygger med system ICU, tilpasser du linjeskiftkartleggingen for ICU-74 og senere, og bruk en oppdatering for å bygge denne pakken med C++17-standard fordi deklarasjoner til ICU-75 eller nyere krever noe C++17 funksjoner:
(for i in {43..47}; do
sed '/ZWJ/s/$/,CLASS_CHARACTER/' -i intl/lwbrk/LineBreaker.cpp || exit $?
done) &&
patch -Np1 -i ../seamonkey-2.53.18.2-cxx17-1.patch
Løs et problem med den medfølgende 'distro' pythonmodulen:
sed -e '1012 s/stderr=devnull/stderr=subprocess.DEVNULL/' \
-e '1013 s/OSError/(OSError, subprocess.CalledProcessError)/' \
-i third_party/python/distro/distro.py
Kompilere Seamonkey ved å kjøre følgende kommandoer:
export PATH_PY311=/opt/python3.11/bin:$PATH && PATH=$PATH_PY311 AUTOCONF=true ./mach build
Denne pakken kommer ikke med en testpakke.
Installer Seamonkey ved å
utstede følgende kommandoer som root bruker:
Hvis sudo
eller su er
påberopt for å åpne et skall som kjører som root bruker, forsikre deg om at
PATH_PY311 er korrekt sendt
ellers vil følgende kommando mislykkes. For sudo, bruk --preserve-env=PATH_PY311 alternativet. For
su,
ikke bruk
- eller --login alternativer.
PATH=$PATH_PY311 ./mach install && chown -R 0:0 /usr/lib/seamonkey && cp -v $(find -name seamonkey.1 | head -n1) /usr/share/man/man1
Til slutt, deaktiver PATH_PY311
variabelen:
unset $PATH_PY311
export CC=clang CXX=clang++: Med introduksjonen av gcc-12, mange flere advarsler genereres når du kompilerer mozilla applikasjoner og det resulterer i en mye langsommere og større konstruksjon. Dessuten, bygging med GCC på i?86 er for øyeblikket ødelagt. Selv om oppstrøms mozilla kode bruker som standard llvm med mindre overstyrt, konfigurerer den eldre koden inn i Seamonkey standard til gcc.
./mach build --verbose: Bruk
dette alternativet hvis du trenger detaljer om hvilke filer
som kompileres, sammen med eventuelle C eller C++ flagg
brukes. Men ikke legg til '--verbose' til
installeringskommandoen, det er ikke akseptert der.
./mach build -jN: Byggingen bør
som standard bruke alle tilgjengelige CPU kjerner. Hvis bruk
av alle kjernene får bygget til å bruke vekselminne fordi du
har utilstrekkelig minne, kan det gå raskere å bruke færre
kjerner.
For installering av diverse Seamonkey tillegg, se på Add-ons for Seamonkey.
Sammen med å bruke “Preferences” menyen for å konfigurere
Seamonkey sine alternativer
og preferanser som passer individuelle smaker, finere
kontroll av mange alternativer er kun tilgjengelig ved å
bruke et verktøy som ikke er tilgjengelig fra det generelle
menysystemet. For å få tilgang til dette verktøyet, må du
åpne et nettleservindu og skrive about:config i adressefeltet. Dette vil
vise en liste over konfigurasjonspreferanser og informasjon
relatert til hver enkelt. Du kan bruke “Search:” feltet
for skrive søkekriterier og begrense de oppførte elementene.
Endre en preferanse kan gjøres ved hjelp av to metoder. En,
hvis preferansen har en boolsk verdi (True/False),
dobbeltklikk ganske enkelt på preferansen for å bytte verdien
og to, for andre preferanser bare høyreklikk på ønsket linje,
velg “Modify” fra menyen og endre verdien.
Opprette nye preferanseelementer oppnås på samme måte,
bortsett fra velg “New” fra menyen og oppgi de ønskede
dataene i feltene når du blir bedt om det.
Hvis du bruker et skrivebordsmiljø som Gnome eller KDE ønsker du kanskje å lage en
seamonkey.desktop fil sånn at
Seamonkey vises i panelets
menyer. Hvis du ikke har aktivert Startup-Notification i din mozconfig
endre StartupNotify linjen til false. Som root bruker:
mkdir -pv /usr/share/{applications,pixmaps} &&
cat > /usr/share/applications/seamonkey.desktop << "EOF"
[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=Seamonkey
Comment=The Mozilla Suite
Icon=seamonkey
Exec=seamonkey
Categories=Network;GTK;Application;Email;Browser;WebBrowser;News;
StartupNotify=true
Terminal=false
EOF
ln -sfv /usr/lib/seamonkey/chrome/icons/default/default128.png \
/usr/share/pixmaps/seamonkey.png
/usr/lib/seamonkey
Disse programmene bruker X Vindussystemet og passer ikke lett inn i noen av de andre kapitlene.
Balsa pakken inneholder en GNOME-2 basert e-postklient.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://pawsa.fedorapeople.org/balsa/balsa-2.6.4.tar.xz
Nedlasting MD5 sum: bebd22cb6bac87ee05255c48ee1d28dd
Nedlastingsstørrelse: 3.5 MB
Estimert diskplass som kreves: 66 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/balsa-2.6.4-upstream_fixes-2.patch
Aspell-0.60.8.1, enchant-2.8.2, GMime-3.2.7, GPGME-1.23.2, GTK+-3.24.43, og libnotify-0.8.3
MTA (som gir en sendmail kommando)
Compface-1.5.2, Gcr-3.41.2, gtksourceview-3.24.11, libcanberra-0.30, libsecret-0.21.4, MIT Kerberos V5-1.21.3, OpenLDAP-2.6.8, Procmail-3.24, SQLite-3.46.1, WebKitGTK-2.44.3, html2text, osmo, rubrica, yelp-tools
Først, fiks byggeproblemer når du konfigurerer uten WebKitGTK, eller når det brukes WebKitGTK-2.38 eller nyere.
patch -Np1 -i ../balsa-2.6.4-upstream_fixes-2.patch
Installer Balsa ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var/lib \
--without-html-widget &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--without-html-widget: Dette
alternativet deaktiverer bygging av HTML gjengiveren. Hvis du
vil at HTML gjengiveren skal bygges, bekreft at du har
WebKitGTK-2.44.3 installert, og fjern
så dette alternativet.
--with-canberra: Aktiver
libcanberra støtte.
--with-compface: Aktiver compface
støtte.
--with-gcr: Bruk libgcr for TLS
støtte.
--with-gss: Aktiver GSSAPI
støtte.
--with-ldap: Bruk dette
alternativet for å aktivere LDAP adressebokstøtte hvis
OpenLDAP er installert.
--with-libsecret: Aktiver sterkt
passord støtte og støtte for gnome-keyring til å lagre
passord.
--with-sqlite: Bruk dette
alternativet for å aktivere SQLite adressebokstøtte hvis
SQLite er installert.
feh er en rask, lett bildeviser som bruker Imlib2. Den er kommandolinjedrevet og støtter flere bilder gjennom lysbildefremvisninger, miniatyrbilder-surfing eller flere vinduer og montasjer eller indeksutskrifter (ved å bruke TrueType fonter for å vise filinformasjon). Avanserte funksjoner inkluderer rask dynamisk zooming, progressiv lasting, lasting via HTTP (med reload-støtte for å se på webkameraer), rekursiv filåpning (lysbildefremvisning av et kataloghierarki), og musehjul/tastaturkontroll.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://feh.finalrewind.org/feh-3.10.3.tar.bz2
Nedlasting MD5 sum: 4f9e2c6ecc120852ba86dc41df366aba
Nedlastingsstørrelse: 2.0 MB
Estimert diskplass som kreves: 5.2 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
libpng-1.6.43 og imlib2-1.12.3 (bygget med giflib-5.2.2 støtte, for tester)
libjpeg-turbo-3.0.1 (for tapsfri bilderotasjon) og ImageMagick-7.1.1-36 (for å laste formater som ikke støttes)
Test-Command-0.11 (påkrevd) og mandoc-1.14.6 (valgfri)
Installer feh ved å kjøre følgende kommandoer:
sed -i "s:doc/feh:&-3.10.3:" config.mk && make PREFIX=/usr
For å teste resultatene, kjør: make test.
Nå, som root bruker:
make PREFIX=/usr install
sed -i "s:doc/feh:&-3.10.3:" config.mk: Denne sed fikser doc mappen til en versjonert, som brukt i BLFS.
curl=0: Bruk dette make flagget
hvis du ikke har cURL pakken installert.
exif=1: Dette make flagget
aktiverer innebygd Exif taggvisning støtte.
FontForge pakken inneholder en skisse fontredigerer som lar deg lage ditt eget postscript, truetype, opentype, cid-keyed, multi-master, cff, svg og bitmap fonter (bdf, FON, NFNT), eller rediger eksisterende.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/fontforge/fontforge/releases/download/20230101/fontforge-20230101.tar.xz
Nedlasting MD5 sum: 7043f25368ed25bcd75d168564919fb7
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 102 MB (legg til 52 MB for tester)
Estimert byggetid: 0.4 SBU (med parallellitet=4, legg til 0,1 SBU for tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/fontforge-20230101-security_fixes-1.patch
libspiro-20220722 og libxml2-2.13.3
giflib-5.2.2, git-2.46.0, libjpeg-turbo-3.0.1, libtiff-4.6.0, sphinx-8.0.2 (for å bygge html dokumentasjon), og WOFF2-1.0.2
Først, fiks to sikkerhetssårbarheter i Splinefont-funksjonaliteten:
patch -Np1 -i ../fontforge-20230101-security_fixes-1.patch
Deretter løser du et problem med gamle oversettelser som er eksponert av gettext-0.22:
sed -i.orig 's/\(%[^%[:space:]]*\)hs/\1s/g' \ fontforgeexe/searchview.c po/de.po po/ca.po \ po/hr.po po/it.po po/pl.po po/uk.po po/en_GB.po \ po/fr.po po/vi.po po/ko.po po/ja.po
Installer FontForge ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-W no-dev .. &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
Hvis du har installert sphinx-build, HTML
dokumentasjon ble bygget og montert i /usr/share/doc/fontforge. For å få tilgang
til den som en versjonert mappe, opprett en symbolkobling som
root bruker:
ln -sv fontforge /usr/share/doc/fontforge-20230101
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren brukes
til å opprette en optimalisert utgivelse uten
feilsøkingsinformasjon.
-W no-dev: Denne
bryteren brukes til å undertrykke advarsler beregnet på
pakkens utviklere.
-D ENABLE_X11=ON: bruk et X11
bakstykke i stedet for GDK3 (gtk+-3) for grunnleggende Xorg
grafikk.
FreeRDP pakken inneholder biblioteker og verktøy for å bruke Remote Desktop Protocol. Dette inkluderer verktøy for å kjøre en RDP server samt koble til en datamaskin ved hjelp av RDP. Dette brukes først og fremst for å koble til Microsoft Windows datamaskiner, men kan også brukes på Linux og macOS.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/freerdp/freerdp/archive/3.7.0/FreeRDP-3.7.0.tar.gz
Nedlasting MD5 sum: 4658086473bb78ab6b1d876efe454e12
Nedlastingsstørrelse: 9.8 MB
Estimert diskplass som kreves: 131 MB
Estimert byggetid: 0.6 SBU
FFmpeg-7.0.2, ICU-75.1, og Xorg Biblioteker
Cairo-1.18.0, docbook-xsl-nons-1.79.2, Fuse-3.16.2, JSON-C-0.17, MIT Kerberos V5-1.21.3, libusb-1.0.27, libxkbcommon-1.7.0, og Wayland-1.23.0
Cups-2.4.10, FAAC-1_30, fdk-aac-2.0.3, FreeRDP-3.7.0, FAAD2-2.11.1, LAME-3.100, Linux-PAM-1.6.1, PulseAudio-17.0, cJSON, GSM, ocl-icd, mbedTLS, openh264, pcsclite, SDL_ttf, soxr, og uriparser
Installer FreeRDP ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_SKIP_INSTALL_RPATH=ON \
-D CMAKE_BUILD_TYPE=Release \
-D WITH_CAIRO=ON \
-D WITH_CLIENT_SDL=OFF \
-D WITH_DSP_FFMPEG=ON \
-D WITH_FFMPEG=ON \
-D WITH_PCSC=OFF \
-D WITH_SERVER=ON \
-D WITH_SERVER_CHANNELS=ON \
-D DOCBOOKXSL_DIR=/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2 \
-W no-dev \
-G Ninja .. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
-D
CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør
at cmake
fjerner hardkodede biblioteksøkebaner (rpath) når du
installerer en binær kjørbar fil eller et delt bibliotek.
Denne pakken trenger ikke rpath når den først er installert i
standard plassering, og rpath kan noen ganger forårsake
uønskede effekter eller til og med sikkerhetsproblemer.
-D
DOCBOOKXSL_DIR=/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2:
Denne parameteren peker CMake til plasseringen av Docbook XSL
stilark, og er nødvendig fordi BLFS ikke bruker namespaced
versjoner av stilarkene. Dette er nødvendig for å lage
manualsider. Hvis du ikke ønsker manualsider, send -D
WITH_MANPAGES=OFF til CMake i stedet.
-D WITH_CAIRO=ON:
Denne parameteren bruker Cairo for å støtte høy DPI og
vindustørrelse.
-D
WITH_CLIENT_SDL=OFF: Denne parameteren
deaktiverer bruk av SDL for å tegne vinduet når du bruker
FreeRDP klienten. Dette er deaktivert fordi det avhenger av
SDL_ttf. Fjern
denne bryteren hvis du har SDL_ttf pakken installert.
-D WITH_FFMPEG=ON:
Denne parameteren aktiverer støtte for bruk av ffmpeg for
H.264 grafikkgjengivelsesmodus, som er nødvendig ved
tilkobling via RDP til Windows Server 2012 (eller Windows 8)
eller nyere verter.
-D
WITH_DSP_FFMPEG=ON: Denne parameteren aktiverer
støtte for bruk av ffmpeg for av lyd og mikrofon
omdirigering.
-D WITH_PCSC=OFF:
Denne parameteren deaktiverer støtte for SmartCards siden
BLFS ikke har den nødvendige avhengigheten for det.
-D WITH_SERVER=ON:
Denne parameteren gjør det mulig å bygge FreeRDP
serverkomponentene. Fjern denne parameteren hvis du ikke vil
bruke FreeRDP serveren.
-D
WITH_SERVER_CHANNELS=ON: Denne parameteren bygger
ekstra programtillegg for FreeRDP serveren.
-D WITH_LAME=ON: Bruk dette
alternativet hvis du ønsker å aktivere støtte for bruk av
LAME for å gi MP3 Audio Codec støtte.
-D WITH_FAAC=ON: Bruk dette
alternativet hvis du ønsker å aktivere støtte for bruk av
FAAC for å gi AAC Audio Codec støtte.
-D WITH_FAAD2=ON: Bruk dette
alternativet hvis du ønsker å aktivere støtte for bruk av
FAAD2 for å gi AAC Audio Codec støtte.
-D WITH_FDK_AAC=ON: Bruk dette
alternativet hvis du ønsker å aktiver støtte for bruk av
fdk-aac for å gi AAC Audio Codec støtte.
-D WITH_MBEDTLS=ON: Bruk dette
alternativet hvis du har den valgfrie avhengigheten mbedTLS installert
og ønsker å bruke det som et alternativ til OpenSSL for
kryptografistøtte.
-D WITH_OPENCL=ON: Bruk dette
alternativet hvis du har den valgfrie avhengigheten ocl-icd
installert og ønsker å bruke OpenCL støtte.
-D WITH_OPENH264=ON: Bruk dette
alternativet hvis du har den valgfrie avhengigheten openh264
installert og ønsker å bruke den for H.264 støtte i stedet
for ffmpeg.
-D WITH_GSM=ON: Bruk dette
alternativet hvis du har den valgfrie avhengigheten GSM installert
og ønsker å bruke GSM som en lydkodek.
-D WITH_SOXR=ON: Bruk dette
alternativet hvis du har den valgfrie avhengigheten soxr
installert og ønsker å bruke den i stedet for ffmpeg for
multimedia omdirigering.
|
konfigurerer FreeRDP til å bruke en proxy server |
|
|
grensesnitt med skyggefunksjonaliteten i FreeRDP |
|
|
er et verktøy for å dele en X-skjerm over RDP |
|
|
er et verktøy for å dele en X-skjerm over RDP |
|
|
oppretter en NTLM hash fra et brukernavn og passordpar |
|
|
oppretter X.509-sertifikater for bruk med FreeRDP |
|
|
er en RDP klient for Wayland |
|
|
er en RDP klient for for X11 |
|
|
inneholder funksjoner som gir RDP klient og server funksjonalitet |
Gimp pakken inneholder GNU Image Manipulation Program som er nyttig for fotoretusjering, bildekomposisjon og bildeforfatting.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/gimp/gimp3-20240711.tar.xz
Nedlasting MD5 sum: 17fcd0bfc8e66fc61d672b4409cb3e3a
Nedlastingsstørrelse: 26 MB
Estimert diskplass som kreves: 456 MB MB (162 MB installert)
Estimert byggetid: 1.2 SBU SBU (Bruker parallellisme=4)
Engelsk versjon av hjelpefilene er fullført, men store deler av teksten for mange andre språk er ennå ikke oversatt.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/gimp/gimp3-help-20240711.tar.xz
Nedlastingsstørrelse: 129 MB
Nedlasting MD5 sum: 162d57a67ff737ed221a8d7f274d119f
Estimert diskplass som kreves: Fra 351 MB (74 MB installert) for bare en til 1.5 GB for alle språk
Estimert byggetid: 0.4 SBU (bare en), 5.1 SBU for all språk; bruker parallellisme=4
appstream-glib-0.8.3, gegl-0.4.48, gexiv2-0.14.3, glib-networking-2.80.0, GTK+-3.24.43, harfBuzz-9.0.0, libmypaint-1.6.1, librsvg-2.58.3, libtiff-4.6.0, libxml2-2.13.3 (for å bygge de oversatte hjelpefilene), Little CMS-2.16, mypaint-brushes-1.3.1, og Poppler-24.08.0 (inkludert poppler-data)
Graphviz-12.1.0, ghostscript-10.03.1 (med libgs installert), Gvfs-1.54.2 og glib-networking-2.80.0 (både kjøretid, for å få tilgang til den elektroniske hjelpen, åpne bilder fra en HTTP eller HTTPS URL, dra og slipp bilder fra en ekstern applikasjon, etc.), ISO Codes-4.16.0, libgudev-238, PyGObject-3.48.2, og xdg-utils-1.2.1
AAlib-1.4rc5, alsa-lib-1.2.12, Gjs-1.80.2, libjxl-0.10.3, libmng-2.0.3, libunwind-1.6.2, libwebp-1.4.0, Lua-5.4.7, OpenJPEG-2.5.2, GTK-Doc-1.34.0, cfitsio, libbacktrace, libiff, libilbm, libheif med libde265 (begge trengtes for å lese macOS heic bilder), libwmf, OpenEXR, og qoi
dblatex (for PDF dokumenter), pngnq og pngcrush for å optimalisere png filene, men se merknaden om hjelpenedlastingen ovenfor
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/gimp
Installer Gimp ved å kjøre følgende kommandoer:
mkdir gimp-build && cd gimp-build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene (krever en X-Vindu terminal) utsted: ninja test.
Nå, som root bruker:
ninja install
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler inn i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme og
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha GTK+-3.24.43 installert
(for ikon hurtiglageret) og desktop-file-utils-0.27 (for
skrivebords hurtiglageret) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor && update-desktop-database -q
gimp-help tarballen inneholder
bilder og engelsk teksthjelp for hjelpefiler, sammen med
oversettelser. Hvis du ønsker å installere lokale kopier av
hjelpefilene for å lese offline, pakk ut gimp-help tarballen
og bytt til roten til den nye opprettet kildetre.
tar -xf ../../gimp3-help-20240711.tar.xz && cd gimp3-help-20240711 automake --add-missing ALL_LINGUAS="ca cs da de en en_GB es fa fr hr ko lt nl nn pt pt_BR ro sl sv uk zh_CN" \ ./configure --prefix=/usr
Fjern fra ALL_LINGUAS kodene for
alle språk som du ikke ønsker å installere. Alternativt kan
du fjerne linjen som begynner med ALL_LINGUAS, hvis du ønsker å bygge alle
språk.
Bygg nå hjelpefilene:
make
Utfør følgende kommandoer som root bruker for å installere
hjelpefilene:
make install && chown -R root:root /usr/share/gimp/3.0/help
ALL_LINGUAS="ca cs da de en en_GB es
fa...": som standard vil hjelpefilene gjengis på alle
tilgjengelige språk. Fjern kodene for alle språk du ikke
ønsker å bygge.
|
er Gnu Image Manipulation Program. Det fungerer med en rekke av bildeformater og gir et stort utvalg av verktøy |
|
|
er et konsollprogram som oppfører seg som om
Gimp ble startet
med |
|
|
er et verktøy som kan bygge programtilleggeller skript og installere dem hvis de er distribuert i én kildefil. gimptool-2.99 kan også brukes av programmer som trenger å vite hvilke biblioteker og inkluder-stier Gimp ble kompilert med |
|
|
gir C bindinger for Gimp sin Procedural Database (PDB), som tilbyr et grensesnitt til kjernefunksjoner og til funksjonalitet levert av programtillegg |
|
|
gir C funksjonene for grunnleggende Gimp funksjonalitet som å bestemme oppregningsdatatyper, gettext oversettelse, bestemme Gimp sin versjonsnummer og muligheter, håndtering av datafiler og tilgang til miljøet |
|
|
gir C funksjonene knyttet til RGB, HSV og CMYK farger samt konvertere farger mellom ulike fargemodeller og utføre adaptiv supersampling på et område |
|
|
inneholder C funksjoner for lesing og skriving av konfigurasjonsinformasjon |
|
|
inneholder C funksjoner som gir matematiske definisjoner og makroer, manipulere 3x3 transformasjonsmatriser, sette opp og manipulere vektorer og MD5 message-digest algoritmen |
|
|
gir C funksjonene som implementerer modullasting ved hjelp av GModule og støtter å holde en liste over GimpModules funnet i en gitt søkesti |
|
|
gir C funksjonene for håndtering av Gimp sin miniatyrbildeobjekter |
|
|
inneholder Gimp sin vanlig bruker grensesnittfunksjoner |
|
|
inneholder Gimp og GTK sin skjermelement oppretting og manipulasjonsfunksjoner |
Gparted er Gnome Partisjonsredigering, en Gtk 3 GUI for andre kommandolinje verktøy som kan opprette, omorganisere eller slette diskpartisjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/gparted/gparted-1.6.0.tar.gz
Nedlasting MD5 sum: b2006a0a3f35853e7d7dc34c87db11f2
Nedlastingsstørrelse: 5.2 MB
Estimert diskplass som kreves: 72 MB (legg til 70 MB for tester)
Estimert byggetid: 0.3 SBU (bruker parallellisme=4; legg til 0.3 SBU for tester)
btrfs-progs-6.10.1 (hvis du bruker et btrfs filsystem), exfatprogs, og udftools
Installer Gparted ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-doc \
--disable-static &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-doc: Denne
bryteren deaktiverer bygging av den valgfrie dokumentasjonen.
Fjern den hvis du har installert GNOME Doc Utils.
--enable-xhost-root: Denne
bryteren gir en midlertidig løsning for å la GParted kjøre
under Wayland ved å bruke xhost for å gi og tilbakekalle root
tilgang til X11 skjermen.
For å manipulere filsystemer har Gparted en kjøretidsavhengighet av forskjellige filsystemverktøy (du trenger bare å installere verktøyene for filsystemer du faktisk bruker): Hdparm-9.65 (nødvendig for valgfri visning av enhetsinformasjon om serienummer), btrfs-progs-6.10.1, dosfstools-4.2, e2fsprogs (installert som del av LFS), jfsutils-1.1.15, xfsprogs-6.9.0, mtools (nødvendig for å lese og skrive FAT16/32 volumetiketter og UUIDer), hfsutils, hfsprogs, nilfs-utils, Reiser4progs og reiserfsprogs.
Root privilegier kreves for å kjøre Gparted. Hvis du ønsker å kjøre applikasjonen fra menyen, flere applikasjoner og konfigurasjoner er nødvendig. Eksempler på applikasjoner som kan brukes: gksu, kdesudo, eller xdg-su. En annen enkel løsning er ssh-askpass-9.8p1.
Til valgfritt å bruke ssh-askpass-9.8p1 hvis den er
installert i systemet ditt, kjør følgende kommandoer som
root bruker:
cp -v /usr/share/applications/gparted.desktop /usr/share/applications/gparted.desktop.back && sed -i 's/Exec=/Exec=sudo -A /' /usr/share/applications/gparted.desktop
Nå, ved å klikke på menyelementet for Gparted, vises en dialogboks på skjermen, og ber om administratorpassordet.
Inkscape er en det du ser er det du får Skalerbar vektorgrafikkredigerer. Det er nyttig for å lage, se og endre SVG bilder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://inkscape.org/gallery/item/44615/inkscape-1.3.2.tar.xz
Nedlasting MD5 sum: 76ed1f4b13065e80de8b2d77b6427b83
Nedlastingsstørrelse: 43 MB
Estimert diskplass som kreves: 817 MB (189 MB installert)
Estimert byggetid: 4.6 SBU (med parallellisme=8)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/inkscape-1.3.2-upstream_fixes-2.patch
Tarballen inkscape-1.3.2.tar.xz vil pakke ut til
mappen inkscape-1.3.2_2023-11-25_091e20ef0f/.
Boost-1.86.0, double-conversion-3.3.0, GC-8.2.6, gsl-2.8, Gtkmm-3.24.9, libsoup-2.74.3, libxslt-1.1.42, Poppler-24.08.0, og popt-1.19
ImageMagick-7.1.1-36 (kjøretid), Little CMS-2.16, libcanberra-0.30 (for å eliminere programtilleggs advarsler), Potrace-1.16 (for bucket-fill verktøyet), også ulike Python moduler under kjøretid for kjerneutvidelsene: CacheControl-0.14.0, cssselect-1.2.0, lxml-5.3.0, NumPy-2.1.0, pySerial-3.5, og Scour-0.38.2
Aspell-0.60.8.1, dbus-1.14.10 (for å kjøre inkscape fra skript), Doxygen-1.12.0, gspell-1.12.2, GraphicsMagick, libcdr, libvisio, libwpg (eller libwpd)
Først fikser du Inkscape for å bygge med poppler-24.05.0:
patch -Np1 -i ../inkscape-1.3.2-upstream_fixes-2.patch
Deretter, fiks en byggefeil forårsaket av libxml2-2.12.0:
sed -i '/uri.h/a #include <libxml/xmlmemory.h>' src/object/uri.h
Installer Inkscape ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
.. &&
make
Denne pakken kan av og til mislykkes når den bygges med flere prosessorer. Se Using Multiple Processors for mer informasjon.
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
make install
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler inn i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme og
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha GTK+-3.24.43 installert
(for ikon hurtiglageret) og desktop-file-utils-0.27 (for
skrivebords hurtiglageret) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor && update-desktop-database -q
-D
CMAKE_BUILD_TYPE=Release: Denne bryteren er brukt
til å bygge utgivelsesbiblioteket uten noen feilsøkings
'assert' i koden.
-D WITH_DBUS=ON: bruk denne hvis
du ønsker å bruke inkscape i interaktive
skript som manipulerer bilder.
rxvt-unicode er en klone av terminalemulatoren rxvt, en X Vindussystem terminalemulator som inkluderer støtte for XFT og Unicode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Vær oppmerksom på at rxvt-unicode er berørt av et problem i perl hvor SIGFPE behandleren er satt til SIG_IGN (dvs. signalet ignoreres). Hvis du bygger et LFS system innenfra urxvt og kjører testpakkene, tester i bash og check hvor tester bruker dette signalet vil mislykkes.
Nedlasting (HTTP): http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-9.31.tar.bz2
Nedlasting MD5 sum: 3d0ec83705c9b9ff301a4b9965b3cd9f
Nedlastingsstørrelse: 860 KB
Estimert diskplass som kreves: 22 MB
Estimert byggetid: 0.2 SBU
libptytty-2.0 og et grafiske miljø
gdk-pixbuf-2.42.12 (for bakgrunnsbilder) og startup-notification-0.12
Installer rxvt-unicode ved å kjøre følgende kommandoer:
./configure --prefix=/usr --enable-everything && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-everything:
Legg til støtte for alle ikke-flervalgs alternativer.
Detaljer om de forskjellige alternativene kan bli funnet i
filen README.configure.
--disable-xft: Fjern støtte for
Xft fonter.
--disable-perl: Deaktiver den
innebygde Perl tolken.
--disable-afterimage: Fjern
støtte for libAfterImage.
rxvt-unicode
terminalemulatoren bruker ressursklassen URxvt og ressursnavnet urxvt. Du kan legge til X
ressursdefinisjoner til en bruker sin ~/.Xresources eller ~/.Xdefaults filer eller til systembrede
/etc/X11/app-defaults/URxvt
filen. Følgende eksempel vil laste inn matcher Perl utvidelse (forutsatt at
Perl støtte ikke ble
deaktivert), som aktiverer et venstreklikk for å åpne en
understreket URL i den angitte nettleseren, setter en
bakgrunns og forgrunns farge og laster inn en Xft font (som
root bruker):
cat >> /etc/X11/app-defaults/URxvt << "EOF"
! Use the specified colour as the windows background colour [default white]
URxvt*background: black
! Use the specified colour as the windows foreground colour [default black]
URxvt*foreground: yellow
! Select the fonts to be used. This is a comma separated list of font names
URxvt*font: xft:Monospace:pixelsize=18
! Comma-separated list(s) of perl extension scripts (default: "default")
URxvt*perl-ext: matcher
! Specifies the program to be started with a URL argument. Used by
URxvt*url-launcher: firefox
! When clicked with the mouse button specified in the "matcher.button" resource
! (default 2, or middle), the program specified in the "matcher.launcher"
! resource (default, the "url-launcher" resource, "sensible-browser") will be
! started with the matched text as first argument.
! Below, default modified to mouse left button.
URxvt*matcher.button: 1
EOF
For å se de definerte X ressursene, utsted:
xrdb -query
For å legge til endringene i den nye brukerkonfigurasjonsfilen, beholde tidligere X konfigurasjoner (selvfølgelig, med mindre du endrer noen på tidligere definert), utsted:
xrdb -merge ~/.Xresources
rxvt-unicode applikasjonen kan også kjøres i en nissemodus, som gjør det mulig å åpne flere terminalvinduer i samme prosess. urxvtc klienten kobles deretter til urxvtd nissen og ber om et nytt terminalvindu. Bruk dette alternativet med forsiktighet. Hvis nissen krasjer, blir alle de kjørende prosessene i terminalvinduene avsluttet.
Du kan starte urxvtd nissen i systemet
eller personlig starte opp X øktskript (f.eks.,
~/.xinitrc) ved å legge til
følgende linjer i nærheten av toppen av skriptet:
# Start the urxvtd daemon
urxvtd -q -f -o &
For mer informasjon, undersøk urxvt, urxvtd, urxvtc, og urxvtperl sine manualsider.
Hvis du bruker et skrivebordsmiljø, kan en menyoppføring
inkluderes, utsted, som root
bruker:
cat > /usr/share/applications/urxvt.desktop << "EOF" &&
[Desktop Entry]
Encoding=UTF-8
Name=Rxvt-Unicode Terminal
Comment=Use the command line
GenericName=Terminal
Exec=urxvt
Terminal=false
Type=Application
Icon=utilities-terminal
Categories=GTK;Utility;TerminalEmulator;
#StartupNotify=true
Keywords=console;command line;execute;
EOF
update-desktop-database -q
For det trenger du desktop-file-utils-0.27 og minst en av gnome-icon-theme-3.12.0, oxygen-icons-6.0.0 og lxde-icon-theme-0.5.1. Avkommenter linjen med “StartupNotify=true” hvis startup-notification-0.12 er installert.
/usr/lib/urxvt/perl
Thunderbird er en frittstående post-/nyhetsklient basert på Mozilla kodebase. Den bruker Gecko gjengivelsesmotor for å gjøre det mulig for den å vise og skrive HTML e-poster.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.mozilla.org/pub/thunderbird/releases/128.1.0esr/source/thunderbird-128.1.0esr.source.tar.xz
Nedlasting MD5 sum: 77dedc2267784055d1bdc27916660177
Nedlastingsstørrelse: 646 MB
Estimert diskplass som kreves: 7.8 GB (256 MB installert)
Estimert byggetid: 16 SBU (på en 8 kjernes maskin)
Cbindgen-0.27.0, GTK+-3.24.43, LLVM-18.1.7 inkludert clang, nodejs-20.16.0, PulseAudio-17.0 (eller alsa-lib-1.2.12 hvis du redigerer mozconfig; selv om det nå er avviklet av mozilla), Python-3.12.5 (gjenoppbygd med sqlite modulen), startup-notification-0.12, og UnZip-6.0
libevent-2.1.12, libvpx-1.14.1, libwebp-1.4.0, NASM-2.16.03, NSPR-4.35, og nss-3.103
Hvis du ikke installerer anbefalte avhengigheter, så vil interne kopier av disse pakkene bli brukt. De kan bli testet for å fungere, men de kan være utdaterte eller inneholde sikkerhetshull.
pciutils-3.13.0 (kjøretid), Wget-1.24.5, Wireless Tools-29, og watchman
Byggeprosessen for Thunderbird kan bruke 8 GB RAM ved kobling. Sørg for at du har tilstrekkelig vekselminne eller RAM før du fortsetter.
Konfigurasjonen av Thunderbird oppnås ved å lage en
mozconfig fil som inneholder de
ønskede konfigurasjonsalternativene. En standard mozconfig er opprettet nedenfor. For å se
hele listen av tilgjengelige konfigurasjonsalternativer (og
en kort beskrivelse av hver), kjør ./mach configure -- --help |
less. Opprett filen med følgende kommando:
cat > mozconfig << "EOF"
# If you have a multicore machine, all cores will be used.
# If you have installed wireless-tools comment out this line:
ac_add_options --disable-necko-wifi
# Uncomment the following option if you have not installed PulseAudio
#ac_add_options --enable-audio-backends=alsa
# Comment out following options if you have not installed
# recommended dependencies:
ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-webp
# The BLFS editors recommend not changing anything below this line:
ac_add_options --prefix=/usr
ac_add_options --enable-application=comm/mail
ac_add_options --disable-crashreporter
ac_add_options --disable-updater
ac_add_options --disable-debug
ac_add_options --disable-debug-symbols
ac_add_options --disable-tests
# This enables SIMD optimization in the shipped encoding_rs crate.
ac_add_options --enable-rust-simd
ac_add_options --enable-strip
ac_add_options --enable-install-strip
# You cannot distribute the binary if you do this.
ac_add_options --enable-official-branding
ac_add_options --enable-system-ffi
ac_add_options --enable-system-pixman
ac_add_options --with-system-jpeg
ac_add_options --with-system-png
ac_add_options --with-system-zlib
# Using sandboxed wasm libraries has been moved to all builds instead
# of only mozilla automation builds. It requires extra llvm packages
# and was reported to seriously slow the build. Disable it.
ac_add_options --without-wasm-sandboxed-libraries
EOF
Tilpass to filer for kompatibilitet med cbindgen-0.27.0 eller nyere:
sed 's/input.try/&_parse/' \
-i servo/components/style_traits/values.rs &&
sed '0,/"Keyframe"/{//d}' -i servo/ports/geckolib/cbindgen.toml
Påkall nå Python mach skriptet for å kompilere Thunderbird:
Hvis du kompilerer denne pakken i chroot, må du Først som
root bruker, sørge for at
/dev/shm er montert. Hvis du
ikke gjør dette, Python
konfigurasjonen vil mislykkes med en tilbakesporingsrapport
som viser til /usr/lib/pythonN.N/multiprocessing/synchronize.py.
Som root bruker, kjør:
mountpoint -q /dev/shm || mount -t tmpfs devshm /dev/shm
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none && export MOZBUILD_STATE_PATH=$(pwd)/mozbuild && ./mach build
Denne pakken kommer ikke med en testpakke.
Installer Thunderbird ved å
kjøre følgende kommandoer som root bruker:
MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none ./mach install
Tøm miljøvariablene som ble angitt ovenfor:
unset MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE && unset MOZBUILD_STATE_PATH
MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none: Bruk systemets python for å lage et virtuelt miljø for mach uten å laste ned noen python wheels og heller ikke bruke systemets python modulene. Dette forhindrer versjonsfeil mellom systemmoduler og medfølgende.
./mach build --verbose: Bruk
dette alternativet hvis du trenger detaljer om hvilke filer
som kompileres, sammen med eventuelle C eller C++ flagg som
brukes.
./mach build -jN: Byggingen skal
som standard bruke alle tilgjengelige CPU-kjerner. Hvis bruk
av alle kjernene får bygget til å bruke vekselminne fordi du
har utilstrekkelig minne, kan det gå raskere å bruke færre
kjerner.
: BLFS pleide å foretrekke å bruke gcc
og g++ i stedet for oppstrøms standardinnstillinger for
clang programmer. Med
utgivelsen av gcc-12 tar bygget lengre tid med gcc og g++,
først og fremst fordi ekstra advarsler, og er større. Angi
disse miljøvariablene før du
kjører configure skriptet hvis du ønsker å
fortsette å bruke gcc, g++. Bygging med GCC på i?86 er for
øyeblikket ødelagt.
CC=gcc
CXX=g++
Hvis Vindusbehandleren eller skrivebordsmiljøet ikke tillater å konfigurere en standard nettleser, kan du legge til en konfigurasjonsparameter til Thunderbird slik at en nettleser starter når du klikker på en Internett/intranett/lokal URL. Prosedyren for å sjekke eller endre noen av konfigurasjonsparametrene er ganske enkelt og instruksjonene her kan brukes til å vise eller endre noen av parameterne.
Først åpner du konfigurasjonsdialogen ved å åpne “Edit” nedtrekksmenyen. Velg “Settings” og bla nedover til bunnen av siden. Klikk deretter på “Config Editor” knappen. Klikk på “I accept the risk!” knappen. Dette vil vise en liste over konfigurasjonspreferansene og informasjon knyttet til hver enkelt. Du kan bruke “Filter:” bar for å angi søkekriterier og begrense de oppførte elementene. Endre en preferanse kan gjøres ved hjelp av to metoder. En, hvis preferansen har en boolsk verdi (True/False), dobbeltklikk ganske enkelt på preferansen for å veksle mellom verdien og to, for andre preferanser er det bare å høyreklikke på ønsket linje, velg “Modify” fra menyen og endre verdien. Oppretting av nye preferanseelementer utføres på samme måte måte, bortsett fra velg “New” fra menyen og gi ønskede data i feltene når du blir bedt om det.
Hvis du bruker et skrivebordsmiljø som f.eks GNOME eller KDE, en skrivebordsfil thunderbird.desktop kan opprettes for å
inkludere en “Thunderbird” inntreden i
menyen. Kjør følgende kommandoer som root bruker:
mkdir -pv /usr/share/{applications,pixmaps} &&
cat > /usr/share/applications/thunderbird.desktop << "EOF" &&
[Desktop Entry]
Name=Thunderbird Mail
Comment=Send and receive mail with Thunderbird
GenericName=Mail Client
Exec=thunderbird %u
Terminal=false
Type=Application
Icon=thunderbird
Categories=Network;Email;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;x-scheme-handler/mailto;
StartupNotify=true
EOF
ln -sfv /usr/lib/thunderbird/chrome/icons/default/default256.png \
/usr/share/pixmaps/thunderbird.png
Tigervnc er en avansert VNC (Virtual Network Computing) implementering. Den tillater opprettelse av en Xorg server som ikke knyttes til en fysisk konsoll og gir også en klient for visning av det eksterne grafiske skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/TigerVNC/tigervnc/archive/v1.14.0/tigervnc-1.14.0.tar.gz
Nedlasting MD5 sum: 402c2ec1f38bd0fb4ad7d93631dc1502
Nedlastingsstørrelse: 2.0 MB
Estimert diskplass som kreves: 101 MB
Estimert byggetid: 0.5 SBU (Bruke parallellisme=4)
Versjonen av Xorg kan til slutt bli noen få versjoner utdatert, men er nødvendig for de nødvendige tilpasningene for denne pakken.
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/tigervnc-1.14.0-configuration_fixes-1.patch
Valgfri fil for å starte serveren uten en skjermbehandler: https://anduin.linuxfromscratch.org/BLFS/tigervnc/Xsession
CMake-3.30.2, FLTK-1.3.9, GnuTLS-3.8.7.1, libgcrypt-1.11.0, libjpeg-turbo-3.0.1, Pixman-0.43.4, Systemd-256.4 (med Linux-PAM-1.6.1), Xorg Applikasjoner, xinit-1.4.2, og Xorg Legacy Fonts
Først må du justere konfigurasjonsfilene for å gjøre dem kompatibel med LFS systemer:
patch -Np1 -i ../tigervnc-1.14.0-configuration_fixes-1.patch
Installer tigervnc ved å kjøre følgende kommandoer:
# Put code in place
mkdir -p unix/xserver &&
tar -xf ../xorg-server-21.1.13.tar.xz \
--strip-components=1 \
-C unix/xserver &&
( cd unix/xserver &&
patch -Np1 -i ../xserver21.1.1.patch ) &&
# Build viewer
cmake -G "Unix Makefiles" \
-D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-W no-dev . &&
make &&
# Build server
pushd unix/xserver &&
autoreconf -fiv &&
CPPFLAGS="-I/usr/include/drm" \
./configure $XORG_CONFIG \
--disable-xwayland --disable-dri --disable-dmx \
--disable-xorg --disable-xnest --disable-xvfb \
--disable-xwin --disable-xephyr --disable-kdrive \
--disable-devel-docs --disable-config-hal --disable-config-udev \
--disable-unit-tests --disable-selective-werror \
--disable-static --enable-dri3 \
--without-dtrace --enable-dri2 --enable-glx \
--with-pic &&
make &&
popd
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
#Install viewer make install && mv /usr/share/doc/tigervnc /usr/share/doc/tigervnc-1.14.0 #Install server ( cd unix/xserver/hw/vnc && make install ) && [ -e /usr/bin/Xvnc ] || ln -svf $XORG_PREFIX/bin/Xvnc /usr/bin/Xvnc
tar -xf .. xorg-server...: Denne kommandoen pakker ut standard Xorg pakken inn i treet på et sted som trengs for modifikasjon.
--disable ...: De
fleste alternativene som vanligvis er nødvendig for standard
Xorg serveren er ikke nødvendig for Xvnc forekomsten som
bygges.
[ -e /usr/bin/Xvnc ] || ln ...
Xvnc: Hvis Xvnc serveren ikke er installert i
/usr/bin mappen, deretter
opprette en lenke slik at vncserver skriptet kan
finne den.
På systemd systemer er en annen metode for konfigurasjon tilgjengelig. Denne konfigurasjonen gir den ekstra fordelen ved å lage tigervnc systemd klar for VNC økter og tillater skrivebordsmiljøer som GNOME å autostarte tjenester når VNC økten er startet. Denne konfigurasjonen gir også den ekstra fordelen av å starte VNC økter ved systemoppstart. For å sette opp VNC serveren på denne måten, følg disse instruksjonene.
Installer først en rudimentær Xsession fil slik at VNC serveren kan initialisere X økter riktig:
install -vdm755 /etc/X11/tigervnc && install -v -m755 ../Xsession /etc/X11/tigervnc
Deretter setter du opp en brukertilordning i /etc/tigervnc/vncserver.users. Dette
forteller VNC Server hvilken økt som er tildelt til en
bruker.
echo ":1=$(whoami)" >> /etc/tigervnc/vncserver.users
Deretter setter du opp en konfigurasjonsfil for å fortelle vncserver hvilket skrivebordsmiljø skal bli brukt og hvilken skjermgeometri som skal brukes. Det er flere andre alternativer som kan defineres i denne filen, men de er utenfor omfanget av BLFS.
install -vdm 755 ~/.vnc &&
cat > ~/.vnc/config << EOF
# Begin ~/.vnc/config
# The session must match one listed in /usr/share/xsessions.
# Ensure that there are no spaces at the end of the lines.
session=lxqt
geometry=1024x768
# End ~/.vnc/config
EOF
For å starte VNC Server, kjør følgende kommando:
systemctl start vncserver@:1
For å starte VNC Server når systemet starter opp, kjør følgende kommando:
systemctl enable vncserver@:1
|
er en X VNC server (Virtual Network Computing). Den er basert på en standard X server, men den har en “virtuell” skjerm i stedet for en fysisk |
|
|
er et program for å konfigurere og kontrollere en VNC server |
|
|
lar deg angi passordet som brukes for å få tilgang til VNC skrivebord |
|
|
er et perl skript som brukes til å starte eller stoppe en VNC server |
|
|
er en klient som brukes til å koble til VNC skrivebord |
|
|
er et program for å lage en X visning på en fysisk terminal tilgjengelig via TigerVNC eller kompatible seere |
Transmission er en åpen kildekode BitTorrent klient på tvers av plattformer. Dette er nyttig for å laste ned store filer (som f.eks Linux ISO-er) og reduserer behovet for distributører å levere server båndbredde.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/transmission/transmission/releases/download/4.0.6/transmission-4.0.6.tar.xz
Nedlasting MD5 sum: 8132b9f012b8e6309911c80ee9fd00f7
Nedlastingsstørrelse: 11 MB
Estimert diskplass som kreves: 226 MB (med begge gui grensesnitt)
Estimert byggetid: 2.3 SBU (med begge gui grensesnitt; bruker parallellisme=4)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/transmission-4.0.6-build_fix-1.patch
libevent-2.1.12 og libpsl-0.21.5 (for å bruke systembiblioteker i stedet for medfølgende)
Gtkmm-4.14.0 eller Qt-6.7.2
nodejs-20.16.0 (for å bygge nettklienten, ikke nødvendig under kjøring), appindicator, dht, libb64, libdeflate, libnatpmp, libutp, og miniupnp
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/transmission
Først, fiks en byggefeil på grunn av feil utsagn i CMakeLists.txt:
patch -Np1 -i ../transmission-4.0.6-build_fix-1.patch
Installer Transmission ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_DOCDIR=/usr/share/doc/transmission-4.0.6 \
.. &&
make
Nå, som root bruker:
make install
Deretter oppretter du transmission.png fra SVG filen:
rsvg-convert \ /usr/share/icons/hicolor/scalable/apps/transmission.svg \ -o /usr/share/pixmaps/transmission.png
-D ENABLE_QT=OFF: Denne bryteren
deaktiverer bygging av Qt
grensesnittet. Standard er å bygge den hvis qt5-components-5.15.14 eller
Qt-6.7.2 er
installert.
-D ENABLE_GTK=OFF: Denne bryteren
deaktiverer bygging av GTK-4 grensesnittet. Standard er å
bygge den hvis Gtkmm-4.14.0 er installert.
-D ENABLE_WEB=OFF: Denne bryteren
deaktiverer bygging av nettklienten. Standard er å bygge den
hvis nodejs-20.16.0 er installert.
-D REBUILD_WEB=ON: Denne bryteren
tvinger ombygging av nettklienten. Dette alternativet trenger
nodejs-20.16.0 å være installert samt
en internettforbindelse. Standard er å ikke bygge opp
klienten på nytt.
|
er et kommandolinjeverktøy som brukes til å lage .torrent filer |
|
|
er en nissebasert overføringsøkt som kan kontrolleres via RPC kommandoer fra Transmission sitt nettgrensesnitt eller transmission-remote |
|
|
er et kommandolinjeverktøy for å endre .torrent filene sine kunngjørings URLer |
|
|
er en GTK+ bittorrent klient |
|
|
er en Qt basert bittorrent klient |
|
|
er et fjernkontrollverktøy for transmission-daemon og transmission |
|
|
er et kommandolinjeverktøy å vise bittorrent .torrent filene sine metadata |
XArchiver er en GTK+ arkivbehandler med støtte for tar, xz, bzip2, gzip, zip, 7z, rar, lzo og mange andre arkivformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
xarchiver er bare en kommandolinje eller grafikk grensesnitt til arkiveringsverktøy som f.eks tar og zip.
Nedlasting (HTTP): https://github.com/ib/xarchiver/archive/0.5.4.23/xarchiver-0.5.4.23.tar.gz
Nedlasting MD5 sum: bfdace2b113417e1bc77ef304280d103
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.1 SBU
cpio-2.15, LZO-2.10, p7zip-17.04, UnRar-7.0.9, UnZip-6.0, og Zip-3.0
Installer xarchiver ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--libexecdir=/usr/lib/xfce4 \
--docdir=/usr/share/doc/xarchiver-0.5.4.23 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler inn i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme og
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha GTK+-3.24.43 installert
(for ikon hurtiglageret) og desktop-file-utils-0.27 (for
skrivebords hurtiglageret) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor && update-desktop-database -q
--libexecdir=/usr/lib/xfce4:
Denne bryteren fikser plassering for thunar-archive-plugin,
så den vil fungere hvis thunar-4.18.11 er installert.
xdg-utils er et sett med kommandolinjeverktøy som hjelper applikasjoner med en rekke skrivebordsintegreringsoppgaver. Det kreves for å være i samsvar med Linux Standards Base (LSB).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/xdg/xdg-utils/-/archive/v1.2.1/xdg-utils-v1.2.1.tar.gz
Nedlasting MD5 sum: 4c72585a98ba8f775cb9e72b066cc0df
Nedlastingsstørrelse: 304 KB
Estimert diskplass som kreves: 3.3 MB (med tester)
Estimert byggetid: 2.5 SBU (med tester)
xmlto-0.0.29 med en av Lynx-2.9.2, Links-2.30, eller W3m
Kompiler xdg-utils med følgende kommandoer:
./configure --prefix=/usr && make
Testene for skriptene må gjøres fra en X Vindu basert økt.
Det er flere kjøretidskrav for å kjøre testene inkludert en
nettleser og en MTA. Å kjøre testene som root bruker anbefales ikke.
For å teste resultatene, kjør: make -k test.
Installer den nå som root
bruker:
make install
|
er et kommandolinjeverktøy for å (av)installere skrivebordsmenyelementer |
|
|
er et kommandolinjeverktøy for å (av)installere ikoner på skrivebordet |
|
|
er et kommandolinjeverktøy for å spørre etter informasjon om filtypehåndtering og legge til beskrivelser for nye filtyper |
|
|
er et kommandolinjeverktøy for å (av)installere ikonressurser |
|
|
åpner en fil eller URL i brukerens foretrukne program |
|
|
åpner brukerens foretrukne e-postskriver for å sende en e-post beskjed |
|
|
er et kommandolinjeverktøy for å kontrollere skjermspareren |
|
|
er et kommandolinjeverktøy for å administrere ulike innstillinger fra skrivebordsmiljøet |
XSkjermsparer pakken er en modulær skjermsparer og skjermlåser for X Vindussystemet. Den er svært tilpassbar og tillater bruk av ethvert program som kan tegne på rootvinduet som en visningsmodus. Meningen med XScreenSaver er å vise pene bilder på skjermen når den ikke er i bruk, i tråd med filosofien om at ubetjente skjermer alltid skal gjøre noe interessant, akkurat som de gjør i filmene. Men, XScreenSaver kan også brukes som skjermlåser, for å hindre andre fra å bruke terminalen din mens du er borte.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.jwz.org/xscreensaver/xscreensaver-6.09.tar.gz
Nedlasting MD5 sum: 1f0e2b1698bc2a6ecfe9b668e4b75c3d
Nedlastingsstørrelse: 21 MB
Estimert diskplass som kreves: 262 MB
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4)
GTK+-3.24.43 og Xorg Applikasjoner
GDM-46.2, FFmpeg-7.0.2, Linux-PAM-1.6.1, MIT Kerberos V5-1.21.3, og GLE
Installer XSkjermsparer ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--with-setuid-hacks: Denne
bryteren tillater noen demoer å bli installert med setuid
root som er nødvendig for å
pinge andre verter.
Hvis XSkjermsparer er bygget med Linux PAM støtte, må du opprette en PAM konfigurasjonsfil for å få den til å fungere riktig med BLFS.
Utfør følgende kommandoer som root bruker for å opprette
konfigurasjonfilen for Linux
PAM:
cat > /etc/pam.d/xscreensaver << "EOF"
# Begin /etc/pam.d/xscreensaver
auth include system-auth
account include system-account
# End /etc/pam.d/xscreensaver
EOF
Mange multimedieprogrammer krever biblioteker og/eller drivere for å fungere skikkelig. Pakkene i denne delen faller inn under denne kategorien. Vanligvis trenger du bare å installere disse hvis du installerer et program som har biblioteket oppført som enten et krav, eller som et alternativ for å gjøre det mulig å støtte visse funksjoner.
Linux kjernen gir nå ALSA støtte som standard. Imidlertid må applikasjoner ha grensesnitt til denne egenskapen. De følgende seks deler av boken omhandler de separate komponentene av ALSA: bibliotekene, programtilleggene, nytteprogammene, verktøyene, fastvaren.
ALSA Bibliotek pakken inneholder ALSA biblioteket som brukes av programmer (inkludert ALSA Verktøy) som krever tilgang til ALSA lyden sitt grensesnitt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.alsa-project.org/files/pub/lib/alsa-lib-1.2.12.tar.bz2
Nedlasting MD5 sum: 97bbf3cca911c1701fe9fe115c32b03d
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 46 MB (med tester og dokumenter)
Estimert byggetid: 0.2 SBU (med tester og dokumenter)
Hvis den anbefalte kjøretidsavhengigheten ikke er
installert, kan du trenge å kjøre et hvilket som helst
program som krever ALSA bibliotek som root bruker eller en bruker i
audio gruppen.
Aktiver om nødvendig følgende alternativer i kjerne konfigureringen og rekompilere kjernen:
Device Drivers ---> <*/M> Sound card support ---> [SOUND] # Select settings and drivers appropriate for your hardware # in the submenu: <*/M> Advanced Linux Sound Architecture ---> [SND]
I Device Drivers ⇒ Sound card support ⇒ Advanced Linux Sound Architecture delen av kjernekonfigurasjonen, velg innstillinger og drivere som passer for maskinvaren din. Hvis nødvendig, kompiler på nytt og installer den nye kjernen.
Installer ALSA Library ved å kjøre følgende kommandoer:
./configure && make
Hvis du har Doxygen installert og du ønsker å bygge bibliotekets API dokumentasjon, kjør følgende kommandoer fra toppnivåmappen i kildetreet:
make doc
For å teste resultatene, utsted: make check.
Nå, som root bruker,
installer pakken og anbefalte konfigurasjonsfiler:
make install && tar -C /usr/share/alsa --strip-components=1 -xf ../alsa-ucm-conf-1.2.12.tar.bz2
For å installere API dokumentasjonen, kjør følgende kommando
som root bruker:
install -v -d -m755 /usr/share/doc/alsa-lib-1.2.12/html/search &&
install -v -m644 doc/doxygen/html/*.* \
/usr/share/doc/alsa-lib-1.2.12/html &&
install -v -m644 doc/doxygen/html/search/* \
/usr/share/doc/alsa-lib-1.2.12/html/search
Standard alsa.conf er
tilstrekkelig for de fleste installasjoner. For ekstra
funksjonalitet og/eller avansert kontroll av din lydenhet,
må du kanskje opprette flere konfigurasjonsfiler. For
informasjon om tilgjengelige konfigurasjonsparametere,
besøk https://www.alsa-project.org/main/index.php/Asoundrc.
ALSA Plugins pakken inneholder programtillegg for ulike lydbiblioteker og lydservere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.alsa-project.org/files/pub/plugins/alsa-plugins-1.2.12.tar.bz2
Nedlasting MD5 sum: 71fce75baa38efab4e32e40db0a33716
Nedlastingsstørrelse: 400 KB
Estimert diskplass som kreves: 5.1 MB
Estimert byggetid: less than 0.1 SBU
FFmpeg-7.0.2, libsamplerate-0.2.2, PulseAudio-17.0, Speex-1.2.1, JACK, libavtp, og maemo
Installer ALSA Plugins ved å kjøre følgende kommandoer:
./configure --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
<module>.so moduler
inkludert conf_pulse, ctl_arcam_av, ctl_oss, ctl_pulse,
pcm_a52, pcm_jack, pcm_oss, pcm_pulse, pcm_speex,
pcm_upmix, pcm_usb_stream, pcm_vdownmix, rate_lavrate*,
rate_samplerate*, og rate_speexrate*
|
Tillater opprinnelige ALSA applikasjoner til å kjøre på OSS |
|
|
Tillater oppmiksing av lyd til 4 eller 6 kanaler |
|
|
Tillater nedmiksing av lyd fra 4-6 kanaler til 2 kanal stereo utgang |
|
|
Tillater opprinnelige ALSA applikasjoner til å virke med jackd |
|
|
Tillater opprinnelige ALSA applikasjoner å få tilgang til en PulseAudio lyd nisse |
|
|
Konverterer S16 lineært lydformat til A52 komprimert format og sender den til en SPDIF utgang |
|
|
Gir en ekstern rate omformer gjennom |
ALSA Verktøy pakken inneholder ulike verktøy som er nyttige for å kontrollere lydkort.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.alsa-project.org/files/pub/utils/alsa-utils-1.2.12.tar.bz2
Nedlasting MD5 sum: 80b71081f0bd2bb688e2f04311f142c5
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.3 SBU
docutils-0.21.2, fftw-3.3.10, libsamplerate-0.2.2, xmlto-0.0.29, og Dialog
Installer ALSA Verktøy ved å kjøre følgende kommandoer:
./configure --disable-alsaconf \
--disable-bat \
--disable-xmlto \
--with-curses=ncursesw &&
make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
--disable-alsaconf:
Denne bryteren deaktiverer bygging av alsaconf
konfigurasjonsverktøy som er inkompatibelt med Udev.
--disable-xmlto:
Utelat denne bryteren hvis du har installert xmlto-0.0.29 og ønsker
å gjenskape mansidene.
--disable-bat: Utelat
denne bryteren hvis du har installert fftw-3.3.10 og ønsker å
installer Basic Audio Tester (BAT).
--with-curses=ncursesw: Denne
bryteren tvinger bruk av ncurses-biblioteker med
wide-character.
Som root bruker, bruk
standardinnstillingen for lydkortet. Merk at denne
kommandoen kan returnere en utgangskode på 99 selv om
kortet er korrekt initialisert:
alsactl init
Merk at alle kanalene på lydkortet ditt er dempet som standard. Du kan bruke alsamixer programmet for å endre dette. Bruk speaker-test for å sjekke at dine innstillinger er brukt riktig. Du burde høre “rosa støy” på høyttalerne dine.
alsactl programmet kjøres
vanligvis fra en standard udev regel. Første gang det kjøres,
vil det klage på at det ikke er noen erklæringer i
/var/lib/alsa/asound.state.
Du kan forebygge dette ved å kjøre følgende kommando som
root bruker:
alsactl -L store
Voluminnstillingene skal gjenopprettes fra lagret tilstand av Udev når enheten oppdages (under oppstart eller når den blir koblet til USB enheter).
På systemer som har flere lydkort, må du kanskje justere
standard lydenhet slik at du kan få utdata fra høyttalerne.
For å angi standardenhet, sjekk først /proc/asound/cards filen for å finne ut
hvilket nummer du må stille inn. Når du kjenner til denne
informasjonen, angir du standardkortet med følgende
kommando som root bruker:
cat > /etc/asound.conf << "EOF"
# Begin /etc/asound.conf
defaults.pcm.card 1
defaults.ctl.card 1
# End /etc/asound.conf
EOF
|
er et verktøy for å koble til og fra to eksisterende porter i ALSA sequencer systemet |
|
|
brukes til å kontrollere avanserte innstillinger for ALSA lydkortdrivere. Bruk denne hvis alsamixer ikke kan bruke alle lydkortene dine sine egenskaper |
|
|
tillater opprettelse av en PCM loopback mellom en PCM opptaksenhet og en PCM avspillingsenhet |
|
|
er et Ncurses basert mikserprogram for bruk med ALSA lydkortdrivere |
|
|
er et verktøy som brukes til å kompilere topologikonfigurasjonsfiler til binære filer for kjernedrivere |
|
|
lar applikasjoner få tilgang til maskinvaren på en abstrakt måte |
|
|
brukes til å lese fra og skrive til ALSA RawMIDI porter |
|
|
tillater kommandolinjekontroll av mikserne for ALSA lydkortdrivere |
|
|
er en kommandolinje lydfilspiller for ALSA lydkortdrivere |
|
|
er et kommandolinjeverktøy som spiller det spesifiserte MIDI-fil(er) til en eller flere ALSA sequencer-porter |
|
|
er en kommandolinje lydfilopptaker for ALSA lydkortdrivere |
|
|
er et kommandolinjeverktøy som registrerer en standard MIDI-fil fra en eller flere ALSA sequencer porter |
|
|
er et kommandolinjeverktøy som skriver ut sequencer hendelsene det mottar som tekst |
|
|
er en ALSA sequencer klient som sender og mottar hendelsespakker over et nettverk |
|
|
er en kommandolinjeopptaker og spiller som brukes til å overføre lydrammer mellom lydenheter og filer |
|
|
er et lite verktøy for å sette eller dumpe IEC958 (eller såkalt “S/PDIF”) statusbiter for det angitte lydkortet via ALSA kontroll API |
|
|
er en kommandolinje høyttalertest tonegenerator for ALSA |
ALSA Verktøy pakken inneholder avanserte verktøy for enkelte lydkort.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.alsa-project.org/files/pub/tools/alsa-tools-1.2.11.tar.bz2
Nedlasting MD5 sum: bc5f5e5689f46a9d4a0b85dc6661732c
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 18 MB
Estimert byggetid: 0.3 SBU
GTK+-3.24.43 (for å bygge hdajackretask), FLTK-1.3.9 (for å bygge hdspconf og hdspmixer), og GTK+-2 (for å bygge echomixer, envy24control, og rmedigicontrol)
Når du installerer flere pakker i et skript, installasjonen må gjøres som root bruker. Det er tre generelle alternativer som kan brukes til å gjøre dette:
Kjør hele skriptet som root bruker (ikke anbefalt).
Bruk sudo kommandoen fra Sudo-1.9.15p5 pakken.
Bruk su -c "command arguments" (anførselstegn kreves) som vil be om root passordet for hver iterasjon av løkken.
En måte å håndtere denne situasjonen på er å lage en kort bash funksjon som automatisk velger riktig metode. Når kommandoen er satt i miljøet, trenger den ikke å bli satt på nytt.
as_root()
{
if [ $EUID = 0 ]; then $*
elif [ -x /usr/bin/sudo ]; then sudo $*
else su -c \\"$*\\"
fi
}
export -f as_root
Start først et underskall som avsluttes ved feil:
bash -e
Fjern nå noen verktøy som trenger Qt2 eller 3 eller GTK+-2 og også to unødvendige filer (for BLFS instruksjonene nedenfor):
rm -rf qlo10k1 echomixer envy24control rmedigicontrol Makefile gitcompile
ALSA Verktøy pakken er bare nødvendig av dem med avanserte krav til lydkortet deres. Verktøyene kan bygges alt sammen på en gang, men hvis bare et delsett er nødvendig, må du cd inn i mappen til hvert verktøy du ønsker å kompilere og kjøre kommandoene. Her presenterer vi instruksjoner for å bygge alle verktøyene.
Installer alle ALSA Verktøyene ved å kjøre følgende kommandoer:
for tool in *
do
case $tool in
seq )
tool_dir=seq/sbiload
;;
* )
tool_dir=$tool
;;
esac
pushd $tool_dir
./configure --prefix=/usr
make
as_root make install
as_root /sbin/ldconfig
popd
done
unset tool tool_dir
Til slutt går du ut av skallet som ble startet tidligere:
exit
|
er en assembler for emu10k1 DSP brikken som finnes i Creative SB Live, PCI 512 og emu APS lydkort. Det er brukt for å lage lydeffekter som flanger, refreng eller romklang |
|
|
er et SB16/AWE32 Creative Signal Processor (ASP/CSP) kontroll program |
|
|
er en GUI for å gjøre det enkelt å prøve kontaktene dine på nytt - for eksempel snu mikrofonen plugg inn i en ekstra hodetelefon, eller gjør dem begge line outs og koble dem til surround mottakeren |
|
|
er et lite program for å sende HD-lydkommandoer til gitte ALSA hwdep enheter på hd-audio grensesnittet |
|
|
er en GUI for å kontrollere Hammerfall HDSP Alsa innstillinger. Opptil fire hdsp kort støttes |
|
|
brukes til å laste fastvaren som kreves av Hammerfall HDSP lydkort |
|
|
er Linux ekvivalenten til Totalmix applikasjonen fra RME. Det er et verktøy for å kontrollere de avanserte rutefunksjonene til RME Hammerfall DSP lydkortserie |
|
|
lar deg kontrollere volumet til individuelle strømmer på lydkort som bruker maskinvaremiksing |
|
|
er verktøy som brukes til å initialisere Creative Sound Blaster Audigy serien kort |
|
|
er et verktøy som brukes til å initialisere Creative Sound Blaster Live kort |
|
|
er serveren til en EMU10K{1,2} oppdaterings laster for ALSA |
|
|
er klienten til en EMU10K{1,2} oppdaterings laster for ALSA |
|
|
laster inn konfigurasjonsdumper generert av lo10k1 og ld10k1 |
|
|
er et init skript for ld10k1 oppdaterings laster |
|
|
er et hjelpeprogram for å laste fastvarebinærfilene til Digigrams miXart-kortlyddrivere. snd-mixart-modulen krever dette programmet. Disse driverne fungerer ikke som de skal før de nødvendige fastvarefilene er lastet inn, dvs. ingen PCM eller mikser enheter vises |
|
|
er et hjelpeprogram for å laste fastvarebinærfilene inn på Digigrams pcxhr-kompatible brettlyddrivere. snd-pcxhr modulen krever dette programmet. Disse driverne fungerer ikke riktig til visse fastvarefiler er lastet inn, dvs. ingen PCM heller ingen mikserenheter vises |
|
|
er en OPL2/3 FM instrumentlaster for ALSA sekvenseren |
|
|
er et ALSA SoundScape kontrollverktøy |
|
|
er et Tascam US-428 kontrollprogram |
|
|
er et hjelpeprogram for å laste 2nd Phase fastvarebinærfilene på Tascam USX2Y USB lydkort. Det har vist seg å fungere så langt for US122, US224 og US428. snd-usb-usx2y modulen krever dette programmet |
|
|
er et hjelpeprogram for å laste fastvarebinærfilene til Digigrams VX-board lyddrivere. snd-vx222, snd-vxpocket og snd-vxp440-moduler krever dette programmet. Disse driverne fungerer ikke riktig til visse fastvarefiler er lastet inn, dvs. ingen PCM eller mikserenheter vises |
ALSA Firmware pakke inneholder fastvare for visse lydkort.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.alsa-project.org/files/pub/firmware/alsa-firmware-1.2.4.tar.bz2
Nedlasting MD5 sum: ee6c1d24a1a4ac1d86992b408ed710a2
Nedlastingsstørrelse: 4.9 MB
Estimert diskplass som kreves: 39 MB
Estimert byggetid: less than 0.1 SBU
AS31 (for å gjenoppbygge fastvaren fra kilden)
ALSA Firmware pakken trengs kun av de med avanserte krav til lydkortet deres. Se README for konfigureringsalternativer.
Installer ALSA Firmware ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
AudioFile pakken inneholder lydfilbiblioteker og to lydfilstøtteprogrammer nyttige for å støtte grunnleggende lydfilformater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/audiofile/0.3/audiofile-0.3.6.tar.xz
Nedlasting MD5 sum: 235dde14742317328f0109e9866a8008
Nedlastingsstørrelse: 520 KB
Estimert diskplass som kreves: 18 MB
Estimert byggetid: 0.6 SBU
Installer AudioFile ved å kjøre følgende kommandoer:
patch -Np1 -i ../audiofile-0.3.6-consolidated_patches-1.patch && autoreconf -fiv && ./configure --prefix=/usr --disable-static && make
Nå, som root bruker:
make install
For å teste resultatene, kjør: make check. Merk at testene vil mislykkes hvis --disable-static alternativet brukes og tester utføres før make install. Du har tre alternativer:
(a) konfigurer uten --disable-static, kjør testene, men ikke installer, og start deretter et nytt bygg ved bruk av --disable-static bare for å installere pakken.
(b) konfigurer med --disable-static, men bare kjør testene etter at pakken er installert.
(c) konfigurer med --disable-static, men bare kjør testene etter en DESTDIR installering.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
|
viser lydfilformat, lydkoding, samplingshastighet og varighet for lydformater som støttes av dette biblioteket |
|
|
konverterer lydfilformater der originalformatet og destinasjonsformatet støttes av dette biblioteket |
|
|
inneholder funksjoner som brukes av programmer for å støtte AIFF, AIFF-komprimert, Sun/NeXT, WAV og BIC lydformater |
FAAC er en koder for en taps lydkomprimeringsskjema spesifisert i MPEG-2 Part 7 og MPEG-4 Part 3 standarder og kjent som Advanced Audio Coding (AAC). Denne koderen er nyttig for å produsere filer som kan spilles av på iPod. Dessuten, iPod forstår ikke andre lydkomprimeringsskjemaer brukt i videofiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/knik0/faac/archive/1_30/faac-1_30.tar.gz
Nedlasting MD5 sum: 8d61e6d55088e599aa91532d5e6995b0
Nedlastingsstørrelse: 240 KB
Estimert diskplass som kreves: 4.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer FAAC ved å kjøre følgende kommandoer:
./bootstrap && ./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke. Imidlertid grunnleggende funksjonalitet kan testes ved å kode en eksempel WAV-fil (eksempelfilen er installert av alsa-utils-1.2.12 pakken:
./frontend/faac -o Front_Left.mp4 /usr/share/sounds/alsa/Front_Left.wav
Dekode deretter resultatet ved hjelp av faad programnet fra FAAD2-2.11.1 pakken og spill av den dekodede filen (krever aplay programmet fra alsa-utils-1.2.12 pakken:
faad Front_Left.mp4 aplay Front_Left.wav
aplay skal
identifisere filen som Signed 16
bit Little Endian, Rate 48000 Hz, Stereo, og du bør
høre ordene “front
left.”
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Kvaliteten til FAAC er ikke oppe på nivå med de beste AAC-koderne som er tilgjengelige for øyeblikket. Dessuten støtter det bare AAC og ikke High Efficiency AAC (også kjent som aacPlus), som gir bedre kvalitet ved lave bithastigheter ved hjelp av “spectral band replication” teknologi. Ett eksempel på et alternativt program for å produsere AAC og HE-AAC strømmer er:
3GPP Enhanced aacPlus general audio codec:
tilgjengelig i kildeformen, kan kode bare HE-AAC opptil
48 kbps ut av boksen, men den maksimale bithastigheten
kan endres ved å redigere tuning bordet i FloatFR_sbrenclib/src/sbr_main.c
filen.
Vær imidlertid oppmerksom på at iPoden kun støtter AAC profilen med lav kompleksitet, som er standard i FAAC, men er helt utilgjengelig i 3GPP koder.
FAAD2 er en dekoder for en taps lydkomprimeringsskjema spesifisert i MPEG-2 del 7 og MPEG-4 del 3 standarder og kjent som Advanced Audio Coding (AAC).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/knik0/faad2/archive/2.11.1/faad2-2.11.1.tar.gz
Nedlasting MD5 sum: f85b2514c4fb2f87d22a3bc879d83277
Nedlastingsstørrelse: 642 KB
Estimert diskplass som kreves: 9.0 MB
Estimert byggetid: 0.1 SBU
Eksempel AAC fil: https://www.nch.com.au/acm/sample.aac (7 KB)
Installer FAAD2 ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_SHARED_LIBS=ON \
.. &&
make
Denne pakken kommer ikke med en testpakke. Imidlertid grunnleggende funksjonalitet kan testes ved å dekode AAC eksempelfilen:
./faad -o sample.wav ../../sample.aac
Dette skal vise en opphavsrettsmelding og følgende informasjon om eksempelfilen:
sample.aac file info:
ADTS, 4.608 sec, 13 kbps, 16000 Hz
---------------------
| Config: 2 Ch |
---------------------
| Ch | Position |
---------------------
| 00 | Left front |
| 01 | Right front |
---------------------
Spill nå resultatet (krever aplay programmet fra alsa-utils-1.2.12 pakken):
aplay sample.wav
aplay skal
identifisere filen som Signed 16
bit Little Endian, Rate 16000 Hz, Stereo, og du bør
høre noen pianotoner.
Nå, som root bruker:
make install
fdk-aac pakken gir Fraunhofer FDK AAC biblioteket, som påstås å være en avansert lydkoding av høy kvalitet gjennomføring.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/opencore-amr/fdk-aac-2.0.3.tar.gz
Nedlasting MD5 sum: f43e593991caefdce509ad837d3301bd
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 39 MB
Estimert byggetid: 0.6 SBU (Bruke parallellisme=4)
Installer fdk-aac ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
FLAC er en lydkodek som ligner på MP3, men tapsfri, noe som betyr at lyden komprimeres uten å miste noe informasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/flac/flac-1.4.3.tar.xz
Nedlasting MD5 sum: 7cab20b46e0bc859234bf5ba7da81625
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 22 MB (ytterligere 163 MB for å kjøre testpakken)
Estimert byggetid: 0.2 SBU (ytterligere 0.6 SBU to for å kjøre testpakken)
libogg-1.3.5, DocBook-utils-0.6.14, Doxygen-1.12.0, og Valgrind-3.23.0
Installer FLAC ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-thorough-tests \
--docdir=/usr/share/doc/flac-1.4.3 &&
make
For å teste resultatene, kjør: make check. Merk at hvis du
har sendt --enable-exhaustive-tests og --enable-valgrind-testing parametere til
configure og
deretter kjøre testpakken, vil det ta veldig lang tid (opptil 300 SBUer)
og bruker ca. 375 MB av diskplassen.
Nå, som root bruker:
make install
--disable-thorough-tests: Denne
parameteren brukes slik at testpakken vil fullføres innen
rimelig tid. Fjern den hvis du ønsker mer omfattende tester.
Frei0r er en minimalistisk programtillegg API for videoeffekter. Merk at 0-en i navnet er en null, ikke en stor bokstav o.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.dyne.org/frei0r/releases/frei0r-plugins-1.8.0.tar.gz
Nedlasting MD5 sum: 45ffe53925ce0a90ce1d838c05e0a3c0
Nedlastingsstørrelse: 804 KB
Estimert diskplass som kreves: 40 MB
Estimert byggetid: 0.5 SBU
Installer Frei0r ved å kjøre følgende kommandoer:
mkdir -vp build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
-D WITHOUT_OPENCV=TRUE: Dette
alternativet instruerer make prosedyren å deaktivere bygging
av programtillegg avhengig av opencv.
-D WITHOUT_GAVL=TRUE: Dette
alternativet instruerer make prosedyren å deaktivere bygging
av programtillegg avhengig av gavl.
Gavl er forkortelse for Gmerlin Audio Video Library. Det er et bibliotek på lavt nivå som håndterer detaljene i lyd og videoformater som fargerom, samplerates, flerkanalskonfigurasjoner osv. Den gir standardiserte definisjoner for disse formatene også beholderstrukturer for å bære lydprøver eller videobilder inne i en applikasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/gmerlin/gavl-1.4.0.tar.gz
Nedlasting MD5 sum: 2752013a817fbc43ddf13552215ec2c0
Nedlastingsstørrelse: 4.4 MB
Estimert diskplass som kreves: 50 MB
Estimert byggetid: 0.8 SBU
Først, fiks et problem med gcc-14 og nyere:
sed -i "/stdio/a #include <string.h>" src/fill_test.c
Nå, installer Gavl ved å kjøre følgende kommandoer:
LIBS=-lm \
./configure --prefix=/usr \
--without-doxygen \
--with-cpuflags=none \
--docdir=/usr/share/doc/gavl-1.4.0 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
LIBS=-lm: Denne variabelen sikrer
at matematikkbiblioteket søkes ved lenking.
--without-doxygen:
Denne bryteren deaktiverer bruk av Doxygen. Utelat hvis
Doxygen er installert og du ønsker å bygge API
dokumentasjonen.
--with-cpuflags=none:
Denne bryteren løser et problem med å identifisere
egenskapene til systemarkitekturen.
gstreamer er et strømmemedierammeverk som gjør det mulig for applikasjoner å dele et felles sett med programtillegg for oppgaver som f.eks videokoding og -dekoding, lydkoding og -dekoding, lyd og video filtre, audiovisualisering, nettstrømming og alt annet som strømmer i sanntid eller på annen måte. Denne pakken gir kun basisk funksjonalitet og biblioteker. Du trenger i det minste gst-plugins-base-1.24.7 og en av God, Dårlig, Stygg eller Libav programtillegg.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.24.7.tar.xz
Nedlasting MD5 sum: 5abf79978005ae14a8bc7db1ac3ce4ba
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 56 MB (med tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; med tester)
GLib-2.80.4 (GObject Introspection påkrevd for GNOME)
GTK+-3.24.43 (for eksempler), gsl-2.8 (brukes av en test hvis installert), libunwind-1.6.2, Valgrind-3.23.0, bash-completion, hotdoc, og libdw
Installer gstreamer ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gst_debug=false &&
ninja
For å teste resultatene, kjør: ninja test.
Hvis du installerer på nytt gstreamer fra en tidligere versjon, er
det best hvis du fjerner den tidligere versjonen, inkludert
programtillegg, før du installerer den nye versjonen. Hvis
det er en blanding av versjoner som er installert, kan bruk
av prosesser henge eller ikke fungere ordentlig. Som
root bruker:
rm -rf /usr/bin/gst-* /usr/{lib,libexec}/gstreamer-1.0
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
|
er et verktøy som skriver ut informasjon om tilgjengelige gstreamer programtillegg, informasjon om et bestemt programtillegg, eller informasjon om et bestemt element |
|
|
er et verktøy som bygger og kjører grunnleggende gstreamer kanaler |
|
|
er et verktøy som brukes til å samle statistikk om gstreamer operasjoner |
|
|
kjører en testplan i TAP kompatibelt format mens den integreres med meson testselen |
|
|
bruker gstreamer system for å finne type å bestemme det relevante gstreamer programtillegg for å analysere eller dekode filer, og den tilsvarende MIME typen |
|
|
gir noen basisklasser som kan utvides med elementer og nytteklasser som er mest nyttige for programtilleggs utviklere |
|
|
gir funksjonalitet for å skrive enhetstester som bruker check rammeverket |
|
|
gir funksjonalitet for å animere elementegenskaper over tid |
|
|
gir nettverkselementer og objekter |
|
|
gir hele gstreamer kjerne tjenester, inkludert initialisering, programtilleggs administrasjon og typer, så vel som objekthierarkiet som definerer elementer og binære, sammen med noen mer spesialiserte elementer |
GStreamer Grunnleggende Programtillegg er en velstelt og velholdt samling av GStreamer programtillegg og elementer, som spenner over spekteret av mulige typer elementer man ønsker å skrive for GStreamer. Du trenger minst en av God, Dårlig, Stygg eller Libav programtillegg for at GStreamer applikasjoner skal fungere skikkelig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.24.7.tar.xz
Nedlasting MD5 sum: 8a7f8668418d0c8c917bb92218047f9f
Nedlastingsstørrelse: 2.3 MB
Estimert diskplass som kreves: 88 MB (med tester)
Estimert byggetid: 1.0 SBU (Bruker parallellisme=4; med tester)
alsa-lib-1.2.12, CDParanoia-III-10.2 (for å bygge CDDA programtillegg), GLib-2.80.4 (med GObject Introspection), ISO Codes-4.16.0, libgudev-238, libjpeg-turbo-3.0.1, libogg-1.3.5, libpng-1.6.43, libvorbis-1.3.7, Mesa-24.1.5, Pango-1.54.0, wayland-protocols-1.36, og Xorg Biblioteker
graphene-1.10.8, GTK+-3.24.43 (for eksempler), Opus-1.5.2, qt5-components-5.15.14 (for eksempler), SDL2-2.30.6, Valgrind-3.23.0, hotdoc, libtheora, libvisual, Orc, og Tremor
Hvis du trenger et programtillegg for en gitt avhengighet, den avhengigheten må installeres før denne pakken.
Installer GStreamer Base Plug-ins ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
--wrap-mode=nodownload &&
ninja
For å teste resultatene, kjør: ninja test. Testene krever
en X terminal som kjører, ellers vil alle GL testene
mislykkes. Fem tester kan gi tidsavbrudd på enkelte systemer
avhengig av grafikkmaskinvare og hastighet. En test,
elements_appsrc, er kjent for å
mislykkes på enkelte systemer.
Når du installerer, gjør byggeprosessen noen ekstra koblinger. Hvis du ikke har Xorg i /usr, må LIBRARY_PATH variabelen defineres for root brukeren. Hvis du bruker sudo for å anta root, bruk -E alternativet for å overføre dine nåværende miljøvariabler for installasjonsprosessen.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
--wrap-mode=nodownload: Denne
bryteren forhindrer meson fra å nedlaste
valgfrie avhengigheter som ikke er installert på systemet.
|
er et kommandolinjeverktøy som kan brukes til å teste GStreamer sin enhetsovervåkings funksjonalitet |
|
|
er et verktøy som kan brukes til å skrive ut grunnleggende metadata og strømme informasjon om en mediefil |
|
|
er et kommandolinjeverktøy som kan brukes til å teste basic avspilling ved hjelp av playbin elementet |
GStreamer Gode Programtillegg er et sett med programtillegg vurdert av GStreamer utviklere å ha god kvalitetskode, riktig funksjonalitet og den foretrukne lisensen (LGPL for programtilleggskoden, LGPL eller LGPL kompatibel for de støttende biblioteker). Et bredt utvalg av video- og lyddekodere, kodere og filtre er inkludert.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.24.7.tar.xz
Nedlasting MD5 sum: 48477b1fe91522b6a0b733c22a780d78
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 105 MB (med tester)
Estimert byggetid: 0.6 SBU (Bruker parallellisme=4; med tester)
Cairo-1.18.0, FLAC-1.4.3, gdk-pixbuf-2.42.12, LAME-3.100, libsoup-2.74.3, libsoup-3.4.4, libvpx-1.14.1, mpg123-1.32.7, NASM-2.16.03, og PulseAudio-17.0
AAlib-1.4rc5, GTK+-3.24.43 (for eksempler), libdv-1.0.0, qt5-components-5.15.14, Qt-6.7.2, Speex-1.2.1, taglib-2.0.1, Valgrind-3.23.0, v4l-utils-1.28.1, Wayland-1.23.0, alsa-oss, hotdoc, JACK, libcaca, libavc1394, libiec61883, libraw1394, libshout, Orc, TwoLame, og WavPack
Hvis du trenger et programtillegg for en gitt avhengighet, den avhengigheten må installeres før denne pakken.
Installer GStreamer Good Plug-ins ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release &&
ninja
For å teste resultatene, kjør: ninja test. En test,
elements_flvmux, er kjent for å
mislykkes på enkelte systemer.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
GStreamer Dårlige Programtillegg pakken inneholder et sett med programstilleggsmoduler som ikke er på nivå sammenlignet med resten. De kan være i nærheten av å være god kvalitet, men de mangler noe - som at det er en god kodegjennomgang, litt dokumentasjon, et sett med tester, en ekte live vedlikeholder, eller noen faktisk bred bruk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.24.7.tar.xz
Nedlasting MD5 sum: a0a2771d1ae1203004d58d80bc6fcd16
Nedlastingsstørrelse: 6.7 MB
Estimert diskplass som kreves: 171 MB (med tester)
Estimert byggetid: 0.7 SBU (Bruker parallellisme=4; med tester)
libdvdread-6.1.3, libdvdnav-6.1.1, libva-2.22.0, og SoundTouch-2.3.3
BlueZ-5.77, cURL-8.9.1, FAAC-1_30, FAAD2-2.11.1, fdk-aac-2.0.3, GTK+-3.24.43 (for eksempler), gst-plugins-good-1.24.7 (for en test), JSON-GLib-1.8.0, Little CMS-2.16, libaom-3.9.1, libass-0.17.3, libexif-0.6.24 (for en test), librsvg-2.58.3, libsoup-2.74.3 (for en test), libsndfile-1.2.2, libssh2-1.11.0, libusb-1.0.27, libwebp-1.4.0, libxkbcommon-1.7.0, neon-0.33.0, Nettle-3.10 eller libgcrypt-1.11.0 (for SSL støtte i hls programtillegget, hvis begge ikke er installert vil OpenSSL brukes i stedet), opencv-4.10.0 (med tilleggsmoduler), OpenJPEG-2.5.2, Opus-1.5.2, qrencode-4.1.1, SBC-2.0, sdl12-compat-1.2.68, Valgrind-3.23.0, både Vulkan-Loader-1.3.294 og glslc (for Vulkan programtillegg), Wayland-1.23.0 (GTK+-3.24.43 må bli kompilert med wayland støtte), x265-3.6, bs2b, Chromaprint, dssim, Flite, FluidSynth, Game Music Emu, GSM, hotdoc, LADSPA, ldacBT, libajantv2, libavtp, libdc1394-2, libdca, libde265, libkate, libmfx, libmms, libmodplug, libnice, libofa, libopenmpt, libopenni, libsrtp, lilv, LRDF, ltc-tools, microdns, MJPEG Tools, mplex2, musepack, onnxruntime, OpenAL, OpenEXR, OpenH264, Orc, rtmpdump, spandsp, Srt, svthevcenc, VO AAC, VO AMRWB, WildMidi, WPE-WebKit, WPEBackend-fdo, ZBAR, ZVBI, og zxing
Hvis du trenger et programtillegg for en gitt avhengighet, den avhengigheten må installeres før denne pakken.
Installer GStreamer Bad Plug-ins ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gpl=enabled &&
ninja
For å teste resultatene, kjør: ninja test. Flere tester trenger en terminalemulator i en grafisk sesjon. To tester, elements_vapostproc og elements_dash_mpd, er kjent for å mislykkes. Hvis gst-plugins-good-1.24.7 ikke er installert, to tester elements_rtpsrc og elements_rtpsink, vil mislykkes.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gpl=enabled: Uten
denne bryteren, programtillegg med avhengigheter av
(A)GPL-lisensierte biblioteker vil ikke bygges.
GStreamer Ugly Plug-ins er et sett med programtilleggs moduler vurdert av GStreamer utviklere til å ha god kvalitet og riktig funksjonalitet, men distribusjon av dem kan by på problemer. Lisensen på enten programtilleggs modulene eller de støttende bibliotekene er kanskje ikke hvordan GStreamer utviklere ønsker. Koden kan være allment kjent for å presentere patentproblemer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.24.7.tar.xz
Nedlasting MD5 sum: 880ffe8dfee6f1dce2127190dbc3841d
Nedlastingsstørrelse: 224 KB
Estimert diskplass som kreves: 8.4 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
liba52-0.8.0 (trengs for å spille DVDer), libdvdread-6.1.3, og x264-20240812
libmpeg2-0.5.1, libcdio-2.1.0 (for CD-ROM tilgang til stasjonen), Valgrind-3.23.0, hotdoc, libsidplay, og Orc
Hvis du trenger et programtillegg for en gitt avhengighet, den avhengigheten må installeres før denne pakken.
Installer GStreamer Stygge Programtillegg ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gpl=enabled &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D gpl=enabled: Uten
denne bryteren, programtillegg med avhengigheter av (A)GPL
lisensierte biblioteker bygges ikke.
GStreamer Libav pakken inneholder GStreamer programtillegg for Libav (en forgrening av FFmpeg).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.24.7.tar.xz
Nedlasting MD5 sum: be00cf9f9c8ca13791e6193f584213b6
Nedlastingsstørrelse: 208 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: mindre enn 0.1 SBU
FFmpeg-7.0.2 og gst-plugins-base-1.24.7
Installer GStreamer Libav ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
id3lib er et bibliotek for å lese, skrive og manipulere id3v1 og id3v2 multimediedatabeholdere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/id3lib/id3lib-3.8.3.tar.gz
Nedlasting MD5 sum: 19f27ddd2dda4b2d26a559a4f0f402a7
Nedlastingsstørrelse: 932 KB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.2 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/id3lib-3.8.3-consolidated_patches-1.patch
Installer id3lib ved å kjøre følgende kommandoer:
patch -Np1 -i ../id3lib-3.8.3-consolidated_patches-1.patch && libtoolize -fc && aclocal && autoconf && automake --add-missing --copy && ./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
make install &&
cp doc/man/* /usr/share/man/man1 &&
install -v -m755 -d /usr/share/doc/id3lib-3.8.3 &&
install -v -m644 doc/*.{gif,jpg,png,ico,css,txt,php,html} \
/usr/share/doc/id3lib-3.8.3
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
intel-media pakken gir en VA API driver for Intel GPUer som er utstyrt med Broadwell CPUer og høyere. Dette inkluderer støtte for en rekke kodeker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/intel/media-driver/archive/intel-media-24.2.5.tar.gz
Nedlasting MD5 sum: c602d9a3ebebb2ad8a5239dc5951c65b
Nedlastingsstørrelse: 25 MB
Estimert diskplass som kreves: 2.1 GB (360 MB installert med en enkelt GPU modell)
Estimert byggetid: 3.8 SBU (med parallellisme=4 og en enkelt GPU modell)
Tarballen intel-media-24.2.5.tar.gz vil pakke ut
til mappen media-driver-intel-media-24.2.5.
CMake-3.30.2, Intel-gmmlib-22.4.1, libva-2.22.0, og Xorg build environment
Aktiver følgende alternativer i kjernekonfigurasjonen. Om nødvendig kompiler kjernen på nytt:
Device Drivers ---> Graphics support ---> <*/M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> ... [DRM] <*/M> Intel 8xx/9xx/G3x/G4x/HD Graphics [DRM_I915]
Denne pakken tar lang tid å bygge fordi den kompilerer kode spesifikk for hver enkelt generasjon av Intel GPUer og for en rekke mediekodeker.
Hvis du kjenner modellen til din Intel GPU, kan du sende
-D{GEN{8,9,11,12},MTL,ARL}=OFF
alternativet til cmake kommandoen, men
utelat alternativet for din GPU. Merk at “GEN” nummeret
her er generasjonen for GPU, ikke CPU. For eksempel med en
Intel Core i7-1065G7 CPU som leverer en 11. generasjons
Intel GPU, -D{GEN{8,9,12},MTL,ARL}=OFF alternativet
kan brukes så koden som er spesifikk for de andre
generasjonene av Intel GPUer ikke vil bygges.
For å finne modellen til Intel GPU, installer pciutils-3.13.0 og kjør lspci -nn | grep -Ei
'VGA|DISPLAY' først. Den vil gi ut litt
informasjon om GPUen. Hvis utdataen inneholder Meteor Lake, GPU modellen er MTL. Ellers, følg https://dgpu-docs.intel.com/devices/hardware-table.html
for å finne oppføringen for din GPU og modellen til GPUen,
som skal være i “Architecture” kolonnen. Xe og Xe-HPG
arkitekturer dekkes av GEN12
modellen.
Installer intel-media ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$XORG_PREFIX \
-D INSTALL_DRIVER_SYSCONF=OFF \
-D BUILD_TYPE=Release \
-G Ninja \
-W no-dev .. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
intel-vaapi-driver pakken inneholder en VA API driver for Intel GPUer som leveres med Haswell CPUer og tidligere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/intel/intel-vaapi-driver/releases/download/2.4.1/intel-vaapi-driver-2.4.1.tar.bz2
Nedlasting MD5 sum: 073fce0f409559109ad2dd0a6531055d
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 97 MB
Estimert byggetid: 0.3 SBU
Aktiver følgende alternativer i kjernekonfigurasjonen. Om nødvendig kompiler kjernen på nytt:
Device Drivers ---> Graphics support ---> <*/M> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> ... [DRM] <*/M> Intel 8xx/9xx/G3x/G4x/HD Graphics [DRM_I915]
Installer driveren ved å kjøre følgende kommandoer:
./configure $XORG_CONFIG && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
liba52 er et gratis bibliotek for dekoding av ATSC A/52 (også kjent som AC-3) strømmer. A/52-standarden brukes i en rekke applikasjoner, inkludert digital-TV og DVD.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://distfiles.adelielinux.org/source/a52dec/a52dec-0.8.0.tar.gz
Nedlasting MD5 sum: 4debeed0257f5312e84d92711a5cfcec
Nedlastingsstørrelse: 448 KB
Estimert diskplass som kreves: 3.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/liba52
Installer liba52 ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--mandir=/usr/share/man \
--enable-shared \
--disable-static \
CFLAGS="${CFLAGS:--g -O3} -fPIC" &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install &&
cp liba52/a52_internal.h /usr/include/a52dec &&
install -v -m644 -D doc/liba52.txt \
/usr/share/doc/liba52-0.8.0/liba52.txt
CFLAGS="${CFLAGS:--g -O3}
-fPIC": Dette legger til -fPIC til CFLAGS
men bruk -g -O3 (standarden for
denne pakken) i stedet for en tom streng når CFLAGS ikke er satt. Dette er nødvendig for å
kompilere liba52 uten
flytting av kjøretidstekst. Kjøretidstekstflytting er forbudt
på x86_64 så -fPIC er strengt
nødvendig. På 32-bit x86 kjøring av tekstflytting er tillatt,
men det er usikkert, og det kan være bortkastet fysisk RAM,
altså -fPIC er fortsatt bedre.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
cp liba52/a52_internal.h ...: Kopierer denne deklarasjonens filen til /usr/include/a52dec tillater noen andre programmer (som f.eks xine-lib) å kompilere og lenke mot et system installert liba52.
libao pakken inneholder et lydbibliotek på tvers av plattformer. Dette er nyttig for å sende ut lyd bredt på en rekke plattformer. Den støtter for øyeblikket WAV-filer, OSS (Open Sound System), ESD (Enlighten Sound Daemon), ALSA (Advanced Linux Sound Arkitektur), NAS (Nettverkslydsystem), aRTS (analog sanntid Synthesizer) og PulseAudio (neste generasjon GNOME lydarkitektur).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/ao/libao-1.2.0.tar.gz
Nedlasting MD5 sum: 9f5dd20d7e95fd0dd72df5353829f097
Nedlastingsstørrelse: 456 KB
Estimert diskplass som kreves: 3.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Først, fiks et gcc-14 problem:
sed -i '/limits.h/a #include <time.h>' src/plugins/pulse/ao_pulse.c
Installer libao ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -v -m644 README /usr/share/doc/libao-1.2.0
libaom pakken inneholder en referanse versjon av Alliance for Open Media videokodeken. Denne kodeken er et patentfritt alternativ til H.265, og begynner å bli brukt rundt hele internett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://storage.googleapis.com/aom-releases/libaom-3.9.1.tar.gz
Nedlasting MD5 sum: f31b72e81dd177396e3553576f6515ef
Nedlastingsstørrelse: 5.3 MB
Estimert diskplass som kreves: 104 MB (legg til 1.0 GB for tester)
Estimert byggetid: 1.0 SBU (med parallellitet=4, legg til 187 SBU for tester)
yasm-1.3.0 (eller NASM-2.16.03
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Installer libaom ved å kjøre følgende kommandoer:
mkdir aom-build &&
cd aom-build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_SHARED_LIBS=1 \
-D ENABLE_DOCS=no \
-G Ninja .. &&
ninja
For å teste resultatene, utsted: ninja runtests. Merk at testene tar ekstremt lang tid å kjøre.
Nå, som root bruker:
ninja install && rm -v /usr/lib/libaom.a
-D
BUILD_SHARED_LIBS=1: Denne bryteren bygger delte
versjoner av bibliotekene.
-D ENABLE_DOCS=no:
Denne bryteren deaktiverer bygging av dokumentasjonen fordi
den mislykkes på grunn av en inkompatibilitet med siste
versjon av Doxygen-1.12.0.
-D ENABLE_NASM=yes: Bruk denne
bryteren hvis du har både yasm-1.3.0 og NASM-2.16.03 installert og ønsker å
bruke nasm i stedet for yasm.
libass er en flyttbar undertekstgjengivelse for ASS/SSA (Advanced Substation Alpha/Substation Alpha) undertekstformat som gir mulighet for mer avanserte undertekster enn den konvensjonelle SRT og lignende formater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libass/libass/releases/download/0.17.3/libass-0.17.3.tar.xz
Nedlasting MD5 sum: baed6dfc87bed705c1955cc6b932d7f6
Nedlastingsstørrelse: 436 KB
Estimert diskplass som kreves: 7.7 MB
Estimert byggetid: mindre enn 0.1 SBU
FreeType-2.13.3, FriBidi-1.0.15, og NASM-2.16.03
Installer libass ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-fontconfig: Bruk denne
bryteren hvis du ikke installerte Fontconfig.
libcanberra er en implementering av XDG Sound Tema og navnespesifikasjoner, for generering av hendelseslyder på gratis skrivebord, som for eksempel GNOME.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://0pointer.de/lennart/projects/libcanberra/libcanberra-0.30.tar.xz
Nedlasting MD5 sum: 34cb7e4430afaf6f447c4ebdb9b42072
Nedlastingsstørrelse: 312 KB
Estimert diskplass som kreves: 7.5 MB
Estimert byggetid: 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/libcanberra-0.30-wayland-1.patch
alsa-lib-1.2.12, gstreamer-1.24.7, og GTK+-3.24.43
PulseAudio-17.0, GTK+-2 og tdb
sound-theme-freedesktop-0.8, eller et annet tema, for eksempel fra gnome utseende nettsted
Først, bruk en oppdatering for å fikse et problem som forårsaker at enkelte applikasjoner krasjer i Wayland-basert skrivebordsmiljø:
patch -Np1 -i ../libcanberra-0.30-wayland-1.patch
Installer libcanberra ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-oss && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make docdir=/usr/share/doc/libcanberra-0.30 install
--disable-oss:
deaktiver valgfritt utdatert OSS støtte
--disable-gtk3: deaktiver
valgfritt GTK+ 2 støtte
libcddb er et bibliotek som implementerer de forskjellige protokollene (CDDBP, HTTP, SMTP) for å få tilgang til data på en CDDB server.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/libcddb/libcddb-1.3.2.tar.bz2
Nedlasting MD5 sum: 8bb4a6f542197e8e9648ae597cd6bc8a
Nedlastingsstørrelse: 384 KB
Estimert diskplass som kreves: 3.9 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Som standard kobler denne pakken til freedb.org, som allerede er stengt. Endre
standarden som skal brukes til gnudb.gnudb.org i stedet, og fiks to
foreldede testdatafiler:
sed -e '/DEFAULT_SERVER/s/freedb.org/gnudb.gnudb.org/' \
-e '/DEFAULT_PORT/s/888/&0/' \
-i include/cddb/cddb_ni.h &&
sed '/^Genre:/s/Trip-Hop/Electronic/' -i tests/testdata/920ef00b.txt &&
sed '/DISCID/i# Revision: 42' -i tests/testcache/misc/12340000
Løs et problem med å bygge med gcc-14:
sed -i 's/size_t l;/socklen_t l;/' lib/cddb_net.c
Installer libcddb ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check -k. Testpakken trenger Internetttilkobling. En test mislykkes pga manglende testserver.
Nå, som root bruker:
make install
libcdio er et bibliotek for CD-ROM og CD bildetilgang. Den tilknyttede libcdio-cdparanoia biblioteket leser lyd fra CD-ROM-en direkte som data, uten analogt trinn mellom, og skriver dataene til en fil eller kanal som .wav, .aifc eller som rå 16 bit lineær PCM.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libcdio/libcdio-2.1.0.tar.bz2
Nedlasting MD5 sum: aa7629e8f73662a762f64c444b901055
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 53 MB (begge pakkene, inkludert sjekker)
Estimert byggetid: 0.2 SBU (bruker parallellisme=4; begge pakkene, inkludert sjekker)
Nødvendig oppdatering: https://ftp.gnu.org/gnu/libcdio/libcdio-paranoia-10.2+2.0.2.tar.bz2
Installer libcdio ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check -k. En test
navngitt realpath er kjent for
å mislykkes.
Nå, som root bruker:
make install
Nå installer libcdio-paranoia:
tar -xf ../libcdio-paranoia-10.2+2.0.2.tar.bz2 && cd libcdio-paranoia-10.2+2.0.2 && ./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
|
viser CD-ROM stasjonens egenskaper |
|
|
viser informasjon om en CD eller CD-bilde |
|
|
er et lyd CD leseverktøy som inkluderer ekstra funksjoner for dataverifisering |
|
|
leser informasjon fra en CD eller CD-bilde |
|
|
er en enkel cd-spiller |
|
|
viser informasjon om et ISO 9660 bilde |
|
|
leser deler av et ISO 9660 bilde |
|
|
utsteder libcdio multimediekommandoer |
|
|
inneholder de primære cdio API funksjonene |
libdvdcss er et enkelt bibliotek designet for å få tilgang til DVDer som en blokkenhet uten å måtte bry deg om dekrypteringen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://get.videolan.org/libdvdcss/1.4.3/libdvdcss-1.4.3.tar.bz2
Nedlasting MD5 sum: e98239a88af9b2204f9b9d987c2bc71a
Nedlastingsstørrelse: 380 KB
Estimert diskplass som kreves: 3.3 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libdvdcss ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libdvdcss-1.4.3 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libdvdread er et bibliotek som gir et enkelt grunnlag for lesing av DVDer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://get.videolan.org/libdvdread/6.1.3/libdvdread-6.1.3.tar.bz2
Nedlasting MD5 sum: 3c58d1624a71a16ff40f55dbaca82523
Nedlastingsstørrelse: 388 KB
Estimert diskplass som kreves: 3.6 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libdvdread ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libdvdread-6.1.3 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libdvdnav er et bibliotek som tillater enkel bruk av sofistikerte DVD navigasjonsfunksjoner inkludert DVD menyer, multiangle avspilling, og til og med interaktive DVD-spill.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://get.videolan.org/libdvdnav/6.1.1/libdvdnav-6.1.1.tar.bz2
Nedlasting MD5 sum: 46c46cb0294fbd1fcb8a0181818dad15
Nedlastingsstørrelse: 360 KB
Estimert diskplass som kreves: 3.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer libdvdnav ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libdvdnav-6.1.1 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Quasar DV Codec (libdv) er en programvare CODEC for DV-video, kodingsformatet som brukes av de fleste digitale videokameraer. Den kan brukes til å kopiere videoer fra videokameraer ved hjelp av en firewire tilkobling (IEEE 1394).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/libdv/libdv-1.0.0.tar.gz
Nedlasting MD5 sum: f895162161cfa4bb4a94c070a7caa6c7
Nedlastingsstørrelse: 574 KB
Estimert diskplass som kreves: 6.0 MB
Estimert byggetid: 0.2 SBU
Installer libdv ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-xv \
--disable-static &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -v -m755 -d /usr/share/doc/libdv-1.0.0 && install -v -m644 README* /usr/share/doc/libdv-1.0.0
--disable-xv: Denne
parameteren er nødvendig hvis et X
Window System ikke er installert. Det forhindrer også
configure å
teste for libXv som kun brukes
til et foreldet program playdv som ikke vil bygges
med nåværende linux
deklarasjoner og vil også trenge andre foreldede
avhengigheter.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libmad er en høy kvalitet MPEG lyddekoder med 24-bits utdata.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/mad/libmad-0.15.1b.tar.gz
Nedlasting MD5 sum: 1be543bc30c56fb6bea1d7bf6a64e66c
Nedlastingsstørrelse: 491 KB
Estimert diskplass som kreves: 4.2 MB
Estimert byggetid: 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/libmad-0.15.1b-fixes-1.patch
Installer libmad ved å kjøre følgende kommandoer:
patch -Np1 -i ../libmad-0.15.1b-fixes-1.patch && sed "s@AM_CONFIG_HEADER@AC_CONFIG_HEADERS@g" -i configure.ac && touch NEWS AUTHORS ChangeLog && autoreconf -fi && ./configure --prefix=/usr --disable-static && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Noen pakker sjekker pkg-config filen for libmad. Denne filen er spesielt nødvendig så Cdrdao kan gjenkjenne den installerte libmad.
Som root bruker:
cat > /usr/lib/pkgconfig/mad.pc << "EOF"
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: mad
Description: MPEG audio decoder
Requires:
Version: 0.15.1b
Libs: -L${libdir} -lmad
Cflags: -I${includedir}
EOF
touch NEWS AUTHORS ChangeLog: Hindrer autoreconf fra å returnere en feil.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libmpeg2 pakken inneholder et bibliotek for dekoding av MPEG-2 og MPEG-1 videostrømmer. Biblioteket er i stand til å dekode alle MPEG strømmer som samsvarer med visse begrensninger: “begrenset parametere” for MPEG-1, og “hovedprofil” for MPEG-2. Dette er nyttig for programmer og applikasjoner som trenger å dekode MPEG-2 og MPEG-1 videostrømmer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://libmpeg2.sourceforge.net/files/libmpeg2-0.5.1.tar.gz
Nedlasting MD5 sum: 0f92c7454e58379b4a5a378485bbd8ef
Nedlastingsstørrelse: 513 KB
Estimert diskplass som kreves: 6 MB
Estimert byggetid: 0.1 SBU
Installer libmpeg2 ved å kjøre følgende kommandoer:
sed -i 's/static const/static/' libmpeg2/idct_mmx.c &&
./configure --prefix=/usr \
--enable-shared \
--disable-static &&
make
For å teste resultatene, kjør: make check. For å utføre en
mer omfattende regresjonstest, se filen test/README i kildetreet.
Nå, som root bruker:
make install &&
install -v -m755 -d /usr/share/doc/libmpeg2-0.5.1 &&
install -v -m644 README doc/libmpeg2.txt \
/usr/share/doc/libmpeg2-0.5.1
sed -i ...: This sed fikser problemer med nyere GCC kompilatorer.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libmusicbrainz pakken inneholder et bibliotek som lar deg få tilgang til dataene på MusicBrainz serveren.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/metabrainz/libmusicbrainz/releases/download/release-5.1.0/libmusicbrainz-5.1.0.tar.gz
Nedlasting MD5 sum: 4cc5556aa40ff7ab8f8cb83965535bc3
Nedlastingsstørrelse: 76 KB
Estimert diskplass som kreves: 6.6 MB (ytterligere 4,4 MB for API dokumentasjonen)
Estimert byggetid: 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/libmusicbrainz-5.1.0-cmake_fixes-1.patch
CMake-3.30.2, libxml2-2.13.3 og neon-0.33.0
Først, fiks et problem forårsaket av CMake-3.18.0 og senere:
patch -Np1 -i ../libmusicbrainz-5.1.0-cmake_fixes-1.patch
Løs også et problem forårsaket av libxml-2.12.x:
sed -e 's/xmlErrorPtr /const xmlError */' \
-i src/xmlParser.cc
Installer libmusicbrainz ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release .. && make
Hvis du har installert Doxygen-1.12.0, valgfritt bygg API dokumentasjonen:
doxygen ../Doxyfile
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har bygget API dokumentasjonen, installer, som
root bruker:
rm -rf /usr/share/doc/libmusicbrainz-5.1.0 && cp -vr docs/ /usr/share/doc/libmusicbrainz-5.1.0
libogg pakken inneholder Ogg fil struktur. Dette er nyttig for å lage (koding) eller spille (dekoding) en enkelt fysisk bitstrøm.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/ogg/libogg-1.3.5.tar.xz
Nedlasting MD5 sum: 3178c98341559657a15b185bf5d700a5
Nedlastingsstørrelse: 420 KB
Estimert diskplass som kreves: 3.5 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer libogg ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libogg-1.3.5 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
libplacebo pakken inneholder et bibliotek for å behandle bilde og video primitiver og shaders. Det inkluderer også en høykvalitets gjengivelsespipeline som støtter OpenGL og Vulkan.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/haasn/libplacebo/archive/v7.349.0/libplacebo-7.349.0.tar.gz
Nedlasting MD5 sum: 8dd72edf2ec5f1918770a317ef8107a5
Nedlastingsstørrelse: 828 KB
Estimert diskplass som kreves: 36 MB
Estimert byggetid: 0.1 SBU (Med tester, begge ved hjelp av parallellitet=4
Glslang-14.3.0 og Vulkan-Loader-1.3.294
Little CMS-2.16 libunwind-1.6.2, dovi_tool, Nuklear, og xxHash
Installer libplacebo ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D tests=true \
-D demos=false &&
ninja
For å teste resultatene, utsted: ninja test. En test, opengl_surfaceless.c, er kjent for å mislykkes.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D demos=false: Denne
bryteren deaktiverer bygging av demoprogrammene fordi
byggingen av plplay er for
øyeblikket ødelagt.
-D tests=true: Denne
bryteren gjør det mulig å bygge kode som er nødvendig for å
kjøre testene.
libsamplerate er en samplingsfrekvensomformer for lyd.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libsndfile/libsamplerate/releases/download/0.2.2/libsamplerate-0.2.2.tar.xz
Nedlasting MD5 sum: 97c010fc25156c33cddc272c1935afab
Nedlastingsstørrelse: 3.2 MB
Estimert diskplass som kreves: 15 MB (legg til 2 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.3 SBU for tester)
alsa-lib-1.2.12, libsndfile-1.2.2, og fftw-3.3.10 (for tester)
Installer libsamplerate ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libsamplerate-0.2.2 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Libsndfile er et bibliotek med C rutiner for å lese og skrive filer som inneholder samplede lyddata.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libsndfile/libsndfile/releases/download/1.2.2/libsndfile-1.2.2.tar.xz
Nedlasting MD5 sum: 04e2e6f726da7c5dc87f8cf72f250d04
Nedlastingsstørrelse: 716 KB
Estimert diskplass som kreves: 12 MB (legg til 10 MB for tester)
Estimert byggetid: 0.3 SBU (legg til 0.3 SBU for tester)
FLAC-1.4.3, Opus-1.5.2, og libvorbis-1.3.7
alsa-lib-1.2.12, LAME-3.100, mpg123-1.32.7, Speex-1.2.1, og SQLite-3.46.1
Installer libsndfile ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--docdir=/usr/share/doc/libsndfile-1.2.2 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
|
sammenligner to lydfiler |
|
|
kobler sammen to eller flere lydfiler |
|
|
konverterer en lydfil fra ett format til et annet |
|
|
deler en multikanal i flere enkeltkanalfiler |
|
|
viser informasjon om en lydfil |
|
|
konverterer flere enkeltkanalsfiler til en flerkanalsfil |
|
|
henter metadata fra en lydfil |
|
|
setter metadata i en lydfil |
|
|
spiller av en lydfil |
|
|
redder lyddataene fra WAV filer som er mer enn 4 GB i størrelse |
|
|
inneholder libsndfile API funksjoner |
libva pakken inneholder et bibliotek som gir tilgang til maskinvareakselerert videobehandling ved hjelp av maskinvare for å akselerere videobehandling for å avlaste den sentrale prosesseringsenhet (CPU) for å dekode og kode komprimert digital video. VA API videodekodings/kode grensesnitt er plattform og vindus system uavhengig rettet mot Direct Rendering Infrastructure (DRI) i X vindussystemet men det kan potensielt også brukes med direkte rammebuffer og grafikkundersystemer for videoutgang. Akselerert behandling inkluderer støtte for videodekoding, videokoding, underbildeblanding og gjengivelse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/intel/libva/archive/2.22.0/libva-2.22.0.tar.gz
Nedlasting MD5 sum: 8dba13313d724b5e930f06e65b7437e2
Nedlastingsstørrelse: 296 KB
Estimert diskplass som kreves: 3.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Xorg build environment og libdrm-2.4.122
VA API driver som passer for maskinvaren i systemet ditt:
intel-vaapi-driver-2.4.1 (for
Intel GPUer som følger med Haswell CPUer eller tidligere),
intel-media-24.2.5 (for Intel GPUer
som følger med Broadwell CPUer og senere), og Mesa-24.1.5 (gir
r600, radeonsi, og nouveau VA API driverre, for ATI/AMD Radeon
HD 2xxx GPUs og senere, og støttede
NVIDIA GPUer; det er en sirkulær avhengighet, les Mesa
siden for informasjon om hvordan du bryter den)
Installer libva ved å kjøre følgende kommandoer:
cd build && meson setup --prefix=$XORG_PREFIX --buildtype=release && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
libvdpau pakken inneholder et bibliotek som implementerer VDPAU biblioteket.
VDPAU (Video Decode and Presentation API for Unix) er et åpen kildekode bibliotek (libvdpau) og API opprinnelig designet av Nvidia for GeForce 8 serien og senere GPU maskinvare rettet mot X vindussytemet. Denne VDPAU API lar videoprogrammer laste ned deler av videoen dekodingsprosess og videoetterbehandling til GPU videomaskinvaren.
For øyeblikket er delene som kan lastes av VDPAU til GPUen er bevegelseskompensasjon (mo comp), invers diskret cosinustransformasjon (iDCT), VLD (dekoding med variabel lengde) og deblokkering for MPEG-1, MPEG-2, MPEG-4 ASP (MPEG-4 del 2), H.264/MPEG-4 AVC og VC-1, WMV3/WMV9-kodet videoer. Hvilke spesifikke kodeker av disse som kan lastes ned til GPU avhenger av versjonen av GPU maskinvaren; nærmere bestemt, for også å dekode MPEG-4 ASP (MPEG-4 del 2), Xvid/OpenDivX (DivX 4), og DivX 5-formater, en GeForce 200M (2xxM) Series (den ellevte generasjon av Nvidias GeForce grafikkbehandlingsenheter) eller nyere GPU maskinvare er nødvendig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/vdpau/libvdpau/-/archive/1.5/libvdpau-1.5.tar.bz2
Nedlasting MD5 sum: 148a192110e7a49d62c0bf9ef916c099
Nedlastingsstørrelse: 140 KB
Estimert diskplass som kreves: 4.6 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
VDPAU driveren som passer for maskinvaren i systemet ditt:
libvdpau-va-gl-0.4.2 (for Intel
GPUer) og Mesa-24.1.5 (gir r600, radeonsi,
og nouveau VDPAU driverre, for
ATI/AMD Radeon HD 2xxx GPUs og senere, og støttede
NVIDIA GPUer; Mesa må bygges etter denne pakken for disse
drivere)
Doxygen-1.12.0, Graphviz-12.1.0, og texlive-20240312 eller install-tl-unx
Installer libvdpau ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=$XORG_PREFIX .. && ninja
For å teste resultatene, utsted: ninja test. Det er bare én test for denne pakken, dlclose, og den er kjent for å feile på noen systemer.
Nå, som root bruker:
ninja install
Hvis doxygen er tilstede på
byggetidspunktet plasser dokumentasjonen i en versjonert
mappe som root bruker:
[ -e $XORG_PREFIX/share/doc/libvdpau ] && mv -v $XORG_PREFIX/share/doc/libvdpau{,1.5}
libvdpau-va-gl pakken inneholder et bibliotek som implementerer VDPAU biblioteket. Libvdpau_va_gl bruker OpenGL under panseret for å akselerere tegning og skalering og VA-API (hvis tilgjengelig) til å akselerere videodekoding. Foreløpig er VA-API tilgjengelig på enkelte Intel brikker, og på noen AMD skjermkort ved hjelp av libvdpau driver.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Libvdpau-va-gl Driver Nedlasting (HTTP): https://github.com/i-rinat/libvdpau-va-gl/archive/v0.4.2/libvdpau-va-gl-0.4.2.tar.gz
Libvdpau-va-gl Driver Nedlasting MD5 sum: 8db21dcfd5cd14c6ec51b992e20369dc
Libvdpau-va-gl Driver Nedlastingsstørrelse: 120 KB
Estimert diskplass som kreves: 4.9 MB
Estimert byggetid: mindre enn 0.1 SBU (legg til 1.1 SBU for tester)
CMake-3.30.2, libvdpau-1.5, libva-2.22.0, og Mesa-24.1.5
Doxygen-1.12.0, Graphviz-12.1.0, og texlive-20240312 eller install-tl-unx
Installer libvdpau-va-gl ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=$XORG_PREFIX .. && make
For å teste resultatene, utsted: make check. Testene må kjøres fra et Xorg miljø.
Nå, som root bruker:
make install
For å la libvdpau finne libvdpau-va-gl, sett en
miljøvariabel. Som root
bruker:
echo "export VDPAU_DRIVER=va_gl" >> /etc/profile.d/xorg.sh
libvorbis pakken inneholder en generell formålsformat for lyd- og musikkkoding. Dette er nyttig for å lage (koding) og spille (dekoding) lyd i en åpen (patentfri) format.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.7.tar.xz
Nedlasting MD5 sum: 50902641d358135f06a8392e61c9ac77
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.1 SBU
Doxygen-1.12.0 og texlive-20240312 (eller install-tl-unx (spesifikt pdflatex og htlatex) for å bygge PDF dokumentasjonen)
Installer libvorbis ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, kjør: make -j1 check.
Nå, som root bruker:
make install && install -v -m644 doc/Vorbis* /usr/share/doc/libvorbis-1.3.7
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-docs: Denne bryteren
aktiverer bygging av dokumentasjonen i andre formater enn
medfølgende html.
Denne pakken, fra WebM prosjektet, gir referanse implementeringer av VP8 kodek (brukt i de fleste aktuelle html5 videoer) og neste generasjons VP9 kodek.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/webmproject/libvpx/archive/v1.14.1/libvpx-1.14.1.tar.gz
Nedlasting MD5 sum: 1d2a1c594587ee1f26a4f017becddcd5
Nedlastingsstørrelse: 5.4 MB
Estimert diskplass som kreves: 68 MB (legg til 1.6 GB for tester)
Estimert byggetid: 0.5 SBU (Bruker parallellisme=4; legg til ca. 11 SBU for tester med parallellisme=4, inkludert nedlastingstid)
yasm-1.3.0 eller NASM-2.16.03, og Which-2.21 (sånn at configure kan finne yasm)
cURL-8.9.1 (for å laste ned testfiler) og Doxygen-1.12.0 (for å bygge dokumentasjon)
En Internett-tilkobling er nødvendig for noen tester til denne pakken.
Installer libvpx ved å kjøre følgende kommandoer:
sed -i 's/cp -p/cp/' build/make/Makefile &&
mkdir libvpx-build &&
cd libvpx-build &&
../configure --prefix=/usr \
--enable-shared \
--disable-static &&
make
For å teste resultatene, kjør: LD_LIBRARY_PATH=. make test. Testpakken laster ned mange filer som en del av testprosessen. Noen få deler av den vil bruke alle tilgjengelige kjerner.
Nå, som root bruker:
make install
sed ... : Denne kommandoen korrigerer eierskap og tillatelser for installerte filer.
mkdir libvpx-build && cd libvpx-build: libvpx utviklere anbefaler å bygge i en dedikert byggemappe.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-vp8: Denne bryteren
hindrer byggestøtte for VP8 kodeken.
--disable-vp9: Denne bryteren
hindrer byggestøtte for VP9 kodeken.
--target=generic-gnu: Denne
bryteren deaktiverer optimaliseringer spesifikke til x86 og
x86-64, som gjør det mulig å bygge denne pakken uten
nasm og
yasm
installert.
LD_LIBRARY_PATH=.: Dette er nødvendig for testpakken for å bruke biblioteket som nettopp ble bygget.
mlt pakken er Media Lovin Toolkit. Det er et multimediarammeverk med åpen kildekode, designet og utviklet for TV-kringkasting. Det gir et verktøysett for kringkastere, video redaktører, mediespillere, transkodere, webstreamere og mange flere typer applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/mltframework/mlt/releases/download/v7.26.0/mlt-7.26.0.tar.gz
Nedlasting MD5 sum: 14b822bc386db5c0fd2c9e5116c04d73
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 29 MB
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4)
frei0r-plugins-1.8.0 og Qt-6.7.2
Doxygen-1.12.0, fftw-3.3.10, libexif-0.6.24, SDL2-2.30.6, qt5-components-5.15.14, JACK, MOVEit, SoX, og vid.stab
Installer mlt ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D MOD_QT=OFF \
-D MOD_QT6=ON \
-W no-dev .. &&
make
Denne pakken kommer ikke med en testpakke. Men en test .mp4 fil kan spilles av i et lokalt grafisk miljø med ./out/bin/melt <filename>.mp4.
Denne applikasjonen bruker avanserte grafiske funksjoner. I noen tilfeller kan det være nødvendig med fastvare for din spesifikke grafikkadapter. Se the section called “Firmware for Skjermkort” for mer informasjon.
Nå, som root bruker:
make install
Opus er et lydkomprimeringsformat med tap utviklet av Internet Engineering Task Force (IETF), dvs spesielt egnet for interaktiv tale og lydoverføring over internettet. Denne pakken gir Opus utviklingsbibliotek og deklarasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/opus/opus-1.5.2.tar.gz
Nedlasting MD5 sum: c40b3a1fbdbb9a7aa178600b88200c76
Nedlastingsstørrelse: 7.4 MB
Estimert diskplass som kreves: 33 MB (med tester)
Estimert byggetid: 0.5 SBU (med tester)
Doxygen-1.12.0 og texlive-20240312 (eller install-tl-unx)
Installer Opus ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D docdir=/usr/share/doc/opus-1.5.2 &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
pipewire pakken inneholder en server og brukerrom API for å håndtere multimedia kanaler. Dette inkluderer en universell API for å koble til multimedieenheter, samt deling av multimediafiler mellom applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/1.2.3/pipewire-1.2.3.tar.bz2
Nedlasting MD5 sum: 9a37ae78752ac7462bb0660f61a4a870
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 69 MB (med tester)
Estimert byggetid: 0.6 SBU (med tester, begge med parallellisme=4)
BlueZ-5.77, gstreamer-1.24.7, gst-plugins-base-1.24.7, PulseAudio-17.0, SBC-2.0, v4l-utils-1.28.1, og Wireplumber-0.5.5 (kjøretid)
alsa-lib-1.2.12, Avahi-0.8, fdk-aac-2.0.3, FFmpeg-7.0.2, libcanberra-0.30, libdrm-2.4.122 (for ett eksempel og libcamera støtte), libxcb-1.17.0, libsndfile-1.2.2, libusb-1.0.27, Opus-1.5.2, SDL2-2.30.6 (for noen eksempler), Valgrind-3.23.0, Vulkan-Loader-1.3.294, Xorg Biblioteker, Doxygen-1.12.0 og Graphviz-12.1.0 (for dokumentasjon), JACK, ldacBT, libcamera, libmysofa, og xmltoman
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/pipewire
Installer pipewire ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D session-managers="[]" &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
session-managers="[]": Denne bryteren gjør det
mulig å spesifisere øktbehandlere som skal bygges som
underprosjekter. Vi angir en tom liste for å forhindre
meson fra å
laste ned en ekstern kopi av øktadministratorene. En Pipewire
øktbehandle anbefalt av PipeWire utviklerne for generell
bruk, Wireplumber-0.5.5, er tilgjengelig
som en egen BLFS pakke. Bygg den etter installasjon av
Pipewire hvis du trenger å kjøre Pipewire nissen (for
eksempel for å støtte Snapshot-46.3).
-D docs=true: Denne bryteren
aktiverer generering av HTML dokumentasjon. De valgfrie
avhengighetene for dokumentasjon må være installert for at
dette skal fungere.
-D man=true: Denne bryteren
aktiverer generering av manualsider. De valgfrie
avhengighetene for dokumentasjon må installeres for at dette
skal fungere.
-D ffmpeg=enabled: Denne bryteren
aktiverer bruk av ffmpeg for lydkonvertering som et SPA
bakstykke.
-D vulkan=enabled: Denne bryteren
gjør det mulig å bruke Vulkan for videogjengivelse som et SPA
bakstykke.
|
er en tjeneste som gir tilgang til multimedieenheter og tillater deling av multimediefiler mellom applikasjoner |
|
|
starter en Pulsaudio kompatibel versjon av pipewire tjenesten |
|
|
lar deg spille av eller ta opp media ved hjelp av en pipewire økt |
|
|
lar deg samhandle med en pipewire økt |
|
|
lar deg samhandle med pipewires konfigurasjonssystem for feilsøkingsformål eller syntakskontroll |
|
|
viser alle nisser og objekter som er i bruk av pipewire |
|
|
dumper feilsøkingsmeldinger fra en lokal eller ekstern pipewire økt til konsollen |
|
|
kjører JACK applikasjoner på en pipewire økt |
|
|
kobler pipewire porter sammen |
|
|
initialiserer en tilbakekobling mellom to forskjellige pipewire porter. Dette er nyttig for testing og feilsøking |
|
|
inspiserer, legger til og fjerner metadata for objekter |
|
|
dumper MIDI meldinger fra en fil til skjermen |
|
|
lar deg overvåke pipewire økter |
|
|
sporer minnebruk og API anrop brukt av pipewire |
|
|
reserverer eller overvåker en enhet via D-Bus |
|
|
viser sanntids ytelsesinformasjon fra pipewire |
|
|
kjører v4l2 applikasjoner på en pipewire økt |
|
|
inspiserer kortprofilen til et gitt lydkort |
|
|
lar deg inspisere pipewire programtillegg |
|
|
dumper gjeldende pipewire konfigurasjon i JSON format |
|
|
lar deg overvåke pipewire programtillegg |
|
|
omsampler en gitt fil |
|
|
inneholder API funksjoner for håndtering av multimedia kanaler |
PulseAudio er et lydsystem for POSIX OS, som betyr at det er en mellomtjener for lydapplikasjoner. Det lar deg gjøre avanserte operasjoner på lyddataene dine når de går mellom dine applikasjonen og maskinvaren din. Operasjoner som overføring av lyden til en annen maskin, endre prøveformatet eller antall kanaler, og å blande flere lyder til én oppnås enkelt ved å bruke en lydserver.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/pulseaudio/releases/pulseaudio-17.0.tar.xz
Nedlasting MD5 sum: c4a3596a26ff4b9dcd0c394dd1d4f8ee
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 42 MB (med tester)
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4; legg til 0,2 SBU for tester)
alsa-lib-1.2.12, dbus-1.14.10, GLib-2.80.4, Speex-1.2.1 og Xorg Biblioteker
Avahi-0.8, BlueZ-5.77, Doxygen-1.12.0 (for dokumentasjon), fftw-3.3.10, GTK+-3.24.43, libsamplerate-0.2.2, SBC-2.0 (Bluetooth støtte), Valgrind-3.23.0, JACK, libasyncns, LIRC, ORC, soxr, TDB, og WebRTC AudioProcessing
Installer PulseAudio ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D database=gdbm \
-D doxygen=false \
-D bluez5=disable \
.. &&
ninja
For å teste resultatene, kjør: ninja test. En test mislykkes hvis testene ikke kjøres som root bruker, men dette kan ignoreres.
Nå, som root bruker:
ninja install
Å kjøre PulseAudio som en systemomfattende nisse er mulig,
men ikke anbefalt. Se
https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/
for mer informasjon. Mens fortsatt som root bruker, fjern D-Bus konfigurasjonsfil for
systemomfattende nisse for å unngå å lage unødvendige system
brukere og grupper:
rm /usr/share/dbus-1/system.d/pulseaudio-system.conf
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D bluez5=disabled:
Denne bryteren forhindrer en kjøretidsfeil hvis dbus-1.14.10 og
SBC-2.0 er
begge installert men BlueZ-5.77 ikke er installert. Fjern dette
hvis du har installert alle tre pakkene.
-D doxygen=false:
Dette gjør at pakken kan kompilere hvis Doxygen-1.12.0 ikke er
installert. Fjern dette hvis du har installert dette og
ønsker å bygge dokumentasjonen.
Det er systemomfattende konfigurasjonsfiler: /etc/pulse/daemon.conf, /etc/pulse/client.conf, /etc/pulse/default.pa, og brukers
konfigurasjonsfiler med samme navn i ~/.config/pulse. Brukers
konfigurasjonsfiler har forrang over systemomfattende
filer.
Du må kanskje konfigurere lydsystemet. Du kan starte pulseaudio i kommandolinjemodus ved hjelp av pulseaudio -C og deretter liste ulik informasjon og endre innstillinger. Se man pulse-cli-syntax.
Hvis pulseaudio fungerte, men du ikke lenger har lyd etter å ha sjekket for maskinvareproblemer (høyttalere eller hodetelefoner ikke tilkoblet, ekstern forsterker ikke tilkoblet) kan det hende du må fikse det.
Et forslag er å stenge applikasjoner, som f.eks firefox hvor lyden har sluttet å virke, da kjør: pactl list short sinks fulgt av: pacmd set-default-sink <sink #> og så start applikasjonen på nytt.
Hvis det ikke fungerer, fungerer ofte en mer drastisk tilnærming. Etter stenging av applikasjonenen, lukk pulsaudio, enten ved hjelp av pulseaudio --kill eller, hvis det mislykkes, killall -KILL pulseaudio og deretter rm -rf ~/.config/pulse/* (og kanskje også rm -rf ~/.pulse/* hvis du har brukt en veldig gammel versjon av pulseaudio på denne maskinen), og kjør deretter pulseaudio --verbose for å starte den på nytt. Hvis nissen starter, start på nytt applikasjonen. Se man pulseaudio for flere alternativer.
|
spiller av eller tar opp rå eller kodede lydstrømmer på en PulseAudio lydserver |
|
|
er et verktøy som brukes til å rekonfigurere en PulseAudio lydserver under kjøring |
|
|
brukes til å kontrollere en kjørende PulseAudio lydserver |
|
|
er PulseAudio OSS Wrapper |
|
|
er en symbolsk kobling til pacat |
|
|
brukes til å spille av lydfiler på en PulseAudio lydserver |
|
|
er en symbolsk kobling til pacat |
|
|
er en symbolsk kobling til pacat |
|
|
er et verktøy som kan brukes til å fortelle en lokal PulseAudio lydserver til å midlertidig suspendere tilgangen til lydenhetene, som tillater andre applikasjoner å få direkte tilgang til dem |
|
|
er PulseAudio X11 Credential Utility |
|
|
er et skallskript som skriver ut forskjellig informasjon knyttet til Pulseaudio serveren som er i bruk |
|
|
er en nettverkstilkoblet lydserver med lav latens for Linux |
|
|
er et equalizer grensesnitt for PulseAudio equalizer sinks (Krever fftw-3.3.10 ved byggetid) |
|
|
starter PulseAudio og registrerer det til X11 øktbehandler |
SBC pakken er en digital lydkoder og dekoder som brukes til å overføre data til Bluetooth lydutgangsenheter som hodetelefoner eller høyttalere
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/bluetooth/sbc-2.0.tar.xz
Nedlasting MD5 sum: 5613357181daeffd71e971c6f8470f8d
Nedlastingsstørrelse: 268 KB
Estimert diskplass som kreves: 2.8 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer SBC ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static --disable-tester && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-tester:
Dette deaktiverer SBC testeren. Fjern den hvis du har
installert libsndfile-1.2.2.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
The Simple DirectMedia Layer (SDL for kort) er et bibliotek på tvers av plattformer designet for å gjøre det enkelt å skrive multimedieprogramvare, som spill og emulatorer. Denne koden er en kompatibilitetslag; det gir en binær og kildekompatibel API for programmer skrevet mot SDL 1.2, men den bruker SDL 2.0 bak kulissene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/libsdl-org/sdl12-compat/archive/release-1.2.68/sdl12-compat-release-1.2.68.tar.gz
Nedlasting MD5 sum: 04ed17494dad2131b37e0300f8af31ec
Nedlastingsstørrelse: 452 KB
Estimert diskplass som kreves: 7.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer sdl12-compat ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=RELEASE \
.. &&
make
Nå, som root bruker:
make install && rm -vf /usr/lib/libSDLmain.a
Hvis du ønsker det, test installasjonen av sdlcompat pakken ved hjelp av de inkluderte testprogrammene. Det er ikke nødvendig å installere noen av de resulterende binære filene for å validere installasjonen.
Du må kjøre alle testprogrammene manuelt (de er oppført i
README filen i denne mappen).
Mange av dem må stoppes manuelt, og du må skru høyttalerne på
med volumet på et passende nivå.
|
bestemmer kompilerings- og linkerflaggene som skal
brukes til å kompilere og koble programmer som
bruker |
|
|
inneholder funksjoner som gir kompatibilitetslenker til SDL2 lavnivåfunksjoner for lyd, tastatur, mus, joystick, 3D-maskinvare via OpenGL, og 2D rammebuffer på tvers av flere plattformer |
The Simple DirectMedia Layer Version 2 (SDL2 for kort) er et bibliotek på tvers av plattformer designet for å gjøre det enkelt å skrive multimedieprogramvare, som spill og emulatorer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.libsdl.org/release/SDL2-2.30.6.tar.gz
Nedlasting MD5 sum: ab12cc1cf58a5dd25e69c924acb93402
Nedlastingsstørrelse: 7.2 MB
Estimert diskplass som kreves: 186 MB (med dokumenter)
Estimert byggetid: 0.6 SBU (bruker parallellisme=4; med dokumenter)
libxkbcommon-1.7.0, wayland-protocols-1.36, og Xorg Biblioteker (hvis disse ikke er til stede, bygges ikke de tilsvarende modulene)
alsa-lib-1.2.12, Doxygen-1.12.0 (å lage dokumentasjon), ibus-1.5.30, libsamplerate-0.2.2, libunwind-1.6.2, NASM-2.16.03, pipewire-1.2.3, PulseAudio-17.0, et grafiske miljø, DirectFB, fcitx, jack, og sndio
Installer SDL2 ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Hvis du har Doxygen-1.12.0 installert og ønsker å bygge html dokumentasjon, kjør følgende kommandoer:
pushd docs && doxygen && popd
Hvis du ønsker å bygge og kjøre pakkeregresjon tester, ikke slett de statiske bibliotekene nedenfor før etter at testene er bygget.
Nå, som root bruker:
make install && rm -v /usr/lib/libSDL2*.a
Hvis du har laget dokumentasjonen, installer den som
root bruker:
install -v -m755 -d /usr/share/doc/SDL2-2.30.6/html && cp -Rv docs/output/html/* /usr/share/doc/SDL2-2.30.6/html
Hvis du ønsker det, test installasjonen av SDL2 ved hjelp av de inkluderte testprogrammene. Ingen av de resulterende binære filene trenger å installeres. Utfør følgende kommandoer for å bygge test programmer:
cd test && ./configure && make
Hvert av testprogrammene (de er oppført i README filen i denne mappen) må kjøres
individuelt. Mange av dem må stoppes manuelt. I tillegg,
høyttalere må være på med volumet på et passende nivå.
rm -v
/usr/lib/libSDL2*.a: Normalt statiske
biblioteker kan deaktiveres med en --disable-static alternativet til configure,
men det bryter bygningen i denne pakken.
Sound Theme Freedesktop pakken inneholder lydtemaer for skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://people.freedesktop.org/~mccann/dist/sound-theme-freedesktop-0.8.tar.bz2
Nedlasting MD5 sum: d7387912cfd275282d1ec94483cb2f62
Nedlastingsstørrelse: 472 KB
Estimert diskplass som kreves: 2 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Sound Theme Freedesktop ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
SoundTouch pakken inneholder åpen kildekode lyd prosesseringsbibliotek som gjør det mulig å endre lydtempo, tonehøyde og avspille rateparametere uavhengig av hverandre.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.surina.net/soundtouch/soundtouch-2.3.3.tar.gz
Nedlasting MD5 sum: 489c1050315965f69a9c0ad949744d73
Nedlastingsstørrelse: 596 KB
Estimert diskplass som kreves: 7.6 MB
Estimert byggetid: 0.2 SBU
Tarballen utvider seg til 'soundtouch' i stedet for det forventede 'soundtouch-2.3.3'
Installer SoundTouch ved å kjøre følgende kommandoer:
bootstrap kommandoen nedenfor mislykkes hvis ACLOCAL miljøvariabelen er satt som spesifisert i Xorg-7. Hvis den brukes, må ACLOCAL deaktiveres for denne pakken og deretter tilbakestilles for andre pakker.
./bootstrap &&
./configure --prefix=/usr \
--docdir=/usr/share/doc/soundtouch-2.3.3 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-openmp: Denne bryteren
legger til støtte for å kjøre algoritmene parallelt på tvers
av flere prosessorkjerner ved hjelp av OpenMP implementering
levert av GCC.
Speex er et lydkomprimeringsformat designet spesielt for tale. Den er godt tilpasset internett applikasjoner og gir nyttige funksjoner som ikke finnes i de fleste andre CODEC-er.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/speex/speex-1.2.1.tar.gz
Nedlasting MD5 sum: fe7bf610883ff202092b92c72fe0fe3e
Nedlastingsstørrelse: 1020 KB
Estimert diskplass som kreves: 7.8 MB
Estimert byggetid: mindre enn 0.1 SBU
Nedlasting (HTTP): https://downloads.xiph.org/releases/speex/speexdsp-1.2.1.tar.gz
Nedlasting MD5 sum: e6eb5ddef743a362c8018f260b91dca5
Nedlastingsstørrelse: 904 KB
Estimert diskplass som kreves: 5.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Denne pakken består av to separate tarballer. De må trekkes ut og bygges uavhengig.
Installer Speex ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/speex-1.2.1 &&
make
Denne pakken kommer ikke med en testpakke.
Som root bruker:
make install
Pakk ut og installer nå speexdsp pakken:
cd .. &&
tar -xf speexdsp-1.2.1.tar.gz &&
cd speexdsp-1.2.1 &&
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/speexdsp-1.2.1 &&
make
Igjen, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Taglib er et bibliotek som brukes til å lese, skrive og manipulere lydfil tagger og brukes av applikasjoner som for eksempel Amarok og VLC.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://taglib.org/releases/taglib-2.0.1.tar.gz
Nedlasting MD5 sum: e1f2ef858bddf65eb17e43043c3da10b
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4)
Installer Taglib ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_SHARED_LIBS=ON \
.. &&
make
Testpakken krever Cppunit men den er ikke en BLFS pakke.
Nå, som root bruker:
make install
v4l-utils gir en rekke verktøy for medieenheter, som tillater muligheten til å håndtere proprietære formater tilgjengelig fra de fleste webkameraer (libv4l), og gir verktøy for å teste V4L enheter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.linuxtv.org/downloads/v4l-utils/v4l-utils-1.28.1.tar.xz
Nedlasting MD5 sum: 6716de513a1fd2e1edb404a46a455855
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 34 MB
Estimert byggetid: 0.4 SBU (bruke parallellisme=4)
alsa-lib-1.2.12, GLU-9.0.3, og libjpeg-turbo-3.0.1
Doxygen-1.12.0, Qt-6.7.2 (for qv4l2 og qvidcap), SDL2-2.30.6, både LLVM-18.1.7 (med Clang og target BPF) og libbpf (for infrarøde fjernkontrolldekodere basert på BPF), og SDL_image
Hvis du har installert både LLVM og libbpf (ikke i BLFS),
enten aktiver BPF målet (via -D
LLVM_TARGETS_TO_BUILD=) ved bygging av LLVM, eller
deaktiver de infrarøde fjernkontrolldekoderne basert på
BPF:
sed -i '/^ir_bpf_enabled/s/=.*/= false/' utils/keytable/meson.build
Installer v4l-utils ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gconv=disabled \
-D doxygen-doc=disabled &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Hvis du også ønsker å installere bidragsprogrammene, legg til:
for prog in v4l2gl v4l2grab do cp -v contrib/test/$prog /usr/bin done
-D gconv=disabled:
Denne bryteren deaktiverer den feilaktige installasjonen av
gconv moduler som ville bryte glibc.
|
er et verktøy for å håndtere cx18 baserte enheter |
|
|
dekoder multipleksede formater fra TM5600/TM6000 USB enheter |
|
|
er et kommandolinjeverktøy for digitale TV-tjenester |
|
|
er et verktøy ment å konvertere mellom forskjellige filformater. Det er i samsvar med versjon 5 av DVB API |
|
|
er et kommandolinjeverktøy for frekvensskanning for digitale TV-tjenester som er kompatible med versjon 5 av DVB API |
|
|
er et kommandolinjeinnstillingsverktøy for digitale TV-tjenester som er i samsvar med versjon 5 av DVB API |
|
|
er et verktøy som viser fjernkontrollenhetene, tillater en å få/sette IR-nøkkelkode/skannekodetabeller, testhendelser generert av IR, og for å justere andre fjernkontrollalternativer |
|
|
er et verktøy som kan kontrollere mange kortinnstillinger, som å endre inngangene fra tuner til svideo eller kompositt, innstillingsvideo oppløsning eller endring av videomodus (PAL, SECAM, NTSC) |
|
|
er et verktøy som brukes til å konfigurere V4L2 enheter |
|
|
brukes til å teste video4linux opptaksenheter |
|
|
brukes til å ta opp video fra en V4L2 enhet |
|
|
er et verktøy for å dekode rå RDS data fra V4L2 radioenheter og tilbyr enkle måter å få tilgang til den mottatte RDS informasjonen på |
|
|
er et samsvarstestverktøy |
|
|
er et verktøy for å kontrollere v4l2 kontroller fra kommandolinjen |
|
|
er et verktøy for å direkte hente og sette registre for v4l2 enheter |
|
|
tar bilder ved hjelp av libv4l og lagrer dem som PPM filer |
|
|
tar bilder ved hjelp av libv4l og lagrer dem som PPM filer, men gir også mulighet for flere alternativer som å angi mengden av rammer tatt opp og lagrer filen som en RAW fil |
|
|
sjekker medieenhetene som er installert på en maskin og tilsvarende enhetsnoder |
Wireplumber pakken inneholder en økt og regel behandler for Pipewire.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/pipewire/wireplumber/-/archive/0.5.5/wireplumber-0.5.5.tar.bz2
Nedlasting MD5 sum: 258234d08926fd1f6824fb4b134720f9
Nedlastingsstørrelse: 404 KB
Estimert diskplass som kreves: 82 MB (legg til 22 MB for tester)
Estimert byggetid: 0.3 SBU (bruker parallellisme=4, med tester)
GLib-2.80.4, pipewire-1.2.3, og Systemd-256.4 (kjøretid, gjenoppbygd med Linux-PAM-1.6.1)
Doxygen-1.12.0, lxml-5.3.0, sphinx-8.0.2, sphinx_rtd_theme-2.0.0, og Breathe
Installer Wireplumber ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D system-lua=true .. && ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D system-lua=true:
Denne bryteren aktiverer bruk av systemversjonen av Lua.
Utelat denne bryteren hvis du ikke har installert Lua, men
merk det meson vil laste ned
og installere sin egen versjon.
For at Wireplumber skal brukes av Pipewire, må Wireplumber bli konfigurert til å starte når et skrivebordsmiljø startes.
For å konfigurere Wireplumber til å starte når et
skrivebordsmiljø blir startet, kjør følgende kommandoer som
root bruker for å aktivere
systemd brukerenheter:
systemctl enable --global pipewire.socket && systemctl enable --global wireplumber
Nå som Wireplumber er konfigurert til å starte når et skrivebordsmiljø blir startet, anbefales det at du logger ut av økten og logger tilbake inn igjen.
x264 pakken gir et bibliotek for koding av videostrømmer til H.264/MPEG-4 AVC formatet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/x264/x264-20240812.tar.xz
Nedlasting MD5 sum: 515794f289b34f59f16553f2438867ed
Nedlastingsstørrelse: 724 KB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4)
Installer x264 ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-shared \
--disable-cli &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--disable-cli: Denne
bryteren deaktiverer bygging av kommandolinjekoder som er
overflødig siden det krever FFmpeg for de fleste
inndataformatene.
--disable-asm: Bruk denne
bryteren hvis du ikke installerte NASM.
x265 pakken gir et bibliotek for koding av video strømmer til H.265/HEVC formatet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://bitbucket.org/multicoreware/x265_git/downloads/x265_3.6.tar.gz
Nedlasting MD5 sum: 99997ecc8ee4d3575ba7715c759ad3bb
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 38 MB
Estimert byggetid: 0.5 SBU (bruke parallellisme=4)
Installer x265 ved å kjøre følgende kommandoer:
mkdir bld &&
cd bld &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-W no-dev ../source &&
make
Denne pakken kommer ikke med en testpakke.
Hvis du nedgraderer fra bleeding-edge x265-20240812 (det
har vært feilaktig brukt i BLFS utviklingsboken i flere
dager), fjern det delte biblioteket fra x265-20240812 som
root bruker:
rm -fv /usr/lib/libx265.so.212
Dette er for å forhindre ldconfig fra å gjenskape
symbolkoblingen libx265.so
med målet /usr/lib/libx265.so.212 som ser ut til å
være “en nyere
versjon” qav libx265.so.209 fra x265-3.6.
For å installere pakken må du først fjerne eventuelle gamle
bibliotekversjoner. Etter installasjonen fjerner du et
statisk bibliotek. Som root
bruker:
make install && rm -vf /usr/lib/libx265.a
-W no-dev: Denne
bryteren brukes til å undertrykke advarsler beregnet på
pakkens utviklere.
rm -vf /usr/lib/libx265.a: BLFS anbefaler ikke bruk av statiske biblioteker.
Xine Bibliotek pakken inneholder xine biblioteker. Disse er nyttige for grensesnitt med eksterne programtillegg som tillater flyt av informasjon fra kilden til lyd og video maskinvare.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/xine/xine-lib-1.2.13.tar.xz
Nedlasting MD5 sum: 9e1be39857b7a3cd7cc0f2b96331ff22
Nedlastingsstørrelse: 4.8 MB
Estimert diskplass som kreves: 98 MB (med API dokumentasjon)
Estimert byggetid: 0.5 SBU (Bruker parallellisme=4; med API dokumentasjon)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/xine-lib-1.2.13-upstream_fixes-1.patch
et grafiske miljø, FFmpeg-7.0.2, og minst en av: alsa-lib-1.2.12, PulseAudio-17.0, eller JACK
AAlib-1.4rc5, FAAD2-2.11.1, FLAC-1.4.3, gdk-pixbuf-2.42.12, GLU-9.0.3, ImageMagick-7.1.1-36, liba52-0.8.0, libdvdcss-1.4.3, libmad-0.15.1b, libmng-2.0.3, libnsl-2.0.1, libva-2.22.0 (krever GLU-9.0.3), libvdpau-1.5, libvorbis-1.3.7, libvpx-1.14.1, Mesa-24.1.5, Samba-4.20.4, sdl12-compat-1.2.68, Speex-1.2.1, Doxygen-1.12.0 (for å lage API dokumentasjonen), v4l-utils-1.28.1 DirectFB, libbluray, libcaca, libdca, libFAME, libmodplug, libtheora, musepack, VCDImager, og WavPack,
Først, fiks å bygge denne pakken med ffmpeg-7.0 og senere:
patch -Np1 -i ../xine-lib-1.2.13-upstream_fixes-1.patch
Installer Xine Libraries ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-vcd \
--with-external-dvdnav \
--docdir=/usr/share/doc/xine-lib-1.2.13 &&
make
For å lage API dokumentasjonen, Doxygen må være installert og utsted følgende kommando:
doxygen doc/Doxyfile
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Når du installerer, gjør Makefile noen ekstra koblinger. Hvis du ikke har Xorg i /usr, må LIBRARY_PATH variabelen defineres for root brukeren. Hvis du bruker sudo for å angi root, bruk -E-alternativet for å sende dine nåværende miljøvariabler for installasjonsprosessen.
Hvis du har laget API dokumentasjonen, utfør følgende
kommandoer som root bruker
for å installere det:
install -v -m755 -d /usr/share/doc/xine-lib-1.2.13/api &&
install -v -m644 doc/api/* \
/usr/share/doc/xine-lib-1.2.13/api
--disable-vcd: Denne
bryteren er nødvendig for å kompilere Xine Lib uten VCDImager
installert. Fjern dette alternativet hvis du har installert
VCDImager.
--with-external-dvdnav: Denne
bryteren er nødvendig, fordi interne biblioteker ikke kan
dekryptere DVD.
--docdir=/usr/share/doc/xine-lib-1.2.13:
Denne bryteren fører til at dokumentasjonen installeres i en
versjonert mappe i stedet for standard /usr/share/doc/xine-lib.
--disable-vaapi: bruk denne
bryteren hvis libva-2.22.0 er installert og GLU-9.0.3 ikke er
det, for å forhindre byggefeil.
XviD er en MPEG-4 kompatibel video CODEC.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xvid.com/downloads/xvidcore-1.3.7.tar.gz
Nedlasting MD5 sum: 5c6c19324608ac491485dbb27d4da517
Nedlastingsstørrelse: 804 KB
Estimert diskplass som kreves: 7.1 MB
Estimert byggetid: 0.1 SBU
yasm-1.3.0 eller NASM-2.16.03
Denne pakken sin tarball utvides til xvidcore, ikke det forventede
xvidcore-1.3.7.
Installer XviD ved å kjøre følgende kommandoer:
cd build/generic && sed -i 's/^LN_S=@LN_S@/& -f -v/' platform.inc.in && ./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
sed -i '/libdir.*STATIC_LIB/ s/^/#/' Makefile &&
make install &&
chmod -v 755 /usr/lib/libxvidcore.so.4.3 &&
install -v -m755 -d /usr/share/doc/xvidcore-1.3.7/examples &&
install -v -m644 ../../doc/* /usr/share/doc/xvidcore-1.3.7 &&
install -v -m644 ../../examples/* \
/usr/share/doc/xvidcore-1.3.7/examples
sed -i 's/^LN_S=@LN_S@/& -f -v/' platform.inc.in: Fikser feil under make install hvis du installerer på nytt eller oppgraderer.
sed -i '/libdir.*STATIC_LIB/ s/^/#/' Makefile: Denne kommandoen deaktiverer installasjonen av det statiske biblioteket.
Dette kapittelet inneholder programmer som er involvert i lydfil manipulasjon; det vil si å spille, ta opp, rippe og andre vanlige ting som folk ønsker å gjøre. Det inkluderer også en pakke for å gjengi tekst til tale ved å bruke systemets lydmaskinvare. For å bruke mye av denne programvaren, må du ha kjernelyddriverne installert.
Audacious er en lydspiller.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://distfiles.audacious-media-player.org/audacious-4.4.tar.bz2
Nedlasting MD5 sum: 812367242529db8ca0fb0fdb71ffc91f
Nedlastingsstørrelse: 624 KB
Estimert diskplass som kreves: 14 MB (med GTK støtte)
Estimert byggetid: 0.2 SBU (med GTK støtte)
Nødvendige programtillegg
Nedlasting (HTTP): https://distfiles.audacious-media-player.org/audacious-plugins-4.4.tar.bz2
Nedlasting MD5 sum: 0946f32277afc60ec12510bd09507016
Nedlastingsstørrelse: 1.7 MB
Estimated disk space required: 40 MB (med GTK støtte)
Estimert byggetid: 2.0 SBU (with GTK støtte)
mpg123-1.32.7, FFmpeg-7.0.2, og neon-0.33.0 (for tilkoblet mpg3 og ogg radio)
alsa-lib-1.2.12, cURL-8.9.1, FAAD2-2.11.1, FLAC-1.4.3, LAME-3.100, libxml2-2.13.3, libcdio-2.1.0 (for å identifisere og spille av CDer), libnotify-0.8.3, libsndfile-1.2.2, libvorbis-1.3.7, pipewire-1.2.3, PulseAudio-17.0, SDL2-2.30.6, ampache-browser, adplug, The Bauer stereophonic-to-binaural DSP (bs2b) bibliotek, FluidSynth, JACK (krever libsamplerate-0.2.2), libcue, libmodplug, libmms, libopenmpt, libsidplayfp, LIRC, sndio, SoX, og WavPack
Installer Audacious ved å kjøre følgende kommandoer (du ønsker kanskje å endre å buildstamp til en annen streng):
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk=true \
-D qt=true \
-D buildstamp=BLFS \
-D libarchive=true \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Installer de nødvendige programtilleggspakkene ved å utstede følgende kommandoer:
tar -xf ../../audacious-plugins-4.4.tar.bz2 && cd audacious-plugins-4.4 && mkdir build && cd build && meson setup \ --prefix=/usr \ --buildtype=release \ -D gtk=true \ -D qt=true \ .. && +ninja
Nå, som root bruker:
ninja install
-D buildstamp=BLFS:
Denne bryteren legger til den gitte teksten til
versjonsstrengen.
-D gtk=true: Dette
alternativet aktiverer GTK støtte for grafisk
brukergrensesnitt.
-D qt=true: Dette
alternativet aktiverer Qt støtte for grafisk
brukergrensesnitt.
-D libarchive=true:
Dette legger til libarchive støtte, for lesing av komprimerte
modulsett eller skins.
-D valgrind=true: Alternativet
aktiverer Valgrind analysestøtte.
CDParanoia pakken inneholder
en CD-lyd ekstraksjonsverktøy. Dette er nyttig for å trekke
ut .wav filer fra lyd-CDer. En
CDDA kompatibel CDROM stasjon er nødvendig. Praktisk talt
alle stasjoner som støttes av Linux kan brukes.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/cdparanoia/cdparanoia-III-10.2.src.tgz
Nedlasting MD5 sum: b304bbe8ab63373924a744eac9ebc652
Nedlastingsstørrelse: 179 KB
Estimert diskplass som kreves: 2.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/cdparanoia-III-10.2-gcc_fixes-1.patch
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/cdparanoia
Denne pakken støtter ikke parallellbygging.
Installer CDParanoia ved å kjøre følgende kommandoer:
patch -Np1 -i ../cdparanoia-III-10.2-gcc_fixes-1.patch && ./configure --prefix=/usr --mandir=/usr/share/man && make -j1
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && chmod -v 755 /usr/lib/libcdda_*.so.0.10.2 && rm -fv /usr/lib/libcdda_*.a
|
brukes til å "rippe" en lyd-cd. Ripping er prosessen med å digitalt trekke ut musikk fra en lyd-CD |
|
|
inneholder funksjoner som brukes av cdparanoia, samt andre pakker, som automatisk kan identifisere om en CD-enhet er CDDA kompatibel |
|
|
inneholder funksjoner som brukes av cdparanoia, samt andre pakker, som gir dataverifisering, synkronisering, feilhåndtering og riperekonstruksjonsevne |
LAME pakken inneholder en MP3 koder og eventuelt en MP3 rammeanalysator. Dette er nyttig for å lage og analysere komprimerte lydfiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/lame/lame-3.100.tar.gz
Nedlasting MD5 sum: 83e260acbe4389b54fe08e0bdbf7cddb
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 9.7 MB
Estimert byggetid: 0.1 SBU
Dmalloc, Electric Fence, libsndfile-1.2.2 og NASM-2.16.03
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/lame
Forhindre kildekodemappen fra å bli feilaktig hardkodet som en delt biblioteksøkesti i de installerte programmene:
sed -i -e 's/^\(\s*hardcode_libdir_flag_spec\s*=\).*/\1/' configure
Installer LAME ved å kjøre følgende kommandoer:
./configure --prefix=/usr --enable-mp3rtp --disable-static && make
For å teste resultatene, kjør: LD_LIBRARY_PATH=libmp3lame/.libs make test.
Nå, som root bruker:
make pkghtmldir=/usr/share/doc/lame-3.100 install
--enable-mp3rtp:
Denne bryteren aktiverer bygging av encode-to-RTP programmet.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-nasm: Dette alternativet
aktiverer bruk av NASM-2.16.03 å kompilere optimaliserte
monteringsrutiner for 32-bit x86. Merk at dette har ingen
effekt på x86_64.
mpg123 pakken inneholder en konsollbasert MP3 spiller. Den hevder å være den raskeste MP3 dekoderen for Unix.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/mpg123/mpg123-1.32.7.tar.bz2
Nedlasting MD5 sum: 45820aa078659c98c42bb676025365db
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 16 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
PulseAudio-17.0, sdl12-compat-1.2.68, JACK, OpenAL og PortAudio
Installer mpg123 ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
|
brukes til å spille av MP3 filer via konsollen |
|
|
er et verktøy for å dumpe ID3 metadata fra MPEG lydfiler ved bruk av libmpg123 |
|
|
trekker bare ut MPEG rammer fra en strøm ved å bruke libmpg123 (stdin til stdout) |
|
|
spiller rå PCM lyd til en utgangsenhet |
|
|
inneholder mpg123 API funksjoner |
|
|
inneholder out123 API funksjoner |
|
|
inneholder litt lydsignalsyntese og formatkonverterings funksjoner |
PulseAudio Volumkontroll (pavucontrol) er et enkelt GTK basert volum kontrollverktøy ("mikser") for PulseAudio lydserveren. I motsetning til klassiske mikserverktøy, denne lar deg kontrollere både volumet på maskinvareenheter og hver avspillingsstrøm separat.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/pulseaudio/pavucontrol/pavucontrol-6.1.tar.xz
Nedlasting MD5 sum: 51743b9bc9eb01959bf3c770facc6555
Nedlastingsstørrelse: 168 KB
Estimert diskplass som kreves: 5.2 MB
Estimert byggetid: 0.2 SBU
Gtkmm-4.14.0, JSON-GLib-1.8.0, libsigc++-3.6.0, og PulseAudio-17.0
Installer pavucontrol ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D lynx=false .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install && mv /usr/share/doc/pavucontrol /usr/share/doc/pavucontrol-6.1
-D lynx=false: Denne
bryteren deaktiverer generering av README filen i
tekstformat. Fjern denne bryteren hvis du vil ha README filen
i tekstformat og har Lynx-2.9.2 installert.
Pnmixer pakken gir en lettvekts volumkontroll med et meldingsområde ikon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/nicklan/pnmixer/releases/download/v0.7.2/pnmixer-v0.7.2.tar.gz
Nedlasting MD5 sum: e9f17f56c50de39393030a96e343427b
Nedlastingsstørrelse: 236 KB
Estimert diskplass som kreves: 2.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Pnmixer ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr .. && make
Denne pakken har ikke en testpakke.
Nå, som root bruker:
make install
Vorbis Tools pakken inneholder kommandolinjeverktøy som er nyttige for koding, avspilling eller redigering av filer ved hjelp av Ogg codec.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/vorbis/vorbis-tools-1.4.2.tar.gz
Nedlasting MD5 sum: 998fca293bd4e4bdc2b96fb70f952f4e
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.1 SBU
Først bruker du en sed for å fikse et gcc-14 problem:
sed -i '/i18n.h/i #include "utf8.h"' ogginfo/codec_skeleton.c
Deretter bruker du en sed for å fikse en sikkerhetssårbarhet i 'oggenc':
sed -i 's/start+1,/start + strspn(start, PATH_SEPS),/' oggenc/platform.c
Installer Vorbis Tools ved å kjøre følgende kommandoer:
./configure --prefix=/usr --enable-vcut && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--enable-vcut: Denne
parameteren brukes slik at vcut programmet er bygget
siden det ikke er standard.
|
er en kommandolinje lydspiller for Ogg Vorbis strømmer |
|
|
er en enkel dekoder som konverterer Ogg Vorbis filer til PCM lydfiler (WAV eller raw) |
|
|
er en koder som gjør raw, WAV eller AIFF filer til en Ogg Vorbis strøm |
|
|
skriver ut informasjon som er lagret i en lydfil |
|
|
deler en fil i to filer ved et angitt kuttepunkt |
|
|
er et redigeringsverktøy som endrer informasjon i lydfilens metadata tagger |
Dette kapittelet ser alltid ut til å være favorittkapittelet. Det er sannsynligvis fordi det er mye tilfredsstillelse i å spille din første video når du har brukt så mye tid på å komme til det punktet. Alle de biblioteker, alle konfigurasjoner og belønningen din er at du endelig kommer til se en film. Men ikke bekymre deg, det er alltid en til KODEK å installere.
FFmpeg er en løsning for å ta opp, konvertere og strømme lyd og video. Det er en veldig rask video og lyd konverterer og den kan også hentes fra en live lyd-/videokilde. Designet for å være intuitivt, kommandolinjegrensesnittet (ffmpeg) prøver å finne ut av alle parametere, når det er mulig. FFmpeg kan også konvertere fra hvilken som helst samplingsfrekvens til en hvilken som helst annen, og endre størrelse på video i farten med et høykvalitets flerfasefilter. FFmpeg kan bruke en Video4Linux kompatibel videokilde og en hvilken som helst Open Sound System lydkilde.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ffmpeg.org/releases/ffmpeg-7.0.2.tar.xz
Nedlasting MD5 sum: e22725fc3738e314d71a7fb32f2336db
Nedlastingsstørrelse: 10 MB
Estimert diskplass som kreves: 228 MB (legg til 1,5 GB for FATE-pakke/testene, legg til 792 MB for dokumentasjon)
Estimert byggetid: 1.1 SBU (bruker parallellisme=4; legg til 3.2 SBU (med THREADS=4) for å kjøre FATE-pakken etter at eksempelfiler er lastet ned; legg til 0,3 SBU for doxygen dokumenter)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/ffmpeg-7.0.2-chromium_method-1.patch
libaom-3.9.1, libass-0.17.3, fdk-aac-2.0.3, FreeType-2.13.3, LAME-3.100, libvorbis-1.3.7, libvpx-1.14.1, Opus-1.5.2, x264-20240812, x265-3.6, og NASM-2.16.03 eller yasm-1.3.0
alsa-lib-1.2.12, libva-2.22.0, SDL2-2.30.6
libvdpau-1.5 og libvdpau-va-gl-0.4.2
Doxygen-1.12.0, Fontconfig-2.15.0, FriBidi-1.0.15, frei0r-plugins-1.8.0, libcdio-2.1.0 (å identifisere og spille av CDer), libdrm-2.4.122 (for “kmsgrab” inndata), libwebp-1.4.0, libjxl-0.10.3, opencv-4.10.0, OpenJPEG-2.5.2, GnuTLS-3.8.7.1, PulseAudio-17.0, Samba-4.20.4, Speex-1.2.1, texlive-20240312 (eller install-tl-unx) for PDF og PS dokumentasjon, v4l-utils-1.28.1, Vulkan-Loader-1.3.294, XviD-1.3.7, et grafiske miljø, dav1d, Flite, GSM, libaacplus, libbluray, libcaca, libcelt, libdc1394, libdca, libiec61883, libilbc, libmodplug, libnut (Git checkout), librtmp, libssh, libtheora, OpenAL, OpenCore AMR, Srt, Schroedinger, TwoLAME, vo-aaenc, vo-amrwbenc, og ZVBI
Først bruker du en oppdatering som legger til et API som er nødvendig for at noen pakker skal bygge:
patch -Np1 -i ../ffmpeg-7.0.2-chromium_method-1.patch
Installer FFmpeg ved å kjøre følgende kommandoer:
sed -i 's/-lflite"/-lflite -lasound"/' configure &&
./configure --prefix=/usr \
--enable-gpl \
--enable-version3 \
--enable-nonfree \
--disable-static \
--enable-shared \
--disable-debug \
--enable-libaom \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-libx265 \
--enable-openssl \
--ignore-tests=enhanced-flv-av1 \
--docdir=/usr/share/doc/ffmpeg-7.0.2 &&
make &&
gcc tools/qt-faststart.c -o tools/qt-faststart
HTML dokumentasjon ble bygget i forrige trinn. Hvis du har texlive-20240312 installert og ønsker å bygge PDF og Postscript versjoner av dokumentasjonen, utsted følgende kommandoer:
pushd doc &&
for DOCNAME in `basename -s .html *.html`
do
texi2pdf -b $DOCNAME.texi &&
texi2dvi -b $DOCNAME.texi &&
dvips -o $DOCNAME.ps \
$DOCNAME.dvi
done &&
popd &&
unset DOCNAME
Hvis du har Doxygen-1.12.0 installert og du ønsker å bygge (hvis --disable-doc var brukt) eller gjenoppbygge html dokumentasjonen, kjør:
doxygen doc/Doxyfile
Fate-suite testene inkluderer sammenligninger med installerte filer, og bør ikke kjøres før pakken er installert. Derfor, hvis du ønsker å kjøre dem, instruksjoner er gitt nedenfor.
Nå, som root bruker:
make install && install -v -m755 tools/qt-faststart /usr/bin && install -v -m755 -d /usr/share/doc/ffmpeg-7.0.2 && install -v -m644 doc/*.txt /usr/share/doc/ffmpeg-7.0.2
Hvis PDF og Postscript dokumentasjonen ble bygget, utsted
følgende kommandoer, som root
bruker, for å installere dem:
install -v -m644 doc/*.pdf /usr/share/doc/ffmpeg-7.0.2 && install -v -m644 doc/*.ps /usr/share/doc/ffmpeg-7.0.2
Hvis du brukte doxygen for å manuelt
opprette API dokumentasjonen, installer den ved å utstede
følgende kommandoer som root
bruker:
install -v -m755 -d /usr/share/doc/ffmpeg-7.0.2/api &&
cp -vr doc/doxy/html/* /usr/share/doc/ffmpeg-7.0.2/api &&
find /usr/share/doc/ffmpeg-7.0.2/api -type f -exec chmod -c 0644 \{} \; &&
find /usr/share/doc/ffmpeg-7.0.2/api -type d -exec chmod -c 0755 \{} \;
For å teste installasjonen riktig må du ha rsync-3.3.0 installert og følg instruksjonene for FFmpeg Automated Testing Environment (FATE). Først ca 1 GB med eksempelfiler brukt for å kjøre FATE lastes ned med kommandoen:
make fate-rsync SAMPLES=fate-suite/
fate-suite mappen er opprettet
og filene lastes ned der. Den kommandoen kjører faktisk en
rsync kommando for å hente eksempelfilene. Det kan være lurt
å komprimere og beholde denne mappen for testing på nytt, for
testing i et annet system, eller for når en ny versjon av
ffmpeg er utgitt. Pakk deretter ut prøvefiler i kildemappen,
og kjør make fate-rsync
... kommandoen ovenfor for å synkronisere med
oppstrømsdepotet. Nedlastingsstørrelse og tid reduseres
drastisk ved å gjøre dette. Antatte verdier i
"Pakkeinformasjon" inkluderer ikke nedlastings SBU. Noen
tester kan ha blitt fjernet i nyere versjoner, så for å være
sikker lokale og server fate prøver er identiske når du
bruker tidligere lagrede eksempler, kjør følgende kommando:
rsync -vrltLW --delete --timeout=60 --contimeout=60 \
rsync://fate-suite.ffmpeg.org/fate-suite/ fate-suite/
Deretter utfører du FATE med følgende kommandoer (det er mer enn 3800 tester i pakken):
make fate THREADS=N SAMPLES=fate-suite/ | tee ../fate.log &&
grep ^TEST ../fate.log | wc -l
hvor N er et
heltall, N ≤ antall
kjerner i systemet.
En vellykket kjøring skal ikke returnere noen feil eller advarsler, bare en liste over tester og totalt antall på slutten.
find ... ;: Retter tillatelser for dokumentasjonsfiler og mapper.
--enable-libfreetype:
Aktiverer Freetype støtte.
--enable-gpl:
Aktiverer bruk av GPL kode og tillater støtte for
etterbehandling, swscale og mange andre funksjoner.
--enable-version3:
Aktiverer bruken av (L)GPL versjon 3 kode.
--enable-nonfree:
Aktiverer bruk av ikke-gratis kode. Vær oppmerksom på at de
resulterende bibliotekene og binærfilene ikke kan
distribueres.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-shared:
Aktiverer bygging av delte biblioteker, ellers bygges og
installeres kun statiske biblioteker.
--disable-debug:
Deaktiverer bygging av feilsøkingssymboler inn i programmene
og bibliotekene.
--enable-libaom:
Aktiverer AV1 audio og video dekoding via libaom.
--enable-libass:
Aktiverer ASS/SSA undertekstformat gjengivelse via
libass.
--enable-libdrm: Bruk denne
bryteren hvis libdrm-2.4.122 er installert for å bygge
“kmsgrab” inndatamodul som er nyttig for
skjermopptak eller strømming.
--enable-libfdk-aac:
Aktiverer AAC lydkoding via libfdk-aac.
--enable-libmp3lame:
Aktiverer MP3 lydkoding via libmp3lame.
--enable-libvorbis
--enable-libvpx:
Aktiverer WebM koding via libvorbis og libvpx.
--enable-libx264:
Aktiverer høykvalitets H.264/MPEG-4 AVC koding via
libx264.
--enable-libx265:
Aktiverer høykvalitets H.265/HEVC koding via libx265.
--enable-openssl:
Aktiverer HTTPS protokollen for nettverksstrømmer.
--ignore-tests=...:
Deaktiverer tester som mislykkes å kjøre på BLFS uten
valgfrie pakker. For øyeblikket er AV1 testen deaktivert
ettersom den trenger dav1d for å gjøre AV1 dekoding på CPUen.
Testen kan fungere hvis du har en GPU som kan dekode AV1, men
denne ble ikke testet.
--enable-gnutls: Bruk dette
alternativet i stedet for --enable-openssl, hvis du vil
bruke GnuTLS i stedet for
OpenSSL for HTTPS
protokollen.
--disable-doc: Deaktiverer
bygging av HTML dokumentasjonen. Dette er kun nødvendig hvis
Doxygen-1.12.0 er installert og du ikke
ønsker å bygge html dokumentasjonen.
--enable-libpulse: Aktiverer
støtte for Pulseaudio for
lydutdata.
gcc tools/qt-faststart.c -o
tools/qt-faststart: Dette bygger qt-faststart programmet som
kan endre QuickTime formaterte filmer (.mov eller .mp4) slik at deklarasjon informasjonen er
plassert i begynnelsen av filen i stedet for slutten. Dette
gjør at filmfilen kan begynne å spille før hele filen har
blitt lastet ned.
Støtte for de fleste av avhengighetspakkene krever bruk av alternativer gitt til configure skriptet. Se utdataen fra ./configure --help for fullstendig informasjon om å aktivere avhengighetspakker.
|
er et kommandolinjeverktøy for å konvertere videofiler, nettverksstrømmer og inndata fra et TV-kort til flere videoformater |
|
|
er en veldig enkel og flyttbar mediespiller som
bruker |
|
|
samler informasjon fra multimediestrømmer og skriver den ut i et menneske og maskinlesbar måte |
|
|
flytter indeksfilen til forsiden av quicktime (mov/mp4) videoer |
|
|
er et bibliotek som inneholder FFmpeg kodeker (både koding og dekoding) |
|
|
er FFmpeg enhetshåndterings biblioteket |
|
|
er et bibliotek med filtre som kan endre video eller lyd mellom dekoder og koder (eller utdata) |
|
|
er et bibliotek som inneholder filformatene som håndterer (mux og demux kode for flere formater) brukt av ffplay som også tillater generering av lyd eller video strømmer |
|
|
er et bibliotek som inneholder funksjoner for omsampling av lyd og video. |
|
|
er FFmpeg verktøybibliotek |
|
|
er FFmpeg etterbehandlingsbibliotek |
|
|
er FFmpeg lydskaleringsbibliotek, den inneholder funksjoner for konvertering av lydeksempelformater |
|
|
er FFmpeg bildeskaleringsbibliotek |
mpv er en gratis mediespiller for kommandolinjen. Den støtter et bredt utvalg av mediefilformater, lyd og video kodeker og underteksttyper.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/mpv-player/mpv/archive/v0.38.0/mpv-0.38.0.tar.gz
Nedlasting MD5 sum: 7c1a400867e8930f037efc86c1f90a14
Nedlastingsstørrelse: 3.3 MB
Estimert diskplass som kreves: 28 MB
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4)
alsa-lib-1.2.12, FFmpeg-7.0.2, libass-0.17.3, libplacebo-7.349.0, Mesa-24.1.5, og PulseAudio-17.0
libjpeg-turbo-3.0.1, libva-2.22.0, libvdpau-1.5, Lua-5.2.4, uchardet-0.0.8, og Vulkan-Loader-1.3.294
libdvdcss-1.4.3, libdvdread-6.1.3, libdvdnav-6.1.1, og libbluray
pipewire-1.2.3, SDL2-2.30.6, JACK, og OpenAL
Legg til en løsning for å bygge med FFMpeg > 7.0
sed -i 's/AV_OPT_TYPE_CHANNEL_LAYOUT/AV_OPT_TYPE_CHLAYOUT/' filters/f_lavfi.c
Installer mpv ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D x11=enabled \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler inn i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme og
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha GTK+-3.24.43 installert
(for ikon hurtiglageret) og desktop-file-utils-0.27 (for
skrivebords hurtiglageret) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor && update-desktop-database -q
-D x11=enabled:
tillater kobling til X11 bibliotekene.
-D dvdnav=enabled: aktiverer
støtte for DVD avspilling.
-D cdda=enabled: aktiverer støtte
for CD lyd.
-D sdl2=enabled: aktiverer bruk
av SDL2 for lyd og vide utdata.
VLC er en mediespiller, streamer og enkoder. Den kan spille fra mange innganger, for eksempel filer, nettverksstrømmer, fangst enheter, skrivebord eller DVD, SVCD, VCD og lyd-CD. Den kan bruke det meste av lyd og videokodeker (MPEG 1/2/4, H264, VC-1, DivX, WMV, Vorbis, AC3, AAC, etc.), og den kan også konvertere til forskjellige formater og/eller sende strømmer gjennom nettverket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.videolan.org/vlc/3.0.21/vlc-3.0.21.tar.xz
Nedlasting MD5 sum: cde72f38943c685a1a39acc82da2339f
Nedlastingsstørrelse: 24 MB
Estimert diskplass som kreves: 746 MB
Estimert byggetid: 1.9 SBU (bruke parallellisme=4; med tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/vlc-3.0.21-taglib-1.patch
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/vlc-3.0.21-fedora_ffmpeg7-1.patch
alsa-lib-1.2.12, desktop-file-utils-0.27, FFmpeg-7.0.2, liba52-0.8.0, libgcrypt-1.11.0 libmad-0.15.1b, Lua-5.2.4, og et grafiske miljø
dbus-1.14.10, libidn-1.42, og libssh2-1.11.0
libarchive-3.7.4, libcddb-1.3.2, libdv-1.0.0, libdvdcss-1.4.3, libdvdread-6.1.3, libdvdnav-6.1.1, opencv-4.10.0, Samba-4.20.4, v4l-utils-1.28.1, libbluray, libdc1394, libnfs, libproxy, libraw1394, Live555, og VCDImager (krever libcdio-2.1.0)
libogg-1.3.5, Game Music Emu, libdvbpsi, libshout, libmatroska (krever libebml), libmodplug, Musepack, og sidplay-libs
FAAD2-2.11.1, FLAC-1.4.3, libaom-3.9.1, libass-0.17.3, libmpeg2-0.5.1, libpng-1.6.43, libva-2.22.0, libvorbis-1.3.7, Opus-1.5.2, Speex-1.2.1, libvpx-1.14.1, x264-20240812, aribb24, dav1d, Dirac, FluidLite, FluidSynth, libdca, libkate, libtheora, OpenMAX, Schroedinger, Shine, SoX, Tremor, Twolame, og Zapping VBI
AAlib-1.4rc5, Fontconfig-2.15.0, FreeType-2.13.3, FriBidi-1.0.15, libplacebo-7.349.0 (for øyeblikket ødelagt), librsvg-2.58.3, libvdpau-1.5, sdl12-compat-1.2.68, libcaca, og libmfx
PulseAudio-17.0, libsamplerate-0.2.2, spatialaudio, og JACK
FreeRDP-3.7.0, qt5-components-5.15.14 (kreves for det grafiske brukergrensesnittet), libtar, libvncclient, og LIRC
GnuTLS-3.8.7.1, libnotify-0.8.3, libxml2-2.13.3, Protobuf-27.3, taglib-2.0.1, xdg-utils-1.2.1 (kjøretid), AtmoLight, libmicrodns, og Srt
Først legger du til rettelser for problemer med taglib-2.0 og ffmpeg-7 og senere:
patch -Np1 -i ../vlc-3.0.21-taglib-1.patch && patch -Np1 -i ../vlc-3.0.21-fedora_ffmpeg7-1.patch
Hvis du ønsker å legge til støtte for lua utvidelser, fremtving bruk av lua52:
export LUAC=/usr/bin/luac5.2 && export LUA_LIBS="$(pkg-config --libs lua52)" && export CPPFLAGS="$(pkg-config --cflags lua52)"
Installer VLC ved å kjøre følgende kommandoer:
BUILDCC=gcc ./configure --prefix=/usr --disable-libplacebo && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make docdir=/usr/share/doc/vlc-3.0.21 install
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler inn i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme og
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha GTK+-3.24.43 installert
(for ikon hurtiglageret) og desktop-file-utils-0.27 (for
skrivebords hurtiglageret) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor && update-desktop-database -q
--disable-libplacebo:
Denne bryteren er nødvendig for å deaktive støtte for bruk av
libplacebo som en gjengivelsespipeline fordi VLC er
inkompatibel med den nyeste versjonen av libplacebo.
--disable-vpx: Bruk denne
bryteren for å deaktivere libvpx.
--disable-mad: Bruk denne
bryteren hvis du ikke har libmad installert.
--disable-avcodec
--disable-swscale: Bruk denne bryteren hvis du ikke
har FFmpeg installert.
--disable-a52: Bruk denne
bryteren hvis du ikke har liba52 installert.
--disable-xcb: Bruk denne
bryteren hvis du ikke har X Window
System installert.
--disable-alsa: Bruk denne
bryteren hvis du ikke har ALSA installert.
--disable-libgcrypt: Bruk denne
bryteren hvis du ikke har libgcrypt installert.
--disable-sftp: Standard er å
bygge sftp modulen hvis libssh2-1.11.0 er installert. Bruk
denne bryteren hvis du ikke ønsker å bygge denne modulen.
Det er mange alternativer til VLC sin configure kommando. Undersøk configure --help utdata for en fullstendig liste.
|
er et skript for å kjøre VLC med dummy grensesnittet |
|
|
er et skript for å kjøre VLC med ncurses grensesnittet |
|
|
er et skript for å kjøre VLC med Qt grensesnittet |
|
|
er et skript for å kjøre VLC med en kommandolinje grensesnitt |
|
|
er et skript for å kjøre VLC med skinn grensesnittet |
|
|
er VLC mediaspiller |
|
|
er en innpakning for å gi slipp på privilegier med VLC |
xine Brukergrensesnitt pakken inneholder en multimediespiller. Den spiller av CDer, DVDer og VCDer. Den dekoder også multimediefiler som AVI, MOV, WMV, MPEG og MP3 fra lokale diskstasjoner, og viser multimedia streamet over Internett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Selv om denne versjonen av xine-ui fungerer med de fleste filer, er den ikke i stand til å åpne krypterte (innholdskrypterte) DVDer med gjeldende versjon av libdvdcss.
Nedlasting (HTTP): https://downloads.sourceforge.net/xine/xine-ui-0.99.14.tar.xz
Nedlasting MD5 sum: 86a4db9050405a91fcc33b7ad85274f5
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 23 MB
Estimert byggetid: 0.2 SBU
xine-lib-1.2.13 og shared-mime-info-2.4
cURL-8.9.1, AAlib-1.4rc5, LIRC, og libcaca
Installer xine Brukergrensesnitt ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make docsdir=/usr/share/doc/xine-ui-0.99.14 install
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler inn i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme og
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha GTK+-3.24.43 installert
(for ikon hurtiglageret) og desktop-file-utils-0.27 (for
skrivebords hurtiglageret) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor && update-desktop-database -q
docsdir=/usr/share/doc/xine-ui-0.99.14:
Denne parameteren gjør at Xine
UI dokumentasjonen blir installert i den versjonerte
mappen /usr/share/doc/xine-ui-0.99.14, i stedet
for standard /usr/share/doc/xine-ui.
Ovennevnte fil opprettes og vedlikeholdes gjennom
xine oppsett
dialogboksen. Dokumentasjonen for
konfigurasjonsinnstillinger er plassert på /usr/share/doc/xine-ui-0.99.14/README.config_en.
Hvis du har et DVB TV-kort, kan du se på TV med kommandoen xine dvb:// og bytte kanal med rullehjulet på musen din.
|
er en ASCII art videospiller som bruker AAlib som grensesnitt for xine Libraries |
|
|
er en farge ASCII kunst videospiller som bruker CACA som grensesnitt for xine Libraries |
|
|
er et rammebuffergrensesnitt til xine Libraries |
|
|
er en multimediaspiller designet for å spille av MPEG-strømmer (lyd og video), MPEG elementære strømmer (MP3), MPEG transportstrømmer, Ogg filer, AVI-filer, ASF-filer, noen Quicktime-filer, VCD-er og DVD-er |
|
|
produserer en kortfattet systembeskrivelse og veileder deg gjennom prosessen med å rapportere en feil |
|
|
tester xine videospiller installasjonen for vanlige problemer. Den tester operativsysteminnstillingene, installasjon av plugins, CD/DVD-stasjonsinnstillinger og videostøtte parametere |
|
|
er et verktøy for å koble til en xine fjernkontroll server |
Dette kapittelet inneholder informasjon om CD/DVD skriveverktøy i Linux.
Ytterligere informasjonskilder inkluderer:
Cdrdao pakken inneholder CD opptaksverktøy. Disse er nyttige for å brenne en CD i disk-at-once modus.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/cdrdao/cdrdao-1.2.4.tar.bz2
Nedlasting MD5 sum: 2ada887d1b30b440867b8df0d3023cf7
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 39 MB
Estimert byggetid: 0.1 SBU
libao-1.2.0, libvorbis-1.3.7, libmad-0.15.1b, og LAME-3.100 (påkrevd for å bygge toc2mp3)
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/cdrdao
Installer Cdrdao ved å kjøre følgende kommandoer:
./configure --prefix=/usr --mandir=/usr/share/man && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -v -m755 -d /usr/share/doc/cdrdao-1.2.4 && install -v -m644 README /usr/share/doc/cdrdao-1.2.4
--mandir=/usr/share/man: Installer manualsider i /usr/share/man instead of /usr/man.
|
tar opp lyd eller data CD-Rer i disk-at-once modus (DAO). basert på en tekstlig beskrivelse av CD innholdet |
|
|
konverterer CUE til TOC format for lyd CDer |
|
|
konverterer en Cdrdao TOC fil til en cddb fil og skriver den ut til stdout |
|
|
konverterer TOC til CUE format for lyd CDer |
|
|
konverterer et lyd-CD diskbilde ( |
Cdrtools pakken inneholder CD opptaksverktøy. Disse er nyttige for å lese, lage eller skrive (brenne) CDer, DVDer og Blu-ray plater.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/cdrtools/cdrtools-3.02a09.tar.bz2
Nedlasting MD5 sum: 1e224a6adbbe4ad40047b9fddbb0e60c
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 32 MB
Estimert byggetid: 0.7 SBU
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Cdrtools
Denne pakken støtter ikke parallellbygging.
Installer Cdrtools ved å kjøre følgende kommandoer:
sed -i 's|/opt/schily|/usr|g' DEFAULTS/Defaults.linux &&
sed -i 's|DEFINSGRP=.*|DEFINSGRP=root|' DEFAULTS/Defaults.linux &&
sed -i 's|INSDIR=\s*sbin|INSDIR=bin|' rscsi/Makefile &&
export GMAKE_NOWARN=true &&
export CFLAGS="$CFLAGS -std=gnu89 -fno-strict-aliasing" &&
make -j1 INS_BASE=/usr \
DEFINSUSR=root \
DEFINSGRP=root \
VERSION_OS="LinuxFromScratch"
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
GMAKE_NOWARN=true &&
make INS_BASE=/usr \
DEFINSUSR=root \
DEFINSGRP=root \
MANSUFF_LIB=3cdr \
install &&
install -v -m755 -d /usr/share/doc/cdrtools-3.02a09 &&
install -v -m644 README.* READMEs/* ABOUT doc/*.ps \
/usr/share/doc/cdrtools-3.02a09
export GMAKE_NOWARN=true: Denne variabelen unngår en advarsel når du bruker GNU make.
INS_BASE=/usr: Denne
parameteren flytter installasjonsmappen fra /opt/schily til /usr.
DEFINSUSR=root
DEFINSGRP=root: Disse parameterne installer alle
programmer med root:root eierskap i stedet for standard
bin:bin.
MANSUFF_LIB=3cdr:
Denne parameteren forhindrer Cdrtools fra å overskrive viktige sider
som allerede er installert av LFS. De installerte mansidene i
seksjon 3 vil ha et suffiks 3cdr
og kan vises ved hjelp av man
3cdr <manpage>.
|
oppdaterer fastvaren på en BTC DRW1008 DVD+/-RW opptakere. Vær forsiktig med dette programmet |
|
|
konverterer Compact Disc lyd til WAV lydfiler |
|
|
tar opp lyd eller data på CDer |
|
|
er et diagnoseprogram som brukes til å dumpe en ISO-9660 enhet eller fil i hex |
|
|
brukes til å vise kommandolinjeparametrene som brukes til å lage et ISO-9660 bilde |
|
|
er et diagnoseprogram som brukes til å dumpe en enhet eller fil basert på ISO-9660 |
|
|
brukes til å analysere eller liste et ISO-9660 bilde |
|
|
brukes til å bekrefte et ISO-9660 bilde |
|
|
er en symbolsk kobling til mkisofs brukt til å lage ISO-9660/HFS hybrid filsystembilder |
|
|
brukes til å lage ISO-9660/JOLIET/HFS filsystembilder, eventuelt med Rock Ridge attributter |
|
|
leser eller skriver CDer |
|
|
er en ekstern SCSI behandler |
|
|
brukes til å sjekke og verifisere det binære
applikasjonsgrensesnittet til |
|
|
er et svært flyttbart SCSI transportbibliotek |
dvd+rw-toolspakken inneholder flere verktøy for å mestre DVD mediet, både +RW/+R og -R[W]. hovedverktøyet er growisofs som gir en vei til både å legge ned og utvikle et ISO9660 filsystem på (i tillegg til å brenne et vilkårlig forhåndsmastret bilde til) alle støttede DVD medier. Dette er nyttig for å lage en ny DVD eller legge til en eksisterende bilde på en delvis brent DVD.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): http://fy.chalmers.se/~appro/linux/DVD+RW/tools/dvd+rw-tools-7.1.tar.gz
Nedlasting MD5 sum: 8acb3c885c87f6838704a0025e435871
Nedlastingsstørrelse: 138 KB
Estimert diskplass som kreves: 1.7 MB
Estimert byggetid: mindre enn 0.1 SBU
Cdrtools-3.02a09 (kjøretid)
Installer dvd+rw-tools ved å kjøre følgende kommandoer:
sed -i '/stat.h/a #include <sys/sysmacros.h>' growisofs.c && sed -i '/stdlib/a #include <limits.h>' transport.hxx && make all rpl8 btcflash
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make prefix=/usr install &&
install -v -m644 -D index.html \
/usr/share/doc/dvd+rw-tools-7.1/index.html
sed -i '/stdlib/a #include
<limits.h>' ...: Denne sed inkluderer
limits.h, en av
kjernedeklarasjonene. Dette er nødvendig på grunn av en
endring i 2.6.23 kjernedeklarasjonene.
make all rpl8 btcflash: Denne kommandoen bruker tilleggsmål slik at alle verktøyene bygges.
libburn er et bibliotek for å skrive forhåndsformatert data på optiske medier: CD, DVD og BD (Blu-Ray).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.libburnia-project.org/releases/libburn-1.5.6.tar.gz
Nedlasting MD5 sum: cf9852f3b71dbc2b6c9e76f6eb0474f0
Nedlastingsstørrelse: 972 KB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: 0.1 SBU
Doxygen-1.12.0 (for å generere HTML dokumentasjon)
Installer libburn ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis du har installert Doxygen og ønsker å generere HTML dokumentasjonen, utfør følgende kommando:
doxygen doc/doxygen.conf
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har bygget HTML dokumentasjonen, installer den ved å
kjøre følgende kommandoer som root bruker:
install -v -dm755 /usr/share/doc/libburn-1.5.6 && install -v -m644 doc/html/* /usr/share/doc/libburn-1.5.6
libisoburn er en grenseflate for libburn og libisofs bibliotekene, som muliggjør opprettelse og utvidelse av ISO-9660 filsystemer på alle CD/DVD/BD medier som støttes av libburn. Dette inkluderer medier som DVD+RW, som ikke støtter administrasjon av flere økter på medienivå, og til og med vanlige diskfiler eller blokkere enheter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.libburnia-project.org/releases/libisoburn-1.5.6.tar.gz
Nedlasting MD5 sum: efb19f7f718f0791f717b2c6094995ec
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 20 MB (med Tk og HTML dokumentasjon)
Estimert byggetid: 0.2 SBU (med Tk og HTML dokumentasjon)
libburn-1.5.6 og libisofs-1.5.6
Doxygen-1.12.0 (for å generere HTML dokumentasjonen), Tk-8.6.14 (for xorriso-tcltk), og libjte
Installer libisoburn ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--enable-pkg-check-modules &&
make
Hvis du har installert Doxygen og ønsker å generere HTML dokumentasjonen, utfør følgende kommando:
doxygen doc/doxygen.conf
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har bygget HTML dokumentasjonen, installer den ved å
kjøre følgende kommandoer som root bruker:
install -v -dm755 /usr/share/doc/libisoburn-1.5.6 && install -v -m644 doc/html/* /usr/share/doc/libisoburn-1.5.6
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-pkg-check-modules:
Denne bryteren forteller configure skriptet å bruke
pkg-config til å sjekke for
libburn og libisofs bilioteker.
|
er en symbolsk kobling til xorriso som kopierer filer fra et ISO bilde til et diskfilsystem |
|
|
er en symbolsk kobling til xorriso som gir et brukergrensesnitt av typen cdrecord |
|
|
er et program for å lage, laste, manipulere, lese og skrive ISO 9660 filsystembilder med Rock Ridge utvidelser |
|
|
er et program for å sjekke en USB- eller minnekortenhet for å se om den er egnet for bildekopiering |
|
|
er en symbolsk kobling til xorriso som gir et brukergrensesnitt av typen mkisofs |
|
|
er et grensesnitt som opererer xorriso i dialogmodus |
|
|
inneholder libisoburn API funksjoner |
libisofs er et bibliotek for å lage et ISO-9660 filsystem med utvidelser som RockRidge eller Joliet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.libburnia-project.org/releases/libisofs-1.5.6.tar.gz
Nedlasting MD5 sum: 9f996b317f622802f12d28d27891709f
Nedlastingsstørrelse: 858 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: 0.1 SBU
Doxygen-1.12.0 (for å generere HTML dokumentasjon) og libjte
Installer libisofs ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis du har installert Doxygen og ønsker å generere HTML dokumentasjonen, utfør følgende kommando:
doxygen doc/doxygen.conf
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Hvis du har bygget HTML dokumentasjonen, installer den ved å
kjøre følgende kommandoer som root bruker:
install -v -dm755 /usr/share/doc/libisofs-1.5.6 && install -v -m644 doc/html/* /usr/share/doc/libisofs-1.5.6
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Dette kapittelet inneholder styringssystemer for utskriftskø og ghostscript applikasjoner for å gjengi PostScript for visning på terminaler eller papir.
Common Unix Printing System (CUPS) er en utskriftskø og tilhørende verktøy. Den er basert på "Internet Printing Protocol" og gir utskriftstjenester til de fleste PostScript og rasterskrivere.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/cups/releases/download/v2.4.10/cups-2.4.10-source.tar.gz
Nedlasting MD5 sum: 0e8b1227340e4aeca22b9fbbcd6ca5cd
Nedlastingsstørrelse: 7.8 MB
Estimert diskplass som kreves: 60 MB (Legg til 49 MB for tester)
Estimert byggetid: 0.4 SBU (Legg til 1.0 SBU for tester)
colord-1.4.7, dbus-1.14.10, libusb-1.0.27, Linux-PAM-1.6.1, og xdg-utils-1.2.1
Avahi-0.8, libpaper-2.2.5, MIT Kerberos V5-1.21.3, PHP-8.3.10, og Python2
Gutenprint-5.3.4 og hplip (HP skrivere)
Det pleide å være en konflikt mellom Cups libusb bakstykke og usblp kjernedriveren. Dette er ikke lenger tilfelle, og Cups vil fungere med begge disse aktivert.
Hvis du vil bruke kjernens usblp driver (for eksempel hvis du ønsker å bruke escputil fra Gutenprint-5.3.4) aktiver følgende alternativer i kjernekonfigurasjonen din og rekompilere kjernen:
Device Drivers ---> [*] USB support ---> [USB_SUPPORT] <*/M> USB Printer support [USB_PRINTER]
Hvis du har en parallellskriver, aktiver følgende alternativer i din kjernekonfigurasjon og kompiler kjernen på nytt:
Device Drivers ---> <*/M> Parallel port support ---> [PARPORT] <*/M> PC-style hardware [PARPORT_PC] Character devices ---> <*/M> Parallel printer support [PRINTER]
Du må legge til en lp bruker,
siden Cups vil opprette noen
filer som eies av denne brukeren. (lp brukeren er standard som brukes av
Cups, men kan bli endret til
en annen bruker ved å sende en parameter til configure skriptet.) Bruk
følgende kommando som root
bruker:
useradd -c "Print Service User" -d /var/spool/cups -g lp -s /bin/false -u 9 lp
Du trenger også en dedikert gruppe som vil inneholde brukere
som har tillatelse til å gjøre Cups administrative oppgaver. Legg til
gruppen ved å kjøre følgende kommando som root bruker:
groupadd -g 19 lpadmin
Hvis du vil legge til en bruker i Cups administrativ gruppe, kjør følgende
kommando som root bruker:
usermod -a -G lpadmin <username>
Hvis du ikke installerte xdg-utils-1.2.1, bruk følgende sed for å endre standard nettleser som skal brukes for å få tilgang til Cups nettgrensesnitt:
sed -i 's#@CUPS_HTMLVIEW@#firefox#' desktop/cups.desktop.in
Erstatt firefox med nettleseren du ønsker å bruke.
Bygg Cups ved å kjøre følgende kommandoer:
./configure --libdir=/usr/lib \
--with-rundir=/run/cups \
--with-system-groups=lpadmin \
--with-docdir=/usr/share/cups/doc-2.4.10 &&
make
For å teste resultatene, kjør: LC_ALL=C make -k check. En allerede aktiv grafisk sesjon med bussadresse er nødvendig for å kjøre testene. Pass på at ikke en annen forekomst av Cups kjører, ellers vil minst 4 tester mislykkes med "address in use".
Nå, som root bruker:
make install && ln -svnf ../cups/doc-2.4.10 /usr/share/doc/cups-2.4.10
Opprett et grunnleggende Cups klientkonfigurasjonsfil ved å kjøre
følgende kommando som root
bruker:
echo "ServerName /run/cups/cups.sock" > /etc/cups/client.conf
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme. For
å utføre oppdateringen må du ha GTK+-3.24.43 installert og
utstede følgende kommando som root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor
--with-rundir=/run/cups: This
switch prevents the package from referring to the deprecated
/var/run directory.
--with-system-groups=lpadmin:
Denne bryteren sikrer at bare lpadmin vil bli brukt som Cups administrative gruppe.
--disable-libusb: Bruk denne
bryteren hvis du har installert libusb-1.0.27, men ønsker
å bruke kjernens usblp driver.
--enable-libpaper: Bruk denne
bryteren hvis du har installert libpaper og ønsker å bruke den med
Cups.
Normalt settes skrivere opp via en nettleser. Cups serveren vil normalt koble til via url http://localhost:631. Derfra skrivere, utskrifts jobber, og serverkonfigurasjonen kan settes opp og administreres. Ekstern systemadministrasjon kan også settes opp. Konfigurasjon kan også gjøres fra kommandolinjen via lpadmin, lpoptions, og lpstat kommandoene.
Konfigurasjon av Cups er avhengig av skrivertypen og kan være kompleks. Vanligvis er PostScript skrivere enklere. For detaljerte instruksjoner om konfigurasjon og bruk av Cups, se https://www.cups.org/documentation.html.
For ikke-PostScript skrivere for å skrive ut med Cups, må du installere ghostscript-10.03.1 for å konvertere PostScript til rasterbilder og en driver (f.eks. fra Gutenprint-5.3.4) for å konvertere det resulterende rasterbildet til en form som skriveren forstår. Foomatic drivere bruker ghostscript-10.03.1 for å konvertere PostScript til en utskrivbar form direkte, men dette anses som suboptimalt av Cups utviklere.
Hvis CUPS er bygget med Linux PAM støtte, må du opprette en PAM konfigurasjonsfil for å få den til å fungere riktig med BLFS.
Utfør følgende kommando som root bruker for å opprette
konfigurasjonensfilen for Linux
PAM:
cat > /etc/pam.d/cups << "EOF"
# Begin /etc/pam.d/cups
auth include system-auth
account include system-account
session include system-session
# End /etc/pam.d/cups
EOF
|
kansellerer eksisterende utskriftsjobber fra utskriftskøene |
|
|
aksepere jobber sendt til en destinasjon |
|
|
er et Cups programkonfigurasjonsverktøy |
|
|
oppdaterer eller spør cupsd.conf filen for en server |
|
|
er planleggeren for Common Unix Printing System |
|
|
stopper skrivere og klasser |
|
|
starter skrivere og klasser |
|
|
er et grensesnitt til Cups filter undersystem som lar deg konvertere en fil til et bestemt format |
|
|
avviser jobber sendt til en destinasjon |
|
|
tester samsvar med PPD filer |
|
|
er en IPP Everywhere skriver for CUPS |
|
|
finner Internett utskriftsprotokoll Skrivere |
|
|
sender IPP forespørsler til spesifisert URI og tester og/eller viser resultatene |
|
|
sender filer til utskrift eller endrer en ventende jobb |
|
|
konfigurerer skriver og klasse køer levert av Cups |
|
|
gir begrenset kontroll over skriver og klasse køer levert av Cups |
|
|
viser tilgjengelige enheter eller drivere som er kjent for Cups serveren |
|
|
flytter den angitte jobben til en ny destinasjon |
|
|
viser eller angir skriveralternativer og standardinnstillinger |
|
|
viser gjeldende utskriftskøstatus på den navngitte skriveren |
|
|
sender filer til utskrift |
|
|
avbryter utskriftsjobber som har stått i kø for utskrift |
|
|
viser statusinformasjon om gjeldende klasser, jobber, og skrivere |
|
|
kompilerer PPDC kildefiler til en eller flere PPD filer |
|
|
leser en driverinformasjonsfil og lager et HTML sammendragsside som viser alle driverne i en fil og støttede alternativer |
|
|
importerer en eller flere PPD filer til en PPD kompilatorkildefil |
|
|
slår sammen to eller flere PPD filer til en enkel flerspråklig PPD fil |
|
|
trekker ut UI strenger fra PPDC kildefiler og oppdaterer enten en GNU gettext eller Mac OS X strengformat meldingskatalog kildefil for oversettelse |
|
|
inneholder Cups API funksjoner |
cups-browsed nissen er brukt for å bla gjennom nettverket for eksterne CUPS køer og IPP nettverksskrivere og automatisk opprette lokale køer som peker til dem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/cups-browsed/releases/download/2.0.1/cups-browsed-2.0.1.tar.xz
Nedlasting MD5 sum: b6b5bad9b3bb52afb687702e0b3f6d02
Nedlastingsstørrelse: 420 KB
Estimert diskplass som kreves: 6.1 MB
Estimert byggetid: mindre enn 0.1 SBU (Bruker parallellisme=4)
Avahi-0.8, libcupsfilters-2.0.0 og libppd-2.0.0
Installer cups-browsed ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--with-cups-rundir=/run/cups \
--without-rcdir \
--disable-static \
--docdir=/usr/share/doc/cups-browsed-2.0.1 &&
make
Denne pakken kommer ikke med en funksjonell testpakke.
Nå, som root bruker:
make install
Installer systemd enheten ved å kjøre følgende kommando som
root bruker:
install -v -m644 daemon/cups-browsed.service /lib/systemd/system/cups-browsed.service
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-cups-rundir=/run/cups:
Definerer mappen som inneholder forbigående utskriftsdata.
Standaren /var/run/cups er
foreldet.
--without-rcdir:
Denne bryteren deaktiverer installasjon av det medfølgende
oppstartsskriptet som ikke er kompatibelt med BLFS.
CUPS Filters pakke er bare nødvendig for å tilpasse libcupsfilters-2.0.0 og libppd-2.0.0 filterfunksjoner for cups-2.x. Det skal ikke være nødvendig for cups-3.x.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/cups-filters/releases/download/2.0.1/cups-filters-2.0.1.tar.xz
Nedlasting MD5 sum: b40d0f135af414666e1c3917983a1bb3
Nedlastingsstørrelse: 440 KB
Estimert diskplass som kreves: 9.0 MB
Estimert byggetid: mindre enn 0.1 SBU (Bruker parallellisme=4)
libcupsfilters-2.0.0 og libppd-2.0.0
cups-browsed-2.0.1 (hvis du trenger nettverk Oppdagelsesmuligheter)
Installer CUPS Filtre ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/cups-filters-2.0.1 &&
make
Denne pakken kommer ikke med en funksjonell testpakke.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
Ghostscript er en allsidig prosessor for PostScript data med muligheten til å gjengi PostScript til forskjellige mål. Det er en obligatorisk del av utskriftsbunken for cups.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10031/ghostscript-10.03.1.tar.xz
Nedlasting MD5 sum: 248294abc5aee3ca8161012853d73b52
Nedlastingsstørrelse: 65 MB
Estimert diskplass som kreves: 291 MB (with fonts and libgs.so)
Estimert byggetid: 1.2 SBU (Using parallelism=4; with libgs.so)
Hvis du ønsker det, kan du laste ned flere fonter.
Standard Fonter
Nedlasting (HTTP): https://downloads.sourceforge.net/gs-fonts/ghostscript-fonts-std-8.11.tar.gz
Nedlasting MD5 sum: 6865682b095f8c4500c54b285ff05ef6
Nedlastingsstørrelse: 3.7 MB
Andre Fonter
Nedlasting (HTTP): https://downloads.sourceforge.net/gs-fonts/gnu-gs-fonts-other-6.0.tar.gz
Nedlasting MD5 sum: 33457d3f37de7ef03d2eea05a9e6aa4f
Nedlastingsstørrelse: 796 KB
Cups-2.4.10 (nødvendig for å bygge “cups” enhetens bakstykke, som er nødvendig av cups-filters), Fontconfig-2.15.0 (nødvendig hvis du installerer noen foreslåtte skriftfonter), FreeType-2.13.3, Little CMS-2.16, libjpeg-turbo-3.0.1, libpng-1.6.43, libtiff-4.6.0, og OpenJPEG-2.5.2
Cairo-1.18.0, GTK+-3.24.43, libidn-1.42, libpaper-2.2.5, libwebp-1.4.0, og et grafiske miljø
Ghostscript byggesystemet er ikke brukervennlig. For å bruke systemkopier av forskjellig grafikk biblioteker, må du gjøre det ved å bruke ukonvensjonelle metoder.
Ghostscript inkluderer (gamle) kopier av flere biblioteker. Noen av disse ser ut til å ha blitt oppdatert for å fikse kjente sårbarheter, men andre av disse kopiene er mindre godt vedlikeholdt. For å sikre at eventuelle fremtidige rettelser blir brukt i hele systemet, anbefales det at du først installerer de utgitte versjonene av disse bibliotekene og deretter konfigurere Ghostscript til å linke til dem.
Hvis du har installert de anbefalte avhengighetene på systemet ditt, fjern kopiene av freetype, lcms2, libjpeg, libpng, og openjpeg:
rm -rf freetype lcms2mt jpeg libpng openjpeg
Fiks bygging av denne pakken med gcc-14 og libidn:
sed -e '186 s/NewPassword =/*NewPassword =/' \
-e '187 s/NewLen =/*NewLen =/' \
-i pdf/pdf_sec.c
Kompilere Ghostscript:
rm -rf zlib &&
./configure --prefix=/usr \
--disable-compile-inits \
--with-system-libtiff &&
make
Det delte biblioteket avhenger av GTK+-3.24.43. Den brukes kun av eksterne programmer som asymptote-2.91, dvisvgm-3.4, og ImageMagick-7.1.1-36.
For å kompilere det delte biblioteket libgs.so, kjør følgende tilleggskommando
som en uprivilegert bruker:
make so
Denne pakken kommer ikke med en testpakke. Et sett med eksempelfiler kan brukes til testing, men det er kun mulig etter installasjonen av pakken.
Nå, som root bruker:
make install
Hvis du vil ha det delte biblioteket også:
make soinstall && install -v -m644 base/*.h /usr/include/ghostscript && ln -sfvn ghostscript /usr/include/ps
Gjør nå dokumentasjonen tilgjengelig fra et standard sted:
mv -v /usr/share/doc/ghostscript/10.03.1 /usr/share/doc/ghostscript-10.03.1 && rmdir /usr/share/doc/ghostscript && cp -r examples/ -T /usr/share/ghostscript/10.03.1/examples
Hvis du har lastet ned fontene, pakk dem ut til /usr/share/ghostscript og sikre at
eierskapet til filene er root: root.
tar -xvf ../ghostscript-fonts-std-8.11.tar.gz -C /usr/share/ghostscript --no-same-owner && tar -xvf ../gnu-gs-fonts-other-6.0.tar.gz -C /usr/share/ghostscript --no-same-owner && fc-cache -v /usr/share/ghostscript/fonts/
Du kan nå teste gjengivelsen av ulike postscript og pdf filer
fra /usr/share/ghostscript/10.03.1/examples .
For å gjøre dette, kjør følgende kommando (i en X
Windows-skjerm):
gs -q -dBATCH /usr/share/ghostscript/10.03.1/examples/tiger.eps
rm -rf zlib : zlib ble installert som en del av LFS.
--disable-compile-inits: Dette
alternativet gjør gs og libgs.so litt mindre.
--with-system-libtiff: Fjern
dette alternativet hvis du ikke har installert libtiff-4.6.0.
install -v -m644 base/*.h... : Noen pakker (ImageMagick er en) trenger Ghostscript grensesnitt deklarasjonene på plass for å koble til det delte biblioteket. Disse kommandoene installerer deklarasjonene.
ln -sfvn ghostscript /usr/include/ps: Noen pakker forventer å finne grensesnitt deklarasjonene på et alternativt sted.
mv -v /usr/share/doc/ghostscript/10.03.1 /usr/share/doc/ghostscript-10.03.1: Dette flytter dokumentasjon til hvor den forventes å bli funnet.
--disable-cups: Dette
alternativet vil spare en liten mengde plass ved ikke å koble
gs og
libgs.so til Cups-2.4.10 bibliotekene
hvis du har installert disse.
|
er en tolk for Adobe Systems' PostScript(tm) og Portable Document Format (PDF) |
|
|
gir Ghostscript funksjonalitet til andre programmer, som f.eks GSView, ImageMagick, og libspectre |
Ghostscript gir mange forskjellige skript som brukes til å konvertere PostScript, PDF og andre formater. Vennligst se HTML dokumentasjonen eller mansidene for informasjon om kapasiteter gitt.
Gutenprint (tidligere Gimp-Print) pakken inneholder høye kvalitetsdrivere for mange merker og modeller av skrivere for bruk med Cups-2.4.10. Se en liste over støttede skrivere på https://gutenprint.sourceforge.net/p_Supported_Printers.php.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/gimp-print/gutenprint-5.3.4.tar.xz
Nedlasting MD5 sum: dc208cfb873f13a93439185c15aa6f81
Nedlastingsstørrelse: 5.1 MB
Estimert diskplass som kreves: 59 MB (uten tester)
Estimert byggetid: 0.4 SBU (uten tester)
To familier med DyeSub fotoskrivere krever hvert et annet bibliotek ved kjøretid. Med mindre du har en av disse enhetene, vil du ikke ha disse bibliotekene.
For Sinfonia S6145 og Ciaat Brava 21, libS6145ImageReProcess, se Peachy Photos (Sinfonia) for instruksjoner om hvordan du bygger og tester disse.
For Mitsubishi D70 familien og lignende Kodak 305, libMitsuD70ImageReProcess, se Peachy Photos (Mitsubishi CP-D70) for instruksjoner om hvordan bygge og teste disse.
ImageMagick-7.1.1-36, texlive-20240312 (eller install-tl-unx), Doxygen-1.12.0, og DocBook-utils-0.6.14
Hvis du har tenkt å bruke escputil med en USB tilkoblet Epson Stylus skriver for kommandoer som f.eks --ink-level som trenger å få tilgang til råenheten, må du aktivere kjernens usblp driver. Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjernen på nytt:
Device Drivers ---> [*] USB support ---> [USB_SUPPORT] <*/M> USB Printer support [USB_PRINTER]
Installer Gutenprint ved å kjøre følgende kommandoer:
sed -i 's|$(PACKAGE)/doc|doc/$(PACKAGE)-$(VERSION)|' \
{,doc/,doc/developer/}Makefile.in &&
./configure --prefix=/usr \
--disable-static \
--without-gimp2 \
--without-gimp2-as-gutenprint &&
make
For å teste resultatene, kjør: make check. Testene tar veldig lang tid og bruker mye diskplass. Når sist testet (versjon 5.2.15 i juni 2019) dette trengte 75 SBU og 13,5 GB for å fullføre testene (en test, rastertogutenprint mislyktes fordi CUPS ppds er for en tidligere versjon. Kanskje genppds bør kjøres før testene). Merk at testene bare brukte en CPU.
Nå, som root bruker:
make install &&
install -v -m755 -d /usr/share/doc/gutenprint-5.3.4/api/gutenprint{,ui2} &&
install -v -m644 doc/gutenprint/html/* \
/usr/share/doc/gutenprint-5.3.4/api/gutenprint &&
install -v -m644 doc/gutenprintui2/html/* \
/usr/share/doc/gutenprint-5.3.4/api/gutenprintui2
sed -i '...'
...Makefile.in: Denne kommandoen brukes slik
at pakkedokumentasjonen er installert i konvensjonelle
/usr/share/doc mappestruktur i
stedet for /usr/share/gutenprint/doc.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--without-gimp2:
Denne bryteren deaktiverer støtte for GIMP fordi den ikke har
blitt oppdatert for å støtte GIMP3 ennå.
For at CUPS skal se
nyinstallerte skrivedrivere, må den startes på nytt (som
root bruker):
systemctl restart cups
Pek deretter nettleseren til http://localhost:631/ for å legge til en ny skriver til CUPS.
|
kalibrerer fargeutskriften til skrivere ved hjelp av Gutenprint, CUPS eller ESP Print Pro drivere |
|
|
genererer Gutenprint PPD filer for bruk med CUPS |
|
|
regenererer Gutenprint PPD filene som brukes av CUPS |
|
|
er et kommandolinjeverktøy for å utføre diverse vedlikeholds oppgaver på Epson Stylus blekkskrivere |
|
|
er et testprogram for å lære å bruke libgutenprint |
libcupsfilters biblioteket inneholder filterfunksjoner for dataformatkonverteringsoppgavene som trengs i Skriverapplikasjoner. Den inneholder også flere API funksjoner for å utvikle skriverdrivere/skriverapplikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/libcupsfilters/releases/download/2.0.0/libcupsfilters-2.0.0.tar.xz
Nedlasting MD5 sum: 267e569145bd20615fa18ae65ea6f870
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 38 MB (med tester)
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4; med tester)
Cups-2.4.10, GLib-2.80.4, ghostscript-10.03.1 eller mupdf-1.24.8, Little CMS-2.16, Poppler-24.08.0, og Qpdf-11.9.1
Dejavu fonts (byggingen mislykkes hvis de ikke er installert, selv om de bare er nødvendige for testene), libexif-0.6.24, libjpeg-turbo-3.0.1, libpng-1.6.43, og libtiff-4.6.0
Installer libcupsfilters ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libcupsfilters-2.0.0 &&
make
For å teste resultatene, utsted make check. DejaVu fonter trengs for testene.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-test-font-path=: Hvis du ønsker
å kjøre testene, men du ikke har standard VALUE/usr/share/fonts/dejavu/DejaVuSans.ttf
fonten installert, bruk denne bryteren til å spesifisere hvor
DejaVuSans.ttf (eller kanskje
en annen tekst TTF-font - selv om dette ikke er testet) er
lokalisert.
libppd biblioteket inneholder funksjoner for håndtering av eldre skrivere ved hjelp av PPD beskrivelsesfiler.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/libppd/releases/download/2.0.0/libppd-2.0.0.tar.xz
Nedlasting MD5 sum: ab889cbcdaa23689d9a425769f208da9
Nedlastingsstørrelse: 567 KB
Estimert diskplass som kreves: 13 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (Bruker parallellisme=4; med tester)
Installer libppd ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--with-cups-rundir=/run/cups \
--enable-ppdc-utils \
--docdir=/usr/share/doc/libppd-2.0.0 &&
make
For å teste resultatene, utsted make check.
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--with-cups-rundir=/run/cups:
Definerer mappen som inneholder forbigående utskriftsdata.
Standar /var/run/cups er
foreldet.
--enable-ppdc-utils:
Lar byggingsverktøy manipulere .ppd filer.
|
kompilerer PPDC kildefiler til én eller flere PPD filer |
|
|
leser en driverinformasjonsfil og lager et HTML sammendragside som viser alle driverne i en fil og støttede alternativer |
|
|
importerer en eller flere PPD filer til en PPD kompilatorkildefil |
|
|
slår sammen to eller flere PPD filer til en enkel flerspråklig PPD fil |
|
|
trekker ut UI strenger fra PPDC kildefiler og oppdaterer enten en GNU gettext eller Mac OS X strenger formatmeldings katalogkildefil for oversettelse |
|
|
inneholder API funksjoner for manipulering av .ppd filer |
Dette kapittelet inneholder skanneapplikasjoner som lar deg konvertere trykte dokumenter til formaterte dokumenter som kan leses av andre applikasjoner.
SANE er forkortelse for Scanner Access Now Easy. Skannertilgang er imidlertid langt fra enkel, siden hver leverandør har sine egne protokoller. Den eneste kjente protokollen som burde bringe litt enhet inn dette kaoset er TWAIN grensesnittet, men dette er for upresist til å tillate et stabilt skanningsrammeverk. Derfor, SANE kommer med sin egen protokoll, og leverandørdriverne kan ikke brukes.
SANE er delt i bakstykker og grensesnitt. Bakstykkene er drivere for de støttede skannerne og kameraene. Grensesnittet er brukergrensesnitt for å få tilgang til bakstykkene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/sane/sane-backends-1.2.1.tar.gz
Nedlasting MD5 sum: 302159419ed1ee216c6e1edbe97c2a8c
Nedlastingsstørrelse: 6.9 MB
Estimert diskplass som kreves: 311 MB (with tests)
Estimert byggetid: 0.7 SBU (Bruker parallellisme=4; med tester)
Oppstrømsplasseringen for denne filen er på https://gitlab.com/sane-project men fil URLen bruker innebygde md5sums. For enkelhets skyld, pakken er kopiert til stedet ovenfor.
Avahi-0.8, Cups-2.4.10, libjpeg-turbo-3.0.1, libtiff-4.6.0, libusb-1.0.27, v4l-utils-1.28.1, Net-SNMP, libieee1284, libgphoto2, og texlive-20240312 (eller install-tl-unx)
For å få tilgang til skanneren din, vil du sannsynligvis trenge den relaterte kjernedriveren og/eller tilleggsstøttepakker. En SCSI skanner trenger SCSI drivere, parallellportskanner trenger støtte for parallellport (du bør bruke forbedrede EPP moduser) og kanskje libieee1284, og en USB skanner trenger libusb-1.0.27 pakken. For HP enheter, trenger du kanskje hplip. Sørg for at du har de nødvendige driverne riktig konfigurert for å få tilgang til enhetene.
SANE nissen bør kjøres med
sin egen gruppe. Opprett denne gruppen ved å utstede
følgende kommando som root
bruker:
groupadd -g 70 scanner
configure
forutsetter at brukeren som bygger SANE bakstykker er medlem av
scanner gruppen for å
teste eksistensen av denne gruppen. Som et resultat
bygger brukeren pakken må legges til scanner gruppen. Legg bruker til
scanner gruppen ved å
utstede følgende kommando som root bruker:
usermod -G scanner -a username
Etter å ha lagt til scanner gruppen som ovenfor, må du
logge ut og inn igjen for å aktivere den.
For en USB skanner, hvis du kobler til libusb-1.0.27, inkludere konfigureringsbryteren --enable-libusb_1_0. Installer SANE bakstykker ved å kjøre følgende kommandoer:
sg scanner -c " \
PYTHON=python3 ./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--with-lockdir=/run/lock \
--docdir=/usr/share/doc/sane-backends-1.2.1" &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install &&
install -m 644 -v tools/udev/libsane.rules \
/etc/udev/rules.d/65-scanner.rules &&
mkdir -p /run/lock/sane &&
chgrp -v scanner /run/lock/sane
Med skanneren på, kjør scanimage -L og navn og plassering av enheten skal vises. Selvfølgelig trenger du enhetsdrivere konfigurert for å kjøre denne testen.
sg scanner -c
"...": kjører kommandoen mellom dobbel
sitater med hovedgruppe scanner. Dette kan være nødvendig hvis
brukeren har nylig blitt lagt til gruppen scanner, og ikke
har logget ut og inn.
PYTHON=python3: Denne
bryteren tvinger byggesystemet å bruke Python 3 i stedet for
Python 2.
--sysconfdir=/etc:
Denne bryteren installerer konfigurasjonsfiler i /etc/sane.d i stedet for /usr/etc/sane.d.
Bakstykkekonfigurasjonsfilene er plassert i /etc/sane.d. Informasjon for å
konfigurere de forskjellige bakstykkene kan du finne ved
å bruke man(5) siden for ønsket bakstykke. Kjør
man sane-<bakstykke>,
erstatte ønsket bakstykke.
Legg til brukere som vil bruke en skanner til
scanner gruppen.
Hvis du vil ha tilgang til en nettverksskanner,
inkluderer to linjer i net.conf, som root bruker (sørg for å erstatte
<server_ip> med den faktiske verdien):
cat >> /etc/sane.d/net.conf << "EOF"
connect_timeout = 60
<server_ip>
EOF
På serversiden inkluderer du klientens ip i
tilgangslisten til /etc/sane.d/saned.conf, start på nytt
saned
nissen, og sørg for at brannmuren, hvis noen, er åpen for
klienten.
For generell informasjon om konfigurering og bruk SANE, se man sane. For informasjon om USB skanneenheter, kjør man sane-usb. For informasjon om SCSI enheter, kjør man sane-scsi.
saned nissen er ikke ment å brukes til upålitelige klienter. Du bør gi Brannmur beskyttelse for å sikre at bare pålitelige klienter får tilgang til nissen. På grunn av de komplekse sikkerhetskravene for å sikre kun pålitelige klienter får tilgang til nissen, BLFS gir ikke instruksjoner for å konfigurere saned nissen. Noe god (men utdatert) informasjon for å sette opp og sikre saned nissen finner du på https://penguin-breeder.org/sane/saned/.
|
oppretter en gammatabell i formatet forventet av scanimage |
|
|
er et verktøy som brukes til å bestemme kompilatoren og linkerflagg som skal brukes til å kompilere og lenke SANE |
|
|
er SANE nissen som lar eksterne klienter få tilgang til bildeinnsamlingsenheter tilgjengelig på den lokale verten |
|
|
er et kommandolinjeverktøy for å finne SCSI og USB skannere og finne enhetsfilene deres. Dens primære formål er å sørge for at skannere kan oppdages av SANE bakstykker |
|
|
er et kommandolinjegrensesnitt for skanning fra bildeinnhenting enheter som planskannere eller kameraer. Det er også brukt til å liste de tilgjengelige bakstykke enhetene |
|
|
er et verktøy som brukes til å lese informasjon fra UMAX parallellport skannere. Den kan også brukes til å utføre diagnostikk på disse skannere |
|
|
er et grafisk brukergrensesnitt for skanning |
|
|
er applikasjonsprogrammeringsgrensesnittet som brukes til å kommunisere mellom grensesnitt og bakstykker |
|
|
moduler er bakstykke skanningbibliotek programtillegg som brukes til grensesnitt med skanneenheter. Se http://www.sane-project.org/sane-supported-devices.html for en liste over støttede bakstykker |
Simple-scan pakken inneholder en moderne applikasjon for dokumentskanning. Den tar bilder med SANE, og støtter de nyeste fargestyrings og grafikk standardene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/simple-scan/46/simple-scan-46.0.tar.xz
Nedlasting MD5 sum: 5ae9ca4d4c59520736c11a2eb427502d
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.1 SBU
colord-1.4.7, itstool-2.0.7, libgusb-0.4.9, libadwaita-1.5.3, libwebp-1.4.0, og SANE-1.2.1
Installer Simple-scan ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install && gtk-update-icon-cache -qtf /usr/share/icons/hicolor
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
gtk-update-icon-cache [...]: Denne kommandoen oppdaterer systemomfattende GTK+ ikonbuffer siden Simple-scans byggesystem ikke oppdater den for å ta hensyn til ikonene den installerer.
Dette kapittelet inneholder DocBook SGML dokumenttypedefinisjoner (DTDs), DocBook DSSSL stilark og DocBook verktøy for å validere, transformere, formatere og publisere DocBook dokumenter.
SGML Felles pakken inneholder install-catalog. Dette er nyttig for å lage og opprettholde sentraliserte SGML kataloger.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://sourceware.org/ftp/docbook-tools/new-trials/SOURCES/sgml-common-0.6.3.tgz
Nedlasting MD5 sum: 103c9828f24820df86e55e7862e28974
Nedlastingsstørrelse: 75 KB
Estimert diskplass som kreves: 1.5 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/sgml-common-0.6.3-manpage-1.patch
I stedet for den vanlige konvensjonen med å inkludere
autotools filene i pakken inkluderte vedlikeholderne
symbolkoblinger til filene i /usr/share/automake. For tidligere
versjoner av Automake er
denne konvensjonen riktig, men nyere versjoner av
Automake installer de
interne filene i versjonsspesifikke mapper. Dette forårsaker
at configure
skriptet avbryter. For å fikse denne feilen, autotools
regenereres. Siden inkluderte Makefile.am filen bruker en syntaks som
ikke støttes av gjeldende versjoner av Automake, en oppdatering er nødvendig
for å fikse syntaksen.
patch -Np1 -i ../sgml-common-0.6.3-manpage-1.patch && autoreconf -f -i
Installer SGML Felles ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make docdir=/usr/share/doc install &&
install-catalog --add /etc/sgml/sgml-ent.cat \
/usr/share/sgml/sgml-iso-entities-8879.1986/catalog &&
install-catalog --add /etc/sgml/sgml-docbook.cat \
/etc/sgml/sgml-ent.cat
Fjern katalogelementene ovenfor før oppgradering (som
root bruker) med:
install-catalog --remove /etc/sgml/sgml-ent.cat \
/usr/share/sgml/sgml-iso-entities-8879.1986/catalog &&
install-catalog --remove /etc/sgml/sgml-docbook.cat \
/etc/sgml/sgml-ent.cat
|
oppretter en sentralisert katalog som opprettholder
referanser til kataloger spredt over hele
|
|
|
skriver ut navnet på hovedkonfigurasjonsfilen til standardutgang |
|
|
inneholder de grunnleggende karakterenhetene definert med SDATA oppføringer |
|
|
inneholder de grunnleggende karakterenhetene definert av en heksadesimal representasjon av Unicode tegnnummeret |
DocBook SGML DTD pakken inneholder dokumenttypedefinisjoner for verifisering av SGML datafiler mot DocBook regelsettet. Disse er nyttige for å strukturere bøker og programvare dokumentasjon til en standard som lar deg bruke transformasjoner allerede skrevet for den standarden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.docbook.org/sgml/3.1/docbk31.zip
Nedlasting MD5 sum: 432749c0c806dbae81c8bcb70da3b5d3
Nedlastingsstørrelse: 55 KB
Estimert diskplass som kreves: 676 KB
Estimert byggetid: mindre enn 0.1 SBU
sgml-common-0.6.3 og UnZip-6.0 (eller libarchive-3.7.4)
Pakkekilden er distribuert i zip format og krever unzip (eller bsdunzip fra libarchive). Du bør opprette en mappe
og bytte til den mappen før du pakker ut filen for å lette
fjerningen av kildefilene etter at pakken er installert.
Installer DocBook-3.1 SGML DTD ved å kjøre følgende kommandoer:
sed -i -e '/ISO 8879/d' \
-e 's|DTDDECL "-//OASIS//DTD DocBook V3.1//EN"|SGMLDECL|g' \
docbook.cat
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
install -v -d -m755 /usr/share/sgml/docbook/sgml-dtd-3.1 &&
chown -R root:root . &&
install -v docbook.cat /usr/share/sgml/docbook/sgml-dtd-3.1/catalog &&
cp -v -af *.dtd *.mod *.dcl /usr/share/sgml/docbook/sgml-dtd-3.1 &&
install-catalog --add /etc/sgml/sgml-docbook-dtd-3.1.cat \
/usr/share/sgml/docbook/sgml-dtd-3.1/catalog &&
install-catalog --add /etc/sgml/sgml-docbook-dtd-3.1.cat \
/etc/sgml/sgml-docbook.cat
sed -i -e '/ISO 8879/d' docbook.cat: Denne kommandoen fjerner ENT definisjonene fra katalogfilen.
sed -i -e 's|DTDDECL "-//OASIS//DTD Docbook V3.1//EN"|SGMLDECL|g' docbook.cat: Denne kommandoen erstatter DTDDECL katalogoppføringen, som ikke støttes av Linux SGML verktøy, med SGMLDECL katalog inngang.
Installasjonsskriptet ovenfor oppdaterer katalogen.
Bruker kun den nyeste 3.x-versjonen av DocBook SGML DTD krever følgende
(utfør som root bruker):
cat >> /usr/share/sgml/docbook/sgml-dtd-3.1/catalog << "EOF"
-- Begin Single Major Version catalog changes --
PUBLIC "-//Davenport//DTD DocBook V3.0//EN" "docbook.dtd"
-- End Single Major Version catalog changes --
EOF
DocBook-4.5 SGML DTD pakken inneholder dokumenttypedefinisjoner for verifisering av SGML datafiler mot DocBook regelsett. Disse er nyttige for å strukturere bøker og programvare dokumentasjon til en standard som lar deg bruke transformasjoner allerede skrevet for den standarden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.docbook.org/sgml/4.5/docbook-4.5.zip
Nedlasting MD5 sum: 07c581f4bbcba6d3aac85360a19f95f7
Nedlastingsstørrelse: 70 KB
Estimert diskplass som kreves: 784 KB
Estimert byggetid: mindre enn 0.1 SBU
sgml-common-0.6.3 og UnZip-6.0 (eller libarchive-3.7.4)
Pakkekilden er distribuert i zip format og krever unzip (eller bsdunzip fra libarchive). Du bør opprette en mappe
og bytte til den mappen før du pakker ut filen for å lette
fjerningen av kildefilene etter at pakken er installert.
Installer DocBook-4.5 SGML DTD ved å kjøre følgende kommandoer:
sed -i -e '/ISO 8879/d' \
-e '/gml/d' docbook.cat
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
install -v -d /usr/share/sgml/docbook/sgml-dtd-4.5 &&
chown -R root:root . &&
install -v docbook.cat /usr/share/sgml/docbook/sgml-dtd-4.5/catalog &&
cp -v -af *.dtd *.mod *.dcl /usr/share/sgml/docbook/sgml-dtd-4.5 &&
install-catalog --add /etc/sgml/sgml-docbook-dtd-4.5.cat \
/usr/share/sgml/docbook/sgml-dtd-4.5/catalog &&
install-catalog --add /etc/sgml/sgml-docbook-dtd-4.5.cat \
/etc/sgml/sgml-docbook.cat
sed -i -e '/ISO 8879/d' -e '/gml/d' docbook.cat: Denne kommandoen fjerner ENT definisjonene fra katalogfilen.
Installasjonsskriptet ovenfor oppdaterer katalogen.
Bruker kun den nyeste 4.x-versjonen av DocBook SGML DTD krever følgende
(utfør som root bruker):
cat >> /usr/share/sgml/docbook/sgml-dtd-4.5/catalog << "EOF"
-- Begin Single Major Version catalog changes --
PUBLIC "-//OASIS//DTD DocBook V4.4//EN" "docbook.dtd"
PUBLIC "-//OASIS//DTD DocBook V4.3//EN" "docbook.dtd"
PUBLIC "-//OASIS//DTD DocBook V4.2//EN" "docbook.dtd"
PUBLIC "-//OASIS//DTD DocBook V4.1//EN" "docbook.dtd"
PUBLIC "-//OASIS//DTD DocBook V4.0//EN" "docbook.dtd"
-- End Single Major Version catalog changes --
EOF
OpenSP pakken inneholder et C++ bibliotek for bruk av SGML/XML filer. Dette er nyttig for å validere, analysere og manipulere SGML og XML dokumenter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/openjade/OpenSP-1.5.2.tar.gz
Nedlasting MD5 sum: 670b223c5d12cee40c9137be86b6c39b
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 32 MB
Estimert byggetid: 1.0 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/OpenSP-1.5.2-gcc14-1.patch
Installer OpenSP ved å kjøre følgende kommandoer:
patch -Np1 -i ../OpenSP-1.5.2-gcc14-1.patch &&
sed -i 's/32,/253,/' lib/Syntax.cxx &&
sed -i 's/LITLEN 240 /LITLEN 8092/' \
unicode/{gensyntax.pl,unicode.syn} &&
./configure --prefix=/usr \
--disable-static \
--disable-doc-build \
--enable-default-catalog=/etc/sgml/catalog \
--enable-http \
--enable-default-search-path=/usr/share/sgml &&
make pkgdatadir=/usr/share/sgml/OpenSP-1.5.2
For å teste resultatene, kjør: make check. Så mange som ni av de 23 testene kan mislykkes. Ikke bli skremt.
Nå, som root bruker:
make pkgdatadir=/usr/share/sgml/OpenSP-1.5.2 \
docdir=/usr/share/doc/OpenSP-1.5.2 \
install &&
ln -v -sf onsgmls /usr/bin/nsgmls &&
ln -v -sf osgmlnorm /usr/bin/sgmlnorm &&
ln -v -sf ospam /usr/bin/spam &&
ln -v -sf ospcat /usr/bin/spcat &&
ln -v -sf ospent /usr/bin/spent &&
ln -v -sf osx /usr/bin/sx &&
ln -v -sf osx /usr/bin/sgml2xml &&
ln -v -sf libosp.so /usr/lib/libsp.so
sed -i 's/32,/253,/...unicode.syn}: Disse sedene forhindrer noen irriterende meldinger som ellers kan dukke opp mens du kjører openjade.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-http: Denne
bryteren legger til støtte for HTTP.
--disable-doc-build:
Denne bryteren forhindrer configure skriptet å sjekke
om du har xmlto installert.
Hvis du har xmlto, kan du
fjerne dette alternativet.
--enable-default-catalog=/etc/sgml/catalog:
Denne bryteren setter banen til den sentraliserte katalogen.
--enable-default-search-path:
Denne bryteren setter standardverdien til SGML_SEARCH_PATH.
--enable-xml-messages: Denne
bryteren legger til støtte for XML formaterte meldinger.
make
pkgdatadir=/usr/share/sgml/OpenSP-1.5.2 :
Dette setter pkgdatadir variabelen i Makefile fra /usr/share/OpenSP til /usr/share/sgml/OpenSP-1.5.2.
ln -v -sf ...: Disse kommandoene oppretter SP ekvivalenter av OpenSP kjørbare filer og biblioteker.
|
brukes til å behandle SGML filer |
|
|
skriver ut på standardutgangen en normalisert dokumentforekomst for SGML dokumentet i sammenkoblingen av enhetene med systemidentifikatorer .nf og .fi |
|
|
er et redigeringsverktøy for markeringsspråk strømmer |
|
|
skriver ut effektive systemidentifikatorer som finnes i katalogene |
|
|
gir tilgang til OpenSP sin enhetsbehandler |
|
|
er en SGML normalisator eller brukes til å konvertere SGML filer til XML filer |
|
|
er en symbolkobling til onsgmls |
|
|
er en symbolkobling til osx |
|
|
er en symbolkobling til osgmlnorm |
|
|
er en symbolkobling til ospam |
|
|
er en symbolkobling til ospcat |
|
|
er en symbolkobling til ospent |
|
|
er en symbolkobling til osx |
|
|
inneholder funksjoner som kreves av OpenSP programmer for å analysere, validere og manipulere SGML og XML filer |
|
|
er en symbolkobling til |
OpenJade pakken inneholder en DSSSL motor. Dette er nyttig for SGML og XML transformasjoner til RTF, TeX, SGML og XML.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/openjade/openjade-1.3.2.tar.gz
Nedlasting MD5 sum: 7df692e3186109cc00db6825b777201e
Nedlastingsstørrelse: 880 KB
Estimert diskplass som kreves: 19.2 MB
Estimert byggetid: 0.7 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/openjade-1.3.2-upstream-1.patch
Løs først problemer når du bygger med nyere kompilatorer:
patch -Np1 -i ../openjade-1.3.2-upstream-1.patch
Løs nå et kompileringsproblem med perl-5.16 og nyere:
sed -i -e '/getopts/{N;s#&G#g#;s#do .getopts.pl.;##;}' \
-e '/use POSIX/ause Getopt::Std;' msggen.pl
Installer OpenJade ved å kjøre følgende kommandoer:
export CXXFLAGS="${CXXFLAGS:--O2 -g} -fno-lifetime-dse" &&
./configure --prefix=/usr \
--mandir=/usr/share/man \
--enable-http \
--disable-static \
--enable-default-catalog=/etc/sgml/catalog \
--enable-default-search-path=/usr/share/sgml \
--datadir=/usr/share/sgml/openjade-1.3.2 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install &&
make install-man &&
ln -v -sf openjade /usr/bin/jade &&
ln -v -sf libogrove.so /usr/lib/libgrove.so &&
ln -v -sf libospgrove.so /usr/lib/libspgrove.so &&
ln -v -sf libostyle.so /usr/lib/libstyle.so &&
install -v -m644 dsssl/catalog /usr/share/sgml/openjade-1.3.2/ &&
install -v -m644 dsssl/*.{dtd,dsl,sgm} \
/usr/share/sgml/openjade-1.3.2 &&
install-catalog --add /etc/sgml/openjade-1.3.2.cat \
/usr/share/sgml/openjade-1.3.2/catalog &&
install-catalog --add /etc/sgml/sgml-docbook.cat \
/etc/sgml/openjade-1.3.2.cat
export CXXFLAGS=...: Denne kommandoen forhindrer segmenteringsfeil når pakken kompileres med gcc-6.1.
make install-man: Denne kommandoen installerer openjade manside.
--disable-static:
Denne bryteren forhindrer byggingen av det statiske
biblioteket.
--enable-http: Denne
bryteren legger til støtte for HTTP.
--enable-default-catalog=/etc/sgml/catalog:
Denne bryteren setter banen til den sentraliserte mappen.
--enable-default-search-path:
Denne bryteren setter standardverdien til SGML_SEARCH_PATH.
--datadir=/usr/share/sgml/openjade-1.3.2:
Denne bryteren legger datafiler i /usr/share/sgml/openjade-1.3.2 istedet for
/usr/share.
ln -v -sf ...: Disse kommandoene oppretter Jade ekvivalenter av OpenJade kjørbare filer og biblioteker.
Som root bruker:
echo "SYSTEM \"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd\" \
\"/usr/share/xml/docbook/xml-dtd-4.5/docbookx.dtd\"" >> \
/usr/share/sgml/openjade-1.3.2/catalog
Denne konfigurasjonen er bare nødvendig hvis du har tenkt å bruke OpenJade for å behandle BLFS XML filene gjennom DSSSL stilark.
DocBook DSSSL Stilark pakken inneholder DSSSL stilark. Disse brukes av OpenJade eller andre verktøy for å transformere SGML og XML DocBook filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/docbook/docbook-dsssl-1.79.tar.bz2
Nedlasting MD5 sum: bc192d23266b9a664ca0aba4a7794c7c
Nedlastingsstørrelse: 277 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: mindre enn 0.1 SBU
Dokumentasjon og testdata
Nedlasting (HTTP): https://downloads.sourceforge.net/docbook/docbook-dsssl-doc-1.79.tar.bz2
Nedlasting MD5 sum: 9a7b809a21ab7d2749bb328334c380f2
Nedlastingsstørrelse: 142 KB
docbook-3.1-dtd, docbook-4.5-dtd, OpenSP-1.5.2, og OpenJade-1.3.2
Hvis du lastet ned dokumentasjonen, kjør:
tar -xf ../docbook-dsssl-doc-1.79.tar.bz2 --strip-components=1
Installer DocBook DSSSL
Stilark ved å kjøre følgende kommandoer som
root bruker:
install -v -m755 bin/collateindex.pl /usr/bin &&
install -v -m644 bin/collateindex.pl.1 /usr/share/man/man1 &&
install -v -d -m755 /usr/share/sgml/docbook/dsssl-stylesheets-1.79 &&
cp -v -R * /usr/share/sgml/docbook/dsssl-stylesheets-1.79 &&
install-catalog --add /etc/sgml/dsssl-docbook-stylesheets.cat \
/usr/share/sgml/docbook/dsssl-stylesheets-1.79/catalog &&
install-catalog --add /etc/sgml/dsssl-docbook-stylesheets.cat \
/usr/share/sgml/docbook/dsssl-stylesheets-1.79/common/catalog &&
install-catalog --add /etc/sgml/sgml-docbook.cat \
/etc/sgml/dsssl-docbook-stylesheets.cat
Kommandoene ovenfor oppretter et installasjonsskript for denne pakken.
Følgende kommandoer vil utføre de nødvendige testene for å
bekrefte at din installerte DocBook SGML verktøykjede vil gi
ønskede resultater. Du må ha docbook-3.1-dtd,
docbook-4.5-dtd, OpenSP-1.5.2, og OpenJade-1.3.2 pakkene installert, og
utføre testene som root
bruker.
Alle tester vil bli utført fra /usr/share/sgml/docbook/dsssl-stylesheets-1.79/doc/testdata
mappen som root bruker:
cd /usr/share/sgml/docbook/dsssl-stylesheets-1.79/doc/testdata
Den første testen skal ikke gi utdata til stdout (skjermen
din) og opprette en fil med navnet jtest.rtf i gjeldende mappe:
openjade -t rtf -d jtest.dsl jtest.sgm
Den neste testen skal bare returnere følgende linje til
stdout: onsgmls:I: "OpenSP"
version "1.5.2"
onsgmls -sv test.sgm
Den neste testen skal ikke produsere noe utdata til stdout og
opprette en fil navngitt test.rtf i gjeldende mappe:
openjade -t rtf \
-d /usr/share/sgml/docbook/dsssl-stylesheets-1.79/print/docbook.dsl \
test.sgm
Den siste testen skal ikke produsere noe utdata til stdout og
lage en fil navngitt c1.htm i
gjeldende mappe:
openjade -t sgml \
-d /usr/share/sgml/docbook/dsssl-stylesheets-1.79/html/docbook.dsl \
test.sgm
Til slutt, rydd opp:
rm jtest.rtf test.rtf c1.htm
DocBook-utils pakken er en samling av verktøyskript som brukes til å konvertere og analysere SGML dokumenter generelt, og DocBook filer spesielt. Skriptene brukes til å konvertere fra DocBook eller andre SGML formater til “klassiske” filformater som HTML, man, info, RTF og mange flere. Det er også et verktøy for å sammenligne to SGML filer og viser bare forskjellene i markeringene. Dette er nyttig for å sammenligne dokumenter utarbeidet for forskjellige språk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://sourceware.org/ftp/docbook-tools/new-trials/SOURCES/docbook-utils-0.6.14.tar.gz
Nedlasting MD5 sum: 6b41b18c365c01f225bc417cf632d81c
Nedlastingsstørrelse: 124 KB
Estimert diskplass som kreves: 1.44 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/docbook-utils-0.6.14-grep_fix-1.patch
OpenJade-1.3.2, docbook-dsssl-1.79, og docbook-3.1-dtd
SGMLSpm-1.1 (for konvertering til man og texinfo), og Lynx-2.9.2 eller Links-2.30 eller W3m (for konvertering til ASCII text)
Installer DocBook-utils ved å kjøre følgende kommandoer:
patch -Np1 -i ../docbook-utils-0.6.14-grep_fix-1.patch && sed -i 's:/html::' doc/HTML/Makefile.in && ./configure --prefix=/usr --mandir=/usr/share/man && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make docdir=/usr/share/doc install
Mange pakker bruker et alternativt navn for DocBook-utils skript. Hvis du ønsker å
lage disse alternative navnene, bruk følgende kommando som
root bruker:
for doctype in html ps dvi man pdf rtf tex texi txt
do
ln -svf docbook2$doctype /usr/bin/db2$doctype
done
jw skriptet bruker which kommando for å finne nødvendige verktøy. Du må installere Which-2.21 før du prøver å bruke noen av DocBook-utils programmene.
patch -Np1 -i ../docbook-utils-0.6.14-grep_fix-1.patch: Denne oppdateringen korrigerer syntaksen i jw (Jade Wrapper) skriptet som er i hjertet av mye db2* behandling, slik at den nåværende versjonen av grep ikke vil avvise det.
sed -i 's:/html::' doc/HTML/Makefile.in: Denne kommandoen endrer installasjonsmappen til HTML dokumentene.
docdir=/usr/share/doc: Dette
alternativet er plassert på make install linjen fordi
den ikke er gjenkjent av configure.
|
er enkel en-linjes innpakningsskript til jw. De er gitt som navn som er enkle å huske og brukes til å konvertere DocBook eller andre SGML filer til det respektive formatet |
|
|
er symbolkoblinger som peker på de respektive navngitte docbook2* kommandoer, laget for å tilfredsstille noen programmers bruk av disse navnene |
|
|
er et skript som brukes til å konvertere DocBook eller andre SGML filer til forskjellige utdataformater. Den skjuler det meste av OpenJade sin kompleksitet og legger til komfortable funksjoner |
|
|
brukes til å sammenligne to SGML filer og bare returnere forskjellene i markeringen. Dette er spesielt nyttig for å sammenligne filer som skal være identisk bortsett fra språkforskjeller i innholdet |
Dette kapittelet inneholder DocBook XML dokumenttypedefinisjonen (DTD) og DocBook stilark som brukes til å validere, transformere, formatere og publisere DocBook dokumenter.
DocBook-4.5 XML DTD-4.5 pakken inneholder dokumenttypedefinisjoner for verifisering av XML data filer mot DocBook regelsettet. Disse er nyttige for strukturering av bøker og programvaredokumentasjon til en standard som lar deg bruke transformasjoner som allerede er skrevet for den standarden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.docbook.org/xml/4.5/docbook-xml-4.5.zip
Nedlasting MD5 sum: 03083e288e87a7e829e437358da7ef9e
Nedlastingsstørrelse: 96 KB
Estimert diskplass som kreves: 1.2 MB
Estimert byggetid: mindre enn 0.1 SBU
libxml2-2.13.3 og UnZip-6.0 (eller libarchive-3.7.4)
Pakkekilden er distribuert i zip format og krever unzip (eller bsdunzip fra libarchive). Du bør opprette en mappe
og bytte til den mappen før du pakker ut filen for å lette
fjerningen av kildefilene etter at pakken er installert.
Installer DocBook XML DTD
ved å kjøre følgende kommandoer som root bruker:
install -v -d -m755 /usr/share/xml/docbook/xml-dtd-4.5 &&
install -v -d -m755 /etc/xml &&
cp -v -af --no-preserve=ownership docbook.cat *.dtd ent/ *.mod \
/usr/share/xml/docbook/xml-dtd-4.5
Opprett (eller oppdater) og fyll ut /etc/xml/docbook katalogfil ved å kjøre
følgende kommandoer som root
bruker:
if [ ! -e /etc/xml/docbook ]; then
xmlcatalog --noout --create /etc/xml/docbook
fi &&
xmlcatalog --noout --add "public" \
"-//OASIS//DTD DocBook XML V4.5//EN" \
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" \
/etc/xml/docbook &&
xmlcatalog --noout --add "public" \
"-//OASIS//DTD DocBook XML CALS Table Model V4.5//EN" \
"file:///usr/share/xml/docbook/xml-dtd-4.5/calstblx.dtd" \
/etc/xml/docbook &&
xmlcatalog --noout --add "public" \
"-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
"file:///usr/share/xml/docbook/xml-dtd-4.5/soextblx.dtd" \
/etc/xml/docbook &&
xmlcatalog --noout --add "public" \
"-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN" \
"file:///usr/share/xml/docbook/xml-dtd-4.5/dbpoolx.mod" \
/etc/xml/docbook &&
xmlcatalog --noout --add "public" \
"-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.5//EN" \
"file:///usr/share/xml/docbook/xml-dtd-4.5/dbhierx.mod" \
/etc/xml/docbook &&
xmlcatalog --noout --add "public" \
"-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN" \
"file:///usr/share/xml/docbook/xml-dtd-4.5/htmltblx.mod" \
/etc/xml/docbook &&
xmlcatalog --noout --add "public" \
"-//OASIS//ENTITIES DocBook XML Notations V4.5//EN" \
"file:///usr/share/xml/docbook/xml-dtd-4.5/dbnotnx.mod" \
/etc/xml/docbook &&
xmlcatalog --noout --add "public" \
"-//OASIS//ENTITIES DocBook XML Character Entities V4.5//EN" \
"file:///usr/share/xml/docbook/xml-dtd-4.5/dbcentx.mod" \
/etc/xml/docbook &&
xmlcatalog --noout --add "public" \
"-//OASIS//ENTITIES DocBook XML Additional General Entities V4.5//EN" \
"file:///usr/share/xml/docbook/xml-dtd-4.5/dbgenent.mod" \
/etc/xml/docbook &&
xmlcatalog --noout --add "rewriteSystem" \
"http://www.oasis-open.org/docbook/xml/4.5" \
"file:///usr/share/xml/docbook/xml-dtd-4.5" \
/etc/xml/docbook &&
xmlcatalog --noout --add "rewriteURI" \
"http://www.oasis-open.org/docbook/xml/4.5" \
"file:///usr/share/xml/docbook/xml-dtd-4.5" \
/etc/xml/docbook
Opprett (eller oppdater) og fyll ut /etc/xml/catalog katalogfilen ved å kjøre
følgende kommandoer som root
bruker:
if [ ! -e /etc/xml/catalog ]; then
xmlcatalog --noout --create /etc/xml/catalog
fi &&
xmlcatalog --noout --add "delegatePublic" \
"-//OASIS//ENTITIES DocBook XML" \
"file:///etc/xml/docbook" \
/etc/xml/catalog &&
xmlcatalog --noout --add "delegatePublic" \
"-//OASIS//DTD DocBook XML" \
"file:///etc/xml/docbook" \
/etc/xml/catalog &&
xmlcatalog --noout --add "delegateSystem" \
"http://www.oasis-open.org/docbook/" \
"file:///etc/xml/docbook" \
/etc/xml/catalog &&
xmlcatalog --noout --add "delegateURI" \
"http://www.oasis-open.org/docbook/" \
"file:///etc/xml/docbook" \
/etc/xml/catalog
Ulike BLFS pakker forespør DocBook XML DTD versjon 4.x før V4.5, så følgende trinn må gjøres for at disse pakkene skal bygges med suksess.
Installasjonen ovenfor oppretter filene og oppdaterer
katalogene. For å utnytte DocBook
XML DTD V4.5 når en hvilken som helst versjon 4.x er
forespurt i System Identifikator, du må legge til flere
utsagn i katalogfiler. Hvis du har noen av DocBook XML DTD referert nedenfor
allerede installert på ditt system, fjern disse
oppføringene før kommandoene nedenfor
(utsted kommandoene som root bruker):
for DTDVERSION in 4.1.2 4.2 4.3 4.4
do
xmlcatalog --noout --add "public" \
"-//OASIS//DTD DocBook XML V$DTDVERSION//EN" \
"http://www.oasis-open.org/docbook/xml/$DTDVERSION/docbookx.dtd" \
/etc/xml/docbook
xmlcatalog --noout --add "rewriteSystem" \
"http://www.oasis-open.org/docbook/xml/$DTDVERSION" \
"file:///usr/share/xml/docbook/xml-dtd-4.5" \
/etc/xml/docbook
xmlcatalog --noout --add "rewriteURI" \
"http://www.oasis-open.org/docbook/xml/$DTDVERSION" \
"file:///usr/share/xml/docbook/xml-dtd-4.5" \
/etc/xml/docbook
xmlcatalog --noout --add "delegateSystem" \
"http://www.oasis-open.org/docbook/xml/$DTDVERSION/" \
"file:///etc/xml/docbook" \
/etc/xml/catalog
xmlcatalog --noout --add "delegateURI" \
"http://www.oasis-open.org/docbook/xml/$DTDVERSION/" \
"file:///etc/xml/docbook" \
/etc/xml/catalog
done
DocBook XML DTD og skjemaer-5.0 pakken inneholder dokumenttypedefinisjoner og skjemaer for verifisering av XML datafiler mot DocBook regelsettet. Disse er nyttige for strukturering av bøker og programvaredokumentasjon til en standard som lar deg bruke transformasjoner som allerede er skrevet for den standarden. I tillegg til å tilby en DTD introduserte versjon 5 RelaxNG skjemaet og Schematron regler, og er inkompatibel med tidligere versjoner av DocBook XML.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://docbook.org/xml/5.0/docbook-5.0.zip
Nedlasting MD5 sum: 2411c19ed4fb141f3fa3d389fae40736
Nedlastingsstørrelse: 820 KB
Estimert diskplass som kreves: 6.2 MB
Estimert byggetid: 0.1 SBU
Installer DocBook XML DTD og
skjemaer ved å kjøre følgende kommandoer som
root bruker:
install -vdm755 /usr/share/xml/docbook/schema/{dtd,rng,sch,xsd}/5.0 &&
install -vm644 dtd/* /usr/share/xml/docbook/schema/dtd/5.0 &&
install -vm644 rng/* /usr/share/xml/docbook/schema/rng/5.0 &&
install -vm644 sch/* /usr/share/xml/docbook/schema/sch/5.0 &&
install -vm644 xsd/* /usr/share/xml/docbook/schema/xsd/5.0
Opprett (eller oppdater) og fyll ut /etc/xml/docbook-5.0 katalogfilen ved å
kjøre følgende kommandoer som root bruker:
if [ ! -e /etc/xml/docbook-5.0 ]; then
xmlcatalog --noout --create /etc/xml/docbook-5.0
fi &&
xmlcatalog --noout --add "public" \
"-//OASIS//DTD DocBook XML 5.0//EN" \
"file:///usr/share/xml/docbook/schema/dtd/5.0/docbook.dtd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "system" \
"http://www.oasis-open.org/docbook/xml/5.0/dtd/docbook.dtd" \
"file:///usr/share/xml/docbook/schema/dtd/5.0/docbook.dtd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "system" \
"http://docbook.org/xml/5.0/dtd/docbook.dtd" \
"file:///usr/share/xml/docbook/schema/dtd/5.0/docbook.dtd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/rng/docbook.rng" \
"file:///usr/share/xml/docbook/schema/rng/5.0/docbook.rng" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/rng/docbook.rng" \
"file:///usr/share/xml/docbook/schema/rng/5.0/docbook.rng" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/rng/docbookxi.rng" \
"file:///usr/share/xml/docbook/schema/rng/5.0/docbookxi.rng" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/rng/docbookxi.rng" \
"file:///usr/share/xml/docbook/schema/rng/5.0/docbookxi.rng" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/rnc/docbook.rnc" \
"file:///usr/share/xml/docbook/schema/rng/5.0/docbook.rnc" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/rng/docbook.rnc" \
"file:///usr/share/xml/docbook/schema/rng/5.0/docbook.rnc" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/rnc/docbookxi.rnc" \
"file:///usr/share/xml/docbook/schema/rng/5.0/docbookxi.rnc" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/rng/docbookxi.rnc" \
"file:///usr/share/xml/docbook/schema/rng/5.0/docbookxi.rnc" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/xsd/docbook.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/docbook.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/xsd/docbook.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/docbook.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/xsd/docbookxi.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/docbookxi.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/xsd/docbookxi.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/docbookxi.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/xsd/xi.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/xi.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/xsd/xi.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/xi.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/xsd/xlink.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/xlink.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/xsd/xlink.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/xlink.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/xsd/xml.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/xml.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/xsd/xml.xsd" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/xml.xsd" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://www.oasis-open.org/docbook/xml/5.0/sch/docbook.sch" \
"file:///usr/share/xml/docbook/schema/sch/5.0/docbook.sch" \
/etc/xml/docbook-5.0 &&
xmlcatalog --noout --add "uri" \
"http://docbook.org/xml/5.0/sch/docbook.sch" \
"file:///usr/share/xml/docbook/schema/sch/5.0/docbook.sch" \
/etc/xml/docbook-5.0
Mens igjen som root bruker,
lag de individuelle katalogene:
xmlcatalog --noout --create /usr/share/xml/docbook/schema/dtd/5.0/catalog.xml && xmlcatalog --noout --add "public" \ "-//OASIS//DTD DocBook XML 5.0//EN" \ "docbook.dtd" /usr/share/xml/docbook/schema/dtd/5.0/catalog.xml && xmlcatalog --noout --add "system" \ "http://www.oasis-open.org/docbook/xml/5.0/dtd/docbook.dtd" \ "docbook.dtd" /usr/share/xml/docbook/schema/dtd/5.0/catalog.xml && xmlcatalog --noout --create /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/rng/docbook.rng" \ "docbook.rng" /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/rng/docbook.rng" \ "docbook.rng" /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/rng/docbookxi.rng" \ "docbookxi.rng" /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/rng/docbookxi.rng" \ "docbookxi.rng" /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/rng/docbook.rnc" \ "docbook.rnc" /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/rng/docbook.rnc" \ "docbook.rnc" /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/rng/docbookxi.rnc" \ "docbookxi.rnc" /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/rng/docbookxi.rnc" \ "docbookxi.rnc" /usr/share/xml/docbook/schema/rng/5.0/catalog.xml && xmlcatalog --noout --create /usr/share/xml/docbook/schema/sch/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/sch/docbook.sch" \ "docbook.sch" /usr/share/xml/docbook/schema/sch/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/sch/docbook.sch" \ "docbook.sch" /usr/share/xml/docbook/schema/sch/5.0/catalog.xml && xmlcatalog --noout --create /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/xsd/docbook.xsd" \ "docbook.xsd" /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/xsd/docbook.xsd" \ "docbook.xsd" /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/xsd/docbookxi.xsd" \ "docbookxi.xsd" /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/xsd/docbookxi.xsd" \ "docbookxi.xsd" /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/xsd/xlink.xsd" \ "xlink.xsd" /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/xsd/xlink.xsd" \ "xlink.xsd" /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.0/xsd/xml.xsd" \ "xml.xsd" /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.0/xsd/xml.xsd" \ "xml.xsd" /usr/share/xml/docbook/schema/xsd/5.0/catalog.xml
Opprett (eller oppdater) og fyll ut systemets XML katalog
(/etc/xml/catalog) ved å kjøre
følgende kommandoer som root
bruker:
if [ ! -e /etc/xml/catalog ]; then
xmlcatalog --noout --create /etc/xml/catalog
fi &&
xmlcatalog --noout --add "delegatePublic" \
"-//OASIS//DTD DocBook XML 5.0//EN" \
"file:///usr/share/xml/docbook/schema/dtd/5.0/catalog.xml" \
/etc/xml/catalog &&
xmlcatalog --noout --add "delegateSystem" \
"http://docbook.org/xml/5.0/dtd/" \
"file:///usr/share/xml/docbook/schema/dtd/5.0/catalog.xml" \
/etc/xml/catalog &&
xmlcatalog --noout --add "delegateURI" \
"http://docbook.org/xml/5.0/dtd/" \
"file:///usr/share/xml/docbook/schema/dtd/5.0/catalog.xml" \
/etc/xml/catalog &&
xmlcatalog --noout --add "delegateURI" \
"http://docbook.org/xml/5.0/rng/" \
"file:///usr/share/xml/docbook/schema/rng/5.0/catalog.xml" \
/etc/xml/catalog &&
xmlcatalog --noout --add "delegateURI" \
"http://docbook.org/xml/5.0/sch/" \
"file:///usr/share/xml/docbook/schema/sch/5.0/catalog.xml" \
/etc/xml/catalog &&
xmlcatalog --noout --add "delegateURI" \
"http://docbook.org/xml/5.0/xsd/" \
"file:///usr/share/xml/docbook/schema/xsd/5.0/catalog.xml" \
/etc/xml/catalog
DocBook XML Skjemaer-5.1 pakken inneholder skjemafiler og Schematron regler for verifisering av XML data filer mot DocBook regelsettet. Disse er nyttige for å strukturere bøker og programvaredokumentasjon til en standard som lar deg bruke transformasjoner som allerede er skrevet for den standarden.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://docbook.org/xml/5.1/docbook-v5.1-os.zip
Nedlasting MD5 sum: d8bea8ddfc5743578a31cb18f9ae1f5a
Nedlastingsstørrelse: 752 KB
Estimert diskplass som kreves: 8.5 MB
Estimert byggetid: mindre enn 0.1 SBU
libxml2-2.13.3 og UnZip-6.0 (eller libarchive-3.7.4)
Pakkekilden er distribuert i zip format og krever unzip (eller bsdunzip fra libarchive). Du bør opprette en mappe
og bytte til den mappen før du pakker ut filen for å lette
fjerningen av kildefilene etter at pakken er installert.
Installer DocBook XML
Schemas ved å kjøre følgende kommandoer som
root bruker:
install -vdm755 /usr/share/xml/docbook/schema/{rng,sch}/5.1 &&
install -m644 schemas/rng/* /usr/share/xml/docbook/schema/rng/5.1 &&
install -m644 schemas/sch/* /usr/share/xml/docbook/schema/sch/5.1 &&
install -m755 tools/db4-entities.pl /usr/bin &&
install -vdm755 /usr/share/xml/docbook/stylesheet/docbook5 &&
install -m644 tools/db4-upgrade.xsl \
/usr/share/xml/docbook/stylesheet/docbook5
Opprett (eller oppdater) og fyll ut /etc/xml/docbook-5.1 katalogfilen ved å
kjøre følgende kommandoer som root bruker:
if [ ! -e /etc/xml/docbook-5.1 ]; then xmlcatalog --noout --create /etc/xml/docbook-5.1 fi && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/rng/docbook.rng" \ "file:///usr/share/xml/docbook/schema/rng/5.1/docbook.rng" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/rng/docbook.rng" \ "file:///usr/share/xml/docbook/schema/rng/5.1/docbook.rng" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/rng/docbookxi.rng" \ "file:///usr/share/xml/docbook/schema/rng/5.1/docbookxi.rng" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/rng/docbookxi.rng" \ "file:///usr/share/xml/docbook/schema/rng/5.1/docbookxi.rng" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/rnc/docbook.rnc" \ "file:///usr/share/xml/docbook/schema/rng/5.1/docbook.rnc" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/rng/docbook.rnc" \ "file:///usr/share/xml/docbook/schema/rng/5.1/docbook.rnc" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/rnc/docbookxi.rnc" \ "file:///usr/share/xml/docbook/schema/rng/5.1/docbookxi.rnc" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/rng/docbookxi.rnc" \ "file:///usr/share/xml/docbook/schema/rng/5.1/docbookxi.rnc" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/sch/docbook.sch" \ "file:///usr/share/xml/docbook/schema/sch/5.1/docbook.sch" \ /etc/xml/docbook-5.1 && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/sch/docbook.sch" \ "file:///usr/share/xml/docbook/schema/sch/5.1/docbook.sch" \ /etc/xml/docbook-5.1
Mens igjen som root bruker,
lag de individuelle katalogene:
xmlcatalog --noout --create /usr/share/xml/docbook/schema/rng/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/schemas/rng/docbook.schemas/rng" \ "docbook.schemas/rng" /usr/share/xml/docbook/schema/rng/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/schemas/rng/docbook.schemas/rng" \ "docbook.schemas/rng" /usr/share/xml/docbook/schema/rng/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/schemas/rng/docbookxi.schemas/rng" \ "docbookxi.schemas/rng" /usr/share/xml/docbook/schema/rng/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/schemas/rng/docbookxi.schemas/rng" \ "docbookxi.schemas/rng" /usr/share/xml/docbook/schema/rng/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/schemas/rng/docbook.rnc" \ "docbook.rnc" /usr/share/xml/docbook/schema/rng/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/schemas/rng/docbook.rnc" \ "docbook.rnc" /usr/share/xml/docbook/schema/rng/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/schemas/rng/docbookxi.rnc" \ "docbookxi.rnc" /usr/share/xml/docbook/schema/rng/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/schemas/rng/docbookxi.rnc" \ "docbookxi.rnc" /usr/share/xml/docbook/schema/rng/5.1/catalog.xml xmlcatalog --noout --create /usr/share/xml/docbook/schema/sch/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://docbook.org/xml/5.1/schemas/sch/docbook.schemas/sch" \ "docbook.schemas/sch" /usr/share/xml/docbook/schema/sch/5.1/catalog.xml && xmlcatalog --noout --add "uri" \ "http://www.oasis-open.org/docbook/xml/5.1/schemas/sch/docbook.schemas/sch" \ "docbook.schemas/sch" /usr/share/xml/docbook/schema/sch/5.1/catalog.xml
Opprett (eller oppdater) og fyll ut systemets XML katalog
(/etc/xml/catalog) ved å kjøre
følgende kommandoer som root
bruker:
if [ ! -e /etc/xml/catalog ]; then xmlcatalog --noout --create /etc/xml/catalog fi && xmlcatalog --noout --add "delegatePublic" \ "-//OASIS//DTD DocBook XML 5.1//EN" \ "file:///usr/share/xml/docbook/schema/dtd/5.1/catalog.xml" \ /etc/xml/catalog && xmlcatalog --noout --add "delegateSystem" \ "http://docbook.org/xml/5.1/dtd/" \ "file:///usr/share/xml/docbook/schema/dtd/5.1/catalog.xml" \ /etc/xml/catalog && xmlcatalog --noout --add "delegateURI" \ "http://docbook.org/xml/5.1/dtd/" \ "file:///usr/share/xml/docbook/schema/dtd/5.1/catalog.xml" \ /etc/xml/catalog && xmlcatalog --noout --add "delegateURI" \ "http://docbook.org/xml/5.1/rng/" \ "file:///usr/share/xml/docbook/schema/rng/5.1/catalog.xml" \ /etc/xml/catalog && xmlcatalog --noout --add "delegateURI" \ "http://docbook.org/xml/5.1/sch/" \ "file:///usr/share/xml/docbook/schema/sch/5.1/catalog.xml" \ /etc/xml/catalog && xmlcatalog --noout --add "delegateURI" \ "http://docbook.org/xml/5.1/xsd/" \ "file:///usr/share/xml/docbook/schema/xsd/5.1/catalog.xml" \ /etc/xml/catalog
DocBook XSL Stilark pakken inneholder XSL stilark. Disse er nyttige for å utføre transformasjoner på XML DocBook filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/docbook/xslt10-stylesheets/releases/download/release/1.79.2/docbook-xsl-nons-1.79.2.tar.bz2
Nedlasting MD5 sum: 2666d1488d6ced1551d15f31d7ed8c38
Nedlastingsstørrelse: 22 MB
Estimert diskplass som kreves: 58 MB (inkluderer installasjon av valgfri dokumentasjon)
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/docbook-xsl-nons-1.79.2-stack_fix-1.patch
Valgfri dokumentasjon
Nedlasting (HTTP): https://github.com/docbook/xslt10-stylesheets/releases/download/release/1.79.2/docbook-xsl-doc-1.79.2.tar.bz2
Nedlasting MD5 sum: 62375ca864fc198cb2b17d98209d0b8c
Nedlastingsstørrelse: 522 KB
apache-ant-1.10.14 (å produsere “webhelp” dokumenter), libxslt-1.1.42 (eller en hvilken som helst annen XSLT prosessor), for å behandle Docbook dokumenter, Ruby-3.3.4 (for å bruke “epub” stilark), Zip-3.0 (for å produsere “epub3” dokumenter), og Saxon6 og Xerces2 Java (brukt med apache-ant-1.10.14 for å produsere “webhelp” dokumenter)
Først, fiks et problem som forårsaker stabeloverflyt når du gjør rekursjon:
patch -Np1 -i ../docbook-xsl-nons-1.79.2-stack_fix-1.patch
Hvis du lastet ned den valgfrie dokumentasjonens tarball, pakk den ut med følgende kommando:
tar -xf ../docbook-xsl-doc-1.79.2.tar.bz2 --strip-components=1
BLFS installerer ikke de nødvendige pakkene for å kjøre testpakken og gi meningsfulle resultater.
Installer DocBook XSL
Stilark ved å kjøre følgende kommandoer som
root bruker:
install -v -m755 -d /usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2 &&
cp -v -R VERSION assembly common eclipse epub epub3 extensions fo \
highlighting html htmlhelp images javahelp lib manpages params \
profiling roundtrip slides template tests tools webhelp website \
xhtml xhtml-1_1 xhtml5 \
/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2 &&
ln -s VERSION /usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2/VERSION.xsl &&
install -v -m644 -D README \
/usr/share/doc/docbook-xsl-nons-1.79.2/README.txt &&
install -v -m644 RELEASE-NOTES* NEWS* \
/usr/share/doc/docbook-xsl-nons-1.79.2
Hvis du lastet ned den valgfrie dokumentasjonens tarball,
installer dokumentasjonen ved å utsted følgende kommando som
root bruker:
cp -v -R doc/* /usr/share/doc/docbook-xsl-nons-1.79.2
Hvis du installerer gjeldende versjon av docbook-xsl-nons
over en tidligere versjon av docbook-xsl, fjern da de
gamle omskriv oppføringer i katalogen som root bruker:
sed -i '/rewrite/d' /etc/xml/catalog
Opprett (eller legg til) og fyll ut XML katalogfilen ved å
bruke følgende kommandoer som root bruker (både http og https skjemaer brukes fordi
oppstrøms har hatt begge i sin dokumentasjon):
if [ ! -d /etc/xml ]; then install -v -m755 -d /etc/xml; fi &&
if [ ! -f /etc/xml/catalog ]; then
xmlcatalog --noout --create /etc/xml/catalog
fi &&
xmlcatalog --noout --add "rewriteSystem" \
"http://cdn.docbook.org/release/xsl-nons/1.79.2" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteSystem" \
"https://cdn.docbook.org/release/xsl-nons/1.79.2" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"http://cdn.docbook.org/release/xsl-nons/1.79.2" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"https://cdn.docbook.org/release/xsl-nons/1.79.2" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteSystem" \
"http://cdn.docbook.org/release/xsl-nons/current" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteSystem" \
"https://cdn.docbook.org/release/xsl-nons/current" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"http://cdn.docbook.org/release/xsl-nons/current" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"https://cdn.docbook.org/release/xsl-nons/current" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteSystem" \
"http://docbook.sourceforge.net/release/xsl/current" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"http://docbook.sourceforge.net/release/xsl/current" \
"/usr/share/xml/docbook/xsl-stylesheets-nons-1.79.2" \
/etc/xml/catalog
Noen ganger kan du finne behov for å installere andre
versjoner av XSL stilark ettersom noen prosjekter refererer
til en spesifikk versjon. Et eksempel er BLFS-6.0, som
krevde 1.67.2-versjonen. I disse forekomster bør du
installere enhver annen nødvendig versjon i sin egen
versjonert mappe og opprett katalogoppføringer som følger
(erstatt ønsket versjonsnummer for <version>):
xmlcatalog --noout --add "rewriteSystem" \
"http://docbook.sourceforge.net/release/xsl/<version>" \
"/usr/share/xml/docbook/xsl-stylesheets-<version>" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"http://docbook.sourceforge.net/release/xsl/<version>" \
"/usr/share/xml/docbook/xsl-stylesheets-<version>" \
/etc/xml/catalog
Itstool trekker ut meldinger fra XML filer og sender ut PO malfiler, og slår deretter sammen oversettelser fra MO filer for å lage oversatte XML filer. Det bestemmer hva som skal oversettes og hvordan dele den inn i meldinger ved hjelp av W3C Internationalization Tag Set (ITS).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://files.itstool.org/itstool/itstool-2.0.7.tar.bz2
Nedlasting MD5 sum: 267a3bdc72a2d8abb1b824f2ea32ee9b
Nedlastingsstørrelse: 104 KB
Estimert diskplass som kreves: 688 KB
Estimert byggetid: mindre enn 0.1 SBU
Først, fikse noen kompatibilitetsproblemer med Python-3.12:
sed -i 's/re.sub(/re.sub(r/' itstool.in && sed -i 's/re.compile(/re.compile(r/' itstool.in
Installer itstool ved å kjøre følgende kommandoer:
PYTHON=/usr/bin/python3 ./configure --prefix=/usr && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
xmlto pakken er e grensesnitt til en XSL verktøykjede. Den velger et passende stilark for konverteringen du ønsker og bruker den ved hjelp av en ekstern XSLT prosessor. Den presterer også eventuell nødvendig etterbehandling.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://pagure.io/xmlto/archive/0.0.29/xmlto-0.0.29.tar.gz
Nedlasting MD5 sum: 556f2642cdcd005749bd4c08bc621c37
Nedlastingsstørrelse: 64 KB
Estimert diskplass som kreves: 1.9 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
docbook-xml-4.5, docbook-xsl-nons-1.79.2, og libxslt-1.1.42
fop-2.9, dblatex, og PassiveTeX
En av Links-2.30, Lynx-2.9.2, W3m, eller ELinks
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/xmlto
Installer xmlto ved å kjøre følgende kommandoer:
autoreconf -fiv && LINKS="/usr/bin/links" ./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
LINKS="/usr/bin/links": Denne
miljøvariabelen fikser en feil som forårsaker xmlto til å tro at
links
kommandoen er den samme som elinks. Innstilling av
denne variabelen forårsaker ikke problemer hvis links ikke er
installert, med mindre du har ELinks installert, og ønsker å
bruke den til etterbehandling av tekst bakstykke, i så fall
fjern det.
Dette kapittelet inkluderer programmer som oppretter, manipulerer eller viser PostScript filer og opprette eller se Portable Document Format PDF filer.
Enscript konverterer ASCII tekstfiler til PostScript, HTML, RTF, ANSI og overstreker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Enscript kan ikke konvertere UTF-8 kodet tekst til PostScript. Problemstillingen diskuteres i detalj i Den Nødvendige Kodingen er Ikke et Gyldig Alternativ delen av Lokale Relaterte Problemer siden. Løsningen er å bruke paps-0.8.0, i stedet for Enscript, for å konvertere UTF-8 kodet tekst til PostScript.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/enscript/enscript-1.6.6.tar.gz
Nedlasting MD5 sum: 3acc242b829adacabcaf28533f049afd
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: 0.1 SBU
texlive-20240312 (eller install-tl-unx)
Installer Enscript ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc/enscript \
--localstatedir=/var \
--with-media=Letter &&
make &&
pushd docs &&
makeinfo --plaintext -o enscript.txt enscript.texi &&
popd
Hvis du har texlive-20240312 installert, kan du opprette Postscript og PDF dokumentasjon ved å kjøre (støtter ikke parallell make):
make -j1 -C docs ps pdf
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install &&
install -v -m755 -d /usr/share/doc/enscript-1.6.6 &&
install -v -m644 README* *.txt docs/*.txt \
/usr/share/doc/enscript-1.6.6
Hvis du har bygget Postscript og PDF dokumentasjon, installer
den ved å bruke følgende kommando som root bruker:
install -v -m644 docs/*.{dvi,pdf,ps} \
/usr/share/doc/enscript-1.6.6
--sysconfdir=/etc/enscript:
Denne bryteren putter konfigurasjonsdata i /etc/enscript i stedet for /usr/etc.
--localstatedir=/var:
Denne bryteren stiller inn mappen for kjøretidsdata til
/var i stedet for /usr/var.
--with-media=Letter:
Denne bryteren stiller inn mellomformat til Letter størrelse
i stedet for A4 som er standard.
|
konverterer diff utdata filer til et format egnet til å skrives ut med enscript |
|
|
er et filter, som hovedsakelig brukes til å skrive ut skript, det konverterer ASCII tekstfiler til PostScript, HTML, RTF, ANSI og overstreker |
|
|
oppretter et skriftkart fra en gitt fil |
|
|
er et skript som kaller enscript og sender de riktige parameterne for å lage overstrekede skrifter |
|
|
deler dokumenter med lange linjer |
|
|
er en awk-lik tekstbehandlingsverktøy med noen tilstandsmaskinutvidelser. Den er designet for program kildekodeutheving og for lignende oppgaver der status informasjon hjelper inndatabehandling |
ePDFView-gtk3 er en forgrening av det gamle ePDFView programmet. Selv om github depotet https://github.com/Flow-It/epdfview_old.git navngir den som 'old', er det gtk3 forgreningen. Det er en lettvekts erstatning for Evince siden den ikke er avhengig av GNOME biblioteker og er mer kapabel enn MuPDF.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/epdfview-gtk3/epdfview-gtk3-20200814.tar.xz
Nedlasting MD5 sum: d222a3dc26c2faf6f862018bb478fb36
Nedlastingsstørrelse: 184 KB
Estimert diskplass som kreves: 3.5 MB
Estimert byggetid: mindre enn 0.1 SBU (bruker parallellisme=4)
GTK+-3.24.43 og Poppler-24.08.0
Cups-2.4.10 (for å få tilgang til utskriftskøer), desktop-file-utils-0.27, og hicolor-icon-theme-0.18 (begge for ikonene denne installerer)
Hjemmesiden til prosjektets depot nevner at det er valgfrie avhengigheter, som aktiveres av brytere. Disse er for å bygge dokumentasjon og kjøring av testpakken, Doxygen-1.12.0 og Cppunit. Merk at doxygen installerer bare en skjelettside om seg selv, som ikke inneholder pakkedokumentasjon, og testkoden kompilerer ikke med nyere versjoner av C++.
Installer ePDFView-gtk3 ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D enable-printing=true \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Denne pakken installerer ikonfiler i /usr/share/icons/hicolor hierarkiet og
skrivebordsfiler inn i /usr/share/applications hierarkiet. Du
kan forbedre systemytelsen og minnebruken ved å oppdatere
/usr/share/icons/hicolor/index.theme og
/usr/share/applications/mimeinfo.cache.
For å utføre oppdateringen må du ha GTK+-3.24.43 installert
(for ikon hurtiglageret) og desktop-file-utils-0.27 (for
skrivebords hurtiglageret) og utfør følgende kommandoer som
root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor && update-desktop-database -q
-D enable-printing=true: bygger koden for å koble til cups utskriftskø(er). Utelat dette hvis du ikke har installert cups.
ePDFView-gtk3 har flere hurtigtaster for valgfrie funksjoner. Flesteparten av dem er 'av' som standard, inkludert verktøylinjen, og hvis den har vært lukket med menyen deaktivert, kan programmet starte med alle alternativer ikke synlig før de relevante funksjonstastene er trykket.
[F6] - veksle mellom verktøylinjen
[F7] - veksle mellom menyen
[F8] - veksle mellom omvendt-farger
[F9] - veksle mellom vis-indeks
[F11] - veksle mellom fullskjerm
FOP (Formatting Objects Processor) pakken inneholder en utskriftsformatering drevet av XSL formateringsobjekter (XSL-FO). Det er en Java applikasjon som leser et formateringsobjekttre og gjengir de resulterende sidene til en spesifisert utdata. Utdataformater som for øyeblikket støttes inkluderer PDF, PCL, PostScript, SVG, XML (arealtrerepresentasjon), print, AWT, MIF og ASCII tekst. Det primære utdatamålet er PDF.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/xmlgraphics/fop/source/fop-2.9-src.tar.gz
Nedlasting MD5 sum: f7537ca7f2e16971fa99c8bb0dad62c7
Nedlastingsstørrelse: 20 MB
Estimert diskplass som kreves: 333 MB (inkludert filer lastet ned til brukermappen)
Estimert byggetid: 0.9 SBU
Påkrevd Ytterligere Nedlastinger:
Maven build system:
https://archive.apache.org/dist/maven/maven-3/3.9.4/binaries/apache-maven-3.9.4-bin.tar.gz
0698a533397eda60cbebcc0fb68ae842
9.0 MB (i tillegg lastes ca. 90 MB ned til
byggingsbrukerens mappe)
Anbefalte pakker
Objects for Formatting Objects (OFFO)
orddelingsmønstre:
https://downloads.sourceforge.net/offo/2.2/offo-hyphenation.zip
bf9c09bf05108ef9661b8f08d91c2336
862 KB
et grafiske miljø (for å kjøre testene), JAI Image I/O Tools, og JEuclid
Forsikre deg om at $JAVA_HOME er
riktig innstilt før du begynner byggingen. For å bygge
JIMI SDK og/eller
XMLUnit utvidelsesklasser,
sørg for at tilsvarende .jar
filer kan bli funnet via CLASSPATH
miljøvariabelen.
Kopier XML orddelingsmønstrene til fop kildetreet ved å kjøre følgende kommandoer:
unzip ../offo-hyphenation.zip && cp offo-hyphenation/hyph/* fop/hyph && rm -rf offo-hyphenation
Fra og med fop-2.5 er Maven byggesystemet påkrevd. Vi bruker binæren levert av apache, som vi installerer på et midlertidig sted:
tar -xf ../apache-maven-3.9.4-bin.tar.gz -C /tmp
javadoc kommandoer som leveres med OpenJDK 10 og senere har blitt mye strengere enn tidligere versjoner når det gjelder samsvar med Javadoc kommentarene i kildekoden til HTML. Det gjør at FOP dokumentasjonen ikke oppfyller disse standardene, så samsvarskontrollene må bli deaktivert. Dette kan gjøres med følgende kommando:
sed -i '\@</javad@i\
<arg value="-Xdoclint:none"/>\
<arg value="--allow-script-in-comments"/>\
<arg value="--ignore-source-errors"/>' \
fop/build.xml
Kompilere fop ved å kjøre følgende kommandoer:
cd fop && LC_ALL=en_US.UTF-8 \ PATH=$PATH:/tmp/apache-maven-3.9.4/bin \ ant all javadocs && mv build/javadocs .
Denne pakken kommer med en testpakke, men java infrastrukturen installert i denne boken tillater ikke å kjøre den.
Nå, installer Fop som
root bruker:
install -v -d -m755 -o root -g root /opt/fop-2.9 && cp -vR build conf examples fop* javadocs lib /opt/fop-2.9 && chmod a+x /opt/fop-2.9/fop && ln -v -sfn fop-2.9 /opt/fop
Den siste tingen å gjøre er å rydde det vi har gjort:
rm -rf /tmp/apache-maven-3.9.4
sed -i ... build.xml: Dette legger til tre brytere til javadoc kommandoen, forhindrer at noen feil oppstår når du bygger dokumentasjonen.
export LC_ALL=en_US.UTF-8: kompilatoren mislykkes hvis du bruker en ASCII lokalitet.
ant target: Dette leser filen
build.xml og bygger målet:
compile kompilerer java kildene,
jar-main genererer jar arkiver,
jar-hyphenation genererer
orddeling mønstre for FOP, junit
kjører junit tester, og
javadocs bygger dokumentasjonen.
all målet kjører alt ovenfor.
ln -v -sf fop-2.9
/opt/fop: Dette er valgfritt og skaper en
bekvemmelighets symbolkobling slik at $FOP_HOME ikke trenger å endres hver gang det
er en endring av pakkeversjon.
Bruk av fop for å behandle noen store FO'er (inkludert FO avledet fra BLFS XML kilder), kan føre til minnefeil. Med mindre du legger til en parameter til java kommandoen brukt i fop skriptet kan du motta meldinger som ligner på det som vises nedenfor:
Exception in thread "main"
java.lang.OutOfMemoryError: Java heap space
For å unngå feil som dette, må du sende en ekstra parameter
til java
kommandoen brukt i fop skriptet. Dette kan
oppnås ved å lage en ~/.foprc
(som er hentet fra fop skriptet) og legge
til parameteren til FOP_OPTS
miljøvariabelen.
fop skriptet
ser etter en FOP_HOME
miljøvariabel for å finne fop klassebiblioteker. Du kan lage
denne variabelen ved å bruke ~/.foprc filen også. Opprett en
~/.foprc fil ved hjelp av
følgende kommandoer:
cat > ~/.foprc << "EOF"
FOP_OPTS="-Xmx<RAM_Installed>m"
FOP_HOME="/opt/fop"
EOF
Erstatt <RAM_Installed> med
et tall som representerer mengden RAM installert på
datamaskinen din (i megabyte). Et eksempel vil være
FOP_OPTS="-Xmx768m".
For å inkludere fop skript i din sti,
oppdater den systemomfattende profilen med følgende
kommando som root bruker:
cat > /etc/profile.d/fop.sh << "EOF"
# Begin /etc/profile.d/fop.sh
pathappend /opt/fop
# End /etc/profile.d/fop.sh
EOF
Å kjøre fop
kan være noe detaljert. Standard loggingsnivå kan endres
fra INFO til hvilken som helst av FINEST, FINER, FINE,
CONFIG, INFO, WARNING, SEVERE, ALL eller OFF. For å gjøre
dette, rediger $JAVA_HOME/jre/lib/logging.properties
og endre oppføringene for .level og java.util.logging.ConsoleHandler.level
til ønsket verdi.
/opt/fop/{build,lib}; JAI komponenter
inkludert libmlib_jai.so, jai_codec.jar, jai_core.jar, og
mlibwrapper_jai.jar
MuPDF er en lettvekts PDF og XPS visningsprogram.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://www.mupdf.com/downloads/archive/mupdf-1.24.8-source.tar.gz
Nedlasting MD5 sum: 68a444a4828626c0c8aa7552fef583bf
Nedlastingsstørrelse: 52 MB
Estimert diskplass som kreves: 251 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
harfBuzz-9.0.0, libjpeg-turbo-3.0.1, OpenJPEG-2.5.2, og cURL-8.9.1
xdg-utils-1.2.1 (kjøretid), jbig2dec, og MuJS
Installer MuPDF ved å kjøre følgende kommandoer:
cat > user.make << EOF && USE_SYSTEM_FREETYPE := yes USE_SYSTEM_HARFBUZZ := yes USE_SYSTEM_JBIG2DEC := no USE_SYSTEM_JPEGXR := no # not used without HAVE_JPEGXR USE_SYSTEM_LCMS2 := no # need lcms2-art fork USE_SYSTEM_LIBJPEG := yes USE_SYSTEM_MUJS := no # build needs source anyway USE_SYSTEM_OPENJPEG := yes USE_SYSTEM_ZLIB := yes USE_SYSTEM_GLUT := no # need freeglut2-art fork USE_SYSTEM_CURL := yes USE_SYSTEM_GUMBO := no EOF export XCFLAGS=-fPIC && make build=release shared=yes verbose=yes && unset XCFLAGS
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make prefix=/usr \
shared=yes \
docdir=/usr/share/doc/mupdf-1.24.8 \
install &&
ln -sfv libmupdf.so.24.8 /usr/lib/libmupdf.so &&
ln -sfv libmupdf.so.24.8 /usr/lib/libmupdf.so.8 &&
chmod 755 /usr/lib/libmupdf.so.24.8 &&
ln -sfv mupdf-x11 /usr/bin/mupdf
ln -sfv mupdf-x11 /usr/bin/mupdf : Denne symbolske lenken velger mellom mupdf-gl og mupdf-x11 når du kjører mupdf.
|
er et program for visning av PDF, XPS, EPUB, og CBZ dokumenter, og ulike bildeformater som f.eks PNG, JPEG, GIFF, og TIFF |
|
|
samme som mupdf, ved hjelp av en opengl renderer |
|
|
samme som mupdf, ved hjelp av en X Window renderer |
|
|
er et program som brukes til å utføre rasteriseringsoppgaver med PDF dokumenter |
|
|
er et program for å utføre ulike operasjoner på PDF filer, for eksempel som sammenslåing og rengjøring av PDF dokumenter |
|
|
inneholder mupdf API funksjoner |
paps er en tekst til PostScript konverterer som fungerer gjennom Pango. Inndataen er en UTF-8 kodet tekstfil og den sender ut vektorisert PostScript. Den kan brukes for å skrive ut et komplekst skript som støttes av Pango.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/dov/paps/releases/download/v0.8.0/paps-0.8.0.tar.gz
Nedlasting MD5 sum: 6bd661b8fd224adc3343a91e6521a4f2
Nedlastingsstørrelse: 220 KB
Estimert diskplass som kreves: 4.0 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer paps ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-Werror \
--mandir=/usr/share/man &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Dette kapittelet inkluderer texlive applikasjoner som skaper utdata tilsvarende typesetting.
Det er to alternative ruter gjennom dette kapittelet:
Noen mennesker vil kanskje bruke det binære installasjonsprogrammet, enten på grunn av kompleksiteten ved å installere hele texlive fra kilden, eller fordi de bare vil ha en del av pakken, eller kanskje fordi de ønsker å få oppdateringer så snart de er tilgjengelige (kilden oppdateres kun årlig, men binærfilene og tilhørende tex og sty filer oppdateres i omtrent 10 måneder). Disse menneskene bør begynne med Sette PATH for TeX Live og følg deretter install-tl-unx instruksjonene. Etter installasjonen kan de kjøre tlmgr for å oppdatere systemet deres.
De fleste som leser BLFS vil ønske å bygge fra kilden. BLFS pleide å starte med å installere install-tl-unx og så bruk det til å starte opp bygget. Nå for tiden bygger vi nesten hele texlive uten en binær installasjon, ved å legge til de separat pakkede texmf filene i dette bygget. For dette, start med Sette PATH for TeX Live så gå til texlive-20240312 som vil installere det meste av texlive, sammen med alle av støttefilene. Denne nesten komplette installasjonen kan deretter brukes for å bygge de resterende delene av texlive: asymptote-2.91, biber-2.20, dvisvgm-3.4, og xindy-2.5.1.
Fordi texmf filene (inkludert dokumentasjon, fonter, skript og støttefiler) er alt i en tarball, er det ikke praktisk å begrense hva som blir trukket ut på en fornuftig måte (du kan ekskludere en eller annen typesetting motorer, ikke dets mange støttefiler) når du bygger fra kilden på denne måten.
I begge tilfeller installeres BLFS i /opt/texlive/2024.
Vær også oppmerksom på at texlive utgis årlig, og oppdatering fra
forrige år til inneværende år støttes ikke lenger. Hvis du ønsker
å beholde versjoner for flere år, for det meste kan du montere
det gamle eller nye systemet på /opt/texlive og fikse PATH etter
behov. Men å gjøre det vil ikke bevare noen endringer i
texmf-local og hvis du bygger fra
kilden og prøver å kjøre en nyere versjon av biber med en eldre versjon av biblatex er det usannsynlig at det fungerer.
Oppstrøms foretrekker å installere i /usr/local men BLFS redaktørene anser det som
upraktisk, og tenker at å bruke /opt/texlive er mer passende. Opprinnelig
BLFS brukte en full binær installasjon for å starte opp
kildeinstallasjonen, slik at samme prefiks brukes for begge.
Før du begynner å bygge TeX Live, sett opp PATH slik at
systemet kan finne filene på riktig måte. Hvis du setter opp
påloggingsskriptet som anbefalt i Oppstartsfilene til Bash
Skallet, oppdater de nødvendige banene ved å lage
texlive.sh skriptet. Programmene
er alltid installert i et <ARCH>-linux undermappe og på
32-bit x86 er dette alltid i386-linux. For x86_64 og i?86 kan
vi generere dette som $TEXARCH:
Hvis du oppgraderer fra et tidligere års versjon, bør du
manuelt redigere texlive.sh for
å sikre at versjonen for året du ønsker å bruke er den eneste
TeX tilstede (noen trenger å holde flere år tilgjengelig for
å sikre at det ikke er noen regresjoner i dokumentene deres).
Lag nå texlive.sh skriptet som root bruker:
TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/')
cat > /etc/profile.d/texlive.sh << EOF
# Begin texlive setup
TEXLIVE_PREFIX=/opt/texlive/2024
export TEXLIVE_PREFIX
pathappend \$TEXLIVE_PREFIX/texmf-dist/doc/info INFOPATH
pathappend \$TEXLIVE_PREFIX/bin/$TEXARCH
TEXMFCNF=\$TEXLIVE_PREFIX/texmf-dist/web2c
export TEXMFCNF
# End texlive setup
EOF
unset TEXARCH
Omvendt skråstrek før dollartegn i skriptet ovenfor er for å lette en kopiering/lim inn operasjon. Omvendt skråstrek bør ikke vises i selve skriptet.
De nye banene kan aktiveres umiddelbart ved å kjøre:
source /etc/profile
Du bør nå fortsette enten til install-tl-unx for en binær installasjon av texlive, eller til texlive-20240312 for å begynne å installere fra kilden.
TeX Live pakken er en omfattende TeX dokumentproduksjonssystem. Det inkluderer TeX, LaTeX2e, LuaLaTeX, Metafont, MetaPost, BibTeX og mange andre programmer; en omfattende samling av makroer, fonter og dokumentasjon; og støtte til typesetting i mange forskjellige skript fra hele verden.
Denne siden er for folk som ønsker å bruke det binære
installasjonsprogrammet til programmene, skriptene og mange
støttefiler og dokumentasjon. Installasjonsprogrammet
oppdateres ofte, så alle publiserte md5sum vil snart være
utdatert. Nyere versjoner av installatøren forventes å virke
med disse instruksjonene så lenge som de installerer til en
2024/ mappe.
Det er to grunner til at du kanskje ønsker å installere
binærfilene i BLFS: enten trenger du en mindre installasjon
(f.eks. som et minimum vanlig TeX uten LaTeX, ConTeXt, etc),
eller du ønsker å bruke tlmgr til å få
oppdateringer mens denne versjonen støttes (vanligvis frem
til mars året etter at den ble utgitt). For sistnevnte
foretrekker du kanskje å installere i din /home mappe som en uprivilegert bruker, og
for deretter å gjøre tilsvarende endringer i PATH i din
~/.bashrc eller tilsvarende.
Hvis du ønsker å bruke ConTeXt med luametatex (mesteparten av den gamle MKII og MKIV koden ble fjernet fra TeX Live 2023 av ConTeXt utvikler), bruk av binær er sannsynligvis det enkleste alternativet. Kilden sendes ikke lenger med TeX Live og er dårlig tilpasset å bygge med systemer unntatt de som kjører Mac og Windows. Se kommentar 1 til 5 av #17823.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
Nedlasting MD5 sum: Varierer ofte
Nedlastingsstørrelse: 5.5 MB
Estimert diskplass som kreves: 85 MB for vanlig TeX, typisk 2 til 4 MB for latex og senere motorer, 8,6 GB hvis alt er inkludert
Estimert byggetid: varierer, avhengig av nettverkshastighet og trafikk
GnuPG-2.4.5 (for å validere både de første nedlastingene, og også eventuelle oppdateringer du senere kan gjøre ved å bruke tlmgr) og libwww-perl-6.77 (å bruke en enkelt tilkobling til serveren, som vil redusere belastningen og øke hastigheten)
Binærfilene er for det meste knyttet til inkluderte statiske biblioteker eller generelle (LFS) systembiblioteker, men noen få av programmene og flere skript vil mislykkes hvis følgende pakker ikke er til stede:
ghostscript-10.03.1 lastes dynamisk av den eksterne applikasjonen dvisvgm, som brukes av asy når det oppretter SVG filer.
Xorg Biblioteker og libxcb-1.17.0 er nødvendig for inimf, mf, pdfclose, pdfopen og xdvi-xaw. Men hvis du bruker asy, eller bruker en TeX motor for å lage en PDF fil, vil du trenge et grafiske miljø (for PDF filer, dette er for å støtte en PDF leser etter eget valg epdfview-gtk3-20200814).
Den binære versjonen av asy trenger Freeglut-3.6.0.
Den binære versjonen av asy er koblet til libGLX.so.0 fra
libglvnd,
men installasjon som vil bryte fremtidige oppdateringer av
BLFS pakker som f.eks Mesa-24.1.5. Omgå det ved å lage en
symbolkobling som root
bruker:
ln -sv libGL.so.1 /usr/lib/libGLX.so.0
De binære versjonene av biber og xindy er knyttet til libcrypt.so.1 fra gamle versjoner av
glibc. For å bruke disse to
programmene, følg Merknad om bare binære applikasjoner i
libxcrypt i LFS for å
installere ABI versjonen av 1 kryptbiblioteket.
Som alltid med bidratt binær programvare, er det mulig at nødvendige avhengigheter kan endres når installasjonsprogrammet oppdateres. Disse avhengighetene har bare blitt sjekket på x86_64.
Python2
brukes av ikke-vedlikeholde ebong CTAN modulen (ment for å
skrive bengali i Rapid Roman Format). /usr/bin/python er også i shebang linjen
for lateks papirstørrelse og lilyglyphs skript, og
dokumentasjon hos CTAN sier begge moduler har blitt oppdatert
for å fungere med python3. I pythontex er det skript for å
starte python3 eller python2 i henhold til systemets versjon
av python.
Ruby-3.3.4 brukes av to skript, det ene er
for pTex (japansk vertikal skrift) og det andre er
match_parens som kan være generelt nyttig. Perl modulen
Tk, som må kjøres fra en X11 økt for å kjøre testene og
krever Tk-8.6.14 brukes av et av skriptene for ptex
og er nødvendig for texdoctk (et GUI grensesnitt for å finne
dokumentasjonsfiler og åpne dem med riktig viser).
ps2pdf, fra
ghostscript-10.03.1, blir brukt av
noen verktøy og skript.
TeX Live sett av programmer
med sine støttedokumenter, fonter og verktøy er veldig store.
Oppstrøms vedlikeholdere anbefaler å plassere alle filer i en
enkelt mappestruktur. BLFS anbefaler /opt/texlive.
Hvis du har valgt å installere binæren som en vanlig
bruker, vil mappen for prefikset må kunne skrives av den
brukeren. root bruker kan
chown /opt/texlive/2024 til
den brukeren før brukeren starter installasjonen. Hvis noen
senere endring i den mapen gjøres av root bruker, det vil endre eieskapet, som
bryter bruken av vanlige brukere.
Som med alle andre pakker, pakk ut installasjonsprogrammet og
bytt til mappen, install-tl-<CCYYMMDD>. Dette
mappenavnet endres når installasjonsprogrammet oppdateres, så
bytt ut <CCYYMMDD> med riktig mappenavn.
Distribusjonsbinærfilene installert nedenfor kan bruke statisk kobling for generelle linux systembiblioteker. Ekstra biblioteker eller tolker som spesifisert i avhengighetsdelen trenger ikke å være tilstede under installasjonen, men programmene som trenger dem vil ikke kjøre før deres spesifikke avhengigheter er installert.
Med all bidratt binær programvare kan det være et misforhold mellom byggerens verktøykjede og maskinvaren din. I det meste av TeX vil dette sannsynligvis ikke gjøre noe, men i uvanlige tilfeller kan du treffe på problemer. For eksempel, hvis x86_64-prosessoren din ikke støtter 3dnowext eller 3dnow, 2014-06-28-binæren mislyktes i ConTeXt når du kjører LuaTeX, selv om lualatex fungerte, det samme gjorde i686 binærene på den samme maskinen. I slike tilfeller er den enkleste løsningen å installere texlive fra kilden. Tilsvarende x86_64 binærversjonen av asy kjører veldig sakte når du lager 3D diagrammer.
Nå, som root bruker:
TEXLIVE_INSTALL_PREFIX=/opt/texlive ./install-tl
Denne kommandoen er interaktiv og tillater valg eller modifikasjon av plattform, pakker, mapper og andre alternativer. Det fullstendige installasjons skjemaet vil kreve omtrent 4,9 gigabyte diskplass. Tiden til å fullføre nedlastingen vil avhenge av hastigheten på Internetttilkoblingen din og antall valgte pakker.
Det har blitt fastslått av Debian at python skriptet i
latex-make vil virke med
python3, så
oppdater dem for å påkalle det ved å kjøre følgende kommando
som root bruker:
for F in /opt/texlive/2024/texmf-dist/scripts/latex-make/*.py ; do test -f $F && sed -i 's%/usr/bin/env python%/usr/bin/python3%' $F || true done
test -f $F && sed ...: i en liten installer disse filene er kanskje ikke tilstede, så test om de eksisterer og hvis ikke returner "true" for å unngå feil hvis denne kommandoen har blitt kopiert inn i et av dine egne installasjonsskript.
./install-tl --location
http://mirror.aut.ac.nz/CTAN/systems/texlive/tlnet/:
bruk en variant av dette hvis du ønsker å bruke et annet
speil, for eksempel fordi du er i New Zealand, men
installatøren velger å bruke en australsk speil. Listen over
speil er på https://ctan.org/mirrors/.
|
Programmene som inngår i TeX er for mange til å liste
opp hver for seg. Vennligst referer til det enkelte
programmets HTML og PDF sider i ulike html, man
eller pdf filer i undermappene til |
I følge https://www.tug.org/historic/ master nettstedet i Frankrike støtter bare ftp og rsync. Nå som ftp generelt er utdatert, den siden har lenker til speil, hvorav noen støtter https, f.eks. i Utah og Chemntiz samt i Kina. Hvis du foretrekker å bruke et annet speil fra eksempelkoblingene her, må du navigere til systems/historic/texlive/2024 eller systems/texlive/2024 som tilfellet kan være.
Det meste av TeX Live kan bygges fra kilden uten en forhåndseksisterende installasjon, men xindy (for indeksering) trenger en fungerende versjon av latex og pdflatex når konfigurering kjøres, og testpakken og installere asy (for vektorgrafikk) vil mislykkes hvis TeX ikke allerede er installert. I tillegg, biber er ikke gitt innenfor texlive kilden og versjonen av dvisvgm i texlive treet kan ikke bygges hvis delte systembiblioteker brukes.
Alle disse pakkene behandles på deres egne sider og kan bli bygget etter installasjon av denne pakken. Hvis du ikke allerede har gjort det, burde du starte med Sette PATH for TeX Live slik at de siste kommandoene til å initialisere den nye installasjonen vil bli funnet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2024/texlive-20240312-source.tar.xz
Nedlasting MD5 sum: 1da2f08e3ba4a3708870dd088c1d6823
Nedlastingsstørrelse: 67 MB
Estimert diskplass som kreves: 9.1 GB inkludert tilleggsnedlastingen og testene, 8.3 GB installert
Estimert byggetid: 4.6 SBU inkludert tilleggsnedlastingen og testene, bygget med parallellitet=4
Mye av texlive miljøet (inkludert skript, dokumentasjon, fonter og diverse andre filer) er ikke en del av kilde tarballen. Du må laste de ned separat. Dette vil gi deg alt av tilleggsfiler som leveres av en full installasjon av binærfil versjonen, det er ingen realistisk måte å begrense hvilke deler som blir installert.
På grunn av størrelsen på denne pakken er det usannsynlig at den speiles av BLFS speil. Hvis du ikke kan laste ned filene for denne pakken, gå til https://www.ctan.org/mirrors/ for å finne et mer tilgjengelig speil.
Nedlasting (HTTP): https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2024/texlive-20240312-texmf.tar.xz
Nedlasting MD5 sum: e67ce334dd0fddda5f4a87b4fcaaf48f
Nedlastingsstørrelse: 4.0 GB
tlpdb databasen sendes som en egen tarball. texdoc programmet trenger en hurtiglagerfil avledet fra dette (og vil opprette et hurtiglager ved første kjøring).
Nedlasting (HTTP): https://ftp.tu-chemnitz.de/pub/tug/historic/systems/texlive/2024/texlive-20240312-extra.tar.xz
Nedlasting MD5 sum: 1bd045bd1673ce61bde590c10b86c6cc
Nedlastingsstørrelse: 1.9 MB
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/texlive-20240312-source-upstream_fixes-1.patch
Kilden leveres med sine egne versjoner av mange biblioteker, og vil bruke dem med mindre den blir tvunget til å bruke systemversjoner. Følgende anbefales slik at systemversjonen vil bli brukt: Cairo-1.18.0, Fontconfig-2.15.0, FreeType-2.13.3, GC-8.2.6, Graphite2-1.3.14, harfBuzz-9.0.0 (bygget med graphite2 aktivert), ICU-75.1, libpaper-2.2.5 (brukt av minst context og xelatex), og libpng-1.6.43
Videre forutsetter instruksjonene nedenfor at du bruker oppsettet beskrevet i Sette PATH for TeX Live.
Kilden leveres med egne versjoner av flere biblioteker som enten ikke er under aktiv utvikling, eller kun brukt for begrenset funksjonalitet. Hvis du installerer disse, som med noen andre valgfrie avhengigheter i denne boken må fortelle configure til å bruke systemversjonene. GD, t1lib, ZZIPlib, TECkit
Python2
brukes av ikke-vedlikeholde ebong CTAN modulen (ment for å
skrive bengali i Rapid Roman Format). /usr/bin/python er også i shebang linjen
for lateks papirstørrelse og lilyglyphs skript, og
dokumentasjon hos CTAN sier begge moduler har blitt oppdatert
for å fungere med python3. I pythontex er det skript for å
starte python3 eller python2 i henhold til systemets versjon
av python.
Ruby-3.3.4 brukes av to skript, det ene er
for pTex (japansk vertikal skrift) og det andre er
match_parens som kan være generelt nyttig. Perl modulen
Tk, som må kjøres fra en X11 økt for å kjøre testene og
krever Tk-8.6.14 brukes av et av skriptene for ptex
og er nødvendig for texdoctk (et GUI grensesnitt for å finne
dokumentasjonsfiler og åpne dem med riktig viser).
ps2pdf, fra
ghostscript-10.03.1, blir brukt av
noen verktøy og skript.
Installer TeX Live ved å kjøre følgende kommandoer:
Hvis du ønsker å oppgradere til gjeldende texlive på et eldre system hvor
ekstrapakker (asymptote,
dvisvgm, eller
xindy) har blitt
installert, må du installer disse på nytt i tillegg til å
fikse opp PATH for
$TEXLIVE_PREFIX.
En vellykket installasjon krever litt texlive kommandoer
skal kjøres som root bruker, så vi eksporterer TEXARCH
variabel for å la root
bruke det.
Nå, som en vanlig bruker:
export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &&
patch -Np1 -i ../texlive-20240312-source-upstream_fixes-1.patch &&
mkdir texlive-build &&
cd texlive-build &&
../configure -C \
--prefix=$TEXLIVE_PREFIX \
--bindir=$TEXLIVE_PREFIX/bin/$TEXARCH \
--datarootdir=$TEXLIVE_PREFIX \
--includedir=$TEXLIVE_PREFIX/include \
--infodir=$TEXLIVE_PREFIX/texmf-dist/doc/info \
--libdir=$TEXLIVE_PREFIX/lib \
--mandir=$TEXLIVE_PREFIX/texmf-dist/doc/man \
--disable-native-texlive-build \
--disable-static --enable-shared \
--disable-dvisvgm \
--with-system-cairo \
--with-system-fontconfig \
--with-system-freetype2 \
--with-system-gmp \
--with-system-graphite2 \
--with-system-harfbuzz \
--with-system-icu \
--with-system-libgs \
--with-system-libpaper \
--with-system-libpng \
--with-system-mpfr \
--with-system-pixman \
--with-system-zlib \
--with-banner-add=" - BLFS" &&
make
For å teste resultatene, utsted: make -k check. En test
psutils.test er kjent for å
mislykkes hvis du bruker systemets libpaper fordi TeX Live
inkluderer gamle versjoner av både psutils og libpaper som resulterer i en forskjell i
de siste desimalene til psresize testen. libpaper utvikler tror ikke dette er av
betydning.
Nå, som root bruker:
make install-strip && make texlinks && mkdir -pv $TEXLIVE_PREFIX/tlpkg/TeXLive/ && install -v -m644 ../texk/tests/TeXLive/* $TEXLIVE_PREFIX/tlpkg/TeXLive/ && tar -xf ../../texlive-20240312-extra.tar.xz -C $TEXLIVE_PREFIX/tlpkg --strip-components=2
Bare kjør make texlinks en gang. Hvis den kjøres på nytt, kan den endre alle programsymlinkene slik at de peker til seg selv og er ubrukelige.
Installer nå tilleggsfilene som root bruker:
tar -xf ../../texlive-20240312-texmf.tar.xz -C $TEXLIVE_PREFIX --strip-components=1
Fortsatt som root bruker,
initialiser det nye systemet (kommandoen fmtutil-sys --all vil
produsere masse
utdata):
mktexlsr && fmtutil-sys --all
For å tillate Evince-46.3.1 or dvisvgm-3.4 å lenke til
libkpathsea.so, som
root bruker (gjen)opprette en
symbolkobling fra /usr/lib:
ln -svf $TEXLIVE_PREFIX/lib/libkpathsea.so{,.6} /usr/lib
TeX Live inkluderer ikke kilden for ConTeXt, bare elementene som er på CTAN. Å prøve å bygge ConTeXt rent fra kilden på et BLFS TeX Live system er en nisjebruk og ser ut som om det vil være mer trøbbel enn det er verdt.
Hvis du ønsker å bruke ConTeXt med luametatex (det meste av den gamle MKII og MKIV koden ble fjernet fra TeX Live 2023 av ConTeXt utvikler), starter med binæren (bare installere ConTeXt, 753 MB i mars 2024) vil sannsynligvis være den enkleste måten å starte den på. Kilden til luametatex kan hentes med git fra github luametatex, kompilert med meson og ninja, og installert ved å kopiere til riktig programmappe. Dette bør unngå å måtte fikse alle symbolkoblinger osv. og unngå også å inkludere de mange urelaterte deler av texmf-dist. Se kommentarer 1 til 5 av #17823.
Du kan nå gå videre til asymptote-2.91, biber-2.20, dvisvgm-3.4 og / eller xindy-2.5.1 hvis du ønsker å installere dem.
-C: oppretter config.cache, som sparer betydelig tid i et parallellbygg.
--prefix=, --bindir=, --datarootdir=, og andre
“dir”
brytere: disse bryterne sørger for at filene installert fra
kilden vil overskrive alle tilsvarende filer som tidligere er
installert av install-tl-unx
slik at alternative metoder for å installere texlive er konsistente.
--includedir=
--libdir= : disse
bryterne sikrer at bibliotekene og inkluderte filer vil være
innenfor mappen for dette års texlive.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-shared: Bruk
delte versjoner av libkpathsea,
libptexenc, libsynctex, libtexlua52 og libtexluajit.
--with-system-...:
Med mindre denne parameteren brukes, vil de inkluderte
versjonene av disse bibliotekene bli statisk kompilert inn i
programmene som trenger dem. Hvis du bestemte deg for ikke å
installere et anbefalt bibliotek, utelat den tilsvarende
bryteren.
--disable-dvisvgm:
Som nevnt ovenfor, den sendte versjonen av dvisvgm, som har
modifiserte konfigurasjonsfiler, kan ikke bygges med delte
systembiblioteker.
make texlinks : dette kjører skriptet texlinks.sh for å lage symbolske lenker fra formater til motorer. I praksis, flere av målene som f.eks xetex er nå separate binærfiler og for disse vil den rapportere "file already exists".
tar -xf texlive-20240312-texmf.tar.xz -C $TEXLIVE_PREFIX --strip-components=1: tarballen inneholder filene for texmf-dist mappen, og fordi dens størrelse ønsker vi ikke å kaste bort tid og plass på å pakke den ut og etterpå kopiere filene.
install -v -m644
../texk/tests/TeXLive/*
$TEXLIVE_PREFIX/tlpkg/TeXLive/: Dette setter
perl modulene TLConfig.pm og
TLUtils.pm inn i mappen der det
binære installasjonsprogrammet plasserer dem - det er på
starten av perl @INC@ PATH i texlive når installert ved hjelp
av ovenstående konfigurasjons brytere. Uten disse modulene er
texlive ubrukelig.
--without-x: bruk dette hvis du
ikke har Xorg installert.
Det er mange andre "--disable" eller "--without"
alternativer. Noen av dem slik som --without-texinfo blir akseptert, men ikke
lenger gjør noe, andre vil forhindre at et program bygges -
men desto større mengde plass brukt til de relaterte
elementene i texmf betyr at det ikke er noen åpenbar fordel
fra å deaktivere noen av programmene.
fmtutil-sys --all: Dette initialiserer TeX formatene, Metafont baser og Metapost mems.
mtxrun --generate: Dette initialiserer ConTeXt systemet.
|
Programmene som inngår i TeX er for mange til å liste
opp hver for seg. Vennligst referer til det enkelte
programmets HTML og PDF sider i ulike html, man
eller pdf filer i undermappene til |
|
|
(kpathsearch) eksisterer for å slå opp en fil i en liste over mapper og brukes av kpsewhich |
|
|
er et bibliotek for japansk pTeX (publishing TeX) |
|
|
er SyncTeX (Synchronize TeXnology) parserbibliotek |
|
|
gir Lua 5.2, modifisert for bruk med LuaTeX |
|
|
gir LuaJIT, modifisert for bruk med LuaJITTeX |
Asymptote er en kraftig beskrivende vektor grafikkspråk som gir et naturlig koordinatbasert rammeverk for teknisk tegning. Etiketter og ligninger kan settes inn med LaTeX. Som i tillegg til EPS, PDF, og PNG utdata kan den produsere WebGL 3D HTML gjengivelse og (ved hjelp av dvisvgm) SVG utdata.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/asymptote/asymptote-2.91.src.tgz
Nedlasting MD5 sum: 75e09d0dfbf28c26f73401b305427fa7
Nedlastingsstørrelse: 14 MB
Estimert diskplass som kreves: 217 MB (46 MB installert etter å ha overskrevet filer i $TEXLIVE_PREFIX/texmf-dist/, med alle avhengighetene som er i BLFS)
Estimert byggetid: 0.9 SBU (bruke parallellisme=4)
ghostscript-10.03.1 og texlive-20240312
cURL-8.9.1, Freeglut-3.6.0, GC-8.2.6, GLEW-2.2.0, GLM-1.0.1 og libtirpc-1.3.5
dvisvgm-3.4 for å tillate svg utdata
fftw-3.3.10, gsl-2.8, libsigsegv-2.14, både Boost-1.86.0 og rapidjson for å bruke LSP som kan brukes med emacs, og eigen
ImageMagick-7.1.1-36 å konvertere utdata til andre formater som f.eks JPEG eller for å lage animerte GIFer, PyQt5 (ikke testet, har en byggeavhengighet av qt5-components-5.15.14) for å bruke xasy.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/asymptote
Enkelte 3D PDF skript fungerer kanskje ikke når de påkalles fra pdflatex på noen zen+ amdgpu APU maskiner.
Installer asymptote ved å kjøre følgende kommandoer:
export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &&
./configure --prefix=$TEXLIVE_PREFIX \
--bindir=$TEXLIVE_PREFIX/bin/$TEXARCH \
--datarootdir=$TEXLIVE_PREFIX/texmf-dist \
--infodir=$TEXLIVE_PREFIX/texmf-dist/doc/info \
--libdir=$TEXLIVE_PREFIX/texmf-dist \
--mandir=$TEXLIVE_PREFIX/texmf-dist/doc/man \
--disable-lsp \
--enable-gc=system \
--with-latex=$TEXLIVE_PREFIX/texmf-dist/tex/latex \
--with-context=$TEXLIVE_PREFIX/texmf-dist/tex/context/third &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--prefix=, --bindir=, --datarootdir=, og andre
“dir”
brytere: disse bryterne sørger for at filene installert fra
kilden vil overskrive alle tilsvarende filer som tidligere er
installert av install-tl-unx
slik at alternative metoder for å installere texlive er konsistente.
--libdir=$TEXLIVE_PREFIX/texmf-dist:
Denne parameteren sikrer at asymptote mappen vil på samme måte
overskrive alle filer installert av install-tl-unx.
--disable-lsp:
Språkserverprotokollen er aktivert som standard, med flere
tredjepartskilder inkludert, men det bygger ikke med mindre
boost og rapidjson er installert.
--enable-gc=system:
dette sikrer at systemversjonen av libgc.so vil bli brukt i stedet for
versjonen som ble levert med denne pakken.
--with-latex=
--with-context=:
Disse bryterne sørger for at stilfiler og en tex fil vil bli
installert i texlive mappen
i stedet for å lage en texmf-local mappe for dem.
Biber er en BibTeX erstatning for brukere av biblatex, skrevet i Perl, med full Unicode støtte.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/plk/biber/archive/v2.20/biber-2.20.tar.gz
Nedlasting MD5 sum: a7f400cdac3a3d9d9ab13ca053eb6791
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 15 MB (installerer 1.6MB med perl moduler)
Estimert byggetid: 0.4 SBU inkludert tester
Hvis du har oppdatert til en ny utgivelse av
texlive-source, biber og dens perl avhengigheter er
fortsatt til stede i /usr og
trenger ikke bygges om. Imidlertid installerer biblatex i
/opt/texlive/2024 og må
installeres på nytt.
Hvis du installerte avhengighetene ovenfor ved å bruke BLFS instruksjonene for hver av dem, perl ./Build.PL vil klage på at Mozilla::CA ikke er installert, men det er ikke nødvendig med mindre CPAN ble brukt til å installere modulene. BLFS oppdaterer LWP::Protocol::https til å bruke systemsertifikatene, Mozilla::CA bruker gamle sertifikater.
autovivification-0.18, Business-ISBN-3.009, Business-ISMN-1.204, Business-ISSN-1.005, Class-Accessor-0.51, Data-Compare-1.29, Data-Dump-1.25, Data-Uniqid-0.12, DateTime-Calendar-Julian-0.107, DateTime-Format-Builder-0.83, Encode-EUCJPASCII-0.03, Encode-HanExtra-0.23, Encode-JIS2K-0.05, File-Slurper-0.014, IO-String-1.08, IPC-Run3-0.049, Lingua-Translit-0.29, List-AllUtils-0.19, List-MoreUtils-0.430, Log-Log4perl-1.57, LWP-Protocol-https-6.14, Module-Build-0.4234, Parse-RecDescent-1.967015, PerlIO-utf8_strict-0.010, Regexp-Common-2024080801, Sort-Key-1.33, Text-BibTeX-0.89, Text-CSV-2.04, Text-Roman-3.5, Unicode-Collate-1.31, Unicode-LineBreak-2019.001, XML-LibXML-Simple-1.01, XML-LibXSLT-2.003000, og XML-Writer-0.900
File-Which-1.27 og Test-Differences-0.71
Det er mulig å installere alle manglende avhengigheter
automatisk. Du må først installere Module-Build-0.4234 ved bruk av
automatic
installation of perl modules. Så kjøre perl ./Build.PL og når
den spør deg, blir du root
bruker og kjører ./Build
installdeps - dette vil bruke CPAN og som
nevnt ovenfor vil den bruke Mozilla::CA i stedet for å
bruke systemsertifikater.
Installer Biber ved å kjøre følgende kommandoer:
perl ./Build.PL && ./Build
For å teste resultatene, tast inn: ./Build test
Nå, som root bruker:
./Build install
dvisvgm pakken konverterer DVI, EPS og PDF filer til SVG formatet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://github.com/mgieseki/dvisvgm/releases/download/3.4/dvisvgm-3.4.tar.gz
Nedlasting MD5 sum: 8d881999c56c5811b35ebaf86206a1e1
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 268 MB (net 7 MB installert etter overskriving av filer i $TEXLIVE_PREFIX/texmf-dist/, legg til 948 MB for testene)
Estimert byggetid: 0.8 SBU (legg til 0.5 SBU for testene, begge ved bruk av parallellitet=4)
Brotli-1.1.0, ghostscript-10.03.1, Potrace-1.16, og texlive-20240312
asciidoc-10.2.1 med xmlto-0.0.29 og libxslt-1.1.42 dblatex (med ovenstående) og xxHash (gjeldende versjon er inkludert i tarballen)
Testpakken forutsetter at en moderne versjon av Python har blitt installert som vanlig
python. Endrer
dette til å bruke python3 krever en sed til
en Makefile.in fil.
Installer dvisvgm ved å kjøre følgende kommandoer:
sed -i 's/python/&3/' tests/Makefile.in &&
./configure \
--bindir=$TEXLIVE_PREFIX/bin/${TEXARCH} \
--mandir=$TEXLIVE_PREFIX/texmf-dist/doc/man \
--with-kpathsea=$TEXLIVE_PREFIX &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--with-kpathsea=$TEXLIVE_PREFIX:
Dette tillater byggesystemet å finne deklarasjonene for
kpathsea
Xindy er en indeksprosessor som kan brukes til å generere boklignende indekser for vilkårlige dokumentforberedelsessystemer. Dette inkluderer systemer som TeX og LaTeX, Roff familien og SGML/XML baserte systemer (f.eks. HTML) som behandler en slags tekst og generere indekseringsinformasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.2 plattform.
Nedlasting (HTTP): https://tug.ctan.org/support/xindy/base/xindy-2.5.1.tar.gz
Nedlasting MD5 sum: 221acfeeb0f6f8388f89a59c56491041
Nedlastingsstørrelse: 506 KB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.2/xindy-2.5.1-upstream_fixes-2.patch
Installer xindy ved å kjøre følgende kommandoer:
export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &&
sed -i "s/ grep -v '^;'/ awk NF/" make-rules/inputenc/Makefile.in &&
sed -i 's%\(indexentry\)%\1\\%' make-rules/inputenc/make-inp-rules.pl &&
patch -Np1 -i ../xindy-2.5.1-upstream_fixes-2.patch &&
./configure --prefix=$TEXLIVE_PREFIX \
--bindir=$TEXLIVE_PREFIX/bin/$TEXARCH \
--datarootdir=$TEXLIVE_PREFIX \
--includedir=/usr/include \
--libdir=$TEXLIVE_PREFIX/texmf-dist \
--mandir=$TEXLIVE_PREFIX/texmf-dist/doc/man &&
make LC_ALL=POSIX
Denne pakken har ikke en testpakke.
Nå, som root bruker:
make install
sed -i "s/ grep -v '^;'/ awk NF/" ...: Bygget sorterer filer i latin{1..3} kodinger for å lage latin.xdy og unicode versjoner av disse for å lage utf8.xdy etter bruk av grep -v '^;' for å fjerne tomme linjer. Med grep-2.23 data som ikke er i forventet koding behandles som binær, noe som resulterer i en ubrukelig fil. Denne kommandoen bruker en alternativ måte å fjerne tomme linjer på.
sed -i 's%\(indexentry\)%\1\\%'
...: En regexp inneholder indexentry{ - perl har advart om uunngået
venstre klammeparentes i noen tid og behandler den nå som
ulovlig. Endre den til indexentry\{, dobling av skråstreken for
sed.
patch -Np1 -i ../xindy-2.5.1-upstream_fixes-2.patch: Xindy vedlikeholdes nå ved CTAN. Denne oppdateringen oppdaterer kilden med noen av endringene som er gjort der (men ignorerer endringer som bare ble gjort for å tillate mellomrom i stinavn og noen trivielle nylige endringer).
--prefix=, --bindir=, --datarootdir=, og andre
“dir”
brytere: disse bryterne sørger for at filene installert fra
kilden vil overskrive alle tilsvarende filer som tidligere er
installert av install-tl-unx
slik at alternative metoder for å installere texlive er konsistente.
--includedir=/usr/include:
Denne parameteren sikrer at kpathsea deklarasjoner fra texlive-20240312 vil bli
funnet.
make
LC_ALL=POSIX: med gjeldende versjon av
coreutils det er viktig å
bygge xindy i POSIX (eller
C) lokalitet fordi i en UTF-8 lokalitet filen latin.xdy vil bare inneholde en deklarasjon
og deretter en linje 'Binary file
(standard input) matches' i stedet for de mange
linjene av lisp fletteregler
kommandoer den burde inneholde.
Creative Commons Legal Code
Attribution-NonCommercial-ShareAlike 2.0
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM ITS USE.
License
THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS.
Definitions
"Collective Work" means a work, such as a periodical issue, anthology or encyclopedia, in which the Work in its entirety in unmodified form, along with a number of other contributions, constituting separate and independent works in themselves, are assembled into a collective whole. A work that constitutes a Collective Work will not be considered a Derivative Work (as defined below) for the purposes of this License.
"Derivative Work" means a work based upon the Work or upon the Work and other pre-existing works, such as a translation, musical arrangement, dramatization, fictionalization, motion picture version, sound recording, art reproduction, abridgment, condensation, or any other form in which the Work may be recast, transformed, or adapted, except that a work that constitutes a Collective Work will not be considered a Derivative Work for the purpose of this License. For the avoidance of doubt, where the Work is a musical composition or sound recording, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered a Derivative Work for the purpose of this License.
"Licensor" means the individual or entity that offers the Work under the terms of this License.
"Original Author" means the individual or entity who created the Work.
"Work" means the copyrightable work of authorship offered under the terms of this License.
"You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation.
"License Elements" means the following high-level license attributes as selected by Licensor and indicated in the title of this License: Attribution, Noncommercial, ShareAlike.
Fair Use Rights. Nothing in this license is intended to reduce, limit, or restrict any rights arising from fair use, first sale or other limitations on the exclusive rights of the copyright owner under copyright law or other applicable laws.
License Grant. Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below:
to reproduce the Work, to incorporate the Work into one or more Collective Works, and to reproduce the Work as incorporated in the Collective Works;
to create and reproduce Derivative Works;
to distribute copies or phonorecords of, display publicly, perform publicly, and perform publicly by means of a digital audio transmission the Work including as incorporated in Collective Works;
to distribute copies or phonorecords of, display publicly, perform publicly, and perform publicly by means of a digital audio transmission Derivative Works;
The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats. All rights not expressly granted by Licensor are hereby reserved, including but not limited to the rights set forth in Sections 4(e) and 4(f).
Restrictions.The license granted in Section 3 above is expressly made subject to and limited by the following restrictions:
You may distribute, publicly display, publicly perform, or publicly digitally perform the Work only under the terms of this License, and You must include a copy of, or the Uniform Resource Identifier for, this License with every copy or phonorecord of the Work You distribute, publicly display, publicly perform, or publicly digitally perform. You may not offer or impose any terms on the Work that alter or restrict the terms of this License or the recipients' exercise of the rights granted hereunder. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties. You may not distribute, publicly display, publicly perform, or publicly digitally perform the Work with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License Agreement. The above applies to the Work as incorporated in a Collective Work, but this does not require the Collective Work apart from the Work itself to be made subject to the terms of this License. If You create a Collective Work, upon notice from any Licensor You must, to the extent practicable, remove from the Collective Work any reference to such Licensor or the Original Author, as requested. If You create a Derivative Work, upon notice from any Licensor You must, to the extent practicable, remove from the Derivative Work any reference to such Licensor or the Original Author, as requested.
You may distribute, publicly display, publicly perform, or publicly digitally perform a Derivative Work only under the terms of this License, a later version of this License with the same License Elements as this License, or a Creative Commons iCommons license that contains the same License Elements as this License (e.g. Attribution-NonCommercial-ShareAlike 2.0 Japan). You must include a copy of, or the Uniform Resource Identifier for, this License or other license specified in the previous sentence with every copy or phonorecord of each Derivative Work You distribute, publicly display, publicly perform, or publicly digitally perform. You may not offer or impose any terms on the Derivative Works that alter or restrict the terms of this License or the recipients' exercise of the rights granted hereunder, and You must keep intact all notices that refer to this License and to the disclaimer of warranties. You may not distribute, publicly display, publicly perform, or publicly digitally perform the Derivative Work with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License Agreement. The above applies to the Derivative Work as incorporated in a Collective Work, but this does not require the Collective Work apart from the Derivative Work itself to be made subject to the terms of this License.
You may not exercise any of the rights granted to You in Section 3 above in any manner that is primarily intended for or directed toward commercial advantage or private monetary compensation. The exchange of the Work for other copyrighted works by means of digital file-sharing or otherwise shall not be considered to be intended for or directed toward commercial advantage or private monetary compensation, provided there is no payment of any monetary compensation in connection with the exchange of copyrighted works.
If you distribute, publicly display, publicly perform, or publicly digitally perform the Work or any Derivative Works or Collective Works, You must keep intact all copyright notices for the Work and give the Original Author credit reasonable to the medium or means You are utilizing by conveying the name (or pseudonym if applicable) of the Original Author if supplied; the title of the Work if supplied; to the extent reasonably practicable, the Uniform Resource Identifier, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work; and in the case of a Derivative Work, a credit identifying the use of the Work in the Derivative Work (e.g., "French translation of the Work by Original Author," or "Screenplay based on original Work by Original Author"). Such credit may be implemented in any reasonable manner; provided, however, that in the case of a Derivative Work or Collective Work, at a minimum such credit will appear where any other comparable authorship credit appears and in a manner at least as prominent as such other comparable authorship credit.
For the avoidance of doubt, where the Work is a musical composition:
Performance Royalties Under Blanket Licenses. Licensor reserves the exclusive right to collect, whether individually or via a performance rights society (e.g. ASCAP, BMI, SESAC), royalties for the public performance or public digital performance (e.g. webcast) of the Work if that performance is primarily intended for or directed toward commercial advantage or private monetary compensation.
Mechanical Rights and Statutory Royalties. Licensor reserves the exclusive right to collect, whether individually or via a music rights agency or designated agent (e.g. Harry Fox Agency), royalties for any phonorecord You create from the Work ("cover version") and distribute, subject to the compulsory license created by 17 USC Section 115 of the US Copyright Act (or the equivalent in other jurisdictions), if Your distribution of such cover version is primarily intended for or directed toward commercial advantage or private monetary compensation. 6. Webcasting Rights and Statutory Royalties. For the avoidance of doubt, where the Work is a sound recording, Licensor reserves the exclusive right to collect, whether individually or via a performance-rights society (e.g. SoundExchange), royalties for the public digital performance (e.g. webcast) of the Work, subject to the compulsory license created by 17 USC Section 114 of the US Copyright Act (or the equivalent in other jurisdictions), if Your public digital performance is primarily intended for or directed toward commercial advantage or private monetary compensation.
Webcasting Rights and Statutory Royalties. For the avoidance of doubt, where the Work is a sound recording, Licensor reserves the exclusive right to collect, whether individually or via a performance-rights society (e.g. SoundExchange), royalties for the public digital performance (e.g. webcast) of the Work, subject to the compulsory license created by 17 USC Section 114 of the US Copyright Act (or the equivalent in other jurisdictions), if Your public digital performance is primarily intended for or directed toward commercial advantage or private monetary compensation.
Representations, Warranties and Disclaimer
UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Termination
This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Derivative Works or Collective Works from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License.
Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above.
Miscellaneous
Each time You distribute or publicly digitally perform the Work or a Collective Work, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License.
Each time You distribute or publicly digitally perform a Derivative Work, Licensor offers to the recipient a license to the original Work on the same terms and conditions as the license granted to You under this License.
If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent.
This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You.
Creative Commons is not a party to this License, and makes no warranty whatsoever in connection with the Work. Creative Commons will not be liable to You or any party on any legal theory for any damages whatsoever, including without limitation any general, special, incidental or consequential damages arising in connection to this license. Notwithstanding the foregoing two (2) sentences, if Creative Commons has expressly identified itself as the Licensor hereunder, it shall have all rights and obligations of Licensor.
Except for the limited purpose of indicating to the public that the Work is licensed under the CCPL, neither party will use the trademark "Creative Commons" or any related trademark or logo of Creative Commons without the prior written consent of Creative Commons. Any permitted use will be in compliance with Creative Commons' then-current trademark usage guidelines, as may be published on its website or otherwise made available upon request from time to time.
Creative Commons may be contacted at http://creativecommons.org/.
Copyright © 1999-2024 The BLFS Development Team
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
UNIS/Composer 669 Modul
Applikasjons binært grensesnitt
Asymmetrisk Digital Abonnementslinje
Andrew Filsystem
AMD generisk innkapslet programvarearkitektur
Audio Interchange filformat
Avansert Linux lydarkitektur
American National Standards Institute
Applikasjonsprogrammeringsgrensesnitt
Apache bærbar kjøretid
Adresseoppløsningsprotokoll
Amerikansk standardkode for informasjonsutveksling
Randomisering av adresseromsoppsett
Abstrakt syntaksnotasjon
Avansert streamingformat
Avansert teknologivedlegg
Utvalg for avanserte TV-systemer
Tilgjengelighetsverktøysett
Lyd/video interleave
Verktøysett for abstrakt vindu
Grunnleggende kodingsregler
Berkeley Internet Name Domain
Grunnleggende inndata/utdata system
Beyond Linux From Scratch
Bit MaP
Kompaktdisk
Kompaktdisk digital lyd
Felles Internett filsystem
See Also SMB .
Kryptografisk meldingssyntaks
Komprimering/Dekomprimeringsmodul
Vanlig objektforespørselsmeglerarkitektur
Sentralenhet
Fargegjengivelsesordbok
Fargeromsmatrise
Krypteringssystem for innhold
Gjennomgripende stilark
Felles Unix utskriftssystem
System for samtidige versjoner
Disk med en gang
Katalogtildeling for adresseoppløsningsprotokoll
Digitalt utstyrsselskap
Utmerkede kodingsregler
Standard for datakryptering
Dynamisk vertskonfigurasjonsprotokoll
Ordbokserverprotokoll (RFC 2229)
Tysk industrinorm
Domenenavntjeneste
Diskoperativsystem
Direkte gjengivelsesinfrastruktur
Konvensjoner for dokumentstrukturering
Dynamiske delte objekter
Stilsemantikk og spesifikasjonsspråk for dokumenter
Digital Video
Digital allsidig disk ((også Digital Video Disk)
Enhetsuavhengig
Kjørbart og koblingsformat
Forbedret parallellport
Innkapslet PostScript
Opplyst Lydnisse
Utvidet protokoll for enkel E-postoverføring
Filendringsovervåking
Rask Maskinkode Mpeg-koder
Ofte Stilte Spørsmål
Faksimile
Rammebuffer
Filhierarkistandard
Gratis lyd uten tap CODEC
Formaterte objekter
Filoverføringsprotokoll
GNU Kompilatorsamling
GNU Databasebehandler
GTK+ Tegnesett
GNOME Skjermbehandler
Gruppeidentitet
Grafikkutvekslingsformat
OpenGL nyttig verktøysett
GNU Aritmetikk med flere presisjoner
GNU NYU Ada 9x oversetter
GNU Moddellmiljø for nettverksobjekter
GNU er ikke Unix
Global offsettabell
Allmenn offentlig lisens
Mus for generell bruk
Generisk sikkerhetstjeneste
Generisk sikkerhetstjeneste applikasjonsprogrammeringsgrensesnitt
GIMP Verktøysett
Grafisk brukergrensesnitt
Hierarkisk filsystem
Hypertekst markeringsspråk
Hypertekst overføringsprotokoll
Sikret hypertekst overføringsprotokoll
Legg på
Internetttilordnet nummermyndighet
Internasjonalt fargekonsortium
Meldingsprotokoll for Internettkontroll
Integrert drivelektronikk
Integrert utviklingsmiljø
Grensesnitt definisjonsspråk
Blekkstrålesystemer
Internett plasseringsserver
Internett meldingstilgangsprotokoll
Inode MONitor
Internett protokoll
See Also TCP .
Internetwork pakkeutveksling
Internett reléprat
Integrerte tjenester digitalt nettverk
Den internasjonale standardiseringsorganisasjonen
Internett tjenesteleverandør
Modul for Impulsesporing
Java avansert bildebehandling
Java arkiv
Java utviklingssett
JPEG Filutvekslingsformat
Felles fotoekspertgruppe
Nøkkeldistribusjonssenter
KSkrivebordsmiljø
Lame er ikke en MP3 koder
Lokalt nettverk
Lettvekts katalogtilgangsprotokoll
Lett datautvekslingsformat
Linux From Scratch
Generell offentlig lisens for bibliotek
Linjeskriver
Lempel-Ziv-Oberhumer
Lempel-Ziv-Welch
Medietilgangskontroll
Multimedia kommunikasjonsprotokoll
Flerpunkts kontrollenhet
Meldingssammendrag
E-post leveringsagent
MED/OctaMED modul
Digitalt grensesnitt for musikkinstrumenter
Maker utvekslingsformat
Medieuavhengig grensesnitt
Flerbruksutvidelser for Internett E-post
Massachusetts Institutt for teknologi
Nettverksgrafikk med flere bilder
ProTracker modul
MPEG-1 lydlag 3
Ekspertgruppe for bevegelige bilder
Magick skriptspråk
E-post transportagent
MultiTracker modul
Brukeragent for E-post
Nettdekkende ASseMbler
Nettverk nyheter overføringsprotokoll
Nettverksfilsystem
Nettverk informasjonstjeneste
Grunnleggende Posix trådbibliotek
Netscape flyttbar kjøretid
Nettverk sikkerhetstjenester
Tidsprotokoll for nettverk
Objektaktiverings rammeverk
Åpen Databasetilkobling
Åpen metadatarammeverk
Objektforespørselsmegler
See Also CORBA .
Objektrelasjonell databasestyringssystem
Operativsystem
Åpen programvarestiftelse
Åpent lydsystem
Pluggbare autentiseringsmoduler
Flyttbar BitMap
Perifer komponentsammenkobling
Skriverkontrollspråk
Pulskodemodulering
Primær domenekontroller
Flyttbart dokumentformat
Utvidelse og programlager for PHP
Flyttbart gråkart
Ganske bra personvern
PHP Hypertekst Forbehandler
Posisjonsuavhengig kjørbar
Personlig informasjonsbehandler
Parallellinje Internettprotokoll
Flyttbar nettverksgrafikk
Flyttbart objekt
Vanlig gammel dokumentasjon
Protokoll for E-postkonto
PostScript skriverbeskrivelse
Flyttbart pikselkart
Point-to-Point protokoll
Point-to-Point protokoll over Ethernet
PostScript
Brukertjeneste for ekstern autentisering
Tilfeldig tilgangsminne
Protokoll for omvendt adresseoppløsning
Revisjonskontrollsystem
Forespørsel om kommentarer
Rød Grønn Blå
Rød Grønn Blå Alpha
Kun Lesbart minne
Brølende pingvin
Anrop for ekstern prosedyre
Sanntidsklokke
Sanntidsprotokoll
Les Skriv
ScreamTracker versjon 3 modul
Sikkert/MIME
Skannertilgang nå enkelt
Enkelt autentiserings- og sikkerhetslag
Seriell avansert teknologivedlegg
Standard byggetid
Lite datamaskinsystemgrensesnitt
Programvareutviklingssett
Standard generalisert Markeringsspråk
Selvovervåking analyse og rapporteringsteknologi
Servermeldingsblokk
Synkronisert multimedieintegreringsspråk
Enkel E-post overføringsprotokoll
Strukturert spørrespråk
Sikkert Skall
Sikkert Sockets Lag
Stabel knusebeskyttelse
Angi brukeridentitet
Skalerbar vektorgrafikk
Super videografikktabell
Verktøykommandospråk
Overføring kontrollprotokoll
Billetttildelingsbillett
Tag(get) bildefilformat
Transportlagssikkerhet
TrueType Font
Tekst til tale
Universelt karaktersettt
Universal diskformat
Brukeridentitet
Brukerdatagramprotokoll
Brukergrensesnitt
Forent Modelleringsspråk
Ensartet ressurssøker
Universell seriebuss
Oppstrøms klar
UCS transformasjonsformat
Unix-til-Unix kopiprotokoll
Video kompaktdisk
Versjonskontrollsystem
Video Elektronikk Standardiseringsforbundet
Videografikktabell
Virtuell nettverksdatamaskin
Videoobjekt
Tale over IP
Verdensvevens Konsortium
Bølgeform lyd
Verdensveven
XSkjerm Bestyrings Kontrollprotokoll
FastTrackermodul
Utvidbart markeringsspråk
Utvidbart stilspråk
Utvidbart stilspråkforvandling
X/Åpen systemadministrasjon
XMultimediesystem
Gule Sider
Luminans-Båndbredde-Krominans