Làm thế nào để có được conky ở lại trên máy tính để bàn


15

Tôi có một thiết lập conky mà tôi đã sử dụng trên một số máy tính để bàn (đây là conkyrc ). Nó hoạt động tốt trong Ubuntu Unity, XFCE, Gnome và Openbox, nhưng không phải là LubFi (LXDE). Vấn đề là tôi không thể có được nó trên máy tính để bàn Lubfox LXDE một cách đáng tin cậy. Cửa sổ conky biến mất nếu tôi nhấp vào màn hình nền hoặc nếu tôi thu nhỏ tất cả các cửa sổ (hiển thị màn hình nền).

Tôi đã thử tất cả các biến thể trong tệp cấu hình cho "own_window", "own_window_colour", "own_window_transparent" và "own_window_type" và đã giải quyết vấn đề này một chút. Nếu nó chỉnh sửa tệp conkyrc và đặt own_window_type thành "bình thường", conky sẽ biến mất nếu tôi thu nhỏ tất cả các cửa sổ. Nếu tôi đặt nó thành "máy tính để bàn" thì nó sẽ biến mất nếu tôi nhấp vào bất cứ nơi nào trên máy tính để bàn. Nếu tôi sử dụng "ghi đè" thì nó hoàn toàn không hiển thị. Và các tùy chọn khác không hoạt động tốt vì lý do rõ ràng.

Trong một lần cài đặt Ubuntu Unity khác, tôi gặp vấn đề tương tự, nhưng đã khắc phục bằng cách sử dụng Trình quản lý cài đặt cấu hình Compiz để bỏ qua cửa sổ conky của tôi. Trên cài đặt netbook LubFi của tôi, tôi không cài đặt compiz.

Làm thế nào tôi có thể có được conky ở lại trên máy tính để bàn của tôi.


1
Conky dường như không chơi tốt với Openbox.
Uri Herrera

Bạn đã thử chế độ "bảng điều khiển" chưa? .. BTW Tôi cũng gặp vấn đề tương tự với conky trong Unity; bạn có thể vui lòng cho tôi biết bạn đã sử dụng Trình quản lý cài đặt cấu hình Compiz để bỏ qua cửa sổ conky không?
Sadi

1
Sadi: Cài đặt conky sau thường hoạt động cho Unity: own_window yes own_window_transparent yes own_window_type normal own_window_hints undecorated,below,sticky,skip_taskbar,skip_pagerNếu bạn gặp vấn đề với compiz (và bóng lạ), hãy sử dụng trình quản lý cài đặt Compiz Config để đặt các mục sau: * Trong khu vực "Trang trí cửa sổ", đặt trường "Cửa sổ bóng tối" thành any & !(name=Conky) Lưu ý rằng chế độ bảng điều khiển được dự định để cho conky hoạt động giống như bảng điều khiển. Điều này có nghĩa là thông thường các cửa sổ sẽ không che nó và nó chỉ nên được đặt ở bên cạnh màn hình của bạn. Đây không phải là những gì tôi muốn.
aspersieman

Câu trả lời:


20

Có vẻ như cài đặt loại cửa sổ cho máy tính để bàn đôi khi không đủ.

Thử:

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

Có nó từ đây .

Làm việc cho tôi trong XFCE. Tôi đoán nó cũng sẽ tốt cho lxde / openbox.


5
Câu trả lời này được chấp nhận như thế nào? Trong LXDE, nhấp vào màn hình nền làm cho conky biến mất.
Redsandro

Tôi cũng không biết tại sao lại như vậy. Câu hỏi (không phải tiêu đề của nó) nêu rõ rằng vấn đề chỉ có ở LXDE và tác giả yêu cầu trợ giúp để giải quyết vấn đề cụ thể đó. Câu trả lời được đánh dấu là "Trả lời" không trả lời câu hỏi. Tôi đã đến đây trong khi tìm kiếm một câu trả lời cho cùng một vấn đề nhưng với Debian (ổn định mới nhất), đang chạy LXDE.
rbaleksandar

