Come ottenere conky per rimanere sul desktop


15

Ho una configurazione conky che ho usato su un certo numero di desktop (ecco il conkyrc ). Funziona bene con Ubuntu Unity, XFCE, Gnome e Openbox, ma non con Lubuntu (LXDE). Il problema è che non riesco a farlo rimanere sul desktop Lubuntu LXDE in modo affidabile. La finestra conky scompare se faccio clic sul desktop o se minimizzo tutte le finestre (mostra desktop).

Ho provato tutte le variazioni nel file di configurazione per "own_window", "own_window_colour", "own_window_transparent" e "own_window_type" e ho cercato su Google un bel po 'per risolverlo. Se modifica il file conkyrc e imposta own_window_type su "normale", Conky scompare se minimizzo tutte le finestre. Se lo imposto su "desktop" scompare se faccio clic in un punto qualsiasi del desktop. Se uso "override" non viene visualizzato affatto. E le altre opzioni non funzionano bene per ovvi motivi.

In un'altra installazione di Ubuntu Unity ho riscontrato un problema simile, ma ho risolto il problema utilizzando Compiz Config Settings Manager per ignorare la mia finestra conky. Sul mio netbook per l'installazione di Lubuntu non ho installato compiz.

Come posso ottenere conky per rimanere sul mio desktop.


1
Conky non sembra giocare bene con Openbox.
Uri Herrera,

Hai provato la modalità "pannello"? .. A proposito ho anche problemi simili con Conky in Unity; puoi dirmi come hai usato Compiz Config Settings Manager per ignorare la finestra conky?
Sadi

1
Sadi: la seguente impostazione conky dovrebbe funzionare normalmente per Unity: own_window yes own_window_transparent yes own_window_type normal own_window_hints undecorated,below,sticky,skip_taskbar,skip_pagerse hai problemi con compiz (e strane ombre), usa il gestore delle impostazioni di Compiz Config per impostare quanto segue: * Sotto l'area "Window Decoration", imposta il campo "Shadow windows" su any & !(name=Conky) Si noti che la modalità pannello ha lo scopo di consentire a Conky di comportarsi come un pannello. Ciò significa che normalmente Windows non lo copre e deve essere ancorato solo sul lato dello schermo. Questo non è quello che volevo.
aspersieman

Risposte:


20

Sembra che a volte l'impostazione del tipo di finestra sul desktop non sia sufficiente.

Provare:

own_window_type desktop
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

Capito da qui .

Funziona per me in XFCE. Immagino che andrà bene anche per lxde / openbox.


5
Come viene accettata questa risposta? In LXDE, fare clic sul desktop fa scomparire conky.
Redsandro,

Inoltre non ho idea del perché. La domanda (non il suo titolo però) afferma esplicitamente che il problema è presente SOLO in LXDE e l'autore chiede aiuto per risolvere quel particolare problema. La risposta contrassegnata come "Risposta" non risponde alla domanda. Sono arrivato qui mentre cercavo una risposta allo stesso identico problema, ma con Debian (ultima scuderia), con LXDE.
rbaleksandar,

questo non aiuta. continua a scomparire
nazar_art il

Per Ubuntu semplice con Unity own_window_type overridefunziona bene
MInner

2
No, non lo fa. Non per me comunque. Ferma i widget che scompaiono ma poi c'è qualcosa di sbagliato nell'aggiornamento dello schermo per i personaggi che vengono disegnati. Diventano sfocati dopo un po 'e poi puoi dirlo perché ci sono personaggi che si sovrappongono.
user447607

8

Questa configurazione funziona su Gnome e Cinnamon ed è il modo per farlo.

own_window yes
own_window_transparent yes
own_window_type dock
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_argb_visual yes
own_window_argb_value 100
gap_x 940
gap_y 20

Gli ultimi 2 attributi lo posizionano assolutamente sullo schermo e devono essere modificati per la tua configurazione. Un file di configurazione completo funzionante è disponibile qui su Github .

Modifica: dai commenti: se own_window_type impostato su "dock" non funziona bene per te, prova anche "override" e "normal".


own_window_type docknon è sempre ottimale in quanto la finestra conky verrà trattata come un dock.
aspersieman

