分类 视频脚本 下的文章

视频点此

如果你需要在Linux中使用Xbox one无线手柄,那么这个软件包或许可以帮助到你。

当然如果你用的是最早的xbox手柄,或者有线连接Xbox one使用的话,那么在Linux下面是可以开箱即用的。唯独对于蓝牙或者接收器方式连接会出现问题。这时我们只需安装一个包:xpadneo。这是针对Linux平台的xboxone开源驱动,我用了很长时间了,通过steam的手柄设置来分配游戏中按键是很完美的,游戏用的延迟也非常低,是一个完全可以使用的开源驱动。

直接去往它的GitHub,就可以看到安装教程。如果你想的话,直接全部下载,然后终端执行./install.sh即可。但如果你跟我一样习惯于通过包管理器统一管理的话,那对于arch用户,直接通过aur即可安装,opensuse用户,通过opi搜索xpadneo,选择不带后缀的选项,再选择home:FrauHolle源即可自动安装。ubuntu好像可以通过apt直接安装。待安装完成,重启,便可以通过蓝牙正常连接xboxone手柄了。

第一期第二期

前两天收到了这么一条私信。

这倒是提醒了我一个很早就想分享的一个小技巧,如何简单的使用不对应自己发行版的安装包程序。但在这之前想先跟各位铺垫一些内容:Linux安装包,或者说,一个二进制程序的安装包实际上在做什么。

macOS软件的安装过程能更好地展现。打开一个下载好的安装包,会看到一个应用程序图标和一个applications文件夹。

安装程序的话,只需将应用图标拖到applications文件夹上面,然后我们就可以在访达的应用程序文件夹下看到这个应用。在macOS中,应用程序文件夹的路径是固定的/Applications, 而安装程序的applications文件夹图标下面有一个快捷方式的小箭头,查看它的属性的话就可以看到,它指向的就是我们电脑中的应用程序文件夹(关注下图原身指向的路径)。

到此就可以看出,macOS应用的安装过程其实就是把应用复制到了应用程序文件夹中。而如果我们右键应用程序—显示包内容,还可以查看这个应用所拥有的各种文件。因此总的来说,macOS应用的安装过程其实就是把这个应用程序的文件夹复制到了一个指定的位置而已。

由此,我们可以类比一下Windows的安装程序。它与macOS的过程其实是一样的,只不过Windows允许用户自己选择应用程序的这一堆文件要复制到哪里,然后自动帮用户进行复制操作(当然,对于Windows,安装程序可能还需要进行注册表编辑的操作)。

那么Linux的安装包呢?

由于Linux更多的是在用包管理器进行操作,所以Linux用户可能很少去关注应用的下载和安装这两个前期过程。这时我就要推荐你去看看我之前的使用obs和aur分发软件包的内容了。

你理解了这个就能明白,Linux无论是包管理器还是手工下载的安装包,其软件安装过程与Windows和macOS依然是一样的。只不过使用包管理器安装,全程不需要用户手工干预,而使用下载的安装包安装,最多也只需要用户手工进行下载的过程而已。

不过,虽然Linux安装的过程本质上也是在往系统中复制文件,但与另外两个系统不同的是,Linux会把不同职责的文件放到对应职责的文件夹中,而且对于被很多程序共同需要的文件,Linux很可能会把这个文件当作一个单独的程序,就不再附加在其他程序的安装包中了。也就是说,Linux是以文件功能为视角来归类文件而不是以应用来归类,这就使得一个应用的文件会被放到多个文件夹中,且可能需要配合安装其他的一些共有组件包才能让程序正常运行。而这种互相关联的情况,就是平时提到的依赖。

