Firma Murena představila /e/OS verze 2.0. Jde o alternativní sestavení Androidu bez aplikací Google. Mezi novinkami je podrobnější nastavení ochrany soukromí před sledováním aplikacemi. Murena prodává několik smartphonů s předinstalovaným /e/OS (Fairphone, repasovaný Google Pixel 5).
Do 30. května lze v rámci akce Warhammer Skulls 2024 získat na Steamu zdarma hru Warhammer 40,000: Gladius - Relics of War.
HelenOS (Wikipedie), tj. svobodný operační systém českého původu založený na architektuře mikrojádra, byl vydán ve verzi 0.14.1. Přehled novinek v poznámkách k vydání. Vypíchnou lze nabídku Start. Videopředstavení na YouTube.
BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.
Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.
Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.
V neděli 26. května lze navštívit Maker Faire Rychnov nad Kněžnou, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byla vydána nová stabilní verze 3.20.0, tj. první z nové řady 3.20, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu 64bitové architektury RISC-V.
Společnost Jolla na akci s názvem Jolla Love Day 2 - The Jolla comeback představila telefon se Sailfish OS 5.0 Jolla Community Phone (ve spolupráci se společností Reeder) a počítač Jolla Mind2 Community Edition AI Computer.
Balíčkovací systém Arch Linuxu používá jako správce balíčků pacmana
. Balíčky si stahuje přímo z repositářů umístěných na zrcadlech, podobně jako apt-get
. Používání systému se snaží být co nejjednodušší a snadno ovladatelné; to se daří plnit díky řešení závislostí a konfliktů balíčků. Stejně tak i ovládání pacmana je jednoduché.
Arch Linux má několik oficiálních repositářů, ve kterých je většina softwaru potřebného pro plnohodnotný desktop i server. Software je kompilován pro architektury i686 (hlavní architektura, která má nejvíce balíčků), x86-64 a i586 (pro tu je zatím nejméně balíčků).
Oficiální repositáře:
current
extra
a current
current
nebo extra
řádně otestovatMimo tyto repositáře, které obsahují přímo binární balíčky, ještě existuje AUR (Arch Linux User-community Repository), jež obsahuje PKGBUILDy
pro velké množství softwaru, který není v oficiálních repositářích. O AURu a PKGBUILDech si budeme povídat v některém z dalších dílů.
Název archovského balíčku má pevně daný tvar: jméno_softwaru-verze-vydání_balíčku-architektura.pkg.tar.gz
. Už samotný název dává tušit, že se jedná o tar.gz
archiv. Aby byl takový archiv validním balíčkem, musí mimo jiné obsahovat soubory:
.FILELIST
.PKGINFO
Nepovinný je instalační skript .INSTALL
.
Obsahuje seznam všech souborů v balíčku, což je užitečné například pro zjišťování konfliktu souborů, nebo pokud chceme zjistit, kterému balíčku nějaký soubor patří.
Obsahuje všechny informace potřebné k instalaci balíčku. Budeme se věnovat položkám, které jsou obvyklé u pacmana 3.0.0, potažmo u skriptu makepkg
, který tento soubor generuje (starší verze nemusely mít všechny položky).
Soubor má jednoduchou strukturu, která je nejlépe vidět na příkladě. Náš balíček bude obsahovat software se jménem helloworld
ve verzi 0.4
, bude kompilován pro architekturu i686, takže název balíčku je helloworld-0.4-1-i686.pkg.tar.gz
# Generated by makepkg 3.0.0 # Sun Dec 31 10:05:08 CET 2006 pkgname = helloworld pkgver = 0.4-1 pkgdesc = helloworld: a kernel module and \ a userspace daemon for controlling an atomic bomb url = http://www.helloworld.sf.net builddate = Sun Dec 31 09:05:08 2006 packager = Big Boss <bigboss@sf.net> size = 1055364 arch = i686 license = GPL replaces = helloworld-rc replaces = helloworld-test depend = kernel26 conflict = goodbyeworld conflict = libatomicbomb provides = libatomicbomb backup = etc/helloworld.conf
makepkg
makepkg 3.0.0
a vyššíhelloworld
nahrazuje uvedený balíček, v příkladu nějakou RC
verzi a test
verzihelloworld
závisí na tomto balíčkuhelloworld
koliduje s balíčky goodbyeworld
a libatomicbomb
helloworld
poskytuje libatomicbomb
, tedy řeší závislosti na balíčku libatomicbomb
Tento soubor je instalačním skriptem a není, na rozdíl od ostatních souborů, povinný. Slouží pro spouštění případných po–instalačních procedur. Stejně tak má části, které se spouští po upgradu nebo odinstalování balíčku. Často se také využívá pro výpis informací při instalaci.
Ukážeme si opět jeden krátký příklad:
# arg 1: the new package version post_install() { echo ">>> ovládání atomových bomb 'heloworld' verze $1" post_upgrade $1 0.1 } # arg 1: the new package version # arg 2: the old package version post_upgrade() { echo ">>> Novinky ve verzi $1" if [ "$(vercmp $2 0.2)" -lt 0 ]; then echo " -> kód byl kompletně přepsán, zvýšila se stabilita ;]" fi if [ "$(vercmp $2 0.3)" -lt 0 ]; then echo " -> podporovány jsou i indické bomby" fi _do_some_think } pre_remove() { . /etc/rc.d/functions if ! ck_daemon heloworld; then /etc/rc.d/heloworld stop fi } _do_some_think() { /bin/true } op=$1 shift $op $*
Do skriptu si můžeme přidávat svoje vlastní funkce. Je vhodné použít prefix "_", všechny funkce by měly končit s návratovým kódem 0
. Instalační skript je velmi zranitelnou částí instalačního procesu; může obsahovat potenciálně škodlivý kód, proto instalujte balíčky jen z důvěryhodných zdrojů. A stejně tak si, pokud sestavujete balíček sami, prohlédněte obsah instalačního skriptu.
Při instalaci pacman
nejprve zkontroluje závislosti a konflikty, jak na úrovni balíčků, tak i na úrovni souborů, poté rozkopíruje soubory, provede případné zálohy konfigurace a nakonec spustí instalační skript. Informace o balíčku se uloží do databáze. Proces odstranění je opačný.
Databáze balíčků se nachází ve /var/lib/pacman/
a je to adresářová struktura repositář/balíček
. Adresář balíček
obsahuje soubory s popisem balíčku a seznamem závislostí.
Seznam aktuálně nainstalovaných balíčků se nachází v adresáři /var/lib/pacman/local
. Jeho struktura vypadá podobně jako u repositářů, ale každý balíček má navíc v adresáři seznam souborů v balíčku a instalační skript (pokud jej balíček obsahuje).
Protože databáze je řešena tímto způsobem, je vhodné ji mít na zvláštním oddílu disku s výkonným souborovým systémem, výrazně to zrychlí práci.
Tímto bychom měli položeny nutné základy, příště se pustíme do správy balíčků pomocí pacmana
.
Nástroje: Tisk bez diskuse
Tiskni Sdílej:
pasmen: Architektura v nazvu balicku je novinka pacmana 3.0?
vogo: ano, ale pacmanem 3.0 jdou nainstalovat i balíčky vytvořené makepkg 2.x.x
pasmen: Kurna, to budu muset vsechny svoje balicky prekompilovavat?! Jsou jeste nejake vyrazne zmeny pacmanu 3.0?
vogo: více o změnách třeba u mě v blogu
pasmen: Mozna bych mohl zkusit noveho pacmana z testingu... Sice uz by se mel co nevidet objevit v current, ale prece jen, nejsem zrovna trpelivy A hlavne, uz se tesim na to proklamovane zrychleni. Setkal si se s nejakymi problemy?
vogo: používal jsem rc verze a teď pacmana 3.0.0 a žádné chyby jsem nepozoroval [update v testingu je už verze 3.0.1 - jen kosmetické změny] pacman už by měl být v current
pasmen: Ja ho vidim porad v testing Ale dobre, zda se, ze je to fakt uz jen otazka hodin, to bych mohl vydrzet Jinak pekny clanek, taky se tesim na pokracovani.
Kouzer: Moc pěkné. Už se těším na další díl... Kdy ho lze očekávat?
vogo: o víkendu ho rozepíšu, ale mám teď moc práce do školy
Tomáš Urgošík: Doplnil bych repository unstable.
vogo: ops, to je tím, že v x86_64 byl dlouho nevyužíván [sakra bota polepším se]
Ignor: Třeba se z toho seriálu konečně dozvím, proč je packman podle archerů tak geniální
vogo: další díl bude o pacmanovi
Andrej: Geniální? To tvrdí kdo?
Ignor: Je to jen můj dojem ze zdejších diskuzí. Nemám pro to důkazy
Johny: fajn clanek. v nekterem z dalsich pokracovani by ses mohl zminit treba o rozdilech mezi pacmanem a jinymi balickovaci (napr. rpm).
vogo: na to se necítím, disto založené na RPM jsem používal naposledy pře dvěma lety, a moc jsem se v tom balíčkovacím systému nevrtal, pak byl přes rok slack, a teď arch
Jirka B.: zadny kontrolni soucet? nebo vypadla informace? :)
vogo: o tom až příště, CRC součet není součástí balíčku, jak by šel přidat do komprimovaného souboru ;)
po havárii alespoň nějaká náhrada za diskuzi :)Teď bychom ještě asi měli ručně hrábnout do databáze a přidat nějaký ten tisíc do počítadla čtenosti, aby to nevypadalo, že článek nikoho nezajímá... Všichni už si ho totiž přečetli, ale teď to není poznat.
Žuch, prásk. Ach jo. Takže má ostrá kritika pacmana vzala za své. Nějaká linuxová vyšší moc se mi tu snaží naznačit, abych ho nechal na pokoji.
Hloupé je, že jsem tu diskusi sledoval a měl jsem prakticky všechny příspěvky v mailu. Jenže cca hodinu před tím karambolem jsem je smazal. To je prostě setsakra smůla.
Ale diskusi v té době sledoval ještě jeden člověk. Třeba zprávy nesmazal. Třeba je má buď ve schránce nebo aspoň na serveru... Haló! Kdo to byl?
Fňuk.