IKEA ve Spojeném království hledá zaměstnance do své nové pobočky. Do pobočky v počítačové hře Roblox. Nástupní mzda je 13,15 liber na hodinu.
Alyssa Rosenzweig se v příspěvku na svém blogu Vulkan 1.3 na M1 za 1 měsíc rozepsala o novém Vulkan 1.3 ovladači Honeykrisp pro Apple M1 splňujícím specifikaci Khronosu. Vychází z ovladače NVK pro GPU od Nvidie. V plánu je dále rozchodit DXVK a vkd3d-proton a tím pádem Direct3D, aby na Apple M1 s Asahi Linuxem běžely hry pro Microsoft Windows.
Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.
Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.
MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.
Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.
Databáze DuckDB (Wikipedie) dospěla po 6 letech do verze 1.0.0.
Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.
Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.
Pro vytváření balíčku máme v Arch Linuxu skript makepkg
, který podle instrukcí v souboru PKGBUILD
sestaví balíček; ten lze následně nainstalovat pacmanem. PKGBUILDy jsou tedy jakousi obdobou ebuidů z Gentoo Linuxu.
Pokud chcete poskytnout balíček ostatním, pak je nejlepší umístit jej do AURu (ArchLinux User-community Repository). Je to nebinární repozitář, nachází se v něm jen PKGBUILDy.
Každý balíček musí splňovat Standardy balíčků Archu. Jde o omezení názvů balíčků, způsob verzování, omezení adresářů, do kterých se instaluje software, a několik dalších doporučení. Jen PKGBUILD, který splňuje tato pravidla, může být umístěn do AURu. Vše, co porušuje pravidla, je smazáno, o což se starají správci i samotní uživatelé, kteří tyto prohřešky hlásí.
Popisován je PKGBUILD pro makepkg 3.0.x, starší verze makepkg
nemusely vyžadovat všechny direktivy.
Uvedeme si příklad a vysvětlíme si jednotlivé direktivy a volby:
# Maintainer: An Archist <archist@archlinux.org> # Contributor: Big Boss <bigboss@sf.net> pkgname = helloworld pkgver = 0.4 pkgrel = 1 pkgdesc = "helloworld: a kernel module and a userspace daemon \ for controlling an atomic bomb" url = "http://www.helloworld.sf.net" arch = ('i686' 'x86_64') license = ('GPL' 'LGPL') replaces = ('helloworld-rc' 'helloworld-test') depend = ('kernel26') conflict = ('libatomicbomb' 'goodbyeworld') provides = ('libatomicbomb' 'goodbyeworld') backup = ('etc/helloworld.conf') install = $pkgname.install source = ('http://www.helloworld.sf.net/source/$pkgname-$pkgver.tar.gz') md5sums = ('a3290cbce4ffabbf91ccb1e9fce64d9e') sha1sums = ('99fdedaec3acc9a8107443b6bfe87c7cdc0165c2') build() { cd $startdir/src ./configure --prefix=/usr make || return 1 make DESTDIR=$startdir/pkg install || return 1 } # vim:syntax=sh
*.la
soubory knihoven; pokud je chcete smazat, použijte !libtool.makepkg.conf
.$pkgname
, $pkgver
a $startdir
.build()
.Zde popsaný PKGBUILD je použitelný pro sestavení balíčku ze zdrojových souborů dostupných v archivech. Existuje možnost balíček sestavit přímo ze SVN i CVS repozitáře. I v tomto případě je třeba se držet pravidel pro tvorbu PKGBUILDu. Používají se proměnné _cvsroot
a _cvsmod
, respektive _svntrunk
a _svnmod
. Ve funkci build()
se použije příkaz pro stažení CVS repozitáře a jeho překopírování; až z této kopie se sestavuje balíček.
if [ -d $_cvsmod/CVS ]; then cd $_cvsmod cvs -z3 update -d else cvs -z3 -d $_cvsroot co -D $pkgver -f $_cvsmod fi msg "CVS checkout done or server timeout" msg "Starting make..." cp -r $_cvsmod $_cvsmod-build cd $_cvsmod-build ...
Podobně vypadá fragment pro SVN:
if [ -d $_svnmod/.svn ]; then cd $_svnmod svn up -r $pkgver else svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod fi msg "SVN checkout done or server timeout" msg "Starting make..." cp -r $_svnmod $_svnmod-build cd $_svnmod-build ...
Pokud chcete ve svém balíčku používat instalační skript, musíte uvést v PKGBUILDu direktivu:
install=jméno_balíčku.install
Skript poskytuje tyto funkce:
Jak vypadá instalační skript, jsme si ukázali v prvním díle seriálu. Skript nemusí být umístěn v seznamu source; stačí, když je v adresáři, ve kterém je PKGBUILD.
Makepkg je shellový skript, který umožní sestavit balíček podle PKGBUILDu. Je distribuován společně s pacmanem.
Popisovány jsou vlastnosti makepkg 3.0.x, starší verze se mohou lišit. Postupně probereme nejpoužívanější přepínače. Pokud chcete vědět více, prohlédněte si manuálovou stránku.
makepkg se volá takto (musíme být v adresáři, kde je PKGBUILD, který chceme použít):
makepkg [volby]
Konfigurační soubor makepkg umožňuje nastavit optimalizace pro procesor, zapnout distribuovanou kompilaci a další proměnné prostředí, které ovlivňují software ve výsledném balíčku. Soubor je bohatě komentován, takže i neznalý uživatel se v něm neztratí.
Opět uvedu nejdůležitější volby:
AUR je repositář PKGBUILDů, do kterého může přispět každý uživatel Arch Linuxu. Jeho stránky jsou http://aur.archlinux.org/. Pokud chcete připívat, musíte si vytvořit účet.
Když zjistíte, že balíček pro daný software v binárních repozitářích není, nejprve se podívejte do AURu, obvykle ho tam najdete. Pokud vytvoříte PKGBUILD, který ještě neexistuje, pak jej stačí zabalit do archivu a uploadovat do AURu.
Ke každému balíčku je možné posílat komentáře, které mohou obsahovat hlášení chyb nebo návrhy na vylepšení PKGBUILDu určené pro autora. Každý má také možnost pro balíčky hlasovat - pokud bude mít daný balíček hodně hlasů, má velkou šanci se dostat do repozitáře community. Stejně tak se dá balíček označit za neaktuální (Out-of-date).
Vybraní důvěryhodní uživatelé se snaží udržovat AUR a PKGBUILDY v něm ve funkčním stavu, ale stejně je na každém přispěvateli, aby PKGBUILD udržoval v aktuální verzi a v sestavitelné podobě. Proto se může stát, že si stáhnete PKGBUILD, který je nepoužitelný, a nezbývá, než jej opravit. Toto se může odrazit ve vašem hodnocení balíčku.
AUR je dobrým zdrojem, ale často se vám může stát, že daný balíček nesestavíte - proto je dobré se podívat na poslední aktualizaci. Alespoň zjistíte, jestli je PKGBUILD ještě udržován. AUR je stále tak trochu džungle.
V příštím díle budeme pokračovat v sestavování balíčků - podíváme na ABS (Arch Build System) a makeworld.
Nástroje: Tisk bez diskuse
Tiskni Sdílej:
Zde popsaný PKGBUILD je použitelný pro sestavení balíčku se zdrojových souborů dostupných v archivech.ze zdrojových balíčků - z koho z čeho 2.pád
Protože v případě, že jde o libovolně zaměnitelné alternativy, čárka se nepíše. Třeba Koupím hrušky nebo jablka.
Pokud se nejedná o libovolně zaměnitelné alternativy, čárka se tam píše. Líbí se ti to, nebo na to máš jiný názor?