Tôi sử dụng cả Gnome và KDE Plasma trên Ubuntu 20.04. Tôi đã sử dụng tính năng 'Chỉnh sửa ứng dụng' trong Plasma để Firefox bắt đầu sử dụng cạc đồ họa chuyên dụng của mình. Tôi cũng đã cài đặt một số bản cập nhật bằng cách sử dụng Discover in Plasma (điều mà tôi thường không làm). Đây là những cập nhật từ nhật ký:
Nâng cấp: grub-common:amd64 (2.04-1ubuntu26.11, 2.04-1ubuntu26.12), ubuntu-advantage-tools:amd64 (20.3, 27.0.2~20.04.1), grub2-common:amd64 (2.04-1ubuntu26. 11, 2.04-1ubuntu26.12), grub-pc:amd64 (2.04-1ubuntu26.11, 2.04-1ubuntu26.12), grub-pc-bin:amd64 (2.04-1ubuntu26.11, 2.04-1ubuntu26.12), grub -efi-AMD64-bin:AMD64 (2.04-1ubuntu44, 2.04-1ubuntu44.2), grub-efi-AMD64-signed:AMD64 (1.167+2.04-1ubuntu44, 1.167.2+2.04-1ubuntu44.2)
Sau đó, tôi đăng nhập lại vào Gnome và thấy rằng Firefox đã biến mất khỏi menu Ứng dụng và phần 'Đã cài đặt' trong Trung tâm phần mềm. Tôi có thể tìm kiếm nó trong Trung tâm phần mềm và nó cho biết nó vẫn được cài đặt. Tôi thậm chí có thể truy cập và khởi chạy nó từ /usr/share/applications. Tôi vẫn có thể chạy nó trên KDE Plasma. Nhưng trên Gnome, nó sẽ không hiển thị trong menu Ứng dụng mặc dù đã gỡ cài đặt và cài đặt lại hai lần. Tôi thậm chí còn hủy bỏ những gì tôi đã làm ban đầu trên Plasma về card đồ họa chuyên dụng nhưng điều đó không tạo ra bất kỳ sự khác biệt nào. Cuối cùng, tôi đã cố gỡ cài đặt nó trên Gnome bằng Trung tâm phần mềm và sau đó cài đặt nó từ Plasma bằng Discover nhưng cũng không được.Điều kỳ lạ là tôi đã thực hiện thay đổi cài đặt tương tự đối với GPU chuyên dụng cho ba ứng dụng khác và tất cả đều ổn, nhưng Firefox sẽ không xuất hiện trong menu Ứng dụng, vì vậy tôi không chắc liệu sự cố có phải do nguyên nhân hay không do chỉnh sửa ứng dụng hoặc do các bản cập nhật tôi đã cài đặt từ Khám phá. Làm thế nào để tôi khắc phục điều này?
CẬP NHẬT: Đây là những gì tôi tin là nội dung có liên quan từ /usr/share/applications/firefox.desktop:
Exec=firefox %u
Thiết bị đầu cuối = sai
X-MultipleArgs=false
Loại=Ứng dụng
Biểu tượng = firefox
Thể loại=Gnome;GTK;Mạng;Trình duyệt web;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/ http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
StartupNotify=true
Actions=new-window;new-private-window;
Tôi đã mở /usr/bin/firefox và đây là nội dung của nó
#!/bin/sh
đặt -e
# Trình khởi chạy Firefox chứa trình trợ giúp di chuyển Hồ sơ cho
# cấu hình tạm thời được sử dụng trong giai đoạn alpha và beta.
# Tác giả:
# Alexander Sack <[email protected]>
# Fabien Tassin <[email protected]>
# Steve Langasek <[email protected]>
# Chris Coulson <[email protected]>
# Giấy phép: GPLv2 trở lên
MOZ_LIBDIR=/usr/lib/firefox
MOZ_APP_LAUNCHER=`có $0`
MOZ_APP_NAME=firefox
xuất MOZ_APP_LAUNCHER
trong khi [ ! -x $MOZ_LIBDIR/$MOZ_APP_NAME ] ; làm
nếu [ -L "$MOZ_APP_LAUNCHER" ] ; sau đó
MOZ_APP_LAUNCHER=`readlink -f $MOZ_APP_LAUNCHER`
MOZ_LIBDIR=`tên thư mục $MOZ_APP_LAUNCHER`
khác
echo "Không thể tìm thấy $MOZ_LIBDIR/$MOZ_APP_NAME"
thoát 1
fi
xong
cách sử dụng () {
$MOZ_LIBDIR/$MOZ_APP_NAME -h | sed -e 's,/.*/,,'
tiếng vang
tiếng vang " -g hoặc --debug Bắt đầu trong trình gỡ lỗi"
echo " -d hoặc --debugger Chỉ định trình gỡ lỗi để bắt đầu (ví dụ: gdb hoặc valgrind)"
tiếng vang " -a hoặc --debugger-args Chỉ định đối số cho trình gỡ lỗi"
}
moz_debug=0
moz_debugger_args=""
moz_debugger="gdb"
trong khi [ $# -gt 0 ]; làm
trường hợp "$1" trong
-h | --Cứu giúp )
cách sử dụng
thoát 0
;;
-g | --debug )
moz_debug=1
sự thay đổi
;;
-đ | --debugger)
moz_debugger=$2;
nếu [ "${moz_debugger}" != "" ]; sau đó
ca 2
khác
echo "-d yêu cầu một đối số"
thoát 1
fi
;;
-a | --debugger-args )
moz_debugger_args=$2;
nếu [ "${moz_debugger_args}" != "" ] ; sau đó
ca 2
khác
echo "-a yêu cầu một đối số"
thoát 1
fi
;;
-- ) # Dừng xử lý tùy chọn
sự thay đổi
nghỉ
;;
* )
nghỉ
;;
thoát hiểm
xong
nếu [ $moz_debug -eq 1 ] ; sau đó
trường hợp $moz_debugger trong
ghi nhớ)
trình gỡ lỗi="valgrind"
;;
*)
trình gỡ lỗi=$moz_debugger
;;
thoát hiểm
trình gỡ lỗi=`mà $debugger`
nếu [ ! -x $debugger ] ; sau đó
echo "Trình sửa lỗi không hợp lệ"
thoát 1
fi
trường hợp `tên cơ sở $moz_debugger` trong
gdb)
exec $debugger $moz_debugger_args --args $MOZ_LIBDIR/$MOZ_APP_NAME "$@"
;;
ghi nhớ)
echo "$MOZ_APP_NAME chưa được biên dịch với sự hỗ trợ của valgrind"
thoát 1
;;
*)
exec $debugger $moz_debugger_args $MOZ_LIBDIR/$MOZ_APP_NAME "$@"
;;
thoát hiểm
khác
exec $MOZ_LIBDIR/$MOZ_APP_NAME "$@"
fi