Conky: Απορίες/Χρήσεις/Εφαρμογές

...unity, kde, gnome, xfce, κλπ ...compiz, κλπ

Συντονιστής: adem1

Κανόνες Δ. Συζήτησης
Αν έχετε πρόβλημα με την λειτουργία του unity δοκιμάστε να το επαναφέρετε με την παρακάτω εντολή σε τερματικό.
unity --reset (ισχύει μέχρι και την 12.04)

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό sotos21 » 20 Απρ 2015, 09:07

Το έχω ψάξει Ειρήνη μέσα στο conky με if_existing και end_if
Δουλεύει σωστά με την intel αλλά όχι με την nvidia γιατί η intel είναι πάντα ενεργή και όπως έγραψες "σηκώνει" δύο σωστές γραμμές, αλλάζοντας έτσι τα πάντα στο conky με το lua να μην συμβαδίζει με το υπόλοιπο(αλλού τα δαχτυλίδια - αλλού τα περιεχόμενα τους)
Edit: Θα μπορούσα να έσπαζα σε δύο κομμάτια το conky για να ξεπεράσω το πρόβλημα με τα δαχτυλίδια. Αλλά πάλι υπάρχει θέμα με την intel που είναι πάντα ενεργή.
Παράδειγμα
Έχω σε μια γραμμή GPU Load: ... πρέπει να βάζει το τρέχον ποσοστό της nvidia αλλά και το 0% της intel Το ίδιο για το GPU Clock... το τρέχον της nvidia και το minimum(στην περίπτωση μου 200ΜΗz) της intel.
1 Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Καθόλου
2 Ubuntu 23.10 Mantic Minotaur 6.3.0-7-generic 64bit (el_GR.UTF-8, Unity:Unity7:ubuntu unity)
3 AMD Ryzen 7 7730U with Radeon Graphics ‖ RAM 15368 MiB ‖ASUS TN3604YA - ASUS Vivobook_S_Flip TN3604YA_TN3604YA
4 Advanced Micro Devices, Inc. [AMD/ATI] Barcelo [1002:15e7] {amdgpu}
5 wlp1s0: MEDIATEK Corp. Device [14c3:7922]
Άβαταρ μέλους
sotos21
Freedom
Freedom
 
Δημοσιεύσεις: 6304
Εγγραφή: 21 Φεβ 2011, 21:28
Τοποθεσία: Αθήνα
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό sotos21 » 20 Απρ 2015, 09:25

Κάτι σαν αυτό στην 16η σελίδα αυτού του θέματος, που ξεκινάει το conky εφόσον ξεκινήσει ο banshee(και τον κλείνει μετά)
Στην περίπτωση μου εφόσον δεν βρίσκει την nvidia να ξεκινάει το άλλο conky.
Κώδικας: Επιλογή όλων
#!/bin/bash

if [ "$(pidof banshee)" ]; then
touch bansh.pid
conky -q -d --config=/home/renji/miniconky/conkyrc_banshee
else

if [ -e "bansh.pid" ]; then
pkill -f conkyrc_banshee
rm -f bansh.pid
exit
fi
#pkill -f conkyrc_banshee
fi
1 Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Καθόλου
2 Ubuntu 23.10 Mantic Minotaur 6.3.0-7-generic 64bit (el_GR.UTF-8, Unity:Unity7:ubuntu unity)
3 AMD Ryzen 7 7730U with Radeon Graphics ‖ RAM 15368 MiB ‖ASUS TN3604YA - ASUS Vivobook_S_Flip TN3604YA_TN3604YA
4 Advanced Micro Devices, Inc. [AMD/ATI] Barcelo [1002:15e7] {amdgpu}
5 wlp1s0: MEDIATEK Corp. Device [14c3:7922]
Άβαταρ μέλους
sotos21
Freedom
Freedom
 
Δημοσιεύσεις: 6304
Εγγραφή: 21 Φεβ 2011, 21:28
Τοποθεσία: Αθήνα
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό fog » 20 Απρ 2015, 09:47

