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).
Byla vydána nová stabilní verze 7.9 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 146. Přehled novinek i s náhledy v příspěvku na blogu.
Dle plánu byla vydána Opera GX pro Linux. Ke stažení je .deb i .rpm. V plánu je flatpak. Opera GX je webový prohlížeč zaměřený na hráče počítačových her.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.
Pro čtení rss aktuálně používám mutt a pro jejich stahování kombinaci programů
rsstool a sqlite3 (+
nějaké standardní příkazy) ve vlastním scriptu. Zmínil jsem se o tom a někdo jej chtěl vidět
. Celý script je velmi jednoduchý a tady je.
Nejprve jsem si vytvořil cache pro stažené rss kanály. Je to standardní databáze sqlite3 v souboru $HOME/.rss.db:
/* Pracovní tabulka pro aktuálně stažená data */
CREATE TABLE rsstool_table (
rsstool_dl_url text,
rsstool_dl_date integer,
rsstool_site text,
rsstool_url text,
rsstool_url_md5 varchar(32),
rsstool_url_crc32 varchar(8),
rsstool_date integer,
rsstool_title text,
rsstool_title_md5 varchar(32),
rsstool_title_crc32 varchar(8),
rsstool_desc text
);
/* vlastní cache položek */
create table feeds_data
( rss_site varchar(255)
, rss_url text
, rss_title text
, rss_description text
, rss_date date
, generated boolean
);
Vlastní script vypadá takto. Největší počet řádků připadá na výpis položky
.
#!/bin/bash
# konfigurace
RSSDB="$HOME/.rss.db"
SRCDB="$HOME/.rss_sources"
MDA="maildrop $HOME/.mailfilter"
DELETE_BEFORE=7
SQL="/usr/bin/sqlite3"
GDATE="/usr/bin/date"
GREP="/usr/bin/grep"
RECODE="/usr/bin/cstocs utf8 il2"
SED="/usr/bin/sed"
FOLD="/usr/bin/fold -s"
RSSTOOL="/usr/local/bin/rsstool --sql --shtml --slf"
# výpis položky ve formátu pro mail
print_message() {
URL=$1
echo 'To: Martin Lebeda <mlebeda@centrum.cz>'
echo 'Content-Transfer-Encoding: 8bit'
echo 'Content-Type: text/plain; charset="iso-8859-2"'
echo 'X-target: rss'
$SQL $RSSDB "select 'Subject: '||rss_title from feeds_data where rss_url = '$URL'"
$SQL $RSSDB "select 'From: '||rss_site from feeds_data where rss_url = '$URL'"
echo -n "Date: "
RSSDATE=`$SQL $RSSDB "select rss_date from feeds_data where rss_url = '$URL'"`
$GDATE -R -d "1970-01-01 UTC $RSSDATE seconds"
echo
$SQL $RSSDB "select rss_description from feeds_data where rss_url = '$URL'" | $FOLD
echo
echo $URL
$SQL $RSSDB "update feeds_data set generated = 1 where rss_url = '$URL'"
}
# vlastní stažení ze seznamu kanálů
for i in `$GREP -v '^#' $SRCDB | $GREP -v '^$'`; do
$RSSTOOL "$i" | $GREP 'INSERT INTO' | $RECODE | $SED -e 's/\\'\''//g' | $SQL $RSSDB
done
# vložení nových položek do hlavní tabulky
$SQL $RSSDB " insert into feeds_data ( rss_site, rss_url, rss_title,
rss_description, rss_date, generated )
select rsstool_site, rsstool_url, rsstool_title, rsstool_desc, rsstool_date, 0
from rsstool_table
where not exists (select 1 from feeds_data where rss_url = rsstool_table.rsstool_url)" && \
# čistka
$SQL $RSSDB "delete from rsstool_table"
DELDATE=`date +%s -d -${DELETE_BEFORE}days` && \
$SQL $RSSDB "delete from feeds_data where rss_date < $DELDATE"
# vypsat nové položky
for url in `$SQL $RSSDB 'select rss_url from feeds_data where generated = 0'`; do
print_message "$url" | $MDA
done
v $HOME/.rss_sources je co řádek, to url (ukázka části):
http://www.linuxexpres.cz/modules/rss/rss.php http://www.abclinuxu.cz/auto/abc.rss http://www.abclinuxu.cz/auto/zpravicky.rss
Určitě by to chtělo pár věcí dopracovat (např. respektování kódování v hlavičce kanálu), ale jinak mi už několik měsíců spolehlivě slouží.
Tiskni
Sdílej:
rss2email nebo feed2imap?
Neumím odpovědět, neboť tyto programy neznám.
Jak se tak zběžně koukám na stránky rss2email, tak asi ano, ale je to rozhodně mnohem jednodužší.
a za druhé jsem si nebyl jist, který komentář je původní C (právě tenhle /* … */) a který přišel až s C++(//)