abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:22 | IT novinky

    Společnost Apple slaví padesáté narozeniny. Založena byla 1. dubna 1976.

    Ladislav Hagara | Komentářů: 0
    včera 22:33 | Nová verze

    FreeTube, desktopový klient pro YouTube využívající lokální API, byl vydán ve verzi 0.24.0. Toto velké opravné vydání implementuje SABR (Server-Based Adaptive Bit Rate), což řeší část nedávných problémů s načítáním videí z YouTube, a aktualizuje základní komponenty jako Electron nebo přehrávač Shaka Player.

    |🇵🇸 | Komentářů: 0
    včera 16:33 | Humor

    Je tu opět apríl. O víkendu zmizel kamion s 12 tunami tyčinek KitKat. Firmy to využívají k aprílovým žertům. Groupon má super akci. Koupíte 1 tyčinku a dostanete 100 zdarma. Ryanair si přelepil letadla. Šéf Outlooku se ptá, proč mají v baráku 14 beden tyčinek KitKat (𝕏). Prusa Research představuje Prusa Pro ACU a vysvětluje proč přílišné sušení škodí vaším filamentům. Telefon Sony Xperia má miliónnásobný zoom (𝕏). PC.net představil Super Ultrabox 2600 se zajímavými parametry. Další aprílové novinky například na April Fools' Day On The Web.

    Ladislav Hagara | Komentářů: 2
    včera 13:22 | IT novinky

    Společnost OpenAI, která stojí za chatovacím robotem s umělou inteligencí (AI) ChatGPT, získala od investorů 122 miliard USD (2,6 bilionu Kč). Hodnota společnosti tak dosáhla 852 miliard dolarů (více než 18 bilionů Kč). Nejnovější kolo investování se stalo největší, jaké zatím firma uskutečnila, a peníze mají posílit ambiciózní plány rozšíření výpočetní kapacity, datových center a nábor talentů.

    Ladislav Hagara | Komentářů: 4
    včera 13:11 | IT novinky

    Nástroj k identifikaci občanů v on-line komunikaci s úřady byl dnes dopoledne zhruba dvě hodiny částečně nedostupný. Problém se objevil kolem 09:00 a podařilo se ho vyřešit kolem 11:00. Částečně nedostupná byla služba Národní identitní autority (NIA), problémy podle DIA (Digitální a informační agentura) ovlivňovaly přihlašování například i přes bankovní identitu. „Dostupnost NIA byla plně obnovena, přihlášení k digitálním službám

    … více »
    Ladislav Hagara | Komentářů: 3
    včera 13:00 | IT novinky

    Eben Upton oznámil další zdražení počítačů Raspberry Pi kvůli růstu cen pamětí a představil Raspberry Pi 4 s 3 GB RAM za 83,75 dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Humor

    Anthropic patrně omylem zveřejnil celý zdrojový kód svého CLI nástroje Claude Code prostřednictvím přiloženého sourcemap souboru v npm balíčku. Únik odhalil doposud nijak nezveřejněné funkce jako je například režim v utajení, autonomní agent 'KAIROS', orchestrace multi‑agentů, režim snění nebo dokonce virtuální mazlíček Buddy. Zajímavostí je detekce naštvání uživatele pomocí obyčejného regexpu. Anthropic rychle odstranil sourcemap a vydal opravu, nicméně kopie kódu se již stihly na GitHubu rozšířit mezi prostým lidem.

    NUKE GAZA! 🎆 | Komentářů: 10
    31.3. 14:33 | Humor

    Copilot automaticky vkládal do pull requestů 'propagační tipy', reklamní text se na GitHubu objevil ve více než jedenácti tisících pull requestech. Po vlně kritiky byla tato funkce zablokována a produktový manažer Tim Rogers připustil, že umožnit Copilotovi upravovat cizí pull requesty bez vědomí autorů byla chyba.

    NUKE GAZA! 🎆 | Komentářů: 4
    31.3. 12:55 | Upozornění

    Je 31. března a tedy Světový den zálohování (World Backup Day). Co by se stalo, kdyby Vám právě teď odešel počítač, tablet nebo telefon, který používáte?

    Ladislav Hagara | Komentářů: 4
    31.3. 12:44 | Upozornění

    Digitální a informační agentura (DIA) přistupuje ke změně formátu důvěryhodného seznamu České republiky z verze TLv5 na verzi TLv6, která nastane 29. dubna 2026 v 00:00 (CET). Ke změně formátu důvěryhodných seznamů členských států (tzv. Trusted Lists) dochází na základě změn příslušné unijní legislativy. Důvěryhodné seznamy se používají v rámci informačních systémů a aplikací zejména pro účely ověřování platnosti elektronických

    … více »
    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (30%)
     (3%)
     (5%)
     (1%)
     (14%)
     (23%)
    Celkem 1203 hlasů
     Komentářů: 29, poslední 31.3. 11:17
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    21.7.2020 14:44 LarryL | skóre: 27
    Rozbalit Rozbalit vše Re: Jak přehazovat klávesnici a myš mezi dvěmi instancemi Xorg (2 grafické karty)?
    TL;DR: Napíši tady poznatky s používáním pro ostatní, třeba se někomu bude hodit, i pro sebe až to budu za rok zase řešit :-). Přikládám script, který pro mne funguje pomocí metody xinput. Poznatky s metodou xinput i s VT je i přímo ve scriptu - v helpu. Mám ještě jednu otázečku (úplně dole v tomto příspěvku).

    Script:
    #!/bin/sh
    
    # Pokud se kláv. nebo myš objevuje ve výpisu "xinput --list" vícekrát, tak uveď
    # tu část názvu, která je shodná u všech.
    # Pokud je připojeno více HW klávesnic a myší a je požadavek je přepínat všechny,
    # tak lze použít krátký společný název pro všechny, např. "Keyboard" a "Mouse"
    keyboard="Logitech USB Keyboard"
    mouse="Logitech G700 Laser Mouse"
    
    display_main="0"
    display_b="8"
    
    switch(){
    	# default keyboard/pointer je pro případ, že v /etc/bumblebee/xorg.conf.nvidia bude Option "AutoAddDevices" "false".
    	# devlist_* je pro případ, že jedno fyzické zařízení bude v systému jako více zařízení podobných nebo stejných názvů.
    	devlist_mouse_1=$(DISPLAY=:"$1" xinput --list | grep "$mouse\|default pointer" | sed -n 's/.*id=\([0-9]\+\).*/\1/p')
    	devlist_keyboard_1=$(DISPLAY=:"$1" xinput --list | grep "$keyboard\|default keyboard" | sed -n 's/.*id=\([0-9]\+\).*/\1/p')
    
    	devlist_mouse_2=$(DISPLAY=:"$2" xinput --list | grep "$mouse\|default pointer" | sed -n 's/.*id=\([0-9]\+\).*/\1/p')
    	devlist_keyboard_2=$(DISPLAY=:"$2" xinput --list | grep "$keyboard\|default keyboard" | sed -n 's/.*id=\([0-9]\+\).*/\1/p')
    
    	if [[ "$devlist_mouse_1" == "" && "$devlist_keyboard_1" == "" ]]; then 
    		echo "Mouse and keyboard not found on DISPLAY :$1 or unable to connect to X server."
    	else
    		for dev in $devlist_mouse_1 $devlist_keyboard_1
    		do
    	    	DISPLAY=:"$1" xinput --enable "$dev"
    		done
    
    		if [[ "$devlist_mouse_2" == "" && "$devlist_keyboard_2" == "" ]]; then 
    			echo "Mouse and keyboard not found on DISPLAY :$2 or unable to connect to X server."
    		else
    			for dev in $devlist_mouse_2 $devlist_keyboard_2
    			do
    		    	DISPLAY=:"$2" xinput --disable "$dev"
    			done
    		fi
    	fi
    }
    
    case "$1" in
    	--switch-on-main)
    		switch "$display_main" "$display_b"
    		;;
    	--switch)
    		# Pokud má myš stejný název pro různá ID, tak by příkaz s "--long" nefungoval. Vypisoval by
    		# chybu: "Warning: There are multiple devices matching ..."
    		#if ( DISPLAY=:"$display_main" xinput --list --long "$mouse" | grep -q disabled ) ; then
    		id=$(DISPLAY=:"$display_main" xinput --list | grep "$mouse" | sed -n '1 s/.*id=\([0-9]\+\).*/\1/p')
    		if [[ $(DISPLAY=:"$display_main" xinput list-props $id | grep 'Device Enabled' | awk '{print $4}') == "0" ]]; then
    			switch "$display_main" "$display_b"
    		else
    			switch "$display_b" "$display_main"
    		fi
    		;;
    	--help|-h|*)
    		echo "Použití: $0 [OPTION]"
    		echo
    		echo 'Tento script přepne klávesnici a myš předdefinovaného názvu mezi instancemi' 
    		echo 'Xorg spuštěnými na iGPU Intel (DISPLAY :0) a dGPU Nvidia (DISPLAY:8).'
    		echo
    		echo 'Při použití Nvidia-Bumblebee je tento script potřeba pouze když chceme'
    		echo 'používat monitor připojený přímo k dGPU. Výsledkem je nejnižší možná latence.' 
    		echo 'Pro zprovoznění je potřeba:'
    		echo '- v souboru /etc/bumblebee/xorg.conf.nvidia'
    		echo '  zakomentovat řádek (nebo vložit správný port):'
    		echo '  Option "ConnectedMonitor" "DFP"'
    		echo '  změnit na true:'
    		echo '  Option "UseEDID" "false"'
    		echo '  Option "AutoAddDevices" "false" #bez toho by v "xinput --list" bylo: default keyboard/mouse'
    		echo '  přidat řádek:'
    		echo '  Option "AllowEmptyInitialConfiguration'
    		echo '- zakomentovat obsah souboru /etc/bumblebee/xorg.conf.d/10-ignore-devices.conf'
    		echo '- aplikace na dGPU Nvidia spouštět příkazem: DISPLAY=:8 optirun <application>'
    		echo '- další aplikace na dGPU Nvidia lze spouštět příkazem: DISPLAY=:8 <application>'
    		echo
    		echo 'OPTION:'
    		echo ' -h --help        zobrazí tuto nápovědu'
    		echo ' --switch-on-main zapne klávesnici a myš na DISPLAY :0 a vypne na DISPLAY :8'
    		echo '                  (vhodné použít při prvním spuštění procesu "Xorg :8", aby'
    		echo '                  klávesnice a myš nefungovaly zdvojeně na na obou diplejích)'
    		echo ' --switch         přepíná klávesnici a myš mezi DISPLAY :0 a DISPLAY :8 (při'
    		echo '                  prvním spuštění se zapne na DISPLAY :8 a vypne na DISPLAY :0)'
    		echo
    		echo 'Vytvoření klávesové zkratky:'
    		echo '1) Pomocí programu, který je závislý na Xorg (např. windows managery, Xbindkeys)'
    		echo '   hrozí, že pokud bude klávesnice a myš na DISPLAY :8 a proces'
    		echo '   "Xorg :8" bude ukončen, tak se nepůjde přepnout zpět na "Xorg :0".'
    		echo '   Nepůjde se přepnout ani na volný textový VT (tty2) a spustit tento'
    		echo '   script ručně. Nejjednodušší je vypojit a znovunapojit klávesnici/myš z USB portu.'
    		echo '   Nvidia-Bumblebee ve výchozím nastavení ukončí "Xorg :8" automaticky pokud na'
    		echo '   DISPLAY :8 již neběží žádný jiný proces.'
    		echo '2) Pomocí programu, který není závislý na Xorg (např. acpid, actkbd).'
    		echo
    		echo 'Varování:'
    		echo 'Pokud bych se přepl na textový terminál (např. tty2) a zapl tento script, tak'
    		echo 'všechny vstupy z klávesnice i myši se projeví na tty2 i na displeji :0/:8.'
    		echo 'Podobná situace s duplicitou vstupů na obou displejích :0 a :8 nastane když:'
    		echo '- napojím/znovunapojím klávesnici nebo myš,'
    		echo '- poprvé spustím (nebo bumbebee spustí) proces "Xorg :8".'
    		echo
    		echo 'Poznámka (jiná možnost přepínání):'
    		echo 'Pro přepínání klávesnice a myši lze použít i virtuální terminály (VT) a přepínat'
    		echo 'tty7 a tty8 (Ctrl+Alt+F7/F8). V tom případě se nepoužívá optirun, ale přímo Xorg:'
    		echo '1) z textového VT (tty1-tty6) příkazem:'
    		echo ' /usr/lib/Xorg :8 vt8 -config /etc/bumblebee/xorg.conf.nvidia -configdir \'
    		echo ' /etc/bumblebee/xorg.conf.d -nolisten tcp -noreset -verbose 3 -isolateDevice \'
    		echo ' PCI:01:00:0 -modulepath /usr/lib/nvidia/xorg,/usr/lib/xorg/modules'
    		echo '2) nebo z grafického (tty7) pomocí systemd:'
    		echo '  systemd-run --property PAMName=login \'
            echo '  --property User=<my-user> \'
            echo '  --property StandardInput=tty \'
            echo '  --property TTYPath=/dev/tty8 \'
            echo '  sh -c "chvt 8 && /usr/lib/Xorg :8 vt8 -config /etc/bumblebee/xorg.conf.nvidia \'
            echo '  -configdir /etc/bumblebee/xorg.conf.d -nolisten tcp -noreset -verbose 3 \'
            echo '  -isolateDevice PCI:01:00:0 -modulepath /usr/lib/nvidia/xorg,/usr/lib/xorg/modules"'
    		echo 'Samotná aplikace se spouští bez optirun příkazem: DISPLAY=:8 <application>'
    		echo 'Při přepínání pomocí VT tento script není nutný, protože o přepínání klávesnice'
    		echo 'a myši se stará VT v kernelu. Při použití VT je v jeden okamžik vidět výstup jen'
    		echo 'na jednom monitoru (iGPU[:0] nebo dGPU[:8]). Na druhém monitoru je černá obrazovka.'
    		exit 0
    esac
    

    Bug v XFCE:

    Bohužel jsem narazil na bug v XFCE, který mně používání obou metod (xinput i VT) znepříjemňuje. Když udělám jednu z těchto věcí na DISPLAY :0 (na kterém běží XFCE):
    • přepnu klávesnici a myš (nebo jen jedno z toho) pomocí výše uvedeného scriptu,
    • jen přepnu z tty2 na tty7 (DISPLAY :0)
    • napojím do PC klávesnici nebo myš
    tak poté několik desítek sekund:
    • nereaguje Firefox
    • nefungují klávesové zkratky definované v XFCE
    • Firefox a xfsettingsd vytíží cpu na cca 5% a Xorg ho vytíží na 25%
    • klávesové zkratky nebo kliknutí ve Firefoxu se projeví všechny najednou až po "rozmrznutí"
    Pokud ve správci úloh zastavím proces xfsettingsd, tak k zamrzání nedochází, ale ani nefungují klávesové zkratky. Vypadá to na tento bug.

    Místo konkrétního zařízení jen <default pointer/keyboard>:

    V případě, že v souboru /etc/bumblebee/xorg.conf.nvidia je Option "AutoAddDevices" "true" (což je defaultně), tak příkaz DISPLAY=:8 xinput --list nevypisuje moje konkrétní názvy klávesnice a myši, ale je tam tohle:
    ⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
    ⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
    ⎜   ↳ <default pointer>                       	id=6	[slave  pointer  (2)]
    ⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
        ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
        ↳ <default keyboard>                      	id=7	[slave  keyboard (3)]
    

    Bumblebee vs. Nvidia-prime:

    Zjistil jsem, že poměrně nedávno začala Nvidia od verze 435.17 oficiálně podporovat Render Offload. Výsledkem je nižší latence. S Bumblebee jsem sice nikdy latenci nepocítil, ale přesto jsem Nvidia-prime zkusil. Bohužel jsem zjistil, že při použítí Prime obě GPU používají stejnou instanci Xorg. Jelikož Nvidii používám i pro vga-pass a potřebuji ji často přiřadit virtuálce, tak bych musel vždy nejdřív zabít Xorg, což je pro mne nepraktické, takže nakonec zůstanu u Bumblebee.

    A teď ta otázka:

    Když vidím kolik nástrah je při použití xinput, tak se mi zdá lepší způsob přepínání klávesnice a myši pomocí virtuálních terminálů, ale má to jednu velkou nevýhodu a to, že DISPLAY, který není aktivní zobrazuje černou obrazovku. V praxi to funguje tak, že jsem na tty7 (DISPLAY :0) (tj. monitor č. 1) pak zmáčknu Ctrl+Alt+F8, tím se přepnu na tty8 (DISPLAY :8) (tj. monitor č. 2) a monitor č. 2, který byl do té doby černý se rozsvítí a objeví se spuštěná aplikace, ale monitor č. 1 zhasne (objeví se na něm černá obrazovka). To samé při přepnutí zpět. Neexistuje někde v nastavení virtuálních konzolí v kernelu nebo v Xorg možnost, aby se grafický výstup na neaktivní tty nevypínal?

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.