Vývojáři OpenMW (Wikipedie) oznámili vydání verze 0.51.0 této svobodné implementace enginu pro hru The Elder Scrolls III: Morrowind. Přehled novinek v oznámení o vydání a také na YouTube a PeerTube.
Byla vydána nová verze 2026.3.0 "Carousels & Killer Whales" svobodného softwaru ScummVM (Wikipedie) umožňujícího bezproblémový běh mnoha klasických adventur na zařízeních, pro které nebyly nikdy určeny. Přehled novinek v poznámkách k vydání a na GitHubu.
Tento týden (24. a 27. června) vyprší platnost Microsoft certifikátu v UEFI vydaných v roce 2011. Nové certifikáty byly vydány v roce 2023. Kdo na počítačích, i virtuálních, používá zabezpečené spouštění (Secure Boot), měl by si ověřit, že má certifikáty aktualizovány, viz např. články na Red Hat nebo Fedora. Pro stávající systémy se nic nemění. Nadále se budou normálně spouštět. Zavaděče podepsané pouze klíčem z 2023 se ale na počítačích s pouze certifikátem 2011 nespustí. Ve Fedoře je zavaděč shim ve verzi 16.1-6 podepsán klíči 2011 i 2023.
Uživatelé mobilních telefonů s Linuxem si nyní mohou nainstalovat aplikaci Mobilní Datovka. Díky tomu je přístup k datovým schránkám dostupný i na zařízeních s mobilními linuxovými distribucemi, jako jsou například Mobian, NixOS Mobile, pmOS atd. Aplikace je dostupná na Flathubu.
Software Freedom Conservancy v novém dokumentu shrnuje doporučení, jak přistupovat ke generativní AI založené na LLM při přispívání do svobodného a open-source softwaru. Mimo jiné vyzývá k obezřetnosti, transparentnosti a revizi generovaného kódu člověkem.
Byla vydána nová verze 5.6.0 programu na úpravu digitálních fotografií darktable (Wikipedie).
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. V Týdnu v GNOME je zmíněn flatpak balíček pro GIMP 0.54.1 z roku 1996. Jedná se o poslední verzi GIMPu postavenou nad toolkitem Motif.
Home Assistant Operating System, tj. linuxová distribuce optimalizována pro hostování Home Assistanta a jeho aplikací, byl vydán v nové major verzi 18.0.
Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.
Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.
ps ax spousty procesů "-l". Je to jen kvůli překlepům a podobně. Navíc se zdá, že to bere trochu paměti a taky se zbytečně zvětší seznam procesů. Jednou jsem to zkoušel killnout a... dopadl jsem špatně.
Dá se nějak zabránit jejich vytváření? Žerou paměť, nebo se tak jen tváří?
Řešení dotazu:
$ ps a | grep -- -l 5566 pts/0 Ss 0:00 -l 31941 pts/1 Ss+ 0:00 -l 4171 pts/2 Ss 0:00 -l 6081 pts/2 S+ 0:00 grep --color=auto -- -l
kill 5566, nebo kill -9 5566?
$ hh -l: hh: command not foundale v tuhle chvíli se tam novej nevytvořil. Je to jen někdy, zkusím to vypozorovat.
Prostě zabije shell.
$ ps ax | grep -- -l 31941 pts/1 Ss+ 0:00 -l 4171 pts/2 Ss+ 0:00 -l 9133 pts/0 Ss+ 0:00 -l 9159 pts/3 Ss+ 0:00 -l 9166 pts/4 Ss+ 0:00 -l 9171 pts/5 Ss+ 0:00 -l 9174 pts/6 Ss+ 0:00 -l 9179 pts/7 Ss+ 0:00 -l 9183 pts/8 Ss+ 0:00 -l 9188 pts/9 Ss+ 0:00 -l 9195 pts/10 Ss+ 0:00 -l 9200 pts/11 Ss+ 0:00 -l 9204 pts/12 Ss+ 0:00 -l 9209 pts/13 Ss+ 0:00 -l 9217 pts/14 Ss 0:00 -l 9238 pts/14 S+ 0:00 grep --color=auto -- -la když spustím xterm, je tam bash. Huh.
echo $1? To skoro vypadá, že se u tebe jmenuje bash -l
. Správný výpis je totiž
$ hh bash: hh: command not foundNemáš někde nějaký symlink, nebo něco rakového?
echo $1 nevypíše nic. Bash se nejmenuje -l, není to ani symlink ani alias. V xtermu je to jak píšeš, v tty je -bash. V Yakuake to dělá jen jako user, po sux - už ne. V .bashrc mám jen
export GTK2_RC_FILES=$HOME/.gtkrc-2.0To je AFAIK proto, abych měl Qt skin u GTK+ aplikací.
Takže bug v YaKuake... zajímavé je, že se tak děje jen před su.Protože su spustí další shell, kterému nastaví nultý parametr (jméno programu) správně.
[david@amd64 ~] $ echo $0 -l root@amd64 ~ [ r10.61G h43.56G p129M s1035M | 1/88 0.37 ] [17:21] # echo $0 -/bin/bash
echo $0 a ne 1
, díky za opravu.
src/ a tam editujte část
args.append("-l");
shell = getenv("SHELL");
if (shell == NULL || *shell == '\0')
shell = "/bin/sh";na
args.append("-/bin/bash");
shell = getenv("SHELL");
if (shell == NULL || *shell == '\0')
shell = "/bin/bash";To mi pomohlo...
[david@amd64 ~] $ hh bash: hh: command not found
shell_session.cpp.
/usr/local/bin/, takže by to teď fungovalo jen na Linuxu.
Ale co, já a hrabat se v kódu Céčka. Sotva napíšu printf. Takže na to, že je to můj první patch, můžeme být rádi, že to nemaže hardisk...
Takže na to, že je to můj první patch, můžeme být rádi, že to nemaže hardisk...
Dělám si srandu.
vývojářůmJe jenom jeden a právě jsem mu to poslal.
- args.append("-l");
shell = getenv("SHELL");
if (shell == NULL || *shell == '\0')
shell = "/bin/sh";
+ args.append(shell);
+ args.append("-l");
Ty zdrojáky jsem nečetl, takže netuším jak ten program ve skutečnosti funguje...
[david@amd64 ~] $ echo $0 /bin/bash [david@amd64 ~] $ hh bash: hh: command not found
- args.append("-l");
shell = getenv("SHELL");
if (shell == NULL || *shell == '\0')
shell = "/bin/sh";
+ args.append(strrchr(shell, '/') ? strrchr(shell, '/') : shell);
+ args.append("-l");
x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../. -I../src -I/usr/kde/3.5/include -I/usr/qt/3/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -O2 -march=athlon64 -fomit-frame-pointer -pipe -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -c -o shell_session.o shell_session.cpp shell_session.cpp: In constructor `ShellSession::ShellSession(QWidget*, const char*)': shell_session.cpp:50: error: wrong type argument to unary minus /usr/kde/3.5/bin/dcopidl2cpp --c++-suffix cpp --no-signals --no-stub dcop_interface.kidl x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../. -I../src -I/usr/kde/3.5/include -I/usr/qt/3/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -O2 -march=athlon64 -fomit-frame-pointer -pipe -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -c -o dcop_interface_skel.o dcop_interface_skel.cpp make[2]: *** [shell_session.o] Error 1 make[2]: *** Waiting for unfinished jobs.... tabbed_widget.cpp: In member function `int TabbedWidget::removeItem(int)': tabbed_widget.cpp:95: warning: comparison between signed and unsigned integer expressions tabbed_widget.cpp: In member function `void TabbedWidget::selectNextItem()': tabbed_widget.cpp:117: warning: comparison between signed and unsigned integer expressions tabbed_widget.cpp: In member function `virtual void TabbedWidget::mouseReleaseEvent(QMouseEvent*)': tabbed_widget.cpp:275: warning: comparison between signed and unsigned integer expressions tabbed_widget.cpp:277: warning: comparison between signed and unsigned integer expressions make[2]: Leaving directory `/var/tmp/portage/yakuake-2.7.3/work/yakuake-2.7.3/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/yakuake-2.7.3/work/yakuake-2.7.3' make: *** [all] Error 2
Jdu raději hrát, dělám akorát škodu...
Tiskni
Sdílej: