All about Tips&Tricks

Compare Excel files with Inquire

https://support.microsoft.com/en-us/office/compare-workbooks-using-spreadsheet-inquire-ebaf3d62-2af5-4cb1-af7d-e958cc5fad42

Tips&Tricks

Excel has a built-in way to compare two Excel files using the Inquire add-in. The full description is listed in this Microsoft support article: https://support.microsoft.com/en-us/office/compare-workbooks-using-spreadsheet-inquire-ebaf3d62-2af5-4cb1-af7d-e958cc5fad42

Excel Inquire Ribbon

This requires enabling Inquire first.

  1. Enter File > Options > Add ins
  2. Set "Manage" to "COM Add-ins"
  3. Click Go
  4. Place a check-mark next to "Inquire"
  5. Click OK.

The steps are copied from this Super User answer.


E-Mails: Migrate between different mailboxes

Email | Tips&Tricks | Tutorial

When migrating between different email providers you might want to migrate your existing emails between the two provider mailboxes. As prerequisite the mailbox setup for the new mailbox provider should be done and credentials for both mailboxes. The tool imapsync provides the capability to connect to two IMAP mailboxes and copy emails and folder structures. Depending on the arguments, duplicates can be detected, transformations applied, or the data copied to a subfolder. The last option is particularly interesting if you want to backup emails from one mailbox to another.

imapsync \
    --host1 '<host_src>' \
    --port1 '<port_src>' \
    --user1 '<user_src>' \
    --password1 '<passwd_src>' \
    --host2 '<host_dst>' \
    --port2 '<port_dst>' \
    --user2 '<user_dst>' \
    --password2 '<passwd_dst>' \
    --delete2duplicates

The option --delete2duplicates ensures that the command can be run multiple times during the migration without creating duplicate emails in the destination system.

When interfacing with Outlook special care must be taken. Outlook does not offer a normal IMAP interface, but instead requires their own OAuth2 on top. This is not supported by imapsync. Instead, you can setup email-oauth2-proxy to interface with Outlook and use localhost+port for imapsync.

You can install and run email-oauth2-proxy like:

python -m pip install "emailproxy[gui]"
python -m emailproxy

Configuration is done via the emailproxy.config file (see sample):

[Account setup]

[[email protected]]
permission_url = https://login.microsoftonline.com/common/oauth2/v2.0/authorize
token_url = https://login.microsoftonline.com/common/oauth2/v2.0/token
oauth2_scope = https://outlook.office.com/IMAP.AccessAsUser.All https://outlook.office.com/POP.AccessAsUser.All https://outlook.office.com/SMTP.Send offline_access
redirect_uri = http://localhost
client_id = *** your client id here ***
client_secret = *** your client secret here ***

Configure each email mailbox behind Outlook with one of these entries. Go to https://entra.microsoft.com/ and log in with enough permissions to create new App Registrations. Create a new registration and pick any name. Make sure to select as "Supported account types" the most widespread option "Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)" and as "Redirect URI" select Web with "http://localhost/. Edit the App Registration and under "Certificates & secrets" create a new secret that you add to the above configuration in place of the client_id and client_secret.

Now when imapsync runs a prompt by email-oauth2-proxy will appear. Open the request and use the browser to login to the mailbox.

The German BSI has some notes on performing an email migration at https://www.bsi.bund.de/DE/Themen/Verbraucherinnen-und-Verbraucher/Informationen-und-Empfehlungen/Onlinekommunikation/E-Mail-Sicherheit/Wechsel-E-Mail-Anbieter/Wechsel-E-Mail-Anbieter_node.html.


Fedora 40/GTK 4: Applications have no text (NVIDIA driver)

Tips&Tricks

The Fedora 40 release has a problem with the NVIDIA 470 driver in that text of many applications is invisible or flickers while hovering the mouse. This bug seems specific to the version 470 of the NVIDIA drivers and doesn't affect the other versions.

Edit /etc/environment and add this line, then reboot the system:

GSK_RENDERER=gl

The bug seems to be caused by the new renderers for GTK and potentially older hardware. The above environment variable switches the renderer back to the older OpenGL one, thus resolving the issue.

More details in this forum post.


Fedora/Gnome: Disable automatic suspend for remote logins

Tips&Tricks

Fedora with the Gnome desktop suspends after 15 minutes if no user is logged into the machine. This does affect remote logins via SSH or the Remote Login RDP functionality. The Gnome settings do not allow changing the "Automatic Suspend" options of the system, but only for each user.

You can inspect the configuration for GDM using these shell commands. The 900 are the timeout in seconds, i.e., 15 minutes.

$ sudo -u gdm dbus-run-session gsettings list-recursively org.gnome.settings-daemon.plugins.power | grep sleep
org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 900
org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'suspend'
org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 900
org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'suspend'

Setting the timeout to 0 disables the timeout. Disable suspend while on AC power:

sudo -u gdm dbus-run-session gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 0

Disable suspend while on battery power:

sudo -u gdm dbus-run-session gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 0

More details in this forum post.


Firefox: Sync Toolbar Layout

https://support.mozilla.org/en-US/questions/1292568

Tips&Tricks

Firefox can be made to synchronize the toolbar among multiple instances. The configuration is stored in browser.uiCustomization.state which must be added to the sync keys.

  1. Open about:config page in Firefox and bypass the warning (if you see one).
  2. Then type services.sync.prefs.sync.browser.uiCustomization.state into the search bar on that page.
  3. Create a new preference. Select Boolean, press the + button, and ensure the value is set to true.

Gnome Remote Login on SELinux enabled systems

Tips&Tricks

Gnome Remote Login (RDP) is not working on systems with SELinux set to enforce. This does affect Fedora 40 that ships Gnome 46. Executing this code installs new SELinux rules that permit the necessary access. These rules might not be optimal and provide too much access.

tee /tmp/grd.te << EOF > /dev/null
module grd 1.0;
require {
    type system_dbusd_t;
    type unconfined_service_t;
    type xdm_t;
    class tcp_socket { getattr getopt read setopt shutdown write };
}
allow system_dbusd_t unconfined_service_t:tcp_socket { read write };
allow xdm_t unconfined_service_t:tcp_socket { getattr getopt read setopt shutdown write };
EOF
checkmodule -M -m -o /tmp/grd.mod /tmp/grd.te
semodule_package -o /tmp/grd.pp -m /tmp/grd.mod
sudo semodule -i /tmp/grd.pp

More details in this forum post.