Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
Ačkoliv jsem nepočítal s tím, že budu psát seriál, byl jsem překvapen reakcemi a nakonec se mi sešlo několik témat, která jsem se rozhodl zpracovat do pokračování (první díl: České prostředí v okně xdosemu). Takže dnes se podíváme jednak na instalaci (x)dosemu a jeho konfigurační soubor a dále na tisk z aplikací provozovaných pod (x)dosemu.
Dosemu je program, který v rámci Linuxu připraví prostředí pro běh DOSových programů. Dnes dosemu umožňuje mapování klávesnice a různé znakové sady pro zobrazování na konzoli v X Window
okně, ale také běh grafických programů (zejména her) jak v X Window, tak na textové konzoli, kterou umí přepnout do grafického režimu. Já sám tuto aplikaci používám pro provoz Abry (potažmo
FoxPro prostředí), ale mám zprávy, že pod dosemu v prostředí konzoly jel graficky např. Wolfenstein3D, v dokumentaci se dočtete, že je možný běh Doomu, takže se zdá, že je toto
prostředí opravdu univerzální. V dosemu.conf
najdete i volby, které by měly zpřístupnit síť Novell. Tuto vlastnost jsem však nezkoušel, proto o ní nepíšu. Než se začnete těšit na běh svého oblíbeného programu pro DOS pod dosemu, prohlédněte si soubor EMUfailure.txt
, kde najdete příklady programů s dosemu nespolupracující a také příčiny jejich nespolupráce. Stejně nakonec nezbude, než to prvně zkusit a pak se radovat .
Instalace dosemu se skládá ze dvou částí: jednak z instalace jakéhosi 'runtime', což je samotný balíček dosemu z vaší oblíbené distribuce. Do tohoto prostředí je však nutné doinstalovat ještě DOS. A zde máme na výběr ze tří variant:
Alternativně lze pro provoz DOSu pod dosemu použít funkční starý harddisk, na kterém byl DOS nainstalován: pak je třeba akorát tento disk připojit do systému a vědět, na kterém oddílu
(partition) je funkční DOS. Pro tento účel lze též použít DOS z (např.) Win95, kdy je ale nutné zaručit, že bude startovat pouze do DOSu a také bez úvodních grafických obrazovek. To se dá
zařídit v souboru msdos.sys, kde do sekce [Options]
zapíšeme tyto direktivy:
Logo=0
BootGUI=0
Pokud tato sekce v daném souboru neexistuje, pak ji samozřejmě vytvoříme.
Ještě poznámka k výběru samotného DOSu: Mám otestované poslední dva systémy, tj. FreeDOS a DrDOS. Zatímco FreeDOS mi občas spadl i s otevřenou Abrou a já jsem musel reindexovat soubory, tak asi před týdnem jsem nainstaloval na radu kamaráda DrDOS ve verzi 7.03, a zatím mi nespadl ani jednou. Zdá se, že má asi korektněji implementované nedokumentované funkce.
Po výběru ze škály různých DOS-ů vyvstává otázka, jak provést jejich instalaci do prostředí dosemu. Zde máme opět na výběr z několika možností:
Na samostatný diskový oddíl.
Tato volba bude aktuální, pokud budeme chtít provozovat dual-boot systém, případně máme starší počítač s nainstalovaným *-DOS-em apod. V tomto případě nastavíme v souboru dosemu.conf
direktivu $_hdimage
např. takto (předpokládejme, že máme nainstalovaný DOS na master disku na druhém kanálu IDE v oblasti 1):
$_hdimage = "/dev/hdc1"
Do adresáře na disku.
Tuto možnost použijeme, pokud pro DOS nechceme vyčlenit samostatnou diskovou oblast, navíc se v podstatě nejjednodušeji připravuje. Do zvoleného adresáře (předpokládejme např. /var/lib/dos
) totiž stačí prostě nakopírovat soubory potřebné k běhu DOS-u, upravit autoexec.bat
a config.sys
tak, ze se adresář bude chovat pro DOS
jako disk C:\
, dále najdeme adresář se soubory potřebnými pro dosemu (např. tím, že vyhledáme soubor exitemu.com
, v Debianu je v adresáři /usr/lib/dosemu/commands
), který pak nalinkujeme do našeho pomyslného disku C:\
příkazem:
ln -s /usr/lib/dosemu/commands /var/lib/dos
a nastavíme proměnnou PATH
v souboru autoexec.bat
tak, aby tento adresář také obsahovala. Tím je instalace adresáře hotova. Výsledný adresář celý nalinkujeme do adresáře, který nám určuje již zmiňovaná proměnná DOSEMU_LIB_DIR
příkazem:
ln -s /var/lib/dos /var/lib/dosemu
(Pozor, toto platí pro Debian, který má proměnnou DOSEMU_LIB_DIR
nastavenou právě na
/var/lib/dosemu
!)
a nakonec nastavíme proměnnou $_hdimage
takto:
$_hdimage = "dos"
(dos
je zde jméno adresáře)
Tím jsme připravili všechny podmínky pro běh DOSu pod dosemu. Nicméně by bylo ještě vhodné zastavit se alespoň u několika proměnných ze souboru dosemu.conf
. Takže jdeme na
to...
$_debug
Tato volba nám dává možnost ovlivnit rozsáhlost chybových výpisů. Možné volby můžeme najít v man dosemu.bin
pod volbou -D. Do tohoto souboru se však zapisují bez znaku D,
takže nastavení $_debug = "-a"
je ekvivalentní přepínači -Da
na příkazové řádce.
$_cpu
a $_mathco
Umožňuje nám zvolit typ procesoru, který bude dosemu emulovat pro DOS. Je možno použít hodnoty 80[345]86. Je zvláštní, že pokud jsem nastavil jinou hodnotu, než 80386, odmítal se mi rozjet
runtime FoxPro. Čili doporučená hodnota je $_cpu = "80386"
a k ní dále $_mathco = (on)
, která způsobí emulaci matematického koprocesoru.
Tyto volby se týkají různých paměťových módů, které bude dosemu emulovat pro DOS. Upozorňuji především na volbu $_dpmi
: bez ní se nerozjede nejen FoxPro, ale ani žádný jiný program, který pracuje s PharLap extenderem. Napadá mě AutoCAD, ale ten jsem pod dosemu nezkoušel. V EMUfailure však najdete, že verze 12c1 pro DOS nepojede, neb používá starší PharLap extender. Takže spíš novější verze, pokud existuje. Moje funkční sada pro provoz Abry (FoxPro) je tato:
$_xms = (1024)
$_ems = (2048)
$_ems_frame = (0xe000)
$_dpmi = (8192)
$_dosmem = (640)
Tady začíná nastavování národního prostředí. Nastavením $_term_char_set = "latin2"
říkáme dosemu, že náš terminál ovládá tuto znakovou sadu a dále budeme potřebovat nastavit rozložení klávesnice: to nastavíme např. takto: $_layout = "cz-qwerty"
, příp. máme ještě na výběr
volbu cz-qwertz.
Tyto volby jsou pokračováním nastavení národního prostředí pro xdosemu, tedy pro X Window System. Zde se mi osvědčilo toto nastavení:
$_X_keycode = (on)
$_X_font = "vga"
První volbou nutíme xdosemu používat klávesnici nadefinovanou volbou $_layout
. Je zde trošku problém, protože takto nadefinované klávesnice se nelze zbavit, což dělá problém zejména při psaní backslash-e. Ale dá se to přežít . Význam druhé volby jsme probírali v minulém článku: definuje se jí používaný font pro zobrazování.
Touto volbou se definuje rychlost odezvy xdosemu na klávesnici. Doporučuji ji nastavit na menší hodnotu (mám nastavenu hodnotu "1"), protože někdy bylo dosemu poměrně dost v závěsu...
Těmito volbami nastavujeme chování tisku pod dosemu. První volbou definujeme jednotlivé tiskové fronty tak, jak mají být postupně přiřazeny k LPT1, 2 a 3 a druhou volbou definujeme timeout, po jehož vypršení je úloha předána ke zpracování frontě. Já jsem ponechal defaultní hodnotu 20, je ale možné, že budete tuto hodnotu potřebovat zvýšit.
To by bylo ve zkratce k hodnotám, na které bychom se měli zaměřit ještě před prvním spuštěním dosemu, abychom s jeho chováním byli maximálně spokojeni hned napoprvé. A nyní se již blížíme k tisku...
Možná existují aplikace, u kterých není nutné provozovat žádné papírové výstupy, např. hry. Nicméně pokud má dosemu sloužit jako základ pro účetnictví, pak se bez tisků rozhodně neobejdeme. Takže jak na to?
Při prohlížení voleb souboru dosemu.conf
jsme si všimli, že dosemu umí emulovat pro samotný DOS hned tři zařízení pro tisk: LPT1-3. K těmto zařízením lze přiřadit jednotlivé fronty nadefinované v LPR(ng).
Pro definici front tak, aby nám vše tisklo opravdu česky, si však musíme uvědomit několik důležitých bodů:
Musíme si ujasnit, v jakém formátu budeme posílat do tiskové fronty úlohy, a podle toho nastavit správně filtr, který je bude zpracovávat do formátu srozumitelného naší tiskárně.
Je jasné, že můžeme využít též přímý tisk na tiskárnu, pokud dokážeme vysvětlit DOSovskému programu, jakou tiskárnu používáme, jaké máme použité kódování češtiny apod., prostě stejně jako v DOS-u. Odměnou nám bude v případě jehličkové tiskárny tisk nejvyšší možnou rychlostí, protože nebude nutné, aby tiskárna jela v grafickém režimu.
U laserových tiskáren si dovolím tvrdit, že je lhostejné, zda tiskárna tiskne v grafickém režimu, nebo v textovém, a proto bude nejschůdnější cesta přes rozumný, přenositelný formát: v našem případě asi PostScript. Jednak je to dostatečně přenositelný formát a jednak v GhostScriptu s vysokou pravděpodobností najdeme driver i pro naši tiskárnu.
Zde ovšem narazíme na jedno omezení: zatímco u jehličkové tiskárny v raw režimu můžeme využít i různé formátovací sekvence, takže můžeme donutit tiskárnu k tisku různě širokého písma, zvýraznění apod., v případě, že se rozhodneme využít k tisku PostScript, budeme muset na takové vymoženosti zapomenout. Alespoň já jsem zatím nenašel interpretr, který by dokázal převést formátovací znaky pro byť i jeden typ tiskárny do PostScriptu a to spolu s textem...
Pokud dokážeme přinutit program, aby posílal stejné kódování, které umí zobrazit naše tiskárna, máme vyhráno a jedeme v raw módu. Pokud to nedokážeme, je třeba vybrat vhodné kódování a tomuto kódování následně přizpůsobit filtr, přes který budou data tisknuta.
Osobně pro tisk používám LPRng, jako transformační program se mi osvědčil a2ps a pokud budeme potřebovat nějaká překódovávání, pak s úspěchem můžeme využít cstocs. Pro popis systému tisku budu předpokládat tuto softwarovou kombinaci.
Prvně si tedy ukážeme zmiňovanou raw frontu. Zápis v /etc/printcap
bude vypadat např. takto:
raw:
:lp=/dev/lp0
:filter=
:sd=/var/spool/lpd/raw
:ah
:další_volby
Komentáře snad netřeba, upozorním však na dvě věci: tisk lze vyzkoušet tak, že místo :lp=/dev/lp0
(nebo jiného zařízení, na kterém máme tiskárnu) můžeme použít řádek
:/tmp/vystup
(tento soubor musí existovat a lpr
musí mít pro něj právo zápisu, vytvoříme ho tedy pomocí příkazu touch
a nastavíme mu práva 666). Lpr pak bude tisky místo odesílání na zařízení poslušně zapisovat do souboru, takže můžeme kontrolovat, zda celý systém front běží tak, jak má. V případě, kdy je cílový soubor binární, jako např. u tiskáren s PCL
tiskovým jazykem, toho sice moc neuvidíme, ale alespoň odchytneme případné chybové hlášení filtru, které by jinak bylo nevratně vytištěno na papír.
Dále je pro odladění tisku (a neničení našich lesů) výborný uvedený parametr :ah
. Tento parametr způsobí to, že tisk je pouze přijat do fronty, avšak je pozastaven do zásahu
administrátora (lpc release jméno_fronty číslo_job-u
). V adresáři fronty pak můžeme prohlédnout, co se vlastně snaží posílat DOSovský program na tiskárnu (tedy pokud je to k prohlížení vhodné). Já tento parametr používám i na svém notebooku, vytisknu si úlohy do fronty, pak přijdu k tiskárně, udělám lpc release jméno_fronty all
a tisknu.
Pro složitější konfiguraci s PostScriptem budeme potřebovat několik věcí:
Předpokládejme, že tisková fronta pro tisk PostScriptu na naší tiskárně má název ps
. Pak záznam v /etc/printcap
bude vypadat asi takto:
dos1:
:lp=ps@localhost
:sd=/var/spool/lpd/dos1
:filter=( varianty viz dále )
:lpd_bounce
:další parametry
Řádek s filtrem pak bude různý dle kódování, které se nám podaří vyloudit na DOS-ovém programu. Nejjednodušší to bude v případě již zmiňovaného Windows-1250:
:filter= ( /usr/bin/a2ps -X ms-cp1250 --borders no -o - )
V případě, že od DOS aplikace dostaneme kódování CP852, použijeme tento řádek:
:filter= ( cstocs pc2a il2 | /usr/bin/a2ps -X iso02 --borders no -o - )
No a to je snad dostatečný základ k tomu, abychom se vrhli do přemíry kombinací zde nastíněných, a svou vlastní tvořivostí dovedli k úspěšnému tiskovému výstupu téměř jakýkoli program pod dosemu. A nakonec:
Jak jsem uvedl na začátku, sešlo se mi několik reakcí na můj článek. Část reakcí jsem doufám uspokojil tímto článkem, část bych snad měl ještě okomentovat zde.
Jako první bych se vrátil ke kódování Kamenických. Byl jsem upozorněn, že převodní tabulka je obsažena ve zdrojácích linksu a ty je možno stáhnout např. na atrey.karlin.mff.cuni.cz, případně si můžete stáhnout soubor kamen.cp
s kódováním. Od téhož autora jsem dostal i zprávu s obrázkem, kde je zachycen funkční a hezky česky píšící program Money6 Free. K tomu však bylo ještě třeba upravit font speciálně pro tento program. Za tyto informace vděčím Jiřímu Dutkovi, kterému tímto děkuji. Pokud provozujete Money6 a chtěli byste mít takhle hezky vypadající obrazovku, tak mu zkuste napsat.
Svým kolegou od nás z Pedagogické fakulty jsem byl upozorněn, že lze ze souboru ega.cpi
vytáhnout hezký font v kódování CP852. Stáhnout si ho můžete zde: dosemu_vga852.bdf. Když jsem se ho ptal, jak ten soubor získal, odvětil mi, že prostě nastudoval formát souboru ega.cpi
a napsal si prográmek. Já tedy děkuji za poskytnutý soubor, a pokud budete chtít napsat jeho tvůrci, můžete to zkusit na této adrese. Jím poskytnuté zdrojové texty programu pro vytáhnutí fontu z ega.cpi
naleznete zde: dosemu_cpi.tar.bz2.
Ladislav Michl přidal pod první článek komentář o nesystémovosti přístupu. Má pravdu, v Debianu existují dokonce dva balíčky s fonty pro dosemu: xfonts-dosemu a xfonts-terminus-dos. A dále lze jednotlivé fonty nastavovat per-user v konfiguračním souboru ~/.dosemurc
v adresáři každého uživatele, pokud mu to ovšem dovolíme v souboru dosemu.users
. Takže tímto mu děkuji a připomínám, že slíbil dodat k sosnutí další hezké fonty.
A ještě poznámka k instalaci Abry pro Tomáše Tatouška: K jeho diskusnímu příspěvku pod prvním článkem jsem se dostal až při psaní tohoto článku, čímž se omlouvám za pozdní reakci... Matně si vzpomínám, že instalace Abry opravdu trpěla tím, že program nedokázal najít PKUNZIP. Pokud se dobře pamatuji, tak jsem nakonec vytvořený adresář smazal, vytvořil znovu prázdný, nakopíroval jsem do něj soubor PKUNZIP a přejmenoval na pkunzip.exe a to tuším instalačnímu programu Abry stačilo... Takže, ještě jednou se omlouvám za opominutí sledování diskusního fóra, a doufám, že tato rada pomůže. Koneckonců se dá do filesystému zasahovat i "zezadu", za běhu instalačního programu... Jsme v Unix-like operačním systému.
A to by snad bylo vše, těším se na oslavné ódy. Na závěr ještě obrazovka z české Abry.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Vypis sekvence F1, enter, CTRL+F1
cat
^[OP
^[O5P
cat
^[[[A
^[[[A
Nevite jak namapovat (jak vytvorit mapovaci soubor) pro setfont ?
Diky za nakopnuti :)
vm86plus service not available in your kernel
Mám tento problém s dosemu-1.2.2-44 v OpenSUSE_10.2_64. Tuším, že vm86plus
je asi modul, ale v jádře není. Ani jsem ho nikde nenašel. Na netu jsem našel jen hodně staré diskuze o tom, že v jádře 2.1xx už tento modul je. Jak to ale vypadá, tak v jádře 2.6.xx už zase není.
Víte někdo, jak rozjet dosemu? Dík.