Sync fonts between multiple Windows or Linux devices using Dropbox

“Map of the world being synchronized” generated by Midjourney. Credit: libre-software.net. License: CC BY-SA 4.0

How to Sync fonts between multiple Linux computers using Dropbox

Last updated on October 11, 2022

This small guide is about syncing fonts between two or more Linux devices, for example one laptop and one desktop computer, both running any Linux distribution. More specifically, I use this method to sync fonts I downloaded via the Google Fonts library.

Is it possible to sync fonts on any Linux distribution?

The method chosen makes this guide distribution-agnostic. Though I tested it on Linux Mint, it will also work on Ubuntu, Manjaro or any distribution of your choice. Please share your experience in the comments.

Does font synchronization work with cloud services other than Dropbox?

Although I use Dropbox in this guide, any cloud storage service running on Linux should be able to sync a font folder, including Google Drive, Mega or OwnCloud.

Default folders locations

Make sure you change each step of this guide accordingly if you have a different configuration than the following:

  • Default font directory on Linux: in this example we use the .fonts subfolder within your home folder (~/.fonts), which should work well on any Linux distributions. Other possibilities for the default font folder include ~/.local/share/fonts (on Ubuntu) or /usr/local/share/fonts – adapt the instructions to your needs.
  • Location of the Dropbox folder: standard location (~/Dropbox)

1. Setup the first device

1.1 Create the synced font folder

Create a font directory for the fonts to be synced anywhere in the Dropbox folder. In this example we will use a folder named Synced-fonts. Create this folder via the file manager or via the command line:

mkdir ~/Dropbox/Synced-fonts

Warning: don’t use a hidden folder (starting with a period) like ~/Dropbox/.synced-fonts. The folder would sync in Dropbox, but the fonts inside won’t be available to use in your apps.

1.2 Add fonts to the synced font folder

Then, copy or move the fonts to be synchronized to this folder. You can download and use any fonts from Google Fonts. You may use subfolders, but hidden folders won’t work.

If you want to move all fonts from ~/.fonts to the new Dropbox font folder, use the following command:

mv ~/.fonts ~/Dropbox/Synced-fonts

2. Sync fonts on Linux devices

You should repeat this part on all devices to be synced, the first one included.

2.2 Enter the local “non-synced” folder

Check if you already have a local “non-synced” ~/.fonts font folder in your home directory:

ls -la ~/ | grep ".fonts"

If it doesn’t exist, create one:

mkdir ~/.fonts

Warning: Dropbox only supports the ext4 file system on Linux. Syncing fonts probably won’t work with Dropbox if you use anything else than NTFS for Windows, HFS+ or APFS for Mac, and Ext4 for Linux.

2.3 Create a symbolic link to the synced font folder

Using the terminal, navigate to the local “non-synced” file folder:

cd ~/.fonts

Here comes the most important step. Create a symbolic link to the Dropbox font folder:

ln -s ~/Dropbox/Synced-fonts

Check if the symbolic link was successfully created:

ls -la ~/.fonts | grep "\->"

The output should be something like:

Sync Fonts anf Google Fonts with Dropbox on Linux (create symlinks)

Now restart the device or rebuild the font cache:

sudo fc-cache -f -v

Some programs like LibreOffice will need to be closed completely and restarted to use the new fonts.

3. Enjoy font synchronization on Linux

The fonts in the “Dropbox font folder” will now be available on all synced Linux computers. Any font added or removed will be synced by Dropbox immediately.

Unfortunately, this doesn’t mean the fonts will be available instantaneously on the synced devices. To reflect any change, be sure to restart the synced device or rebuild its font cache.

By Johannes Eva, October 2022

Articles by categories

Most Read Articles

Comments