但并不是只有Linux有依赖问题,windows同样存在,只有macOS才近似于没有。而Linux比较明显的原因就在于它把文件归类得太细致了。举个现实中不存在的例子:假如说三大操作系统都有dx组件,且现在需要安装的软件要求系统中有d3dx9_25才能正常运作。那么对于linux来说,我除了要安装这个软件之外,可能还需要另行安装一个名字叫d3dx9_25的软件才能实现运行;而windows虽然也需要安装dx的安装包,但它的dx安装包里边会包括了d3dx9_1至d3dx9_30所有的文件;至于macOS,d3dx9_1至d3dx9_30系列文件可能会直接包括在macOS的操作系统中打包提供,或者直接包括在了程序的安装包中,总之不会要求用户再另行安装一个其他的软件。而假如之后又有一个程序需要使用d3dx9_20,windows由于前一次安装时已经部署了dx系列所有的文件,它就不会再要求额外安装了;但linux还需要再额外安装一个包括了d3dx9_20的软件才能实现运行。由此让用户感觉:哇,Linux依赖问题太麻烦了。

为了不让用户自己解决上面这种额外安装的问题,Linux出现了包管理器这种东西。自然,为了顺应不同的包管理器,就产生了不同格式的软件安装包。但万变不离其宗,安装程序的本质依然是在复制文件进系统,没有太多麻烦的事儿,所以手工部署一个程序是可实现的。相对于包管理器来说,我们要解决的仅仅是如何手工组织文件,以及依赖问题。接下来,就以粤政易为例,实际尝试一下手工安装一个应用程序。

根据私信的描述,粤政易本身提供了.deb形式的安装包,但其使用的archlinux中没有对应的软件包可以使用。因此,唯一的突破口就是官方提供的.deb安装包了。

直接下载deb包,通过归档管理器打开——这个可能是Linux和macOS相对于Windows安装包又一个优势所在:前者的安装包仅仅是一个压缩包,因此可以直接用归档管理器打开查看。

可以看到其中包括的文件,这也是一个Debian安装包的基本构造。我们现在是为了可以手工安装,所以这里直接顾名思义,选择最靠谱的data.tar.xz——数据tarball打开。

如果你使用Linux的话,这两个文件夹应该就眼熟了起来。

这里普及一个可能是冷门的现象:对于粤政易这类国内Linux应用来说,普遍都没有完全遵循Linux的打包思路将文件分别归类,而是有些偏向macOS的风格,将一个应用所有需要的文件都放在了同一个文件夹,然后安装时全释放在/opt的程序文件夹里就算完成了。所以对于粤政易,直接将这个data包里opt中的粤政易拿出来,你便可以开始运行这个程序了,到此,整个手工安装过程也就完成了。

但对于一些较为遵循打包方法的应用,单独解压出来没法使用,怎么办呢?

只需要在程序文件夹执行一个命令:

ldd 二进制文件名

你便会得到一个完整的引导。箭头左边指出了这个应用需要的so文件,箭头右侧则给出了这个so在系统中的具体路径。这时只需要寻找右侧为空的so,来对应安装包含这些so的软件包,补全即可。

到此,无论是什么样的软件包,你应该都通过手工部署完成安装了。

视频点此

作为一个非Windows主题的频道,反而要来聊聊新的Windows11的事儿,你应该就可以想到我说的侧重点与其他频道的不同之处了。那么话不多说,直接开始。

我公司的电脑是Windows10的,前阵子告诉我可以更新到最新版,我就直接升上来了。开局最明显的就是任务栏的开始按钮和程序图标居中显示了。当然,为了延续曾经的操作习惯,你依然可以将其设置为居左显示。

系统设置—个性化中可以看到对齐选项

默认居中的模式倒可以说是开创了一种全新的底栏样式,但相对于用惯了左下角开始按钮的用户,这个开始菜单的点击位置实际上很难做到肌肉记忆,因为一旦有新的程序图标加入到任务栏,所有已经存在的图标会整体重新居中,也就是说在最左边的开始按钮会向左平移一小段距离。而且,弹出的开始菜单永远是居中的,如果你习惯了从开始按钮长出来开始菜单这种感觉的话,你可能会觉得新版的开始菜单比较有撕裂感。

但这个撕裂感其实是无解的,即使将开始按钮设置到居左,由于新版开始菜单与任务栏会有一小点间隔的视觉效果存在,仍然会给人一种启动了另一个程序的感觉。

居左时,开始菜单依然会与底栏分割

而且由于托盘栏的存在,居中显示任务栏加上右边的托盘,整体给了我一种重心右移的感觉。

顺便一提,隐藏的托盘图标小窗口也与最下面这一条进行了分割设计,点击托盘左边的小三角之后会单独围出来一个区域来进行显示。

展开隐藏托盘菜单依然会与底栏产生分割

类似的,通知中心显示的时候也会进行分割,而且通知中心砍掉了快速功能,将通知列表与时间日期进行了整合。现在点击通知角标意味着点击了时间日期按钮,会弹出通知与日历两个模块。

开始菜单也进行了重新设计,让我一瞬间感觉我开的不是开始菜单。

Windows11新的开始菜单

上方是固定的应用,下方是最近文档——虽然标题写的是推荐的项目,而所有程序选项变得不再那么显眼。印象里我还是第一次在点开了开始菜单,但一时间没找到所有程序的入口在哪儿。也许是想强化用户去使用搜索功能吧。但有一说一,搜索功能确实应该比开始菜单找程序的权重重一些。“万物靠开始”应该也能算得上是一个历史遗留问题了吧,win8时代尝试通过变成开始菜单屏并取消左下角的开始按钮来解决,但很明显,一来太过激进,二来也确实太不方便了一些。而且全局搜索功能windows目前还是存在一些短板的,相较于macOS或者成熟的linux桌面环境来说。

让我比较不能接受的就是程序托盘不能设置成不分组显示了。相对于整合为一个方块图标来说,我更偏向于传统的不分组模式。有这么长的底栏,却一定要直接整合显示,对底部的利用也不充分,同一个程序切换窗口时也不如分隔的切换快速。难道微软计划在下一个大版本中把底栏dock化?

看过了灵魂底栏,来看看桌面整体。所有系统图标按照Fluent语言进行了全新的设计,圆润了不少。

重新设计的系统图标及窗口边框

而且窗口边框也进行了圆角处理。这种圆角同样适用于贴边最大化时的窗口动画。

贴边最大化时的动画效果。可以看到四角也是圆的

部分元素进行了磨砂玻璃化,相对于win7的磨砂玻璃,磨砂感更强,看起来还是挺舒适的。最明显的当属底栏、开始菜单以及贴边缩放的动画组件。而使用自带窗口组件的程序同样可以看到磨砂玻璃的效果,但不如上面三个地方的磨砂效果明细。而且如果你仔细看的话,会发现窗口组件的磨砂不会像Windows7那样,对它覆盖的任何程序进行模糊,而是只会响应壁纸颜色。比如我这台电脑,横向移动edge就可以看出来,它只对我壁纸的这几个色块进行了对应位置的模糊,而不会响应改在桌面上面其他窗口的颜色。

颜色响应示例

仔细观看的话还可以发现,新版Windows窗口大小变更动画有变化,且显隐窗口、任务栏图标也增加了对应的动画。其实整体来看,通过将线性动画变更为贝塞尔曲线,窗口整体操作感觉是更好的,这点改进我个人认为还是不错的。当然,如果你习惯不要动画的话,你依旧可以在高级选项卡中屏蔽掉。

接下来简单说几个系统应用吧。设置进行了修改,去掉了win10存在的主页元素。而win10设置底部的重要提示链接放在了起始标签页的右侧显示。相对来说,这种让提示信息更显眼,整体操作在一定程度上也有所简化了。

新版设置

