从安装xfce4.12中产生的疑问

在与Petit讨论后(见[大家元宵节快乐!)),开始想往stable分支。于是重装系统,回到了jessie。安装完jessie后,然望能够使用xfce4.12(jessie中的xfce是4.10)。于是将源由jessie改变stretch。然后更新升级(update & dist-upgrade)。

升级后xfce4.12倒是安装好了,可是问题产生了:版本由原来的jessie变为 testing-updates sid,对此表示迷乎。请教高手们给予解释。

我的理解是这样的:

jessie对应的xfce版本为4.10.1,testing对应的版本为4.12.1,unstable对应的版本为4.12.2。参考:wiki.debian.org/Xfce

虽然源配置为testing或stretch,升级后xfce由原来的4.10.1变为4.12.1,但在dist-upgrade后,xfce4.12.1继续升为4.12.2,从而使依赖不再满足于testing,迫使系统版本升级为sid。

下面是我用的源文件:

deb http://mirrors.163.com/debian/ jessie main non-free contrib deb-src http://mirrors.163.com/debian/ jessie main non-free contrib deb http://mirrors.163.com/debian/ jessie-updates main non-free contrib deb-src http://mirrors.163.com/debian/ jessie-updates main non-free contrib deb http://mirrors.163.com/debian-security/ jessie/updates main non-free contrib deb-src http://mirrors.163.com/debian-security/ jessie/updates main non-free contrib

testing 目前为 4.12.2
packages.debian.org/stretch/xfce4

不添加 sid 的源怎会升级到 sid?

可能安装 4.12 牵扯到的依赖太多,升级了 base-files 这个包。(包含 /etc/debian_version)
这意味着混源混得有些过分了。一般来将混源装一两个包可以,混大了就会变成 ‘FrankenDebian’

从 testing 安装 xfce4 不需要 dist-upgrade
只需要 apt-get -t testing install xfce4
wiki.debian.org/DontBreakDebian
Don’t make a FrankenDebian. Debian Stable should not be combined with other releases.

可尝试用 Mepis MX 15 源获取 xfce4.12
reddit.com/r/debian/comment … 12/cq434ou
不知他们的 backport 做的是否恰当

在jessie中,编译安装了4.12。不过出现了点问题,见 forum.ubuntu.org.cn/viewtopic.php?f=165&t=475408。上次编译安装也出现过类似问题,一样也没有解决。

不想问安装xfce4,想知道,用CD1装的Debian,换成testing源 然后 aptitude update && aptitude upgrade 需不需要 aptitude dist-upgrade?
新人求解 :laughing:

一般是不需要的

[quote=“Petit”]
不想问安装xfce4,想知道,用CD1装的Debian,换成testing源 然后 aptitude update && aptitude upgrade 需不需要 aptitude dist-upgrade?[/quote]

apt-get dist-upgrade = aptitude full-upgrade = aptitude dist-upgrade
(This command was originally named dist-upgrade for historical reasons, and aptitude still recognizes dist-upgrade as a synonym for full-upgrade.)

upgrade 绝不会为了升级而卸载现有的包,而 dist-upgrade 允许卸载现有的包
升级中经常出现新包替换旧包,或升级新包需要移除旧包的情况。
如只用 upgrade,这些包不会被升级
使用 dist-upgrade 则会彻底升级

@vickycq @yangdawei 明白了: )

@vickycq 看来用dist-upgrade是由jessie升到sid的根本原因。