Ναι έχεις δίκιο, το πρόβλημα είναι πιο σύνθετο σε optimus laptops. Έριξα τώρα μια ματιά σε screenshots (1, 2) από την εποχή που χρησιμοποιούσα το bumblebee (2012) και θυμήθηκα ότι ήταν και οι δύο κάρτες ενεργές απλά τα προγράμματα που ήθελα να χρησιμοποιούν την nvidia τα ξεκινούσα με optirun. Κάτι που δεν συμβαίνει στο σύστημα που έχω τώρα.

Edit (μόλις είδα το script για τον banshee):
Οπότε χρειάζεσαι κάτι αντίστοιχο με το script για τον banshee αλλά να τσεκάρει αν τρέχει το optirun. Εκτός αν έχει αλλάξει κάτι (σε 3 χρόνια στο open source αλλάζουν πολλά) και "παίζει" αλλιώς τώρα η εκκίνηση της nvidia.
Γνώσεις Linux: ✔✔✔✓✓ ┃ Προγραμματισμού: ✓✓✓✓✓ ┃ Αγγλικών: ✔✔✔✓✓
Ubuntu 16.04 64bit ‖ Lubuntu 16.10 64bit || 4.4.0-34-generic
Intel Core i7-6700HQ CPU @ 3.50GHzRAM 12GB ‖Toshiba Satellite P50-C
Intel Skylake Integrated Graphics ⋮ nVidia GM107M [GeForce GTX 950M]
enp4s0: Realtek RTL8111 Gigabit Ethernet Controller⋮ wlp3s0: Intel Wireless 3165
blog || github
Άβαταρ μέλους
fog
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 655
Εγγραφή: 31 Μαρ 2015, 13:33
Τοποθεσία: /home/fog
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό fog » 21 Απρ 2015, 09:03

sotos21 έγραψε:Χρειάζομαι μια βοήθεια στο εξής.
Έχω δύο κάρτες γραφικών και μέχρι τώρα ξεκινούσα μόνιμα το conky που είχε πληροφορίες για την intel. Εφόσον ξεκινούσα την nvidia άλλαζα conky με το conky-manager.
Σκέφτηκα να το κάνω αυτόματα κάτι σαν το if existing στις παραμέτρους του conky.
Στο αρχείο δηλαδή που βάζουμε για να ξεκινάει με καθυστέρηση το conky να του δίνω άλλο conkyrc όταν "βλέπει" nvidia και άλλο όταν δεν την "βλέπει"
Ακούω προτάσεις.

Προσπάθησα να σκεφτώ τρόπο γι αυτό και δεν έχω καταλήξει ακόμη ποιός είναι ο καλύτερος τρόπος. Κολλάω στην ανάλυση και κάθε φορά που νομίζω ότι κατέληξα σε ένα σενάριο που πιστεύω ότι θα δουλεύει, βλέπω ότι έχει κενά μετά.
Αν καταλήξουμε σε μια καλή ανάλυση του τι πρέπει να γίνεται ακριβώς, το προγραμματιστικό κομμάτι λύνεται (...).
Θα περιγράψω πως το σκέφτομαι και ότι κενά δεις σε αυτό ή προβλήματα, διορθώνεις μέχρι να καταλήξουμε σε κάτι λειτουργικό.

Λοιπόν χρειαζόμαστε ένα σκριπτ ή προγραμματάκι που να ξεκινάει στο startup το conky-intel, μιας και στο login αυτή η κάρτα είναι ενεργοποιημένη.
Μετά θα πρέπει να λουπάρει κατά διαστήματα και να τσεκάρει αν τρέχει το optirun (με αυτό ξεκινάς προγράμματα που χρησιμοποιούν την nvidia ή έχει αλλάξει; ).
Όταν θα το βρίσκει, θα σκοτώνει το conky-i (πρέπει να ελέγχει αν τρέχει; ) και θα σηκώνει το conky-nvidia.
Όταν σε κάποια λούπα βρει ότι δεν υπάρχει το optirun να σκοτώνει το conky-n (πρέπει να ελέγχει αν τρέχει; ) και να σηκώνει το conky-i.

Είναι λειτουργικό αυτό ή έχει κενά; Κάποιος έλεγχος που δεν γίνεται ή κάποια περίπτωση που παρέλειψα;

