Upgrading my LineageOS on SM-G930F

  1. Download and install latest version: https://forum.xda-developers.com/galaxy-s7/development/lineageos-15-android-8-0-0-herolte-t3710107
  2. Check if TWRP is updated: https://dl.twrp.me/herolte/
  3. Uninstall Magisk (seems that sometimes you need to do it twice)
  4. Install latest Magisk: https://forum.xda-developers.com/apps/magisk/official-magisk-v7-universal-systemless-t3473445
  5. Update OpenGapps – arm64 nano
  6. Install Xposed-magisk from Magisk Manager
  7. Install modified Xposed installer https://forum.xda-developers.com/xposed/unofficial-systemless-xposed-t3388268/post67074423#post67074423

6/29

After installing new version of LineageOS. Apps that rely on Google Service Framework always crashes. Usually disabling Magisk and re-enabling works, but this time it doesn’t. In the end upgrading the XprivacyLua module solved the issue.

 

台灣的數位政委談如何不使用審查來打擊不實訊息—個人想法

後話

(因為我覺得如果有人只看我原文沒看後話的話會誤會所以我把後話放在前面)

寫完上面那些之後,我去搜尋了一下有沒有唐鳳跟 FB、LINE 就報導主題對談的紀錄,因為唐鳳大部分的對談都是有公開逐字稿的。結果我沒找到,只有 2017 年 FB 去拜訪他的紀錄。

不過我倒是找到當初受訪的逐字稿

我只有快速看過一次,發現幾個亮點:

一,其實記者有問到這個政府快速澄清的機制是否有可能被濫用。

但唐鳳的回答我覺得很糟,根本沒有談到怎麼防止濫用,記者也沒有追問下去。目前就我所知,沒有防止政府濫用的機制。