与此同时,控制面板隐藏的更深了,很难在这个设置中找到控制面板的打开链接了。但就像无论如何更新,windows98的图标库仍然在最新版本的windows中一样,控制面板截止目前还是没有被微软删除的。你可以通过搜索controlpanel来打开它。

Edge完全取代了IE——这个其实应该在最后几个win10中就已经修改了。即使搜索internet explorer也可以看到ie的图标,但点击后仍然会打开edge。而edge伴随着开源化,转而使用了chromium内核,对于那些需要ie支持的传统网站来说是一个坏消息。但目前可以通过使用ie模式加载功能让edge使用ie内核打开网页来解决。不过相较于国内双内核的浏览器,edge这个功能被隐藏的比较深。可以进入edge的设置—默认浏览器,将允许在Internet explorer模式下重新加载网站更改为启用,再在外观中打开Internet explorer模式按钮,这样再进入到需要使用ie浏览的页面时,就可以通过点击右边功能按钮—在Internet explorer模式下重新加载来使用ie内核浏览页面了。当然,上述操作可以通过在edge的设置中直接搜索internet explorer来更快速的完成开启操作,这也是为什么我会说搜索权重应该优于开始菜单。搜索才应该是对新老用户都友好的一种操作方法。

命令提示符这个名称终于三系统统一了。现在你可以跟任何用户谈论“终端”这个词而无需顾忌他是不是在用windows这件事了。也许你说搜索cmd出现的程序还是叫命令提示符,但命令提示符现在已经退化为专门描述这个传统字符工具的程序名,而不再是描述windows字符操作方法的名称了。因为当你呼出charm菜单,也就是右键开始图标,或者使用热键Win+x呼出来的菜单中,你会发现再也找不到“命令提示符”和“命令提示符(管理员)”这两个选项了,取而代之的是“windows终端”和“windows终端(管理员)”两个选择。这是个不错的改变——即使只是名称说法改变了一下。

在Charm菜单中已经用“Windows终端”替换“命令提示符”了

资源管理器的右键菜单变化了。右键时会弹出一个设计与Win11风格较为一致的默认菜单,包含了一些还算是比较常用的功能,只有点击最下边“显示更多选项”时才会打开传统的右键菜单。

新的右键菜单,点击“显示更多选项”才会打开传统菜单

这个改变我个人感觉还是有待商榷的。当然,你也可以通过它指示的快捷键shift+F10来快速展开传统的右键菜单,或者直接按下键盘的菜单键来直接打开。这大概也是一个折中的设计吧。

其实还有不少的细节有所调整,但是由于我对windows的体验本身就有些缺失,所以就只谈到这个程度吧。整体来说,由于新动画的加持,使得在操作体验上会比windows10顺滑轻盈,而圆角及新的图标设计语言,让整个系统的外观焕然一新,显得柔和精致了不少。但与之相对的,底栏、开始菜单以及资源管理器的右键菜单可以说是完全重新设计了,可能还需要用户再重新培养一下操作习惯。不过,弱化开始菜单指点程序的这个思路我认为还是值得推荐的,可右键菜单设计成这样,我个人属实是感到有些费解了。

以上就是我在更新了windows11后的一些表面的体验,而最让我有感触的,在于本次更新后,linux下著名桌面环境Gnome和KDE的味道更重了。我更愿称windows11的明暗主题为Breeze Light和Breeze Dark。本来我想在这里直接放出对比共各位品鉴,但看看时间,太长了,下次再说吧。

视频点此

一个很简单的想法,源于我的KDE桌面——要知道,我的KDE桌面壁纸设置的就是每日一图,bing来源。

思路也很简单。现如今iOS系统已经预置了一个十分方便但异常强大的组件:快捷指令,而根据KDE可以使用bing每日一图来推断,便可知道bing的图片接口是开放的。所以前提条件都准备好了,就直接来编写快捷指令吧。

打开快捷指令,新建。

首先就是要获取bing当天推荐的图片。而获取的方法自然是通过Bing提供的API获取。

API地址如下:https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1

快捷指令中已经提供了从API获取js结果的功能,直接搜索添加获取URL内容,其中获取来源填入上面的API地址即可。

从这个网址获取到的结果是一个json字符。在快捷指令中,可以很方便的将json串转换为词典并从词典中提取指定键对应的值。而这也是作为互联网上面API使用最多的数据传输方法。上述Bing的API得到的json保存有很多信息。而我们只需要其中的图片路径即可。假定上述获取到的json命名为Bing,那么它有关图片地址的键就在Bing.images.url。而这个路径并不是完整的,它没有保存这个图片对应的通用的网址前缀。而这个前缀就是Bing的网址https://www.bing.com/

在了解了上述规律之后,就可以继续完成这个快捷指令了。我们现在只是拿到了最初始的json字符串,接下来就是要解析并获取真正的图片了。而这些功能快捷指令都有着对应的功能。

增加一个功能获取词典值,来源位置会自动加入前一步骤得到的结果(URL的内容),也就是刚刚通过API获取的json。而为了之后简化路径,可以在这里先进行一次筛选,使之后的选择可以以Bing.images中进行。

点击URL的内容,弹出的小窗口中,类型(第二行蓝字位置)选择词典

下方获取键对应的值输入images,完成。这样变把此处的来源变成Bing.images里的内容了。

这个功能的后方,输入网址对应的键名url,获取的是

设置完成后这个功能整体表现出来的是这样的:

得到了URL,现在就可以补全URL来获取图片了。但是要注意,这里还是通过网址来获取的,所以使用的功能仍然是获取URL内容,而路径要输入完成的,补全的路径。因此需要在默认填入的词典值前面加上通用前缀https://www.bing.com/。整体看起来是这样的

最后,把获取到的墙纸设置为得到的图片即可。添加一个操作,名为设定墙纸,根据自己的需要,选择设置锁定界面还是主界面,而来源里边默认加入的URL的内容要注意,因为获取到的是图片,所以需要把类型设置为图像。如图。

