Opphavsrett © 1999-2025 The BLFS Development Team
Copyright © 1999-2025, 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.2025
| Revisjonshistorie | ||
|---|---|---|
| Revisjon 12.4 | 01.09.2025 | Trettiandre utgivelse |
| Revisjon 12.4 | 05.03.2025 | Trettiførste utgivelse |
| Revisjon 12.3 | 05.03.2025 | Trettiførste utgivelse |
| Revisjon 12.2 | 01.09.2024 | Trettiende utgivelse |
| Revisjon 12.1 | 01.03.2024 | Tjueniende utgivelse |
| Revisjon 12.0 | 01.09.2023 | Tjueåttende Utgivelse |
| Revisjon 11.3 | 01.03.2023 | Tjuesjuende Utgivelse |
| Revisjon 11.2 | 01.09.2022 | Tjueseksende Utgivelse |
| Revisjon 11.1 | 01.03.2022 | Tjuefemte Utgivelse |
| Revisjon 11.0 | 01.09.2021 | Tjuefjerde Utgivelse |
| Revisjon 10.1 | 01.03.2021 | Tjuetredje Utgivelse |
| Revisjon 10.0 | 01.09.2020 | Tjueandre Utgivelse |
| Revisjon 9.1 | 01.03.2020 | Tjueførste Utgivelse |
| Revisjon 9.0 | 01.09.2019 | Tjuende Utgivelse |
| Revisjon 8.4 | 01.03.2019 | Nittende Utgivelse |
| Revisjon 8.3 | 01.09.2018 | Attende Utgivelse |
| Revisjon 8.2 | 02.03.2018 | Syttende Utgivelse |
| Revisjon 8.1 | 01.09.2017 | Sekstende Utgivelse |
| Revisjon 8.0 | 25.02.2017 | Femtende Utgivelse |
| Revisjon 7.10 | 07.09.2016 | Fjortende Utgivelse |
| Revisjon 7.9 | 08.03.2016 | Trettende Utgivelse |
| Revisjon 7.8 | 01.10.2015 | Tolvte Utgivelse |
| Revisjon 7.7 | 06.03.2015 | Ellevte Utgivelse |
| Revisjon 7.6 | 23.09.2014 | Tiende Utgivelse |
| Revisjon 7.5 | 05.03.2014 | Niende Utgivelse |
| Revisjon 7.4 | 14.09.2013 | Åttende Utgivelse |
| Revisjon 6.3 | 24.08.2008 | Syvende Utgivelse |
| Revisjon 6.2 | 24.02.2007 | Sjette Utgivelse |
| Revisjon 6.1 | 14.08.2005 | Femte Utgivelse |
| Revisjon 6.0 | 02.04.2005 | Fjerde Utgivelse |
| Revisjon 5.1 | 05.06.2004 | Tredje Utgivelse |
| Revisjon 5.0 | 06.11.2003 | Andre Utgivelse |
| Revisjon 1.0 | 25.04.2003 | Første Utgivelse |
Sammendrag
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 Kapittel 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 (Kapittel 4, Sikkerhet), Filsystemer (Kapittel 5, Filsystemer og Diskbehandling -- inkludert GRUB for UEFI), Tekstredigerere (Kapittel 6, Redigeringsprogrammer), og Skall (Kapittel 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 Kapittel 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 (Kapittel 14, Koble til et Nettverk) ved hjelp av en rekke metoder som DHCP og PPP, og med elementer som nettverksbiblioteker (Kapittel 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 (Kapittel 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 teksttypen (blå, skrift med fast bredde) viser skjermutdata, sannsynligvis resultatet av å utstede en kommando.
/boot/grub/grub.conf
Denne tekstformen (skrift med fast bredde) brukes til å vise filnavn.
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.4 datert 1. september 2025. Dette er 12.4 gren av BLFS boken, for øyeblikket rettet mot LFS 12.4 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.4 – 1. september 2025
Endringsloggoppføringer:
1. september 2025
[bdubbs] - Utgivelse av BLFS-12.4.
31. august 2025
[renodr] - Oppdater til krb5-1.22.1 (Sikkerhetsoppdatering). Fikser #22015.
[renodr] - Oppdater til Qt6 and QtWebEngine 6.9.2 (Sikkerhetsoppdatering). Fikser #22025.
[renodr] - Oppdater til udisks2-2.10.2 (Sikkerhetsoppdatering). Fikser #22029.
[renodr] - Oppdater til libreoffice-25.8.1.1. Fikser #22039.
28. august 2025
[thomas] - Oppdater til kea-3.0.1. Fikser #22026.
27. august 2025
[renodr] - Oppdater til libreoffice-25.8.0.4. Fikser #22003.
25. august 2025
24. august 2025
[xry111] - Oppdater til unifont-16.0.04 (GRUB font data).
23. august 2025
[thomas] - Oppdater til postfix-3.10.4. Fikser #21996.
22. august 2025
21. august 2025
[bdubbs] - Oppdater til emacs-30.2. Fikser #21967.
[bdubbs] - Oppdater til mdadm-4.4. Fikser #21987.
[bdubbs] - Oppdater til btrfs-progs-v6.16. Fikser #21963.
[renodr] - Oppdater til Thunderbird-140.2.0esr (Sikkerhetsoppdatering). Fikser #21998.
[renodr] - Oppdater til Firefox-140.2.0esr samt SpiderMonkey (Sikkerhetsoppdatering). Fikser #21990.
[bdubbs] - Oppdater til ed-1.22.2. Fikser #22001.
20. august 2025
[renodr] - Oppdater til intel-microcode-20250812 (Sikkerhetsoppdatering). Fikser #21997.
[renodr] - Oppdater til mupdf-1.26.5. Fikser #21960.
[bdubbs] - Oppdater til librsvg-2.61.0. Fikser #21971.
[bdubbs] - Oppdater til AppStream-1.0.6. Fikser #21968.
[renodr] - Oppdater til fuse-3.17.4. Fikser #22000.
19. august 2025
[bdubbs] - Oppdater til cryptsetup-2.8.1. Fikser #21999.
[bdubbs] - Oppdater til harfbuzz-11.4.1. Fikser #21965.
[bdubbs] - Oppdater til protobuf-32.0. Fikser #21970.
[bdubbs] - Oppdater til libdisplay-info-0.3.0. Fikser #21959.
[bdubbs] - Oppdater til highway-1.3.0. Fikser #21969.
[bdubbs] - Oppdater til boost-1.89.0. Fikser #21964.
[bdubbs] - Oppdater til abseil-cpp-20250814.0. Fikser #21992.
18. august 2025
17. august 2025
[thomas] - Oppdater til libxfce4ui-4.20.2, libxfce4windowing-4.20.4, xfce4-panel-4.20.5, xfce4-session-4.20.3, xfce4-settings-4.20.2. Fikser #21974.
16. august 2025
[bdubbs] - Oppdater til nss-3.115. Fikser #21984.
[renodr] - Oppdater til Python-3.13.7 (synkroniser med LFS). Fikser #21972.
[renodr] - Oppdater til vim-9.1.1629 (synkroniser med LFS). Fikser #21980.
[renodr] - Utførte Python avhengighetsoppdateringene for BLFS 12.4. Dette inkluderer oppdateringer til certifi-2025.1.31, charset-normalizer-3.4.3, msgpack-1.1.1, pytz-2025.2, snowballstemmer-3.0.1, og urllib3-2.5.0. Fikser #21978.
[renodr] - Lagt til roman-numerals-py Python Avhengighet. Fikser #21977.
[renodr] - Oppdater til pycairo-1.28.0 (Python Modul). Fikser #21976.
[renodr] - Oppdater til build-1.3.0 (Python Module). Fikser #21975.
[renodr] - Oppdater til cython-3.1.3 (Python Modul). Fikser #21966.
[renodr] - Oppdater til sentry_sdk-2.35.0 (Python Modul). Fikser #21720.
[renodr] - Oppdater til luajit-20250816. Fikser #21982.
[renodr] - Oppdater til x264-20250815. Fikser #21981.
[renodr] - Oppdater til postgresql-17.6 (Sikkerhetsoppdatering). Fikser #21973.
[renodr] - Oppdater til ImageMagick-7.1.2-1 (Sikkerhetsoppdatering). Fikser #21983.
15. august 2025
[renodr] - Oppdater til biber-2.21. Fikser #21843.
[renodr] - Oppdater til mercurial-7.1. Fikser #21547.
[zeckma] - Oppdater til mesa-25.1.8. Fikser #21748.
[renodr] - Utførte avhengighetsoppdateringer for Perl moduler for BLFS 12.4. Dette inkluderer oppdateringer til Alien-Libxml2-0.20, Business-ISBN-Data-20250815.001, DateTime-1.66, DateTime-Locale-1.45, DateTime-TimeZone-2.65, Module-Runtime, Path-Tiny-0.150, Specio-0.52, Test-Deep-1.205, Test-File-1.995, Test-Simple-1.302214, Text-CSV_XS-1.61, og Tie-Cycle-1.231. Fikser #21979.
[renodr] - Lagt til Clone::PP Perl Avhengighet, trengs for Specio-0.52. Del av #21979.
[renodr] - Fikset oppstart av GDM på SysV systemer som bruker X11 i stedet for Wayland, for eksempel systemer med NVIDIA GPU-er og virtuelle maskiner.
14. august 2025
12. august 2025
[bdubbs] - Oppdater til krb5-1.22. Fikser #21942.
11. august 2025
10. august 2025
[xry111] - Oppdater til cargo-c-0.10.15. Fikser #21957.
[bdubbs] - Oppdater til plasma-6.4.4 inkludert for lxqt: kwayland, libkscreen, og layer-shell-qt. Fikser #21543.
[bdubbs] - Oppdater til kirigami-addons-1.9.0. Fikser #21609.
[renodr] - Fiks bygging av Qemu med pip-25.2/Python-3.13.6. Takk til Joe Locash for rapporten og lenken til rettelsen. Fikser #21955.
[renodr] - Fiks bygging av libplacebo med Python-3.13.6. Takk til Joe Locash for rapporten og lenken til rettelsen. Fikser #21953.
[renodr] - Oppdater til gstreamer stakken til 1.26.5. Fikser #21948.
[renodr] - Oppdater til gtk-3.24.50. Fikser #21947.
[renodr] - Oppdater til cmake-4.1.0. Fikser #21945.
[bdubbs] - Oppdater til kf6-6.17.0 inkludert extra-cmake-modules, frameworks, og for lxqt: kconfig, kidletime, kwindowsystem, og solid. Fikser #21556.
[thomas] - Oppdater til graphviz-13.1.2. Fikser #21956.
[thomas] - Oppdater til mariadb-11.8.3. Fikser #21952.
[xry111] - Oppdater til hatch_fancy_pypi_readme-25.1.0, hatch_vcs-0.5.0, iniconfig-2.1.0, markdown-3.8.2, meson_python-0.18.0, pluggy-1.6.0, pyproject_metadata-0.9.1, setuptools_scm-8.3.1, smartypants-2.0.2, og trove_classifiers-2025.8.6.13 (Python avhengigheter). Adresserer #18562.
8. august 2025
7. august 2025
6. august 2025
[xry111] - Oppdater til rustc-1.89.0. Fikser #21946.
[xry111] - Oppdater til Spidermonkey fra Firefox-140.1.0. Oppdater gjs til å bruke den. Fikser #21772.
[renodr] - Oppdater til ModemManager-1.24.2. Fikser #21932.
[renodr] - Oppdater til gnome-maps-48.6. Fikser #21927.
[renodr] - Oppdater til gnome-shell-48.4. Fikser #21926.
[renodr] - Oppdater til gnome-control-center-48.4. Fikser #21925.
[renodr] - Oppdater til gnome-online-accounts-3.54.5. Fikser #21916.
[renodr] - Tilbakeførte flere oppdateringer fra Arch og Fedora for å fikse feil i dvd+rw-tools og forenkle siden. Fikser #21938.
[renodr] - Oppdater til libreoffice-25.2.5.2. Fikser #21933.
5. august 2025
[renodr] - Fikser CVE-2025-8194 i Python. Fikser #21895.
[renodr] - Oppdater til epiphany-48.5. Fikser #21934.
[renodr] - Oppdater til WebKitGTK-2.48.5 (Sikkerhetsoppdatering). Fikser #21904.
[bdubbs] - Oppdater til mpg123-1.33.2. Fikser #21940.
[renodr] - Fikset bygging av Ruby-bindinger i Subversion når GCC-15 og Ruby-3.4 brukes. Fikser #21885.
[renodr] - Oppdater til 7zip-25.01 (Sikkerhetsoppdatering). Fikser #21928.
[bdubbs] - Oppdater til xscreensaver-6.12. Fikser #21937.
[bdubbs] - Oppdater til FreeRDP-3.16.0. Fikser #21936.
[bdubbs] - Oppdater til hwdata-0.398. Fikser #21931.
[bdubbs] - Oppdater til libqalculate-5.7.0. Fikser #21930.
[bdubbs] - Oppdater til libgcrypt-1.11.2. Fikser #21929.
[renodr] - Rettet stiene for sikkerhetssertifikater i teksten for konfigurering av Java miljøet. Fikser #21920.
[bdubbs] - Oppdater til mariadb-11.8.2. Fikser #21084.
4. august 2025
[bdubbs] - Oppdater til icewm-3.8.2. Fikser #21924.
[bdubbs] - Oppdater til poppler-25.08.0. Fikser #21923.
[bdubbs] - Oppdater til jasper-version-4.2.8. Fikser #21918.
[bdubbs] - Oppdater til libadwaita-1.7.6. Fikser #21915.
[bdubbs] - Oppdater til at-spi2-core-2.56.4. Fikser #21914.
[bdubbs] - Oppdater til NetworkManager-1.54.0. Fikser #21913.
3. august 2025
2. august 2025
30. juli 2025
29. juli 2025
28. juli 2025
[xry111] - Oppdater til llvm-20.1.8 og libclc-20.1.8. Fikser #21836.
[bdubbs] - Oppdater til mpg123-1.33.1. Fikser #21894.
[bdubbs] - Oppdater til xgamma-1.0.8 (Xorg app). Fikser #21893.
[bdubbs] - Oppdater til rpcbind-1.2.8. Fikser #21892.
[renodr] - Oppdater til OpenJDK-24.0.2 (Sikkerhetsoppdatering). Fikser #21846.
27. juli 2025
[renodr] - La til en oppdatering i boken for å tilbakeføre flere rettelser fra Qt 6.9 grenen oppstrøms. Dette fikser krasj i Plasma 6.4, og en sikkerhetsfeil. Fikser #21858.
[renodr] - Oppdater til intel-media-driver-25.2.6. Fikser #21864.
[renodr] - Oppdater til intel-gmmlib-22.8.1. Fikser #21864.
[bdubbs] - Oppdater til xdriinfo-1.0.8 (Xorg app). Fikser #21891.
[bdubbs] - Oppdater til xdpyinfo-1.4.0 (Xorg app). Fikser #21890.
[bdubbs] - Oppdater til harfbuzz-11.3.3. Fikser #21889.
[bdubbs] - Oppdater til sudo-1.9.17p2. Fikser #21888.
26. juli 2025
[thomas] - Oppdater til inih-61. Fikser #21887.
[thomas] - Oppdater til libnvme-1.15. Fikser #21886.
[bdubbs] - Oppdater til pipewire-1.4.7. Fikser #21883.
[bdubbs] - Oppdater til numpy-2.3.2. Fikser #21882.
[bdubbs] - Oppdater til unrar-7.1.9. Fikser #21881.
[bdubbs] - Oppdater til httpd-2.4.65 (Sikkerhetsoppdatering). Fikser #21880.
[bdubbs] - Oppdater til qemu-10.0.3. Fikser #21879.
[bdubbs] - Legg til en oppdatering til sharutils for å fikse bygging med GCC-15. Fikser #21884.
25. juli 2025
[thomas] - Oppdater til ed-1.22. Fikser #21878.
22. juli 2025
[bdubbs] - Oppdater til enchant-2.8.11. Fikser #21877.
[zeckma] - Oppdater til thunderbird-140.1.0esr (Sikkerhetsoppdatering). Fikser #21876.
[zeckma] - Oppdater til firefox-140.1.0esr og spidermonkey-128.13.0esr (Sikkerhetsoppdatering). Fikser #21875.
[renodr] - Oppdater til fuse-3.17.3. Fikser #21870.
[renodr] - Oppdater til 7zip-25.00 (Sikkerhetsoppdatering). Fikser #21868.
[bdubbs] - Oppdater til fltk-1.4.4. Fikser #21874.
[bdubbs] - Oppdater til pixman-0.46.4. Fikser #21873.
[bdubbs] - Oppdater til harfbuzz-11.3.2. Fikser #21872.
19. juli 2025
19. juli 2025
18. juli 2025
17. juli 2025
[renodr] - Oppdater til ruby-3.4.5 (Sikkerhetsoppdatering). Fikser #21851.
[renodr] - Oppdater til httpd-2.4.64 (Sikkerhetsoppdatering). Fikser #21841.
[renodr] - Oppdater til unbound-1.23.1 (Sikkerhetsoppdatering). Fikser #21862.
[renodr] - Oppdater til bind-9.20.11 (Sikkerhetsoppdatering). Fikser #21857.
[renodr] - Oppdater til libxml2-2.14.5 (Sikkerhetsoppdatering). Fikser #21855.
[renodr] - Oppdater til gnome-maps-48.5. Fikser #21853.
[renodr] - Oppdater til balsa-2.6.5. Fikser #21832.
16. juli 2025
15. juli 2025
13. juli 2025
[bdubbs] - Oppdater til wayland-1.24.0. Fikser #21844.
10. juli 2025
10. juli 2025
[zeckma] - Oppdater til thunderbird-140.0.1esr. Fikser #21838.
[bdubbs] - Oppdater til libwebp-1.6.0. Fikser #21837.
[bdubbs] - Oppdater til tcsh-6.24.16. Fikser #21835.
[renodr] - Oppdater til gnutls-3.8.10 (Sikkerhetsoppdatering). Fikser #21834.
[renodr] - Oppdater til git-2.50.1 (Sikkerhetsoppdatering). Fikser #21829.
9. juli 2025
8. juli 2025
7. juli 2025
6. juli 2025
4. juli 2025
3. juli 2025
[thomas] - Oppdater til Kea-3.0.0. Fikser #21777.
2. juli 2025
2. juli 2025
[renodr] - Oppdater til evince-48.1. Fikser #21800.
[renodr] - Oppdater til nautilus-48.3. Fikser #21799.
[renodr] - Oppdater til mutter-48.4. Fikser #21798.
[renodr] - Oppdater til gnome-shell og gnome-shell-extensions 48.3. Fikser #21797.
[renodr] - Oppdater til vte-0.80.3. Fikser #21795.
[renodr] - Oppdater til gnome-online-accounts-3.54.4. Fikser #21794.
[renodr] - Oppdater til gnome-control-center-48.3. Fikser #21786.
[xry111] - Oppdater til cargo-c-0.10.14. Fikser #21789.
[xry111] - Oppdater til rustc-1.88.0. Fikser #21780.
[xry111] - Oppdater til llvm-20.1.7 og libclc-20.1.7. Fikser #21373.
[renodr] - Oppdater til cryptsetup-2.8.0. Fikser #21768.
[renodr] - Oppdater gstreamer stakken to 1.26.3 (Sikkerhetsoppdatering). Fikser #21781.
[bdubbs] - Oppdater til graphviz-13.1.0. Fikser #21810.
[bdubbs] - Oppdater til lsof-4.99.5. Fikser #21811.
[bdubbs] - Oppdater til SPIRV-LLVM-Translator-20.1.4. Fikser #21808.
[bdubbs] - Oppdater til taglib-2.1.1. Fikser #21807.
[bdubbs] - Oppdater til libqalculate-5.6.0. Fikser #21805.
[bdubbs] - Oppdater til LVM2.2.03.33. Fikser #21803.
[bdubbs] - Oppdater til sudo-1.9.17p1 (Sikkerhetsoppdatering). Fikser #21802.
1. juli 2025
29. juni 2025
[bdubbs] - Oppdater til vim-9.1.1497. Synkroniser med LFS.
[bdubbs] - Oppdater til shadow-4.18.0. Synkroniser med LFS.
29. juni 2025
[bdubbs] - Oppdater til mupdf-1.26.3. Fikser #21796.
[bdubbs] - Oppdater til libadwaita-1.7.5. Fikser #21792.
[bdubbs] - Oppdater til at-spi2-core-2.56.3. Fikser #21791.
[bdubbs] - Oppdater til sqlite-autoconf-3500200 (3.50.2). Fikser #21790.
[bdubbs] - Oppdater til libproxy-0.5.10. Fikser #21788.
[bdubbs] - Oppdater til pipewire-1.4.6. Fikser #21778.
28. juni 2025
[bdubbs] - Oppdater til pango-1.56.4. Fikser #21787.
[bdubbs] - Oppdater til glslang-15.4.0. Fikser #21784.
[bdubbs] - Oppdater til libwww-perl-6.79 (Perl modul LWP). Fikser #21783.
[bdubbs] - Oppdater til fontconfig-2.17.0. Fikser #21782.
[bdubbs] - Oppdater til lxml-6.0.0 (Python modul). Fikser #21779.
[bdubbs] - Oppdater til nettle-3.10.2. Fikser #21778.
26. juni 2025
[zeckma] - Oppdater til node.js-22.17.0. Fikser #21771.
[zeckma] - Oppdater til firefox-140.0esr (Sikkerhetsoppdatering). Fikser #21766.
[bdubbs] - Oppdater til xfsprogs-6.15.0. Fikser #21770.
[bdubbs] - Oppdater til glslc fra shaderc-2025.3. Fikser #21774.
[bdubbs] - Oppdater til unrar-7.1.8. Fikser #21776.
24. juni 2025
23. juni 2025
22. juni 2025
[bdubbs] - Oppdater til lxqt-build-tools-2.2.1. Fikser #21762.
[renodr] - Oppdater til pygments-2.19.2 (Python Modul). Fikser #21761.
[renodr] - Oppdater til numpy-2.3.1 (Python Modul). Fikser #21760.
[renodr] - Oppdater til pciutils-3.14.0. Fikser #21759.
[renodr] - Oppdater til enchant-2.8.10. Fikser #21758.
[renodr] - Oppdater til fetchmail-6.5.4. Fikser #21741.
[renodr] - Oppdater til yelp-xsl-42.4 og yelp-42.3. Fikser #21721.
[bdubbs] - Oppdater til sudo-1.9.17. Fikser #21757.
[renodr] - Retter et sikkerhetsproblem i udisks som kan tillate lokal privilegieeskalering. Fikser #21754.
[bdubbs] - Oppdater til Linux-PAM-1.7.1 (Sikkerhetsoppdatering). Fikser #21738.
[thomas] - Endre postfix instruksjoner for å fikse et gcc-15 problem.
[bdubbs] - Oppdater til ImageMagick-7.1.1-47. Adresser #16962.
21. juni 2025
20. juni 2025
[bdubbs] - Oppdater til libblockdev-3.3.1 (Sikkerhetsoppdatering). Fikser #21745.
[bdubbs] - Oppdater til enchant-2.8.9. Fikser #21744.
[bdubbs] - Oppdater til adwaita-icon-theme-48.1. Fikser #21743.
[bdubbs] - Oppdater til nghttp2-1.66.0. Fikser #21742.
[bdubbs] - Oppdater til abseil-cpp-20250512.1. Fikser #21740.
[zeckma] - Oppdater til xwayland-24.1.8 (Sikkerhetsoppdatering). Fikser #21747.
[zeckma] - Oppdater til xorg-server-21.1.18 (Sikkerhetsoppdatering). Fikser #21746.
[thomas] - Oppdater til bind-9.20.10 og bind-utils-9.20.10. Fikser #21751.
19. juni 2025
[bdubbs] - Oppdater til libogg-1.3.6. Fikser #21735.
[bdubbs] - Oppdater til git-2.50.0. Fikser #21734.
[bdubbs] - Oppdater til IO-Socket-SSL-2.094 (Perl modul). Fikser #21733.
[bdubbs] - Oppdater URL og instruksjoner for ntfs-3g-2022.10.3. Fikser #21739.
[bdubbs] - Oppdater til libxml2-2.14.4 (Sikkerhetsoppdatering). Fikser #21732.
17. juni 2025
16. juni 2025
15. juni 2025
[bdubbs] - Oppdater til glib-2.84.3. Fikser #21725.
[bdubbs] - Oppdater til cmake-4.0.3. Fikser #21728.
[bdubbs] - Oppdater til libpng-1.6.49. Fikser #21727.
[bdubbs] - Oppdater til wayland-protocols-1.45. Fikser #21726.
[bdubbs] - Oppdater til jansson-2.14.1. Fikser #21723.
[bdubbs] - Oppdater til inih-r60. Fikser #21722.
[bdubbs] - Oppdater til Python-3.13.5. Fikser #21716.
13. juni 2025
[bdubbs] - Oppdater til graphviz-13.0.0. Fikser #21703.
[renodr] - Oppdater til libwacom-2.16.0. Fikser #21719.
[renodr] - Oppdater til fetchmail-6.5.3. Fikser #21713.
[renodr] - Oppdater til cifs-utils-7.4. Fikser #21712.
[renodr] - Oppdater til unrar-7.1.7. Fikser #21711.
[renodr] - Gjenopprett instruksjonene til make-ca for å bruke systemsertifikater når du bruker 'pip' i stedet for medfølgende sertifikater.
[bdubbs] - Oppdater til nano-8.5. Fikser #21718.
[bdubbs] - Oppdater til gtk-4.18.6. Fikser #21710.
12. juni 2025
[bdubbs] - Oppdater til IO-Socket-SSL-2.091 (Perl modul). Fikser #21715.
11. juni 2025
[zeckma] - Oppdater til thunderbird-128.11.1esr (Sikkerhetsoppdatering). Fikser #21714.
10. juni 2025
9. juni 2025
[bdubbs] - Oppdater til konsole-25.-4.2 (Sikkerhetsoppdatering). Se #21554.
[renodr] - Oppdater til libdrm-2.4.125. Fikser #21705.
[renodr] - Oppdater til rust-bindgen-0.72.0. Fikser #21704.
[renodr] - Oppdater til gnome-maps-48.4. Fikser #21700.
[renodr] - Oppdater til samba-4.22.2 (Sikkerhetsoppdatering). Fikser #21691.
[bdubbs] - Oppdater til lua-5.4.8. Fikser #21706.
[bdubbs] - Oppdater til mpg123-1.33.0. Fikser #21702.
[bdubbs] - Oppdater til libass-0.17.4. Fikser #21701.
[bdubbs] - Oppdater til xkeyboard-config-2.45. Fikser #21699.
[renodr] - Fiks byggingen av Inkscape med poppler-25.06.0. Fikser #21683.
7. juni 2025
6. juni 2025
[zeckma] - Oppdater til mesa-25.1.2. Fikser #21548.
[bdubbs] - Oppdater til File-Find-Rule-0.35 (Perl modul; sikkerhetsoppdatering). Fikser #21690.
[bdubbs] - Oppdater til php-8.4.8. Fikser #21692.
[bdubbs] - Oppdater til pipewire-1.4.5. Fikser #21686.
[bdubbs] - Oppdater til wireshark-4.4.7 (Sikkerhetsoppdatering). Fikser #21685.
[bdubbs] - Oppdater til mupdf-1.26.2. Fikser #21687.
[bdubbs] - Oppdater til sentry_sdk-2.29.1 (Python modul). Fikser #21313.
4. juni 2025
[bdubbs] - Oppdater til SDL2-2.32.8. Fikser #21681.
[bdubbs] - Oppdater til curl-8.14.1 (Sikkerhetsoppdatering). Fikser #21680.
[bdubbs] - Oppdater til hwdata-0.396. Fikser #21676.
[bdubbs] - Oppdater til poppler-25.06.0 (Sikkerhetsoppdatering). Fikser #21675.
[renodr] - Oppdater til Python-3.13.4 (Sikkerhetsoppdatering). Fikser #21677.
[renodr] - Oppdater til IO-Socket-SSL-2.090 (Perl Modul). Fikser #21678.
[renodr] - Oppdater til make-ca-1.16.1. Fikser #21682.
3. juni 2025
[renodr] - Midlertidig fiks byggingen av Texlive med GCC 15 ved å sette C standarden til C17. Oppstrøms har gjort noen fremskritt, men det er fortsatt flere komponenter som må oppdateres for å støtte C23 fullt ut.
[renodr] - Fiks midlertidig bygging av procmail med GCC 15 ved å sette C standarden til C17.
[renodr] - Oppdater til Qt-6.9.1 og QtWebEngine-6.9.1 (Sikkerhetsoppdatering). Fikser #21672.
[renodr] - Oppdater til mutter-48.3.1. Fikser #21673.
[renodr] - Oppdater til pytest-8.4.0 (Python Modul). Fikser #21671.
[renodr] - Oppdater til bluez-5.83. Fikser #21670.
[renodr] - Fiks bygging av Guile med GCC 15.
[renodr] - Fiks bygging av GPM med GCC 15.
2. juni 2025
[bdubbs] - Oppdater til vim-9.1.1418. Fikser #12241.
[renodr] - Oppdater til mariadb-11.4.7 (Sikkerhetsoppdatering). Fikser #21669.
[renodr] - Oppdater til gnome-desktop-44.3. Fikser #21668.
[renodr] - Oppdater til dhcpcd-10.2.4. Fikser #21667.
[renodr] - Oppdater til libusb-1.0.29. Fikser #21666.
[renodr] - Oppdater til libarchive-3.8.1. Fikser #21665.
[renodr] - Fiks bygging av evince med GCC 15 hvis texlive er installert.
[renodr] - Fiks bygging av sendmail med GCC 15.
[renodr] - Fiks bygging av GDM med GCC 15.
[renodr] - Fiks bygging av cifs-utils med GCC 15.
1. juni 2025
31. mai 2025
[bdubbs] - Oppdater til gcc-15.1.0. Fikser #21507.
30. mai 2025
[renodr] - Oppdater til sqlite-3.50.0. Fikser #21657.
[renodr] - Oppdater til pipewire-1.4.4. Fikser #21659.
[renodr] - Oppdater til gstreamer stakken til 1.26.2 (Sikkerhetsoppdatering). Fikser #21658.
[bdubbs] - Oppdater til sane-backends-1.4.0. Fikser #21660.
[bdubbs] - Oppdater til cbindgen-0.29.0. Fikser #21607.
29. mai 2025
[bdubbs] - Oppdater til qemu-10.0.2. Fikser #21647.
[thomas] - Oppdater til Kea-2.6.3. Fikser #21652.
[bdubbs] - Oppdater til protobuf-31.1. Fikser #21656.
[bdubbs] - Oppdater til curl-8.14.0. Fikser #21650.
[renodr] - Oppdater til mutter-48.3. Fikser #21646.
[renodr] - Oppdater til gnome-control-center-48.2. Fikser #21644.
[renodr] - Oppdater til nautilus-48.2. Fikser #21638.
[renodr] - Oppdater til gnome-maps-48.3. Fikser #21633.
[renodr] - Oppdater til vte-0.80.2. Fikser #21632.
28. mai 2025
[renodr] - Oppdater til gnome-user-docs-48.2. Fikser #21631.
[renodr] - Oppdater til gnome-backgrounds-48.2.1. Fikser #21629.
[renodr] - Oppdater til evolution og evolution-data-server 3.56.2. Fikser #21626.
[renodr] - Oppdater til gnome-online-accounts-3.54.3. Fikser #21630.
[renodr] - Oppdater til webkitgtk-2.48.3. Fikser #21653.
[renodr] - Oppdater til asymptote-3.05. Fikser #21639.
[renodr] - Oppdater til dvisvgm-3.5. Fikser #21627.
[renodr] - Oppdater til Thunderbird-128.11.0esr (Sikkerhetsoppdatering). Fikser #21655.
[renodr] - Oppdater til Firefox-128.11.0esr og Spidermonkey (Sikkerhetsoppdatering). Fikser #21642.
[renodr] - Oppdater til libadwaita-1.7.4. Fikser #21643.
[renodr] - Oppdater til xdg-desktop-portal-1.20.3. Fikser #21581.
[renodr] - Fiks byggingen av uchardet mot CMake-4.
[thomas] - Oppdater til nss-3.112. Fikser #21648.
[thomas] - Oppdater til libslirp-4.9.1. Fikser #21649.
27. mai 2025
[bdubbs] - Oppdater til stunnel-5.75. Fikser #21641.
26. mai 2025
24. mai 2025
[bdubbs] - Oppdater til lm-sensors-3-6-2. Fikser #21623.
[thomas] - Oppdater til bind-9.20.9 og bind-utils-9.20.9. (Sikkerhetsoppdatering).Fikser #21613.
[bdubbs] - Oppdater til libadwaita-1.7.3. Fikser #21625.
[bdubbs] - Oppdater til python-dbusmock-0.35.0 (Python modul). Fikser #21624.
[bdubbs] - Oppdater til pipewire-1.4.3. Fikser #21622.
[bdubbs] - Oppdater til libunwind-1.8.2. Fikser #21620.
[bdubbs] - Oppdater til libplacebo-7.351.0. Fikser #21616.
[thomas] - Oppdater til parole-4.20.0. Fikser #21615.
[thomas] - Oppdater til libxfce4windowing-4.20.3. Fikser #21614.
[thomas] - Oppdater til openldap-2.6.10. Fikser #21621.
23. mai 2025
[bdubbs] - Oppdater til libxkbcommon-1.10.0. Fikser #21611.
[bdubbs] - Oppdater til mupdf-1.26.1. Fikser #21610.
[bdubbs] - Oppdater til valgrind-3.25.1. Fikser #21608.
[bdubbs] - Oppdater til libnvme-1.14. Fikser #21606.
[bdubbs] - Oppdater til glib-2.84.2. Fikser #21604.
[bdubbs] - Oppdater til bluez-5.82. Fikser #21602.
[bdubbs] - Oppdater til wireplumber-0.5.10. Fikser #21601.
[bdubbs] - Oppdater til cython-3.1.1 (Python modul). Fikser #21600.
[bdubbs] - Oppdater til highlight-4.16. Fikser #21599.
[bdubbs] - Oppdater til gpgme-1.24.3. Fikser #21598.
22. mai 2025
[zeckma] - Oppdater til node.js-22.16.0. Fikser #21612.
21. mai 2025
[thomas] - Oppdater til libarchive-3.8.0 (Sikkerhetsoppdatering). Fikser #21605.
20. mai 2025
[renodr] - Oppdater til asymptote-3.03. Fikser #21557.
[renodr] - Fiks kjente problemer i texlive med xdvipdfmx, pdftex, og LuaTeX. Fikser #21577.
[renodr] - Fiks CVE-2025-4516 i Python (Sikkerhetsoppdatering). Fikser #21584.
[zeckma] - Oppdater til thunderbird-128.10.2esr (Sikkerhetsoppdatering). Fikser #21597.
[thomas] - Oppdater til gimp-3.0.4 (Sikkerhetsoppdatering). Fikser #21603.
19. mai 2025
[renodr] - Oppdater til OpenJDK-24.0.1 (Sikkerhetsoppdatering). Fikser #21296.
[renodr] - Oppdater til WebKitGTK-2.48.2 (Sikkerhetsoppdatering). Fikser #21572.
[renodr] - Arkiver libsoup2. Fikser #21575.
[renodr] - Arkiver libgdata. Den er avhengig av libsoup2, og vedlikeholdes ikke lenger.
[renodr] - Arkiver uhttpmock. Det er ikke lenger nødvendig og ble bare brukt av libgdata, som blir arkivert nå.
[renodr] - Arkiver AbiWord. Det vedlikeholdes ikke, og nettstedet er ikke lenger tilgjengelig.
[renodr] - Fiks flere sikkerhetsproblemer i giflib. Fikser #21574.
[renodr] - Oppdater til libreoffice-25.2.3.2. Fikser #21524.
[bdubbs] - Oppdater til sessreg-1.1.4, smproxy-1.0.8, og xcursorgen-1.0.9 (Xorg apper). Fikser #21596.
[bdubbs] - Oppdater til xterm-399. Fikser #21595.
[bdubbs] - Oppdater til screengrab-3.0.0. Fikser #21594.
[bdubbs] - Oppdater til qps-2.11.1. Fikser #21593.
[bdubbs] - Oppdater til lxqt-panel-2.2.1. Fikser #21592.
[bdubbs] - Oppdater til numpy-2.2.6 (Python modul). Fikser #21590.
[bdubbs] - Oppdater til plasma-wayland-protocols-1.18.0. Fikser #21582.
[renodr] - Oppdater til fop-2.11. Fikser #21539.
18. mai 2025
[xry111] - Oppdater til cargo-c-0.10.13. Fikser #21586.
[xry111] - Oppdater til rustc-1.87.0. Fikser #21580.
[zeckma] - Oppdater til js-128.10.1 (spidermonkey) og firefox-128.10.1 (sikkerhetsoppdatering). Fikser #21588.
[thomas] - Oppdater til thunar-4.20.3. Fikser #21583.
[thomas] - Oppdater til whois-5.6.1. Fikser #21591.
[thomas] - Oppdater til apr-1.7.6. Fikser #21585.
17. mai 2025
15. mai 2025
[renodr] - Fjern CMake 4 løsning fra Inkscape siden det har blitt løst i Inkscape 1.4.2.
[bdubbs] - Oppdater til lsof-4.99.4. Fikser #21579.
[bdubbs] - Oppdater til URI-5.32 (Perl modul). Fikser #21578.
[zeckma] - Oppdater til node.js-22.15.1 (sikkerhetsoppdatering). Fikser #21569.
[bdubbs] - Oppdater til userspace-rcu-0.15.3 (liburcu). Fikser #21573.
[bdubbs] - Oppdater til ruby-3.4.4. Fikser #21571.
[bdubbs] - Oppdater til protobuf-31.0. Fikser #21570.
[bdubbs] - Oppdater til abseil-cpp-20250512.0. Fikser #21568.
[bdubbs] - Oppdater til gnupg-2.4.8. Fikser #21567.
14. mai 2025
[bdubbs] - Oppdater til inkscape-1.4.2. Fikser #21562.
[zeckma] - Oppdater til thunderbird-128.10.1esr (sikkerhetsoppdatering). Fikser #21566.
[bdubbs] - Oppdater til harfbuzz-11.2.1. Fikser #21561.
[bdubbs] - Oppdater til gegl-0.4.62. Fikser #21560.
[bdubbs] - Oppdater til babl-0.1.114. Fikser #21559.
[bdubbs] - Oppdater til nmap-7.97. Fikser #21565.
[zeckma] - Oppdater til libxml2-2.14.3. Fikser #21564.
13. mai 2025
[ken] - Takket være Bruce og Gerards generøsitet, er nettstedet mitt for fontanalyse og sammenligning nå arkivert på typosetting.linuxfromscratch.org, og det forrige nettstedet omdirigerer dit.
12. mai 2025
[bdubbs] - Oppdater til libavif-1.3.0. Fikser #21555.
[bdubbs] - Oppdater til postgresql-17.5 (sikkerhetsoppdatering).Fikser #21553.
[bdubbs] - Oppdater til php-8.4.7. Fikser #21552.
[bdubbs] - Oppdater til cython-3.1.0 (Python modul). Fikser #21551.
[bdubbs] - Oppdater til SDL2-2.32.6. Fikser #21538.
[bdubbs] - Oppdater til nss-3.111. Fikser #21533.
8. mai 2025
7. mai 2025
6. mai 2025
5. mai 2025
4. mai 2025
[bdubbs] - Oppdater til gtk4-4.18.5. Fikser #21529.
[bdubbs] - Oppdater til fmt-11.2.0. Fikser #21528.
[bdubbs] - Oppdater til v4l-utils-1.30.1. Fikser #21526.
[bdubbs] - Oppdater til cachecontrol-0.14.3 (Python modul). Fikser #21523.
[bdubbs] - Oppdater til libpng-1.6.48. Fikser #21521.
[bdubbs] - Oppdater til harfbuzz-11.2.0. Fikser #21511.
[bdubbs] - Oppdater til SPIRV-LLVM-Translator-20.1.2. Fikser #21520.
[bdubbs] - Oppdater til smartmontools-7.5. Fikser #21519.
[bdubbs] - Oppdater til pixman-0.46.0. Fikser #21518.
[bdubbs] - Oppdater til ghostscript-10.05.1 (Sikkerhetsutgivelse). Fikser #21517.
[bdubbs] - Oppdater til fltk-1.4.3. Fikser #21516.
2. mai 2025
[bdubbs] - Oppdater til xscreensaver-6.10.1. Fikser #21513.
[bdubbs] - Oppdater til enchant-2.8.4. Fikser #21508.
[bdubbs] - Oppdater til ncftp-3.3.0. Fikser #21505.
[bdubbs] - Oppdater til libxkbcommon-1.9.1. Fikser #21504.
[bdubbs] - Oppdater til xfce4-pulseaudio-plugin-0.5.1. Fikser #21496.
[bdubbs] - Oppdater til unbound-1.23.0. Fikser #21495.
1. mai 2025
30. april 2025
[renodr] - Oppdater til wayland-protocols-1.44. Fikser #21515.
[renodr] - Oppdater til at-spi2-core-2.56.2. Fikser #21512.
[renodr] - Oppdater til libsigsegv-2.15. Fikser #21510.
[renodr] - Oppdater byggkonfigurasjonen for MuPDF til å bruke den systeminstallert kopien av freeglut. Fikser #21506.
[renodr] - Oppdater til valgrind-3.25.0. Fikser #21502.
[renodr] - Oppdater til epiphany-48.3. Fikser #21497.
[renodr] - Oppdater til AppStream-1.0.5. Fikser #21493.
[renodr] - Oppdater til thunderbird-128.10.0esr (Sikkerhetsoppdatering). Fikser #21514.
[renodr] - Oppdater til firefox og spidermonkey 128.10.0esr (Sikkerhetsoppdatering). Fikser #21509.
[renodr] - Oppdater gstreamer stakken til 1.26.1 (Sikkerhetsoppdatering). Fikser #21498.
29. april 2025
[rahul] - Oppdater til qemu-10.0.0. Fikser #21485.
[bdubbs] - Oppdater til plasma-wayland-protocols-1.17.0. Fikser #21316.
[bdubbs] - Oppdater til plasma-6.3.4. Fikser #21230.
[bdubbs] - Oppdater til kde-gear-25.04.0. Fikser #21201.
[bdubbs] - Oppdater til kf6-6.13.0. Fikser #21247.
[bdubbs] - Legg til libproxy-0.5.9 påkrevd av kio-extras-25.04.0.
28. april 2025
[xry111] - Oppdater python avhengigheter til attrs-25.3.0, markdown-3.8, setuptools_scm-8.3.0, og trove-classifiers-2025.4.11.15. Adresserer #18562.
27. april 2025
24. april 2025
23. april 2025
22. april 2025
[bdubbs] - Oppdater til icewm-3.7.4. Fikser #21482.
[renodr] - Oppdater til gnome-system-monitor-48.1. Fikser #21435.
[renodr] - Oppdater til gnome-maps-48.2. Fikser #21434.
[renodr] - Oppdater til FreeRDP-3.15.0. Fikser #21452.
[renodr] - Oppdater til gnome-calculator-48.1. Fikser #21433.
[renodr] - Oppdater til asymptote-3.02. Fikser #21436.
[renodr] - Oppdater til gnome-session-48.0. Fikser #21425.
[renodr] - Oppdater til gnome-shell og gnome-shell-extensions 48.1. Fikser #21437.
[renodr] - Oppdater til mutter-48.2. Fikser #21379.
[renodr] - Oppdater til gnome-control-center-48.1. Fikser #21451.
[renodr] - Oppdater til gnome-settings-daemon-48.1. Fikser #21479.
[renodr] - Oppdater til nautilus-48.1. Fikser #21442.
[renodr] - Oppdater til samba-4.22.1. Fikser #21468.
[renodr] - Oppdater til tinysparql-3.9.2. Fikser #21478.
[renodr] - Oppdater til evolution-data-server og evolution 3.56.1. Fikser #21424.
[renodr] - Oppdater til intel-media-driver-25.1.4 og intel-gmmlib-22.7.1. Fikser #21456.
21. april 2025
[renodr] - Oppdater til epiphany-48.1 (Sikkerhetsoppdatering). Fikser #21483.
[renodr] - Deaktiver støtte for python programtillegg i libpeas fordi det er inkompatibel med pygobject-3.52.x, og det forårsaker at programmer som bruker den henger på ubestemt tid.
[renodr] - Fiks bygging av libportal mot Qt 6.9. Fikser #21429.
[bdubbs] - Oppdater til gdb-16.3. Fikser #21480.
[bdubbs] - Oppdater til libXft-2.3.9 (Xorg bibliotek). Fikser #21481.
20. april 2025
19. april 2025
18. april 2025
[zeckma] - Oppdater til mesa-25.0.4. Fikser #21463.
[bdubbs] - Oppdater til lxqt-2.2.0. Flere pakker har forskjellige versjonsnumre: libdbusmenu-lxqt-0.3.0, libqtxdg-4.2.0, qtxdg-tools-4.2.0, xdg-desktop-portal-lxqt-1.2.0, lxqt-archiver-1.2.0, qps-2.11.0, og screengrab-2.10.0. Fikser #21469, #21470, #21471, #21472, #21473, #21474, og #21475.
[thomas] - Oppdater til libgpg-error-1.54. Fikser #21466.
[bdubbs] - Oppdater til wireshark-4.4.6. Fikser #21462.
[bdubbs] - Oppdater til harfbuzz-11.1.0. Fikser #21460.
[bdubbs] - Oppdater til swig-4.3.1. Fikser #21458.
[bdubbs] - Oppdater til pipewire-1.4.2. Fikser #21455.
[bdubbs] - Oppdater til ruby-3.4.3. Fikser #21449.
16. april 2025
[thomas] - Oppdater til bind-9.20.8. Fikser #21461.
[xry111] - Oppdater til cargo-c-0.10.12. Fikser #21394.
[xry111] - Oppdater til rustc-1.86.0. Fikser #21388.
[bdubbs] - Oppdater til Business-ISBN-3.012 (Perl modul). Fikser #21448.
[bdubbs] - Oppdater til Business-ISMN-1.205 (Perl modul). Fikser #21440.
[bdubbs] - Oppdater til iso-codes-4.18.0. Fikser #21430.
[bdubbs] - Oppdater til fontconfig-2.16.2. Fikser #21428.
[thomas] - Oppdater til neon-0.34.2. Fikser #21459.
15. april 2025
[zeckma] - Oppdater til libaom-3.12.1. Fikser #21454.
[renodr] - Oppdater til gnome-online-accounts-3.54.2. Fikser #21431.
[renodr] - Oppdater til vte-0.80.1. Fikser #21432.
[bdubbs] - Oppdater til xfce4-pulseaudio-plugin-0.5.0. Fikser #21427.
[bdubbs] - Oppdater til libadwaita-1.7.2. Fikser #21423.
[bdubbs] - Oppdater til xterm-398. Fikser #21422.
[renodr] - Oppdater til thunderbird-128.9.2esr (Sikkerhetsoppdatering). Fikser #21457.
[bdubbs] - Oppdater til libnvme-1.13. Fikser #21421.
[bdubbs] - Oppdater til cmake-4.0.1. Fikser #21414.
[thomas] - Oppdater til xfsprogs-6.14.0. Fikser #21446.
[thomas] - Oppdater til neon-0.34.1. Fikser #21450.
[thomas] - Oppdater til liburcu-0.15.2. Fikser #21447.
14. april 2025
[zeckma] - Oppdater til alsa-lib, alsa-ucm-conf, alsa-utils, og alsa-tools 1.2.14. Fikser #21453.
[renodr] - Fiks CVE-2025-3155 i yelp. Fikser #21445.
[renodr] - Oppdater til gnome-user-docs-48.1. Fikser #21426.
[renodr] - Oppdater til WebKitGTK-2.48.1. Fikser #21385.
[bdubbs] - Oppdater til openssh-10.0p1 og ssh-askpass-10.0p1. Fikser #21411.
[renodr] - Oppdater til gjs-1.84.2. Fikser #21441.
[renodr] - Oppdater til vorbis-tools-1.4.3. Fikser #21443.
[renodr] - Oppdater til thunderbird-128.9.1esr (Sikkerhetsoppdatering). Fikser #21375.
[bdubbs] - Update to Python-3.13.3 (Sikkerhetsoppdatering). Fikser #21409.
[renodr] - Oppdater til firefox-128.9.0esr (Sikkerhetsoppdatering). Fikser #21354.
[bdubbs] - Oppdater til libcap-2.76. Fikser #21438.
[renodr] - Oppdater til cups-2.4.12. Fikser #21410.
11. april 2025
10. april 2025
9. april 2025
[renodr] - Fiks å bygge libcdio på i686 systemer.
[renodr] - Fiks å bygge Qt6 på i686 systemer.
8. april 2025
[renodr] - Oppdater til SPIRV-LLVM-Translator-20.1.1. Fikser #21370.
[renodr] - Oppdater til exempi-2.6.6 (Sikkerhetsoppdatering). Fikser #21376.
[renodr] - Oppdater til c-ares-1.34.5 (Sikkerhetsoppdatering). Fikser #21403.
[renodr] - Oppdater til make-ca-1.16. Fikser #21404.
[bdubbs] - Oppdater til soundtouch-2.4.0. Fikser #21402.
[bdubbs] - Oppdater til mercurial-7.0.1 (Sikkerhetsoppdatering). Fikser #21401.
7. april 2025
6. april 2025
4. april 2025
3. april 2025
[bdubbs] - Legg til en oppdatering til glslang-15.2.0 for å sørge for at libSPIRV.so blir installert. Fikser #21387.
[bdubbs] - Oppdater til libei-1.4.1. Fikser #21384.
[bdubbs] - Oppdater til poppler-25.04.0. Fikser #21377.
[bdubbs] - Oppdater til libreoffice-25.2.2.2 (Sikkerhetsoppdatering). Fikser #21343.
[renodr] - Fiks bygging av JSON-C med CMake 4.0.
[zeckma] - Oppdater til libinput-1.28.1 (Xorg driver). Fikser #21383.
[bdubbs] - Oppdater til libxml2-2.14.0. Fikser #21355.
2. april 2025
[renodr] - Fiks bygging av graphite2 med CMake 4.0.
[renodr] - Fiks bygging av tidy-html5 med CMake 4.0.
[bdubbs] - Oppdater til qt6-6.9.0 og qtwebengine-6.9.0. Fikser #21378.
[zeckma] - Oppdater til mesa-25.0.3. Fikser #21386.
[zeckma] - Oppdater til curl-8.13.0. Fikser #21381.
[zeckma] - Oppdater til hwdata-0.394. Fikser #21382.
[thomas] - Oppdater til nano-8.4. Fikser #21380.
1. april 2025
31. mars 2025
[bdubbs] - Oppdater til icewm-3.7.3. Fikser #21366.
[bdubbs] - Oppdater til nfs-utils-2.8.3. Fikser #21365.
[bdubbs] - Oppdater til libarchive-3.7.9. Fikser #21364.
[bdubbs] - Oppdater til vim-1263. Adresserer #12241.
[bdubbs] - Oppdater til shadow-4.17.4. Fikser #21305.
[renodr] - Oppdater til exim-4.98.2 (Sikkerhetsoppdatering). Fikser #21336.
30. mars 2025
[renodr] - Fiks bygging mariadb med CMake 4.0.
[bdubbs] - Oppdater til gtk-4.18.3. Fikser #21363.
[bdubbs] - Oppdater til inih-r59. Fikser #21362.
[bdubbs] - Oppdater til libnotify-0.8.6. Fikser #21361.
[bdubbs] - Oppdater til at-spi2-core-2.56.1. Fikser #21360.
[bdubbs] - Oppdater til cmake-4.0.0. Fikser #21359.
[bdubbs] - Oppdater til nss-3.110. Fikser #21358.
[bdubbs] - Oppdater til glslang-15.2.0. Fikser #21357.
28. mars 2025
[bdubbs] - Oppdater til mpv-0.40.0. Fikser #21344.
[bdubbs] - Oppdater til scons-4.9.1. Fikser #21356.
[pierre] - Oppdater til mercurial-7.0. Fikser #21194.
[pierre] - Legg til build-1.2.2.post1 (Python modul) og dens avhengighet pyproject_hooks-1.2.0. Del av #21194.
[bdubbs] - Oppdater til jasper-4.2.5. Fikser #21351.
[bdubbs] - Oppdater til protobuf-30.2. Fikser #21350.
[bdubbs] - Oppdater til xfce4-terminal-1.1.5. Fikser #21346.
27. mars 2025
[bdubbs] - Oppdater til qemu-9.2.3. Fikser #21338.
[bdubbs] - Oppdater til ristretto-0.13.4. Fikser #21342.
[bdubbs] - Oppdater til pyparsing-3.2.3 (Python modul). Fikser #21339.
[bdubbs] - Oppdater til mousepad-0.6.4. Fikser #21337.
[bdubbs] - Oppdater til libcap-2.75. Fikser #21173.
[bdubbs] - Oppdater til qt6-6.8.3 og qtwebengine-6.8.3. Fikser #21341.
[thomas] - Oppdater til kea-2.6.2. Fikser #21340.
26. mars 2025
[renodr] - Oppdater til snapshot-48.0.1. Fikser #21255.
[renodr] - Oppdater til gnome-weather-48.0. Fikser #21254.
[renodr] - Oppdater til gnome-terminal-3.56.0. Fikser #21270.
[renodr] - Oppdater til gnome-system-monitor-48.0. Fikser #21269.
[renodr] - Oppdater til gnome-maps-48.1. Fikser #21268.
[renodr] - Oppdater til gnome-connections-48.0. Fikser #21347.
[renodr] - Oppdater til FreeRDP-3.14.1. Fikser #21256.
[renodr] - Oppdater til gnome-calculator-48.0.2. Fikser #21267.
[renodr] - Oppdater til evince-48.0. Fikser #21266.
[renodr] - Oppdater til baobab-48.0. Fikser #21252.
25. mars 2025
[renodr] - Oppdater til gtkmm-3.24.10. Fikser #21334.
[renodr] - Oppdater til gimp-3.0.2. Fikser #21335.
[renodr] - Oppdater til gnome-user-docs-47.5. Fikser #21277.
[renodr] - Oppdater til gnome-shell-extensions-48.0. Fikser #21276.
[renodr] - Oppdater til gnome-shell-48.0. Fikser #21276.
[renodr] - Oppdater til gdm-48.0. Fikser #21295.
[renodr] - Oppdater til mutter-48.0. Fikser #21278.
[bdubbs] - Oppdater til libevdev-1.13.4. Fikser #21333.
[bdubbs] - Oppdater til pyparsing-3.2.2 (Python Modul). Fikser #21332.
[bdubbs] - Oppdater til unrar-7.1.6. Fikser #21331.
[renodr] - Oppdater til gnome-control-center-48.0. Fikser #21288.
[bdubbs] - Oppdater til gegl-0.4.58. Fikser #21330.
[bdubbs] - Oppdater til ed-1.21.1. Fikser #21329.
[renodr] - Oppdater til tecla-48.0.2. Fikser #21290.
[renodr] - Oppdater til gnome-settings-daemon-48.0. Fikser #21289.
[renodr] - Oppdater til nautilus-48.0. Fikser #21279.
[renodr] - Oppdater til gnome-backgrounds-48.0. Fikser #21251.
24. mars 2025
[bdubbs] - Oppdater til ncftp-3.2.9. Fikser #21321.
[bdubbs] - Oppdater til wayland-protocols-1.42. Fikser #21327.
[bdubbs] - Oppdater til libinput-1.28.0. Fikser #21328.
[bdubbs] - Oppdater til xfce4-session-4.20.2. Fikser #21326.
[bdubbs] - Oppdater til xfce4-panel-4.20.4. Fikser #21325.
[bdubbs] - Oppdater til libxfce4ui-4.20.1. Fikser #21323.
[bdubbs] - Oppdater til libxfce4util-4.20.1. Fikser #21324.
[bdubbs] - Oppdater til harfbuzz-11.0.0. Fikser #21320.
[renodr] - Oppdater til gtkmm-4.18.0. Fikser #21322.
[renodr] - Oppdater til libwacom-2.15.0. Fikser #21312.
[renodr] - Oppdater til cifs-utils-7.3. Fikser #21309.
[renodr] - Oppdater til epiphany-48.0. Fikser #21260.
[renodr] - Oppdater til xdg-desktop-portal-gnome-48.0. Fikser #21291.
[renodr] - Oppdater til xdg-desktop-portal-gtk-1.15.3. Fikser #21315.
[renodr] - Oppdater til evolution og evolution-data-server 3.56.0. Fikser #21250.
[renodr] - Oppdater til libshumate-1.4.0. Fikser #21264.
[renodr] - Oppdater til gnome-online-accounts-3.54.1. Fikser #21263.
[renodr] - Oppdater til gtksourceview5-5.16.0. Fikser #21262.
23. mars 2025
[bdubbs] - Oppdater til xarchiver-0.5.4.25. Fikser #21319.
[bdubbs] - Oppdater til fcron-3.4.0. Fikser #21318.
[bdubbs] - Oppdater til sbc-2.1. Fikser #21317.
[bdubbs] - Oppdater til libsoup-3.6.5. Fikser #21314.
[bdubbs] - Oppdater til libidn-1.43. Fikser #21311.
[bdubbs] - Oppdater til libarchive-3.7.8 (Sikkerhetsoppdatering). Fikser #21308.
[bdubbs] - Oppdater til libusb-1.0.28. Fikser #21199.
21. mars 2025
20. mars 2025
[zeckma] - Oppdater til mesa-25.0.2. Fikser #21310.
[renodr] - Oppdater til gnome-keyring-48.0. Fikser #21301.
[renodr] - Oppdater til libsecret-0.21.7. Fikser #21302.
[renodr] - Oppdater til gjs-1.84.1. Fikser #21292.
[renodr] - Oppdater til gtk-4.18.2. Fikser #21245.
[renodr] - Oppdater til localsearch-3.9.0. Fikser #21294.
[renodr] - Oppdater til tinysparql-3.9.1. Fikser #21293.
[thomas] - Oppdater til bind-9.20.7. Fikser #21306.
[thomas] - Oppdater til vte-0.80.0. Lagt til en side for ny avhengighet 'fast_float'. Fikser #21265.
[renodr] - Oppdater til rustc-1.85.1. Fikser #21299.
[renodr] - Oppdater til libclc-20.1.0. Fikser #21188.
[renodr] - Oppdater til SPIRV-LLVM-Translator-20.1.0. Fikser #22159.
[renodr] - Oppdater til SPIRV-Headers og SPIRV-Tools 1.4.309.0. Fikser #21236.
[renodr] - Oppdater til Vulkan-Headers og Vulkan-Loader 1.4.309. Fikser #21242.
19. mars 2025
[renodr] - Oppdater til llvm-20.1.0. Fikser #21192.
[zeckma] - Oppdater til thunderbird-128.8.1esr. Fikser #21303.
[renodr] - Legg til en oppføring i AppStream for LFS 12.3.
[renodr] - Oppdater til adwaita-icon-theme-48.0. Fikser #21249.
[bdubbs] - Oppdater til abseil-cpp-20250127.1. Fikser #21297.
[bdubbs] - Oppdater til pipewire-1.4.1. Fikser #21257.
[bdubbs] - Oppdater til libei-1.4.0. Fikser #21010.
[renodr] - Oppdater til glibmm-2.66.8. Fikser #21283.
18. mars 2025
[renodr] - Oppdater til librsvg-2.60.0. Fikser #21298.
[renodr] - Oppdater til libavif-1.2.1. Fikser #21285.
[renodr] - Oppdater til at-spi2-core-2.56.0. Fikser #21261.
[renodr] - Oppdater til dbus-1.16.2. Fikser #21168.
[bdubbs] - Oppdater til imlib2-1.12.4. Fikser #21287.
[bdubbs] - Oppdater til sentry_sdk-2.23.1 (Python modul). Fikser #21286.
[bdubbs] - Oppdater til libnvme-1.12. Fikser #21284.
17. mars 2025
[bdubbs] - Oppdater til gimp-3.0.0. Fikser #21281.
[bdubbs] - Oppdater til mupdf-1.25.5. Fikser #21258.
[bdubbs] - Oppdater til xarchiver-0.5.4.24. Fikser #21280.
[bdubbs] - Oppdater til pango-1.56.3. Fikser #21275.
[bdubbs] - Oppdater til pygobject-3.52.3 (Python module). Fikser #21274.
[bdubbs] - Oppdater til numpy-2.2.4 (Python modul). Fikser #21273.
[bdubbs] - Oppdater til gegl-0.4.56. Fikser #21272.
[renodr] - Løs et kjøretidsproblem i glib2 forårsaket av den nye versjon av gobject-introspection.
[renodr] - Oppdater til gobject-introspection-1.84.0. Fikser #21259.
[bdubbs] - Oppdater til babl-0.1.112. Fikser #21271.
[renodr] - Oppdater til gsettings-desktop-schemas-48.0. Fikser #21282.
16. mars 2025
15. mars 2025
14. mars 2025
[rahul] - Oppdater til nss-3.109. Fikser #21167.
[rahul] - Oppdater til nghttp2-1.65.0. Fikser #21180.
[renodr] - Oppdater til epiphany-47.4. Fikser #21241.
[renodr] - Oppdater til php-8.4.5 (Sikkerhetsoppdatering). Fikser #21240.
[renodr] - Oppdater til dbus-python-1.4.0 (Python Modul). Fikser #21239.
[renodr] - Oppdater til dbus-glib-0.114. Fikser #21237.
[renodr] - Oppdater gstreamer stakken to 1.26.0. Fikser #21231.
13. mars 2025
[bdubbs] - Oppdater til pygobject3-3.52.2 (Python modul). Fikser #21234.
[bdubbs] - Oppdater til libxslt-1.1.43 (Sikkerhetsoppdatering). Fikser #21233.
[bdubbs] - Oppdater til libxmlb-0.3.22. Fikser #21232.
[bdubbs] - Oppdater til pango-1.56.2. Fikser #21229.
[bdubbs] - Oppdater til ncftp-3.2.8. Fikser #21228.
[renodr] - Oppdater til texlive-20250308. Fikser #21220.
12. mars 2025
11. mars 2025
10. mars 2025
[rahul] - Oppdater til ffmpeg-7.1.1. Fikser #21181.
[rahul] - Oppdater til gtk3-3.24.49. Fikser #21195.
[rahul] - Oppdater til pipewire-1.4.0. Fikser #21203.
[bdubbs] - Oppdater til icewm-3.7.2. Fikser #21219.
[bdubbs] - Oppdater til xinit-1.4.4. Fikser #21218.
[bdubbs] - Oppdater til pygobject3-3.52.1 (Python modul). Fikser #21217.
[bdubbs] - Oppdater til libpng-1.6.47. Fikser #21110.
9. mars 2025
8. mars 2025
[thomas] - Oppdater til lvm2-2.03.31. Fikser #21158.
7. mars 2025
[renodr] - Oppdater til dvisvgm-3.4.4. Fikser #21204.
[renodr] - Oppdater til FreeRDP-3.13.0. Fikser #21202.
[renodr] - Oppdater til samba-4.22.0. Fikser #21200.
[renodr] - Oppdater til mutter-47.6. Fikser #21190.
[renodr] - Oppdater til gnome-shell-47.5. Fikser #21184.
[renodr] - Oppdater til vala-0.56.18. Fikser #21179.
[renodr] - Oppdater til SCons-4.9.0. Fikser #21175.
[renodr] - Oppdater til shaderc-2025.1. Fikser #21156.
[renodr] - Oppdater til ModemManager-1.22.0. Fikser #21129.
[renodr] - Oppdater til wayland-protocols-1.41. Fikser #21097.
[renodr] - Oppdater til Thunderbird-128.8.0esr (Sikkerhetsoppdatering). Fikser #21193.
[bdubbs] - Oppdater til glib-2.84.0. Fikser #21198.
[bdubbs] - Oppdater til poppler-25.03.0. Fikser #21183.
[bdubbs] - Oppdater til libqalculate-5.5.2. Fikser #21174.
[bdubbs] - Oppdater til libqmi-1.34.0. Fikser #21166.
[renodr] - Oppdater til Firefox-128.8.0esr og Spidermonkey (Sikkerhetsoppdatering). Fikser #21182.
[bdubbs] - Oppdater til libmbim-1.30.0. Fikser #21165.
[bdubbs] - Oppdater til NetworkManager-1.52.0. Fikser #21164.
6. mars 2025
[zeckma] - Oppdater til mesa-25.0.1. Fikser #21119.
[bdubbs] - Oppdater til hwdata-0.393. Fikser #21187.
[bdubbs] - Oppdater til cmake-3.31.6. Fikser #21149.
[bdubbs] - Oppdater til faad2-2.11.2. Fikser #21191.
[bdubbs] - Oppdater til faac-1.31.1. Fikser #21186.
[bdubbs] - Oppdater til sphinx-8.2.3 (Python modul). Fikser #21178.
[bdubbs] - Oppdater til pytest-8.3.5 (Python modul). Fikser #21177.
[bdubbs] - Oppdater til Text-CSV-2.06 (Perl modul). Fikser #21176.
5. mars 2025
[bdubbs] - Utgivelse av BLFS-12.3.
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.4),
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 (pakker bokinstruksjonene inn i et skript mens boken ikke forteller deg å gjøre det, er alltid betraktet som avvik, fordi det har vært for mange tilfeller av problemer der folk ikke klarer å legge merke til en subtil forskjell mellom skript og bok),
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. Hvis du har avviket fra boken, bør du også si ifra nøyaktig hva avviket er, slik at de andre kan gjenskape det. Et skript kan legges ved for å vise nøyaktig hva du har gjort (spesielt hvis du allerede har et slikt skript, det vil si at du allerede har avviket fra boken ved å pakke bokinstruksjonene inn i et skript og kjøre den).
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
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
Ken Moffat
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.16.1 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.8 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. For
eksempel, 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 «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 Sudo-1.9.17p2 er installert. For å kjøre make -j5 med de første 4 logiske kjernene og 8 GB av systemminne, utsted:
bash -e << \EOF
sudo mkdir /sys/fs/cgroup/$$
sudo sh -c \
"echo +memory +cpuset > /sys/fs/cgroup/cgroup.subtree_control"
sudo sh -c \
"echo 0-3 > /sys/fs/cgroup/$$/cpuset.cpus"
sudo sh -c \
"echo $(bc -e '8*2^30') > /sys/fs/cgroup/$$/memory.high"
(
sudo sh -c "echo $BASHPID > /sys/fs/cgroup/$$/cgroup.procs"
exec make -j5
)
sudo rmdir /sys/fs/cgroup/$$
EOF
Med 8589934592 (utdataen av bc -e '8*2^30', 2^30
representerer 230, dvs. en Gigabyte) i
memory.high oppføringen,
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 memory.high med memory.max. Men å gjøre det vil føre
til at prosessene drepes hvis 8 GB ikke er nok for dem.
0-3 i
cpuset.cpus oppføringen
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 Documentation/admin-guide/cgroup-v2.rst
filen i Linux kjernekildetreet for detaljert forklaring av
cgroup2 pseudo-fil
systemoppføringer referert til 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. I mange tilfeller, hvis en anbefalt avhengighet (ikke bare «kjøretid») ikke er installert, den bygde pakken kan mangle noen viktige funksjoner (for eksempel en videospiller kan kanskje bare spille av lyd). Noen ganger er det nødvendig å modifisere bokinstruksjonene for å deaktivere disse viktige funksjonene. I andre tilfeller kan byggesystemet til pakken bygge en kopi av avhengigheten (ofte utdatert og noen ganger med kjent sikkerhetssårbarhet) sendt i kildetreet, eller kan lastes ned fra internett under byggeprosessen. Dette øker byggetiden og diskbruk. Dette kan potensielt forårsake andre problemer. 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. Merk at BLFS redaktørene ikke tester en konfigurasjon med eksterne pakker generelt, og det finnes derfor absolutt ingen kvalitetssikring for de eksterne avhengighetene som er oppført i boken. Listen over eksterne avhengigheter kan være ufullstendig eller inneholde overflødige elementer. I verste fall kan selve eksistensen av en ekstern avhengighet på systemet utløse en feil i pakken, noe som forårsaker en bygge- eller kjøretidsfeil.
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 ble stripping av feilsøkingssymboler diskutert et par ganger. Når du bygger BLFS pakker, er det generelt ingen spesielle instruksjoner som diskuterer stripping igjen. 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-debug ${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-25.1.8 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-25.1.8). 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-15.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.13.7), 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, tre alternativer 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) 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 pakken Bootscripts inneholder init skript som brukes gjennom hele boken. Det antas at du vil bruke BLFS pakken Bootscripts sammen med en kompatibel LFS-Bootscripts pakke. Referer til ../../../../lfs/view/12.4/chapter09/bootscripts.html for mer informasjon om LFS-Bootscripts pakken.
Pakkeinformasjon
BLFS Bootscripts pakken vil bli brukt gjennom hele BLFS boken
for oppstartsskript. I motsetning til LFS har hvert init skript
et eget installasjonsmål i BLFS Bootscripts pakken. Det
anbefales at du beholder pakkekildens mappe til ferdigstillelse
av BLFS systemet. Når et skript er forespurt fra BLFS
Bootscripts, bytt ganske enkelt til mappen og som root bruker, utfør den gitte make install-<init-script>
kommandoen. Denne kommandoen installerer init skriptet til
riktig plassering (sammen med eventuelle
tilleggskonfigurasjonsskript) og oppretter også passende
symbolkoblinger for å starte og stoppe tjenesten på riktig
kjørenivå.
Du bør gå gjennom hvert bootscript før installasjon for å forsikre deg om at den tilfredsstiller ditt behov. Kontroller også at start og stopp symbolkoblingene den lager samsvarer med dine preferanser.
Fra tid til annen oppdateres bootscripts for å imøtekomme nye pakker eller for å gjøre mindre rettelser. Alle versjoner av bootscripts er plassert på https://anduin.linuxfromscratch.org/BLFS/blfs-bootscripts/.
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.2-1, 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-140.2.0 og ghostscript-10.05.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.50 hvis det brukes til Firefox-140.2.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.6 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.6, JOE-4.6, og alle mediespillere unntatt Audacious-4.5.
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.84.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 formatet har dette
problemet fordi den ikke lagrer kodingen for navnene på
arkiverte filer. Når unzip (faktisk en
symbolkobling til bsdunzip fra libarchive-3.8.1) pakker det ut, som
standard antas navnene å være kodet som CP850, Windows kode
for vesteuropeiske språk. Men navnene kan faktisk være kodet
på en annen måte hvis den inneholder ikke-latinske tegn (for
eksempel CP936 for forenklet kinesisk). Deretter uten manuelt
å spesifiserer kodingen, vil disse ikke-latinske tegnene bli
omgjort til uleselige sekvenser av bsdunzip.
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-10.0p1). 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.
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 rpmextract (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 formatet, er det forskjellige metoder
for å pakke dem ut.
.deb filer er bare arkiver som
er pakket og pakket ut av ar. De kan pakkes ut ved å kjøre:
ar x
$PACKAGE.deb. Det vil pakke ut mange filer;
imidlertid er den viktige data.tar.gz. Den inneholder alle filer som
vanligvis vil bli installert.
For .rpm filer, kan du
installere rpmextract
(se
PKGBUILD for hvordan du installerer pakken) og bruke
rpmextract.sh
fra pakken for å pakke ut filen. Det vil pakke ut til flere
mapper, for eksempel app og
usr. Du kan også bruke
File-Roller-44.5 eller ark-25.08.0 for
utpakkingen.
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.
De resterende temaene, Tilpasse Påloggingen med /etc/issue og Generering av tilfeldige tall blir deretter adressert, i den rekkefølgen. De har ikke mye interaksjon med de andre temaene 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 og kjernen om å bruke en mindre oppløsning, for eksempel 1024x768 eller 800x600 eller til og med 640x480. Selv om skjermen ikke har et sideforhold på 4:3, bør dette fungere.
If you've followed the LFS book to configure your kernel with
SimpleDRM enabled and the kernel driver dedicated for your
GPU (for example i915 or AMDGPU) is built as a kernel module,
before the dedicated driver is loaded, the SimpleDRM driver
will be used for displaying. The SimpleDRM driver itself
cannot change the resolution, so you need to tell GRUB to set
the suitable resolution before loading the kernel by
modifying the set
gfxpayload=1024x768x32 line in the
grub.cfg file.
Når den dedikerte GPU driveren begynner å fungere (når
kjernen eller modulen lastes avhengig av om du har bygget den
som en del av kjernebildet eller en modul), tar den
skjermkontrollen bort fra SimpleDRM driveren og endrer
skjermoppløsningen. For å få den til å bruke oppløsningen du
ønsker, rediger igjen grub.cfg
filen for å sette inn en video=
parameter inn i kjernen sin kommandolinje, for eksempel
root=/dev/sda2 video=DP-1:800x600
ro. Merk at det er nødvendig å spesifisere
utdatanavnet DP-1 eksplisitt
her: en video= parameter uten et
utdatanavn gjenkjennes bare av GRUB (som en utdatert alias av
set gfxpayload=) og fullstendig
ignorert av kjernen. Innholdet i /sys/class/drm/ kan være nyttig for å finne
ut utdatanavnet, for eksempel card1-DP-1 undermappe indikerer en utgang
med navn DP-1. For å justere
utgangsnavn med skjermen, installer libdisplay-info-0.3.0 pakken og
kjør di-edid-decode
/sys/class/drm/card<card
ID>-<output
name>/edid kommandoen for å
vise informasjonen (inkludert modellnavnet og støttede
oppløsninger) om skjermen koblet til utgangen.
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/sysconfig/console
som beskrevet i LFS seksjon 9.6.5 ../../../../lfs/view/12.4/chapter09/usage.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.
Kjernen eller kjernendrivere ser etter fastvarebilder i
/lib/firmware. Men i LFS
/lib er en symbolkobling til
usr/lib, så mappen som inneholder
fastvarefilen er faktisk /usr/lib/firmware.
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.50.1 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.
Merk at noen nødvendige
fastvarefiler (og mapper) faktisk er symbolkoblinger til
andre filer (eller mapper). Disse symbolkoblingene er ikke
lagret i Git depotet, i stedet blir de dokumentert i
WHENCE filen. Hver linje som
begynner med Link: beskriver en
symbolkobling. Hvis du laster ned et element du trenger, og
det er en slik symbolkobling (eller i en mappe som er en slik
symbolkobling), må du opprette symbolkoblingen manuelt og
laste ned målet. På den annen side, hvis du vil ha alle
fastvarefilene, bruk ./copy-firmware.sh
/usr/lib/firmware kommandoen som kopierer
fastvarefilene og oppretter alle symbolkoblinger i
WHENCE filen, i stedet for en
rett frem kopier kommando som cp -r * /usr/lib/firmware/.
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.
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 Ada Lovelace (GeForce 40 series) til linux-firmware.
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.50.1, pciutils-3.14.0, og Wget-1.25.0
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.
I noen sjeldne tilfeller kan en mikrokodeoppdatering fra kjernen være ineffektiv. For eksempel intel-microcode-20241029 inneholder Raptor Lake mikrokode revisjon 0x12b som er ment å fikse en beryktet overdreven spenningsproblem som forårsaker stabilitetsproblemer og til og med permanente prosessorskader, når kjernen starter er det allerede for sent for at mikrokoden skal fikse problemet. Den eneste måten å fikse dette problemet på er å oppdatere BIOS.
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-20250812.
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 «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
«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 «Om
initramfs»), bør du bør kjøre mkinitramfs igjen etter å
ha puttet den riktige bloben eller beholderen i
/usr/lib/firmware. Mer
presist, putt en intel blob i /usr/lib/firmware/intel-ucode mappen
eller en AMD beholder i /usr/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.
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.14.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 /usr/lib/firmware/radeon cp -v <YOUR_BLOBS> /usr/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 «Om initramfs» for detaljer), eller inkludere dem i selve kjernebildet (les «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.14.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 /usr/lib/firmware/amdgpu cp -v <YOUR_BLOBS> /usr/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 «Om initramfs» for detaljer), eller inkludere dem i selve kjernebildet (les «Inkluder fastvare blobber i kjernebildet» for detaljer).
Noen NVIDIA GPUer fra Kepler og utover (inkludert alle
NVIDIA GeForce RTX GPUer og GTX 9xx serien og utover)
krever fastvare signert av NVIDIA for å fungere. For
Nouveau driveren har NVIDIA gitt ut de signerte
fastvarefilene i nvidia/
mappen i linux-firmware. Les the
CodeNames page of the Nouveau wiki for å finne ut
kodenavnet på din NVIDIA GPU (for eksempel kodenavnet til
GeForce RTX 5080 er GB203). Mappen for fastvarefilene du
trenger er navngitt som resultatet som konverterer
kodenavnet til små bokstaver (gb203 for eksempelet). Mappen (eller noe
av dens innhold) kan faktisk være en symbolkobling til en
annen mappe (eller noen filer i en annen mappe) og du
trenger da create the symlink and download
its target yourself (for eksempel, gb207 er en symbolkobling til
gb202).
Hvis du ikke finner mappen for GPUen din i verken
linux-firmware treet eller WHENCE filen (som en symbolkobling),
betyr det enten at GPUen din ikke trenger noen fastvare,
eller den er nyere enn Blackwell (RTX 50xx serien) og
fastvaren for den er ikke utgitt ennå (per midten av 2025).
For NVIDIA GPU-ene fra Tesla til Kepler, Nouveau driveren krever litt ekstra fastvare for å støtte videodekodingsakselerasjon. Disse fastvarefilene er ikke utgitt av NVIDIA, men de kan bli hentet fra NVIDIAs binære driver. For mer nøyaktig informasjon om hvilke chipper som trenger uttrukket fastvare, se the VideoAcceleration of the Nouveau wiki. For å pakke ut og installere disse fastvarefilene, utsted:
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 /usr/lib/firmware/nouveau cp -d nv* vuc-* /usr/lib/firmware/nouveau/
Kjernen liker å laste fastvare for noen nettverksdrivere,
spesielt de fra Realtek ( /usr/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 /usr/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
/usr/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 «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 bærbare datamaskiner med en nylig
Intel CPU) 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 -rv sof* /usr/lib/firmware/intel/
alsa-lib-1.2.14 behøver Use Case Manager konfigurasjonsfiler for systemene som bruker Sound Open Firmware også. Les alsa-lib-1.2.14 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 «Konfigurere ALSA Verktøy» for å sette opp lydkortet ditt for ALSA skikkelig.
Å identifisere riktig firmware vil vanligvis kreve at du
installerer pciutils-3.14.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
«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 /usr/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] # This is the default, you can change it to "/usr/lib/firmware" # if you want: (/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
/usr/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 /usr/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.4.0 installeres.
I noen tilfeller er det fornuftig å deaktivere udev fullstendig og lage statiske enheter. Servere er ett eksempel om denne situasjonen. Trenger en server evne til å håndtere dynamiske enheter? Bare systemadministratoren kan svare på det spørsmålet, men i mange tilfeller vil svaret være nei.
Hvis dynamiske enheter ikke er ønsket, må statiske enheter
være opprettet på systemet. I standardkonfigurasjonen
/etc/rc.d/rcS.d/S10udev
oppstartsskript monterer en tmpfs partisjon over /dev mappen. Dette problemet kan overvinnes
ved å montere root partisjonen midlertidig:
Hvis instruksjonene nedenfor ikke følges nøye, kan systemet ditt bli uoppstartbart.
mount --bind / /mnt
cp -a /dev/* /mnt/dev
rm /etc/rc.d/rcS.d/{S10udev,S50udev_retry}
umount /mnt
På dette tidspunktet vil systemet bruke statiske enheter på neste omstart. Lag eventuelle ekstra enheter ved hjelp av mknod.
Hvis du vil gjenopprette de dynamiske enhetene, gjenskaper du
/etc/rc.d/rcS.d/{S10udev,S50udev_retry}
symbolske koblinger og starter på nytt. Statiske enheter
trenger ikke å fjernes (konsoll og null er alltid nødvendig)
fordi de er dekket av tmpfs
partisjonen. Disk bruk for enheter er ubetydelig (ca 20–30
byte per oppføring).
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.
Tabell 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 | |
| mariadb | 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 kaller så små,
enkeltformålsskripter i /etc/profile.d mappen for å gi det meste av
initialiseringen.
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}
for script in /etc/profile.d/*.sh ; do
if [ -r $script ] ; then
. $script
fi
done
unset script
# 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
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 trekker automatisk ut 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
å sette 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
export LANG=<ll>_<CC>.<charmap><@modifiers>
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 interaktive 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
# GnuPG wants this or it'll fail with pinentry-curses under some
# circumstances (for example signing a Git commit)
tty -s && export GPG_TTY=$(tty)
# End /etc/bashrc
EOF
For mer informasjon om escape-sekvensene du kan bruke for
prompten (dvs. PS1
miljøvariabelen) se info
bash -- Node:
Printing a Prompt.
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://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.
Linux kjernen leverer en tilfeldig tallgenerator som er
tilgjengelig gjennom /dev/random
og /dev/urandom. Programmer som
bruker de tilfeldige og uvilkårlige enhetene, som f.eks
OpenSSH, vil dra nytte av
disse instruksjonene.
Når et Linux system starter opp uten mye operatørinteraksjon, vil entropi pool (data som brukes til å beregne et tilfeldig tall) være i en ganske forutsigbar tilstand. Dette skaper den reelle muligheten for at nummeret generert ved oppstart alltid kan være det samme. For å motvirke denne effekten, bør du bære informasjonen om entropipoolen på tvers av dine avslutninger og oppstarter.
Installer /etc/rc.d/init.d/random
init skriptet inkludert i blfs-bootscripts-20250225
pakken.
make install-random
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.4 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/make-ca/archive/v1.16.1/make-ca-1.16.1.tar.gz
Nedlastingsstørrelse: 40 KB
Nedlasting MD5 Sum: bf9cea2d24fc5344d4951b49f275c595
Estimert diskplass som kreves: 164 KB (med alle kjøretidsdeps)
Estimert byggetid: mindre enn 0.1 SBU (med alle kjøretidsdeps)
Denne pakken sender et CA sertifikat for å validere
identiteten til https://hg-edge.mozilla.org/.
Hvis tillitskjeden til denne nettsiden har blitt endret
etter utgivelsen av make-ca-1.16.1, 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.20.0, kreves i de følgende instruksjoner for å generere sertifikatlagre fra tillitsankere, og hver gang make-ca kjøres)
nss-3.115 (å 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 cron
job. Hvis du har installert
Fcron-3.4.0 og fullført avsnittet om
periodiske jobber, kjør følgende kommandoer, som
root bruker, for å
opprette en ukentlig cron jobb:
cat > /etc/cron.weekly/update-pki.sh << "EOF" &&
#!/bin/bash
/usr/sbin/make-ca -g
EOF
chmod 754 /etc/cron.weekly/update-pki.sh
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.115. 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.25.0 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.16.1 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.13/, 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.4 plattform.
Nedlasting (HTTP): https://github.com/cracklib/cracklib/releases/download/v2.10.3/cracklib-2.10.3.tar.xz
Nedlasting MD5 sum: e8ea2b86de774fc09fdd0f2829680b19
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.3/cracklib-words-2.10.3.xz
Nedlasting MD5 sum: f27804022dbf2682a7f7c353317f9a53
Nedlastingsstørrelse: 4.0 MB
Det er flere ordlister tilgjengelig for nedlasting, for eksempel fra https://www.skullsecurity.org/wiki/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:
CPPFLAGS+=' -I /usr/include/python3.13' \
./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.
xzcat ../cracklib-words-2.10.3.xz \
> /usr/share/dict/cracklib-words &&
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
Om ønskelig, test Python modulen med:
python3 -c 'import cracklib; cracklib.test()'
Hvis du installerer CrackLib etter at LFS systemet ditt er fullført og du har Shadow pakken installert, må du installere Shadow-4.18.0 på nytt hvis du ønsker å gi sterk passordstøtte på systemet ditt. Hvis du nå skal installere Linux-PAM-1.7.1 pakken, kan du se bort fra denne merknaden ettersom Shadow vil bli reinstallert etter Linux-PAM installasjonen.
CPPFLAGS+=' -I
/usr/include/python3.13': Denne miljøvariabelen er
nødvendig for å la pakken finne Python-3.13 inkluderte filer.
--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.
sed ... ./python/test_cracklib.py: Denne kommandoen oppdaterer byggeprosedyren for Python modulen for Python-3.13 og senere..
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.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/cryptsetup/v2.8/cryptsetup-2.8.1.tar.xz
Nedlasting MD5 sum: 92b51ffa30e98447dccece6e4a055e3b
Nedlastingsstørrelse: 11 MB
Estimated disk space required: 40 MB (legg til 6 MB for tester)
Estimert byggetid: 0.2 SBU (legg til 19 SBU for tester)
JSON-C-0.18, LVM2-2.03.34, og popt-1.19
asciidoctor-2.0.23, libpwquality-1.4.5, argon2, libssh, mbedtls, 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_CRC_T10DIF,
CONFIG_CRYPTO_USER,
CONFIG_CRYPTO_CRYPTD,
CONFIG_CRYPTO_LRW,
CONFIG_CRYPTO_XTS,
CONFIG_CRYPTO_ESSIV,
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 å 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.4 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
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/cyrus-sasl-2.1.28-gcc15_fixes-1.patch
Linux-PAM-1.7.1, MIT Kerberos V5-1.22.1, MariaDB-11.8.3 eller MySQL, OpenLDAP-2.6.10, PostgreSQL-17.6, sphinx-8.2.3, SQLite-3.50.4, Berkeley DB (deprecated), krb4, Dmalloc, og Pod::POM::View::Restructured
Denne pakken støtter ikke parallellbygging.
Først må du fikse pakken slik at den er kompatibel med gcc-15:
patch -Np1 -i ../cyrus-sasl-2.1.28-gcc15_fixes-1.patch && autoreconf -fiv
Rett også et problem som ble avslørt av gcc-14 og nyere:
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 /etc/rc.d/init.d/saslauthd init skriptet
inkludert i blfs-bootscripts-20250225 pakken
ved å bruke følgende kommando:
make install-saslauthd
Du må modifiserer /etc/sysconfig/saslauthd og modifiserer
AUTHMECH parameter med ønsket
autentiseringsmekanisme.
|
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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/gnupg/gnupg-2.4.8.tar.bz2
Nedlasting MD5 sum: a165b60aeaac0bb4d251117a45199c5f
Nedlastingsstørrelse: 7.6 MB
Estimert diskplass som kreves: 136 MB (med tester)
Estimert byggetid: 0.7 SBU (med tester; begge bruker parallellisme=4)
libassuan-3.0.2, libgcrypt-1.11.2, libksba-1.6.7, npth-1.8 og OpenLDAP-2.6.10
GnuTLS-3.8.10 (kreves for å kommunisere med nøkkelservere ved å bruke https- eller hkps-protokollen) og pinentry-1.3.2 (Kjøretidskrav for de fleste pakkens funksjonalitet)
cURL-8.15.0, Fuse-3.17.4, ImageMagick-7.1.2-1 (for convert verktøyet, brukes til å generere dokumentasjonen), libusb-1.0.29, en MTA, SQLite-3.50.4, texlive-20250308 (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.8 &&
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-20250308 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.8/html &&
install -v -m644 doc/gnupg_nochunks.html \
/usr/share/doc/gnupg-2.4.8/html/gnupg.html &&
install -v -m644 ../doc/*.texi doc/gnupg.txt \
/usr/share/doc/gnupg-2.4.8 &&
install -v -m644 doc/gnupg.html/* \
/usr/share/doc/gnupg-2.4.8/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.8
mkdir build && cd build: Gnupg2 utviklere anbefaler å bygge pakken i en dedikert mappe.
--docdir=/usr/share/doc/gnupg-2.4.8:
Denne bryteren endrer standard docdir til /usr/share/doc/gnupg-2.4.8.
--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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/gnutls/v3.8/gnutls-3.8.10.tar.xz
Nedlasting MD5 sum: 803c6f5c9cbe55c64fbb46690d329a77
Nedlastingsstørrelse: 6.5 MB
Estimert diskplass som kreves: 178 MB (legg til 111 MB for tester)
Estimert byggetid: 0.6 SBU (legg til 1.4 SBU for tester; begge bruker parallellisme=8)
make-ca-1.16.1, libunistring-1.3, libtasn1-4.20.0, og p11-kit-0.25.5
Brotli-1.1.0, Doxygen-1.14.0, GTK-Doc-1.34.0, libidn-1.43 eller libidn2-2.3.8, libseccomp-2.6.0, Net-tools-2.10 (brukt under testpakken), texlive-20250308 eller install-tl-unx, Unbound-1.23.1 (for å bygge DANE biblioteket), Valgrind-3.25.1 (brukt under testpakken), autogen, cmocka og datefudge (brukt under testpakken hvis DANE bibliteket er bygget), leancrypto, og Trousers (Trusted Platform Module støtte)
Merk at hvis du ikke installerer libtasn1-4.20.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.10 \
--with-default-trust-store-pkcs11="pkcs11:" &&
make
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-0.25.5..
--with-included-unistring: Denne
bryteren bruker den medfølgende versjon av libunistring, i
stedet for systems. Bruk denne bryteren hvis du ikke har
installert libunistring-1.3.
--disable-dsa: Denne bryteren
deaktiverer algoritmestøtte for DSA 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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/gpgme/gpgme-2.0.0.tar.bz2
Nedlasting MD5 sum: 60f6871b948060572c7d952e39b42bd8
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 24 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester og parallellitet=4)
GnuPG-2.4.8 (i henhold til anbefalingen oppstrøms)
Installer gpgme ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
../configure --prefix=/usr \
--disable-static &&
make
For å teste resultatene, bør du ha GnuPG-2.4.8 installerte. I så fall, kjør:
make -k check
Nå, som root bruker:
make install
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--disable-gpg-test: Bruk denne
bryteren hvis GnuPG-2.4.8 ikke er installert.
gpgmepp pakken gir en C++ innpakning til gpgme-2.0.0.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/gpgmepp/gpgmepp-2.0.0.tar.xz
Nedlasting MD5 sum: c27f2285fe9fac54b5d1ca22e00b4594
Nedlastingsstørrelse: 115 KB
Estimert diskplass som kreves: 8.9 MB
Estimert byggetid: 0.1 SBU
Installer gpgmepp ved å kjøre følgende kommandoer:
mkdir build && cd build && cmake -D CMAKE_INSTALL_PREFIX=/usr .. && make
Denne pakken leveres ikke med en testpakke.
Nå, som root bruker:
make install
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.4 plattform.
Nedlasting (HTTP): https://www.netfilter.org/projects/iptables/files/iptables-1.8.11.tar.xz
Nedlasting MD5 sum: 44191ce12055da9790a92429c771ba50
Nedlastingsstørrelse: 636 KB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 SBU
libpcap-1.10.5 (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.
cat > /etc/rc.d/rc.iptables << "EOF"
#!/bin/sh
# Begin rc.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
# Drop any incoming MULTICAST or BROADCAST packet before logging:
# The box outputs several of them when using netbios or mDNS, and those
# appear immediately as incoming, which clutters the log.
iptables -A INPUT -m addrtype --dst-type BROADCAST,MULTICAST -j DROP
# Log everything else.
iptables -A INPUT -j LOG --log-prefix "FIREWALL:INPUT "
# End $rc_base/rc.iptables
EOF
chmod 700 /etc/rc.d/rc.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.
cat > /etc/rc.d/rc.iptables << "EOF"
#!/bin/sh
# Begin rc.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
EOF
chmod 700 /etc/rc.d/rc.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 «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
/etc/rc.d/init.d/iptables
init skriptet inkludert i blfs-bootscripts-20250225
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.11 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.11. 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.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.76.tar.xz
Nedlasting MD5 sum: 449ade7d620b5c4eeb15a632fbaa4f74
Nedlastingsstørrelse: 196 KB
Estimert diskplass som kreves: 2.3 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.7.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.4 plattform.
Nedlasting (HTTP): https://github.com/linux-pam/linux-pam/releases/download/v1.7.1/Linux-PAM-1.7.1.tar.xz
Nedlasting MD5 sum: 92812d7dd414d816fba8d649e84e68ca
Nedlastingsstørrelse: 500 KB
Estimert diskplass som kreves: 16 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
Valgfri Dokumentasjon
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/Linux-PAM/Linux-PAM-1.7.1-docs.tar.xz
Nedlasting MD5 sum: f147017efb39a670bad3e8b614df50f0
Nedlastingsstørrelse: 499 KB
libnsl-2.0.1, libtirpc-1.3.6, rpcsvc-proto-1.4.4, Berkeley DB (deprecated), libaudit, og libeconf
docbook-xml-5.0, docbook-xsl-ns-1.79.2, fop-2.11 (for PDF format), libxslt-1.1.43, og Lynx-2.9.2 (for ren tekstformat)
Shadow-4.18.0 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 elogind-255.17 er bygget senere)
for å virke, en kjernekonfigurasjonsparameter må angis,
ellers vil modulen bare gjøre ingenting:
General setup ---> [*] Auditing support [AUDIT]
Hvis du har installert docbook-xml-5.0, docbook-xsl-ns-1.79.2, libxslt-1.1.43, og Lynx-2.9.2 og du ønsker å
generere rent tekstformat av dokumentasjonen, endre
meson.build til å bruke
Lynx-2.9.2 i stedet for W3m eller Elinks som
BLFS ikke gir:
sed -e "s/'elinks'/'lynx'/" \
-e "s/'-no-numbering', '-no-references'/ \
'-force-html', '-nonumbers', '-stdin'/" \
-i meson.build
Kompiler og link Linux PAM med å kjøre følgende kommandoer:
mkdir build && cd build && meson setup .. \ --prefix=/usr \ --buildtype=release \ -D docdir=/usr/share/doc/Linux-PAM-1.7.1 && ninja
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 ninja 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 ninja test. Pass på at testene ikke produserer noe feil før du fortsetter installasjonen.
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:
ninja install && chmod -v 4755 /usr/sbin/unix_chkpwd
Fjern nå en unødvendig mappe som root:
rm -rf /usr/lib/systemd
Hvis du ikke har de valgfrie avhengighetene installert for å
bygge dokumentasjonen og lastet ned den valgfrie
forhåndsbygde dokumentasjonen, igjen som root bruker:
tar -C / -xvf ../../Linux-PAM-1.7.1-docs.tar.xz
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 flere feltene og tillatte
oppføringer. Linux-PAM System Administrators' Guide på
/usr/share/doc/Linux-PAM-1.7.0/Linux-PAM_SAG.txt
anbefales for ytterligere informasjon.
Du bør nå installere på nytt Shadow-4.18.0 pakken .
|
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.4 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.4/liboauth-1.0.3-openssl-1.1.0-3.patch
nss-3.115 og Doxygen-1.14.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.14.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.4 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-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.4 plattform.
Nedlasting (HTTP): https://kerberos.org/dist/krb5/1.22/krb5-1.22.1.tar.gz
Nedlasting MD5 sum: 8f841cea186ef6856ea6c2a063091861
Nedlastingsstørrelse: 8.3 MB
Estimert diskplass som kreves: 135 MB (legg til 15 MB for tester)
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; legg til 3.8 SBU for tester)
BIND Utilities-9.20.12,
CrackLib-2.10.3 (/usr/share/dict/words referert av noen
tester), keyutils-1.6.3, OpenLDAP-2.6.10,
Valgrind-3.25.1 (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 seg lenge og mislykkes hvis systemet ikke er koblet til
et nettverk. Én 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.22.1
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 der byggesystemet ikke
gjenkjenner sitt eget Verto bibliotek hvis denne pakken har
blitt installert før. Dette er ikke et problem hvis du
installerer den samme versjonen på nytt, men kan være
problematisk hvis du oppdaterer fordi den gamle versjonen av
Verto biblioteket vil bli brukt i stedet for å installere den
nyere 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
installeres i CrackLib-2.10.3 bruksanvisninger.
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.
Neste, opprett KDC databasen:
kdb5_util create -r <EXAMPLE.ORG> -s
Nå bør du fylle databasen med databaseprinsipper
(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.22.1 hvor ovennevnte instruksjoner er basert på.
Hvis du vil starte Kerberos tjenester ved oppstart,
installer /etc/rc.d/init.d/krb5 init skriptet
inkludert i blfs-bootscripts-20250225 pakke
ved hjelp av 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 Kerberos 5 biblioteker |
|
|
er Kerberos 5 server |
|
|
sender en problemrapport (PR) til en sentral støtteside |
|
|
er superbrukerprogrammet som bruker Kerberos
protokollen. Det 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 viser deretter serverens respons |
|
|
er et enkelt UDP-basert eksempelklientprogram, for demonstrasjon |
|
|
er en enkel UDP-basert serverapplikasjon for demonstrasjonsformål |
|
|
er en eksempel på Kerberos 5 server |
|
|
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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/nettle/nettle-3.10.2.tar.gz
Nedlasting MD5 sum: b28bcbf6f045ff007940a9401673600d
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 102 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester; begge bruker parallellisme=4)
Valgrind-3.25.1 (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.2 &&
install -v -m644 nettle.{html,pdf} /usr/share/doc/nettle-3.10.2
--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.4 plattform.
Nedlasting (HTTP): https://archive.mozilla.org/pub/security/nss/releases/NSS_3_115_RTM/src/nss-3.115.tar.gz
Nedlasting MD5 sum: 3780ea47a89bccee86feb9d378cdb54e
Nedlastingsstørrelse: 73 MB
Estimert diskplass som kreves: 307 MB (legg til 151 MB for tester)
Estimert byggetid: 0.8 SBU (med parallellitet=4, legg til 42 SBU for tester på AMD Ryzens eller minst 27 SBU på Intel maskiner)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/nss-standalone-1.patch
SQLite-3.50.4 og p11-kit-0.25.5 (kjøretid)
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/nss
Installer NSS ved å kjøre følgende kommandoer:
patch -Np1 -i ../nss-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 i /etc/hosts, som gjort 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.16.1 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 rapporterer versjon OpenSSH_10.0p2 selv om kildepakken er openssh-10.0p1.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-10.0p1.tar.gz
Nedlasting MD5 sum: 689148621a2eaa734497b12bed1c5202
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 50 MB (legg til 22 MB for tester)
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; å kjøre testene tar omtrent 15 minutter, uavhengig av prosessorhastighet)
GDB-16.3 (for tester), Linux-PAM-1.7.1 (PAM konfigurasjonsfiler fra Shadow-4.18.0 brukes til å lage openssh sine), Xorg Applikasjoner (eller Xorg build environment, se Parameterforklaringer), MIT Kerberos V5-1.22.1, Which-2.23 (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-10.0p1 &&
install -v -m644 INSTALL LICENCE OVERVIEW README* \
/usr/share/doc/openssh-10.0p1
--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
/etc/rc.d/init.d/sshd init
skriptet inkludert i blfs-bootscripts-20250225
pakken.
Endring av innstillingen for ListenAddress i /etc/sshd/sshd_config er ikke støttet
med BLFS sshd bootscript.
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.4 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.43, og nss-3.115 (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.43 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.4 plattform.
Nedlasting (HTTP): https://github.com/polkit-org/polkit/archive/126/polkit-126.tar.gz
Nedlasting MD5 sum: db4ce0a42d5bf8002061f8e34ee9bdd0
Nedlastingsstørrelse: 448 KB
Estimert diskplass som kreves: 7.4 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester; bruke parallellisme=4)
duktape-2.7.0 og GLib-2.84.4 (GObject Introspection anbefalt)
libxslt-1.1.43, Linux-PAM-1.7.1, og elogind-255.17
Siden elogind bruker PAM til å registrere brukerøkter, er det en god idé å bygge Polkit med PAM støtte så elogind kan spore Polkit økter.
GTK-Doc-1.34.0 og dbusmock-0.36.0 (påkrevd for tester)
Én polkit autentiseringsagent for bruk av polkit i et grafiske miljø: polkit-kde-agent i Plasma-6.4.4 for KDE, agenten bygd inn gnome-shell-48.4 for GNOME3, polkit-gnome-0.105 for XFCE, og lxqt-policykit-2.2.0 for LXQt
Hvis libxslt-1.1.43 er installert, da er
docbook-xml-4.5 og docbook-xsl-nons-1.79.2
nødvendig. Hvis du har installert libxslt-1.1.43, 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 skal kjøre testpakken, aktiver støtten og kompiler kjernen på nytt om nødvendig:
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=elogind \
-D systemdsystemunitdir=/tmp \
-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.4.0 og dbusmock-0.36.0 er installert. Kjør så ninja test.
Nå, som root bruker:
ninja install
Fjern noen filer som ikke er nyttige på et SysV system som
root bruker:
rm -v /tmp/*.service &&
rm -rf /usr/lib/{sysusers,tmpfiles}.d
--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 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.84.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.4 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 Linux-PAM etter at LFS systemet ditt ble fullført. Med Linux-PAM installert, 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.4 plattform.
Nedlasting (HTTP): https://github.com/shadow-maint/shadow/releases/download/4.18.0/shadow-4.18.0.tar.xz
Nedlasting MD5 sum: 30ef46f54363db1d624587be68794ef2
Nedlastingsstørrelse: 2.2 MB
Estimert diskplass som kreves: 103 MB
Estimert byggetid: 0.2 SBU
Installasjonskommandoene vist nedenfor er for installasjoner hvor Linux-PAM er installert og Shadow blir reinstallert for å støtte Linux-PAM installasjon.
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@/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.
/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.7.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 \
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.4/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.4 plattform.
Nedlasting (HTTP): https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-10.0p1.tar.gz
Nedlasting MD5 sum: 689148621a2eaa734497b12bed1c5202
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK-3.24.50, Sudo-1.9.17p2 (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.17p2 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.4 plattform.
Nedlasting (HTTP): https://www.stunnel.org/downloads/archive/5.x/stunnel-5.75.tar.gz
Nedlasting MD5 sum: a10dc6f1925f4ce1945ff95dc327ed28
Nedlastingsstørrelse: 900 KB
Estimert diskplass som kreves: 7.3 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 \
--disable-systemd &&
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.75 install
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
--disable-systemd:
Denne bryteren deaktiverer systemd socket aktiveringsstøtte
som ikke er tilgjengelig i BLFS.
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.
For å starte automatisk stunnel nissen når
systemet startet opp, installer /etc/rc.d/init.d/stunnel oppstartsskript
fra blfs-bootscripts-20250225
pakken.
make install-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.4 plattform.
Nedlasting (HTTP): https://www.sudo.ws/dist/sudo-1.9.17p2.tar.gz
Nedlasting MD5 sum: dcbf46f739ae06b076e1a11cbb271a10
Nedlastingsstørrelse: 5.2 MB
Estimert diskplass som kreves: 54 MB (legg til 10 MB for tester)
Estimert byggetid: 0.2 SBU (med parallellitet=4; legg til 0,1 SBU for tester)
Linux-PAM-1.7.1, MIT Kerberos V5-1.22.1, OpenLDAP-2.6.10, 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.17p2 \
--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.4 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.34 og/eller mdadm-4.4 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 «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.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v6.16.tar.xz
Nedlasting MD5 sum: 2954d539b75beb912a0c0c98783ba5f3
Nedlastingsstørrelse: 4.7 MB
Estimert diskplass som kreves: 68 MB (midlertidige filer opprettet under tester trenger opptil 10 GB)
Estimert byggetid: 0.3 SBU (med parallellitet=4; legg til 3.1 SBU for tester, opptil 14 SBU på trege disker)
LVM2-2.03.34 (dmsetup brukes i tester), sphinx-8.2.3 og sphinx_rtd_theme-3.0.2 (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.34, 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.45.
Før du kjører tester, bygg et støtteprogram:
make fssum
Fjern nå en test som er kjent for å mislykkes. Som
root:
rm -rf tests/misc-tests/041-subvolume-delete-during-send
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.2.3.
|
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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/libfuse/libfuse/releases/download/fuse-3.17.4/fuse-3.17.4.tar.gz
Nedlasting MD5 sum: c894181418bf0bc11f98938fc30d37df
Nedlastingsstørrelse: 7.0 MB
Estimert diskplass som kreves: 100 MB (med tester og dokumentasjon)
Estimert byggetid: 0.1 SBU (legg til 0.4 SBU for tester)
Doxygen-1.14.0 (for å gjenoppbygge API dokumentasjonen) pytest-8.4.1 (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.14.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.4.1 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.17.4 &&
install -v -m644 doc/{README.NFS,kernel.txt} \
/usr/share/doc/fuse-3.17.4
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.
--system-site-packages:
Tillater at Python3 venv
modulen å få tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
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.4 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.4/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.4 plattform.
Nedlasting (HTTP): https://sourceware.org/ftp/lvm2/LVM2.2.03.34.tgz
Nedlasting MD5 sum: 947741079e22a35d76aefa99861b406a
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 41 MB (legg til 20 MB for tester; midlertidige filer kan vokse opp til rundt 300 MB i /tmp mappen under tester)
Estimert byggetid: 0.2 SBU (legg til 9 til 48 SBU for tester, avhengig av diskhastighet og om ram-blokkeringsenhet er aktivert i kjernen)
libnvme-1.15, mdadm-4.4, Valgrind-3.25.1, Which-2.23, xfsprogs-6.15.0 (sistnevnte fire kan brukes, men er ikke nødvendig, 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 rm -fv /usr/lib/udev/rules.d/69-dm-lvm.rules
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.
rm .../69-dm-lvm.rules: Under visse omstendigheter, denne udev regelen kaller systemd-run, som ikke er tilgjengelig på sysv. Den utfører handlinger som gjøres av en annen oppstartsskript uansett, så det er ikke nødvendig.
|
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.34 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
LFS oppstartsskriptene gjør disse logiske volumene
tilgjengelige for systemet i udev skriptet automatisk.
Rediger /etc/fstab filen etter
behov for å montere dem automatisk.
Et LVM logisk volum kan være vert for et rootfilsystem, men
krever bruk av initramfs (opprinnelig RAM filsystem). Initramfs
foreslått i «Om initramfs» lar lvm volumet sende inn
root= bryteren til
kjernekommandolinjen.
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.4.1.
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.4.
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.15.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.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-4.4.tar.xz
Nedlasting MD5 sum: c4bb72fdded17c9d74fcdd4a0896c97a
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]
Rett en byggefeil introdusert av gcc-15::
sed -e "s/__u8 signature\[4\]/& __attribute__ ((nonstring))/" \
-i platform-intel.h
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] # This makes the kernel use NTFS3 when the userspace requests the old # read-only NTFS driver: <*/M> NTFS file system support [NTFS_FS]
Med kjernestøtten tilgjengelig, er ntfs-3g bare nødvendig hvis du trenger verktøyene fra den (for eksempel for å lage eller sjekke 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.4 plattform.
Nedlasting (HTTP): https://github.com/tuxera/ntfs-3g/archive/2022.10.3/ntfs-3g-2022.10.3.tar.gz
Nedlasting MD5 sum: 65814658dfd6ad06796795c4f3d1d6bc
Nedlastingsstørrelse: 889 KB
Estimert diskplass som kreves: 21 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:
./autogen.sh &&
./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 -svf ../bin/ntfs-3g /usr/sbin/mount.ntfs && ln -svf 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.4 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.4/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.4 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.34 (enhetskartlegging, nødvendig hvis du bygger udisks)
dosfstools-4.2, texlive-20250308 (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]
Først må du gjøre pakken kompatibel med gcc-15:
sed -i 's/do_version ()/do_version (PedDevice** dev, PedDisk** diskp)/' parted/parted.c
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-20250308 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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/smartmontools/smartmontools-7.5.tar.gz
Nedlasting MD5 sum: 38c38b0b82db7fc4906cdd50d15a7931
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 24 MB
Estimert byggetid: 0.2 SBU
cURL-8.15.0 eller Lynx-2.9.2 eller Wget-1.25.0 (nedlastingsverktøy), og GnuPG-2.4.8 (krypterte harddisker)
Installer smartmontools ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--with-initscriptdir=no \
--with-libsystemd=no \
--docdir=/usr/share/doc/smartmontools-7.5 &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--with-initscriptdir=no: Denne
bryteren undertrykker standard initialiseringsskript. Se
nedenfor for BLFS skriptet.
--with-libsystemd=no:
Denne bryteren deaktiverer støtte for sd-notify
varslingssystemet levert av systemd.
Se de innebygde kommentarene i /etc/smartd.conf for detaljerte
instruksjoner om tilpasning av smartd nissen.
Hvis du vil ha smartd
nissen til å starte automatisk når systemet startes opp,
installer /etc/rc.d/init.d/smartd init skript
inkludert i blfs-bootscripts-20250225
pakken.
make install-smartd
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.4 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.17.4, GLib-2.84.4, og OpenSSH-10.0p1.
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.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-6.15.0.tar.xz
Nedlasting MD5 sum: 5a0ce9d3544fbabb8b0feb77dde05d62
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 71 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
ICU-77.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 \
LOCAL_CONFIGURE_OPTIONS="--localstatedir=/var"
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PKG_DOC_DIR=/usr/share/doc/xfsprogs-6.15.0 install &&
make PKG_DOC_DIR=/usr/share/doc/xfsprogs-6.15.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.
LOCAL_CONFIGURE_OPTIONS="--localstatedir=/var":
Dette setter tilstandsmappen til /var, som forhindrer at
/usr/var blir opprettet.
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 |
|
|
undersøker og redigerer egenskaper for XFS filsystem |
|
|
oppretter en protofil for bruk med mkfs.xfs |
|
|
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.4 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
mandoc (for manualsidene til efisecdb)
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 ENABLE_DOCS=0
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 ENABLE_DOCS=0 LIBDIR=/usr/lib
For å unngå en hard avhengighet av mandoc bruker vi ENABLE_DOCS=0, men det
forårsaker alle manualsidene blir hoppet over av
installasjonen selv om de fleste faktisk ikke trenger
mandoc.
Fortsatt som root bruker,
installer disse manualsidene:
install -vm644 docs/efivar.1 /usr/share/man/man1 && install -vm644 docs/*.3 /usr/share/man/man3
ENABLE_DOCS=0:
Deaktiver generering av manualsider, for å tillate å bygge
denne pakken uten mandoc installert.
LIBDIR=/usr/lib:
Dette alternativet overstyrer standard bibliotekmappe for
pakken (/usr/lib64, som ikke
brukes av LFS).
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.4 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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/grub/grub-2.12.tar.xz
Nedlasting MD5 sum: 60c564b1bdc39d8e43b3aab4bc0fb140
Nedlastingsstørrelse: 29 MB
Estimert diskplass som kreves: 174 MB (med valgfrie avhengigheter og nedlasting)
Estimert byggetid: 0.6 SBU
Valgfri Unicode skriftdata for GRUB menyen (bare nyttig hvis FreeType er installert)
Nedlasting (HTTP): https://unifoundry.com/pub/unifont/unifont-16.0.04/font-builds/unifont-16.0.04.pcf.gz
Nedlasting MD5 sum: a4b7ab627d341ddd4f9096ef947757bf
Nedlastingsstørrelse: 1.3 MB
efibootmgr-18 (kjøretid)
FreeType-2.13.3, Fuse-3.17.4, og LVM2-2.03.34
Hvis du bygger GRUB for et 32-biters LFS system for å starte
det på en 64-biters UEFI fastvare, gjenoppbygg GCC-15.2.0 med
--enable-targets=all
bryteren lagt til ../configure kommandoen.
Installer først skriftdata som root bruker hvis du har lastet det ned og
du har installert den valgfrie avhengigheten FreeType-2.13.3:
mkdir -pv /usr/share/fonts/unifont && gunzip -c ../unifont-16.0.04.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
Bygg GRUB med følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-efiemu \
--with-platform=efi \
--target=x86_64 \
--disable-werror &&
make
Denne pakken har ikke en testpakke som gir meningsfulle resultater.
Nå, hvis du har hoppet over LFS GRUB pakken, som root bruker, installer GRUB og hopp over
de resterende instruksjonene i denne delen:
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 -C grub-core install
Hvis du har installert de valgfrie skriftdataene og FreeType-2.13.3, installer grub-mkfont programmet og skriftdatafilene (uten skriftdatafilene kan GRUB fortsatt fungere normalt, men oppstartsmenyen vil vises med en grov skrift eller i en mindre område på skjermen).
install -vm755 grub-mkfont /usr/bin/ && install -vm644 ascii.h widthspec.h *.pf2 /usr/share/grub/
Hvis både Fuse-3.17.4 og LVM2-2.03.34 er installert, installer også grub-mount programmet:
install -vm755 grub-mount /usr/bin/
--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.4/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] 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å.
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
Legg nå til en oppføring for efivarfs i /etc/fstab så den monteres automatisk under
systemoppstart:
cat >> /etc/fstab << EOF
efivarfs /sys/firmware/efi/efivars efivarfs defaults 0 0
EOF
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.16.1-lfs-12.4" {
linux /boot/vmlinuz-6.16.1-lfs-12.4 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.16.1-lfs-12.4 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.4 plattform.
Nedlasting (HTTP): https://www.bennewitz.com/bluefish/stable/source/bluefish-2.2.17.tar.bz2
Nedlasting MD5 sum: 7b19a3691c7c5787e98174e58bd6d652
Nedlastingsstørrelse: 4.6 MB
Estimert diskplass som kreves: 55 MB
Estimert byggetid: 0.3 SBU
desktop-file-utils-0.28 (for oppdatering av skrivebordets database)
enchant-2.8.12 (for stavekontroll), Gucharmap-16.0.2, 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.17 && 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.28 (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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/ed/ed-1.22.2.tar.lz
Nedlasting MD5 sum: 6a181e2fbc6a920aa72c471e8b431bd9
Nedlastingsstørrelse: 72 KB
Estimert diskplass som kreves: 1.0 MB
Estimert byggetid: less than 0.1 SBU
libarchive-3.8.1 (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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/emacs/emacs-30.2.tar.xz
Nedlasting MD5 sum: 0adba4843ac864ba8c3c9b2a7deea176
Nedlastingsstørrelse: 53 MB
Estimert diskplass som kreves: 556 MB
Estimert byggetid: 0.6 SBU (Using parallelism=4)
harfBuzz-11.4.1, giflib-5.2.2, GnuTLS-3.8.10, jansson-2.14.1, og libtiff-4.7.0
et grafiske miljø, alsa-lib-1.2.14, Cairo-1.18.4, dbus-1.16.2, GLib-2.84.4 (med GObject Introspection), gsettings-desktop-schemas-48.0, GPM-1.20.7, GTK-3.24.50, ImageMagick-7.1.2-1, Little CMS-2.17, libjpeg-turbo-3.0.1, libpng-1.6.50, librsvg-2.61.0, libseccomp-2.6.0, libwebp-1.6.0, libxml2-2.14.5, MIT Kerberos V5-1.22.1, SQLite-3.50.4, Valgrind-3.25.1, 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/30.2 && rm -vf /usr/lib/systemd/user/emacs.service
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.50 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.2-1 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.7.0.
--with-gnutls=no: Bruk denne hvis
du ikke har installert GnuTLS-3.8.10.
--without-harfbuzz: Bruk denne
hvis du ikke har installert harfBuzz-11.4.1.
--with-json=no: Bruk denne hvis
du ikke har installert jansson-2.14.1.
--with-kerberos5: Bruk dette
alternativet hvis du har installert MIT Kerberos
V5-1.22.1 og må bruke den til autentisering i Emacs'
innebygde e-postklient.
Gedit pakken inneholder en lettvekts UTF-8 tekstredigerer for GNOME skrivebordet. Den trenger en gruppe pakker som skal installeres før Gedit. Denne siden vil installere alle pakkene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Download (HTTP): https://download.gnome.org/sources/gedit/48/gedit-48.1.tar.xz
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 112 MB (with tests)
Estimert byggetid: 0.3 SBU (using parallelism=4; with tests)
Gedit krever flere biblioteker:
Libgedit-amtk: https://gitlab.gnome.org/World/gedit/libgedit-amtk/-/archive/5.9.1/libgedit-amtk-5.9.1.tar.bz2
Libgedit-amtk MD5 sum: 8559a3e694f4e06b7f320d7f29562ef0
Libgedit-amtk størrelse: 59 KB
Libgedit-gtksourceview: https://gitlab.gnome.org/World/gedit/libgedit-gtksourceview/-/archive/299.5.0/libgedit-gtksourceview-299.5.0.tar.bz2
Libgedit-gtksourceview MD5 sum: bb16dc84f8fb5acf05eb3c19f00f7724
Libgedit-gtksourceview størrelse: 666 KB
Libgedit-gfls: https://gitlab.gnome.org/World/gedit/libgedit-gfls/-/archive/0.3.0/libgedit-gfls-0.3.0.tar.bz2
Libgedit-gfls MD5 sum: 763a7260ef1f139ea2a314a34080610e
Libgedit-gfls størrelse: 30 KB
Libgedit-tepl: https://gitlab.gnome.org/World/gedit/libgedit-tepl/-/archive/6.13.0/libgedit-tepl-6.13.0.tar.bz2
Libgedit-tepl MD5 sum: 9d96b099416064e20b37fec855c00faf
Libgedit-tepl størrelse: 30 KB
gsettings-desktop-schemas-48.0, GTK-3.24.50, libhandy-1.8.3, libpeas-1.36.0, og libxml2-2.14.5 libpeas-1.36.0
gspell-1.14.0, Gvfs-1.56.1 (kjøretid), ISO Codes-4.18.0, og PyGObject-3.52.3 (Python3 modul)
GTK-Doc-1.34.0 (for dokumentasjon), Vala-0.56.18, Valgrind-3.25.1, og zeitgeist
Den første oppgaven er å installere de nødvendige bibliotekene. Siden alle pakker har samme byggeinstruksjoner, kan de bygges en gang ved hjelp av en løkke.
Når du installerer flere pakker i et skript, må installasjonen 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.17p2 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
Alle pakkene kommer med en testpakke. Hvis du ønsker å utføre dem, enten kommentere ut rm -rf ... nedenfor, slik at, etter at alle pakkene er installert, kan du komme tilbake til tilsvarende mappe og utstede ninja test, eller gjør individuelle bygginger, kjøre testene for hver av pakkene. Alternativt kan du fjerne kommentaren til linjen #ninja test ..., og på slutten, sjekk testresultatene med:
grep -A5 Ok: *test.log
Libgedit-amtk's test-action-map testen er kjent for å feile.
Start først et underskall som avsluttes ved feil:
bash -e
Rekkefølgen på byggingen er viktig. Installer Gedit og avhengigheter ved å kjøre følgende kommandoer:
for package in \
libgedit-amtk-5.9.1.tar.bz2 \
libgedit-gtksourceview-299.5.0.tar.bz2 \
libgedit-gfls-0.3.0.tar.bz2 \
libgedit-tepl-6.13.0.tar.bz2
do
packagedir=${package%.tar*}
echo "Building $packagedir"
tar -xf ../$package
pushd $packagedir
cd build
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gtk_doc=false
ninja
#ninja test 2>&1 | tee ../../$packagedir-test.log
as_root ninja install
popd
rm -rf $packagedir
done
Til slutt går du ut av skallet som ble startet tidligere:
exit
Nå installer gedit ved å kjøre følgende kommandoer:
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
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 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.
|
er en lett tekstredigerer integrert med GNOME skrivebordet |
|
|
inneholder alle funksjonene som brukes av hoved Gedit applikasjonen |
|
|
gir en grunnleggende GTKUIManager erstatnings API basert på GAction |
|
|
gir funksjoner for å laste og lagre filer |
|
|
inneholder bekvemmelighetsfunksjoner for tekstredigering |
|
|
er et tekstredigeringsrammeverk for GTK tekstredigerere og IDE-er |
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.4 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/kate-25.08.0.tar.xz
Nedlasting MD5 sum: 851fa4db208ea4dab5d2aca22fc986ec
Nedlastingsstørrelse: 8.0 MB
Estimert diskplass som kreves: 511 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 tekstredigerer for Xfce skrivebordsmiljøet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/mousepad/0.6/mousepad-0.6.5.tar.xz
Nedlasting MD5 sum: 53a9ddeb8481ed8cd17d795c3881599b
Nedlastingsstørrelse: 452 KB
Estimert diskplass som kreves: 9.1 MB
Estimert byggetid: mindre enn 0.1 SBU
gtksourceview4-4.8.4 og libxfce4ui-4.20.2
Installer Mousepad 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
-D gspell-plugin=no: Bruk dette
alternativet for å deaktivere bygging av gspell-1.14.0
programtillegget hvis du ikke har installert gspell.
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.4 plattform.
Nedlasting (HTTP): https://www.nano-editor.org/dist/v8/nano-8.6.tar.xz
Nedlasting MD5 sum: 3b5a70dd65ddee4bd848b620c1638526
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 24 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.6 &&
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.6
--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.4 plattform.
Nedlasting (HTTP): https://github.com/vim/vim/archive/v9.1.1629/vim-9.1.1629.tar.gz
Nedlasting MD5 sum: 4f856c3233c1c4570bc17572e4f9e8e4
Nedlastingsstørrelse: 18 MB
Estimert diskplass som kreves: 147 MB (legg til 75 MB for tester)
Estimert byggetid: 0.4 SBU (med parallellitet=4; legg til 14 SBU for tester)
et grafiske miljø og GTK-3.24.50
cURL-8.15.0 (eller Wget-1.25.0, kreves av noen tester), GPM-1.20.7, Lua-5.4.8, Ruby-3.4.5, og rsync-3.4.1
Hvis du rekompilerer Vim
for å linke mot X og dine
X biblioteker ikke er på
root partisjonen, vil du ikke lenger ha vim 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.11.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.11.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.1629, som gjør at
det samsvarer med plasseringen av dokumentasjonen for andre
pakker:
ln -snfv ../vim/vim91/doc /usr/share/doc/vim-9.1.1629
Hvis du ønsker å oppdatere kjøretidsfiler, utfør følgende kommando (krever rsync-3.4.1) 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.1629" -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.1629 kjør følgende kommando:
:help version-9.1.1629
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.4 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.4 plattform.
Nedlasting (HTTP): https://astron.com/pub/tcsh/tcsh-6.24.16.tar.gz
Nedlasting MD5 sum: 448f53f12544abb627c9f078373b8ff5
Nedlastingsstørrelse: 936 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.4 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 og nyere. Fiks dem fordi ellers vil Zsh bli konfigurert feil og ikke klarer å bygge på annen måte:
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
oppdatere disse referansene hvis yodl pakken er tilgjengelig, men det er
utenfor omfanget av BLFS. Som et resultat må vi fikse
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-20250308 installert, kan du bygge dokumentasjonen i PDF format 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 når skallet starter, 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.4 plattform.
Nedlasting (HTTP): https://download.qemu.org/qemu-10.0.3.tar.xz
Nedlasting MD5 sum: 4a244f485c9d7ac3d40f958f13eae298
Nedlastingsstørrelse: 129 MB
Estimert diskplass som kreves: 2.4 GB (490 MB installert)
Estimert byggetid: 1.3 SBU (legg til 0.8 SBU for tester, begge med parallellisme=4)
Påkrevd oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/qemu-10.0.3-python_fixes-1.patch
alsa-lib-1.2.14, dtc-1.7.2, Libslirp-4.9.1, og SDL2-2.32.8
hvis dtc-1.7.2 ikke er installert, byggesystemet vil prøve å laste ned en kopi av dtc kildekoden fra Internett.
pipewire-1.4.7 eller PulseAudio-17.0 (kan brukes i stedet for alsa-lib), BlueZ-5.83, cURL-8.15.0, Cyrus SASL-2.1.28, Fuse-3.17.4, GnuTLS-3.8.10, GTK-3.24.50, keyutils-1.6.3, libaio-0.3.113, libusb-1.0.29, libgcrypt-1.11.2, libjpeg-turbo-3.0.1, libseccomp-2.6.0, libssh2-1.11.1, libpng-1.6.50, libtasn1-4.20.0, Linux-PAM-1.7.1, LZO-2.10, Nettle-3.10.2, Mesa-25.1.8, VTE-0.80.3, 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
elogind-255.17 , eller brukerne i
kvm gruppen å bruke KVM
enheten. Som root bruker,
legg til eventuelle ikke-root
brukere som kan bruke KVM enheten enten uten elogind-255.17 installert eller
eksternt (via en SSH tilkobling) til kvm gruppen:
usermod -a -G kvm <username>
Fiks en inkompatibilitet med pip-25.2 og nyere:
patch -Np1 -i ../qemu-10.0.3-python_fixes-1.patch
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-10.0.3 &&
unset QEMU_ARCH &&
make
qemu bruker ninja som en delprosess ved byggingen. For å kjøre testene, kjør: ninja test. Tre tester er kjent for å mislykkes på grunn av en innrykksendring i skallutdatameldingen med bash-5.3 eller nyere.
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 elogind-255.17
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.9.1.
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å ta
avgjørelser om 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
den følgende delen viser vi grunnleggende måter å utføre
disse trinnene på. Imidlertid er qemu mye kraftigere enn
dette, og det anbefales på det sterkeste å lese qemu
dokumentasjonen i /usr/share/doc/qemu-10.0.3/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 i teksten nedenfor.
Følgende instruksjoner forutsetter at den valgfrie
symbolske lenken, qemu, har
blitt opprettet. I tillegg, qemu skal kjøres i et
grafisk miljø. Det er også 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), og 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 4 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 bli nyttig hvis 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 et 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 et 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 «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 avsnittet
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.
Sette opp brobygging med bridge-utils-1.7.1. Bare det fysiske grensesnitt(er) bør settes opp ved oppstart. Det eller de virtuelle grensesnittene vil bli lagt til etter behov når qemu startes.
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 en bruker endre diskbilder ved hjelp av QEMU Monitor Protocol (QMP) uten å kjøre en VM |
|
|
er QEMU PC System emulatoren |
|
|
er en virtuell RAPL MSR hjelper for qemu |
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.4 plattform.
Nedlasting (HTTP): https://github.com/abseil/abseil-cpp/releases/download/20250814.0/abseil-cpp-20250814.0.tar.gz
Nedlasting MD5 sum: 016feacd6a6b3b9a47ab844e61f4f7bd
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 24 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4)
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.4 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/appstream/releases/AppStream-1.0.6.tar.xz
Nedlasting MD5 sum: d65b1c4689ea967d7c0e901d6c44a979
Nedlastingsstørrelse: 2.6 MB
Estimert diskplass som kreves: 29 MB
Estimert byggetid: 0.1 SBU (legg til 0.3 SBU for tester; begge bruker parallellisme=4)
cURL-8.15.0, elogind-255.17, itstool-2.0.7, libxml2-2.14.5, libxmlb-0.3.23, libxslt-1.1.43, 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.6}
--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-2025.4 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 qt=true: Bruk dette
alternativet hvis du har Qt-6.9.2 installert og du ønsker å bygge
støtte for Qt6 applikasjoner inn i denne pakken.
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>Et tilpasset Linux-system bygget utelukkende fra kildekoden</summary>
<description>
<p>
Linux From Scratch (LFS) er et prosjekt som gir deg
trinnvise instruksjoner for å bygge ditt eget tilpassede
Linux-system helt fra kildekoden.
</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.4" type="release" date="01.09.2025">
<description>
<p>Inneholder nå Binutils 2.45, GCC-15.2.0, Glibc-2.42,
Linux kernel 6.16, og tolv sikkerhetsoppdateringer.</p>
</description>
</release>
<release version="12.3" type="stable" date="05.03.2025">
<description>
<p>Inneholder nå Binutils 2.44, GCC-14.2.0, Glibc-2.41, og
Linux Kernel 6.13, og tre sikkerhetsoppdateringer.</p>
</description>
</release>
</releases>
</component>
EOF
|
spør etter informasjon fra AppStream metadata og fra AppStream komponentindeks |
|
|
inneholder funksjoner som håndterer AppStream metadataspørringer og å be om informasjon fra AppStream komponentindeksen |
|
|
inneholder funksjoner som lar Qt6 applikasjoner håndtere AppStream metadataforespørsler og lar dem be om informasjon fra AppStream komponentindeksen |
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.4 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.15.0, gdk-pixbuf-2.42.12, GTK-3.24.50, og libarchive-3.8.1
docbook-xml-4.5, docbook-xsl-nons-1.79.2, GTK-Doc-1.34.0, libxslt-1.1.43, 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
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.4 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/apr/apr-1.7.6.tar.bz2
Nedlasting MD5 sum: 2ebb58910e426e5a83af97bc94cae66d
Nedlastingsstørrelse: 879 KB
Estimert diskplass som kreves: 11 MB (ytterligere 4 MB for testene)
Estimert byggetid: 0.2 SBU (legg til 1,7 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.4 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-11.8.3 eller MySQL, OpenLDAP-2.6.10, PostgreSQL-17.6, SQLite-3.50.4, 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.10, 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.4 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.23 (for ordbøkene)
Først, fiks et problem når du bygger med gcc-15:
sed -e 's/; i.*size)/, e = end(); i != e; ++i, ++size_)/' \
-i modules/speller/default/vector_hash-t.hpp
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.12.
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.4 plattform.
Denne pakken vil pakke ut til boost-1.89.0/ mappen.
Nedlasting (HTTP): https://github.com/boostorg/boost/releases/download/boost-1.89.0/boost-1.89.0-b2-nodocs.tar.xz
Nedlasting MD5 sum: 023f1014b98d51676ddba21c2ee4878b
Nedlastingsstørrelse: 50 MB
Estimert diskplass som kreves: 687 MB (197 MB installert)
Estimert byggetid: 1.5 SBU (Bruker parallellisme=4; legg til 0,1 SBU for tester)
ICU-77.1, NumPy-2.3.2, og Open MPI
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/boost
Først fiks 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 brukes alle
tilgjengelige logiske kjerner. Bytt ut $(nproc) med antall logiske
kjerner du vil bruke hvis du ikke vil bruke alle. Installer
Boost ved å kjøre følgende
kommandoer:
./bootstrap.sh --prefix=/usr --with-python=python3 &&
./b2 stage -j$(nproc) threading=multi link=shared
For å kjøre Boost.Build's regresjonstester, utsted pushd tools/build/test; python3 test_all.py; popd.
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.
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.4 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.4.1 (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-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.4 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.4/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 CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-D BUILD_CONTRIBS_LIB=ON \
-W no-dev .. &&
make
Nå, som root bruker:
make install
-D
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
-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.
-W no-dev: Denne
parameteren deaktiverer flere advarsler kun beregnet på
prosjektutviklere.
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.4 plattform.
Nedlasting (HTTP): https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.114.tar.gz
Nedlasting MD5 sum: 188792077e880a8c0359288d7819dab3
Nedlastingsstørrelse: 724 KB
Estimert diskplass som kreves: 11 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.4 plattform.
Nedlasting (HTTP): https://github.com/google/double-conversion/archive/v3.3.1/double-conversion-3.3.1.tar.gz
Nedlasting MD5 sum: 7bbcf4bd2e1a96ef9d2a6fa60e887276
Nedlastingsstørrelse: 6.7 MB
Estimert diskplass som kreves: 62 MB (med tester)
Estimert byggetid: mindre enn 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 CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-D BUILD_SHARED_LIBS=ON \
-D BUILD_TESTING=ON \
.. &&
make
For å teste resultatene, utsted: make test.
Nå, som root bruker:
make install
-D
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
-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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/rrthomas/enchant/releases/download/v2.8.12/enchant-2.8.12.tar.gz
Nedlasting MD5 sum: 4007c6993e4657af11fe5d0d4b598506
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 8.3 MB (legg til 60 MB for tester)
Estimert byggetid: 0.1 SBU (legg til 0.8 SBU for tester)
Aspell-0.60.8.1, GLib-2.84.4, og Vala-0.56.18
dbus-glib-0.114, Doxygen-1.14.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.12 &&
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.4 plattform.
Nedlasting (HTTP): https://libopenraw.freedesktop.org/download/exempi-2.6.6.tar.xz
Nedlasting MD5 sum: f955e63dbd7b91c016f802c678e0e773
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 319 MB (legg til 245 MB for testene)
Estimert byggetid: 0.4 SBU (legg til 0.5 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.
Fast_float gir et sett med C++ deklarasjonsfiler for effektive streng-til-flytende operasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/fastfloat/fast_float/archive/v8.0.2/fast_float-8.0.2.tar.gz
Nedlasting MD5 sum: 39fdfe888ddf705f3a2100f4b8af8b2a
Nedlastingsstørrelse: 118.3 KB
Estimert diskplass som kreves: 1.2 MB
Estimert byggetid: 0.1 SBU
git-2.50.1 (for å laste ned noen tester)
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
Installer fast_float ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-G Ninja ..
Nå, som root bruker:
ninja install
For å teste resultatene, utsted: cmake .. -D FASTFLOAT_TEST=ON -D CMAKE_POLICY_VERSION_MINIMUM=3.5 && ninja && ninja test. Merk at det vil laste ned noen testfiler fra internett, og de filene ville blitt installert hvis testpakken hadde blitt kjørt før ninja install. Så ikke kjør testpakken før installasjonen.
-D
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
tillater testing av denne pakken med cmake-4.0 eller nyere.
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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/fmtlib/fmt/archive/11.2.0/fmt-11.2.0.tar.gz
Nedlasting MD5 sum: 2f3701cada629ca455c3388d1089f5bd
Nedlastingsstørrelse: 692 KB
Estimert diskplass som kreves: 44 MB (med tester)
Estimert byggetid: 0.4 SBU (bruker parallellisme=4; med tester)
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/glib/2.84/glib-2.84.4.tar.xz
Nedlasting MD5 sum: 5655d0ff809b98dd77c02490609fadde
Nedlastingsstørrelse: 5.4 MB
Estimert diskplass som kreves: 203 MB (legg til 13 MB for tester)
Estimert byggetid: 0.7 SBU (legg til 0.5 SBU for tester; begge bruker parallellisme=4)
GObject Introspection (Recommended)
Nedlasting: https://download.gnome.org/sources/gobject-introspection/1.84/gobject-introspection-1.84.0.tar.xz
Nedlasting MD5 sum: 2a62fb1c584616a8ebcd9dd4d045f27e
Nedlastingsstørrelse: 1.1 MB
Oppdatering for loggnivåvalg (valgfritt)
Valgfri oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/glib-skip_warnings-1.patch
docutils-0.21.2, libxslt-1.1.43, og pcre2-10.45(en kopi vil bli lastet ned fra Internett hvis den ikke er installert)
Cairo-1.18.4 (for noen GObject Introspection tester), dbus-1.16.2 (for noen tester), Fuse-3.17.4 og bindfs (begge trengs for en testt), GDB-16.3 (for bindinger), Gjs-1.84.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-2025.4 (for å bygge API dokumentasjonen), glib-networking-2.80.1 (for noen tester, men dette er en sirkulær avhengighet), Mako-1.3.10 og Markdown-3.8.2 (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.28,
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.50, 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 glib_debug=disabled \
-D man-pages=enabled \
-D sysprof=disabled &&
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.84.0.tar.xz &&
meson setup gobject-introspection-1.84.0 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-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed "/docs_dir =/s|$| / 'glib-' + meson.project_version()|" \
-i ../docs/reference/meson.build &&
meson configure -D documentation=true &&
ninja
Ikke kjør testpakken som root da vil noen tester mislykkes
uventet og la noen ikke-FHS kompatible mapper være i
/usr hierarkiet.
For å teste resultatene utsted: LC_ALL=C ninja test som en
ikke-root bruker.
Som root bruker, installer
denne pakken på nytt for introspection data (og eventuelt
dokumentasjonen):
ninja install
--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.
-D
glib_debug=disabled: Denne bryteren gjør at
bygget inkluderer ikke noen dyre sjekker for feilsøking i
byggeprogrammene og bibliotekene.
-D sysprof=disabled:
Denne bryteren deaktiverer sporingsstøtte for sysprof. Fjern
dette alternativet hvis du vil ha sporingsstøtte. Merk at
hvis sysprof ikke er installert, å fjerne dette alternativet
vil føre til at byggesystemet laster ned en kopi av sysprof
fra Internett.
|
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/glibmm/2.66/glibmm-2.66.8.tar.xz
Nedlasting MD5 sum: 4cdcd69c3af84e59dfd745a1b1cb9851
Nedlastingsstørrelse: 8.2 MB
Estimert diskplass som kreves: 90 MB (med tester)
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4; med tester)
GLib-2.84.4 og libsigc++-2.12.1
Doxygen-1.14.0, glib-networking-2.80.1 (for tester), GnuTLS-3.8.10 (for tester), libxslt-1.1.43, 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/glibmm/2.82/glibmm-2.84.0.tar.xz
Nedlasting MD5 sum: 96ef281ceb794cf98f406612b61a9146
Nedlastingsstørrelse: 9.2 MB
Estimert diskplass som kreves: 95 MB (med tester)
Estimert byggetid: 0.5 SBU (Bruker parallellisme=4; med tester)
GLib-2.84.4 og libsigc++-3.6.0
Doxygen-1.14.0, glib-networking-2.80.1 (for tester), GnuTLS-3.8.10 (for tester), libxslt-1.1.43, 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.4 plattform.
Nedlasting (HTTP): https://github.com/jstedfast/gmime/releases/download/3.2.15/gmime-3.2.15.tar.xz
Nedlasting MD5 sum: f7d6b4ad3253e73c72237fde5bced617
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 23 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
GLib-2.84.4 (GObject Introspection anbefalt) og libgpg-error-1.55
DocBook-utils-0.6.14, gpgme-2.0.0, GTK-Doc-1.34.0, libnsl-2.0.1, Vala-0.56.18, og Gtk# (krever Mono)
Installer GMime ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check. To tester, test-pgp og test-pgpmime, er kjent for å mislykkes.
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.
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.4 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/gmmlib/archive/v22.8.1/gmmlib-22.8.1.tar.gz
Nedlasting MD5 sum: 23869643d5e37c73854bd76964a124d8
Nedlastingsstørrelse: 852 KB
Estimert diskplass som kreves: 58 MB
Estimert byggetid: 0.6 SBU
På GitHub har vi splittet oppstrømsdepotet til vårt eget
lfs-book navneområde og
gjenskapte en tagg for utgivelsen. Dette gjøres for å sikre
at den nedlastede tarball filnavnet er korrekt og
konsistent (dvs. det skal ikke endres når du bruker
nettleseren i stedet for et verktøy som wget). Taggen vår og
oppstrømsutgivelseskoden er på samme commit, så vi har ikke
introdusert noen endring i tarball innholdet bortsett fra
navnet på toppnivåmappen (som Git ikke sporer).
Installer 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
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.4 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-3.0.2 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gspell/1.14/gspell-1.14.0.tar.xz
Nedlasting MD5 sum: 282c1ed7213a657e47de663fd2a081db
Nedlastingsstørrelse: 116 KB
Estimert diskplass som kreves: 6.7 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
enchant-2.8.12, ICU-77.1, og GTK-3.24.50
GLib-2.84.4 (med GObject Introspection), GTK-Doc-1.34.0, Vala-0.56.18, Valgrind-3.25.1, og Hunspell (for tester)
Installer gspell ved å kjøre følgende kommandoer:
mkdir gspell-build && cd gspell-build && meson setup --prefix=/usr --buildtype=release -D gtk_doc=false .. && ninja
For å teste resultatene, utsted: ninja test. 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:
ninja install
-D gtk_doc=false:
Hindrer å bygge dokumentasjon. Fjern denne hvis du har
GTK-Doc installert og ønsker
å bygge dokumentasjonen.
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.4 plattform.
Nedlasting (HTTP): https://github.com/google/highway/archive/1.3.0/highway-1.3.0.tar.gz
Nedlasting MD5 sum: 6c913a4c4ba849a3306d45318f66078d
Nedlastingsstørrelse: 3.5 MB
Estimert diskplass som kreves: 28 MB
Estimert byggetid: 0.6 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 77.1) vil kreve ombygging av mange
andre pakker. Hvis noen pakker som bruker bibliotekene
bygget av icu4c-77 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 mellom 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 for å se bare programmer og biblioteker som direkte bruker et bibliotek:
readelf -d <application or library> | grep NEEDED
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/unicode-org/icu/releases/download/release-77-1/icu4c-77_1-src.tgz
Nedlasting MD5 sum: bc0132b4c43db8455d2446c3bae58898
Nedlastingsstørrelse: 26 MB
Estimert diskplass som kreves: 397 MB (legg til 47 MB for tester)
Estimert byggetid: 0.5 SBU (Bruker parallellisme=4; legg til 1.8 SBU for tester)
Doxygen-1.14.0 (for dokumentasjon)
Denne pakken utvides til mappen icu.
En del av en test kan ikke kjøres på i686. Unngå å kjøre den når du bygger for
den plattformen:
case $(uname -m) in
i?86) sed -e "s/U_PLATFORM_IS_LINUX_BASED/__X86_64__ \&\& &/" \
-i source/test/intltest/ustrtest.cpp ;;
esac
Installer ICU ved å kjøre følgende kommandoer:
cd source && ./configure --prefix=/usr && make
For å teste resultatene, utsted: make check. En test
(intltest) mislykkes fortsatt av ukjente årsaker på
i686 når den sjekker noen
thailandske konverteringer.
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.4 plattform.
Nedlasting (HTTP): https://github.com/benhoyt/inih/archive/r61/inih-r61.tar.gz
Nedlasting MD5 sum: 4f54579162283914677d95936c3ed135
Nedlastingsstørrelse: 21 KB
Estimert diskplass som kreves: 1.6 MB
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
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
-D
with_test_suite=true: Aktiver bygging av
testpakken.
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.4 plattform.
Nedlasting (HTTP): https://github.com/akheron/jansson/releases/download/v2.14.1/jansson-2.14.1.tar.bz2
Nedlasting MD5 sum: de6549ee68afc08275f3a74b9499ade7
Nedlastingsstørrelse: 472 KB
Estimert diskplass som kreves: 7.8 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
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.4 plattform.
Nedlasting (HTTP): https://s3.amazonaws.com/json-c_releases/releases/json-c-0.18.tar.gz
Nedlasting MD5 sum: e6593766de7d8aa6e3a7e67ebf1e522f
Nedlastingsstørrelse: 396 KB
Estimert diskplass som kreves: 7.9 MB
Estimert byggetid: 0.2 SBU (med tester)
Doxygen-1.14.0 og Graphviz-13.1.2 (for dot verktøy)
Først, fiks å bygge denne pakken med CMake-4.0:
sed -i 's/VERSION 2.8/VERSION 4.0/' apps/CMakeLists.txt && sed -i 's/VERSION 3.9/VERSION 4.0/' tests/CMakeLists.txt
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.14.0 og Graphviz-13.1.2, 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.18 && install -v -m644 doc/html/* /usr/share/doc/json-c-0.18
-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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/json-glib/1.10/json-glib-1.10.6.tar.xz
Nedlasting MD5 sum: d4bf13ddd1e6d607d039d39286f9e3d0
Nedlastingsstørrelse: 248 KB
Estimert diskplass som kreves: 14 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
GLib-2.84.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
Hvis docutils-0.21.2 er installert, bygg manualsidene:
meson configure -D man=true && ninja
Hvis Gi-DocGen-2025.4 er installert, bygg API dokumentasjonen:
sed "/json_docdir =/s|$| / 'json-glib-1.10.6'|" -i ../doc/meson.build && meson configure -D documentation=enabled && ninja
For å teste resultatene, utsted: ninja test. En test, node, 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.
-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.4 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]
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.4 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
Deretter, fiks et problem i testpakken:
case "$(uname -m)" in i?86) sed -e "s/off_t/off64_t/" -i harness/cases/23.t ;; esac
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.4 plattform.
Nedlasting (HTTP): https://github.com/libarchive/libarchive/releases/download/v3.8.1/libarchive-3.8.1.tar.xz
Nedlasting MD5 sum: 80fd1a7acc4da7c7d4a5f9f96df6e3ff
Nedlastingsstørrelse: 5.7 MB
Estimert diskplass som kreves: 43 MB (legg til 32 MB for tester)
Estimert byggetid: 0.3 SBU (legg til 0.8 for tester)
Installer libarchive ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check.
Nå, som root bruker:
make install
Fortsatt som root bruker,
opprett en symbolkobling slik at vi kan bruke bsdunzip som unzip, i stedet for å stole
på den uvedlikeholdte Unzip pakken:
ln -sfv bsdunzip /usr/bin/unzip
Som diskutert i
Feil Filnavn Koding, hvis Zip arkivet som skal pakkes
ut inneholder en fil med et navn som inneholder
ikke-latinske tegn, må du manuelt spesifisere kodingen av
disse tegnene, ellers vil de bli omgjort til uleselige
sekvenser i det utpakkede filnavnet. For eksempel, hvis et
Zip arkiv opprettet med WinZip, archive.zip, inneholder en fil navngitt
med forenklede kinesiske tegn, dens koding skal være CP936
og -I cp936
alternativet skal brukes. dvs. kommandoen for å trekke ut
arkivet bør være unzip -I
cp936 archive.zip.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--without-xml2: Denne bryteren
setter expat for xar arkiv formatstøtte i stedet for
foretrukket libxml2 hvis begge pakkene er installert.
--with-nettle: Denne bryteren
setter Nettle for krypteringsstøtte i stedet for OpenSSL.
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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/libassuan/libassuan-3.0.2.tar.bz2
Nedlasting MD5 sum: c6f1bf4bd2aaa79cd1635dcc070ba51a
Nedlastingsstørrelse: 580 KB
Estimert diskplass som kreves: 6.5 MB (med tester, legg til 3,4 MB for pdf dokumentasjon)
Estimert byggetid: 0.1 SB (med tester og html dokumentasjon)
texlive-20250308 (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-20250308 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.2/html &&
install -v -m644 doc/assuan.html/* \
/usr/share/doc/libassuan-3.0.2/html &&
install -v -m644 doc/assuan_nochunks.html \
/usr/share/doc/libassuan-3.0.2 &&
install -v -m644 doc/assuan.{txt,texi} \
/usr/share/doc/libassuan-3.0.2
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.2
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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/bdwgc/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.4 plattform.
Nedlasting (HTTP): https://github.com/storaged-project/libblockdev/releases/download/3.3.1/libblockdev-3.3.1.tar.gz
Nedlasting MD5 sum: 9a1d1d44e78af1693abf5cd23fa4ce58
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 SBU
GLib-2.84.4 (GObject Introspection påkrevd for GNOME)
cryptsetup-2.8.1, keyutils-1.6.3, libatasmart-0.19, libbytesize-2.11, libnvme-1.15, og LVM2-2.03.34
btrfs-progs-6.16, GTK-Doc-1.34.0, JSON-GLib-1.10.6, mdadm-4.4, parted-3.6, smartmontools-7.5, volume_key, ndctl, og targetcli (for tester)
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 \
--without-smartmontools &&
make
Testpakken krever targetcli, som ikke er en del av BLFS.
Nå, som root bruker:
make install
--without-escrow:
Denne bryteren tillater bygging av 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-smartmontools: Denne
bryteren tillater bygging av libblockdev uten JSON-GLib-1.10.6
eller smartmontools-7.5 installert. Fjern
den hvis du har begge pakkene installert.
--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.2, så ikke bruk det med
mindre du virkelig vet hva du gjør.
--without-crypto: Denne bryteren
tillater bygging av libblockdev uten cryptsetup-2.8.1
eller keyutils-1.6.3 installert. Denne
bryteren vil bryte UDisks-2.10.2, 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.34 installert.
--without-dm og --without-mpath alternativene er ikke i
instruksjonene gitt av boken fordi LVM2-2.03.34 er påkrevd for
cryptsetup-2.8.1 og cryptsetup-2.8.1 er uansett en
anbefalt avhengighet av libblockdev.
--without-nvme: Denne bryteren
tillater bygging av libblockdev uten libnvme-1.15 installert.
Denne bryteren vil bryte UDisks-2.10.2, 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.4 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.45 og Pygments-2.19.2
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.4 plattform.
Nedlasting (HTTP): https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/libclc-20.1.8.src.tar.xz
Nedlasting MD5 sum: b49b6b81298c9eb1609073b9164ff4cb
Nedlastingsstørrelse: 134 KB
Estimert diskplass som kreves: 431 MB
Estimert byggetid: 0.6 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.
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.4 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.84.4 (med GObject Introspection) og Vala-0.56.18
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.4 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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/emersion/libdisplay-info/-/releases/0.3.0/downloads/libdisplay-info-0.3.0.tar.xz
Nedlasting MD5 sum: f2a15697f6e8c66722b7760ceccbed60
Nedlastingsstørrelse: 112 KB
Estimert diskplass som kreves: 3.3 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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.11.2.tar.bz2
Nedlasting (FTP): ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.11.2.tar.bz2
Nedlasting MD5 sum: 84ce2ad07794b987fe6341b63cf5f537
Nedlastingsstørrelse: 4.0 MB
Estimert diskplass som kreves: 147 MB (med tester)
Estimert byggetid: 0.2 SBU (med dokumentasjon; legg til 0.9 SBU for tester)
texlive-20250308 (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.2 &&
install -v -m644 README doc/{README.apichanges,fips*,libgcrypt*} \
/usr/share/doc/libgcrypt-1.11.2 &&
install -v -dm755 /usr/share/doc/libgcrypt-1.11.2/html &&
install -v -m644 doc/gcrypt.html/* \
/usr/share/doc/libgcrypt-1.11.2/html &&
install -v -m644 doc/gcrypt_nochunks.html \
/usr/share/doc/libgcrypt-1.11.2 &&
install -v -m644 doc/gcrypt.{txt,texi} \
/usr/share/doc/libgcrypt-1.11.2
--with-capabilities: Dette
alternativet aktiverer libcap2 støtte. Merk at dette
ødelegger cryptsetup-2.8.1
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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.55.tar.bz2
Nedlasting MD5 sum: 0430e56fd67d0751b83fc18b0f56a084
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 12 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.55/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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgsf/1.14/libgsf-1.14.53.tar.xz
Nedlasting MD5 sum: baf36a3e89293652f67cded4b1608cc5
Nedlastingsstørrelse: 700 KB
Estimert diskplass som kreves: 14 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
gdk-pixbuf-2.42.12 (For å bygge gsf-office-thumbnailer)
7zip-25.01 (for tester), GTK-Doc-1.34.0, Valgrind-3.25.1 (for tester), og unzip (for tester)
Installer libgsf ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && ./configure --prefix=/usr --disable-static && make
For å teste resultatene, utsted: make check. To tester relatert til Valgrind-3.25.1 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.4 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.84.4 (GObject Introspection påkrevd for GNOME)
GTK-Doc-1.34.0 og umockdev-0.19.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.4 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.10.6 og libusb-1.0.29
GLib-2.84.4 (med GObject Introspection),
hwdata-0.398 (for usb.ids datafiler, som også kreves for
testene), og Vala-0.56.18
Gi-DocGen-2025.4 og umockdev-0.19.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-2025.4 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-2025.4 installert.
Hvis du har Gi-DocGen-2025.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/libical/libical/releases/download/v3.0.20/libical-3.0.20.tar.gz
Nedlasting MD5 sum: 539a8a293d344e7aa8ccf3740494a46d
Nedlastingsstørrelse: 952 KB
Estimert diskplass som kreves: 29 MB (med tester)
Estimert byggetid: 0.2 SBU (bruker parallellisme=4; med tester)
GLib-2.84.4 (med GObject Introspection), libxml2-2.14.5, og Vala-0.56.18 (begge kreves for GNOME)
Doxygen-1.14.0 (for API dokumentasjon), Graphviz-13.1.2 (for API dokumentasjon), GTK-Doc-1.34.0 (for API dokumentasjon), ICU-77.1, PyGObject-3.52.3 (for noen tester), og Berkeley DB (deprecated)
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 GOBJECT_INTROSPECTION=true \
-D ICAL_GLIB_VAPI=true \
.. &&
make -j1
Hvis du har Doxygen-1.14.0, Graphviz-13.1.2, 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.
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.20/html && cp -vr apidocs/html/* /usr/share/doc/libical-3.0.20/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
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.18.
-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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libidn/libidn-1.43.tar.gz
Nedlasting MD5 sum: 4a32cafa4e9de86943fbae9a75c41f01
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 20 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Emacs-30.2, GTK-Doc-1.34.0, OpenJDK-24.0.2, Valgrind-3.25.1, 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.43 &&
cp -r -v doc/* /usr/share/doc/libidn-1.43
--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-24.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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libidn/libidn2-2.3.8.tar.gz
Nedlasting MD5 sum: a8e113e040d57a523684e141970eea7a
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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/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.4 plattform.
Etter å ha oppdatert denne pakken fra liblinear-247 eller tidligere, må du installer Nmap-7.98 på nytt for å koble til det nye biblioteket.
Nedlasting (HTTP): https://github.com/cjlin1/liblinear/archive/v249/liblinear-249.tar.gz
Nedlasting MD5 sum: c7f82ba5b190265422a431a751b33bcd
Nedlastingsstørrelse: 72 KB
Estimert diskplass som kreves: 788 KB
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.6 /usr/lib && ln -sfv liblinear.so.6 /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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/mobile-broadband/libmbim/-/archive/1.32.0/libmbim-1.32.0.tar.gz
Nedlasting MD5 sum: 6cb72544c66a5f9f9528315095ccb1ac
Nedlastingsstørrelse: 289 KB
Estimert diskplass som kreves: 43 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
GLib-2.84.4 (med GObject Introspection)
Installer libmbim ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D bash_completion=false \
-D man=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
bash_completion=false: Bruk dette alternativet
hvis den eksterne bash-completion
pakken ikke er installert.
-D man=false: Bruk
dette alternativet hvis den eksterne help2man pakken
ikke er installert.
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.4 plattform.
Nedlasting (HTTP): https://github.com/linux-nvme/libnvme/archive/v1.15/libnvme-1.15.tar.gz
Nedlasting MD5 sum: 80d9fb8270b65e7fdbb5dbb0bd9a1a68
Nedlastingsstørrelse: 792 KB
Estimert diskplass som kreves: 24 MB
Estimert byggetid: 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.4 plattform.
Nedlasting (HTTP): https://github.com/rrthomas/libpaper/releases/download/v2.2.6/libpaper-2.2.6.tar.gz
Nedlasting MD5 sum: 794552e5e5b9796c15bc222fefd9e1ff
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 12 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.6 &&
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.4 plattform.
Nedlasting (HTTP): https://github.com/flatpak/libportal/releases/download/0.9.1/libportal-0.9.1.tar.xz
Nedlasting MD5 sum: 0c63ee25d2e2986ce4df544fe8149046
Nedlastingsstørrelse: 108 KB
Estimert diskplass som kreves: 4.0 MB (med tester; legg til 9 MB for dokumenter)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.6 SBU for tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/libportal-0.9.1-qt6.9_fixes-1.patch
GLib-2.84.4 (med GObject Introspection)
For å gjøre denne pakken virkelig nyttig, installer xdg-desktop-portal-1.20.3, xdg-desktop-portal-gtk-1.15.3, xdg-desktop-portal-gnome-48.0 (hvis du kjører et GNOME skrivebordsmiljø), og xdg-desktop-portal-lxqt-1.2.0 (hvis du kjører et LXQt skrivebordsmiljø). De er ikke nødvendig hvis du bare bruker denne pakken for å tilfredsstille en byggeavhengighet.
Gi-DocGen-2025.4 (for dokumentasjon), dbusmock-0.36.0 og pytest-8.4.1 (for testing), Qt-6.9.2, og Vala-0.56.18
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
Bruk først en oppdatering for å fikse byggingen mot Qt 6.9 og senere:
patch -Np1 -i ../libportal-0.9.1-qt6.9_fixes-1.patch
Installer libportal ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D vapi=false \
-D docs=false \
.. &&
ninja
Hvis du har Gi-DocGen-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed -i "/output/s/-1/-0.9.1/" ../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 vapi=false: Denne
parameteren deaktiverer bruk av Vala-0.56.18. Fjern denne
parameteren hvis du har den installert.
-D docs=false: Tillat
å bygge denne pakken uten Gi-DocGen-2025.4 installert.
Hvis du har Gi-DocGen-2025.4 installert og du
ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
libproxy pakken er et bibliotek som tilbyr automatisk administrasjon av proxy konfigurasjon. Dette er nyttig for å standardisere en måte å håndtere proxy innstillinger på tvers av alle scenarier.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/libproxy/libproxy/archive/0.5.10/libproxy-0.5.10.tar.gz
Nedlasting MD5 sum: efb82820b5b914ebff92c0c7b06cb1e0
Nedlastingsstørrelse: 60 KB
Estimert diskplass som kreves: 3.7 MB
Estimert byggetid: mindre enn 0.1 SBU (med tester)
cURL-8.15.0, duktape-2.7.0, GLib-2.84.4, Gi-DocGen-2025.4, gsettings-desktop-schemas-48.0, og Vala-0.56.18
Installer libproxy ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
-D release=true &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
ninja install
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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/Qalculate/libqalculate/releases/download/v5.7.0/libqalculate-5.7.0.tar.gz
Nedlasting MD5 sum: 9ca8257d1eb98286e499c4ea607e1b29
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 153 MB (med tester)
Estimert byggetid: 0.7 SBU (Med tester; begge bruker parallellisme=8)
cURL-8.15.0, ICU-77.1, og libxml2-2.14.5
Installer libqalculate ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libqalculate-5.7.0 &&
make
For å teste resultatene, utsted: make check. Ett sett med tester, strings.batch, mislykkes, men loggen sier ikke hvorfor. Hvis du fjerner src/strings.batch, kan alle andre tester bestås.
Nå, som root bruker:
make install
Libtool arkivfilen fra denne pakken refererer til biblioteker
fra ICU-77.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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/archive/1.36.0/libqmi-1.36.0.tar.gz
Nedlasting MD5 sum: 05d71b840d1b9dd66ad06e0a1187cf1e
Nedlastingsstørrelse: 4.2 MB
Estimert diskplass som kreves: 72 MB (med tester)
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4; med tester)
GLib-2.84.4 (GObject Introspection anbefalt) og libgudev-238
Installer libqmi ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D bash_completion=false \
-D qrtr=false \
-D man=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
bash_completion=false: Bruk dette alternativet
hvis den eksterne bash-completion
pakken ikke er installert.
-D man=false: Bruk
dette alternativet hvis den eksterne help2man pakken
ikke er installert.
-D qrtr=false: Denne
bryteren deaktiverer støtte for QRTR protokollen som trenger
den eksterne
libqrtr-glib pakken.
|
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.4 plattform.
Nedlasting (HTTP): https://github.com/seccomp/libseccomp/releases/download/v2.6.0/libseccomp-2.6.0.tar.gz
Nedlasting MD5 sum: 2d42bcde31fd6e994fcf251a1f71d487
Nedlastingsstørrelse: 672 KB
Estimert diskplass som kreves: 7.6 MB (ytterligere 6.3 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (ytterligere 1.7 SBU for tester)
Which-2.23 (nødvendig for tester), Valgrind-3.25.1, cython-3.1.3 (for python bindings), 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.
--enable-python: denne bryteren
er nødvendig for å bygge python bindinger hvis cython-3.1.3
er installert. Alternativet --disable-static må ikke gis hvis dette
alternativet brukes. Og du må kjøre sed 's/env python/&3/' -i
tests/regression hvis dette alternativet
brukes og du vil kjøre testpakken.
libsigc++ pakken implementerer en typesafe tilbakekallingssystem for standard C++.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.89.0 og libxslt-1.1.43
DocBook-utils-0.6.14, docbook-xml-5.0, Doxygen-1.14.0, fop-2.11, 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.14.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.4 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.89.0 og libxslt-1.1.43
DocBook-utils-0.6.14, docbook-xml-5.0, Doxygen-1.14.0, fop-2.11, 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.14.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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.15.tar.gz
Nedlasting MD5 sum: c2885785b3e5d1c94b1adb22b3002ccc
Nedlastingsstørrelse: 484 KB
Estimert diskplass som kreves: 3.7 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.4 plattform.
Nedlasting (HTTP): https://www.libssh2.org/download/libssh2-1.11.1.tar.gz
Nedlasting MD5 sum: 38857d10b5c5deb198d6989dacace2e6
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 15 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
CMake-4.1.0 (kan brukes i stedet for configure skript), libgcrypt-1.11.2 (kan brukes i stedet for OpenSSL), OpenSSH-10.0p1 (for noen tester), og Docker (for noen tester)
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.4 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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libtasn1/libtasn1-4.20.0.tar.gz
Nedlasting MD5 sum: 930f71d788cf37505a0327c1b84741be
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 16 MB (med tester)
Estimert byggetid: 0.3 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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/libunistring/libunistring-1.3.tar.xz
Nedlasting MD5 sum: 57dfd9e4eba93913a564aa14eab8052e
Nedlastingsstørrelse: 2.6 MB
Estimert diskplass som kreves: 58 MB (legg til 46 MB for tester)
Estimert byggetid: 0.6 SBU (legg til 0,3 SBU for tester; begge bruker parallellisme=4)
texlive-20250308 (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.3 &&
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.4 plattform.
Nedlasting (HTTP): https://github.com/libunwind/libunwind/releases/download/v1.8.2/libunwind-1.8.2.tar.gz
Nedlasting MD5 sum: 0124a38fb752aa5492635f35d089f6b7
Nedlastingsstørrelse: 960 KB
Estimert diskplass som kreves: 24 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
texlive-20250308 (for latex2man)
Først, fiks et problem når det bygges med gcc-15:
sed -i '/func.s/s/s//' tests/Gtest-nomalloc.c
Installer libunwind 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.
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.4 plattform.
Nedlasting (HTTP): https://lttng.org/files/urcu/userspace-rcu-0.15.3.tar.bz2
Nedlasting MD5 sum: ddbf7f18b5741838c264d146573a46e5
Nedlastingsstørrelse: 672 KB
Estimert diskplass som kreves: 23 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.15.3 &&
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.4 plattform.
Nedlasting (HTTP): https://github.com/libusb/libusb/releases/download/v1.0.29/libusb-1.0.29.tar.bz2
Nedlasting MD5 sum: 12d4a782ce606a0582fb5038c16d0f75
Nedlastingsstørrelse: 632 KB
Estimert diskplass som kreves: 6.2 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 «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.29/apidocs &&
install -v -m644 doc/api-1.0/* \
/usr/share/doc/libusb-1.0.29/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.4 plattform.
Nedlasting (HTTP): https://dist.libuv.org/dist/v1.51.0/libuv-v1.51.0.tar.gz
Nedlasting MD5 sum: 5e0109e19c3fed3a8cbecb958de39afa
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 31 MB (med tester og manualsider)
Estimert byggetid: 0.5 SBU (med tester og manualsider)
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.2.3 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.4 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/libxkbcommon/archive/v1.11.0/libxkbcommon-1.11.0.tar.gz
Nedlasting MD5 sum: 28be5e49d8aa19e20fd7acd4b24e19be
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 50 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
På GitHub har vi splittet oppstrømsdepotet til vårt eget
lfs-book navneområde og
gjenskapte en tagg for utgivelsen. Dette gjøres for å sikre
at den nedlastede tarball filnavnet er korrekt og
konsistent (dvs. det skal ikke endres når du bruker
nettleseren i stedet for et verktøy som wget). Taggen vår og
oppstrømsutgivelseskoden er på samme commit, så vi har ikke
introdusert noen endring i tarball innholdet bortsett fra
navnet på toppnivåmappen (som Git ikke sporer).
xkeyboard-config-2.45 (kjøretid)
libxcb-1.17.0, Wayland-1.24.0, og wayland-protocols-1.45
Doxygen-1.14.0 (for å generere dokumentasjonen) og Xvfb (fra Xorg-Server-21.1.18 eller Xwayland-24.1.8)
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.45 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.14.0 er påkrevd.
mv -v /usr/share/doc/libxkbcommon{,-1.11.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libxml2/2.14/libxml2-2.14.5.tar.xz
Nedlasting MD5 sum: 59aac4e5d1d350ba2c4bddf1f7bc5098
Nedlastingsstørrelse: 2.2 MB
Estimert diskplass som kreves: 100 MB (med tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; med tester)
Valgfri testpakke: https://www.w3.org/XML/Test/xmlts20130923.tar.gz - Dette aktiverer make check å gjøre fullstendig testing.
Valgrind-3.25.1 (kan brukes i testene)
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.14.5 &&
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.25.1 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:
/etc/init.d/httpd stop
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.4 plattform.
Nedlasting (HTTP): https://github.com/hughsie/libxmlb/releases/download/0.3.23/libxmlb-0.3.23.tar.xz
Nedlasting MD5 sum: 603bb57fcb1052ee900e7c82fbe4da4b
Nedlastingsstørrelse: 104 KB
Estimert diskplass som kreves: 5.8 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
GLib-2.84.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.84.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libxslt/1.1/libxslt-1.1.43.tar.xz
Nedlasting MD5 sum: 5dc0179c81be7a3082b43030ecfdebd4
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 33 MB (med tester)
Estimert byggetid: 0.2 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.
libgcrypt-1.11.2 (bare nødvendig for den utdaterte EXSLT kryptoutvidelse, se kommandoforklaringer)
Installer libxslt ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libxslt-1.1.43 &&
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.
--with-crypto: Aktiver
ikke-standard og avviklet EXSLT kryptoutvidelsesfunksjon. Det
trenger libgcrypt-1.11.2 og oppstrøms vil
fjerne det i fremtiden.
--with-debug: Muliggjør grundig
diagnostikk med -v, --verbose fra
xsltproc. Bruk
den hvis du planlegger å feilsøke XSLT stilark.
|
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.4 plattform.
Nedlasting (HTTP): https://github.com/linuxwacom/libwacom/releases/download/libwacom-2.16.1/libwacom-2.16.1.tar.xz
Nedlasting MD5 sum: 123ba68332337a9e1b9903e732203afc
Nedlastingsstørrelse: 172 KB
Estimert diskplass som kreves: 6.8 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
libevdev-1.13.4 og libgudev-238
Doxygen-1.14.0, git-2.50.1, librsvg-2.61.0, Valgrind-3.25.1 (valgfritt for noen tester), og pytest-8.4.1 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.4.1, 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.4.1 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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/log4cplus/log4cplus/releases/download/REL_2_1_2/log4cplus-2.1.2.tar.xz
Nedlasting MD5 sum: 9b07ce88a3130673848a26e7e983aa5b
Nedlastingsstørrelse: 931 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
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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://nodejs.org/dist/v22.18.0/node-v22.18.0.tar.xz
Nedlasting MD5 sum: c465f337ce708750125ee9f3b907cbf1
Nedlastingsstørrelse: 47 MB
Estimert diskplass som kreves: 1.3 GB (legg til 46 MB for tester)
Estimert byggetid: 11 SBU (legg til 2.5 SBU for tester: begge bruker parallellisme=8 og 8 CPUer, deler av testene vil bruke alle tilgjengelige CPUer)
Brotli-1.1.0, c-ares-1.34.5, ICU-77.1, libuv-1.51.0, og nghttp2-1.66.0
http-parser og npm (en intern kopi av npm vil bli installert hvis den ikke er til stede)
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
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 over 4400 tester, 3 i "parallel" testpakken er kjent for å mislykkes.
Nå, som root bruker:
make install && ln -sf node /usr/share/doc/node-22.18.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.
|
er et eksperimentelt verktøy for å hjelpe med å administrere versjoner av pakkebehandlere. |
|
|
er JavaScript kjøretiden på serversiden |
|
|
er Node.js pakkebehandler |
|
|
er en forkortelse for |
|
|
|
er installasjonsroten for Node.js kjørbare filer og biblioteker |
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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/npth/npth-1.8.tar.bz2
Nedlasting MD5 sum: cb4fc0402be5ba67544e499cb2c1a74d
Nedlastingsstørrelse: 312 KB
Estimert diskplass som kreves: 2.9 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.4 plattform.
Nedlasting (HTTP): https://archive.mozilla.org/pub/nspr/releases/v4.37/src/nspr-4.37.tar.gz
Nedlasting MD5 sum: be993c415dd4590c8e8fc2da7b0594bf
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 8.9 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.4 plattform.
Nedlasting (HTTP): https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.45/pcre2-10.45.tar.bz2
Nedlasting MD5 sum: f71abbe1b5adf25cd9af5d26ef223b66
Nedlastingsstørrelse: 2.0 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.45 \
--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.4 plattform.
Nedlasting (HTTP): https://ftp.osuosl.org/pub/rpm/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.14.0 (for å generere dokumentasjon)
Installer popt ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make
Hvis du har Doxygen-1.14.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.4 plattform.
Nedlasting (HTTP): https://github.com/protocolbuffers/protobuf/releases/download/v32.0/protobuf-32.0.tar.gz
Nedlasting MD5 sum: a0730ca44019c58538bb2f17e30a96ff
Nedlastingsstørrelse: 9.2 MB
Estimert diskplass som kreves: 134 MB
Estimert byggetid: 1.3 SBU (med parallellisme=4)
Abseil-cpp-20250814.0 og CMake-4.1.0
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_BUILD_SHARED_LIBS=ON \
-G Ninja .. &&
ninja
Denne pakken kommer med en testpakke, men den krever gtest, som ikke er en del av BLFS.
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
protobuf_BUILD_TESTS=OFF: Denne parameteren
forhindrer testene fra å bygges pga gtest ikke er en
del av BLFS.
-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.
|
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 |
|
|
er en liten protobuf implementasjon skrevet i C |
|
|
inneholder funksjoner som lar et program bestemme om en sekvens av tegn er en gyldig UTF-8 sekvens |
|
|
inneholder funksjoner som lar et program bestemme om en sekvens av byte er en gyldig UTF-8 sekvens, og for å finne hva lengste gyldige prefikset for sekvensen er |
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.4 plattform.
Nedlasting (HTTP): https://github.com/protobuf-c/protobuf-c/releases/download/v1.5.2/protobuf-c-1.5.2.tar.gz
Nedlasting MD5 sum: 0612ee47cccaaf4ad1c4f0c8bdc13abf
Nedlastingsstørrelse: 520 KB
Estimert diskplass som kreves: 56 MB
Estimert byggetid: 0.6 SBU (med tester)
Installer Protobuf-c ved å kjøre følgende kommandoer:
./configure --prefix=/usr --disable-static && make -j1
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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/qca/2.3.10/qca-2.3.10.tar.xz
Nedlasting MD5 sum: c3ed3262c83c43bdeb610836769b1534
Nedlastingsstørrelse: 748 KB
Estimert diskplass som kreves: 56 MB (med tester)
Estimert byggetid: 0.7 SBU (bruker parallellisme=4; med tester)
make-ca-1.16.1, CMake-4.1.0, Qt-6.9.2, og Which-2.23
Cyrus SASL-2.1.28, GnuPG-2.4.8, libgcrypt-1.11.2, libgpg-error-1.55, nss-3.115, NSPR-4.37, p11-kit-0.25.5, Doxygen-1.14.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.9.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.4 plattform.
Nedlasting (HTTP): https://github.com/danvratil/qcoro/archive/v0.12.0/qcoro-0.12.0.tar.gz
Nedlasting MD5 sum: 60c26d10ba0ef5a593a8b0011674939c
Nedlastingsstørrelse: 160 KB
Estimert diskplass som kreves: 10 MB (Legg til 19 MB for tester)
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; legg til 0.6 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.4 plattform.
Nedlasting (HTTP): https://archive.mozilla.org/pub/firefox/releases/140.2.0esr/source/firefox-140.2.0esr.source.tar.xz
Nedlasting MD5 sum: 64773387a541a2ed5c1ce9f247469ba3
Nedlastingsstørrelse: 602 MB
Estimert diskplass som kreves: 4.7 GB (48 MB installert etter fjerning av 38 MB statisk lib; legg til 30 MB for hovedtestene og 27 MB for jit testene)
Estimert byggetid: 1.8 SBU (med parallellitet=4; legg til 0.5 SBU for hovedtestene og 2.1 SBU for jit testene)
Cbindgen-0.29.0, ICU-77.1, Which-2.23
LLVM-20.1.8 (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-140.2.0esr.tar.xz og gå inn i
firefox-140.2.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 \
--enable-rust-simd \
--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" | tee jstest.log
Fordi vi bygger med systemets ICU, 24 tester (av totalt mer
enn 50 000) er kjent for å mislykkes. Listen over mislykkede
tester kan hentes ut via grep
'UNEXPECTED-FAIL' jstest.log. Send
-c alternativet til grep hvis du vil bare ha
det totale antallet mislykkede tester.
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 følgende kommando:
make -C js/src check-jit-test
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, noen testtilfeller kan bruke
opptil 4 GB av systemminnet, så maksimal minnebruk kan være
svært stor hvis du har flere CPU kjerner. Å kjøre 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 JITTEST_EXTRA_ARGS=-j til kommandoen og
erstatt NN med
nummeret av testjobber det tilgjengelige systemminnet kan
inneholde. For eksempel hvis du har 15 GB systemminne
tilgjengelig og 4 CPU kjerner, legg til JITTEST_EXTRA_ARGS=-j3 for å kjøre testpakken
med 3 parallelle jobber slik at minnebruken ikke overskrider
12 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 (140 in 140.2.0). For å omgå dette problemet, fjern den gamle versjonen av SpiderMonkey delte bibliotek før installasjonen:
rm -fv /usr/lib/libmozjs-140.so
Nå, som root bruker:
make install && rm -v /usr/lib/libjs_static.ajs && sed -i '/@NSPR_CFLAGS@/d' /usr/bin/js140-config
Fortsatt som root bruker,
fiks et problem med ett av de installerte deklarasjonene:
sed '$i#define XP_UNIX' -i /usr/include/mozjs-140/js-config.h
--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.
--enable-rust-simd:
Denne bryteren aktiverer SIMD optimalisering i den leverte
encoding_rs crate.
--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/js140-config: Forhindrer js140-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.4 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/SPIRV-Headers/archive/vulkan-sdk-1.4.321.0/SPIRV-Headers-vulkan-sdk-1.4.321.0.tar.gz
Nedlasting MD5 sum: ef203788b47d207f7a71bdf4fa02d6f2
Nedlastingsstørrelse: 528 KB
Estimert diskplass som kreves: 4.4 MB
Estimert byggetid: mindre enn 0.1 SBU
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.4 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/SPIRV-Tools/archive/vulkan-sdk-1.4.321.0/SPIRV-Tools-vulkan-sdk-1.4.321.0.tar.gz
Nedlasting MD5 sum: bd91a34dcbd8301cba5f4fa9524c7d9f
Nedlastingsstørrelse: 3.2 MB
Estimert diskplass som kreves: 61 MB
Estimert byggetid: 0.6 SBU (med tester; begge bruker parallellisme=8)
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.4.321.0 er
installert i /usr. Dette er nødvendig siden byggesystemet
prøver å bruke en kopi av external/spirv-headers i kildemappen som
standard, og kopien sendes ikke (dvs. du trenger å pakke ut
manuelt SPIRV-Headers-1.4.321.0 der
hvis du vil bygge med kopien).
|
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.4 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/v20.1.5/SPIRV-LLVM-Translator-20.1.5.tar.gz
Nedlasting MD5 sum: 510a7cceed8205e4c3877f23d9c0911a
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 39 MB
Estimert byggetid: 0.4 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.4 plattform.
Nedlasting (HTTP): https://www.samba.org/ftp/talloc/talloc-2.4.3.tar.gz
Nedlasting MD5 sum: a51e4220fda52f4ae39413ed7e281f38
Nedlastingsstørrelse: 672 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.43 (For å generere mansider), GDB-16.3, git-2.50.1, libnsl-2.0.1, libtirpc-1.3.6, Valgrind-3.25.1, og xfsprogs-6.15.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.4 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 \
-D CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-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.
-D
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
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.4 plattform.
Nedlasting (HTTP): https://github.com/martinpitt/umockdev/releases/download/0.19.3/umockdev-0.19.3.tar.xz
Nedlasting MD5 sum: 47f731614c0d98f0751642b9a7e0bf66
Nedlastingsstørrelse: 488 KB
Estimert diskplass som kreves: 7.0 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
libgudev-238, libpcap-1.10.5, og Vala-0.56.18
GTK-Doc-1.34.0, Valgrind-3.25.1 (for tester), og libgphoto2 (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.4 plattform.
Nedlasting (HTTP): https://github.com/nemtrif/utfcpp/archive/v4.0.6/utfcpp-4.0.6.tar.gz
Nedlasting MD5 sum: 3b79abe634ef157f04bd16aad809889b
Nedlastingsstørrelse: 36 KB
Estimert diskplass som kreves: 504 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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/wayland/wayland/-/releases/1.24.0/downloads/wayland-1.24.0.tar.xz
Nedlasting MD5 sum: fda0b2a73ea2716f61d75767e02008e1
Nedlastingsstørrelse: 240 KB
Estimert diskplass som kreves: 7.0 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Doxygen-1.14.0, Graphviz-13.1.2 og xmlto-0.0.29 (for å bygge API dokumentasjonen) og docbook-xml-4.5, docbook-xsl-nons-1.79.2 og libxslt-1.1.43 (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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/wayland/wayland-protocols/-/releases/1.45/downloads/wayland-protocols-1.45.tar.xz
Nedlasting MD5 sum: a235baeab3f1c6d57ac4c7c00ecd7e48
Nedlastingsstørrelse: 128 KB
Estimert diskplass som kreves: 12 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.4 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.53 og libpng-1.6.50
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.4 plattform.
Nedlasting (HTTP): https://oligarchy.co.uk/xapian/1.4.29/xapian-core-1.4.29.tar.xz
Nedlasting MD5 sum: 17dc9532463bd49695385a5aed1d8da7
Nedlastingsstørrelse: 3.1 MB
Estimert diskplass som kreves: 146 MB (legg til 169 MB for tester)
Estimert byggetid: 0.5 SBU (legg til 9.1 SBU for tester; begge bruker parallellisme=4)
Valgrind-3.25.1 (for tester)
Installer Xapian ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/xapian-core-1.4.29 &&
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.4 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.4 plattform.
Nedlasting (HTTP): https://download.gimp.org/pub/babl/0.1/babl-0.1.114.tar.xz
Nedlasting MD5 sum: be5ed13a156e0a666695b44892422129
Nedlastingsstørrelse: 316 KB
Estimert diskplass som kreves: 14 MB (med tester)
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4; med tester)
GLib-2.84.4 (med GObject Introspection) og librsvg-2.61.0
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.4 plattform.
Nedlasting (HTTP): https://github.com/Exiv2/exiv2/archive/v0.28.5/exiv2-0.28.5.tar.gz
Nedlasting MD5 sum: f8de9495e03f06be5152ecae3a82815c
Nedlastingsstørrelse: 45 MB
Estimert diskplass som kreves: 134 MB (med tester)
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4, med tester)
Brotli-1.1.0, cURL-8.15.0, og inih-61
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-61.
-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.4 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-11.4.1 (sirkulær: bygg freetype, deretter harfbuzz, og installer freetype på nytt), libpng-1.6.50, og Which-2.23
Brotli-1.1.0 og librsvg-2.61.0
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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/api/v4/projects/890/packages/generic/fontconfig/2.17.1/fontconfig-2.17.1.tar.xz
Nedlasting MD5 sum: f68f95052c7297b98eccb7709d817f6a
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 18 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
bubblewrap-0.11.0 (brukt av noen tester), cURL-8.15.0 og libarchive-3.8.1 (begge brukt av noen tester for å laste ned og trekke ut testfiler), JSON-C-0.18, DocBook-utils-0.6.14 og libxml2-2.14.5, texlive-20250308 (eller install-tl-unx)
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
Hvis du har DocBook Utils
installert og du fjerner --disable-docs parameteren
fra configure
kommandoen nedenfor, må du også ha SGMLSpm-1.1 og
texlive-20250308 installert,
ellers vil Fontconfig
bygge med feil.
Installer Fontconfig ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-docs \
--docdir=/usr/share/doc/fontconfig-2.17.1 &&
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.17.1} &&
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/*.{pdf,sgml,txt,html} \
/usr/share/doc/fontconfig-2.17.1
--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.17.1/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.4 plattform.
Nedlasting (HTTP): https://github.com/fribidi/fribidi/releases/download/v1.0.16/fribidi-1.0.16.tar.xz
Nedlasting MD5 sum: 333ad150991097a627755b752b87f9ff
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 22 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.4 plattform.
Nedlasting (HTTP): https://download.gimp.org/pub/gegl/0.4/gegl-0.4.62.tar.xz
Nedlasting MD5 sum: 0077654104c84fd54b4b48b92271131c
Nedlastingsstørrelse: 5.7 MB
Estimert diskplass som kreves: 124 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.114 og JSON-GLib-1.10.6
GLib-2.84.4 (med GObject Introspection), Graphviz-13.1.2 (bygget med pango og libpng), Pygments-2.19.2, og PyGObject-3.52.3
asciidoc-10.2.1, Cairo-1.18.4, FFmpeg-7.1.1 (for øyeblikket ødelagt), gdk-pixbuf-2.42.12, gexiv2-0.14.6, GTK-Doc-1.34.0, jasper-4.2.8, Little CMS-2.17, libraw-0.21.4, librsvg-2.61.0, libspiro-20220722, libtiff-4.7.0, libwebp-1.6.0, luajit-20250816, Pango-1.56.4, Poppler-25.08.0, Ruby-3.4.5, SDL2-2.32.8, v4l-utils-1.30.1, Vala-0.56.18, lensfun, 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 .. && ninja
For å teste resultatene, utsted: ninja test. Fjorten tester
er kjent for å mislykkes i gegl:ff-load-save-delen av testpakken på
grunn av inkompatibilitet med nyere versjoner av ffmpeg.
Nå, som root bruker:
ninja install
-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.4 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.4/giflib-5.2.2-upstream_fixes-1.patch
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/giflib-5.2.2-security_fixes-1.patch
xmlto-0.0.29 (påkrevd vis du kjører make etter make clean) [1]
Først, hindre byggeprosessen fra å installere XML filer i stedet for manualsider:
patch -Np1 -i ../giflib-5.2.2-upstream_fixes-1.patch
Deretter, fiks flere sikkerhetsproblemer i verktøyet 'gif2rgb':
patch -Np1 -i ../giflib-5.2.2-security_fixes-1.patch
Fjern deretter en unødvendig avhengighet av ImageMagick-7.1.2-1 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
For å teste resultatene, utsted: make check.
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 |
[1] Forhåndsbygd dokumentasjon finnes i denne tarballen. make vil oppdage at dokumentasjon allerede finnes i distribusjonen hvis make clean ikke ble kjørt, og vil ikke kreve xmlto-0.0.29 avhengighet. Imidlertid å kjøre make clean vil føre til at den forhåndsbygde dokumentasjonen blir slettet, og dermed kreve xmlto for å bygge dokumentasjonen hvis make blir kjørt etterpå.
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.4 plattform.
Nedlasting (HTTP): https://github.com/Dav1dde/glad/archive/v2.0.8/glad-2.0.8.tar.gz
Nedlasting MD5 sum: 028c39d581e6b53e53871f1dc21cf442
Nedlastingsstørrelse: 632 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-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.4 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.4 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-11.4.1 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.14.0, texlive-20250308 (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
Fiks å bygge denne pakken med CMake 4.0 ved å oppdatere dens syntaks til å samsvare med nyere versjoner av CMake:
sed -i '/cmake_policy(SET CMP0012 NEW)/d' CMakeLists.txt && sed -i 's/PythonInterp/Python3/' CMakeLists.txt && find . -name CMakeLists.txt | xargs sed -i 's/VERSION 2.8.0 FATAL_ERROR/VERSION 4.0.0/'
Fiks nå et problem når du bygger med gcc-15:
sed -i '/Font.h/i #include <cstdint>' tests/featuremap/featuremaptest.cpp
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.4 plattform.
Nedlasting (HTTP): https://github.com/harfbuzz/harfbuzz/releases/download/11.4.1/harfbuzz-11.4.1.tar.xz
Nedlasting MD5 sum: 0f2f8fe443032019b5ca9598c8e2b912
Nedlastingsstørrelse: 17 MB
Estimert diskplass som kreves: 143 MB (med tester)
Estimert byggetid: 0.7 SBU (med tester; begge bruker parallellisme=4)
GLib-2.84.4 (påkrevd for Pango; GObject Introspection påkrevd for å bygge GNOME), Graphite2-1.3.14 (nødvendig for å bygge texlive-20250308 eller LibreOffice-25.8.1.1 med system harfbuzz), ICU-77.1, og FreeType-2.13.3 (etter at harfbuzz er installert, installer freetype på nytt)
Cairo-1.18.4 (sirkulær: bygge cairo og alt de anbefalte avhengigheter, inkludert harfbuzz, først, deretter gjenoppbygge harfbuzz hvis cairo bakstykke er nødvendig), git-2.50.1, 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-20250308 eller
LibreOffice-25.8.1.1 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.4 plattform.
Nedlasting (HTTP): https://github.com/jasper-software/jasper/archive/version-4.2.8/jasper-version-4.2.8.tar.gz
Nedlasting MD5 sum: 2277a24310224952f49149615fa853eb
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 9.8 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
Freeglut-3.6.0 (påkrevd for jiv), Doxygen-1.14.0 (nødvendig for å generere html dokumentasjon), og texlive-20250308 (nødvendig for å generere pdf dokumentasjon)
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.8 \
.. &&
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-20250308 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.4 plattform.
Nedlasting (HTTP): https://github.com/mm2/Little-CMS/releases/download/lcms2.17/lcms2-2.17.tar.gz
Nedlasting MD5 sum: 9f44275ee8ac122817e94fdc50ecce13
Nedlastingsstørrelse: 5.0 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.4 plattform.
Nedlasting (HTTP): https://github.com/AOMediaCodec/libavif/archive/v1.3.0/libavif-1.3.0.tar.gz
Nedlasting MD5 sum: e180551c0989f7e096a4440b89d6282d
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 22 MB
Estimert byggetid: mindre enn 0.1 SBU
gtest, libdav1d, libyuv, rav1e, og svt-av1
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester 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.4 plattform.
Nedlasting (HTTP): https://github.com/libexif/libexif/releases/download/v0.6.25/libexif-0.6.25.tar.bz2
Nedlasting MD5 sum: eba77b69efac8fa8e8fc53f8c2cdad7c
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: mindre enn 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.25 &&
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.25.
--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.4 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.50, Little CMS-2.17, libarchive-3.8.1, libjpeg-turbo-3.0.1, libtiff-4.7.0, og libxslt-1.1.43
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.4 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_POLICY_VERSION_MINIMUM=3.5 \
-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_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
-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.4 plattform.
Nedlasting (HTTP): https://github.com/libjxl/libjxl/archive/v0.11.1/libjxl-0.11.1.tar.gz
Nedlasting MD5 sum: 8f26fc954c2d9cb377544a5f029182ef
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 57 MB
Estimert byggetid: 0.9 SBU (med parallellisme=4)
Brotli-1.1.0, CMake-4.1.0, giflib-5.2.2, highway-1.3.0, Little CMS-2.17, libjpeg-turbo-3.0.1, og libpng-1.6.50
gdk-pixbuf-2.42.12 (for programtillegget)
asciidoc-10.2.1 (for manualsider), Doxygen-1.14.0 og Graphviz-13.1.2 (for dokumentasjon), Java-24.0.2 (for JAR), libavif-1.3.0, libwebp-1.6.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-24.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-24.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.4 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.4 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.84.4 (med GObject Introspection)
Doxygen-1.14.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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/libpng/libpng-1.6.50.tar.xz
Nedlasting MD5 sum: e583e61455c4f40d565d85c0e9a2fbf9
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 14 SBU (med tester)
Estimert byggetid: 0.1 SBU (legg til 0.3 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.47-apng.patch.gz
Oppdatering md5sum: 5c4a639b227ac60a0e438840bcf1cf5f
Hvis du vil oppdatere libpng for å støtte apng filer, bruk det her:
gzip -cd ../libpng-1.6.47-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.50 && cp -v README libpng-manual.txt /usr/share/doc/libpng-1.6.50
--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 |
libqrencode pakken gir en rask og kompakt bibliotek for koding av data i et QR kodesymbol, en 2D symbologi som kan skannes av håndholdte terminaler som en mobiltelefon med en CCD sensor.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Download (HTTP): https://github.com/fukuchi/libqrencode/archive/v4.1.1/libqrencode-4.1.1.tar.gz
Download MD5 sum: 486f879d1638d3fb58a4a5d45a88c600
Download size: 188 KB
Estimated disk space required: 6.6 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.14.0 for å generere dokumentasjon, og SDL2-2.32.8 for tester
Installer libqrencode ved å kjøre følgende kommandoer:
sh autogen.sh && ./configure --prefix=/usr && make
Hvis du har installert Doxygen-1.14.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/libqrencode-4.1.1 && mv html/* /usr/share/doc/libqrencode-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.32.8.
--without-tools: Dette
alternativet forhindrer bygging av qrencode kjørbar, fjerner
behovet for libpng-1.6.50.
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.4 plattform.
Nedlasting (HTTP): https://www.libraw.org/data/LibRaw-0.21.4.tar.gz
Nedlasting MD5 sum: 26e046621c38c10f56c195dfd29a5661
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
Installer libraw ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-jpeg \
--enable-jasper \
--enable-lcms \
--disable-static \
--docdir=/usr/share/doc/libraw-0.21.4 &&
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.8 installert.
--enable-lcms: Denne
bryteren aktiverer støtte for fargebehandling. Fjern den hvis
du ikke har Little CMS-2.17 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/librsvg/2.61/librsvg-2.61.0.tar.xz
Nedlasting MD5 sum: 7ed4ffdee87e0d7f356fedfea77744ca
Nedlastingsstørrelse: 6.4 MB
Estimert diskplass som kreves: 1.1 GB (17 MB installert; Legg til 385 MB for tester
Estimert byggetid: 0.7 SBU (Legg til 0.3 SBU for tester; begge bruker parallellisme=4)
Cairo-1.18.4, cargo-c-0.10.15, gdk-pixbuf-2.42.12, og Pango-1.56.4
En Internett tilkobling er nødvendig for å bygge denne pakken. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger denne pakken.
GLib-2.84.4 (med GObject Introspection) og Vala-0.56.18
docutils-0.21.2 (for manualsider), Gi-DocGen-2025.4 (for dokumentasjon), og Xorg Fonts (for tester)
Først, fiks installasjonsbanen til API dokumentasjonen:
sed -e "/OUTDIR/s|,| / 'librsvg-2.61.0', '--no-namespace-dir',|" \
-e '/output/s|Rsvg-2.0|librsvg-2.61.0|' \
-i doc/meson.build
Installer librsvg ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
For å teste resultatene, utsted:
ninja test
En test, Rust tests (rsvg), er kjent for å mislykkes.
Nå, som root bruker:
ninja install
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.4 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.4 plattform.
Nedlasting (HTTP): https://download.osgeo.org/libtiff/tiff-4.7.0.tar.gz
Nedlasting MD5 sum: 3a0fa4a270a4a192b08913f88d0cfbdd
Nedlastingsstørrelse: 3.7 MB
Estimert diskplass som kreves: 60 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.2.3, libwebp-1.6.0, JBIG-KIT, og LERC
Installer libtiff ved å kjøre følgende kommandoer:
mkdir -p libtiff-build &&
cd libtiff-build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr .. \
-D CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-G Ninja \
-D CMAKE_INSTALL_DOCDIR=/usr/share/doc/libtiff-4.7.0 &&
ninja
For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
-D
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
|
konverterer en TIFF faksimile til komprimert PostScript fil |
|
|
oppretter en TIFF Class F faksfil fra rå faksdata |
|
|
konverterer et palettfarge TIFF bilde til en full farge bilde |
|
|
oppretter en TIFF fil fra en PPM bildefil |
|
|
konverterer en rå bytesekvens til TIFF |
|
|
konverterer et TIFF fargebilde til gråtoner |
|
|
konverterer et TIFF bilde til et PDF dokument |
|
|
konverterer et TIFF bilde til en PostScript fil |
|
|
konverterer et bredt utvalg av TIFF bilder til en RGBA TIFF bilde |
|
|
sammenligner to TIFF filer |
|
|
kopierer (og konverterer muligens) en TIFF fil |
|
|
velger, kopierer, beskjærer, konverterer, trekker ut og/eller behandler en eller flere TIFF filer |
|
|
konverterer et gråtonebilde til bilevel ved hjelp av dithering |
|
|
skriver ut ordrett informasjon om TIFF filer |
|
|
viser et bilde som er lagret i en TIFF fil |
|
|
skriver ut informasjon om TIFF filer |
|
|
bruker median cut-algoritmen på data i en TIFF fil |
|
|
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.4 plattform.
Nedlasting (HTTP): https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.6.0.tar.gz
Nedlasting MD5 sum: cceb6447180f961473b181c9ef38b630
Nedlastingsstørrelse: 4.1 MB
Estimert diskplass som kreves: 41 MB
Estimert byggetid: 0.3 SBU
libjpeg-turbo-3.0.1, libpng-1.6.50, libtiff-4.7.0, og SDL2-2.32.8 (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.4 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.4 plattform.
Nedlasting (HTTP): https://releases.pagure.org/newt/newt-0.52.25.tar.gz
Nedlasting MD5 sum: cca66ed1d8774fb9e3f6a33525de416d
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.13 &&
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.13: 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.4 plattform.
Nedlasting (HTTP): https://github.com/opencv/opencv/archive/4.12.0/opencv-4.12.0.tar.gz
Nedlasting MD5 sum: eb6f8ff4f4cd16ef1b97bc21edc74de9
Nedlastingsstørrelse: 91 MB
Estimert diskplass som kreves: 1.0 GB (med opencv-contrib)
Estimert byggetid: 3.6 SBU (bruke parallellisme=8)
Valgfrie Tilleggsmoduler: https://github.com/opencv/opencv_contrib/archive/4.12.0/opencv_contrib-4.12.0.tar.gz
Valgfrie Tilleggsmoduler md5sum: 55603c033cc5f3d5e307b699ad72e25a
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.
CMake-4.1.0 og libarchive-3.8.1
FFmpeg-7.1.1, gst-plugins-base-1.26.5, GTK-3.24.50, jasper-4.2.8, libavif-1.3.0, libexif-0.6.25, libjpeg-turbo-3.0.1, libpng-1.6.50, libtiff-4.7.0, libwebp-1.6.0, OpenJPEG-2.5.3, v4l-utils-1.30.1, og xine-lib-1.2.13
apache-ant-1.10.15, Doxygen-1.14.0, Java-24.0.2, NumPy-2.3.2, Protobuf-32.0, 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.12.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 \
-D OPENCV_GENERATE_PKGCONFIG=ON \
-D CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-W no-dev .. &&
make
Pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
-D
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
-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:
Denne bryteren instruerer make prosedyren å bruke xine-lib-1.2.13.
-D
ENABLE_PRECOMPILED_HEADERS=OFF: Denne bryteren er
nødvendig for kompatibilitet med gcc-6.1 og nyere.
-D
OPENCV_GENERATE_PKGCONFIG=ON: Denne bryteren
forteller byggesystemet å generere en pkg-config-fil for
andre pakker for å oppdage og koble til bibliotekene som er
installert av denne pakken.
-D
OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.12.0/modules:
instruerer byggesystemet til å bygge tilleggsmoduler. Noen
pakker i BLFS (som gst-plugins-bad-1.26.5)
trenger disse modulene for å bygge komponenter som bruker
OpenCV.
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.4 plattform.
Nedlasting (HTTP): https://github.com/uclouvain/openjpeg/archive/v2.5.3/openjpeg-2.5.3.tar.gz
Nedlasting MD5 sum: 12ae257cb21738c41b5f6ca977d01081
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 17 MB (legg til 1,7 GB for tester)
Estimert byggetid: 0.2 SBU (legg til 1.0 SBU for tester)
git-2.50.1 (for tester), Little CMS-2.17, libpng-1.6.50, libtiff-4.7.0, og Doxygen-1.14.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.4 plattform.
Nedlasting (HTTP): https://www.cairographics.org/releases/pixman-0.46.4.tar.gz
Nedlasting MD5 sum: c08173c8e1d2cc79428d931c13ffda59
Nedlastingsstørrelse: 808 KB
Estimert diskplass som kreves: 28 MB (Med tester)
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4; med tester)
libpng-1.6.50 og GTK-3.24.50 (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.4 plattform.
Nedlasting (HTTP): https://poppler.freedesktop.org/poppler-25.08.0.tar.xz
Nedlasting MD5 sum: 580516efcd6b6d9f06961c6c2ff334da
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 79 MB (med Qt6 biblioteket og tester)
Estimert byggetid: 1.0 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-4.1.0, Fontconfig-2.17.1, og GLib-2.84.4 (med GObject Introspection)
Boost-1.89.0, Cairo-1.18.4, gpgmepp-2.0.0, Little CMS-2.17, libjpeg-turbo-3.0.1, libpng-1.6.50, libtiff-4.7.0, nss-3.115, OpenJPEG-2.5.3, og Qt-6.9.2 (påkrevd for PDF støtte i okular-25.08.0)
cURL-8.15.0, gdk-pixbuf-2.42.12, git-2.50.1 (for nedlasting av testfiler), GTK-Doc-1.34.0 og GTK-3.24.50
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.
Nå, som root bruker:
ninja install
For å installere dokumentasjonen, kjør følgende kommandoer
som root:
install -v -m755 -d /usr/share/doc/poppler-25.08.0 && cp -vr ../glib/reference/html /usr/share/doc/poppler-25.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.
-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.9.2 ikke er installert.
-D ENABLE_BOOST=OFF: Bruk denne
parameteren hvis du ikke har installert boost (Splash-backend for Qt6 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 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.4 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-20.1.8 (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.4 plattform.
Nedlasting (HTTP): https://github.com/qpdf/qpdf/releases/download/v12.2.0/qpdf-12.2.0.tar.gz
Nedlasting MD5 sum: f10f5b3a0635e9fd2f305880c5cd8534
Nedlastingsstørrelse: 19 MB
Estimert diskplass som kreves: 333 MB (med tester)
Estimert byggetid: 0.5 SBU (bruker parallellisme=4; legg til 0.9 SBU for tester)
ghostscript-10.05.1, GnuTLS-3.8.10, libtiff-4.7.0, sphinx-8.2.3 med sphinx_rtd_theme-3.0.2, og texlive-20250308 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-12.2.0 \
.. &&
make
For å teste resultatene, kjør: ctest.
Nå, som root bruker:
make install
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.4 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.4 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.4 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
Først, fiks et problem når du bygger med gcc-15:
sed -i '/output.h/i #include <cstdint>' src/woff2_out.cc
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_POLICY_VERSION_MINIMUM=3.5 \
-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.
-D
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
zxing-cpp pakken gir en åpen kildekode, multi-format lineær/matrise strekkode bildebehandlingsbibliotek.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/zxing-cpp/zxing-cpp/archive/v2.3.0/zxing-cpp-2.3.0.tar.gz
Nedlasting MD5 sum: 91ae23c12b5a00d54037ad019777238a
Nedlastingsstørrelse: 988 KB
Estimert diskplass som kreves: 67 MB
Estimert byggetid: 0.1 SBU (Using parallelism=4)
Installer zxing-cpp ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D ZXING_EXAMPLES=OFF \
-W no-dev .. &&
make
Tester krever en ekstern pakke.
Nå, som root bruker:
make install
[1] Forhåndsbygd dokumentasjon finnes i denne tarballen. make vil oppdage at dokumentasjon allerede finnes i distribusjonen hvis make clean ikke ble kjørt, og vil ikke kreve xmlto-0.0.29 avhengighet. Imidlertid å kjøre make clean vil føre til at den forhåndsbygde dokumentasjonen blir slettet, og dermed kreve xmlto for å bygge dokumentasjonen hvis make blir kjørt etterpå.
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.4 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.4 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.14.5, og SQLite-3.50.4
lmdb-0.9.33, 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.50.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/desktop-file-utils/releases/desktop-file-utils-0.28.tar.xz
Nedlasting MD5 sum: dec5d7265c802db1fde3980356931b7b
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.4 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
glslc programmet er Googles kommandolinje kompilator for OpenGL Shading Language/High Level Shading Language (GLSL/HLSL) til Standard Portable Intermediate Representation (SPIR-V).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/google/shaderc/archive/v2025.3/shaderc-2025.3.tar.gz
Nedlasting MD5 sum: c110401f6e36ee234008b4cabe991ee0
Nedlastningsstørrelse: 224 KB
Estimert diskplass som kreves: 3.9 MB
Estimert byggetid: mindre enn 0.1 SBU
Først, tillat å bygge med systemets Glslang-15.4.0 og SPIRV-Tools-1.4.321.0:
sed '/build-version/d' -i glslc/CMakeLists.txt && sed '/third_party/d' -i CMakeLists.txt && sed 's|SPIRV|glslang/&|' -i libshaderc_util/src/compiler.cc && echo '"2025.3"' > glslc/src/build-version.inc
Nå installer glslc ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D SHADERC_SKIP_TESTS=ON \
-G Ninja ..
ninja
Nå, som root bruker:
install -vm755 glslc/glslc /usr/bin
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.4 plattform.
Nedlasting (HTTP): https://gitlab.com/graphviz/graphviz/-/archive/13.1.2/graphviz-13.1.2.tar.bz2
Nedlasting MD5 sum: f069bffc04da2a9af9ae1eaa1abe9dd4
Nedlastingsstørrelse: 32.2 MB
Estimert diskplass som kreves: 154 MB
Estimert byggetid: 0.3 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.2-1. 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.56.4, med Cairo-1.18.4, Xorg Biblioteker, Fontconfig-2.17.1, libpng-1.6.50, for å 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.62.
AAlib-1.4rc5 (for å vise bilder i ASCII grafikk), Cups-2.4.12 (for formatering av grafer for utskrift), Qt-6.9.2, og WebKitGTK-2.48.5
Å 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.6.0, DevIL, libLASi, og glitz
libgs.so fra ghostscript-10.05.1, librsvg-2.61.0, og Poppler-25.08.0
libANN og Freeglut-3.6.0 (med GtkGLExt og libGTS for bygging av smyrna stor grafviser, som er betraktet som eksperimentell)
SWIG-4.3.1 (SWIG må være installert ellers vil ingen bindinger bli bygget), GCC-15.2.0 (for go kompilatoren), Guile-3.0.10, OpenJDK-24.0.2, Lua-5.4.8, PHP-8.4.11, Ruby-3.4.5, Tk-8.6.16, og R
Criterion (rammeverk for tester) og Electric Fence
ghostscript-10.05.1 (for ps2pdf kommando)
Installer Graphviz 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 \
.. &&
sed -i '/GZIP/s/:.*$/=/' CMakeCache.txt &&
make
Denne pakken kommer ikke med en testpakke som gir meningsfulle resultater.
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.
sed ... CMakeCache.txt: Denne kommandoen er nødvendig for å forhindre komprimering av pakkenes manualsider.
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 |
|
|
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 |
|
|
er en innpakning rundt graphviz. Den har som mål å tilby et trygt miljø for behandling av upålitelige inndatagrafer og kommandolinjealternativer. |
|
|
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 |
|
|
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 |
|
|
er en to-visnings grafikk editor for tekniske bilder |
|
|
er en grafredigerer for X Window System. Den kan kjøres som en frittstående editor, eller som en grensesnitt for applikasjoner som bruker grafer. Den kan kontrollere flere vinduer som viser forskjellige grafer |
|
|
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.4 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.84.4, itstool-2.0.7, libxslt-1.1.43, og Pygments-2.19.2
For tester: dblatex eller fop-2.11 (XML PDF støtte), Which-2.23, og Python moduler lxml-6.0.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.4 plattform.
Nedlasting (HTTP): http://www.andre-simon.de/zip/highlight-4.16.tar.bz2
Nedlasting MD5 sum: 56530aebcc69edbde9ea1a8b9e95d919
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 24 MB (med gui)
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4; med gui)
Qt-6.9.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.16/ 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.16/ install
For å installere GUI programmet, kjør følgende kommando som
root bruker:
make install-gui
doc_dir=/usr/share/doc/highlight-4.16/:
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.4 plattform.
Nedlasting (HTTP): https://github.com/ibus/ibus/archive/1.5.32/ibus-1.5.32.tar.gz
Nedlasting MD5 sum: 0a5b8f8a2b593846038be558ef53b971
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 57 MB (legg til 1 MB for tester)
Estimert byggetid: 0.5 SBU (Bruker parallellisme=4; legg til 1.4 SBU for tester)
Unicode Character Database: https://www.unicode.org/Public/zipped/16.0.0/UCD.zip
ISO Codes-4.18.0, libarchive-3.8.1 (for å pakke ut Unicode Character Databasen), og Vala-0.56.18
DConf-0.40.0, GLib-2.84.4 (med GObject Introspection), GTK-3.24.50, GTK-4.18.6, og libnotify-0.8.6
GTK-Doc-1.34.0 (for å generere API dokumentasjon) D-Bus Python-1.4.0 og PyGObject-3.52.3 (begge for å bygge Python støttebiblioteket), libxkbcommon-1.11.0, Wayland-1.24.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-emoji-dict \
--disable-gtk2 \
--disable-systemd-services &&
make
For å teste resultatene, kjør: make -k check. Testen kalt ibus-compose mislykkes fordi den bruker noen lokaler ikke installert i LFS. xkb-latin-layouts testen er også kjent for å mislykkes på noen systemer.
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.
--disable-gtk4: Denne bryteren
deaktiverer bygging av GTK 4
immodul. Bruk den hvis du ikke vil installere 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.11.0 og
Wayland-1.24.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.4 plattform.
Nedlasting (HTTP): https://www.imagemagick.org/archive/releases/ImageMagick-7.1.2-1.tar.xz
Nedlasting MD5 sum: beddceb1c2036007b72671fc1039c5f8
Nedlastingsstørrelse: 10 MB
Estimert diskplass som kreves: 191 MB, 45 MB installert (med typiske avhengigheter; legg til 26 MB for sjekker)
Estimert byggetid: 0.7 SBU (med typiske avhengigheter; legg til 0.5 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.
7zip-25.01 (LZMA), Clang fra LLVM-20.1.8, Cups-2.4.12, cURL-8.15.0, FFmpeg-7.1.1, fftw-3.3.10, SANE-1.4.0, Wget-1.25.0, xdg-utils-1.2.1, xterm-401, Dmalloc, Electric Fence og PGP eller GnuPG-2.4.8 (du må gjøre noe hacking for å bruke GnuPG), Profiles
jasper-4.2.8, Little CMS-2.17, libgxps-0.3.2, libjpeg-turbo-3.0.1, libjxl-0.11.1, libpng-1.6.50, libraw-0.21.4 (for dng filer, trenger thread-safe libraw_r), librsvg-2.61.0, libtiff-4.7.0, libwebp-1.6.0, OpenJPEG-2.5.3, Pango-1.56.4, 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.05.1, Gimp-3.0.4, Graphviz-13.1.2, Inkscape-1.4.2, Blender, corefonts, GhostPCL, Gnuplot, POV-Ray, og Radiance
Enscript-1.6.6, Potrace-1.16, texlive-20250308 (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.2 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.05.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, uskarper, beskjærer, fjerner flekker, ryster, tegner på, snur, blir med, prøver på nytt og mye mer |
|
|
viser 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 Koder 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.4 plattform.
Nedlasting (HTTP): https://salsa.debian.org/iso-codes-team/iso-codes/-/archive/v4.18.0/iso-codes-v4.18.0.tar.gz
Nedlasting MD5 sum: 0e63147167cfbf4b1350a9dc19c320c6
Nedlastingsstørrelse: 15 MB
Estimert diskplass som kreves: 98 MB
Estimert byggetid: 0.3 SBU (med tester)
Installer ISO Codes ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install LN_S='ln -sfn'
LN_S='ln -sfn': Denne
overstyringen sikrer at installerte symbolkoblinger riktig
gjenskapes i tilfelle vi oppgraderer eller installerer pakken
på nytt. Det er unødvendig, men ufarlig ved installasjon av
pakken på systemet for første gang.
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.4 plattform.
Nedlasting (HTTP): https://github.com/lsof-org/lsof/releases/download/4.99.5/lsof-4.99.5.tar.gz
Nedlasting MD5 sum: 00f5844ae3520b5699c249dd424500c2
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 13 MB (med tester)
Estimert byggetid: 0.6 SBU (med tester)
Nmap-7.98
(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.98 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.
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.4 plattform.
Nedlasting (HTTP): https://www.gnupg.org/ftp/gcrypt/pinentry/pinentry-1.3.2.tar.bz2
Nedlasting MD5 sum: 5247373d2e9ac73b1ea662bd270e58a4
Nedlastingsstørrelse: 600 KB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: 0.2 SBU
libassuan-3.0.2 og libgpg-error-1.55
Emacs-30.2, FLTK-1.4.4, Gcr-4.4.0.1 (eller Gcr-3.41.2), KDE Frameworks-6.17.0, libsecret-0.21.7, og efl
Først, gjør configure forenlig med fltk-1.4.1:
sed -i "/FLTK 1/s/3/4/" configure && sed -i '14456 s/1.3/1.4/' configure
Installer PIN-Entry ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-pinentry-tty &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--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.4.0.1 (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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/screen/screen-5.0.1.tar.gz
Nedlasting MD5 sum: fb5e5dfc9353225c2d6929777344b1a6
Nedlastingsstørrelse: 880 KB
Estimert diskplass som kreves: 8.9 MB
Estimert byggetid: 0.1 SBU
Løs et problem som forårsaket at informasjonssiden bygges feil:
sed 's/\([a-z]\)@opensuse/\1@@opensuse/' -i doc/screen.texinfo
Installer Screen ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--infodir=/usr/share/info \
--mandir=/usr/share/man \
--disable-pam \
--enable-socket-dir=/run/screen \
--with-pty-group=5 \
--with-system_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
--disable-pam: Dette
alternativet fjerner en byggeavhengighet av Linux-PAM. Fjern
dette alternativet hvis du vil ha PAM støtte.
--enable-socket-dir=/run/screen:
Dette alternativet plasserer per-bruker sockets på en
standard plassering.
--with-system_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.4 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.4 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)
Først, fiks problemer som er eksponert av nåværende GCC versjoner:
patch -Np1 -i ../sharutils-4.15.2-consolidated-1.patch
Installer Sharutils ved å kjøre følgende kommandoer:
autoreconf -fiv && ./configure --prefix=/usr --disable-dependency-tracking && make
For å teste resultatene, kjør make check.
Nå, som root bruker:
make install
--disable-dependency-tracking:
Denne bryteren brukes til å deaktivere unødvendig kode i
byggesystemet.
--with-openssl: Denne
valgfrie bryteren brukes til å aktivere integrering av
integritetskontroller i pakkens kjørbare programmer.
|
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.4 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
Først må du fikse en byggefeil som oppstår når du bruker CMake 4.0 og nyere:
patch -Np1 -i ../tidy-html5-5.8.0-cmake4_fixes-1.patch
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.4 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)
Først, fiks kompileringen av denne pakken med GCC-15:
sed -i 's/sighandler interrupt_signal/__sighandler_t interrupt_signal/' src/time.c
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.4 plattform.
Nedlasting (HTTP): https://gitlab.com/OldManProgrammer/unix-tree/-/archive/2.2.1/unix-tree-2.2.1.tar.bz2
Nedlasting MD5 sum: ada08dc80717b09e2041ac9276d7b854
Nedlastingsstørrelse: 56 KB
Estimert diskplass som kreves: 588 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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/flatpak/xdg-dbus-proxy/releases/download/0.1.6/xdg-dbus-proxy-0.1.6.tar.xz
Nedlasting MD5 sum: 6d38a1b6bba80a3134270204558ba17e
Nedlastingsstørrelse: 48 KB
Estimert diskplass som kreves: 908 KB
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.4 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.43 (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.
7zip er 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.4 plattform.
Nedlasting (HTTP): https://github.com/ip7z/7zip/archive/25.01/7zip-25.01.tar.gz
Nedlasting MD5 sum: 0f820e4e77bd0fe6a1145e01a23fd886
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 38 MB
Estimert byggetid: 1.4 SBU
Installer 7zip ved å kjøre følgende kommandoer:
(for i in Bundles/{Alone,Alone7z,Format7zF,SFXCon} UI/Console; do
make -C CPP/7zip/$i -f ../../cmpl_gcc.mak || exit
done)
Denne pakken har ikke en testpakke.
Nå, som root bruker:
install -vDm755 CPP/7zip/Bundles/Alone{/b/g/7za,7z/b/g/7zr} \
CPP/7zip/Bundles/Format7zF/b/g/7z.so \
CPP/7zip/UI/Console/b/g/7z \
-t /usr/lib/7zip/ &&
install -vm755 CPP/7zip/Bundles/SFXCon/b/g/7zCon \
/usr/lib/7zip/7zCon.sfx &&
(for i in 7z 7za 7zr; do
cat > /usr/bin/$i << EOF || exit
#!/bin/sh
exec /usr/lib/7zip/$i "\$@"
EOF
chmod 755 /usr/bin/$i || exit
done) &&
cp -rv DOC -T /usr/share/doc/7zip-25.01
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.4 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.84.4 (med GObject Introspection), elogind-255.17 , og Vala-0.56.18
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.36.0 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 \
-D elogind=true \
-D systemdsystemunitdir=no
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.18.
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,
elogind-255.17 (les
dokumentasjonen for Handle*= i
logind.conf(5)
for detaljer) og UPower-1.90.9 (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 elogind-255.17 håndterer noen
ACPI hendelser som standard, så håndteringen av disse
hendelsene av elogind-255.17
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.4 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 (det krever pm-utils-1.4.1). Eksemplet deaktiverer også standardhåndteringen av lokkets hendelse av elogind-255.17 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/sbin/pm-suspendEOF chmod +x /etc/acpi/lid.sh mkdir -pv /etc/elogind/logind.conf.d echoHandleLidSwitch=ignore> /etc/elogind/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 automatisk når
systemet startes på nytt, installer /etc/rc.d/init.d/acpid oppstartsskript
fra blfs-bootscripts-20250225
pakken.
make install-acpid
|
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.4 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 \
--with-jobdir=/var/spool/atjobs \
--with-atspool=/var/spool/atspool \
SENDMAIL=/usr/sbin/sendmail &&
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
Installer /etc/init.d/atd
init skriptet fra blfs-bootscripts-20250225
pakken.
make install-atd
|
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.4 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.6 og rpcsvc-proto-1.4.4
nfs-utils-2.8.3, libnsl-2.0.1, libxml2-2.14.5, MIT Kerberos V5-1.22.1, OpenLDAP-2.6.10 (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 \
--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.
--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.22.1.
/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.
autofs installerer sitt eget oppstartsskript, men det har ingen mulighet for logging eller visuell samsvar med andre BLFS skript. Den vil bli erstattet av en forbedret versjon.
Installer /etc/init.d/autofs
monteringsskript som følger med blfs-bootscripts-20250225
pakken.
make install-autofs
Time-out variabelen er satt i /etc/sysconfig/autofs.conf. De
installerte filene setter er standard på 60 sekunders
inaktivitet før enheten demonteres. En mye kortere tid kan
være nødvendig for å beskytte bufferskriving til en diskett
hvis brukere har en tendens til å fjerne mediet før
tidsavbruddsinnstillingen.
BlueZ pakken inneholder Bluetooth protokollstabel for Linux.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/bluetooth/bluez-5.83.tar.xz
Nedlasting MD5 sum: 59cf5b86dd008180503a159109bbfb9a
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 95 MB (med tester)
Estimert byggetid: 0.4 SBU (bruker parallellisme=4; med tester)
dbus-1.16.2, GLib-2.84.4, og libical-3.0.20
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 \
--enable-library \
--disable-manpages \
--disable-systemd &&
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.83 && install -v -m644 doc/*.txt /usr/share/doc/bluez-5.83
Installer en manglende D-Bus-tjeneste som root bruker:
install -m644 ./obexd/src/org.bluez.obex.service /usr/share/dbus-1/services
--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.
--disable-systemd:
Denne bryteren er nødvendig pga at systemd ikke er en del av LFS/BLFS. Hvis
du bruker systemd, fjern denne bryteren.
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 tre tilleggs konfigurasjonsfiler.
/etc/sysconfig/bluetooth er installert som en del av
oppstartsskriptet nedenfor. I tillegg kan du eventuelt
installere følgende, 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
automatisk når systemet startes på nytt, installer
/etc/rc.d/init.d/bluetooth
oppstartsskript fra blfs-bootscripts-20250225
pakken.
make install-bluetooth
|
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.4 plattform.
Nedlasting (HTTP): https://github.com/containers/bubblewrap/releases/download/v0.11.0/bubblewrap-0.11.0.tar.xz
Nedlasting MD5 sum: 630eec714ea04729efd116ea85a715a3
Nedlastingsstørrelse: 116 KB
Estimert diskplass som kreves: 3.2 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
libxslt-1.1.43 (for å generere manualsider), libseccomp-2.6.0 (bygget med python bindinger, for tester), bash-completion, og SELinux
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.4 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/colord/releases/colord-1.4.8.tar.xz
Nedlasting MD5 sum: 4d17dea7fe5460c2ea16aee64dca2ecb
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 22 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
dbus-1.16.2, GLib-2.84.4 (GObject Introspection anbefalt), Little CMS-2.17, libgudev-238, libgusb-0.4.9, Polkit-126, og SQLite-3.50.4
elogind-255.17 og Vala-0.56.18
gnome-desktop-44.3 og colord-gtk-0.3.1 (for å bygge eksempelverktøyene), docbook-xml-5.0, docbook-xsl-ns-1.79.2, og libxslt-1.1.43 (for å bygge manualsidene), GTK-Doc-1.34.0, SANE-1.4.0, ArgyllCMS, og Bash Completion
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=false \
-D libcolordcompat=true \
-D argyllcms_sensor=false \
-D bash_completion=false \
-D docs=false \
-D man=false &&
ninja
Hvis docbook-xml-5.0, docbook-xsl-ns-1.79.2, og libxslt-1.1.43 er installert, bygg manualsidene:
sed -e '/class="manual"/i<refmiscinfo class="source">colord</refmiscinfo>' \
-i ../man/*.xml &&
meson configure -D man=true &&
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.18 installert.
-D systemd=false:
Denne bryteren deaktiverer støtte for systemd innlogging i Colord
applikasjoner.
-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.
|
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.4 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-20250308 (eller install-tl-unx)
Legg til en løsning for et problem med gcc15:
sed -e "/^extern int (\*xstat)/s/()/(const char * restrict, struct stat * restrict)/" \
-i src/extern.h
sed -e "/^int (\*xstat)/s/()/(const char * restrict, struct stat * restrict)/" \
-i src/global.c
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-20250308 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.4 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
D-Bus er et meldingsbusssystem, en enkel måte for applikasjoner å snakke med hverandre. D-Bus leverer både en systemnisse (for hendelser som f.eks «ny maskinvareenhet lagt til» eller «skriver kø endret») og en per-bruker-pålogging-sesjon nisse (for generell IPC-behov blant brukerapplikasjoner). Dessuten er meldingsbussen bygget på toppen av et generelt rammeverk for en-til-en meldingsoverføring, som kan brukes av to applikasjoner for å kommunisere direkte (uten å gå gjennom meldingsbuss-demon).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://dbus.freedesktop.org/releases/dbus/dbus-1.16.2.tar.xz
Nedlasting MD5 sum: 97832e6f0a260936d28536e5349c22e5
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 25 MB (legg til 6 MB for tester)
Estimert byggetid: 0.3 SBU (legg til 0.4 SBU for tester)
Xorg Biblioteker (for dbus-launch programmet)
For testene: D-Bus Python-1.4.0, PyGObject-3.52.3, og Valgrind-3.25.1; for dokumentasjon: Doxygen-1.14.0, xmlto-0.0.29, Ducktype, og Yelp Tools
Installer D-Bus ved å kjøre følgende kommandoer (det kan være lurt å gå gjennom filen meson_options.txt først og legge til eventuelle ekstra ønskede alternativer til meson oppsettlinjen nedenfor):
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
--wrap-mode=nofallback \
-D systemd=disabled \
.. &&
ninja
Se nedenfor for testinstruksjoner.
Nå, som root bruker:
ninja 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
Hvis du fortsatt bygger systemet ditt i chroot eller du ikke
har startet nissen ennå, men du vil kompilere noen pakker som
krever D-Bus, generer
D-Bus UUID for å unngå
advarsler ved kompilering av noen pakker med følgende
kommando som root bruker:
dbus-uuidgen --ensure
Hvis du bruker elogind-255.17, opprette en
symbolkobling til /var/lib/dbus/machine-id filen:
ln -sfv /var/lib/dbus/machine-id /etc
Til slutt, fortsatt som root
bruker, gi nytt navn til dokumentasjonsmappen (det eksisterer
bare hvis de valgfrie avhengighetene er oppfylt for minst ett
dokumentasjonsformat) for å gjøre det versjonert:
if [ -e /usr/share/doc/dbus ]; then
rm -rf /usr/share/doc/dbus-1.16.2 &&
mv -v /usr/share/doc/dbus{,-1.16.2}
fi
Mange tester er deaktivert med mindre både D-Bus Python-1.4.0 og PyGObject-3.52.3 har blitt installert. Det må kjøres som en uprivilegert bruker fra en lokal økt med bussadresse. For å kjøre standard tester utsted ninja test.
Hvis du vil kjøre enhetsregresjonstestene, krever meson 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):
meson configure -D asserts=true -D intrusive_tests=true && ninja test
--wrap-mode=nofallback: Denne
bryteren forhindrer meson fra å bruke
delprosjektets tilbakefall for evt avhengighetserklæringer i
byggefilene, og forhindrer det å laste ned eventuell valgfrie
avhengigheter som ikke er installert på systemet.
-D systemd=disabled:
Ikke installer systemd støttefiler selv om libsystemd eksisterer (dvs. elogind-255.17 pakken er installert).
-D
intrusive_tests=true: Bygger ekstra deler av
koden for å støtte alle tester. Ikke bruk på en
produksjonsbygning.
-D asserts=true: Gjør
det mulig å kjøre feilsøkingskode påstander for utsagn som
normalt antas å være sanne. Dette forhindrer advarsel om det
'-D asserts=true' 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
For å starte dbus-daemon automatisk
når systemet startes på nytt, installer /etc/rc.d/init.d/dbus oppstartsskript fra
blfs-bootscripts-20250225
pakken.
make install-dbus
Hvis dette er første gang D-Bus installeres på systemet, og du ikke opererer i et chroot miljø, kan du starte umiddelbart dbus-daemon uten å starte systemet på nytt:
/etc/init.d/dbus start
Merk at dette oppstartsskriptet bare starter system-brede D-Bus nissen. Hver bruker som krever tilgang til D-Bus tjenester må også kjøre en sesjonsnisse også. Det er mange metoder du kan bruke for å starte en sesjonsnisse ved hjelp av 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
|
brukes til å rydde opp etterlatte sockets i en mappe |
|
|
er D-Bus meldingsbuss nisse |
|
|
brukes til å starte dbus-daemon fra et skallskript. Det vil normalt bli kalt opp fra en brukers påloggingsskript |
|
|
brukes til å overvåke meldinger som går gjennom en D-Bus meldingsbuss |
|
|
starter en prosess som en ny D-Bus økt |
|
|
brukes til å sende en melding til en D-Bus meldingsbuss |
|
|
er en D-Bus trafikkgenerator og testverktøy; det er et flerbruksverktøy for feilsøking og profilering D-Bus |
|
|
brukes til å oppdatere miljøet som brukes til D-Bus sesjonstjenester; den oppdaterer listen over miljøvariabler som brukes av dbus-daemon --session når den aktiverer økttjenester uten å bruke systemd |
|
|
brukes til å generere en universell unik ID |
|
|
inneholder API funksjonene som brukes av D-Bus meldingsnisse. D-Bus er først et bibliotek som gir en-til-en kommunikasjon mellom to applikasjoner; dbus-daemon er en applikasjon som bruker dette biblioteket for å implementere en meldingsbuss nisse |
elogind er systemd prosjektets "logind", trukket ut
til være en frittstående nisse. Den integreres med Linux-PAM-1.7.1 å spore alle brukerne
som er logget på et system, og om de logges på grafisk, på
konsollen eller eksternt. Elogind avslører denne informasjonen via
standard org.freedesktop.login1 D-Bus grensesnitt, og også gjennom
filsystemet ved å bruke systemd sin standard /run/systemd mal.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/elogind/elogind/archive/v255.17/elogind-255.17.tar.gz
Nedlasting MD5 sum: 3cd76e1a71e13c4810f6e80e176a8fa7
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 59 MB (med tester)
Estimert byggetid: 0.2 SBU (med parallellitet=4; med tester)
dbus-1.16.2 (kjøretid), Linux-PAM-1.7.1 (påkrevd for Xorg), Polkit-126 (kjøretid), docbook-xml-4.5, docbook-xsl-nons-1.79.2, og libxslt-1.1.43 (alle tre for å bygge manualsidene)
lxml-6.0.0, zsh-5.9, Valgrind-3.25.1 (nødvendig for tester), audit-userspace, bash-completion, kexec, og SELinux
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Logind
Aktiver følgende alternativer i kjernekonfigurasjonen og kompiler kjerne på nytt om nødvendig:
File systems ---> [*] Inotify support for userspace [INOTIFY_USER] Pseudo filesystems ---> [*] Tmpfs virtual memory file system support (former shm fs) [TMPFS] [*] Tmpfs POSIX Access Control Lists [TMPFS_POSIX_ACL]
I tillegg trenger noen tester brukerområdets kryptografiske kjerne API, som er aktivert med:
-*- Cryptographic API ---> [CRYPTO] Crypto core or helper ---> <*/M> Userspace cryptographic algorithm configuration [CRYPTO_USER] Userspace interface ---> <*/M> Hash algorithms [CRYPTO_USER_API_HASH]
Installer elogind ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D man=auto \
-D docdir=/usr/share/doc/elogind-255.17 \
-D cgroup-controller=elogind \
-D dev-kvm-mode=0660 \
-D dbuspolicydir=/etc/dbus-1/system.d &&
ninja
For å teste resultatene, utsted: ninja test. Noen få tester
blir hoppet over hvis ikke kjøres med root privilegier. Tre tester,
test-login, dbus-docs-fresh, og check-version-history, er kjent for å
mislykkes.
Nå, som root bruker:
ninja install && ln -sfv libelogind.pc /usr/lib/pkgconfig/libsystemd.pc && ln -sfvn elogind /usr/include/systemd
-D
docdir=/usr/share/doc/elogind-255.17: Dette er
nødvendig for å installere dokumentasjon i en versjonert
mappe.
-D
cgroup-controller=elogind: Denne bryteren er
nødvendig for å bygge denne pakken når kjernen ikke er bygget
med CONFIG_CGROUPS aktivert.
Noter at elogind strengt
tatt trenger en kjerne med CONFIG_CGROUPS aktivert under kjøring, men
denne bryteren vil tillate å bygge pakken først.
-D
dbuspolicydir=/etc/dbus-1/system.d: Denne
bryteren angir plasseringen av D-Bus retningslinje mappen.
-D dev-kvm-mode=0660:
LFS udev-regelen setter modus for /dev/kvm til 0660. Dette alternativet
sikrer elogind udev reglene er i samsvar med LFS
konfigurasjonen.
-D man=auto:
Standardverdien for denne bryteren er false. Sette den til auto tillater å bygge og
installere manualsidene hvis de anbefalte avhengigheter er
installert.
-D html=auto: Standardverdien for
denne bryteren er false. Sette den til auto tillater å bygge og
installere html dokumentasjonen hvis de anbefalte
avhengigheter er installert.
-D
default-kill-user-processes=false: Avgjør om
prosessene til en bruker skal drepes når brukeren logger ut.
Standard er true, men
dette beseirer den tradisjonelle bruken av screen eller tmux. Dette kan også endres
i konfigurasjonsfilen (se nedenfor).
ln -s ...: Disse kommandoene installerer symbolkoblinger slik at programvarepakker kan finne det systemd kompatible biblioteket og deklarasjonene.
Den installerte filen /etc/elogind/logind.conf inneholder alle
mulige alternativer med standardinnstillingene, kommentert
ut. Det kan være lurt å deaktivere automatisk drepende
brukerprosesser når brukeren logger ut, ved å kjøre, som
root bruker:
sed -e '/\[Login\]/a KillUserProcesses=no' \
-i /etc/elogind/logind.conf
Hver bruker må registrere en brukerøkt med Linux-PAM ved pålogging. /etc/pam.d/system-session filen må endres
og en ny fil må opprettes for elogind å fungere riktig.
Kjør følgende kommandoer som root bruker:
cat >> /etc/pam.d/system-session << "EOF" &&# Begin elogind addition session required pam_loginuid.so session optional pam_elogind.so # End elogind additionEOF cat > /etc/pam.d/elogind-user << "EOF"# Begin /etc/pam.d/elogind-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_elogind.so auth required pam_deny.so password required pam_deny.so # End /etc/pam.d/elogind-userEOF
Etter ferdigstillelse av elogind, du bør sjekke at den fungerer som den skal. Sørg først for at dbus kjører. Det kan være lettest å gjøre dette ved å starte systemet på nytt. Etter å ha logget på igjen, kjør kommandoen loginctl. Resultatet bør indikere at en ØKT og et SETE har blitt opprettet.
blocaled er en implementering av org.freedesktop.locale1 D-Bus protokollen, som vanligvis leveres med systemd.Den er nødvendig for GNOME skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/blocaled/releases/download/v0.7/blocaled-0.7.tar.xz
Nedlasting MD5 sum: cb3edd8c96539fb1042b68cb63e45e12
Nedlastingsstørrelse: 269 KB
Estimert diskplass som kreves: 4.3 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Installer blocaled ved å kjøre følgende kommandoer:
./configure --prefix=/usr --sysconfdir=/etc && ./configure --prefix=/usr --sysconfdir=/etc && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
/etc/blocaled.conf inneholder
plasseringen av innstillingsfilene som brukes av
blocaled. Standarder
passer for BLFS. Informasjon om oppføringene er
tilgjengelig som kommentarer i filen.
org.freedesktop.locale1
protokoll kan ikke eksportere lokalitetsvariabler. Lokale
innstillinger lagres som standard i /etc/locale.conf. Vi må hente dem i bash
profilen. Som root bruker,
kjør:
cat > /etc/profile.d/i18n.sh << "EOF"
# Begin /etc/profile.d/i18n.sh
if [ -r /etc/locale.conf ]; then source /etc/locale.conf; fi
if [ -n "$LANG" ]; then export LANG; fi
if [ -n "$LC_TYPE" ]; then export LC_TYPE; fi
if [ -n "$LC_NUMERIC" ]; then export LC_NUMERIC; fi
if [ -n "$LC_TIME" ]; then export LC_TIME; fi
if [ -n "$LC_COLLATE" ]; then export LC_COLLATE; fi
if [ -n "$LC_MONETARY" ]; then export LC_MONETARY; fi
if [ -n "$LC_MESSAGES" ]; then export LC_MESSAGES; fi
if [ -n "$LC_PAPER" ]; then export LC_PAPER; fi
if [ -n "$LC_NAME" ]; then export LC_NAME; fi
if [ -n "$LC_ADDRESS" ]; then export LC_ADDRESS; fi
if [ -n "$LC_TELEPHONE" ]; then export LC_TELEPHONE; fi
if [ -n "$LC_MEASUREMENT" ]; then export LC_MEASUREMENT; fi
if [ -n "$LC_IDENTIFICATION" ]; then export LC_IDENTIFICATION; fi
# End /etc/profile.d/i18n.sh
EOF
Så blir /etc/locale filen
generert, som root bruker:
cat > /etc/locale.conf << EOF
# Begin /etc/locale.conf
LANG=$LANG
# End /etc/locale.conf
EOF
Hvis du planlegger å kjøre et X (eller Wayland) Window
system, kan det være lurt å sette opp X tastaturet. Den
beste måten å gjøre det på er å hente innstillinger fra
/etc/sysconfig/console, og
sende dem til blocaled
nissen. Som root bruker:
source /etc/sysconfig/console &&
KEYMAP=${KEYMAP:-us} &&
gdbus call --system \
--dest org.freedesktop.locale1 \
--object-path /org/freedesktop/locale1 \
--method org.freedesktop.locale1.SetVConsoleKeyboard \
"$KEYMAP" "$KEYMAP_CORRECTIONS" true true
Dette bør opprette eller endre Xorg konfigurasjons
filen[2] for å
matche tastaturinnstillingene som er angitt i KEYMAP.
/usr/libexec)
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.4 plattform.
Nedlasting (HTTP): http://fcron.free.fr/archives/fcron-3.4.0.src.tar.gz
Nedlasting MD5 sum: 5732a766df42a090749c0c96a6afd42b
Nedlastingsstørrelse: 608 KB
Estimert diskplass som kreves: 4.2 MB
Estimert byggetid: mindre enn 0.1 SBU
En MTA, text editor (standard er vi fra Vim-9.1.1629 pakken), Linux-PAM-1.7.1, og DocBook-utils-0.6.14
Fcron bruker cron innretningen til
syslog for å
logge alle meldinger. Siden LFS ikke setter opp denne
innretningen i /etc/syslog.conf, det må gjøres før
installeringen av Fcron.
Denne kommandoen vil legge til den nødvendig linjen til
nåværende /etc/syslog.conf
(utfør som root bruker):
cat >> /etc/syslog.conf << "EOF"
# Begin fcron addition to /etc/syslog.conf
cron.* -/var/log/cron.log
# End fcron addition
EOF
Konfigurasjonsfilen har blitt endret, så å laste inn på nytt
sysklogd nissen
vil aktivere endringene (igjen som root bruker).
/etc/rc.d/init.d/sysklogd reload
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-boot-install=no \
--with-systemdsystemunitdir=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-systemdsystemunitdir=no:
Dette hindrer bygging av systemd enhetene, som ikke er nødvendig
for et SYS V system.
--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
Installer /etc/rc.d/init.d/fcron init skriptet fra
blfs-bootscripts-20250225
pakken.
make install-fcron
Til slutt, igjen som root
bruker, start fcron og generer /var/spool/fcron/systab filen:
/etc/rc.d/init.d/fcron start && fcrontab -z -u systab
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.4 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.4/gpm-1.20.7-consolidated-1.patch
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/gpm-1.20.7-gcc15_fixes-1.patch
texlive-20250308 (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 && patch -Np1 -i ../gpm-1.20.7-gcc15_fixes-1.patch && ./autogen.sh && ./configure --prefix=/usr --sysconfdir=/etc ac_cv_path_emacs=no && make
Hvis texlive-20250308 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-20250308 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-30.2 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-30.2
innebygde GPM støtte. Hvis du trenger å bruke Emacs-30.2 i en Linux
konsoll med musestøtte, du bør installere (eller installere
på nytt) Emacs-30.2 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.
Installer /etc/rc.d/init.d/gpm init skriptet
inkludert i blfs-bootscripts-20250225
pakken.
make install-gpm
/etc/gpm-root.conf og
~/.gpm-root: Standard og
individuell bruker sin gpm-root
konfigurasjonsfiler.
/etc/sysconfig/mouse: Denne
filen inneholder navnet på museenheten og protokollen det
bruker. For å lage denne filen, kjør følgende som
root bruker:
cat > /etc/sysconfig/mouse << "EOF"
# Begin /etc/sysconfig/mouse
MDEVICE="<yourdevice>"
PROTOCOL="<yourprotocol>"
GPMOPTS="<additional options>"
# End /etc/sysconfig/mouse
EOF
Eksempler på verdier å angi MDEVICE, PROTOCOL, og GPMOPTS til å være:
MDEVICE="/dev/input/mice"
PROTOCOL="imps2"
GPMOPTS=""
En liste over hvilke protokollverdier som er kjent kan bli
funnet ved å kjøre gpm -m
[enhet] -t
-help. MDEVICE
innstillingen avhenger av hvilken type mus du har. For
eksempel, /dev/ttyS0 for en
seriell mus (på Windows er dette COM1), /dev/input/mice er ofte brukt til USB mus
og /dev/psaux for PS2 mus.
GPMOPTS er "catch all" for
eventuelle tilleggsalternativer som er nødvendige for
maskinvaren din.
|
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 |
hwdata pakken inneholder gjeldende PCI- og leverandør-ID data.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/vcrhonek/hwdata/archive/v0.398/hwdata-0.398.tar.gz
Nedlasting MD5 sum: 1ce78576cdde13f0e1953445a98bf173
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 9.8 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.4 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
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.
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.4 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)
Fcron-3.4.0 (kjøretid)
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, hvis du har installert Fcron-3.4.0 og
fullførte delen om periodiske jobber, kjør følgende
kommandoer, som root bruker,
for å opprette en daglig cron
jobb:
cat > /etc/cron.daily/logrotate.sh << "EOF" &&
#!/bin/bash
/usr/sbin/logrotate /etc/logrotate.conf
EOF
chmod 754 /etc/cron.daily/logrotate.sh
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.4 plattform.
Nedlasting (HTTP): http://ftp.midnight-commander.org/mc-4.8.33.tar.xz
Nedlasting MD5 sum: b3596c1f092b9822a6cd9c9a1aef8dde
Nedlastingsstørrelse: 2.3 MB
Estimert diskplass som kreves: 71 MB (legg til 97 MB for tester)
Estimert byggetid: 0.3 SBU (bruke parallellisme=4; legg til 0.1 SBU for tester)
Doxygen-1.14.0, GPM-1.20.7, Graphviz-13.1.2, libarchive-3.8.1, libssh2-1.11.1, pcre2-10.45, Ruby-3.4.5, et grafiske miljø, og Zip-3.0
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.45 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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/archive/1.24.2/ModemManager-1.24.2.tar.gz
Nedlasting MD5 sum: b72860c54670f362e947edba160fa98e
Nedlastingsstørrelse: 2.0 MB
Estimert diskplass som kreves: 59 MB (med tester)
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4; med tester)
elogind-255.17, GLib-2.84.4 (med GObject Introspection), libmbim-1.32.0, libqmi-1.36.0, Polkit-126, og Vala-0.56.18
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/ModemManager
Installer ModemManager ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D bash_completion=false \
-D qrtr=false \
-D systemdsystemunitdir=no &&
ninja
For å teste resultatene, utsted: ninja test.
Nå, som root bruker:
make install
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D
bash_completion=false: Bruk dette alternativet
hvis den eksterne bash-completion
pakken ikke er installert.
-D qrtr=false: Denne
bryteren deaktiverer støtte for QRTR protokollen som trenger
den eksterne
libqrtr-glib pakken.
-D
systemdsystemunitdir=no: Denne bryteren
forhindrer meson fra å lete
etter systemd enhetsmapper og feile siden de ikke er
tilgjengelig på SysV systemer.
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.4 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.50 og libcanberra-0.30 (Bygget med GTK-3.24.50 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.7.
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.4 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
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.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4/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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/upower/power-profiles-daemon/-/archive/0.30/power-profiles-daemon-0.30.tar.gz
Nedlasting MD5 sum: b72dbed7159cbeff972e9a20ddcc7388
Nedlastingsstørrelse: 84 KB
Estimert diskplass som kreves: 1.6 MB
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Polkit-126, PyGObject-3.52.3 (pycairo er ikke nødvendig), og UPower-1.90.9
GTK-Doc-1.34.0, Resten er for testene, dbusmock-0.36.0, umockdev-0.19.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 \
-D systemdsystemunitdir=/tmp \
.. &&
ninja
Hvis du har installert de eksterne avhengighetene, for å teste resultatet utsted: ninja test.
Nå, som root bruker:
ninja install
Rydd nå opp i en unødvendig systemd enhet installert i /tmp:
rm -fv /tmp/power-profiles-daemon.service
Opprett en mappe som kreves for vedvarende strømtilstander etter omstart:
install -vdm755 /var/lib/power-profiles-daemon
-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.
-D
systemdsystemunitdir=/tmp: Fjerner avhengigheten
av systemd.
For å automatisk starte power-profiles-daemon når
systemet startes på nytt, installer /etc/rc.d/init.d/power-profiles-daemon
oppstartsskript fra blfs-bootscripts-20250225
som root bruker:
make install-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
oppstartsskriptet er installert
som ovenfor.
På noen eldre systemer vil det se ut som om
power-profiles-daemon installerer og indikerer riktige
verdier, men det vil ikke fungere. For å sjekke dette,
kjør cat
/sys/devices/system/cpu/cpufreq/policy0/scaling_driver.
Hvis resultatet ikke er «intel_pstate», men i stedet
«intel_cpufreq» (eller lignende på AMD-systemer), må
endringer i strømforbruket gjøres manuelt..
For å endre strømtilstander manuelt, sjekk først hvilke
regulatorer som er tilgjengelige med: cat
/sys/devices/system/cpu/cpufreq/policy0/scaling_available_governors.
Sett deretter ønsket regulator som root bruker med:
gov=performance
for CPUFREQ in /sys/devices/system/cpu/cpufreq/policy*/scaling_governor; do
echo -n ${gov} > ${CPUFREQ}"
done
Hvis du setter scaling_governor til «ytelse», må du være forsiktig med problemer, med varme og batteri, ved langvarig bruk..
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.4 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-77.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.4 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.4 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.50.4, MariaDB-11.8.3 eller MySQL, PostgreSQL-17.6, 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.
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.4 plattform.
Nedlasting (HTTP): https://sysstat.github.io/sysstat-packages/sysstat-12.7.8.tar.xz
Nedlasting MD5 sum: 24d284b77b4f4756e628985eb174c38d
Nedlastingsstørrelse: 916 KB
Estimert diskplass som kreves: 27 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.4.0.
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
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 må en LINUX RESTART melding settes inn i
daglig datafil for å reinitialisere kjernetellerne. Dette
kan automatiseres ved å installere /etc/rc.d/init.d/sysstat initskript
inkludert i blfs-bootscripts-20250225 pakken
ved å bruke følgende kommando som root bruker:
make install-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 |
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.4 plattform.
Nedlasting (HTTP): https://github.com/storaged-project/udisks/releases/download/udisks-2.10.2/udisks-2.10.2.tar.bz2
Nedlasting MD5 sum: ccadfee0fcbb1ceeb563d69e10345386
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 51 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
libatasmart-0.19, libblockdev-3.3.1, libgudev-238, og Polkit-126
GLib-2.84.4 (med GObject Introspection)
D-Bus Python-1.4.0 (for integrasjonstestene), GTK-Doc-1.34.0, libxslt-1.1.43 (for manualsidene), LVM2-2.03.34, PyGObject-3.52.3 (for integrasjonstestene), exFAT, og libiscsi
btrfs-progs-6.16, dbus-1.16.2, dosfstools-4.2, gptfdisk-1.0.10, mdadm-4.4, og xfsprogs-6.15.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.3.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.4 plattform.
Nedlasting (HTTP): https://www.rarlab.com/rar/unrarsrc-7.1.10.tar.gz
Nedlasting MD5 sum: d9c51328fcb5d8c31d097b2baaaced00
Nedlastingsstørrelse: 264 KB
Estimert diskplass som kreves: 2.7 MB
Estimert byggetid: 0.3 SBU
Denne pakken pakker ut tarballen til den uversjonerte
mappen unrar og ikke den
forventede mappen unrar-7.1.10.
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
UPower pakken gir et grensesnitt for å telle strømenheter, lytte til enhetshendelser og spørre historie 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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/upower/upower/-/archive/v1.90.9/upower-v1.90.9.tar.bz2
Nedlasting MD5 sum: 22d4f58fb54c225de7e6a7047420bb3f
Nedlastingsstørrelse: 152 KB
Estimert diskplass som kreves: 6.0 MB (legg til 2.9 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.8 SBU for tester)
GLib-2.84.4 (med GObject Introspection)
GTK-Doc-1.34.0, libxslt-1.1.43, docbook-xsl-nons-1.79.2, PyGObject-3.52.3, dbusmock-0.36.0, umockdev-0.19.3 (for en del av testpakken), og libimobiledevice
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 \
-D systemdsystemunitdir=no \
-D udevrulesdir=/usr/lib/udev/rules.d &&
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.43 og docbook-xsl-nons-1.79.2
installert og ønsker å bygge manualsider.
-D
systemdsystemunitdir=no: Fjerner avhengigheten på
systemd.
-D
udevrulesdir=/usr/lib/udev/rules.d: Forteller
byggesystemet hvor den skal installere udev regler fordi informasjonen mangler
i /usr/lib/pkgconfig/libudev.pc
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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/which/which-2.23.tar.gz
Nedlasting MD5 sum: 1963b85914132d78373f02a84cdb3c86
Nedlastingsstørrelse: 197 KB
Estimert diskplass som kreves: 1.2 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.4 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.4 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.
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.4 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
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.4 plattform.
Nedlasting (HTTP): https://github.com/hramrach/lm-sensors/archive/V3-6-2/lm-sensors-3-6-2.tar.gz
Nedlasting MD5 sum: 44c733f509cd4a31494fd3e355152b0a
Nedlastingsstørrelse: 288 KB
Estimert diskplass som kreves: 2.7 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
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-2 &&
cp -rv README INSTALL doc/* \
/usr/share/doc/lm-sensors-3-6-2
BUILD_STATIC_LIB=0:
Denne parameteren deaktiverer kompilering og installering av
den statiske versjonen av libsensors.
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 (/etc/sensors3.conf som standard), beregner deretter vifte hastigheter fra temperaturer og setter de tilsvarende PWM utgangene 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 |
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.4 plattform.
Nedlasting (HTTP): https://mj.ucw.cz/download/linux/pci/pciutils-3.14.0.tar.gz
Nedlasting MD5 sum: f70cf2da9377cb484802e291ea60115d
Nedlastingsstørrelse: 708 KB
Estimert diskplass som kreves: 5.4 MB
Estimert byggetid: mindre enn 0.1 SBU
hwdata-0.398 (kjøretid)
Forhindre installasjon av pci.ids filen for å unngå konflikt med
hwdata-0.398 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.398 pakken for pci.ids filen.
SHARED=yes: Denne
parameteren aktiverer bygging av det delte biblioteket i
stedet for det statiske.
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.4 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 |
sysmond pakke (uttales sys-mon-d) er daemondelen av sysmond/sysmon3 klient/server-applikasjon som overvåker systemverdier inkludert CPU bruk, minnebruk og systemtemperaturer i et kompakt skjermvindu.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/sysmond/releases/download/sysmond-1.0.0/sysmond-1.0.0.tar.xz
Nedlasting MD5 sum: ef7bf090b835c3265e9b602b4a297fcd
Nedlastingsstørrelse: 22 KB
Estimert diskplass som kreves: 196 KB
Estimert byggetid: less than 0.1 SBU
Det er mange forskjellige maskinvareenheter som registrerer temperaturer. Temperaturavlesningene oppdateres av kjernedrivere som støtter spesifikke enheter. For å finne ut hvilke enheter som finnes på et system lm-sensors-3-6-2 pakken har et Perl skript, sensors-detect som kan se etter spesifikke enheter som er i gjeldende system.
Etter at sensorenheter er kjent, må den aktuelle kjernedriveren være aktivert. I mange saker, men ikke alle, de riktige driverene er valgt som standard. Kjernens konfigurasjonsparametere ligger på:
Device Drivers ---> Networking options ---> [*] Hardware Monitoring support ---> [CONFIG_HWMON]
I de fleste tilfeller minst Intel Core/Core2/Atom temperatursensor (SENSORS_CORETEMP) bør være aktivert for Intel baserte systemer eller CONFIG_SENSORS_K10TEMP (AMD) bør være aktivert for AMD baserte systemer.
Installer sysmond ved å kjøre følgende kommandoer:
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
Installer /etc/rc.d/init.d/sysmond init skriptet
inkludert i blfs-bootscripts-20250225
pakken.
make install-sysmond
sysmon3 pakke (uttales sys-mon-3) er klientdelen av sysmond/sysmon3 klient/serverapplikasjonen som overvåker systemverdier inkludert CPU-bruk, minnebruk og systemtemperaturer i et kompakt skjermvindu. Flere forekomster av sysmon3 kan bli kjørt på et system for å overvåke verdier på forskjellige systemer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/sysmon3/releases/download/sysmon3-3.0.1/sysmon3-3.0.1.tar.xz
Nedlasting MD5 sum: d1f4cb9490c2c068ee2e2b3bd23db1ea
Nedlastingsstørrelse: 32 KB
Estimert diskplass som kreves: 1.3 MB
Estimert byggetid: 0.3 SBU
Qt-6.9.2 (eller qt5)
sysmond-1.0.0 (kjøretid på systemet som skal overvåkes)
Installer sysmon3 ved å kjøre følgende kommandoer:
qmake sysmon3.pro && make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
install -vm755 sysmon3 /usr/bin
$HOME/.config/LinuxFromScratch/<monitored
system>.conf
Konfigurasjonsfilene opprettes ved kjøretid for hvert system som overvåkes. De oppdateres vanligvis ikke manuelt, men administreres av programmets konfigurasjonswidgeter.
Ved første kjøring ber programmet om at systemet skal overvåkes. Etter testing at kommunikasjonen til serveren er tilfredsstillende og servernavnet er lagret, vil hovedvinduet starte. Etter første oppsett kan oppsett-widgeten omgås ved å sende servernavnet som et argument til programmet.
Programmet er designet for å ta opp minimal skjermplass, så som standard har den ikke ramme. Rammen kan slås av og på med Ctrl-F. Dette kan være nyttig for å plassere vinduet på ønsket sted. Etter første plassering lagres plasseringen i konfigurasjonsfilen for neste gang programmet startes.
En kort operasjonsmeny hentes frem med et høyreklikk på hovedvinduet. Konfigurasjonswidgeter briges opp med F1.
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.4 plattform.
Nedlasting (HTTP): https://kernel.org/pub/linux/utils/usb/usbutils/usbutils-018.tar.xz
Nedlasting MD5 sum: 0a351e2241c50a1f026a455dccf24d73
Nedlastingsstørrelse: 120 KB
Estimert diskplass som kreves: 1.9 MB
Estimert byggetid: mindre enn 0.1 SBU
hwdata-0.398 (kjøretid)
Installer USB 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
For usb.ids datafiler,
installer hwdata-0.398 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 |
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.
cargo-c pakken skaper en cargo underkommando for å bygge og installere C-ABI kompatible dynamiske og statiske biblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/lu-zero/cargo-c/archive/v0.10.15/cargo-c-0.10.15.tar.gz
Nedlasting MD5 sum: 082c8d0028ccb1c4c2dacb1d9a44ed6e
Nedlastingsstørrelse: 35 KB
Estimert diskplass som kreves: 827 MB
Estimert byggetid: 0.7 SBU
libssh2-1.11.1 og SQLite-3.50.4
En Internett tilkobling er nødvendig for å bygge denne pakken. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger denne pakken.
Først laster du ned en fil for å sikre at cargo bruker avhengighetsversjonene spesifisert av oppstrømsutviklerne når denne cargo-c versjonen (0.10.15) ble utgitt. Uten dette vil de nyeste versjonene av avhengighetene bli brukt og de kan forårsake brudd:
curl -fLO https://github.com/lu-zero/cargo-c/releases/download/v0.10.15/Cargo.lock
Normalt ville vi lagt en slik nedlasting inn i «Ytterligere
Nedlastinger» seksjonen. Men i dette
tilfellet kan vi ikke finne pakkenavnet og versjonen fra
filnavnet Cargo.lock, så det
er bedre å ikke sette tvetydig navngitt fil utenfor
cargo-c-0.10.15 mappen. Vi
bruker curl
her fordi cURL-8.15.0 pakken burde vært installert
som en nødvendig avhengighet av rustc-1.89.0.
md5sum til filen skal være 57fab87782a5f9ef46fcbddc44d425b1.
Installer cargo-c 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 && cargo build --release
For å teste resultatene, utsted: cargo test --release.
Nå, som root bruker:
install -vm755 target/release/cargo-{capi,cbuild,cinstall,ctest} /usr/bin/
Til slutt, deaktiver de eksporterte miljøvariablene:
unset LIB{SSH2,SQLITE3}_SYS_USE_PKG_CONFIG
Cbindgen kan brukes til å generere C bindinger for Rust kode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/mozilla/cbindgen/archive/v0.29.0/cbindgen-0.29.0.tar.gz
Nedlasting MD5 sum: 6020b670f82890ef7205fd2c84395954
Nedlastingsstørrelse: 236 KB
Estimert diskplass som kreves: 123 MB (legg til 576 MB for tester)
Estimert byggetid: 0.4 SBU (legg til 0.2 SB for tester), begge på en 4-kjerne maskin
En Internett tilkobling er nødvendig for å bygge denne pakken. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger 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.89.0
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 har ikke hatt en «stable» utgivelse siden 2010. Pakken her ble opprettet fra upstream git repository for å gjøre det mulig å bygge den med gcc-15. Den siste commiten var mai 2025.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/clisp/clisp-2.49.95.tar.xz
Nedlasting MD5 sum: e3b3ba6b3432280e4d4a766404f02d6f
Nedlastingsstørrelse: 7.1 MB
Estimert diskplass som kreves: 146 MB (med tester; 34 MB installert)
Estimert byggetid: 0.6 SBU (Bruker parallellisme=4; legg til 0.3 SBU for tester)
Installer Clisp ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
../configure --srcdir=../ \
--prefix=/usr \
--docdir=/usr/share/doc/clisp-2.49.95 &&
make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install
--docdir=/usr/share/doc/clisp-2.49.95:
denne bryteren tvinger HTML dokumentasjonen til å bli
installert i en versjonert mappe.
--with-libffcall-prefix=/usr:
bruk dette til å fortelle configure at du har
installert valgfrie libffcall
pakken.
/usr/lib/clisp-2.49.95+/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.4 plattform.
Nedlasting (HTTP): https://cmake.org/files/v4.1/cmake-4.1.0.tar.gz
Nedlasting MD5 sum: 80ae27faba5068c8ec12c77bf00e6db3
Nedlastingsstørrelse: 11 MB
Estimert diskplass som kreves: 621 MB (legg til 1.4 GB for tester)
Estimert byggetid: 2.6 SBU (legg til 4.3 SBU for tester, begge med parallellisme=4)
cURL-8.15.0, libarchive-3.8.1, libuv-1.51.0, og nghttp2-1.66.0
GCC-15.2.0 (for gfortran), git-2.50.1 (for bruk under tester), mercurial-7.1 (for bruk under tester), OpenJDK-24.0.2 (for bruk under tester), Qt-6.9.2 (for Qt basert GUI), sphinx-8.2.3 (for byggedokumenter), Subversion-1.14.5 (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-4.1.0 &&
make
For å teste resultatene, utsted: bin/ctest -j$(nproc).
Erstatt $(nproc)
med et heltall mellom 1 og antall logiske systemkjerner hvis
du ikke vil bruke alle.
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.4 plattform.
Nedlasting (HTTP): https://doxygen.nl/files/doxygen-1.14.0.src.tar.gz
Nedlasting MD5 sum: a86f6c0203e51a57fbcaf98830d1be16
Nedlastingsstørrelse: 8.3 MB
Estimert diskplass som kreves: 256 MB (med tester)
Estimert byggetid: 1.3 SBU (med tester; begge bruker parallellisme=4)
Qt-6.9.2 (for doxywizard)
Graphviz-13.1.2, ghostscript-10.05.1, libxml2-2.14.5 (påkrevd for testene), LLVM-20.1.8 (med clang), texlive-20250308 (eller install-tl-unx), xapian-1.4.29 (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-20250308 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.14.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-20250308 installert. Hvis du trenger formler for å konvertere PostScript filer til punktgrafikk, da du må ha ghostscript-10.05.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.4 plattform.
Nedlasting (HTTP): https://kernel.org/pub/software/utils/dtc/dtc-1.7.2.tar.xz
Nedlasting MD5 sum: 0f193be84172556027da22d4fe3464e0
Nedlastingsstørrelse: 168 KB
Estimert diskplass som kreves: 13 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
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: CC='gcc -Wl,-z,noexecstack' 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-20250308 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.2
Hvis du har installert SWIG-4.3.1 og du ønsker å installere Python 3 bindinger 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-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.
CC='gcc -Wl,-z,noexecstack': Denne
variabelen forhindrer å merke de delte bibliotekene i
testpakken som å kreve kjørbar stabel. Glibc 2.41 eller nyere
har sluttet å tillate dlopen et
slikt delt bibliotek så testpakken vil mislykkes. Men de
delte bibliotekene trenger egentlig ikke en kjørbar stabel,
slik at vi kan bruke -Wl,-z,noexecstack for å fikse
testpakken. Det trengs i CC
miljøet for meson
test fordi de delte bibliotekene er bygget av
et testskript i stedet for meson/ninja byggesystem, og
testskriptet gjenkjenner ikke andre «vanlige»
miljøvariabler som LDFLAGS.
|
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 enhetstrær |
|
|
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 COBOL, D og Ada, er
tilgjengelige i samlingen. COBOL støttes for øyeblikket
bare på x86-64-systemer. D og Ada har et krav om binær
bootstrap for den første installasjon, så deres
installasjon er ikke beskrevet her. For å installere D
eller Ada, kan du fortsette på samme måte som nedenfor
etter installasjonen av den tilsvarende kompilatoren fra en
binær pakke, til slutt legg til ada eller d
eller cobol til --enable-languages linjen
etter ønske.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Hvis du oppgraderer GCC fra en versjon før 15.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-15.2.0/gcc-15.2.0.tar.xz
Nedlasting MD5 sum: b861b092bf1af683c46a8aa2e689a6fd
Nedlastingsstørrelse: 96 MB
Estimert diskplass som kreves: 12 GB (3.8 GB installert med alle oppførte språk; legg til 2 GB for tester)
Estimert byggetid: 16 SBU (legg til 33 SBU for tester; begge med parallellitet=8)
GDB-16.3, Graphviz-13.1.2 (noen tester bruker den hvis den er installert; noter at hvis den er installert, men ikke bygget med libpng-1.6.50 disse testene vil mislykkes), Valgrind-3.25.1 (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.4/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:
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-15.2.0, oppstår omtrent 69 FAIL i «guality» pakken, samt diverse feil gjennom resten av testpakken. Hvis alle kompilatorene ovenfor er bygget, vil det være omtrent 107 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/15.2.0/include{,-fixed} &&
ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/15.2.0/liblto_plugin.so \
/usr/lib/bfd-plugins/
Nå bør du oppgradere readline til 8.3-rc1 eller nyere i henhold til LFS boken, ellers kan det hende at pakker som bruker readline ikke klarer å bygge.
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.4 plattform.
Nedlasting (HTTP): https://github.com/ivmai/bdwgc/releases/download/v8.2.8/gc-8.2.8.tar.gz
Nedlasting MD5 sum: ad7298be1a300fc0ce75196718036c61
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 9.3 MB (med tester)
Estimert byggetid: 0.1 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.8 &&
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.8:
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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/gdb/gdb-16.3.tar.xz
Nedlasting MD5 sum: f7a7e2d0a6d28622ac69a3623b23876b
Nedlastingsstørrelse: 23 MB
Estimert diskplass som kreves: 853 MB (legg til 825 MB for dokumenter; legg til 860 MB for tester)
Estimert byggetid: 1.1 SBU (legg til 1.0 SBU for dokumenter; legg til 3.5 SBU tester; alle bruker parallellisme=8)
six-1.17.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.14.0, GCC-15.2.0 (ada, gfortran, og go er brukt for tester), Guile-3.0.10, rustc-1.89.0 (brukt for noen tester), Valgrind-3.25.1, 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-system-zlib \
--with-python=/usr/bin/python3 &&
make
Eventuelt for å bygge API dokumentasjonen ved hjelp av Doxygen-1.14.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" 14 uventede feil. Tiden for å kjøre testene varierer fra ca. 3 SBU til over 15 SBU ved bruk av -j8. Dette avhenger av 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. Noen ganger kan bruk av parallellitet imidlertid føre til merkelige feil.
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 kan også avhenge av installert kompilatorer.
På noen AMD baserte systemer, over 200 ekstra tester kan mislykkes på grunn av en forskjell i trådimplementeringen på disse CPUene.
For gdb-16.1, ved bruk av en Xeon E5-1650 v3, var det 14 uventede feil av over 120000 tester.
Fire tester i gdb.base/step-over-syscall.exp pakken
er kjent for å mislykkes på grunn av endringer i Linux
6.13 og glibc-2.41.
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-16.3 && rm -rf gdb/doc/doxy/xml && cp -Rv gdb/doc/doxy /usr/share/doc/gdb-16.3
--with-system-readline: Denne
bryteren tvinger GDB å bruke
kopien av Readline
installert i LFS.
--with-system-zlib:
Denne bryteren tvinger GDB å
bruke kopien av Zlib
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. |
|
|
skriver ut en stabelsporing fra et program som kjører for øyeblikket |
|
|
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-7.1, Bazaar, Subversion-1.14.5, CVS, Perforce, og Team Foundation Server.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/software/scm/git/git-2.50.1.tar.xz
Nedlasting MD5 sum: 2cb96fae126d66f8ff23a68f8dd5d748
Nedlastingsstørrelse: 7.5 MB
Estimert diskplass som kreves: 453 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 1.0 SBU for å bygge dokumenter, og opptil 7 SBU (avhengig av diskhastighet) for tester)
https://www.kernel.org/pub/software/scm/git/git-manpages-2.50.1.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.50.1.tar.xz og andre dokumenter (ikke nødvendig hvis du har installert asciidoc-10.2.1 og ønsker å gjenoppbygge dokumentasjonen).
cURL-8.15.0 (nødvendig for å bruke Git over http, https, ftp eller ftps)
Apache-2.4.65 (for noen tester), Fcron-3.4.0 (kjøretid, for planlegging av git maintenance jobber), GnuPG-2.4.8 (kjøretid, kan brukes til å signere Git utførelser eller tagger, eller verifisere signaturene av dem), OpenSSH-10.0p1 (kjøretid, nødvendig for å bruke Git over ssh), pcre2-10.45, Subversion-1.14.5 med Perl bindinger (kjøretid, for git svn), Tk-8.6.16 (gitk, en enkel Git arkivvisningsprogram, bruker Tk ved kjøretid), Valgrind-3.25.1, Authen::SASL (kjøretid, for git send-email), og IO-Socket-SSL-2.095 (kjøretid, for git send-email for å koble til en SMTP server med SSL kryptering)
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: GIT_UNZIP=nonexist make test -k |& tee
test.log. GIT_UNZIP innstillingen forhindrer testpakken
fra å bruke unzip, vi trenger det fordi
i BLFS unzip er
en symbolkobling til bsdunzip som ikke
tilfredsstiller forutsetningen i enkelte testtilfeller. Hvis
noen testtilfeller 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.42/site_perl install
Installer mansidene som root
bruker:
make install-man
Installer html dokumentene som root bruker:
make htmldir=/usr/share/doc/git-2.50.1 install-html
Hvis du lastet ned mansidene, untar dem som root bruker:
tar -xf ../git-manpages-2.50.1.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.50.1 &&
tar -xf ../git-htmldocs-2.50.1.tar.xz \
-C /usr/share/doc/git-2.50.1 --no-same-owner --no-overwrite-dir &&
find /usr/share/doc/git-2.50.1 -type d -exec chmod 755 {} \; &&
find /usr/share/doc/git-2.50.1 -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.50.1/man-pages/{html,text} &&
mv /usr/share/doc/git-2.50.1/{git*.adoc,man-pages/text} &&
mv /usr/share/doc/git-2.50.1/{git*.,index.,man-pages/}html &&
mkdir -vp /usr/share/doc/git-2.50.1/technical/{html,text} &&
mv /usr/share/doc/git-2.50.1/technical/{*.adoc,text} &&
mv /usr/share/doc/git-2.50.1/technical/{*.,}html &&
mkdir -vp /usr/share/doc/git-2.50.1/howto/{html,text} &&
mv /usr/share/doc/git-2.50.1/howto/{*.adoc,text} &&
mv /usr/share/doc/git-2.50.1/howto/{*.,}html &&
sed -i '/^<a href=/s|howto/|&html/|' /usr/share/doc/git-2.50.1/howto-index.html &&
sed -i '/^\* link:/s|howto/|&html/|' /usr/share/doc/git-2.50.1/howto-index.adoc
--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.50.1.tar.gz -C /usr/share/man
--no-same-owner: Dette untarer git-manpages-2.50.1.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.50.1 ...: 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.16) |
|
|
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 oppstartskriptet inkludert i blfs-bootscripts-20250225 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
Skriptet for å starte git nissen bruker noen
standardverdier internt. Det viktigste er veien til
depotmappen som er satt til /srv/git. I tilfelle du av en eller annen
grunn har opprettet depotet i en annen plassering, må du
fortelle oppstartsskriptet hvor depot er å finne. Dette kan
oppnås ved å lage en konfigurasjonsfilen navngitt
/etc/sysconfig/git-daemon.
Denne konfigurasjonsfilen vil bli importert hvis den
eksisterer, noe som betyr at den er det valgfri. Filen kan
se ut som:
# Begin /etc/sysconfig/git-daemon # Specify the location of the git repository GIT_BASE_DIR="/srv/git/" # Directories added to whitelist DFT_REPO_DIR="$GIT_BASE_DIR" # Add extra options which will appended to the 'git daemon' # command executed in the boot script GIT_DAEMON_OPTS="" # End /etc/sysconfig/git-daemon
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.4 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)
Påkrevd oppdatering på 32-bit systemer: https://www.linuxfromscratch.org/patches/blfs/12.4/guile-3.0.10-32bit_fixes-1.patch
Emacs-30.2 og GDB-16.3 (kun kjøretids avhengighet).
Først, hvis du bruker et 32-biters system, må du fikse en byggefeil.:
case $(uname -m) in
i?86) patch -Np1 -i ../guile-3.0.10-32bit_fixes-1.patch ;;
esac
Installer Guile ved å kjøre følgende kommandoer:
CC="gcc -std=gnu17" \
./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øykjede teknologier. Lavnivå virtuell 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.4 plattform.
Nedlasting (HTTP): https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/llvm-20.1.8.src.tar.xz
Nedlasting MD5 sum: 78040509eb91309b4ec2edfe12cd20d8
Nedlastingsstørrelse: 70 MB
Estimert diskplass som kreves: 4.7 GB (1.1 GB installert; legg til 23 GB for tester og 2.3 GB for dokumentasjon)
Estimert byggetid: 13 SBU (Legg til 19 SBU for tester; begge bruker parallellisme=8)
Cmake moduler for LLVM
Nedlasting: https://anduin.linuxfromscratch.org/BLFS/llvm/llvm-cmake-20.1.8.src.tar.xz
Nedlasting MD5 sum: 5bfb8f4b4a2b3ccffca0d2406e4cdcc6
Nedlastingsstørrelse: 8.5 KB
Tredjepartsavhengigheter for LLVM byggesystemet
Nedlasting: https://anduin.linuxfromscratch.org/BLFS/llvm/llvm-third-party-20.1.8.src.tar.xz
Nedlasting MD5 sum: 2ffd8624b3cbddf55a4e74a7d8ea89fa
Nedlastingsstørrelse: 444 KB
Clang
Nedlasting: https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/clang-20.1.8.src.tar.xz
Nedlasting MD5 sum: 62a0500bb932868061607cde0c01f584
Nedlastingsstørrelse: 23 MB
Compiler RT
Nedlasting: https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/compiler-rt-20.1.8.src.tar.xz
Nedlasting MD5 sum: 3869861662d173ca8303b9f1524d1e91
Nedlastingsstørrelse: 2.5 MB
Doxygen-1.14.0, git-2.50.1, Graphviz-13.1.2, libunwind-1.8.2, libxml2-2.14.5, psutil-7.0.0 (for tester), Pygments-2.19.2, PyYAML-6.0.2 (for tester), rsync-3.4.1 (for tester), sphinx-8.2.3, texlive-20250308 (eller install-tl-unx), Valgrind-3.25.1, Zip-3.0, myst-parser (for bygging av dokumentasjonen), OCaml, og Z3
To ekstra tarballer llvm-cmake-20.1.8.src.tar.xz og
llvm-third-party-20.1.8.src.tar.xz
er nødvendig for LLVM byggesystemet. Oppstrøms forventer at
de pakkes ut på samme nivå som llvm-20.1.8.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-20.1.8.src
hierarkiet:
tar -xf ../llvm-cmake-20.1.8.src.tar.xz &&
tar -xf ../llvm-third-party-20.1.8.src.tar.xz &&
sed '/LLVM_COMMON_CMAKE_UTILS/s@../cmake@cmake-20.1.8.src@' \
-i CMakeLists.txt &&
sed '/LLVM_THIRD_PARTY_DIR/s@../third-party@third-party-20.1.8.src@' \
-i cmake/modules/HandleLLVMOptions.cmake
Disse to tarballene trekkes ut i mapper navngitt
cmake-20.1.8.src og
third-party-20.1.8.src, dvs.
mappenavnene mangler llvm-
prefikset.
Installer clang inn i kildetreet ved å kjøre følgende kommandoer:
tar -xf ../clang-20.1.8.src.tar.xz -C tools && mv tools/clang-20.1.8.src tools/clang
Hvis du har lastet ned compiler-rt, installer den i kildetreet ved å kjøre følgende kommandoer:
tar -xf ../compiler-rt-20.1.8.src.tar.xz -C projects && mv projects/compiler-rt-20.1.8.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.13.7. 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.89.0):
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 testpakken og du har lastet ned
compiler-rt, omgå et problem som forårsaker testfeil når du
bygger LLVM med GCC og -D
CLANG_CONFIG_FILE_SYSTEM_DIR og hindre at noen
testserier bruker ld.gold som LFS Binutils
pakken ikke gir lenger:
sed -e 's/config.has_no_default_config_flag/True/' \
-e 's/"-fuse-ld=gold"//'
-i ../projects/compiler-rt/test/lit.common.cfg.py
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, utsted:
sh -c 'ulimit -c 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 ( les
«Bruk
Linux Control Group for å begrense ressursbruken» for
detaljer) for å begrense antall logiske kjerner for å kjøre
testene. 23 cfi tester er kjent for å mislykkes fordi deres
antagelse om linker er ikke sant med BFD linkeren, og vi har
måttet stoppe dem fra å bruke den fjernede Gold linkeren. En
test navngitt DataFlowSanitizer-x86_64
:: atomic.cpp er kjent for å mislykkes med gcc-15.1
eller nyere. En test navngitt SanitizerCommon-asan-x86_64-Linux ::
onprint.cpp er kjent for å feile fordi unwinderen i
sanitizeren er avhengig av rammepekeren som
standardkonfigurasjonen til Glibc ikke aktiverer. 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, 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-20.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-25.1.8.
-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=ON -D
LLVM_ENABLE_DOCS=ON: Aktiverer generering av søkbar
HTML dokumentasjon hvis du har installert Doxygen-1.14.0.
Dokumentasjonen blir bygget på slutten av byggeprosessen.
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-15.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 å 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.50.1) |
|
|
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.4 plattform.
Nedlasting (HTTP): https://www.lua.org/ftp/lua-5.4.8.tar.gz
Nedlasting MD5 sum: 81cf5265b8634967d8a7480d238168ce
Nedlastingsstørrelse: 368 KB
Estimert diskplass som kreves: 3.7 MB (med Basis tester)
Estimert byggetid: mindre enn 0.1 SBU (med Basis tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/lua-5.4.8-shared_library-1.patch
Valgfri Testpakke Nedlasting (HTTP): https://www.lua.org/tests/lua-5.4.8-tests.tar.gz
Valgfri Testpakke Nedlasting MD5 sum: eafc6cebee86ce2e931b2c2f335de18e
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.8
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.8-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.8" \
install &&
mkdir -pv /usr/share/doc/lua-5.4.8 &&
cp -v doc/*.{html,css,gif,png} /usr/share/doc/lua-5.4.8 &&
install -v -m644 -D lua.pc /usr/lib/pkgconfig/lua.pc
Her beskriver vi kun "Grunntestene". Untar tarballen og endre
til lua-5.4.8-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".
luajit pakken inneholder en Just-In-Time kompilator for Lua. Det brukes ofte som skriptmiddelvare, og det gir høy ytelse samtidig som den har et lavt minneavtrykk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/luajit/luajit-20250816.tar.xz
Nedlasting MD5 sum: 14480377a512931b3cc47297905f893d
Nedlastingsstørrelse: 728 KB
Estimert diskplass som kreves: 9.8 MB
Estimert byggetid: 0.2 SBU
Installer luajit ved å kjøre følgende kommandoer:
make PREFIX=/usr amalg
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make PREFIX=/usr install && rm -v /usr/lib/libluajit-5.1.a
amalg: Dette sikrer
en sammenslått konstruksjon, dvs. LuaJIT kjernen er kompilert
som en enorm C fil, noe som tillater GCC å generere raskere
og kortere kode.
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.4 plattform.
Nedlasting (HTTP): https://www.mercurial-scm.org/release/mercurial-7.1.tar.gz
Nedlasting MD5 sum: 885a2a5ff89e78f066ec80b1ede5b314
Nedlastingsstørrelse: 8.6 MB
Estimert diskplass som kreves: 125 MB (med dokumenter, legg til 32 MB for tester)
Estimert byggetid: 0.3 SBU (med dokumenter, legg til 23 SBU for tester; begge bruker parallellisme=4)
build-1.3.0, docutils-0.21.2
(nødvendig for å bygge dokumentasjonen), git-2.50.1, OpenSSH-10.0p1 (kjøretid, for å få
tilgang til ssh://... depoter), Pygments-2.19.2,
rustc-1.89.0 (se rust/README.rst og rust/rhg/README.md), Subversion-1.14.5
(med Python bindinger), CVS, pyflakes, og
re2
Mercurial er bygget og
installert i en enkelt kommando som root bruker:
make PREFIX=/usr install
Dokumentasjonen er bygget av kommandoen ovenfor (i man- og
html-formater), men bare man sidene er installert. Hvis du
ønsker å installere html dokumentasjon, utsted som
root bruker:
mkdir /usr/share/doc/mercurial-7.1 && cp -R doc/html /usr/share/doc/mercurial-7.1
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 '151,154d' Makefile
For å kjøre testpakken, utsted:
TESTFLAGS="-j<N> --with-hg /usr/bin/hg" make check
hvor <N> er
et heltall mellom én og antall ( prosessor X tråder ),
inkludert (standard er totalt antall prosessorer som
returnert av nproc). 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.
For å undersøke eventuelle tilsynelatende mislykkede tester,
kan du bruke run-tests.py skriptet i
tests mappen. For å se nesten
førti brytere, 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 --with-hg /usr/bin/hg test-import.t
popd
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.
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.16.1 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/P/PH/PHRED/Archive-Zip-1.68.tar.gz
Nedlasting MD5 sum: a33993309322164867c99e04a4000ee3
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.4 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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/B/BR/BRIANDFOY/Business-ISBN-3.012.tar.gz
Nedlasting MD5 sum: 6b541a4cb26a184efa22c40767c110a1
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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/B/BR/BRIANDFOY/Business-ISMN-1.205.tar.gz
Nedlasting MD5 sum: b35f42bdaeb2fd797c51bb0821ffc906
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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/B/BR/BRIANDFOY/Business-ISSN-1.008.tar.gz
Nedlasting MD5 sum: 967e79eff741c8710d70c64fb593eda1
Class::Accessor genererer accessorer/mutatorer for klassen din.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 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.4 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.4 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.4 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.4 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.4 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.4 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.4 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.4 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.4 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.4 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-7.00 (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.4 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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/S/SU/SULLR/IO-Socket-SSL-2.095.tar.gz
Nedlasting MD5 sum: 0d78acc73c9e65a072a0c8fbb5ec7a47
make-ca-1.16.1 og Net-SSLeay-1.94
URI-5.32 (for å få tilgang til internasjonale domenenavn)
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
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.4 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/libwww-perl-6.79.tar.gz
Nedlasting MD5 sum: cc91563975e3c27f2cd7a750fa6f4126
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.32 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.4 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.4 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.4 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.79). 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.4 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.095, libwww-perl-6.79, og make-ca-1.16.1 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.4 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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/N/NL/NLNETLABS/Net-DNS-1.52.tar.gz
Nedlasting MD5 sum: 49140ed8289205ad4df536952cd60b5e
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.4 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.4 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.4 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.4 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.4 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/D/DC/DCANTRELL/Test-Differences-0.72.tar.gz
Nedlasting MD5 sum: 348ac35809a53290ac05cf0f18f673fa
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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/A/AM/AMBS/Text-BibTeX-0.91.tar.gz
Nedlasting MD5 sum: 437862f801cfb7598dff52aa4ff7d888
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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/I/IS/ISHIGAKI/Text-CSV-2.06.tar.gz
Nedlasting MD5 sum: 620284340dfd1787c89666d22adfd463
Text-CSV_XS-1.61 (påkrevd av biber-2.21)
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.4 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.21 og du trenger ikke å installere denne modulen på nytt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.25.0 (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.4 plattform.
Nedlasting (HTTP): https://www.cpan.org/authors/id/O/OA/OALDERS/URI-5.32.tar.gz
Nedlasting MD5 sum: 56aa2bc3efb180eceb4c143378ab4327
Test-Fatal-0.017, Test-Needs-0.002010, og Test-Warnings-0.038
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.4 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.43
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 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.17p2 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Alien-Build-2.84.tar.gz
Nedlasting MD5 sum: 531c4d1ea1274e2fafd7e61df60f9099
Capture-Tiny-0.50, 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.4 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.14.5.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/P/PL/PLICEASE/Alien-Libxml2-0.20.tar.gz
Nedlasting MD5 sum: c19b4fdf1e4670f035a0971413a56424
Alien-Build-Plugin-Download-GitLab-0.01, libxml2-2.14.5, og Path-Tiny-0.150
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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/B/BR/BRIANDFOY/Business-ISBN-Data-20250815.001.tar.gz
Nedlasting MD5 sum: 91bddf4c01183b189ca2e7f7036eca29
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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Capture-Tiny-0.50.tar.gz
Nedlasting MD5 sum: 92c96fdff1b972a663cc2b3e206ca853
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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RS/RSHERER/Class-Data-Inheritable-0.10.tar.gz
Nedlasting MD5 sum: 6bec8f4663a83972af60bd8e71a06f64
Class::Inspector lar deg få informasjon om en lastet klasse.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC/Clone-0.47.tar.gz
Nedlasting MD5 sum: 62ff032a4df0c4abb74f76adf519361e
Clone:PP kopierer Perl datatyper rekursivt, noe som muliggjør en dyp kopiering av en gitt Perl datastruktur.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/N/NE/NEILB/Clone-PP-1.08.tar.gz
Nedlasting MD5 sum: fix-me-please-editor-0cc7774186c
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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-1.66.tar.gz
Nedlasting MD5 sum: 525b43ebad148a24783c971aa198559c
DateTime-Locale-1.45 og DateTime-TimeZone-2.65
CPAN-Meta-Check-0.018, Test-Fatal-0.017, Test-Warnings-0.038 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.4 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.66.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-Locale-1.45.tar.gz
Nedlasting MD5 sum: 0ba952412b4e013dd42894625ddb3c20
Dist-CheckConflicts-0.11, File-ShareDir-1.118, namespace-autoclean-0.31 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/DateTime-TimeZone-2.65.tar.gz
Nedlasting MD5 sum: f43687ebc288a9976b57063728a565bc
Class-Singleton-1.6, Module-Runtime-0.018, og Params-ValidationCompiler-0.31
Begge Test-Fatal-0.017 og Test-Requires-0.11, men bare hvis en kopi av DateTime-1.66 (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.4 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.4 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.4 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.4 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/A/AM/AMBS/ExtUtils-LibBuilder-0.09.tar.gz
Nedlasting MD5 sum: 16115f941df504f65b0f94b7f29e8fbc
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.4 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.50, File-Which-1.27, Path-Tiny-0.150, og Test-Simple-1.302214
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.4 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.4 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.150, Test-Deep-1.205, Test-Fatal-0.017, Test-File-1.995, og Test-Warnings-0.038
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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RC/RCLAMP/File-Find-Rule-0.35.tar.gz
Nedlasting MD5 sum: a4820609e21b6b85dba26d9e94523d0a
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.4 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.4 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.4 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.4 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.4 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.79) objekt vet om.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/O/OA/OALDERS/HTTP-Message-7.00.tar.gz
Nedlasting MD5 sum: 01b29ce55d79a774420bc768bb905354
Clone-0.47, Encode-Locale-1.05, HTTP-Date-6.06, IO-HTML-1.004, LWP-MediaTypes-6.04, og URI-5.32
HTTP::Negotiate gir en komplett implementering av HTTP innholdets forhandlingsalgoritme.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 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.4 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.4 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/O/OA/OALDERS/LWP-MediaTypes-6.04.tar.gz
Nedlasting MD5 sum: 84b799a90c0d2ce52897a7cb4c0478d0
MIME::Base32 er for Koding/dekoding av data.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RE/REHSACK/MIME-Base32-1.303.tar.gz
Nedlasting MD5 sum: 0c7735fa09e74c7f2ec93d1890b8c6c0
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.4 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.21)
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.4 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.018 og Try-Tiny-0.32
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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/H/HA/HAARG/Module-Runtime-0.018.tar.gz
Nedlasting MD5 sum: 455eedb62183b9d9e437c59c375c1054
"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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/namespace-autoclean-0.31.tar.gz
Nedlasting MD5 sum: abd25263af155ab70bf7a039247400d3
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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/C/CH/CHRISN/Net-SSLeay-1.94.tar.gz
Nedlasting MD5 sum: 1b22c764e5a094c6261e37a4b1f148ce
En test navngitt 32_x509_get_cert_info.t er kjent for å
feile med OpenSSL-3.4.0 eller senere. 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 || true
Nå, som root bruker:
make install
yes '': Perl vil spørre om du ønsker å kjøre eksterne tester, som vil mislykkes hvis du ikke har nettverkstilkobling. Standard er 'n', hvis du spesifiserer dette, kan du skripte bygget.
|| true: Når du kjører et skript som avsluttes ved feil, forhindrer dette stopp på grunn av kjente testfeil.
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.4 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.4 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.4 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.4 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.52
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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.150.tar.gz
Nedlasting MD5 sum: 7126ad3d5c14a32a5f4bde0054f57449
Role::Tiny er et minimalistisk rollekomposisjonsverktøy.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/Specio-0.52.tar.gz
Nedlasting MD5 sum: c16c71c98ff007aac9ce0b88509f146f
Devel-StackTrace-2.05, Eval-Closure-0.14, Module-Runtime-0.018, Role-Tiny-2.002004, Sub-Quote-2.006008, og Try-Tiny-0.32
MRO-Compat-0.15, Test-Fatal-0.017, og Test-Needs-0.002010
namespace-autoclean-0.31 (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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/F/FR/FREW/Sub-Exporter-Progressive-0.001013.tar.gz
Nedlasting MD5 sum: 72cf6acdd2a0a8b105821a4db98e4ebe
Sub::Quote gir måter å generere subrutiner fra strenger.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Term-Table-0.024.tar.gz
Nedlasting MD5 sum: fda537b24c606191fc10b561962a4a67
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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Deep-1.205.tar.gz
Nedlasting MD5 sum: 02a83480ffeaf93e7498c4dbd5b507b1
Test::Exception gir praktiske metoder for å teste unntaks basert kode.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Test-Fatal-0.017.tar.gz
Nedlasting MD5 sum: 865b7e00fa68431596e1933d523506ab
Test::File gir en samling testverktøy for filattributter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/B/BR/BRIANDFOY/Test-File-1.995.tar.gz
Nedlasting MD5 sum: d941b5e964800ceb4cbf1b5718b60290
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.4 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.150, og Scope-Guard-0.21
Test::LeakTrace sporer minnelekkasjer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/EX/EXODIST/Test-Simple-1.302214.tar.gz
Nedlasting MD5 sum: 0c3778dc28b01e8b1933829522538728
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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/S/SC/SCHWIGON/Test-utf8-1.03.tar.gz
Nedlasting MD5 sum: 03e219b5a7d0645b313f557238c0f8b3
Test::Warnings tester for advarsler og mangelen på dem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-Warnings-0.038.tar.gz
Nedlasting MD5 sum: 53f8c543cf362f49f822bdfe31797712
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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/H/HM/HMBRAND/Text-CSV_XS-1.61.tgz
Nedlasting MD5 sum: f62d6d7a580fe772ae2802c2483e909c
Text::Diff utfører forskjeller på filer og opptakssett.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/B/BR/BRIANDFOY/Tie-Cycle-1.231.tar.gz
Nedlasting MD5 sum: e659d66d3d46bed3e2e077ffa656143d
TimeDate gir diverse tidssone manipulasjonsrutiner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/E/ET/ETHER/Try-Tiny-0.32.tar.gz
Nedlasting MD5 sum: 964424fcada4654bede745a7a2fb870b
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.4 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.4 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.79 (installer denne modulen først og installer den senere)
XML::LibXML er en perl binding for libxml2-2.14.5.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0210.tar.gz
Nedlasting MD5 sum: d2bad7f395716a6f57abde538d47008c
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/XML-LibXML-2.0210-testsuite_fixes-1.patch
Først bruker du en oppdatering for å fikse problemer med testpakken når den er kompilert mot libxml2-2.13:
patch -Np1 -i ../XML-LibXML-2.0210-testsuite_fixes-1.patch
Denne modulen bruker standard bygge og installasjons instruksjoner:
perl Makefile.PL && make && make test
Nå, som root bruker:
make install
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.4 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.4 plattform.
Nedlasting (HTTP): https://cpan.metacpan.org/authors/id/G/GR/GRANTM/XML-SAX-1.02.tar.gz
Nedlasting MD5 sum: b62e3754523695c7f5bbcafa3676a38d
libxml2-2.14.5, 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.4 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.4 plattform.
Nedlasting (HTTP): https://www.php.net/distributions/php-8.4.11.tar.xz
Nedlasting MD5 sum: d08a7fbf770f2b9218a18eb70b2e9717
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 395 MB (med tester)
Estimert byggetid: 0.7 SBU (legg til 2.6 SBU for tester; begge med parallellitet=4)
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.65 og libxml2-2.14.5
Aspell-0.60.8.1, enchant-2.8.12, libxslt-1.1.43, en MTA (som gir en sendmail kommando), pcre2-10.45, AppArmor, Dmalloc, Net-SNMP, oniguruma, OSSP mm, re2c, og XMLRPC-EPI
FreeType-2.13.3, libexif-0.6.25, libjpeg-turbo-3.0.1, libpng-1.6.50, libtiff-4.7.0, libwebp-1.6.0, et grafiske miljø, FDF Toolkit, GD, og t1lib
cURL-8.15.0, tidy-html5-5.8.0, Caudium, Hyperwave, og WDDX
lmdb-0.9.33, MariaDB-11.8.3 eller MySQL, OpenLDAP-2.6.10, PostgreSQL-17.6, SQLite-3.50.4, 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, 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.14.5
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 \
--without-pear \
--enable-fpm \
--with-fpm-user=apache \
--with-fpm-group=apache \
--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 20000) 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.4.11 &&
install -v -m644 CODING_STANDARDS* EXTENSIONS NEWS README* UPGRADING* \
/usr/share/doc/php-8.4.11
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.4.11 &&
gunzip -v /usr/share/doc/php-8.4.11/php_manual_en.html.gz
For «Mange HTML filer» tarball:
tar -xvf ../php_manual_en.tar.gz \
-C /usr/share/doc/php-8.4.11 --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.
--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 automatisk
når systemet startes på nytt, installer /etc/rc.d/init.d/php oppstartsskript fra
blfs-bootscripts-20250225 pakken
som root bruker:
make install-php
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.4 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.84.4 (med GObject Introspection), libxml2-2.14.5, opencv-4.12.0, FontForge-20230101, gnome-tweaks-46.1, Samba-4.22.4, og Graphviz-13.1.2 (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.3. Bruk ls /usr/lib/python3.minor/site-packages
for en omfattende liste.
Python modulene fra LFS må også installeres på nytt: flit-core, packaging, wheel, setuptools, meson, MarkupSafe, og Jinja2.
Nedlasting (HTTP): https://www.python.org/ftp/python/3.13.7/Python-3.13.7.tar.xz
Nedlasting MD5 sum: 256cdb3bbf45cdce7499e52ba6c36ea3
Nedlastingsstørrelse: 22 MB
Estimert diskplass som kreves: 379 MB (legg til 59 MB for tester)
Estimert byggetid: 1.5 SBU (legg til 2.8 SBU for tester; begge bruker parallellisme=4)
Nedlasting (HTTP): https://www.python.org/ftp/python/doc/3.13.7/python-3.13.7-docs-html.tar.bz2
Nedlasting MD5 sum: b84c0d81b2758398bb7f5b7411d3d908
SQLite-3.50.4 (nødvendig hvis du bygger firefox eller thunderbird)
BlueZ-5.83, GDB-16.3 (nødvendig for noen tester), Valgrind-3.25.1, og libmpdec
libnsl-2.0.1, Tk-8.6.16, og Berkeley DB (deprecated)
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Python3
Installer Python 3 ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--enable-shared \
--with-system-expat \
--enable-optimizations \
--without-static-libpython &&
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 44 000 tester er følgende tester kjent for å feile: test_idle, test_importlib, test_tkinter, og test_zipfile.
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.13.7/html
tar --strip-components=1 \
--no-same-owner \
--no-same-permissions \
-C /usr/share/doc/python-3.13.7/html \
-xvf ../python-3.13.7-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.13/config-3.13-<arch>-linux-gnu/libpython3.13.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.13.7 /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.21 fordi byggesystemet ikke har blitt oppdatert for å støtte Python-3.13.7.
IKKE installer denne pakken hvis du ikke installerer Seamonkey.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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)
Installer Python 3.11 ved å kjøre følgende kommandoer:
./configure --prefix=/opt/python3.11 \
./configure --prefix=/opt/python3.11 \
--with-system-expat \
--without-static-libpython &&
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.13.7.
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.
Hvis du har installert make-ca-1.16.1 før og har kopiert filer fra /etc/profile.d til et nytt system, må du installere make-ca først før du installerer Python moduler fra denne siden.
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.4 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.11, libxslt-1.1.43, 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-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.
build er et Python byggegrensesnitt implementering av PEP-517-resolusjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/b/build/build-1.3.0.tar.gz
Nedlasting MD5 sum: 48f7fbc11051430eab3c1abe216bed7a
Nedlastingsstørrelse: 48 KB
Estimert diskplass som kreves: 772 KB (62 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.5 SBU for tester)
pytest-8.4.1, Python-3.13.7 (bygg om igjen med SQLite-3.50.4), filelock, pytest-cov, pytest-mock, pytest-rerunfailures, pytest-xdist, og uv
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-user build
Forutsatt pytest-8.4.1 er installert og Python-3.13.7 er bygget om igjen med SQLite-3.50.4, 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 --group test && python3 -m pytest deactivate
En test i test_projectbuilder.py er kjent for å
feile på grunn av en konflikt med systemkopien av
flit_core.
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 plattform.
Nedlasting (HTTP): https://github.com/psf/cachecontrol/archive/v0.14.3/cachecontrol-0.14.3.tar.gz
Nedlasting MD5 sum: 5c78b5fcee552f243ed444e91ad0ca89
Nedlastingsstørrelse: 44 KB
Estimert diskplass som kreves: 348 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-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.
CSSSelect gir CSS velgere for Python.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/c/cssselect/cssselect-1.3.0.tar.gz
Nedlasting MD5 sum: e0148abb13430399cbdbc173c3fa1c80
Nedlastingsstørrelse: 44 KB
Estimert diskplass som kreves: 368 KB (legg til 452 KB 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-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.
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.4 plattform.
Nedlasting (HTTP): https://github.com/cython/cython/releases/download/3.1.3/cython-3.1.3.tar.gz
Nedlasting MD5 sum: f508595cc0951a77b70c07100df1b4ff
Nedlastingsstørrelse: 3.1 MB
Estimert diskplass som kreves: 137 MB
Estimert byggetid: 1.0 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/python-dbusmock/python_dbusmock-0.36.0.tar.gz
Nedlasting MD5 sum: 27f61d5a860472d4479f2a6738bc7676
Nedlastingsstørrelse: 112 KB
Estimert diskplass som kreves: 1.8 MB
Estimert byggetid: mindre enn 0,1 SBU
pytest-8.4.1 (kreves for å kjøre testpakken), PyGObject-3.52.3 (kreves for å kjøre testpakken), BlueZ-5.83 (valgfritt for testpakken), og UPower-1.90.9 (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-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.4 plattform.
Nedlasting (HTTP): https://dbus.freedesktop.org/releases/dbus-python/dbus-python-1.4.0.tar.gz
Nedlasting MD5 sum: edca335d1c80f338e3255455eb876b72
Nedlastingsstørrelse: 168 KB
Estimert diskplass som kreves: 1.7 MB
Estimert byggetid: mindre enn 0.1 SBU
dbus-1.16.2, GLib-2.84.4, meson_python-0.18.0, og patchelf-0.18.0
PyGObject-3.52.3 (for tester)
Bygg D-Bus Python modulen ved å kjøre 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-user dbus-python
For å teste resultatet, utsted: DBUS_TOP_SRCDIR=$PWD PYTHON=python3 dbus-run-session test/run-test.sh.
-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.4 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-user docutils
For å teste installasjonen, utsted: test/alltests.py. To
tester i test_parser pakken
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.
|
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.4 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.14.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-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.4 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-user doxyqml
For å teste installasjonen, utsted:
python3 tests/functional/tests.py && python3 tests/unit/tests.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.
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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/g/gi-docgen/gi_docgen-2025.4.tar.gz
Nedlasting MD5 sum: c10dc911cb1f802cebf8f139f7598cf7
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 18 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Markdown-3.8.2, Pygments-2.19.2, og typogrify-2.1.0
Graphviz-13.1.2 (kjøretid, for visualisere klassehierarkigrafer) og pytest-8.4.1 (for testing)
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-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.4 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-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.43 og libxml2-2.14.5.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/l/lxml/lxml-6.0.0.tar.gz
Nedlasting MD5 sum: 3f6f87e9b333b68070210668f0831618
Nedlastingsstørrelse: 3.9 MB
Estimert diskplass som kreves: 104 MB
Estimert byggetid: 0.8 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/M/Mako/mako-1.3.10.tar.gz
Nedlasting MD5 sum: c9dfb2bf42827459dd505c60f2262a7c
Nedlastingsstørrelse: 384 KB
Estimert diskplass som kreves: 3.9 MB (med tester)
Estimert byggetid: less than 0.1 SBU (med tester)
Tarball navnet har endret seg fra Mako til mako, men likevel installeres modulen som Mako.
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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/n/numpy/numpy-2.3.2.tar.gz
Nedlasting MD5 sum: f8d3d3b3ecd2b6e98889e88f6bbdc1a3
Nedlastingsstørrelse: 20 MB
Estimert diskplass som kreves: 109 MB (legg til 22 for tester)
Estimert byggetid: 0.4 SBU (legg til 1.1 SBU for tester)
cython-3.1.3, meson_python-0.18.0, og pyproject-metadata-0.9.1
fortran fra GCC-15.2.0, lapack og cblas, og openblas
Bygg modulen:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir -C setup-args=-Dallow-noblas=true $PWD
Nå, som root bruker:
pip3 install --no-index --find-links dist --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 && python3 -c "import numpy, sys; sys.exit(numpy.test() is False)" deactivate
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/psutil/psutil-7.0.0.tar.gz
Nedlasting MD5 sum: 1c074ff5828dff3a3ecfa0e0f9de2e63
Nedlastingsstørrelse: 488 KB
Estimert diskplass som kreves: 4.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-user psutil
For å teste resultatene, utsted: make test.
To tester, TestSystemAPIs::test_disk_usage og
TestNetAPIs::test_net_if_addrs, er kjent
for å feile. En test kalt TestAvailProcessAPIs::test_io_counters er
kjent for å mislykkes hvis kjernen ikke har CONFIG_TASK_IO_ACCOUNTING aktivert.
TestExampleScripts.test_who> er kjent
for å mislykkes hvis login manager ikke skriver inn i
/run/utmp (merk at på grunn
av det potensielle år 2037 problemet, har Shadow allerede
sluttet å skrive inn i det). TestInternalScripts.test_import_all er
kjent for å mislykkes hvis requests-2.32.5 ikke er
installert. TestInternalScripts::test_import_all er
kjent for å mislykkes hvis den eksterne modulen pyinfo ikke
er installert.
-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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/pygobject/pycairo/releases/download/v1.28.0/pycairo-1.28.0.tar.gz
Nedlasting MD5 sum: f1bb0ee59ddd78a452f27ffda3ed68ae
Nedlastingsstørrelse: 648 KB
Estimert diskplass som kreves: 3.5 MB
Estimert byggetid: mindre enn 0.1 SBU
pytest-8.4.1 (for tester)
Installer PyCairo 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.4 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/P/Pygments/pygments-2.19.2.tar.gz
Nedlasting MD5 sum: 79260d1c566a507953a81d24b1c51c72
Nedlastingsstørrelse: 4.8 MB
Estimert diskplass som kreves: 54 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-user Pygments
For å teste installasjonen, sørg for at pytest-8.4.1 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 den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/pygobject/3.52/pygobject-3.52.3.tar.gz
Nedlasting MD5 sum: 50e6b31b7059e31a03f5949dab393e60
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 12 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
GLib-2.84.4 (med GObject Introspection)
GTK-4.18.6, pep8, pyflakes, og pytest-8.4.1
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.18.6 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.28.0 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pyparsing/pyparsing-3.2.3.tar.gz
Nedlasting MD5 sum: cc302d3f74bd1c56b4895d7186e4dd68
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 99 MB (med tester)
Estimert byggetid: 0.3 SBU (med 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-user pyparsing
Forutsatt pytest-8.4.1 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 matplotlib && python3 /usr/bin/pytest deactivate
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pytest/pytest-8.4.1.tar.gz
Nedlasting MD5 sum: ac7dfc1b6d681ee9ff65f94d65a6a5a1
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 41 MB (med tester)
Estimert byggetid: 1.2 SBU (med tester)
iniconfig-2.1.0, og pluggy-1.6.0
attrs-25.3.0, Pygments-2.19.2, requests-2.32.5, 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-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
En test, testing/acceptance_test.py, er kjent for
å feile.
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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-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.4 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
pytest-8.4.1 (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-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, libinput-1.29.0 avhenger av denne modulen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.2.3
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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/r/requests/requests-2.32.5.tar.gz
Nedlasting MD5 sum: cb3d3c58f07cf23f12c345f2c96a6f12
Nedlastingsstørrelse: 136 KB
Estimert diskplass som kreves: 1.1 MB (legg til 90 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (0.9 SBU for tester)
Anbefalt oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/requests-use_system_certs-1.patch
charset-normalizer-3.4.3, idna-3.10, og urllib3-2.5.0
make-ca-1.16.1, 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.4.1, 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-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-user requests
Forutsatt at pytest-8.4.1 er installert, men de andre valgfrie avhengigheter ikke er det, kan installasjonen testes med følgende kommandoer:
Noen av oppsettinstruksjonene nedenfor kan indikere en feil på grunn av avhengige modulversjoner, men disse feilene påvirker ikke testresultatene.
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.16.1 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 den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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-user scour
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.
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.4 plattform.
Nedlasting (HTTP): https://github.com/getsentry/sentry-python/releases/download/2.35.0/sentry_sdk-2.35.0.tar.gz
Nedlasting MD5 sum: 2c43b7b5df268aea76fbabe869562325
Nedlastingsstørrelse: 336 KB
Estimert diskplass som kreves: 4.1 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/six/six-1.17.0.tar.gz
Nedlasting MD5 sum: a0387fe15662c71057b4fb2b7aa9056a
Nedlastingsstørrelse: 36 KB
Estimert diskplass som kreves: 300 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinx/sphinx-8.2.3.tar.gz
Nedlasting MD5 sum: eec3083f144d88cf65ad3da422fc7e66
Nedlastingsstørrelse: 7.9 MB
Estimert diskplass som kreves: 32 MB (legg til 22 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.7 SBU for tester)
alabaster-1.0.0, babel-2.17.0, docutils-0.21.2, imagesize-1.4.1, Pygments-2.19.2, requests-2.32.5, roman-numerals-py-3.1.0, snowballstemmer-3.0.1, sphinxcontrib-applehelp-2.0.0, sphinxcontrib-devhelp-2.0.0, sphinxcontrib-htmlhelp-2.1.0, sphinxcontrib-jsmath-1.0.1, sphinxcontrib-qthelp-2.0.0, og sphinxcontrib-serializinghtml-2.0.0
cython-3.1.3, html5lib-1.1, pytest-8.4.1, texlive-20250308, 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-user sphinx
Forutsatt cython-3.1.3 og pytest-8.4.1 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
En test, test_ext_math.py::test_imgmath_numfig_html, er kjent for å feile.
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinx_rtd_theme/sphinx_rtd_theme-3.0.2.tar.gz
Nedlasting MD5 sum: b26e7ff8c3a90817bbc20fb76c530e00
Nedlastingsstørrelse: 7.3 MB
Estimert diskplass som kreves: 40 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
sphinx-8.2.3 og sphinxcontrib-jquery-4.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-user sphinx_rtd_theme
Forutsatt pytest-8.4.1 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 den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/a/attrs/attrs-25.3.0.tar.gz
Nedlasting MD5 sum: 173fe452e1fe986051d9bc194ed59525
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-25.1.0 og hatch_vcs-0.5.0
pytest-8.4.1, 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-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
Tre tester relatert til Mypy er kjent for å mislykkes.
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/B/Babel/babel-2.17.0.tar.gz
Nedlasting MD5 sum: 726d2ed119255a011d248ac0c9caa24a
Nedlastingsstørrelse: 9.5 MB
Estimert diskplass som kreves: 94 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
pytest-8.4.1, Python-3.13.7 (med sqlite modulen), freezegun, 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-user Babel
Forutsatt pytest-8.4.1 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 && python3 /usr/bin/pytest deactivate
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/c/certifi/certifi-2025.8.3.tar.gz
Nedlasting MD5 sum: bb7ee7c24518dc4314ce7a83ca24263f
Nedlastingsstørrelse: 160 KB
Estimert diskplass som kreves: 832 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-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.4 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/c/charset-normalizer/charset_normalizer-3.4.3.tar.gz
Nedlasting MD5 sum: 773b693324f251206cc5dcbec7dd2d4c
Nedlastingsstørrelse: 120 KB
Estimert diskplass som kreves: 1.1 MB (legg til 15 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
pytest-8.4.1, Python-3.13.7 (gjenoppbygg etter installasjonen SQLite-3.50.4), 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-user charset-normalizer
Forutsatt pytest-8.4.1 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 den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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.4.1, 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-user commonmark
Forutsatt pytest-8.4.1 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 den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/h/hatchling/hatchling-1.27.0.tar.gz
Nedlasting MD5 sum: 6ffb3087c9b6a9ffbfc1bb394f7ed1a8
Nedlastingsstørrelse: 60 KB
Estimert diskplass som kreves: 2.3 MB
Estimert byggetid: mindre enn 0.1 SBU
editables-0.5, pathspec-0.12.1, pluggy-1.6.0, og trove-classifiers-2025.8.6.13
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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/h/hatch-fancy-pypi-readme/hatch_fancy_pypi_readme-25.1.0.tar.gz
Nedlasting MD5 sum: 8e1ed2416887685adc1c909ed4fb63cb
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-user hatch-fancy-pypi-readme
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.
Hatch_vcs er et Hatch programtillegg for versjonskontroll med flere versjonskontrollsystemer ( VCS ).
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/h/hatch-vcs/hatch_vcs-0.5.0.tar.gz
Nedlasting MD5 sum: 9a22a9f7203783e526959d34510a9672
Nedlastingsstørrelse: 9.9 KB
Estimert diskplass som kreves: 436 KB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
hatchling-1.27.0 og setuptools_scm-8.3.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-user hatch_vcs
For å teste installasjonen, kjør (HOME= hindrer .gitconfig filen i hjemmemappen fra å
forstyrre testene): HOME=
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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/i/idna/idna-3.10.tar.gz
Nedlasting MD5 sum: 28448b00665099117b6daa9887812cc4
Nedlastingsstørrelse: 188 KB
Estimert diskplass som kreves: 1.7 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-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.4 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/i/iniconfig/iniconfig-2.1.0.tar.gz
Nedlasting MD5 sum: 437ede5b20b0ab2e76ca08f02b5c49dd
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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/M/Markdown/markdown-3.8.2.tar.gz
Nedlasting MD5 sum: 1651bba25b80092c31f7d47f0e093803
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-user Markdown
Forutsatt pytest-8.4.1 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
to tester i tests/test_syntax/blocks/test_html_blocks.py
filen er kjent for å mislykkes på grunn av endringer i
Python-3.13.6 og senere HTML Parser modul.
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/m/meson_python/meson_python-0.18.0.tar.gz
Nedlasting MD5 sum: b4d7f9ef6f09deb8dc8a7e5cbf16778e
Nedlastingsstørrelse: 80 KB
Estimert diskplass som kreves: 1.3 MB
Estimert byggetid: mindre enn 0.1 SBU
build-1.3.0, cython-3.1.3, git-2.50.1, pytest-8.4.1, Python-3.13.7 (gjenoppbygg etter installasjon SQLite-3.50.4), 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-user meson_python
For å teste installasjonen, sørg for at git-2.50.1, patchelf-0.18.0, og pytest-8.4.1 er
installert, og Python-3.13.7 har blitt gjenoppbygd
etter installasjonen av SQLite-3.50.4, 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
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/m/msgpack/msgpack-1.1.1.tar.gz
Nedlasting MD5 sum: abcd18fded80a89c486c0446f112eb06
Nedlastingsstørrelse: 172 KB
Estimert diskplass som kreves: 4.1 MB (legg til 0.3 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-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.4 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pluggy/pluggy-1.6.0.tar.gz
Nedlasting MD5 sum: 54391218af778acb006c2d915085d469
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-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_Hooks er et
lavnivåbibliotek for å kalle byggebakstykker i pyproject.toml-baserte prosjekter.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pyproject-hooks/pyproject_hooks-1.2.0.tar.gz
Nedlasting MD5 sum: ed3dd1b984339e83e35f676d7169c192
Nedlastingsstørrelse: 19 KB
Estimert diskplass som kreves: 520 KB (14 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-user pyproject_hooks
Forutsatt pytest-8.4.1 er installert, men den andre valgfri avhengighet ikke er det, kan installasjonen testes med følgende kommandoer:
python3 -m venv --system-site-packages testenv && source testenv/bin/activate && pip3 install testpath && python3 -m pytest deactivate
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pyproject-metadata/pyproject_metadata-0.9.1.tar.gz
Nedlasting MD5 sum: d897e16dca18204e421f912487730668
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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/p/pytz/pytz-2025.2.tar.gz
Nedlasting MD5 sum: 6a7760c71e38b6c75577b34b18b89d5b
Nedlastingsstørrelse: 316 KB
Estimert diskplass som kreves: 6.2 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-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.
Roman-numerals-py er et Python bibliotek for manipulering av velformede romertall.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/r/roman-numerals-py/roman_numerals_py-3.1.0.tar.gz
Nedlasting MD5 sum: 818e8252ca189c657bf7f860824eceb9
Nedlastingsstørrelse: 12 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-user roman-numerals-py
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.
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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/setuptools_scm/setuptools_scm-8.3.1.tar.gz
Nedlasting MD5 sum: 35e09656d091a94b27f9c50b383b32c5
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)
build-1.3.0, git-2.50.1, mercurial-7.1, pytest-8.4.1, og Sudo-1.9.17p2
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-user setuptools_scm
For å teste installasjonen, sørg for at pytest-8.4.1 og de
andre valgfrie avhengighetene er installert og kjør
(HOME= forhindrer at
.gitconfig filen i
hjemmemappen forstyrrer testene):
TZ=UTC HOME= pytest
Hvis git-2.50.1 og/eller mercurial-7.1 ikke er installert, vil testene avhengig av den(e) som mangler, hoppes over. Noen tester kan påkalle Sudo-1.9.17p2 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/smartypants/smartypants-2.0.2.tar.gz
Nedlasting MD5 sum: 3149badecd0771c80ee9db4d09695edd
Nedlastingsstørrelse: 17 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
Denne pakken kommer ikke med en fungerende testpakke.
Nå, som root bruker:
pip3 install --no-index --find-links dist --no-user smartypants
For å teste resultatene, utsted:
cp /usr/bin/smartypants . && 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.
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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/snowballstemmer/snowballstemmer-3.0.1.tar.gz
Nedlasting MD5 sum: 25a584cc4898a0833f9b4c059685672c
Nedlastingsstørrelse: 104 KB
Estimert diskplass som kreves: 2.0 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-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.4 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.4.1 og sphinx-8.2.3 (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-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.4 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.4.1 og sphinx-8.2.3 (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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/s/sphinxcontrib-htmlhelp/sphinxcontrib_htmlhelp-2.1.0.tar.gz
Nedlasting MD5 sum: 1326f55f6bea49ab6a846c0088bc369e
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 1.2 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
pytest-8.4.1, sphinx-8.2.3 (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-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.4 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-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.4 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.4.1 og sphinx-8.2.3 (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-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.4 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.4.1, sphinx-8.2.3 (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-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 den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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.4.1 og sphinx-8.2.3 (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-user sphinxcontrib-serializinghtml
For å teste installasjonen, først installer sphinx-8.2.3, 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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/t/trove_classifiers/trove_classifiers-2025.8.6.13.tar.gz
Nedlasting MD5 sum: 939166b6e238cdafdbe63becd398e906
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 en feil versjonsstreng når
calver modulen ikke er
installert:
sed -i '/calver/s/^/#/;$iversion="2025.8.6.13"' 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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/t/typogrify/typogrify-2.1.0.tar.gz
Nedlasting MD5 sum: 7cc9a0a1de988329add3982519dc7971
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-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.4 plattform.
Nedlasting (HTTP): https://files.pythonhosted.org/packages/source/u/urllib3/urllib3-2.5.0.tar.gz
Nedlasting MD5 sum: 2b8a86438e4d35fbc90572dbdb424759
Nedlastingsstørrelse: 384 KB
Estimert diskplass som kreves: 2.1 MB (legg til 53 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (1.6 SBU for tester)
pytest-8.4.1, 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-user urllib3
Forutsatt pytest-8.4.1 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 \
hypercorn \
quart \
quart_trio \
httpx &&
python3 /usr/bin/pytest
deactivate
Så mange som 34 feil er kjent for å oppstå på grunn av små atferdsendringer i de eksterne Python-modulene ovenfor, når de kombineres med Python 3.13.7.
-w dist: bygger den
passende "wheel" for denne modulen i mappen dist.
--no-build-isolation:
forteller pip3 at den skal kjøre byggingen i systemmiljøet
i stedet for å opprette et midlertidig byggemiljø.
--no-deps: hindrer
pip3 i å bygge wheels for prosjektets avhengigheter.
--no-index:
ignorerer pakkeindeksen (ser bare på --find-links URL-er i
stedet)).
--find-links dist:
ser etter lenker til arkiver som wheel (.whl) filer i
mappen dist.
--no-cache-dir:
Deaktiverer hurtigbufferen for å forhindre en advarsel ved
installasjon som root
bruker.
--no-user:
Forhindre at du feilaktig kjører install kommandoen som
ikke-root bruker.
--system-site-packages:
Tillater at Python3 venv
modulen får tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--upgrade: Oppgrader pakken til
den nyeste tilgjengelige versjonen. 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.4 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-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.4 plattform.
Nedlasting (HTTP): https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.5.tar.xz
Nedlasting MD5 sum: 7c46a4fbece1073bbef0d7d61bc030cc
Nedlastingsstørrelse: 16 MB
Estimert diskplass som kreves: 1.5 GB (med C API dokumenter og tester)
Estimert byggetid: 1.6 SBU (med C API dokumenter; legg til 0.2 SBU for tester; alt med bruk av parallellisme=4)
Doxygen-1.14.0, Graphviz-13.1.2, rustc-1.89.0, Tk-8.6.16, Valgrind-3.25.1, Berkeley DB (deprecated) og DTrace
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
Hvis du har installert en pakke som gir en rubinperle, som f.eks asciidoctor-2.0.23, du må installere disse pakkene på nytt når du oppgraderer til en ny minor versjon av Ruby.
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.4.5 &&
make
Valgfritt bygg CAPI dokumentene ved å kjøre følgende kommandoer:
make capi
For å teste resultatene, utsted: make -k check. 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.
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.
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 diverse
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.89.0-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
./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 «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.4 plattform.
Nedlasting (HTTP): https://static.rust-lang.org/dist/rustc-1.89.0-src.tar.xz
Nedlasting MD5 sum: 982f087479302e6d91432efc81852b00
Nedlastingsstørrelse: 256 MB
Estimert diskplass som kreves: 9.4 GB (252 MB installert); legg til 7.4 GB hvis du kjører testene
Estimert byggetid: 9.0 SBU (inkludert nedlastingstid; legg til 15 SBU for tester, begge med parallellisme=8)
En Internett tilkobling er nødvendig for å bygge denne pakken. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger denne pakken.
libssh2-1.11.1, LLVM-20.1.8 (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.50.4
Hvis en anbefalt avhengighet ikke er installert, en sendt kopi i Rustc kildetarballen blir bygd og brukt.
GDB-16.3 (brukes av testpakken hvis den er til stede), git-2.50.1 (kreves av testpakken), cranelift, jemalloc, libgccjit (les parameterforklaringer i GCC-15.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.89.0 && ln -svfn rustc-1.89.0 /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 bootstrap.toml fil som vil konfigurere
bygget.
cat << EOF > bootstrap.toml
# See bootstrap.toml.example for more possible options,
# and see src/bootstrap/defaults/bootstrap.dist.toml for a few options
# automatically set when building from a release tarball
# (unfortunately, we have to override many of them).
# 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 = 142379
[llvm]
# When using system llvm prefer shared libraries
link-shared = true
# If building the shipped LLVM source, only enable the x86 target
# instead of all the targets supported by LLVM.
targets = "X86"
[build]
description = "for BLFS 12.4"
# Omit docs to save time and space (default is to build them).
docs = false
# 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"]
[install]
prefix = "/opt/rustc-1.89.0"
docdir = "share/doc/rustc-1.89.0"
[rust]
channel = "stable"
# Enable the same optimizations as the official upstream build.
lto = "thin"
codegen-units = 1
# Don't build lld which does not belong to this package and seems not
# so useful for BLFS. Even if it turns out to be really useful we'd build
# it as a part of the LLVM package instead.
lld = false
# Don't build llvm-bitcode-linker which is only useful for the NVPTX
# backend that we don't enable.
llvm-bitcode-linker = false
[target.x86_64-unknown-linux-gnu]
llvm-config = "/usr/bin/llvm-config"
[target.i686-unknown-linux-gnu]
lvm-config = "/usr/bin/llvm-config"
EOF
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 ./x.py build
Testpakken vil generere noen meldinger i system log 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:
./x.py test --verbose --no-fail-fast | tee rustc-testlog
Åtte tester i UI testpakken er kjent for å mislykkes med
description satt i build seksjonen av bootstrap.toml filen. Fire tester i
bootstrap testpakken er kjent for å mislykkes fordi de
forventer å kjøre i Rust Git repositoriet. Testen med navnet
tests/run-make/musl-default-linking er
kjent for å mislykkes fordi vi ikke har aktivert AArch64
målet i LLVM-20.1.8. Testen med navnet tests/run-make/linker-warning er kjent for
å mislykkes av en eller annen ukjent årsak.
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 har strippet /usr/lib/libc.a med strip --strip-unneeded,
alt statiske koblete Rustprogrammer vil krasje med SIGSEGV
ved oppstart, noe som forårsaker flere tester (for eksempel
tests/ui/process/nofile-limit.rs) å
mislykkes med SIGSEGV.
Vi undersøker fortsatt etter årsaken til dette problemet,
men for nå har vi byttet ut --strip-unneeded med
--strip-debug i
både LFS boka og i «Strippe En Gang Til» for å omgå
det. Hvis du opplever dette problemet, gjenoppbygg Glibc og
erstatt /usr/lib/libc.a filen
med den ustrippede libc.a fra
nybygget.
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.
./x.py install
Fortsatt som root bruker,
fiks installasjonen av dokumentasjonen, symbolkoble en
Zsh fullføringsfilen til
riktig plassering, og flytt en Bash fullføringsfil til lokasjonen
anbefalt av Bash
ferdigstillelse vedlikeholdere:
rm -fv /opt/rustc-1.89.0/share/doc/rustc-1.89.0/*.old &&
install -vm644 README.md \
/opt/rustc-1.89.0/share/doc/rustc-1.89.0 &&
install -vdm755 /usr/share/zsh/site-functions &&
ln -sfv /opt/rustc/share/zsh/site-functions/_cargo \
/usr/share/zsh/site-functions
mv -v /etc/bash_completion.d/cargo /usr/share/bash-completion/completions
Til slutt, deaktiver eksporterte miljøvariabler:
unset LIB{SSH2,SQLITE3}_SYS_USE_PKG_CONFIG
ln -svfn rustc-1.89.0
/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.
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 bootstrap.toml er å bruke
utviklingsfunksjoner, som ikke passer for en utgitt versjon.
[target.x86_64-unknown-linux-gnu]: syntaksen
til bootstrap.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 bør utelates
hvis du ønsker å bygge mot den sendte llvm, men det
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.
--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.
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.4 plattform.
Nedlasting (HTTP): https://github.com/rust-lang/rust-bindgen/archive/v0.72.0/rust-bindgen-0.72.0.tar.gz
Nedlasting MD5 sum: 15888c0e5c60a1d367cf6c1b6e51c067
Nedlastingsstørrelse: 2.2 MB
Estimert diskplass som kreves: 219 MB
Estimert byggetid: 0.3 SBU (med parallellisme=8)
rustc-1.89.0 og LLVM-20.1.8 (med Clang, kjøretid)
En Internett tilkobling er nødvendig for å bygge denne pakken. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger 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
Fortsatt som root bruker,
installer Bash og Zsh kompletterings støttefiler:
bindgen --generate-shell-completions bash \
> /usr/share/bash-completion/completions/bindgen
bindgen --generate-shell-completions zsh \
> /usr/share/zsh/site-functions/_bindgen
SCons er et verktøy for å bygge programvare (og andre filer) implementert i Python.
Ved utvidelse av tarballen utvides pakken til scons-4.9.1, ikke det forventede SCons-4.9.1.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/scons/SCons-4.9.1.tar.gz
Nedlasting MD5 sum: b46e03361ec0c48b295fc35d7dbba475
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-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.4 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 \
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.4 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/subversion/subversion-1.14.5.tar.bz2
Nedlasting MD5 sum: af6001dc7af2f1242a4f72e8a5c565d2
Nedlastingsstørrelse: 8.3 MB
Estimert diskplass som kreves: 260 MB (legg til 189 MB for bindinger, 54 MB for dokumenter, 1,3 GB for tester)
Estimert byggetid: 1.5 SBU (Bruker parallellisme=4; legg til 2.0 SBU for bindinger, 30 SBU for tester)
Apr-Util-1.6.3 og SQLite-3.50.4
Serf-1.3.10 (for håndtering av http:// og https:// URLs) og SWIG-4.3.1 (for å regenerere byggesystemet)
Apache-2.4.65, Boost-1.89.0, Cyrus SASL-2.1.28, dbus-1.16.2, Doxygen-1.14.0 (for å generere HTML dokumentasjon), gnome-keyring-48.0, libsecret-0.21.7, Py3c-1.4 (for python bindinger og tester), Python-3.13.7 (med sqlite støtte for testene), Ruby-3.4.5, SWIG-4.3.1, og UTF8proc
En av OpenJDK-24.0.2, Dante eller Jikes, JUnit 4 (for å teste Java bindingene) og apache-ant-1.10.15.
Installer Subversion ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--with-apache-libexecdir \
--with-utf8proc=internal &&
make
Hvis du har Doxygen-1.14.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.15 og må lastes ned
for seg selv. For å bygge Java bindingene, kjør følgende
kommando:
make -j1 javahl
Hvis du skal kompilere Ruby bindinger, sett C standarden for å forhindre at byggingen feiler:
sed -i 's/Wno-int-to-pointer-cast/std=gnu17/' Makefile
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.13/site-packages/libsvn \ swig_pydir_extra=/usr/lib/python3.13/site-packages/svn # for Python make swig-rb # for Ruby
For å teste resultatene, kjør: make check.
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.5 && cp -v -R doc/* /usr/share/doc/subversion-1.14.5
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.13/site-packages/libsvn \ swig_pydir_extra=/usr/lib/python3.13/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.65 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 svn oppstartskript inkludert i blfs-bootscripts-20250225 pakken:
make install-svn
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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/swig/swig-4.3.1.tar.gz
Nedlasting MD5 sum: 4929864e1b040a51370160d17669d6f1
Nedlastingsstørrelse: 8.2 MB
Estimert diskplass som kreves: 90 MB (2.2 GB med tester)
Estimert byggetid: 0.3 SBU (legg til 8.4 SBU for tester; begge bruker parallellisme=4)
Boost-1.89.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: make JSCXX=g++ 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.3.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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/tcl/tk8.6.16-src.tar.gz
Nedlasting MD5 sum: a7aad6cf52aa4687506a377a9a885a83
Nedlastingsstørrelse: 4.4 MB
Estimert diskplass som kreves: 25 MB
Estimert byggetid: 0.2 SBU (legg til 5.6 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.4 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
Først, fiks et problem når det bygges med gcc-15:
sed -i 's/constexpr/unifdef_&/g' unifdef.c
Løs nå et problem hvis du installerer pakken på nytt:
sed -i 's/ln -s/ln -sf/' Makefile
Installer unifdef ved å kjøre følgende kommandoer:
make
For å teste resultatene, utsted: make test.
Til slutt, fullfør installasjonen 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/vala/0.56/vala-0.56.18.tar.xz
Nedlasting MD5 sum: 14238ac89810b932db9fd75999739494
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.84.4 (GObject Introspection påkrevd for tester)
Graphviz-13.1.2 (Påkrevd for valadoc)
dbus-1.16.2 (Nødvendig for tester), libxslt-1.1.43 (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-13.1.2 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.4 plattform.
Nedlasting (HTTP): https://sourceware.org/pub/valgrind/valgrind-3.25.1.tar.bz2
Nedlasting MD5 sum: 2b424c9a43aa9bf2840d4989b01ea6e7
Nedlastingsstørrelse: 16 MB
Estimert diskplass som kreves: 419 MB (legg til 86 MB for tester)
Estimert byggetid: 0.4 SBU (legg til 5.7 SBU for tester; begge bruker parallellisme=4)
docbook-xml-4.5 (for tester), GDB-16.3 (for tester), libaio-0.3.113, LLVM-20.1.8 (med Clang), og Which-2.23 (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.25.1 &&
make
For å teste resultatene, kjør: make regtest. Testene kan
henge for alltid hvis GDB-16.3 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
En ekstra testpakke er nå tilgjengelig som tester Valgrind
med hver systemanrop levert av kjernen.Testsettet er utformet
for å teste ikke bare glibc og kjernens overholdelse av
standarder, men også Valgrinds evne til å håndtere
forskjellige systemanrop.Testsettet gjør krever en
internettforbindelse for å laste ned testene, og det tar lang
tid tid å kjøre (en ekstra 20 SBUs og 1,3 GB diskplass.)
make ltpchecks.
Merk at utdataene vil vise flere feil der Valgrind for
øyeblikket ikke støtter visse systemanrop, men loggene for
testspakken kan finnes i auxprogs/auxchecks/ltp-full-20250130/valgrind-ltp-logs
mappen.
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.4 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)
Først, fiks et problem når det bygges med gcc-15:
sed -e 's/def __cplusplus/ defined(__cplusplus) || __STDC_VERSION__ >= 202311L/' \
-i libyasm/bitvect.h
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.4 plattform.
Binær nedlasting (x86): https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-24.0.2/OpenJDK-24.0.2+12-i686-bin.tar.xz
Nedlasting MD5 sum: f857fdada7455772c6129498fec508aa
Nedlastingsstørrelse (binær): 171 MB
Estimert diskplass som kreves: 321 MB
Binær nedlasting (x86_64): https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-24.0.2/OpenJDK-24.0.2+12-x86_64-bin.tar.xz
Nedlasting MD5 sum: 040761706a52d919e7f984d9a4a70b48
Nedlastingsstørrelse (binær): 185 MB
Estimert diskplass som kreves: 383 MB
alsa-lib-1.2.14, Cups-2.4.12, giflib-5.2.2, Little CMS-2.17, 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-24.0.2-bin && mv -v * /opt/OpenJDK-24.0.2-bin && chown -R root:root /opt/OpenJDK-24.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-24.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.4 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-24.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/jdk24u/archive/jdk-24.0.2-ga.tar.gz
Nedlasting MD5 sum: 160e4f0de98c13fddba4f1dc0bad3615
Nedlastingsstørrelse: 115 MB
Estimert diskplass som kreves: 3.8 GB (legg til 630 MB for tester)
Estimert byggetid: 4.3 SBU med 4 jobber (legg til 35 SBU for tester med 4 jobber)
Valgfri testpakke
https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-24.0.2/jtreg-7.3.1+1.tar.gz
Nedlasting MD5 sum: deb728d5f67a84adadd6025b9ad3252f
Nedlastingsstørrelse: 9.0 MB
En eksisterende binær (Java-24.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.14, cpio-2.15, Cups-2.4.12, libarchive-3.8.1, Which-2.23, Xorg Biblioteker, og Zip-3.0
make-ca-1.16.1, giflib-5.2.2, harfBuzz-11.4.1, Little CMS-2.17, libjpeg-turbo-3.0.1, libpng-1.6.50, og Wget-1.25.0
git-2.50.1, Graphviz-13.1.2, mercurial-7.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
Rett en byggefeil forårsaket av glibc-2.42:
find src -name *.*pp -exec sed -i 's/uabs(/g_uabs(/' {} \;
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 og CLASSPATH.
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:
export MAKEFLAGS_HOLD=$MAKEFLAGS &&
unset JAVA_HOME &&
unset CLASSPATH &&
unset MAKEFLAGS &&
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="12" \
--with-version-pre="" \
--with-version-opt="" \
--with-jobs=$(nproc) \
--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 80 mislykket og 10 feil.
Installer pakken med følgende kommandoer som root bruker:
install -vdm755 /opt/jdk-24.0.2+12 &&
cp -Rv build/*/images/jdk/* /opt/jdk-24.0.2+12 &&
chown -R root:root /opt/jdk-24.0.2+12 &&
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 vil være mange binærfiler med feilsøkingsinformasjon som tar opp over halvparten av den installerte størrelsen. Hvis du ikke bryr deg om feilsøking, kan du fjerne informasjonen:
find /opt/jdk-24.0.2+12 -name *.debuginfo -delete
Restore the MAKEFLAGS variable:
export MAKEFLAGS=$MAKEFLAGS_HOLD && unset MAKEFLAGS_HOLD
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-24.0.2+12 /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 24.0.2 Runtime Comment=OpenJDK Java 24.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 24.0.2 Console Comment=OpenJDK Java 24.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=:
$(nproc)-j sendt til make
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.16.1 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 |
|
|
finner metoder som får tilgang til innebygd funksjonalitet når den kjøres. Dette vil inkludere begrensede metodekall og «innebygde» metodedeklarasjoner |
|
|
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.17p2 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/pki/tls/java/cacerts. Instruksjonene
på make-ca-1.16.1 siden som tidligere
opprettet filen lokalisert i /etc/pki/tls/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.4 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/ant/source/apache-ant-1.10.15-src.tar.xz
Nedlasting MD5 sum: 778c68be3787dfebc249de45598f63b2
Nedlastingsstørrelse: 3.6 MB
Estimert diskplass som kreves: 196 MB
Estimert byggetid: 0.2 SBU (unntatt nedlastingstid)
A JDK (Java binær or OpenJDK-24.0.2) og GLib-2.84.4
En Internett tilkobling er nødvendig for å bygge denne pakken. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger 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.15 dist
Installer, som root bruker:
cp -rv ant-1.10.15 /opt/ && chown -R root:root /opt/ant-1.10.15 && ln -sfv ant-1.10.15 /opt/ant
bootstrap/bin/ant -f fetch.xml
-Ddest=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 -Ddist.dir=$PWD/ant-1.10.15 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.
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.4 plattform.
Nedlasting (HTTP): https://github.com/NetworkConfiguration/dhcpcd/releases/download/v10.2.4/dhcpcd-10.2.4.tar.xz
Nedlasting MD5 sum: ce62bc6caf02421ac40135dbb92377b5
Nedlastingsstørrelse: 272 KB
Estimert diskplass som kreves: 3.2 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
LLVM-20.1.8 (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
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 \
--disable-privsep &&
make
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 \
--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.
For å konfigurere dhcpcd, må du først
installere nettverkstjenesteskriptet, /usr/lib/services/dhcpcd inkludert i
blfs-bootscripts-20250225 pakken
(som bruker root):
make install-service-dhcpcd
Standard for dhcpcd er å angi
vertsnavnet og mtu. Den overskriver også /etc/resolv.conf og /etc/ntp.conf. Disse modifikasjonene av
systemfiler gjøres av kroker som er lagret i /usr/lib/dhcpcd/dhcpcd-hooks. Du kan
endre denne virkemåten ved å fjerne eller legge til
kroker fra/til den mappen. Utførelsen av kroker kan
deaktiveres ved å bruke --nohook (-C)
kommandolinjealternativ eller av nohook alternativet i /etc/dhcpcd.conf filen.
Til
slutt, som the root user,
opprett /etc/sysconfig/ifconfig.eth0
konfigurasjonsfilen ved hjelp av følgende kommandoer.
Juster deretter for ytterligere grensesnitt:
cat > /etc/sysconfig/ifconfig.eth0 << "EOF"
ONBOOT="yes"
IFACE="eth0"
SERVICE="dhcpcd"
DHCP_START="-b -q -h $HOSTNAME <insert appropriate start options here>"
DHCP_STOP="-k <insert additional stop options here>"
EOF
For mer informasjon om passende DHCP_START og DHCP_STOP verdier, undersøk man siden for
dhcpcd.
Selv om
det ikke er vanlig, er det mulig at du trenger å
konfigurere dhcpcd til å
bruke en fast ip. Her, gir vi et eksempel. Som root bruker, opprett /etc/sysconfig/ifconfig.eth0
konfigurasjonsfilen ved å bruke følgende kommandoer. Juster
passende for ytterligere grensesnitt og for den faktiske ip
og ruteren du trenger:
cat > /etc/sysconfig/ifconfig.eth0 << "EOF"
ONBOOT="yes"
IFACE="eth0"
SERVICE="dhcpcd"
DHCP_START="-b -q -S ip_address=192.168.0.10/24 -S routers=192.168.0.1"
DHCP_STOP="-k"
EOF
Du kan enten bruke DNS servere i /etc/resolv.conf fra et annet system,
dine foretrukne servere, eller bare eksempelet /etc/resolv.conf.head filen nedenfor som
den er:
cat > /etc/resolv.conf.head << "EOF"
# OpenDNS servers
nameserver 208.67.222.222
nameserver 208.67.220.220
EOF
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.4 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
For å automatisere brooppretting og konfigurasjon,
installer /usr/lib/services/bridge tjenesteskript
inkludert i blfs-bootscripts-20250225
pakken.
make install-service-bridge
bridge skriptet avhenger av
kommandoene /sbin/ifup og
/sbin/ifdown og
tjenesteskriptet ipv4-static fra LFS oppstartsskripter datert
27 Januar, 2012 eller senere.
Følgende konfigurasjonsfil vil opprette en broenhet ved oppstart og feste eth0 enheten til den. Hvis mer enn en enhet er ønsket, bruk en mellomromseparert liste over INTERFACE_COMPONENTS. Denne konfigurasjon er nyttig når du planlegger å kjøre en virtuell maskin som f.eks kvm/qemu.
Andre SERVICE kombinasjoner er
mulig, for eksempel, SERVICE="bridge
dhcp". I så fall adresseparametere er ikke
nødvendig, men forstyrrer ikke hvis de er tilstede.
Brotjenesten kan også brukes alene, men vil kreve
ytterligere etterfølgende konfigurasjon.
Ikke kjør en parallell konfigurasjon for en enhet i
INTERFACE_COMPONENTS listen. For eksempel, i eksemplet
nedenfor, ikke konfigurer /etc/sysconfig/ifconfig.eth0 til å
kjøre ved oppstart. Kommandoen ifdown br0 etterfulgt
av kommandoen ifup
eth0 vil fungere, men ikke prøv å ha
begge oppe samtidig.
cat > /etc/sysconfig/ifconfig.br0 << "EOF"
ONBOOT=yes
IFACE=br0
VIRTINT=yes
SERVICE="bridge ipv4-static" # Space separated
IP=192.168.1.32
GATEWAY=192.168.1.1
PREFIX=24
BROADCAST=192.168.1.255
CHECK_LINK=no # Don't check before bridge is created
STP=no # Spanning tree protocol, default no
INTERFACE_COMPONENTS="eth0" # Add to IFACE, space separated devices
IP_FORWARD=true
EOF
Alle adresser bør endres for å møte dine omstendigheter.
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.4 plattform.
Nedlasting (HTTP): https://www.samba.org/ftp/linux-cifs/cifs-utils/cifs-utils-7.4.tar.bz2
Nedlasting MD5 sum: ced910b43321c604a9c402beac45cb4e
Nedlastingsstørrelse: 380 KB
Estimert diskplass som kreves: 4.3 MB
Estimert byggetid: 0.1 SBU
docutils-0.21.2 (for å lage mansidene), keyutils-1.6.3 (kreves for å bygge PAM modulen), Linux-PAM-1.7.1, Samba-4.22.4, og libcap-2.76 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.
Først må du gjøre byggesystemet kompatibelt med GCC-15:
autoreconf -fiv
Installer cifs-utils ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-pam \
--disable-systemd &&
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.7.1 er installert og du
ønsker PAM støtte.
--disable-systemd:
Deaktiver systemd spesifikk oppførsel for mount.cifs.
--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.4 plattform.
Nedlasting (HTTP): https://www.ncftp.com/public_ftp/ncftp/ncftp-3.3.0-src.tar.gz
Nedlasting MD5 sum: 43056719c50cae2ed6b614e20c86d37e
Nedlastingsstørrelse: 628 KB
Estimert diskplass som kreves: 13 MB
Estimert byggetid: 0.2 SBU
LLVM-20.1.8 (med Clang, brukes som standard hvis installert)
For å installere NcFTP, 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
CC=/usr/bin/gcc. Denne
miljøvariabelen sikrer at gcc blir brukt hvis
LLVM-20.1.8 er installert.
make -C ... && make
...: Disse kommandoene lager og installerer
det dynamiske biblioteket libncftp som deretter brukes til å linke
mot ved kompilering av hovedprogrammet.
|
er et nettleserprogram for File Transfer Protocol |
|
|
er en individuell satsvis FTP jobb prosessor |
|
|
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.4 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.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/utils/nfs-utils/2.8.3/nfs-utils-2.8.3.tar.xz
Nedlasting MD5 sum: 5a827a1254f878370135e3b3ae49be73
Nedlastingsstørrelse: 728 KB
Estimert diskplass som kreves: 19 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
libevent-2.1.12, libnl-3.11.0, libtirpc-1.3.6, libxml2-2.14.5, rpcsvc-proto-1.4.4, og SQLite-3.50.4
Cyrus SASL-2.1.28 (for SASL autentisering), libnsl-2.0.1 (for NIS klient støtte), LVM2-2.03.34 (libdevmapper for NFSv4 støtte), OpenLDAP-2.6.10 (for LDAP autentisering), MIT Kerberos V5-1.22.1 eller libgssapi, og librpcsecgss (for GSS og RPC sikkerhetsstøtte), og libcap-2.76 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 GSSAPI støtte i denne pakken. Hvis du trenger å
bruke den, må du sørge for at MIT Kerberos V5-1.22.1 er
installert, og at du har GSSAPI støtte aktivert i libtirpc-1.3.6 også.
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 /etc/rc.d/init.d/nfs-server init
skriptet inkludert i blfs-bootscripts-20250225
pakken for å starte serveren ved oppstart.
make install-nfs-server
Nå oppretter du /etc/sysconfig/nfs-server
konfigurasjonsfilen:
cat > /etc/sysconfig/nfs-server << "EOF"
PORT="2049"
PROCESSES="8"
KILLDELAY="10"
EOF
Parametrene ovenfor kan eventuelt plasseres i
/etc/sysconfig/rc.site.
/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.
Følgende oppstartsskript er ikke obligatorisk hvis nfs-server skriptet er installert.
Installer /etc/rc.d/init.d/nfs-client init
skriptet inkludert i blfs-bootscripts-20250225
pakken for å starte klienttjenestene ved oppstart.
make install-nfs-client
For å montere nfs
filsystemer automatisk, klienter må også installere
netfs oppstartsskript som
beskrevet i Konfigurering
for Nettverksfilsystemer.
|
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 |
Mens LFS er i stand til å montere nettverksfilsystemer som NFS,
disse er ikke montert av mountfs
init skriptet. Nettverksfilsystemer må monteres etter at
nettverket er aktivert og avmontert før nettverket går ned.
netfs oppstartsskriptet ble
skrevet for å håndtere både oppstartstidsmontering av
nettverksfilsystemer, hvis oppføringen i /etc/fstab inneholder _netdev alternativet, og avmontering av alle
nettverksfilsystemer før nettverket bringes ned.
Som root bruker, installer
/etc/rc.d/init.d/netfs
oppstartsskriptet inkludert i blfs-bootscripts-20250225 pakken.
make install-netfs
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.4 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.76 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 /etc/rc.d/init.d/ntp
init skriptet inkludert i blfs-bootscripts-20250225
pakken.
make install-ntpd
Hvis du foretrekker å kjøre ntpd med jevne mellomrom,
legg til følgende kommando til root sin crontab:
ntpd -q
Utfør følgende kommando hvis du vil angi maskinvareklokke til gjeldende systemtid ved avslutning og omstart:
ln -v -sf ../init.d/setclock /etc/rc.d/rc0.d/K46setclock && ln -v -sf ../init.d/setclock /etc/rc.d/rc6.d/K46setclock
Omvendt er allerede satt opp av LFS.
|
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. NotatI 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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/rpcbind/rpcbind-1.2.8.tar.bz2
Nedlasting MD5 sum: dc7988c2307999525619983df72cb957
Nedlastingsstørrelse: 128 KB
Estimert diskplass som kreves: 1.6 MB
Estimert byggetid: mindre enn 0.1 SBU
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:
./configure --prefix=/usr \
--bindir=/usr/sbin \
--with-rpcuser=root \
--enable-warmstarts \
--without-systemdsystemunitdir &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
--with-rpcuser=root: Dette virker rundt en feil i konfigureringsskriptet.
--without-systemdsystemunitdir: Denne versjonen av BLFS støtter ikke systemd.
Installer /etc/rc.d/init.d/rpcbind init
skriptet inkludert i blfs-bootscripts-20250225
pakken.
make install-rpcbind
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.4 plattform.
Nedlasting (HTTP): https://www.samba.org/ftp/rsync/src/rsync-3.4.1.tar.gz
Nedlasting MD5 sum: 04ce67866db04fd7a1cde0b78168406e
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 11 MB (med tester; legg til 24 MB for HTML API dokumentasjon)
Estimert byggetid: 0.6 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.14.0 installert og ønsker å bygge HTML API dokumentasjon, kjør:
doxygen
For å kjøre testene, fiks én test og kjør deretter testpakken:
sed -i '/typedef/d' wildtest.c && 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.4.1/api && install -v -m644 dox/html/* /usr/share/doc/rsync-3.4.1/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-10.0p1 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 skriptet for å kjøre rsync klienten.
Installer /etc/rc.d/init.d/rsyncd init
skriptet inkludert i blfs-bootscripts-20250225
pakken.
make install-rsyncd
|
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.4 plattform.
Nedlasting (HTTP): https://download.samba.org/pub/samba/stable/samba-4.22.4.tar.gz
Nedlasting MD5 sum: 08cffdd420609c1b4933fe4f0a8d8496
Nedlastingsstørrelse: 41 MB
Estimert diskplass som kreves: 687 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.10, libtirpc-1.3.6, Parse-Yapp-1.21, og rpcsvc-proto-1.4.4
dbus-1.16.2 (for vfs_snapper, som er nyttig på systemer som støtter Volume Shadow Copies på Windows), Fuse-3.17.4, gpgme-2.0.0, ICU-77.1, jansson-2.14.1, libtasn1-4.20.0, libxslt-1.1.43 (for dokumentasjon), Linux-PAM-1.7.1, lmdb-0.9.33, MIT Kerberos V5-1.22.1, og OpenLDAP-2.6.10
Avahi-0.8, BIND-9.20.12, Cups-2.4.12, Cyrus SASL-2.1.28, GDB-16.3, git-2.50.1, GnuPG-2.4.8 (kreves for ADS og testpakken), libaio-0.3.113, libarchive-3.8.1 (for tar i smbclient), libcap-2.76 med PAM, libgcrypt-1.11.2, libnsl-2.0.1, libunwind-1.8.2, Markdown-3.8.2, nss-3.115, popt-1.19, Talloc-2.4.3 (brukt av testpakken), Vala-0.56.18, Valgrind-3.25.1 (valgfritt brukt av testpakken), xfsprogs-6.15.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.17.0, pytest-8.4.1, 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 Python moduler utenfor omfanget av BLFS:
python3 -m venv --system-site-packages pyvenv && ./pyvenv/bin/pip3 install cryptography pyasn1 iso8601
Installer Samba ved å kjøre følgende kommandoer:
PYTHON=$PWD/pyvenv/bin/python3 \
PATH=$PWD/pyvenv/bin:$PATH \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--with-piddir=/run/samba \
--with-pammodulesdir=/usr/lib/security \
--enable-fhs \
--without-ad-dc \
--without-systemd \
--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.13/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
--system-site-packages:
Tillater at Python3 venv
modulen å få tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
--enable-fhs:
Tildeler alle andre filbaner på en måte som er i samsvar med
Filesystem Hierarchy Standard (FHS).
--without-systemd:
Deaktiver systemd
integrasjon, siden den ikke er bygget i System V versjonen av
LFS/BLFS.
--with-shared-modules='!vfs_snapper':
Deaktiver vfs_snapper modulen hvis du vil bygge samba uten
dbus støtte, for oppsett
uten grafisk brukergrensesnitt.
--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.22.1
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 oppstartsskriptet.
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 oppstartsskript. 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 oppstartsskript 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 enkelhets skyld er det gitt Samba oppstartsskript. Det er to
inkludert i blfs-bootscripts-20250225
pakken. Den første, samba,
vil starte smbd og nmbd nissen nødvendig
for å gi SMB/CIFS tjenester. Det andre skriptet,
winbind, starter
winbindd
nissen, brukes til å tilby Windows domenetjenester til
Linux klienter.
make install-samba
make install-winbindd
|
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.4 plattform.
Nedlasting (HTTP): https://ftp.gnu.org/gnu/wget/wget-1.25.0.tar.gz
Nedlasting MD5 sum: c70ba58b36f944e8ba1d655ace552881
Nedlastingsstørrelse: 5.0 MB
Estimert diskplass som kreves: 38 MB (legg til 27 MB for tester)
Estimert byggetid: 0.3 SBU (legg til 0.4 SBU for tester)
GnuTLS-3.8.10, HTTP-Daemon-6.16 (for testpakken), IO-Socket-SSL-2.095 (for testpakken), libidn2-2.3.8, libproxy-0.5.10, pcre2-10.45, og Valgrind-3.25.1 (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.10.
--enable-libproxy: Denne bryteren
lar wget bruke libproxy for proxy-konfigurasjon. Bruk den
hvis du har libproxy-0.5.10 pakken er installert og
ønsker å bruke en proxy-server.
--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.14.0
eller lsusb fra
usbutils-018 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.4 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.4 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.4 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
Configuring the Linux Kernel for Wireless
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.54.0, sørge for at du har installert dbus-1.16.2, deretter legg 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
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/
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
Du må starte på nytt systemets D-Bus nisse før du kan bruke WPA Supplicant D-Bus grensesnittet.
Hvis du bruker WPA Supplicant med NetworkManager-1.54.0 (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/sysconfig/wpa_supplicant-.
SSID er strengen som tilgangspunktet/ruteren sender for å
identifisere seg. Kjør følgende kommando som wifi0.confroot bruker:
wpa_passphraseSSID| sed '/^\t#/d' > /etc/sysconfig/wpa_supplicant-wifi0.conf
wpa_supplicant kommandoen vil be deg om å skrive inn passordet til tilgangspunktet.
/etc/sysconfig/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/sysconfig/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, 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.
Hvis du vil
konfigurere nettverksgrensesnitt ved oppstart ved hjelp av
wpa_supplicant, må du
installere /lib/services/wpa
skriptet inkludert i blfs-bootscripts-20250225
pakken:
make install-service-wpa
Hvis ruteren/tilgangspunktet bruker DHCP til å tildele IP
adresser, kan du installere dhcpcd-10.2.4 og bruke den til å
automatisk hente nettverksadresser. Opprett /etc/sysconfig/ifconfig- ved å kjøre
følgende kommando som wifi0root
bruker:
cat > /etc/sysconfig/ifconfig.wifi0<< "EOF"ONBOOT="yes" IFACE="EOFwlan0" SERVICE="wpa" # Additional arguments to wpa_supplicant WPA_ARGS="" WPA_SERVICE="dhcpcd" DHCP_START="-b -q<insert appropriate start options here>" DHCP_STOP="-k<insert additional stop options here>"
Alternativt, hvis du bruker statiske adresser på ditt
lokale nettverk, opprette da /etc/sysconfig/ifconfig- ved å kjøre
følgende kommando som wifi0root
bruker:
cat > /etc/sysconfig/ifconfig.wifi0<< "EOF"ONBOOT="yes" IFACE="EOFwlan0" SERVICE="wpa" # Additional arguments to wpa_supplicant WPA_ARGS="" WPA_SERVICE="ipv4-static" IP="192.168.1.1" GATEWAY="192.168.1.2" PREFIX="24" BROADCAST="192.168.1.255"
Du kan koble til det trådløse tilgangspunktet ved å kjøre
følgende kommando som root
bruker:
ifup wifi0
Erstatt wlan0 med
riktig trådløst grensesnitt og wifi0 med ønsket navn for
konfigurasjonsfilen. Vær oppmerksom på at wpa_supplicant-*.conf og ifconfig.* konfigurasjonsfiler trenger å
ha identiske navn, dvs. begge inneholder wifi0 i deres navn.
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.4 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.4/avahi-0.8-ipv6_race_condition_fix-1.patch
GLib-2.84.4 (GObject Introspection anbefalt)
D-Bus Python-1.4.0, libevent-2.1.12, Doxygen-1.14.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 \
--disable-qt5 \
--enable-core-docs \
--with-distro=none \
--with-systemdsystemunitdir=no \
--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-systemdsystemunitdir=no:
Uten den nissen klarer ikke å starte i BLFS, som ikke støtter
systemd.
--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 automatisk
når systemet startes på nytt, installer /etc/rc.d/init.d/avahi oppstartsskriptet
fra blfs-bootscripts-20250225
pakken.
make install-avahi
|
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.12. 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.4 plattform.
Nedlasting (HTTP): https://ftp.isc.org/isc/bind9/9.20.12/bind-9.20.12.tar.xz
Nedlasting MD5 sum: b900609638c5f3ab561ac9d4b45e85f2
Nedlastingsstørrelse: 5.4 MB
Estimert diskplass som kreves: 102 MB
Estimert byggetid: 0.3 SBU (bruker parallellisme=4)
liburcu-0.15.3 og libuv-1.51.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 lib/isccc && make -C bin/dig && make -C bin/nsupdate && make -C bin/rndc && 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 lib/isccc install &&
make -C bin/dig install &&
make -C bin/nsupdate install &&
make -C bin/rndc install &&
cp -v doc/man/{dig.1,host.1,nslookup.1,nsupdate.1} /usr/share/man/man1 &&
cp -v doc/man/rndc.8 /usr/share/man/man8
--disable-doh: Bruk dette
alternativet hvis du ikke har installert nghttp2-1.66.0 og
du ikke trenger DNS over HTTPS støtte.
make -C lib/...: Disse kommandoene bygger biblioteker som trengs for klientprogrammene.
make -C bin/...: Denne kommandoen bygger klientprogrammene.
make -C doc: Denne kommandoen bygger manualsider hvis den valgfrie Python modulen sphinx-8.2.3 er installert.
Bruk cp -v doc/man/... /usr/share/man/man... for å installere manualsidene hvis de er bygget.
Se programbeskrivelsene i BIND-9.20.12 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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/releases/1.54.0/downloads/NetworkManager-1.54.0.tar.xz
Nedlasting MD5 sum: 300509d31ac641bba24240d708916083
Nedlastingsstørrelse: 5.9 MB
Estimert diskplass som kreves: 328 MB (med tester og dokumentasjon)
Estimert byggetid: 0.9 SBU (med tester, bruker parallellisme=4)
cURL-8.15.0, dhcpcd-10.2.4, GLib-2.84.4 (med GObject Introspection), iptables-1.8.11, libpsl-0.21.5, newt-0.52.25 (for nmtui), nss-3.115, Polkit-126 (kjøretid), PyGObject-3.52.3, elogind-255.17, Vala-0.56.18, og wpa_supplicant-2.11 (kjøretid, bygd med D-Bus støtte)
BlueZ-5.83, D-Bus Python-1.4.0 (for testpakken), GnuTLS-3.8.10 (kan brukes i stedet for nss-3.115), GTK-Doc-1.34.0, jansson-2.14.1, libnvme-1.15, ModemManager-1.24.2, UPower-1.90.9, Valgrind-3.25.1, 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]
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 &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D libaudit=no \
-D nmtui=true \
-D ovs=false \
-D ppp=false \
-D nbft=false \
-D selinux=false \
-D session_tracking=elogind \
-D modem_manager=false \
-D systemdsystemunitdir=no \
-D systemd_journal=false \
-D nm_cloud_setup=false \
-D qt=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.54.0}
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.54.0
--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
systemdsystemunitdir=no og -D systemd_journal=false:
systemd er ikke brukt til sysv init systemer, så unngå å
installere enheter og bruke systemd journal.
-D ovs=false: Denne
bryteren deaktiverer Open vSwitch integrasjon fordi den
trenger jansson-2.14.1. Fjern den hvis du har
jansson-2.14.1 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 nbft=false: Denne
bryteren er nødvendig hvis libnvme-1.15 ikke er installert, og
deaktiverte NBFT støtte i initrd generatoren. Merk at BLFS
ikke bruker initrd generatoren som leveres av NetworkManager
som standard.
-D
session_tracking=elogind: Denne bryteren brukes
til å sette elogind 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 Qt 5 eksempler.
-D
nm_cloud_setup=false: Bruk denne bryteren hvis du
ikke har installert jansson-2.14.1. Dette deaktiverer
nm-cloud-setup, som brukes til å automatisk konfigurere
nettverket i et offentlig skymiljø i en virtuell maskin.
-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).
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
automatisk når systemet startes på nytt, installer
/etc/rc.d/init.d/networkmanagerbootscript
fra blfs-bootscripts-20250225
pakken.
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.
Den enkleste måten å gjøre dette på er å fjerne
S20network fra /etc/rc.d/rc3.d/ og /etc/rc.d/rc5.d/.
Også hvis du bruker dhcpcd-10.2.4, vær forsiktig med timing problemer hvis du setter opp nettverksapplikasjoner som ntpd, nfs eller sshd. Det tar flere sekunder for dhcpcd å initialisere nettverksgrensesnittet og hvis disse programmene starter før nettverksgrensesnittet er fullstendig initialisert, kan det hende at disse programmene må startes manuelt.
make install-networkmanager
|
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.4 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.50, libnma-1.10.6, og libsecret-0.21.7
GLib-2.84.4 (med GObject Introspection) og ModemManager-1.24.2
Siden denne pakken bruker Polkit-126 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 \
-D team=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 team=false: Denne
bryteren deaktiverer team konfigurasjonsredigering siden det
krever jansson-2.14.1. Hvis du har Jansson
installert, fjern dette alternativet eller sett det til
true.
-D wwan=false: Denne bryteren
deaktiverer WWAN støtte. Bruk denne hvis du ikke har
ModemManager-1.24.2 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.4 plattform.
Nedlasting (HTTP): https://nmap.org/dist/nmap-7.98.tar.bz2
Nedlasting MD5 sum: 4d6b817ed0739141656e06a74bac5e57
Nedlastingsstørrelse: 12 MB
Estimert diskplass som kreves: 118 MB (med tester)
Estimert byggetid: 0.5 SBU (Bruker parallellisme=4; med tester)
Hvis PyGObject3 modulen ikke er installert, må du hoppe over kommandoen som gjør at byggesystemet bruker LFS Setuptools installasjonen og da vil en internettforbindelse være nødvendig. De andre pakkene anbefales fordi hvis de ikke er installert, vil byggeprosessen kompilere og koble mot sin egen (ofte eldre) versjon.
liblinear-249, libpcap-1.10.5, libssh2-1.11.1, Lua-5.4.8, pcre2-10.45, og PyGObject-3.52.3
libdnet og setuptools-gettext (for tiden ubrukelig)
Få byggesystemet til å bruke Setuptools Python modulen fra LFS i stedet for å laste ned en kopi fra internett, og installer Python wheels som allerede er opprettet når du kjører make i stedet for å bygge dem opp igjen ved make install:
sed -ri Makefile.in \
-e 's#-m build#& --no-isolation#' \
-e '/pip install/s#(ZENMAP|NDIFF)DIR\)/#&dist/*.whl#'
Fjern en unyttig avhengighet av setuptools-gettext:
sed 's/, "setuptools-gettext"//' -i zenmap/pyproject.toml
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
Tester trenger en grafisk økt og skal kjøres som root bruker. For å teste resultatene,
utsted:
make check
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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/traceroute/traceroute-2.1.6.tar.gz
Nedlasting MD5 sum: 94b41044978f4f57c373adc5a32c42d7
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.4 plattform.
Nedlasting (HTTP): https://github.com/rfc1036/whois/archive/v5.6.4/whois-5.6.4.tar.gz
Nedlasting MD5 sum: ddaca6b94981dc37aded8d5e6fb7ab66
Nedlastingsstørrelse: 112 KB
Estimert diskplass som kreves: 1.2 MB
Estimert byggetid: mindre enn 0.1 SBU
libidn-1.43 eller libidn2-2.3.8
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.4 plattform.
Nedlasting (HTTP): https://www.wireshark.org/download/src/all-versions/wireshark-4.4.8.tar.xz
Nedlasting MD5 sum: bb883527d9975998d2c246a88c30d2ae
Nedlastingsstørrelse: 45 MB
Estimert diskplass som kreves: 774 MB (174 MB installert)
Estimert byggetid: 2.5 SBU (med parallellitet=4)
Ytterligere dokumentasjon: https://www.wireshark.org/download/docs/ (inneholder lenker til flere forskjellige dokumenter i en rekke formater)
CMake-4.1.0, c-ares-1.34.5, GLib-2.84.4, libgcrypt-1.11.2, Qt-6.9.2, og Speex-1.2.1
libpcap-1.10.5 (nødvendig for å fange data)
asciidoctor-2.0.23, Brotli-1.1.0, Cups-2.4.12, Doxygen-1.14.0, git-2.50.1, GnuTLS-3.8.10, libnl-3.11.0, libxslt-1.1.43, libxml2-2.14.5, Lua-5.4.8, MIT Kerberos V5-1.22.1, nghttp2-1.66.0, SBC-2.1, Vulkan-Headers-1.4.321, BCG729, libilbc, libsmi, libssh, MaxMindDB, Minizip, nghttp3, 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.4.8 \
-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.4.8 &&
install -v -m644 ../README.linux ../doc/README.* ../doc/randpkt.txt \
/usr/share/doc/wireshark-4.4.8 &&
pushd /usr/share/doc/wireshark-4.4.8 &&
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.4.8
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.
/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.11. 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.4 plattform.
Nedlasting (HTTP): https://github.com/c-ares.haxx.se/download/c-ares-1.34.5.tar.gz
Nedlasting MD5 sum: 2c6dae580c2ef4ca03c1a27959bb9727
Nedlastingsstørrelse: 988 KB
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.4 plattform.
Nedlasting (HTTP): https://curl.se/download/curl-8.15.0.tar.xz
Nedlasting MD5 sum: b8872bb6cc5d18d03bea8ff5090b2b81
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 49 MB (legg til 68 MB for tester)
Estimert byggetid: 0.3 SBU (legg til 4.5 SBU for tester (uten valgrind, legg til 16 SBU med valgrind) alle bruker parallellisme=4)
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.34.5, GnuTLS-3.8.10, libidn2-2.3.8, libssh2-1.11.1, MIT Kerberos V5-1.22.1, nghttp2-1.66.0, OpenLDAP-2.6.10, Samba-4.22.4 (kjøretid, for NTLM autentisering), gsasl, impacket, libmetalink, librtmp, ngtcp2, quiche, og SPNEGO
Apache-2.4.65 og stunnel-5.75 (for HTTPS og FTPS tester), OpenSSH-10.0p1, og Valgrind-3.25.1 (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 \
--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.15.0
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.
--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 alternativet er ikke
nødvendig hvis --with-gnutls er
valgt i stedet.
--with-gssapi: Denne parameteren
legger til Kerberos 5 støtte
til libcurl.
--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.
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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/geoclue/geoclue/-/archive/2.7.2/geoclue-2.7.2.tar.bz2
Nedlasting MD5 sum: d58d6f3286a6b3ace395fc36468aace2
Nedlastingsstørrelse: 108 KB
Estimert diskplass som kreves: 7.2 MB
Estimert byggetid: 0.1 SBU
JSON-GLib-1.10.6 og libsoup-3.6.5
Avahi-0.8, libnotify-0.8.6, ModemManager-1.24.2, og Vala-0.56.18
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/glib-networking/2.80/glib-networking-2.80.1.tar.xz
Nedlasting MD5 sum: 405e6c058723217a1307ba8415615f9d
Nedlastingsstørrelse: 288 KB
Estimert diskplass som kreves: 5.9 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
gsettings-desktop-schemas-48.0 (for applikasjonene som bruker denne pakken til å bruke proxy serverinnstillinger i GNOME) og make-ca-1.16.1
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.
-D libproxy=disabled:
Denne bryteren deaktiverer libproxy støtte. Hvis du vil bygge
med libproxy for å tillate denne pakken å hente
proxy-innstillinger via API-et, fjern denne bryteren.
/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.4 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 KDSoap_QT6=ON \
-D CMAKE_INSTALL_DOCDIR=/usr/share/doc/kdsoap-2.2.0 \
.. &&
make
Pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install
kdsoap-ws-discovery-client pakken inneholder et bibliotek som gir støtte for WS-Discovery protokollen, en nylig protokoll som brukes til å oppdage tjenester tilgjengelig på et lokalt nettverk.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/kdsoap-ws-discovery-client/kdsoap-ws-discovery-client-0.4.0.tar.xz
Nedlasting MD5 sum: 6d653d927efac8296662bc92784f2fe5
Nedlastingsstørrelse: 32 KB
Estimert diskplass som kreves: 7.5 MB
Estimert byggetid: 0.2 SBU
Installer kdsoap-ws-discovery-client 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 QT_MAJOR_VERSION=6 \
-W no-dev .. &&
make
For å teste resultatene, utsted: make test.
Nå, som root bruker:
make install &&
mv -v /usr/share/doc/KDSoapWSDiscoveryClient{,-0.4.0}
-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.
mv -v /usr/share/doc/KDSoapWSDiscoveryClient[...]:: Denne kommandoen flytter dokumentasjonen til en versjonert mappe.
-D
QT_MAJOR_VERSION=6: Denne parameteren forteller
byggesystemet å bygge Qt6 versjonen av denne pakken i stedet
for Qt5 versjonen.
-D BUILD_QCH=ON: Dette
alternativet forteller byggesystemet og lage dokumentasjon
som kan brukes med QtCreator, QtAssistant eller KDevelop.
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.4 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.16.1 og libpcap-1.10.5 (for eksempelprogrammer), SWIG-4.3.1 (for Python bindinger), og Doxygen-1.14.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.14.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.12 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.4 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.14.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.14.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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/thom311/libnl/releases/download/libnl3_11_0/libnl-3.11.0.tar.gz
Nedlasting MD5 sum: 0a5eb82b494c411931a47638cb0dba51
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 28 MB (med API dokumentsjon)
Estimert byggetid: 0.3 SBU (med API dokumentsjon)
Nedlasting (HTTP): https://github.com/thom311/libnl/releases/download/libnl3_11_0/libnl-doc-3.11.0.tar.gz
Nedlasting MD5 sum: 5c74044c92f2eb08de69cce88714cd1b
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 kommandoen for å 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.11.0 &&
tar -xf ../libnl-doc-3.11.0.tar.gz --strip-components=1 --no-same-owner \
-C /usr/share/doc/libnl-3.11.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.4 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.50, ISO Codes-4.18.0, og NetworkManager-1.54.0
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-48.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.4 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.4 plattform.
Nedlasting (HTTP): https://www.tcpdump.org/release/libpcap-1.10.5.tar.gz
Nedlasting MD5 sum: 0dc69ed81464e7a255715fa685daf134
Nedlastingsstørrelse: 952 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: mindre enn 0.1 SBU
BlueZ-5.83, libnl-3.11.0, libusb-1.0.29, 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.4 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.8 og libunistring-1.3
GTK-Doc-1.34.0 (for dokumentasjon), ICU-77.1 (kan brukes i stedet for libidn2), libidn-1.43 (kan brukes i stedet for libidn2), Valgrind-3.25.1 (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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/slirp/libslirp/-/archive/v4.9.1/libslirp-v4.9.1.tar.bz2
Nedlasting MD5 sum: eefd3b2375453cf9d07375c389441685
Nedlastingsstørrelse: 130 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.
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libsoup/3.6/libsoup-3.6.5.tar.xz
Nedlasting MD5 sum: 181a474d783492e3f5f7cbfb047bcecd
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 31 MB (med tester)
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; med tester)
glib-networking-2.80.1, libpsl-0.21.5, libxml2-2.14.5, nghttp2-1.66.0, og SQLite-3.50.4
GLib-2.84.4 (med GObject Introspection) og Vala-0.56.18
Apache-2.4.65 (kreves for å kjøre testpakken), Brotli-1.1.0, cURL-8.15.0 (kreves for å kjøre testpakken), Gi-DocGen-2025.4, MIT Kerberos V5-1.22.1 (kreves for å kjøre testpakken), PHP-8.4.11 kompilert med XMLRPC-EPI støtte (bare brukt for XMLRPC regresjonstestene), Samba-4.22.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 \
--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 forhindrer det å laste ned eventuell valgfrie
avhengigheter som ikke er installert på systemet.
-D docs=enabled: Hvis Gi-DocGen-2025.4 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-2025.4 ikke er
installert.
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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/libtirpc/libtirpc-1.3.6.tar.bz2
Nedlasting MD5 sum: 8de9e6af16c4bc65ba40d0924745f5b7
Nedlastingsstørrelse: 553 KB
Estimert diskplass som kreves: 7.4 MB
Estimert byggetid: mindre enn 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/libtirpc-1.3.6-gcc15_fixes-1.patch
MIT Kerberos V5-1.22.1 for GSSAPI støtte
Hvis du oppdaterer denne pakken, må du også oppdatere enhver eksisterende versjon av rpcbind-1.2.8
Bruk først en oppdatering for å gjøre pakken kompatibel med gcc-15:
patch -Np1 -i ../libtirpc-1.3.6-gcc15_fixes-1.patch
Installer libtirpc ved å kjøre følgende kommandoer:
./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 ingen GSSAPI leverandører er
installert, som MIT Kerberos V5-1.22.1. Fjern
denne bryteren hvis du har installert MIT Kerberos
V5-1.22.1 og du må bruke GSSAPI støtte.
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.4 plattform.
Nedlasting (HTTP): https://notroj.github.io/neon/neon-0.35.0.tar.gz
Nedlasting MD5 sum: 6fa30b9c2720b70761a2d1eb50e76471
Nedlastingsstørrelse: 928 KB
Estimert diskplass som kreves: 7.1 MB (ytterligere 321 MB for tester)
Estimert byggetid: mindre enn 0.1 SBU (legg til 0.4 SBU for tester)
GnuTLS-3.8.10, libproxy-0.5.10, libxml2-2.14.5, MIT Kerberos V5-1.22.1, nss-3.115 (for noen tester), xmlto-0.0.29 (for å regenerere dokumentasjonen), 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.
--with-libproxy: Denne bryteren
aktiverer støtte for å bruke libproxy for å hente
proxy-serverinformasjon. Bruk denne bryteren hvis du har
libproxy-0.5.10 installert og ønsker å
bruke den.
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.4 plattform.
Nedlasting (HTTP): https://github.com/nghttp2/nghttp2/releases/download/v1.66.0/nghttp2-1.66.0.tar.xz
Nedlasting MD5 sum: 295c22437cc44e1634a2b82ea93df747
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 20 MB
Estimert byggetid: 0.1 SBU
Følgende brukes bare hvis du bygger hele pakken i stedet for bare hovedbibliotekene: Boost-1.89.0, c-ares-1.34.5, cython-3.1.3, jansson-2.14.1, libevent-2.1.12, sphinx-8.2.3, 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.66.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.
--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.6, sammen med rpcgen programmet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.22.1, (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.
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.4 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.3.0, libpng-1.6.50, libjpeg-turbo-3.0.1, librsvg-2.61.0, og libtiff-4.7.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.4 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.10 (eksperimentell, til å erstatte openssl), libarchive-3.8.1, Zip-3.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.1629, 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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/fetchmail/fetchmail-6.5.4.tar.xz
Nedlasting MD5 sum: f88695541e507ec2713374a82accd147
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 11 MB inkludert tester
Estimert byggetid: 0.1 SBU (inkludert tester)
en lokal MDA (Procmail-3.24)
MIT Kerberos V5-1.22.1 og libgssapi
Python-3.13.7, bygget etter Tk-8.6.16, 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:
./configure --prefix=/usr && make
For å teste resultatene, kjør: make check.
Nå, som root bruker:
make install && chown -v fetchmail:nogroup /usr/bin/fetchmail
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.4 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.4/heirloom-mailx-12.5-fixes-1.patch
nss-3.115, MIT Kerberos V5-1.22.1 (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.4 plattform.
Nedlasting (HTTP): https://bitbucket.org/mutt/mutt/downloads/mutt-2.2.14.tar.gz
Nedlasting MD5 sum: 8794c4d68a4a147e454936a242ea6a9e
Nedlastingsstørrelse: 5.3 MB
Estimert diskplass som kreves: 36 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-16.3, GnuPG-2.4.8, GnuTLS-3.8.10, gpgme-2.0.0 (for øyeblikket ødelagt), libidn-1.43, MIT Kerberos V5-1.22.1, en MTA (som gir en sendmail kommando), slang-2.3.3, SQLite-3.50.4, 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.14 \
--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.
--with-gss: Denne parameteren
legger til autentiseringsstøtte for Kerberos. Hvis du trenger
å bruke denne støtten, må du sørge for at MIT Kerberos
V5-1.22.1 er riktig installert og konfigurert, og bruk
deretter dette alternativet mens du bygger denne pakken.
|
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.8 verktøy |
|
|
er en nøkkelring dumper for PGP. Det er ikke nødvendig for GnuPG-2.4.8 |
|
|
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.4 plattform.
Nedlasting (HTTP): https://github.com/BuGlessRB/procmail/archive/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.4/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 CC="gcc -std=gnu17" 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.
CC="gcc -std=gnu17": Dette setter C standarden til C17 fordi denne pakken ikke er kompatibel med C23, og ingen rettelser er lett tilgjengelige.
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.5 er en GTK2 basert e-postklient.
seamonkey-2.53.21 inkluderer både en e-postklient og nyhetsleser i installasjonen.
Thunderbird-140.2.0esr er en e-post-/nyhetsklient basert på Mozilla kodebase.
Evolution-3.56.2 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.4 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/httpd/httpd-2.4.65.tar.bz2
Nedlasting MD5 sum: 7274bb6fa215925fd697451a0f133483
Nedlastingsstørrelse: 7.2 MB
Estimert diskplass som kreves: 88 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/httpd-blfs_layout-1.patch
Brotli-1.1.0, Doxygen-1.14.0, jansson-2.14.1, libxml2-2.14.5, Lua-5.4.8, Lynx-2.9.2 eller Links-2.30 eller ELinks, nghttp2-1.66.0, OpenLDAP-2.6.10 (Apr-Util-1.6.3 må være installert med ldap støtte), rsync-3.4.1, 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-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 &&
./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-uidmin=100 \
--with-suexec-userdir=public_html \
--with-suexec-logfile=/var/log/httpd/suexec.log &&
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.
--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 /etc/rc.d/init.d/httpd init
skriptet inkludert i blfs-bootscripts-20250225
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.12.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://ftp.isc.org/isc/bind9/9.20.12/bind-9.20.12.tar.xz
Nedlasting MD5 sum: b900609638c5f3ab561ac9d4b45e85f2
Nedlastingsstørrelse: 5.4 MB
Estimert diskplass som kreves: 137 MB (22 MB installert)
Estimert byggetid: 0.4 SBU (med parallellitet=4; ca. 40 minutter noe prosessoruavhengig, for å kjøre hele testpakken)
liburcu-0.15.3 og libuv-1.51.0
JSON-C-0.18, libcap-2.76 med PAM, og nghttp2-1.66.0
cURL-8.15.0, libidn2-2.3.8, libxml2-2.14.5, lmdb-0.9.33, MIT Kerberos V5-1.22.1, pytest-8.4.1, sphinx-8.2.3 (nødvendig for å bygge dokumentasjon), cmocka, geoip, jemalloc, w3m
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/bind
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.52 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.66.0 installert og ikke
trenger støtte for DNS over HTTPS.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--system-site-packages:
Tillater at Python3 venv
modulen å få tilgang til systeminstallerte /usr/lib/python3.13/site-packages mappen.
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
/etc/rc.d/init.d/bind init
skriptet inmludert i blfs-bootscripts-20250225
pakken:
make install-bind
Nå start BIND med følgende kommando:
/etc/rc.d/init.d/bind start
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.2.3 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 epub og html på https://downloads.isc.org/isc/bind9/9.20.12/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.4 plattform.
Nedlasting (HTTP): https://downloads.isc.org/isc/kea/3.0.1/kea-3.0.1.tar.xz
Nedlasting MD5 sum: fc0e6d43f0afbab9e2abc458bded16ac
Nedlastingsstørrelse: 6.3 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.89.0 og log4cplus-2.1.2
botan, MIT Kerberos V5-1.22.1, Valgrind-3.25.1;for dokumentasjon Doxygen-1.14.0, Graphviz-13.1.2, og sphinx_rtd_theme-3.0.2
MariaDB-11.8.3 eller MySQL, og PostgreSQL-17.6
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]
Først, bruk noen nødvendige rettelser for boost-1.89.0:
sed -e "s/, modules: \['system'\]//" -i meson.build &&
sed -e "/shared_ptr.hpp/a#include <boost/asio/deadline_timer.hpp>" \
-i src/lib/asiolink/interval_timer.cc &&
sed -e "/posix_time_types.hpp/a#include <boost/asio/deadline_timer.hpp>" \
-i src/lib/asiodns/io_fetch.cc &&
sed -e "/posix_time_types.hpp/a#include <boost/asio/deadline_timer.hpp>" \
-i src/lib/asiodns/tests/io_fetch_unittest.cc
Nå, installer ISC Kea DHCP Server ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
-D crypto=openssl \
-D runstatedir=/run &&
ninja
Hvis tester var aktivert, kjør ninja test for å teste resultatene. Det finnes tester som krever en aktiv database når noen av databasehakene er bygget.
For å installere ISC Kea DHCP
Server pakken, utsted følgende kommandoer som
root bruker:
ninja install
Rett noen stier kodet i keactrl skriptet:
sed -e "s;\${prefix}/;;" -i /usr/sbin/keactrl
Opprett noen mapper og fiks tillatelsesinnstillingene deres
som root bruker:
install -dm0750 /var/lib/kea install -dm0750 /var/log/kea
-D crypto=openssl: Tillater bruk
av OpenSSL for kommunikasjon med kontrollagenten og for DNS
oppdateringer. Bruk -D
crypto=botan hvis du vil bruke botan. Standard er
openssl.
-D postgresql=enabled eller
-D mysql=enabled: 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.
-D tests=enabled: Dette
alternativet er nødvendig for å bygge testpakken. Dropp det
hvis du ikke skal kjøre testene.
-D krb5=enabled: Denne bryteren
muliggjør integrering med Kerberos for autentisering av
klientdatamaskiner i et bedriftsmiljø.
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. Ytterligere konfigurasjonsfiler kommer fra keactrl agenten som brukes til å kontrollere serverne på en enkel måte.
Merk at Kea Control Agent er utdatert siden versjon 3.0.0. Ikke forveksle kea-ctrl-agent med keactrl.
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
/etc/rc.d/init.d/kea-dhcpd init
skriptet inkludert i blfs-bootscripts-20250225 pakken:
make install-kea-dhcpd
/etc/kea/keactrl.conf,
/etc/kea/kea-ctrl-agent.conf,
/etc/kea/kea-dhcp4.conf,
/etc/kea/kea-dhcp6.conf, og
/etc/kea/kea-dhcp-ddns.conf
keactrl
brukes til å kontrollere uavhengige servere (IPv4, IPv6,
DDNS). Konfigurasjonsfilen /etc/kea/keactrl.conf er installert som
standard og inkluderer mange baneinnstillinger som er
definert på grunn av configure ved byggetiden.
Det inkluderer også innstillinger for å spesifisere hvilken
av serverne som skal være startet.
Kontrollagent
Kontrollagenten er en nisse som tillater
(re)konfigurasjon av Kea DHCP tjenesten via REST API.
Sett ctrl_agent=yes for
å starte kontrollagent (tjeneste som gir en REST
API), sett ctrl_agent=no
i tilfelle kontrollagenten ikke er nødvendig.
IPv4 DHCP server
Denne nissen håndterer forespørsler om IPv4 adresser.
Sett dhcp4=yes for å
starte den, sett dhcp4=no i tilfelle DHCP tjeneste
for IPv4 ikke er ønsket.
IPv6 DHCP server
Denne nissen håndterer forespørsler om IPv6 adresser.
Sett dhcp6=yes for å
starte den, sett dhcp6=no i tilfelle DHCP tjeneste
for IPv6 ikke er ønsket.
Dynamic DNS
Denne nissen brukes til å oppdatere en DNS server
dynamisk når Kea tildeler en IP adresse til en enhet.
Sett dhcp_ddns=yes for å
aktivere det, sett dhcp_ddns=no i tilfelle dynamic DNS
oppdateringer ikke er ønsket.
Netconf tjenesten er ikke installert fordi nødvendige avhengigheter dekkes ikke av gjeldende BLFS bok.
Med følgende kommando vil Kea bli konfigurert til å starte
dhcp tjenesten for IPv4 og dynamisk DNS oppdatering, mens
kontrollagenten og dhcp tjenesten for IPv6 forblir nede.
Juster kommandoen til å matche dine behov på startet
tjenester og utfør som root
bruker:
sed -e "s/^dhcp4=.*/dhcp4=yes/" \
-e "s/^dhcp6=.*/dhcp6=no/" \
-e "s/^dhcp_ddns=.*/dhcp_ddns=yes/" \
-e "s/^ctrl_agent=.*/ctrl_agent=no/" \
-i /etc/kea/keactrl.conf
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/kea/kea4-ctrl-socket"
},
"dhcp6": {
"socket-type": "unix",
"socket-name": "/run/kea/kea6-ctrl-socket"
},
"d2": {
"socket-type": "unix",
"socket-name": "/run/kea/kea-ddns-ctrl-socket"
}
},
"loggers": [
{
"name": "kea-ctrl-agent",
"output_options": [
{
"output": "/var/log/kea/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/kea/kea4-ctrl-socket"
},
"lease-database": {
"type": "memfile",
"lfc-interval": 3600,
"name": "/var/lib/kea/kea-leases4.csv"
},
"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/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.12 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/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/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.12.
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.4 plattform.
Nedlasting (HTTP): https://github.com/proftpd/proftpd/archive/v1.3.9/proftpd-1.3.9.tar.gz
Nedlasting MD5 sum: 760b2bf912e4ac26b5f1aa9d25b440c6
Nedlastingsstørrelse: 19 MB
Estimert diskplass som kreves: 66 MB
Estimert byggetid: 0.3 SBU
libcap-2.76 med PAM, libssh2-1.11.1, Linux-PAM-1.7.1, MariaDB-11.8.3 eller MySQL, pcre2-10.45, PostgreSQL-17.6, 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.9 && cp -Rv doc/* /usr/share/doc/proftpd-1.3.9
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 /etc/rc.d/init.d/proftpd init
skriptet inkludert i blfs-bootscripts-20250225
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.4 plattform.
Nedlasting (HTTP): https://www.dovecot.org/releases/2.4/dovecot-2.4.0.tar.gz
Nedlasting MD5 sum: 5a0b3aaaf0adc1278d2611ff5f1593cd
Nedlastingsstørrelse: 7.5 MB
Estimert diskplass som kreves: 253 MB
Estimert byggetid: 4.8 SBU
libtirpc-1.3.6 og Linux-PAM-1.7.1
Cyrus SASL-2.1.28, ICU-77.1, libcap-2.76 med PAM, libunwind-1.8.2, Lua-5.4.8, MariaDB-11.8.3 eller MySQL, OpenLDAP-2.6.10, PostgreSQL-17.6, SQLite-3.50.4, Valgrind-3.25.1, xapian-1.4.29, xfsprogs-6.15.0, Cassandra, stemmer og libsodium
Det er betydelige endringer i konfigurasjonen av denne pakken som kreves ved oppdatering til Dovecot 2.4.0. Vennligst se gjennom dokumentasjon kl Dovecot Upgrade Guide før du fortsetter hvis du oppgraderer denne pakken fra en tidligere versjon.
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
Installer Dovecot ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--with-systemd=no \
--docdir=/usr/share/doc/dovecot-2.4.0 \
--disable-static &&
make
For å teste resultatene, kjør make -k check.
Nå, som root bruker:
make install
--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-lua=no:: Denne bryteren
aktiverer Lua
programtilleggstøtte. Dette inkluderer et programtillegg for
e-post og push varsling.
Følgende konfigurasjon er et enkelt proof of concept med IMAP tjenesten som bruker lokale brukere for autentisering og postboksplassering.
mv -v /etc/dovecot/dovecot.conf{,.orig} &&
chmod -v 1777 /var/mail &&
cat > /etc/dovecot/dovecot.conf << "EOF"
# The dovecot configuration requires a minimum version to be set. The server
# will refuse to start if the version set here is older than the version of
# Dovecot installed. This option allows the Dovecot server to set reasonable
# default values based on what version is set here.
dovecot_config_version = 2.4.0
# This option sets the minimum version that is able to read data files from
# the Dovecot server. This is primarily for a cluster which may have several
# different versions of Dovecot installed, but is required for the server to
# run.
dovecot_storage_version = 2.4.0
protocols = imap
ssl = no
# The next line is only needed if you have no IPv6 network interfaces
listen = *
mail_inbox_path = /var/mail/%{user}
mail_driver = mbox
mail_path = ~/Mail
userdb users {
driver = passwd
}
passdb passwords {
driver = pam
}
EOF
Konfigurasjonen ovenfor krever også en konfigurasjonsfil
installert for Linux-PAM slik at dovecot kan autentisere
brukere. Utsted følgende kommando som root bruker for å opprette
konfigurasjonsfilen for Linux-PAM:
cat > /etc/pam.d/dovecot << "EOF"
# Begin /etc/pam.d/dovecot
auth include system-auth
account include system-account
password include system-password
# End /etc/pam.d/dovecot
EOF
Du vil definitivt lese den offisielle dokumentasjonen på https://doc.dovecot.org/2.4.0/ hvis du planlegger å bruke Dovecot i et produksjonsmiljø.
Hvis du vil at Dovecot
serveren skal starte automatisk når systemet startes opp,
installer /etc/rc.d/init.d/dovecot init skriptet
inkludert i blfs-bootscripts-20250225
pakken.
make install-dovecot
/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.4 plattform.
Nedlasting (HTTP): https://ftp.exim.org/pub/exim/exim4/exim-4.98.2.tar.xz
Nedlasting MD5 sum: 7ed3e24c1eef44824b79b4c442f99f0b
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 16 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.45
TDB (alternativ til GDBM, bygget i LFS), Cyrus SASL-2.1.28, libidn-1.43, Linux-PAM-1.7.1, MariaDB-11.8.3 eller MySQL, OpenLDAP-2.6.10, GnuTLS-3.8.10, PostgreSQL-17.6, SQLite-3.50.4, 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.2 && cp -Rv doc/* /usr/share/doc/exim-4.98.2 && 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.2/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.2/doc/html/spec_html/ch45.html.
For å bruke en annen bakstykke database enn GDBM, se instruksjonene på https://exim.org/exim-html-4.98.2/doc/html/spec_html/ch04.html#SECTdb.
For SSL funksjonalitet, se instruksjonene på https://exim.org/exim-html-4.98.2/doc/html/spec_html/ch04.html#SECTinctlsssl og https://exim.org/exim-html-4.98.2/doc/html/spec_html/ch42.html.
For tcpwrappers funksjonalitet, se instruksjoner på https://exim.org/exim-html-4.98.2/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.2/doc/html/spec_html/index.html.
For informasjon om å koble Linux-PAM, se instruksjonene https://exim.org/exim-html-4.98.2/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.2/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.2/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.2/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 /etc/rc.d/init.d/exim init
skriptet inkludert i blfs-bootscripts-20250225
pakken:
make install-exim
Oppstartsskriptet starter også Exim nissen og sender en
køkjøreprosess hvert 15. minutt. Endre -q parameteren i <time
interval>/etc/rc.d/init.d/exim, hvis nødvendig for
din installasjon.
|
sirkulerer Exim loggfiler |
|
|
søker Exim loggfiler |
|
|
er en symbolkobling til exim-4.98.2-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 |
|
|
oppgraderer og nedgraderer Exim meldings id-formater i spool filer |
|
|
låser en postboksfil |
|
|
konverterer en Exim-meldings-id til en lesbar form |
|
|
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.4 plattform.
Nedlasting (HTTP): https://ghostarchive.org/postfix/postfix-release/official/postfix-3.10.4.tar.gz
Nedlasting MD5 sum: c9f472fe0455eff7a8334479fb0f1154
Nedlastingsstørrelse: 4.8 MB
Estimert diskplass som kreves: 157 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
Cyrus SASL-2.1.28, libnsl-2.0.1, og lmdb-0.9.33
ICU-77.1 for internasjonalisering av e-postadresser (SMTPUTF8) støtte, MariaDB-11.8.3 or MySQL, OpenLDAP-2.6.10, pcre2-10.45, PostgreSQL-17.6, SQLite-3.50.4, 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 CC="gcc -std=gnu17" 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.10.4/html \ readme_directory=/usr/share/doc/postfix-3.10.4/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.
CC="gcc -std=gnu17": Dette brukes
til å løse et problem med gcc-15. Denne versjonen av gcc
bruker -std=gnu23 som standard
som avslører flere problemer i kildekoden.
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 /etc/rc.d/init.d/postfix init
skriptet inkludert i blfs-bootscripts-20250225
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.4 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
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/sendmail-8.18.1-gcc15_fixes-1.patch
OpenLDAP-2.6.10 (klient)
ghostscript-10.05.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
Fiks byggingen av denne pakken med gcc-15:
patch -Np1 -i ../sendmail-8.18.1-gcc15_fixes-1.patch
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
/etc/rc.d/init.d/sendmail init
skriptet inkludert i blfs-bootscripts-20250225
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 init skriptet. 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.4 plattform.
Nedlasting (HTTP): https://git.openldap.org/openldap/openldap/-/archive/LMDB_0.9.33.tar.bz2
Nedlasting MD5 sum: 28d648201f967e20b454df23ab4bd5b4
Nedlastingsstørrelse: 120 KB
Estimert diskplass som kreves: 4.8 MB
Estimert byggetid: Mindre enn 0.1 SBU
Denne pakken pakker ut til openldap-LMDB_0.9.33-3a29a24777c82a0165de813ae696a5068b5add30.
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.
|
kopierer et LMDB miljø fra en database til en annen, inkludert muligheten til å komprimere databasen |
|
|
leser en database og skriver dens innhold til standard utdata ved hjelp av et flyttbart flatt-tekstformat, som kan tolkes av mdb_load |
|
|
importerer en database fra standard inndata eller fra en fil |
|
|
viser statusen til et LMDB miljø |
|
|
gir funksjoner for tilgang til en LMDB database |
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.4 plattform.
Nedlasting (HTTP): https://downloads.mariadb.org/interstitial/mariadb-11.8.3/source/mariadb-11.8.3.tar.gz
Nedlasting MD5 sum: 3c81bc728598f5b53067220c7b729747
Nedlastingsstørrelse: 114 MB
Estimert diskplass som kreves: 2.2 GB (761 MB installert)
Estimert byggetid: 3.6 SBU (med parallellitet=8, legg til 0.4 SBU for tester)
Den installerte størrelsen på MariaDB er 761 MB, men den
kan bli redusert med ca. 268 MB, hvis ønskelig, ved å
fjerne /usr/share/mariadb/test mappen etter
installasjonen.
Hvis du oppgraderer en eksisterende database, se MariaDB Release Notes for ytterligere informasjon, og bruk instruksjonene etter delen Konfigurasjonsinformasjon for å sikre en trygg oppgradering.
Boost-1.89.0, fmt-11.2.0, git-2.50.1, Java-24.0.2, libaio-0.3.113, libxml2-2.14.5, Linux-PAM-1.7.1, LZO-2.10, MIT Kerberos V5-1.22.1, pcre2-10.45, Ruby-3.4.5, sphinx-8.2.3, unixODBC-2.3.12, Valgrind-3.25.1, Groonga, KyTea, Judy, libstemmer, 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 mariadb && useradd -c "MariaDB Server" -d /srv/mariadb -g mariadb -s /bin/false -u 40 mariadb
Løs et problem med å oppdage Boost-1.89.0 og nyere:
sed -i 's/regex system/regex/' \
storage/columnstore/columnstore/cmake/boost.cmake
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-11.8.3 \
-D INSTALL_DOCREADMEDIR=share/doc/mariadb-11.8.3 \
-D INSTALL_MANDIR=share/man \
-D INSTALL_MYSQLSHAREDIR=share/mariadb \
-D INSTALL_MYSQLTESTDIR=share/mariadb/test \
-D INSTALL_PAMDIR=lib/security \
-D INSTALL_PAMDATADIR=/etc/security \
-D INSTALL_PLUGINDIR=lib/mariadb/plugin \
-D INSTALL_SBINDIR=sbin \
-D INSTALL_SCRIPTDIR=bin \
-D INSTALL_SQLBENCHDIR=share/mariadb/bench \
-D INSTALL_SUPPORTFILESDIR=share/mariadb \
-D MYSQL_DATADIR=/srv/mariadb \
-D MYSQL_UNIX_ADDR=/run/mariadb/mariadb.sock \
-D WITH_EXTRA_CHARSETS=complex \
-D WITH_EMBEDDED_SERVER=ON \
-D SKIP_TESTS=ON \
-D TOKUDB_OK=0 \
-W no-dev \
.. &&
make
For å teste resultatene, kjør: make test. To tester, my_tzinfo og 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
-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.
-W no-dev: Denne
bryteren slår av noen advarsler som bare er nyttige for
utviklere.
Det er mange alternativer tilgjengelig for cmake. Sjekk utdataen av cmake . -LH for tilleggs tilpasningsalternativer.
Lag en grunnleggende /etc/mariadb/my.cnf fil ved å bruke
følgende kommando som root
bruker:
install -v -dm 755 /etc/mariadb &&
cat > /etc/mariadb/my.cnf << "EOF"
# Begin /etc/mariadb/my.cnf
# The following options will be passed to all MySQL clients
[client]
#password = your_password
port = 3306
socket = /run/mariadb/mariadb.sock
# The MySQL server
[mariadb]
port = 3306
socket = /run/mariadb/mariadb.sock
datadir = /srv/mariadb
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/mariadb
innodb_log_group_home_dir = /srv/mariadb
# 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
[mariadbdump]
quick
max_allowed_packet = 16M
[mariadb]
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
[mariadbhotcopy]
interactive-timeout
# End /etc/mariadb/my.cnf
EOF
Du kan nå installere en database og endre eierskapet til
uprivilegert bruker og gruppe (utfør som root bruker):
mariadb-install-db --basedir=/usr --datadir=/srv/mariadb --user=mariadb && chown -R mariadb:mariadb /srv/mariadb
Ytterligere konfigurasjon krever at MariaDB serveren kjører. Start
serveren ved bruk av følgende kommandoer som root bruker:
install -v -m755 -o mariadb -g mariadb -d /run/mariadb && mariadbd-safe --user=mariadb 2>&1 >/dev/null &
En standardinstallasjon setter ikke opp et passord for
administrator, så bruk følgende kommando som root bruker til å angi et.
mariadb-admin -u root password
Konfigurasjonen av serveren er nå fullført. Stopp serveren
ved å bruke følgende kommando som root bruker:
mariadb-admin -p shutdown
Installer /etc/rc.d/init.d/mariadb init
skriptet inkludert i blfs-bootscripts-20250225 pakken
som root bruker for å
starte MariaDB serveren
under oppstart av systemet.
make install-mariadb
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 mariadb-test 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 mariadb prosesser som lytter etter tilkoblinger på forskjellige Unix socket filer og TCP/IP porter |
|
|
er den anbefalte måten å starte en mariadb 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å mariadb-test kommandoen, men er bygget med støtte for den innebygde libmariadbd serveren |
|
|
laster tidssonetabellene i mariadb 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.4 plattform.
Nedlasting (HTTP): https://ftp.postgresql.org/pub/source/v17.6/postgresql-17.6.tar.bz2
Nedlasting MD5 sum: e72b7e5dc22d44d56b113ed1f74e4084
Nedlastingsstørrelse: 21 MB
Estimert diskplass som kreves: 280 MB (med tester)
Estimert byggetid:: 0.7 SBU (med parallellitet=4, legg til 0.1 SBU for tester)
ICU-77.1, libxml2-2.14.5, libxslt-1.1.43, OpenLDAP-2.6.10, Linux-PAM-1.7.1, MIT Kerberos V5-1.22.1 og Bonjour
fop-2.11, 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 \
--docdir=/usr/share/doc/postgresql-17.6 &&
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
/etc/rc.d/init.d/postgresql stop
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
Hvis du hadde installert de valgfrie avhengighetene som
trengs for å generere dokumentasjonen, installer den som
root bruker:
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.
--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-17.6/html/index.html.
Installer /etc/rc.d/init.d/postgresql init
skriptet inkludert i blfs-bootscripts-20250225
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.4 plattform.
Nedlasting (HTTP): https://sqlite.org/2025/sqlite-autoconf-3500400.tar.gz
Nedlasting MD5 sum: d74bbdca4ab1b2bd46d3b3f8dbb0f3db
Nedlastingsstørrelse: 3.0 MB
Estimert diskplass som kreves: 44 MB (med dokumentasjon)
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
Valgfri dokumentasjon
Nedlasting (HTTP): https://sqlite.org/2022/sqlite-doc-3500400.zip
Nedlasting MD5 sum: faa12e794bcc37ba275fd6268317eb87
Nedlastingsstørrelse: 11 MB
libarchive-3.8.1 (nødvendig for å pakke ut dokumentasjonen) og libedit
Hvis du lastet ned den valgfrie dokumentasjonen, utfør følgende kommando for å installere dokumentasjonen inn i kildetreet:
unzip -q ../sqlite-doc-3500400.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.50.4 && cp -v -R sqlite-doc-3500400/* /usr/share/doc/sqlite-3.50.4
Flere pakker bruker en sqlite Python programtillegg. Etter å ha installert denne pakken, Python-3.13.7 bør bygges om for å lage dette programtillegget.
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-fts{4,5}:
Disse bryterne aktiverer støtte for versjon 4 og 5 av
fulltekstsøk (FTS) utvidelse.
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.4 plattform.
Nedlasting (HTTP): https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.6.10.tgz
Nedlasting MD5 sum: 6be5e6c43d599e7a422669c70229ca74
Nedlastingsstørrelse: 6.2 MB
Estimert diskplass som kreves: 100 MB (klient og server)
Estimert byggetid: 0.3 SBU (klient), 0.8 SBU (server)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/openldap-2.6.10-consolidated-1.patch
GnuTLS-3.8.10, unixODBC-2.3.12, MariaDB-11.8.3 eller PostgreSQL-17.6 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.10-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.10-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.10 &&
cp -vfr doc/{drafts,rfc,guide} \
/usr/share/doc/openldap-2.6.10
--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.10/guide/admin).
Dokumenter som ligger på https://www.openldap.org/pub/.
For å automatisere oppstarten av LDAP serveren ved oppstart
av systemet, installer /etc/rc.d/init.d/slapd init
skriptet inkludert i blfs-bootscripts-20250225 pakken
ved å bruke følgende kommando:
make install-slapd
Du må endre /etc/sysconfig/slapd for å
inkludere parametrene som trengs for din spesifikke
konfigurasjon. Se slapd manside for
parameterinformasjon.
Start LDAP serveren med init skriptet:
/etc/rc.d/init.d/slapd start
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.4 plattform.
Nedlasting (HTTP): https://nlnetlabs.nl/downloads/unbound/unbound-1.23.1.tar.gz
Nedlasting MD5 sum: 63f13e96ee2b609d6d0aeb119d539210
Nedlastingsstørrelse: 6.5 MB
Estimert diskplass som kreves: 156 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.2, Protobuf-c-1.5.2 (for dnstap), sphinx-8.2.3 (for Python bindinger dokumentasjon), SWIG-4.3.1 (for Python bindinger), Doxygen-1.14.0 (for html dokumentasjon), dnstap, og Python2
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.14.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.23.1 && install -v -m644 doc/html/* /usr/share/doc/unbound-1.23.1
--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 gjør det mulig å bygge Python bindinger. Hvis du
vil bygge bindingene, må du også sende PYTHON_VERSION=3.13 miljøvariabelen til
konfigurere.
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.
Denne filen opprettes ved å kjøre oppstartsskriptet
(installerings instruksjonene nedenfor). Alternativt kan
den opprettes 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 /etc/rc.d/init.d/unbound init
skriptet inkludert i blfs-bootscripts-20250225
pakken:
make install-unbound
|
er en DNS løser nisse |
|
|
initialiserer eller oppdaterer 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.12 |
|
|
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.25.0 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.17p2 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.17p2, 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.2.
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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/util/util-macros-1.20.2.tar.xz
Nedlasting MD5 sum: 5f683a1966834b0a6ae07b3680bcb863
Nedlastingsstørrelse: 84 KB
Estimert diskplass som kreves: 524 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.4 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.11, libxslt-1.1.43, xmlto-0.0.29 og asciidoc-10.2.1 (for å bygge ytterligere dokumentasjon)
Det er en gjensidig avhengighet med fop-2.11. Hvis du ønsker å bygge dokumentasjonen, må du installere protokolldeklarasjoner på nytt etter at installasjonen er fullført og fop-2.11 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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/lib/libXau-1.0.12.tar.xz
Nedlasting MD5 sum: 4c9f81acf00b62e5de56a912691bd737
Nedlastingsstørrelse: 276 KB
Estimert diskplass som kreves: 2.9 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.4 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.11, libxslt-1.1.43, 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.4 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.14.5 (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.13/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.4 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.12 og xcb-proto-1.17.0
libXdmcp-1.1.5 (påkrevd for Mesa-25.1.8)
Doxygen-1.14.0 (for å generere API dokumentasjon) og libxslt-1.1.43
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.14.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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/lib/
Nedlastingsstørrelse: 12 MB
Estimert diskplass som kreves: 273 MB (47 MB installed) - if source directories not deleted
Estimert byggetid: 1.8 SBU
Fontconfig-2.17.1 og libxcb-1.17.0
asciidoc-10.2.1, xmlto-0.0.29 med ett eller flere av følgende: fop-2.11, 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"
1155b410c778f805659baf4373db2b92 xtrans-1.5.2.tar.xz
e12f988eb037b978071e21b2d58d1d70 libX11-1.8.11.tar.xz
e59476db179e48c1fb4487c12d0105d1 libXext-1.3.6.tar.xz
c5cc0942ed39c49b8fcd47a427bd4305 libFS-1.0.10.tar.xz
d1ffde0a07709654b20bada3f9abdd16 libICE-1.1.2.tar.xz
ef6167bfcb675f65a790e0f517a87455 libSM-1.2.5.tar.xz
e613751d38e13aa0d0fd8e0149cec057 libXScrnSaver-1.2.4.tar.xz
9acd189c68750b5028cf120e53c68009 libXt-1.3.1.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
4c54dce455d96e3bdee90823b0869f89 libXrender-0.9.12.tar.xz
5ce55e952ec2d84d9817169d5fdb7865 libXcursor-1.2.3.tar.xz
ca55d29fa0a8b5c4a89f609a7952ebf8 libXdamage-1.1.6.tar.xz
8816cc44d06ebe42e85950b368185826 libfontenc-1.1.8.tar.xz
66e03e3405d923dfaf319d6f2b47e3da libXfont2-2.0.7.tar.xz
d378be0fcbd1f689f9a132e0d642bc4b libXft-2.3.9.tar.xz
95a960c1692a83cc551979f7ffe28cf4 libXi-1.8.2.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
8a26503185afcb1bbd2c65e43f775a67 libXv-1.0.13.tar.xz
a90a5f01102dc445c7decbbd9ef77608 libXvMC-1.0.14.tar.xz
74d1acf93b83abeb0954824da0ec400b libXxf86dga-1.1.6.tar.xz
d3db4b6dc924dc151822f5f7e79ae873 libXxf86vm-1.1.6.tar.xz
57c7efbeceedefde006123a77a7bc825 libpciaccess-0.18.1.tar.xz
229708c15c9937b6e5131d0413474139 libxkbfile-1.1.3.tar.xz
9805be7e18f858bed9938542ed2905dc libxshmfence-1.3.3.tar.xz
bdd3ec17c6181fd7b26f6775886c730d libXpresent-1.0.1.tar.xz
EOF
For å laste ned de nødvendige filene ved hjelp av Wget-1.25.0, 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, må installasjonen 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.17p2 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.11 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.2,
$XORG_PREFIX/share/doc/libSM-1.2.5,
$XORG_PREFIX/share/doc/libX11-1.8.11,
$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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/lib/libxcvt-0.1.3.tar.xz
Nedlasting MD5 sum: 7fb9c51d33a680f724f34da41768b1d0
Nedlastingsstørrelse: 12 KB
Estimert diskplass som kreves: 440 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.4 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.14.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 verktøyene gir utvidelser som utviklere kan bruke når det lages X Window programvare. xcb-util-0.4.1 ble nettopp installert men disse verktøyene tilbyr enda flere utvidelser som X Window programvaren kan avhenge av.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://xcb.freedesktop.org/dist/
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 13.3 MB
Estimert byggetid: 0.1 SBU (ignoring the time to download)
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 > xcb-utils.md5 << "EOF"
a67bfac2eff696170259ef1f5ce1b611 xcb-util-image-0.4.1.tar.xz
fbdc05f86f72f287ed71b162f1a9725a xcb-util-keysyms-0.4.1.tar.xz
193b890e2a89a53c31e2ece3afcbd55f xcb-util-renderutil-0.3.10.tar.xz
581b3a092e3c0c1b4de6416d90b969c3 xcb-util-wm-0.4.2.tar.xz
bc30cd267b11ac5803fe19929cabd230 xcb-util-cursor-0.1.5.tar.xz
EOF
For å laste ned de nødvendige filene ved hjelp av Wget-1.25.0, bruk følgende kommandoer:
mkdir xcb-utils &&
cd xcb-utils &&
grep -v '^#' ../xcb-utils.md5 | awk '{print $2}' | wget -i- -c \
-B https://xcb.freedesktop.org/dist/ &&
md5sum -c ../xcb-utils.md5
Når du installerer flere pakker i et skript, må installasjonen 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.17p2 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 '^#' ../xcb-utils.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
|
er en portert versjon av Xlibs XImage og XShmImage funksjoner |
|
|
gir standard X nøkkelkonstanter og API funksjoner for konvertering til/fra nøkkelkoder |
|
|
gir bekvemmelighetsfunksjoner for Render utvidelsen |
|
|
gir klienten og vindusbehandleren hjelpere for EWMH |
|
|
gir klienten og vindusbehandleren hjelpere for ICCCM |
|
|
er en portert versjon av Xlibs libXcursor funksjoner |
Mesa er en OpenGL kompatibel 3D grafikk bibliotek.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://mesa.freedesktop.org/archive/mesa-25.1.8.tar.xz
Nedlasting MD5 sum: fe3eb39e8a3c6fbb36eb3da57be022e7
Nedlastingsstørrelse: 45 MB
Estimert diskplass som kreves: 1.1 GB (med dokumenter, legg til 576 MB for tester)
Estimert byggetid: 3.8 SBU (med dokumenter; legg til 1.7 SBU for tester; begge med parallellitet=4)
Anbefalt oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/mesa-add_xdemos-4.patch (installerer 2 demoprogrammer for testing av Mesa - ikke nødvendig hvis du installer mesa-demos pakken)
Xorg Biblioteker, libdrm-2.4.125, Mako-1.3.10, og PyYAML-6.0.2
Glslang-15.4.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-20.1.8 (påkrevd for llvmpipe, r300, r600, og radeonsi drivere)
wayland-protocols-1.45 (påkrevd for Plasma-6.4.4, GNOME, og anbefalt for GTK-3.24.50)
libclc-20.1.8 (påkrevd for Intel iris gallium driver)
Vulkan-Loader-1.4.321 (påkrevd for Vulkan støtte)
ply-3.11 (påkrevd for Intel vulkan driver)
Cbindgen-0.29.0, make-ca-1.16.1, og rust-bindgen-0.72.0 (påkrevd for Nouveau Vulkan og Nouveau driver)
En Internett tilkobling er nødvendig for å bygge Nouveau Vulkan driveren. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger denne pakken.
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.14.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 softpipe eller llvmpipe
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.2, libunwind-1.8.2, lm-sensors-3-6-2, Nettle-3.10.2, Valgrind-3.25.1, 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,
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] [*] Use GSP firmware for Turing/Ampere (needs firmware installed) ... [DRM_NOUVEAU_GSP_DEFAULT] # For i915, crocus, or iris: < /*/M> Intel 8xx/9xx/G3x/G4x/HD Graphics [DRM_I915] # For iris: < /*/M> Intel Xe2 Graphics [DRM_XE] [*] Enable display support [DRM_XE_DISPLAY] (*) Force probe xe for selected Intel hardware IDs ... [DRM_XE_FORCE_PROBE] # For llvmpipe or softpipe: < /*> 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.
For GPU-ene som støttes av Iris Gallium3D driveren, med
CONFIG_DRM_I915 aktivert og
CONFIG_DRM_XE_FORCE_PROBE satt
til strengen *, i915-driveren
vil bli brukt hvis den støtter GPU, og Xe-driveren vil bli
brukt hvis den støtter GPU, men i915-driveren gjør det
ikke. Hvis du er sikker på at GPUen din støttes av
i915-driveren, kan du deaktivere Xe-driver for å spare litt
byggetid. Hvis GPUen din støttes av begge driverne og du
vil bruke Xe-driveren, kan du deaktivere i915-driveren,
eller få i915-driveren til å nekte din GPU via CONFIG_DRM_I915_FORCE_PROBE alternativet,
for eksempel sette den til !7d55 ville få i915 til å nekte Meteor
Lake integrert GPU (hvorav PCI ID er 8086:7d55), overlater det til Xe-driveren.
CONFIG_DRM_RADEON, CONFIG_DRM_AMDGPU, CONFIG_DRM_NOUVEAU, CONFIG_DRM_I915, og CONFIG_DRM_XE kan kreve fastvare. Se
Om Fastvare for detaljer.
Å velge CONFIG_DRM_RADEON,
CONFIG_DRM_AMDGPU, eller
CONFIG_DRM_NOUVEAU 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 llvmpipe eller
softpipe, CONFIG_DRM_VGEM er nødvendig, ellers kan X
klienter mislykkes å starte med en kryptisk melding
Error: couldn't get an RGB,
Double-buffered visual. Strengt tatt, kan den
kompileres som en modul. Men modulen vil ikke bli lastet
automatisk, så det er mer praktisk å bygge den som en del
av kjernebildet.
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-4.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 video-codecs=all \
-D libunwind=disabled &&
ninja
Spør advokaten din eller fjern -D video-codecs=all
alternativet om du vil distribuere de kompilerte Mesa
bibliotekene og driverne til andre.
For å teste resultatene, utsted:
meson configure -D build-tests=true &&
sed '/float rsqrtf/,/^}/d' \
-i ../src/gallium/drivers/llvmpipe/lp_test_arit.c &&
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-25.1.8
--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,llvmpipe.
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-10.0.3 ikke er bygget med
virglrender)
svga (for en VMWare
virtuell GPU)
llvmpipe (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
softpipe (bruker også CPU
for 3D rasterisering, men tregere enn llvmpipe. Det er
ingen grunn til å bruke den med mindre LLVM ikke er
tilgjengelig)
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 (bruker Vulkan for å
implementere OpenGL, og selv om den til tider er
ustabil, kan den være en anstendig erstatning for
ikke-presterende gallium drivere som nouveau)
-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.4.321)
-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 video-codecs=all:
Denne parameteren aktiverer byggekodeker for videoformater
som dekkes av tredjepartspatenter.
-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.
-D legacy-x11="..." Denne
parameteren kontrollerer hvilke eldre X11 funksjoner som får
innebygd støtte. Tilgjengelige linux alternativer er none
(standard) og dri2. Disse funksjonene er sjelden nødvendig
lenger.
|
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 |
|
|
implementerer Graphics Buffer Management funksjoner
som trengs av |
|
|
er en stub som lar Xorg serveren samarbeide med Gallium3D drivere |
|
|
gir et grunnleggende plattformgrafikkgrensesnitt som definert av EGL-1.4 spesifikasjonen |
|
|
inneholder alle Gallium3D drivere |
|
|
er Mesa Grafikkbuffer behandlingsbiblioteket |
|
|
er Mesa implementeringen av OpenGL API |
|
|
er Mesa OpenGL ES 1.1 biblioteket |
|
|
er Mesa OpenGL ES 2.0 biblioteket |
|
|
er Mesa OpenGL hovedbiblioteket |
|
|
er XA state tracker for VMWare vmwgfx driveren |
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.4 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.4 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.50, Mesa-25.1.8, xbitmaps-1.1.3, og xcb-util-0.4.1
Linux-PAM-1.7.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
b9efe1d21615c474b22439d41981beef sessreg-1.1.4.tar.xz
1d61c9f4a3d1486eff575bf233e5776c setxkbmap-1.3.4.tar.xz
6484cd8ee30354aaaf8f490988f5f6ef smproxy-1.0.8.tar.xz
595c941d9aff6f6d6e038c4e42dcff58 xauth-1.1.3.tar.xz
37063ccf902fe3d55a90f387ed62fe1f xcmsdb-1.0.7.tar.xz
f97e81b2c063f6ae9b18d4b4be7543f6 xcursorgen-1.0.9.tar.xz
700556957773d378fa16a65a4406be0a xdpyinfo-1.4.0.tar.xz
830a54ef3ba338013e06a1b5b012b4bd xdriinfo-1.0.8.tar.xz
f29d1544f8dd126a1b85e2f7f728672d xev-1.2.6.tar.xz
687e42aa5afaec37f14da3072651c635 xgamma-1.0.8.tar.xz
45c7e956941194e5f06a9c7307f5f971 xhost-1.0.10.tar.xz
8e4d14823b7cbefe1581c398c6ab0035 xinput-1.6.4.tar.xz
83d711948de9ccac550d2f4af50e94c3 xkbcomp-1.4.7.tar.xz
543c0535367ca30e0b0dbcfa90fefdf9 xkbevd-1.1.6.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
5ef4784b406d11bed0fdf07cc6fba16c xprop-1.2.8.tar.xz
dc7680201afe6de0966c76d304159bda xrandr-1.5.3.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
3e741db39b58be4fef705e251947993d xwud-1.0.7.tar.xz
EOF
For å laste ned de nødvendige filene ved hjelp av Wget-1.25.0, 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, må installasjonen 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.17p2 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 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 lokalitetkoding 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.4 plattform.
Nedlasting (HTTP): https://invisible-mirror.net/archives/luit/luit-20240910.tgz
Nedlasting MD5 sum: c9db8c12a3ad697a075179f07b099eaf
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.4 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å «TTF og OTF fonter».
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.25.0, 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, må installasjonen 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.17p2 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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/data/xkeyboard-config/xkeyboard-config-2.45.tar.xz
Nedlasting MD5 sum: cebc84ec99d3273e07aee8ecff3e3519
Nedlastingsstørrelse: 896 KB
Estimert diskplass som kreves: 22 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.
Hvis du oppgraderer fra versjon 2.44 eller tidligere, vil
installasjonen mislykkes hvis noen filer ikke er symbolske
lenker. For å fikse dette, kjør som root bruker:
if [ -d $XORG_PREFIX/share/X11/xkb ]; then rm -rf $XORG_PREFIX/share/X11/xkb rm -f $XORG_PREFIX/share/man/man7/xkeyboard-config.7 rm -f $XORG_PREFIX/share/pkgconfig/xkeyboard-config.pc fi
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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/xserver/xwayland-24.1.8.tar.xz
Nedlasting MD5 sum: 1644a66e2843a400885e90051094b582
Nedlastingsstørrelse: 1.3 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.3, Pixman-0.46.4, wayland-protocols-1.45, Xorg Applikasjoner (kjøretid), og Xorg Fonts (bare font-util)
libepoxy-1.5.10, libtirpc-1.3.6, og Mesa-25.1.8
git-2.50.1 (for å laste ned pakker som trengs for testene), libei-1.4.1, libgcrypt-1.11.2, Nettle-3.10.2, 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 &&
cat >> /etc/sysconfig/createfiles << "EOF"
/tmp/.X11-unix dir 1777 root root
EOF
Hvis Xorg-Server-21.1.18 ikke er
installert og du ikke planlegger å 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.18. Fjern denne kommandoen hvis Xorg-Server-21.1.18 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.
-D secure-rpc=false: Dette
alternativet deaktiverer bygging av RPC støtte hvis libtirpc-1.3.6 ikke er installert.
cat >>
/etc/sysconfig/createfiles...: Denne
kommandoen oppretter /tmp/.X11-unix mappen ved oppstart, og
sikrer at tillatelser og eierskap er korrekte som kreves av
applikasjoner som bruker Xwayland.
Xorg Server er kjernen av X Vindussystemet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/xserver/xorg-server-21.1.18.tar.xz
Nedlasting MD5 sum: 43225ddc1fd8d7ae7671c25ab6d1f927
Nedlastingsstørrelse: 4.9 MB
Estimert diskplass som kreves: 151 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.4/xorg-server-21.1.18-tearfree_backport-1.patch
libxcvt-0.1.3, Pixman-0.46.4, Xorg Fonts (bare font-util), og ved kjøretid: xkeyboard-config-2.45
dbus-1.16.2, elogind-255.17
(kjøretid; libelogind også
referert ved byggetid, men det er egentlig ikke
nyttig), libepoxy-1.5.10 (trengs for glamor),
libtirpc-1.3.6, og Xorg Libinput-1.4.0
(kjøretid)
Selv om det er mulig å bygge denne
pakken uten dbus-1.16.2 installert eller å
kjøre Xorg serveren uten elogind-255.17 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 disse to
avhengighetene. Ikke prøv å gjøre det med mindre du
virkelig vet hva gjør du.
acpid-2.0.34 (kjøretid), Doxygen-1.14.0 (for å bygge API dokumentasjon), fop-2.11 (for å bygge dokumentasjon), libunwind-1.8.2, Nettle-3.10.2, libgcrypt-1.11.2, XCB Utilities (for å bygge Xephyr), xmlto-0.0.29 (for å bygge dokumentasjon), xkeyboard-config-2.45 (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-25.1.8 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] Drivers for system framebuffers ---> <*> 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.18-tearfree_backport-1.patch
Installer serveren ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=$XORG_PREFIX \
--localstatedir=/var \
-D glamor=true \
-D systemd_logind=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 &&
install -v -d -m1777 /tmp/.{ICE,X11}-unix &&
cat >> /etc/sysconfig/createfiles << "EOF"
/tmp/.ICE-unix dir 1777 root root
/tmp/.X11-unix dir 1777 root root
EOF
-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 secure-rpc=false: Dette
alternativet deaktiverer bygging av RPC støtte hvis libtirpc-1.3.6 ikke er installert.
-D
systemd_logind=true: Denne bryteren gjør
bygningssystemet feile hvis dbus-1.16.2 ikke er installert. BLFS
redaktørene fraråder å bygge denne pakken uten dbus-1.16.2
installert.
-D suid_wrapper=true: Bygger
suid-root innpakning for eldre driverstøtte på rotløse
xserver systemer.
cat >>
/etc/sysconfig/createfiles...: Denne
kommandoen oppretter /tmp/.ICE-unix og /tmp/.X11-unix mapper ved oppstart, og
sikrer at tillatelsene og eierskapet er korrekte som kreves
av serveren.
-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.4 plattform.
Nedlasting (HTTP): https://www.freedesktop.org/software/libevdev/libevdev-1.13.4.tar.xz
Nedlasting MD5 sum: 2e8a4665e332699ccba7ee54a0dd189a
Nedlastingsstørrelse: 456 KB
Estimert diskplass som kreves: 6.2 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (med tester)
Doxygen-1.14.0, Valgrind-3.25.1 (valgfri for testing), og check (påkrevd for testing)
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 \
-D tests=disabled &&
ninja
Testpakken krever Check som er fjernet fra LFS.
Nå, som root bruker:
ninja install
-D tests=disabled:
Dette gjør at pakken kan kompilere hvis Check ikke er installert. Check er fjernet fra LFS.
|
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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/driver/xf86-input-evdev-2.11.0.tar.bz2
Nedlasting MD5 sum: faa89be0ef86aebd6fd0a03eed23839c
Nedlastingsstørrelse: 344 KB
Estimert diskplass som kreves: 3.7 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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/libinput/libinput/-/archive/1.29.0/libinput-1.29.0.tar.gz
Nedlasting MD5 sum: 7c243cf456aff35b57412527ee8143e4
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 13 MB (legg til 35 MB for dokumentasjon og 9 MB for minor tester)
Estimert byggetid: 0.1 SBU (legg til 0,1 SBU for dokumentasjon og 0.3 SBU for minor tester)
libevdev-1.13.4 og mtdev-1.1.7
Valgrind-3.25.1 (for å kjøre testene), GTK-3.24.50 (for å bygge GUI hendelsesvisningen), libunwind-1.8.2 (nødvendig for tester), libwacom-2.16.1, Doxygen-1.14.0, Graphviz-13.1.2, recommonmark-0.7.1, og sphinx_rtd_theme-3.0.2 (kreves for å bygge dokumentasjon), pyparsing-3.2.3 (for en ikke-root test), pytest-8.4.1 (for en annen ikke-root test), o check (for en annen ikke-root test)
Selv om libinput fungerer med den samme
kjernekonfigurasjonen som brukes av libevdev-1.13.4, er
det standard og mer ekspansive testpakke krever
tilstedeværelse av /dev/uinput (samt både Valgrind-3.25.1 og libunwind-1.8.2).
Hvis du ønsker å kjøre standard testpakken, 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] [*] 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 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
For å teste pakken, utsted: meson configure -D tests=true &&
ninja test. Mange tester hoppes over med
mindre du kjører testpakken som root bruker. For å kjøre disse testene,
som root bruker utsted:
meson test
--suite=root.
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.29.0/html && cp -rv Documentation/* /usr/share/doc/libinput-1.29.0/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.50 installert.
-D tests=false:
Denne bryteren deaktiverer kompilering av standard
testpakke. Selv med testene definert som false, kan du
fortsatt kjøre de seks første minor testene som vanlig
bruker, men en vil bli hoppet over hvis pyparsing-3.2.3 ikke er installert,
og en annen hvis pytest-8.4.1 ikke er installert.
-D libwacom=false:
Fjern dette alternativet hvis du har libwacom-2.16.1
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. Se de valgfrie
avhengighetene som kreves for å bygge dokumentasjonen.
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.4 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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/driver/xf86-input-synaptics-1.10.0.tar.xz
Nedlasting MD5 sum: 017383c13a0d0f4cb320be477ab25513
Nedlastingsstørrelse: 424 KB
Estimert diskplass som kreves: 5.3 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.4 plattform.
Nedlasting (HTTP): https://github.com/linuxwacom/xf86-input-wacom/releases/download/xf86-input-wacom-1.2.3/xf86-input-wacom-1.2.3.tar.bz2
Nedlasting MD5 sum: ef8a6cc34623db6c3482508374863d51
Nedlastingsstørrelse: 660 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 --with-systemd-unit-dir=no && 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 fullført Xorg-installasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/app/twm-1.0.13.1.tar.xz
Nedlasting MD5 sum: 2a337b776c904eab5b874eddc0124d4f
Nedlastingsstørrelse: 268 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 fullført Xorg-installasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://invisible-mirror.net/archives/xterm/xterm-401.tgz
Nedlasting MD5 sum: 8b0617af50f7b8530aff5c6c0a8d0c0b
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.2 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 fullført Xorg-installasjonen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 plattform.
Nedlasting (HTTP): https://www.x.org/pub/individual/app/xinit-1.4.4.tar.xz
Nedlasting MD5 sum: e7430a710261c9129b1280f26cb159a5
Nedlastingsstørrelse: 160 KB
Estimert diskplass som kreves: 1.4 MB
Estimert byggetid: mindre enn 0.1 SBU
twm-1.0.13.1, xclock-1.1.1, og xterm-401 (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
Hvis du starter Xorg fra kommandolinjen, da starter
standardinstruksjonene ovenfor Xorg på gjeldende virtuelle
terminal. Det kan være praktisk å se Xorg og tilhørende
applikasjonsmeldinger på gjeldende virtuelle terminal,
normalt tty1, og starte grafikkmiljøet på den første
tilgjengelige ubrukte virtuelle terminalen, normalt tty7.
For å gjøre dette, sett suid biten på Xorg applikasjonen
som root bruker:
chmod u+s $XORG_PREFIX/bin/Xorg
På dette tidspunktet kan du starte Xorg på virtuelle terminal 7 med startx <client arguments> -- vt7. Nå kan du veksle mellom tty1 og tty7 med Ctrl-Alt-F1 og Ctrl-Alt-F7 tastekombinasjoner.
For å starte Xorg automatisk på den første tilgjengelige
virtuelle terminalen, endre startx skriptet som
root bruker med:
sed -i '/$serverargs $vtarg/ s/serverargs/: #&/' $XORG_PREFIX/bin/startx
Etter denne endringen trenger ikke den virtuelle terminalen å bli spesifisert på startx kommandolinjen.
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 «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.18 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-25.1.8. 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-20.1.8 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-48.0) 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 "PreferredMode" "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-10.0.3 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 "PreferredMode" "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.18 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.
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)
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.56.4 og ImageMagick-7.1.2-1 - 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-20250308 putter mange
fonter i /opt/texlive/2025/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/2025/texmf-dist/fonts/opentype/arkandis/berenisadf</dir>
<dir>/opt/texlive/2025/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.17.1/ : 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å typosetting.linuxfromscratch.org som har som mål å analysere og sammenligne fonter og til tross for navnet til slutt legge til noen fornuftige eksempler på typografi.
Fonter leveres ofte i zip filer, og krever verktøy fra libarchive-3.8.1 or 7zip-25.01 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 pleide å være sterkt anbefalt, men Noto fonts vil bli foretrukket hvis begge har blitt installert. Den eneste sannsynlige grunnen til å nå foretrekke en DejaVu font er at DejaVu-Serif har en åpen 'g' (Både DejaVu Sans og Noto Sans bruker også en åpen 'g'). Bortsett fra det er Noto mer oppdatert med fullere dekning.
Adwaita fonts – Adwaita-familien tilbyr klare, moderne og vedlikeholdte fonter. De er de foretrukne fontene for GNOME-48 og senere. Tarballen inneholder oppdateringsskript for kildekoden, samt TTF-fonter i mono/- og sans/-mappene. Sans-fontene med variabel bredde er tilpasset for å passe inn i dialogmeldinger i brukergrensesnittet og beregnet for normal bruk. Mono-fontene (normal og kursiv i vanlig og fet skrift) ,er ment å samsvare, med bruk i terminaler og programmering.
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 var den foretrukne skriftfamilien for GNOME brukergrensesnittet før GNOME-48.
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.8.1. 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-48.0. 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 boken på https://www.linuxfromscratch.org/blfs/view/7.10/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.4 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.25.0, 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, må installasjonen 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.17p2 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/at-spi2-core/2.56/at-spi2-core-2.56.4.tar.xz
Nedlasting MD5 sum: 1bdef0e54532c4f3f004d7e2d40e256a
Nedlastingsstørrelse: 572 KB
Estimert diskplass som kreves: 15 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
dbus-1.16.2, GLib-2.84.4 (GObject Introspection påkrevd for GNOME), gsettings-desktop-schemas-48.0 (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 \
-D gtk2_atk_adaptor=false \
-D systemd_user_dir=/tmp &&
ninja
Nå, som root bruker:
ninja install && rm /tmp/at-spi-dbus-bus.service
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
systemd_user_dir=/tmp: Dette flagget putter
systemd enhetsfilen i /tmp hvor den vil bli fjernet. SysV kan
ikke bruke denne filen.
-D docs=true: Bruk denne bryteren
hvis du vil bygge dokumentasjon. Merk at du må ha både
Gi-DocGen-2025.4 og sphinx-8.2.3
installert på systemet ditt.
-D
gtk2_atk_adaptor=false: Denne bryteren
deaktiverer bygging av GTK+-2 modulen for denne pakken.
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.4 plattform.
Nedlasting (HTTP): https://www.cairographics.org/releases/cairo-1.18.4.tar.xz
Nedlasting MD5 sum: db575fb41bbda127e0147e401f36f8ac
Nedlastingsstørrelse: 31 MB
Estimert diskplass som kreves: 95 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
libpng-1.6.50 og Pixman-0.46.4
Fontconfig-2.17.1, GLib-2.84.4 (påkrevd for de fleste GUIer), og Xorg Biblioteker
ghostscript-10.05.1, GTK-Doc-1.34.0, libdrm-2.4.125, librsvg-2.61.0, libxml2-2.14.5, LZO-2.10, Poppler-25.08.0, Valgrind-3.25.1, GTK+-2, og libspectre
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.4 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.4 og libsigc++-2.12.1
Boost-1.89.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.89.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.4 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.4 og libsigc++-3.6.0
Boost-1.89.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.89.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.4 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.84.4 (med GObject Introspection), GTK-4.18.6, og Vala-0.56.18
docbook-xml-5.0, docbook-xsl-ns-1.79.2, libxslt-1.1.43 (for å bygge manualsider), og GTK-Doc-1.34.0
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
Hvis docbook-xml-5.0, docbook-xsl-ns-1.79.2, og libxslt-1.1.43 er installert, bygg manualsider:
sed '/class="manual"/i \
<refmiscinfo class="source">colord-gtk</refmiscinfo>' \
-i ../man/*.xml &&
meson configure -D man=true &&
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.18 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.18.6 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.
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.4 plattform.
Nedlasting (HTTP): https://github.com/fltk/fltk/releases/download/release-1.4.4/fltk-1.4.4-source.tar.gz
Nedlasting MD5 sum: 83c567727e61c779f6681b0298226d05
Nedlastingsstørrelse: 8.9 MB
Estimert diskplass som kreves: 166 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4)
Valgfri dokumentasjon: https://github.com/fltk/fltk/releases/download/release-1.4.4/fltk-1.4.4-docs-html.tar.gz
hicolor-icon-theme-0.18, libjpeg-turbo-3.0.1, og libpng-1.6.50
alsa-lib-1.2.14, desktop-file-utils-0.28, Doxygen-1.14.0, GLU-9.0.3, Mesa-25.1.8, og texlive-20250308 (eller install-tl-unx)
Tar sin ekstraksjonsmappe er fltk-1.4.4 og ikke fltk-1.4.4-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.
Installer nå pakken og fjern unødvendige statiske
biblioteker. Som root bruker:
make docdir=/usr/share/doc/fltk-1.4.4 install && rm -vf /usr/lib/libfltk*.a
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.4.4 install-linux && make -C documentation docdir=/usr/share/doc/fltk-1.4.4 install-linux
Hvis du lastet ned den valgfrie html dokumentasjonen,
installer den som root
bruker:
tar -C /usr/share/doc/fltk-1.4.4 --strip-components=4 -xf ../fltk-1.4.4-docs-html.tar.gz
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.4 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
Først, fiks et problem når man bygger med gcc-15:
sed -e '/Context/s/()/(SFG_PlatformDisplay, SFG_WindowContextType)/' \
-i src/egl/fg_init_egl.h
Installer Freeglut ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-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
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
-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.4 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.84.4 (GObject Introspection påkrevd for GNOME), libjpeg-turbo-3.0.1, libpng-1.6.50, og shared-mime-info-2.4
docutils-0.21.2, librsvg-2.61.0 (kjøretidsavhengighet, nødvendig for lasting av symbolske ikoner) og libtiff-4.7.0
Gi-DocGen-2025.4 (for å generere dokumentasjon), libavif-1.3.0 (kjøretidsavhengighet, nødvendig for å laste AVIF bilder), libjxl-0.11.1 (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-2025.4 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 forhindrer det å laste ned 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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/glslang/archive/15.4.0/glslang-15.4.0.tar.gz
Nedlasting MD5 sum: a400ed377dc9de8b87a8179a90cef3b8
Nedlastingsstørrelse: 4.0 MB
Estimert diskplass som kreves: 177 MB (med tester
Estimert byggetid: 0.4 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.4.321.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.4 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/goffice/0.10/goffice-0.10.59.tar.xz
Nedlasting MD5 sum: db013c15c5f6280c46a395647db759a4
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 81 MB (med tester)
Estimert byggetid: 0.5 SBU (Bruke parallellisme=4; med tester)
GTK-3.24.50, libgsf-1.14.53, librsvg-2.61.0, libxslt-1.1.43, og Which-2.23
GLib-2.84.4 (med GObject Introspection), ghostscript-10.05.1, gsettings-desktop-schemas-48.0, 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.
Graphene pakken gir et tynt lag med typer for grafikkbiblioteker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.84.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.
GTK3 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtk/3.24/gtk-3.24.50.tar.xz
Nedlasting MD5 sum: 0b3c6d1d6fc321a32624e65750b60f5d
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 248 MB (legg til 8 MB for tester)
Estimert byggetid: 0.7 SBU (bruk parallellisme=4, legg til 0,2 SBU for tester)
at-spi2-core-2.56.4, gdk-pixbuf-2.42.12, libepoxy-1.5.10, og Pango-1.56.4
adwaita-icon-theme-48.1 (ved kjøretid; standard for noen gtk3 innstillingstaster) docbook-xsl-nons-1.79.2 (for å generere manualsider), hicolor-icon-theme-0.18 (needed for tests), ISO Codes-4.18.0, libxkbcommon-1.11.0, libxslt-1.1.43 (for å generere manualsider), Wayland-1.24.0, og wayland-protocols-1.45
GLib-2.84.4 (med GObject Introspection)
colord-1.4.8, Cups-2.4.12, GTK-Doc-1.34.0, libcloudproviders-0.3.6, PyAtSpi2-2.46.1 (for tester), sassc-3.6.2, tinysparql-3.9.2, og PAPI
Installer GTK3 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-48.1 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å TinySPARQL i GTK3
filvelgerdialogen. Det krever tinysparql-3.9.2.
-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.
GTK3 temaer endrer måten
en GTK3 applikasjon ser
ut. Et ikontema kan brukes til å endre ikonene som vises på
programmets verktøylinje. Hvis du har installert en
GTK3 tema (f.eks. Adwaita
temaet innebygd i GTK3),
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: GTK3 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 GTK3 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 GTK3 |
|
|
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 GTK3 temaer og skjermelementer |
|
|
utfører ulike operasjoner på GtkBuilder .ui filer |
|
|
konverterer symbolske SVG ikoner til spesial forberedte PNG filer. GTK3 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 GTK3 og skriver den til standard hurtigbuffer filplassering, eller til standardutdata |
|
|
gir en fullstendig liste over alle innstillinger relatert til GTK3 |
|
|
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtk/4.18/gtk-4.18.6.tar.xz
Nedlasting MD5 sum: 9ad89b1e6a71ac3a06ca8bbeed6fd466
Nedlastingsstørrelse: 17 MB
Estimert diskplass som kreves: 890 MB (med dokumenter; legg til 132 MB for tester)
Estimert byggetid: 1.4 SBU (bruker parallellisme=4; med dokumenter; legg til 3.6 SBU for tester)
gdk-pixbuf-2.42.12, graphene-1.10.8, ISO Codes-4.18.0, libepoxy-1.5.10, libxkbcommon-1.11.0, Pango-1.56.4, PyGObject-3.52.3, og wayland-protocols-1.45
adwaita-icon-theme-48.1 (kjøretid, standard for noen gtk4 innstillingstaster), gst-plugins-bad-1.26.5, glslc from shaderc-2025.3, gst-plugins-good-1.26.5 (kjøretid, bygget med libvpx-1.15.2), hicolor-icon-theme-0.18 (nødvendig for tester og for standarder), og librsvg-2.61.0, og Vulkan-Loader-1.4.321
GLib-2.84.4 (med GObject Introspection)
Avahi-0.8 (for noen tester), colord-1.4.8, Cups-2.4.12, docutils-0.21.2, Gi-DocGen-2025.4, Highlight-4.16 (kjøretid, bare brukt av gtk4-demo for syntaks utheving av demo kildekoden), libcloudproviders-0.3.6, sassc-3.6.2, tinysparql-3.9.2, accesskit-c, cpdb, pydbus (for noen tester), og sysprof
Først, fiks et problem når du bygger med gcc-15:
sed -e '939 s/= { 0, }//' \
-e '940 a memset (&transform, 0, sizeof(GtkCssTransform));' \
-i gtk/gtkcsstransformvalue.c
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=enabled \
.. &&
ninja
Hvis du har Gi-DocGen-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "s@'doc'@& / 'gtk-4.18.6'@" -i ../docs/reference/meson.build && meson configure -D documentation=true && ninja
For å kjøre testene, utsted:
env -u{GALLIUM_DRIVER,MESA_LOADER_DRIVER_OVERRIDE} \
LIBGL_ALWAYS_SOFTWARE=1 VK_LOADER_DRIVERS_SELECT='lvp*' \
dbus-run-session meson test --setup x11 \
--no-suite={headless,needs-udmabuf}
Hvis du er i en Wayland økt, bytt ut den ene forekomsten av
x11 med wayland. Mange tester vil mislykkes hvis
~/.config/gtk-4.0/settings.ini
eksisterer og gtk-modules linjen er ikke kommentert. Flere
andre tester kan mislykkes av ukjente årsaker. På systemer
med NVIDIA grafikkort kan testene ta betydelig lengre tid.
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 tinysparql-3.9.2 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.8 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=disabled: Bruk denne
bryteren i stedet for -D
vulkan=enabled hvis du ikke har Vulkan-Loader-1.4.321 or
glslc from shaderc-2025.3
installert. Det vil deaktivere Vulkan backend som oppstrøms
foretrekker å bruke på Wayland baserte grafiske miljøer.
LIBGL_ALWAYS_SOFTWARE=1 og
VK_LOADER_DRIVERS_SELECT='lvp*':
Tving testpakken å bruke softpipe eller llvmpipe Gallium
driver og lavapipe Vulkan driver fra Mesa. Testpakken er så
følsom at mindre forskjeller forårsaket av en annen Mesa
driver kan utløse testfeil.
env
-u{GALLIUM_DRIVER,MESA_LOADER_DRIVER_OVERRIDE}:
Deaktiver variabler som kan komme i konflikt med LIBGL_ALWAYS_SOFTWARE=1.
--no-suite={headless,needs-udmabuf}:
Deaktiver testene som krever den eksterne avhengigheten
pydbus, og testene som krever enhetsnoden /dev/udmabuf. Enhetsnoden eksisterer ikke
hvis funksjonen ikke er aktivert i
kjernekonfigurasjon, og selv om det
eksisterer kan det ikke nås som uprivilegerte brukere.
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 |
|
|
utfører ulike operasjoner på bilder, inkludert sammenligninger, konverteringer, listeinformasjon på bildene, ommerking av bilder, og viser bildene |
|
|
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 |
|
|
utfører ulike oppgaver på stier, inkludert dekomponeringer, reverseringer, restriksjoner, gjengivelse, visning av banen og listeinformasjon om stiene |
|
|
er et enkelt program for å demonstrere utskrift med GTK 4 applikasjoner |
|
|
gir en fullstendig liste over alle innstillinger relatert til GTK 4 |
|
|
utfører ulike oppgaver på GTK-gjengivelsesnoder, inkludert benchmarks, sammenligninger, trekke ut data-URLer, vise informasjon om nodene, vise nodene og ta skjermbilder av nodene |
|
|
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtkmm/3.24/gtkmm-3.24.10.tar.xz
Nedlasting MD5 sum: 164231e1ad76b84e0b7a98f9476e244f
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 213 MB (med tester)
Estimert byggetid: 0.7 SBU (Bruker parallellisme=4; med tester)
Atkmm-2.28.4, GTK-3.24.50, 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.10
-Dbuild-documentation=true: Hvis
du har installert Doxygen-1.14.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtkmm/4.18/gtkmm-4.18.0.tar.xz
Nedlasting MD5 sum: d689b73e53fdf8cdc8e45dda4d867ca9
Nedlastingsstørrelse: 16 MB
Estimert diskplass som kreves: 226 MB (med tester)
Estimert byggetid: 0.9 SBU (med tester; begge bruker parallellisme=4)
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.18.0
-Dbuild-documentation=true: Hvis
du har installert Doxygen-1.14.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtk-vnc/1.4/gtk-vnc-1.5.0.tar.xz
Nedlasting MD5 sum: 6e9815e7960636e95f626a3f164eb01d
Nedlastingsstørrelse: 224 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.2 SBU
GnuTLS-3.8.10, GTK-3.24.50, og libgcrypt-1.11.2
GLib-2.84.4 (med GObject Introspection), Vala-0.56.18, og PulseAudio-17.0
Cyrus SASL-2.1.28, og Gi-DocGen-2025.4 (for å generere dokumentasjon)
Installer Gtk VNC 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
-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.4 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.84.4 (med GObject Introspection)
Vala-0.56.18, Valgrind-3.25.1, GTK-Doc-1.34.0, itstool-2.0.7, fop-2.11 (eller dblatex), og Glade
Først, fiks å bygge denne pakken med gcc-14 og senere:
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.4 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.84.4 (med GObject Introspection) og libxml2-2.14.5
Vala-0.56.18, Valgrind-3.25.1, GTK-Doc-1.34.0, itstool-2.0.7, fop-2.11 (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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gtksourceview/5.16/gtksourceview-5.16.0.tar.xz
Nedlasting MD5 sum: e86f3d4b9be241e81625b1f8d9aa3ff4
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 161 MB
Estimert byggetid: 0.1 SBU (med tester; begge bruker parallellisme=4)
GLib-2.84.4 (med GObject Introspection) og libxml2-2.14.5
Gi-DocGen-2025.4, Vala-0.56.18, Valgrind-3.25.1, Vulkan-Loader-1.4.321, 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-2025.4 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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/enlightenment/imlib2-1.12.5.tar.xz
Nedlasting MD5 sum: c81c9f91d92ecbd87cf652f867ec5d74
Nedlastingsstørrelse: 820 KB
Estimert diskplass som kreves: 20 MB (med dokumenter)
Estimert byggetid: 0.2 SBU (med dokumenter)
giflib-5.2.2 og librsvg-2.61.0
Doxygen-1.14.0 (for API dokumentasjon), highway-1.3.0, libjpeg-turbo-3.0.1, libjxl-0.11.1, libpng-1.6.50, libtiff-4.7.0, libwebp-1.6.0, 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.5/html && install -v -m644 doc/html/* /usr/share/doc/imlib2-1.12.5/html
--disable-static:
Denne bryteren forhindrer installasjon av statiske versjoner
av bibliotekene.
--enable-doc-build: Denne
bryteren genererer API dokumentasjonen. Doxygen-1.14.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.4 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.4 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.4 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.84.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libadwaita/1.7/libadwaita-1.7.6.tar.xz
Nedlasting MD5 sum: b8465c0046767c4004a4660d2e790985
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 203 MB (med tester)
Estimert byggetid: 0.5 SBU (med parallellitet=4; med tester)
AppStream-1.0.6, GTK-4.18.6, og sassc-3.6.2
Gi-DocGen-2025.4 og xdg-desktop-portal-1.20.3 (for to 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-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed "s/apiversion/'1.7.6'/" -i ../doc/meson.build && meson configure -D documentation=true && ninja
For å teste resultatene, kjør: ninja test. Testene må kjøres fra en grafisk sesjon. To tester vil mislykkes hvis xdg-desktop-portal-1.20.3 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.
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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/libinput/libei/-/archive/1.4.1/libei-1.4.1.tar.bz2
Nedlasting MD5 sum: 1bed8a57a52c3ff38baa90c57661dbbf
Nedlastingsstørrelse: 180 KB
Estimert diskplass som kreves: 5.6 MB
Estimert byggetid: mindre enn 0.1 SBU
attrs-25.3.0 og elogind-255.17
libevdev-1.13.4, libxkbcommon-1.11.0, libxml2-2.14.5, 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.
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.4 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.4 plattform.
Nedlasting (HTTP): https://dri.freedesktop.org/libdrm/libdrm-2.4.125.tar.xz
Nedlasting MD5 sum: 3baec8e685510892b3355a7074baa874
Nedlastingsstørrelse: 476 KB
Estimert diskplass som kreves: 12 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
Xorg Biblioteker (for Intel KMS API støtte kreves av Mesa)
Cairo-1.18.4 (for tester), CMake-4.1.0 (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.43 (for å bygge manual sider), libatomic_ops-7.8.2 (kreves av arkitekturer uten opprinnelige atomoperasjoner), Valgrind-3.25.1, 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.4 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.14.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.14.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libnotify/0.8/libnotify-0.8.6.tar.xz
Nedlasting MD5 sum: 09bce743badbe1c180ce14d92539afb9
Nedlastingsstørrelse: 108 KB
Estimert diskplass som kreves: 2.2 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.84.4 (med GObject Introspection)
Gi-DocGen-2025.4 og xmlto-0.0.29
Minst én av notification-daemon-3.20.0, xfce4-notifyd-0.9.7, eller lxqt-notificationd-2.2.0
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-2025.4 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.6
mv -v /usr/share/doc/libnotify{,-0.8.6}
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.4 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.84.4 (GObject Introspection anbefalt), ISO Codes-4.18.0, libxml2-2.14.5 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/pango/1.56/pango-1.56.4.tar.xz
Nedlasting MD5 sum: 3db267bc07bfd96615c652e9187b85b5
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 22 MB (med tester)
Estimert byggetid: mindre enn 0.1 SBU (Bruker parallellisme=4; med tester)
Fontconfig-2.17.1 (må bygges med FreeType-2.13.3 ved bruk av harfBuzz-11.4.1), FriBidi-1.0.16, og GLib-2.84.4 (GObject Introspection påkrevd for GNOME)
Cairo-1.18.4 (bygget etter harfBuzz-11.4.1) og Xorg Biblioteker
Gi-DocGen-2025.4 (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 \
-D introspection=enabled \
.. &&
ninja
Hvis du har Gi-DocGen-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, utsted:
sed "/docs_dir =/s@\$@ / 'pango-1.56.4'@" -i ../docs/meson.build && meson configure -D documentation=true && ninja
For å teste resultatene, kjør: ninja test. Tre tester, test-font-data, test-font, og test-layout er kjent for å mislykkes på grunn av manglende fontdata.
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 forhindrer det å laste ned 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.4 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/pangomm/2.56/pangomm-2.56.1.tar.xz
Nedlasting MD5 sum: f3003015d87cb56c9cf731fa7a920a24
Nedlastingsstørrelse: 728 KB
Estimert diskplass som kreves: 11 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
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.4 plattform.
Nedlasting (HTTP): https://download.qt.io/archive/qt/6.9/6.9.2/single/qt-everywhere-src-6.9.2.tar.xz
Nedlasting MD5 sum: 78fe69ae8049f6b0139ceaa28e643f53
Nedlastingsstørrelse: 1.0 GB
Estimert diskplass som kreves: 47 GB (446 MB installert)
Estimert byggetid: 15 SBU (bruker parallellisme=8)
alsa-lib-1.2.14, make-ca-1.16.1, Cups-2.4.12, dbus-1.16.2, double-conversion-3.3.1, GLib-2.84.4, gst-plugins-base-1.26.5 (QtMultimedia bakstykke), harfBuzz-11.4.1, ICU-77.1, jasper-4.2.8, libjpeg-turbo-3.0.1, libinput-1.29.0, libmng-2.0.3, libpng-1.6.50, libtiff-4.7.0, libwebp-1.6.0, libxkbcommon-1.11.0, Mesa-25.1.8, mtdev-1.1.7, pcre2-10.45, SQLite-3.50.4, Wayland-1.24.0 (Mesa må bygges med Wayland EGL bakstykke), og XCB Utilities
BlueZ-5.83 (for sdpscanner, og ved kjøretid for QtConnectivity moduler), GTK-3.24.50, ibus-1.5.32, LLVM-20.1.8 (med Clang), libproxy-0.5.10, MariaDB-11.8.3 eller MySQL, MIT Kerberos V5-1.22.1, pciutils-3.14.0, PostgreSQL-17.6, Protobuf-32.0, PulseAudio-17.0, SDL2-2.32.8, unixODBC-2.3.12, assimp, Flite, Firebird, FreeTDS, OpenAL, speech-dispatcher, og tslib
BLFS redaktørene anbefaler å installere Qt6 i en annen mappe enn /usr, dvs. /opt/qt6. For å gjøre dette, sett 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.9.2.
For å lage en versjonert Qt6 mappe, du kan gi nytt navn til
mappen og lage en symbolkobling:
mkdir -pv /opt/qt-6.9.2 ln -sfnv qt-6.9.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.10, qcoro-0.12.0, eller sddm-0.21.0 har blitt installertog du installerer eller oppdaterer denne pakken på nytt, må disse pakkene 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.
Deaktiver en motstridende deklarasjon på i686-systemer og fiks en byggefeil på grunn av SIMD egenskapene i QtMultimedia:
if [ "$(uname -m)" == "i686" ]; then
sed -e "/^#elif defined(Q_CC_GNU_ONLY)/s/.*/& \&\& 0/" \
-i qtbase/src/corelib/global/qtypes.h &&
export CXXFLAGS+="-DDISABLE_SIMD -DPFFFT_SIMD_DISABLE"
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 \
-no-sbom \
-syslog \
-skip qt3d \
-skip qtquick3dphysics \
-skip qtwebengine &&
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.
-syslog: Denne
bryteren lar deg sende Qt meldinger til syslog loggingssystem.
-skip qtwebengine:
Denne bryteren deaktiverer bygging av QtWebEngine. BLFS
redaksjonen har valgt å bygge qtwebengine-6.9.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.
-libproxy: Denne bryteren
muliggjør bruk av libproxy for å bestemme
proxy-serverinformasjon.
Hvis Sudo-1.9.17p2 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 |
Denne pakken har historisk sett hatt hyppige oppdateringer som adresserer sikkerhetssårbarheter. For å finne den siste status sjekk BLFS Security Advisories.
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.4 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.9/6.9.2/submodules/qtwebengine-everywhere-src-6.9.2.tar.xz
Nedlasting MD5 sum: 2b6e61c52176e8987748284a4e47e834
Nedlastingsstørrelse: 641 MB
Estimert diskplass som kreves: 9.9 GB (360 MB installert)
Estimert byggetid: 40 SBU (Bruke parallellisme=8)
Cups-2.4.12, html5lib-1.1, nodejs-22.18.0, nss-3.115, pciutils-3.14.0, og Qt-6.9.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.14 eller PulseAudio-17.0 (eller begge), FFmpeg-7.1.1, ICU-77.1, libevent-2.1.12, libwebp-1.6.0, libxslt-1.1.43, Opus-1.5.2, og pipewire-1.4.7
MIT Kerberos V5-1.22.1, Poppler-25.08.0, jsoncpp, libsrtp, og snappy
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 \
-D QT_GENERATE_SBOM=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 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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/Vulkan-Headers/archive/v1.4.321/Vulkan-Headers-1.4.321.tar.gz
Nedlasting MD5 sum: 0121ba99047bf40ab93737209c7a170a
Nedlastingsstørrelse: 2.6 MB
Estimert diskplass som kreves: 33 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. To tester er
kjent for å mislykkes på grunn av bruken av den utdaterte
ciso646 deklarasjonen med GCC
15 eller nyere.
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.4 plattform.
Nedlasting (HTTP): https://github.com/KhronosGroup/Vulkan-Loader/archive/v1.4.321/Vulkan-Loader-1.4.321.tar.gz
Nedlasting MD5 sum: 880cb5b96b4f94282db03337dcb8743d
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: mindre enn 0.1 SBU
CMake-4.1.0, Vulkan-Headers-1.4.321, og Xorg Biblioteker
Mesa-25.1.8 (for Vulkan drivere)
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
Hvis denne pakken blir installert på et system der Mesa allerede er installert tidligere, vennligst gjenoppbygg Mesa-25.1.8 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
For å kjøre testpakken, utsted (merk at kommandoen vil bruke git-2.50.1 for å laste ned en kopi av GoogleTest for å bygge testpakken):
sed "s/'git', 'clone'/&, '--depth=1', '-b', self.commit/" \
-i ../scripts/update_deps.py &&
cmake -D BUILD_TESTS=ON -D UPDATE_DEPS=ON .. &&
ninja &&
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 BUILD_WSI_WAYLAND_SUPPORT=OFF:
Dette alternativet tillater bygging uten Wayland-1.24.0
støtte.
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.4 plattform.
Denne pakken har historisk sett hatt hyppige oppdateringer som adresserer sikkerhetssårbarheter. For å finne den siste status sjekk BLFS Security Advisories.
Nedlasting (HTTP): https://webkitgtk.org/releases/webkitgtk-2.48.5.tar.xz
Nedlasting MD5 sum: 23e26bc4e30b80462cb1030fab352409
Nedlastingsstørrelse: 42 MB
Estimert diskplass som kreves: 1.5 GB (186 MB installert, legg til 181 MB for GTK-4)
Estimert byggetid: 21 SBU (for GTK-3, bruk parallellisme=8, legg til 21 SBU for GTK-4)
Cairo-1.18.4, CMake-4.1.0, gst-plugins-base-1.26.5, gst-plugins-bad-1.26.5, GTK-3.24.50, GTK-4.18.6, ICU-77.1, Little CMS-2.17, libgudev-238, libsecret-0.21.7, libsoup-3.6.5, libtasn1-4.20.0, libwebp-1.6.0, Mesa-25.1.8, OpenJPEG-2.5.3, Ruby-3.4.5, SQLite-3.50.4, unifdef-2.12, og Which-2.23
bubblewrap-0.11.0, enchant-2.8.12, GeoClue-2.7.2 (kjøretid), GLib-2.84.4 (med GObject Introspection), hicolor-icon-theme-0.18, libavif-1.3.0, libjxl-0.11.1, libseccomp-2.6.0, og xdg-dbus-proxy-0.1.6
Gi-DocGen-2025.4, harfBuzz-11.4.1, Wayland-1.24.0, WOFF2-1.0.2, ccache, flite, Hyphen, libbacktrace, libmanette, libspiel, og sysprof
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-48.5. Andre pakker, som f.eks Balsa-2.6.5 eller Evolution-3.56.2, 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
Med standard «release» byggekonfigurasjon, noen
kildefiler i denne pakken krever mer enn 4 GiB RAM for å
bli bygget. Som et resultat bør du sende -j til
ninja
(erstatte <N><N> med kvotienten av
mengden tilgjengelig RAM og 4 GiB) for å begrense antallet
parallelle jobber og unngå at jobben blir drept av kjernens
OOM killer.
På et 32-bits system kan ikke summen av RAM og vekslingsplass som brukes av en byggejobb (faktisk en hvilken som helst enkeltprosess) overstige 4 GiB. Så hvis du bygger denne pakken på et 32-bits system, må du legge til -D CMAKE_CXX_FLAGS_RELEASE="-O2 -DNDEBUG" alternativet til cmake for å deaktivere noen optimaliseringer som krever mye minne for å begrense minnebruken til individuelle byggejobber. Ytelsen vil bli noe påvirket, men ikke på et nivå der det er merkbart under normal bruk.
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_JOURNALD_LOG=OFF \
-D ENABLE_BUBBLEWRAP_SANDBOX=ON \
-D USE_SYSPROF_CAPTURE=NO \
-D ENABLE_SPEECH_SYNTHESIS=OFF \
-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_JOURNALD_LOG=OFF \
-D ENABLE_BUBBLEWRAP_SANDBOX=ON \
-D USE_SYSPROF_CAPTURE=NO \
-D ENABLE_SPEECH_SYNTHESIS=OFF \
-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-2025.4 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-2025.4 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.11.0, libseccomp-2.6.0, eller xdg-dbus-proxy-0.1.6, men merk at
dette kan sette deg i fare.
-D
ENABLE_JOURNALD_LOG=OFF: Denne bryteren
deaktiverer bruk av systemd journal for logging av feil og
feilsøkingsinformasjon siden den ikke er tilgjengelig på SysV
systemer.
-D
USE_SYSPROF_CAPTURE=NO: Denne bryteren
deaktiverer en hard avhengighet av sysprof.
-D
ENABLE_SPEECH_SYNTHESIS=OFF: Denne bryteren
deaktiverer byggestøtte for talesyntese i WebKitGTK fordi det
krever ytterligere eksterne avhengigheter. Du vil trenge både
flite og libspiel
hvis du ønsker å aktivere dette.
-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.2.
-D USE_AVIF=OFF: Bruk denne
bryteren hvis du ikke vil installere libavif-1.3.0. 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.11.1 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.4 plattform.
Nedlasting (HTTP): https://github.com/flatpak/xdg-desktop-portal/releases/download/1.20.3/xdg-desktop-portal-1.20.3.tar.xz
Nedlasting MD5 sum: 28c2d9b9bbeff811f2d999e1b985c728
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 22 MB (legg til 3 MB for tester)
Estimert byggetid: 0.1 SBU (legg til 0.1 SBU for tester; med parallellitet=4)
Fuse-3.17.4, gdk-pixbuf-2.42.12, JSON-GLib-1.10.6, pipewire-1.4.7, og dbus-1.16.2 (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.3 eller xdg-desktop-portal-gnome-48.0 eller xdg-desktop-portal-lxqt-1.2.0
bubblewrap-0.11.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.2 (for «lokasjons» portal), og pytest-8.4.1 med libportal-0.9.1, dbusmock-0.36.0, og umockdev-0.19.3 (for å kjøre tester)
sphinx-8.2.3 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 -D tests=disabled .. && ninja
Hvis de valgfrie avhengighetene er installert, kan du teste resultatene ved å kjøre:
meson configure -D tests=enabled && ninja test
Uten de eksterne avhengighetene en test, integration/dynamiclauncher er kjent for å mislykkes.
Nå, som root bruker:
ninja install
Fjern systemd filer som er ubrukelige (som root bruker):
rm -rvf /usr/lib/systemd
-D tests=disabled:
Hindrer å kreve flere valgfrie avhengigheter som kun trengs
for tester.
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.4 plattform.
Nedlasting (HTTP): https://github.com/flatpak/xdg-desktop-portal-gtk/releases/download/1.15.3/xdg-desktop-portal-gtk-1.15.3.tar.xz
Nedlasting MD5 sum: 2d6e2ad2953c386a1db11618fa3803b0
Nedlastingsstørrelse: 96 KB
Estimert diskplass som kreves: 6.6 MB
Estimert byggetid: 0.1 SBU
GTK-3.24.50 og xdg-desktop-portal-1.20.3
gnome-desktop-44.3 (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
Fjern systemd filer som er ubrukelige (som root bruker):
rm -rvf /usr/lib/systemd
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gdm/48/gdm-48.0.tar.xz
Nedlasting MD5 sum: a17868752c9a90ed560891886f2882f2
Nedlastingsstørrelse: 920 KB
Estimert diskplass som kreves: 44 MB
Estimert byggetid: 0.2 SBU
AccountsService-23.13.9, DConf-0.40.0, libcanberra-0.30 (bygget etter GTK-3.24.50), og Linux-PAM-1.7.1
keyutils-1.6.3 og check (for testing)
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
Først, tilpass GDM til å bygge med GCC 15:
sed -r 's/([(*])bool([) ])/\1boolval\2/' -i common/gdm-settings-utils.*
Installer GDM ved å kjøre følgende kommandoer:
sed -e 's@systemd@elogind@' \
-e 's/-session optional/-session required/' \
-e '/elogind/isession required pam_loginuid.so' \
-i data/pam-lfs/gdm-launch-environment.pam &&
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gdm-xsession=true \
-D initial-vt=7 \
-D run-dir=/run/gdm \
-D logind-provider=elogind \
-D systemd-journal=false \
-D systemdsystemunitdir=no \
-D systemduserunitdir=no &&
ninja
Testpakken krever Check som er fjernet fra 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 initial-vt=7:
Denne bryteren starter GDM på VT7 som standard, siden elogind
ikke er tilgjengelig på SysV systemer før den aktiveres av
PAM under en påloggingsøkt. Standardoppførselen er å starte
på den aktive TTY-en, men denne oppførselen fører til at GDM
ikke starter i virtuelle miljøer og andre situasjoner der
Wayland ikke støttes.
-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 eller virtuelle GPU-er
(slik som levert av qemu), 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, applikasjonskrasjer, strømstyringsproblemer
og grafiske nedbremsinger. Hvis systemet ditt er en
virtuell maskin eller du har et NVIDIA GPU og fortsatt vil
prøve å kjøre Wayland økter, kjør følgende kommando som
root user:
ln -s /dev/null /etc/udev/rules.d/61-gdm.rules
For å starte gdm automatisk når
systemet blir byttet til kjørenivå 5, installer
/etc/rc.d/init.d/xdm skriptet
og /etc/sysconfig/xdm
konfigurasjonsfilen inkludert i blfs-bootscripts-20250225 pakken
og juster /etc/inittab ved å
kjøre som root bruker:
make install-gdm
For å permanent sette standard kjørenivå til 5, starter du
gdm
velkomstskjermen automatisk, kan du endre /etc/inittab. Som root bruker:
sed /initdefault/s/3/5/ -i /etc/inittab
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.4 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.20.0 (for greeter), libgcrypt-1.11.2, itstool-2.0.7, Linux-PAM-1.7.1, og Xorg-Server-21.1.18 (Kjøretid)
GLib-2.84.4 (med GObject Introspection), libxklavier-5.4, og Vala-0.56.18
AccountsService-23.13.9 (kjøretid), at-spi2-core-2.56.4, GTK-Doc-1.34.0, 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
Deretter endrer du Linux-PAM konfigurasjonsfiler sånn at elogind blir brukt:
sed -i s/systemd/elogind/ data/pam/*
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.
For å starte lightdm automatisk når
systemet er byttet til kjørenivå 5, installer /etc/rc.d/init.d/xdm skriptet og
/etc/sysconfig/xdm
konfigurasjonsfilen inkludert i blfs-bootscripts-20250225 pakken
og juster /etc/inittab ved å
kjøre som root bruker:
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.4 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-4.1.0, extra-cmake-modules-6.17.0, og Qt-6.9.2
docutils-0.21.2 (for manualsidene), Linux-PAM-1.7.1, og UPower-1.90.9
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 CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-D ENABLE_JOURNALD=OFF \
-D NO_SYSTEMD=ON \
-D RUNTIME_DIR=/run/sddm \
-D USE_ELOGIND=ON \
-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
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
-D
ENABLE_JOURNALD=OFF og -D NO_SYSTEMD=ON: Disse
bryterne brukes pga at denne versjonen av BLFS støtter ikke
systemd.
-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
Installer /etc/rc.d/init.d/xdm init skriptet fra
blfs-bootscripts-20250225
pakken, som root bruker:
make install-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
Hvis sddm oppstartsskriptet er installert, start sddm ved å
kjøre, som root bruker:
/etc/rc.d/init.d/xdm start
Etter konvensjon bør X kjøres på kjørenivå 5, det samme
gjelder for sddm.
Imidlertid, standard kjørenivå er 3. Bytt til runlevel 5,
fra en konsollterminal, som root bruker, start sddm oppstartsskriptet,
som henter frem velkomstskjermen:
init 5
For å permanent sette standarden til 5, for å starte
sddm
velkomstskjermen automatisk, endre /etc/inittab som root bruker:
cp -v /etc/inittab{,-orig} &&
sed -i '/initdefault/ s/3/5/' /etc/inittab
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.4 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.16.2 (kjøretid), FriBidi-1.0.16, og imlib2-1.12.5 (hvis du ønsker å bruke andre bildeformater i tillegg til XPM)
Først, fikse en byggefeil når du bygger med gcc-11.1 og senere:
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-48.0 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-48.0 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.5 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.4 plattform.
Nedlasting (HTTP): https://github.com/ice-wm/icewm/archive/3.8.2/icewm-3.8.2.tar.gz
Nedlasting MD5 sum: e89064dd3eeeec7ab166fd317ccefeb3
Nedlastingsstørrelse: 2.5 MB
Estimert diskplass som kreves: 52 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4)
CMake-4.1.0, imlib2-1.12.5, og et grafiske miljø
asciidoc-10.2.1 (for å regenerere HTML dokumentasjonen), FriBidi-1.0.16 (for språk skrevet fra høyre til venstre), librsvg-2.61.0, libao-1.2.0, libsndfile-1.2.2, alsa-lib-1.2.14 (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.8.2 \
.. &&
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.4 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: 19 MB
Estimert byggetid: 0.3 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/openbox-3.6.1-py3-1.patch
et grafiske miljø og Pango-1.56.4 (kompilert med støtte for libXft)
dbus-1.16.2 (kjøretid), imlib2-1.12.5 (for å aktivere ikoner i høyreklikkmenyen), ImageMagick-7.1.2-1 (for å vise skrivebordsbakgrunner som vist i Konfigurasjonsinformasjonsdelen nedenfor), PyXDG-0.28, startup-notification-0.12, og librsvg-2.61.0
Hvis XORG_PREFIX ikke er /usr, fortell gcc om det:
export LIBRARY_PATH=$XORG_PREFIX/lib
Oppdater pakkeskriptene for å aktivere Python 3:
patch -Np1 -i ../openbox-3.6.1-py3-1.patch
Installer Openbox ved å kjøre følgende kommandoer:
autoreconf -fi &&
./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.5 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.16.2:
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/adwaita-icon-theme/48/adwaita-icon-theme-48.1.tar.xz
Nedlasting MD5 sum: a3923f90a1885cfc1d5b0626762ec0b7
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 31 MB
Estimert byggetid: mindre enn 0.1 SBU
GTK-3.24.50 eller GTK-4.18.6, og librsvg-2.61.0
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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.17/breeze-icons-6.17.0.tar.xz
Nedlasting MD5 sum: 9aaed8b97970adf982f732e528050aca
Nedlastingsstørrelse: 2.2 MB
Estimert diskplass som kreves: 145 MB
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4)
extra-cmake-modules-6.17.0 og Qt-6.9.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 .. &&
make
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.17.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.4 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.50, 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.4 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.4 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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://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.4 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.50 (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.4 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.
KDE6 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.17/extra-cmake-modules-6.17.0.tar.xz
Nedlasting MD5 sum: c6c6e39f1bba551a21401cd5fbba1c1a
Nedlastingsstørrelse: 324 KB
Estimert diskplass som kreves: 9.9 MB
Estimert byggetid: mindre enn 0.1 SBU
sphinx-8.2.3 (for bygge dokumentasjon), PyQt (eksperimentell støtte for å bygge KDE Python bindinger), og ReuseTool (for å kjøre interne tester)
Først, fiks pakken slik at den er kompatibel med den nyeste Python utgivelsen.:
patch -Np1 -i ../extra-cmake-modules-6.17.0-upstream_fix-1.patch
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 -D BUILD_WITH_QT6=ON .. &&
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/kf6
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.4 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-4.1.0, extra-cmake-modules-6.17.0, GLib-2.84.4, og Qt-6.9.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: Denne bryteren er nødvendig
for å hindre bygging av Qt5
bindinger, som mislykkes hvis Qt5 ikke er installert.
Denne pakken gir en Phonon bakstykke som utnytterVLC media rammeverket.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/plasma-wayland-protocols/plasma-wayland-protocols-1.18.0.tar.xz
Nedlasting MD5 sum: a9345ad81b25e896c5b902b408b14ba0
Nedlastingsstørrelse: 48 KB
Estimert diskplass som kreves: 1.1 MB
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.17p2 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.13/site-packages PYTHONPATH pathappend $KF6_PREFIX/include CPLUS_INCLUDE_PATH pathappend $KF6_PREFIX/lib/gtk-3.0 GTK_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
Plasma pakker installerer
filer i D-Bus og
Polkit mappene. Ved
installasjon av KDE
Rammeverk på et annet sted enn /usr, D-Bus og Polkit 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
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.17.0.
Etter installasjon av KDE
Rammeverk, du kan gi nytt navn til mappen og lage en
symbolkobling:
mv /opt/kf6{,-6.17.0}
ln -sfv kf6-6.17.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.4 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.17
Nedlasting MD5 sum: Se Under
Nedlastingsstørrelse: 109 MB
Estimert diskplass som kreves: 2.9 GB (191 MB installert)
Estimert byggetid: 13 SBU (bruker parallellisme=8)
extra-cmake-modules-6.17.0, breeze-icons-6.17.0, docbook-xml-4.5, docbook-xsl-nons-1.79.2, libcanberra-0.30, libgcrypt-1.11.2, libical-3.0.20, libxslt-1.1.43, lmdb-0.9.33, qca-2.3.10, libqrencode-4.1.1, plasma-wayland-protocols-1.18.0, PyYAML-6.0.2, shared-mime-info-2.4, URI-5.32, og Wget-1.25.0 (kreves for å laste ned pakkene)
Aspell-0.60.8.1 (Ordbok bakstykke for Sonnet), Avahi-0.8 (DNS-SD bakstykke for KDNSSD), ModemManager-1.24.2 (nødvendig for å bygge ModemManager-Qt), NetworkManager-1.54.0 (nødvendig for å bygge NetworkManager-Qt), polkit-qt-0.200.0 (Autentiseringsbakstykke for KAuth), Vulkan-Loader-1.4.321 (Legg til støtte for Vulkan grafikkdrivere), og zxing-cpp-2.3.0 (Legg til støtte som trengs for å bygge spectacle)
Videre forutsetter instruksjonene nedenfor at miljøet har blitt satt opp som beskrevet i Introduction to KF6.
BlueZ-5.83 (nødvendig for å bygge Bluez-Qt) og Datamatrix (ansett anbefalt for Prison av oppstrøms)
Doxygen-1.14.0 Kjøretid), doxypypy-0.8.8.7, doxyqml-0.5.3, og requests-2.32.5
libavif-1.3.0, libjxl-0.11.1, libraw-0.21.4, libheif, OpenEXR
UDisks-2.10.2, UPower-1.90.9 og media-player-info (kjøretid)
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.17/
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.17.0.md5 << "EOF"
82423c1b42100b5b776c8fecdc042a40 attica-6.17.0.tar.xz
#c6c6e39f1bba551a21401cd5fbba1c1a extra-cmake-modules-6.17.0.tar.xz
8a59548faa1778cef7a6ad3395490ed2 kapidox-6.17.0.tar.xz
7ac1e1b5d4be693f208381b4fa704965 karchive-6.17.0.tar.xz
77d7969cda44acc3c679f230d2a82f9d kcodecs-6.17.0.tar.xz
51d38c6aec7f6af07bd0fff8c96b3505 kconfig-6.17.0.tar.xz
0e497f3da6780a81eebadd22c856bc00 kcoreaddons-6.17.0.tar.xz
4ae23e5cba7f547e5202e5eeb1842f49 kdbusaddons-6.17.0.tar.xz
cbd3e5128e0cdcdb8096d54579601bb7 kdnssd-6.17.0.tar.xz
f33a5c69a7649ffba69a1aa52feaf649 kguiaddons-6.17.0.tar.xz
4c75596dc00ad12e9a80bf7798d9f843 ki18n-6.17.0.tar.xz
e86f50568a3303f2542db2b4fb5183db kidletime-6.17.0.tar.xz
4b291a60f6374f96e2cf99a38ddb5eb9 kimageformats-6.17.0.tar.xz
4aca52e11e671da59d87c24de5206055 kitemmodels-6.17.0.tar.xz
e01dc3235328a28275f9b6f30d915a60 kitemviews-6.17.0.tar.xz
c1afe10db53a7f061364bb8be10fc451 kplotting-6.17.0.tar.xz
238a7cb973629f9d6207fbd80e3a2a43 kwidgetsaddons-6.17.0.tar.xz
9a8e56599a0bfa0fd5ca8f52c04dd410 kwindowsystem-6.17.0.tar.xz
a999ecf34d2a08ddf9de8d1ef6b00930 networkmanager-qt-6.17.0.tar.xz
8c8239af3e50c7ae75c51292e077307d solid-6.17.0.tar.xz
38b1c0354ca13efb9378c9a9f7ca6d4c sonnet-6.17.0.tar.xz
1dea5634f166937e9657defd8a1c435a threadweaver-6.17.0.tar.xz
c1c4bdcd93a64b424938efd31994b391 kauth-6.17.0.tar.xz
164f867d80ea9d511d120a2316e2d083 kcompletion-6.17.0.tar.xz
9bbc4d738ffcdb2980b7d03483f0ecaf kcrash-6.17.0.tar.xz
318b37f959efb7b8414fd6f225fc6180 kdoctools-6.17.0.tar.xz
b53d98281af63012844e42f4d2340e72 kpty-6.17.0.tar.xz
81260390604d84f30fc7e397f2a71377 kunitconversion-6.17.0.tar.xz
e178d79bf39b6eca3c5a43904e1e6812 kcolorscheme-6.17.0.tar.xz
288b6d923b1e0e470902226cb0150aef kconfigwidgets-6.17.0.tar.xz
bdec608acd77463bc13be706143e1ad1 kservice-6.17.0.tar.xz
bc8d0c1a7915679d265996c3f8cf022d kglobalaccel-6.17.0.tar.xz
71aced57987eecd1a54cd78c4acf0997 kpackage-6.17.0.tar.xz
e4e7130dbc3df657419a41b1716fae88 kdesu-6.17.0.tar.xz
973fc15005119c8206deac1e7c950928 kiconthemes-6.17.0.tar.xz
7d2f8797d6a7d01481ccaa5853853f78 knotifications-6.17.0.tar.xz
1281a859bbade7b6d0f4062be5801503 kjobwidgets-6.17.0.tar.xz
a7241f89698eef4da4476c5f8e942532 ktextwidgets-6.17.0.tar.xz
f081efe2093e1808ec936a1504aa921b kxmlgui-6.17.0.tar.xz
d9e0be9f6ab3a826d46bd69fab5df3cc kbookmarks-6.17.0.tar.xz
be6b34cd7395ce1bfbb026202a0fb049 kwallet-6.17.0.tar.xz
ade7d92808bcc51303aac1e3d2fac1ea kded-6.17.0.tar.xz
6f2caa8f5cc4c473c14024ef33292aa6 kio-6.17.0.tar.xz
af1144caf162a8e7183178b9697d4b76 kdeclarative-6.17.0.tar.xz
75a1a1af5647ef5ae2a4800bd5d0436e kcmutils-6.17.0.tar.xz
9c3167fb2f81a610149d0baa9086cd03 kirigami-6.17.0.tar.xz
eefe9fd856c0d90c8e70c36cf8d71b0b syndication-6.17.0.tar.xz
3315f351aac4fd66d1be6783d25f767b knewstuff-6.17.0.tar.xz
58f3a8d01b2471487b5e1fee5d7428d7 frameworkintegration-6.17.0.tar.xz
b58edde459f7df84e6ac15b8c0d8a0b3 kparts-6.17.0.tar.xz
c9b97c254e572760633966017640447d syntax-highlighting-6.17.0.tar.xz
00047f9c145d242212cf7e0bdbdd11c5 ktexteditor-6.17.0.tar.xz
c155065874518609dd0ca9159e03ee2f modemmanager-qt-6.17.0.tar.xz
cc4c525dff89bdb2f65e3130df58e280 kcontacts-6.17.0.tar.xz
ddbcacdc97fcac94fc23624f8d86b3cd kpeople-6.17.0.tar.xz
cff7e94d07346f8fe0863ab4140965d1 bluez-qt-6.17.0.tar.xz
07374ffc535818d174f3b2a477935c74 kfilemetadata-6.17.0.tar.xz
5f352802358f0106418a233379e6f67a baloo-6.17.0.tar.xz
#9aaed8b97970adf982f732e528050aca breeze-icons-6.17.0.tar.xz
3c04c64a88d1273856b9dfca5b31e787 krunner-6.17.0.tar.xz
051d08b46b47d9f79266f8c54f67ddc3 prison-6.17.0.tar.xz
1fc84041ca6959adf18aeb6f7f16519e qqc2-desktop-style-6.17.0.tar.xz
6560b5d9e25758afc0c72a35374d6f8f kholidays-6.17.0.tar.xz
6c40e376dae0209229739c9e92259964 purpose-6.17.0.tar.xz
60e2beddf625dd29b06ecb9966968824 kcalendarcore-6.17.0.tar.xz
76a127b6826b69f24a491c911d5f1731 kquickcharts-6.17.0.tar.xz
dad770e5aa4ad6b7c83625488c119619 knotifyconfig-6.17.0.tar.xz
2ef222252c3e1f9f131fe6d89ada580e kdav-6.17.0.tar.xz
e60223dddf9812597933d37c9ced0003 kstatusnotifieritem-6.17.0.tar.xz
bd54e23c136fcb53ec866c476f1919c4 ksvg-6.17.0.tar.xz
242303b5dcdb5d4eab00c4d16980aec0 ktexttemplate-6.17.0.tar.xz
56e69133a11b2e67355d4869959be9ba kuserfeedback-6.17.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.17.0. Den er separat for å tillate brukere som trenger disse ikonene, men ikke trenger hele settet med KF6-pakker (f.eks. LXQt-Post-Install) for å enklere installere dem.
Det er en pakke lastet ned som er erstattet av en senere versjon: solid-6.9.1. Denne utgivelsen fikser et krasj som kan oppstå ved innsetting eller fjerning av en USB-stasjon eller annen flyttbar enhet.
Når du installerer flere pakker i et skript, må installasjonen 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.17p2 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
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-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 \
-D BUILD_PYTHON_BINDINGS=OFF \
-W no-dev ..
make
as_root make install
popd
as_root rm -rf $packagedir
as_root /sbin/ldconfig
done < frameworks-6.17.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.
Ubrukelige systemd enheter er installert i $KF6_PREFIX/lib. Fjern dem nå (som
root):
rm -rf $KF6_PREFIX/lib/systemd
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.17.0 ln -sfvn kf6-6.17.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.
-D
BUILD_PYTHON_BINDINGS=OFF: Denne bryteren brukes
til å forhindre at Python moduler som krever eksterne
valgfrie avhengigheter bygges.
|
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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/ark-25.08.0.tar.xz
Nedlasting MD5 sum: 1c3b55f3abf2acd7c01f3e0456fd0696
Nedlastingsstørrelse: 2.9 MB
Estimert diskplass som kreves: 42 MB
Estimert byggetid: 0.4 SBU (bruke parallellisme=4)
KDE Frameworks-6.17.0 og libarchive-3.8.1
7zip-25.01, cpio-2.15, libarchive-3.8.1, UnRar-7.1.10, og Zip-3.0
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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/dolphin-25.08.0.tar.xz
Nedlasting MD5 sum: f730772b366f7c00c86113e70203ffb4
Nedlastingsstørrelse: 5.5 MB
Estimert diskplass som kreves: 96 MB
Estimert byggetid: 1.0 SBU (bruke parallellisme=4)
KDE Frameworks-6.17.0 og phonon-4.12.0
baloo-widgets (for metadatafunksjonene til Dolphin) og packagekit-qt
kio-extras-25.08.0 (for montering av SMB delinger)
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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/dolphin-plugins-25.08.0.tar.xz
Nedlasting MD5 sum: daebce1e812cbfaba28bea014511079f
Nedlastingsstørrelse: 324 KB
Estimert diskplass som kreves: 26 MB
Estimert byggetid: 0.3 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/kdenlive-25.08.0.tar.xz
Nedlasting MD5 sum: d22d1351fb760e2a02a4a80874ab5b27
Nedlastingsstørrelse: 14 MB
Estimert diskplass som kreves: 473 MB
Estimert byggetid: 3.5 SBU (bruke parallellisme=4)
KDE Frameworks-6.17.0, mlt-7.32.0, og v4l-utils-1.30.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
KMix Pakken inneholder en KF6 basert lydmikser applikasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/kmix-25.08.0.tar.xz
Nedlasting MD5 sum: b0cd9feac7bc4266fe46630ac39848ea
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 28 MB
Estimert byggetid: 0.2 SBU (bruke parallellisme=4)
Installer KMix 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/khelpcenter-25.08.0.tar.xz
Nedlasting MD5 sum: cc1ab80de596b7cfcb6281582b324ab5
Nedlastingsstørrelse: 4.1 MB
Estimert diskplass som kreves: 25 MB
Estimert byggetid: 0.2 SBU (bruke parallellisme=4)
KDE Frameworks-6.17.0, libxml2-2.14.5, og xapian-1.4.29
kio-extras-25.08.0 (for visning av manualsider og info sider)
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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/konsole-25.08.0.tar.xz
Nedlasting MD5 sum: 44a5cb6565b746be1d61742ac06a8af0
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 73 MB
Estimert byggetid: 0.6 SBU (bruke parallellisme=4)
Valgfri oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/konsole-adjust_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-adjust_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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/konversation-25.08.0.tar.xz
Nedlasting MD5 sum: f79a5e816b4ab32af2c6dd492d444e56
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 70 MB
Estimert byggetid: 0.7 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/libkexiv2-25.08.0.tar.xz
Nedlasting MD5 sum: 0faeec091ac2bec2282d7ad4867bcecc
Nedlastingsstørrelse: 60 KB
Estimert diskplass som kreves: 3.5 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.4.4 applikasjon gir kjernekomponenter for KDE aktiviteter. Den bygges normalt med Plasma-6.4.4 men er inkludert her fordi det trengs for okular-25.08.0 og kio-extras-25.08.0 hvis Plasma-6.4.4 ikke er bygget ennå.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/plasma/6.4.4/plasma-activities-6.4.4.tar.xz
Nedlasting MD5 sum: 1294ad60e08e3d14263c316c5f2123c3
Nedlastingsstørrelse: 68 KB
Estimert diskplass som kreves: 8.5 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
plasma-activities-stats-6.4.4 biblioteket gir tilgang til bruksdataene som samles inn av systemets KDE aktiviteter. Den bygges normalt med Plasma-6.4.4 men er inkludert her fordi det trengs for kio-extras-25.08.0.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/plasma/6.4.4/plasma-activities-stats-6.4.4.tar.xz
Nedlasting MD5 sum: e19f331b7233dfa00c1f9a4dc282aa6d
Nedlastingsstørrelse: 84 KB
Estimert diskplass som kreves: 4.0 MB
Estimert byggetid: 0.2 SBU
Installer plasma-activities-stats 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
kio-extras pakken inneholder ekstra komponenter for å øke funksjonaliteten til KDE ressurser og nettverkstilgang abstraksjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/kio-extras-25.08.0.tar.xz
Nedlasting MD5 sum: 1d11770bdb9cb4549814c98a10f43f26
Nedlastingsstørrelse: 3.4 MB
Estimert diskplass som kreves: 93 MB
Estimert byggetid: 0.6 SBU (bruke parallellisme=4)
KDE Frameworks-6.17.0, kdsoap-ws-discovery-client-0.4.0, libproxy-0.5.10, plasma-activities-stats-6.4.4, og qcoro-0.12.0
libtirpc-1.3.6, Samba-4.22.4, taglib-2.1.1, libappimage, libimobiledevice, libmtp, libplist, libssh, og OpenEXR
Installer kio-extras 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/okular-25.08.0.tar.xz
Nedlasting MD5 sum: 1a3315cc4c487e6c499f738f14b9396b
Nedlastingsstørrelse: 7.8 MB
Estimert diskplass som kreves: 96 MB
Estimert byggetid: 1.1 SBU (bruke parallellisme=4)
KDE Frameworks-6.17.0 og plasma-activities-6.4.4
libkexiv2-25.08.0, libtiff-4.7.0, phonon-4.12.0, og Poppler-25.08.0 (bygget med Qt6, påkrevd for PDF støtte)
qca-2.3.10, 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=$KF6_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.4 bibliotek for å manipulere bildemetadata.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/libkdcraw-25.08.0.tar.xz
Nedlasting MD5 sum: fb4a516f22467b83ef783c7bb1f23f2e
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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/gwenview-25.08.0.tar.xz
Nedlasting MD5 sum: 44167fdab8009a6f2c7079f9fbe4339d
Nedlastingsstørrelse: 6.2 MB
Estimert diskplass som kreves: 68 MB
Estimert byggetid: 0.7 SBU (bruke parallellisme=4)
Exiv2-0.28.5, kimageannotator-0.7.1, KDE Frameworks-6.17.0, og Little CMS-2.17
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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/libkcddb-25.08.0.tar.xz
Nedlasting MD5 sum: a09d78fb997e4cd2356b5e521f83c6f7
Nedlastingsstørrelse: 440 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.4 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/k3b-25.08.0.tar.xz
Nedlasting MD5 sum: 09aa50d3c908dc34e16a4d682a3ba5a7
Nedlastingsstørrelse: 10 MB
Estimert diskplass som kreves: 142 MB
Estimert byggetid: 1.3 SBU (bruke parallellisme=4)
KDE Frameworks-6.17.0, libkcddb-25.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.2, som derfor må installeres før kjøring av k3b.
libburn-1.5.6, libdvdread-6.1.3, og taglib-2.1.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.5 (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.5.0, 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
Dette kapitlet 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å KDE6 serverne på https://download.kde.org/stable/release-service/25.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.
Spectacle: et program for skjermdumper.
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 -LH .
Merk at dette oppretter noen filer øverst i kildemappen, slik at det er bedre å pakket ut en ren kilde på nytt før du fortsetter til bygget.
De fleste av disse pakkene kan bygges med standard KDE6 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/kirigami-addons/kirigami-addons-1.9.0.tar.xz
Nedlasting MD5 sum: 0935e45ed27717cc492f71a643edc78c
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 63 MB
Estimert byggetid: 0.5 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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/pulseaudio-qt/pulseaudio-qt-1.7.0.tar.xz
Nedlasting MD5 sum: 247fcc8c7876f84c8a13d1601d388fc2
Nedlastningsstørrelse: 40 KB
Estimert diskplass som kreves: 5.8 MB
Estimert byggetid: 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 \
.. &&
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.4 plattform.
Instruksjonene nedenfor bygger alle Plasma pakkene i et trinn ved å bruke et bashskript.
Nedlasting (HTTP): https://download.kde.org/stable/plasma/6.4.4
Nedlasting MD5 sum: Se Under
Nedlastingsstørrelse: 292 MB
Estimert diskplass som kreves: 2.7 GB (638 MB installert)
Estimert byggetid: 18 SBU (bruke parallellisme=8)
Boost-1.89.0, FFmpeg-7.1.1, GTK-3.24.50, KDE Frameworks-6.17.0, kirigami-addons-1.9.0, libdisplay-info-0.3.0, libpwquality-1.4.5, libqalculate-5.7.0, libnl-3.11.0, libxcvt-0.1.3, libxkbcommon-1.11.0, Mesa-25.1.8 bygget med Wayland-1.24.0, opencv-4.12.0, phonon-4.12.0, pipewire-1.4.7, pulseaudio-qt-1.7.0, qca-2.3.10, qcoro-0.12.0, sassc-3.6.2, taglib-2.1.1, xdotool-3.20211022.1, og Xorg Evdev Driver-2.11.0
gsettings-desktop-schemas-48.0, libcanberra-0.30, libinput-1.29.0, libpcap-1.10.5, libwacom-2.16.1 og Xorg Wacom Driver-1.2.3 (for wacomtablet), Linux-PAM-1.7.1, lm-sensors-3-6-2, oxygen-icons-6.0.0, pciutils-3.14.0, power-profiles-daemon-0.30, og følgende Python moduler: psutil-7.0.0, pygdbmi-0.11.0.0, sentry-sdk-2.35.0, urllib3-2.5.0 (hvis de ikke er installert, blir de det lastet ned og installert av drkonqi byggeprosedyren)
AccountsService-23.13.9, breeze-icons-6.17.0, kio-extras-25.08.0, smartmontools-7.5, xdg-desktop-portal-1.20.3, og Xwayland-24.1.8
AppStream-1.0.6 (bygget med -qt=true), GLU-9.0.3, ibus-1.5.32, qtwebengine-6.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.4.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.4.4.md5 << "EOF"
1e80c73ad404ff95a607f46ec453ac07 kdecoration-6.4.4.tar.xz
6788dae93c3fb8d3790651c3cc13a459 libkscreen-6.4.4.tar.xz
f7075d4472969968507a72cb35168dbc libksysguard-6.4.4.tar.xz
e45d3b003a98b53f93b027b26038a4d2 breeze-6.4.4.tar.xz
2d8a7936962ae30177c14f9cad0917ff breeze-gtk-6.4.4.tar.xz
57485b21e575b632223946b936a11d35 layer-shell-qt-6.4.4.tar.xz
1294ad60e08e3d14263c316c5f2123c3 plasma-activities-6.4.4.tar.xz
69892c484106a65edc8669f9ff07f1de libplasma-6.4.4.tar.xz
d2660f748364304a38534ad9f8302f65 kscreenlocker-6.4.4.tar.xz
5b2aa8e2f826a5537ce018645094bc06 kinfocenter-6.4.4.tar.xz
2a3cb2bc67a700808ee4de996fbcf7e1 kglobalacceld-6.4.4.tar.xz
5f2f27d10a309f87a7fcc7abe3f33c7a kwayland-6.4.4.tar.xz
b5ce13deed26c030e80078997bcd3f59 aurorae-6.4.4.tar.xz
29aa486a4c9c03623f06019c4c6f4a6f kwin-x11-6.4.4.tar.xz
38bd47faac424693d15e6cbec7bb4f8c kwin-6.4.4.tar.xz
c89eed60be47c41acdaab7f7738474d9 plasma5support-6.4.4.tar.xz
e19f331b7233dfa00c1f9a4dc282aa6d plasma-activities-stats-6.4.4.tar.xz
1234acb0cf42bb51fa1e44de15300daf kpipewire-6.4.4.tar.xz
e387fc191c75643adf8647115e5b8135 plasma-workspace-6.4.4.tar.xz
f7955fe53dcfce1d3ee28385fb0460c5 plasma-disks-6.4.4.tar.xz
359c9fcedc3ee2660a7414c96f6a0888 bluedevil-6.4.4.tar.xz
8dd8c635342894da4a61dabc5820fce4 kde-gtk-config-6.4.4.tar.xz
123d1734729b0f6d66c45017d810ff10 kmenuedit-6.4.4.tar.xz
81cfc86c317b76e66c8fa69bd211580e kscreen-6.4.4.tar.xz
2c7b043f2ec05c4b03f210dcedc0b502 kwallet-pam-6.4.4.tar.xz
5695632187671ca756c4e7185a71195e kwrited-6.4.4.tar.xz
1a6dd6488b0125451102045aa8efdc1a milou-6.4.4.tar.xz
2bf7e0444338ae3a792ccaf1049466ed plasma-nm-6.4.4.tar.xz
00cbf448523569d1ecf799ffe8097961 plasma-pa-6.4.4.tar.xz
44bcf4f669bfa5dfd9b4a54f6016ba7b plasma-workspace-wallpapers-6.4.4.tar.xz
cf1fe247a40af3e6dd5ca2ad53b327d0 polkit-kde-agent-1-6.4.4.tar.xz
96158610825e79a419a28f45bb809eb9 powerdevil-6.4.4.tar.xz
714b58e169c5d2e8c80d65ca8e284cff plasma-desktop-6.4.4.tar.xz
35d2e17964ddda121f50098c29d4c30d kgamma-6.4.4.tar.xz
27a3515f9ae4184b4987c83892d6b74a ksshaskpass-6.4.4.tar.xz
#070839c487e9d8229ce8298d77480c8b plasma-sdk-6.4.4.tar.xz
b19b0189993f7ebc509d3e24cc1e8aa0 sddm-kcm-6.4.4.tar.xz
#328b5f55fd21129c9184b7d1b672a0bf discover-6.4.4.tar.xz
#3094f57a829def773d0f6ebb8b08f1f6 breeze-grub-6.4.4.tar.xz
#b3469dba2137b484b193a99fc064be67 breeze-plymouth-6.4.4.tar.xz
6e15c7a2bb5788b93acebde0318fae83 kactivitymanagerd-6.4.4.tar.xz
902966727cc9a5ebb4761df12e142c32 plasma-integration-6.4.4.tar.xz
#53cde99837265125361385ddf6246070 plymouth-kcm-6.4.4.tar.xz
eaeb0a047ac662cef2ecaf03a336ce91 xdg-desktop-portal-kde-6.4.4.tar.xz
b2b868b09d36cdbd77d086c3e215947e drkonqi-6.4.4.tar.xz
2d2c9bcc3d499fadff6ba8c78e0a78d6 plasma-vault-6.4.4.tar.xz
#5c043fbaf5c84975c469472cc5880a59 plasma-browser-integration-6.4.4.tar.xz
7b9720ff5aaccfff5a9dddc2a71e4eb6 kde-cli-tools-6.4.4.tar.xz
88cf35de0ee8ca3b45474ffaf0d54432 systemsettings-6.4.4.tar.xz
5e2c2591807a58cf6cdf4e884c3dd4be plasma-thunderbolt-6.4.4.tar.xz
#6a9b80fa6e10454556c4528c2510b2f7 plasma-mobile-6.4.4.tar.xz
#257173def078b51674cd27601828d732 plasma-nano-6.4.4.tar.xz
3c58fb9253970cb7a651088f423e0d9c plasma-firewall-6.4.4.tar.xz
ff6d636282233f101ec9349321cc4e70 plasma-systemmonitor-6.4.4.tar.xz
3e2a5476e578a309854f7a965bd627a8 qqc2-breeze-style-6.4.4.tar.xz
9d4579bd5ce554f5d21bfe41a0fe64e6 ksystemstats-6.4.4.tar.xz
3fcde8974282d0ae737f38a2d5cc4c7e oxygen-sounds-6.4.4.tar.xz
88e1e9c59db958a326c8e59769334eae kdeplasma-addons-6.4.4.tar.xz
#e2af8aad6f916339a20d79b70434adde flatpak-kcm-6.4.4.tar.xz
d6849ab3c3d626217e71ac5c571a0e56 plasma-welcome-6.4.4.tar.xz
67e934afb009c0cc85b6b5a7818dfc21 ocean-sound-theme-6.4.4.tar.xz
6a4cc6c6068851e488a85f94efe40959 print-manager-6.4.4.tar.xz
d66d7c32a5811a172ede92e86d0b050b wacomtablet-6.4.4.tar.xz
#6df9d0417921b08811b3b37640f81ae7 kwayland-integration-6.4.4.tar.xz
#e377c170815f38c88d04fbacc6c2ba46 krdp-6.4.4.tar.xz
8bcecf5327af741a21af37a93901fd35 oxygen-6.4.4.tar.xz
#079df59ec207b0c7d9e83fd544c34af9 plasma-dialer-6.4.4.tar.xz
#2425c5d7af8b994b9b2a7b78db8a5bb3 spacebar-6.4.4.tar.xz
51b35f64a4e47bb39d1c27f1e6171ab9 spectacle-6.4.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.6 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 «Om initramfs»).
plasma-browser-integration er designet for å implementere nettleserintegrasjon for Plasma i Mozilla Firefox og Google Chrome. Pakken bygger, men er bare nyttig hvis du vil at disse nettleserne skal integreres i skallet på en måte som tillater at du ser (og kontrollerer) nedlastinger fra Plasmas varslingsområde, i tillegg til at du kan søke i nettleserhistorikken i KDE Runner. Merk at du også må installere en nettleserutvidelse for dette for å fungere. For flere detaljer, se the KDE Plasma wiki page about browser integration.
krdp pakken brukes til å tillate at en RDP server kjøres mens plasma brukes. Denne funksjonen krever 2.x-versjonen av FreeRDP, som ikke er i BLFS.
plasma-nano pakken brukes til innebygde systemer.
Plasma-mobil-, plasma-dialer og spacebar pakkene gi telefonfunksjonalitet for plasma.
flatpak-kcm pakken er for å administrere støtte for flatpak applikasjoner.
Kwayland-integrasjonsapplikasjonen krever plasma5 støtte.
Når du installerer flere pakker i et skript, må installasjonen 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.17p2 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
name=$( echo $pkg |sed 's|-6.*$||') # Isolate package name
packagedir=$(echo $pkg |sed 's|\.tar.*||') # Source 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.4.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
Ubrukelige systemd enheter er installert i $KF6_PREFIX/lib. Fjern dem nå (som
root):
rm -rf $KF6_PREFIX/lib/systemd
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 kjørenivå 3, ved hjelp av xinit-1.4.4, eller fra kjørenivå 5, ved å bruke en Skjermbehandler, som for eksempel lightdm-1.32.0.
For å starte Plasma ved bruk av xinit-1.4.4, 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.4 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.84.4 (GObject Introspection anbefalt), libgcrypt-1.11.2, og p11-kit-0.25.5
GnuPG-2.4.8, GTK-3.24.50, libsecret-0.21.7, libxslt-1.1.43, og Vala-0.56.18
Først, bruk en løsning for bygging uten OpenSSH installert:
sed '/ssh.add/d; /ssh.agent/d' -i meson.build
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-2025.4 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:
Deaktiver ssh-agent implementeringen fra denne pakken. Denne
implementeringen er ment å erstatte ssh-agent
implementeringen av gnome-keyring-48.0, men
erstatningen har fortsatt flere uløste problemer.
-D gtk=false: Bruk denne bryteren
hvis du ikke har installert GTK-3.24.50. Merk at gcr-viewer vil ikke bli installert hvis
dette alternativet brukes.
-D gtk_doc=true: Tillat å bygge
denne pakken uten Gi-DocGen-2025.4 installert. Hvis du
har Gi-DocGen-2025.4 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gcr/4.4/gcr-4.4.0.1.tar.xz
Nedlasting MD5 sum: 01da4445b5b16801c6dcc7d8945b4cc4
Nedlastingsstørrelse: 728 KB
Estimert diskplass som kreves: 26 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester; begge bruker parallellisme=4)
GLib-2.84.4 (GObject Introspection anbefalt), libgcrypt-1.11.2, p11-kit-0.25.5
GnuPG-2.4.8, GTK-4.18.6, libsecret-0.21.7, libxslt-1.1.43, og Vala-0.56.18
Gi-DocGen-2025.4, GnuTLS-3.8.10, OpenSSH-10.0p1, og Valgrind-3.25.1
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-48.4 og Epiphany-48.5.
Installer Gcr ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
-D ssh_agent=false \
.. &&
ninja
Hvis du har Gi-DocGen-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed -e "/install_dir/s@,\$@ / 'gcr-4.4.0.1'&@" \
-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.18.6. Merk at
gcr-viewer-gtk4 vil ikke bli
installert hvis dette sendes til meson.
-D gtk_doc=false:
Tillat å bygge denne pakken uten Gi-DocGen-2025.4
installert. Hvis du har Gi-DocGen-2025.4 installert og
du ønsker å gjenoppbygge og installere API dokumentasjonen,
meson configure
kommandoen vil tilbakestille dette alternativet.
-D ssh_agent=false:
Deaktiver ssh-agent implementeringen av denne pakken. Denne
implementeringen er ment å erstatte ssh-agent
implementeringen av gnome-keyring-48.0, men
erstatningen har fortsatt flere uløste problemer.
-D crypto=gnutls: Bruk denne
bryteren hvis du har GnuTLS-3.8.10 installert og ønsker å
bruke den i stedet for libgcrypt-1.11.2.
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gsettings-desktop-schemas/48/gsettings-desktop-schemas-48.0.tar.xz
Nedlasting MD5 sum: e5721d5c378cb5fb4817943357b96ea5
Nedlastingsstørrelse: 796 KB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.84.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libsecret/0.21/libsecret-0.21.7.tar.xz
Nedlasting MD5 sum: 7a938a802a3c17df441fbd0358866e99
Nedlastingsstørrelse: 204 KB
Estimert diskplass som kreves: 11 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
GLib-2.84.4 (GObject Introspection anbefalt)
libgcrypt-1.11.2 (eller GnuTLS-3.8.10, for kryptografi), og Vala-0.56.18
Gi-DocGen-2025.4 og docbook-xml-4.5, docbook-xsl-nons-1.79.2, libxslt-1.1.43 (for å bygge manualsider), Valgrind-3.25.1 (kan bli brukt i tester), og tpm2-tss (for TPM støtte)
D-Bus Python-1.4.0, Gjs-1.84.2, og PyGObject-3.52.3
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-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "s/api_version_major/'0.21.7'/" \
-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-2025.4
installert. Hvis du har Gi-DocGen-2025.4 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.43 og
DocBook pakker.
-D crypto=gnutls: Bruk denne
bryteren hvis du vil bruke GnuTLS-3.8.10 for kryptografi i
stedet for libgcrypt-1.11.2.
-D crypto=disabled: Bruk denne
bryteren hvis du ikke har GnuTLS-3.8.10 eller libgcrypt-1.11.2 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.4 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.10.6, libsoup-3.6.5, og make-ca-1.16.1
GLib-2.84.4 (med GObject Introspection)
Gi-DocGen-2025.4, libadwaita-1.7.6 og gtksourceview5-5.16.0 (for å bygge demoen), og Vala-0.56.18
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester 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-2025.4 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-2025.4
installert. Hvis du har Gi-DocGen-2025.4 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.7.6
og gtksourceview5-5.16.0 er
installert og du ønsker å bygge demonstrasjonsapplikasjonen
som følger med denne pakken.
-D vapi=true: Bruk denne bryteren
hvis Vala-0.56.18 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.4 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.84.4 (med GObject Introspection), libarchive-3.8.1, og libgcrypt-1.11.2
CMake-4.1.0, GTK-Doc-1.34.0, Gvfs-1.56.1 (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 av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester 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.4 plattform.
Nedlasting (HTTP): https://gitlab.gnome.org/GNOME/vte/-/archive/0.80.3/vte-0.80.3.tar.gz
Nedlasting MD5 sum: 241bd2988956e83b64562708c5a2c87e
Nedlastingsstørrelse: 804 KB
Estimert diskplass som kreves: 21 MB (med tester)
Estimert byggetid: 0.4 SBU (bruke parallellisme=4; med tester)
GTK-3.24.50, libxml2-2.14.5, og pcre2-10.45
Fast_float-8.0.2 (en kopi vil bli lastet ned fra Internett hvis den ikke er installert), ICU-77.1, GnuTLS-3.8.10, GLib-2.84.4 (med GObject Introspection), GTK-4.18.6, og Vala-0.56.18
Gi-DocGen-2025.4, både git-2.50.1 og make-ca-1.16.1 (for nedlasting av en fast_float kopi, bare hvis anbefalt avhengighet er utelatt)
Installer VTE ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D _systemd=false &&
ninja
Hvis du har Gi-DocGen-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed -e "/docdir =/s@\$@/ 'vte-0.80.3'@" \
-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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/yelp-xsl/42/yelp-xsl-42.4.tar.xz
Nedlasting MD5 sum: e0f6ed43c206bb205057d0adf76e83bd
Nedlastingsstørrelse: 388 KB
Estimert diskplass som kreves: 8.1 MB
Estimert byggetid: mindre enn 0.1 SBU
Installer Yelp XSL 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
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.4 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.10.6 og libsoup-3.6.5
GLib-2.84.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gjs/1.84/gjs-1.84.2.tar.xz
Nedlasting MD5 sum: 5083ed4dc52910eebbbfb17198d8ef8e
Nedlastingsstørrelse: 772 KB
Estimert diskplass som kreves: 299 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester; med parallellitet=4)
Cairo-1.18.4, dbus-1.16.2, GLib-2.84.4 (med GObject Introspection), og SpiderMonkey from Firefox-140.2.0
Valgrind-3.25.1 (for tester), DTrace, LCOV, sysprof, og Systemtap
Installer en oppdatering for å tillate å bygge denne pakken med SpiderMonkey 140:
patch -Np1 -i ../gjs-1.84.2-spidermonkey_140-1.patch
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 forhindrer det å laste ned 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-autoar/0.4/gnome-autoar-0.4.5.tar.xz
Nedlasting MD5 sum: c8028c4df62c059418d4bdcde345cbe2
Nedlastingsstørrelse: 52 KB
Estimert diskplass som kreves: 2.8 MB
Estimert byggetid: 0.1 SBU
libarchive-3.8.1 og GTK-3.24.50
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-desktop/44/gnome-desktop-44.3.tar.xz
Nedlasting MD5 sum: 3b20ade3dfb4db9b71a94a66ecb8d4fc
Nedlastingsstørrelse: 748 KB
Estimert diskplass som kreves: 19 MB
Estimert byggetid: 0.2 SBU
gsettings-desktop-schemas-48.0, GTK-3.24.50, GTK-4.18.6, ISO Codes-4.18.0, itstool-2.0.7, libseccomp-2.6.0, libxml2-2.14.5, og xkeyboard-config-2.45
bubblewrap-0.11.0 (trengs for thumbnailers i Nautilus) og GLib-2.84.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.4 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.84.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-online-accounts/3.54/gnome-online-accounts-3.54.5.tar.xz
Nedlasting MD5 sum: 68f02e59738cd55694155f975fb39eae
Nedlastingsstørrelse: 476 KB
Estimert diskplass som kreves: 24 MB
Estimert byggetid: 0.2 SBU
Gcr-4.4.0.1, JSON-GLib-1.10.6, libadwaita-1.7.6, rest-0.9.1, og Vala-0.56.18
GLib-2.84.4 (med GObject Introspection)
Gi-DocGen-2025.4, keyutils-1.6.3, MIT Kerberos V5-1.22.1, og Valgrind-3.25.1
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 documentation=false \
-D kerberos=false \
-D google_client_secret=5ntt6GbbkjnTVXx-MSxbmx5e \
-D google_client_id=595013732528-llk8trb03f0ldpqq6nprjp1s79596646.apps.googleusercontent.com \
.. &&
ninja
Hvis du har installert Gi-DocGen-2025.4 og du ønsker å bygge og installere API dokumentasjonen for denne pakken, utsted:
meson configure -D documentation=true &&
sed "s/project_name()/& + '-' + meson.project_version()/" \
-i ../doc/meson.build &&
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 kerberos=true: Bruk denne
bryteren hvis du har installert MIT Kerberos
V5-1.22.1 og ønsker å bruke den med GNOME Nettkontoer.
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgee/0.20/libgee-0.20.8.tar.xz
Nedlasting MD5 sum: e8e37df1c7a93aa5ba08be12ae7e7cad
Nedlastingsstørrelse: 676 KB
Estimert diskplass som kreves: 34 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
GLib-2.84.4 (GObject Introspection anbefalt) og Vala-0.56.18
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.4 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.84.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libgweather/4.4/libgweather-4.4.4.tar.xz
Nedlasting MD5 sum: 42c548a6d45f79c2120b0a0df8a74e68
Nedlastingsstørrelse: 2.7 MB
Estimert diskplass som kreves: 77 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/libgweather-4.4.4-upstream_fix-1.patch
geocode-glib-3.26.4, GTK-3.24.50, libsoup-3.6.5, og PyGObject-3.52.3
GLib-2.84.4 (med GObject Introspection), libxml2-2.14.5, og Vala-0.56.18
Gi-DocGen-2025.4 (gi-docgen leveres
også som meson delprosjekt, som vil bli brukt hvis
-D gtk_doc=false ikke er overført
til meson),
LLVM-20.1.8 (for clang-format), og
pylint
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
Løs et problem i de sendte geolokaliseringsdataene:
patch -Np1 -i ../libgweather-4.4.4-upstream_fix-1.patch
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-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "s/libgweather_full_version/'libgweather-4.4.4'/" \
-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-2025.4
installert. Hvis du har Gi-DocGen-2025.4 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.4 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.84.4 (med GObject Introspection) og GTK-3.24.50
Gi-DocGen-2025.4, Glade, embed, LGI (for LUA bindinger, bygget med LUA-5.1), med enten luajit-20250816 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 \
-D python3=false \
.. &&
ninja
Hvis du har Gi-DocGen-2025.4 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 forhindrer det å laste ned eventuell valgfrie
avhengigheter som ikke er installert på systemet.
-D python3=false:
Denne bryteren deaktiverer Python programtillegglaster fordi
den er inkompatibel med pygobject-3.52.x, og den vil føre til
at programmer som laster inn Python-plugins henger på
ubestemt tid.
-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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libshumate/1.4/libshumate-1.4.0.tar.xz
Nedlasting MD5 sum: 0140aaa4891ac215d0f40b4ad4cd880d
Nedlastingsstørrelse: 5.6 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.2 SBU
GTK-4.18.6, libsoup-3.6.5, og Protobuf-c-1.5.2
GLib-2.84.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-2025.4 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/evolution-data-server/3.56/evolution-data-server-3.56.2.tar.xz
Nedlasting MD5 sum: e946e30d6d458fa67f63cec1d3b15212
Nedlastingsstørrelse: 4.9 MB
Estimert diskplass som kreves: 183 MB (med tester)
Estimert byggetid: 0.7 SBU (bruke parallellisme=4)
libical-3.0.20, libsecret-0.21.7, nss-3.115, og SQLite-3.50.4
gnome-online-accounts-3.54.5, GLib-2.84.4 (med GObject Introspection), GTK-3.24.50, GTK-4.18.6, ICU-77.1, libcanberra-0.30, libgweather-4.4.4, Vala-0.56.18, og WebKitGTK-2.48.5
GTK-Doc-1.34.0, MIT Kerberos V5-1.22.1, en MTA (som gir en sendmail kommando), OpenLDAP-2.6.10, 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 \
-D WITH_SYSTEMDUSERUNITDIR=no \
-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.18 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_KRB5=OFF:
Denne bryteren tillater bygging av denne pakken uten
MIT Kerberos V5-1.22.1. Hvis du
trenger Kerberos støtte i denne pakken, for eksempel for å
koble til et bedriftsnettverk, endrer du denne bryteren fra
OFF til ON.
-D WITH_LIBDB=OFF:
Denne bryteren tillater bygging av denne pakken uten
Berkeley DB (deprecated). SQLite-3.50.4 brukes til normal
drift.
-D ENABLE_OAUTH2_WEBKITGTK4=OFF:
Bruk denne bryteren hvis du ikke bygde WebKitGTK-2.48.5
med GTK-4.
-D
WITH_SYSTEMDUSERUNITDIR=no: Denne bryteren
deaktiverer installasjon av systemd enheter, som ikke brukes
for et Sysv bygg.
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 |
Tinysparql er en RDF trippellagring med lavt fotavtrykk med et SPARQL 1.1-grensesnitt.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/tinysparql/3.9/tinysparql-3.9.2.tar.xz
Nedlasting MD5 sum: 0a862bbde0b653668e84ab30869aa35e
Nedlastingsstørrelse: 2.0 MB
Estimert diskplass som kreves: 62 MB (med tester)
Estimert byggetid: 0.4 SBU (med tester)
JSON-GLib-1.10.6 og Vala-0.56.18
GLib-2.84.4 (med GObject Introspection), ICU-77.1, libsoup-3.6.5, localsearch-3.9.0 (kjøretid), PyGObject-3.52.3, og SQLite-3.50.4
asciidoc-10.2.1, Avahi-0.8, Graphviz-13.1.2, bash-completion, og libstemmer
Fiks plasseringen hvor dokumentasjonen vil installeres i:
sed -e "s/'generate'/&, '--no-namespace-dir'/" \
-e "/--output-dir/s/@OUTPUT@/&\/tinysparql-3.9.2/" \
-i docs/reference/meson.build
Installer Tinysparql ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D man=false \
-D systemd_user_services=false \
.. &&
ninja
Nå, som root bruker:
ninja install
For å teste resultatene, utsted: meson configure -D debug=true && LC_ALL=C.UTF-8 ninja test. Testpakken skal kjøres fra en grafisk sesjon. En test er kjent for å mislykkes på grunn av at manualsidene ikke blir generert.
--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
manualsider. Utelat denne bryteren hvis du har asciidoc-10.2.1 installert og ønsker å
generere og installer manualsidene.
-D
systemd_user_services=false: Denne bryteren
forhindrer byggeprosessen fra å installere systemd
brukertjenester siden de er ubrukelig på SysV systemer.
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 tinysparql bibliotekene og programmene, så vi kjører testpakken etter installasjonen.
Localsearch pakken inneholder et filsystem indekserer samt en metadatauttrekker.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/localsearch/3.9/localsearch-3.9.0.tar.xz
Nedlasting MD5 sum: 6d29c941a4e10eb7fcc6e84d0d90053a
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 35 MB (med tester)
Estimert byggetid: 0.2 SBU (med parallellitet=4; legg til så mye som 1.0 SBU for tester, avhengig av diskhastighet)
Nødvendig oppdatering): https://www.linuxfromscratch.org/patches/blfs/12.4/localsearch-3.9.0-libxml2_2_14-1.patch
gexiv2-0.14.6, gst-plugins-base-1.26.5, og tinysparql-3.9.2
Exempi-2.6.6, giflib-5.2.2, FFmpeg-7.1.1, ICU-77.1, libexif-0.6.25, libgxps-0.3.2, libseccomp-2.6.0, Poppler-25.08.0, og UPower-1.90.9
asciidoc-10.2.1, CMake-4.1.0, DConf-0.40.0, libgsf-1.14.53, NetworkManager-1.54.0, taglib-2.1.1, totem-pl-parser-3.26.6, libcue, libitpcdata, libosinfo, og gupnp
Aktiver følgende alternativer i kjernekonfigurasjonen, og kompiler deretter kjernen på nytt og gjør en omstart 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 oppgraderer denne pakken fra en versjon der den var
kjent som tracker-miners,
er det flere filer som vil skape konflikter. Før du
installerer denne pakken, fjern disse filene som
root bruker:
rm -fv /etc/xdg/autostart/tracker-miner-fs-3.desktop && rm -fv /usr/lib/systemd/user/tracker-miner-fs-3.service && rm -fv /usr/lib/systemd/user/tracker-miner-fs-control-3.service && rm -fv /usr/share/dbus-1/services/org.freedesktop.Tracker3.Miner.Files.service && rm -fv /usr/share/dbus-1/services/org.freedesktop.Tracker3.Writeback.service && rm -fv /usr/share/dbus-1/services/org.freedesktop.Tracker3.Miner.Files.Control.service
Hvis du planlegger å kjøre testene, er noen tidsavbrudd for
korte på 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, et globalt 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 bruk en oppdatering for å gjøre HTML ekstraktoren kompatibel med libxml2-2.14 og senere:
patch -Np1 -i ../localsearch-3.9.0-libxml2_2_14-1.patch
Installer Localsearch ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D systemd_user_services=false \
-D man=false \
.. &&
ninja
For å teste resultatene, utsted (juster den individuelle testtidsavbruddet til en verdi som passer for din maskin, se merknaden ovenfor):
dbus-run-session env LC_ALL=C.UTF-8 TRACKER_TESTS_AWAIT_TIMEOUT=20 \
ninja test &&
rm -rf ~/tracker-tests
Nå, som root bruker:
ninja install
Testene lager filer i user mappen (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
manualsider. Utelat denne bryteren hvis du har asciidoc-10.2.1 installert og ønsker å
generere og installer manualsider.
-D
systemd_user_services=false: Denne bryteren
forhindrer byggeprosessen fra å installere systemd enheter
siden de er ubrukelige på SysV systemer.
-D seccomp=false: Dette
alternativet deaktiverer seccomp systemet anropsfilter. På
noen arkitekturer, som i686 og ARM, funksjonene som
tracker-miners bruker ikke er bevoktet ordentlig, og
tracker-miners vil bli drept med en SIGSYS som resultat. Merk
at deaktivering secomp kan føre til at systemet blir
kompromittert verre i tilfelle en sikkerhetssårbarhet i
lokalt søk eller dets avhengigheter er utnyttet.
-D landlock=disabled: Denne
bryteren deaktiverer Sandkasse for filtilgang til landlås.
Bruk den hvis du ikke vil bygge kjerne med Landlock støtte.
Merk at deaktivering av Landlock kan føre til at systemet
blir kompromittert verre i tilfelle en sikkerhetssårbarhet i
lokalt søk eller dets avhengigheter utnyttes.
-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),
ellers kan localsearch kaste bort batterilevetiden når strøm
ikke er koblet til.
-D libav=disabled: Bruk dette
alternativet hvis du ikke har installert den anbefalte
avhengigheten ffmpeg. Merk at bruk av denne vil forårsake 7
testfeil, og vil også betydelig hemme funksjonaliteten til
denne pakken.
gsound pakken inneholder et lite bibliotek for å spille av systemlyder.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.84.4 (med GObject Introspection) og Vala-0.56.18
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/xdg-desktop-portal-gnome/48/xdg-desktop-portal-gnome-48.0.tar.xz
Nedlasting MD5 sum: 807c85deafe87d31be76a8b66cea53d0
Nedlastingsstørrelse: 188 KB
Estimert diskplass som kreves: 13 MB
Estimert byggetid: 0.2 SBU
gnome-desktop-44.3, GTK-4.18.6, libadwaita-1.7.6, xdg-desktop-portal-1.20.3, og xdg-desktop-portal-gtk-1.15.3 (ved kjøretid)
Installer xdg-desktop-portal-gnome ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D systemduserunitdir=/tmp \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Fjern systemd filer som er ubrukelige (som root bruker):
rm -vf /tmp/*.service
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.84.4 gir lignende funksjonalitet på kommandolinjen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.16.2, GLib-2.84.4, GTK-3.24.50 (for redigeringsprogrammet), libhandy-1.8.3 (for redigeringsprogrammet), og libxml2-2.14.5 (for redigeringsprogrammet)
libxslt-1.1.43 og Vala-0.56.18
Først må du forhindre at unødvendige systemd enheter blir installert:
sed -i 's/install_dir: systemd_userunitdir,//' service/meson.build
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: dbus-run-session 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-backgrounds/48/gnome-backgrounds-48.2.1.tar.xz
Nedlasting MD5 sum: bb92540228a30173b1bc197d98337366
Nedlastingsstørrelse: 36 MB
Estimert diskplass som kreves: 75 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gvfs/1.54/gvfs-1.56.1.tar.xz
Nedlasting MD5 sum: 5ba12cd02b17c058aa71adc39c5eb6cf
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 29 MB
Estimert byggetid: 0.1 SBU (bruke parallellisme=4)
dbus-1.16.2, GLib-2.84.4, Gcr-4.4.0.1, libusb-1.0.29, og libsecret-0.21.7
GTK-3.24.50, libcdio-2.1.0, libgudev-238, libsoup-3.6.5, elogind-255.17, og UDisks-2.10.2
Apache-2.4.65, Avahi-0.8, BlueZ-5.83, Fuse-3.17.4, gnome-online-accounts-3.54.5, GTK-Doc-1.34.0, libarchive-3.8.1, libgcrypt-1.11.2, libxml2-2.14.5, libxslt-1.1.43, OpenSSH-10.0p1, Samba-4.22.4, gnome-desktop-testing (for tester), libbluray, libgdata, 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 tmpfilesdir=no \
-D dnssd=false \
-D goa=false \
-D google=false \
-D systemduserunitdir=no .. &&
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 som har blitt fjernet fra BLFS. Onedrive støtten
krever libmsgraph pakken.
-D tmpfilesdir=no
-D
systemduserunitdir=no: Disse brytere gir systemd
mappeplasseringer. Å sette dem til «no» deaktiverer
avhengigheten av systemd og logind.
-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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gexiv2/0.14/gexiv2-0.14.6.tar.xz
Nedlasting MD5 sum: 4139dfeca8e30288969233568c72e06e
Nedlastingsstørrelse: 384 KB
Estimert diskplass som kreves: 3.3 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester; begge med parallellitet=4)
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/nautilus/48/nautilus-48.3.tar.xz
Nedlasting MD5 sum: 4ddec5ec8ada3455baf65fdf532c19f9
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.11.0, gexiv2-0.14.6, gnome-autoar-0.4.5, gnome-desktop-44.3, libadwaita-1.7.6, libnotify-0.8.6, libportal-0.9.1, libseccomp-2.6.0, og tinysparql-3.9.2
desktop-file-utils-0.28, Exempi-2.6.6, GLib-2.84.4 (med GObject Introspection), gst-plugins-base-1.26.5, libcloudproviders-0.3.6, og libexif-0.6.25
adwaita-icon-theme-48.1 og Gvfs-1.56.1 (For hotplugging og enhets montering skal virke)
Installer Nautilus ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
.. &&
ninja
Hvis du har Gi-DocGen-2025.4 installert og du ønsker å generere og installere API dokumentasjonen, utsted følgende kommandoer:
sed "/docdir =/s@\$@ / 'nautilus-48.3'@" -i ../meson.build && meson configure -D docs=true && ninja
For å teste resultatene, kjør: ninja test. Testene må kjøres i et grafisk miljø. En test er kjent for å mislykkes hvis localsearch-3.9.0 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 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-bluetooth/47/gnome-bluetooth-47.1.tar.xz
Nedlasting MD5 sum: 715b4767b46b4c4b24a231358d0de83e
Nedlastingsstørrelse: 292 KB
Estimert diskplass som kreves: 12 MB (med tester)
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4, med tester)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/gnome-bluetooth-47.1-build_fix-1.patch
GTK-4.18.6, gsound-1.0.3, libnotify-0.8.6, og UPower-1.90.9
GLib-2.84.4 (med GObject Introspection) og libadwaita-1.7.6
GTK-Doc-1.34.0 og dbusmock-0.36.0
Først må du fikse en byggefeil som skjer med pygobject-3.52.0 og senere:
patch -Np1 -i ../gnome-bluetooth-47.1-build_fix-1.patch
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-keyring/48/gnome-keyring-48.0.tar.xz
Nedlasting MD5 sum: d19a99eadeb5d92774b7960c51d1c5dc
Nedlastingsstørrelse: 752 KB
Estimert diskplass som kreves: 44 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4; legg til 0.2 SBU for tester)
Linux-PAM-1.7.1, libxslt-1.1.43, og OpenSSH-10.0p1
Installer GNOME Nøkkelring ved å kjøre følgende kommandoer:
sed -i 's:"/desktop:"/org:' schema/*.xml &&
mkdir build-gkr &&
cd build-gkr &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D systemd=disabled \
-D ssh-agent=true &&
ninja
En sesjonsbussadresse er nødvendig for å kjøre testene. For å teste resultatene, kjør: ninja test.
Nå, som root bruker:
ninja install
sed ... schema/*.xml: Denne kommandoen fikser en utdatert oppføring i skjemamalen.
-D systemd=disabled:
Denne bryteren forhindrer en feil på grunn av at
byggesystemet krever systemd
som standard.
-D ssh-agent=true:
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-settings-daemon/48/gnome-settings-daemon-48.1.tar.xz
Nedlasting MD5 sum: 0ec5ed77aa85685cdf3d44f3d8dce0b5
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 37 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4, legg til 0.5 SBU for tester)
alsa-lib-1.2.14, Fontconfig-2.17.1, Gcr-4.4.0.1, GeoClue-2.7.2, geocode-glib-3.26.4, gnome-desktop-44.3, libcanberra-0.30, libgweather-4.4.4, libnotify-0.8.6, libwacom-2.16.1, PulseAudio-17.0, og UPower-1.90.9
colord-1.4.8, Cups-2.4.12, NetworkManager-1.54.0, ModemManager-1.24.2, nss-3.115, og Wayland-1.24.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-48.0, Mutter-48.4, dbusmock-0.36.0, umockdev-0.19.3, og Xvfb (for tester, fra Xorg-Server-21.1.18 eller Xwayland-24.1.8)
Deretter fikser du libelogind deteksjon for tester:
sed -e 's/libsystemd/libelogind/' \
-i plugins/power/test.py
Deretter fikser du bakgrunnsbelysnings funksjonaliteten i gnome-control-center:
sed -e 's/(backlight->logind_proxy)/(0)/' \
-i plugins/power/gsd-backlight.c
Installer GNOME Innstillingsnisse ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D systemd=false \
.. &&
ninja
For å sjekke resultatene, kjør: env -u GALLIUM_DRIVERS 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/tecla/48/tecla-48.0.2.tar.xz
Nedlasting MD5 sum: 6a5af5671fd16e116484dc834117ae2a
Nedlastingsstørrelse: 44 KB
Estimert diskplass som kreves: 2.1 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-control-center/48/gnome-control-center-48.4.tar.xz
Nedlasting MD5 sum: 1ac926fb08829aec79df37700216217e
Nedlastingsstørrelse: 6.8 MB
Estimert diskplass som kreves: 111 MB (med tester)
Estimert byggetid: 0.4 SBU (Bruke parallellisme=4; med tester)
AccountsService-23.13.9, colord-gtk-0.3.1, Cups-2.4.12, gnome-bluetooth-47.1, gnome-online-accounts-3.54.5, gnome-settings-daemon-48.1, gsound-1.0.3, libadwaita-1.7.6, libgtop-2.41.3, libnma-1.10.6, libpwquality-1.4.5, MIT Kerberos V5-1.22.1, ModemManager-1.24.2, Samba-4.22.4, shared-mime-info-2.4, Tecla-48.0.2, og UDisks-2.10.2
Xvfb (fra Xorg-Server-21.1.18 eller Xwayland-24.1.8) og dbusmock-0.36.0 (begge for tester)
cups-pk-helper-0.2.7 (Skriverpanel), gnome-color-manager-3.36.2 (Fargepanel), gnome-shell-48.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/mutter/48/mutter-48.4.tar.xz
Nedlasting MD5 sum: e03c4eb4d9df60ec46bcc74fd632cb1e
Nedlastingsstørrelse: 8.0 MB
Estimert diskplass som kreves: 103 MB (med tester)
Estimert byggetid: 0.4 SBU (Bruk parallellisme=4, legg til 1,4 SBU for tester)
docutils-0.21.2, gnome-settings-daemon-48.1, graphene-1.10.8, libei-1.4.1, libxcvt-0.1.3, libxkbcommon-1.11.0, og pipewire-1.4.7
desktop-file-utils-0.28, GLib-2.84.4 (med GObject Introspection), libdisplay-info-0.3.0, og startup-notification-0.12
libinput-1.29.0, Wayland-1.24.0, wayland-protocols-1.45, og Xwayland-24.1.8
dbusmock-0.36.0 (påkrevd for tester), Xorg-Server-21.1.18 (for X11 økter), bash-completion, sysprof, Xvfb (fra Xorg-Server-21.1.18 eller Xwayland-24.1.8), xvfb-run, og zenity (X11 testene ville bare kjøre med alle de tre siste)
Løs et problem med testene som ellers ville kreve at pakken må bygges med feilsøkingsinformasjon:
sed "/tests_c_args =/s/$/ + ['-U', 'G_DISABLE_ASSERT']/" -i src/tests/meson.build && sed "/c_args:/a '-U', 'G_DISABLE_ASSERT'," -i src/tests/cogl/unit/meson.build
Installer Mutter ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D tests=disabled \
-D profiler=false \
-D bash_completion=false \
.. &&
ninja
Hvis du vil kjøre testpakken, sørg for at dbusmock-0.36.0 er installert og utsted:
meson configure -D tests=enabled && 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. Du kan også teste
grunnleggende funksjoner til Mutter med å følge «Starte Mutter,»
etter installering av den.
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
bash_completion=false: Gjør det mulig å bygge
pakken uten bash-completion
pakken installert.
-D tests=disabled:
Tillat å bygge pakken uten dbusmock-0.36.0 installert. Det blir
overstyrt av meson
configure hvis testpakken kjøres.
-D profiler=false:
Tillater bygging av denne pakken uten Sysprof. Fjern dette alternativet hvis
du har installert Sysprof og
vil analysere gjengivelsesytelsen til Mutter.
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.
|
kontrollerer gjeldende monitorkonfigurasjon på økter som bruker Mutter som vindusbehandler |
|
|
er Clutter basert sammensetnings GTK+ Vindusbehandler |
|
|
inneholder Mutter API funksjoner |
|
|
inneholder Mutter testpakke API funksjoner; dette biblioteket er bare installert hvis testpakken til denne pakken kjøres og den trenges for gnome-shell testpakken |
GNOME Skallet er kjernebrukergrensesnittet for GNOME Skrivebordsmiljøet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-shell/48/gnome-shell-48.4.tar.xz
Nedlasting MD5 sum: ea060c5f264093f14f44a3b9cf233653
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 74 MB (med tester)
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4; med tester)
evolution-data-server-3.56.2, Gcr-4.4.0.1, Gjs-1.84.2, gnome-desktop-44.3, ibus-1.5.32, Mutter-48.4, Polkit-126, og startup-notification-0.12
desktop-file-utils-0.28, gnome-autoar-0.4.5, gnome-bluetooth-47.1, gst-plugins-base-1.26.5, NetworkManager-1.54.0, og power-profiles-daemon-0.30
GTK-Doc-1.34.0 og bash-completion
adwaita-icon-theme-48.1, DConf-0.40.0, elogind-255.17, GDM-48.0, gnome-control-center-48.4, og libgweather-4.4.4
Installer GNOME Skallet ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D systemd=false \
-D tests=false \
.. &&
ninja
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 systemd=false:
Hindrer installasjon av systemd filer, som ikke er nødvendig
i denne versjonen av BLFS.
-D extensions_tool=false: Denne
bryteren tillater bygging av denne pakken uten gnome-autoar-0.4.5 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-shell-extensions/48/gnome-shell-extensions-48.3.tar.xz
Nedlasting MD5 sum: 9974992b2d46b55f5e7fd0bb6feb22ab
Nedlastingsstørrelse: 228 KB
Estimert diskplass som kreves: 3.9 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-session/48/gnome-session-48.0.tar.xz
Nedlasting MD5 sum: 7b06c3d7aff4c13be55fe90a3a8bb0c4
Nedlastingsstørrelse: 480 KB
Estimert diskplass som kreves: 9.6 MB
Estimert byggetid: 0.2 SBU
elogind-255.17, gnome-desktop-44.3, JSON-GLib-1.10.6, Mesa-25.1.8, og UPower-1.90.9
xmlto-0.0.29, og libxslt-1.1.43 med docbook-xml-4.5 og docbook-xsl-nons-1.79.2 (for å bygge dokumentasjonen)
Når du kjører GNOME under Wayland-1.24.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 \
-D man=false \
-D docbook=false \
-D systemduserunitdir=/tmp \
.. &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
Hvis du genererte dokumentasjonen, flytt den til en versjonsbasert mappe:
mv -v /usr/share/doc/gnome-session{,-48.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
Nå, som root bruker, fjern
systemd enheter som er ubrukelige på SysV systemer:
rm -rv /tmp/{*.d,*.target,*.service}
Oppstartssekvensen til gnome-wayland må opprette en dbus økt.
På SysV må dette legges til den sendte gnome-wayland.desktop filen, som er skrevet
for systemd. Som root bruker:
sed -e 's@^Exec=@&/usr/bin/dbus-run-session @' \
-i /usr/share/wayland-sessions/gnome-wayland.desktop
--buildtype=release:
Spesifiser en byggetype egnet for stabile utgivelser av
pakken, som standard kan produsere uoptimaliserte binærfiler.
-D man=false -D
docbook=false: Disse parameterne deaktiverer
bygging av dokumentasjon. Utelat dem hvis du har bygget de
valgfrie avhengighetene.
Den enkleste måten å starte GNOME på er å bruke en skjermbehandler. GDM-48.0 er den anbefalte skjermbehandleren.
Det er også mulig å starte GNOME fra kommandolinjen. Du må imidlertid fortsatt ha GDM-48.0 installert for at skrivebordet skal fungere. I tidligere utgaver av GNOME ville gnome-shell starte uten at det var installert, men dette endret seg i 48.0. GDM trenger ikke å være aktivert for å starte gnome-shell fra kommandolinjen.
For å starte GNOME ved hjelp av xinit-1.4.4, 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.4 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.18.6, gsettings-desktop-schemas-48.0, libadwaita-1.7.6, libgudev-238, PyGObject-3.52.3, 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-user-docs/48/gnome-user-docs-48.2.tar.xz
Nedlasting MD5 sum: 421574d10cadf53db1daed7f7082248f
Nedlastingsstørrelse: 15 MB
Estimert diskplass som kreves: 171 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/yelp/42/yelp-42.3.tar.xz
Nedlasting MD5 sum: 55f5edc7e1d52797a8fba23540fa72c1
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 13 MB
Estimert byggetid: 0.1 SBU
gsettings-desktop-schemas-48.0, libhandy-1.8.3, WebKitGTK-2.48.5, og yelp-xsl-42.4
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:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja 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
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/baobab/48/baobab-48.0.tar.xz
Nedlasting MD5 sum: 151c767228ab15b552705896e5b9da5e
Nedlastingsstørrelse: 596 KB
Estimert diskplass som kreves: 13 MB
Estimert byggetid: mindre enn 0.1 SBU (Bruke parallellisme=4)
adwaita-icon-theme-48.1, GTK-4.18.6, itstool-2.0.7, libadwaita-1.7.6, og Vala-0.56.18
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.4 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.4/brasero-3.12.3-upstream_fixes-1.patch
gst-plugins-base-1.26.5, itstool-2.0.7, libcanberra-0.30, og libnotify-0.8.6
GLib-2.84.4 (med GObject Introspection), libburn-1.5.6, libisoburn-1.5.6, og libisofs-1.5.6, Nautilus-48.3, tinysparql-3.9.2, og totem-pl-parser-3.26.6
dvd+rw-tools-7.1 og Gvfs-1.56.1
Cdrdao-1.2.5, 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/eog/47/eog-47.0.tar.xz
Nedlasting MD5 sum: af0f617adbe8eabcdc3a926aae4ddaa7
Nedlastingsstørrelse: 4.4 MB
Estimert diskplass som kreves: 32 MB
Estimert byggetid: 0.2 SBU
adwaita-icon-theme-48.1, Exempi-2.6.6, gnome-desktop-44.3, libhandy-1.8.3, libjpeg-turbo-3.0.1, libpeas-1.36.0, og shared-mime-info-2.4
GLib-2.84.4 (med GObject Introspection), Little CMS-2.17, libexif-0.6.25, librsvg-2.61.0, 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-48.3 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.9.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/evince/48/evince-48.1.tar.xz
Nedlasting MD5 sum: a29c7fcd047073d69d910778b29bde14
Nedlastingsstørrelse: 2.8 MB
Estimert diskplass som kreves: 49 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
adwaita-icon-theme-48.1, gsettings-desktop-schemas-48.0, GTK-3.24.50, itstool-2.0.7, libhandy-1.8.3, libxml2-2.14.5, og OpenJPEG-2.5.3
gnome-keyring-48.0, GLib-2.84.4 (med GObject Introspection), libarchive-3.8.1, libsecret-0.21.7, og Poppler-25.08.0
Cups-2.4.12 (for å aktivere utskrift hvis støtte er bygd inn i GTK+ 3), gnome-desktop-44.3, gspell-1.14.0, gst-plugins-base-1.26.5, Gi-DocGen-2025.4, libgxps-0.3.2, libtiff-4.7.0, texlive-20250308 (or install-tl-unx), DjVuLibre, libspectre, og Synctex
Installer Evince ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
CPPFLAGS+=" -I/opt/texlive/2025/include -DNO_DEBUG" \
meson setup --prefix=/usr \
--buildtype=release \
-D gtk_doc=false \
--wrap-mode=nodownload \
-D systemduserunitdir=no .. &&
ninja
Hvis du har Gi-DocGen-2025.4 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:
sed "/docs_dir/s@\$@ / 'evince-48.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/2025/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-2025.4
installert. Hvis du har Gi-DocGen-2025.4 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.84.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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/evolution/3.56/evolution-3.56.2.tar.xz
Nedlasting MD5 sum: ec80bf54d6ae5cb02b903948db6d7a53
Nedlastingsstørrelse: 13 MB
Estimert diskplass som kreves: 383 MB
Estimert byggetid: 0.8 SBU (Bruke parallellisme=4)
adwaita-icon-theme-48.1, evolution-data-server-3.56.2, Gcr-4.4.0.1, gnome-autoar-0.4.5, shared-mime-info-2.4, og WebKitGTK-2.48.5
Bogofilter-1.2.5, enchant-2.8.12, gnome-desktop-44.3, gspell-1.14.0, Highlight-4.16, itstool-2.0.7, libcanberra-0.30, libgweather-4.4.4, libnotify-0.8.6, OpenLDAP-2.6.10, og Seahorse-47.0.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.4.
-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.10.
File Roller er en arkivbehandler for GNOME med støtte for tar, bzip2, bzip3, 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.4 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.5.tar.xz
Nedlasting MD5 sum: 8d996d0adbfde93dac1624226493f4e2
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
cpio-2.15, desktop-file-utils-0.28, JSON-GLib-1.10.6, libarchive-3.8.1, libadwaita-1.7.6, libportal-0.9.1, og Nautilus-48.3
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.50 installert (for
ikon hurtiglageret) og desktop-file-utils-0.28 (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-2025.4 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-calculator/48/gnome-calculator-48.1.tar.xz
Nedlasting MD5 sum: 3a173bf3f454d8ff20e616142e30e950
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 46 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
gtksourceview5-5.16.0, itstool-2.0.7, libadwaita-1.7.6, libgee-0.20.8, og libsoup-3.6.5
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-color-manager/3.36/gnome-color-manager-3.36.2.tar.xz
Nedlasting MD5 sum: b23a411d3ab754da6ebc967716a971dc
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: 0.1 SBU
colord-1.4.8, GTK-3.24.50, itstool-2.0.7, og Little CMS-2.17
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-connections/48/gnome-connections-48.0.tar.xz
Nedlasting MD5 sum: 29f235a8cb172a59fc52f3f6e81f2223
Nedlastingsstørrelse: 3.9 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 SBU
AppStream-1.0.6, FreeRDP-3.17.0, gtk-vnc-1.5.0, itstool-2.0.7, libhandy-1.8.3, libsecret-0.21.7, og Vala-0.56.18
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-disk-utility/46/gnome-disk-utility-46.1.tar.xz
Nedlasting MD5 sum: bfc4d0cfbf186ba5bd487f3fddbf07d2
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 29 MB
Estimert byggetid: 0.2 SBU
gnome-settings-daemon-48.1, itstool-2.0.7, libdvdread-6.1.3, libhandy-1.8.3, libpwquality-1.4.5, libsecret-0.21.7, og UDisks-2.10.2
Installer GNOME Diskverktøy ved å kjøre følgende kommandoer:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -Dlogind=libelogind .. && ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
-Dlogind=libelogind:
Forteller byggesystemet at biblioteket som brukes til
login service er
libelogind.so i stedet for
libsystemd.so.
GNOME Kart er en kartapplikasjon for GNOME.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-maps/48/gnome-maps-48.6.tar.xz
Nedlasting MD5 sum: f9903a3eda9ecb9b3581d79fea9d6f1a
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: 0.1 SBU
desktop-file-utils-0.28, GeoClue-2.7.2, geocode-glib-3.26.4, Gjs-1.84.2, libadwaita-1.7.6, libportal-0.9.1, libshumate-1.4.0, libgweather-4.4.4, 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.4 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.50, itstool-2.0.7, og libgtop-2.41.3
BIND Utilities-9.20.12, Nmap-7.98, Net-tools-2.10, Traceroute-2.1.6, og Whois-5.6.4
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.4 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.4 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.50, 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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-system-monitor/48/gnome-system-monitor-48.1.tar.xz
Nedlasting MD5 sum: e5d25a6f7ee0ba9d0fb19b1eb2f852a1
Nedlastingsstørrelse: 1.0 MB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.1 SBU (med parallellisme=4)
adwaita-icon-theme-48.1, Gtkmm-4.18.0, itstool-2.0.7, libgtop-2.41.3, libadwaita-1.7.6, og librsvg-2.61.0
appstream-glib-0.8.3, desktop-file-utils-0.28, Catch2, og uncrustify
Fjern først en hard avhengighet av Catch2, som bare brukes hvis du kjører enhetstestene:
find . -name meson.build | xargs sed -i -e '/catch2/d' && sed -i '152,162d' src/meson.build
Installer GNOME Systemovervåking ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
-D systemd=false \
--buildtype=release \
.. &&
ninja
Denne pakken kommer med en testpakke, men den er avhengigh av den eksterne Catch2. Hvis du har Catch2 installert, kan du utelate seden ovenfor og kjør deretter testene med ninja test.
Nå, som root bruker:
ninja install
-D systemd=false:
Denne bryteren sørger for at gnome-system-monitor IKKE bruker
systemd prosessovervåkingsrammeverket. Bruk dette
alternativet hvis du er på et SysV system.
GNOME Terminal pakken inneholder terminalemulator for GNOME Skrivebordet.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://gitlab.gnome.org/GNOME/gnome-terminal/-/archive/3.56.0/gnome-terminal-3.56.0.tar.gz
Nedlasting MD5 sum: 7121e093288ea7c4d4a7476ca3365525
Nedlastingsstørrelse: 2.9 MB
Estimert diskplass som kreves: 42 MB
Estimert byggetid: 0.2 SBU
DConf-0.40.0, gsettings-desktop-schemas-48.0, itstool-2.0.7, libhandy-1.8.3, pcre2-10.45, og VTE-0.80.3
gnome-shell-48.4 og Nautilus-48.3
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 && rm -v /usr/lib/systemd/user/gnome-terminal-server.service
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnome-weather/48/gnome-weather-48.0.tar.xz
Nedlasting MD5 sum: 35858b4f07ede013a835033b0b258d19
Nedlastingsstørrelse: 252 KB
Estimert diskplass som kreves: 4.7 MB
Estimert byggetid: mindre enn 0.1 SBU
GeoClue-2.7.2, Gjs-1.84.2, libadwaita-1.7.6, og libgweather-4.4.4
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.4 plattform.
Nedlasting (HTTP): https://gitlab.gnome.org/GNOME/gucharmap/-/archive/16.0.2/gucharmap-16.0.2.tar.bz2
Nedlasting MD5 sum: b349d3a7d5606a934a1a5fe71a7550f0
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 79 MB
Estimert byggetid: 0.1 SBU
Unicode Tegn Database: https://www.unicode.org/Public/zipped/16.0.0/UCD.zip
CJK Samlede Ideografier: https://www.unicode.org/Public/zipped/16.0.0/Unihan.zip
desktop-file-utils-0.28, gsettings-desktop-schemas-48.0, GTK-3.24.50, itstool-2.0.7, libarchive-3.8.1, og pcre2-10.45
GLib-2.84.4 (med GObject Introspection) og Vala-0.56.18
Denne pakken bruker to uversjonerte nedlastinger. Det kan
være lurt å gi nytt navn til disse til et versjonert navn,
f.eks. UCD-16.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.84.4 (med GObject Introspection).
-D vapi=false: Bruk denne hvis du
ikke har installert Vala-0.56.18.
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/seahorse/43/seahorse-47.0.1.tar.xz
Nedlasting MD5 sum: 18cd36abd8d2e25c236934be64c8b916
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 44 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
Gcr-3.41.2, GnuPG-2.4.8, gpgme-2.0.0, itstool-2.0.7, libhandy-1.8.3, libpwquality-1.4.5, libsecret-0.21.7, og Vala-0.56.18
libsoup-3.6.5 og OpenSSH-10.0p1 (for å administrere SSH nøkler)
Først, fiks en byggefeil som oppstår med gpgme-2.x:
sed -i "/GPGME_EVENT_NEXT_TRUSTITEM/d" pgp/seahorse-gpgme.c
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
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.
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/snapshot/48/snapshot-48.0.1.tar.xz
Nedlasting MD5 sum: eed102d3704794563f7c482c980c75a4
Nedlastingsstørrelse: 12 MB
Estimert diskplass som kreves: 1.4 GB (5.6 MB installert)
Estimert byggetid: 4.5 SBU
libadwaita-1.7.6, gst-plugins-bad-1.26.5, og rustc-1.89.0
libgstgtk4 from gst-plugins-rs-1.26.5, pipewire-1.4.7, xdg-desktop-portal-gnome-48.0, og Xdg-user-dirs-0.18
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/libxfce4util/4.20/libxfce4util-4.20.1.tar.bz2
Nedlasting MD5 sum: 8e30b7735333f74d80c379e15d9da145
Nedlastingsstørrelse: 624 KB
Estimert diskplass som kreves: 6.8 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.84.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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfconf/4.20/xfconf-4.20.0.tar.bz2
Nedlasting MD5 sum: ca596ff0a9be7fa655bb09cb05458644
Nedlastingsstørrelse: 748 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: mindre enn 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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/libxfce4ui/4.20/libxfce4ui-4.20.2.tar.bz2
Nedlasting MD5 sum: ce54074a9ed7964b4a3274e8ac74d949
Nedlastingsstørrelse: 1.1 MB
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/exo/4.20/exo-4.20.0.tar.bz2
Nedlasting MD5 sum: f059ec3d8686d4b322c42d19ebec0366
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 14 MB (med tester)
Estimert byggetid: 0.1 SBU (med tester)
GTK-3.24.50, libxfce4ui-4.20.2, og libxfce4util-4.20.1
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/garcon/4.20/garcon-4.20.0.tar.bz2
Nedlasting MD5 sum: fe17e9cb15a62013e0086183a446e89e
Nedlastingsstørrelse: 648 KB
Estimert diskplass som kreves: 8.6 MB
Estimert byggetid: 0.1 SBU
libxfce4ui-4.20.2 og GTK-3.24.50
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/libwnck/43/libwnck-43.2.tar.xz
Nedlasting MD5 sum: b8c29ef589d3427c8a699c1542a2d25e
Nedlastingsstørrelse: 448 KB
Estimert diskplass som kreves: 9.9 MB
Estimert byggetid: mindre enn 0.1 SBU
GLib-2.84.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 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.4 plattform.
Nedlasting (HTTP): http://archive.xfce.org/src/xfce/xfce4-dev-tools/4.20/xfce4-dev-tools-4.20.0.tar.bz2
Nedlasting MD5 sum: bea58046e67b4274c022fcff893fa350
Nedlastingsstørrelse: 372 KB
Estimert diskplass som kreves: 2.7 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
libxfce4windowing pakken inneholder en vindukonseptabstraksjonsbibliotek for X11 og Wayland.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/libxfce4windowing/4.20/libxfce4windowing-4.20.4.tar.bz2
Nedlasting MD5 sum: b27e6ebf153fbca5184147b6d3775762
Nedlastingsstørrelse: 600.4 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.1 SBU
GTK-3.24.50, libdisplay-info-0.3.0, libwnck-43.2 og xfce4-dev-tools-4.20.0
Installer libxfce4windowing ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-x11 \
--disable-debug &&
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.
Xfce4 Panel pakken inneholder Xfce4 Panel.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-panel/4.20/xfce4-panel-4.20.5.tar.bz2
Nedlasting MD5 sum: cf0d6ac7e084b1171e0b46756f2b3c5f
Nedlastingsstørrelse: 2.1 MB
Estimert diskplass som kreves: 47 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme=4)
Cairo-1.18.4, Exo-4.20.0, Garcon-4.20.0, libwnck-43.2, og libxfce4windowing-4.20.4
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/thunar/4.20/thunar-4.20.4.tar.bz2
Nedlasting MD5 sum: 3a9a8c5606348a51e0dee292fac0a280
Nedlastingsstørrelse: 4.3 MB
Estimert diskplass som kreves: 67 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
libgudev-238, libnotify-0.8.6, og pcre2-10.45
GTK-Doc-1.34.0 (for dokumentasjon), Gvfs-1.56.1 (for fjernsurfing og automontering), libexif-0.6.25 og tumbler-4.20.0 (kjøretid)
Først forhindre installasjon av en unødvendig systemd fil:
sed -i 's/\tinstall-systemd_userDATA/\t/' Makefile.in
Installer Thunar ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--docdir=/usr/share/doc/thunar-4.20.4 &&
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/thunar-volman/4.20/thunar-volman-4.20.0.tar.bz2
Nedlasting MD5 sum: 34c8e0af77ea3894db7e3d164998f9bf
Nedlastingsstørrelse: 624 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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/tumbler/4.20/tumbler-4.20.0.tar.bz2
Nedlasting MD5 sum: 8746afe5822d3564a5cd43945d488db7
Nedlastingsstørrelse: 692 KB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: 0.1 SBU
cURL-8.15.0, FreeType-2.13.3, gdk-pixbuf-2.42.12, gst-plugins-base-1.26.5, GTK-Doc-1.34.0, libjpeg-turbo-3.0.1, libgsf-1.14.53, libpng-1.6.50, Poppler-25.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
Til slutt, fjern en systemd enhet som er ubrukelig på et SysV system:
rm -fv /usr/lib/systemd/user/tumblerd.service
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-appfinder/4.20/xfce4-appfinder-4.20.0.tar.bz2
Nedlasting MD5 sum: e60f6c2521a985c6cfe09057d4fb2d69
Nedlastingsstørrelse: 716 KB
Estimert diskplass som kreves: 7.3 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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-power-manager/4.20/xfce4-power-manager-4.20.0.tar.bz2
Nedlasting MD5 sum: a9e27be5dafea884fb9fbbb918062963
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 19 MB
Estimert byggetid: 0.1 SBU
libnotify-0.8.6, UPower-1.90.9, og xfce4-panel-4.20.5
Polkit-126 (nødvendig 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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-settings/4.20/xfce4-settings-4.20.2.tar.bz2
Nedlasting MD5 sum: 5f249a8398718995edb264b132059029
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 32 MB
Estimert byggetid: 0.4 SBU
gnome-icon-theme-3.12.0 eller lxde-icon-theme-0.5.1
libcanberra-0.30, libnotify-0.8.6 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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfdesktop/4.20/xfdesktop-4.20.1.tar.bz2
Nedlasting MD5 sum: b845397fed5e555fa8dce4b189365dbc
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 26 MB
Estimert byggetid: 0.2 SBU
Exo-4.20.0, libxfce4windowing-4.20.4, og libwnck-43.2
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfwm4/4.20/xfwm4-4.20.0.tar.bz2
Nedlasting MD5 sum: e74cfb30b6e9ebf9cbaac0827dd534e3
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 26 MB
Estimert byggetid: 0.2 SBU
libwnck-43.2 og libxfce4ui-4.20.2
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/xfce/xfce4-session/4.20/xfce4-session-4.20.3.tar.bz2
Nedlasting MD5 sum: a97ee6039a463dd845b3869275f0c34e
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 SBU
libwnck-43.2, libxfce4windowing-4.20.4, og libxfce4ui-4.20.2
desktop-file-utils-0.28, xfce4-screensaver eller XScreenSaver-6.12, 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.16.2, GnuPG-2.4.8, hicolor-icon-theme-0.18 OpenSSH-10.0p1 og xinit-1.4.4
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 kjørenivå 3, ved bruk av xinit-1.4.4, eller fra kjørenivå 5, ved å bruke en Skjermbehandler, som for eksempel lightdm-1.32.0.
For å starte Xfce4 ved bruk av xinit-1.4.4, 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
Du kan ønske å droppe dbus-launch, for eksempel bare å bruke startxfce4 in ~/.xinitrc. Men noen funksjoner som montering eller avmontering av filsystemer fra en filbehandling vil ikke være mulig, eller omstartsalternativet vil være fraværende eller ute av drift, blant noen problemer.
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.4 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.20/parole-4.20.0.tar.xz
Nedlasting MD5 sum: 388dee33b1d06ee89f007b4cb08dedaf
Nedlastingsstørrelse: 470 KB
Estimert diskplass som kreves: 19 MB
Estimert byggetid: 0.2 SBU
dbus-glib-0.114, gst-plugins-base-1.26.5, gst-plugins-good-1.26.5, og libxfce4ui-4.20.2
libnotify-0.8.6 og taglib-2.1.1
Installer Parole 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 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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/xfce4-terminal/1.1/xfce4-terminal-1.1.5.tar.xz
Nedlasting MD5 sum: d779b64ead82330b6bbc7d500f542490
Nedlastingsstørrelse: 432 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: 0.1 SBU
Installer Xfce4 Terminal 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
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/xfburn/0.7/xfburn-0.8.0.tar.bz2
Nedlasting MD5 sum: 0ae5e3e94c71857b7cd8555f9f18625f
Nedlastingsstørrelse: 1.2 MB
Estimert diskplass som kreves: 15 MB
Estimert byggetid: 0.1 SBU
libburn-1.5.6, libisofs-1.5.6, og libxfce4ui-4.20.2
gst-plugins-base-1.26.5 og Cdrdao-1.2.5 (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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/ristretto/0.13/ristretto-0.13.4.tar.xz
Nedlasting MD5 sum: 680765bdecaf1b465ca3af7fbea7f6c4
Nedlastingsstørrelse: 272 KB
Estimert diskplass som kreves: 5.4 MB
Estimert byggetid: mindre enn 0.1 SBU
libexif-0.6.25 og libxfce4ui-4.20.2
tumbler-4.20.0 (kjøretid)
Installer ristretto 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
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/apps/xfce4-notifyd/0.9/xfce4-notifyd-0.9.7.tar.bz2
Nedlasting MD5 sum: d5bfe1fd8e8da9d64367a1f520d88633
Nedlastingsstørrelse: 752 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.1 SBU
libnotify-0.8.6, libxfce4ui-4.20.2, libcanberra-0.30, SQLite-3.50.4, xfce4-dev-tools-4.20.0, og xfce4-panel-4.20.5
Installer Xfce4 Varslingsnissen ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc \
--disable-systemd &&
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.4 plattform.
Nedlasting (HTTP): https://archive.xfce.org/src/panel-plugins/xfce4-pulseaudio-plugin/0.5/xfce4-pulseaudio-plugin-0.5.1.tar.xz
Nedlasting MD5 sum: 186a097794ced3612713c2098ec0b51c
Nedlastingsstørrelse: 120 KB
Estimert diskplass som kreves: 3.4 MB
Estimert byggetid: mindre enn 0.1 SBU
libnotify-0.8.6, PulseAudio-17.0, og xfce4-panel-4.20.5
keybinder-3.0-0.3.2, libcanberra-0.30, libxfce4windowing-4.20.4, og pavucontrol-6.1 (kjøretid)
Installer Xfce4 Pulseaudio Programtillegg 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
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.9.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.2.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.4 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.17.0 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.17/kwindowsystem-6.17.0.tar.xz
Nedlasting MD5 sum: 9a8e56599a0bfa0fd5ca8f52c04dd410
Nedlastingsstørrelse: 2.3 MB
Estimert diskplass som kreves: 77 MB
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4)
extra-cmake-modules-6.17.0, plasma-wayland-protocols-1.18.0, Qt-6.9.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.4 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.17.0 er bygget, IKKE bygg denne pakken som er presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.17/kconfig-6.17.0.tar.xz
Nedlasting MD5 sum: 51d38c6aec7f6af07bd0fff8c96b3505
Nedlastingsstørrelse: 348 KB
Estimert diskplass som kreves: 31 MB
Estimert byggetid: 0.3 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
|
leser fra en konfigurasjonsfil ved å bruke KConfig grensesnittet |
|
|
skriver til en konfigurasjonsfil ved å bruke KConfig grensesnittet |
|
|
inneholder kjernekonfigurasjonsbiblioteket for KF6 |
|
|
inneholder funksjoner for et GUI grensesnitt med KConfig |
|
|
inneholder et QML grensesnitt til KConfig |
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.4 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.17.0 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.17/solid-6.17.0.tar.xz
Nedlasting MD5 sum: 8c8239af3e50c7ae75c51292e077307d
Nedlastingsstørrelse: 300 KB
Estimert diskplass som kreves: 39 MB
Estimert byggetid: 0.5 SBU (Bruker parallellisme=4)
extra-cmake-modules-6.17.0 og Qt-6.9.2
UDisks-2.10.2, UPower-1.90.9, 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.4 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.17.0 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/frameworks/6.17/kidletime-6.17.0.tar.xz
Nedlasting MD5 sum: e86f50568a3303f2542db2b4fb5183db
Nedlastingsstørrelse: 32 KB
Estimert diskplass som kreves: 5.9 MB
Estimert byggetid: 0.3 SBU
extra-cmake-modules-6.17.0, plasma-wayland-protocols-1.18.0, og Qt-6.9.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.4 plattform.
Denne pakken er hentet fra KF6 settet med pakker. Hvis KDE Frameworks-6.17.0 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/plasma/6.4.4/kwayland-6.4.4.tar.xz
Nedlasting MD5 sum: 5f2f27d10a309f87a7fcc7abe3f33c7a
Nedlastingsstørrelse: 132 KB
Estimert diskplass som kreves: 12 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
extra-cmake-modules-6.17.0, Mesa-25.1.8 (bygget med Wayland-1.24.0 støtte), plasma-wayland-protocols-1.18.0, og Qt-6.9.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.4 plattform.
Denne pakken er trukket ut fra plasma settet med pakker. Hvis Plasma-6.4.4 er bygget, IKKE bygg denne pakken som presentert her også.
Nedlasting (HTTP): https://download.kde.org/stable/plasma/6.4.4/libkscreen-6.4.4.tar.xz
Nedlasting MD5 sum: 6788dae93c3fb8d3790651c3cc13a459
Nedlastingsstørrelse: 124 KB
Estimert diskplass som kreves: 21 MB
Estimert byggetid: 0.4 SBU (bruke parallellisme=4)
kwayland-6.4.4 for lxqt, plasma-wayland-protocols-1.18.0, og Qt-6.9.2
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
Deretter fjerner du en systemd enhet som ikke tjener noen
hensikt på et SysV system, som root bruker:
rm -v /usr/lib/systemd/user/plasma-kscreen.service
Denne komponenten er ment for at applikasjoner skal kunne enkelt bruke klienter basert på en "wlr-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.4 plattform.
Denne pakken er hentet fra plasmasettet med pakker. Hvis Plasma-6.4.4 er bygget, IKKE bygg også denne pakken som presentert her.
Nedlasting (HTTP): https://download.kde.org/stable/plasma/6.4.4/layer-shell-qt-6.4.4.tar.xz
Nedlasting MD5 sum: 57485b21e575b632223946b936a11d35
Nedlastingsstørrelse: 36 KB
Estimert diskplass som kreves: 5.1 MB
Estimert byggetid: 0.1 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.4 plattform.
Nedlasting (HTTP): https://github.com/beltoforion/muparser/archive/v2.3.5/muparser-2.3.5.tar.gz
Nedlasting MD5 sum: 04d4224cb01712207b85af05a255b6fc
Nedlastingsstørrelse: 116 KB
Estimert diskplass som kreves: 4.6 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-build-tools/releases/download/2.2.1/lxqt-build-tools-2.2.1.tar.xz
Nedlasting MD5 sum: fd59f0055121bcf90244cdc069e3acb3
Nedlastingsstørrelse: 28 KB
Estimert diskplass som kreves: 776 KB
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 && rm -f /usr/share/cmake/lxqt2-build-tools/find-modules/FindXCB.cmake
rm -f /usr/share/cmake/lxqt2-build-tools/find-modules/FindXCB.cmake: Hvis den finnes, fjern en cmake fil fra en tidligere versjon som ikke lenger brukes.
libdbusmenu-lxqt pakken gir en Qt implementering av DBusMenu protokollen.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/libdbusmenu-lxqt/releases/download/0.3.0/libdbusmenu-lxqt-0.3.0.tar.xz
Nedlasting MD5 sum: 2ccc567ac1481ac1d065639cb7bf8ad7
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
-D WITH_DOC=ON: Bruk
denne bryteren hvis du har installert Doxygen-1.14.0 og vil
bygge den valgfrie dokumentasjonen.
libqtxdg pakken inneholder en Qt implementering av freedesktop.org XDG spesifikasjonene.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/libqtxdg/releases/download/4.2.0/libqtxdg-4.2.0.tar.xz
Nedlasting MD5 sum: f697105e810ed1dd4ed9a6c6d4687167
Nedlastingsstørrelse: 72 KB
Estimert diskplass som kreves: 8.9 MB
Estimert byggetid: 0.3 SBU
CMake-4.1.0, lxqt-build-tools-2.2.1. og Qt-6.9.2
GTK-3.24.50 (for gtk-update-icon-cache) og xterm-401
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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-menu-data/releases/download/2.2.0/lxqt-menu-data-2.2.0.tar.xz
Nedlasting MD5 sum: e2fd3d5f00f835de721412aad8566f44
Nedlastingsstørrelse: 56 KB
Estimert diskplass som kreves: 1.6 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/liblxqt/releases/download/2.2.0/liblxqt-2.2.0.tar.xz
Nedlasting MD5 sum: ddba93d39782eada9f4d49c816ca1b84
Nedlastingsstørrelse: 88 KB
Estimert diskplass som kreves: 6.9 MB
Estimert byggetid: 0.4 SBU
libqtxdg-4.2.0, kwindowsystem-6.17.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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/libsysstat/releases/download/1.1.0/libsysstat-1.1.0.tar.xz
Nedlasting MD5 sum: b21e0facd325c1d8e177121e2ac71e78
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 1.9 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/qtxdg-tools/releases/download/4.2.0/qtxdg-tools-4.2.0.tar.xz
Nedlasting MD5 sum: 1db30138c7f5f0b938eebe87453721a9
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.1.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxde/menu-cache/archive/1.1.1/menu-cache-1.1.1.tar.gz
Nedlasting MD5 sum: a15e0de38188622a6b9e63433a6d616f
Nedlastingsstørrelse: 68 KB
Estimert diskplass som kreves: 3.8 MB
Estimert byggetid: mindre enn 0.1 SBU
sh autogen.sh && ./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. I LXQt, libfm-qt håndterer også skrivebordsikoner og bakgrunner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/libfm-qt/releases/download/2.2.0/libfm-qt-2.2.0.tar.xz
Nedlasting MD5 sum: fefb4fcab4c848af2d73560dbc1c726f
Nedlastingsstørrelse: 416 KB
Estimert diskplass som kreves: 27 MB
Estimert byggetid: 0.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-globalkeys/releases/download/2.2.0/lxqt-globalkeys-2.2.0.tar.xz
Nedlasting MD5 sum: 22d348d8513ca7706e58e7e1354a6938
Nedlastingsstørrelse: 80 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: 0.6 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
lxqt-qtplugin pakken gir en LXQt Qt plattform integrerings programtillegg.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-qtplugin/releases/download/2.2.0/lxqt-qtplugin-2.2.0.tar.xz
Nedlasting MD5 sum: e3cc5c14605f50a93da768d9d58849a7
Nedlastingsstørrelse: 24 KB
Estimert diskplass som kreves: 2.3 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-panel/releases/download/2.2.2/lxqt-panel-2.2.2.tar.xz
Nedlasting MD5 sum: 4d2ed07f9de88eb8a61867fcf810ab5b
Nedlastingsstørrelse: 712 KB
Estimert diskplass som kreves: 69 MB
Estimert byggetid: 0.9 SBU (Bruke parallellisme=4)
layer-shell-qt-6.4.4 for lxqt, libdbusmenu-lxqt-0.3.0, liblxqt-2.2.0, lxqt-globalkeys-2.2.0, lxqt-menu-data-2.2.0, solid-6.17.0 for lxqt, og menu-cache-1.1.1
PulseAudio-17.0, libstatgrab-0.92.1 (nettverksmonitor og CPU last programtillegg), libsysstat-1.1.0 (Programtillegg for CPU og nettverks monitor), libxkbcommon-1.11.0 (tastaturindikator programtillegg), og lm-sensors-3-6-2 (sensorer programtillegg)
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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/pcmanfm-qt/releases/download/2.2.0/pcmanfm-qt-2.2.0.tar.xz
Nedlasting MD5 sum: 8fa68d4a4abe49c45ecc317c73918319
Nedlastingsstørrelse: 408 KB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.5 SBU
layer-shell-qt-6.4.4 for lxqt, liblxqt-2.2.0, libfm-qt-2.2.0, og lxqt-menu-data-2.2.0
Gvfs-1.56.1 (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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-powermanagement/releases/download/2.2.1/lxqt-powermanagement-2.2.1.tar.xz
Nedlasting MD5 sum: c67477db41c05d07535ff0efdfce9e8f
Nedlastingsstørrelse: 108 KB
Estimert diskplass som kreves: 8.7 MB
Estimert byggetid: 0.4 SBU
liblxqt-2.2.0, kidletime-6.17.0 for lxqt, solid-6.17.0 for lxqt, og UPower-1.90.9
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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-runner/releases/download/2.2.0/lxqt-runner-2.2.0.tar.xz
Nedlasting MD5 sum: 9758bfe48556de0077ce06e7e7ad3249
Nedlastingsstørrelse: 228 KB
Estimert diskplass som kreves: 5.5 MB
Estimert byggetid: 0.2 SBU
lxqt-globalkeys-2.2.0, kwindowsystem-6.17.0 for lxqt, og muparser-2.3.5
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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-themes/releases/download/2.2.0/lxqt-themes-2.2.0.tar.xz
Nedlasting MD5 sum: 43fe45501af687ac101046b66c1f968b
Nedlastingsstørrelse: 26 MB
Estimert diskplass som kreves: 28 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-admin/releases/download/2.2.0/lxqt-admin-2.2.0.tar.xz
Nedlasting MD5 sum: 17a3ca081d0e756cf1a92d9159d598d3
Nedlastingsstørrelse: 156 KB
Estimert diskplass som kreves: 4.9 MB
Estimert byggetid: 0.3 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-about/releases/download/2.2.0/lxqt-about-2.2.0.tar.xz
Nedlasting MD5 sum: 82fd645c21849b59a062c903901ae81a
Nedlastingsstørrelse: 52 KB
Estimert diskplass som kreves: 3.2 MB
Estimert byggetid: 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-config/releases/download/2.2.0/lxqt-config-2.2.0.tar.xz
Nedlasting MD5 sum: d6b4a9814c3e95e2a1393e8c438f6556
Nedlastingsstørrelse: 396 KB
Estimert diskplass som kreves: 25 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
liblxqt-2.2.0, kconfig-6.17.0 for lxqt, libkscreen-6.4.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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-policykit/releases/download/2.2.0/lxqt-policykit-2.2.0.tar.xz
Nedlasting MD5 sum: ca4cf1fa2b79594673d2565c5468d5ad
Nedlastingsstørrelse: 40 KB
Estimert diskplass som kreves: 2.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-sudo/releases/download/2.2.0/lxqt-sudo-2.2.0.tar.xz
Nedlasting MD5 sum: 7ed13043004390f4cc4ab4a196a8b5fb
Nedlastingsstørrelse: 36 KB
Estimert diskplass som kreves: 2.3 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-openssh-askpass/releases/download/2.2.0/lxqt-openssh-askpass-2.2.0.tar.xz
Nedlasting MD5 sum: aebaccf5f72ef60e39f588ac306175f6
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 1.9 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-session/releases/download/2.2.0/lxqt-session-2.2.0.tar.xz
Nedlasting MD5 sum: 7f4c05b92c877251513dc461dded0833
Nedlastingsstørrelse: 216 KB
Estimert diskplass som kreves: 11 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.20.0. Vær oppmerksom på at
IceWM-3.8.2 er ikke en god erstatning.
Fluxbox fungerer, skjønt i
denne sammenhengen (med lxqt-config-2.2.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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/xdg-desktop-portal-lxqt/releases/download/1.2.0/xdg-desktop-portal-lxqt-1.2.0.tar.xz
Nedlasting MD5 sum: fc8886d579be5f2c5f0ff49feeadea52
Nedlastingsstørrelse: 20 KB
Estimert diskplass som kreves: 2.2 MB
Estimert byggetid: mindre enn 0.1 SBU
libfm-qt-2.2.0, kwindowsystem-6.17.0 for lxqt, og xdg-desktop-portal-1.20.3 (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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/obconf-qt/releases/download/0.16.5/obconf-qt-0.16.5.tar.xz
Nedlasting MD5 sum: d5575e961c56676ed7cff32d87564f26
Nedlastingsstørrelse: 124 KB
Estimert diskplass som kreves: 5.1 MB
Estimert byggetid: 0.2 SBU
hicolor-icon-theme-0.18, lxqt-build-tools-2.2.1, openbox-3.6.1, og Qt-6.9.2
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.20.0, eller kwin fra Plasma-6.4.4. Merk at IceWM-3.8.2 er ikke egnet for LXQt.
breeze-icons-6.17.0 og desktop-file-utils-0.28
lightdm-1.32.0 eller en annen Skjermbehandler, f.eks. sddm-0.21.0, eller XScreenSaver-6.12
Du kan starte LXQt fra kjørenivå 3, ved hjelp av xinit-1.4.4, eller fra kjørenivå 5, ved å bruke en skjermbehandler, som for eksempel lightdm-1.32.0.
For å starte LXQt ved hjelp av xinit-1.4.4, 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lximage-qt/releases/download/2.2.0/lximage-qt-2.2.0.tar.xz
Nedlasting MD5 sum: d387013ec7aaa722b8fc459d285f0306
Nedlastingsstørrelse: 840 KB
Estimert diskplass som kreves: 8.6 MB
Estimert byggetid: 0.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-archiver/releases/download/1.2.0/lxqt-archiver-1.2.0.tar.xz
Nedlasting MD5 sum: 28d25248658d735da5a47b71aefeaef5
Nedlastingsstørrelse: 196 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: 0.3 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/lxqt-notificationd/releases/download/2.2.0/lxqt-notificationd-2.2.0.tar.xz
Nedlasting MD5 sum: 338c34b44a1c5e0cc367f0be502f4dcc
Nedlastingsstørrelse: 68 KB
Estimert diskplass som kreves: 5.2 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/pavucontrol-qt/releases/download/2.2.0/pavucontrol-qt-2.2.0.tar.xz
Nedlasting MD5 sum: 6afb1930afa20e73e9b70e0890295598
Nedlastingsstørrelse: 116 KB
Estimert diskplass som kreves: 6.5 MB
Estimert byggetid: 0.2 SBU
liblxqt-2.2.0 og PulseAudio-17.0 (bygget med GLib-2.84.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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/qps/releases/download/2.11.1/qps-2.11.1.tar.xz
Nedlasting MD5 sum: d55110ad8b33ead2847b7af15d009efd
Nedlastingsstørrelse: 460 KB
Estimert diskplass som kreves: 10 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/qtermwidget/releases/download/2.2.0/qtermwidget-2.2.0.tar.xz
Nedlasting MD5 sum: eff7a52c8a1849411bcaec781a230b2c
Nedlastingsstørrelse: 192 KB
Estimert diskplass som kreves: 6.9 MB
Estimert byggetid: 0.1 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/qterminal/releases/download/2.2.1/qterminal-2.2.1.tar.xz
Nedlasting MD5 sum: eb1fa09608e1aa2ba730c1b302a7b925
Nedlastingsstørrelse: 236 KB
Estimert diskplass som kreves: 11 MB
Estimert byggetid: 0.2 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.4 plattform.
Nedlasting (HTTP): https://github.com/lxqt/screengrab/releases/download/3.0.0/screengrab-3.0.0.tar.xz
Nedlasting MD5 sum: c461c39cf810864ac3414b3bed29640c
Nedlastingsstørrelse: 368 KB
Estimert diskplass som kreves: 9.0 MB
Estimert byggetid: 0.4 SBU
lxqt-build-tools-2.2.1, kwindowsystem-6.17.0 for lxqt, og libqtxdg-4.2.0
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.
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/gnumeric/1.12/gnumeric-1.12.59.tar.xz
Nedlasting MD5 sum: b4629f134acc1649b79c99be13e9f1e9
Nedlastingsstørrelse: 17 MB
Estimert diskplass som kreves: 251 MB (legg til 17 for tester)
Estimert byggetid: 1.0 SBU (legg til 2.7 SBU for tester; begge bruker parallellisme=4)
GOffice-0.10.59 og itstool-2.0.7
Et ikontema som f.eks adwaita-icon-theme-48.1, oxygen-icons-6.0.0, eller gnome-icon-theme-3.12.0, et grafiske miljø, og Yelp-42.3 for den innebygde hjelpefunksjonen
DConf-0.40.0 (for å forhindre noen testfeil), GLib-2.84.4 (med GObject Introspection), PyGObject-3.52.3, Valgrind-3.25.1 (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.59 |
|
|
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.4 plattform.
Kjernenedlasting: https://download.documentfoundation.org/libreoffice/src/25.8.1/libreoffice-25.8.1.1.tar.xz
Kjernenedlasting MD5 sum: 0d823a106e573b69dfd7e3bfba7ea920
Kjerne Nedlastingsstørrelse: 273 MB
Estimert diskplass som kreves: 11 GB inkludert tilleggsfilene hvis de blir lastet ned under byggingen (778 MB installert). Å installere hele settet med språk krever mer enn 25 GB (rundt 3 GB installert)
Estimert byggetid: 23 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: 1d4d8eee03da063f5885331641b8377e
Ordbøker størrelse: 60 MB
Hjelpefiler: https://download.documentfoundation.org/libreoffice/src/25.8.1/libreoffice-help-25.8.1.1.tar.xz
Hjelpefiler MD5 sum: fcc3a3aabac2e8e9f5dc4c52b8e62289
Hjelpefiler størrelse: 58 MB
Oversettelser: https://download.documentfoundation.org/libreoffice/src/25.8.1/libreoffice-translations-25.8.1.1.tar.xz
Oversettelser MD5 sum: 6fe8fb5cfad4290a143d5ab536dc3d81
Oversettelser størrelse: 220 MB
Archive-Zip-1.68, libarchive-3.8.1, Wget-1.25.0, Which-2.23, og Zip-3.0
En Internett tilkobling er nødvendig for å bygge denne pakken. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger 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.15, Boost-1.89.0, CLucene-2.3.3.4, Cups-2.4.12, cURL-8.15.0, GLM-1.0.1, GLU-9.0.3, gpgme-2.0.0, Graphite2-1.3.14, gst-plugins-base-1.26.5, GTK-3.24.50, harfBuzz-11.4.1, ICU-77.1, libatomic_ops-7.8.2, libepoxy-1.5.10, libjpeg-turbo-3.0.1, librsvg-2.61.0, libtiff-4.7.0, libwebp-1.6.0, libxml2-2.14.5 og libxslt-1.1.43, Little CMS-2.17, LLVM-20.1.8 (clang foretrekkes for gjengivelse med skia skia), lxml-6.0.0, Mesa-25.1.8, nss-3.115, OpenLDAP-2.6.10 (hvis du kobler til en LDAP server), Poppler-25.08.0, PostgreSQL-17.6, Redland-1.0.17, og unixODBC-2.3.12
Abseil-cpp-20250814.0, Avahi-0.8, BlueZ-5.83, DConf-0.40.0, desktop-file-utils-0.28, Doxygen-1.14.0 (ikke relevant ved bruk av --disable-odk), evolution-data-server-3.56.2, GDB-16.3, GnuTLS-3.8.10, GTK-4.18.6, KDE Frameworks-6.17.0, libpaper-2.2.6, MariaDB-11.8.3 eller MySQL, MIT Kerberos V5-1.22.1, NASM-2.16.03, Qt-6.9.2, SANE-1.4.0, Valgrind-3.25.1, VLC-3.0.21, zxing-cpp-2.3.0, BeanShell, box2d, CoinMP, Cppunit, Dragonbox, Firebird, frozen, hamcrest, Hunspell, Hyphen, Java-WebSocket, jfreereport, jq, junit4, libabw, libcdr, libcmis, libebook, libeot, libepubgen, libetonyek, libexttextcat, libfixmath, libfreehand, liblangtag, libmspub, libmwaw, libnumbertext, libodfgen, libpagemaker, libqxp, librevenge (WordPerfect Document importer), libstaroffice, libvisio, libwpd, libwpg, libwps, libzmf, lp_solve, mdds, MyThes, odfvalidator, officeotron, Orcus, rhino, og suitesparse (colamd)
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
Deretter, fiks et problem med å oppdage Boost::System, som ble endret fra et bibliotek til en serie med deklarasjoner i Boost-1.89.0:
export boost_cv_lib_system=yes
Deretter fikser du en feil med kobling til zlib, fikse en feil som ville forårsake en installasjonsfeil, og forhindre komprimering av manualsider:
sed -i '/icuuc \\/a zlib\\' writerperfect/Library_wpftdraw.mk &&
sed -i "/distro-install-file-lists/d" Makefile.in &&
sed -e "/gzip -f/d" \
-e "s|.1.gz|.1|g" \
-i bin/distro-install-desktop-integration
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-25.8.1.1.tar.xz external/tarballs/ && ln -sv ../../../libreoffice-help-25.8.1.1.tar.xz external/tarballs/ && ln -sv ../../../libreoffice-translations-25.8.1.1.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-25.8.1.1/helpcontent2/ && ln -sv src/libreoffice-dictionaries-25.8.1.1/dictionaries/ && ln -sv src/libreoffice-translations-25.8.1.1/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-25.8.1.1:
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:
./autogen.sh --prefix=$LO_PREFIX \
--sysconfdir=/etc \
--with-vendor=BLFS \
--with-lang='fr en-GB' \
--with-help=html \
--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-icu \
--with-system-jpeg \
--with-system-lcms2 \
--with-system-libatomic_ops \
--with-system-libtiff \
--with-system-libpng \
--with-system-libxml \
--with-system-libwebp \
--with-system-nss \
--with-system-odbc \
--with-system-openldap \
--with-system-openssl \
--with-system-poppler \
--with-system-postgresql \
--with-system-redland \
--with-system-zlib \
--with-system-zstd
Bygg pakken:
make build
Nå, som root bruker:
make distro-pack-install
Hvis installert i /opt/libreoffice-25.8.1.1 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.28, 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.
--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=html:
Uten denne bryteren, blir ikke hjelpefilene 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.22.1.
--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.26.5.
--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.4
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.9.2 ikke er installert i /usr, include og bibliotekmapper må
spesifiseres i QT6INC og
QT6LIB miljøvariabler.
--enable-kf6: Denne bryteren
aktiverer KDE/Plasma integrering. Hvis Qt-6.9.2 og/eller KDE Frameworks-6.17.0
ikke er installert i /usr,
inkluderinger 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 systemversjonenav Abseil C++
bibliotekene i stedet for den medfølgende kopien. Legg til
denne bryteren hvis Abseil-cpp-20250814.0 er
installert og du vil å brukeden i stedet for den medfølgende
kopien.
--with-system-zxing: Denne
bryteren muliggjør bruk av en systemversjon av zxing-cpp i
stedet for den medfølgende kopien. Legg til denne bryteren
hvis zxing-cpp-2.3.0 er installert og du vil
bruke den i stedet for den medfølgende kopien.
--enable-gtk4: Denne bryteren
muliggjør integrasjon med GTK-4, inkludert bruk av en GTK-4
filleserdialog og temaer.
|
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.4 plattform.
Nedlasting (HTTP): https://download.gnome.org/sources/epiphany/48/epiphany-48.5.tar.xz
Nedlasting MD5 sum: 7304b397e3eefe45d02866099beb9729
Nedlastingsstørrelse: 3.9 MB
Estimert diskplass som kreves: 49 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester; begge bruker parallellisme=4)
Gcr-4.4.0.1, gnome-desktop-44.3, ISO Codes-4.18.0, JSON-GLib-1.10.6, libadwaita-1.7.6, libportal-0.9.1, Nettle-3.10.2, og WebKitGTK-2.48.5 (bygget med GTK-4)
appstream-glib-0.8.3 og Granite
gnome-keyring-48.0 (for lagring av passord) og Seahorse-47.0.1 (for administrere lagrede passord)
Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/epiphany
Hvis du oppgraderer fra en epiphany-46 eller tidligere,
fjern noen filer som vil forårsake et krasj under kjøring
hvis de er tilstede, som root bruker:
rm -rf /usr/lib/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.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/falkon-25.08.0.tar.xz
Nedlasting MD5 sum: feb6cb25144e45da542fdaf38d39cd8a
Nedlastingsstørrelse: 2.6 MB
Estimert diskplass som kreves: 161 MB
Estimert byggetid: 1.6 SBU (Bruke parallellisme=4; legg til 1.5 SBU for tester)
extra-cmake-modules-6.17.0, KDE Frameworks-6.17.0 (for karchive), og qtwebengine-6.9.2
Strengt tatt er det bare karchive og ki18n som kreves for å bygge falkon, men flere andre pakker i KDE Frameworks-6.17.0 kan brukes hvis de er tilstede. For å bygge kun karchive og ki18n, last ned disse pakkene fra mappen spesifisert i KDE Frameworks-6.17.0 og bruk byggeinstruksjonene på den side, endre $KF6_PREFIX til /usr.
gnome-keyring-48.0, 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.4 plattform.
Denne pakken har historisk sett hatt hyppige oppdateringer som adresserer sikkerhetssårbarheter. For å finne den siste status sjekk BLFS Security Advisories.
Nedlasting (HTTP): https://archive.mozilla.org/pub/firefox/releases/140.2.0esr/source/firefox-140.2.0esr.source.tar.xz
Nedlasting MD5 sum: 64773387a541a2ed5c1ce9f247469ba3
Nedlastingsstørrelse: 602 MB
Estimert diskplass som kreves: 7.7 GB (241 MB installert) uten tester
Estimert byggetid: 13 SBU bruker -j8, uten tester
Mappenavnet er firefox-140.2.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.29.0, GTK-3.24.50, libnotify-0.8.6, libarchive-3.8.1, LLVM-20.1.8 (med clang, brukes til bindgen selv om man bruker gcc), nodejs-22.18.0, PulseAudio-17.0 (eller alsa-lib-1.2.14 hvis du redigerer mozconfig; nå avviklet av mozilla), i begge tilfeller vennligst les Konfigurasjonsinformasjon, Python-3.13.7 (etter installasjonen av SQLite-3.50.4), startup-notification-0.12
ICU-77.1, libevent-2.1.12, libvpx-1.15.2, libwebp-1.6.0, NASM-2.16.03, og nss-3.115
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.15.0, Doxygen-1.14.0, FFmpeg-7.1.1 (kjøretid, for å spille mov, mp3 eller mp4 files), GeoClue-2.7.2 (kjøretid), liboauth-1.0.3, libproxy-0.5.10, pciutils-3.14.0 (kjøretid), Valgrind-3.25.1, Wget-1.25.0, Wireless Tools-29, og yasm-1.3.0,
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
# If you wish to use libproxy to determine proxy server information, you will
# need to install the libproxy package and then uncomment the option below:
#ac_add_options --enable-libproxy
# 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
# By default firefox will attempt to use the window class firefox-default on
# launch. This makes the icon not work properly because wayland does not
# support the X11 property class header. Change the remoting name to fix this.
# This is also reflected in the .desktop file where StartupWMClass is set to
# firefox.
MOZ_APP_REMOTINGNAME=firefox
EOF
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 skriptet 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
StartupWMClass=firefox
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=syslog& (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-140.2.0 og Thunderbird-140.2.0esr.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Denne pakken har historisk sett hatt hyppige oppdateringer som adresserer sikkerhetssårbarheter. For å finne den siste status sjekk BLFS Security Advisories.
Nedlasting (HTTP): https://archive.seamonkey-project.org/releases/2.53.21/source/seamonkey-2.53.21.source.tar.xz
Nedlasting MD5 sum: 388a3a89245c3c3aa0e2303fba7ed253
Nedlastingsstørrelse: 237 MB
Estimert diskplass som kreves: 3 GB (138 MB installert)
Estimert byggetid: 6 SBU (med parallellitet=8)
Anbefalt oppdatering (kreves for å bygge med system ICU-75 eller nyere): https://www.linuxfromscratch.org/patches/blfs/12.4/seamonkey-2.53.21-cxx17-1.patch
Tarballen seamonkey-2.53.21.source.tar.xz vil pakke ut i seamonkey-2.53.21 mappen.
Cbindgen-0.29.0, GTK-3.24.50, libarchive-3.8.1, Python-3.11.1, yasm-1.3.0, og Zip-3.0
ICU-77.1, libevent-2.1.12, libwebp-1.6.0, LLVM-20.1.8 (med clang), NASM-2.16.03, NSPR-4.37, nss-3.115, 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.14, dbus-glib-0.114, libproxy-0.5.10, nodejs-22.18.0, Valgrind-3.25.1, Wget-1.25.0, Wireless Tools-29, Hunspell 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
python3 configure.py
--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
# If you wish to use libproxy to determine proxy server information, you will
# need to install the libproxy package and then uncomment the option below:
#ac_add_options --enable-libproxy
# Uncomment these lines if you have installed optional dependencies:
#ac_add_options --enable-system-hunspell
# 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 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 ports 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
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
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, bruk en oppdatering for å bygge denne pakken med C++17-standard fordi deklarasjoner til ICU-75 eller nyere krever noe C++17 funksjoner, og tilpasse byggesystemet for å bruke riktig bibliotek med ICU-76 eller senere:
(for i in {43..47}; do
sed '/ZWJ/s/$/,CLASS_CHARACTER/' -i intl/lwbrk/LineBreaker.cpp || exit $?
done) &&
patch -Np1 -i ../seamonkey-2.53.21-cxx17-1.patch &&
sed -i 's/icu-i18n/icu-uc &/' js/moz.configure
Deretter fjerner du en mengde ubrukt kode som bryter C++-standarden. Clang har begynt å avvise den selv om den har vært ubrukt siden 19.1.0 utgivelse:
sed -e '/ExclusiveData(ExclusiveData&&/,/^ *}/d' \
-i js/src/threading/ExclusiveData.h
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_USE_SYSTEM_PYTHON=1 ./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_USE_SYSTEM_PYTHON=1 ./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 lettvekst GTK+ basert e-postklient.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://gitlab.gnome.org/GNOME/balsa/-/archive/2.6.5/balsa-2.6.5.tar.gz
Nedlasting MD5 sum: c1039c22e8c2544c6a357626d71b6220
Nedlastingsstørrelse: 6.0 MB
Estimert diskplass som kreves: 44 MB
Estimert byggetid: 0.1 SBU (Bruke parallellisme=4)
enchant-2.8.12, GMime-3.2.15, gpgme-2.0.0, GTK-3.24.50, libical-3.0.20, libnotify-0.8.6, og libsecret-0.21.7
MTA (som gir en sendmail kommando)
Compface-1.5.2, gspell-1.14.0, gtksourceview-3.24.11, libcanberra-0.30, MIT Kerberos V5-1.22.1, OpenLDAP-2.6.10, Procmail-3.24, SQLite-3.50.4, WebKitGTK-2.48.5, html2text, libxapp, osmo, og yelp-tools
Installer Balsa ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. --prefix=/usr \
--buildtype=release \
-D html-widget=no &&
ninja
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
ninja install
-D html-widget=no:
Dette alternativet deaktiverer bygging av HTML gjengiveren.
Hvis du vil at HTML gjengiveren skal bygges, bekreft at du
har WebKitGTK-2.48.5 installert, og fjern
så dette alternativet.
-D canberra=true: Denne bryteren
aktiverer støtte for hendelseslyder via libcanberra-0.30.
-D compface=true: Denne bryteren
aktiverer støtte for Compface-1.5.2 for å komprimere
miniatyrbilder for kontakter.
-D gcr=true: Denne bryteren
aktiverer støtte for bruk av libgcr for håndtering av TLS
sertifikater. Dette krever at Gcr-3.41.2 pakken er installert, som
er en del av en kjøretidsavhengighet for libsecret.
-D gss=true: Denne bryteren
aktiverer støtte for Kerberos autentisering. Dette krever at
MIT Kerberos V5-1.22.1 pakken er
installert.
-D ldap=true:Denne bryteren
aktiverer støtte for LDAP adresseboken. Dette krever at
OpenLDAP-2.6.10 pakken 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.4 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.50 og imlib2-1.12.5 (bygget med giflib-5.2.2 støtte, for tester)
libjpeg-turbo-3.0.1 (for tapsfri bilderotasjon) og ImageMagick-7.1.2-1 (for å laste formater som ikke støttes)
Test-Command-0.11 (påkrevd) og mandoc (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.4 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.4/fontforge-20230101-security_fixes-1.patch
libspiro-20220722 og libxml2-2.14.5
giflib-5.2.2, git-2.50.1, libjpeg-turbo-3.0.1, libtiff-4.7.0, sphinx-8.2.3 (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.4 plattform.
Nedlasting (HTTP): https://github.com/freerdp/freerdp/archive/3.17.0/FreeRDP-3.17.0.tar.gz
Nedlasting MD5 sum: 9d864a070a1e7ae320e0f6cc3a5bf160
Nedlastingsstørrelse: 10 MB
Estimert diskplass som kreves: 138 MB
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4)
FFmpeg-7.1.1, ICU-77.1, og Xorg Biblioteker
Cairo-1.18.4, docbook-xsl-nons-1.79.2, Fuse-3.17.4, JSON-C-0.18, MIT Kerberos V5-1.22.1, libusb-1.0.29, libxkbcommon-1.11.0, og Wayland-1.24.0
Cups-2.4.12, faac-1.31.1, FAAD2-2.11.2, fdk-aac-2.0.3, LAME-3.100, Linux-PAM-1.7.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.4 plattform.
Nedlasting (HTTP): https://download.gimp.org/gimp/v3.0/gimp-3.0.4.tar.xz
Nedlasting MD5 sum: eaeb6f9973a474a6b8eb168ed25d1f2a
Nedlastingsstørrelse: 26 MB
Estimert diskplass som kreves: 471 MB (183 MB installert)
Estimert byggetid: 1.2 SBU (Bruker parallellisme=4)
Engelsk versjon av hjelpefilene er fullført, men noen deler av teksten for mange andre språk kan ennå ikke være oversatt.
Nedlasting (HTTP): https://download.gimp.org/pub/gimp/help/gimp-help-3.0.0.tar.bz2
Nedlastingsstørrelse: 126 MB
Nedlasting MD5 sum: 6a45a29097c69d5cf0d86e5c9b6e5f9e
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 (engelsk)), 5.1 SBU for all språk; bruker parallellisme=4
appstream-glib-0.8.3, gegl-0.4.62, gexiv2-0.14.6, glib-networking-2.80.1, GTK-3.24.50, harfBuzz-11.4.1, libmypaint-1.6.1, librsvg-2.61.0, libtiff-4.7.0, libxml2-2.14.5 (for å bygge de oversatte hjelpefilene), Little CMS-2.17, mypaint-brushes-1.3.1, og Poppler-25.08.0 (inkludert poppler-data)
Graphviz-13.1.2, ghostscript-10.05.1 (med libgs installert), ISO Codes-4.18.0, libgudev-238, PyGObject-3.52.3, og xdg-utils-1.2.1
AAlib-1.4rc5, alsa-lib-1.2.14, AppStream-1.0.6 (for en test), Gi-DocGen-2025.4, Gjs-1.84.2, libjxl-0.11.1, libmng-2.0.3, libunwind-1.8.2, libwebp-1.6.0, Lua-5.4.8, OpenJPEG-2.5.3, 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
Hvis du oppgraderer fra en tidligere Gimp-3 installasjon, som
root bruker, fjern noen filer
og mapper fra den gamle installasjonen ellers kan
byggesystemet feilaktig plukke dem opp, og forårsake
byggefeil:
rm -rf /usr/{lib,share}/gimp/3.0 &&
rm -f /usr/share/gir-1.0/Gimp-3.0.gir &&
rm -f /usr/lib/girepository-1.0/Gimp-3.0.typelib &&
rm -f /usr/lib/libgimp*-3.0.so*
Installer Gimp ved å kjøre følgende kommandoer:
mkdir gimp-build &&
cd gimp-build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D headless-tests=disabled &&
ninja
For å teste resultatene (krever en terminal i et grafisk miljø) 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.50 installert (for
ikon hurtiglageret) og desktop-file-utils-0.28 (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 ../../gimp-help-3.0.0.tar.bz2 && cd gimp-help-3.0.0 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
-D
headless-tests=disabled: Denne bryteren
deaktiverer bruk av xvfb-run for å kjøre
testene. Uten denne bryteren mislykkes mange tester hvis
xvfb-run har
blitt installert.
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-3.0 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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/gparted/gparted-1.7.0.tar.gz
Nedlasting MD5 sum: 97305db7509dd1bf2456a1331d2380f3
Nedlastingsstørrelse: 5.1 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.16 (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.16, dosfstools-4.2, e2fsprogs (installert som del av LFS), jfsutils-1.1.15, xfsprogs-6.15.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-10.0p1.
Til valgfritt å bruke ssh-askpass-10.0p1 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.4 plattform.
Nedlasting (HTTP): https://inkscape.org/gallery/item/56344/inkscape-1.4.2.tar.xz
Nedlasting MD5 sum: 0c24e84085bed3f0237d1cdf0856a855
Nedlastingsstørrelse: 51 MB
Estimert diskplass som kreves: 783 MB (197 MB installert)
Estimert byggetid: 2.3 SBU (med parallellisme=8)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/inkscape-1.4.2-poppler_fixes-3.patch
Tarballen inkscape-1.4.2.tar.xz vil pakke ut til
mappen inkscape-1.4.2_2025-05-08_ebf0e940d0/.
Boost-1.89.0, double-conversion-3.3.1, GC-8.2.8, gsl-2.8, Gtkmm-3.24.10, libxslt-1.1.43, Poppler-25.08.0, og popt-1.19
ImageMagick-7.1.2-1 (kjøretid), Little CMS-2.17, 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.3, cssselect-1.3.0, lxml-6.0.0, NumPy-2.3.2, pySerial-3.5, og Scour-0.38.2
Aspell-0.60.8.1, dbus-1.16.2 (for å kjøre inkscape fra skript), Doxygen-1.14.0, gspell-1.14.0, GraphicsMagick, libcdr, libvisio, libwpg (eller libwpd)
Først, fiks byggefeil med nyere versjoner av poppler:
patch -Np1 -i ../inkscape-1.4.2-poppler_fixes-3.patch
Installer Inkscape 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 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.50 installert (for
ikon hurtiglageret) og desktop-file-utils-0.28 (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.
-W no-dev: Denne
parameteren deaktiverer flere advarsler kun beregnet på
prosjektutviklere.
-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.4 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 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.28 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.4 plattform.
Denne pakken har historisk sett hatt hyppige oppdateringer som adresserer sikkerhetssårbarheter. For å finne den siste status sjekk BLFS Security Advisories.
Nedlasting (HTTP): https://archive.mozilla.org/pub/thunderbird/releases/140.2.0esr/source/thunderbird-140.2.0esr.source.tar.xz
Nedlasting MD5 sum: eef18ede445b88e91fd258f4dee17bd1
Nedlastingsstørrelse: 715 MB
Estimert diskplass som kreves: 8.9 GB (276 MB installert)
Estimert byggetid: 15 SBU (på en 8 kjernes maskin)
Cbindgen-0.29.0, GTK-3.24.50, libarchive-3.8.1, LLVM-20.1.8 inkludert clang, nodejs-22.18.0, PulseAudio-17.0 (eller alsa-lib-1.2.14 hvis du redigerer mozconfig; selv om det nå er avviklet av mozilla), Python-3.13.7 (gjenoppbygd med sqlite modulen), og startup-notification-0.12
libevent-2.1.12, libvpx-1.15.2, libwebp-1.6.0, NASM-2.16.03, NSPR-4.37, og nss-3.115
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.
libproxy-0.5.10, pciutils-3.14.0 (kjøretid), Wget-1.25.0, 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
# If you wish to use libproxy to determine proxy server information, you will
# need to install the libproxy package and then uncomment the option below:
#ac_add_options --enable-libproxy
# 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
Endre en Rust fil for å tillate implisitt autoreferanse for å
forhindre en byggefeil. Den etterfølgende \r sørger for at MS-DOS formatet brukes for
den innsatte linjen, sånn at den blir konsistent med alle
andre linjer i filen:
sed -e '1i\#![warn(dangerous_implicit_autorefs)]\r' \
-i third_party/rust/allocator-api2/src/stable/vec/mod.rs
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.4 plattform.
Nedlasting (HTTP): https://github.com/TigerVNC/tigervnc/archive/v1.15.0/tigervnc-1.15.0.tar.gz
Nedlasting MD5 sum: c8b8203dab00c7862dade8d964cec258
Nedlastingsstørrelse: 2.0 MB
Estimert diskplass som kreves: 148 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.4/tigervnc-1.15.0-configuration_fixes-1.patch
Valgfri fil for å starte serveren uten en skjermbehandler: https://anduin.linuxfromscratch.org/BLFS/tigervnc/vncserver
Valgfri manualside: https://anduin.linuxfromscratch.org/BLFS/tigervnc/vncserver.1
CMake-4.1.0, FLTK-1.4.4, GnuTLS-3.8.10, libgcrypt-1.11.2, libjpeg-turbo-3.0.1, Linux-PAM-1.7.1, Pixman-0.46.4, Xorg Applikasjoner, xinit-1.4.4, og Xorg Legacy Fonts
Først må du justere konfigurasjonsfilene for å gjøre dem kompatibel med LFS systemer:
patch -Np1 -i ../tigervnc-1.15.0-configuration_fixes-1.patch
Nå, gjør pakken i samsvar med fltk-1.4.1 og senere:
sed -i "s/maximize)/::&/" vncviewer/DesktopWindow.cxx && sed -i "/FL_MINOR_VERSION/s/3/4/" CMakeLists.txt
Installer tigervnc ved å kjøre følgende kommandoer:
# Put code in place
mkdir -p unix/xserver &&
tar -xf ../xorg-server-21.1.18.tar.xz \
--strip-components=1 \
-C unix/xserver &&
( cd unix/xserver &&
patch -Np1 -i ../xserver21.patch ) &&
# Build viewer
cmake -G "Unix Makefiles" \
-D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_BUILD_TYPE=Release \
-D INSTALL_SYSTEMD_UNITS=OFF \
-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.15.0 #Install server ( cd unix/xserver/hw/vnc && make install ) && [ -e /usr/bin/Xvnc ] || ln -svf $XORG_PREFIX/bin/Xvnc /usr/bin/Xvnc
Til slutt, modifiser PAM filen til å være kompatibel med elogind:
sed -i 's/pam_systemd.so/pam_elogind.so/' /etc/pam.d/tigervnc
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.
Standardinstallasjonen av denne pakken gjør noen endringer i måten den benyttes. vncserver perl skriptet er plassert i /usr/bin/libexec og serveren er designet for å kjøres via en systemd stil .service-fil eller vncession skript som root bruker. Manualsiden for vncserver er plassert i avsnitt 8 på manualsidene. De nye prosedyrene krever at en skjermbehandler blir installerert.
For å gjenopprette den forrige oppførselen, installer de
ekstra nedlastede filene som root bruker:
install -m755 --owner=root ../vncserver /usr/bin && cp ../vncserver.1 /usr/share/man/man1
Ved å bruke de tidligere prosedyrene, de brukerspesifikke
konfigurasjonsfilene til vncserver er i .vnc mappen i brukerens hjemmemappe.
xstartup filen i den mappen er
et skript som spesifisere hvilke kommandoer som skal kjøres
når et VNC skrivebord startes. Hvis ingen xstartup fil eksisterer, vncserver vil prøve å
starte en xterm i en twm økt. En eksempel xstartup vil være:
#!/bin/sh [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources startlxqt &
xstartup filen må være kjørbar
for at kommandoer i den som skal utføres, så kjør
chmod a+x
~/.vnc/xstartup.
Sett opp vnc passwd med vncpasswd. Serveren kan da startes med vncserver kommandoen. Se manualsidene i seksjon 1 for vnc-serveren for server systemet og vncviewer for det eksterne systemet.
|
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.4 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.4/transmission-4.0.6-build_fix-1.patch
libevent-2.1.12, libpsl-0.21.5 (for å bruke systembiblioteker i stedet for medfølgende), og librsvg-2.61.0
Gtkmm-4.18.0 eller Qt-6.9.2
nodejs-22.18.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
Tilpass deretter to av tredjepartsmodulene til endringer i CMake 4.0:
sed -e 's/2.8/4.0/' -i third-party/dht/CMakeLists.txt \
third-party/libnatpmp/CMakeLists.txt
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
Neste, hvis Gtkmm-4.18.0 avhengigheten ble installert,
opprette transmission.png fra SVG filen. Som root bruker:
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 Qt-6.9.2 er installert.
-D ENABLE_GTK=OFF: Denne bryteren
deaktiverer bygging av GTK-4 grensesnittet. Standard er å
bygge den hvis Gtkmm-4.18.0 er installert.
-D ENABLE_WEB=OFF: Denne bryteren
deaktiverer bygging av nettklienten. Standard er å bygge den
hvis nodejs-22.18.0 er installert.
-D REBUILD_WEB=ON: Denne bryteren
tvinger ombygging av nettklienten. Dette alternativet trenger
nodejs-22.18.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.4 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.25/xarchiver-0.5.4.25.tar.gz
Nedlasting MD5 sum: 7c0119f53e530f31bb3b16225f0cef74
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: 0.1 SBU
7zip-25.01, cpio-2.15, LZO-2.10, UnRar-7.1.10, Zip-3.0, og unzip
BLFS gir unzip
som en symbolkobling til bsdunzip fra libarchive-3.8.1, men det fungerer
ikke for xarchiver. Tilpass xarchiver til å bruke 7zip-25.01
for behandling av .zip filer
som standard i stedet:
sed '/TOGGLE.*prefer_unzip/s/TRUE/FALSE/' -i src/pref_dialog.c
Hvis du allerede har installert og kjørt denne pakken før
(kanskje i en annen distro hvis ditt /home er en delt partisjon med den
distroen), er den sannsynligvis allerede konfigurert til å
foretrekke unzip. Deaktiver
«Prefer unzip for
zip files» avmerkingsboksen i «Action =>
Preferences» dialogen for å endre
konfigurasjon.
Installer xarchiver ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--libexecdir=/usr/lib/xfce4 \
--docdir=/usr/share/doc/xarchiver-0.5.4.25 &&
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.50 installert (for
ikon hurtiglageret) og desktop-file-utils-0.28 (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.20.4 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.4 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.4 plattform.
Denne tarballen utvides til xscreensaver-6.10 og ikke den forventede xscreensaver-6.10.1.
Nedlasting (HTTP): https://www.jwz.org/xscreensaver/xscreensaver-6.12.tar.gz
Nedlasting MD5 sum: d8ee2ef9b90a9a54bda2200a8aa82c5d
Nedlastingsstørrelse: 24 MB
Estimert diskplass som kreves: 208 MB
Estimert byggetid: 0.3 SBU (Bruke parallellisme=4)
GTK-3.24.50 og Xorg Applikasjoner
GDM-48.0, FFmpeg-7.1.1, Linux-PAM-1.7.1, MIT Kerberos V5-1.22.1, og GLE
Installer XSkjermsparer ved å kjøre følgende kommandoer:
./configure --prefix=/usr --with-elogind && 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.4 plattform.
Nedlasting (HTTP): https://www.alsa-project.org/files/pub/lib/alsa-lib-1.2.14.tar.bz2
Nedlasting MD5 sum: d0efd7930da31f0034baddc0b993fa03
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 62 MB (med tester og dokumenter)
Estimert byggetid: 0.3 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.
Hvis du kjører testpakken, fjern en test som GCC-15 eller nyere ikke klarer å bygge:
sed 's/playmidi1//' -i test/Makefile.am && autoreconf -fi
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.14.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.14/html/search &&
install -v -m644 doc/doxygen/html/*.* \
/usr/share/doc/alsa-lib-1.2.14/html &&
install -v -m644 doc/doxygen/html/search/* \
/usr/share/doc/alsa-lib-1.2.14/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.4 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.1.1, 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.4 plattform.
Nedlasting (HTTP): https://www.alsa-project.org/files/pub/utils/alsa-utils-1.2.14.tar.bz2
Nedlasting MD5 sum: d098c3d677ee80cf3d9f87783cce2e53
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 22 MB
Estimert byggetid: 0.2 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
For å automatisk lagre og gjenopprette voluminnstillinger
(hvis udev-regelen ikke fungerer for deg) når systemet
startes på nytt, installer /etc/rc.d/init.d/alsa oppstartsskriptet
fra blfs-bootscripts-20250225
pakken.
make install-alsa
|
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 et kommandolinjeverktøy som spiller av det angitte MIDI klippet fil(er) til én 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 tar opp en MIDI Clip 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 et kommandolinjeverktøy for å sende vilkårlige meldinger til ALSA MIDI sequencer porter |
|
|
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 et kommandolinjeverktøy som dumper mikrofonarrayinformasjon fra ACPI NHLT tabellen |
|
|
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.4 plattform.
Nedlasting (HTTP): https://www.alsa-project.org/files/pub/tools/alsa-tools-1.2.14.tar.bz2
Nedlasting MD5 sum: 75ef7e2b7ebcfd618a13482700a87384
Nedlastingsstørrelse: 1.9 MB
Estimert diskplass som kreves: 17 MB
Estimert byggetid: 0.2 SBU
GTK-3.24.50 (for å bygge hdajackretask), FLTK-1.4.4 (for å bygge hdspconf og hdspmixer), og GTK+-2 (for å bygge echomixer, envy24control, og rmedigicontrol)
Når du installerer flere pakker i et skript, må installasjonen 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.17p2 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.4 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.4 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 applikasjonen 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.4 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/faac/archive/v1.31.1/faac-1.31.1.tar.gz
Nedlasting MD5 sum: f9eeff03ad4a27a4973fe728ab065924
Nedlastingsstørrelse: 240 KB
Estimert diskplass som kreves: 6.0 MB
Estimert byggetid: 0.1 SBU
På GitHub har vi splittet oppstrømsdepotet til vårt eget
lfs-book navneområde og
gjenskapte en tagg for utgivelsen. Dette gjøres for å sikre
at den nedlastede tarball filnavnet er korrekt og
konsistent (dvs. det skal ikke endres når du bruker
nettleseren i stedet for et verktøy som wget). Taggen vår og
oppstrømsutgivelseskoden er på samme commit, så vi har ikke
introdusert noen endring i tarball innholdet bortsett fra
navnet på toppnivåmappen (som Git ikke sporer).
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.14 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.2 pakken og spill av den dekodede filen (krever aplay programmet fra alsa-utils-1.2.14 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.4 plattform.
Nedlasting (HTTP): https://github.com/knik0/faad2/archive/2.11.2/faad2-2.11.2.tar.gz
Nedlasting MD5 sum: 6a0ab532d81d9a528d08ab862bc4b637
Nedlastingsstørrelse: 644 KB
Estimert diskplass som kreves: 9.6 MB
Estimert byggetid: 0.2 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.14 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.4 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.4 plattform.
Nedlasting (HTTP): https://github.com/xiph/flac/releases/download/1.5.0/flac-1.5.0.tar.xz
Nedlasting MD5 sum: 0bb45bcf74338b00efeec121fff27367
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 25 MB (ytterligere 170 MB for å kjøre testpakken)
Estimert byggetid: 0.2 SBU (ytterligere 0.2 SBU to for å kjøre testpakken)
libogg-1.3.6, DocBook-utils-0.6.14, Doxygen-1.14.0, og Valgrind-3.25.1
Installer FLAC ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-thorough-tests \
--docdir=/usr/share/doc/flac-1.5.0 &&
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.4 plattform.
Nedlasting (HTTP): https://github.com/dyne/frei0r/archive/v2.3.3/frei0r-2.3.3.tar.gz
Nedlasting MD5 sum: f96f73cbf3270cbce1a22e12aeb8fb1e
Nedlastingsstørrelse: 900 KB
Estimert diskplass som kreves: 45 MB
Estimert byggetid: 0.4 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.4 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.26.5 og en av God, Dårlig, Stygg eller Libav programtillegg.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.26.5.tar.xz
Nedlasting MD5 sum: 2585de32253e8b159cbddf92b21b0261
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 62 MB (med tester)
Estimert byggetid: 0.3 SBU (Bruker parallellisme=4; med tester)
GLib-2.84.4 (GObject Introspection påkrevd for GNOME)
GTK-3.24.50 (for eksempler), gsl-2.8 (brukes av en test hvis installert), libnsl-2.0.1, libunwind-1.8.2, rustc-1.89.0 (for IEEE 1588:2008 PTP klokke støtte), Valgrind-3.25.1, 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.4 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.26.5.tar.xz
Nedlasting MD5 sum: b7213409f50916a7f8e3c5bb59ea3b2d
Nedlastingsstørrelse: 2.4 MB
Estimert diskplass som kreves: 100 MB (med tester)
Estimert byggetid: 0.7 SBU (Bruker parallellisme=4; med tester)
alsa-lib-1.2.14, CDParanoia-III-10.2 (for å bygge CDDA programtillegg), GLib-2.84.4 (med GObject Introspection), ISO Codes-4.18.0, libgudev-238, libjpeg-turbo-3.0.1, libogg-1.3.6, libpng-1.6.50, libvorbis-1.3.7, Mesa-25.1.8, Pango-1.56.4, wayland-protocols-1.45, og Xorg Biblioteker
graphene-1.10.8, GTK-3.24.50 (for eksempler), Opus-1.5.2, SDL2-2.32.8, Valgrind-3.25.1, 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.4 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.26.5.tar.xz
Nedlasting MD5 sum: 7323c4c55e82b498b16d62e23e022626
Nedlastingsstørrelse: 2.9 MB
Estimert diskplass som kreves: 115 MB (med tester)
Estimert byggetid: 0.7 SBU (Bruker parallellisme=4; med tester)
Cairo-1.18.4, FLAC-1.5.0, gdk-pixbuf-2.42.12, LAME-3.100, libsoup-3.6.5, libvpx-1.15.2, mpg123-1.33.2, NASM-2.16.03, og PulseAudio-17.0
AAlib-1.4rc5, GTK-3.24.50 (for eksempler), libdv-1.0.0, Qt-6.9.2, Speex-1.2.1, taglib-2.1.1, Valgrind-3.25.1, v4l-utils-1.30.1, Wayland-1.24.0, alsa-oss, hotdoc, JACK, libcaca, libavc1394, libiec61883, libraw1394, libshout, libsoup2, 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.4 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.26.5.tar.xz
Nedlasting MD5 sum: b4d99dc0fddc0a54d96b0389830f283f
Nedlastingsstørrelse: 7.4 MB
Estimert diskplass som kreves: 294 MB (med tester)
Estimert byggetid: 0.8 SBU (Bruker parallellisme=4; med tester)
libdvdread-6.1.3, libdvdnav-6.1.1, libva-2.22.0, og SoundTouch-2.4.0
BlueZ-5.83, cURL-8.15.0, faac-1.31.1, FAAD2-2.11.2, fdk-aac-2.0.3, GTK-3.24.50 (for eksempler), gst-plugins-good-1.26.5 (for en test), JSON-GLib-1.10.6, Little CMS-2.17, libaom-3.12.1, libass-0.17.4, libexif-0.6.25 (for en test), librsvg-2.61.0, libsndfile-1.2.2, libssh2-1.11.1, libusb-1.0.29, libwebp-1.6.0, libxkbcommon-1.11.0, libxml2-2.14.5, neon-0.35.0, Nettle-3.10.2 eller libgcrypt-1.11.2 (for SSL støtte i hls programtillegget, hvis begge ikke er installert vil OpenSSL brukes i stedet), opencv-4.12.0 (med tilleggsmoduler), OpenJPEG-2.5.3, Opus-1.5.2, Pango-1.56.4, libqrencode-4.1.1, SBC-2.1, sdl12-compat-1.2.68, Valgrind-3.25.1, både Vulkan-Loader-1.4.321 og glslc from shaderc-2025.3 (for Vulkan programtillegg), Wayland-1.24.0 (GTK-3.24.50 må bli kompilert med wayland støtte), x265-4.1, zxing-cpp-2.3.0, bs2b, Chromaprint, dssim, Flite, FluidSynth, Game Music Emu, GSM (for øyeblikket ødelagt), hotdoc, LADSPA, ldacBT, libajantv2, libavtp, libdc1394-2, libdca, libde265, libkate, libmfx, libmms, libmodplug, libnice, libofa, libopenmpt, libopenni, libsoup2, 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, og ZVBI
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. Hvis gst-plugins-good-1.26.5 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.4 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.26.5.tar.xz
Nedlasting MD5 sum: 5316ced5357c6af10ab1651084f2f09d
Nedlastingsstørrelse: 224 KB
Estimert diskplass som kreves: 9.3 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-20250815
libmpeg2-0.5.1, libcdio-2.1.0 (for CD-ROM tilgang til stasjonen), Valgrind-3.25.1, 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.4 plattform.
Nedlasting (HTTP): https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.26.5.tar.xz
Nedlasting MD5 sum: 9a5e546ca2c0b68bb1899e4f27a33f70
Nedlastingsstørrelse: 200 KB
Estimert diskplass som kreves: 10 MB
Estimert byggetid: mindre enn 0.1 SBU
FFmpeg-7.1.1 og gst-plugins-base-1.26.5
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.4 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.4/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-driver 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.4 plattform.
Nedlasting (HTTP): https://github.com/lfs-book/intel-media-driver/archive/v25.2.6/intel-media-driver-25.2.6.tar.gz
Nedlasting MD5 sum: 87fdb5bc73a6dc33cb6090dad5194f0c
Nedlastingsstørrelse: 27 MB
Estimert diskplass som kreves: 2.0 GB (289 MB installert med en enkelt GPU modell)
Estimert byggetid: 3.2 SBU (med parallellisme=4 og en enkelt GPU modell)
På GitHub har vi splittet oppstrømsdepotet til vårt eget
lfs-book navneområde og
gjenskapte en tagg for utgivelsen. Dette gjøres for å sikre
at den nedlastede tarball filnavnet er korrekt og
konsistent (dvs. det skal ikke endres når du bruker
nettleseren i stedet for et verktøy som wget). Taggen vår og
oppstrømsutgivelseskoden er på samme commit, så vi har ikke
introdusert noen endring i tarball innholdet bortsett fra
navnet på toppnivåmappen (som Git ikke sporer).
CMake-4.1.0, gmmlib-22.8.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] < /*/M> Intel Xe2 Graphics [DRM_XE] (*) Force probe xe for selected Intel hardware IDs ... [DRM_XE_FORCE_PROBE]
Se Mesa Kernel Configuration for mer informasjon om i915 driveren og Xe driveren.
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,LNL,BMG,PTL}=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,LNL,BMG,PTL}=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.14.0 og kjør lspci -nn | grep -Ei
'VGA|DISPLAY' først. Det vil gi ut noe
informasjon om GPU, inkludert PCI leverandør-ID
(8086 for Intel) og PCI
enhets-ID. For eksempel, med en Intel Core i5-11300H CPU,
utdataen er 8086:9a49. Søk nå
etter registreringen av denne enhets ID-en i
intel-media-driver kildetreet:
grep -ri 'RegisterDevice(0x9a49'
Og bestem GPU modellen fra filnavnet som inneholder
registreringen. For eksempelet ovenfor er filnavnet
media_sysinfo_g12.cpp, som
angir at modellen er GEN12.
Installer intel-media-driver ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$XORG_PREFIX \
-D CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-D INSTALL_DRIVER_SYSCONF=OFF \
-D BUILD_TYPE=Release \
-D MEDIA_BUILD_FATAL_WARNINGS=OFF \
-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.4 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] < /*/M> Intel Xe2 Graphics [DRM_XE] (*) Force probe xe for selected Intel hardware IDs ... [DRM_XE_FORCE_PROBE]
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.4 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.4 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.4 plattform.
Nedlasting (HTTP): https://storage.googleapis.com/aom-releases/libaom-3.12.1.tar.gz
Nedlasting MD5 sum: 51e4e369c41f66d2f8f1ed83e2206908
Nedlastingsstørrelse: 5.3 MB
Estimert diskplass som kreves: 125 MB (legg til 1 GB for tester)
Estimert byggetid: 0.8 SBU (med parallellitet=4, legg til 128 SBU for tester)
yasm-1.3.0 (eller NASM-2.16.03
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester 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 testdata && 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.14.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.4 plattform.
Nedlasting (HTTP): https://github.com/libass/libass/releases/download/0.17.4/libass-0.17.4.tar.xz
Nedlasting MD5 sum: 10963e702850fd888cb270abcbe852c3
Nedlastingsstørrelse: 444 KB
Estimert diskplass som kreves: 8.0 MB
Estimert byggetid: 0.1 SBU
FreeType-2.13.3 og FriBidi-1.0.16
Fontconfig-2.17.1 og NASM-2.16.03
Installer libass 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.
--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.4 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.4/libcanberra-0.30-wayland-1.patch
alsa-lib-1.2.14, gstreamer-1.26.5, og GTK-3.24.50
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.4 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 av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester 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 og senere:
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.4 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
Hvis du bygger på et i686 system, fiks et byggeproblem forårsaket av støtte for store filer:
sed '/CDIO_LSEEK/s/lseek64/lseek/' -i lib/driver/_cdio_generic.c
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.4 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.4 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.4 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.4 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.
libgstgtk4 pakken inneholder et bibliotek som binder gstreamer multimedia rammeverket til GTK-4.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/archive/gstreamer-1.26.5/gst-plugins-rs-gstreamer-1.26.5.tar.gz
Nedlasting MD5 sum: 04ee9a381d6e163b3ca1b35f4b347969
Nedlastingsstørrelse: 2.9 MB
Estimert diskplass som kreves: 831 MB (51 MB installert)
Estimert byggetid: 0.5 SBU (med parallellitet=8)
git-2.50.1, gst-plugins-base-1.26.5, GTK-4.18.6, og rustc-1.89.0
En Internett tilkobling er nødvendig for å bygge denne pakken. Systemsertifikatlageret må kanskje konfigureres med make-ca-1.16.1 før du bygger denne pakken.
Installer libgstgtk4 ved å kjøre følgende kommandoer:
cd video/gtk4 && cargo build --release
Denne pakken kommer ikke med en testpakke, men grunnleggende funksjonalitet kan testes etter installasjon.
Nå, som root bruker:
install -vm755 ../../target/release/libgstgtk4.so /usr/lib/gstreamer-1.0
For å teste den grunnleggende funksjonaliteten til pakken, utsted: gst-launch-1.0 videotestsrc num-buffers=60 ! gtk4paintablesink i en grafisk terminalemulator. Den skal spille av en testvideo i et GTK-4 vindu i 2 sekunder.
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.4 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.4/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.4 plattform.
Nedlasting (HTTP): https://download.videolan.org/contrib/libmpeg2/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.4 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.4/libmusicbrainz-5.1.0-cmake_fixes-1.patch
CMake-4.1.0, libxml2-2.14.5 og neon-0.35.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 \
-D CMAKE_POLICY_VERSION_MINIMUM=3.5 .. &&
make
Hvis du har installert Doxygen-1.14.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.4 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/ogg/libogg-1.3.6.tar.xz
Nedlasting MD5 sum: 529275432dff072f63d4ed0f1f961384
Nedlastingsstørrelse: 432 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.6 &&
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.4 plattform.
Nedlasting (HTTP): https://github.com/haasn/libplacebo/archive/v7.351.0/libplacebo-7.351.0.tar.gz
Nedlasting MD5 sum: 2bd64e3591e4689b29669cd915aa22a4
Nedlastingsstørrelse: 832 KB
Estimert diskplass som kreves: 36 MB
Estimert byggetid: 0.1 SBU (Med tester, begge ved hjelp av parallellitet=4)
Glslang-15.4.0 og Vulkan-Loader-1.4.321
Little CMS-2.17 libunwind-1.8.2, dovi_tool, Nuklear, og xxHash
Først, fiks en inkompatibilitet med Python-3.13.6 og nyere:
sed -e '204a\ tree = ET.parse(xmlfile)' \
-e 's/VkXML(ET.parse(xmlfile))/VkXML(tree.getroot())/' \
-i src/vulkan/utils_gen.py
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.4 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.14, 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.4 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.5.0, Opus-1.5.2, og libvorbis-1.3.7
alsa-lib-1.2.14, LAME-3.100, mpg123-1.33.2, Speex-1.2.1, og SQLite-3.50.4
Fiks bygging med GCC-15:
sed '/typedef enum/,/bool ;/d' -i \
src/ALAC/alac_{en,de}coder.c
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.4 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.125
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-driver-25.2.6
(for Intel GPUer som følger med Broadwell CPUer og senere),
og Mesa-25.1.8 (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 NVIDIA sin GeForce grafikkbehandlingsenheter) eller nyere GPU maskinvare er nødvendig.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 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-25.1.8 (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.14.0, Graphviz-13.1.2, og texlive-20250308 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.4 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-4.1.0, libvdpau-1.5, libva-2.22.0, og Mesa-25.1.8
Doxygen-1.14.0, Graphviz-13.1.2, og texlive-20250308 eller install-tl-unx
Installer libvdpau-va-gl ved å kjøre følgende kommandoer:
mkdir build &&
cd build &&
cmake -D CMAKE_INSTALL_PREFIX=$XORG_PREFIX \
-D CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-D CMAKE_BUILD_TYPE=Release \
-W no-dev .. &&
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.4 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.14.0 og texlive-20250308 (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.4 plattform.
Nedlasting (HTTP): https://github.com/webmproject/libvpx/archive/v1.15.2/libvpx-1.15.2.tar.gz
Nedlasting MD5 sum: 4c7a93808c12b359733430c8377b7fcf
Nedlastingsstørrelse: 5.4 MB
Estimert diskplass som kreves: 68 MB (legg til 1.6 GB for tester)
Estimert byggetid: 0.4 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.23 (sånn at configure kan finne yasm)
cURL-8.15.0 (for å laste ned testfiler) og Doxygen-1.14.0 (for å bygge dokumentasjon)
En Internett tilkobling er nødvendig for noen tester av denne pakken. Systemsertifikatlageret må kanskje settes opp med make-ca-1.16.1 før du tester denne pakken.
Hvis du oppgraderer fra en tidligere versjon av libvpx, oppdater tidsstemplene av alle filene for å forhindre at byggesystemet beholder filene fra den gamle installasjonen:
find -type f | xargs touch
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.4 plattform.
Nedlasting (HTTP): https://github.com/mltframework/mlt/releases/download/v7.32.0/mlt-7.32.0.tar.gz
Nedlasting MD5 sum: d8ade248452e023366f4a0e3d20612ca
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 30 MB
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4)
Doxygen-1.14.0, fftw-3.3.10, libexif-0.6.25, SDL2-2.32.8, 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 «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.4 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.14.0 og texlive-20250308 (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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/1.4.7/pipewire-1.4.7.tar.bz2
Nedlasting MD5 sum: e151f5f67b2f09d0b37e0b9493111ca0
Nedlastingsstørrelse: 1.8 MB
Estimert diskplass som kreves: 82 MB (med tester)
Estimert byggetid: 0.6 SBU (med tester, begge med parallellisme=4)
BlueZ-5.83, dbus-1.16.2, gstreamer-1.26.5, gst-plugins-base-1.26.5, PulseAudio-17.0, SBC-2.1, v4l-utils-1.30.1, og Wireplumber-0.5.10 (kjøretid)
alsa-lib-1.2.14, Avahi-0.8, fdk-aac-2.0.3, FFmpeg-7.1.1, libcanberra-0.30, libdrm-2.4.125 (for ett eksempel og libcamera støtte), libxcb-1.17.0, libsndfile-1.2.2, libusb-1.0.29, Opus-1.5.2, SDL2-2.32.8 (for noen eksempler), Valgrind-3.25.1, Vulkan-Loader-1.4.321, Xorg Biblioteker, Doxygen-1.14.0 og Graphviz-13.1.2 (for dokumentasjon), ffado, JACK, LC3plus, ldacBT, libcamera, libmysofa, lilv, 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.10, 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-48.0.1).
-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.4 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.14, dbus-1.16.2, elogind-255.17, GLib-2.84.4, Speex-1.2.1 og Xorg Biblioteker
Avahi-0.8, BlueZ-5.83, Doxygen-1.14.0 (for dokumentasjon), fftw-3.3.10, gst-plugins-base-1.26.5, GTK-3.24.50, libsamplerate-0.2.2, SBC-2.1 (Bluetooth støtte), Valgrind-3.25.1, check (for testing), 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=disabled \
-D tests=false \
.. &&
ninja
For å teste resultatene, kjør: ninja test. Bare de sendte XML filene blir validert fordi andre tester trenger Check som er fjernet fra LFS.
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
Hvis du har installert Wireplumber-0.5.10, sørg for å følg kommandoene for å deaktivere Pulsaudio serveren for å forhindre konflikter med Pipewire.
--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.16.2 og
SBC-2.1 er
begge installert men BlueZ-5.83 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.14.0 ikke er
installert. Fjern dette hvis du har installert dette og
ønsker å bygge dokumentasjonen.
-D tests=false: Dette
gjør at pakken kan kompilere hvis Check ikke er installert. Check er fjernet fra LFS.
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.4 plattform.
Nedlasting (HTTP): https://www.kernel.org/pub/linux/bluetooth/sbc-2.1.tar.xz
Nedlasting MD5 sum: 46e29f9c2fbd07c417194e5da60b6d48
Nedlastingsstørrelse: 268 KB
Estimert diskplass som kreves: 2.9 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.4 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.4 plattform.
Nedlasting (HTTP): https://www.libsdl.org/release/SDL2-2.32.8.tar.gz
Nedlasting MD5 sum: 7df28be966308a4a51aac87f4e0cf16a
Nedlastingsstørrelse: 7.3 MB
Estimert diskplass som kreves: 186 MB (med dokumenter)
Estimert byggetid: 0.5 SBU (bruker parallellisme=4; med dokumenter)
libxkbcommon-1.11.0, wayland-protocols-1.45, og Xorg Biblioteker (hvis disse ikke er til stede, bygges ikke de tilsvarende modulene)
alsa-lib-1.2.14, Doxygen-1.14.0 (å lage dokumentasjon), ibus-1.5.32, libsamplerate-0.2.2, libunwind-1.8.2, NASM-2.16.03, pipewire-1.4.7, 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.14.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.32.8/html && cp -Rv docs/output/html/* /usr/share/doc/SDL2-2.32.8/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.4 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.4 plattform.
Nedlasting (HTTP): https://www.surina.net/soundtouch/soundtouch-2.4.0.tar.gz
Nedlasting MD5 sum: eec20bde8f47f27f95b931ad041d5d79
Nedlastingsstørrelse: 596 KB
Estimert diskplass som kreves: 7.9 MB
Estimert byggetid: 0.2 SBU
Tarballen utvider seg til 'soundtouch' i stedet for det forventede 'soundtouch-2.4.0'
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.4.0 &&
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.4 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 VLC.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://taglib.org/releases/taglib-2.1.1.tar.gz
Nedlasting MD5 sum: 9feffe76b4643eb724185310879c3123
Nedlastingsstørrelse: 1.5 MB
Estimert diskplass som kreves: 16 MB
Estimert byggetid: 0.1 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.4 plattform.
Nedlasting (HTTP): https://www.linuxtv.org/downloads/v4l-utils/v4l-utils-1.30.1.tar.xz
Nedlasting MD5 sum: 5f85c197e5dd348b2ce49b7007ea63d8
Nedlastingsstørrelse: 1.3 MB
Estimert diskplass som kreves: 37 MB
Estimert byggetid: 0.3 SBU (bruke parallellisme=4)
alsa-lib-1.2.14, GLU-9.0.3, og libjpeg-turbo-3.0.1
Doxygen-1.14.0, Qt-6.9.2 (for qv4l2 og qvidcap), SDL2-2.32.8, både LLVM-20.1.8 (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.4 plattform.
Nedlasting (HTTP): https://gitlab.freedesktop.org/pipewire/wireplumber/-/archive/0.5.10/wireplumber-0.5.10.tar.bz2
Nedlasting MD5 sum: 2cbb662f91da2bdce31fa55bef5dfcf5
Nedlastingsstørrelse: 416 KB
Estimert diskplass som kreves: 89 MB (med tester)
Estimert byggetid: 0.3 SBU (med tester)
elogind-255.17, GLib-2.84.4, og pipewire-1.4.7
Doxygen-1.14.0, lxml-6.0.0, sphinx-8.2.3, sphinx_rtd_theme-3.0.2, 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
Til slutt, gi nytt navn til dokumentasjonsmappen til en
versjonert katalog som root
bruker:
mv -v /usr/share/doc/wireplumber{,-0.5.10}
--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, Wireplumber og Pipewire må konfigureres til å starte når et skrivebordsmiljø blir startet.
Pipewire tilbyr nå sin egen Pulseaudio
serverimplementering, som forårsaker kjøretidskonflikter
med serveren levert av Pulseaudio selv. Dette viser seg
vanligvis ved at applikasjoner henger eller ikke fungerer
når du prøver å spille av eller ta opp lyd og video. For
det første, forebygge Pulsaudio fra å starte sin egen
serverimplementering ved å kjøre følgende kommandoer som
root bruker:
rm -vf /etc/xdg/autostart/pulseaudio.desktop && rm -vf /etc/xdg/Xwayland-session.d/00-pulseaudio-x11 && sed -e '$a autospawn = no' -i /etc/pulse/client.conf
Neste lag et skallskript som vil starte Wireplumber og
Pipewire i riktig rekkefølge som root bruker:
cat > /usr/bin/pipewire-launcher.sh << "EOF"
#!/bin/sh
# Begin /usr/bin/pipewire-launcher.sh
# First, kill any previous instances of pipewire, wireplumber, or pipewire-pulse
# that are running. Multiple instances of the daemon can not be run at the same
# time, and this helps prevent possible errors if a user logs out or logs in
# too fast, and restores audio if Pipewire hangs and needs to be reset.
pkill -u ${USER} -fx /usr/bin/pipewire-pulse
pkill -u ${USER} -fx /usr/bin/wireplumber
pkill -u ${USER} -fx /usr/bin/pipewire
# Start Pipewire first.
exec /usr/bin/pipewire &
# Next, we need to wait until pipewire is up before starting wireplumber.
# This prevents a possible race condition where pipewire takes too long
# to start, as some users have run into.
while [ $(pgrep -f /usr/bin/pipewire) = "" ]; do
sleep 1
done
# Start Wireplumber now that Pipewire has been started.
exec /usr/bin/wireplumber &
# Start the Pulseaudio server included with Pipewire.
exec /usr/bin/pipewire-pulse &
# End /usr/bin/pipewire-launcher.sh
EOF
Deretter gjør du dette skallskriptet kjørbart som
root bruker:
chmod +x /usr/bin/pipewire-launcher.sh
Til slutt oppretter du en XDG Autostart fil som vil kjøre
/usr/bin/pipewire-launcher.sh
når et skrivebordsmiljø blir startet, som root bruker:
cat > /etc/xdg/autostart/pipewire.desktop << "EOF"
[Desktop Entry]
Version=1.0
Name=Pipewire
Comment=Starts the Pipewire and Wireplumber daemons
Exec=/usr/bin/pipewire-launcher.sh
Terminal=false
Type=Application
EOF
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.4 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/x264/x264-20250815.tar.xz
Nedlasting MD5 sum: a4adb6f7d2644043765885e54abc3955
Nedlastingsstørrelse: 732 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.4 plattform.
Nedlasting (HTTP): https://bitbucket.org/multicoreware/x265_git/downloads/x265_4.1.tar.gz
Nedlasting MD5 sum: f1c3c80248d8574378a4aac8f374f6de
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 39 MB
Estimert byggetid: 0.4 SBU (bruke parallellisme=4)
Fjern først noen CMake retningsinnstillinger som ikke lenger er kompatible med CMake-4.0 og nyere:
sed -r '/cmake_policy.*(0025|0054)/d' -i source/CMakeLists.txt
Installer x265 ved å kjøre følgende kommandoer:
mkdir bld &&
cd bld &&
cmake -D CMAKE_INSTALL_PREFIX=/usr \
-D GIT_ARCHETYPE=1 \
-D CMAKE_POLICY_VERSION_MINIMUM=3.5 \
-W no-dev \
../source &&
make
Denne pakken kommer ikke med en testpakke.
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
-D GIT_ARCHETYPE=1:
Denne bryteren er nødvendig fordi byggesystemet ikke vil
generere en pkg-config fil eller installere et delt bibliotek
med mindre git-2.50.1 er installert. Git kreves ikke
for noe annet i denne pakken, så denne bryteren er brukes for
å omgå det for brukere som ikke ønsker å installere Git som
en byggeavhengighet.
-D
CMAKE_POLICY_VERSION_MINIMUM=3.5: Denne bryteren
gjør at denne pakken kan bygges med cmake-4.0 eller nyere.
-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.4 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.4/xine-lib-1.2.13-upstream_fixes-1.patch
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/xine-lib-1.2.13-gcc15_fixes-1.patch
et grafiske miljø, FFmpeg-7.1.1, og minst en av: alsa-lib-1.2.14, PulseAudio-17.0, eller JACK
AAlib-1.4rc5, FAAD2-2.11.2, FLAC-1.5.0, gdk-pixbuf-2.42.12, GLU-9.0.3, ImageMagick-7.1.2-1, 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.15.2, Mesa-25.1.8, Samba-4.22.4, sdl12-compat-1.2.68, Speex-1.2.1, Doxygen-1.14.0 (for å lage API dokumentasjonen), v4l-utils-1.30.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
Neste, fiks bygging av denne pakken med gcc-15.x:
patch -Np1 -i ../xine-lib-1.2.13-gcc15_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.4 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.
Først, fiks et problem når du bygger med gcc-15:
sed -i '/typedef int bool;/d' src/encoder.h
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.4 plattform.
Nedlasting (HTTP): https://distfiles.audacious-media-player.org/audacious-4.5.tar.bz2
Nedlasting MD5 sum: 205931bb7abd8f308d75d6f433a41573
Nedlastingsstørrelse: 628 KB
Estimert diskplass som kreves: 16 MB (med GTK støtte)
Estimert byggetid: 0.2 SBU (bruker parallellisme=4; med GTK støtte)
Nødvendige programtillegg
Nedlasting (HTTP): https://distfiles.audacious-media-player.org/audacious-plugins-4.5.tar.bz2
Nedlasting MD5 sum: 34656f489242488be0ce2ca413ea2ea0
Nedlastingsstørrelse: 1.8 MB
Estimated disk space required: 36 MB (med GTK støtte)
Estimert byggetid: 0.2 SBU (bruker parallellisme=4; med GTK støtte)
mpg123-1.33.2, FFmpeg-7.1.1, og neon-0.35.0 (for tilkoblet mpg3 og ogg radio)
alsa-lib-1.2.14, cURL-8.15.0, FAAD2-2.11.2, FLAC-1.5.0, LAME-3.100, libxml2-2.14.5, libcdio-2.1.0 (for å identifisere og spille av CDer), libnotify-0.8.6, libsndfile-1.2.2, libvorbis-1.3.7, Opus-1.5.2, pipewire-1.4.7, PulseAudio-17.0, SDL2-2.32.8, 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.5.tar.bz2 &&
cd audacious-plugins-4.5 &&
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D gtk=true \
-D qt=true \
-D opus=false \
-D wavpack=false &&
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.4 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.4/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 |
KWave pakken inneholder en KDE Rammeverk basert lyd redigeringsapplikasjon.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://download.kde.org/stable/release-service/25.08.0/src/kwave-25.08.0.tar.xz
Nedlasting MD5 sum: 4c40db05a66ddfcfedb9fb9143cbecaf
Nedlastingsstørrelse: 6.2 MB
Estimert diskplass som kreves: 87 MB
Estimert byggetid: 1.2 SBU (bruke parallellisme=4)
AudioFile-0.3.6, fftw-3.3.10, id3lib-3.8.3, og KDE Frameworks-6.17.0
alsa-lib-1.2.14, FLAC-1.5.0, libogg-1.3.6, og PulseAudio-17.0
Installer KWave 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
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.4 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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/mpg123/mpg123-1.33.2.tar.bz2
Nedlasting MD5 sum: 368a249cf2e8ceef45a7a988af9c08d6
Nedlastingsstørrelse: 1.1 MB
Estimert diskplass som kreves: 12 MB (med tester)
Estimert byggetid: 0.2 SBU (med tester)
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.4 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.18.0, JSON-GLib-1.10.6, 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.4 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.4 plattform.
Nedlasting (HTTP): https://downloads.xiph.org/releases/vorbis/vorbis-tools-1.4.3.tar.gz
Nedlasting MD5 sum: 2057a2f8778d4913ceb169268abf23d4
Nedlastingsstørrelse: 1.7 MB
Estimert diskplass som kreves: 14 MB
Estimert byggetid: 0.1 SBU
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.4 plattform.
Nedlasting (HTTP): https://ffmpeg.org/releases/ffmpeg-7.1.1.tar.xz
Nedlasting MD5 sum: 26f2bd7d20c6c616f31d7130c88d7250
Nedlastingsstørrelse: 11 MB
Estimert diskplass som kreves: 205 MB (legg til 1.7 GB for FATE pakke/tester, legg til 869 MB for dokumentasjon)
Estimert byggetid: 1.2 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,2 SBU for doxygen dokumenter)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/ffmpeg-7.1.1-chromium_method-1.patch
libaom-3.12.1, libass-0.17.4, fdk-aac-2.0.3, FreeType-2.13.3, LAME-3.100, libvorbis-1.3.7, libvpx-1.15.2, Opus-1.5.2, x264-20250815, x265-4.1, og NASM-2.16.03 eller yasm-1.3.0
alsa-lib-1.2.14, libva-2.22.0, og SDL2-2.32.8
libvdpau-1.5 og libvdpau-va-gl-0.4.2
Doxygen-1.14.0, Fontconfig-2.17.1, FriBidi-1.0.16, frei0r-2.3.3, libcdio-2.1.0 (å identifisere og spille av CDer), libdrm-2.4.125 (for «kmsgrab» inndata), libjxl-0.11.1, libplacebo-7.351.0 (for maskinvareakselererte fargerom og HDR tonemapping), libwebp-1.6.0, OpenJPEG-2.5.3, GnuTLS-3.8.10, PulseAudio-17.0, Samba-4.22.4, Speex-1.2.1, texlive-20250308 (eller install-tl-unx) for PDF og PS dokumentasjon, v4l-utils-1.30.1, Vulkan-Loader-1.4.321, 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.1.1-chromium_method-1.patch
Installer FFmpeg ved å kjøre følgende kommandoer:
./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-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-libx265 \
--enable-openssl \
--ignore-tests=enhanced-flv-av1 \
--docdir=/usr/share/doc/ffmpeg-7.1.1 &&
make &&
gcc tools/qt-faststart.c -o tools/qt-faststart
HTML dokumentasjon ble bygget i forrige trinn. Hvis du har texlive-20250308 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.14.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.1.1 && install -v -m644 doc/*.txt /usr/share/doc/ffmpeg-7.1.1
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.1.1 && install -v -m644 doc/*.ps /usr/share/doc/ffmpeg-7.1.1
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.1.1/api &&
cp -vr doc/doxy/html/* /usr/share/doc/ffmpeg-7.1.1/api &&
find /usr/share/doc/ffmpeg-7.1.1/api -type f -exec chmod -c 0644 \{} \; &&
find /usr/share/doc/ffmpeg-7.1.1/api -type d -exec chmod -c 0755 \{} \;
For å teste installasjonen riktig må du ha rsync-3.4.1 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.125 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.14.0 er installert og du ikke
ønsker å bygge html dokumentasjonen.
--enable-libpulse: Aktiverer
støtte for Pulseaudio for
lydutdata.
--enable-libplacebo: Aktiverer
støtte for libpulse for
maskinvareakselererte fargerom.
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.4 plattform.
Nedlasting (HTTP): https://github.com/mpv-player/mpv/archive/v0.40.0/mpv-0.40.0.tar.gz
Nedlasting MD5 sum: 1c1823dedca2cf4cd0a44c94637fa31b
Nedlastingsstørrelse: 3.4 MB
Estimert diskplass som kreves: 31 MB
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4)
alsa-lib-1.2.14, FFmpeg-7.1.1, libass-0.17.4, libplacebo-7.351.0, Mesa-25.1.8, og PulseAudio-17.0
libjpeg-turbo-3.0.1, libva-2.22.0, libvdpau-1.5, luajit-20250816, uchardet-0.0.8, og Vulkan-Loader-1.4.321
libdvdcss-1.4.3, libdvdread-6.1.3, libdvdnav-6.1.1, og libbluray
pipewire-1.4.7, SDL2-2.32.8, 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.50 installert (for
ikon hurtiglageret) og desktop-file-utils-0.28 (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.4 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.4/vlc-3.0.21-taglib-1.patch
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/vlc-3.0.21-fedora_ffmpeg7-1.patch
alsa-lib-1.2.14, desktop-file-utils-0.28, FFmpeg-7.1.1, liba52-0.8.0, libgcrypt-1.11.2 libmad-0.15.1b, Lua-5.4.8, og et grafiske miljø
dbus-1.16.2, libidn-1.43, og libssh2-1.11.1
libarchive-3.8.1, libcddb-1.3.2, libdv-1.0.0, libdvdcss-1.4.3, libdvdread-6.1.3, libdvdnav-6.1.1, libproxy-0.5.10, opencv-4.12.0, Samba-4.22.4, v4l-utils-1.30.1, libbluray, libdc1394, libnfs, libraw1394, Live555, og VCDImager (krever libcdio-2.1.0)
libogg-1.3.6, Game Music Emu, libdvbpsi, libshout, libmatroska (krever libebml), libmodplug, Musepack, og sidplay-libs
FAAD2-2.11.2, FLAC-1.5.0, libaom-3.12.1, libass-0.17.4, libmpeg2-0.5.1, libpng-1.6.50, libva-2.22.0, libvorbis-1.3.7, Opus-1.5.2, Speex-1.2.1, libvpx-1.15.2, x264-20250815, aribb24, dav1d, Dirac, FluidLite, FluidSynth, libdca, libkate, libtheora, OpenMAX, Schroedinger, Shine, SoX, Tremor, Twolame, og Zapping VBI
AAlib-1.4rc5, Fontconfig-2.17.1, FreeType-2.13.3, FriBidi-1.0.16, libplacebo-7.351.0 (for øyeblikket ødelagt), librsvg-2.61.0, libvdpau-1.5, sdl12-compat-1.2.68, libcaca, og libmfx
PulseAudio-17.0, libsamplerate-0.2.2, spatialaudio, og JACK
FreeRDP-3.17.0, libtar, libvncclient, og LIRC
GnuTLS-3.8.10, libnotify-0.8.6, libxml2-2.14.5, Protobuf-32.0, taglib-2.1.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
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.50 installert (for
ikon hurtiglageret) og desktop-file-utils-0.28 (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.1 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 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.4 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.15.0, AAlib-1.4rc5, LIRC, og libcaca
Installer xine Brukergrensesnitt ved å kjøre følgende kommandoer:
./configure --prefix=/usr && make CC="gcc -std=gnu17"
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.50 installert (for
ikon hurtiglageret) og desktop-file-utils-0.28 (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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/cdrdao/cdrdao-1.2.5.tar.bz2
Nedlasting MD5 sum: 45adc4da3d7299471c01e14b80184e36
Nedlastingsstørrelse: 852 KB
Estimert diskplass som kreves: 74 MB
Estimert byggetid: 0.2 SBU (Bruker parallellisme-4)
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 CC="gcc -std=gnu17"
Denne pakken kommer ikke med en testpakke.
Nå, som root bruker:
make install && install -v -m755 -d /usr/share/doc/cdrdao-1.2.5 && install -v -m644 README /usr/share/doc/cdrdao-1.2.5
--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.4 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.4 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/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)
Først, installer en oppdatering som fikser flere feil og retter kompilering med nyere versjoner av glibc og kjernedeklarasjonene:
patch -Np1 -i ../dvd+rw-tools-7.1-consolidated_fixes-1.patch
Installer dvd+rw-tools ved å kjøre følgende kommandoer:
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
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.4 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.14.0 (for å generere HTML dokumentasjon)
Først, fiks et problem når du bygger med gcc-15:
sed -i 's/catch_int ()/catch_int (int signum)/' test/poll.c
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.4 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.14.0 (for å generere HTML dokumentasjonen), Tk-8.6.16 (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.4 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.14.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.4 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/cups/releases/download/v2.4.12/cups-2.4.12-source.tar.gz
Nedlasting MD5 sum: 1f9281c661b95acc7925a220919210e2
Nedlastingsstørrelse: 7.8 MB
Estimert diskplass som kreves: 77 MB (Legg til 48 MB for tester)
Estimert byggetid: 0.2 SBU (Legg til 1.3 SBU for tester)
colord-1.4.8, dbus-1.16.2, libusb-1.0.29, Linux-PAM-1.7.1, og xdg-utils-1.2.1
Avahi-0.8, libpaper-2.2.6, PHP-8.4.11, og Python2
Gutenprint-5.3.5 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.5) 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-rcdir=/tmp/cupsinit \
--with-rundir=/run/cups \
--with-system-groups=lpadmin \
--with-docdir=/usr/share/cups/doc-2.4.12 &&
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 en annen forekomst av Cups ikke kjører, ellers vil minst 4 tester mislykkes med "address in use".
Nå, som root bruker:
make install && ln -svnf ../cups/doc-2.4.12 /usr/share/doc/cups-2.4.12
Fjern det leverte oppstartskriptet, som er inkompatibelt med LFS:
rm -rf /tmp/cupsinit
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.50 installert og
utstede følgende kommando som root bruker:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor
--with-rcdir=/tmp/cupsinit:
Denne bryteren forteller byggeprosessen å installere det
sendte oppstartskriptet i /tmp
i stedet for /etc/rc.d.
--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.29, 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.05.1 for å konvertere PostScript til rasterbilder og en driver (f.eks. fra Gutenprint-5.3.5) for å konvertere det resulterende rasterbildet til en form som skriveren forstår. Foomatic drivere bruker ghostscript-10.05.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
Hvis du vil at Cups utskriftstjeneste skal starte automatisk når systemet startes opp, installer init skriptet inkludert i blfs-bootscripts-20250225 pakken:
make install-cups
|
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.4 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/cups-browsed/releases/download/2.1.1/cups-browsed-2.1.1.tar.xz
Nedlasting MD5 sum: 293948973ebfc7ef4d5d8242d5733181
Nedlastingsstørrelse: 412 KB
Estimert diskplass som kreves: 5.3 MB
Estimert byggetid: mindre enn 0.1 SBU (Bruker parallellisme=4)
Avahi-0.8, libcupsfilters-2.1.1 og libppd-2.1.1
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.1.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.
--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.1.1 og libppd-2.1.1 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.4 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.1.1 og libppd-2.1.1
cups-browsed-2.1.1 (hvis du trenger nettverk Oppdagelsesmuligheter)
Først, fiks et problem når du bygger med gcc-15:
sed -i '/proc_func)()/s/()/(FILE*, FILE*, void*)/' filter/foomatic-rip/process.h
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.4 plattform.
Nedlasting (HTTP): https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10051/ghostscript-10.05.1.tar.xz
Nedlasting MD5 sum: c26a0415b3f18d7ca7825ce64f0ca6c4
Nedlastingsstørrelse: 65 MB
Estimert diskplass som kreves: 294 MB (med fonter og libgs.so)
Estimert byggetid: 1.3 SBU (Bruker parallellisme=4; med libgs.so)
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/ghostscript-10.05.1-gcc15_fixes-1.patch
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.12 (nødvendig for å bygge «cups» enhetens bakstykke, som er nødvendig av cups-filters), Fontconfig-2.17.1 (nødvendig hvis du installerer noen foreslåtte skriftfonter), FreeType-2.13.3, Little CMS-2.17, libjpeg-turbo-3.0.1, libpng-1.6.50, libtiff-4.7.0, og OpenJPEG-2.5.3
Cairo-1.18.4, GTK-3.24.50, libidn-1.43, libpaper-2.2.6, libwebp-1.6.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
Bruk en oppdatering for å forhindre et problem når du bygger med gcc-15:
patch -Np1 -i ../ghostscript-10.05.1-gcc15_fixes-1.patch
Kompilere Ghostscript:
rm -rf zlib &&
./configure --prefix=/usr \
--disable-compile-inits \
--with-system-libtiff &&
make
Det delte biblioteket avhenger av GTK-3.24.50. Den brukes kun av eksterne programmer som asymptote-3.05, dvisvgm-3.5, og ImageMagick-7.1.2-1.
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.05.1 /usr/share/doc/ghostscript-10.05.1 && rmdir /usr/share/doc/ghostscript && cp -r examples/ -T /usr/share/ghostscript/10.05.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.05.1/examples .
For å gjøre dette, kjør følgende kommando (i en X
Windows-skjerm):
gs -q -dBATCH /usr/share/ghostscript/10.05.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.7.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.05.1 /usr/share/doc/ghostscript-10.05.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.12 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.12. 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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/gimp-print/gutenprint-5.3.5.tar.xz
Nedlasting MD5 sum: 18968a1376a0fb0155afea4ce832d7fd
Nedlastingsstørrelse: 5.4 MB
Estimert diskplass som kreves: 71 MB (uten tester)
Estimert byggetid: 0.3 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.2-1, texlive-20250308 (eller install-tl-unx), Doxygen-1.14.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.3.5 i mars 2025) dette trengte 292 SBU og 3,8 GB for å fullføre testene. Merk at testene bare brukte én CPU.
Nå, som root bruker:
make install &&
install -v -m755 -d /usr/share/doc/gutenprint-5.3.5/api/gutenprint{,ui2} &&
install -v -m644 doc/gutenprint/html/* \
/usr/share/doc/gutenprint-5.3.5/api/gutenprint &&
install -v -m644 doc/gutenprintui2/html/* \
/usr/share/doc/gutenprint-5.3.5/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):
/etc/rc.d/init.d/cups restart
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.4 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/libcupsfilters/releases/download/2.1.1/libcupsfilters-2.1.1.tar.xz
Nedlasting MD5 sum: 1e3144c242e7ddcee112d41c79266885
Nedlastingsstørrelse: 1.4 MB
Estimert diskplass som kreves: 39 MB (med tester)
Estimert byggetid: 0.1 SBU (Bruker parallellisme=4; med tester)
Cups-2.4.12, GLib-2.84.4, ghostscript-10.05.1 eller mupdf-1.26.5, Little CMS-2.17, Poppler-25.08.0, og Qpdf-12.2.0
Dejavu fonts (byggingen mislykkes hvis de ikke er installert, selv om de bare er nødvendige for testene), libexif-0.6.25, libjpeg-turbo-3.0.1, libpng-1.6.50, og libtiff-4.7.0
Installer libcupsfilters ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--disable-static \
--docdir=/usr/share/doc/libcupsfilters-2.1.1 &&
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.4 plattform.
Nedlasting (HTTP): https://github.com/OpenPrinting/libppd/releases/download/2.1.1/libppd-2.1.1.tar.xz
Nedlasting MD5 sum: 65accc86f9956a1160937b14e0f516a6
Nedlastingsstørrelse: 576 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.1.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.
--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.4 plattform.
Nedlasting (HTTP): https://anduin.linuxfromscratch.org/BLFS/sane/sane-backends-1.4.0.tar.gz
Nedlasting MD5 sum: fddb8b164ff1b1ffb576c9ba4173610d
Nedlastingsstørrelse: 7.2 MB
Estimert diskplass som kreves: 214 MB (Legg til 58 MB for tester)
Estimert byggetid: 0.4 SBU (Bruker parallellisme=4; legg til 0.1 SBU for 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.12, libjpeg-turbo-3.0.1, libtiff-4.7.0, libusb-1.0.29, v4l-utils-1.30.1, Net-SNMP, libieee1284, libgphoto2, og texlive-20250308 (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.29 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.29, 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.4.0" &&
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.4 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.8, itstool-2.0.7, libgusb-0.4.9, libadwaita-1.7.6, libwebp-1.6.0, og SANE-1.4.0
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.4 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.4/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.4 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
Pakkekilden er distribuert i zip format og krever unzip (faktisk en
symbolkobling til 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.4 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
Pakkekilden er distribuert i zip format og krever unzip (faktisk en
symbolkobling til 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.4 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.4/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.4 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.4/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.4 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.4 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.4/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.23 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.4 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
Pakkekilden er distribuert i zip format og krever unzip (faktisk en
symbolkobling til 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.4 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
Fortsatt som root bruker, lag
de individuelle mappene:
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
install -v -d -m755 /etc/xml &&
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 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.4 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.4/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.15 (å produsere «webhelp» dokumenter), libxslt-1.1.43 (eller en hvilken som helst annen XSLT prosessor), for å behandle Docbook dokumenter, Ruby-3.4.5 (for å bruke «epub» stilark), Zip-3.0 (for å produsere «epub3» dokumenter), og Saxon6 og Xerces2 Java (brukt med apache-ant-1.10.15 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
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
DocBook XSL Stylesheets (Namespaced) pakken inneholder XSL stilark. Disse er nyttige for å utføre transformasjoner på XML DocBook 5.0 filer.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.4 plattform.
Nedlasting (HTTP): https://github.com/docbook/xslt10-stylesheets/releases/download/release/1.79.2/docbook-xsl-1.79.2.tar.bz2
Nedlasting MD5 sum: 4a400f0264a19329c7f95f69e098744a
Nedlastingsstørrelse: 23 MB
Estimert diskplass som kreves: 49 MB
Estimert byggetid: less than 0.1 SBU
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/docbook-xsl-1.79.2-stack_fix-1.patch
apache-ant-1.10.15 (for å produsere «webhelp» dokumenter), libxslt-1.1.43 (eller en hvilken som helst annen XSLT prosessor), for å behandle Docbook dokumenter, Ruby-3.4.5 (for å utnytte «epub» stilark), Zip-3.0 (for å produsere «epub3» dokumenter), og Saxon6 og Xerces2 Java (brukt med apache-ant-1.10.15 for å utnytte «webhelp» dokumenter)
Først, fiks et problem som forårsaker stabeloverflyt når du gjør rekursjon:
patch -Np1 -i ../docbook-xsl-1.79.2-stack_fix-1.patch
BLFS installerer ikke de nødvendige pakkene for å kjøre testpakken og gi meningsfulle resultater.
Installer DocBook XSL
Stylesheets ved å kjøre følgende kommandoer som
root bruker:
install -v -m755 -d /usr/share/xml/docbook/xsl-stylesheets-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-1.79.2 &&
ln -s VERSION /usr/share/xml/docbook/xsl-stylesheets-1.79.2/VERSION.xsl
Dokumentasjonen for denne pakken er delt med dens ikke-namespaced motpart, docbook-xsl-nons-1.79.2 pakken. Installer sistnevnte hvis du ønsker dokumentasjonen.
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/1.79.2" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteSystem" \
"https://cdn.docbook.org/release/xsl/1.79.2" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"http://cdn.docbook.org/release/xsl/1.79.2" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"https://cdn.docbook.org/release/xsl/1.79.2" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteSystem" \
"http://cdn.docbook.org/release/xsl/current" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteSystem" \
"https://cdn.docbook.org/release/xsl/current" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"http://cdn.docbook.org/release/xsl/current" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"https://cdn.docbook.org/release/xsl/current" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteSystem" \
"http://docbook.sourceforge.net/release/xsl-ns/current" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/etc/xml/catalog &&
xmlcatalog --noout --add "rewriteURI" \
"http://docbook.sourceforge.net/release/xsl-ns/current" \
"/usr/share/xml/docbook/xsl-stylesheets-1.79.2" \
/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.4 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, fiks noen kompatibilitetsproblemer med Python-3.12 og nyere:
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.4 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.43
fop-2.11, 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-2.30 ikke
er installert, med mindre du har ELinks installert, og ønsker å
bruke den til etterbehandling av tekst bakstykke. Hvis du
ønsker ELinks, bør du fjerne denne miljøvariabelen.
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.4 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-20250308 (eller install-tl-unx)
Installer Enscript ved å kjøre følgende kommandoer:
./configure --prefix=/usr \
--sysconfdir=/etc/enscript \
--localstatedir=/var \
--with-media=Letter &&
make CC="gcc -std=gnu17" &&
pushd docs &&
makeinfo --plaintext -o enscript.txt enscript.texi &&
popd
Hvis du har texlive-20250308 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.4 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.50 og Poppler-25.08.0
Cups-2.4.12 (for å få tilgang til utskriftskøer), desktop-file-utils-0.28, 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.14.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.50 installert (for
ikon hurtiglageret) og desktop-file-utils-0.28 (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.4 plattform.
Nedlasting (HTTP): https://archive.apache.org/dist/xmlgraphics/fop/source/fop-2.11-src.tar.gz
Nedlasting MD5 sum: b202dcd7c6dcaf3ec5d14bb193d7bf01
Nedlastingsstørrelse: 21 MB
Estimert diskplass som kreves: 343 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
libarchive-3.8.1 (nødvendig for utpakking av OFFO orddeling mønstre)
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 package 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.11 && cp -vR build conf examples fop* javadocs lib /opt/fop-2.11 && chmod a+x /opt/fop-2.11/fop && ln -v -sfn fop-2.11 /opt/fop
Til slutt fjerner du den midlertidige kopien av Apache Maven:
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.11
/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.4 plattform.
Nedlasting (HTTP): https://www.mupdf.com/downloads/archive/mupdf-1.26.5-source.tar.gz
Nedlasting MD5 sum: 21a90d14b7e546ba1b926954d11b0111
Nedlastingsstørrelse: 62 MB
Estimert diskplass som kreves: 352 MB
Estimert byggetid: 0.2 SBU (Bruke parallellisme=4)
Freeglut-3.6.0, harfBuzz-11.4.1, libjpeg-turbo-3.0.1, OpenJPEG-2.5.3, og cURL-8.15.0
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 # lcms2mt is strongly preferred USE_SYSTEM_LIBJPEG := yes USE_SYSTEM_MUJS := no # build needs source anyway USE_SYSTEM_OPENJPEG := yes USE_SYSTEM_ZLIB := yes USE_SYSTEM_GLUT := yes 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.26.5 \
install &&
ln -sfv libmupdf.so.26.5 /usr/lib/libmupdf.so.26 &&
ln -sfv libmupdf.so.26 /usr/lib/libmupdf.so &&
chmod 755 /usr/lib/libmupdf.so.26.5 &&
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.4 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
Løs først et problem med glib-2.81.0 eller nyere:
sed -i -r 's/g_utf8_(next|offset)/(char*) &/' src/paps.cc
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-20250308 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-3.05, biber-2.21, dvisvgm-3.5, 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/2025.
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/')
TEXLIVE_PREFIX=/opt/texlive/2025
cat > /etc/profile.d/texlive.sh << EOF
# Begin texlive setup
TEXLIVE_PREFIX=/opt/texlive/2025
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
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-20250308 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
2025/ 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.4 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: 90 MB for vanlig TeX, typisk 323 MB for latex og senere motorer, 9.0 GB hvis alt er inkludert
Estimert byggetid: varierer, avhengig av nettverkshastighet og trafikk
GnuPG-2.4.8 (for å validere både de første nedlastingene, og også eventuelle oppdateringer du senere kan gjøre ved å bruke tlmgr) og libwww-perl-6.79 (å 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.05.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 xindy er knyttet til libcrypt.so.1 fra den gamle versjonen av
glibc. For å bruke
applikasjonen, følg Notat om bare binære applikasjoner i
libxcrypt i LFS
Kapittel 8 for å installere kryptbibliotekets ABI versjon
1.
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.4.5 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.16 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.05.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 teamet 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 brukeren kan
chown /opt/texlive/2025 til
den brukeren før brukeren starter installasjonen. Hvis
senere endring i den mappen er laget av root bruker, vil det endre eieskapet, som
bryter bruken av vanlig bruker.
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. Tiden for å fullføre nedlastingen vil avhenge av Internetttilkoblingshastigheten din og antallet pakker som er valgt.
For en minimal installasjon som vil bygge dokumentasjon som er referert til i BLFS, de eneste installasjonssamlingene som trengs er '[a] Essential programs and files' og '[D] LaTeX fundamental packages'. Dette vil last ned ca 132 filer og bruk ca 323 MB. Brukere kan velge andre samlinger etter behov, men en full installasjon vil laste ned flere tusen filer og bruker over 8 GB.
Etter installasjonen må PATH miljøvariabelen bli oppdatert, og andre variabler må angis. Vennligst referer til Sette PATH for TeX Live for å angi disse miljøvariablene.
./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/2025 eller systems/texlive/2025 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.4 plattform.
Nedlasting (HTTP): https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2025/texlive-20250308-source.tar.xz
Nedlasting MD5 sum: 699b3a9871885e54f35c155332d69da4
Nedlastingsstørrelse: 106 MB
Estimert diskplass som kreves: 9.8 GB inkludert tilleggsnedlastingen og testene, 8.7 GB installert
Estimert byggetid: 4.0 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/2025/texlive-20250308-texmf.tar.xz
Nedlasting MD5 sum: 9b3093da81e6eacf98fde86589471a22
Nedlastingsstørrelse: 4.4 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.math.utah.edu/pub/tex/historic/systems/texlive/2025/texlive-20250308-extra.tar.xz
Nedlasting MD5 sum: 8aabf4273a001d79c3c8de347f028145
Nedlastingsstørrelse: 2.0 MB
Nødvendig oppdatering: https://www.linuxfromscratch.org/patches/blfs/12.4/texlive-20250308-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.4, Fontconfig-2.17.1, FreeType-2.13.3, Graphite2-1.3.14, harfBuzz-11.4.1 (bygget med graphite2 aktivert), ICU-77.1, libpaper-2.2.6 (brukt av minst context og xelatex), og libpng-1.6.50
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.4.5 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.16 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.05.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-20250308-source-upstream_fixes-1.patch &&
mkdir texlive-build &&
cd texlive-build &&
../configure CC="gcc -std=gnu17" -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-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. En annen test, xdvipdfm-pdf.test, er kjent for å feile på
grunn av en manglende binærfil fra fiksen i oppstrøms sin
oppdatering. Dette påvirker ikke programmets funksjonalitet.
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-20250308-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-20250308-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-48.1 or dvisvgm-3.5 å 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-3.05, biber-2.21, dvisvgm-3.5 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-20250308-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.
mktexlsr:
Opprett en ls-R fil som viser
hva som ble installert - dette brukes av kpathsea for å finne
filer.
fmtutil-sys --all: Dette initialiserer TeX formatene, Metafont baser og Metapost mems.
--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.
|
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.4 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/asymptote/asymptote-3.05.src.tgz
Nedlasting MD5 sum: 740eb38f419c870c6532dc1fbad074e1
Nedlastingsstørrelse: 30 MB
Estimert diskplass som kreves: 339 MB (56 MB installert etter å ha overskrevet filer i $TEXLIVE_PREFIX/texmf-dist/, med alle avhengighetene som er i BLFS)
Estimert byggetid: 0.8 SBU (bruke parallellisme=4)
ghostscript-10.05.1 og texlive-20250308
cURL-8.15.0, Freeglut-3.6.0, GC-8.2.8, GLEW-2.2.0, GLM-1.0.1 og libtirpc-1.3.6
dvisvgm-3.5 for å tillate svg utdata
fftw-3.3.10, gsl-2.8, libsigsegv-2.15, både Boost-1.89.0 og rapidjson for å bruke LSP som kan brukes med emacs, click, og eigen
ImageMagick-7.1.2-1 å konvertere utdata til andre formater som f.eks JPEG eller for å lage animerte GIFer, PyQt5 (ikke testet, har en byggeavhengighet av Qt5) 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.4 plattform.
Nedlasting (HTTP): https://github.com/plk/biber/archive/v2.21/biber-2.21.tar.gz
Nedlasting MD5 sum: abdbdb2aa0479e490d0d75eb8e35ad50
Nedlastingsstørrelse: 1.6 MB
Estimert diskplass som kreves: 14 MB (installerer 1.2MB 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/2025 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.012, Business-ISMN-1.205, Business-ISSN-1.008, 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.91, Text-CSV-2.06, 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.72
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.4 plattform.
Nedlasting (HTTP): https://github.com/mgieseki/dvisvgm/releases/download/3.5/dvisvgm-3.5.tar.gz
Nedlasting MD5 sum: e5d256e866f307d6b63a95390fee2cd7
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.05.1, Potrace-1.16, og texlive-20250308
asciidoc-10.2.1 med xmlto-0.0.29 og libxslt-1.1.43 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:
TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &&
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.4 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.4/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-20250308 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-2025 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
Se også 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
Se også 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
Se også 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