二,記者有問到,政務委員羅秉成防治不實訊息的框架(大概是指這個是否在未來有可能傷害媒體自由

唐鳳的回答基本上是說這個機制不會影響大部分的媒體,而且羅委員背景是人權律師,所以他很重視人權。這回答我覺得也蠻糟的,這個法律框架目前看起來沒有考慮到要怎麼對付未來上台的惡意執政者。

原文

看到 CPJ 這篇很紅,再看了 HN 底下很多留言,記一下想法。

留言區有很多我認同的留言,先畫一些重點。

What is described is better than China, but it’s not ideal. However I do think they should be commended from explicitly avoiding censorship to the degree that they do.

However, communications from the government to counter other communications identified as disinformation are government propaganda. If they are not identified as such, then they have the same problem as the original disinformation.

Secondly, making it easy to flag propaganda in apps and then blocking it as she describes is in fact building in a type of censorship. It’s just a brilliant type of crowd-sourced censorship. I know the theory is that that would only be applied to false information. However, censorship doesn’t work like that. The end result is going to be a worldview that is reduced and shaped by a dominant group rather than the free flow of information. Especially if it relates to all of the information that people in a country can see. This can be very dangerous.

So I will just say what I think would be ideal even if it may not be very realistic. The history of government propaganda and censorship should be part of the public context. I think it is good to be able to flag articles as being propaganda and from what source. However I think that removing things from being visible entirely is very dangerous for freedom. Taiwanese/US/Chinese/etc. government propaganda or counter-propaganda should be identified as such if possible.

 

This gives me some weird feelings. I mean, if you ask a website to turn some content “unpreferred" without user consensus, isn’t that also some type of censorship?

 

> How is that reconciled? How does one know when the government is being truthful versus being propagandists?

If there are multiple conflicting narratives, at least some people will be motivated to do more research to resolve the contradiction. If the government is being more truthful, its statements can point to resources that provide independent verification, accelerating the process. At a minimum that will blunt the effect of the lies.

這段我倒是認同,如果有多個衝突的說法,至少有一小部分人會開始自己研究。有一部分人則是相信任何最新的反駁論點;當然還有最後一部分是相信他們所信任的來源的一切訊息。可惜後面兩種人加起來是多數。不過我想至少政府澄清可以增加衝突的說法,促使更多人開始去自己研究。

> Once they do that, Facebook promises, by June, that this will inform the Facebook’s algorithm so that it will stop being preferred to show on people’s newsfeed, but it’s not censorship. If you look specifically for that friend, that post is still there, but they have a warning that says it’s already fact-checked as false.

That’d be very interesting if the Taiwanese government was in direct communication with Facebook over something like this. CPJ wasn’t able to get a hold of Facebook, I wonder if anyone here has visibility into something like that? Given that the US government took a more “combative" approach (dragging executives in front of Congress) I’d be curious how more tame approaches like this were being received.

我覺得台灣政府和 FB 在這件事情的合作上面透明度不夠。

This is much better than removing the post, but it still makes me nervous. Just imagine that we’re in the early 2000s, and you can envision a banner saying “The claims in this article are FALSE. As confirmed by the intelligence community and the New York Times, Iraq is actively working on its nuclear weapons program." Perhaps they should have a policy limiting the use of this tool when it comes to issues that may lead to war.

 

>notably, for all its merits, the taiwanese system still positions the government in an information vetting capacity, which may lead some to think that it is merely another system of propaganda or quasi-censorship

This is kind of how I see it too. I think if your goal is to combat disinformation or propaganda you should just come out straight up and say it because it’s a perfectly defensible position to hold, but creating a government counter-narrative isn’t any more harmless than just censoring something, it’s just sounds nicer than having to use the word “censor" which tends to make people in some parts of the word jump up in panic.

整篇讀起來我其實覺得一部分她做的、這件事情的影響,是負面的。

  1. 權力傾向被濫用

政府有了這樣跟 FB 和 LINE 合作的權力,現在打擊不實訊息效果可能很好,現在的政府可能也意圖良善,但是哪天換了一個政府呢?就想,如果國民黨上台,他們會怎麼用這個機制?這些合作的公司又有多少獨立的力量可以抵抗來自政府的要求?

這機制雖然不是審查,但是確實是政治宣傳(Propaganda),現在政治宣傳還沒有被濫用,但政府已經獲得做政治宣傳更大的能力了。

  1. 知名度集中在唐鳳身上,知名度會給一個人更大的權力

建立這個機制的背後肯定是很多人,首先肯定是有總統的支持,還有各個行政部門首長也要配合,忽略團隊不是一件好事。尤其這篇報導是針對外國人的場合,唐鳳也並未利用此機會宣傳能夠讓她這麼做的政治系統和內部機制和合作伙伴。

  1. 台灣政府和 FB 和 LINE 的合作並不透明

這些應該要是透明的:

  • 合作的範圍和具體定義
    • 原文 “Facebook promises, by June, that this will inform the Facebook’s algorithm so that it will stop being preferred to show on people’s newsfeed” 這裡的 preferred 是什麼意思?減低多少程度?
      • 不過從另一方面想起來,依照 FB 過去的糟糕紀錄,台灣政府恐怕也不知道這個詞是什麼意思,因為 FB 公共關係部門不會跟他們講清楚的。而且 FB 的公共關係部門大概也不知道這詞到底代表什麼具體的程式行為。
      • FB 演算法相關資訊的透明度大概比北韓政府還低,台灣政府選擇跟這個不透明的公司建立合作而且也沒有立法要求透明,很失敗。(放任壟斷市場的企業繼續不透明,還跟他們合作)
    • LINE 也是
  • 政府和平臺中間具體的溝通機制
    • 溝通管道
    • 主管
    • 實行細則、SOP
    • 決策流程
  • 民間團體的角色
    • 如何監督政府和 FB?
    • 是否具有制衡力?

整體而言,我覺得這件事情有助於打擊不實訊息,但是減損我們的民主和自由。

 

Setting up Nextcloud 16 on Synology Webstation

Webstation configuration

Follow http://andreasschmid.com/2018/12/24/nextcloud-on-synology-nas/ , but I used nginx and PHP 7.2 instead. And of course don’t use the mysql root user for nextcloud.

Configure SSL certificate

Basically follow : https://stefandingemanse.nl/how-to-use-lets-encrypt-ssl-certificate-on-synology-dsm/

But in the “Security > Certificate" settings you need to enable the certificate for Webstation. Do this by selecting the Let’s Encrypt certificate, click Configure, and select to use this cert for your virtual host.

Failed to start session error

It is caused by Webstation has enabled PHP open_basedir restrictions. In the PHP profile you need to configure /var/services/tmp:/dev/urandom:/tmp

I got this from: https://webcache.googleusercontent.com/search?q=cache:A8qy2RWRhUgJ:https://www.synology-forum.de/showthread.html%3F99836-Nextcloud-Problem-mit-PHP-7-2+&cd=3&hl=zh-TW&ct=clnk&gl=tw&client=firefox-b-d

‘SQLSTATE[HY000] [2002] No such file or directory’ on Nextcloud initial config page

Initially for the database host field I entered localhost:3307 and had the error ‘SQLSTATE[HY000] [2002] No such file or directory’ . Following the idea here to change it to 127.0.0.1:3307 gave a success.

`nginx` configs for Nextcloud

In the beginning the login page index.php/login will be 404, because all the rewrite rules are not in place yet.

Take reference from Nextcloud documentation, put configs without the server block into /etc/nginx/conf.d/YOUR_UUID/user.conf like this. YOUR_UUID will be different on each machine.

Also need to put in php-handler setting in /etc/nginx/conf.d/http.php-handler.conf like this. It is actually included from nginx.conf with include conf.d/http.*.conf

Restart nginx: sudo synoservice --restart nginx

Now you should be able to access the login page!

鼠鬚管 / Rime 0.10 更新後的設定檔修正

鼠鬚管迎來久違了四年的更新—— 0.10 ,然而更新後舊版的設定全不見了,我重新閱讀說明文件之後才把原來的設定套用回來,在此筆記。

本文的設定流程應該也適用於 Linux 和 Windows 上面的 Rime,只是設定檔的路徑不一樣,各平臺的設定檔路徑見此

變動

在此先簡述這次更新的主要變動,稍後會解釋如何修改設定檔。

舊版當中,使用者的設定是存在 default.yaml ,但是更新後這個檔案會被刪除,所由使用者自訂的設定必須要移到 default.custom.yaml ,並且改為新的語法。原本的 default.yaml 現在是作為輸入法框架本身的系統全域預設值,並且儲存在系統目錄裡面。關於系統設定檔和使用者設定檔可以閱讀官方文件

新的語法和舊有語法不同,簡單來說,作者希望使用者的設定檔單純只是作為系統預設的覆蓋(沒有覆蓋掉的值就採用系統預設),rime 本身和輸入方案的設定都是透過階層式的 yaml 設定,所以使用者需要把欲覆蓋的設定值放在一個 patch 的項目下面。詳細說明在此。需要特別注意同一個 key 的 value 會被 default.custom.yaml 完全覆蓋,也就是說如果某個 key 的 value 是一個 list,你不能只寫想要增加/修改的 list item ,需要重複寫出整個 list。

動手修改設定檔

我有修改過的設定值本來就全部都放在 default.yaml 裡面,升級新版之後,原本的 default.yaml 會被移到 trash 資料夾裡面(在 Rime 的使用者設定資料夾 ~/Library/Rime/ 下)。在遷移舊設定到新路徑和格式之前,可以先比對一下原本的設定和新版的預設值,因為新版好像把許多使用者常改的設定放進預設值了。

cd ~/Library/Rime/trash
diff -u default.yaml "/Library/Input Methods/Squirrel.app/Contents/SharedSupport/default.yaml"

我的 diff 看起來像這樣

所以在新的 default.custom.yaml 當中,我只要覆蓋掉這幾個地方即可。

最後的設定檔:

把這個設定檔放到 ~/Library/Rime 底下,重新登出再登入就可以讓 Rime 0.10 和舊版有相同的行為。

Chromium 71 遇到 Nouveau 就會自動停用 GPU rendering

https://news.ycombinator.com/item?id=18836615

  1. Chromium 決定針對 Nouveau (開源、逆向出來的 nvidia 顯卡 Linux driver)自動停用 GPU rendering (只要遇到 nouveau 就停用 gpu rendering),因為 nouveau 不穩定,但是又被 ubuntu 等多個發行版設定為預設驅動程式,為了避免一般不知情的 linux 使用者使用 chromium 的時候遇到畫面問題,chromium 才出此決議
  2. 被轉貼到 hacker news ,引發討論,眾多使用者罵 chromium team
  3. freedesktop.org list 上面的討論串的作者 Ilia 回應(連結在上面),我覺得最有道理,他認為:
    a. 不應該因為 nouveau 不穩定,個別的應用程式就去針對它停用 gpu rendering ,因為採用 nouveau 是發行版的決定,如果發行版的使用者覺得 nouveau 不穩定,可以自己去換掉它,如果個別的應用程式「為了使用者方便」就去針對 nouveau 停用 gpu rendering ,就創造了一個特例。
    如果每一個應用程式都自己決定遇到 nouveau 要不要停用 gpu rendering ,想要/不想要使用 nouveau 的使用者就必須去瞭解每一個應用程式針對 nouveau 的預設行為、如何修改預設行為,而不是像以前,單純在系統裡面把 nouveau 換掉就會套用到所有應用程式。
    我加一句:就算是針對一般的 Linux 使用者,他們完全不知道什麼叫 nouveau ,他們也會發現,有些應用程式會有畫面顯示的問題,有些不會,這樣 bug 的外顯行為就會變得非常不一致,因為有些應用程式擅自決定封鎖 nouveau 。到最後他們還是要到系統裡面把 nouveau 換掉。
    b. 更何況,大部分的狀況下 nouveau 的 gpu rendering 運作良好。

我的結論(以上,並綜合 HN 的討論):
1. nvidia 無心支援 linux ,並刻意阻撓 nouveau 的開發
2. 不要買 nvidia ,買 amd 或是 intel

MacOS on ESXi 6.5

MacOS 10.14 Mojave ISO Image

https://drive.google.com/file/d/1tCqH1rkw9YXOs–UXcY5RmsE_RRuXJYx/view

Unlocker 3

https://github.com/DrDonk/esxi-unlocker

Works for ESXi 6.5 and 6.7

APFS

Even if you format the disk as HFS+ during installation, macOS will convert the disk to APFS on first boot, making it unbootable under ESXi.

Installing the modified EFI rom will work: https://licson.net/post/vmware-apfs/

Note

When cloning the VM with vCenter, the extra .rom file won’t be copied, you need to do that manually.

Redecentralization, Emergence, AI, Monopolies, and … Facts and Communication

最近(不巧)又跟人討論了 AI,於是獲得了指引,瞭解一些新概念,又在網路上逛到一些厲害的文章,覺得腦袋升級,在此記錄分享。(其中大部分是我還沒有時間深入去瞭解的,只是感覺光是讀完皮毛就已經腦洞大開(誤),想先記錄下來)

Emergence & Complex System

討論 AI 當時我不小心脫口說出「人工智慧還是 deterministic 的,跟意識還差距很遠,更何況根本就沒有所謂『真正的意識』,意識是一種現象,跟意識很像的東西就是意識。意識也是一種漸層,就像洗碗機的意識程度低於嬰兒、嬰兒的意識程度低於成人。意識並不是什麼神聖的人類獨有的東西。」,就獲得了一個指引,他只說「去瞭解一下 Emergence 和 Complex Systems ,可以讓你對意識和 AI 有更微妙的理解,《Gödel, Escher, Bach》是一本好書」。

Emergence 指的是一種現象,在一個複雜(有很多變數),或是很多很多部件的分散式(沒有中央控制)系統裡面,各個部件組合起來,整個系統卻顯現出難以從原本部件的規則推導出的特性。又分為強弱兩種,強的 Emergence 是無法以決定論去化約、推導的,弱的則可以。常見用來闡述 Emergence 現象的例子是人類經濟體、白蟻社會,還有人類大腦(產生出意識這種神奇的現象)。

AI and Monopolies

David Rosenthal 在他的文章《It isn’t about the technology》當中談到,網際網路的集中化問題,並不是因為去中心化這一方缺乏好的技術,而是經濟學法則在將網際網路推向集中。

他借用了 Charles Stross (科幻小說家)的 “Slow AI" 的概念。 “Slow AI" 是說,早在人工智慧一詞被發明出來之前,人類早就發明類似人工智慧的東西,並且普及了,這種東西叫做「公司」。公司成立的目的,通常是為了產出某種東西,並從中營利(營利通常是次要目標),例如福特汽車公司成立的目的是為了生產更多汽車來賺錢。公司就像人工智慧一樣,有個明確定義的目標和次要目標,它也像人工智慧(或是生物),會演化、適應所處的環境(市場、法規等等),甚至試圖操控整個環境、改造環境以達成目標。公司另一點很像人工智慧的地方是,公司經常只會設定單一面向的目標,針對這個面向去優化,並且只針對這個面向,一心一意,就像之前研究者挑戰虛擬的 AI 機器蟲在腳不碰地的狀況下前進,AI 發展出的解法是使用膝蓋走路

公司經常透露出一種「公司所有人可以掌控公司」的假象,有時候看起來更像是公司這個巨大的人工智慧操控了董事和執行團隊,例如為了達到目標,執行長經常會被撤換。Slow AI 也會試圖消滅對自己的存在造成威脅的競爭對手,透過併購,例如 Facebook 併購 Instagram,公司通常足夠聰明,如果沒有威脅的通常就不會採取行動,這也是為什麼沒有社交網路公司對分散式社交網路做任何事情。

要管制這樣的寡佔企業, The Verge 這篇說了一些想法,另外像是 GDPR 也是會威脅到這些寡佔企業的。

這才發現,David Rosenthal 引用的 Charles Stross 在 34C3 的演講我以前就有聽過,但當時完全沒聽懂。於是這次讀了逐字稿。這演講先是介紹「如何預測未來」,再介紹 Slow AI 的概念,最後論述自從人類 1990 年代起,為了要支持網際網路的發展,設定這些 Slow AI 要使用「競爭人類注意力」(廣告)的方式來賺錢,是如何創造出了厲害(可怕)的工具(武器),讓有心人士可以利用工具大量操控其他人(假新聞影響選舉, etc)。

David Rosenthal 文章裡面也引用很多其他文章,該讀的他都標上 Must Read (MR)。

出來 Charles Stross 之外, David Rosenthal 也提到 Cory Doctorow 和 Ted Chiang ,兩位都是科幻小說家(Ted Chiang 是《異星入境》電影原著作者)。

Facts and Communication

New York Times 在今年三月劍橋分析事件讓大家對臉書的不滿爆開來之前,已經持續寫 facebook 一段時間,時間之後關於 facebook 的文章數量更是增加,其他像是 The Guardian 和 Washington Post 也出了不少,後來就看到有人對於這些媒體採用的聳動標題表示不滿,質疑記者不夠瞭解這些科技在嚇大眾。

在跟其他人討論 AI 的時候,我經常分不清楚他們在討論 AI 、演算法、資訊科技,抑或是科技本身。

人會對自己不瞭解的東西有所畏懼,尤其是在媒體喜歡配合企業宣傳他們的人工智慧有多神奇的狀況下。雖然企業大部分是想要宣傳他們神奇的科技可以為使用者帶來什麼好處,讓使用者覺得選擇了這個產品就是超先進,但這個被過度塑造成為魔法的東西似乎反而引起了媒體和民眾的恐懼。

是該要正視表面下的恐懼。提供說明,揭祕魔法很重要,但說實在我不確定這樣能否說服足夠比例的人,也有可能不管怎麼說明都沒有用(來不及)。

用接收方可以接受的方式傳遞事實很重要, Vox 的這部影片提到,科學家並不一定是科學訊息最佳的傳播者

Buzzword and Hashtag

我這篇有這麼多 buzzword,不知道會不會紅。 #AI #blockchain #decentralize #fakenews #disinformation (誤)

#可是我不是發在 Medium.com 上

#Wordpress(.com) 的資料可攜性比較好啦,而且是開源的