Softwarová sklizeň (2. 9. 2026): pořiďte si dlouhý rolovaný screenshot

Včera
Doba čtení: 4 minuty

Sdílet

Autor: Depositphotos
Sesbíráme dlouhý screenshot z rolujícího okna, vypíšeme parametry počítače se žraločím ASCII artem, zabalíme adresář do samorozbalovacího archivu, vytáhneme z webové stránky článek bez balastu a nakonec vytvoříme strojový kód z koz.

CapScroll

CapScroll je linuxový nástroj na rolovací screenshoty, postavený na .NET a Avalonia UI. Kromě běžného snímku vybrané oblasti umí i dlouhý screenshot: zachytí vybraný region, sám obsah odroluje, nasnímá další snímky, pozná, kdy dojel na konec, detekuje překryv mezi jednotlivými snímky a nakonec je sešije do jednoho obrázku.

Nejde přitom jen o webové stránky, funguje na PDF, výpisu terminálu i libovolném rolovatelném obsahu. Součástí je galerie, náhled, ukazatel průběhu a možnost snímání kdykoli zrušit; výstupem je PNG ukládané do  ~/Pictures/CapScroll/.

CapScroll

Autor: CapScroll

Háček je v tom, jak se roluje: CapScroll posílá simulovaný pohyb kolečka myši, takže kurzor musí zůstat uvnitř vybrané oblasti. Vyjetí ven je zároveň způsob, jak snímání zastavit, vedle klávesové zkratky Ctrl+Shift+Esc. Aplikace vyžaduje X11 session a knihovny libX11 a libXtst, Wayland zatím podporovaný není a je až v plánech. Testováno bylo na Kali Linuxu, Linux Mintu a Ubuntu pod GNOME, KDE i XFCE. K dispozici je .deb balíček nebo build ze zdrojových kódů. Licence je MIT.

github.com/netcrawlerr/CapScroll, v1.0.0

makeself

makeself je veterán, který se stále vyvíjí: shellový skript, jenž z adresáře vyrobí samorozbalovací komprimovaný tar archiv. Výsledkem je soubor, který vypadá jako shellový skript, často s příponou .run, po spuštění se rozbalí do dočasného adresáře a volitelně spustí zadaný příkaz, typicky instalátor. Archivy obsahují kontrolní součty pro ověření integrity, CRC, MD5 nebo SHA256. Autor drží kód záměrně přenositelný, bez bashismů, takže výsledek běží na Linuxu, Solarisu, HP-UX, AIX, macOS, IRIXu, BSD i pod Cygwinem a WSL.

Voleb je celá řada: komprese gzipem, bzip2, bzip3, pbzip2, xz, lzo, lz4, zstd nebo pigz, nastavení úrovně komprese i počtu vláken, zakódování do base64, zašifrování přes GPG nebo OpenSSL, přidání licence, LSM záznamu či hlavičky do nápovědy a skripty spouštěné před rozbalením i po dokončení. Vygenerovaný archiv pak sám o sobě rozumí přepínačům jako --list, --check,--info nebo --target. Kdo si myslí, že jde o exotiku, ať se podívá, čím se instalují ovladače nVidie, Google Earth nebo VirtualBox. Licence je GPL-2.0 a na archivy vytvořené makeselfem se nevztahuje.

github.com/megastep/makeself, v2.7.1

SHORKFETCH

SHORKFETCH je fetch nástroj s žraločí tematikou, napsaný v čistém céčku. Proti neofetchi a fastfetchi nesází na množství funkcí, ale na rychlost, konzistentní výstup a zalamování textu ve výchozím stavu. Hlavní devízou je čistota výpisu: autor si dal záležet na přesných názvech procesorů a grafik, a to i pro starší hardware, ne-x86 architektury a integrovanou grafiku Intelu.

Nástroj umí přepsat obecný, upovídaný nebo prostě nepřesný název, který hlásí jádro či sám hardware, za takový, jaký uživatel očekává, včetně rozlišení generací tam, kde chybí modelové číslo. Autor zároveň vyzývá k hlášení případů, kdy se detekce netrefí.

Shorkfetch

Autor: Shorkfetch

Nastavit lze barvu akcentu, vlastní seznam a pořadí polí (od operačního systému, jádra a uptime přes obrazovky, terminál a shell až po disky nebo lokální IP adresu), režim s odrážkami, kompaktní zobrazení nebo vypnutí ASCII artu; volby jde uložit do konfiguračního souboru. Zajímavé jsou parametry pro úsporné systémy:NO_STR_CLEANING=1 ubere zhruba megabajt binárky,X86_ONLY=1 dalších asi deset kilobajtů.

Není to náhoda, SHORKFETCH je domácím fetchem pro operační systémy SHORK 486 a SHORK DISKETTE, takže musí běžet i na strojích, kde je každý kilobajt znát. Instaluje se přes AUR, Nix flake nebo klasicky přes make. Autor navíc projekt vede pod výslovnou zásadou: žádný kód ani dokumentace generované LLM. Licence je GPL-3.0.

github.com/SharktasticA/shorkfetch, v0.6.1

rdrview

rdrview je nástroj příkazové řádky, který z webové stránky vytáhne hlavní obsah, tedy přesně to, co v prohlížeči dělá funkce Reader View. Kód vznikl ručním přepisem knihovny Readability.js od Mozilly do céčka, takže výstup má odpovídat tomu, co byste viděli ve Firefoxu. Autor cílí především na terminálové RSS čtečky: článek se dá rovnou předhodit lynxu a číst bez menu, patiček a reklamních bloků.

Protože jde o mladý projekt v céčku, který parsuje HTML stažené z internetu, řeší autor bezpečnost explicitně: veškeré parsování běží v odděleném procesu v sandboxu, na Linuxu přes seccomp, na OpenBSD přes pledge a na FreeBSD přes Capsicum. Závislosti jsou tři, libxml2, libseccomp a libcurl, build je obyčejný make. Na macOS projekt sice přeloží, ale sandbox tam zatím implementovaný není, takže se musí spouštět s přepínačem --disable-sandbox. Ve vývojové verzi nedávno přibyla volba --disable-heuristic pro vypnutí heuristik při zpracování HTML. Licence je Apache-2.0.

github.com/eafer/rdrview, v0.1.5

Školení Linux

Blbinka

Autor emulátoru MartyPC si při ladění vlastního disassembleru x86 všiml, že emoji kozy se v UTF-8 kóduje jako F0 9F 90 90. A to je na procesoru 8088 platný strojový kód: prefix LOCK, instrukce LAHF a dva NOPy. Protože drtivá většina emoji začíná sekvencí F0 9F, nabízela se otázka, jestli by nebylo možné napsat program složený výhradně z emoji. Bylo. Žabka 🐸 končí bajtem B8, což je MOV AX s přímým operandem, kravička 🐮 posune ukazatel o jedničku a nedokumentovaný alias 8F F0 slouží jako POP AX, kterým se z inicializovaného zásobníku vytáhne nula.

Výsledkem je 141bajtový COM program, který v DOSBoxu-X vypíše na obrazovku HELLO. Autor u toho neskončil a přes dekodér mapující 256 vybraných emoji na libovolné bajty poskládal ještě VGA demo s Mandelbrotovou množinou. Zdrojáky, respektive textové soubory, které jsou bajt po bajtu identické se spustitelnými COM soubory, jsou na GitHubu. V závěru článku padá otázka, na kterou se bojíme znát odpověď: dal by se v emoji napsat celý operační systém? A bude EmojiDOOM?

Autor článku