Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.
Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.
Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.
Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.
npm balíčky @redhat-cloud-services byly kompromitovány.
Byly publikovány informace o zranitelnosti CVE-2026-46243 pojmenované CIFSwitch v Linuxu od roku 2007. Běžný uživatel může získat práva roota (lokální eskalaci práv). V upstreamu je již opraveno.
Nvidia na své konferenci NVIDIA GTC Taipei 2026 představila řadu novinek. Společně s Microsoftem představili superčip NVIDIA RTX Spark (až 6 144 jader GPU, 20 jader CPU, 1 petaflop AI výkonu v FP4 a 128 GB jednotné paměti). První notebooky a stolní počítače s tímto čipem od Nvidie místo Intelu nebo AMD by se měly na trh dostat na podzim letošního roku.
Na Kickstarteru běží kampaň na podporu kapesního počítače s Linuxem CardputerZero od společnosti M5Stack. Postaven je na Raspberry Pi Compute Module 0. Podporuje moduly M5. Koupit lze s rozšířeními LoRa a CC1101.
Tento týden se bude vyznačovat zejména deštěm, a proto vás může zajímat, že již v úterý proběhne 63. Virtuální Bastlírna, která se bude odehrávat přímo v teple vašich domovů a bastlíren. Proto se připojte k této volné otevřené diskuzi bastlířů, techniků, vědců, ve které se probírají novinky a zajímavá témata z techniky. Mezi největší novinky bude tentokrát patrně patřit oznámení hackerského nástroje Flipper One. Zároveň úspěšně probíhá
… více »86Box (Wikipedie), tj. emulátor retro počítačů založených na x86, byl vydán ve verzi 6.0. Přibyly například zvuky pevného disku. Na GitHubu jsou vedle zdrojových kódů ke stažení také připravené balíčky ve formátu AppImage.
Balíky můžou být v Linuxu linkované dvojím způsobem: Buď staticky nebo dynamicky.Omyl, linkují se binárky, které se balí do balíků společně s jinými soubory. Tahle drobná nepřesnost vede bohužel dále v textu k naprosto zcestným závěrům. Nadále budu statický balík považovat za běžný balík se staticky slinkovanými binárkami nebo s přibalenými dynamickými knihovnami (takhle se obvykle distribuují uzavřené komerční programy, pro naše účely je to totéž)
Výhoda dynamicky linkovaných balíků je ta, že se šetří místo na disku … Další výhoda je, že se šetří paměťNejvětší, ale zcela opomenutá výhoda je, že jedinou instanci binárky/knihovny lze snáze udržovat a upgradovat. Dnešní systémy mají tisíce knihoven a i jednoduché programy linkují mnoho z nich. Kdyby bylo všechno staticky linkované, vyžadoval by upgrade jedné knihovny reinstalaci mnoha balíků. zlib, jpeg nebo glib jsou příklady malých knihoven kde by kilobajtová změna reinstalovala prakticky celý systém. A i u méně exponovaných knihoven rozměry závisejících balíků podstatně převyšují velikost samotné knihovny - to je koneckonců princip celé věci. Neupgradovat všechny závislé balíky není řešení. Většina upgradů záplatuje nějaké chyby, tudíž o ně budu stát. Hlavně se ale nemůžu vyhnout upgradům které záplatují díry bezpečnostní.
U statických balíků neexistuje tak zvané peklo závislostí.A hned první tragicky omyl způsobený záměnou balíku za binárku. Závislosti jsou vlastnosti balíku a problémy s nimi jsou způsobeny špatně zabaleným balíkem nebo špatným balíčkovacím systémem. Statickým linkováním nebo balením knihoven se lze sice těmto problémům vyhnout, ale to je léčení příznaků místo příčin.
Ale musíme myslet taky na takové lidi, kteří nemají přístup k internetu. Ti nemůžou využít automatické řešení závislostiDitto, autor potřebuje změnit balíčkovací systém na takový, který umí vyčíslit závislosti předem. Třeba můj systém (portage) má možnost nechat si všechny závislosti vypsat do souboru vhodného k předhození wgetu. Dokonce jsem tak i jeden systém nainstaloval.
Statický balík je kompatibilní s různými distribucemi a verzemi Linuxu, je víceméně univerzální.Za prvé, čistě statickou binárku nelze ve skutečnosti udělat. I když vše slinkujeme se -static, bude binárka z ne úplně triviálních důvodů za běhu linkovat část libc. Bude sice podstatně odolnější, protože libc se mění málo, ale stoprocentní kompatibilita to není. Za druhé, což je mnohem důležitější, statické linkování neřeší změny v API, resp. řeší je tím, že jim brání. Přitom právě to je největší problém při přenášení balíků mezi distribucemi. Třeba balík z blbuntu nebude na mém systému chodit, ať už je slinkovaný jakkoliv, prostě proto že nemám Pulse Audio. Doma, nemaje tiskárnu, neběhám cups démona. Můžu mít/nemít FAM nebo jiné démony, jiný layout filesystému a práv, bezpečnostní moduly, adresářové služby, změny v kernelu et cetera et cetera. Přenositelnost mezi distribucemi a verzemi je podstatně složitější problém než jen linkování. Jediná spolehlivá metoda je pokusit se zastavit čas a neupgradovat vůbec nic. Na to ale není třeba statické linkování.
Tiskni
Sdílej:
Za prvé, čistě statickou binárku nelze ve skutečnosti udělat. I když vše slinkujeme se -static, bude binárka z ne úplně triviálních důvodů za běhu linkovat část libc. Bude sice podstatně odolnější, protože libc se mění málo, ale stoprocentní kompatibilita to není.Compiling without libc
/etc/nsswitch.conf. A to i když je zbytek libc linkován staticky. Což je logické, během překladu nemůže vědět jestli na cílovém systému nebude náááhodou třeba NIS
Ditto, autor potřebuje změnit balíčkovací systém na takový, který umí vyčíslit závislosti předem. Třeba můj systém (portage) má možnost nechat si všechny závislosti vypsat do souboru vhodného k předhození wgetu. Dokonce jsem tak i jeden systém nainstaloval.Deb a Yum je zase umějí postahovat do předem zadaného adresáře.
Cannot mix incompatible Qt libraries a nespusti se. uz sem to hlasil v AURu a taky primo autorovi, ale oba delaji jako by to vsem fungovalo a zadnej problem neexistoval ...
LD_LIBRARY_PATH=./lib ldd xnview | grep Qt a potom v lib adresári LD_LIBRARY_PATH=. ldd *.so.4 | grep Qt či tam nenájdeš kde sa vlastne používa systémové Qt. (predpokladám ale, že žiadny problém nenájdeš, práve kvôli Xn v názvoch knižníc)
[kotyz@behemot XnViewMP-026]$ LD_LIBRARY_PATH=./lib ldd xnview | grep Qt
libQtWebKitXn.so.4 => ./lib/libQtWebKitXn.so.4 (0xb66f5000)
libQtGuiXn.so.4 => ./lib/libQtGuiXn.so.4 (0xb5be3000)
libQtCoreXn.so.4 => ./lib/libQtCoreXn.so.4 (0xb593d000)
libQtXmlPatternsXn.so.4 => ./lib/libQtXmlPatternsXn.so.4 (0xb544c000)
libQtNetworkXn.so.4 => ./lib/libQtNetworkXn.so.4 (0xb5315000)
libQtSvgXn.so.4 => ./lib/libQtSvgXn.so.4 (0xb52bb000)
libQtXmlXn.so.4 => ./lib/libQtXmlXn.so.4 (0xb5271000)
[kotyz@behemot lib]$ LD_LIBRARY_PATH=. ldd *.so.4 | grep Qt
libQtCore.so.4:
libQtCoreXn.so.4:
libQtGui.so.4:
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb6a07000)
libQtGuiXn.so.4:
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb69bd000)
libQtNetwork.so.4:
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb73a8000)
libQtNetworkXn.so.4:
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb74ea000)
libQtOpenGL.so.4:
libQtGuiXn.so.4 => ./libQtGuiXn.so.4 (0xb6bef000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb6949000)
libQtOpenGLXn.so.4:
libQtGuiXn.so.4 => ./libQtGuiXn.so.4 (0xb6c41000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb699b000)
libQtSvg.so.4:
libQtGuiXn.so.4 => ./libQtGuiXn.so.4 (0xb6c63000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb69bd000)
libQtSvgXn.so.4:
libQtGuiXn.so.4 => ./libQtGuiXn.so.4 (0xb6c1b000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb6975000)
libQtWebKit.so.4:
libQtXmlPatternsXn.so.4 => ./libQtXmlPatternsXn.so.4 (0xb60d3000)
libQtGuiXn.so.4 => ./libQtGuiXn.so.4 (0xb560f000)
libQtNetworkXn.so.4 => ./libQtNetworkXn.so.4 (0xb54d8000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb5231000)
libQtWebKitXn.so.4:
libQtXmlPatternsXn.so.4 => ./libQtXmlPatternsXn.so.4 (0xb61ef000)
libQtGuiXn.so.4 => ./libQtGuiXn.so.4 (0xb572b000)
libQtNetworkXn.so.4 => ./libQtNetworkXn.so.4 (0xb55f4000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb534d000)
libQtXml.so.4:
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb75c9000)
libQtXmlPatterns.so.4:
libQtNetworkXn.so.4 => ./libQtNetworkXn.so.4 (0xb71d7000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb6f31000)
libQtXmlPatternsXn.so.4:
libQtNetworkXn.so.4 => ./libQtNetworkXn.so.4 (0xb7153000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb6ead000)
libQtXmlXn.so.4:
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb752b000)
libQtGuiXn.so.4 => ./libQtGuiXn.so.4 (0xb6d8a000)
libQtCoreXn.so.4 => ./libQtCoreXn.so.4 (0xb6ae4000)
Statickým linkováním nebo balením knihoven se lze sice těmto problémům vyhnout,I to pouze omezeně. Velká část dependency hellu vzniká jinými typy závislostí než závislostmi na dynamicky linkovaných knihovnách.
Vynikající! Něco takového jsem už dlouho chtěl. Proti jiným distribucím je to velký pokrok. Výhoda je, že každý program má svůj podadresář a v něm všechny soubory, které k tomu programu patří. Všechno je přehledně uspořádané, roztříděné a je pěkně vidět, co k čemu patří. Na rozdíl od jiných distribucí, ve kterých jsou soubory všech programů různě rozhazané po celém systému, bez jakéhokolv třídění, je v tom nepořádek a je to velmi nepřehledné. Já vím, že existují skripty, ve kterých je zapsané, ke kterému programu který soubor patří, takže přidat nebo odebrat program, se vším, co k němu patří, není problém, ale není to ono. Přijde mi to stejné, jak kdybych měl nepořádek ve věcech a všechny věci různě rozhazané a netříděné a vůbec neměl uklizené a místo úklidu bych si pořídil sešit, do kterého si jenom zapíšu, kde mám kterou věc, abych ji našel. Právě proto se mi Gobo Linux líbí, protože mám rád pořádek. Líbí se mi taky jakým způsobem jsou sestavené balíky, způsob instalace a odinstalace balíků, a taky to, že má oproti jiným distribucím přehlednější kompilací. Zřejmě bych našel i další výhody této distribuce.
Začal jsem se o Gobo Linux zajímat, ale mám pocit, že se asi přestal vyvíjet, protože nikde na internetu jsem neobjevil novější verzi, než z roku 2006. Stejně tak novější články jsem na internetu nenašel. Když jsem se díval do repozitářů Gobo linuxu, verze programů jsou tam dost zastaralé a některé novější programy tam nejsou vůbec. Například Audacity je tam nanejvýš ve verzi 1.2.3, Jamin tam není vůbec a tak dále. Tak by mě zajímalo, jak je to s vývojem této distribuce. Opravdu se přestala vyvíjet? Pokud se to přestalo vyvíjet, je to škoda, protože nic tak vynikajícího jsem neviděl. Nebo se změnil jenom název, jako například Mandrake na Mandrivu?