Αν ναι, σκέφτομαι ότι τα 2 conky θα πρέπει νάναι παρόμοια σε εμφάνιση και να αλλάζει μόνο η λεπτομέρεια της κάρτας γιατί αν σηκώνουν lua αρχεία κλπ. θα υπάρχει "μεγάλο" κενό στην αλλαγή μεταξύ τους.

Το αποτέλεσμα έχει ενδιαφέρον γιατί δεν βρήκα να υπάρχει κάτι παρόμοιο. Υπάρχει ο conky manager που αλλάζεις conky manual, υπάρχει pipe menu για openbox που και εκεί η αλλαγή γίνεται manual, αλλά δεν βρήκα κάτι που να γίνεται η αλλαγή on the fly ελέγχοντας κάποια συνθήκη.
Γνώσεις Linux: ✔✔✔✓✓ ┃ Προγραμματισμού: ✓✓✓✓✓ ┃ Αγγλικών: ✔✔✔✓✓
Ubuntu 16.04 64bit ‖ Lubuntu 16.10 64bit || 4.4.0-34-generic
Intel Core i7-6700HQ CPU @ 3.50GHzRAM 12GB ‖Toshiba Satellite P50-C
Intel Skylake Integrated Graphics ⋮ nVidia GM107M [GeForce GTX 950M]
enp4s0: Realtek RTL8111 Gigabit Ethernet Controller⋮ wlp3s0: Intel Wireless 3165
blog || github
Άβαταρ μέλους
fog
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 655
Εγγραφή: 31 Μαρ 2015, 13:33
Τοποθεσία: /home/fog
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό sotos21 » 21 Απρ 2015, 09:24

Δεν χρειάζεται on the fly αλλαγή γιατί δεν έχω bumblebee.
Κατά το login φορτώνεται ή η intel που επεξεργάζεται το σήμα και το στέλνει στην οθόνη, ή και η nvidia που επεξεργάζεται το σήμα για να το στείλει στην intel που με την σειρά της θα το στείλει στην οθόνη.(μόνο η intel είναι συνδεδεμένη στην οθόνη)
Αν μπορούσα να βρω ποια διεργασία(το pid της) ξεκινάει με το login όταν είναι επιλεγμένη η nvidia θα εφάρμοζα το παραπάνω σκριπτ(διαμορφωμένο βέβαια)
Με λίγα λόγια μόνο κατά το login χρειάζομαι έλεγχο για το αν είναι η nvidia ενεργή(η intel θα είναι πάντα αλλιώς θα έχω μαύρη οθόνη) και αναλόγως να ξεκινάει τα διαφορετικά conkyrc
1 Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Καθόλου
2 Ubuntu 23.10 Mantic Minotaur 6.3.0-7-generic 64bit (el_GR.UTF-8, Unity:Unity7:ubuntu unity)
3 AMD Ryzen 7 7730U with Radeon Graphics ‖ RAM 15368 MiB ‖ASUS TN3604YA - ASUS Vivobook_S_Flip TN3604YA_TN3604YA
4 Advanced Micro Devices, Inc. [AMD/ATI] Barcelo [1002:15e7] {amdgpu}
5 wlp1s0: MEDIATEK Corp. Device [14c3:7922]
Άβαταρ μέλους
sotos21
Freedom
Freedom
 
Δημοσιεύσεις: 6304
Εγγραφή: 21 Φεβ 2011, 21:28
Τοποθεσία: Αθήνα
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό fog » 21 Απρ 2015, 09:38

Ωραία, εγώ είχα μείνει στο bumblebee. Αυτό μοιάζει πολύ πιο απλό.
Ποιός είναι τώρα ο τρόπος επιλογής; Έχεις κάποιο link ή αν είναι εύκολο να μου πεις;
Γνώσεις Linux: ✔✔✔✓✓ ┃ Προγραμματισμού: ✓✓✓✓✓ ┃ Αγγλικών: ✔✔✔✓✓
Ubuntu 16.04 64bit ‖ Lubuntu 16.10 64bit || 4.4.0-34-generic
Intel Core i7-6700HQ CPU @ 3.50GHzRAM 12GB ‖Toshiba Satellite P50-C
Intel Skylake Integrated Graphics ⋮ nVidia GM107M [GeForce GTX 950M]
enp4s0: Realtek RTL8111 Gigabit Ethernet Controller⋮ wlp3s0: Intel Wireless 3165
blog || github
Άβαταρ μέλους
fog
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 655
Εγγραφή: 31 Μαρ 2015, 13:33
Τοποθεσία: /home/fog
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό sotos21 » 21 Απρ 2015, 10:00