1
@aspersieman Finora non ho trovato nulla di diverso. È l'unica impostazione che gli ha impedito di spegnersi quando si fa clic sul desktop o super+windows+D.
Anirudh Ramanathan

Prova a own_window_type overridemodificare l'impostazione in Gestione impostazioni Compiz Config che ho descritto a Sadi sopra.
aspersieman

dockper me lo rende una parte permanente del mio schermo, come un pannello, cioè le finestre a schermo intero non possono coprirlo
Karthik T

2

Ho fatto un sacco di ricerche su questo me stesso e sembra che ci siano pochissime soluzioni alternative e ancora meno che funzionano bene:

  • È possibile impostare Conky su una finestra dock o pannello.
  • Puoi impostarlo su una finestra normale ed evitare semplicemente di usare il plugin / keybind show desktop.
  • Ho anche provato a usare l'argomento -w per conky per farlo attirare nella finta finestra desktop / PCManFM, ma questo causerà il ridisegno del desktop tutte le volte che gli aggiornamenti conky = disordinato.
  • Se riesci a vivere senza le icone del desktop, puoi impostare conky su una finestra del desktop e poi semplicemente spegnere PCManFM digitando pcmanfm --desktop-offsul terminale.
  • Puoi lasciare che feh o qualche altro programma gestisca il desktop

Non mi è piaciuta nessuna delle opzioni sopra. Quindi, come Redsandro, la soluzione alternativa su cui mi sono accordato è stata quella di avere conky come una normale finestra (skip_pager, skip_taskbar, in basso, ovviamente non decorato) e scrivere un semplice script bash e creare un file .desktop per poterlo includere nel mio pannello per sostituire il plug-in Show Desktop. Usa wmctrl quindi dovresti scaricarlo. Inoltre purtroppo non minimizza tutte le finestre, le ombreggia solo. Ma per le mie esigenze, è sufficiente:

#!/bin/bash
var=($(wmctrl -l | grep -o "0x[[:alnum:]]\+"))
for v in ${var[@]}
do wmctrl -i -r $v -b toggle,shaded
done
exit 0

Creare uno script di avvio con la prima azione pcmanfm --desktop-offe quindi lanciarlo conkyrisolto per me. Posso vivere senza le funzionalità desktop di pcmanfm :) Grazie!
codeman48,

1

Quanto sopra non ha funzionato per me. Ciò che ha funzionato è stato impostare "own_window_type" su "normal" in /etc/conky/conky.conf.

own_window_type normal

Secondo questa discussione: http://ubuntuforums.org/showthread.php?t=2039399


Avevo anche bisogno di "own_window_hints non decorato, sotto, appiccicoso, skip_taskbar, skip_pager` su LXDE.
Motiejus Jakštys

Ciò provoca il caso "minimizza tutte le finestre (mostra desktop)" come nel PO, anche con l'aggiunta della linea di @ MotiejusJakštys
Karthik T

1

La risposta accettata non tiene conto di "Mostra desktop".

Puoi usare l'hack che ho spiegato in questa risposta per mostrare conky dopo aver premuto Win+Dfor Show Desktop:

#!/usr/bin/env bash
zenity --info --text "Remapping Conky..." &
pid=$!
sleep 0.3
kill $pid
xdotool windowmap `xdotool search --classname 'conky'`

1

Il problema con l'utilizzo di conky con LXDE è che PCManFM gestisce il desktop in modo diverso da qualsiasi altro desktop. LXDE è essenzialmente Openbox con un desktop stratificato dal file manager (pcmanfm) se rimuovessi pcmanfm in favore di un altro file manager, non avresti più LXDE, avresti essenzialmente Openbox con il pannello LXDE. Come è rilevante? Bene, il desktop di LXDE è gestito più come una finestra dal gestore delle finestre, il che significa che quando hai diverse finestre aperte e fai clic su una di esse, la mette a fuoco. Questo è esattamente ciò che sta accadendo con Conky. Quando si fa clic sul desktop, posiziona il vantaggio conky sul desktop, che è come ho spiegato, gestito più come una finestra. Nel mio caso, questa è la correzione:

own_window_class Conky
own_window yes
own_window_type normal
own_window_transparent yes
own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below

