Monthly Archives: September 2016

Signing with a GPG key in a Git workflow

If you’re working on a project and you want to doubly make sure of your code integrity, it’s good idea to sign your work to make sure what you add to the code base is only from you and from no one else. This is particularly important in building a secure application, or if you’re a coder in a team setting.

If you have some authority over the development workflow, it may also be a good idea to adopt the team practice of signing commits even before you do a git init on a project. There are plenty of references on configuring your GPG keys, so that’s not covered here.

Get your GPG configured, and a personal key installed. Configure Git to use your personal key.

$ git config --global user.signingkey 0A46826A

Signing tags:

$ git tag -s v2.17 -m <span class="s1">'version 2.17 signed by MH'</span>
$ git show v2.17

With the signer’s public key in the keyring, you can verify the tag:

$ git tag -v v2.17

Signing commits

You can sign commits simply by adding -S once your environment is configured.

$ git commit -S -m <span class="s1">'push a signed commit'</span>

You can check and verify via git log:

$ git log --show-signature -1

You can configure git log to check any signatures and list them in output via %G? format.

$ git log --pretty<span class="o">=</span><span class="s2">"format:%h %G? %aN  %s"</span>

You can also reject commits that are unsigned and invalid:

$ git merge --verify-signature non-verify
 
$ git merge --verify-signatures signed-branch

Sign the merge commit itself:

$ git merge --verify-signatures -S signed-branch

On the Korean script war

One of the silent wars that has been raging on the Korean peninsula is between those who promote only hangeul usage and those who wants to conserve the traditional mixed script usage where both hanja (traditional Chinese characters) and hangeul are used interchangeably. It’s true that in the linguistic history, specifically the history of written script, of East Asian countries, especially in Korea and in Japan, the use of phonetic scripts have been looked down upon as inferior to the use of classical Chinese idiomatic characters.

It seems that Korean people (those who are living in Korea) are evenly split between the all-hangeul-use camp and the mixed-use camp, with a lot of nonopinionated stuck in the middle. I’ve memorized around 500 hanja characters so far, and in spite of my large ignorance, I incline towards the mixed-use, not because I am an elitist but because I believe there is more to lose than to gain. History is already a largely marginalized subject in schools due to overt emphasis on job skills in education, and it doesn’t help to establish any more sense of connection to history if you herd an entire generation people to an ignorance of scripts used by their forefathers. Take the example of the writings by Ahn Jun-geun (Korean: 안중근 (安重根)).  Thanks to a popular bumper sticker, everyone is familiar with his hand print along with the word, “大韓國人,” (Korean: 대한국인), literally translated, “The Person of the Great Country of Han.” However, the main writing which this was part was “黃金百萬兩不如一敎子 ” (Korean: 황금백만냥 불여일교자), translated, “100,000 pounds of gold can’t equal to a [proper] teaching of [one’s] child,” is largely unknown to the populace. He wrote this while in jail, waiting for his execution, which was the penalty for trying to assassinate Ito Hirobumi.

And then there is the deeply honored historical figure called General Yi Sun-sin, whose writing was only in hanja. Some Koreans may have heard of Diary during the War (Korean: 난중일기 (亂中日記)), even may have read a translation of it, but only very few has ever read it in its original writing. Of course, it doesn’t help that he wrote mostly following the Chinese grammatically rule, just as the literatis of his day did, but even knowing the characters themselves would help to identify the words with which he wrote. Continuing to neglect the linguistic heritage, and marginalize its use for the future generations of Koreans is to distance the Koreans to the real historical identity of its past, and only to ostracize its people from sharing the common heritage of its own history, as well as its connection to its neighbors.

Car Repaint Project: [LAST] Day 7 – Wetsand and polish

Wetsanded the car with 1000 grit, and then tried polishing it using Ultimate Compound.  I’m guessing the clear coat wasn’t sprayed well because even after polishing, the paint looked dull.  The car looked rather shiny after the third coat of paint, but with the clear coat sprayed on it didn’t look so shiny anymore.  I guess it may have something to do with my polishing. But anyhow, I’m glad it’s over, and the paint has a coat of protection on it. Since it’s white it doesn’t need to twinkle or anything.  I’ll probably post the photo later, but IT’S DONE!

UPDATE: I may need to use a buffer to polish it up better.  It’s still a blur.  It’s going to be a long weekend, so I might as well take the time. ;-(

Car Repaint Project: Day 6 – Two layers of spray-on clear coat

Finally. The last day painting or spraying is here. I’ve sprayed on the Rust-Oleum clear coat. Two layers of them. It’s lost some luster, but I guess it will be there with some polish later. I’ve been putting aside all the other evening routines for this darn project, and it’s nearly over.  I’m happy, but tired.  Tonight’s work took about 2 hours after another physically intensive keiko session of kendo this evening. I just want to take a shower and go to sleep, but I still have to wake up at 4 am tomorrow. Without daily morning swim sessions and kendo, I don’t think I could have continued finished this car paint project within 7 days while working full-time during weekdays and take on loads of ministry responsibilities during weekends.  I’m just thankful.  In spite of the good (paint) mask I was wearing my sensitive respiratory system reacted time to time.  The fume just isn’t good for anything, so if you’re doing something similar, I HIGHLY recommend a well-ventilated area, and a GOOD painting mask. Don’t compromise on safety, else you may end up with some bad stuff in your system that may even cause permanent damages, so use your common sense and care.  Here are some photos at the end of day 6. It’s nearly 12 am now.

I could have done a better job covering the windows, but no worries.  I just a scraper to scrape off the paint from windows and it’s good as a new.

Tomorrow, I may polish up the car… using Ultimate Compound perhaps.

 

IMG_20160831_230410 IMG_20160831_230431 IMG_20160831_230442 IMG_20160831_230500