Category Archives: Tutorials

Timeshift and grub-btrfs in Ubuntu

UPDATED 22/Dec/2022, ChangeLog: 22/Dec/2022: added the flag “-czstd” for defragmentation and compression. 20/Nov/2022: documented the new version of grub-btrfs and its new grub-btrfsd daemon; the configuration for Timeshift is much simpler, but you have to install another package: inotify-tools. 17/Nov/2022: documented that I could also create additional subvolumes and move existing contents from the running […]

SSH into a VirtualBox machine

I use VirtualBox a lot for testing purposes, mainly to experiment with a Linux distribution (to see whether it’s worthwhile to install it on bare metal) and to test procedures that might involve some complex (and maybe “dangerous”) operations. After you install VirtualBox Guest Additions, things like bidirectional copy-and-paste will work. Some distributions seem to […]

Enabling Hibernation in Arch-based distros

I had already posted about enabling hibernation in Linux, particularly in Ubuntu. Thanks to the script hibernator, the procedure is much more straightforward in Arch-based distros (including Manjaro and EndeavourOS). First of all, make sure you first install the package update-grub. The package hibernator is available from AUR, but currently, there’s a problem with the […]

Timeshift and grub-btrfs in Linux Arch

UPDATED 02/Jan/2023, ChangeLog: 02/Jan/2023: documented that the new version of grub-btrfs is now an official package (you still have to install another package: inotify-tools); 02/Dec/2022: documented the new version of grub-btrfs and its new grub-btrfsd daemon; the configuration for Timeshift is much simpler, but you have to install another package: inotify-tools. After looking at the […]

Multibooting with GRUB

4th July, updated with BTRFS installations. There’s also a more recent and simpler version of this post. Besides Windows (which I rarely use) on my computers, I have a few Linux distributions. Grub 2 does a good job booting Windows and Linux, especially thanks to os-prober, in autodetecting other operating systems in other partitions of […]

Getting started with KVM and Virtual Machine Manager

After playing with VirtualBox (see my posts), I’ve decided to try also KVM (based on QEMU) and Virtual Machine Manager (virt-manager). The installation is straightforward. In Ubuntu systems:

In Arch-based systems:

Then, you need to add your user to the corresponding group:

Reboot, and you’re good to go. In this post, I’m […]

How to install Linux on a USB drive with UEFI support using VirtualBox

That’s the third post on installing Linux on a USB drive! Remember that the idea is to have a USB drive that will work as a portable Linux operating system on any computer. In the first post, How to install Linux on a USB drive using Virtualbox, the USB drive with Linux installed could be […]

Accessing Google Online Account from GNOME and KDE

In this post, I’d like to share my experiences in setting a Google Online Account in GNOME and KDE. Actually, I have more than one Google account, and the procedures I show can be repeated for all your Google accounts. First, a disclaimer: I’ve always loved KDE and I’ve used that since version 3. Lately, […]

Eclipse p2 site references

Say you publish a p2 repository for your Eclipse bundles and features. Typically your bundles and features will depend on something external (other Eclipse bundles and features). The users of your p2 repository will have to also use the p2 repositories of the dependencies of your software otherwise they won’t be able to install your […]

Publishing an Eclipse p2 composite repository on GitHub Pages

I had already described the process of publishing an Eclipse p2 composite update site: Publish an Eclipse p2 composite repository on Bintray Publish an Eclipse p2 repository on Sourceforge with rsync Well, now that Bintray is shutting down, and Sourceforge is quite slow in serving an Eclipse update site, I decided to publish my Eclipse […]

Caching dependencies in GitHub Actions

I recently started to port all my Java projects from Travis CI to GitHub Actions, since Travis CI changed its pricing model. (I’ll soon update also my book on TDD and Build Automation under that respect.) I’ve always used caching mechanisms during the builds in Travis CI, to speed up the builds: caching Maven dependencies, […]

Enabling Hibernation on Ubuntu 20.04

I have never been able to make hibernation (suspend to disk) work on my laptops (Dell M3800 and Dell XPS 13 9370) on Ubuntu with systemd. The symptom was that running

was making the system shutdown, but then upon restart the system was not restored: it was just like booting the system from scratch. […]

Publishing a Maven Site to GitHub Pages

In this tutorial I’d like to show how to publish a Maven Site to GitHub Pages. You can find several documents on the web about this subject, but I decided to publish one myself because the documents I found refer to a deprecated plugin (https://github.com/github/maven-plugins/tree/master/github-site-plugin) or show complicated settings, also when using the official Maven […]

Analyzing Eclipse plug-in projects with Sonarqube

In this tutorial I’m going to show how to analyze multiple Eclipse plug-in projects with Sonarqube. In particular, I’m going to focus on peculiarities that have to be taken care of due to the standard way Sonarqube analyzes sources and to the structure of typical Eclipse plug-in projects (concerning tests and code coverage). The code […]