Static linking is preferred for some cases although it has its own various problems. Static building/linking is not always possible for some languages on some platform. For OCaml, the answer to this question is yes. In this post, we will introduce 2 methods to statically linking OCaml: static linking with runtime glibc required and static
Read more
Category: Tutorial
5 necessary PC hardware that a programmer needs to upgrade
Posted onThe world of technology has evolved drastically over the last few decades. Almost every aspect of our lives is dominated by technology. At the heart of technology lies computer programming. Computer programming is what dictates the success of the technology. I mean think about it, your smartphone, PC, ETC they all rely on programming. This
Read more
How to write to remote side with sudo in rsync?
Posted onHere is the case, the user can not write directly to the remote side’s directory, while the user can sudo on the remote side and write the directory with sudo. How to write to remote side with sudo in rsync? On the source machine, run the rsync command with –rsync-path="sudo rsync" added. For example, rsync
Read more
How to write file content with sudo in Vim?
Posted onVim opens file even if the user does bot have write permission to the file. But after revision, how to write file content with sudo in Vim if Vim reports no permission to write the file. Use this command inside of vim to write to the file with sudo: :w !sudo tee % Here, !
Read more
How to limit shared AWS EC2 accounts’ access to view and start all VMs yet stop only certain VMs
Posted onIf a team with many accounts share and manages the virtual machines under that same AWS accounts, it is a common practice to limit AWS EC2 accounts’ access to view or start all VMs yet stop only certain VMs. For example, one account has 50 VMs tagged “prod” while 25 VMs tagged “dev”. The developers
Read more
What can we expect in Java update 2019?
Posted onJava is the most regularly used programming language for the creation of web applications. This high-level programming language develops by the Sun Micro-system. This language was designed for use in the world of internet and known for fastest, secure, and most reliable language of the computing platform. One interesting fact is that Java programmers are
Read more
How to do screen recording on Wayland in Linux?
Posted onHow to do screen recording on Wayland in Linux? Many screen recorders do not work on the new Wayland. Using Green Recorder You may try Green Recorder which supports Wayland. Note: Green Recorder is no longer under development by the original author (Please check the project README for more details). It still works well for
Read more
How to enlarge root partition and filesystem size of cloud Linux VM at runtime without rebooting Linux
Posted onIt is common that the root disk space is not enough when running a Virtual Machine in the cloud such as Amazon Web Service (AWS). The cloud storage usually provides tools or facilities to enlarge a virtual disk size. However, to make the Linux recognize and and use the enlarged disks without rebooting the OS,
Read more
How to synchronize Google Drive and Google Docs files in Ubuntu/Debian/Mint Linux using Insync
Posted onGoogle Drive is a nice cloud storage service. It provides a suite of nice online document spreadsheet and slide editors Google Docs, Google Sheets and Google Slides. The collaborative editing and full history tracking features of Google Docs are excellent. Google Drive gives 16GB free storage which is pretty much larger compared to other free
Read more
How to rename a branch name in the remote git server?
Posted onHow to rename a branch name in the remote git server? For example, I made a mistake to push a branch named ood-name to the git server while I intended to name it old-name. How to rename the branch name ood-name on the remote git server? You may change the remote git server’s branch name
Read more
How to get date and time from another timezone in Python?
Posted onHow to get the date and time from another timezone in Python? You may use the pytz library. Example usage as follows. $ python3 Python 3.8.2 (default, Jul 16 2020, 14:00:26) >>> from datetime import datetime >>> import pytz >>> >>> print(datetime.now(pytz.timezone(‘Europe/Amsterdam’)).strftime(‘%Y-%m-%d %H:%M:%S %Z%z’)) 2020-08-09 15:50:00 CEST+0200 >>>
How to enable user themes in Ubuntu 18.04?
Posted onThe way for Ubuntu 17 to installing the gnome-shell-extensions package does not work any more for Ubuntu 18.04. How to enable user themes in Ubuntu 18.04? The updated gnome-shell-extensions package actually adds the User Theme extension back. You can use that. First, install the package sudo apt install gnome-shell-extensions Second, log out and login again
Read more
How to get date and time using date command from another timezone in Linux?
Posted ondate command on Linux gets the date and time in the system timezone. But how to get date and time using date command from another timezone in Linux? You can make date print the time of another timezone by setting the TZ environment variable. For example, export TZ=Hongkong; date Sat Dec 1 09:39:13 HKT 2018
Read more
How to detach a docker container to be a running daemon?
Posted onIf I quite a docker instanced (invoking /bin/bash) by Ctrl+d, the docker container is closed. How to detach a docker container to be a running daemon without closing it? Docker has a detach sequence, which, by default, is Ctrl-p + Ctrl-q. If the docker detach sequence is overridden by the –detach-keys=”<sequence>” flag, you need to
Read more
Fixing the huge emoji icons in Unbuntu 18.04 for Thunderbird
Posted onIn Ubuntu 18.04, Thunderbird shows huge emoji icons in the email list. The emoji covers other text and is several lines higher and wider than other charactors. How to solve it? This is likely caused by the fonts. Find out the *emoji* fonts installed in your system by sudo apt list *emoji* and remove those
Read more
How to change the logo shown during booting in Ubuntu?
Posted onHow to change the logo shown during booting in Ubuntu? I originally installed Ubuntu MATE 18.04. But I am using GNOME 3 now by replacing the DE. But the log shown during booting is still Ubuntu MATE’s. How to change it to another one? It is plymouth the application that manages the “splash” screen during
Read more
GNOME 3 "Natural scrolling" mouse option does not work
Posted onIn GNOME 3 “Settings” -> “Devices” -> “Mouse & Touchpad”, after setting “Natural scrolling” to On, the scrolling is still as the same before (non-natural). How to fix this? This is likely related to the X11 driver. Remove the xorg-x11-drv-synaptics driver if it is installed. And install the xorg-x11-drv-libinput driver if it is not installed.
Read more
How to install GNOME 3 in Ubuntu MATE 18.04?
Posted onHow to install the GNOME 3 (gnome-shell) desktop environment in Ubuntu MATE 18.04? To install gnome3 to Ubuntu, install these packages sudo apt install gnome-session gdm3 ubuntu-desktop During installation, the installation tools will let you choose the default display manager. You may choose gdm3. Then reboot you Ubuntu Linux and gdm3 will be shown. Click
Read more
Installing Zlib from Source Code in Ubuntu Linux
Posted onZlib is a popular open-source compression library used by many software applications to compress and decompress data. While it can be installed in Ubuntu using the apt package manager, you may need to install it from the source code if the version available in the Ubuntu repositories is outdated or if you need to customize
Read more
How to add Chinese input method to Unbuntu 18.04?
Posted onHow to add Chinese input method, such as Pinyin, to Unbuntu 18.04? To input Chinese, first install an input method framework. Here, we use fcitx. Then you need to input the Pinyin input method. You may use fcitx-sunpinyin. Put them all together $ sudo apt-get install fcitx fcitx-sunpinyin After that, set the default input method
Read more