Byla vydána nová verze 4.8 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.
Apple container dospěl do verze 1.0.0. Jedná se o open source nástroj pro spouštění linuxových kontejnerů na macOS postavený nad containerization. Napsaný je v programovacím jazyce Swift a optimalizovaný pro Apple silicon.
Bylo vydáno Eclipse IDE 2026-06 aneb Eclipse 4.40. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Asterinas (GitHub) je v Rustu napsané jádro operačního systému poskytující s jádrem Linux kompatibilní ABI. Vydána byla verze 0.18.0. První distribucí postavenou nad jádrem Asterinas je Asterinas NixOS. Nejedná se o oficiální projekt NixOS a nemá nic společného s NixOS Foundation.
Podrobně byla rozebrána kritická zranitelnost v nf_tables (CVE-2026-23111). Další lokální eskalace práv na Linuxu. V upstreamu byla zranitelnost již v únoru opravena. Ve zdrojovém kódu stačilo odstranit 1 vykřičník.
Evropská komise (EK) nařídila americké společnosti Meta, že musí znovu umožnit bezplatný přístup konkurenčním obecně zaměřeným asistentům umělé inteligence (AI) k WhatsAppu a tento přístup musí zachovat až do ukončení antimonopolního šetření. Opatření je dočasné a má zabránit vážnému a nevratnému poškození konkurence na rychle rostoucím trhu s obecnými AI asistenty. Meta uvedla, že se proti rozhodnutí odvolá.
Společnost Anthropic představila AI modely Claude Fable 5 a Claude Mythos 5. Claude Fable 5 je první model třídy Mythos určený pro běžné použití.
Byla vydána nová stabilní verze 3.24.0, tj. první z nové řady 3.24, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.
Na čem pracují vývojáři v Rustu napsaného mikrokernelového unixového operačního systému Redox OS (Wikipedie)? Byl publikován přehled vývoje za květen. Vypíchnout lze nový scheduler EEVDF nebo port desktopového prostředí Xfce na Redox OS.
Upozornění pro uživatele Asahi Linuxu: Neaktualizujte macOS na verzi 27 Golden Gate! Apple změnil detekci spouštěcích oddílů. Po aktualizaci oddíl s Asahi Linuxem nevidí. Snad je to jenom chyba.
md5sum -c -v MD5SUMvypíše:
test1.txt OK test2.txt OK test3.txt OK test4.txt CHYBNÝTo je v pořádku. Teď chci tento výstup zapsat do souboru MD5SUM_RESULT, abych mohl výsledky dále zpracovávat:
md5sum -c -v MD5SUM > MD5SUM_RESULTAle vzniklý soubor MD5SUM_RESULT je prázdný. Zkouším to tedy jinak:
echo `md5sum -c -v MD5SUM` > MD5SUM_RESULTSoubor MD5SUM_RESULT je opět prázdný... Kdybyste mě někdo nakopnul, co dělám špatně...
deb http://ftp.cz.debian.org/debian jessie main contrib non-freemd5sum -c -v MD5SUM 2> MD5SUM_RESULT
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
deb http://ftp.cz.debian.org/debian jessie main contrib non-freemike@lion:~/tmp> md5sum --version md5sum (GNU coreutils) 5.3.0 Written by Ulrich Drepper and Scott Miller.Jakou verzi máte vy?
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
) mirroru bude GNU.
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
Při dalším spuštění program otevře XML soubor a porovná kontrolní součty se skutečností. Vypíše, které soubory se změnily.
Chtělo by to ještě přidat kontrolu chybových stavů, zjišťování, který soubor přibyl či ubyl, ale o to tu, myslím, nešlo.
import os, sys, md5
from elementtree.ElementTree import Element, SubElement, ElementTree, dump
def CalcMD5(filename):
buffersize = 1000000
sum = md5.new()
f = open(filename)
while True:
data = f.read(buffersize)
if not data: break
sum.update(data)
f.close()
return sum.hexdigest()
def StoreChecksums(basedir, xmlname):
root = Element("checksums")
Files = SubElement(root, "Files")
for name in os.listdir(basedir):
name_fullpath = os.path.join(basedir, name)
if not os.path.isfile(name_fullpath): continue
md5sum = CalcMD5(name_fullpath)
elem_file = SubElement(Files, "file")
elem_file.set("name", name_fullpath)
elem_file.set("md5sum", md5sum)
tree = ElementTree(root)
dump(root)
tree.write(xmlname, encoding="utf-8")
def CheckChecksums(basedir, xmlname):
root = ElementTree(file=xmlname)
files_old = root.find('Files')
for file_old in files_old:
name = file_old.get('name')
md5sum_old = file_old.get('md5sum')
md5sum_new = CalcMD5(os.path.join(basedir, name))
if not md5sum_old == md5sum_new:
print 'File', name, 'has changed!'
############################### MAIN #############
xmlname = 'md5sums.xml'
basedir = '.'
if not os.path.exists(xmlname):
print 'md5sums have not been calculated yet. Creating', xmlname
StoreChecksums(basedir, xmlname)
sys.exit(0)
CheckChecksums(basedir, xmlname)
Tiskni
Sdílej: