分类 通用知识 下的文章

我在公司的电脑是Windows11,而我家中的电脑除了macOS就是Linux。所以我最终回归了微软家的浏览器——Edge。原因是啥呢?

一、现代化内核

众所周知的,如今的Edge内核已经更换到了全球同步的chromium内核,这很明显的提升了浏览网页的体验。而且,微软停用IE的动作也极大推动了国内网页系统的“现代化”——连我司万年不变仅支持IE浏览器的内部系统都进行了全面更新,好用了、流畅了、不用整天琢磨着怎么保证兼容性了。

当然了,虽然默认使用chromium内核,但作为兼容狂魔的微软,还是保留了切换到IE内核的可选项。终于在微软“官方”浏览器中体验到了双内核功能——虽然已经没什么大用了。

二、垂直标签页

我最喜欢使用的就是垂直标签页功能。Edge和Chrome谁先发布的这个功能已经记不清了,但相对于顶栏来说,使用垂直标签页在非Windows系统中可以获得一个拥有更一致视觉体验的Edge浏览器,而在Windows系统中使用,更是能直接增大浏览器的内容区域高度;只显示网页图标的小标签样式就我个人的使用体验来看,感觉更清晰有条理,且可以在不压缩标签宽度的情况下获得更多的标签展示数量。当然这一点非常看个人使用标签的习惯:如果你是通过标签页名称,而不是通过网页图标来选择标签页的,那么垂直标签需要鼠标悬浮一会儿才能展开名称的操作会让你感觉更繁琐。虽然垂直标签页页也可以固定显示标题,但太吃空间了,没必要。

垂直标签页效果

三、好用的集锦

类似于Safari的阅读列表,Edge的集锦功能可以将你查找到的资料分门别类的进行整理。与收藏夹不同,每一个集锦更像是一个工作流,你可以按照工作流的顺序对添加到集锦中的页面进行排序,更可以在页面之间或直接对某一个链接添加注释,如果需要的话,也可以直接一键打开集锦中所有的链接进行查看。不过有一些美中不足,Safari的阅读列表可以设置已读未读状态,还可以设置离线可用,希望Edge的集锦以后可以视情况添加一下这两个功能吧。

集锦效果

四、好用的工作区

按照微软官方的说法,可以在多个用户中同步标签页开关状态,且每个工作区都拥有一个即时通讯的讨论组。但就我自己的使用习惯来说,即使自己使用这个功能也是非常实用的存在。首先,工作区中的标签页不会随着关闭浏览器而关闭,这就意味着你可以随意切换到其他电脑上面的Edge浏览器,重新打开这个工作区来一键恢复先前已经打开的所有页面。其次,通过工作区来进行标签分组,每次用完直接关闭窗口即可,下次再有需要可以直接开启工作区进入。就像如今我的账号下长期保留有2个工作区:OA、党校。虽然都是针对办公电脑保留的,但每天上班直接打开两个工作区即可设定好所有需要的网页,下班直接关闭浏览器走人即可,十分方便。

相对来说,有了工作区功能,标签页分组功能有没有就两可了——可能也是使用习惯导致的吧。

工作区效果

五、真正的全平台同步

不用多解释,现在市面上所有的个人硬件设备都有Edge的支持。所有我使用的Windows笔记本、MacBook、安卓机、iPhone可以随意同步——尤其是集锦、收藏夹、密码、历史记录,只需要登录微软账号即可,而且微软家的服务访问起来还不需要特殊的网络设置。真是让人欲罢不能。

六、浏览器健康助手

就我仅有的浏览器使用经验来看,至少在观感上,Edge是最有效的。长期后台的页面自动休眠,设置里也能更详细的调整节电设置,咱也不知道到底能节约多少,但作为安慰剂功能还是不错的。

健康助手效果

七、快速迭代的插件功能

这个其实不算什么新鲜的特性,但Edge如今补全了这项功能,并且在很短的时间内就实现了手机版浏览器兼容同步,还是挺出色的。而且就像前面所讲,微软域名访问起来也不需要什么额外的网络设置,实际使用下来还是十分便捷的。

