Fedora 30

Fedora 30 has been released a few days ago. In the long list of changes, the most interesting to me are:

I’ve already upgraded my laptop to this version and everything seems to work as expected. The upgrade from Fedora 29 to Fedora 30 is easy:

# Install all the latest updates
dnf upgrade --refresh

# Install DNF plugin for system upgrades
dnf install dnf-plugin-system-upgrade

# Download all the necessary packages for Fedora 30
dnf system-upgrade download --releasever=30

# Reboot and start the upgrade of packages
dnf system-upgrade reboot

# Cleanup after successful upgrade
dnf system-upgrade clean

If this is not your first upgrade on the machine, it might also be a good idea to cleanup some of the installed packages BEFORE the upgrade, so that the process goes faster, skipping unnecessary downloads and upgrades. Here are a few suggestions:

# List all installed RPMs by size
rpm -qa --queryformat '%{size} %{name}\n' | sort -rn | less

# List all packages from earlier Fedora releases
rpm -qa | grep -i fc28

How to disable IPv6 on CentOS / RHEL 7

Sometimes I miss the good old days …

Recently, I had an issue with one of the servers, where a bunch of services were attaching to IPv6 ports instead of the IPv4 ones. Rather than editing the configuration of each of these services, I wanted to simply disabled IPv6 on the machine.

In the old good days, things like these were easily done via the sysctl. I surely tried that option too, but it wasn’t enough. Turns out, the proper way these days is to do this via Grub, as per this blog post:

  1. Vim /etc/default/grub file
  2. Change: GRUB_CMDLINE_LINUX=”ipv6.disable=1 crashkernel=auto rhgb quiet”
  3. Regenerate and overwrite Grub config with: grub2-mkconfig -o /boot/grub2/grub.cfg
  4. Reboot.

That sounds a bit too excessive. But then again a reboot is also required for the proper disabling of SELinux, so I guess its’ fine.

Fedora Linux : Change user icon in GDM login

In general, I’m pretty happy with my desktop setup. I use MATE with i3 on my Fedora Linux laptop for quite some time now, and it works well.

However, there was one annoying tidbit that I decided to fix today – my user icon on the login screen. I remember that I used to have it at some point, but it disappeared during some upgrade a few month ago.

The login screen is managed by Gnome Display Manager (GDM). In previous versions, you could easily customize the user icon via either some GUI tools for users and groups, or by simply dropping your icon into ~/.face file, in, preferably, PNG format, and GDM would pick it up just fine. Turns out, not anymore.

It took me a few Google searches to find the solution, so I’m sharing it here (just replace ‘leonid’ everywhere with your own username):

# Copy the user icon file
sudo cp /home/leonid/.face /usr/share/pixaps/faces/leonid.png
# Edit user settings file and add the following line:
# Icon=/usr/share/pixaps/faces/leonid.png
sudo vim /var/lib/AccountsService/users/leonid
# Logging out is not enough, so just ...

Once your system restarts, you should see the proper user icon on the login screen.

Using the NetworkManager’s DNSMasq plugin

Fedora Magazine runs a handy article for anyone using work/corporate VPNs from a home computer – “Using the NetworkManager’s DNSMasq plugin“. This is also not the only use for the DNSMasq plugin. It comes in useful when you work local cluster setups for development or testing. Furthermore, pretty much any setup where you need to route DNS queries to different servers, this can either be used out of the box, or provide good ideas as to how to solve the problem.

GraphViz dot: Format: “png” not recognized.

As I’ve mentioned many times, I’m a huge fan of GraphViz software suite in general, and the dot tool in particular. It’s super handy for generating graphs and diagrams out of plain text files.

Today though I came across a problem that I haven’t seen before. While trying to generate an updated PNG graph from a dot file that used to work just fine before, I got the following:

$ dot -Tpng source.dot -o destination.png 
Format: "png" not recognized. Use one of: canon cmap cmapx cmapx_np dot dot_json eps fig gv imap imap_np ismap json json0 mp pic plain plain-ext pov ps ps2 svg svgz tk vdx vml vmlz xdot xdot1.2 xdot1.4 xdot_json

That looks weird. I tried the same with a few other formats and none of them were working. A quick Google search around found the solution over at StackOverflow. All I had to do was:

$ sudo dot -c

After that, dot started working as always.