Peter Steinberger, autor open source AI asistenta OpenClaw, nastupuje do OpenAI. OpenClaw bude převeden pod nadaci a zůstane otevřený a nezávislý.
Společnost Backblaze zveřejnila statistiky spolehlivosti pevných disků používaných ve svých datových centrech za rok 2025. Ke konci roku 2025 vlastnila 349 462 pevných disků. Průměrná AFR (Annualized Failure Rate), tj. pravděpodobnost, že disk během roku selže, byla 1,36 %. V roce 2024 to bylo 1,57 %. V roce 2023 to bylo 1,70 %. V roce 2022 to bylo 1,37 %.
Nástroj sql-tap je proxy mezi aplikací a databází, které zachytává všechny SQL dotazy a zobrazuje je v terminálovém rozhraní. Zde lze téměř v reálném čase zkoumat dotazy, sledovat transakce a spouštět SQL příkaz EXPLAIN. Podporované databázové systémy jsou pouze PostgreSQL a MySQL. Zdrojový kód je dostupný na GitHubu, pod licencí MIT.
Byla vydána nová verze 9.2 textového editoru Vim (Vi IMproved). Přináší vylepšené doplňování, podporu schránky ve Waylandu, podporu XDG Base Directory (konfigurace v $HOME/.config/vim), vylepšené Vim9 skriptování nebo lepší zvýrazňování změn. Vim zůstává charityware. Nadále vybízí k podpoře dětí v Ugandě. Z důvodu úmrtí autora Vimu Brama Moolenaara a ukončení činnosti jím založené charitativní organizace ICCF Holland projekt Vim navázal spolupráci s charitativní organizaci Kuwasha.
Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 3.7.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy nových filtrů na PIXLS.US.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
Eric Migicovsky představil Pebble Emulator, tj. emulátor hodinek Pebble (PebbleOS) běžící ve webovém prohlížeči. Za 6 hodin jej napsal Claude Code. Zdrojové kódy jsou k dispozici na GitHubu.
Byla vydána nová verze 3.41 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.11 souvisejícího programovacího jazyka Dart (Wikipedie).
Rusko zcela zablokovalo komunikační platformu WhatsApp, řekl včera mluvčí Kremlu Dmitrij Peskov. Aplikace, jejímž vlastníkem je americká společnost Meta Platforms a která má v Rusku na 100 milionů uživatelů, podle Peskova nedodržovala ruské zákony. Mluvčí zároveň lidem v Rusku doporučil, aby začali používat domácí aplikaci MAX. Kritici tvrdí, že tato aplikace ruské vládě umožňuje lidi sledovat, což úřady popírají.
libpng warning: iCCP: known incorrect sRGB profile libpng warning: iCCP: known incorrect sRGB profile Neoprávněný přístup do paměti (SIGSEGV) (core dumped [obraz paměti uložen])Ten obraz paměti jsem našel, ale nemám žádné zkušenosti, co a jak se z něj dá zjistit. Zajímavé je, že když se vytvoří nový uživatel, program epsonscan2 funguje bez problémů. Řekl bych, že v rámci sdílené konfigurace se program snaží použít nějaké neexistující nebo staré knihovny, ale nepodařilo se mi zjistit, kde se k nim dostane. Uživatelská konfigurace je v adresáři .epsonscan2, ale její odstranění nepomohlo, stejně tak nepomohlo, když jsem tam zkusil nakopírovat konfiguraci od uživatele, kde program fungoval. Kolega mi ještě poslal záznam své diskuse o problému s AI, ale k tomu jsem poměrně skeptický. Jako řešení bych viděl zálohu dat, uživatele vytvořit znovu, konfiguraci přenášet postupně a průběžně kontrolovat funkčnost skeneru, ale do toho se kolegovi moc nechce. Takže kdyby měl někdo jiný nápad, budu rád. Jirka
Řešení dotazu:
Co "strace epsonscan2" ?Kolega mi poslal kompletní výpis, přikládám jeho část před tím, než se objeví hlášení o pádu, ale moje znalosti nestačí na to, abych z toho něco zjistil. Můžu samozřejmě poskytnout celý výpis, případně jinou část, pokud budu vědět, na co se zaměřit.
2479 stat("/usr/lib/x86_64-linux-gnu/epsonscan2/non-free-exec/dtrplugin", {st_mode=S_IFREG|0755, st_size=24916, ...}) = 0
2479 stat("/usr/lib/x86_64-linux-gnu/epsonscan2/non-free-exec/libesdtr.so", {st_mode=S_IFREG|0444, st_size=340188, ...}) = 0
2479 stat("/usr/lib/x86_64-linux-gnu/epsonscan2/non-free-exec/dtrplugin", {st_mode=S_IFREG|0755, st_size=24916, ...}) = 0
2479 stat("/usr/lib/x86_64-linux-gnu/epsonscan2/non-free-exec/libesdtr.so", {st_mode=S_IFREG|0444, st_size=340188, ...}) = 0
2479 stat("/usr/lib/x86_64-linux-gnu/epsonscan2/non-free-exec/dtrplugin", {st_mode=S_IFREG|0755, st_size=24916, ...}) = 0
2479 stat("/usr/lib/x86_64-linux-gnu/epsonscan2/non-free-exec/libesdtr.so", {st_mode=S_IFREG|0444, st_size=340188, ...}) = 0
2479 stat("/usr/lib/x86_64-linux-gnu/epsonscan2/non-free-exec/fitplugin", {st_mode=S_IFREG|0755, st_size=203528, ...}) = 0
2479 write(17, "\1\0\0\0\0\0\0\0", 8) = 8
2479 write(17, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
2488 <... poll resumed>) = 1 ([{fd=17, revents=POLLIN}])
2479 <... write resumed>) = 8
2488 read(17, "\2\0\0\0\0\0\0\0", 8) = 8
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\344\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\7\0\0\0enabled\0\1\0\0\0\0\0\0\0\4(so)\0\0\0\0\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 280
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\345\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\t\0\0\0sensitive\0\0\0\1\0\0\0\0\0\0\0\4(so)\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 280
2479 futex(0x37e12470, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
2488 poll([{fd=17, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 3, -1 <unfinished ...>
2479 <... futex resumed>) = 0
2479 write(17, "\1\0\0\0\0\0\0\0", 8) = 8
2488 <... poll resumed>) = 1 ([{fd=17, revents=POLLIN}])
2488 read(17, "\1\0\0\0\0\0\0\0", 8) = 8
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\346\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\7\0\0\0enabled\0\1\0\0\0\0\0\0\0\4(so)\0\0\0\0\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL <unfinished ...>
2479 write(17, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
2488 <... sendmsg resumed>) = 280
2479 <... write resumed>) = 8
2488 write(17, "\1\0\0\0\0\0\0\0", 8) = 8
2488 poll([{fd=17, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 3, 0) = 1 ([{fd=17, revents=POLLIN}])
2488 read(17, <unfinished ...>
2479 write(17, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
2488 <... read resumed>"\2\0\0\0\0\0\0\0", 8) = 8
2479 <... write resumed>) = 8
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\347\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\t\0\0\0sensitive\0\0\0\1\0\0\0\0\0\0\0\4(so)\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 280
2479 futex(0x37e12470, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
2488 futex(0x37e12470, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
2479 <... futex resumed>) = 0
2488 <... futex resumed>) = 0
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\350\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\7\0\0\0enabled\0\1\0\0\0\0\0\0\0\4(so)\0\0\0\0\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL <unfinished ...>
2479 write(17, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
2488 <... sendmsg resumed>) = 280
2479 <... write resumed>) = 8
2488 write(17, "\1\0\0\0\0\0\0\0", 8) = 8
2488 poll([{fd=17, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 3, 0) = 1 ([{fd=17, revents=POLLIN}])
2488 read(17, "\3\0\0\0\0\0\0\0", 8) = 8
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\351\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\t\0\0\0sensitive\0\0\0\1\0\0\0\0\0\0\0\4(so)\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL <unfinished ...>
2479 write(17, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
2488 <... sendmsg resumed>) = 280
2479 <... write resumed>) = 8
2488 write(17, "\1\0\0\0\0\0\0\0", 8) = 8
2488 poll([{fd=17, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 3, 0) = 1 ([{fd=17, revents=POLLIN}])
2488 read(17, <unfinished ...>
2479 write(17, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
2488 <... read resumed>"\2\0\0\0\0\0\0\0", 8) = 8
2479 <... write resumed>) = 8
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\352\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\7\0\0\0enabled\0\1\0\0\0\0\0\0\0\4(so)\0\0\0\0\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 280
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\353\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\t\0\0\0sensitive\0\0\0\1\0\0\0\0\0\0\0\4(so)\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL <unfinished ...>
2479 write(17, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
2488 <... sendmsg resumed>) = 280
2479 <... write resumed>) = 8
2488 write(17, "\1\0\0\0\0\0\0\0", 8) = 8
2488 poll([{fd=17, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 3, 0) = 1 ([{fd=17, revents=POLLIN}])
2488 read(17, <unfinished ...>
2479 write(17, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
2488 <... read resumed>"\3\0\0\0\0\0\0\0", 8) = 8
2479 <... write resumed>) = 8
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\354\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\7\0\0\0enabled\0\1\0\0\0\0\0\0\0\4(so)\0\0\0\0\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 280
2488 sendmsg(19, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\4\1\1\210\0\0\0\355\0\0\0~\0\0\0\1\1o\0%\0\0\0/org/a11"..., iov_len=144}, {iov_base="\t\0\0\0sensitive\0\0\0\1\0\0\0\0\0\0\0\4(so)\0\0\0"..., iov_len=136}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 280
2488 poll([{fd=17, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 3, -1) = 1 ([{fd=17, revents=POLLIN}])
2488 read(17, "\1\0\0\0\0\0\0\0", 8) = 8
2488 poll([{fd=17, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 3, -1 <unfinished ...>
2479 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x18} ---
2496 <... futex resumed>) = ?
2486 <... futex resumed>) = ?
2485 <... futex resumed>) = ?
2484 <... futex resumed>) = ?
2482 <... poll resumed> <unfinished ...>) = ?
2481 <... futex resumed>) = ?
2496 +++ killed by SIGSEGV (core dumped) +++
Vypadá to, že ten epsonscan2 využívá nějakou knihovnu, kterou „vylepšili”. Řešením je ten strace a dohledání knihovny, se kterou ten epsonscan2 funguje.Něco takového jsem si myslel, ale nevěděl jsem, jak tu knihovnu najít. Díky za tip, poslal jsem to kolegovi, uvidím, co mi odpoví. Jirka
Po instalaci driveru a nějakého softwaru od výrobce skener fungoval. Pak kolega nastavoval zmíněné sdílení konfigurace, ale po ukončení celého procesu zjistil, že skener nefunguje, proto mně požádal o radu.
Možná je problém jen o nastavení správné cesty, nebo práv. Funguje to pod rootem?
Zajímavé je, že když se vytvoří nový uživatel, program epsonscan2 funguje bez problémů. Uživatelská konfigurace je v adresáři .epsonscan2, ale její odstranění nepomohlo, stejně tak nepomohlo, když jsem tam zkusil nakopírovat konfiguraci od uživatele, kde program fungoval.Podle tohoto popisu je možné, že starý uživatel má nějaké trochu divné nastavení GUI se kterým si epsonscan2 na nové verzi GUI z nějakého důvodu neví rady. To by vysvětlovalo proč to nově vytvořenému uživatelovi (s výchozím nastavením) funguje. Co se stane když pokusně spustíš ten epsonscan2 pod jinačím správcem oken? padá to taky? Kdyby byl problém v knihovnách, tak by to nefungovalo ani nově vytvořenému uživatelovi.
Tiskni
Sdílej: