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.
Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.
Google na včerejší akci The Android Show | I/O Edition 2026 (YouTube) představil celou řadu novinek: Gemini Intelligence, notebooky Googlebook, novou generaci Android Auto, …
)
Tady k těm potvorám je totiž dostupná dokumentace, která říká, jaké esc sekvence se mají poslat, aby to něco někde vytisklo. Tiskárna sama o sobě má několik fontů, umí sama vygenerovat různé typy barcode, umí tisknout obrázky (bitmapy). Většina tiskových ovladačů prostě vygeneruje bitmapu a tu tam pošle, dělají to i ty speciální programy zmíněné výše. Tisková úloha tak většinou sestává z hlavičky, která obsahuje všechna nastavení (velikost papíru, okraje, počet kopií, "darkness", typ senzoru, zpětný posun...) a pak jsou data - texty a obrázky.
První zádrhel je v tom, že dokumentace sice obsahuje vysvětlení všech možných příkazů, ale je toho tolik, že člověk neví, co do té hlavičky teda dát. Tady se mi nejvíc osvědčila metoda - nastav si tiskárnu ve Windows, nadesignuj si etiketu v nějakém tom superprogramu pro Windows, pošli ji vytisknout a přesměruj tiskovou úlohu do souboru. Hlavičku / patičku je pak možno "vykrást" z tohoto majstrštyku - bývá to cca 10 příkazů, zpětným studiem dokumentace se dá přijít i na to, co to dělá.
Pak následuje design samotného "těla" - je možno jít přes studium nastavení fontů a různých typů barcode, nebo varianta "total bitmap", kdy prostě přes celou etiketu plácnu jednu bitmapu (ghostscript je náš kamarád
). Jenom bych upozornil, že pokud se člověk vydá první cestou, tak už nikdy "ů" nevytiskne.
Jak teda vypadá taková tisková úloha pro Sato? Asi takto:
#!/usr/bin/perl
#
# Hlavicka
#
print "\e##1\x02\n";
print "\eA\eEX0\eAR\eA3H150V001\n";
print "\eCS3\e#E5\eA104801081\eZ\x03C\n";
print "\e##5\x02B\eA\n";
print "\ePS\e\%0\n";
#
# Levy sloupec
#
print "\eV50\eH00\eL0202\eWB1" . <>;
print "\eV120\eH00\eL0101\eWB1Product ID:\n";
my $text = <>; chomp $text;
print "\eV150\eH00\eB103100*$text*\n";
print "\eV255\eH125\eL0101\eWB1$text\n";
print "\eV290\eH00\eL0101\eWB1Production order no:\n";
$text = <>; chomp $text;
print "\eV320\eH00\eB103100*$text*\n";
print "\eV425\eH125\eL0101\eWB1$text\n";
#
# Pravy sloupec
#
print "\eV50\eH450\eL0101\eWB1" . <>;
print "\eV90\eH450\eL0101\eWB1Size: " . <>;
$text = <>; chomp $text;
print "\eV130\eH450\eL0101\eWB1Power: $text W\n";
$text = <>; chomp $text;
print "\eV170\eH450\eL0101\eWB1Weight: $text kg\n";
print "\eV220\eH450\eGM";
printf ("%05d,", -s "/u/abas/data/win/ovw/ce_logo.bmp");
open PIC, "/u/abas/data/win/ovw/ce_logo.bmp";
binmode PIC;
while (< PIC >) {print}
print "\eV220\eH620\eL0303\eWB1IP44";
print "\eV350\eH720\eGM";
printf ("%05d,", -s "/u/abas/data/win/ovw/company_logo.bmp");
open PIC, "/u/abas/data/win/ovw/company_logo.bmp";
binmode PIC;
while (< PIC >) {print}
#
# Paticka
#
print "\e~A1\eQ" . <> . "\eCL0\eZ\x03\n";
Tiskneme pak pomocí něčeho jako:
./label data | lpr -PqcZebra by vypadala podobně, jenom má jiné příkazy. Co se týká připojení tiskárny, tady ty potvory mají často paralelní nebo sériový port, zbytek je "optional". Důrazně doporučuji koupit k nim síťovou kartu, pokud není, veškeré problémy vyřeší printserver za 1000Kč. Nikdy to nepřipojujte k PC s Windows a nesdílejte přes Sambu! Ne že by to nefungovalo, ale... No to nebudu vysvětlovat, na to si každý přijde sám.
No a ještě tady mám jeden takový tiskařský oříšek.
Byl jsem postaven před problém, jak vytisknout na štítky výkresy výrobku. Nic složitého říkáte si, ale výkresy jsou většinou hodně veliké, když je člověk převede do bitmapy a zmenší, tenké čáry prostě zmizí. Copak asi udělá toto?
convert -resize 5000x5000 -blur 30 -black-threshold 99% -resize 500x500 -black-threshold 90%Závěrem bych popřál hodně zdaru a šťastně vytištěných štítků na všechny ty fantastické produkty, co se tady vyrábí!
Tiskni
Sdílej:
Díkes moc!
find . -name *.pdf -exec sh -c 'lpr -Plp$(( $RANDOM%5 )) {}' \;