电脑手机都可使用的插件功能

八、必应美图

如果你没有更改过Edge的默认主页,那么作为首页背景的必应美图我认为也是提升使用体验的一项内容。有一说一,确实赏心悦目。再将推荐、标签等全部关闭,一个简约而美观的Edge首页便实现了。

简洁好看的首页

顺便一提,你发现了吗,微软开始重新启用msn品牌及它那经典的蝴蝶标了。如今Edge 默认主页的信息流已经变为由msn 咨询提供了——或者说更换了标志。这源自双十一时微软重启msn品牌的决定。

九、自然语言朗读屏幕

虽然不是什么高科技事物,但可以直接使用AI语音获得更自然的朗读音色我认为是一个亮点。对于普通话,你甚至可以得到很熟悉的音色。再配上一个背景音乐,直接可以上传短视频平台了。

十、摘要——总结网页内容

这也是自诩“加入AI”后出现的一个功能——而且我仅在手机端Edge中找到了这个功能。对于大篇幅文字信息的页面来说能得到一个很好的总结。虽然现在有很多大模型软件了,但Edge 直接集成到浏览器中也算是更方便使用了一些吧,对于我这种不喜欢四处注册账号的人来说还是挺亮点的。

好用的网页总结

总结

其实我使用浏览器只有最基本的需求,能正常显示网页,响应能跟上操作就行了。而Edge 这个微软家族的“新起之秀”,相对Chrome 有着更简单的同步体验,相对Safari 有着更全面的平台兼容,相对国内一众浏览器有着更简单的操作界面。虽然各项功能都不是最出众的,但掌握“中庸之道”的Edge 使自己成为了继IE 后浏览器市场中又一个独特的存在。

在Steamdb 里边,有这么一个应用

ValveTestApp3043620。通过名字不难看出来这是一个测试应用。

但根据提示可知,它是非公开状态的。因此你无法直接在Steam 中搜索到它,只能在Steamdb 中看看它是做什么的。

先来看更新历史。

你可以看到一些知名游戏比如求生之路2、gmod等等,其中还夹杂着一个很值得注意的工具名——proton-arm64. 也就是说,G胖不止直接参与了Archlinux的合作,同时还默默的测试着proton兼容层——运行在ARM架构上的兼容层。而其中列出的这些游戏名称,便意味着这些x86游戏可以通过ARM版proton兼容层运行在ARM芯片的设备上了。

至于如何实现的,继续往下翻便可以找到大概的答案:

引用了FEX组件。根据这个开源项目的介绍,FEX可以在ARM架构主机上执行x86程序的二进制代码。这下解释通了。

不过,在这个过程中有没有发现另一个眼熟的组件呢?

waydroid,又一个开源项目。其可以在Linux系统上启动一个完整的安卓容器。

这些都为了什么,现在你可以大胆猜测了。就我个人而言,几乎可以确定的是:第一,非x86芯片上运行Steam是可行的;第二,Steam打算通过兼容安卓程序来扩充Linux版Steam可以执行的程序数量。

可能有人问了:为什么是针对Linux版本而不是Windows或者macOS呢?除了waydroid只支持Linux这一个原因以外,来看看SteamDB中这个测试应用的Metadata页。

前面的这些内容无关紧要,主要来看Additional Information的兼容工具这块内容。

可以看到,无论是waydroid还是proton-arm,“to_oslist”一项的参数全部单一指向了Linux。所以可知当前的测试仅面向了Steam for Linux 这一个平台。

理解了这些之后,我觉得可以一起给G胖磕一个了。

之前的文章我们已经提到Valve与Archlinux开始了直接合作。而现在又有如此的兼容层参与测试,很难不去考虑Valve正打算通过兼容层形式极大的拓宽Steam的运行平台。而至少在目前来看只测试Linux版本Steam,极有可能是因为Linux在ARM平台上也可以运行的很好,且相对于Windows有着更好的定制性。那这可能就代表着在ARM版proton成熟之后,其推出的Steam Deck便可从当前AMD的CPU转向如高通等更适合移动设备的ARM架构芯片了。