15 thoughts on “How to install LibreOffice 24.2 on Linux Mint, Ubuntu, MX Linux, Debian…”

  1. You may use the official appimage in Libre Office as well. In fact, on Linux Mint 21 you can’t get rid of the default LO as it may lead to dependency issues. Appimage helps.

  2. Pingback: Ubuntu 21.04: Essentials – Linux Sagas

  3. Issuing $ sudo apt-get remove libreoffice-core installs an office core no gui. With or without purging. Yielding this:
    The following packages will be REMOVED:
    libreoffice-base libreoffice-calc libreoffice-core libreoffice-draw libreoffice-gnome libreoffice-gtk3 libreoffice-impress libreoffice-lightproof-ru-ru libreoffice-math libreoffice-nlpsolver libreoffice-report-builder libreoffice-report-builder-bin libreoffice-script-provider-python libreoffice-sdbc-postgresql libreoffice-wiki-publisher python3-uno
    The following NEW packages will be installed:
    libreoffice-core-nogui

    Many thanks for any clarification!

    1. Right! The correct command for removing completely the stock LibreOffice on Linux is the following:
      sudo apt purge libreoffice-common

      The following command also works but misses some packages:
      sudo apt purge libreoffice*

      Thank you for your comment, I updated the article accordingly.

  4. NOTE:- I found that Libre Office version 6.3.2.2 is extremely buggy, it has major dependency problems attempting to install on Linux Mint (Tina 19.2). I wasn’t able to resolve these problems so had to revert the install (remove 6.3.2.2-2) and return to previous version 6.3.1 which works fine.

    **Windows 10 (1903) ALSO NOTE that LO 6.3.2.2 installs on W10 but also caused major performance issues and hung my system on reboot. My machine Borked badly so once again had to revert back to LO 6.3.1 which works fine.

  5. Thanks for the Terminal codes. Newbies like me just want it to work and your codes provide the copy and paste necessities for Linux to do its magic.

    (If it can’t be done in Linux (and LibreOffice) its not worth doing)

  6. please help me with this error, newbee here

    root@Anon:~/libreoffice# sudo dpkg -i *.deb
    dpkg: error: dpkg status database is locked by another process
    root@Anon:~/libreoffice# cd LibreOffice_6.0.2.1_Linux_x86_deb
    root@Anon:~/libreoffice/LibreOffice_6.0.2.1_Linux_x86_deb# sudo dpkg -i *.deb
    dpkg: error: dpkg status database is locked by another process
    root@Anon:~/libreoffice/LibreOffice_6.0.2.1_Linux_x86_deb# cd debs
    bash: cd: debs: No such file or directory
    root@Anon:~/libreoffice/LibreOffice_6.0.2.1_Linux_x86_deb# cd DEBS
    root@Anon:~/libreoffice/LibreOffice_6.0.2.1_Linux_x86_deb/DEBS# sudo dpkg -i *.deb
    dpkg: error: dpkg status database is locked by another process
    root@Anon:~/libreoffice/LibreOffice_6.0.2.1_Linux_x86_deb/DEBS# sudo dpkg -i *.deb
    dpkg: error: dpkg status database is locked by another process

    1. The last line says it all: check if you are running another instance of dpkg. In last resort, try to remove dpkg lock file:

      sudo rm /var/lib/dpkg/lock

      Then let dpkg fix itself:
      sudo dpkg --configure -a

      Note that this problem is not per se related to LibreOffice.

  7. Would be useful to know how to install such alongside the native repository install of LibreOffice – without conflict. Would be useful to be able to choose, say, LibreOffice Writer 5.2, vs just LibreOffice Writer. Migrations / new versions not always working as seamlessly as one might like with files one might already have. It can be very frustrating to have a new version munge (e.g. formatting) of a current document one depends on, and not being able to ‘un-munge’ it.

  8. Works well. The only problem I had is that the icons were not created. I created them manually by running Writer, Calc and Impress and the using the “Lock to Launcher” option. This is how to run them from the terminal:

    Writer: /opt/libreoffice5.0/program/oosplash –writer
    Calc: /opt/libreoffice5.0/program/oosplash –calc
    Impress: /opt/libreoffice5.0/program/oosplash –impress

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.