Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.
Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.
XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).
Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.
Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.
Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.
)
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 )) {}' \;