Na základě DMCA požadavku bylo na konci dubna z GitHubu odstraněno 8535 repozitářů se zdrojovými kódy open source emulátoru přenosné herní konzole Nintendo Switch yuzu.
Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.1.0. Po devíti letech od vydání předchozí verze 3.0.5. Doména dillo.org již nepatří vývojářům Dilla.
O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2024 organizovaná nadací Free Software Foundation (FSF).
Nová vývojová verze Wine 9.8 řeší mimo jiné chybu #3689 při instalaci Microsoft Office 97 nahlášenou v roce 2005.
Coppwr, tj. GUI nástroj pro nízkoúrovňové ovládání PipeWire, byl vydán v nové verzi 1.6.0. Zdrojové kódy jsou k dispozici na GitHubu. Instalovat lze také z Flathubu.
Byla vydána dubnová aktualizace aneb nová verze 1.89 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Vypíchnout lze, že v terminálu lze nově povolit vkládání kopírovaného textu stisknutím středního tlačítka myši. Ve verzi 1.89 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Proton, tj. fork Wine integrovaný v Steam Play a umožňující v Linuxu přímo ze Steamu hrát hry určené pouze pro Windows, byl vydán ve verzi 9.0-1 (𝕏). Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled her pro Windows běžících díky Protonu také na Linuxu na stránkách ProtonDB.
Byla vydána verze 1.78.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání na GitHubu. Vyzkoušet Rust lze například na stránce Rust by Example.
Služba Dropbox Sign (původně HelloSign) pro elektronické podepisování smluv byla hacknuta.
Byla vydána nová major verze 8.0 textového editoru GNU nano (Wikipedie). Podrobný přehled novinek a oprav v oznámení v diskusním listu info-nano nebo v souboru ChangeLog na Savannah. Volbou --modernbindings (-/) lze povolit "moderní" klávesové zkratky: ^C kopírování, ^V vložení, ^Z vrácení zpět, … Tato volba je aktivována také pokud binárka s nano nebo link na ni začíná písmenem "e".
systemctl status bumblebeed ● bumblebeed.service - Bumblebee C Daemon Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2020-07-22 10:33:32 CEST; 1 day 13h ago Main PID: 656 (bumblebeed) Tasks: 1 (limit: 18816) Memory: 17.2M CGroup: /system.slice/bumblebeed.service └─656 /usr/bin/bumblebeed --use-syslogTa služba si spouští další proces "Xorg :8 -config...", takže výpis pak vypadá takto:
systemctl status bumblebeed ● bumblebeed.service - Bumblebee C Daemon Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2020-07-22 10:33:32 CEST; 1 day 11h ago Main PID: 656 (bumblebeed) Tasks: 2 (limit: 18816) Memory: 30.6M CGroup: /system.slice/bumblebeed.service ├─ 656 /usr/bin/bumblebeed --use-syslog └─52090 /usr/lib/Xorg :8 -config ...Já bych potřeboval spustit svůj bash script ve chvíli kdy si služba bumblebeed spustí proces "Xorg :8 -config...". Existuje nějaká taková možnost v systemd? Vím, že existuje "Before", "After", ale to v tomto případě asi nepomůže.
Řešení dotazu:
Ten hlavní proces bumblebeed (nastartovaný systemd) zůstává pořád běžet?Ano, zůstává pořád běžet. Výpis služby vypadá takto:
systemctl cat bumblebeed # /usr/lib/systemd/system/bumblebeed.service [Unit] Description=Bumblebee C Daemon [Service] Type=simple ExecStart=/usr/bin/bumblebeed --use-syslog Restart=always RestartSec=60 [Install] WantedBy=multi-user.target
Potřebuji tudíž ihned po spuštění nové instance Xorg :8 spustit můj script, který na něm vypne klávesnci a myš.To vypadá jako rovnák na ohejbák. Nešlo by zařídit, aby se tam ta klávesnice a myš vůbec nepřipojila?
# If you connect a display to one of the outputs wired to the Nvidia card, you # have to comment this whole file. Note that you can leave it commented even # without currently attached monitor, at the cost of greater optirun startup # time. Section "InputClass" Identifier "IgnoreDevices" MatchDevicePath "/dev/input/event*|/dev/input/mouse*|/dev/input/js*|/dev/input/mice*" Option "Ignore" "true" EndSectionJenomže, pak nefunguje klávesnice a myš na "Xorg :8" vůbec a nevím o tom, že by šla nějak zapnout bez resetu Xka. Já potřebuji přehazovat jednu klávesnici a jednu myš mezi oběma Xkama. Script na přepínání už mám hotový (řešil jsem v tom vedlejším vlákně). Jedině, že by existoval nějaký parametr při spuštění Xorg, něco jako "/usr/lib/Xorg :8 -disable input ...", ale jak jsem googlil, tak jsem nic takového nenašel. Všichni vypínají klávesnice, myši a touchpady pomocí xinput. Takže z toho mně vyplývá, že jediná varianta je: - nejdřív musím zapnout "Xorg :8", - potom pomocí xinput vypnout klávesnici a myš.
DISPLAY=:8 xinput --list ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]Tudíž tam není načtena žádná klávesnice ani myš a proto nemohu příkazem
xinput --enable
žádné zařízení zapnout.
startx
ale přímo příkaz "/usr/lib/Xorg :8 ..." - viz níže v diskuzi.
DE na "Xorg :8" nespouštím. Spouštím tam jen windows managera (xfwm4) a daný program si spustím z "Xorg :0". Jako trochu jsem uvažoval, že na :8 spustím DE, ale:
za a) to teď nepotřebuji
za b) XFCE mi běží na "Xorg :0" a nejsem si jistý jestli je správné (bezpečné) spouštět XFCE ve druhé instanci na "Xorg :8" pod stejným uživatelem. Znamenalo by to, že obě instance budou používat stejné konfiguráky a nerad bych si XFCE rozhodil. Mohl bych použít jiný DE, ale zase mít 2 různé prostředí mně nepřijde moc přívětivé.
startx
nebo xinit
nebo si je spouští display manager. Samotný proces /usr/lib/Xorg
je nenačítá.
xinitrc
přidat něco jako
PROCS=$(ps -aux); TEST=$(echo -n "$PROCS" | grep "Xorg :8"); if [ -n "$TEST" ]; then transfer_input.sh fiale je to taky docela hack.
$HOME/.xinitrc
i do /etc/X11/xinit/xinitrc
. Nenačítá se xinitrc náhodou jen když se Xko startuje příkazem startx
? Bumblebee si dané Xko spouští napřímo, takto:
/usr/lib/Xorg :8 -config /etc/bumblebee/xorg.conf.nvidia \ -configdir /etc/bumblebee/xorg.conf.d -sharevts -nolisten tcp \ -noreset -verbose 3 -isolateDevice PCI:01:00:0 \ -modulepath /usr/lib/nvidia/xorg,/usr/lib/xorg/modules
ExecStartPost
pustít skript, který počká, dokud druhý Xorg nenastartuje a pak překonfiguruje vstupní zařízení.
ps aux | grep "Xorg :8"
, tak to mi moc nepomůže, protože služba bumblebeed.service se spouští hned při startu PC takže to bych ten script, který bude ve smyčce kontrolovat mohl zrovna spustit po nabootování a vyšlo by to nastejno.
Asi to udělám tak, že vytvořím wraper "muj_optirun.sh" o kterém jsem psal navrchu téhle diskuze. Stejně potřebuji při prvním spuštění "Xorg :8" spustit i windows manager, tak to dám všechno do toho wraperu. Zdá se mi to asi nejelegantnější řešení pokud to pomocí systemd nejde.
<fuj>optirun taky dělá že bumblebeed votevře socket byse toho možná dalo využít :O :O
ss | grep bum u_str ESTAB 0 0 /var/run/bumblebee.socket
</fuj>
[Unit] ConditionPathExists=/etc/sysconfig/cloudformationale mělo by to ověřovat jen při startu služby a přidávat k tomu timery bych dosáhl stejného efektu jako kdyby to kontroloval bash script ve smyčce. Ale existuje Path unit , která interně využívá inotify. Tohle se mi nezdá být až tak fuj. Nebo je na inotify (Path_unit) něco špatného?
/var/run/bumblebee.socket
nebo ps aux | grep "Xorg :8"
, tak to vyjde nastejno.
/tmp/.X11-unix/X8
. Jo to už *.path (inotify) zachytí a funguje to. Pokud se na jméno tohoto souboru dá spolehnout, tak takhle by to šlo.
$ cat ~/.config/systemd/user/bumblebee.path
[Unit] Description=Monitors whether /tmp/.X11-unix/X8 file (socket) exists. [Path] PathExists=/tmp/.X11-unix/X8 Unit=bumblebee-disable-kbd-mouse.service [Install] WantedBy=multi-user.target
$ cat ~/.config/systemd/user/bumblebee-disable-keyb-mouse.service
[Unit] Description=Executes script when a file (/tmp/.X11-unix/X8) defined in the bumblebee.path file exists. [Service] Type=simple ExecStartPre=/bin/sleep 1 ExecStart=/path/to/script/disable-kbd-mouse-xorg-8.sh [Install] WantedBy=multi-user.target
$ systemctl --user enable bumblebee.path
Tiskni Sdílej: