Počítačová hra Factorio (Wikipedie) nově běží nativně na ARM64 Linuxu a headsetu Steam Frame.
Fugleramme, v překladu 'ptačí rámeček', je open-source projekt postavený na Raspberry Pi, který pomocí lokální umělé inteligence BirdNET-Go rozpoznává ptačí druhy podle jejich zpěvu a na displeji následně zobrazuje koláž tvořenou odpovídajícími ilustracemi. Databáze obsahuje přes 800 ručně vybraných historických přírodovědných ilustrací více než 400 druhů ptáků.
… více »Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 18.0. Přidáno bylo 13 007 nových znaků. Celkově jich je 172 808. Přibylo 9 nových Emoji.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 169 (pdf).
Byla vydána nová verze 6.4 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.
Německý kancléř Friedrich Merz (CDU) se během debaty s finalisty studentské vědecké soutěže Jugend forscht vyjádřil pro konec anonymity na internetu a vyslovil názor, že pro uživatele Internetu by měla platit podobná právní odpovědnost jako pro novináře tradičních médií. Na dotaz studenta, jak by se tedy povinnost uvádět pravé jméno slučovala s prací investigativních novinářů nebo ochranou jejich zdrojů, Merz neodpověděl, ve své
… více »Společnost Fujitsu představila FUJITSU-MONAKA CPU a Fujitsu MONAKA Server. Navrženo, vyvinuto a vyrobeno v Japonsku. Pro suverénní AI infrastrukturu.
Předprodej v květnu představených notebooků Googlebook, nástupců notebooků Chromebook, bude spuštěn v pondělí 21. září.
Byla vydána betaverze Fedora Linuxu 45 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 20. října. S konzolí kmscon místo fbcon. Současně byla vydána betaverze Fedora Linux Asahi Remixu 45. S podporou čipů M3.
Po půl roce vývoje od vydání verze 50 bylo vydáno GNOME 51 s kódovým názvem "A Coruña" (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře. Videopředstavení na PeerTube a YouTube.
src_prepare, oddělení konfigurační fáze z funkce src_compile do src_configure, možnost úpravy názvů souborů stahovaných do distfiles a volání výchozích definicí jednotlivých fází a další novinky.doman podporuje jazykyO tom, co je to EAPI a jak zvolit použitou verzi, se dočtete v předchozím díle seriálu: Gentoo ebuild - 7 (EAPI 1, QA kontroly, binární balíčky). Podpora EAPI 2 byla přidána jako první do Paludisu 0.30.1, pkgcore 0.4.7.9 a poté do Portage 2.2_rc11.
Poznámka: následující text předpokládá základní znalosti o závislostech ebuildů, které poskytuje 6. díl tohoto seriálu: Gentoo ebuild - 6 (závislosti, sloty, restrikce).
Tato novinka vám v ebuildu umožní specifikovat závislost na USE-flagu u balíčku, na kterém ebuild závisí. Představte si, že váš ebuild závisí na programu, který poskytuje jiný balíček (třeba app-test/showcase), ale jen za předpokladu, že byl sestaven s povoleným USE-flagem "X". V takovém případě je vhodné závislost uvést následujícím způsobem:
app-test/showcase[X]
Balíčkovací systém při instalaci vašeho ebuildu ověří, zda máte v systému balíček app-test/showcase zkompilovaný s USE="X" a vypíše chybu ve dvou případech: buď pokud tuto podmínku nesplňujete a máte balíček nainstalovaný bez tohoto USE-flagu, anebo pokud balíček nemáte nainstalovaný a se současným nastavením by se býval nainstaloval bez požadovaného USE-flagu.
Ebuild může samozřejmě záviset na více USE najednou a také může vyžadovat určitý USE-flag vypnutý, například takto:
app-test/showcase[mp3,ogg,-qt4,-X]
Zvláštní zápis
app-test/showcase[qt4?]
je ekvivalentem
qt4? ( app-test/showcase[qt4] ) !qt4? ( app-test/showcase )
a používá se tehdy, když váš ebuild obsahuje stejný USE-flag (qt4) jako jeho závislost (která je v této ukázce stále app-test/showcase), a vy chcete sestavit následující podmínku: když je USE-flag zapnutý u vašeho ebuildu, bude jej vyžadovat i u závislosti, pokud ovšem zapnutý není, tak na tom nezáleží. Opakem je potom následující zápis:
app-test/showcase[!qt4?]
který je ekvivalentem:
!qt4? ( app-test/showcase[-qt4] ) qt4? ( app-test/showcase )
a vyjadřuje toto: pokud je USE-flag vypnutý pro tento ebuild, musí být vypnutý i pro závislost, v opačném případě (když je USE-flag zapnutý) na nastavení USE nezáleží.
Posledním případem jsou tyto zápisy:
app-test/showcase[qt4=] app-test/showcase[!qt4=]
První z nich vyžaduje stejné nastavení USE-flagu "qt4" pro váš ebuild a závislost a druhý naopak vyžaduje různé nastavení tohoto USE-flagu.
Ještě dodám, že tohle vše lze navíc kombinovat s udáním verze a slotu, takže zápis závislosti ve výsledku může vypadat například takto:
>=app-test/showcase-2.2:2[-mp3,ogg?,qt4=]
Znamená to, že ebuild bude vyžadovat balíček app-test/showcase verze 2.2 nebo novější, se slotem 2 a patřičným nastavením USE-flagů.
Význam operátoru "!" u závislostí byl v EAPI 2 lehce pozměnen. Dříve zápis
!app-test/showcase
způsobil přerušení instalace v případě, že byl nainstalován balíček app-test/showcase. Nyní je ovšem možná dočasná instalace takových balíčků vedle sebe, která v případě kolize přepíše soubory staršího balíčku a když je později starý balíček odinstalován, tak nejsou odstraněny soubory, které byly přepsány novějším balíčkem.
Pro explicitní zákaz byť jen dočasné instalace balíčků vedle sebe lze použít nový operátor "!!":
!!app-test/showcase
Když nastane případ, že je balíček app-test/showcase blokován více nainstalovanými ebuildy najednou, tak má operátor "!!" prioritu a balíček se nenainstaluje.
Nově lze nastavit názvy souborů v SRC_URI, pod kterými se uloží do distfiles. Je třeba za URL přidat operátor "->" a za něj požadovaný název. Vše se odděluje mezerou.
SRC_URI="http://dl.google.com/earth/client/GE4/release_4_3/GoogleEarthLinux.bin
-> GoogleEarthLinux-${PV}.bin"
Tato vlastnost se může hodit třeba tehdy, když není v názvu souboru uvedena verze, což by později mohlo způsobit problém.
Dříve, když jste chtěli po rozbalení zdrojových archívů upravovat zdrojové kódy, bylo nutné (nebo vhodné) předefinovat funkci src_unpack, do které jste vždycky museli na začátek překopírovat výchozí definici. Toto řeší nová funkce src_prepare, která se spouští po src_unpack a jejíž výchozí pracovní adresář je nastaven na ${S}. Definice tedy může vypadat takto:
src_prepare() {
epatch "${FILESDIR}/${P}-new-ffmpeg.patch"
}
Z funkce src_compile byla oddělena část sloužící pro konfiguraci balíčku (např. spuštění ./configure pomocí econf) do funkce src_configure, která se logicky spouští před ní. Výchozí definice těchto funkcí nyní vypadají následovně:
src_configure() {
if [[ -x ${ECONF_SOURCE:-.}/configure ]] ; then
econf
fi
}
src_compile() {
if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]; then
emake || die "emake failed"
fi
}
Výchozí definice funkcí pkg_nofetch a src_* jsou nyní dostupné pod svým názvem s přidaným "default_" na začátku. K dispozici jsou tedy:
default_pkg_nofetch default_src_unpack default_src_prepare default_src_configure default_src_compile default_src_test
Když chcete v určité funkci zavolat její vychozí definici, stačí spustit pouze default beze zbytku názvu, protože jde o alias.
Nové pořadí spouštění funkcí jednotlivých fází instalace je následující:
pkg_setupsrc_unpacksrc_preparesrc_configuresrc_compilesrc_testsrc_installpkg_preinstpkg_postinstpkg_prermpkg_postrmdoman podporuje jazykyPříkaz doman (sloužící k instalaci manuálových stránek) nyní podporuje jazyky, což v praxi znamená, že
doman program.cs.1
nainstaluje manuál jako /usr/share/man/cs/man1/program.1.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Nejvetsi bolesti portage je revdep-rebuild. U toho nikdy poradne clovek nevi, co se vlastne bude kompilovat. Predstavte si, ze updatem worldu se zmeni nejaka knihovna. Vsechno vypada ok, update probehl korektne. Pak udelate revdep-rebuild a dozvite se, ze update knihovny rozhodil Openoffice. A to je kompilace na dlouho. Kdybyste vedeli, ze se to stane, tak byste treba s updatem pockali, az si ty dokumenty, co potrebujete zpracovat, dopisete.
Chapu, ze je to problem, system muze jen tezko vedet, co se updatem poskodi, poradne protoze nevi, v jakem stavu byly binarky v dobe updatu. Ale aspon u tech nejvetsich baliku by bylo fajn to nejak osefovat, aby clovek, co updatuje, byl na potecialni problem pripraven. Nektere balicky jsou notoricky "problemove" a gentooista si jich brzo vsimne. Ale nekdy ne, a pak to boli.
2.2 je hard masked. Takze NE.
# Zac Medico <zmedico@gentoo.org> (05 Jan 2009) # Portage 2.2 is masked due to known bugs in the # package sets and preserve-libs features. >=sys-apps/portage-2.2_pre
Nevím, které bugy to jsou, ale portage 2.2 používám už hodně dlouho a žádného problému jsem si nevšiml.
Tak tomu nějak nerozumím, nebo jsme každý v jiném systému.
USE flagy jsou přeci přednastaveny automaticky. Manuálně si můžete (nemusíte) upravit vlastní volby. Nastavení USE se nemusí měnit automaticky podle profilu a není třeba ho kontrolovat.
Takhle začíná moje USE
USE="-* python pam ssl md5sum nls ......
také může vyžadovat určitý USE-flag zapnutýPodle kontextu by tam asi mělo být vypnutý. Až budou všechny balíčky v Portage používat závislosti na USE, snad odpadnou takové problémy, jako je ten s MPlayerem a X v nedávném dotazu.
Podle kontextu by tam asi mělo být vypnutý.Je to tak, spletl jsem se.