Điều này không có ích. nó cứ biến mất
nazar_art

Đối với Ubuntu đơn giản với Unity own_window_type overridechỉ hoạt động tốt
MInner

2
Không, nó không. Không phải cho tôi dù sao. Nó dừng các vật dụng đang biến mất nhưng sau đó có gì đó không đúng với việc làm mới màn hình cho các nhân vật đang được vẽ. Chúng trở nên mờ nhạt sau một thời gian và sau đó bạn có thể nói điều đó bởi vì có các ký tự chồng các ký tự.
user447607

8

Cấu hình này hoạt động, trên Gnome và Cinnamon và là cách để làm điều đó.

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

2 thuộc tính cuối cùng hoàn toàn định vị nó trên màn hình và cần được thay đổi cho cấu hình của bạn. Một tập tin cấu hình hoàn chỉnh đang hoạt động có thể được tìm thấy ở đây trên Github .

Chỉnh sửa: Từ các nhận xét: Nếu own_window_type được đặt thành "dock" không hoạt động tốt cho bạn, hãy thử "ghi đè" và "bình thường".


own_window_type dockkhông phải lúc nào cũng tối ưu vì cửa sổ conky sẽ được coi như một cái dock.
aspersieman

1
@aspersieman Tôi thấy không có gì khác với nó cho đến nay. Đây là cài đặt duy nhất ngăn nó tắt khi nhấp vào máy tính để bàn hoặc super+windows+D.
Anirudh Ramanathan

Hãy thử own_window_type overridevà thay đổi cài đặt trong Trình quản lý cài đặt cấu hình Compiz mà tôi đã mô tả cho Sadi ở trên.
aspersieman

dockvới tôi làm cho nó trở thành một phần vĩnh viễn trên màn hình của tôi, như bảng điều khiển, tức là các cửa sổ toàn màn hình không thể che nó
Karthik T

2

Bản thân tôi đã thực hiện rất nhiều nghiên cứu về vấn đề này và dường như có rất ít cách giải quyết và thậm chí còn ít hơn hoạt động tốt:

  • Bạn có thể đặt conky thành một dock hoặc cửa sổ bảng điều khiển.
  • Bạn có thể đặt nó vào một cửa sổ bình thường và chỉ cần tránh sử dụng plugin / keybind hiển thị trên màn hình.
  • Tôi thậm chí đã thử sử dụng đối số -w cho conky để đưa nó vào cửa sổ giả / PCManFM giả, nhưng điều đó sẽ khiến máy tính của bạn vẽ lại thường xuyên như cập nhật conky = lộn xộn.
  • Nếu bạn có thể sống mà không có biểu tượng máy tính để bàn, bạn có thể đặt conky vào cửa sổ máy tính để bàn và sau đó chỉ cần tắt PCManFM bằng cách nhập pcmanfm --desktop-offvào thiết bị đầu cuối.
  • Bạn có thể để feh hoặc một số chương trình khác quản lý máy tính để bàn

Tôi không thích bất kỳ lựa chọn nào ở trên. Vì vậy, giống như Redsandro, cách giải quyết mà tôi đã giải quyết là có conky như một cửa sổ bình thường (Skip_pager, Skip_taskbar, bên dưới, tất nhiên không được trang bị) và viết một tập lệnh bash đơn giản và tạo một tệp .desktop cho nó để tôi có thể đưa vào bảng điều khiển của mình để thay thế plugin Show Desktop. Nó sử dụng wmctrl để bạn phải tải xuống. Ngoài ra, thật không may, nó không thu nhỏ tất cả các cửa sổ, nó chỉ làm mờ chúng. Nhưng đối với nhu cầu của tôi, nó đủ:

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

Tạo một kịch bản khởi động với hành động đầu tiên pcmanfm --desktop-offvà sau đó khởi chạy đã conkygiải quyết nó cho tôi. Tôi có thể sống mà không có các tính năng máy tính để bàn của pcmanfm :) Cảm ơn!
codeman48

1

Ở trên không làm việc cho tôi. Điều đã làm là đặt "own_window_type" thành "bình thường" trong /etc/conky/conky.conf.

own_window_type normal

Theo chủ đề này: http://ubuntuforums.org/showthread.php?t=2039399


Tôi cũng cần "own_window_hint chưa được trang trí, bên dưới, dính, Skip_taskbar, Skip_pager` trên LXDE.
Motiejus Jakštys

Điều này gây ra trường hợp "thu nhỏ tất cả các cửa sổ (hiển thị máy tính để bàn)" như trong OP, ngay cả khi có thêm dòng của @ MotiejusJakštys
Karthik T

1

Câu trả lời được chấp nhận không chiếm "Show Desktop".

Bạn có thể sử dụng hack tôi đã giải thích trong câu trả lời này để hiển thị conky sau khi nhấn 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

Vấn đề với việc sử dụng conky với LXDE là PCManFM xử lý máy tính để bàn theo cách không giống bất kỳ máy tính để bàn nào khác. LXDE về cơ bản là Openbox với máy tính để bàn được xếp lớp bởi trình quản lý tệp (pcmanfm) nếu bạn loại bỏ pcmanfm để ủng hộ trình quản lý tệp khác, bạn sẽ không còn LXDE nữa, về cơ bản bạn sẽ có Openbox với bảng LXDE. Làm thế nào điều này có liên quan? Chà, máy tính để bàn của LXDE được xử lý giống như một cửa sổ bởi trình quản lý cửa sổ, nghĩa là giống như khi bạn mở một vài cửa sổ, và bạn nhấp vào một trong số chúng, nó sẽ làm cho nó tập trung. Đây chính xác là những gì đang xảy ra với Conky. Khi bạn nhấp vào máy tính để bàn, nó đặt conky beneith máy tính để bàn, như tôi đã giải thích, xử lý giống như một cửa sổ. Trong trường hợp của tôi, đây là sửa chữa:

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

Bây giờ, nếu bạn sử dụng plugin bảng điều khiển để thu nhỏ tất cả các cửa sổ, nó vẫn sẽ giảm thiểu conky, nhưng cách khắc phục này giúp conky không biến mất trong các trường hợp thông thường.


1

BIÊN TẬP:

tốt hơn: kể từ ngày 12.04 Chính xác và tất cả các phiên bản Ubuntu mới hơn (được xác nhận cho đến ngày 16.04 xenial), bạn có thể đạt được tương tự như devilspie (bên dưới) với compiz -> Windows Rules. Tôi đã sử dụng trận đấu lớp ở đó, nó tự giải thích. Cũng hoạt động với tập lệnh Super + Home được liên kết của tôi.

Đây là đóng góp nhỏ của tôi sau khi lãng phí một vài giờ với việc này cho bất kỳ ai không thể sắp xếp nó với tất cả những điều trên (đã thử nghiệm với Ubuntu 16.04):

Giải pháp nhanh chóng :

  1. Thêm một dòng 'own_window_type dock ' trong conkyrc.txt trong thư mục tương ứng trong ~ / .conky / (để không biến mất khi nhấp vào máy tính để bàn)
  2. Cài đặt devilspie
  3. Tạo quy tắc trong devilspie với mẫu 'khớp' window_name 'chứa' conky (không có vốn c - nó quan trọng). Trên thực tế, với nút "Nhận" được cung cấp, bạn có thể sử dụng bất kỳ mẫu khớp nào hoạt động.
  4. như hành động, chọn ' skip_tasklist ', ' unminimize 'và nếu bạn muốn có nó trên tất cả các không gian làm việc, cũng' dính '.
  5. Đó là nó.

Hãy kiểm tra 'Chạy devilspie khi khởi động' rõ ràng.

sideeffect: Cửa sổ Conky Manager sẽ hoạt động tương tự khi mở tùy thuộc vào mẫu khớp, mặc dù vậy, không nên có bất kỳ vấn đề nào.

