Švýcarsko testuje přechod z Microsoft 365 na FOSS, konkrétně balík openDesk (Wikipedie) od německé státní společnosti ZenDiS (Wikipedie), s cílem posílit digitální suverenitu.
V italském městě Pordenone probíhá LibreOffice Conference 2026. Zúčastnit se lze i online.
Svobodný (GPLv3) šachový engine Stockfish (Wikipedie) byl vydán ve verzi 19 (𝕏). Přehled novinek v příspěvku na blogu. Stockfish 19 je o 44 Elo silnější než Stockfish 18.
Byla vydána nová verze 1.13.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.
Organizátoři konference LinuxDays zveřejnili program letošního ročníku a spustili registraci návštěvníků. LinuxDays 2026 se uskuteční 3. a 4. října v areálu ČVUT v pražských Dejvicích, na Fakultě informačních technologií. Těšit se můžete na 70 přednášek a workshopů od 66 přednášejících. Konference bude rozdělena do pěti sálů s různou kapacitou. Vstup na LinuxDays je jako obvykle zdarma, stačí včas vyplnit registrační formulář. Opět je možné si na akci zakoupit oběd, ale je třeba to udělat předem, na místě už to nebude možné.
Google Chrome 153 byl prohlášen za stabilní. Nejnovější stabilní verze 153.0.8010.36 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Opraveno bylo 230 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Open-source hra Shattered Pixel Dungeon (Wikipedie) byla vydána ve verzi 4.0.0. Přehled novinek v příspěvku na blogu.
Apple dnes představil (YouTube) iPhone Duo, iPhone 18 Pro, Watch Series 12, Watch Ultra 4 a AirPods 5.
Společnost System76 představila pracovní stanici Thelio Mira AI s předinstalovaným Pop!_OS s prostředím COSMIC nebo Ubuntu. Nakonfigurovat lze až s 16jádrovým CPU AMD Ryzen 9 9950X, 192 GB DDR5 RAM, dvěma GPU NVIDIA RTX Pro 6000 a 192 GB GPU pamětí.
DigitalOcean je sponzorem nadace Omacom Foundation stojící za linuxovou distribucí Omarchy. Přislíbená částka je 3 miliony dolarů, tj. 1 milion dolarů ročně po dobu tří let.
Použití suid je nebezpečné. Tvoje řešení přes sudo ale není o moc lepší. Představ si situaci, že si na tvůj počítač někdo přinese svůj TrueCrypt svazek naformátovaný nějakým unixovým filesystémem, na kterém bude mít bash s nastaveným suid bitem vlastněný rootem. Když si takový svazek připojí s parametrem suid, tak má plný přístup ke tvému počítači.
Já to vyřešil vlastním wrapperem (přiloženo níže), který teprve povoluji spouštět přes sudo bez hesla.
Pokud v tom wrapperu někdo objevíte chybu, budu vděčný za nahlášení. 
$ visudo
. . .
%encrypted ALL=(root) NOPASSWD: /usr/local/bin/truecryptmount.sh
. . .
$ ls -l /usr/local/bin/truecryptmount.sh
-rwxr----- 1 root root 7076 2006-07-27 19:56 /usr/local/bin/truecryptmount.sh
$ cat /usr/local/bin/truecryptmount.sh
#!/bin/bash
#
#Tento skript slouzi ke zpristupneni nekterych funkci programu truecrypt
#i beznym uzivatelum. Je urcen ke spousteni za pomoci sudo bez vyzadovani hesla.
#
#
#Vycisteni promennych pouzivanych skriptem.
#
unset truecryptpath
unset usergroupregexp
unset options
unset user
unset group
unset dmask
unset fmask
#
#Nastaveni cesty k obsluznemu programu truecrypt.
#
truecryptpath=/usr/local/bin/truecrypt
#
#Test, zda byl skriptu predan alespon jeden parametr.
#
if [ $# -ge 1 ]; then
#
#Test, zda cesta k obsluznemu programu skutecne ukazuje na spustitelny
#soubor.
#
if [ -x $truecryptpath ]; then
#
#Analyza predanych parametru.
#
case "$1" in
#
#Zadost o vypis vsech pripojenych svazku. Musi byt zdan prave jeden
#parametr.
#
-l) if [ $# -eq 1 ]; then
#
#Vypis vsech pripojenych svazku.
#
$truecryptpath --list
#
#Pokud nebyl zdan prave jeden parametr, konci s chybou.
#
else
exit 4
fi;;
#
#Zadost o odpojeni vsech pripojenych svazku. Musi byt zdan prave
#jeden parametr.
#
-a) if [ $# -eq 1 ]; then
#
#Odpojeni vsech pripojenych svazku.
#
$truecryptpath -d
#
#Pokud nebyl zdan prave jeden parametr, konci s chybou.
#
else
exit 5
fi;;
#
#Zadost o odpojeni konkretniho svazku. Musi byt zdany prave dva
#parametry.
#
-u) if [ $# -eq 2 ]; then
#
#Kontola, zda druhy parametr je cesta k beznemu souboru
#nebo adresari.
#
if [ -f "$2" -o -d "$2" ]; then
#
#Odpojeni svazku identifikovaneho pripojnym bodem nebo
#zdrojovym souborem.
#
$truecryptpath -d "$2"
#
#Pokud druhy parametr neni cesta k beznemu souboru nebo
#adresari, konci s chybou.
#
else
exit 8
fi
#
#Pokud nebyly zdany prave dva parametry, konci s chybou.
#
else
exit 6
fi;;
#
#Zadost o pripojeni svazku. Musi byt zadano prave osm parametru.
#
-m) if [ $# -eq 8 ]; then
#
#Nastaveni pomocne promenne s regularnim vyrazem, kteremu
#musi odpovidat zadane jmeno uzivatele a skupiny.
#
usergroupregexp='[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_][ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_.-]*[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567899_.$-]\?';
#
#Nastaveni pomocne promenne se jmenem uzivatele, ktery ma
#byt vlastnikem souboru na pripojenem svazku.
#
user=`echo "$5" | grep -x -m 1 "$usergroupregexp"`;
#
#Nastaveni pomocne promenne se skupinou uzivatelu, ktere
#maji nalezet soubory na pripojenem svazku.
#
group=`echo "$6" | grep -x -m 1 "$usergroupregexp"`;
#
#Nastaveni pomocne promenne se maskou prav k adresarum na
#pripojenem svazku.
#
dmask=`echo "$7" | grep -x -m 1 '[0-7]\{3\}'`;
#
#Nastaveni pomocne promenne se maskou prav k souborum na
#pripojenem svazku.
#
fmask=`echo "$8" | grep -x -m 1 '[0-7]\{3\}'`;
#
#Kontola, zda treti parametr je cesta k beznemu souboru,
#ctvrty parametr je cesta k adresari a pomocne promenne
#obsahuji retezec nenulove delky.
#
if [ -f "$3" -a -d "$4" -a -n "$user" -a -n "$group" -a -n "$dmask" -a -n "$fmask" ]; then
#
#Nastaveni pomocne promenne s parametry pro pripojeni
#svazku.
#
options="uid=$user,gid=$group,dmask=0$dmask,fmask=0$fmask,utf8,noauto,nodev,noexec,nosuid";
#
#Pokud druhy parametr obsahuje retezece '-r'...
#
if [ "$2" = '-r' ]; then
#
#...pripoj svazek se zadanymi parametry ze zadaneho
#umisteni do zadaneho pripojneho bodu pouze pro
#cteni.
#
$truecryptpath -r --mount-options "$options" "$3" "$4"
#
#Pokud druhy parametr obsahuje retezece '-w'...
#
elif [ "$2" = '-w' ]; then
#
#...pripoj svazek se zadanymi parametry ze zadaneho
#umisteni do zadaneho pripojneho bodu pro cteni
#i zapis.
#
$truecryptpath --mount-options "$options" "$3" "$4"
#
#Pokud druhy parametr nebosahuje reteze '-r' nebo '-w',
#konci s chybou.
#
else
exit 9
fi;
#
#Pokud neni spravne nastaven treti nebo ctvrty parametr
#nebo alespon jedna promenna obsahuje retezec nulove delky,
#konci s chybou.
#
else
exit 10
fi
#
#Pokud nebylo zdano prave osm parametru, konci s chybou.
#
else
exit 7
fi;;
#
#Pokud v prvnim parametru nebyl nalezen spravny prikaz, konci
#s chybou.
#
*) exit 3;;
esac
#
#Pokud cesta k obsluznemu programu neukazuje na spustitelny soubor, konci
#s chybou.
#
else
exit 2
fi
#
#Pokud skriptu nebyl predan ani jeden parametr, konci s chybou.
#
else
exit 1
fi
$ exit
> # Read-only mód.
> sudo /usr/local/bin/truecryptmount.sh -m -r '/home/michalr/enc.tc' '/home/michalr/encmnt/' 'michalr' 'encrypted' '077' '177'
> # Unmount.
> sudo /usr/local/bin/truecryptmount.sh -u '/home/michalr/enc.tc'
> # Read-write mód.
> sudo /usr/local/bin/truecryptmount.sh -m -w '/home/michalr/enc.tc' '/home/michalr/encmnt/' 'michalr' 'encrypted' '077' '177'
> # Unmount all.
> sudo /usr/local/bin/truecryptmount.sh -a
> # List.
> sudo /usr/local/bin/truecryptmount.sh -l
if not něco then exit; dělej než if něco then dělej else exit a neporoste ti to tak do šířky
Takže: Brání tenhle skriptík tomu, abych nepřeplácnoul např. /bin něčím vlastním? Ani nechci domejšlet, co by se mohlo stát, jestli ne
/bin?
Tak jdu záplatovat.
$PATH, ne?
Tiskni
Sdílej: