V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  othercat  ›  全部回复第 1 页 / 共 4 页
回复总数  63
1  2  3  4  
11 小时 28 分钟前
回复了 othercat 创建的主题 Linux 2005 年开始的 macOS 主力用户,终于要换到 Linux 了
@waahii #124 好的,最近在做一些 macOS 的应用资料的迁移,就日常使用其实也没太多影响,反正 Fedora 就是持续等,等到内核更新和应用支持大概就差不多了。接下来的确就是 Intel 显卡直通了,不过估计要 10 月份了。至于触摸板,其实目前 Fedora 下触摸板的玩法暂时没太多精力去弄,因为习惯窗口平铺之后可能更多的需要的只是焦点自动切换就好了,晚点我在学习学习~
@LakuaLakua #122 好的,我记下来,慢慢研究,多谢~
@cluefly #119 主要还是 X11 应用的字体渲染,在非整数倍的缩放下的效果差距还是很大,整数倍勉强用。不过当然可能和桌面环境配置也有关系。我不用 Linux 微信是因为我重度依赖微信的聊天记录搜索(我微信聊天记录超过 100G ),而 Linux 微信没有 Win/Mac 版本的聊天记录迁移,所以。。。
@cluefly @waahii Dropbox 图床可能不方便预览,我换到 Imgur 了

https://i.imgur.com/lmYcLLV.png
@w568w 哎,我觉得重复回复人也累,哈哈, 参考我 10 楼的回复吧,就这样了。
上面说的 “但是自己觉得 UI 和协议都是我自己写的” -> ",但是作者肯定自己觉得 UI 和协议都是我自己写的"
@body007 我个人看法:

1. 代码结构和思路肯定是借鉴 LocalSend 的,多加一个 致敬声明 就没事了,但是自己觉得 UI 和协议都是我自己写的,我只是借鉴了思路和代码框架,为啥要声明,哈哈

2. 具体协议层,就 macOS 上来说,LocalSend 自己用 Pod 的一些现成轮子组成的私有协议,和作者用另外一组 Pod 的的一些现成轮子组成的自己的另外的标准协议实现,后者算不算抄袭或借鉴,我觉得很难。

3. 我个人来说,LocalSend ,除了在雷电 3 ,4 组雷雳网桥的性能极差(可能是一些变量没考虑 20Gbps 的传输带宽之外),其他层面 LocalSend 就够了。毕竟用一直用 SSDP 真的会比目前 LocalSend 这个协议耗电。
@w568w

> 例如,LocalSend 的协议实现就是纯 Dart 编写的。

是啊,都能看到 LocalSend 的协议实现是纯 Dart 编写了,其实也可以大概判断出如果不用这些协议,使用其他 SSDP 到底是自己造轮子方便,还是借鉴代码方便了吧。

> 协议层可以就在这里。请不要把 Flutter 当成 HTML 那样的前端标记语言,它没有什么「主程序」、「前端」、「后端」的概念,编写一个操作系统模拟器都不在话下,实现一个网络协议还是非常容易的。

我说的协议层指的是 cocoapods 包这些东西,核心在这里,而不是 LocalSend 代码。简单来说,我 WireShark 抓包的内容,并不在 LocalSend 主程序实现,而是在 cocoapods 里面实现的
具体而言,可能是 https://github.com/localsend/localsend/blob/main/app/macos/Podfile.lock 这里面的

```
Reachability
network_info_plus
connectivity_plus
```

等等。

如果这些东西两者调用实现都不同,而仅仅是中间层调用 API 相似,这。。。
@w568w 补充一点我自己个人的猜测,仅仅是猜测:

作者是基于 LocalSend 的代码结构还有设计思路,自己修改了 UI ,同时自己实现了他描述当中的核心功能协议替换。

另外大家逆向的看到的主要还是基于 Flutter 打包的结构,这个结构可能写的规范的人都差不多,很难证明什么。
@w568w 没有打烟雾弹,只是描述一个事实。因为 Flutter UI 实在太好替换和借鉴,而 LocalSend 的代码结构说实话因为写的太规范,所以也可以认为有规范的人都可以写的相似。

目录结构现在我只看到大家借鉴的是主程序部分,但是主程序说老实话,只有 UI ,因为协议层都不在这里。

因此这部分我仔细看了一下引用的几个核心网络层面 Framework 的实现,其实有很多和 LocalSend 引用的不同,当然因为闭源很难证明,我也没精力和兴趣去证明。

我只想表达,协议层面自己造轮子实现,如果用 LocalSend 的代码二次开发,可能会更痛苦。
@Goooooos 所以我只是说关键代码不是基于 LocalSend 修改,因为协议层实现比 UI 还是要复杂得多(当然不一定比 LocalSend 更优雅或者安全)

我相信通过替换 Framework 可以直接使用,应该是有借鉴 Flutter 层面相关代码的,但是由于关键功能的协议层自己有实现,因此作者认为自己没有抄袭可能也有他自己的道理。
我把最新的发现更新在了这个帖子

https://v2ex.com/t/1052440

