dde-dock 显卡切换插件 v1.8 —— 瞎改和重构
Tofloor
poster avatar
忘记、过去
Moderator
2020-07-19 12:05
Author
本帖最后由 zty199 于 2020-10-26 02:55 编辑

【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






Reply Favorite View the author
All Replies
1 / 5
To page
jalawov
deepin
2020-07-19 16:00
#1
本帖最后由 jiarun 于 2020-7-19 08:06 编辑

支持,厉害啊,大佬。
提个外观上的建议哈,宁愿用文字,也不要把nvidia和intel商标的位图放进去哈,不然很糊
Reply View the author
chanforever
deepin
2020-07-19 16:51
#2
大佬厉害厉害,我是第一次搞这个显卡,写的太乱了,感谢大佬的重写
Reply View the author
neko
Moderator
2020-07-19 16:53
#3
这个赞诶
Reply View the author
忘记、过去
Moderator
2020-07-19 19:11
#4
https://bbs.deepin.org/post/197367
支持,厉害啊,大佬。
提个外观上的建议哈,宁愿用文字,也不要把nvidia和intel商标的位图放进去哈,不然很 ...

emmmmmm......晚点看看能不能找到更清楚的图标,dock栏显示图标,弹出的菜单栏显示文字这样子......感觉可能更合理一点?
Reply View the author
忘记、过去
Moderator
2020-07-19 19:16
#5
https://bbs.deepin.org/post/197367
大佬厉害厉害,我是第一次搞这个显卡,写的太乱了,感谢大佬的重写 ...

让我自己写的话我估计连模板都找不着......果然还是白嫖比较香

你写的并不乱,只是文件路径有点问题,不太方便打包而已。又不是不能用.jpg
Reply View the author
jalawov
deepin
2020-07-19 19:17
#6
https://bbs.deepin.org/post/197367
emmmmmm......晚点看看能不能找到更清楚的图标,dock栏显示图标,弹出的菜单栏显示文字这样子......感觉 ...

那最好使用透明背景的矢量图,不然高分屏糊的不行
Reply View the author
神末shenmo
Moderator
Spark-App
2020-07-19 22:28
#7
那个啥,相比于用终端,弹出个窗口是不是会更好?
就算是QProcess套一个壳子也可以
提权可以用pkexec
Reply View the author
忘记、过去
Moderator
2020-07-19 22:50
#8
https://bbs.deepin.org/post/197367
那个啥,相比于用终端,弹出个窗口是不是会更好?
就算是QProcess套一个壳子也可以
提权可以用pkexec ...

昨天试过,直接用QProcess没反应......不知道是不是因为需要提权的问题。晚点看看QProcess怎么处理,或者整成类似“以管理员身份打开”那样的窗口。
Reply View the author
神末shenmo
Moderator
Spark-App
2020-07-19 23:01
#9
https://bbs.deepin.org/post/197367
昨天试过,直接用QProcess没反应......不知道是不是因为需要提权的问题。晚点看看QProcess怎么处理,或者 ...

前面加一个pkexec即可
Reply View the author
风吹过的绿洲
deepin
2020-07-20 01:52
#10
任务也显示图标就够了呀!不需要显示问题了
Reply View the author
忘记、过去
Moderator
2020-07-20 04:07
#11
https://bbs.deepin.org/post/197367
任务也显示图标就够了呀!不需要显示问题了

把大佬仓库叉过来的时候,里面只有48x48的png......等晚上我把几个小问题调整完之后看看能不能做新的矢量图,不然确实分辨率辣眼睛......
Reply View the author
忘记、过去
Moderator
2020-07-20 12:05
#12
https://bbs.deepin.org/post/197367
那最好使用透明背景的矢量图,不然高分屏糊的不行

同志,你要的矢量图来了......抠图水平比较差,凑活着看看吧,毛边实在去不掉了......
Reply View the author
zhlk1001
deepin
2020-07-20 16:25
#13
1.1版,切换Intel显卡功能,失败
Reply View the author
忘记、过去
Moderator
2020-07-20 21:34
#14
https://bbs.deepin.org/post/197367
1.1版,切换Intel显卡功能,失败

额,我这里测试的时候正常的呀......请问下失败的具体现象是什么?是说nvidia-smi里面还是显示有进程吗?
Reply View the author
lenke
deepin
2020-07-21 00:05
#15
应该是逻辑判断问题,我用的是独显,当切换时就给我警告,不让我切换
Reply View the author
忘记、过去
Moderator
2020-07-21 00:18
#16
https://bbs.deepin.org/post/197367
应该是逻辑判断问题,我用的是独显,当切换时就给我警告,不让我切换

对的......之前写错了,切换到独显之后写入的还是intel......昨天没注意,待会儿就更新。
Reply View the author
忘记、过去
Moderator
2020-07-21 00:25
#17
https://bbs.deepin.org/post/197367
应该是逻辑判断问题,我用的是独显,当切换时就给我警告,不让我切换

更新了1.1+1版本,你再试一下?应该没啥问题了......
Reply View the author
lenke
deepin
2020-07-21 00:41
#18
https://bbs.deepin.org/post/197367
更新了1.1+1版本,你再试一下?应该没啥问题了......

我能说错误依旧吗
1.0版好用。
感觉1.0版是强制转换,所以到没问题了
Reply View the author
忘记、过去
Moderator
2020-07-21 01:02
#19
https://bbs.deepin.org/post/197367
我能说错误依旧吗
1.0版好用。
感觉1.0版是强制转换,所以到没问题了

1.0的时候没考虑过写入信息的顺序问题,现在把脚本拆开之后反而问题更多了......只能慢慢改了。头疼......
Reply View the author
忘记、过去
Moderator
2020-07-21 01:54
#20
https://bbs.deepin.org/post/197367
我能说错误依旧吗
1.0版好用。
感觉1.0版是强制转换,所以到没问题了

大佬有空能再测试一下1.1+2版本吗,我这里检测显卡和切换已经没有问题了。目前检测的方式是检测nvidia-smi里面有没有显示kwin_x11进程。如果用的deepin-wm就没办法了......

不行的话尝试一下手动执行 /opt/durapps/dde-dock-switch_graphics_card/CheckConf.sh ,看看能不能正确识别显卡信息......
Reply View the author
1 / 5
To page