Qt alkalmazások megjelenése nem KDE asztali környezet alatt

kimarite képe

Szomorúan vettem észre -mint Füles, a szamár- a minap, hogy az általam tesztelt „Frankeinstein” Linux Mint 19 Tara kiadás alatt (még nem jelent meg hivatalosan) a Qt fejlesztői készlettel készülő VLC média alkalmazás menüinek látható betűkészlete nem túl szép és a karakterek mérete igen picike.  A történet magyarázata, hogy a Cinnamon és sok más asztali környezet alkalmazásainak vezérlőelemei és még sok más alkotórészük -a GIMP alkalmazás készítőinek a- GTK+ fejlesztői készletével készült és a Qt alkalmazásokat azok tervezőinek és karbantartóinak optimalizálni kell vagy legalábbis illik (illene) a GTK+ -os asztali környezetek alatt történő grafikus megjelenésre, az azzal való normális együttműködésre (és viszont is természetesen) azonban ez néhány esetben nem történik meg teljes egészében.

Mi lehet vajon a megoldás?

Általánosságban

Kapirgáltam, keresgéltem és végül ráakadtam az általam már megismert „környezeti változó” (angol szóval: environment variable) fogalomra. No, és annak gyakorlati alkalmazására a kérdés tekintetében is az Arch Linux Wikijében:
https://wiki.archlinux.org/index.php/Uniform_look_for_Qt_and_GTK_applications
Fene se tudja, miért, az általam most közzétett környezeti változó említését mára innen törölték. Egy a lényeg, működik.

Megnéztem a saját könyvtáramban található „Trolltech.conf” szöveges állományt is,

locate Trolltech.conf
/etc/xdg/Trolltech.conf
/home/kim/.config/Trolltech.conf <-- itt.

az Arch Wiki által korábban ajánlott beállítás szerepel benne eleve:

[Qt]
style=GTK+

Térjünk vissza a környezeti változó alkalmazására.

A környezeti változó a következő:

QT_STYLE_OVERRIDE=mint-x

Az egyenlőség jel előtt láthatod a környezeti változót, az egyenlőségjel után az általad használt rendszer téma neve, kis karaterrel használva. Én a Mint-X témát használom.
Az általad használttól egészen eltérő témával, azaz megjelenéssel indíthatsz el, egy vagy több alkalmazást, a változó -elméletileg- erre is lehetőséget ad, ha a neked tetsző témát a változóban alkalmazod.

Gyakorlati megvalósítás

Az alkalmazások, így a VLC indítása is egy alkalmazás indító fájl segítségével történik, mely fájlneve az általa indított alkalmazásra jellemző, és a kiterjesztése a „desktop” nevet viseli. A „desktop” fájl az alkalmazás indítására vonatkozó általános beállításokat tartalmazza (pl. hogy melyik asztali környezet alatt jelenjen meg és melyiken ne), és többek között a felhasználó által használt nyelvi megfelelőségért, egyezésért is felel. Feladata a látható ikon megjelenítése is, rövidítés alkalmazásával, de akár az ikon elérési útját használva.  Tulajdonképpen egy Linux-szos megvalósítás a menü, a panel és az asztal nevű helyeken az alkalmazások grafikus megjelenítésére és a megjelenítés utáni könnyed, egér kattintás által történő indítására.

Alkalmazás indító fájl két helyen fordul elő leginkább, az

/usr/share/applications/

rendszer szintű (minden felhasználóra érvényes), továbbá, a

/home/$USER/.local/share/applications/

vagy másként

~/.local/share/applications/

könyvtárban.

Keressünk rá a VLC indító fájlra a rendszer szintű könyvtárban:

-- először belépek a könyvtárba,

cd /usr/share/applications/

-- majd listázom, a grep-pel szűkítve az eredményre,

ls | grep vlc

-- és eredményül ezt kapom:

vlc.desktop

A fáljt a cat-tel olvasásra megnyitva,

cat vlc.desktop

az „Exec=” kifejezéssel kezdődő sor lesz érdekes. Az itt szereplő beállítás indítja el az alkalmazást (execute = bináris fájl futtatása). Jelen pillanatban a sor így néz ki a VLC tekintetében:

Exec=/usr/bin/vlc --started-from-file %U

Ha alkalmazom a környezeti változót, akkor majd így kell kinéznie:

Exec=env QT_STYLE_OVERRIDE=mint-x /usr/bin/vlc --started-from-file %U

A %U is egy változó, ha gondolod, utánanézhetsz, miért szerepel itt. ... nahát, milyen érdekességek vannak, csak megnyitok egy indítót.

A fájl a rendszer része, egyszerű felhasználóként nem szerkesztheted. Kizárólag olvasni tudod (és nyilván futtatni).

Megnyitom tehát admin joggal, a szerkesztéshez a nano szövegszerkesztőt használva:

sudo nano vlc.desktop

A nano szövegszerkesztőben a kurzor nyilakkal navigálhatsz. A már leírtak ismeretében, de „az ismétlés a tudás anyja„ ..., még egyszer:

-- megkeresed ezt a sort,

Exec=/usr/bin/vlc --started-from-file %U

-- kiegészíted ezzel a szöveggel,

env QT_STYLE_OVERRIDE=mint-x 

-- hogy -egészen pontosan (pl. szóközök)- így nézzen ki.
(ha a Mint-X témát használod, egyéb esetben az általad használt téma nevét helyettesítsd be)

Exec=env QT_STYLE_OVERRIDE=mint-x /usr/bin/vlc --started-from-file %U

Az „env”-et szükséges beírni, hiszen a kapcsoló érvényesíti a környezeti változót.

Ezek után mented a változtatást, és kilépsz a nano szövegszerkesztőből:
Ctrl + O és Enter
Ctrl + X

Újra megnyitva a VLC alkalmazást, a kinézete immár ugyanolyan, mint a többi alkalmazásnak.
(a régi kinézetet épp' nem tudom visszaállítani, de igazából ehhez kedvem sincs már)

Juhéjj!

A lexikális tudásra szomjazók kedvében járva, íme, a betűtípus beállításaim a noteszgépen:

Azt hiszem, hogy a témakörhöz kapcsolódóan egy csomagot telepítettem.
Ha gondolod, telepítheted:
(nem hiszem, hogy szükséges, viszont Qt5 tartozék)

sudo apt-get install qt5ct

Ha kérdésed van, ne tartsd magadban.

Enjoy :)

Tudástár

-- Qt
https://hu.wikipedia.org/wiki/Qt
-- GTK+:
https://hu.wikipedia.org/wiki/GTK%2B
-- Qt / GTK+ alkalmazások egységes kinézete:
https://wiki.archlinux.org/index.php/Uniform_look_for_Qt_and_GTK_applications
-- Környezeti változó:
https://hu.wikipedia.org/wiki/K%C3%B6rnyezeti_v%C3%A1ltoz%C3%B3k
https://wiki.archlinux.org/index.php/Environment_variables#Graphical_applications
-- Asztali fájlok (desktop files):
https://developer.gnome.org/integration-guide/stable/desktop-files.html.en
https://linuxcritic.wordpress.com/2010/04/07/anatomy-of-a-desktop-file/
https://www.freedesktop.org/wiki/
-- Trolltech.conf:
https://arstechnica.com/information-technology/2008/01/nokia-buys-trolltech-will-become-a-patron-of-kde/
(https://ubuntuforums.org/showthread.php?t=2284976
2008 előtt a Trolltech vállalat gondozta a Qt fejlesztői készletet)

Egyéb lehetőségek

-- megpróbálkozhatsz ezzel,

export QT_QPA_PLATFORMTHEME=gtk2

Részletek:
https://forums.gentoo.org/viewtopic-p-7741628.html

-- vagy ezzel a megoldással:

#
# ~/.profile
#
#

[[ "$XDG_CURRENT_DESKTOP" == "KDE" ]] || export QT_QPA_PLATFORMTHEME="qt5ct"

[[ -f ~/.extend.profile ]] && . ~/.extend.profile

Részletek:
https://forum.manjaro.org/t/qt5ct-problem-qt-style-override-environment-variable/15649/11

Hozzászólások

kimarite képe

!Frissítés

Értékelés: 

0
Még nincs értékelve

Ha például GTK3+ fejlesztői környezet van inkább jelen a rendszereden (manapság ez az inkább jellemző), akkor ezt a teendőd az indító tekintetében (példaként a VLC, az Avidemux és a digiKam alkalmazások!):

  • a Qt5 esetén
Exec=env QT_QPA_PLATFORMTHEME=gtk3 /usr/bin/vlc --started-from-file %U
Exec=env QT_QPA_PLATFORMTHEME=gtk3 /usr/bin/avidemux 
Exec=env QT_QPA_PLATFORMTHEME=gtk3 digikam -qwindowtitle %c
  • a Qt4 esetén
    A mint-x kifejezés helyére az általad használt témát helyettesítsd be.
Exec=env QT_STYLE_OVERRIDE=mint-x /usr/bin/vlc --started-from-file %U
Exec=env QT_STYLE_OVERRIDE=mint-x /usr/bin/avidemux
Exec=env QT_STYLE_OVERRIDE=mint-x digikam -qwindowtitle %c
  • továbbá mindegyiknél

-- szerkesztés

sudo nano ~/.config/Trolltech.conf

-- tartalom

[Qt]
style=GTK+

!A Linux Mint 17.x a Qt4-et, a Linux Mint 18.x a Qt4-et és a Qt5-öt (az Avidemux esetén például a telepítés módjától, vagy a például PPA-ról telepített csomagtól függ, hogy melyiket használja), a Linux Mint 19 inkább a Qt5-öt használja.

-----

A digiKam indítójának szerkesztése:

sudo nano org.kde.digikam.desktop
kimarite képe

Qt5 Configuration Tool (Linux Mint 19.1 Tessa, Cinnamon)

Értékelés: 

0
Még nincs értékelve

Elgondolkodtam azon, hogy a Debian rendszerem alatt miért jelenik meg „normális” betű méretekkel mondjuk, a VLC összes karaktere, amelyről nem sokan tudják, hogy a Qt fejlesztői környezet és nem GTK+ fejlesztői környezet alatt készül jó ideje. No persze, a Debian alatt jó pár fejlesztői alkalmazást is telepítettem, de itt, a Linux Mint alatt még nem. Eszembe is jutott, hogy van valami grafikus beállító alkalmazás, a régebbi Qt4, és az újabb Qt5 alá is. Elindítottam a Synaptic csomagkezelőt, és rákerestem. Lám, ez a csomag

Qt5 Configuration Tool

eleve telepítve van a Linux Mint 19.1 kiadásban. A régebbi Linux-szok még a Qt4-et használják elsősorban, s, ha jól emlékszem, a Linux Mint 18.x kiadástól kerültek előtérbe a Qt5 alkalmazások. A KDE asztali környezet használ elsősorban (saját alkalmazásaihoz) Qt fejlesztési környezetet, tehát KDE-t használva esetleg a GTK+ alkalmazások megjelenése lehet problémás. Ezt nem tudom, mert mostanában nem használtam KDE asztali környezetet.
Azonban teljesen jogos volt, hogy Clem-ék, azaz a Linux Mint fejlesztői csapata nemrég (fél éve talán) kijelentette, hogy a Qt4, Qt5 fejlesztői környezetekben készült alkalmazások normális, azaz helyes, a szemnek is szép megjelenéséért más asztali környezetek (például a Cinnamon, a MATE, az Xfce) alatt mostantól az alkalmazás fejlesztői felelnek (program fejlesztésnél a „mindenhol helyes megjelenés” elvárható amúgy), azaz a Cinnamon fejlesztéséből ez a felesleges plusz munka ki fog maradni.

No, rátérek a lényegre, a megoldásra. A Beállítások menü alatt található Qt5 Configuration Tool alkalmazást megnyitva a karakterek méretét sikeresen befolyásolhatod, azaz én az eredeti beállításokat

General: Noto Sans 10 | Regural
Fixed width: Monospace 9 | Normál

egyaránt 12-es méretre változtattam meg (a ... rádiógombok),

majd megnyomtam az Alkalmaz rádiógombot, és a VLC-t újraindítottam.
Sok más dolgot is meg lehet változtatni a qt5ct alkalmazás segítségével, de nem látom értelmét.

A VLC most így néz ki:

Persze, mivel noteszgépem van (kisebb kijelző), az alapértelmezett karakter méreteket több értelemben is megváltoztattam rögtön a rendszer telepítése után (Betűkészlet kiválasztása), azaz nagyobb karakter méreteket használok, a nagyítást is emeltem (1.1), így neked mondjuk érdemes lehet „szemre” beállítanod avagy finomítanod a méret értékeket, mert lehetséges, hogy a 12px karakter méret beállítása a qt5ct alkalmazásban neked éppen nem lesz megfelelő. Nálam viszont ezt beállítva, csinos és kellemes a látvány és idomulnak a többi, GTK+ -os (nálam Cinnamon) alkalmazás megjelenéséhez a Qt alkalmazások is.

kimarite képe

Viber

Értékelés: 

0
Még nincs értékelve

A picinyke betűk (elméletileg) így javíthatók:

env QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber

Habár, így indítva,

env QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber

az alkalmazás hibát dob:

Qt WebEngine ICU data not found at /opt/viber/resources. Trying parent directory...
Qt WebEngine resources not found at /opt/viber/resources. Trying parent directory...
Qt WebEngine ICU data not found at /opt/viber/resources. Trying parent directory...
Qt WebEngine resources not found at /opt/viber/resources. Trying parent directory...
qml: type=""
qml: type=""
qml: type=""

Az ötlet innen jött:
https://askubuntu.com/questions/881679/viber-appears-huge-kubuntu-16-04
Jegyzet: https://aur.archlinux.org/packages/viber/

kimarite képe

QT_AUTO_SCREEN_SCALE_FACTOR és QT_SCALE_FACTOR

Értékelés: 

0
Még nincs értékelve

A környezeti változók a
-- QT_AUTO_SCREEN_SCALE_FACTOR, és a
-- QT_SCALE_FACTOR
és hatásaik.

Jelenség

Ha viszonylag alacsony képernyő felbontást használsz, netán valós GPU hiányában nem tudod beállítani a magasabb felbontást, akkor előfordulhat, hogy egyes Qt alkalmazások ablaka nem fér el a kijelzőn, azaz kilóg, általában jobbra vagy balra.

Példa

Ha nem tudsz vagy nem szeretnél ennél magasabb képernyő felbontást beállítani,

xrandr -q
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
VGA-1 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00*
   800x600       60.32    56.25  
   848x480       60.00  
   640x480       59.94 

akkor a Viber alkalmazás ablaka ki fog lógni képernyőről. Kellemetlen.

Megoldás

Ezzel a két környezeti változóval indítod a Viber-t:

QT_AUTO_SCREEN_SCALE_FACTOR=0 QT_SCALE_FACTOR=1 /opt/viber/Viber

Magyarázat

QT_AUTO_SCREEN_SCALE_FACTOR=0

Automatikusan a kijelző méretére állítja be az alkalmazás ablakát,
-- ha a megadott érték 1, akkor a méretezés be van kapcsolva, és
-- ha a megadott érték 0, akkor a méretezés ki van kapcsolva.

Az automatikus méretezést (QT_AUTO_SCREEN_SCALE_FACTOR) Linux alatt érdemes kikapcsolni, tehát a beállítás maradjon 0.

QT_SCALE_FACTOR=1

A karakterek megjelenését változtatja, azaz
-- csökkenti, ha a megadott érték kisebb, mint 1,
-- és nagyítja, ha a megadott érték nagyobb, mint 1.

Tesztelj más értékekkel a QT_SCALE_FACTOR tekintetében (pl.: 0.6, 0.8, 1.1, 1.2), lehet, nálad más beállítás lesz megfelelő.

Nálam, az 1024x768 px felbontáson a fenti értékek váltak be, vagyis, amit a parancssorban részleteztem.
Továbbá a terminálban futtatás alkalmával a megjelenő hibák a minimumra csökkentek, ha mindkét környezeti változót egyszerre használom. A hibák a Viber saját beállításainak megnyitásakor jelentkeznek ...
Kapcsolódó Wiki: https://wiki.archlinux.org/index.php/HiDPI

Ha a terminálban tesztelve bevált a módszer, akkor a Viber desktop fájlban az Exec sorban kicseréled a parancsot.

Szerkesztés

sudo nano /usr/share/applications/viber.desktop

Az eredeti sor,

Exec=/opt/viber/Viber %u

és a szerkesztett.

Exec=env QT_AUTO_SCREEN_SCALE_FACTOR=0 QT_SCALE_FACTOR=1 /opt/viber/Viber %u

Mentés és kilépés a nano szövegszerkesztőből:

Ctrl + O, és Enter, majd
Ctrl + X

Tulajdonképpen erről a témáról itt
https://linuxmint.hu/comment/25553#comment-25553
már írtam, de most más oldalról, a kijelző felbontás felől nézve néztük a megoldást.

kimarite képe

Avidemux 2.4.7 | AppImage

Értékelés: 

0
Még nincs értékelve

A karakterek mérete a

QT_FONT_DPI=96

paraméterrel beállítható.

Alapértelmezett érték a 96 (DPI).

Az Avidemux AppImage verziójánál jelentkezik a kicsi karakter.

Ha növelni szeretnéd menü karaktereinek méretét, akkor az indítóban használj 96-nál nagyobb értéket. Kísérletezd ki, a te rendszerednél, mely DPI beállítás követi a rendszer betű beállítás méretét a megjelenés tekintetében.

Példa:

Exec=env QT_FONT_DPI=120 /opt/Avidemux/Avidemux_2.7.4/AppRun

...mindegy, mit futtatunk, a kiemelt szövegrész lényeges.

Forrás:
https://wiki.archlinux.org/index.php/HiDPI#Qt_5

Itt volt szó a témáról:
https://linuxmint.hu/comment/35663#comment-35663

kimarite képe

Avidemux 2.4.7 | AppImage

Értékelés: 

0
Még nincs értékelve

#10 A

Súgó > Folyamat beállítás > Könytárak

útvonalon, első ránézésre a fontok beállításait meg tudjuk változtatni, azonban a Könyvtárak vagy a CPU elem alatt található egyetlen beállítás sem változtatható meg. Vélhetően azért, mert felhasználóként nincs jogunk ehhez. Az AppImage alkalmazások, a működésük során a tmp rendszerkönyvtár alá (.mount-*) fűzik be magukat...

Viber hiba

Értékelés: 

0
Még nincs értékelve

Átírtam az usr/share/applications mappába az exec-t.

env QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber 

Nagyobbak a karakterek, minden oké, de:
Azóta csak innen hajlandó indulni, vagyis mindig el kell navigálnom  az usr/share/applications mappába és onnan indítani.
Alkalmazásmenübe az Internet fül alatt és a Kedvencekbe van az ikonja, már többször szerkesztettem, betallóztam, belelírtam a usr/share/applications utvonalat, eredménytelen.

kimarite képe

Viber hiba Viber hiba

Értékelés: 

0
Még nincs értékelve

#11 /usr/share/applications 

Ide az indítók (desktop fájl)kerülnek. Az indító Exec sorába nem az indító elérési útja, hanem az indítási parancs kell. Saját magát ne írd bele.

Viber hiba Viber hiba

Értékelés: 

0
Még nincs értékelve

#11.1 Így néz ki az 
/usr/share/applications/viber.desktop :

[Desktop Entry]
Name=Viber
Comment=Viber VoIP and messenger
Exec=env QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber
#Exec=/opt/viber/Viber %u
Icon=/usr/share/pixmaps/viber.png
Terminal=false
Type=Application
Categories=Network;InstantMessaging;P2P;
MimeType=x-scheme-handler/viber;

Gondolom jól csináltam.
Mert elindul, és nagyobbak is a karakterek, az egész dpi szépen 1,2szeres lett.
De mint írtam, ettől kezdve csak innen indítható el, be kell mennem az applictions könyvtárba mert sehonnan máshonnan nem indul.
Se a kedvencekhez hozzáadva, sem az alkalmazásmenüből nem indul el.
Alkalmazásmenübe így néz ki az indítója:

Név: Viber
Megjegyzés: Viber VoIP and messenger
Parancs:  /usr/share/applications/viber.desktop

Vagyis jó helyre mutat. Akkor mi a nyűgje?
 

kimarite képe

Viber hiba | Environment variables

Értékelés: 

0
Még nincs értékelve

#11.1.1 Vedd ki a paranccsor elejéről, hogy "env", és a szóközt is utána.

kimarite képe

Viber hiba

Értékelés: 

0
Még nincs értékelve

#11.1.1.1 #11.1.1 Én tévedtem. Kell az env.

Név: Viber
Megjegyzés: Viber VoIP and messenger
Parancs:  /usr/share/applications/viber.desktop <- nem jó!

Vagyis jó helyre mutat. Akkor mi a nyűgje?

Az a nyűgje, hogy a menüben - gondolom, a menüszerkesztőre érted-  is ugyanaz az Exec sor tartalom kell, mert a menüelem maga (nem ön) a desktop fájl. Jó írtam korábban is, csak még a menü akkor nem volt említve.

Nem kell foglalkoznod azzal, hol van a desktop fálj, az elérési útjával sem. Több helyen lehet. A gondot leveszi a válladról a menüszerkesztő.

Viber hiba

Értékelés: 

0
Még nincs értékelve

#11.1.1.1.1 Akkor se jo.  Ha az alkalmazasinditoba (es a Kedvencekbe)  a Viber ikont szerkesztem es beirom a parancs sorba a teljes szoveget. Ugyanazt csinalja mint eredetileg, egy pillanatra kiul a panelra a Viber ikonja majd el is tunik. 

Azt nem tudtam hogy az alkalmazasinditoba nem parancsikonok vannak? Winen azok vannak a startmenube, vagyis csak hivatkozik, ramutat az eredeti inditora. Egyebkent en a mai napig nem ertem a Linux symlink kezeleset.

kimarite képe

Viber hiba (KDE) | magyarázat

Értékelés: 

0
Még nincs értékelve

#11.1.1.1.1.1 Ha az alkalmazasinditoba (es a Kedvencekbe)  a Viber ikont szerkesztem es beirom a parancs sorba a teljes szoveget. Ugyanazt csinalja mint eredetileg, egy pillanatra kiul a panelra a Viber ikonja majd el is tunik. 

Ennek oka lehet, hogy egy vagy több Viber már fut a háttérben.

Azt nem tudtam hogy az alkalmazasinditoba nem parancsikonok vannak? Winen azok vannak a startmenube, vagyis csak hivatkozik, ramutat az eredeti inditora. Egyebkent en a mai napig nem ertem a Linux symlink kezeleset.

Elmondtam nemrég a lényeget. Még egyszer:
-- a menüszerkesztő alkalmazások közvetlenül a desktop fájlt szerkesztik, itt a „viber.desktop” szöveges fájlt, azaz annak egyes soraira vannak hatással (Exec, ikon).
-- a desktop fájlokat (pl. viber.desktop) nem kell futtathatóvá tenni. Nem is ajánlott.
-- a desktop fájlok a Menühöz, a Panelhez, az Asztalhoz tartozó szöveges beállító fájlok.
-- a desktop fájl, itt a „viber.desktop” az alkalmazás indítására szolgáló fájlra mutató elérési utat, azt, amivel az alkalmazás elindul. Mindezt az Exec sorban láthatod. Itt van köze a desktop fájlnak az alkalmazásokhoz.
-- a desktop fájlokat nem szokás futtatni sehogyan sem, habár elindulnak a Fájlkezelőből is, például kettő kattintásra (MIME típus szerint, az alapértelmezett társítás szerint). Békén kell hagyni ezeket, mert futtatásukat a Linux rendszer kezeli le és nem a felhasználó. Kizárólag a tartalmukkal kell foglalkozni, azaz a szöveges sorokat piszkálgatni, ha például egy-egy menü elem nem működik.

A desktop fájl tartalmával is lehet probléma, indítási problémát okozhat.
A te desktop fájlod vizsgálata ezen szempontból (csak példa):

file /opt/viber/Viber ; file /usr/share/pixmaps/viber.png

Mert például beállítasz egy alkalmazás ikont, és azt mindeközben áthelyezed..., lehet, elindul az alkalmazás, de esetleg nem.
https://linuxmint.hu/comment/43948#comment-43948

kimarite képe

Viber hiba (KDE) | tesztek

Értékelés: 

0
Még nincs értékelve

#11.1.1.1.1.1 Először is, az opt könyvtárba települt Viber könyvtárában, töröld az ott is látható desktop fájlt (viber.desktop). Csak az „/usr/share/applications/ elérési úton legyen indító.

Továbbá, arra gondolok, az értesítési terület és a Viber nincs összhangban.

Tehát fut a Viber, és arra ráindítasz. Emellett szól, hogy próbálod újra, és újra indítani ..., de nem jelenik meg, legalábbis, úgy tűnik. viszont így másik parancssorral sem lesz jó a próba. Nézd meg a htop alkalmazásban (F3 a keresés), fut-e.

Leállítása (kilövés):

pkill viber

vagy a htoppal:

F3 (keresés) > F9 > 9

Az is előfordulhat, nem kizárt, hogy KDE-nél, pl. a Kubuntunál más, indítási parancssor kell az asztali környezet általam sem ismert egyéni sajátossága miatt. És ide írom azt is, hogy a Viber valamely - lentebb teszteljük - általános futási hibája miatt már „nem tűri el” a környezeti változókat, tehát azokkal összeomlik indításkor.

Tesztek (terminálban)

Egy-egy teszt futtatása után ki kell lőni a VIbert, ne fusson a háttérben a következő tesznél (htop)!

-- Viber esetleges általános hibáinak vizsgálata:

/opt/viber/Viber %u

... szokott lenni hiba. Példa itt:
https://linuxmint.hu/comment/25553#comment-25553

-- módosított indítással történő vizsgálat az előbbivel összehasonlítás végett (is),

env QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber

illetve,

QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber

illetve:

bash -c "env QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber"

A kimeneteket az Ubuntu Pastebin segtségével oszd meg. Leírása:
A honlap működése 7. rész: Ubuntu Pastebin | szöveg megosztása

A menüszerkesztők szolgáltatása az, hogy be lehet állítani, terminálban történjen-e az alkalmazás indítása. Ennek bekapcsolására nincs szükség. Ha nálad ez be van kapcsolva a menüszerkesztőben, akkor kapcsold ki!

Az „/usr/share/applications” elérési úton, az application könyvtárban látható-e egy „kde” vagy hasonló, KDE-re utaló könyvtár, és mi van benne, milyen indítók?

Viber hiba (KDE) | tesztek

Értékelés: 

0
Még nincs értékelve

#11.1.1.1.1.1.2
Átírtam a tanácsodra az
Alkalmazásmenü-->Internet--->Viber ikonba, vagy desktop fájlba, vagy nem tudom mi a neve a "parancs" sort a 
env QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber
parancsra.
És elindult rendesen, nagyon szépen köszönöm a segítséget!!

