风吹过的绿洲
deepin
2020-08-15 14:36 https://bbs.deepin.org/post/197367
感谢,已经更新了,现在支持颜色跟随系统主题了......大小的话暂时没改出来,以后有时间再研究看看......
...
嗯嗯,现在显示正常了。
可是我从intel切换到nvidia,注销后仍然是Intel,手动运行脚本却可以切换成功。
脚本内容都执行了吗?
- #提示文本
- echo '即将切换至NVIDIA显卡,请输入登录密码,回车后会自动注销。在此之前,请保存好当前的工作。'
- #获取NVIDIA显卡的BusID
- NVIDIA_BusID=`lspci | egrep 'VGA|3D' | grep 'NVIDIA' | cut -d ' ' -f 1 | sed -r 's/0?(.)/\1/' | sed -e 's/:0/:/g' -e 's/\./:/g'`
- #写入Xorg配置文件
- echo 'Section "Module"
- Load "modesetting"
- EndSection
- Section "Device"
- Identifier "nvidia"
- Driver "nvidia"
- BusID "PCI:'$NVIDIA_BusID'"
- Option "AllowEmptyInitialConfiguration"
- EndSection' | sudo tee /etc/X11/xorg.conf.d/20-nvidia.conf > /dev/null
- #写入LightDM启动脚本
- echo '#!/bin/sh
- xrandr --setprovideroutputsource modesetting NVIDIA-0
- xrandr --auto
- xrandr --dpi 96' | sudo tee /etc/lightdm/display_setup.sh > /dev/null
- #为启动脚本赋予可执行权限
- sudo chmod +x /etc/lightdm/display_setup.sh
- #修改LightDM配置文件
- sudo sed -i 's$#display-setup-script=$display-setup-script=/etc/lightdm/display_setup.sh$g' /etc/lightdm/lightdm.conf
- #写入内核参数,防止撕裂问题
- echo 'options nvidia-drm modeset=1' | sudo tee /etc/modprobe.d/nvidia-graphics-drivers.conf > /dev/null
- #删除prime的配置
- sudo rm /etc/X11/xorg.conf
- #重启LightDM服务,注销即可切换
- sudo service lightdm restart
Reply Like 0 View the author
【10.26】版本更新:1.7.1 -> 1.8
修复之前版本中,切换显卡调用外部脚本时进程阻塞导致 dde-dock 无响应的问题。
虽然之前说不知道还能更新啥了......但是 1003 更新后又逼死强迫症患者,插件被设置了宽度限制,只有日期插件被豁免了 XD (详见大佬 q77190858 的帖子)
大佬的插件要显示的内容多,只能通过改插件识别名称来伪装自己是日期插件,从而不被遮挡。但是呢,我这个又不是啥复杂的玩意儿,就显示一个图标而已,改名称感觉怪怪的。
于是又折腾了一下午,尝试着想让图标跟随高度或者宽度缩放来着,结果一次都没成功......浪费了几个小时之后决定放弃......
转念一想,既然图标太大会被遮住,那就干脆缩小到不会被遮挡就行了呗~于是,就照搬了其他几个系统插件的绘制模式,给缩小的图标套了一个框,算是统一了一下风格吧......只不过 20x20 的图标确实有点小,效果一般。先凑活着看看吧,外观也不是啥重点......
dde-dock-graphics-plugin_1.8.tar.gz
* P.S > 后面主要是想有没有办法能在 CMake 项目里使用 QtLinguistTools 来翻译文本适配语言环境,今天尝试了许久又失败了......notify-send 也还是用外部指令直接执行的,想导入 libnotify-dev 库用代码实现系统通知也失败了......不知道啥时候才能把外部脚本全部抛弃哦......CMakeList.txt 是真的搞不懂......
*如果切换失败导致无法进入图形界面,可以 ctrl + alt + F2 进入 tty2,输入用户名密码登录后执行 /opt/apps/dde-dock-graphics-plugin/files/bin/Rescue.sh 清空配置文件。
原贴地址:https://bbs.deepin.org/post/197280
大佬的仓库地址:https://github.com/mywhat/DDESwitchCard
(去围观大佬啊,点个赞评个分啥的,再 Star 一下~)
对我这种小白来说,论坛大佬 chanforever 写的显卡切换插件是真的牛逼,总比我只会直接用脚本切换显卡方便不少。以前都是把脚本路径放在 .zshrc 里面用 function 调用的,还是不太方便。有了插件就好多了,有点显卡控制面板的感觉了~(虽然现在还是得自己先把显卡驱动装好才行......)
根据大佬的源码,经过了一番研究和改动,去掉了一些不合理的文件放置位置,增加了一个初始化脚本和自动检测配置文件是否存在的功能,打了一个 deb 包放上来给各位勇士试试。(大佬原来的文件摆放位置导致没有办法打包,因为 postinst 脚本执行时是 root 权限,没找到合适的办法放在用户主目录......只能挪走了。)
P.S.请先确保自己正确安装了 N卡闭源驱动 再尝试这个deb包!还有 nvidia-smi 也需要自己安装,毕竟官网的 .run 文件安装和官方源的 nvidia-driver 还是有区别的......
被我叉走的仓库在GitHub上:https://github.com/zty199/dde-dock-switch_graphics_card
码云:https://gitee.com/deepin-opensource/switch-graphics-card