Byla vydána nová stabilní verze 6.11 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Ubuntu 26.04 patrně bude ve výchozím nastavení zobrazovat hvězdičky při zadávání hesla příkazu sudo, změna vychází z nové verze sudo-rs. Ta sice zlepší použitelnost systému pro nové uživatele, na které mohlo 'tiché sudo' působit dojmem, že systém 'zamrzl' a nijak nereaguje na stisky kláves, na druhou stranu se jedná o možnou bezpečnostní slabinu, neboť zobrazování hvězdiček v terminálu odhaluje délku hesla. Původní chování příkazu sudo
… více »Projekt systemd schválil kontroverzní pull request, který do JSON záznamů uživatelů přidává nové pole 'birthDate', datum narození, tedy údaj vyžadovaný zákony o ověřování věku v Kalifornii, Coloradu a Brazílii. Jiný pull request, který tuto změnu napravoval, byl správcem projektu Lennartem Poetteringem zamítnut s následujícím zdůvodněním:
… více »Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 163 (pdf).
Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního
… více »Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.
Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.
KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.
Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.
Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).
Možná už jste někdy dumali nad tím, jak si na serveru zprovoznit službu, která vytváří náhledy webových stránek. V poradně je několik dotazů na toto téma, ale žádná kloudná odpověď. S radostí vám tedy můžu oznámit, že jsem na to konečně přišel.
Problém je ten, že potřebujete nějakou paměť, do které se ta stránka bude vykreslovat. Tuto paměť obvykle zprostředkovává X server, ale provozovat na serveru třeba Xorg je trochu zbytečné. Naštěstí existuje X server Xvfb, který je velice jednoduchý a všechno si vykresluje pouze do paměti. Minimálně v distribucích založených na Debianu je jako balíček, takže instalace je v pohodě.
Jak pustit Xvfb? Nejlépe pomocí startx:
startx -- /usr/bin/Xvfb :10 -screen 0 1600x1200x24
Tato řádka pustí Xvfb jako display 10 v rozlišení 1600x1200x24.
Hned si to vyzkoušíme a pustíme si v našem virtuálním framebufferu Firefox s ABCLinuxu.cz:
DISPLAY=:10 firefox www.abclinuxu.cz
Nikde nic bohužel nejde vidět, tak si budeme muset udělat screenshot:
DISPLAY=:10 import -window root obrazovka.png
A výsledný screenshot vypadá takto:
Jak vidíte Firefox se pustil do správné obrazovky, ale nebude asi vhodným prohlížečem pro dělání náhledů stránek, přinášelo by to jen samé problémy. Napíšeme si tedy prohlížeč vlastní! Bude jednoduchý a bude dělat přesně to co chceme. Použijeme jazyk Python a komponentu gtkmozembed. Prohlížeč se také sám postará o vygenerování náhledu. Bude možné jich spustit více najednou a urychlit tak generování většího počtu náhledů. Tady je kód, jak vidíte, je to velmi jednoduché:
#!/usr/bin/env python
import sys
import gtk
import gobject
import gtkmozembed
if len(sys.argv) == 2:
print "Bad count of arguments."
if len(sys.argv) < 3:
print "Usage: webshot.py URL output_file.png"
sys.exit()
def on_net_stop(caller_widget):
gobject.timeout_add(10000, take_shot)
def take_shot():
(width, height) = window.get_size()
pixbuf = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, False, 8, width - 16, height - 15)
pixbuf.get_from_drawable(browser.window, browser.get_colormap(), 0, 0, 0, 0, width - 16, height - 15)
pixbuf.save(sys.argv[2], "png")
gtk.main_quit()
return False;
gtkmozembed.set_profile_path("/tmp", "webshot")
browser = gtkmozembed.MozEmbed()
browser.connect("net_stop", on_net_stop)
browser.set_size_request(1024, 768)
browser.show()
browser.load_url(sys.argv[1])
window = gtk.Window()
window.add(browser)
window.show()
gtk.main()
Jak program funguje? Na vstupu má dva parametry - webovou adresu a jméno výstupního souboru náhledu. Prohlížeč je okno pouze s jedním widgetem zobrazujícím stránku. Po načtení stránky se chvilku počká a obraz widgetu uloží do souboru. Velikost okna a čas na vykreslení je v programu natvrdo, ale není problém je parametrizovat.
A to je vše! Není to jednoduché? Ještě malá ukázka použití:
DISPLAY=:10 ./webshot.py abclinuxu.cz abclinuxu.png
Výstup:
Tiskni
Sdílej:
firefox -screenshot http://abclinuxu.cz/ > obrazovka.png
a musí kvůli tomu člověk dělat takové ptákoviny jako spouštět speciální X server. Pro Konqueror něco takového bylo, ale nepodařilo se mi to tehdy zkompilovat.
rootem, tak má jen stejná práva, jako kterýkoli uživatel toho počítače. K čemu bude soubor /etc/passwd někomu dobrý?
/etc/passwd není žádná katastrofa – třeba na různých školních unixových nebo linuxových strojích mohou mít účet stovky nebo tisíce studentů, všichni vidí /etc/passwd, a žádný problém v tom není. Samozřejmě pokud máte server, klientům tam povolíte přístup jenom přes scp a předpokládáte tak, že nikdo kromě vás nemůže lokálně nic spustit, a pak necháte v systému takovouhle díru, je to problém – minimálně proto, že je to zjevně místo, které je zabezpečené viditelně míň, než zbytek systému, pravděpodobně tedy uniklo pozornosti správce a je vhodné pátrat tímto směrem po dalších slabinách.
všichni vidí /etc/passwd, a žádný problém v tom není.V tom máš pravdu, to bychom se museli pohybovat někde na poli špionáže, aby měla nějakou hodnotu informace, že uživatel xabcd123 má účet na daném stroji. Je to taky výhoda unixových systémů, účet může dostat širší okruh lidí, než třeba u Windows. (ale přesto, podle principu minimálních práv, není dobré vystavovat veřejně nějaká data, pokud to není potřeba)
if URL[:5] == "file:" :
print "Ani ..cu!"
return 1
if sys.argv[1][:5] ...
javascript:window.open("file://…")?
http z nějaké jiné domény, stejně to nepůjde číst.
Ale ono je problém i to obyčejné http. Když si tam někdo nechá zobrazit stránku s nějakým Flashem, přesměrováním sem tam nebo dlouhotrvajícím javascriptem, jenom to vytíží počítač a tu službu třeba nebude moci využít někdo jiný. Ale pokud máte nějaké limity na přenesená data a někdo si tam nechá stáhnout pár obrazů DVD, může s tím být už skutečný problém.
Ten výběr data JS je blokován ještě jinak – JS nesmí přistupovat k dokumentu, který je nahrán z jiné domény. Tj. i kdyby v tom framu byl jiná adresa s http z nějaké jiné domény, stejně to nepůjde číst.
To jsem nevěděl. Dobrá informace.
Ale ono je problém i to obyčejné http. Když si tam někdo nechá zobrazit stránku s nějakým Flashem, přesměrováním sem tam nebo dlouhotrvajícím javascriptem, jenom to vytíží počítač a tu službu třeba nebude moci využít někdo jiný. Ale pokud máte nějaké limity na přenesená data a někdo si tam nechá stáhnout pár obrazů DVD, může s tím být už skutečný problém.Je to složitější než jsem si myslel. Pokud si člověk bude dělat obrázky jenom pro sebe, tak to není takový problém, ale jako veřejná služba je to hodně náročné na zabezpečení. Zajímalo by mě, jak jsou chráněny podobné existující služby, třeba český http://www.thumbnails.cz/.
URL[:5] != "http:"
když už teda takhle. Stejně bych ale přidal ještě tu virtualizaci, AppArmor a hodně přísně nastavený firewall (povolit jen 80 a zakázat připojení na všechny vnitrofiremní servery).
Místo Xvfb by se použilo třeba vnc.
Ahoj, zajímavý článek..
Mam však problém, že mi první varianta s firefoxem funguje, ale pythoní skriptík už dělá problémy. Obrázek se udělá, ale ten je zdeformovaný. Pruh vpravu a dole je jakoby posunutý kus odněkud jinud.
Zkouším to v ubuntu s naběhnutým systémem.. ale to by snad vliv mít nemělo ne... ?
Nějaké nápady? změna velikosti nebo rozlišení nepomohla..
A teď mě tak napadlo, na serveru nemusí být grafická karta, že?
Bude to fungovat i bez ní ?