Debian 9 stretch 解决网易云音乐(NetEase-music)的依赖问题 | Blurred code

Debian 9 stretch 解决网易云音乐(NetEase-music)的依赖问题

panda

2017/04/09

Updated:2019/01/03

Categories: linux

明明记得stretch已经冻结了,于是无聊的时候直接从jessie升级上了stretch,内核升级到4.9带来了一堆问题,但是最麻烦的还是一些旧的软件包被废弃了,导致一些软件的依赖满足不了。

网易云音乐 提供多种版本的客户端下载,我一开始记得用Deepin的版本比较好,这次也沿用了deepin的版本。Ubuntu 16.04的没测试,但是据说也可以通过同样的方法安装上。

1.安装软件包

sudo apt isntall -f 一般用于解决依赖问题,不过这次由于依赖被废弃的原因所以就没办法了。先用dpkg -i安装上下载的软件包,然后记录下缺少的依赖,再用apt remove 卸载掉网易云音乐,最后用apt install安装刚才缺少的依赖。最后会卡在libqt5libqgtk2这个依赖上(如果用ubuntu的deb的话应该还会缺失libfontconfig1

2.手动解决依赖

没有可用的软件包 libqt5libqgtk2,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
然而下列软件包会取代它:
  qt5-style-plugins:i386 qt5-style-plugins

这个软件包已经被qt5-style-plugins取代了,所以需要先apt install qt5-style-plugins.

拆包

# 先创建软件包目录
mkdir -p extract/DEBIAN
# 用dpkg解压
#注意,DEBIAN必须大写
dpkg-deb -x neteasemusic.deb extract/
dpkg-deb -e neteasemusic extract/DEBIAN

然后修改依赖

vim extract/DEBIAN/control
#在depends一栏,删除libqt5libqgtk2的依赖

重新打包

# 建立软件包生成目录
mkdir build
# 重新打包
dpkg-deb -b extract/ build/

打完的包会在build/目录下,使用dpkg -i 安装即可。

但是,这样重新打包后仍然无法运行,主要是chrome-sandbox的权限设置问题(原因不明,对打包机制不了解)

要求chrome-sandbox必须属于root:root组,并权限必须是4755.

sudo chown root.root /usr/lib/netease-cloud-music/chrome-sandbox 
sudo chmod 4755 /usr/lib/netease-cloud-music/chrome-sandbox

文章转载,修改于: debian安装网易云解决依赖问题 – FindSpace http://www.findspace.name/easycoding/1875#comment-1812