Building Linux Kernel on Odroid-U3

This is the year 2020, Odroid-U3 is far from a powerful ARM development board in today’s standard, but it is still more than capable! Quad-core ARMv7 CPU and 2GB RAM, which means I can still run some light services and test my toy projects without paying any fees to AWS or Azure. The year 2020 also means that this little device can be powered by the mainline Linux kernel without many troubles (if any)! Better than that, the process is ridiculously straightforward!

In this post, I put together the steps I did to build the Linux kernel using upstream mainline source code natively on Odroid-U3. If you’re interested in cross-building from your x86 machines, you can find plenty of tutorials on that on the Internet.

Continue reading “Building Linux Kernel on Odroid-U3”

Virtual Linux Desktop Experience in Azure

I wouldn’t believe that I will be writing this 10 years ago. It’s 2020 though. Microsoft has improved a lot of services for Linux, ranging from developer tools like Visual Studio Code, to the protagonist today: Azure (cloud computing). Azure has steadfastly become a real credible alternative to Amazon EC2 (or AWS in general). Today, I want to share my experience of using a virtual machine on Microsoft Azure cloud. To be more specific, it is a Linux desktop virtual machine (SLES 15).

Continue reading “Virtual Linux Desktop Experience in Azure”

Visual Studio Code Server on Android

Microsoft has been steadily enhancing Visual Studio Code Remote Development. One of the components is VS Code Server, which is also open-source and hosted at GitHub. With VS Code Server, you can use Visual Studio Code in a browser. The usual setup involves a server (a VPS perhaps) that hosts the code server. It turns out that it’s also possible to run them locally on your Android device! Here is how.

Continue reading “Visual Studio Code Server on Android”

Announcing YapStocks 2.0

Over the last few weeks, I’ve been working on a new plasmoid (KDE Plasma Applet) that provides a simple interface to monitor stocks. The first version was rather basic, being able to show the current market price only. Now it’s time to announce the availability of the second iteration of YapStocks (Yet Another Plasma Stocks Applet). I’ve recorded a short video clip showcasing all the features it has, ranging from the information summary to the historical price chart.

Continue reading “Announcing YapStocks 2.0”

Hands-on Sailfish OS on Redmi Note 7

Not sure if this is related to the COVID-19 lockdown, but we’ve seen a lot of geeky hobby projects coming up recently. A lot of community ports have been done over the last few months for niche mobile operating systems such as Sailfish OS. That’s exactly the one I played with briefly after purchasing a second-hand Redmi Note 7 on eBay (don’t ask me if I think it’s a waste of money now LOL).

If you come here hoping to find the resources, head to the GitHub repo directly where you can find the ROMs to download.

Make sure that you’ve unlocked the bootloader already! If not, you need to register a MI account and apply for unlocking here. You must log in to your MI account on both the unlocking tool and your phone (MI, POCO, RedMi). If you don’t have a Windows PC, I recommend using XiaoMiTool V2 which works on macOS, Linux, as well as Windows. Though I couldn’t find this on the official FAQ, you have to have a working SIM card inserted. You have to use the mobile data instead of WiFi when unlocking the bootloader on your phone because XiaoMi is doing some verification.

Another problem I encountered was that in fastboot mode, RedMi Note 7 would just say “Press any key to reboot” when any commands are sent from my laptop. After googling on this, there seems to be a driver bug that makes RedMi Note 7 fastboot USB3 unfriendly. Using a USB-Hub worked for most people, including me 🤷.

I wish you all a successful attempt to flash Sailfish OS into your RedMi Note 7. Here are some screenshots I took.

Continue reading “Hands-on Sailfish OS on Redmi Note 7”

OpenSUSE 15.1 Installation Notes

Although my personal laptop isn’t getting much attention from me because I’ve spent most of my time on my work laptop (a MacBook Pro) and my Android tablet (Samsung Galaxy Tab S5e), I’ve decided to take good care of its software over last weekend by wiping the SSD clean and installing a fresh OpenSUSE on it. As an old habit, I’m sharing some notes during the installation and later setup. This is, however, the first blog post written in English here (not counting the old ones on no-long-working

Continue reading “OpenSUSE 15.1 Installation Notes”


上個週末得閒把VPS從之前的RamNode遷移到了Amazon Lightsail,主要遷移的內容就是WordPress,涉及到MySQL的導出和導入、Nginx的配置、PHP的配置(從5.6升級到了7.3)、CentOS的簡單設置(從6升級到了7)、Let’s Encrypt SSL證書的配置。下面簡單記載一下遷移的梗概以便有需要的訪客和自己今後查閱。

Continue reading “VPS遷移日誌”



熟悉程式設計的(我也希望都是在UNIX環境下的)或多或少可能有過想在平板電腦上偶爾練練手的想法,Android畢竟是基於Linux設計的,加上系統多年的更新換代發展,灌上一個Linux的工作環境應該不會太難,而且將會是一個非常大的效率提升。不過如果真的灌一個完整的Linux環境,一來是佔用很大的磁盤空間,二來電力損耗估計也是會讓人頭疼。好在我在Google馬上找到了Termux,安裝步驟簡單到不行,直接在Google Play點選安裝即可。

Continue reading “運用Termux將Android平板電腦變身程式設計利器”

技德Remix OS 3.0上手体验(U盘启动)

技德科技的Remix OS发布了3.0版,基于Android 6.0棉花糖。对于不知道Remix OS的访客,这是一款操作和界面仿Windows 10的“桌面”操作系统,不仅仅是Android换了一层皮,在很多细节方面已经把Android改造成了PC操作系统。在继续话痨之前,先上图杀猫:

Continue reading “技德Remix OS 3.0上手体验(U盘启动)”

适用于KDE Plasma 5的雅虎天气小部件

去年简单粗暴地把自己写的Yahoo! Weather从KDE 4移植到了Plasma 5,但是一直没有好好改进一下。前段时间雅虎停止旧API支持,被迫更新,就顺便改改了。应该访客里有不少KDE的用户吧,想要一个简单的天气小部件的可以试试看。


  • 纯QML,不用编译直接装
  • 雅虎天气接口,大品牌值得信赖
  • 自认还算简洁明了的UI
  • 支持不同的计量单位(温度、气压、风速等)
  • 10天天气预报

Continue reading “适用于KDE Plasma 5的雅虎天气小部件”