就像之前的文章所说的:proton的目标已经不像是一个Windows转Linux运行的兼容层了,而正在逐渐进化成一个目标平台。

G胖的Steam帝国,不敢想。

9月27号,arch的邮件列表有一个话题

We are excited to announce that Arch Linux is entering into a direct collaboration with Valve.

G胖又发力了。

首先,简单说说为啥这俩会有合作。众所周知,valve推出了Steam Deck,而其搭载的操作系统SteamOS,便是基于archlinux构建的发行版。

接下来,简单聊聊这个合作。当然,我不会在这儿预测G胖对Linux生态会有多么深远影响,只想跟各位就着这个邮件列表来简单看看,至少就直接合作的Archlinux以及G胖基于Arch构建的SteamOS来说,其会有哪些改变。

这个主题内已经很明确的指出了:Valve is generously providing backing for two critical projects that will have a huge impact on our distribution.。哪两个方面呢?

一个构建服务、一个签名机制。这可能对于arch的包维护者来说是一个影响人生轨迹的改变。目前,arch 在构建软件包时部分操作仍需要手动干预:如手动开始构建、手动使用自己的密钥给构建好的包进行签名。这使得同一个软件包,对于不同的软件架构,包维护者只能多次重复上述操作才能完成全平台维护工作。这好吗?这不好。

一旦valve的这两项内容实现了,即可为arch带来类似SUSE的OBS的操作流程:维护者只需进行资源的修正,多平台打包及签名工作即可让构建服务自动完成。

那如上这些意味着什么呢?

首先几乎可以确定的是,SteamOS基于Archlinux定制的这个条件在相当长的一段时间里是不会改变的了——只要这个合作真的可以持续下去的话。

其次,就目前针对valve的各种传言,valve如此深度的参与arclinux的建设更可能是其为自己下一步进军arm架构或者安卓架构的前一步布局。试想,一旦构建服务完成,无论是哪一种架构的软件包都可以更轻易的构建,那么SteamOS将不只是仅可以运行在x86架构的单一架构发行版,而是可以轻易的适配多种CPU架构的全方面操作系统,进而为Steam提供更多的运行平台。而Proton——这对于Windows用户可能也很陌生:SteamOS可以运行大多数游戏便归功于Proton这个中间层——一旦这个实现了自动构建和签名,那么Proton套件也可以通过一套设计而更全面的兼容于多种架构的硬件。那么会不会有这么一种可能:游戏开发者只需去适配Proton
套件,不需要再管运行proton的是哪种系统了。那如此一来,Proton便成为了一个平台,只要Proton可以运行,那么适配了Proton的游戏便可运行,这无疑简化了游戏适配操作系统的简易度,是一个值得期待的未来。当然,如此一来,Valve的VR眼镜芯片切换到其他更经济的架构便也是轻而易举了。

总之,Valve为 archlinux带来的改变,可大可小。就像Arch的这个邮件列表所说:

This opportunity allows us to address some of the biggest outstanding challenges we have been facing for a while.

转眼都到了2024年了。回看一下2023年,我居然发布了整整16个乱七八糟的内容,我实在太勤奋了。

那么,作为一个以类unix系统教程碎片为主的频道,在新年之际跟你分享一下2023年的一些变化。

更新频率降低的最主要原因就是莫名其妙的没有太闲着,而没有太闲着导致的结果就是很少打开家中常用的电脑,而不用家中电脑就意味着我这一年实际上很少使用Linux或者macOS系统。可以说,我在2020年换掉archlinux时候的预言在2023年得到了完美的体现。属实是:不是不报时辰未到。

但即使使用的频率很低,我还是将ubuntuunity更换到了Debian12。这可能是我这一年中最大的一个更改,这其中的具体原因我也有分享过,可以回看一下。

提到了乌班图,这让我想到了2023年乌班图的一个改变人生轨迹的变化:引入了基于flutter的应用商店。这项调整体现在了前几个月发布的乌班图23.10版本中,用以替代老朋友——乌班图软件中心。相对来说,新版本的商店有着更现代、更流畅、更一致的使用体验,可能也会助力乌班图全局snap化的布局。

