Sniffnet je multiplatformní aplikace pro sledování internetového provozu. Ke stažení pro Windows, macOS i Linux. Jedná se o open source software. Zdrojové kódy v programovacím jazyce Rust jsou k dispozici na GitHubu. Vývoj je finančně podporován NLnet Foundation.
Byl vydán Debian Installer Trixie RC 2, tj. druhá RC verze instalátoru Debianu 13 s kódovým názvem Trixie.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za červen (YouTube).
Libreboot (Wikipedie) – svobodný firmware nahrazující proprietární BIOSy, distribuce Corebootu s pravidly pro proprietární bloby – byl vydán ve verzi 25.06 "Luminous Lemon". Přidána byla podpora desek Acer Q45T-AM a Dell Precision T1700 SFF a MT. Současně byl ve verzi 25.06 "Onerous Olive" vydán také Canoeboot, tj. fork Librebootu s ještě přísnějšími pravidly.
Licence GNU GPLv3 o víkendu oslavila 18 let. Oficiálně vyšla 29. června 2007. Při té příležitosti Richard E. Fontana a Bradley M. Kuhn restartovali, oživili a znovu spustili projekt Copyleft-Next s cílem prodiskutovat a navrhnout novou licenci.
Svobodný nemocniční informační systém GNU Health Hospital Information System (HIS) (Wikipedie) byl vydán ve verzi 5.0 (Mastodon).
Open source mapová a navigační aplikace OsmAnd (OpenStreetMap Automated Navigation Directions, Wikipedie, GitHub) oslavila 15 let.
Vývojář Spytihněv, autor počítačové hry Hrot (Wikipedie, ProtonDB), pracuje na nové hře Brno Transit. Jedná se o příběhový psychologický horor o strojvedoucím v zácviku, uvězněném v nejzatuchlejším metru východně od všeho, na čem záleží. Vydání je plánováno na čtvrté čtvrtletí letošního roku.
V uplynulých dnech byla v depu Českých drah v Brně-Maloměřicích úspěšně dokončena zástavba speciální antény satelitního internetu Starlink od společnosti SpaceX do jednotky InterPanter 660 004 Českých drah. Zástavbu provedla Škoda Group. Cestující se s InterPanterem, vybaveným vysokorychlostním satelitním internetem, setkají například na linkách Svitava Brno – Česká Třebová – Praha nebo Moravan Brno – Břeclav – Přerov – Olomouc.
Byla vydána nová verze 8.7.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.
Spkg jsem předevčírem dostal do stavu, kdy jsou všchny důležité vlasntosti naimplementované a už chybělo jen testování na spoustě balíčků. No a už nechybí. :)
Upgrade a instalace potřebovaly znovu otestovat a tak jsem nainstaloval z DVD Slackware-10.1 všechny balíčky z kategorií a, ap, d, l a n. To dává po instalaci 295 balíků zhruba 1GB dat (70 tisíc souborů). Instaloval jsem pomocí installpkg
a spkg -i
a následně porovnal výstup příkazu tree -psufiga
a find . -type f | xargs md5sum
. Na první pohled to nevypadalo moc nadějně. Instalace pomocí spkg vytvořila mnoho symlinků navíc oproti installpkg, ale to bylo způsobeno tím že v installpkg je chyba, protože ldconfig se nespouští pro adresář do kterého se instaluje (/root), ale vždy pro kořenový adresář. Což není moc platné. Po spuštění ldconfig -r /root
a opětovném porovnání výstupu psufigy, už bylo vše pozitivnější.
Defakto se pouze lišily velikosti adresářů, protože spkg při instalaci či upgrade, pokud již instalovaný soubor existuje, nejprve vytvoří dočasný soubor a až po dokončení zpracování tgz balíku všechny cílové soubory nahradí. Vytvářením dočasných souborů nám o něco nakynou adresáře ve kterých se tyto soubory vytvářejí. Pokud pak dojde k přerušení instalace/upgrade uživatelem, nebo nesplněním nějaké podmínky pak se prostě odstraní všechny soubory které byly do té doby vytvořeny a vše je jako před instalací. Čili je možně bezpečně přerušit dlouho trvající upgrade mnoha balíků bez obav o konzistenci zrovna upgradovaného balíku a prostě pokračovat později. Cílem vývoje samozřejmě nebylo aby si člověk mohl po zahájení upgrade v 8 hodin ho mohl ve 12 přerušit a pokračovat ráno, ale upgrade balíků výrazně zrychlit.
Upgrade test probíhal tak, že jsem provedl upgrade zmíněných kategorií z slackware-10.1 na slackware-10.2 přímo z DVD. V řeči příkazů, tedy:
ROOT=/root1 upgradepkg {a,ap,d,l,n}/*.tgz
a pomocí spkg
spkg -u -v -r /root2 {a,ap,d,l,n}/*.tgz
Poté jsem opět porovnal výstupy psufigy a md5sumu pro /root1 a /root2. Výstup těchto příkazů byl. bez neočekávaných rozdílů, kromě jednoho souboru, který je vytvářen instalačním skriptem bindu (/etc/rndc.key) a má být pro každou instalaci jiný.
Nakonec jsem udělal remove test, abych ověřil že spkg -d
funguje stejně jako removepkg
. Opět s porovnáním stavu adresářů /root1 a /root2. Test spočíval v odstranění všech balíků ze skupiny d (39 balíků).
Co nebylo stejné byly časy potřebné pro provedení potřebných operací. Tady jsou čísla:
Příkaz | REAL | USER | SYS |
---|---|---|---|
ROOT=/root1 installpkg {a,ap,d,l,n}/*.tgz | 16m4s | 7m42s | 3m11s |
spkg -i -v -r /root2 {a,ap,d,l,n}/*.tgz | 3m41s | 54s | 38s |
ROOT=/root1 upgradepkg {a,ap,d,l,n}/*.tgz | 33m50s | 18m30s | 6m45s |
spkg -u -v -r /root2 {a,ap,d,l,n}/*.tgz | 4m39s | 0m50s | 0m40s |
ROOT=/root1 removepkg `cat pkglist` | 6m6s | 3m43s | 1m3s |
spkg -d -v -r /root2 `cat pkglist` | 11.8s | 0.67s | 1.18s |
Rozdíl oproti testům v mém předchozím příspěvku je v tom, že jsem tentokrát spouštěl instalaci z DVD, kde jsou přítomné soubory s popisem balíku, takže skripty installpkg a upgradepkg měly nyní o něco snažší práci než v předchozím případě, kdy jsem je spouštěl z mého mirroru slackware-current na disku, kde ony soubory nemám. A spkg měl o něco komplikovanější práci, protože jsem nepoužil parametr --no-ldconfig, takže ldconfig se spouštěl po každém nainstalovaném balíku. Spustit ldconfig trvá zhruba 100ms, takže to dává 30s zbytečně navíc pro jak installpkg tak spkg. Ovšem je rozdíl jestli je to 30s z 16m, nebo 30s z 3m40s. Při použití spkg DVD-ROM mechanika seekovala jak o život, takže by se někde v jejím okolí dalo hledat úzké herdlo.
Malá poznámka na závěr pro ty co stále chtějí používat pkgtools. Spkg trpí stejným problémem jako pkgtools a to tím, že databáze balíčků čítá např. na mém systému 600 malých souborů. A z těchto 600 souborů je potřeba před zahájením upgrade načíst seznam souborů, které jsou v systému nainstalovány. To na mém systému, který už zažil upgrade zhruba 1400 balíčků trvá zhruba 12s, když ty soubory ještě nejsou v cache. Tento čas lze poměrně dobře srazit (u mě na 3s - z toho 800ms je dáno čistě zpracováním obsahu souborů - tj. omezeno výkonem procesoru, čili zrychlení se pohybuje někde v řádu 5x) pomocí drobné "defragmentace" adresářů /var/log/packages a /var/log/scripts. Zde je program defrag.sh:
#!/bin/sh -e rm -rf /var/log/packages~ /var/log/scripts~ cp -a /var/log/packages /var/log/packages~ cp -a /var/log/scripts /var/log/scripts~ rm -rf /var/log/packages /var/log/scripts mv /var/log/packages~ /var/log/packages mv /var/log/scripts~ /var/log/scripts
Nechce k tomu někdo dopsat grafické rozhraní s kostičkama a progressbarem?
Tímto se spkg velmi přiblížil k verzi 1.0. Ještě to budu nějaký čas používat kde budu moct, a mám v plánu vytvoření testsuite složené z mnoha speciálně vytvořených balíčků, které otestují co nejvíc cest v kódu. Dále je potřeba přidat pár drobných volitelných vlastností, jako je v pkgtools např. upgradepkg --install-new nebo --reinstall. A nakonec bude třeba zaktualizovat dokumentaci.
Nemá někdo nápad na užitečnou vlastnost, která v pkgtools chybí? Mě napadá příkaz --check, který by zkontroloval dané blaíčky a zobrazil soubory, které byly změněny či odstraněny po instalaci balíčku. Je ještě něco jiného?
Homepage projektu je: http://spkg.megous.com. Poslední beta verzi lze vždy najít v adresáři http://spkg.megous.com/dl/patches/.
Tiskni
Sdílej: