Jasper Ji

平常心

山西省汾阳市海虹塔寺,寺内有临济宗第六代祖师善昭禅师的舍利塔,善昭禅师因住汾阳,也称汾阳善昭。我曾到访,作文以记之。

汾阳之行

最早是从《人天眼目》一书知道汾阳善昭禅师的,那是一本讲禅宗五家宗旨的书籍。当时从湖南回来没多久,在湖南走访了几个禅宗祖庭,感慨过去南方禅宗的兴盛。一次无意的搜索,发现汾阳现在还有善昭禅师的塔保留。汾阳离的不远,想想我都远赴湖南,这么近的祖庭,有何不去的理由。于是择日订购了一张到汾阳的火车票,在火车上睡了一晚,一大早到的汾阳站。

汾阳站附近有免费景点太符观,顺便去了一趟,贾樟柯的电影《天注定》有个场景就在这个门口拍摄的。大名鼎鼎的汾酒出自汾阳,酒厂离火车站不远,附近还有其他酒厂,周遭弥漫着酒味。从火车站到城区还有点距离,有免费公交,车次不算多,不过最后还是等到了一辆。

海虹塔寺

海虹塔寺位于汾阳市海洪路,在古代属于城外,如今算是在城内。住的酒店离寺不远,于是便走了过去,路上顺便买了点供果之类的。

当时是周四下午三点左右,寺内没有什么游客,应该说只有我一个吧。大雄宝殿貌似门关着,因为拿着一些供果,得找个地方放一下,后来看到一位居士,说让放到一个侧殿里面。
过了一会,来了一位僧人,正是住持义弘法师,与法师略谈了下我在湖南的一些心得,法师问了我句:“见性没有?”竟一时语塞。寺内有塔,之后师父带我去塔下面看了看,里面供奉有汾阳善昭禅师的画像,礼拜完后我便绕塔数周,等绕完时,想问义弘法师点什么,发现师父已经默然离去。

除塔以外,寺内其他建筑都是后来新建。塔是临济宗第六代祖师汾阳善昭禅师的舍利塔,以下简单介绍下这位禅师。

汾阳善昭

禅师名善昭,俗姓俞,山西太原人。据推测生于五代后晋,活跃于宋初的一位禅僧。据记载,受具足戒后,游历四方,参访七十一位知识。最后受印于汝州南院省念禅师,据《汾阳无德禅师语录》记载:

师参首山问:百丈卷簟意旨如何。山云:龙袖拂开全体现。师云:未审师意如何。山云:象王行处绝狐踪。

省念禅师为临济宗第五世,初住襄城县首山,后世称首山省念,次住保安山广教院,晚住汝州宝应院,宝应院也称汝州南院,也是临济宗第三世慧颙禅师的驻锡地。善昭禅师为省念禅师的法嗣,为临济宗第六世,传承脉络:临济义玄→兴化存奖→南院慧颙→风穴延沼→首山省念→汾阳善昭。

北宋淳化四年(993年)十二月四日,首山省念禅师圆寂。也是这一年,据《汾阳无德禅师语录序》记载:

淳化四年。西河缁素千余人。协心削牍。遣沙门契聪。诣白马山。迎至其郡。

“西河”指西河县,即今天的汾阳市,明代时,西河县更名为汾阳县,一直延续至今。善昭禅师于襄州白马山受请入住西河县大中寺太子(禅)院,西河县属于汾州管辖,另外汾州的治所也在西河县,所以灯录记载中一般写作“汾州大中寺太子(禅)院”。

《景德传灯录》是最早记载善昭禅师的灯录,被收录到《景德传灯录》时,禅师还在世,已经在汾阳太子院驻锡十八年,语录中有《奉宣编传灯录入藏师观名字乃述赞并序》,专门为此事而作。

语录也是在其生前就已经刊印,是了解禅师思想的第一手材料。语录名《汾阳无德禅师语录》,为什么是“无德禅师”呢?未见灯录有明确记载,查阅语录发现有:“诸上座若教无德称扬正法”、“无德住西河”等句子,“无德”更像是自称,可能为号或者字。

但“无德”这个自称比较少用,善昭禅师一般喜欢用“汾阳”来自称。禅师住西河县,但自称“汾阳”,有点奇怪,实际上“汾阳”算是西河县的别称。在禅宗的惯例里,如提到“某某地名”往往并不是指地名本身而是指曾经驻锡这个地方的某位禅师,同理灯录中说“汾阳”时多半指的是住汾阳的善昭禅师。另外灯录里汾阳善昭、汾阳昭、太子善昭、太子昭这些也都指的是善昭禅师。

善昭禅师在汾阳三十年左右,所以语录中也留下了一些汾阳的印记,如《汾阳无德禅师语录》记载:

上堂僧问。如何是汾阳境。师云。子夏峰高登者少。西河水满问津多。如何是境中人。师云。坐久看风信。烧香烛圣灯。

“子夏峰”指的是汾阳县北的一座山,语录中也是多次出现。另外语录中有《拟寒山诗》、《不出院歌》都有描绘禅师住汾阳时的一些情景。

虽然汾阳地处北方,但因为善昭禅师早年行脚诸方,丛林有声,依旧有不少学人慕名而来。如楚圆禅师,广西人,不畏险阻北上求法,最终嗣法于善昭禅师,后住湖南浏阳石霜寺,也称石霜楚圆。除了石霜楚圆禅师外,据《五灯会元》记载,还有大愚守芝、琅邪慧觉、龙潭智圆、太子道一、龙华晓愚、芭蕉谷泉、法华全举等十人,也都是善昭禅师的法嗣。

这些嗣法弟子中以石霜楚圆禅师最为瞩目,楚圆禅师的弟子杨岐方会禅师一脉,形成了杨岐派。另外一名弟子黄龙慧南禅师一脉,形成了黄龙派。禅宗在六祖惠能之后逐渐形成沩仰、临济、曹洞、云门、法眼五个宗派,也称五家。北宋时,临济宗分化出的黄龙和杨岐两派加上原来的五家形成七宗,便是后世所说的“五家七宗”。

临济宗一直流传至今,目前的传承就出自善昭禅师这一脉,因此被后世尊为汾阳昭祖、临济宗第六代祖师。

卒年略考

据《天圣广灯录·汾州大中寺太子院赐紫善昭禅师》记载:

师在汾州,因驸马都尉李遵勗致请潞州承天禅院开堂,彼方官民洒涕遮留。既而俞诺,互陈筵供为饯,遂召专使谓曰:暂赴厨馔,馔毕来取回书。食毕诣之,俄覩不起于座,而趣圆寂矣。阇维之后,众收舍利起塔。

之后的灯录记载略有不同,考虑到《天圣广灯录》就是李遵勗所编,也是当事人,所以这个记载相对而言可靠一些。遗憾的是这个记载缺少圆寂时间和世寿,后来的《禅林僧宝传·汾州太子昭禅师》记载,世寿七十八,僧腊六十五。清代的《五灯全书》记载略有不同,僧腊变成了五十六。另外在汾阳当地还流传着善昭禅师是在汾阳老爷山(石盘山)圆寂的说法,真实与否无法考证。

