如何在 Debian 9 上安装最新的 Firefox 版本?

Hag*_*ard 2 debian firefox

我正在运行 Debian 9,我希望始终使用最新的 Firefox 版本,而不是随此发行版附带的严重过时的 ESR 版本的 Firefox。

因此,我将/etc/apt/sources.list文件更改为以下内容:

deb http://ftp.de.debian.org/debian/ stretch main
deb-src http://ftp.de.debian.org/debian/ stretch main

deb http://security.debian.org/ stretch/updates main contrib
deb-src http://security.debian.org/ stretch/updates main contrib

# jessie-updates, previously known as 'volatile'
deb http://ftp.de.debian.org/debian/ stretch-updates main contrib
deb-src http://ftp.de.debian.org/debian/ stretch-updates main contrib

deb http://ftp.us.debian.org/debian/ sid main
deb-src http://ftp.us.debian.org/debian/ sid main
Run Code Online (Sandbox Code Playgroud)

这工作得很好一段时间。但是,我现在收到消息

The following packages have been kept back: firefox
Run Code Online (Sandbox Code Playgroud)

每次我运行“aptitude upgrade firefox”。

运行命令“aptitude dist-upgrade”会得到以下结果:

The following packages will be DOWNGRADED:
libc-bin libc-dev-bin libc-l10n libc6 libc6-dev locales 
The following packages will be upgraded:
firefox{b} 
1 packages upgraded, 0 newly installed, 6 downgraded, 0 to remove and 0 not upgraded.

Need to get 51.2 MB of archives. After unpacking 12.0 MB will be freed.
The following packages have unmet dependencies:
firefox : Depends: libc6 (>= 2.27) but 2.24-11+deb9u3 is to be installed
       Depends: zlib1g (>= 1:1.2.11.dfsg) but 1:1.2.8.dfsg-5 is installed
The following actions will resolve these dependencies:

 Keep the following packages at their current version:
 1)     firefox [59.0.2-1 (now)]                           
 2)     libc-bin [2.27-3 (now, unstable)]                  
 3)     libc-dev-bin [2.27-3 (now, unstable)]              
 4)     libc-l10n [2.27-3 (now, unstable)]                 
 5)     libc6 [2.27-3 (now, unstable)]                     
 6)     libc6-dev [2.27-3 (now, unstable)]                 
 7)     locales [2.27-3 (now, unstable)]                   
Accept this solution? [Y/n/q/?]
Run Code Online (Sandbox Code Playgroud)

非常感谢您提供任何有助于解决此问题的建议。

// 编辑:“apt policy”的输出是:

 100 /var/lib/dpkg/status
 release a=now
 500 https://riot.im/packages/debian stretch/main amd64 Packages
 release o=riot.im,a=testing,n=stretch,c=main,b=amd64
 origin riot.im
 2 http://ftp.us.debian.org/debian sid/main amd64 Packages
 release o=Debian,a=unstable,n=sid,l=Debian,c=main,b=amd64
 origin ftp.us.debian.org
 500 http://ftp.de.debian.org/debian stretch-updates/main amd64 Packages
 release o=Debian,a=stable-updates,n=stretch updates,l=Debian,c=main,b=amd64
 origin ftp.de.debian.org
 1000 http://security.debian.org stretch/updates/contrib amd64 Packages
 release v=9,o=Debian,a=stable,n=stretch,l=Debian-Security,c=contrib,b=amd64
 origin security.debian.org
 1000 http://security.debian.org stretch/updates/main amd64 Packages
 release v=9,o=Debian,a=stable,n=stretch,l=Debian-Security,c=main,b=amd64
 origin security.debian.org
 1000 http://ftp.de.debian.org/debian stretch/main amd64 Packages
 release v=9.4,o=Debian,a=stable,n=stretch,l=Debian,c=main,b=amd64
 origin ftp.de.debian.org
 Pinned packages:
 fontconfig-config -> 2.13.0-5 with priority 1001
 libfontconfig1 -> 2.13.0-5 with priority 1001
 libnss3 -> 2:3.37.1-1 with priority 1001
 firefox -> 60.0.1-5 with priority 1001
Run Code Online (Sandbox Code Playgroud)

GAD*_*D3R 5

1) 修复“以下软件包已被保留...”错误。

编辑您的 sources.list 如下:

deb http://ftp.de.debian.org/debian/ stretch main
deb-src http://ftp.de.debian.org/debian/ stretch main

deb http://security.debian.org/ stretch/updates main 
deb-src http://security.debian.org/ stretch/updates main 


deb http://ftp.de.debian.org/debian/ stretch-updates main 
deb-src http://ftp.de.debian.org/debian/ stretch-updates main 
Run Code Online (Sandbox Code Playgroud)

删除中断的 Sid url apt.

创建(编辑现有文件的内容)/etc/apt/preferences具有以下内容的文件:

Pin: release a=stable
Pin-Priority: 1001

Package: *
Pin: release a=stable-updates
Pin-Priority: 1001

Package: *
Pin: release a=proposed-updates
Pin-Priority: 1001

Package: *
Pin: release o=Debian
Pin-Priority: -10
Run Code Online (Sandbox Code Playgroud)

然后运行 ​​remove Firefox 并从稳定版重新安装其依赖项:

apt update
apt purge --autoremove firefox
apt dist-upgrade
Run Code Online (Sandbox Code Playgroud)

某些软件包(可能)需要通过以下方式手动重新安装:

apt --reinstall install package
Run Code Online (Sandbox Code Playgroud)

请不要使用apt removeapt purge删除它们。

2) 在 debian 上安装最新可用的 firefox:来自aptfirefox 的软件包是更新的软件包,但版本是58.x(不是过时的软件包)

如果您需要安装最新版本,您可以使用snap它是安装最新 firefox 软件包的安全方式。

apt install snapd
Run Code Online (Sandbox Code Playgroud)

检查可用版本:

snap find firefox:
Run Code Online (Sandbox Code Playgroud)

示例输出:

firefox  60.0-2   mozilla    -      Mozilla Firefox web browser
Run Code Online (Sandbox Code Playgroud)

安装firefox 60.0-2

snap install firefox
Run Code Online (Sandbox Code Playgroud)