11 September 2018

Solving "device not managed" for Ethernet connections in Network Manager

At some point or another, Network Manager in Debian sid stopped managing my Ethernet connection. The source of the issue is /etc/NetworkManager/NetworkManager.conf:
[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

The [ifupdown] clause seems to be telling NM not to do it. The solution is to turn the frown upside down, but doing so in NetworkManager.conf means the setting will likely be clobbered the next time NM is updated. The solution to that is to create a file in in conf.d named 10-globally-managed-devices.conf. NM upgrades should leave custom files in conf.d alone.

Source

06 August 2018

The new su PATH behavior

The su command that's now being packaged with Debian sid has significant change in behavior. In the past, when you did an:
$ su
the PATH would get set to root's PATH. Now, it remains the user's path:
$ su
Password:
# echo $PATH
/home/mithat/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/snap/bin
This means you won't pick up /usr/sbin where a lot of commands you'd typically use with root privileges live.

The fix to this is that you now have to append a dash to the command:
$ su -
Password:
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
I don't know whether this impacts gksu or if sudo and/or gksudo are affected. gksu is affected as well, but with gksu there doesn't appear to be a way to get back to the old behavior.

12 January 2018

Fixing Skype for Linux scaling

After a long hiatus from (actually a deliberate avoidance of) Skype, I need to install it again -- at least temporarily. And the latest version of Skype for Linux is appears to be an Electron app, which means its scaling on my non-standard 118 dpi screen is seriously wonky.

The typical fix for this with Chrome/Chromium and Electron apps is to pass the --force-device-scale-factor option to the executable. Applying this option to Skype works as well, but you need to dig a bit to find where to add it. I ended up modifying /usr/bin/skypeforlinux so the last line reads:

nnohup "$SKYPE_PATH" --force-device-scale-factor --executed-from="$(pwd)" --pid=$$ "$@" > "$SKYPE_LOGS/skype-startup.log" 2>&1 &

23 January 2017

Fixing Chromium remote extension loading in Debian sid


The newest Chromium in Debian sid disables remote extension loading by default. This has the effect of disabling extensions en masse. I'm not sure what the reasoning is, but it's damn inconvenient.

It's claimed that one way to get the old behavior back is to add

--enable-remote-extensions

to the list of flags in /etc/chromium.d/default-flags. This will affect all users on the system, and the file could be overwritten by an upgrade. In addition, until I know better what's behind the change, I'd really like to apply the change only to my account, not to all users.

I did this by adding:
# fix latest Debian Chromium disabling remote extensions
export CHROMIUM_FLAGS=$CHROMIUM_FLAGS" --enable-remote-extensions"
to my ~/.profile. Be sure to log out and back in to experience the change.

25 October 2016

Fixing PackageKit authentication in Debian sid under Xfce

Today after updating stuff, my pkexec commands (e.g., synaptic-pkexec) stopped working. I don't know whether this was caused by something I inadvertently did that borked things or whether it's a bug in Debian sid. I figured out that the root of the problem (no pun intended) is that a policy authentication agent was no longer loading on login -- in spite of policykit-1-gnome being installed and the entry for PolicyKit Authentication agent being checked in Xfce's Session and Startup autostarts.

Reinstalling stuff didn't help.

Further sleuthing revealed that the PolicyKit Authentication agent entry in Xfce's Session and Startup was pointing to a (now) nonexistent file: /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1. Further examination revealed that the file /etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop installed by policykit-1-gnome also was pointing to the same nonexistent file.

So here's what I did to kludge a fix:
  • Created a new directory /usr/lib/policykit-1-gnome
  • Added a link from /usr/lib/x86_64-linux-gnu/polkit-gnome-authentication-agent-1 to /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1.
After logging out and back in, things worked as expected.

I could have added a custom entry into my Xfce autostarts that pointed to the correct file, but that wouldn't have addressed the second issue of /etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop pointing to phantoms.

To undo the changes once/if the problem is better sorted, all I need to do is delete /usr/lib/policykit-1-gnome.