Ora, se si utilizza il plug-in del pannello per ridurre a icona tutte le finestre, ridurrà al minimo il conky, ma questa correzione impedisce al conky di scomparire in circostanze normali.


1

MODIFICARE:

meglio: a partire da 12.04 Precise e tutte le versioni successive di Ubuntu (confermate fino al 16.04 xenial), puoi ottenere lo stesso di devilspie (sotto) con compiz -> Regole di Windows. Ho usato la partita di classe lì, è autoesplicativa. Funziona anche con il mio script Super + Home collegato.

Ecco il mio piccolo contributo dopo aver perso un paio d'ore con questo per chiunque non fosse in grado di risolverlo con tutto quanto sopra (testato con Ubuntu 16.04):

Soluzione rapida :

  1. Aggiungi una riga 'own_window_type dock ' in conkyrc.txt nella rispettiva directory in ~ / .conky / (per non farla sparire sul desktop-clic)
  2. Installa devilspie
  3. Crea una regola in devilspie con il modello 'match' nome_finestra 'contiene' conky (senza maiuscole c - importa). In realtà, con il pulsante "Ottieni" fornito lì puoi usare qualsiasi modello di corrispondenza che funzioni.
  4. come azioni, seleziona ' skip_tasklist ', ' unminimize ' e se vuoi averlo su tutte le aree di lavoro, anche ' stick '.
  5. Questo è tutto.

Controlla ovviamente "Esegui devilspie all'avvio".

effetto collaterale: la finestra di Conky Manager si comporterà in modo simile quando aperta a seconda del modello di corrispondenza, tuttavia non dovrebbe essere un problema.

Il mio problema era questo:

'own_window_type override ' ha creato il problema che gli elementi mutevoli del conky non avrebbero sostituito ma che sarebbero stati disegnati sopra valori più vecchi - brutti e anche illeggibili in pochi secondi.

'own_window_type desktop ' non ha funzionato.

'own_window_type dock ' insieme a devilspie ha risolto il problema originale, ma non avrebbe funzionato bene con questo piccolo script per aggiungere un 'mostra desktop ma mantieni attiva la finestra in piedi' - tasto di scelta rapida come Windows Win + Home. EDIT: il citato in qualche modo ha smesso di funzionare .. Sono fuori Sorry:

Spero di aver aiutato qualcuno, dammi un pollice in su, sono nuovo qui ;-)

Il mio sistema: UBUNTU Xenial Xerus 64 bit.


0

Potresti provare ad aggiungere uno script che viene eseguito all'avvio .

Per esempio:

#!/bin/bash
conky ;

(non dimenticare di chmod + x it;)


Grazie per la tua risposta. Sfortunatamente, l'ho già provato e non cambia nulla. Ho anche provato a farlo dormire per alcuni secondi. Altri suggerimenti?
aspersieman,

scusa amico nessun altro suggerimento. ho risolto il mio in questo modo, ma se ricordo bene stavo usando Gnome.
user981916,

Nessun problema. Grazie per l'aiuto però.
aspersieman,

0

Per Unity il mio problema è stato risolto utilizzando

own_window_type override

Corretta! Ciò consente di mantenere i widget sul desktop quando si fa clic sul desktop o si tenta di mostrare desktop (Ctrl + Super + D). TUTTAVIA dopo show desktop, vedo che ora ho duplicati dei miei widget conky in cui quello vecchio ha un timestamp fisso e il nuovo overlay ha timestamp che cambiano. In altre parole, è un casino a strati! Sto dimenticando di aggiungere qualcos'altro?
Brad Horn,

0

Per Lubuntu con LXDE:

own_window yes
own_window_class Conky
own_window_transparent yes
own_window_type desktop
double_buffer yes

Se la finestra conky scompare quando premi il pulsante minimizza tutte le finestre (mostra desktop) vai in Impostazioni-> Applicazioni predefinite per LXsession-> Applicazioni in esecuzione-> Desktop e seleziona "feh" invece di "filemanager"

Lavora per me in Lubuntu 13.10.


0