Ο τρόπος επιλογής είναι από την προηγούμενη συνεδρία με το prime-indicator
Βρήκα κάτι που μπορεί να μας κάνει
Να εκμεταλευτούμε την εντολή
Κώδικας: Επιλογή όλων
/usr/bin/prime-select query

Αν λέει nvidia να ξεκινάει (με 10sec καθυστέρηση) εκείνο το conkyrc αν δεν λέει, το άλλο.
Αυτό το κομμάτι του κώδικα μπορεί να χρησιμεύσει.
Κώδικας: Επιλογή όλων
def checkIntegrated(self):
stat, out = commands.getstatusoutput("/usr/bin/prime-select query")
if "intel" in out:
return True
else:
return False

Edit: Πρέπει να φύγω τώρα, θα επιστρέψω κατά το μεσημέρι (πάω να εγκαταστήσω άλλο ένα ubuntu-mate σε παλιό υπολογιστή)
1 Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Καθόλου
2 Ubuntu 23.10 Mantic Minotaur 6.3.0-7-generic 64bit (el_GR.UTF-8, Unity:Unity7:ubuntu unity)
3 AMD Ryzen 7 7730U with Radeon Graphics ‖ RAM 15368 MiB ‖ASUS TN3604YA - ASUS Vivobook_S_Flip TN3604YA_TN3604YA
4 Advanced Micro Devices, Inc. [AMD/ATI] Barcelo [1002:15e7] {amdgpu}
5 wlp1s0: MEDIATEK Corp. Device [14c3:7922]
Άβαταρ μέλους
sotos21
Freedom
Freedom
 
Δημοσιεύσεις: 6304
Εγγραφή: 21 Φεβ 2011, 21:28
Τοποθεσία: Αθήνα
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό fog » 21 Απρ 2015, 14:16

Για ρίξε μια ματιά σε αυτό (έχω διαβάσει σήμερα για υβριδικές κάρτες όσα δεν είχα τα τελευταία χρόνια, παραλίγο να κάψω και το φαγητο :) ):

Κώδικας: Επιλογή όλων
#!/bin/bash
# graphics.sh - prints out the name of the graphics chipset in use
# For laptops with switchable/hybrid graphics.
#
# This is part of a larger collection of Conky scripts and configurations:
# https://entropicassembly.com/conky

dis_line=`cat /sys/kernel/debug/vgaswitcheroo/switch | grep DIS`
selected=${dis_line:6:1}

if [ "$selected" = "+" ]; then
echo "AMD Radeon 3650"
else
echo "Intel GMA 4500HD"
fi


Ο τύπος το χρησιμοποιεί μέσα στο conky του για να γράφει ποια κάρτα χρησιμοποιείται. Αν χρησιμοποιηθεί σαν startup script του conky και αντί να έχει echo την κάρτα, έχει να ξεκινάει το conky με παράμετρο το .conkyrc που θέλουμε κάθε φορά, λογικά -πιστεύω- θα γίνεται η δουλειά. Δες όμως αν έχεις στο σύστημά σου σωστό αποτέλεσμα με το grep από αυτό cat /sys/kernel/debug/vgaswitcheroo/switch | grep DIS και αν ταιριάζει με τη συνθήκη που έχει παρακάτω ή χρειάζονται προσαρμογές.

πηγή

ΥΓ. Δεν ξέρω βέβαια, επειδή υπάρχουν περιορισμοί για τη χρήση του vgaswitcheroo μεταξύ ανοιχτών/κλειστών drivers τι χρησιμοποιείς εσύ.
Γνώσεις Linux: ✔✔✔✓✓ ┃ Προγραμματισμού: ✓✓✓✓✓ ┃ Αγγλικών: ✔✔✔✓✓
Ubuntu 16.04 64bit ‖ Lubuntu 16.10 64bit || 4.4.0-34-generic
Intel Core i7-6700HQ CPU @ 3.50GHzRAM 12GB ‖Toshiba Satellite P50-C
Intel Skylake Integrated Graphics ⋮ nVidia GM107M [GeForce GTX 950M]
enp4s0: Realtek RTL8111 Gigabit Ethernet Controller⋮ wlp3s0: Intel Wireless 3165
blog || github
Άβαταρ μέλους
fog
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 655
Εγγραφή: 31 Μαρ 2015, 13:33
Τοποθεσία: /home/fog
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό sotos21 » 21 Απρ 2015, 16:57