Vấn đề của tôi là thế này:

'own_window_type ghi đè ' đã tạo ra một vấn đề là các vật phẩm thay đổi của conky sẽ không thay thế mà thay vào đó được rút ra trên các giá trị cũ - xấu xí và cũng không thể đọc được trong vài giây.

'own_window_type máy tính để bàn ' không làm được điều đó.

'own_window_type dock ' kết hợp với devilspie đã giải quyết vấn đề ban đầu, nhưng sẽ không chơi tốt với tập lệnh nhỏ tiện lợi này để thêm 'máy tính để bàn nhưng vẫn giữ cửa sổ hoạt động' - phím nóng như Windows Win + Home. EDIT: phần cuối cùng bằng cách nào đó đã ngừng hoạt động .. Tôi ra: - |

Hy vọng tôi đã giúp được ai đó, đưa ngón tay cái lên, tôi mới ở đây ;-)

Sytem của tôi: Ubuntu Xenial Xerus 64 bit.


0

Bạn có thể thử thêm một tập lệnh thực thi khi khởi động .

Ví dụ:

#!/bin/bash
conky ;

(đừng quên chmod + x it;)


Cảm ơn câu trả lời của bạn. Thật không may, mặc dù tôi đã thử điều này và nó không thay đổi gì cả. Tôi thậm chí đã cố gắng làm cho nó ngủ trong vài giây. Bất cứ một đề nghị nào khác?
aspersieman

xin lỗi anh chàng không có đề nghị khác. Tôi đã giải quyết theo cách này nhưng nếu tôi nhớ chính xác thì tôi đã sử dụng gnome.
user981916

Đừng lo lắng. Cám ơn sự giúp đở cuả bạn.
aspersieman

0

Đối với Unity, vấn đề của tôi đã được giải quyết bằng cách sử dụng

own_window_type override

Chính xác! Điều này không cho phép bạn giữ các widget trên màn hình nền khi nhấp vào màn hình nền hoặc hiển thị màn hình nền (Ctrl + Super + D). TUY NHIÊN sau khi hiển thị máy tính để bàn, tôi thấy bây giờ tôi có các bản sao của các vật dụng conky của mình trong đó cái cũ có dấu thời gian cố định và lớp phủ mới có dấu thời gian thay đổi. Nói cách khác, nó là một mớ hỗn độn! Tôi có quên thêm cái gì khác không?
Brad Horn

0

Đối với Lubfox với LXDE:

own_window yes
own_window_class Conky
own_window_transparent yes
own_window_type desktop
double_buffer yes

Nếu cửa sổ conky biến mất khi nhấn nút thu nhỏ tất cả các cửa sổ (hiển thị màn hình) đi vào Cài đặt-> Ứng dụng mặc định cho LXsession-> Chạy ứng dụng-> Máy tính để bàn và chọn "feh" thay vì "filemanager"

Làm việc cho tôi trong Lubfox 13.10.


0

Bản thân tôi đã thực hiện rất nhiều nghiên cứu về vấn đề này và dường như có rất ít cách giải quyết và thậm chí còn ít hoạt động tốt hơn.

  • Bạn có thể đặt conky thành một dock hoặc cửa sổ bảng điều khiển.
  • Bạn có thể đặt nó vào một cửa sổ bình thường và chỉ cần tránh sử dụng plugin / keybind hiển thị trên màn hình. Tôi thậm chí đã sử dụng đối số -w cho conky để đưa nó vào cửa sổ giả / PCManFM giả, nhưng điều đó sẽ khiến máy tính của bạn vẽ lại thường xuyên như cập nhật conky = lộn xộn. Nếu bạn không có biểu tượng, bạn chỉ cần tắt PCManFM bằng cách gõ pcmanfm --desktop-offtại thiết bị đầu cuối.