关于圆寂时间,元代的《佛祖历代通载》记载为宋仁宗天圣二年(1024年),清代的《宗通编年》记载为宋仁宗天圣元年(1023年),清代的《五灯全书》记载为宋真宗乾兴元年(1022年)。现在一般都以宋仁宗天圣二年(1024年)为准,主要是因为《佛祖历代通载》比较早。

写文章时曾与义弘法师沟通过,法师告诉我寺内曾出土过写有“天圣元年”字样的石刻,这时我意识到《宗通编年》或者《五灯全书》的记载可能更加的准确。《五灯全书》记载圆寂于宋真宗乾兴元年(1022年),第二年天圣元年(1023年)塔建好,这么推论也没有问题。《宗通编年》记载圆寂于天圣元年,当年圆寂当年建塔,也是有可能的,毕竟目前所有的记载都没有具体的时间,只有一个年份。

据记载,清康熙三年,曾对善昭禅师塔进行过重修。那么当时是不是有所发现,导致成书于康熙三十二年的《五灯全书》,做出了不同的圆寂时间和僧腊的记载,当然这个只是猜测。不过塔确实在清初重修过,这是我下面要讲的内容。

塔院略考

关于善昭禅师塔,明代之前缺乏记载,万历年间,据说城内的郡王永和王,觉得善昭禅师塔有碍风水,于是塔被截半。另据1989年《汾阳文史资料·第三辑·汾阳县文物掇编》记载:

明代时遭兵燹之火,故庙、塔俱毁。今存的塔,为清初僧人竹庵募捐所建。

另有一些文章补充到明末清初的朱之俊有记,我没有找到朱之俊的原文。在寺庙的时候,没有注意寺内是否有残存碑刻。写文章时,特意咨询过义弘法师,得知寺内保留有驮碑的赑屃残存,不过原来的碑已不存。

后来查阅文献发现了一些与清初重修塔相关的线索,上图是相关人员,这里面有个关键人物明觉聪禅师。

明觉聪禅师,禅师名性聪,字憨璞。临济宗第三十三世,百痴行元禅师的法嗣。俗姓连,福建邵武人。历主诸刹,清顺治十五年,得到召见,赐号“明觉禅师”。康熙五年圆寂,世寿五十有七,有《明觉聪禅师语录》存世。

