Làm cách nào để gỡ lỗi tệp .desktop?


10

Tôi có một .desktoptệp để bắt đầu một chương trình python trong một môi trường conda cụ thể, như thế này:

[Desktop Entry]
Version=1.0
Name=Qutebrowser
GenericName=Web Browser
Comment=View and edit files
MimeType=text/html;
Exec=bash -c "source /vol/home/kaipingga/anaconda3/bin/activate qutebrowser; qutebrowser"
Icon=/vol/home/kaipingga/.config/qutebrowser.svg
Type=Application
Terminal=false
Categories=Network;Utility;X-Python;
StartupWMClass=Qutebrowser
X-Desktop-File-Install-Version=0.20

Điều này được sử dụng để làm việc, nhưng tôi đã điều chỉnh môi trường python của tôi gần đây.

Bây giờ, trong một thiết bị đầu cuối cùng một lệnh

$ bash -c "source /vol/home/kaipingga/anaconda3/bin/activate qutebrowser; qutebrowser"

chạy ứng dụng, nhưng .desktoptập tin thì không. Làm thế nào để tôi tìm ra do lỗi đó là gì?

Các .desktoptệp khác của tôi chạy tốt, tôi cho rằng có điều gì đó không ổn với môi trường Python của tôi, hiện tại nó khá hack (đó là lý do chính để chạy nó trong một condamôi trường chuyên dụng để bắt đầu).

Zachary Brady ban đầu đề xuất (nhưng có vấn đề ) xdg-opencó thể chạy .desktopcác tệp, nhưng nó cho tôi một hộp thông báo cho biết

lỗi

Không thể thêm plugin vào bảng điều khiển

Không tìm thấy phiên bản chạy nào của bảng xfce4

cả cho cái này .desktopvà cái khác mà làm việc khác. (Tôi đang chạy Ubuntu đơn giản, không có xfce).


Tôi đã xóa câu trả lời của mình sau khi đọc thêm về nó xdg-openđã bị lỗi khá lâu và chỉ mở các biểu tượng trên màn hình trong trình soạn thảo văn bản ...
Zachary Brady

Hóa ra, vấn đề là không được giải thích ~(xuất hiện dưới dạng Riết ~, chứ không phải là /home/anaphoryRiết) trong đường dẫn Python, mà tôi đã tìm ra bằng cách thêm env > check;vào giữa lệnh. Nhưng tôi chắc chắn có một cách tốt hơn để gỡ lỗi này!
Phản vệ

Câu trả lời:


3

Bạn cũng có thể sử dụng công cụ xác thực tập tin xác thực máy tính để bàn để tìm thêm vấn đề.

(xem thêm: Làm cách nào để xác thực / xác minh tệp .desktop? )

# Result for your example
$ desktop-file-validate qutebrowser.desktop 
test.desktop: hint: value "Network;Utility;X-Python;" for key "Categories"
in group "Desktop Entry" contains more than one main category; application
might appear more than once in the application menu

1

Trên Linux Mint, dịch vụ Trình quản lý tệp được đặt tên nemo, nemo có thể được thoát bằng cách phát hành:

nemo -q

Khi trình quản lý tệp của bạn bị dừng, bạn có thể mở nó trong một thiết bị đầu cuối

nemo

Bây giờ nó sẽ in nhật ký của nó tới thiết bị đầu cuối này, khi bạn mở tệp * .desktop của mình, bạn sẽ có thể thấy thiết bị xuất chuẩn của dòng Exec * .desktop của bạn.


Ồ, và khi bạn gỡ lỗi xong, Ctrl + C thiết bị đầu cuối đang chạy nemo và mở nó thông qua menu bắt đầu của bạn hoặc đăng nhập lại phiên máy tính để bàn của bạn.
ThorSummoner

0

Tôi thường thêm vào như sau để xem những gì đang được thực hiện:

Terminal=true
TerminalOptions=\s--noclose

0

xdg-openexo-openđược sử dụng để mở tệp (trong chương trình liên kết tương ứng của chúng). Họ không bao giờ có ý định tự mình thực hiện bất cứ điều gì. Để thực hiện lệnh được xác định bởi máy tính để bàn, bạn có thể sử dụng dex .

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.