Hra Doom nově běží také v SQL databázi CedarDB. Představen byl SQLDoom. Vyzkoušet lze online demo. Zdrojové kódy jsou k dispozici na GitHubu.
Multiplatformní open source aplikace scrcpy (Wikipedie) pro zrcadlení připojeného zařízení se systémem Android na desktopu a umožňující ovládání tohoto zařízení z desktopu, byla vydána v nové verzi 5.0. S podporou hardwarového dekódování videa na desktopu.
Moderní linker mold, rychlejší alternativa k LLVM lld nebo wild, byl vydán v nové major verzi 3.0.0. Přepsán byl z C++ do Rustu.
Po osmi letech od vydání verze 2.0 byla vydána nová major verze 3.0 multiplatformního editoru tagů MusicBrainz Picard (Wikipedie). Přehled novinek, vylepšení a oprav v changelogu.
Mezinárodní federace hudebního průmyslu (International Federation of the Phonographic Industry) navrhla Evropské komisi zařazení populárního open-source nástroje yt-dlp na evropský seznam 'padělků a pirátství' (EU Counterfeit and Piracy Watch List) pro rok 2027 (plné znění žádosti IFPI). IFPI ve svém podání označuje tento aktivně vyvíjený a o rozličné funkce bohatší fork youtube-dl za 'závažný problém' pro hudební průmysl, v
… více »Byla vydána nová verze 7.4 linuxové distribuce Parrot OS (Wikipedie). Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Dnes startuje desátý ročník oblíbené kyberbezpečnostní soutěže The Catch organizované Forenzní laboratoří CESNETu. Letos zavede soutěžící do světa národních výzkumných a vzdělávacích sítí (NREN). Čekají na vás tematické úlohy založené na principu Capture the Flag (CTF), hledání ukrytých flagů i zajímavé ceny. Otestujte své schopnosti a vyrazte na lov flagů.
Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2026.
Německý startup Aleph Alpha k příležitosti výročí sjednocení Německa zveřejnil open-weight jazykový model Kolibri, vyvíjený s ohledem na unijní pojetí autorského práva, ochranu osobních údajů GDPR a nařízení EU o umělé inteligenci, jehož 'Kodexu správné praxe' je Aleph Alpha signatářem. Výsledkem tohoto přístupu je transparentnější technologie, kterou například budou moci využívat evropské veřejné instituce, ovšem za cenu
… více »Nvidia zveřejnila návrh nové bezpečnostní platformy pro nasazování AI agentů. Jedná se o nasazení AI za použití OpenShell a Sentry, dvou oddělených bezpečnostních vrstev, v nichž může Sentry monitorovat a vyhodnocovat chování AI v OpenShellu tak, že ho v krajním případě až vypne. Mělo by to zabránit dalším únikům AI ze sandboxu.
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}