Ho fatto un sacco di ricerche su questo me stesso e sembra che ci siano pochissime soluzioni alternative e ancora meno che funzionano bene.

  • È possibile impostare Conky su una finestra dock o pannello.
  • Puoi impostarlo su una finestra normale ed evitare semplicemente di usare il plugin / keybind show desktop. Ho anche usato l'argomento -w per Conky per farlo attirare nella finta finestra desktop / PCManFM, ma questo causerà il ridisegno del desktop tutte le volte che gli aggiornamenti conky = disordinato. Se non ti dispiace non avere icone, puoi semplicemente spegnere PCManFM digitando pcmanfm --desktop-offsul terminale.

Come Redsandro , il modo per aggirare questo problema è stato scrivere un semplice script bash e creare un file .desktop per poterlo includere nel mio pannello al posto del plugin Show Desktop. Usa wmctrl quindi dovresti scaricarlo. Inoltre purtroppo non minimizza tutte le finestre, le ombreggia solo. Ma per le mie esigenze, è sufficiente:

#!/bin/bash
var="($(wmctrl -l | grep -o "0x[[:alnum:]]\+"))"
for v in ${var[@]}
do wmctrl -i -r $v -b toggle,shaded
done

0

Funziona con Lubuntu 14.10

own_window yes
own_window_hints undecorated,below,skip_taskbar
background no
own_window_transparent yes

0

So che questa discussione è vecchia, ma per chiunque abbia ancora problemi con questo problema, volevo solo aggiungere che la risposta di Grims funziona per me, con un piccolo avvertimento.

In /etc/conky/conky.conf

own_window_type normal

e in .conkyrc o nel file del tema:

own_window_type desktop
own_window_hints undecorate,sticky,skip_taskbar,skip_pager

Dopo alcuni tentativi ed errori, questa è stata l'unica combinazione che ho potuto mettere al lavoro (sto usando Compton per la trasparenza). Nota, non esiste un'impostazione "sotto" in own_window_hints, poiché anche se funziona ancora fa scomparire e riapparire (sfarfallio) dopo alcuni secondi quando mostra il desktop. Almeno questa è stata la mia esperienza.

HTH


0

Linux con Mate / Gnome2 GUI Ubuntish;)

use_xft yes
..............
.........
.....
..........
own_window_type dock

Si aggancerà sullo schermo superiore, annullando qualsiasi azione sul desktop.

Metti in posizione impostazione:

gap_x ...
gap_y ...  

A seconda della tua risoluzione.


0

Set background=falsein .conkyrced essere sicuro che non stai autostarting Conky con la -dbandiera. Ho provato ogni altro suggerimento che ho trovato, e a volte avrebbero funzionato e talvolta no, e anche se funzionassero è stato solo per un po '.

Nota: se si minimizzano accidentalmente tutte le finestre, utilizzareSuper+Dper ripristinare Conky.


0

Ho riscontrato lo stesso problema in LXDE quando ho fatto clic su "Iconify All Windows" di LXPanel per nascondere anche la finestra di Conky. L'ho risolto con wmctrl .

Installa wmctrl

sudo apt install wmctrl

Trova il nome della finestra di Conky

wmctrl -l
0x03200001 -1 Host conky (Host)

Per riportarlo indietro:

wmctrl -a 'conky (Host)'

Ho scritto in Python un semplice script che ogni 50 millisecondi rivela Conky e lo mette all'avvio di LXDE:

bring_conky_back.py

#!/usr/bin/python

import time, os

while True:
    os.system("wmctrl -a 'conky (Host)'")
    time.sleep(0.05)

Anche in .conkyrc potrebbero essere necessarie queste righe:

own_window = true,
own_window_type = 'normal',

Funziona alla grande.


-1

La mia soluzione a questo problema è aggiungere queste due righe nello script bash

conky -c /home/ajay/.conkycolors/conkyrc >/dev/null 2>&1 &
conky -c /home/ajay/.conkycolors/conkyrc >/dev/null 2>&1 &


La domanda include 3 diversi problemi: 1) conky che scompare quando si fa clic sul desktop in modalità "desktop", 2) stesso quando tutte le finestre sono ridotte a icona (usando il comando Mostra desktop) in modalità "normale" e "conky", 3) conky non visualizzato in modalità "override" ... Quale problema risolve? Cosa fa davvero?
Sadi

-1

In Unity non cambiare nulla, basta incollare nel terminale:

gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ hide-skip-taskbar-windows false
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.