TypeScript (Wikipedie), tj. JavaScript rozšířený o statické typování a další atributy, byl vydán v nové verzi 6.0. Příští verze 7.0 je kvůli výkonu přepisována do programovacího jazyka Go.
Christian Schaller z Red Hatu na svém blogu popsal své zkušenosti s používáním AI při vývoji open source aplikací pro Linux. Pomocí různých AI aktualizoval nebo vytvořil aplikace Elgato Light GNOME Shell extension, Dell Ultrasharp Webcam 4K, Red Hat Planet, WMDock, XMMS resuscitated (aktualizace z GTK 2 a Esound na GTK 4, GStreamer a PipeWire) a Monkey Bubble. SANE ovladač pro skener Plustek OpticFilm 8200i se mu zatím nepovedl.
Americké firmy Tesla a SpaceX postaví v texaském Austinu moderní komplex na výrobu čipů pro umělou inteligenci (AI). Součástí projektu s názvem Terafab budou dvě moderní továrny na výrobu čipů – jedna se zaměří na automobily a humanoidní roboty, druhá na datová centra ve vesmíru. Uvedl to generální ředitel těchto firem Elon Musk. Projekt by podle odhadů měl stát 20 miliard USD (zhruba 425 miliard Kč).
Byla vydána nová stabilní verze 6.11 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Ubuntu 26.04 patrně bude ve výchozím nastavení zobrazovat hvězdičky při zadávání hesla příkazu sudo, změna vychází z nové verze sudo-rs. Ta sice zlepší použitelnost systému pro nové uživatele, na které mohlo 'tiché sudo' působit dojmem, že systém 'zamrzl' a nijak nereaguje na stisky kláves, na druhou stranu se jedná o možnou bezpečnostní slabinu, neboť zobrazování hvězdiček v terminálu odhaluje délku hesla. Původní chování příkazu sudo
… více »Projekt systemd schválil kontroverzní pull request, který do JSON záznamů uživatelů přidává nové pole 'birthDate', datum narození, tedy údaj vyžadovaný zákony o ověřování věku v Kalifornii, Coloradu a Brazílii. Jiný pull request, který tuto změnu napravoval, byl správcem projektu Lennartem Poetteringem zamítnut s následujícím zdůvodněním:
… více »Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 163 (pdf).
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.
Conky je výborný nástroj na monitorování svého operačního systému nebo čehokoliv jiného. Dnes si ukážeme, jak do Conky přidat výpis kurzu měn.
Nejprve si vytvoříme pythonovský skript, který načte kurzy měn z webu ČNB a vrátí výstup, kterému bude Conky rozumět.
#!/usr/bin/env python
import urllib
countries = ('EMU', 'USA')
url = 'http://www.cnb.cz/cs/financni_trhy/devizovy_trh/kurzy_devizoveho_trhu/denni_kurz.txt'
fp = urllib.urlopen(url)
lines = fp.readlines()
fp.close()
for line in lines:
parts = line.split('|')
if parts[0] in countries:
print parts[3] + ': ${alignr}' + parts[4].rstrip()
Tento skript uložíme například do souboru /usr/bin/conky-currency a dáme mu právo spuštění pro všechny.
Nyní již pouze změníme konfiguraci Conky, aby informace ze skriptu použilo. Na konec souboru ~/.conkyrc vložíme tyto řádky:
CURRENCIES ${hr 2}
${execpi 36000 conky-currency}
Připojený obrázek obsahuje také úpravy z tohoto návodu.
Skript z pohledu výkonnosti a paměťové náročnosti rozhodně není ideální. Je napsán tak, aby byl snadno čitelný.
Tiskni
Sdílej:
Stacilo by to stahnout jednou denne zhruba ve 14.45 jindy kurzy CNB neaktualizuje, nemluve o tom ze treba o videndu se nemusi zmenit vubec ;)
Není
...jednou denne zhruba ve 14.45 jindy kurzy CNB neaktualizuje...
a
Mozna by bylo dokonce lepsi snizit to na 5 hodin, aby uzivatel nemel moc stare informace.
v rozporu?
preco sa to neriesi cronom? som lama, iba sa pytam.
Copak? Obchoduješ na burze nebo jsi jenom posedlý monitorováním 
http://www.google.com/finance?q=EURCZK případně třeba
http://www.google.com/finance?q=USDCZK mi plně vyhovuje.
Prosim, bylo by mozne zverejnit kompletni konfigurak Conky z toho obrazku? Diky...
use_xft yes
xftfont Liberation Sans:size=8
update_interval 1
total_run_times 0
double_buffer yes
text_buffer_size 1024
own_window yes
own_window_type override
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
minimum_size 185 0
maximum_width 185
default_color white
draw_shades no
color0 white
color1 729FCF
color2 white
alignment top_right
gap_x 25
gap_y 50
no_buffers no
net_avg_samples 2
override_utf8_locale yes
TEXT
SYSTEM ${hr 2}
${voffset 2}${color0}${font OpenLogos:size=16}u${font}${color} Kernel: ${alignr}${color2}${kernel}${color}
${color0}${font StyleBats:size=16}A${font}${color} CPU1: ${color1}${cpu cpu1}%${color} ${alignr}${color2}${cpubar cpu1 8,60}${color}
${color0}${font StyleBats:size=16}A${font}${color} CPU2: ${color1}${cpu cpu2}%${color} ${alignr}${color2}${cpubar cpu2 8,60}${color}
${color0}${font StyleBats:size=16}g${font}${color} RAM: ${color1}$memperc%${color} ${alignr}${color2}${membar 8,60}${color}
${color0}${font StyleBats:size=16}j${font}${color} SWAP: ${color1}$swapperc%${color} ${alignr}${color2}${swapbar 8,60}${color}
${color0}${font StyleBats:size=16}q${font}${color} Uptime: ${alignr}${color2}${uptime}${color}
DATE ${hr 2}
${alignc 45}${color2}${font Arial Black:size=30}${time %H:%M}${font}${color}
${alignc}${time %A %d %Y}
HD ${hr 2}
${execp ~/.scripts/hd_default.py}
NETWORK ${hr 2}
${if_existing /proc/net/route wlan0}
${voffset -6}${color0}${font PizzaDude Bullets:size=14}O${font}${color} Up: ${color1}${upspeed wlan0}${color} kb/s ${alignr}${upspeedgraph wlan0 8,60 346Rhythmbox not running}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}U${font}${color} Down: ${color1}${downspeed wlan0}${color} kb/s ${alignr}${downspeedgraph wlan0 8,60 346Rhythmbox not running}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}N${font}${color} Upload: ${alignr}${totalup wlan0}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}T${font}${color} Download: ${alignr}${totaldown wlan0}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}Z${font}${color} Signal: ${wireless_link_qual wlan0}% ${alignr}${color2}${wireless_link_bar 8,60 wlan0}${color}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}a${font}${color} Local ip: ${alignr}${color2}${addr wlan0}${color}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}b${font}${color} Public ip: ${alignr}${color2}${execi 1 ~/.scripts/ip.sh}${color}
${else}${if_existing /proc/net/route eth0}
${voffset -6}${color0}${font PizzaDude Bullets:size=14}O${font}${color} Up: ${color1}${upspeed eth0}${color} kb/s ${alignr}${upspeedgraph eth0 8,60 346Rhythmbox not running}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}U${font}${color} Down: ${color1}${downspeed eth0}${color} kb/s ${alignr}${downspeedgraph eth0 8,60 346Rhythmbox not running}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}N${font}${color} Upload: ${alignr}${color2}${totalup eth0}${color}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}T${font}${color} Download: ${alignr}${color2}${totaldown eth0}${color}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}a${font}${color} Local ip: ${alignr}${color2}${addr eth0}${color}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}b${font}${color} Public ip: ${alignr}${color2}${execi 1 ~/.scripts/ip.sh}${color}
${endif}${else}${if_existing /proc/net/route ppp0}
${voffset -6}${color0}${font PizzaDude Bullets:size=14}O${font}${color} Up: ${color1}${upspeed ppp0}${color} kb/s ${alignr}${upspeedgraph ppp0 8,60 346Rhythmbox not running}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}U${font}${color} Down: ${color1}${downspeed ppp0}${color} kb/s ${alignr}${downspeedgraph ppp0 8,60 346Rhythmbox not running}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}N${font}${color} Upload: ${alignr}${color2}${totalup ppp0}${color}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}T${font}${color} Download: ${alignr}${color2}${totaldown ppp0}${color}
${voffset 4}${color0}${font PizzaDude Bullets:size=14}a${font}${color} Local ip: ${alignr}${color2}${addr ppp0}${color}
${endif}${else}${voffset 4}${color0}${font PizzaDude Bullets:size=12}4${font}${color} Network Unavailable
${endif}
WEATHER ${hr 2}
${if_existing /proc/net/route wlan0}
${execpi 10800 conkyForecast -t ~/.scripts/conkyForecast.template}
${else}${if_existing /proc/net/route eth0}
${execpi 10800 conkyForecast -t ~/.scripts/conkyForecast.template}
${endif}${else}${if_existing /proc/net/route ppp0}
${execpi 10800 conkyForecast -t ~/.scripts/conkyForecast.template}
${endif}${else}${voffset 4}${color0}${font PizzaDude Bullets:size=12}4${font}${color} Weather Unavailable${endif}
CURRENCIES ${hr 2}
${execpi 36000 /home/dundee/workspace/python/conky-currency.py}