同时,展开这个功能折叠的内容,关闭显示预览(否则执行后会进入到设定壁纸的预览界面,手工确定才能完成,就不符合原始的需要了。

视频点此

苹果家族的软件以封闭闻名,但macOS是一个例外——毕竟历史原因使得它除了图形界面以外都有规律可循。所以当使用Linux的思维去理解macOS的时候,就发现了一些到目前为止都没见过有谁提到过的有趣的细节。

我曾经在以前的内容中说过神奇的快捷方式——软链接。当时我就说过这玩意儿在Windows下用处不多,但Linux和macOS下用途很广。那时候我说这句话其实还是有些心虚的,因为我只用过Linux,对macOS的情况不是很了解,仅仅是为Linux和macOS的内核相似才得出的那个结论。但现在不一样了,我真正使用过macOS了,所以对于这个结论,我只能说:macOS同样很频繁的在使用软链接,可能比Linux更甚。

因为它为每个程序都软连接出来了一整套用户根目录,形成了一种沙盒机制。

我们可以简单领略一下:在home文件夹,打开资源库——你可能过需要按下cmd+shift+.来显示这个文件夹,或通过显示设置使它取消隐藏属性。

打开资源库,你会看到一个名字为Containers的文件夹。顾名思义,这里是用户程序的容器集合。打开它,你便能看到很多熟悉的面孔。

如果你有兴趣的话可以把每个文件夹都打开看看。这里我就直接跟你说结论吧:这里边一个文件夹就是macOS为一个程序准备的一个沙盒——或者说,一套用户home。为什么这么说呢?我们随意打开一个你就会看到。

是不是很熟悉?是的,这里边的文件夹结构与home是一模一样的,只不过这里多了Library、SystemData和tmp。

但是还是有些许不同的地方。注意到有几个文件夹左下角的小箭头了吗?错了,它不是普通的快捷方式,而是软链接。我们通过终端来看一下它们连接到的具体位置。

没有错,这些软连接都指向了我们的home。具体来解释一下:桌面、下载、视频、音乐、图片四个文件夹是与用户目录同步的,而文档、库、系统数据、临时文件每个程序都是单独占有的。这就使得在程序看来,自己是这个系统上唯一的程序,还可以在这个系统里边随意玩耍;而在macOS系统看来,每个程序就算玩出天来,也没能逃脱分配给它的这个乌托邦中。莫名的让我想到了缸中之脑理论…

那么如此设计的优势在哪儿呢?就我个人的感受,相对于另外两种系统来说,如此存储使得每个程序都有着相对隔离的系统环境,最大程度的避免依赖问题——任何系统都需要依赖,不只是Linux;而且所有文件都建立在了一个统一的位置,当卸载软件时直接删除这个文件夹便清理掉了由这个软件带来的所有文件——当然,音视频文档会保留,因为是软链接到了用户目录下。而与之相对的,就用户或者系统的视角来看,想去到一个程序的目录下路径就会变得异常复杂,以至于如果不耐下心来找的话会很难找到。

不过,既然找到了,就可以进行一些骚操作了。比如说微信电脑端、QQ电脑端的无限期云端同步功能。

视频点此

可能你想不到,我一直订阅着个人版的Office365,所以我拥有1T的onedrive存储空间。说实话,我一直想不到这么大的空间能用来干啥,直到我看到了我这个树莓派做的局域网文件中心。
为何不外挂上onedrive,整一个异地备份呢?

实现这个系统的关键其实就有一点:在树莓派上安装onedrive。我尝试过一些开源onedrive程序,但要么不支持arm架构,要么安装很繁琐。所以最终我跳出了花里鼓哨的onedrive客户端,转向了rclone——一个支持将很多协议映射成本地目录的神奇的软件。直接从源中安装即可。

安装好后,输入命令rclone authorize “onedrive”,会打开浏览器进入登录界面,登录成功后终端会返回token,保存好。

接下来,通过命令rclone config来根据向导进行配置,按照提示输入操作即可。只需注意最开始要输入一个名称,这个名称指代了网络硬盘,以后挂载时会使用到这个名字,所以要记住。同时,不需要选择高级设置,以及在最后登录一步的时候选择手动配置,将刚刚保存的token完全复制到终端即可。

现在,就可以通过命令rclone mount 名字: 挂载点 —daemon把你的onedrive挂载到本地了。这个挂载点完全指向了onedrive的目录,任何复制到这里的文件都将被直接上传到onedrive中。换句话说,复制进这个文件夹的文件将不再占用本地的磁盘空间,而是直接进入到onedrive之中。

测试无误后,我们将这条命令设置为开机启动。但是我发现通常方法,也就是在rc.local中加入语句并不能实现开机自启,所以这里也介绍一下设置开机启动的方法。

~/.config下新建autostart文件夹,其中新建一个.desktop文件,文件名随意。其中输入如下文本。

[Desktop Entry] 
Type=Application 
Exec=lxterminal -e “刚才那一串挂载指令”
Name=随便一个名字
Comment=随便一些注释

这就为rclone挂载命令建立了一个自动启动文件。以后无论何时启动树莓派,rclone都会把onedrive挂载到指定的文件夹中。受到一些小伙伴的提示,如此自启动可能只有把树莓派设置为使用gui且自动登录时候才会生效。要注意。

之后进行双向同步操作。我这里直接简单粗暴的通过计划任务加bash脚本来实现,一个负责从本地拷贝到远程(也就是挂载了onedrive的那个文件夹),一个负责从远程拷贝回本地。而本地目录是一个特定的目录,所有想同步到onedrive上的文件夹通过软链接的方式放到这个文件夹中。

到此,我的这个双点同步系统就搭建完成了。