Byla vydána (𝕏) nová verze 2025.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.
Dánské ministerstvo pro digitální záležitosti má v plánu přejít na Linux a LibreOffice [It's FOSS News].
V úterý Google vydal Android 16. Zdrojové kódy jsou k dispozici na AOSP (Android Open Source Project). Chybí (zatím?) ale zdrojové kódy specifické pro telefony Pixel od Googlu. Projekty jako CalyxOS a GrapheneOS řeší, jak tyto telefony nadále podporovat. Nejistá je podpora budoucích Pixelů. Souvisí to s hrozícím rozdělením Googlu (Google, Chrome, Android)?
Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.101 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.101 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
V Brně na FIT VUT probíhá třídenní open source komunitní konference DevConf.CZ 2025. Vstup je zdarma, nutná je ale registrace. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.
Vyloučení technologií, které by mohly představovat bezpečnostní riziko pro stát, má umožnit zákon o kybernetické bezpečnosti, který včera Senát schválil spolu s novelami navazujících právních předpisů. Norma, kterou nyní dostane k podpisu prezident, počítá rovněž s prověřováním dodavatelů technologií pro stát. Normy mají nabýt účinnosti od třetího měsíce po jejich vyhlášení ve Sbírce zákonů.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.6.
Po Red Hat Enterprise Linuxu a AlmaLinuxu byl v nové stabilní verzi 10.0 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.
Bylo vydáno Eclipse IDE 2025-06 aneb Eclipse 4.36. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Americká filmová studia Walt Disney a Universal Pictures podala žalobu na provozovatele populárního generátoru obrázků pomocí umělé inteligence (AI) Midjourney. Zdůvodňují to údajným porušováním autorských práv. V žalobě podané u federálního soudu v Los Angeles označují firmu za „bezednou jámu plagiátorství“, neboť podle nich bez povolení bezostyšně kopíruje a šíří postavy z filmů jako Star Wars, Ledové království nebo Já, padouch, aniž by do nich investovala jediný cent.
Adresa tématu či pozadí: http://interfacelift.com/wallpaper/downloads/date/widescreen/
Pozadí je ve skutečnosti generováno dynamicky (Perl + ImageMagic) každých pět minut náhodným výběrem dvou širokoúhlých obrázků z databáze vytvořené z InterfaceLift.com.
Gnome Shell rozšíření:
Tiskni
Sdílej:
Je to starý kód, šlo by to napsat lépe, ale funguje to.
#!/usr/bin/env perl use strict; use warnings; use utf8; use File::Copy; use File::Temp qw/ tempfile /; binmode(STDIN, "utf8"); binmode(STDOUT, "utf8"); binmode(STDERR, "utf8"); use File::Spec; # Výpis informací o použití programu. sub print_help { my $exit_code = shift @_; $exit_code = 1 unless $exit_code; print STDERR "Použití:\n"; print STDERR " $0 <adresář_s_obrázky> <cílový_soubor_s_tapetou>\n"; exit $exit_code; } sub get_full_path { my $arg = shift @_; return File::Spec->canonpath(File::Spec->rel2abs($arg)); } # # Main # my ($wdir, $wfilelink, $wfile, $wfileold) = (undef, undef, undef, undef); unless (($#ARGV + 1) == 2 and -d $ARGV[0] and -l $ARGV[1]) { print_help; } else { $wdir = get_full_path($ARGV[0]); $wfilelink = get_full_path($ARGV[1]); } if (-f "$wfilelink.1") { $wfileold = "$wfilelink.1"; $wfile = "$wfilelink.2"; } else { $wfileold = "$wfilelink.2"; $wfile = "$wfilelink.1"; } my $pid = `pgrep gnome-session`; chomp $pid; my $dbus = `grep -z "DBUS_SESSION_BUS_ADDRESS" "/proc/$pid/environ" 2>/dev/null`; chomp $dbus; $dbus =~ s/^DBUS_SESSION_BUS_ADDRESS=//g; exit if ($dbus =~ /^\s*$/); opendir(WDIR, $wdir) || die("Nezdrařilo se čtení obsahu adresáře $wdir: $!"); my @wdircontent = grep { $_ !~ /^(\.|\.\.)$/ && -f "$wdir/$_" } readdir(WDIR); closedir(WDIR); my $randomwfile1 = get_full_path(File::Spec->join($wdir, $wdircontent[int(rand($#wdircontent + 1))])); my $randomwfile2 = get_full_path(File::Spec->join($wdir, $wdircontent[int(rand($#wdircontent + 1))])); my ($tmpfile1, $tmpfilename1) = tempfile(UNLINK => 1, SUFFIX => '.png') or die "$!"; my ($tmpfile2, $tmpfilename2) = tempfile(UNLINK => 1, SUFFIX => '.png') or die "$!"; #system('convert', "$randomwfile1", '-quality', '100', '-resize', 'x1200', '-gravity', 'center', '-crop', '1920x1200+0+0', "$tmpfilename1") == 0 system('convert', "$randomwfile1", '-quality', '100', '-resize', 'x1600', '-gravity', 'center', '-crop', '2560x1440+0+0', "$tmpfilename1") == 0 or die "Convert 1 failed: $!"; system('convert', "$randomwfile2", '-quality', '100', '-resize', 'x1200', '-gravity', 'center', '-crop', '1600x1200+0+0', "$tmpfilename2") == 0 or die "Convert 2 failed: $!"; system('montage', "$tmpfilename1", "$tmpfilename2", '-quality', '100', '-background', 'black', '-mode', 'Concatenate', '-gravity', 'SouthWest', '-tile', 'x1', "$wfile") == 0 or die "Montage failed: $!"; open(INFO, ">:encoding(UTF-8)", "/tmp/wallpaper-info.txt") or die("open() failed: $!"); print INFO "left picture: $randomwfile1\n" ."right picture: $randomwfile2\n"; close(INFO); unlink "$wfileold" if (-f "$wfileold"); unlink "$wfilelink" if (-l "$wfilelink"); symlink("$wfile", "$wfilelink"); $wfile =~ s/'/'\\''/g; # Aby to prošlo v následujícím příkazu, pokud je ve jméně souboru apostrof. #system('export DBUS_SESSION_BUS_ADDRESS='."'$dbus'".'; gsettings set org.gnome.desktop.background picture-uri '."'$wfile'"); system('export DBUS_SESSION_BUS_ADDRESS=$(grep -z "DBUS_SESSION_BUS_ADDRESS" "/proc/$(pgrep gnome-session)/environ" | cut -d= -f2-); gsettings set org.gnome.desktop.background picture-uri '."'$wfile'");
Je to nastaveno na dvoumonitorovou konfiguraci: vlevo 2560×1440 a vpravo 1600×1200 zarovnaný na spodní okraj levého monitoru.
V noci jsem si ještě vzpomněl, že vlastně ten skript nepůjde spustit na místě, kde to ještě není nachystaný ten symlink (kvůli prodlevě při generování nového obrázku, kdy by nebyl soubor s tapetou dobře vytvořený, se obrázek střídavě generuje do dvou souborů a po vygenerování se jen přesměruje symlink, aby se plynule bez prodlev zobrazila nová tapeta), takže před případným použitím doporučuji aplikovat tenhle patch:
--- a/wallpaper-random-change.pl 2016-01-14 09:37:20.597823140 +0100 +++ b/wallpaper-random-change.pl 2016-01-14 09:37:32.513515615 +0100 @@ -38,7 +38,7 @@ my ($wdir, $wfilelink, $wfile, $wfileold) = (undef, undef, undef, undef); -unless (($#ARGV + 1) == 2 and -d $ARGV[0] and -l $ARGV[1]) { +unless (($#ARGV + 1) == 2 and -d $ARGV[0] and (-l $ARGV[1] or not -e $ARGV[1])) { print_help; } else { $wdir = get_full_path($ARGV[0]);