Como obter conky para permanecer na área de trabalho


15

Eu tenho uma configuração conky que usei em vários desktops (aqui está o conkyrc ). Funciona bem no Ubuntu Unity, XFCE, Gnome e Openbox, mas não no Lubuntu (LXDE). O problema é que eu não posso obtê-lo para ficar na área de trabalho Lubuntu LXDE confiável. A janela conky desaparece se eu clicar na área de trabalho ou minimizar todas as janelas (mostrar área de trabalho).

Eu tentei todas as variações no arquivo de configuração para "own_window", "own_window_colour", "own_window_transparent" e "own_window_type" e pesquisei bastante no Google para resolver isso. Se ele editar o arquivo conkyrc e definir o own_window_type como "normal", o conky desaparecerá se eu minimizar todas as janelas. Se eu defini-lo como "área de trabalho", ele desaparece se eu clicar em qualquer lugar da área de trabalho. Se eu usar "substituir", ele não será exibido. E as outras opções não funcionam bem por razões óbvias.

Em outra instalação do Ubuntu Unity, tive um problema semelhante, mas contornei-o usando o Compiz Config Settings Manager para ignorar minha janela do conky. No meu netbook, a instalação do Lubuntu, não tenho o compiz instalado.

Como posso usar o conky para permanecer na minha área de trabalho.


11
Conky não parece jogar bem com o Openbox.
Uri Herrera

Você tentou o modo "painel"? ... BTW, também tenho problemas semelhantes com o conky no Unity; você pode me dizer como usou o Compiz Config Settings Manager para ignorar a janela conky?
Sadi

11
Sadi: A seguinte configuração conky normalmente deve funcionar para o Unity: own_window yes own_window_transparent yes own_window_type normal own_window_hints undecorated,below,sticky,skip_taskbar,skip_pagerSe você tiver problemas com o compiz (e sombras estranhas), use o gerenciador de configurações do Compiz Config para definir o seguinte: * Na área "Window Decoration", defina o campo "Shadow windows" como any & !(name=Conky) Observe que o modo de painel destina-se a permitir que o conky se comporte como um painel. Isso significa que normalmente o Windows não cobre e só deve ser encaixado na lateral da tela. Não era isso que eu queria.
Aspersieman # 8/13

Respostas:


20

Parece que definir o tipo de janela para a área de trabalho às vezes não é suficiente.

Experimentar:

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

Entendi daqui .

Funciona para mim no XFCE. Eu acho que também vai ser bom para o lxde / openbox.


5
Como esta resposta é aceita? No LXDE, clicar na área de trabalho faz o conky desaparecer.
Redsandro

Eu também não tenho idéia do porquê disso. A pergunta (embora não seja o título) afirma explicitamente que o problema está presente APENAS no LXDE e o autor pede ajuda para resolver esse problema específico. A resposta marcada como "Resposta" não responde à pergunta. Eu cheguei aqui enquanto procurava uma resposta para exatamente o mesmo problema, mas com o Debian (mais recente estável), executando o LXDE.
Rbaleksandar

isso não ajuda. ele continua desaparecendo #
11443 nazar_art

Para simples Ubuntu com Unity own_window_type overridefunciona muito bem
Minner

2
Não, não faz. Não para mim de qualquer maneira. Ele interrompe os widgets que desaparecem, mas há algo errado com a atualização da tela dos personagens que estão sendo desenhados. Eles ficam confusos depois de um tempo e, em seguida, você percebe que é porque há caracteres sobrepondo-os.
user447607

8

Essa configuração funciona no Gnome e no Cinnamon e é a maneira de fazê-lo.

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

Os dois últimos atributos o posicionam absolutamente na tela e precisam ser alterados para sua configuração. Um arquivo de configuração completo em funcionamento pode ser encontrado aqui no Github .

Editar: A partir dos comentários: Se own_window_type definido como "dock" não funcionar bem para você, tente "substituir" e "normal" também.


own_window_type docknem sempre é ideal, pois a janela conky será tratada como uma doca.
Aspersieman # 8/13

11
@aspersieman Não encontrei nada de diferente até agora. É a única configuração que o impedia de clicar ao clicar na área de trabalho ou super+windows+D.
Anirudh Ramanathan

Tente own_window_type overridealterar a configuração no Gerenciador de configurações de configuração do Compiz que descrevi para Sadi acima.
Aspersieman

dockme torna uma parte permanente da minha tela, como o painel, ou seja, janelas em tela cheia não pode cobri-lo
Karthik T

2

Eu já fiz muitas pesquisas sobre isso e parece que existem muito poucas soluções alternativas e menos ainda que funcionam bem:

  • Você pode configurar o conky para uma janela de encaixe ou painel.
  • Você pode configurá-lo para uma janela normal e evitar o uso do show desktop plugin / keybind.
  • Eu até tentei usar o argumento -w para conky para atraí-lo para a janela falsa da área de trabalho / PCManFM, mas isso fará com que sua área de trabalho seja redesenhada com a mesma freqüência que atualizações conky = desarrumadas.
  • Se você pode viver sem ícones da área de trabalho, pode configurar o conky para uma janela da área de trabalho e simplesmente desligar o PCManFM digitando pcmanfm --desktop-offno terminal.
  • Você pode deixar o feh ou algum outro programa gerenciar a área de trabalho