Az Alkalmazásmenü (startmenü, whisker menü( azért kell nekem mert innen hozzá tudom adni a Vibert a Kedvencekhez, és most már onnan is indítható ahogy eddig is.

Azt értem hogy az /opt/viber/Viber  helyről indul el maga program.
Nagyjából azt is megértettem hogy az indító desktop fájlok ezt a fő futtatható viber programot indítják el az opt könyvtárból.
Azt viszont nem értem ha az usr/share/applications alatt megváltoztattam valamit, onnan indul ez oké.
Viszont máshonnan, ahol egy symlink mutat ugynerre a viber.desktop fájlra, így akkor miért nem indult, csak ha abba a  symlinkbe is beleírtam az egész parancsot? 
Vagy ezek nem parancsikonok, hanem a .desktop az nem hivatkozás, útvonal leírás?

Vagy itt lett elrontva, az egyik is indította volna a Vibert meg a másik is?

kimarite képe

Viber hiba (KDE) | tesztek

Értékelés: 

0
Még nincs értékelve

#11.1.1.1.1.1.2.1 Átírtam a tanácsodra az

Alkalmazásmenü-->Internet--->Viber ikonba, vagy desktop fájlba, vagy nem tudom mi a neve a "parancs" sort a 
env QT_SCALE_FACTOR=1.2 QT_AUTO_SCREEN_SCALE_FACTOR=0 /opt/viber/Viber
parancsra.
És elindult rendesen, nagyon szépen köszönöm a segítséget!!

Ez volt az első javaslatom! Hogy mindeközben te mit csináltál, azt csak te tudod (és akinek elmondtad vagy látta).

Szívesen, máskor is!

-----

Viszont máshonnan, ahol egy symlink mutat ugynerre a viber.desktop fájlra, így akkor miért nem indult, csak ha abba a  symlinkbe is beleírtam az egész parancsot?

Lentebb írom...

Vagy ezek nem parancsikonok, hanem a .desktop az nem hivatkozás, útvonal leírás?

Desktop fájlra ne hozz létre szimbólikus linket, nem tartozik az ajánlott megoldások közé!
Dehogy symlink a desktop fájl, nézd meg a tartalmát, ott láthatod, hogy nem az. ;)

Magyarázat

Mondok a szimbólikus linknél egyszerűbb megoldást (Linuxra): másolod a desktop fájl oda, abba a mappába ahova szeretnéd! Sajnos, nem mondtad el, hogy pontosan mit szeretnél - én elhiszem, hogy törekedsz erre, de most nem sikerült! - úgyhogy én tettem egy tesztet: átmásoltam egy indítót az Asztal könyvtárba, azaz az indító megjelent az Asztalomon! Az indító tekintetében a választásom a Firefox ESR (Vállalati kiadás) indítójára esett. És jéé, az Asztal ikonra - amely egy másolt desktop fájl, és nem szimbolikus link - kattintással a Firefox ESR elindult...

Emlékeim szerint, a Windows szimlinkeket alkalmaz a Start menüben (amikor egy barátom gépén a Firefox indítását megfertőzte egy rosszfiú, másik elemet hoztam létre, és ezt a Firefox binárisra mutatva tudtam megtenni).

Tudom, hogy a Linux meg desktop fájlokkal oldja meg ugyanezt a kérdést!

Hogy melyik a jobb megoldás? Szerintem a Linuxé. :)
Mégpedig azért, mert
-- a Windows a Firefox ESR binárisára linkel, azaz szimbólikus linket hoz létre a Firefox binárisra (például firefox.bin), közvetlenül arra a fájlra, amivel az alkalmazás elindul.
-- a Linux rendszerrel is megoldható a firefox.bin (firefox) fájlra történő linkelés, ezzel semmi gond, működik így is.
-- a Linux rendszer a desktop fájlt használja az indítókhoz (Menü, Panel, Asztal), és ennek az Exec sorában elérési úttal vagy anélkül (ha a bináris könyvtára benne van a $PATH-ben) szerepelteti a Firefox binárisát közvetlenül  (itt symlinkre nincs szükség!). De ez nem szimbolikus linkes megoldás, hanem a bináris futtatása. És az Exec sorban lehetőség nyílik környezeti változó(k) alkalmazására is.
Ne kevert a két módszert vagyis: az egyik rendszer így, a másik máshogy oldja meg!
Most már érted a különbségeket?

  • Bináris: futtatható fájl. Tartalma szövegként általában nem olvasható. Indítható, symlinkelhető.
  • Symlink: szimbólikus link futtatható fájlokhoz, és egyéb fájlokhoz vagy könyvtárakhoz. Indítható.
  • Hardlink: ... kicsit máshogyan viselkedik, mint a symlink (nem részletezem).
  • Desktop fájl: szabványos tartalmú és Linuxra jellemző működtetésű szöveges fájl a bináris fájlok indításához a Menübe, Panelre, az Asztalra. Indítható, nem symlinkelhető (felesleges).
  • Indító, mint script (szkript): hasonló a binárishoz, de szöveges - ember által olvasható - fájl. Binárisként viselkedik, azaz egy adott alkalmazást képes elindítani. Épp a Firefox indításánál alkalmazzák a Linux rendszerek, mert az alapértelmezett böngésző beállítása a használatával könnyű. Indítható, symlinkelhető.
  • Human readable tartalom: ember által olvasható tartalom. Ha például a szöveges fájl ember által olvasható, azaz értelmezhető, akkor olyan, mint egy vers (pl. fstab, sources.list, naplók, stb.). Ha például egy bináris fájl ember által nem olvasható, akkor csak bizonyos - erre való - programok segítségével értelmezhető a tartalma, mármint annak, aki ért ehhez a történethez nyilván.