《明觉聪禅师语录》有《送澄彻法孙归汾阳修昭祖塔》、《复汾阳祖塔院主澄彻法孙》,提及澄彻禅师曾在汾阳负责修复善昭禅师塔。另外语录还有《答汾阳朱太史(朱之俊》、《答汾阳众绅衿》,书信内容大致都是希望当地士绅能给予修塔一些支持。

关于这位澄彻禅师的信息很少,另有《万安山法海禅寺祖山和尚语录·嘱澄彻顶西堂》记载:

板鸣犬吠一场愁,杀郤众生暗点头,昭祖塔前行正令,更为法海沛长流。

澄彻顶禅师,临济宗第三十三世,祖山行地禅师的法嗣。康熙五年,祖山行地禅师圆寂之后继任万安山法海禅寺住持。从记载来看,澄彻顶禅师似乎就是《明觉聪禅师语录》提及的“澄彻”,但澄彻顶禅师与明觉聪禅师是同辈,语录中称“澄彻法孙”,令我困惑,其中的渊源可能还需要进一步研究。

现在的资料没有提及澄彻禅师,只提及康熙三年(1664年),僧人竹庵募捐修塔。《明觉聪禅师语录》有《与竹庵西堂》,“竹庵”似乎指的是“竹庵西堂”。竹庵西堂与明觉聪禅师关系密切,不过并非其弟子,明觉聪禅师一直关注善昭禅师塔的修复,所以竹庵西堂可能也参与了修塔的事宜。

我在想如果没有清初的这次修复,或许善昭禅师塔保存不到现在。一度想了解修塔的完整脉络,可惜现有文献记载都过于的片段化,当年应该有修塔的碑记,但如今寺内并无碑刻保留,所以只能考证到这里了。

华严圣可禅师,破山海明禅师的弟子,临济宗第三十二世。据《华严圣可禅师语录》记载,康熙三年,到汾阳礼善昭禅师塔。

自清初重修塔之后,塔院应该是一直有僧人驻锡。塔院叫什么呢?从《明觉聪禅师语录·复汾阳祖塔院主澄彻法孙》来看,只是称“汾阳祖塔院”,并未提及塔院的名称。据说乾隆年间,有一位叫海洪的外地僧人曾住塔院,后来当地人就称塔院为海洪庙。查阅汾阳地方志,即使到光绪年间,也没有关于海洪庙的记载。建国后的特殊时期,塔院的相关建筑被毁,独存塔,旧址被占用,曾被用作养猪等。2000年左右,在义弘法师的住持下塔院才重新建成,便是如今的海虹塔寺。

海虹塔寺的“虹”字还存在另外两种写法,塔旁的文保碑上用的“宏”,当地的地名用的“洪”,比如旁边的海洪中学、海洪路,另外1989年《汾阳文史资料·第三辑·汾阳县文物掇编》也称“海洪庙”。似乎有点乱,不过无论哪种写法,其实都是指善昭禅师塔院。

大中寺与太子院

提及善昭禅师,不得不说他曾驻锡的太子院,灯录记载中太子(禅)院往往与大中寺一同出现,这里先说大中寺吧。

大中寺,据明万历三十七年(1609年)版的《汾州府志·天宁寺》记载,位于城东郭西北隅,相传原为汉末名士郭林宗的故居。唐代始建寺庙,名大中寺,“大中寺”一名可能跟唐宣宗大中年间(847年-860年)有关。

北宋嘉祐八年(1063年)重修,元至顺三年(1332年)再修。明洪武十八年(1385年),大加修建,更名为天宁寺,设置僧会司。清代的地方志略有不同,记载为洪武十四年(1381年)。

清初,提出“天下兴亡,匹夫有责”的思想家顾炎武曾寓居天宁寺。清末至民国,逐渐衰落,网上还能看到民国时期拍摄的一些含有天宁寺的照片。天宁寺彻底被毁是在建国后的特殊时期,原址被占用,后来也没有重建。

明万历版《汾州府志》有府城图,可以看到东关西北隅确实有天宁寺,善昭禅师塔位于南关附近,二者属于不同的方位。

明清的地方志都说大中寺更名为天宁寺是明洪武年间,不过从一些记载来看更名为天宁寺的时间可能更早。

金元之际的元好问《遗山先生文集·华严寂大士墓铭》记载:“授华严法界观于汾州天宁宝和尚”。另有落款为金大定二十七年(1187年)的《太原交城县王山修建十方圆明禅院记》记载:“逮于本朝皇统年□,时有圆通道信禅师、越自汾阳天宁退居,道过交城。”也提及了汾阳天宁寺,汾阳历史上似乎没有两个天宁寺的记载,唯一的可能就是“天宁寺”一名在金代就已经存在了。

关于天宁寺更早的记载则是出自清代的《山右石刻丛编》,据记载在汾阳县官村三贤庙有《香积院重结涅盘会碑》,碑文被完整收录,碑文开头有:“住持汾州天宁禅寺传法赐紫妙总大师了觉撰”,落款时间为:“大金皇统六年岁在丙寅四月八日立石”。大金皇统六年为1146年,而北宋亡于1127年,相距十九年。

撰写者了觉禅师,曾获赐号“妙总大师”。清代的地方志有记载,可能是受到明代更名为天宁寺记载的影响,被归为了明代的僧人。从碑刻的落款时间推断实际上为北宋末、金代的僧人。圆寂后在天宁寺内建塔,据说后来在天宁寺旧址曾发掘出过僧人舍利函,义弘法师曾到现场有看,确有看到金代相关的字样,大概率应该就是这位了觉禅师的舍利函。

民国时期王堉昌所编《汾阳县金石类编》有落款为金章宗承安二年(1197年)的《大金汾阳六师院宝公禅师碑铭》,碑文有:“请师住持韵山之门禅院,复住汾阳天宁万寿禅寺”,这里指出了天宁寺的全称,这点很关键。“天宁万寿禅寺”一名在全国各地的记载中都有,临近汾阳的交城县卦山也有一个,一般简称“天宁寺”,大都可以追溯到宋徽宗时期,所以最后推断汾阳大中寺更名为天宁寺应该是在宋徽宗时期。

据金大定十五年(1175年)《王山十方圆明禅院第二代体公禅师塔铭并序》记载:“续受汾阳节度使乌公之请,兼领天宁禅寺”,体公禅师即交城县王山觉体禅师,灯录中称呼为王(玉)山体,为曹洞宗宗师,其法脉传承:芙蓉楷→鹿门觉→青州辩→大明宝→王山体→磁州满→万松秀→雪庭裕,目前国内曹洞宗的传承就出自这一脉。这位禅师于金大定十一年(1171年),退居汾阳天宁寺,大定十三年(1173年)圆寂后,塔于交城县王山。

以上这些记载只是我能找到的,相信还有不少,从这些历史印记可知,无论是之前的大中寺还是后来的天宁寺,在汾阳当地都是极其重要的一座寺庙,而能住持这座寺庙的也都是被认为很有修为的高僧,其中就包括临济宗和曹洞宗的一些僧人。这样一座寺庙却没有被重建,多少有些令人遗憾。或许未来某年,后人追忆历史,又会被重建吧。

太子(禅)院,以善昭禅师曾驻锡而闻名,善昭禅师圆寂后其弟子道一禅师、法孙同广禅师,相继住持太子院。

道一禅师,临济宗第七世,善昭禅师的法嗣。因住汾阳太子院,也称太子道一。灯录只记载了机语,未见无生平信息。“道一”这个法名,与马祖道一禅师的法名一样。马祖道一禅师是唐代人,六祖法孙,辈分上算是太子道一禅师的远祖。

同广禅师,临济宗第八世,道一禅师的法嗣。在道一禅师之后住太子院,也称太子同广。灯录中只有一名,无机语生平信息。其弟子为西京龙门山胜善清照禅师,清照禅师之后,太子道一禅师一脉便不再有灯录记载。

关于太子院,明万历版《汾州府志·天宁寺》记载:“宋汾阳善昭禅师住持,名太子院”,清光绪十年版《汾阳县志·天宁寺》记载:“宋改名太子院,善昭禅师住此”,都说宋代时大中寺也叫太子院,但这个表述有问题。据杨亿所作的《汾阳无德禅师语录序》记载:“汾州大中寺太子禅院长老,释善昭者”,李遵勗所编的《天圣广灯录》记载:“汾州大中寺太子院赐紫善昭禅师”,二人与善昭禅师都是同时代的人,且有交集,记载应该是可信的。如果又叫太子院了,何必再加大中寺呢?

清代的《山右石刻丛编》有《定光佛舍利塔记》,开篇有:“汾州大中寺太子禅院坟塔园葬,定光佛舍利塔记,将仕郎、试秘书省校书郎、守西河县尉薄洙撰”,落款时间为:“维大宋嘉祐二年岁次乎酉四月丙午朔八日癸丑,葬毕记”,结尾有:“东京左街定安禅院奉宣住持传法赐紫法远大师道一,前僧正赐紫(后缺字)”。

这块碑的落款时间为北宋嘉祐二年(1057年),距离善昭禅师圆寂过去了三十多年,有很高的研究价值。

过去“汾州大中寺太子(禅)院”这一说法只见于禅宗灯录的记载,这个碑算是一种补充,同时也证明了灯录记载是无误的。北宋慧洪的《禅林僧宝传·汾州太子昭禅师》记载:“迎请住持汾州太平寺太子院”,“大中寺”变成了“太平寺”。通过这个碑可知,至少善昭禅师在世时,仍叫大中寺,至于后面是不是更名为太平寺了,目前来看未见有其他资料可以佐证这一观点。

太子院应该是大中寺的下院,所以碑刻上才会加上“大中寺”的前缀,但是太子院又似乎很独立,比如有自己的塔院(坟塔园),那么善昭禅师圆寂后,塔应该也在这个地方,由此推断,文中所说“坟塔园”大概率应该就是现在海虹塔寺这个位置。如今定光佛舍利塔早已不存,而这块碑,书中记载在临汾县,应该是后来流转到那边去的,不知道现在是否还在。

另外从碑文结尾可知,太子道一禅师后来去了东京左街的定安禅院,获赐“法远大师”一称,这些都是灯录没有记载的。按灯录记载,道一禅师之后是其弟子同广禅师驻锡太子院,同广禅师之后,宋代灯录再无记载有出自太子院的僧人,太子院也消失在了历史中。

那么太子院位于汾阳何处呢?就目前可信的资料来看,没有哪个资料能明确指出太子院的位置,所以只能推测而已。虽然我觉得明清的地方志表述有问题,但也不排除太子院与大中寺在一块的可能性,即后来的天宁寺。考虑到塔院与寺庙一般离的近,也可能是现在海虹塔寺这个地方。或许也有其他可能,要是再有类似《定光佛舍利塔记》这样的碑刻,或许这个问题就解决了。当然如果你了解这方面的信息,可以评论告知。

宗匠相望

善昭禅师并非孤例,在更早前的唐代,有汾州无业禅师。禅师名无业,俗姓杜,今陕西商洛人。为马祖道一禅师的法嗣,住汾州开元寺。圆寂后谥号“大达国师”,塔名“澄源”,汾阳当地俗称石塔,开元寺之后俗称石塔寺。可惜近现代,塔与寺俱毁,当地仍有石塔地名。当时不知道,所以没有去故址一看。

另外还有汾州石楼禅师,是石头希迁禅师的弟子,住汾州石楼县,关于这位禅师只有机语无生平信息,所以具体位于石楼县何处不得而知。

与汾州毗邻的并州有首山省念禅师的另外一名弟子并州三交承天院智嵩禅师,也称唐明智嵩禅师,石霜楚圆禅师和浮山法远禅师都曾参访过。过去一直不清楚这位禅师的道场位于今天何处,简单考证了下,三交和唐明为地名,位于今天太原北边的阳曲县境内,但承天院具体地址尚不清楚,未见记载。

在更北边忻州铁佛院也有一位智嵩禅师,也是首山省念禅师的弟子,不过关于这位禅师的记载略少。

汾阳临近的交城县有王山圆明寺,金代时,王(玉)山体禅师曾在此驻锡,上面天宁寺部分已经说过,不再赘述。交城县虽然离汾阳很近,但当时不知道,所以没有去过,有读者要去汾阳的话,可以顺带一去,目前寺庙还存。

结语

临济宗前六代祖师的道场基本走完了,初祖义玄禅师开法于正定临济寺,晚年居河北大名,塔于大名,清初重修,毁于特殊时期,正定临济寺的塔据说是衣钵塔。二祖兴化存奖、三祖南院慧颙,两位禅师的塔无存考证。四祖风穴延沼禅师的塔,位于汝州风穴寺下塔林,元代重修,今存。五祖首山省念禅师的塔,位于襄城县首山,元代重修,毁于特殊时期。第六代中,目前知道的只有善昭禅师塔尚存。寺庙可以毁了又建,语录、灯录也可以一印再印,但祖师的塔却是不可再生的,所以保留下来的塔值得珍惜。写文章时,有一些困惑,曾三度致电义弘法师了解情况,师父直言无讳,受益匪浅。关于义弘法师以及重建塔院的事迹,当地文章都有介绍,限于篇幅就不再赘述。文章难免有误,欢迎评论告知。

PS: 本文为我原先在公众号平台发表的文章《汾阳海虹塔寺记:汾阳善昭禅师》的文字版,图文版请点击原文链接。

湖北武汉的归元寺,也称归元禅寺,由来自浙江湖州的白光明、主峰昆两位禅师于清顺治十五年创建,宗派上属于曹洞宗云门系。归元寺与宝通寺、莲溪寺、正觉寺并称武汉的四大丛林。我曾到访,作文以记之。

阅读全文 »

扬州高旻寺,顺治年间,还是一座不知名的塔庙。康熙年间,御赐高旻寺一名,成为皇家寺庙。雍正年间,高僧驻锡,继席者宗风不替。咸丰年间,一度衰败,但经过几代住持的努力,到民国时期,来果禅师驻锡,宗风大振,是著名的禅宗道场。我曾到访,作文以记之。

阅读全文 »

前言

OpenClaw在国内被称作龙虾,使用OpenClaw俗称养龙虾。大部分问题都可以在官方文档找到,这里只是记载下没有的部分。

模型

模型是必备的,我自己选择的是本地模型,使用llama.cpp来运行各种模型,brew可以安装。目前主要试用了QWen2.5QWen3.5,2.5的无法调用工具,3.5的才可以,以下是如何运行模型的操作:

llama-server -m ~/models/Qwen3.5-9B-Q4_K_M.gguf --host 0.0.0.0 --port 8099

配置

龙虾配置是选择自定义的,URL配置如http://192.168.1.4:8099/v1,一定要加v1,协议的话选择ChatGPT的。

龙虾配置

PS: 龙虾安装完成后,可能会显示该命令不存在,需要在命令行运行:

export PATH="$(npm prefix -g)/bin:$PATH"

龙虾的相关文件在.openclaw目录下,属于隐藏文件,配置文件在.openclaw/openclaw.json

局域网访问

修改.openclaw/openclaw.json中的gatewaybindlan模式,即可局域网内访问,但是存在一些问题。

HTTPS配置

不配置无法访问,这里使用Nginx反向代理的方式,使用自签名。

创建证书

$ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/openclaw.key -out /etc/ssl/certs/openclaw.crt

Nginx配置,创建配置文件/etc/nginx/sites-enabled/openclaw,配置如下:

server {
    listen 443 ssl;
    server_name _;

    ssl_certificate /etc/ssl/certs/openclaw.crt;
    ssl_certificate_key /etc/ssl/private/openclaw.key;

    location / {
        proxy_pass http://127.0.0.1:18789;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

另外需要在主配置文件(/etc/nginx/nginx.conf)添加导入设置

http {
    include       mime.types;
    default_type  application/octet-stream;

    include /etc/nginx/sites-enabled/*; # 添加这句

重启Nginx

sudo systemctl start nginx

跨域访问

修改.openclaw/openclaw.json中的gateway,增加如下:

"controlUi": {
       "allowedOrigins": [
       	"https://192.168.1.8",  
       	"http://127.0.0.1:18789",
  		"http://localhost:18789"
  	]
}

设置完成后重启网管openclaw gateway restart

配对问题

本来openclaw devices *命令下面有一系列的管理配对的操作,但是在局域网访问时,这个命令总是报错,所以这里使用手动魔改的方式解决。

~/.openclaw/devices/pending.json这个配置文件里面是当前没有配对的设备信息。

~/.openclaw/devices/paired.json这个配置文件里面是当前已经配对的设备信息,如果为空的话,在本地网页打开下,可能本地也需要配对,不过本地配对的命令是可用。我因为是在Linux手机上安装的龙虾,是在远程操作打开浏览器的,使用了如下命令:

DISPLAY=:0 firefox http://127.0.0.1:18789/#token=输入自己的token &

配对成功后,~/.openclaw/devices/paired.json大概会增加类似的信息。以下为Linux版配置,这个是手机端访问后的配对信息,用于参考。

"deviceId": {
  "deviceId": “deviceId",
  "publicKey": "publicKey",
  "platform": "Linux x86_64",
  "clientId": "openclaw-control-ui",
  "clientMode": "webchat",
  "role": "operator",
  "roles": [
    "operator"
  ],
  "scopes": [
    "operator.admin",
    "operator.approvals",
    "operator.pairing"
  ],
  "approvedScopes": [
    "operator.admin",
    "operator.approvals",
    "operator.pairing"
  ],
  "tokens": {
    "operator": {
      "token": “token”,
      "role": "operator",
      "scopes": [
        "operator.admin",
        "operator.approvals",
        "operator.pairing"
      ],
      "createdAtMs": 1773574278595
    }
  },
  "createdAtMs": 1773574278594,
  "approvedAtMs": 1773574278594
}

参照上面那个,新增一个自己局域网访问电脑的配置。这里是我自己的Mac配置:

"deviceId": {
  "deviceId": "deviceId",
  "publicKey": "publicKey",
  "platform": "MacIntel",
  "clientId": "openclaw-control-ui",
  "clientMode": "webchat",
  "role": "operator",
  "roles": [
    "operator"
  ],
  "scopes": [
    "operator.admin",
    "operator.approvals",
    "operator.pairing"
  ],
  "approvedScopes": [
    "operator.admin",
    "operator.approvals",
    "operator.pairing"
  ],
  "tokens": {
    "operator": {
      "token": "token",
      "role": "operator",
      "scopes": [
        "operator.admin",
        "operator.approvals",
        "operator.pairing"
      ],
      "createdAtMs": 1773574278595
    }
  },
  "createdAtMs": 1773574278594,
  "approvedAtMs": 1773574278594
}

这个需要拷贝到~/.openclaw/devices/paired.json,然后重启网管。

使用感受

目前使用的本地模型,主要是尝试了下简单的查询类的任务,可以完成一些,但是有点慢。比如查询天气,这个是可以的。另外也可以播放音乐,不过存在只能播放一小段的问题,不知道是什么原因,音乐播放程序是个命令行版的,我是在PinePhone Pro手机上部署的,使用的GTK的界面,在上面开发界面并不算简单,用龙虾来操作命令行的程序,这点倒是一种启发。

另外我手机上的Chromium浏览器因为缺少某个库的链接,所以不能使用。只有Firefox可以用,比如我让龙虾打开的B站,然后播放某首歌曲,龙虾只是打开了Firefox,也打开了网站,但是并没有进行到最后一步,这点可能是受限我本地的模型不支持图片分析吧。总之给我的感觉,你想使用一个强大的龙虾,就需要给他配置各种技能,但是大部分技能都需要付费。如果确实做点什么或许还能接受,但是纯粹的自己体验的话,确实有点烧钱。

我手头有一台PinePhone Pro手机,可以涮不少系统,我比较喜欢基于GTK的Phosh的桌面,不过它的虚拟键盘Squeekboard不支持中文拼音输入。好在自己也是开发者一个,Squeekboard是个开源项目,使用C和Rust混编。在买PinePhone Pro之前就已经研究了Rust一段时间,所以一开始我觉得自己应该可以魔改一番增加一个简单的拼音输入法的功能。一开始并不顺利,迟迟没有进展。后来我停滞了一段时间,最近马上要过年了。我又开始折腾这个项目了,或许是停滞了一段时间的缘故,这次的思路比上次的能清晰一些。开源项目最大的问题就是它只有代码,它是怎么运行的需要你自己去研究。最初我之所以没有进展或许还是过于分散了,忽略了第一性原则,就是Squeekboard实际是基于Gtk的项目,那么最基本的东西一定是基于Gtk提供的那些基本的东西。有了这个思路后,我这次的进展就比上次快多了,另外也借助于AI的帮助。

基本架构

如果一个应用的输入框被激活,那么就会显示Squeekboard。另外也可以通过桌面下面的常驻按钮点击也可以显示或者隐藏键盘,这个是通过DBus来控制。Squeekboard的显示我一开始以为在覆盖在应用的上层,但现在觉得更像是把一个手机界面分成了上下两部分,底下是键盘,具体如果显示的还需要进一步的研究。

Squeekboard其实是一个大控件,键盘的按钮主要是自定义的绘制,没有使用标准的按钮控件。通过一个统一的事件处理,判断点击了哪个区域的按钮。键盘的布局会通过配置文件,可以动态的更新。

程序是由C驱动的,绘制按钮等一些逻辑的部分则是通过Rust来实现的,所以Rust等于一个程序库一样,二者相互调用。

拼音功能的实现

Squeekboard支持了大部分的字母类型的输入法,但是汉字的话,目前是不支持的。汉字的难点在于它不是直接由字母组合而成,需要通过某种间接的方式产生汉字,比如拼音、五笔。记得大学时,那会计算机还没有那么普及,一开始老师要求的是五笔输入法,我当时还买了一本五笔的书籍,实际上那会平时在网吧都用的是拼音输入法,五笔完全是一开始为了应付考试,后来真的考试也不要求五笔,拼音也可以,五笔很快就忘了。因为这次开发的缘故,我又一次想到了五笔,因为那其实是一种从汉字结构拆分的输入法,所以你必须能知道自己要输入的那个字的结构。

回到拼音输入法,拼音输入法其实就是拼音与汉字的键值对,只不过一个拼音可能对应很多的字,有时一个字会有好几个发音。

不过一开始我并没有考虑太细,开始主要的经历花在界面上了,逻辑上有个大概的想法,关键是如何实现的问题。实现的基本逻辑就是拦截按键,不过一开始我把精力花在了其他的方面,比如一个按键按下后,是如何传个输入框的?Squeekboard使用了Wayland协议,Wayland其实支持两种输入协议,我一开始只关注了zwp_input_method_v2,这个更像组合,但是默认的字母输入并没有走这个协议,走的另外一个协议就是简单字母按键的对应。

汉字的输入实际上需要使用zwp_input_method_v2这个来提交,一开始我就是想着先在键盘的上方增加一个候选字的栏,我先实现用按钮点击提交看是否可以成功。虽然这个要求很简单,但是在一开始修改的时候话费了我很多的时间,虽然我那段时间也有写关于GTK的应用,但是那个主要是Rust绑定的,很少涉及用C来写GTK。但是Squeekboard最基础的部分就是用C写的,当时我还借助Chatgpt,但是那会的Chatgpt也老出错,很多代码并不能直接用,要不就是没有用对版本。Squeekboard使用的是GTK3,而最新的则是GTK4,其实我也是用的GTK4的Rust绑定。总之那会花了好多时间,一直无法给键盘的上方添加一个控件,这么简单的事,尽然如此的花费时间,现在回想起来,那会太过于依赖Chatgpt了,自己思考的少,所以很被动。当然现在据说有那种可以分析整个工程的AI,或许那个可能要好一些,不过我目前还没有用过,因为那个要花钱。单就把一些工程的局部代码给AI,这种方式觉得还是不够完美。而我自己会写编程,是可以思考的,但是放弃思考这是一种愚蠢的做法,是你的想法在驱动AI,而不是被AI驱动,这是我得到的最大教训。

于是增加拼音的功能就此搁置了好长一段时间,直到最近才重新开始。这次最大的特点就是主动性,另外就是从最基本的东西开始考虑,毕竟Squeekboard它是基于GTK的,所以很快就完成了给虚拟键盘上方增加一个候选字的栏。之后遇到的最大问题是,点击按钮后提交会报错,应用直接奔溃掉了,遇到这种问题时,当时有点头大。但冷静下来思考发现,肯定是哪里的问题,只要解决问题就行,不要陷入到一种什么也不做的境地。在AI的帮助下发现我因为安装了Fcitx5的缘故,zwp_input_method_v2一直没有被激活,所以才导致了强行提交后的奔溃问题。最后直接用killall -9 fcitx5关闭了Fcitx5后,就好了。

后面就是如何把虚拟键盘的按键与汉字对应起来,一开始我只是想把这个工作交给一个外部的库,最终选择了一个Rust的库,结果编译报错。后来我依旧从最基本的实现开始,本质上不就是输入拼音的组合与汉字的对照表吗?有了这个基本的思路后,我找到了一个文本的数据,然后读取后,直接在表了查找。就这样一个基本的拼音输入法的功能便实现了。

不过也有一些问题,比如中英文的切换,另外如果连续的敲击按键时,会出现严重的卡顿,这是因为有些对应的汉字很多,这样的话就会添加很多的按钮,这种效率感觉并不高,所以现在的拼音输入法,只能一个按键一个按键的敲击,得留出缓冲的时间。另外那个文本的数据里面汉字的排列没有按照常用字的顺序来排列,所以有些很常用的字可能在后面。

后续的改进

现在算是满足了基本的需求,不过这个输入法现在来看效率不高。一种是重新弄一个只有3500字的小型数据集,这样可能会效率高一些。另外可能需要新开一个线程来专门处理拼音的东西,这样也许可以解决连续敲击的卡顿问题。当然想要到达现在iOS这样流畅的输入法,最后获取需要采用开源的一些输入法引擎来专门处理拼音的问题。

总结

这个项目对我而言算是一个挑战吧,因为最初我买了PinePhone Pro后,想着用Rust来开发应用,一开始确实也是尝试的开发了一个类似Notes的应用,当时还尝试在交叉编译,不过库稍微变动一下就要改很多的东西。另外Notes的应用运行效率并不高,反而还会有偶发的卡顿,我一度尝试用Python的Gtk绑定开发了一个,感觉差不多,所以最初使用Rust来提高应用的运行速度的想法被否定。主要是Rust开发效率与Python相比太低了,所以一段时间我有点气馁,开发PinePhone Pro的应用的想法一度搁置。

后来我又尝试的了解关于相机的相关东西的研究,PinePhone Pro的相机不是在所有的系统都可用的,有些直接用不了,后来调试了好长一段时间最后勉强可用,但那个是基于命令行的,其实开发一个专用的应用才是后续可能要做的。另外还尝试了GPS的定位的研究,发现定位从在偏移,这个也是从命令行研究的,缺少一个应用。最后还有蓝牙的研究。

那些跟硬件有点关系,但是虚拟键盘则是纯软件的,这个项目一开始确实没有进展,让我很沮丧,怀疑我的Rust和C的研究,不过基本的功能完成后,算是对GTK一些东西有所涉猎。而PinePhone Pro 上如果想在Phosh下使用,那么C语言看来是逃不过了,和Rust的混编确实能提高效率。纯Rust应用虽然有可能,但是和C混编或许更自由一些。不过对于我而言能用C语言也是一种期许吧,毕竟我对C的投入其实还是蛮大的,买了好的的书籍。另外也曾尝试写过一些操作系统的雏形,不过那个的话是汇编语言与C的混编,不过整个现在回想起来一个操作系统不就是由一堆在上层的脚本语言之类的混合搭建而成吗?所以混编是常态,而单纯的依赖某个语言是不现实的。

连续写公众号已经一年了,总结下运营的一些感想,希望对新手有个启发,老手权当交流吧。

起步很难

公众号起步确实难,因为注册后你一个粉丝也没有的,唯一的粉丝就是你自己,一般用来预览文章。所以如果你决定要写公众号了,那么最好有一个心理预期,需要坚持一段时间,再看情况。

推荐机制

默认会开启平台推荐,对于新手来说这很关键,没有粉丝就只能靠平台推荐了。但是开启了推荐,不意味着就一定会被推荐。我有几篇文章,虽然自认为没有问题,很用心了,但就一个推荐也没有的。推荐机制是个黑盒,至今我也没有找到什么可规避的,看到有些文章排版混乱,而我的文章排版公正,用了一周的时间去写,却得不到推荐。而别人的一些文章一看漏洞百出,大有AI写作的疑点,但还是被推荐,有时非常气愤,但你只能继续写。

流量池

有人说一旦进去了流量池就会有比较好的流量,写到第十三篇文章时,似乎这篇文章进入了流量池,最后的阅读量到4K多。进入流量池的好处就是快速的涨粉,当然如果已经开启了广告的功能,也能带来更多的收益吧。

但进入流量池后不意味会持续下去,我就经历了中间一段时间突然又没有什么流量了,回到发表后不到一百的浏览量。之后一段时间后又好像进入流量池了,但现在写这篇文站时,又没有流量了。所以流量池也是个黑盒,你无法预测它的到来,你只能写下一篇文章。

助推卷

公众号对于没有粉丝的初级写手会发放助推卷的功能,助推卷什么时间发放不知道,他有一个成长足迹,达到某个成长点,就会发放一张助推卷,但你无法预测下一个成长点是什么。助推卷的面额分为300、500,这是我目前收到的面额,至于是否有更大的我不知道。可以用这些助推卷来助推文章,不过需要审核,审核机制也是黑盒,我就遇到不通过的情况,只能把文章删除后重新再发布,有时我也不知道我修改对了哪些东西,但最后通过了。如果使用的是300的助推卷,那么就会给你300的流量,当然实际能有多少阅读,往往小于这个数了。助推卷可以叠加使用,因为助推卷有时间限制,一段时间我比较忙,就在一篇文章上使用了好几张助推卷,实属无奈,不想浪费流量。

有时候使用了助推卷,比如300流量,推流完成,文章流量基本也就固定了。但有些文章使用了助推卷后,还会持续推流,我有一篇文章浏览量6K多,当时使用了多张助推卷叠加有1200的流量,推流完成又持续给我带了4K的流量。至于为什么会有两种差异,我至今不明白,你只能写新的文章。

开通广告

我刚写文章时,粉丝到达100时可以开通“返佣商品和内容推广”,100粉丝相对比较容易达到。不过写“返佣商品和内容推广”对于只有100多粉丝的新手而言,没有什么价值。到达500粉丝后可以开通:“公众号留言区广告”、“公众号底部广告”、“公众号文中广告”、“公众号文中关键词广告”、“公众号互选广告”、“公众号视频后贴广告”,想要到达500粉丝,实打实的写文章积累的话,还是有难度的,因为文章流量时好时坏,我的文章是偏考证研究性质,一篇文章至少要一周时间才能发布,所以到写这篇文章时才只有450多个粉丝。

本来我以为年前能增长到500粉丝已经不错了,不过最近公众号突然变更规则了。只要100粉丝,就可以开通:“公众号留言区广告”、“公众号底部广告”、“公众号文中广告”、“公众号文中关键词广告”、“公众号视频后贴广告”,只有“公众号互选广告”需要500粉丝。我之前设置过自动开通,所以这些功能都已经体验了几天。原来发的文章已经会展示:“公众号留言区广告”、“公众号底部广告”,而“公众号文中广告”、“公众号文中关键词广告”需要在新写的文章设置,新文章默认是不开通:“公众号文中广告”,最新的文章也没有开通,因为我觉得这影响文章的完整性。

关于广告收入,因为只有“公众号留言区广告”、“公众号底部广告”,每天大概只有几分到几毛不等的收入,可以说靠这个我估计会饿死的,所以不要抱太大的希望,当然可能未来会有增加,但我不知道未来是何时,希望那时我还在坚持。

广告的体现是需要提供一张银行卡相关的资料,不会直接打钱到微信零钱。现在没有几个钱,我还没有设置,觉得这点麻烦的很,能挣几个钱,不如直接转到零钱,权当买菜钱了。

短视频与写作

最初我是先尝试的抖音短视频,在发了几个视频后,有一次一个视频莫名其妙的说违规,不知道违规在哪里,这是黑盒。因为这次原因,我搜索了下跟自己相关题材的视频,居然无法搜索到自己的作品,即使按最新的时间排列,试了没有违规的文章也一样,而且还是上万的播放量,我的账号检测没有问题,打电话问客服不知道。

这让我很气愤,于是不再更新短视频。一般视频刚发布会给一些流量,但是到第二天基本就不推流了。我的作品偏小众一点,希望可以通过搜索能让更多主动查找的用户看到,但既然搜素不到,那我就没有继续下去的理由了。

不同平台

起初我有试过今日头条,第一篇文章可能有流量激励,所以数据看起来不错,今日头条的广告开通没有粉丝限制,可以自选是否展示广告,记得几天下来好像一毛多钱。因为公众号那会刚开始,觉得今日头条这个不错,但是当我发了第二篇文章后,因为没有激励的流量,数据跟公众号的差不多,这样的话其实也没有收入了。今日头条的机制也貌似跟抖音差不多,如果一篇文章一开始没有被推荐,基本后面也就没有流量,比如搜索之类的,因为抖音的搜索给我留下极坏的印象。之后我就一心在公众号平台了。可能有些人适合今日头条这类平台,我的文章类型决定了是小众,不适合吧。

知乎,也试过发了一篇,不过数据不行,也就没有继续。微博长文也了试了下,也差不多,其实微博我已经用的很少了。

目前为止,我现在首发公众号,然后再发在自己的博客上,这样管理,太多平台实在忙不过来。

编辑器

一开始也是使用官方的自带编辑器,后来有段时间使用可以导入Markdown文件的第三方编辑器,因为那会想着一个Markdown文件发布到不同平台,不过我只有公众号一个平台,中间经常需要修改,在官方编辑器与第三方编辑器之间切换,后来就放弃第三方编辑器了,不过采用了第三方编辑器的部分样式,后来写的多了,逐渐形成了自己的文章样式。公众号的编辑器与今日头条的相比,功能略简单一些,比如无法给图片加注释信息,当然第三方编辑器可以,所以一般是我手动的排版,总的来说还算够用。

粉丝与流量

粉丝少的时候,我一直以为粉丝多了,每篇文章即使没有被推荐,至少粉丝也会有阅读,然后他们分享,这样流量就能好起来。不过随着粉丝逐渐涨到四百多,但发的文章如果没有被推荐,其实阅读量也没有提高,依旧是几十个不到百,所以粉丝多少与文章的流量不成正比,至少在粉丝数很小的时候吧。大部分粉丝只是因为一篇文章而关注,虽然我发的都是同类型的文章,但对于这些,粉丝也未必都敢兴趣。实际上每个粉丝关注的人又不只我一个,所以难免湮灭于众多的关注之中吧。当然也有一些铁粉,不过目前来看,铁粉还是太少,对于流量的影响有限。

比如我最近发的一片文章,群发后只有不到30个粉丝阅读,而我有粉丝500多,发的内容也是垂直的内容,但是这个流量非常诡异,所以写一篇文章能不能有流量,因素太多了。

点赞

点赞这个功能没有粉丝限制,目前收到最大的点赞金额是二十元,不过点赞的人还是太少。收到点赞不确定性太高,不可强求,点赞的钱一周后会自动转到绑定的微信账号的零钱里。

因为我写的文章比较小众,阅读量比较差,所以就目前而言,点赞的收入反而比流量主广告的多。

付费加热

之前的公众号文章是没有主动推广途径,付费加热也是最近才有的,在抖音的时候试过抖加推广,感觉靠广告而来的还是不靠谱,公众号的付费加热没有试过,至少现阶段不会尝试,主要是写文章根本不挣钱,纯粹靠爱发电,所以能有多少阅读就多少吧。

Web与平台

公众号的好处是提供了一种变现的方式,与微信的深度绑定,提供了流量的来源和很好的互动。但是也有限制,比如文章只能修改三次,标题和正文的修改都非常受限。好处是给写作一种严谨的态度,要好好检查,确实每篇文章都会做大量的检查,避免严重的错误,因为修改起来太麻烦了。

个人博客确实自由,可以不断的完善文章。如果某篇自认为没有被平台推荐的文章,有时也会发到自己的博客验证下难道真的没有流量吗?发现发在Web后,这些文章也没有流量,实际上与公众号相比更差。Web上的文章严重依赖搜索,虽然过去有长尾效应一说,但一篇文章发布后到搜索的用户看到,不知道到什么时间了。因为现在的Web早已不是当年的Web了,流量已经大部分转移到了移动端的各个封闭平台上了。Web上的新内容确实已经缩水了很多,比如我想了解下某座禅宗寺庙现在的情况,一般在Web上的内容都是很早之前的,最新的只能在公众号上搜索到,Web正在变的边缘化。

另外Web的缺点就是没有好的变现方式,不过Web的特性依旧是我喜欢,相信好的东西应该广为流传的,如果不能被流传,那么意味着毫无意义。

河南南阳桐柏县境内有桐柏山,主峰太白顶,也称白云山,有云台禅寺,被尊为“白云祖庭”,是临济宗白云系的发源地,开山始祖为端德和尚,据称来自四川西昌紫薇山宗林寺,除此之外再无其他信息。本文结合两地的相关资料,带你一同探究关于这位祖师的更多信息。

阅读全文 »

去年的时候我曾到河北大名县的兴化寺探访,在挖掘兴化寺历史时,了解到了关于清初重建该寺的断指觉禅师的故事。在成书于康熙年间的《济宗世谱》一书里,看到断指觉禅师的弟子里,竟然有“曹寅子清居士”,这首先让我想到了《红楼梦》作者曹雪芹的祖父曹寅,“曹寅子清”是不是就是曹寅呢?

阅读全文 »

为什么要购买一台Linux手机呢?安卓和iOS我都开发过,iOS稍微久一些。最早想到Linux手机是源于安卓和iOS这些平台都会限制开发语言,比如你想用Python开发个界面。很早的时候有在安卓手机上安装过Ubuntu,但那个界面完全是PC的桌面,体验比较差。最近直接触发我购买PinePhone Pro的理由是我想用GTK的Rust绑定来开发应用。

购买

淘宝上可以购买,但是价格有点偏贵,需要4500左右。直接购买,官网目前不支持直接发内地,这家公司是从香港发货的,所以可以找家转运公司,发货到香港,再转运到内地。费用除了399美金的机子,还有官网发出的运费,因为是到香港,这个大概十几美金,再加上转运费近200,最后花费3000多些,比在淘宝购买要便宜不少。时间上,大概一周多点时间,就可以收到货。

包装

手机的包装跟之前网上看的开箱视频一样,手机、贴膜、说明书(没有中文)、充电线(红色)。开机时需要将后盖打开,把电池接触膜给撕掉,这样就可以开机了。手机的外放音质感觉很干涩,确实不能iPhone之类的相比。因为没有多余手机卡,所以移动网络并没有测试。

刷机

这台手机最大的特点就是刷机友好,我一开始并没有打算刷机,应该是对Arch Linux不熟悉的缘故,所以预装系统下软件一直无法更新也无法安装新软件,比如我喜欢的Rust,甚至我都不知道如何进行远程连接,实际上现在认为都是不熟悉导致的。

安装新系统主要参考官网的说明Installation instructions,我选择使用内置卡安装系统,因为我的是Mac OS,所以在刷系统到eMMC有点不一样,主要参考Install Image Pinephone。系统刷到卡的速度有点慢,按照文档设置1M/s,系统大概6G多,结果刷了1个多小时才结束。文档说如果使用外置卡的话,可以用另一种技术,那个能快很多,但是手头没有多余的卡,加上内置卡128G的容量,觉得暂时就这样。

系统

Manjaro

Plasma Mobile

预装的Manjaro系统,桌面使用Plasma Mobile,可能是稍早些的系统版本,系统UI显示看起来不是很精细的感觉。Manjaro是基于Arch LInux构建的,使用Pacman来进行软件管理。因为平时只使用过CentOS和Ubuntu,所以一开始操作不是很顺利。系统自带的相机功能无法使用,系统支持横竖屏,但是也有小Bug,比如竖屏时有些应用会显示成横屏的,这时只需要把手机横过来,再竖屏就好了。

Phosh

首先给我感觉界面很漂亮,不像Plasma Mobile这个界面会感觉有毛刺一般。但是我不太喜欢Phosh切入后台的操作,我更喜欢Plasma Mobile的方式。在虚拟键盘方面,虽然Phosh的更漂亮,但是Control等相关键设计过于小,使用时候很容易误点到下方的按键。刷机后,发现相机可用了,但是成像有问题。另外软件升级后发现整个系统的软件启动变慢了,暂未找到原因。系统预装的是火狐浏览器,但是网页似乎无法分辨屏幕大小,所以还是PC版的布局在显示。这点Plasma Mobile上的Angelfish浏览器更好一些。

Arch Linux

Manjaro 虽然也是基于Arch Linux,但是Arch Linux还是跟Manjaro不太一样些,比入没有pacman-mirrors这个命令。

Phosh

Manjaro Phosh版使用了一段一点时间,发现自带的Firefox在播放音乐的时候很卡,尝试安装chromium试下,但是启动不了,网上有人说Arch Linux版可以,于是我安装了,但是依旧不行,不知道是不是跟我用Phosh有关系没有。更新了Firefox发现老报配置错误,无法使用。即使在没有更新之前,虽然可以使用,但貌似没有安装中文字体的缘故,中文显示不了。我尝试整体更新软件,虽然也设置了国内的源,但是依旧很慢。选择单独升级Phosh,结果重启后就是死循环了。为了不把电池耗尽,只能选择刷机了。

之前在网上转门调研Best distro for Pinephone Pro?,里面Arch Linux不少人推荐。但目前来看,虽然感觉App启动比Manjaro Phosh版的快一些,但是不够完整,使用性太差了。

Barebone

没有图形界面?一直处于命令行的登录状态。

Mobian

Debian的移动版,整体感觉比较稳定,应用启动也比之前的快。

  • Firefox,播放在线音乐不卡。
  • Chromium,可以安装启动,但是不支持虚拟键盘,所以等于无法使用。

LuneOS

这个是原来的Open webOS,安装后可以启动,但是很快就会进入死循环,界面确实延续了WebOS的风格,但是也发现相机之类的界面出现界面乱的问题,不过因为很快就死机了,所以基本也没有来得及体验。手机电池耗尽对于初次刷机的一定要注意,会让你误以为手机成可砖块。建议先不要刷这个系统,熟悉了再考虑。

PostmarketOS

这个是基于Alpine Linux的,PS:有点头大,刷一次机学习一种新的发行版操纵。

Gnome Shell Mobile

我安装的是这个,不过感觉很卡,应该不是使用了Gnome的缘故,因为远程连接也很卡,说明还是系统适配的问题。

Ubuntu Touch

这个系统是目前最可用的系统,可能是早期是由Ubuntu主导的,而且还发过手机,后来他们放弃了,现在由社区在驱动。首先这个系统支持中文输入,另外整个交互也非常的流畅。

Nemo Mobile

这个系统是基于Sailfish OS的,但是无法正常启动一直处于光标闪烁中。

问题

虚拟键盘

Phosh

目前发现虚拟键盘不支持中文输入,键盘源上有一个Chinese选项,但打出来的依旧是英文。

电池问题

电池管理这块似乎确实存在问题,耗电确实比一般的手机要快,放了一晚上就没有电了,所以后台可能有一些程序在运行,而对于iOS系统后台有严格管理的,所以我一般关机。

一次系统升级后,我都关机了,第二天再启动时发现无法启动,充电也不行,然后我就准备刷机,试了几次都不行。以为成砖头了,网上看了半天,最后才发现原来是电池耗尽问题(The battery is fully drained),一般手机电池耗尽了,重新充电就可以了,但是Pinephone Pro的好像有问题,稍微充电一开机,系统死循环,电量耗尽,然后就一直充不进去电,最后参考官方的文档终于启动了。

上面关于关机后都没有电的问题,后来发现是手机在充电时我关机的,拔掉USB后系统莫名的自动开机,而当时因为升级后出现了问题,直接无法开机,我也没有注意到,所以才有了关机后会耗电的认知。

证书问题

signature from "Arch Linux ARM Build System builder@archlinuxarm.org" is unknown trust

安装软件时老是提示证书的问题,无法升级以及安装软件,最后参考了这篇文章,解决方式如下:

sudo rm -r /etc/pacman.d/gnupg
sudo pacman-key --init
sudo pacman-key --populate
sudo pacman-key --refresh-keys
sudo pacman -Sc

应用适配

我安装了VLC播放器,界面完全是桌面的,显示分辨率看起来很低。但是可以使用,只不过界面显示不全了。这点看起来也有好处,那就这些应用可能只需要修改界面就可以了。自从升级这个后,第二天手机就启动不了,软件升级也是有风险。

总结

这个台手机显然不是一台备用机,很多问题对于没有经验的新手来说是致命的,比如电池耗尽问题,让我差点以为手机成砖头了。Linux看似稳定,但是也是潜藏危机,每次升级很可能让系统无法正常运行,而我在如何恢复这块经验不足,每次都是重新安装,如果在生产环境这可能是灾难性的,意味着资料的丢失。

0%