Não gostei de nenhuma das opções acima. Então, como Redsandro, a solução em que eu decidi era ter conky como uma janela normal (skip_pager, skip_taskbar, abaixo, sem decoração, é claro) e escrever um script bash simples e criar um arquivo .desktop para que eu pudesse incluir no meu painel para substituir o plug-in Show Desktop. Ele usa wmctrl para que você precise baixá-lo. Além disso, infelizmente, não minimiza todas as janelas, apenas as protege. Mas, para as minhas necessidades, basta:

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

Criar um script de inicialização com a primeira ação pcmanfm --desktop-offe, em seguida, iniciar o conkyresolveu para mim. Eu posso viver sem os recursos da área de trabalho do pcmanfm :) Obrigado!
codeman48

1

O exposto acima não funcionou para mim. O que funcionou foi definir o "own_window_type" como "normal" no /etc/conky/conky.conf.

own_window_type normal

De acordo com este tópico: http://ubuntuforums.org/showthread.php?t=2039399


Eu também precisava de "own_window_hints undecorated, abaixo, sticky, skip_taskbar, skip_pager` no LXDE.
Motiejus Jakštys

Isso faz com que o caso "minimize todas as janelas (mostre a área de trabalho)" como no OP, mesmo com a adição da linha de @ MotiejusJakštys
Karthik T

1

A resposta aceita não conta para "Mostrar área de trabalho".

Você pode usar o hack que expliquei nesta resposta para mostrar conky depois Win+Dde Show Desktoppressionado:

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

1

O problema do uso do conky com o LXDE é que o PCManFM lida com a área de trabalho de maneira diferente de qualquer outra área de trabalho. O LXDE é essencialmente o Openbox com uma área de trabalho em camadas pelo gerenciador de arquivos (pcmanfm). Se você removesse o pcmanfm em favor de outro gerenciador de arquivos, não teria mais o LXDE, teria essencialmente o Openbox com o painel LXDE. Como isso é relevante? Bem, a área de trabalho do LXDE é tratada mais como uma janela pelo gerenciador de janelas, ou seja, como quando você tem várias janelas abertas, e você clica em uma delas, ela fica em foco. É exatamente o que está acontecendo com Conky. Quando você clica na área de trabalho, coloca-se bem em relação à área de trabalho, como expliquei, mais como uma janela. No meu caso, esta é a correção:

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

Agora, se você usar o plug-in do painel para minimizar todas as janelas, ele ainda minimizará o conky, mas essa correção evita que o conky desapareça em circunstâncias normais.


1

EDITAR:

melhor: a partir do 12.04 Precise e de todas as versões posteriores do Ubuntu (confirmadas até 16.04 xenial), você pode obter o mesmo que o devilspie (abaixo) com o compiz -> Windows Rules. Eu usei a partida de classe lá, é auto-explicativa. Também funciona com meu script Super + Home vinculado.

Aqui está minha pequena contribuição, depois de desperdiçar algumas horas com isso para quem não conseguiu resolver tudo isso acima (testado com o Ubuntu 16.04):

Solução rápida :

  1. Adicione um 'own_window_type linha ' dock do ' no conkyrc.txt no respectivo diretório em ~ / .conky / (para que não desapareça ao clicar na área de trabalho)
  2. Instalar devilspie
  3. Crie uma regra no devilspie com o padrão 'match' nome_da_ janela 'contém' conky (sem c maiúsculo - isso importa). Na verdade, com o botão "Obter" fornecido, você pode usar qualquer padrão de correspondência que funcione.
  4. como ações, selecione ' skip_tasklist ', ' unminimize ' e, se você quiser tê-lo em todas as áreas de trabalho, também ' stick '.
  5. É isso aí.

Marque 'Executar devilspie na inicialização' obviamente.

efeito lateral: a janela do Conky Manager se comportará de maneira semelhante quando aberta, dependendo do padrão de correspondência, não deve haver nenhum problema.

Meu problema era este:

substituição de 'own_window_type ' criou o problema que os itens alterados do conky não substituiriam, mas seriam desenhados sobre valores mais antigos - feios e também ilegíveis em segundos.

'own_window_type desktop ' simplesmente não fez o truque.

'own_window_type dock ' em conjunto com devilspie resolveu o problema original, mas não seria legal com isso pequeno script para adicionar um 'show desktop, mas mantenha a janela ativa ativa' - teclas de atalho como o Windows Win + Home. EDIT: o último mencionado de alguma forma parou de funcionar .. Estou fora: - |

Espero ter ajudado alguém, me dê um joinha, sou novo aqui ;-)

Meu sistema: UBUNTU Xenial Xerus 64 bits.


0

Você pode tentar adicionar um script que seja executado na inicialização .

Por exemplo:

#!/bin/bash
conky ;

(não esqueça de chmod + x it;)


