Win10 的 WSLg 能否完美替代 Linux 下日常开发?

2021-06-17 13:31:11 +08:00
 einsdisp

我之前一直是在 linux 下开发( go/node/python/java 都有,但不涉及机器学习这种需要显卡的开发),积累了大量的 shell 脚本、工具链、程序、配置等,日常使用 vs code 或者 jetbrains 开发。

这么多年了,linux 的图形界面的稳定性一直挺烂的,但考虑到其生态系统与命令行的强大,一直忍了下来,偶尔桌面崩溃,或者图形界面的 bug 啥的,倒也可以忍受。

直到最近几个月常常需要远程桌面办公,linux 下就没一个好用的远程桌面,效果比微软自带的 RDP 差远了,这件事促使我决定迁移到 win10 。

虽说很多软件与编程语言的工具链,有 windows 原生版本,但我基本不考虑,只考虑 wsl,一来,我原先在 linux 下积累的大量的脚本、程序、配置,不想再重新搞一遍,二来,原生 win 下,win 的路径分隔、win 系统对 utf8 的支持烂,这些对编程并不友好。

想问问,目前阶段,WSLg 能否完美替代 Linux 下日常开发?运行 vs code 或者 jetbrains 的图形界面,运行各种编程语言的工具链,性能跟原生 linux 比,能差多少?

13342 次点击
所在节点    程序员
81 条回复
raynor2011
2021-06-18 12:43:49 +08:00
@richardwong 中文输入法用的 fcitx, 然后把系统语言改成中文
vone
2021-06-18 14:26:57 +08:00
@surfwave 你可以使用 localhost,数据会被转发到 WSL2 的系统中。
surfwave
2021-06-18 14:42:50 +08:00
@vone 如果宿主机本身开了同样端口的服务,用 localhost 会冲突的。
wccc
2021-06-18 15:21:06 +08:00
目前 还是 manjaro + kvm 虚拟化 windows 使用 remmina spice 协议连接
复制粘贴 到虚拟机没什么问题 外加一个 smb
hz2019
2021-06-18 15:55:10 +08:00
如果是用 vscode,可以直接 win-vscode+WSL,体验很好。jetbrains 对 WSL 的支持也不错,只是需要经过一些配置,比如 WSL python 开 venv,win-vscode 打开不需要配置,win-jetbrains 得写个脚本来指定目录。WSLg 的 vscode 没用过,用的 QtCreator,按键上的体验不太好,尤其和 win 上的窗口进行切换,比如 qtcreator-vim 在 insert 模式下切到 win,在切回来,有时候会莫名其妙不停自动输入 jjjjjjjjj 。。。。
SenLief
2021-06-18 16:53:06 +08:00
@flyhaozi 是的,没啥好的办法了。只能说是能用。
crazykay
2021-06-18 18:25:52 +08:00
小前端一枚, Linux base 开发使用好多年了, 觉得 Linux 下图形界面的稳定性一点也不烂.

wechat-devtools-linux 实在没有作者跳出来维护了,腾讯更新了版本之后就折腾不好. 最近刚好 win11 出来, 搞个硬盘装来试试, 顺便恰口饭, 日子太难了

PS. 远程办公一定要远程桌面是什么逻辑? 远程桌面解决方案也挺多的啊, rustdesk 啥的
libook
2021-06-18 18:56:04 +08:00
看干啥,如果只是做做 Web 开发啥的应该没问题,但如果做系统开发可能问题会比较多,毕竟 WSL 和 Linux 差别还挺大的。

比如每次启动 IP 会变,不能使用服务管理(如 Systemd ),没法访问一些硬件设备。

目前我是用的在 Win10 上用 Cygwin 装 XServer,然后从 WSL2 里启动基于 X 的程序,可以做到让 Win10 来管理窗口。

我的配置信息在 GitHub 上,可以搜 WSL-GUI

输入法据说在 WSL2 里装 Fcitx,我没试过,平时没有输入中文的需求。

其实微软完全可以走 X 那一套,都不需要多少开发成本。
Outshine
2021-06-18 19:04:47 +08:00
wsl2 太难用,我已经换了 deepin 。。。
vhui
2021-06-18 20:40:05 +08:00
@libook 可以给 wsl2 设置固定 ip,systemd 也有替代方案,比如 subsystemctl 。
Donahue
2021-06-18 21:12:25 +08:00
ubuntu20.04 原生桌面我觉得挺好用,远程用自带的一个软件 好像叫 remmia
chaleaoch
2021-06-19 01:23:12 +08:00
jetbrains 和 vscode 都有了支持远程开发的方案了.

我用 windows + docker
chaleaoch
2021-06-19 01:23:27 +08:00
Showfom
2021-06-19 02:19:39 +08:00
不如虚拟机做开发环境的好
harwck
2021-06-19 09:58:38 +08:00
没有 systemctl,io performance 烂成不知道什么样,用的头疼
magicdu
2021-06-19 16:28:33 +08:00
ubuntu 用的自带的 remote desktop 感觉还可以啊
lm902
2021-06-20 02:45:56 +08:00
@harwck wsl2 有了,wsl2 就是完整的 Linux 虚拟机
harwck
2021-06-20 05:53:37 +08:00
@lm902 wsl2 也是沒有 systemd 的,但這個已經有人解決了
真正致命的是 io,就如上面有人說了,小文件一多的話我試過和 native linux 可以有上百倍的差距。
ysn2233
2021-06-20 17:03:09 +08:00
可能没法媲美 linux 开发环境,但绝对不会比 macos 差
ysn2233
2021-06-20 17:04:10 +08:00
@harwck 只用 wsl2 内部的文件系统不会吧,只是和 windows 文件系统交互比较慢,用 wslg 的目的就是直接在 wsl2 里打开 ide 了,文件性能问题应该影响不大。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/783953

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX