Uroš Popović v krátkém článku vysvětluje, co jsou emulátor terminálu, TTY a shell a jaké jsou mezi nimi rozdíly. Jde o první díl seriálu na jeho novém webu Linux Field Guide věnovaném nízkoúrovňové práci s linuxovými systémy.
Byl vydán Debian 13.5, tj. pátá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.14, tj. čtrnáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
CiviCRM (Wikipedie) bylo vydáno v nové verzi 6.14.0. Podrobnosti o nových funkcích a opravách najdete na release stránce. CiviCRM je robustní open-source CRM systém navržený speciálně pro neziskové organizace, spolky a občanské iniciativy. Projekt je napsán v jazyce PHP a licencován pod GNU Affero General Public License (AGPLv3). Český překlad má nyní 45 % přeložených řetězců a přibližuje se milníku 50 %. Potřebujeme vaši pomoc, abychom se dostali dál. Pokud máte chuť přispět překladem nebo korekturou, přidejte se na platformu Transifex.
Další lokální zranitelností Linuxu je ssh-keysign-pwn. Uživatel si může přečíst obsah souborů, ke kterým má právo ke čtení pouze root, například soubory s SSH klíči nebo /etc/shadow. V upstreamu již opraveno [oss-security mailing list].
Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.
Vyšla hra Život Není Krásný: Poslední Exekuce (Steam, ProtonDB). Kreslená point & click adventura ze staré školy plná černého humoru a nekorektního násilí. Vžijte se do role zpustlého exekutora Vladimíra Brehowského a projděte s ním jeho poslední pracovní den. Hra volně navazuje na sérii Život Není Krásný.
Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.
Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.
Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.
Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.
Na YouTube byly zveřejněny záznamy přednášek z letošního InstallFestu. Přednášky v rámci OpenWRT tracku byly streamovány přes Google Hangouts, najdete je tedy v nižší kvalitě na YouTube v kanálu SUT SH; nahráváno bylo také offline, takže kvalitní záznam bude k dispozici později.
Tiskni
Sdílej:
schoda teda ale, ze nezminil Nix(OS), resp. Guix (ktery Nix vevnitr pouziva), ktery vypada jako dost zajmavy a pokud vim jediny fundamentalne prehodnoceny pohled na to jak distribuovat a nasazovat softwareTak na to je asi dost brzo, zvlášť pro Jirku, který se zabývá současností a velmi blízkou budoucností. Pokud si dobře pamatuju, tak jsme slyšeli o tomto systému poprvé na FOSDEMu a nejsem si jistý, zda je známo něco mimo tu únorovou přednášku.
nedavno se trochu rozepsal jeden ze spravcu Nixu: Why Puppet/Chef/Ansible aren't good enough (and we can do better), to vyvolalo zajmavou diskuzi na HN a ReddituJak to tak čtu, tak mi přijde, že je to z pohledu dnešních distribucí trošku hardcore. Už jsem pár takových experimentů viděl a slyšel jsem spoustu lidí snít, ale jak často se počáteční nadšení promění v hromadné nasazení?
Už jsem pár takových experimentů viděl a slyšel jsem spoustu lidí snítto zni zajmave, ja totiz zatim slysel jen o Nixu a Guixu (a jeste GNU Stow), co mas na mysli?
musim ale dodat, ze treba takovy OSTree, ac ne tak hardcore jako Nix, na me nepusobi jako uplna tuctovka. posle me ma bliz k "ukrutne inovativnosti"Pokud jde o ostree/continuous od Colina Walterse, tak to vnímám jako nástroj na značně jiné účely než package manager.
jinak NixOS neni pohopouhy teoreticky konstukt, je to skutecna fungujici distribuce, kterou pouzivaji skutecni lide, a kterou si mouho vyzkouset i ctenari abicka, napr ve VirtualBoxu. v pripade Guixu to jde v QEMUJenže pořád zústává nezodpovězená otázka, proč by to měli zkoušet, tedy co je na tom tak úžasného, aby to stálo za zkoušku.
jeden z dalsich "vystrednich" projektu na ktery jsem si ted vzpomel, je GoboLinux -- distribuce, ktera provozuje system "kazda aplikace ve svem adresari". tento projekt byl dlouha leta byl v komatu, ale v posledni dobe opet ozil.I tady bych se rád dozvěděl proč, s výjimkou MS-DOS nostalgie, by to měl člověk chtít používat.
Napriklad chci otestovat novou verzi nejakeho projektu, ktera ma ale hrozne moc (build) zavislosti. Takto se mi vsechny nainstalujou na jedno misto a nezase*u si tim kompletne system.Něco podobného dělá mock, akorát je ukrutně pomalý, ale v tom by teoreticky mohl pomoci docker.
S Nix nainstalujes python3 na jeden prikaz do systemu ciste (a poresi ti to i (build) zavisloti (takze pak neskoncis s pythonem, kde treba nefunguje https v urllib).Nevěřím na magii v lennartovském smyslu. Znám zhruba reálné problémy s přípravou a instalací software balíků od autotools a alternativ přes ebuild a rpm až po konflikty v instalaci. Znám současná řešení v RPM distribucích (a tím pádem i ve značně podobných .deb distribucích) a v Gentoo. Jsi schopný mi přesně říct, v čem se Nix liší a jak v RHEL6 magicky vyřeší všechny problémy distribuce software, aniž bych pro to musel hnout prstem? Narážím na limitace jak RPM tak i ebuildů, jsou věci, které se dají jednoznačně vylepšit, jsou věci, kde je potřeba se rozhodnout mezi více možnostmi s různými výhodami. Ale zatím si nejsem vědom toho, že bych mohl vzít nějaký kus software a od zítra tvrdit, že se všechno udělá samo.
v čem se Nix liší a jak v RHEL6 magicky vyřeší všechny problémy distribuce softwareIf only
... vsechno fakt nevyresi, ale stejne umoznuje dost veci, ktere s klasickymi package managery zni jako pohadka.
Napriklad chci otestovat novou verzi nejakeho projektu, ktera ma ale hrozne moc (build) zavislosti. Takto se mi vsechny nainstalujou na jedno misto a nezase*u si tim kompletne system.
Dospělé balíčkovací systémy umožňují instalaci mimo /.
A stejne tak na jeden prikaz muzu vsechno vycistit.
Dospělé balíčkovací systémy poznají, že implicitně nainstalovaný balíček už není potřeba, a odinstalují ho.
nikdo nema cas to delat ciste
Od práce tě nezachrání žádný balíčkovací systém. Pokud software nikdo ještě nezabalil, tak někdo tu práci první udělat musí. Jinak to bude vždy špinavé.
Nix je dost prakticky a resi realny problem s deploymentem software na dnesnich linuxovych distribucich.
Řeší jeden problém a naopak vytváří jiný.
Dělá to, že po instalaci balíčku jeho obsah nelze přímo použít. Takže nezase*u si tim kompletne system
. Jenže naopak to znamená, že každý program, který ho chce použít, musí v metadatech deklarovat, že ho potřebuje, aby systém mohl potřebné závislosti explicitně zapnout.
Díval jsem se do manálu i na zdrojáky Nixu a třeba u perlových skriptů dělá to, že přepisuje shebangy, aby v nich zpřístupnil požadované perlové moduly. Podobně při build-requires přidává překladači parametry s vyhledávácími cestami k závislým hlavičkovým souborům.
Tipuji, že u programů a knihoven přidává cesty to PATH a LD_LIBRARY_PATH.
V podstatě se jedná o složitější environment modules.
Co je novátorské, je identifikace zkompilovaných balíků přes hashe, což (nějakým způsobem?) umožňuje poskládat řetězec build-time závislostí a jednoznačně na něj odkazovat (třeba při replikaci instalací). Ostatně stejně to dělá OS-Tree nebo Docker.
Jenže přesně tahle novátorská vlastnost je dvousečná – jedná se efektivně o bundlování. (Pravda v podání Nixu je prostorově účinné, protože jednotlivé balíky se instalují jen jednou, ale zapínají se jakožto závislost u mnohokrát. Tedy zachovává se myšlenka sdílených knihoven.) Efektivně, protože se fixuje konkrétní build závislosti skrze hash. Takže když distribuce změní (například opraví bezpečnostní chybu) balík, tak balíčkovací systém potichu nechá původní verzi. A pokud distributor reverzní závislosti tohle nesleduje a nevydává rebuildy s aktuálními hashi, tak uživatelé budou používat rozbitý balík nadosmrti.
Což je přesně to, proti čemu jsou klasické balíčkovací systémy navržené.
Jirka Eischmann v přednášce řekl něco moc důležitého: Distributor nemá kapacitu všechno zabalit a vývojáři třetích stran nic balit nechtějí. Než se vypustí džin bundlování z lahve, je třeba zařídit izolaci programů, jinak se uživatelé v hnoji, který jim budou vývojáři třetích stran nabízejí, utopí.
Já nejsem v principu proti Nixu nebo podobným věcem. Někdo tu potřebu má, tak proč mu ji zakazovat. Ale vždy je to o tom, jak se takový nástroj použije a jestli se domyslí všechny důsledky a jestli s nimi budou všichni srozuměni. Tady se obávám, že k zamyšlení nedošlo.
Ještě jsem se na to díval.
Hashe se při překladů balíků nepoužívají. Používají se jen pro identifikaci binárních balíků, pro jejich stahování ze sítě a pro správu běhového prostředí.
PATH a jiné vyhledávací proměnné se neupravují. Místo toho ukazují do adresáře plného symlinků na spustitelné programy, dynamické knihovny a podobně. Když se „aktivuje nainstalovaný balík“, tak se adresář symlinků zkopíruje, přidají se odkazy na soubory z aktivovaného balíku a nakonec se adresáře atomicky přes rename(2) prohodí. Tím je docílena atomicita aktualizací i přes více balíků na jednou.
Návrat k předešlé verzi běhové prostředí se řeší tak, že adresáře symlinků se nemažou, ale pojmenovávají jakýmsi lokálně platným rostoucím číslem (něco jako revize v SVN), takže rollback je o jen o použití stejně pojmenovaného adresáře). (Ve skutečnosti i tohle je implementované přes symlinky.) Balíky v podstatě odinstalovat nelze. Pouze lze zavolat garbage collector, který smaže balíky, které již nejsou dostupné ze žádné verze běhového prostředí. To samozřejmě znamená, že není radno skladovat celou historii prostředí, ale s jistým zpožděním ji zametat (jako logově orientované souborové systémy).