Όχι δεν κάνουμε κάτι, φοράω τους κλειστούς δεν υπάρχει τέτοιος φάκελος στον /sys.
1 Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Καθόλου ┃ Αγγλικών: Καθόλου
2 Ubuntu 23.10 Mantic Minotaur 6.3.0-7-generic 64bit (el_GR.UTF-8, Unity:Unity7:ubuntu unity)
3 AMD Ryzen 7 7730U with Radeon Graphics ‖ RAM 15368 MiB ‖ASUS TN3604YA - ASUS Vivobook_S_Flip TN3604YA_TN3604YA
4 Advanced Micro Devices, Inc. [AMD/ATI] Barcelo [1002:15e7] {amdgpu}
5 wlp1s0: MEDIATEK Corp. Device [14c3:7922]
Άβαταρ μέλους
sotos21
Freedom
Freedom
 
Δημοσιεύσεις: 6304
Εγγραφή: 21 Φεβ 2011, 21:28
Τοποθεσία: Αθήνα
Εκτύπωση

Re: Conky: Απορίες/Χρήσεις/Εφαρμογές

Δημοσίευσηαπό fog » 21 Απρ 2015, 17:27

Οκ.
Στο παραπάνω script τσεκάρει το χαρακτήρα της εξόδου που είναι + στη μια περίπτωση και δεν υπάρχει στην άλλη. Με + σημειώνεται η γραμμή της κάρτας που είναι ενεργή. Μια έξοδος αυτής της εντολής που δίνει είναι:
Κώδικας: Επιλογή όλων
fog@edge ~ $ sudo cat /sys/kernel/debug/vgaswitcheroo/switch
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :DynOff:0000:01:00.0

Σε αυτή την περίπτωση το + δεν είναι στη γραμμή DIS (discrete card) άρα είναι ενεργή η intel.

Στους κλειστούς της ati με την εντολή amdconfig –pxl μου δίνει αντίστοιχα αν είναι ενεργή η intel και αν είναι η ati:
PowerXpress: Integrated GPU is active (Power-Saving mode) ή
PowerXpress: Discrete GPU is active (High-Performance mode)
Στην περίπτωσή μου θα αρκούσε υποθέτω να τσεκάρω αν στην γραμμή ο 13ος χαρακτήρας είναι I, αν είναι να σηκώνει το conky της intel αν όχι της ati. Κάπως έτσι.

Υπάρχει κάποια αντίστοιχη εντολή για την nvidia ώστε να χρησιμοποιήσουμε τον χαρακτήρα που θα ξεκινάει η διαφορά μεταξύ των 2 εξόδων;
Τελευταία επεξεργασία από fog και 21 Απρ 2015, 19:33, έχει επεξεργασθεί 1 φορά/ες συνολικά
Γνώσεις Linux: ✔✔✔✓✓ ┃ Προγραμματισμού: ✓✓✓✓✓ ┃ Αγγλικών: ✔✔✔✓✓
Ubuntu 16.04 64bit ‖ Lubuntu 16.10 64bit || 4.4.0-34-generic
Intel Core i7-6700HQ CPU @ 3.50GHzRAM 12GB ‖Toshiba Satellite P50-C
Intel Skylake Integrated Graphics ⋮ nVidia GM107M [GeForce GTX 950M]
enp4s0: Realtek RTL8111 Gigabit Ethernet Controller⋮ wlp3s0: Intel Wireless 3165
blog || github
Άβαταρ μέλους
fog
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 655
Εγγραφή: 31 Μαρ 2015, 13:33
Τοποθεσία: /home/fog
Εκτύπωση

ΠροηγούμενηΕπόμενο

Επιστροφή στο Περιβάλλον Εργασίας / Εμφάνιση / Εφέ / Customization

cron