Software

Posts related to software on Linux, Unix, iPhone, Windows and more.

|

Extracting EC Public Keys with OpenSSL

In the realm of cryptography, handling and managing keys is a crucial task. The command provided is a series of operations using OpenSSL and other command-line utilities to extract and format an elliptic curve (EC) public key. Let’s break down the command to understand its purpose and functionality. The Command Extracting EC Public Keys with…

|

Mapping Left Alt to Ctrl for Windows Keyboard to Be Similar to macOS

As a dedicated macOS user, I often find myself missing the convenience of having a Command key located near my thumb for common shortcuts when using Windows. In the standard Windows keyboard layout, the key that occupies the same position as the Command key on macOS is the Alt key. However, the equivalent key on…

| |

Visualizing CMake Project Dependencies with Graphviz

When working on a large-scale C++ project with multiple dependencies, it can be challenging to understand the relationships between different components and libraries. Thankfully, CMake provides a nifty feature to visualize these dependencies using Graphviz, a widely-used open-source graph visualization software. Using CMake’s –graphviz option and the dot command from Graphviz is a powerful way…

| |

Generating ECDSA K1 and R1 keys using OpenSSL in Linux

ECDSA keys are commonly used in various areas like blockchains. OpenSSL is a commonly used tools in Linux for handling signature/encryption/decryption. This post introduces how to generate ECDSA keys using OpenSSL in Linux. Generate keys for K1 secp256k1 elliptic curve We start with K1 (secp256k1) as the example. To generae ECDSA keys using other curves,…

|

Synchronizing Thunderbird Calendar with Apple iCloud Calendar

Thunderbird is a nice email client and calendar management software. iCloud calendar is the native calendar cloud service in Apple devices such as iPhone. So far there is no native support from Thunderbird to support iCloud calendar, excepting reading the read-only public iCloud calendars which has privacy concerns as long as lacks of editing functionalities….

| | |

Running Ephemeral Docker Containers – Automatically Remove a Docker Container After Running It

Docker is a convenient tool to quick create containers from different Linux images. If we use the common way to start a docker container like docker run image bash, after the the process exists, the container is still stored there. That is, the docker container persists after it has exited. Sometimes, we would like to…

|

Configuring Fonts for Thunderbird snap to Display Fonts Nicely

snap is a software app bundle with dependencies included so that it can works in different Linux distributions. However, as most other software, snap has compatiblity issues. An app in the snap format is not 100% the same and compatible with the native version. One of the problem I find is that Thunderbird from snap…

| |

GNONE 3 Screenshot Keyboard Shortcuts

GNONE 3 provides screenshot tools and utils and also provides keyboard shortcuts which are convenient and quick to use. With the GNOME 3 screenshot keyboard shortcuts, users can make screenshots without having to open the Screenshot app. In general, there are 2 major categories of screenshot shortcuts: those to save the screenshot as a file,…

| |

3 Ways of .odt to .txt File Conversion in Command Line in Linux

The Open Document .odt files can contain rich formats for the content. However, some times a plain text file is more handy. We may convert .odt files to plain text files for such needs. In this post, we discuss 3 ways of how to convert .odt files to .text files in command line in Linux….

|

Configuring Eclipse to Show Git Revision Information Similar to Git Blame in Editor

Eclipse can work well with Git. We discussed Configuring Eclipse to Highlight Changed Lines Compared to Git Commit before. Eclipse can also show the revision information for lines of code (from git blame) which is useful to understand why some lines are added in the context of previous revisions including the lines of code. Eclipse…

|

2 Ways of Modifying macOS Keyboard’s Right Option to Control for Mac Pro

For heavy Terminal/Shell/command line users, the Control key is a very frequently used key. However, in Mac Pro keyboard, there is only a single left Control key for some models. This cause quite some inconvenience. In this post, we will go through how to configure/remap the keys to “create” a right Control key. Remap keys…

|

Configuring Eclipse to Highlight Changed Lines Compared to Git Commit

Eclipse is one of the good IDEs for C/C++ projects with its great source code indexer. It is common the source code version is controlled by some tools like Git for software projects. It is convenient if the IDE can show the current changes compared to the committed code version. In this post, we will…

| |

Printing Google Doc with Comments in Page Margins

Google Doc documents support comments which is useful for collaborative editing of files with comments to each others. But when we print the document from Google Doc, the comments are not included. How to print the document with comments in page margins? In this post, we will introduce a method using the opensource and free…

|

Printing Comments in Page Margins in LibreOffice

“Comments” and “tracking changes” are nice features of the opensource LibreOffice software (and other Office software) to add comments and track changes in documents. OpenDocument ODT and MS Word DOCX/DOC file formats all support comments and change trackings. When we print the documents, how to print the comments in the page margins too in LibreOffice?…

| |

2 Ways of Resetting All Git Submodules in a Git Repository

Git submodule is a nice and convenient mechanism in Git to include the other Git repositories and manage the version/commit used from the submodule Git repository. However, there are cases where we would like “reset” the submodule, such as when we find updating a submodule repository will break the code tree, or merge some updates…