可能你觉得使用flutter开发应用商店与全局snap化没啥关联,不过乌班图在2023年2月宣布,官方版本不再支持flatpak格式软件包开箱即用你又如何看待呢?很明显,乌班图为了推广并应用自己发布的snap格式软件包在自己的系统上不遗余力,撤销开箱支持flatpak可以说是最明显的一项措施。不过仅仅是无法开箱即用,你还是可以手动部署相关的程序以恢复flatpak支持。

顺带一提,即将推出的ubuntu24.04为长期支持版本也有一个新的变化,那便是它将可以获得长达12年的更新支持——当然,这需要你注册ubuntu pro。不过这项服务对于个人用户来说是免费的,如果你习惯并长期使用乌班图的话,安装这个版本并加入ubuntu pro也不失为一个好的选择。

你方唱罢我登场,与ubuntu所处的Debian分支相对的,则是RHEL分支中一个改变人生轨迹的变化:RHEL与2023年中旬宣布限制其源码访问。现在看来这个大概是转变CentOS性质的接续步骤:目前的CentOS完全可以说是RHEL的测试版,而曾经的CentOS则可以看作是RHEL的免费版。两者位置的变更似的RHEL可以将全部精力投入到企业客户上,而无需再考虑普通用户。这个消息在刚发布时反响剧烈,不过就目前来看,这更多的改变了RHEL下游发行版的生存轨迹,对于其他分支,甚至RHEL本身的企业用户来说,影响不大——暂时不大。

现在从发行版层面剥离出来,看看内核层面改变人生轨迹的变化:支持周期从六年缩短至两年了——我是说LTS内核。这个变化大概对用户来说影响不大,毕竟现在常见的发行版,要么像SuSE,不更新内核主版本,但自己长期单独维护,以至于跟用新内核没啥区别;要么就像Arch,有新的就直接给更新上来了。但支持周期的缩短对与内核维护人员来说可是重大利好——再也不用管理那么多没啥人用的旧版本内核了。

上面这些2023年Linux世界的变化是好是坏还请各位评判。不过,Linux版Steam使用率超过macOS,从哪种角度来看到可以算是2023年Linux世界一个不错的消息吧——当然了,这俩货加起来都追不上Windows的零头,不过,这至少证明Valve这几年在Linux游戏领域所做的不懈努力不是白费的——要知道,为了能让Linux运行Steam 中大多数的游戏,Valve从大概疫情前便开始基于wine来开发Linux 的游戏兼容层proton,并在这些年中取得了极大的进步。截止目前,Steam上热门游戏通过官方测试可以运行的已经超过了10000款,而根据玩家的测试,这个数量可以上升至大约17000款。我想这对于一名普通玩家来说已经不是一个小数字了。

但诚然,目前这个兼容层还不是十全十美:比如联网游玩的游戏,反作弊插件目前还无法正常运行。但车到山前必有路,由于Valve的proton套件是开源的,因此针对部分特定游戏,有个人开发者定制了proton套件,使得可以通过定制版套件达到正常运行带有反作弊插件游戏的目的。不过这些仍只是个例,Linux联网游戏任重而道远。

以上便是跟各位分享的2023年Linux世界的一些重大的、改变人生轨迹的变化。祝各位能在这曲里拐弯的人生中好好生活。

视频点此

海信自己的系统实在是不稳定,三天两头自己重启;本身只有一个墨水屏,单纯待机的话耗电确实挺不错,但但凡打开点啥程序,电量眼瞅着就往下掉了。所以在得知海信的墨水屏手机可以root了之后便跃跃欲试。但“官方”的教程非常简洁,解bl锁与root分成了两个板块,而且有些地方描述的比较学术性(我的意思打算照抄完成root操作是不现实的),所以我在官方教程的基础上,参照我自己成功root的过程,编写一个将解bl锁与root结合在一起的、尽量可以做到照抄即可的说明,也许能助力一些机主的root工作吧。

