Windows 怎么开发配置环境来着, WSL 好像没啥用啊

2022-01-25 10:31:00 +08:00
 pupboss
机缘巧合周末搞了台 Windows 台式机,体验了一波发现响应速度都超级快,不管是浏览器还是办公套件,于是萌生了用 Windows 做开发机的念头

但是我现在没搞明白 WSL 存在的意义,我举一个场景比如 nodejs 开发

宿主机的 sublime 或者 vscode 或者 Git GUI 如果想正常使用,得在宿主机装一套 sshd nodejs eslint 这类工具,好像就没 WSL 什么事了

如果说有的程序需要 Linux 环境,ok 我用 vscode remote wsl 插件连接到 WSL ,使用 WSL 里面的开发环境,但是 WSL 挂载 git 的时候,文件权限全部 777 ,也是很影响使用

文件权限问题,实在不行我把代码放在 WSL 内部,也能忍,但是和宿主机文件传输好 jb 慢啊,5 分钟传不完 200M 的碎文件

传输慢也就还能忍,大不了全部放在 WSL 里面,但是我的工作区是用 syncthing 同步的,WSL 安装完发现 systemctl 不能用

systemctl 不能用我也认了,大不了每次手动启动 syncthing ,但是启动完发现 WSL 的端口只能在 localhost 访问,而 NAS 连不上,或者说需要额外配置才能连上

可如果我在宿主机同步 syncthing ,就又会遇到 git 文件权限 777 问题,完美循环了

所以想请教下各位,Windows 下舒服的开发姿势是什么样的,WSL 一把梭,还是宿主机一把梭,还是有什么奇巧淫技
8342 次点击
所在节点    程序员
77 条回复
creanme
2022-01-25 16:00:45 +08:00
为啥要用 wsl ?因为想用类 linux 的 shell 吗?建议试试 nushell
hwdef
2022-01-25 16:54:35 +08:00
@theprimone win11 的 wsl2 已经支持图形化了。
smallthing
2022-01-25 17:04:28 +08:00
你既然用 git 了 还用 syncthing 备份干嘛,直接自动同步到 remote repo
MYli001
2022-01-25 17:07:21 +08:00
格了上 Manjro
pupboss
2022-01-25 17:23:33 +08:00
@smallthing 因为有些改动还不足以提交成 commit ,再就是像 .env 这种虽然不适合存 git 但是多台设备之间还是得同步的,最后就是同步盘用久了还真离不开 :D
pupboss
2022-01-25 17:24:49 +08:00
@creanme 对的,linux shell 是一方面,再就是开发环境和部署环境都用 linux 很有安全感,以前见过不少 mac 或者 windows 写的代码,到 linux 就跪
Mogugugugu
2022-01-25 17:27:58 +08:00
上次有个想法、就是本地开个虚拟机,WSL 或者 Multipass 开个 Ubuntu 、在虚拟机里面开服务端,用远程开发的方式连进去。。。但是这样就是资源占用爆炸。。。
zhaol
2022-01-25 17:54:22 +08:00
@XTTX nvm 可以管理不同版本 node
XTTX
2022-01-25 18:20:10 +08:00
@zhaol #68 用什么管 python
frankies
2022-01-25 18:41:57 +08:00
wsl 用过一段时间,期间各种小问题不断,目前已经卸载 wsl ,回到 vmplayer 美滋滋
theprimone
2022-01-25 19:16:07 +08:00
@hwdef 这是现目前只支持 win11 的意思?
xQmQ
2022-01-25 20:05:05 +08:00
歪个楼,我都是把所有编译环境放到 wsl 里,甚至 git 也在里面,本机上没有,CLion 的工具链设置到 wsl 里,或者偶尔 vscode 远程一下。通过 systemd-genie 这个项目实现 systemctl
iamwho
2022-01-25 20:57:30 +08:00
https://github.com/ScoopInstaller/Scoop

Scoop 可以轻松的切换开发工具的环境,例如:

```
scoop install nodejs-lts
scoop install versions/nodejs14
scoop install python
scoop install versions/python27
node --version
v14.18.3
python --version
Python 2.7.18
python3 --version
Python 3.10.2
python2 --version
Python 2.7.18
scoop reset nodejs-lts
scoop reset python
node --version
v16.13.2
python --version
Python 3.10.2
python3 --version
Python 3.10.2
python2 --version
Python 2.7.18
```

如果你非要用 GNU/Linux 作为 OS 环境,可以试试 Vagrant 和 Multipass ,这两个也可以通过 Scoop 安装。
vagranth
2022-01-26 09:32:14 +08:00
我用 wsl2 ,基本没遇到过什么问题。
唯一一次是编译时报 kernel syscall 问题,配置文件里加了一句解决。
lysS
2022-01-26 09:53:18 +08:00
@hejw19970413 主机上 wsl --shutdown
hwdef
2022-01-26 12:49:13 +08:00
@theprimone 应该以后也是只有 win11 的 wsl2 支持,,
lzyliangzheyu
2022-01-26 20:12:05 +08:00
vscode+wsl2 搞嵌入式交叉编译感觉还行。。。。。。

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

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

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

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

© 2021 V2EX