Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.
Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Po více než třech měsících vývoje od vydání verze 231 (zprávička) oznámil Lennart Poettering vydání verze 232 správce systému a služeb systemd (GitHub, NEWS). Novinkou je například nástroj systemd-mount (zprávička).
Tiskni
Sdílej:
každou chvíli nahradí nějakej GNU nástroj :-/.To je mysleno na ten systemd-mount nebo na co? Jestli to neni jen takovy FUD.
CO mě ale sere, je, že oni ty komponenty rvou do jednoho build tree a dá se to vypnout jen v buildu přepínačem. Měli by to komponenty mnohem více oddělit, do samostatných repozitářů a následně balíků pro distraUnix tradicne byl a soucasne BSD jsou vyvijena v jednom repositari a bylo to vzdy prezentovana jako vyhoda, zejmena kvuli integraci. Jak je to zabalene do balicku je zalezitost konkretni distribuce, nemusi byt vse v jednom instalacnim balicku.
Třeba systemd-boot už mi přijdi jak technicky, politicky i morálně za hranou. Nevidím jediný plusový bod na inkluzi bootloaderu do systemd infrastruktury a cpát do do systemd balíku.Proc? Je to volitelna komponenta, jednoduchy a rychly bootloder podporujici EFI secure boot a lze ho nahradit, pro kontejnery idealni. Gummiboot (systemd-boot) misto Grub2 kdykoliv to jde.
problém je spíše v tom, že ó náš nejvyšší a nejchytřejší začne tyto věci nejdříve silně doporučovat a posléze ostatní silně komplikovat, že na to postupně přejdeš ať chceš nebo nechceš.Není tohle chyba spíše RedHatu než Ó Nejvyššího? To mě vždycky na těhle diskusích zaráží, když se začně nadávat na Lennarta. Mně přijde, že Lennart jako takovej a jeho názory jsou celkem irelevantní, není na místě spíš být znepokojen tím, že jedna firma umožní jednomu člověku ovlivňovat ekosystém tímhle způsobem? (Ať už je ten jeden člověk kdokoli.)
Bude to pravděpodobně završeno systemd-system.dat a k němu cli nebo gui systemd-regedit.Pokud vim, Gnome má regedit už dlouhá léta.
udisks fakt neni jen wrapper kolem mountu, ale spis storage volume discovery a jakasi convenient knihovna pro GUI, aby se stejny kod nepsal tisickrat (udev enumerace, eventy, luks, mdraid, smart atd.).
Pekná teória, ale v praxi to aj tak každý píše 1000x. Udev dokáže pripojiť niektoré zariadenia, ale napríklad MTP, ktorý má mnoho spoločných vlastností (dá sa mountovať cez fuse, má dostupné určité metadáta ...) vôbec nerieši, takže pripojenie ďalších zariadení si aj tak píše každé prostredie posvojom.
Michas dve veci dohromady. Udisks je lokalni storage management, neimplementuje filesystemy, ani sitove ci jine userspace protokoly, na to jsou jine projekty na jine urovni, casto jako nadstavba ve spolupraci s udisks.
A pokud se nekdo rozhodne reimplementovat existujici funkcionalitu jen kvuli nesympatiim k pouzitym knihovnam nebo jazyku, je to jeho problem
Aké knižnice sú k dispozícii? Pred pár mesiacmi som písal podporu udisks2 do prostredia a zistil som, že to nepripojí androidy, kameru a mnoho ďalších zariadení.
Ono scripty spoustet sice jde, ale ty scripty nesmi trvat moc dlouhoAha tak to je zajímavá informace.
Ono scripty spoustet sice jde, ale ty scripty nesmi trvat moc dlouho, uz nevim proc to tak je.
Protože udev na ten skript čeká a dokud neskončí, nepokračuje ve zpracování dalších pravidel ani dalších eventů.
"machinectl list" now shows the IP address of running containers in the output, as well as OS release information.Užitečné.
systemctl gained a new --wait optionMohli by přidat něco podobného i k
machinectl
. Příkaz machinectl stop
skončí okamžitě, ale kontejner se vypíná déle. Chtělo by to nějaký parametr pro čekání na úplné vypnutí.
Support for dynamically creating users for the lifetime of a service has been added.K čemu je to dobré? Pokud provozuju nějakou službu, pravděpodobně má i data na fs a ta by měla mít vlastníka jako uživatele té služby. Služby bez dat existují také, ale stále nevidím důvod, proč nevytvořit prostě klasického uživatele. Vždyť je to jen jeden řádek v
/etc/passwd
.
Možná je to jen rozšíření toho, co už dělá nspawn - ten si přemapuje uid ve kontejneru na úplně jiné uid v hostitelském os.
/etc/resolv.conf will be bind-mounted into containers started by systemd-nspawn, if possible, so any changes to resolv.conf contents are automatically propagated to the container.WTF? No, další funkce k vypnutí. Tohle bude dělat jen problémy, protože při změně
/etc/resolv.conf
na jednom stroji asi nikdo nepředpokládá, že se mu to změní na desítkách dalších. Budou vznikat krásné nové chyby.
U toho uzivatele, kdyz to vezmu z pohledu hostingu, tak mit neustale prepisovany /etc/passwd virtualnima uzivatelema a tim i treba neustale zmeny ve verzovacim systemu asi neni to prave orechove, misto pouzivani virtualnich...A proč by se to mělo neustále přepisovat? To neustále provozujete zcela jiné služby než před chvílí? Ptám se, zajímá mě k čemu to v praxi je. V naší praxi, během vývoje softu se doiteruje do nějaké množiny služeb, které se potom nasadí do produkce. Potom se to mění pouze minimálně, služby se přidávají při nějakých updatech. Ale není to neustále a s časem těch změn postupně ubývá, tak jak soft zraje k nějakému optimálnímu stavu.
Mohli by přidat něco podobného i k machinectl.+1
Služby bez dat existují také, ale stále nevidím důvod, proč nevytvořit prostě klasického uživatele. Vždyť je to jen jeden řádek v /etc/passwd.Hadam, ze je to soucast portable services. Proc by se mel plevelit passwd, pokud sluzba nemuze modifikovat jakykoliv FS a ma docasnou existenci?
Tohle bude dělat jen problémy, protože při změně /etc/resolv.conf na jednom stroji asi nikdo nepředpokládá, že se mu to změní na desítkách dalších. Budou vznikat krásné nové chyby.Podle vas je lepsi nemit moznost zadne propagace a muset to pripadne menit na desitkach kontaineru?
Hadam, ze je to soucast portable services. Proc by se mel plevelit passwd, pokud sluzba nemuze modifikovat jakykoliv FS a ma docasnou existenci?Moc nerozumím výrazu "plevelit". Pokud toho uživatele potřebuju, tak to není plevelení, pokud ho nepotřebuju, tak ho tam nemám. Ale já toto chápu jako zobecnění abstrakce, která už je v nspawnu, kterej si přemapovává uid, takže toto mi až tak nevadí. Spíše mě zajímá nějaký konkrétní případ z praxe, kdy se to hodí.
Podle vas je lepsi nemit moznost zadne propagace a muset to pripadne menit na desitkach kontaineru?Já dávám přednost explicitním metodám před "ono se to nějak samo". Takže pokud někdo potřebuje měnit desítky kontejnerů, tak má použít něco jako ansible, puppet apod. systémy pro hromadnou správu. Stejně je bude muset mít pro konfiguraci jiných věcí, které nspawn (zatím) automaticky nebinduje. Nehledě na to, že stejně mám z hostitele přístup do fs těch kontejnerů, takže to můžu udělat i čistě souborovou operací (u kontejnerů nad adresářem nebo subvolume, u image to bude složitější). A také asi vždycky nechci mít v kontejnerech stejný resolv.conf, jako v hostiteli. A asi nechci mít ani stejný resolv.conf ve všech kontejnerech. Druhá věc, virtualizace má (podle mě) sloužit spíše k izolaci než ke sjednocení. Kdybych chtěl ty aplikace nějak vzájemně propojovat a jedna druhou ovlivňovat, tak je nebudu virtualizovat, ale nechám je rovnou na jednom hostu. Virtualizaci používám pro zvýšení izolace.
Pokud toho uživatele potřebuju, tak to není plevelení, pokud ho nepotřebuju, tak ho tam nemám.A pokud ho potrebujete docasne pro beh nejake sluzby?
Já dávám přednost explicitním metodám před "ono se to nějak samo".Ale to prece neni problem v danem pripade, chovani a propagace jsou explicitni a dokumentovane.
tak má použít něco jako ansible, puppet apod. systémy pro hromadnou správu.To muze byt overkill a nemyslim, ze se tomu systemd snazi konkurovat.
Virtualizaci používám pro zvýšení izolace.Mira izolace se muze lisit.
Pokud chcete rozumnet jeho motivaci, poslechnete si prednasku LP zde, zejmena druhou cast.To je snad materiál tak pro psychiatry.
A pokud ho potrebujete docasne pro beh nejake sluzby?
Opět, co to je dočasná služba? Pochopitelně se stává, že se nainstaluje nějaký balík, o kterém se za týden zjistí, že není tak úplně potřeba, tak se zase odstraní. Mě vůbec nevadí, že týden běžela služba a že měla svého uživatele. Naopak mi to přijde úplně normální.
Ale to prece neni problem v danem pripade, chovani a propagace jsou explicitni a dokumentovane.
A ta dokumentace roste kde? Na www.freedesktop.org/software/systemd/man je sice index 232, ale man stránky nspawnu jsou 231. Hledal jsem v gitu, aktuální man nspawn a man resolv*, ale tam to též není.
Hlavně jde o to, že je to opět další změna chování. Admin nepředpokládá, že když změní resolv.conf
někde (třeba zrovna na hostu s kontejnery - proč by se tento měl chovat jinak než ostatní?), že se to přepíše do nějakých dalších strojů. V předchozích verzích se mu to nestávalo.
Pokud chcete rozumnet jeho motivaci, poslechnete si prednasku LP zde, zejmena druhou cast. Hadam, ze s tim muze byt uspesny, nebot se prida jednoduchy unifikovany zpusob jak distribuovat a konfigurovat sluzby; cas ukaze.
No někde kolem 50 minuty říká, že bude možné distribuovat služby pomocí jednoho file image (a někde dřív: nebudou si vymýšlet vlastní, stačí jim, když to pozná kernel - squashfs, gpt image, adresář apod.). No já bych řekl, že jeden image pro distribuci software zde už existuje a říká se mu balíček pro balíčkovací systém distribuce.
A 50:47 tomu už jen nasazuje korunu:
systemctl start https://.../myservice.spi systemctl status myservice
No, asi je to pořád lepší jak čím dál tím víc propagované:
curl http://.... | bash
nebo ještě lépe sudo bash
U portable services to alespoň poběží v nějaké izolaci. Ale že by se mi zrovna toto líbilo, tak to ne.
A 50:47 tomu už jen nasazuje korunuDocker znáš?
Opět, co to je dočasná služba? Pochopitelně se stává, že se nainstaluje nějaký balík, o kterém se za týden zjistí, že není tak úplně potřeba, tak se zase odstraní.Koncept, kdy snadno instalujete sandboxovanou sluzbu a muzete ji odinstalovat bez jakychkoliv vedlejsich efektu na system na kterym bezi, ma smysl. Zatim mi prijde, ze se na zaklade svych pocitu a preferenci, uziti v limitovanem poctu scenaru, se snazite poukazovat, ze to neni potreba. Stale nechapu v cem vidite problem, pokud to nechcete, nepouzivejte to.
No já bych řekl, že jeden image pro distribuci software zde už existuje a říká se mu balíček pro balíčkovací systém distribuce.Fajn a v cem je problem? Pripojim NFS adresar, spustim sandboxovanou sluzbu, kdyz neni potreba ukoncim, odpojim adresar, a mam stale cisty system bez nutnosti neco lokalne instalovat.
A 50:47 tomu už jen nasazuje korunu:V cem je problem?systemctl start https://.../myservice.spi systemctl status myservice
A ta dokumentace roste kde? Na www.freedesktop.org/software/systemd/man je sice index 232, ale man stránky nspawnu jsou 231.OK, dokumentace neni asi jeste aktualizovana. Changelog to ale popisuje pomerne jasne:
/etc/resolv.conf will be bind-mounted into containers started by systemd-nspawn, if possible, so any changes to resolv.conf contents are automatically propagated to the container.
odinstalovat bez jakychkoliv vedlejsich efektuNo já nevím jak kde, ale balíček snad lze odinstalovat bez vedlejších efektů. Install / purge dělám běžně. Jinak jak jsem psal, mě toto až tak nevadí, chápu to jako rozšíření již existující abstrakce.
stale cisty system bez nutnosti neco lokalne instalovat.Tohle je ve vašem komentáři potřetí. Jakou distribuci používáte, že instalace a odinstalace balíčku "plevelí" systém?
OK, dokumentace neni asi jeste aktualizovana. Changelog to ale popisuje pomerne jasne: /etc/resolv.conf will be bind-mounted into containers started by systemd-nspawn, if possible, so any changes to resolv.conf contents are automatically propagated to the container.Poměrně jasně "if possible"? Co to znamená? Pokud soubor půjde přepsat? Já bych to potřeboval znát poněkud přesněji, protože pokud "if possible" znamená "kdykoliv je to možné" (což je pro nspawn vždy), tak to je pro mě s nspawnem stopka.
Tohle je ve vašem komentáři potřetí. Jakou distribuci používáte, že instalace a odinstalace balíčku "plevelí" systém?Viz u meho profilu. Ale asi kazda rozumna, pokud instalace sluzby vytvari uzivatele a skupinu pod kterymi bezi.
Poměrně jasně "if possible"? Co to znamená? Pokud soubor půjde přepsat? Já bych to potřeboval znát poněkud přesněji, protože pokud "if possible" znamená "kdykoliv je to možné" (což je pro nspawn vždy), tak to je pro mě s nspawnem stopka.Podle kodu, pokud jsem neco neprehledl (jsem utahan), se to pokusi nastavit vzdy pokud neni pouzit alespon jeden z parametru:
--network-zone --network-bridge --network-veth-extra --network-veth --network-ipvlan --network-macvlan --network-interface --private-networkPokud neni, pokusi se pouzit hostitelsky /usr/lib/systemd/resolv.conf (staticky soubor od systemd-resolved) nebo /etc/resolv.conf, pokud k nemu ma pristupova prava.
Viz u meho profilu. Ale asi kazda rozumna, pokud instalace sluzby vytvari uzivatele a skupinu pod kterymi bezi.No distra, se kterými mám největší zkušenost, tak při odstranění balíčku uživatele a skupinu zase odstraní. Ale Lennart říkal, že Fedora uživatele nechává. No nevím, psát funkci k vůli stavu v jedno distru.
Podle kodu, pokud jsem neco neprehledl (jsem utahan), se to pokusi nastavit vzdy pokud neni pouzit alespon jeden z parametru:Díky. Tohle dává smysl. Bez těchto parametrů není oddělené síťování, sdílí se IP s hostitelem a tak dává smysl i používat stejný resolv.conf. Tak to je ok.
No distra, se kterými mám největší zkušenost, tak při odstranění balíčku uživatele a skupinu zase odstraní.A jak se resi soubory vytvorene pod uzivatelem a skupinou, ktere mohou byt zavisle na konfiguraci, uziti? Purge AFAIK odstrani jen konfiguracni soubory, to znamena ze system muze byt ve stavu, kdy na disku jsou nemapovane UID/GID. Takze pristup, ktery pouziva Fedora, kdy takove uzivatele neodebira, ma smysl.
Purge AFAIK odstrani jen konfiguracni soubory, to znamena ze system muze byt ve stavu, kdy na disku jsou nemapovane UID/GID.A v čem je problém?
There's no sane way to check if files owned by those users/groups are left behind (and even if there would, what would we do with them?) and leaving those behind with ownerships pointing to now nonexistent users/groups may result in security issues when a semantically unrelated user/group is created later and reuses the UID/GID.Fedora/CentOS/RHEL/openSuse/SLES, proste rozumnejsi distribuce to tak delaji
Fedora/CentOS/RHEL/openSuse/SLES, proste rozumnejsi distribuce to tak delajiOk no, jiné distribuce při odinstalaci balíčku upozorní, že adresář s daty je neprázdný, že jej nebude mazat a že si to má admin zařídit sám. Fedora se vydala jinou cestou. V pohodě. Čemu konkrétně teda vadí, že tam ten uživatel zůstane, když sám píšete, že rozumnější distribuce to tak dělají? Proč se tedy neřídíte pokyny té distribuce a toho uživatele tam rovnou nenecháte?.
Možná je to jen rozšíření toho, co už dělá nspawn - ten si přemapuje uid ve kontejneru na úplně jiné uid v hostitelském os.UID maškaráda :-O
Ty bezpečnostní chyby tam v mnoha případech byly "odjakživa", jen dlouhá léta nikoho nezajímaly, protože je mohl zneužít jen root, který to neměl zapotřebí. Pěkný příklad je třeba CVE-2016-4997/CVE-2016-4998. Zrovna včera přišla další taková; ta tam sice asi není moc dlouho (je to v poměrně novém driveru), ale taky je z kategorie, že by to bez userns bylo celkem nezajímavé.