注意:所有操作均在Windows下实现,使用Linux实现的我感觉应该也不至于看这个了…
注意:下面均以海信A5pro CC为例,其他型号类似,只是需要注意安卓版本

一、下载并部署环境

  1. 官方解bl锁教程页,下载教程页中的SPD_Driver_R4.20.4201并安装
  2. Release,下载最新的解锁工具

    1. 下载自己手机型号的包,如hisense_a5procc.zip
    2. 下载spd_dump_231002.zip
  3. Magisk教程页Android 10 and up,下载最新的root工具

    1. 根据使用电脑的位数,在[1]python2处选择对应的下载。如果选择x86版本,需额外下载OpenSSL
    2. 点开[2]avbtool的链接,点击Code - Download ZIP
    3. 点开[4]Android Image Kitchen,往下翻到Downloads模块,下载Android.Image.Kitchen.v3.8-Win32.zip
    4. step3位置,下载rsa4096_vbmeta.pem
    5. 前往adb下载页或其他可以访问的站点,下载adb
  4. 解压、安装上述文件

    1. 解压hisense_a5procc.zip,假设文件夹位置在%DESKTOP%\root\
    2. 解压spd_dump_231002.zip,覆盖到上述目录
    3. 安装3.1步骤下载的python2,保持默认设置,并注意勾选添加到路径(Add to Path)若为x86版本,额外下载了OpenSSL,一并以默认配置安装
    4. x64的Python2的压缩包中有OpenSSL安装程序,x86的则已在3.1另行下载。按默认配置进行安装
    5. 打开3.2步骤下载的压缩包,里边有一个文件夹。打开这个文件夹,将其中所有文件解压,假设解压文件夹位置在%DESKTOP\magisk\
    6. 解压Android.Image.Kitchen.v3.8-Win32.zip%DESKTOP\magisk\,并将得到的这个文件夹名称修改为AIK
    7. 打开3.5下载的adb压缩包,展开到可以直接看到adb所有程序文件的文件夹,将这些文件解压到%DESKTOP\magisk\

部署完成,可以开始进行解锁root工作了。

二、解bl锁

  1. 文件管理器切换到%DESKTOP%\root\文件夹
  2. 按照SupportList的按键方式启动手机,进入下载模式(海信A5pro CC的按键为音量+、音量-、电源全部按下,持续7~10秒)
  3. 将手机与电脑连接,双击onekey_fdl1.bat开始一键解锁过程

注意

  1. 第2、3步需要在30秒内完成。而对于墨水屏手机,进入下载模式与否屏幕上难以分辨,因此先将数据线连接到手机,然后按下按键7秒左右,再打开bat文件,最后将数据线与电脑相连。此时观察电脑上打开的命令提示符,若开始有跑数据则说明成功进入了下载模式,否则断开连接重新操作。
  2. 就我个人操作来看,如果三个按键真的同时按下,手机不会响应任何操作。因此建议先按下电源键,然后再立刻按下音量+与音量-,这样成功的概率会高一些。

三、root

再次提示:这里是假设使用的设备是海信A5pro CC
  1. 获取boot.img

    1. 在命令提示符中打开%DESKTOP%\root\目录
    2. 同二.2,进入下载模式
    3. 将手机与电脑连接,命令提示符输入spd_dump exec_addr 0x3f48 fdl fdl1-dl.bin 0x5500 fdl uboot-mod.bin 0x9efffe00 exec read_part boot 0 35M boot.img reset
    4. 待命令执行完成,便得到了手机原本的boot.img
  2. 修补boot.img

    1. 正常启动手机,将前面得到的boot.img拷贝到手机的内部存储中
    2. 手机中安装Magisk应用(建议酷安下载,至少还算正规)
    3. 打开Magisk,点击安装 - 选择并修补一个文件,选择拷贝到手机的boot.img,等待完成
    4. 现在便得到了修补后的boot.img,假如文件名为magisk_patched_cR5kd.img
  3. 重打包boot.img

    1. magisk_patched_cR5kd.img拷贝至电脑%DESKTOP\magisk\AIK中
    2. 在这个文件夹中,双击unpackimg.bat
    3. 双击repackimg.bat
    4. 现在得到了重新打包的boot.img文件
  4. 签名boot.img

    1. 将路径C:\Python27C:\Python27\ScriptsC:\Program Files\OpenSSL-Win64\bin添加到环境变量(若安装python时勾选了添加路径的选项,则此时只需增加第三个)
    2. 打开命令提示符,输入命令mklink /H C:\Python27\python2.exe C:\Python27\python.exe
    3. 输入命令python2 -m pip install pycryptodome
    4. 命令提示符切换到%DESKTOP\magisk\路径
    5. 输入命令python2 avbtool add_hash_footer --image AIK/image-new.img --partition_name boot --partition_size 36700160 --key rsa4096_vbmeta.pem --algorithm SHA256_RSA4096 --salt 5F55215FD2302D021F850B55912ED48D176784678692DC012E054B1ECD0BE025
  5. 刷入经过处理的boot.img

    1. 连接手机与电脑,手机端打开USB调试并信任此电脑
    2. 在三.4.5状态的命令提示符中,输入命令adb reboot fastboot,手机会重启并进入fastboot模式
    3. 待手机成功切换模式后,命令提示符中输入命令fastboot flash boot AIK/image-new.img
    4. 待命令执行完成,输入命令fastboot reboot

至此,你的海信A5pro CC就已经root完成了。

以上内容,对于相同型号的用户可以直接照葫芦画瓢,保证每一步都是成功执行的,那么成功root的问题就不会太大;而对于其他型号的用户,需要注意进入下载模式按键不同,三.1.3步骤中exec_addr后面的地址也不同。这部分可以直接复制%DESKTOP%\root\manual_command_fdl1.txt中第一行的相同字段;还是这一步,倒数第三块的参数(我这里是35M)需要根据安卓版本来确定。具体方法可以参考下面的第二条链接。


相关链接

  1. 解bl锁
  2. 刷入magisk

视频点此

不管是Windows还是Linux,又或者是macOS,都存在一个字符操作界面——终端,其中有很多直接输入便可使用的命令。那么这些命令都存在哪里了,又为什么可以直接调用呢?

这得益于一个所有操作系统都通用的一个概念:环境变量。终端下可以直接使用的命令都是由名为PATH的环境变量明确的。这个环境变量存储了很多路径信息,只要一个命令的可执行文件被放在了这些路径中,那么在终端中便可以直接通过输入这个可执行文件的文件名来实现直接使用,而无需通过输入绝对路径来调用。

如何知道哪些目录可以实现这一点呢?只需要查看PATH这个变量的值即可。

在Linux中,有很多方法可以实现查看环境变量信息。这里首先推荐一个比较好用的命令export。终端中直接输入即可查看当前用户下所有已经定义了的环境变量;使用export 变量名可以进行单独查看;使用export 变量名="变量值"则可以直接定义一个环境变量的内容。

对于PATH变量,一般来说会包括下面几个路径

  • /usr/bin
  • /usr/local/bin
  • /bin
  • /usr/games #这个是在使用Debian时候发现的。没想到竟然把游戏的可执行文件单独拿出来了…

那有没有办法自定义这个路径呢?

就像前面说的,直接定义即可。比如

export PATH=自定义的路径:$PATH 

这就是自定义PATH环境变量的基本写法。其中:

  • 使用冒号区分不同的路径
  • 路径写入的顺序区分了优先级。越靠前越优先检索使用
  • 一定在最前面或者最后面写上$PATH以保证原本的PATH信息不会被覆盖掉

自定义PATH是比较有用的。比如经常使用单独下载的程序,那么可以定义一个专门存放这些应用的路径,将其添加到PATH中。这样在终端下便可以直接输入程序启动命令来使用,而无需先进入到对应路径再执行,或者想方设法的将程序安装进系统了。而对于Windows,自定义路径可能不太常用,但如果有兴趣,你可以查一查安装python2.7的教程