我觉得 Airclap 代码关键部分可能不是基于 LocalSend 改的。
不好意思,上面两张图顺序贴反了,不过不影响结论~
偶然看到这篇,好奇做了一个实验:

我把 Mac App Store 目前的 1.2.0 版本的 Airclap ,app 里面所有 Frameworks ,全部复制到我 1.14.0 的 LocalSend app 进行取代,见图 1
https://www.dropbox.com/scl/fi/6gzbwgvdoauktcsc7b5ts/LocalSend-with-Ariclap-Frameworks-20240625-121141.png?rlkey=69aw9r81c7krxbkd4c36rzpio&dl=0

然后直接打开这个复制后的 LocalSend app ,就神奇的得到了一个 1.14.0 版本的 Airclap 😂 ,见图 2
https://www.dropbox.com/scl/fi/tckxnniqo7sf1mk1q42br/LocalSend-with-Ariclap-Frameworks-20240625-120908.png?rlkey=d3utc61mle70b1lax5lkp9nh6&dl=0

只能说,很有趣~
@cluefly @waahii 想请教一下两位大佬关于 Firefox 如何开启 视频硬解码的 VideoEnhance 增强效果啊,我现在在 Fedora40 下 Chromium 是支持 VideoEnhance 的,如图下面 VideoEnhance 那一条,但是 FF 是不起用的。

https://www.dropbox.com/scl/fi/v5bjqa7u09ntwlwinxwkh/VideoEnhance-on-Chromium-under-Fedora-40.png?rlkey=7xqb2t50haxfmk8qieafqfdj8&st=8jevxjg9&dl=0
@jheroy 另外微信 QQ 如果是用 Android 手机,用 scrcpy 直接作为一个屏幕在 Linux 上就很简单了,我在 macOS 上也是用 scrcpy 来控制的。所以想想选择 Linux 笔电,主力手机换成 Android 手机, 大概也没有微信/QQ 的烦恼了吧😃 不过我短期还是习惯 iPhone 了。
@jheroy N 卡 Linux 只能用于 AI 了,版权相关的问题太难处理。
关于 Asahi Linux 可以参考我 12 楼说的,而且我这台续航并不比 M1 Macbook Air 差,这个还是得益于 Intel EVO 标准的原因。
“ 最新的进度大概是 H264 一年内有望,只是如今串流的核心是 HEVC ,拿 B 站的编码来看,同样一部片子,H264 1GB 大小,HEVC 是 318MB ,AVI 是 285MB ,局域网串流使用 HEVC ,无线带宽的压力是大大减少的。所以 HEVC 的硬解啥时候能在 asahi 成长呢,那个时候恐怕 Intel 16 代,17 代 U 都出来了😂”

另外我为什么要保留 M1 的 Macbook Air,还有一个原因是接下来的 macOS18 的 iPhone Mirroring 功能,所以以后一个场景就是,在家 M1 的 Macbook Air 通过 iPhong Mirroring 连接到 iPhone, 我的红米 Linux 笔电通过串流访问 Macbook Air 屏幕,这样就可以使用 iPhone 了,如果 M1 的 Macbook Air 装了 Asahi,那我的 iPhone 可能真的在家用就很烦了。
@jheroy 我个人觉得,拿现有硬件强行上 Linux 肯定会有各种问题,或者就是无止尽的折腾。我只能通过 LiveCD 尝试能够接受的硬件,然后再通过 7 天无理由之类的(不激活 Win 的笔记本一般都可以 7 天无理由)方式去试用,这样硬件问题给你的折腾就好了。
再说软件,其实 GUI 软件的更新肯定 Linux 不如其他的,但是 GNU 工具 一定是 Fedora 或 Arch 比较积极更新,所以这个还是要看到底常用的工具是 GUI 还是 CLI 的 GNU
如果都比较依赖图形界面,或者大部分都是国产桌面软件,其实 Mac 和 Win 的确是首选。我是因为我还能留一台 M 芯片的 Macbook Air 和我 iPhone 做同步,所以我之后就是 Linux 桌面加上虚拟 Win 用专用图形应用,配合 M 芯片的 Macbook Air 一起的。
至于开源编辑器是 Mac 上的好用,这个事情可能每个人都有自己的判断,为了一些特定软件留在一个操作系统当然是很正常的。
最后 Wayland 支持的软件太少,目前我还在研究,因为大部分都用浏览器或者命令行,整体没有看到太多的而问题。
X11 不支持非整数倍缩放,是的这个是问题,只能说少用 X11 吧,哈哈
@webfrogs 用 Linux 开发对我来说其实只要 ssh 之类的就足够了,我现在说 Linux 主力意味着就是桌面系统也要换了,主要还是日常使用的一些应用。
@sampeng 主题帖已经写了:我在主力 macOS 机器上有很多 Linux 虚拟机,还有移动硬盘装了很多。
1  2  3  4  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5439 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 20ms · UTC 03:19 · PVG 11:19 · LAX 20:19 · JFK 23:19
Developed with CodeLauncher
♥ Do have faith in what you're doing.