Obrigado pela sua resposta. Infelizmente, eu já tentei isso e isso não muda nada. Eu até tentei fazê-lo dormir por alguns segundos. Alguma outra sugestão?
Aspersieman

desculpe cara nenhuma outra sugestão. Eu resolvi o meu desta maneira, mas se bem me lembro, estava usando o gnome.
user981916

Não se preocupe. Obrigado pela sua ajuda.
Aspersieman

0

Para o Unity, meu problema foi resolvido usando

own_window_type override

Corrigir! Isso permite manter os widgets na área de trabalho quando a área de trabalho é clicada ou mostrar a área de trabalho (Ctrl + Super + D) é tentada. NO ENTANTO, depois do show desktop, vejo que agora tenho duplicados dos meus widgets conky, nos quais o antigo possui um registro de data e hora fixo e a nova sobreposição muda os registros de horário. Em outras palavras, é uma bagunça em camadas! Estou esquecendo de adicionar outra coisa?
Brad Horn

0

Para o Lubuntu com LXDE:

own_window yes
own_window_class Conky
own_window_transparent yes
own_window_type desktop
double_buffer yes

Se a janela conky desaparecer ao pressionar o botão minimizar todas as janelas (mostrar área de trabalho), vá em Configurações-> Aplicativos padrão para LXsession-> Aplicativos em execução-> Área de trabalho e selecione "feh" em vez de "gerenciador de arquivos"

Trabalhe para mim no Lubuntu 13.10.


0

Eu mesmo fiz muitas pesquisas sobre isso e parece que existem muito poucas soluções alternativas e menos ainda que funcionam bem.

  • Você pode configurar o conky para uma janela de encaixe ou painel.
  • Você pode configurá-lo para uma janela normal e evitar o uso do show desktop plugin / keybind. Até usei o argumento -w para conky para atraí-lo para a janela falsa da área de trabalho / PCManFM, mas isso fará com que sua área de trabalho seja redesenhada com a mesma freqüência que atualizações conky = desarrumadas. Se você não se importa de não ter ícones, basta desligar o PCManFM digitando pcmanfm --desktop-offno terminal.

Como o Redsandro , a maneira de contornar isso foi escrever um script bash simples e criar um arquivo .desktop para que eu pudesse incluir no meu painel o lugar do plug-in Show Desktop. Ele usa o wmctrl para que você precise baixá-lo. Além disso, infelizmente, não minimiza todas as janelas, apenas as protege. Mas, para as minhas necessidades, basta:

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

0

Isso funciona no Lubuntu 14.10

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

0

Eu sei que esse tópico é antigo, mas para qualquer um que ainda esteja lutando com esse problema, eu apenas gostaria de acrescentar que a resposta do Grims funciona para mim, com uma pequena ressalva.

Em /etc/conky/conky.conf

own_window_type normal

e em .conkyrc ou no arquivo do tema:

own_window_type desktop
own_window_hints undecorate,sticky,skip_taskbar,skip_pager

Após algumas tentativas e erros, essa foi a única combinação que pude trabalhar (estou usando o compton para obter transparência). Observe que não há uma configuração "abaixo" em own_window_hints, pois, embora isso ainda funcione, faz com que o conky desapareça e reapareça (pisca) após alguns segundos ao exibir a área de trabalho. Pelo menos essa foi a minha experiência.

HTH


0

Linux com GUI Mate / Gnome2 Ubuntish;)

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

Será encaixado na tela superior, desativando as ações da área de trabalho.

Colocar na configuração de posição:

gap_x ...
gap_y ...  

Dependendo da sua resolução.


0

Situado background=falseem .conkyrce certifique-se que você não está autostarting Conky com a -dbandeira. Tentei todas as outras sugestões que pude encontrar, e às vezes elas funcionavam e outras não, e mesmo que funcionassem, era apenas por um tempo.

Nota: se você minimizar acidentalmente todas as janelas, useSuper+Dpara recuperar o Conky.


0

Eu experimentei o mesmo problema no LXDE ao clicar em "Iconify All Windows" do LXPanel também oculta a janela do Conky. Corrigi com wmctrl .

Instale o wmctrl

sudo apt install wmctrl

Encontre o nome da janela do Conky

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

Para trazê-lo de volta, execute:

wmctrl -a 'conky (Host)'

Eu escrevi em Python um script simples que a cada 50 milissegundos mostra o Conky e o coloca na inicialização do LXDE:

bring_conky_back.py

#!/usr/bin/python

import time, os

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

Também em .conkyrc estas linhas podem ser necessárias:

own_window = true,
own_window_type = 'normal',

Isso funciona demais.


-1

Minha solução para esse problema é adicionar essas duas linhas no seu script bash

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


A questão inclui 3 problemas diferentes: 1) desaparece quando o desktop é clicado no modo "desktop", 2) é o mesmo quando todas as janelas são minimizadas (usando o comando Mostrar área de trabalho) nos modos "normal" e "conky", 3) conky não é exibido no modo "substituir" ... Que problema isso resolve? O que isso realmente faz?
Sadi

-1

No Unity não mude nada, basta colar no terminal:

gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ hide-skip-taskbar-windows false
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.