Giống như Redsandro , cách giải quyết vấn đề này là viết một tập lệnh bash đơn giản và tạo một tệp .desktop cho nó để tôi có thể đưa vào bảng điều khiển của mình để thay thế trình cắm Show Desktop. Nó sử dụng wmctrl để bạn phải tải xuống. Ngoài ra, thật không may, nó không thu nhỏ tất cả các cửa sổ, nó chỉ làm mờ chúng. Nhưng đối với nhu cầu của tôi, nó đủ:

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

0

Điều này hoạt động trong Lubfox 14.10

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

0

Tôi biết chủ đề này đã cũ, nhưng đối với bất kỳ ai khác vẫn đang vật lộn với vấn đề này, tôi chỉ muốn thêm câu trả lời của grims đó cho tôi, với một lời cảnh báo nhỏ.

Trong /etc/conky/conky.conf

own_window_type normal

và trong .conkyrc hoặc tệp chủ đề:

own_window_type desktop
own_window_hints undecorate,sticky,skip_taskbar,skip_pager

Sau một số thử nghiệm và lỗi, đây là sự kết hợp duy nhất mà tôi có thể làm việc (tôi đang sử dụng compton để minh bạch). Lưu ý, không có cài đặt "bên dưới" trong own_window_hint, vì mặc dù nó vẫn hoạt động nhưng nó khiến conky biến mất và xuất hiện lại (nhấp nháy) sau vài giây khi hiển thị máy tính để bàn. Ít nhất đó là kinh nghiệm của tôi.

HTH


0

Linux với GUI Mate / Gnome2 Ubuntish;)

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

Sẽ cập bến trên màn hình trên cùng, không ảnh hưởng đến bất kỳ hành động nào trên máy tính để bàn.

Đặt vào vị trí cài đặt:

gap_x ...
gap_y ...  

Tùy thuộc vào độ phân giải của bạn.


0

Đặt background=falsetrong .conkyrcvà chắc chắn rằng bạn không tự động khởi động Conky bằng -dcờ. Tôi đã thử mọi đề nghị khác mà tôi có thể tìm thấy, và đôi khi chúng sẽ hoạt động và đôi khi không, và ngay cả khi chúng hoạt động thì nó cũng chỉ trong một thời gian ngắn.

Lưu ý: nếu bạn vô tình thu nhỏ tất cả các cửa sổ, hãy sử dụngSuper+Dđể lấy lại Conky.


0

Tôi đã gặp vấn đề tương tự trong LXDE khi nhấp vào "Iconify All Windows" của LXPanel cũng ẩn cửa sổ của Conky. Tôi đã sửa nó với wmctrl .

Cài đặt wmctrl

sudo apt install wmctrl

Tìm tên cửa sổ của Conky

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

Để mang nó chạy trở lại:

wmctrl -a 'conky (Host)'

Tôi đã viết bằng Python một tập lệnh đơn giản mà cứ sau 50 mili giây lại gỡ bỏ Conky và đặt nó vào lúc khởi động LXDE:

bring_conky_back.py

#!/usr/bin/python

import time, os

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

Ngoài ra trong .conkyrc những dòng này có thể cần thiết:

own_window = true,
own_window_type = 'normal',

Nó hoạt động tuyệt vời.


-1

Giải pháp của tôi cho vấn đề này là thêm hai dòng này vào tập lệnh bash của bạn

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


Câu hỏi bao gồm 3 vấn đề khác nhau: 1) conky biến mất khi nhấp vào máy tính để bàn ở chế độ "máy tính để bàn", 2) giống nhau khi tất cả các cửa sổ được thu nhỏ (sử dụng lệnh Show Desktop) ở chế độ "bình thường" và "conky", 3) conky không hiển thị trong chế độ "ghi đè" ... Vấn đề này giải quyết vấn đề gì? Nó làm gì thực sự?
Sadi

-1

Trong Unity không thay đổi bất cứ điều gì, chỉ cần dán vào thiết bị đầu cuối:

gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ hide-skip-taskbar-windows false
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.