Other articles

  1. Removal from HSTS preload list for my domain


    Since long time ago, I host my website on my own server. As time goes by, the maintaining cost for this website appears to increase indefinitely with complexity from Podman, Ansible, Buildbot and so on. I have once tried use GitLab pages to host my website. However, it does …

    read more
  2. 犀利仁師觀後雜感

    前陣子整理我的歌曲收藏。其中一首「不能說出口的諾言」沒什麼印象是從那邊聽到的。一查之下是2014年的電視劇犀利仁師 …

    read more
  3. 網站搬家

    今天收到Let's Encrypt的通知信,說chyen.cc和*.chyen.cc的SSL憑證20天後過期。我這個網域名稱是在Namesilo買的。由於Let's Encrypt的wildcard certificate需要用DNS認證 …

    read more
  4. 解決scrcpy crash的問題


    經過一番測試,發現似乎SDL(scrcpy用的GUI library)會嘗試載入ibus …

    read more
  5. 安裝 Pelican



    1. Deploy - 用git hook似乎是個選項
    2. Themes - http://www.pelicanthemes.com/上面滿多選擇的
    3. Git設定 - .gitignore, 放到Github …
    read more
  6. Mac shortcuts are broken with UTF-8

    I was trying to enable copying and pasting between Linux and macOS via SSH. I followed several guides (1 2 3) and set up a local server to handle exchanged clipboard data. OK, things look good.

    However, soon I found that pasting CJK brings question marks. A tip suggests setting …

    read more
  7. Network is down after logged out

    Recently I got a mysterious bug. I have a server, and whenever I logouts all sessions, its network is broken. I can neither ping it nor ssh into it.

    The culprit is NetworkManager. "All users may connect to this network" is not checked, so only my account can access the …

    read more
  8. Select printer with lpr

    On Arch Linux, I use the following command to print documents:

    PRINTER="the_printer_name" lpr ~/my_doc.pdf

    It was always working yet broken with the latest version. A mysterious error appears:

    $ PRINTER="the_printer_name" lpr ~/my_doc.pdf
    lpr: Error - scheduler not responding.

    By tracing the codes …

    read more
  9. Installing Octopress

    弄個部落格放一些技術文章是我一直想做的事。之前試過幾個平台,例如PTT,Wordpress等等,都覺得差強人意。主要是貼code很不方便 …

    read more
  10. Welcome to Jekyll!

    You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site …

    read more
  11. Compiling ZTE OPEN kernel on Arch Linux

    I need to modify kernel source codes of Firefox OS for my project. Currently I have a ZTE OPEN device (NOTE: it's different from ZTE OPEN C). ZTE have lots of kernel sources released to public, but this device is not included. After several e-mails, ZTE engineers finally release the …

    read more
  12. Placement new

    For advanced C++ programmers, placement new is nothing special. It can initialize a pre-allocated memory block. However, placement new is more than what you think. It accpets an arbitrary number of arguments of arbitrary types.

    See the following code snippet:

    #include <iostream>
    #include <string>
    #include <vector>
    void* operator new(size …
    read more
  13. 孤單北半球

    有一天在和幾個同學唸書,有人忽然 …

    read more
  14. OpenCV: strange return value of cvWaitKey()

    In OpenCV, cvWaitKey() might be one of most frequently used functions in interactive applications. For example (code in C++):

        if(cvWaitKey() == 27) // 27 is the key code of Escape

    This works in Windows, but not work in Ubuntu. Both C++ version and python version can't catch …

    read more
  15. SFTP initial path

    Google "sftp default path",大多數是用chroot的方式。但我的需求是一開始先切換到某個home以外的目錄,而不是將user鎖在某個目錄底下。轉念一 …

    read more
  16. Hello world!

    Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!

    It's the second time I install WordPress on my Apache server. The first time is not long ago, but everything seems easier then ever! WordPress is primarily written in PHP, so a little knowledge for …

    read more